一种社交网络中细粒度人脸隐私保护方法与流程

文档序号:12278741阅读:211来源:国知局
一种社交网络中细粒度人脸隐私保护方法与流程

本发明属于社交网络隐私保护技术领域,尤其涉及一种社交网络中细粒度人脸隐私保护方法。



背景技术:

近些年来,伴随着网络信息技术的蓬勃发展,互联网已渗透到人们生活的方方面面。尤其伴随着Web2.0的迅速兴起,社交网站也呈现出爆炸式的发展趋势。但是伴随着数据挖掘技术的发展,许多用户的隐私信息在社交网络中被恶意盗用,所以基于社交网络的隐私保护也愈来愈重要。但由于社交网络近些年才快速发展,社交网络的隐私保护的相关概念也是近一段时间才提上章程,而且目前社交网络的研究内容基本围绕抵抗恶意数据挖掘和位置、节点的隐私保护,所以对于社交网络的隐私保护仍处于起步阶段。目前针对社交网络的隐私保护技术研究基本针对的是社交网络中的实体信息、连接信息、属性信息的保护,采用的一般是PPDP的数据隐私保护技术和基于权限访问的访问控制的方法,这样的结果虽然可以一定程度的防止恶意攻击,但是并没有得到人性化的结果。由于现有技术对敏感区域和非敏感区域划分不足,导致社交网络在隐私保护的同时降低了社交的广泛性,而且,在隐私保护时并没有因为好友关系的强弱来采用不同的处理办法,细粒度不足。

综上所述,现有的社交网络中对实体信息、连接信息、属性信息的保护存在没有得到人性化的结果,对于敏感区域的针对性和细粒度不高。



技术实现要素:

本发明的目的在于提供一种社交网络中细粒度人脸隐私保护方法,旨在解决现有的社交网络中对实体信息、连接信息、属性信息的保护存在没有得到人性化的结果,对于敏感区域的针对性和细粒度不高的问题。

本发明是这样实现的,一种社交网络中细粒度人脸隐私保护方法,所述社交网络中细粒度人脸隐私保护方法对上传图片进行分块,同时采用基于细粒度好友连接关系的分级加密方法,在图片传播时通过判断访问者与发布者的连接强弱来赋予不同解密秘钥,最终实现对同一图片的因访问者与发布者连接强弱关系不同而有不同处理结果,对人脸敏感区域进行隐私保护。

进一步,采用UcenterHome开源架构进行二次开发,在用户上传图片时,加入图片分块,属性值赋值和基于连接信息的分级加密。

上传图片,对图片进行分割,同时调用数据库查询相关属性值,最终每张图片获得2500个图片块,每个图片块含有patch_image_id,image_id,patch_face_id,link这四个属性值。

进一步,所述图片分块的方法具体包括:

第一步,对图片块属性初始化,每个图片块都对应有自己的imgage_id、patch_id、patch_face_id、link四个属性值;对于image_id图片,最后一个块用于访问时的图片块替换解密。首先将图片块的patch_face_id值赋值为0和link值赋值为3,而且每个patch_id是从0到2499,故最终一个图片被分成2500个块后的patch_id;

第二步,将人脸身份信息和连接信息赋值到图片块属性中;

计算每个块的大小即块高patch_h和块宽patch_w;进行属性赋值,即进行face_number次循环。

进一步,所述face_number次循环中每一次执行循环时,先调取服务器数据库中的publish_id和face_id的关系强度并将其赋值到tmp_link_publish中,然后获取对应的(xi,yi,face_h,face_w,face_id)。之后计算起始坐标所属块id、终点坐标所属块id和当下人脸区域循环竖直方向所需循环次数,即:

num_y=id_y_end–id_y_start+1;

然后进行num_y次循环,每次循环针对以下范围patch_id块的属性赋值;循环次数i初始值为0,循环一次加1,循环次数为num_y;

每次循环初始块的patch_id为:id_y_start+循环次数i+id_x_start;

每次循环终止块的patch_id为:id_y_start+循环次数i+id_x_end;

每次循环时对上述范围的块,将face_id赋值到patch_face_id中,将tmp_link_publish覆盖到link中;

最终每个图片通过face_number*num_y次循环,每个图片最终被赋值的属性是image_id,publish_id,face_number;每个图片块最终被赋值的属性是patch_image_id,image_id,patch_face_id,link;非人脸图像块的patch_face_id值为0,link值为3。

先生成替换块,再根据发布人与发布图片块的人脸身份的连接关系强弱,采用不同等级的加密方法,对图片块进行加密。

进一步,所述分级加密的方法具体包括:

步骤一,计算整个image_id图片的平均像素值;并利用该像素值,生成一个高为patch_h和宽为patch_w的图片块;并对此图片块的属性进行赋值patch_image_id=2500,face_id=0,link=3;

步骤二,通过判断每个图片块的link值,进行块加密;

若link=3时,代表此人与发布人是强连接关系,此块不用加密;

若link=2时,代表此人与发布人是一般连接关系,此块采用中等等级加密算法,在其解密时需要中等等级解密秘钥key2解密;并将加密结果覆盖到其对应的patch_face_id中;

若link=1时,代表此人与发布人是弱连接关系,此块采用高等等级加密算法,在其解密时需要中高等等级解密秘钥key3解密;并将加密结果覆盖到其对应的patch_face_id中。

进一步,在用户访问图片时,通过根据访问者与发布者的连接信息强度获取不同等级解密秘钥,对图片进行不同程度解密,最终实现与发布者有不同连接信息强度的访问者在访问同一图片时,可以得到不同程度的解密照片,对发布者发布的图片中的人脸信息进行细粒度的隐私保护。

进一步包括:

(1)获取解密秘钥:获取访问者ID即visit_id,此时,visit_id要访问publish_id的image_id图像;从服务器的数据库中获取publish_id与visit_id的连接关系程度存储到tmp_link_visit中,之后系统根据tmp_link_visit的值给visit_id不同的秘钥;

若tmp_link_visit为3时,代表此人与发布人是强连接关系,系统给予访问者key3级别以下解密秘钥,即key3,key2;

若tmp_link_visit为2时,代表此人与发布人是一般连接关系,系统给予访问者key2级别以下解密秘钥,即key2;

若tmp_link_visit为1时,代表此人与发布人是弱连接关系,系统不给秘钥。

步骤2,解密图像块,组合被访问图片;

当访问者获取到秘钥之后,对2500个图像块进行解密;访问者此时获取的每个图像块属性是patch_image_id,image_id,secret_patch_face_id,link;通过判断link值,来采取不同的解密方式;

当link值为3时,代表被访问人脸与发布人是强连接关系,可以不通过解密直接获取图片人脸信息;

当link值为2时,代表被访问人脸与发布人是一般连接关系,需要通过key2秘钥来解密secret_patch_face_id,得到加密前的patch_face_id;

当link值为1时,代表被访问人脸与发布人是弱连接关系,需要通过key3秘钥来解密secret_patch_face_id,得到加密前的patch_face_id;

此时,当访问者不具备某一图片块的解密秘钥时,调用patch_image_id为2500的图片块的属性信息来替换当前块;

最后将解密后的图片块重新连接在一起形成最终访问结果。

本发明的另一目的在于提供一种利用所述社交网络中细粒度人脸隐私保护方法的社交网络中细粒度人脸隐私保护系统。

本发明的另一目的在于提供一种利用所述社交网络中细粒度人脸隐私保护方法的社交网络。

本发明提供的社交网络中细粒度人脸隐私保护方法,首先对上传图片进行分块,有效地起到了阻止爬虫等恶性数据挖掘地攻击;同时采用了基于细粒度好友连接关系的分级加密方法,在图片传播时通过判断访问者与发布者的连接强弱来赋予不同解密秘钥;最终实现对同一图片的因访问者与发布者连接强弱关系不同而有不同处理结果,从而对人脸敏感区域进行隐私保护。

本发明通过上传和发布两个过程的改进,实现了在社交网络中,图片传播的同时,可以根据访问者与发布者之间连接信息的强度来对同一访问图片实现不同程度的处理结果,真正实现了图片在社交网络中防爬虫的同时,也可以达到基于细粒度连接信息强度的人脸隐私保护。

附图说明

图1是本发明实施例提供的社交网络中细粒度人脸隐私保护方法流程图。

图2是本发明实施例提供的社交网络中细粒度人脸隐私保护方法具体实现流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明首先对上传图片进行分块,有效地起到了阻止爬虫等恶性数据挖掘地攻击,同时采用了基于细粒度好友连接关系的分级加密方法,在图片传播时通过判断访问者与发布者的连接强弱来赋予不同解密秘钥,最终实现对同一图片的因访问者与发布者连接强弱关系不同而有不同处理结果,从而对人脸敏感区域进行隐私保护。

下面结合附图对本发明的应用原理作详细的描述。

如图1所示,本发明实施例提供的社交网络中细粒度人脸隐私保护方法包括以下步骤:

S101:对发布图片进行人脸检测;对人脸区域进行人脸识别和标注;

S102:对发布图片进行分块;对每个图像块进行图像块相关属性赋值;根据块中连接信息强度即link进行分级加密;生成解密替换块;将最终图片块上传服务器;

S103:访问图片时,根据访问者和发布者的连接信息强度获得不同级别解密秘钥;根据图像块的link值采用不同级别的解密秘钥进行解密,当未获取到相应解密秘钥时进行块替换;图片块组合形成被访问图片。

下面结合附图对本发明的应用原理作进一步的描述。

1.图片上传过程

步骤1,对图片进行人脸检测与基于深度学习的人脸识别。

第1步,当发布者发布一张图片时,首先赋予此图片在服务器中的唯一的图片ID即image_id,同时获取发布者ID即publish_id。然后,计算图片的haar-like特征,之后通过正脸、左脸、右脸三个adaboost级联分类器,获取到图片中的人脸数量face_number和对应的人脸区域,即是每个人脸的左上角坐标值(xi,yi)和人脸矩形区域的高face_h和宽face_w。

第2步,对检测到的人脸区域进行相应的人脸识别,即进行face_number次人脸识别循环。当每执行一次人脸识别时,即将人脸区域通过训练好的深度神经卷积网络提取到该人脸区域的深度向量特征,再将此特征放入训练好的联合贝叶斯分类其中,通过与服务器中的人脸身份信息作比对,进行人脸识别。将识别到的人脸ID即face_id与图片中的人脸区域对应起来,若未在库中未获取到人脸身份信息,则通过用户标注身份信息来进行身份信息绑定。最终得到一个图片对应一个二维数组,即face_number个(xi,yi,face_h,face_w,face_id)。

步骤2,图片分块和块赋值。

第1步,对图片块属性初始化。

假设将图片分成50*50个块。每个块都对应有自己的imgage_id、patch_id、patch_face_id、link四个属性值。对于image_id这个图片而言,则有2501个图片块,其中2500个块用于存储原有图片信息,最后一个块用于访问时的图片块替换解密。首先将2501个块的patch_face_id值赋值为0和link值赋值为3,而且每个patch_id是从0到2499,故最终一个图片被分成2500个块后的patch_id如下所示。

第2步,将人脸身份信息和连接信息赋值到图片块属性中。

首先计算每个块的大小即块高patch_h和块宽patch_w。

然后进行属性赋值,即进行face_number次循环。每一次执行循环时,先调取服务器数据库中的publish_id和face_id的关系强度并将其赋值到tmp_link_publish中,然后获取对应的(xi,yi,face_h,face_w,face_id)。之后计算起始坐标所属块id、终点坐标所属块id和当下人脸区域循环竖直方向所需循环次数,即:

num_y=id_y_end–id_y_start+1。

然后进行num_y次循环,每次循环针对以下范围patch_id块的属性赋值。循环次数i初始值为0,循环一次加1,循环次数为num_y。

每次循环初始块的patch_id为:id_y_start+循环次数i+id_x_start。

每次循环终止块的patch_id为:id_y_start+循环次数i+id_x_end。

每次循环时对上述范围的块,将face_id赋值到patch_face_id中,将tmp_link_publish覆盖到link中。

最终每个图片通过face_number*num_y次循环,每个图片最终被赋值的属性是(image_id,publish_id,face_number)。每个图片块最终被赋值的属性是(patch_image_id,image_id,patch_face_id,link)。(非人脸图像块的patch_face_id值为0,link值为3。)

步骤3,生成替换块,人脸图像块分级加密。

第1步,计算整个image_id图片的平均像素值。并利用该像素值,生成一个高为patch_h和宽为patch_w的图片块。并对此图片块的属性进行赋值patch_image_id=2500,face_id=0,link=3。因此,每个图片的patch_image_id为2500的块为图像解密时的替换块。

第2步,通过判断每个图片块的link值,进行块加密。

若link=3时,代表此人与发布人是强连接关系,此块不用加密。

若link=2时,代表此人与发布人是一般连接关系,此块采用中等等级加密算法,在其解密时需要中等等级解密秘钥key2解密。并将加密结果覆盖到其对应的patch_face_id中。

若link=1时,代表此人与发布人是弱连接关系,此块采用高等等级加密算法,在其解密时需要中高等等级解密秘钥key3解密。并将加密结果覆盖到其对应的patch_face_id中。

步骤4,将图片块上传至服务器中。

最终对于发布者发布的每个图像而言,有2501个图像块,每个图像块的属性值为(patch_image_id,image_id,secret_patch_face_id,link),其中secret_patch_face_id是分级加密后的属性值。

2.图片访问过程

步骤1,获取解密秘钥。

获取访问者ID即visit_id,此时,visit_id要访问publish_id的image_id图像。从服务器的数据库中获取publish_id与visit_id的连接关系程度存储到tmp_link_visit中,之后系统根据tmp_link_visit的值给visit_id不同的秘钥。

若tmp_link_visit为3时,代表此人与发布人是强连接关系,系统给予访问者key3级别以下解密秘钥,即key3,key2。

若tmp_link_visit为2时,代表此人与发布人是一般连接关系,系统给予访问者key2级别以下解密秘钥,即key2。

若tmp_link_visit为1时,代表此人与发布人是弱连接关系,系统不给秘钥。

步骤2,解密图像块,组合被访问图片。

当访问者获取到秘钥之后,对2500个图像块进行解密。访问者此时获取的每个图像块属性是(patch_image_id,image_id,secret_patch_face_id,link)。通过判断link值,来采取不同的解密方式。

当link值为3时,代表被访问人脸与发布人是强连接关系,可以不通过解密直接获取图片人脸信息。

当link值为2时,代表被访问人脸与发布人是一般连接关系,需要通过key2秘钥来解密secret_patch_face_id,得到加密前的patch_face_id。

当link值为1时,代表被访问人脸与发布人是弱连接关系,需要通过key3秘钥来解密secret_patch_face_id,得到加密前的patch_face_id。

此时,当访问者不具备某一图片块的解密秘钥时,调用patch_image_id为2500的图片块的属性信息来替换当前块。

最后将解密后的图片块重新连接在一起形成最终访问结果。

最终实现的系统结果是,当访问者与发布者是强连接关系时,访问者可以访问发布者发布的图片的所有人脸即包括强连接关系、一般连接关系、弱连接关系的人脸。当访问者与发布者是一般连接关系时,访问者可以访问发布者发布的图片中与发布者是强连接关系、一般连接关系的人脸,而弱连接关系的人脸则被模糊化的矩形区域替换。当访问者与发布者是弱连接关系时,访问者可以访问发布者发布的图片中与发布者是强连接关系的人脸,而一般连接关系和弱连接关系的人脸则被模糊化的矩形区域替换。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1