【小组作业】【Python】可逆的分级加密技术在视频隐私保护中的应用

可逆的分级加密技术在视频隐私保护中的应用

一、摘要

人脸作为一种典型的图像感兴趣区域,是识别一个人的最关键信息,面向视觉感知的分级区域加密增强了加密的针对性和灵活性。本文基于视频的部分加密算法,提出了一种只对监控中的人脸信息进行分级可逆加密并嵌入关键信息的算法,以达到保护实时监控中个人肖像隐私而不影响对监控对象行为判断的目的。本文针对监控视频的每一帧图像,实现了对人脸区域的两级可逆加密,第一级加密后的保留了少量人脸的感知信息,具有一定可识别性,第二级加密后的人脸区域则不包含任何原图像的感知信息。然后通过结合用户不同的类别,进行密钥管理解密人脸区域,我们构造了一个实用的两级加密视频隐私的安全传输方案。

关键词:视频加密;人脸定位;分级可逆加密;隐私保护;密钥管理


二、算法设计

1.嵌入过程

嵌入过程
人脸定位用OpenCV

2.分级加密过程

分级加密

3.分级解密过程

分级解密

三、嵌入算法:预测差值直方图

详见:https://blog.csdn.net/Harbour_zhang/article/details/109155501?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164897905916780261933360%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=164897905916780261933360&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-109155501.142v5pc_search_result_cache,157v4control&utm_term=%E9%A2%84%E6%B5%8B%E5%B7%AE%E5%80%BC%E7%9B%B4%E6%96%B9%E5%9B%BE&spm=1018.2226.3001.4187
嵌入前后对比
嵌入最大信息量约为32500bit(1bit/像素),有时能看出图像变化有时不能。但都不影响人脸的正常识别。

#信息嵌入
def zhifang(img,msg):
    m = img.shape[0]
    n = img.shape[1]
    img_hiding = img.astype(np.float)
    #为了方便计算,直接把数组长度设置为嵌入容量
    N = m * n 
    predict_value = np.zeros((1, N,3), np.uint8)#零矩阵
    predict_error = np.zeros((1, N,3), np.uint8)#零矩阵
    predict_expand = np.zeros((1, N,3), np.uint8)#零矩阵
    #一个随机01序列,作为此次信息隐藏的秘密信息
    secret_msg = np.zeros((1, N,3), np.uint8)
    for i in range(N):
        secret_msg[0,i] = msg[0,i]
    #嵌入
    index = 0
    for i in range(1,m,2):
        for j in range(1,n-1,2):
            # 计算左右两个像素的均值,作为预测值
            predict_value[0,index] = np.round((img[i,j-1] + img[i,j+1])/2)
            # 得到预测误差
            predict_error[0,index] = img[i,j] - predict_value[0,index]
            predict_expand[0,index] = predict_error[0,index]
            index = index + 1
    # 将秘密信息嵌入误差直方图,构成扩展预测误差直方图
    #predict_expand = predict_error.copy()
    # 选择阈值  T = 5
    T = 5
    #print(predict_expand.shape)
    for i in range(0,N):
        if all(predict_error[0,i] >= -1 * T) and all(predict_error[0,i]
  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值