一种基于层间处理的SHVC视频加密方法与流程

文档序号:21362273发布日期:2020-07-04 04:36阅读:259来源:国知局

本发明涉及视频加密领域,特别涉及一种基于层间处理的shvc视频加密方法。



背景技术:

随着新兴技术的发展,数字视频数量的不断增加与扩展,随之也出现了许多版权盗取的问题,视频的隐私和安全问题在诸如付费电视、视频会议、军事机密等许多领域变得越来越苛刻。作为一种有效的保护方法,视频加密可以有效地防止视频内容被盗,为用户提供机密性和完整性。hevc可伸缩扩展版本(scalableextensionsofthehevc,shvc)是在高性能视频编码(highefficiencyvideocoding,h.265/hevc)的基础上提出的新一代视频压缩编码标准。shvc支持的可伸缩特性、兼容性以及压缩率均优于可伸缩视频编码(scalablevideocoding,svc),具有重大的研究和应用价值。与之前的标准相比,可伸缩性能可以解决单层视频结构仅支持单一视频尺寸、比特率和帧率的问题,适应于异构型网络和多样终端,它可以根据不同的网络特性、终端设备和用户需求进行动态的结构调整。新一代编码标准hevc及其扩展的shvc在实现高压缩效率时牺牲了编码时间和成本,这导致编码复杂性增加,这对实际应用的硬件设备提出了更高性能的要求。如何在时间及成本增加程度可忽略不计的条件下对shvc编码过程进行加密成为新编码方式的研究方向之一。



技术实现要素:

本发明所要解决的技术问题是针对现有技术的现状,提供一种符合shvc码流格式且大幅降低视频质量的基于层间处理的shvc视频加密方法。

本发明解决上述技术问题所采用的技术方案为:一种基于层间处理的shvc视频加密方法,其特征在于:包括以下步骤:

步骤1、对输入视频序列进行下采样得到低空间分辨率的序列,并将下采样后得到序列输入到基本层中,使用hevc编码器对基本层输入的序列进行编码生成基本层编码比特流;

步骤2、对基本层编码比特流进行解码得到基本层的重构图像,并对基本层的重构图像分别进行纹理重采样、运动域重采样和颜色映射后生成层间参考图像;其中,基本层的重构图像进行颜色映射的具体步骤为:

步骤2-1、对基本层的重构图像进行颜色映射,得到三个通道的颜色映射系数,记为luty、lutu和lutv,其中luty为亮度映射系数,lutu和lutv为两种不同色度的映射系数;

步骤2-2、分别对步骤2-1中得到的三个通道的颜色映射系数的绝对值进行加密,得到三个通道加密后的颜色映射系数,分别为luty′、lutu′和lutv′;

步骤2-3、将基本层的重构图像的yuv颜色空间切割成n1*n2*n3个长方体分区;n1、n2和n3均为整数;

步骤2-4、对于每个长方体分区,根据所述步骤2-2中的三个通道加密后的颜色映射系数计算出增强层颜色空间的映射样本值;

步骤3、构建增强层的参考图像列表,并将步骤2得到的层间参考图像放入增强层的参考图像列表中,用于增强层的编码预测;

步骤4、将输入视频序列输入到增强层中,并对输入视频序列进行变换和量化,得到量化变换系数,并记录量化变换单元中4×4大小子块中包含的16个量化变换系数,记为一组系数组,并使用语法元素对每组系数组中的特征进行描述,其中提取出每一组系数组中的两个语法元素:非零系数的绝对值余数m和非零系数的符号信息coeff_sign_flag,且对非零系数的绝对值余数m的二值化结果进行加密以及对非零系数的符号信息coeff_sign_flag进行符号数据隐藏,然后对这两个加密后的语法元素以及每组系数组中剩余的其他语法元素进行熵编码;

其中,对非零系数的绝对值余数m的二值化结果进行加密的具体步骤为:

步骤4-1、采用截断莱斯编码与k阶指数哥伦布编码二值化联合方法对非零系数的绝对值余数m进行二值化,得到二值化后的结果;具体步骤为:

步骤4-1a、计算出语法元素的前缀值和后缀值;语法元素的前缀值prefix_value和后缀值suffix_value的计算公式为:

prefix_value=min(cmax,m)

suffix_value=m-cmax

其中,cmax是截断莱斯编码中的截断值,cmax=4<<p,<<为左移运算,p为莱斯参数;

步骤4-1b、使用截断莱斯编码对语法元素的前缀值prefix_value进行编码得到第一子前缀码m1与第一子后缀码n1,使用k阶指数哥伦布编码对语法元素的后缀值suffix_value进行编码得到第二子前缀码m2和第二子后缀码n2,其中,k=p+1;

步骤4-1c、判断m是否小于cmax,如是,则转入步骤4-1d;如否,则非零系数的绝对值余数m二值化的结果由依次按照先后顺序排列的第一子前缀码m1、第二子前缀码m2和第二子后缀码n2组成;

步骤4-1d、判断p是否等于0,如是,则非零系数的绝对值余数m二值化后的结果由第一子前缀码m1组成;如否,则非零系数的绝对值余数m二值化后的结果由依次按照先后顺序排列的第一子前缀码m1和第一子后缀码n1组成;

步骤4-2、判断步骤4-1得到的二值化后的结果中是否有第一子后缀码n1和/或第二子后缀码n2,如有,则对存在的第一子后缀码n1和/或第二子后缀码n2进行加密,并将加密后的结果替换原第一子后缀码n1和/或第二子后缀码n2,重新组成二值化后的结果;如否,则直接输出二值化后的结果;

对非零系数的符号信息coeff_sign_flag进行符号数据隐藏的具体步骤为:

步骤a、求出一组系数组内所有非零系数的幅值绝对值之和,然后进行奇偶校验,若和值为偶数,则一组系数组内最后一个非零系数的符号被判为‘+’,即sdh=1;若和值为奇数,则一组系数组内最后一个非零系数的符号被判为‘-’,即sdh=0;

步骤b、根据步骤a中最后一个非零系数的两种不同符号分别对非零系数的符号信息coeff_sign_flag进行不同加密,得到加密后的非零系数的符号信息coeff_sign_flag′;

步骤5:增强层输入视频序列经过帧内预测、步骤4中的变换、量化和熵编码以及通过步骤3中增强层的参考图像列表实现的帧间预测,得到增强层编码比特流;

步骤6、将步骤1得到的基本层编码比特流和步骤5中得到的增强层编码比特流共同构建成输入视频序列编码后的比特流。

作为优选,所述步骤2-2中的具体加密方法为采用可产生流密码的cfb模式下的aes分组加密方法,三个通道加密后的颜色映射系数luty′、lutu′和lutv′的计算公式为:

其中,||为绝对值,为异或运算,ki为由cfb模式下的aes分组加密方法中加密器产生的子密钥。

具体的,所述步骤4-1b的第一子前缀码m1、第二子前缀码m2、第一子后缀码n1和第二子后缀码n2的计算公式为:

其中,bin()表示二进制转换;>>为右移运算;

个“1”+“0”;

其中,为取整数函数;

在本方案中,所述步骤4-2中对第一子后缀码n1加密的方法为:

判断m值是否在以下取值范围内,

其中,baseleval为语法元素相关值,取值为[1,2,3];

如是,则对第一子后缀码n1进行加密;如否,则不对第一子后缀码n1进行加密;第一子后缀码n1加密的计算公式为:

其中,n1′为第一子后缀码n1加密后得到的结果;

对第二子后缀码n2加密的计算公式为:

其中,n2′为第二子后缀码n2加密后得到的结果。

进一步的,所述步骤b中对语法元素的符号信息coeff_sign_flag进行加密的计算公式为:

与现有技术相比,本发明的优点在于:通过引入层间颜色映射系数加密手段,实现了感知加密中el视频质量的大幅度降低;另外,由于通过对层间参考图像的颜色映射系数进行加密以及对增强层中的两个语法元素进行联合加密,方案符合shvc格式,对shvc的压缩比影响较小;通过该方法对输入视频的编码阶段进行加密后,原来的解码方式无法对其增强层进行正常解析,解码后视频的内容已无法完全被识别,存在显著的失真,因此该方法加密后的视频可实现高安全级别,能有效地应用于高清视频的保护。

具体实施方式

以下结合实施例对本发明作进一步详细描述。

shvc编码是现有的一种编码方式,其包括基本层编码、增强层编码以及设于基本层与增强层之间的层间参考图像,该层间参考图像是根据基本层的重构图像进行处理而得到的,用于增强层的编码预测。

一种基于层间处理的shvc视频加密方法,包括以下步骤:

步骤1、对输入视频序列进行下采样得到低空间分辨率的序列,并将下采样后得到序列输入到基本层中,使用hevc编码器对基本层输入的序列进行编码生成基本层编码比特流;

步骤2、对基本层编码比特流进行解码得到基本层的重构图像,并对基本层的重构图像分别进行纹理重采样、运动域重采样和颜色映射后生成层间参考图像;其中,基本层的重构图像进行颜色映射的具体步骤为:

步骤2-1、对基本层的重构图像进行颜色映射,得到三个通道的颜色映射系数,记为luty、lutu和lutv,其中luty为亮度映射系数,lutu和lutv为两种不同色度的映射系数;

步骤2-2、分别对步骤2-1中得到的三个通道的颜色映射系数的绝对值进行加密,得到三个通道加密后的颜色映射系数,分别为luty′、lutu′和lutv′;

本实施例中,具体加密方法为采用可产生流密码的cfb模式下的aes分组加密方法,三个通道加密后的颜色映射系数luty′、lutu′和lutv′的计算公式为:

其中,||为绝对值,为异或运算,ki为由cfb模式下的aes分组加密方法中加密器产生的子密钥;

步骤2-3、将基本层的重构图像的yuv颜色空间切割成n1*n2*n3个长方体分区;n1、n2和n3均为整数;其中,在y维度,使用均匀分割成最多8个分区,即n1≤8;在u和v维度,使用非均匀分割成最多两个分区,即n2≤2,n3≤2。当非均匀分割u和v时,会产生相较于均匀分割的偏移量,用来规定自适应的u和v的分割门限;

步骤2-4、对于每个长方体分区,根据所述步骤2-2中的三个通道加密后的颜色映射系数计算出增强层颜色空间的映射样本值;

通过将计算出的增强层颜色空间的映射样本值保存在层间参考图像中用于后续在增强层的编码中使用;其中,计算出增强层颜色空间的映射样本值的方法为现有技术;

步骤3、构建增强层的参考图像列表,并将步骤2得到的层间参考图像放入增强层的参考图像列表中,用于增强层的编码预测;

步骤4、将输入视频序列输入到增强层中,并对输入视频序列进行变换和量化,得到量化变换系数,并记录量化变换单元中4×4大小子块中包含的16个量化变换系数,记为一组系数组,并使用语法元素对每组系数组中的特征进行描述,其中提取出每一组系数组中的两个语法元素:非零系数的绝对值余数m和非零系数的符号信息coeff_sign_flag,且对非零系数的绝对值余数m的二值化结果进行加密以及对非零系数的符号信息coeff_sign_flag进行符号数据隐藏,然后对这两个加密后的语法元素以及每组系数组中剩余的其他语法元素进行熵编码;

其中,对非零系数的绝对值余数m的二值化结果进行加密的具体步骤为:

步骤4-1、采用截断莱斯编码trp与k阶指数哥伦布编码egk二值化联合方法对非零系数的绝对值余数m进行二值化,得到二值化后的结果;具体步骤为:

步骤4-1a、计算出语法元素的前缀值和后缀值;语法元素的前缀值prefix_value和后缀值suffix_value的计算公式为:

prefix_value=min(cmax,m)

suffix_value=m-cmax

其中,cmax是截断莱斯编码中的截断值,cmax=4<<p,<<为左移运算,p为莱斯参数;

步骤4-1b、使用截断莱斯编码trp对语法元素的前缀值prefix_value进行编码得到第一子前缀码m1与第一子后缀码n1,使用k阶指数哥伦布编码egk对语法元素的后缀值suffix_value进行编码得到第二子前缀码m2和第二子后缀码n2,其中,k=p+1;

其中,第一子前缀码m1、第二子前缀码m2、第一子后缀码n1和第二子后缀码n2的计算公式为:

其中,bin()表示二进制转换;>>为右移运算;

个“1”+“0”;

其中,为取整数函数;

步骤4-1c、判断m是否小于cmax,如是,则转入步骤4-1d;如否,则非零系数的绝对值余数m二值化的结果由依次按照先后顺序排列的第一子前缀码m1、第二子前缀码m2和第二子后缀码n2组成;

步骤4-1d、判断p是否等于0,如是,则非零系数的绝对值余数m二值化后的结果由第一子前缀码m1组成;如否,则非零系数的绝对值余数m二值化后的结果由依次按照先后顺序排列的第一子前缀码m1和第一子后缀码n1组成;

步骤4-2、判断步骤4-1得到的二值化后的结果中是否有第一子后缀码n1和/或第二子后缀码n2,如有,则对存在的第一子后缀码n1和/或第二子后缀码n2进行加密,并将加密后的结果替换原第一子后缀码n1和/或第二子后缀码n2,重新组成二值化后的结果;如否,则直接输出二值化后的结果;

其中,如果二值化后的结果中单独存在第一子后缀码n1,则只对第一子后缀码n1加密;如果二值化后的结果中单独存在第二子后缀码n2,则只对第二子后缀码n2加密;如果二值化后的结果中既存在第一子后缀码n1又存在第二子后缀码n2,则对第一子后缀码n1和第二子后缀码n2进行同时加密;

在本实施例中,第一子后缀码n1和第二子后缀码n2同样采用可产生流密码的cfb模式下的aes分组加密方法;

对第一子后缀码n1加密的方法为:

判断m值是否在以下取值范围内,

其中,baseleval为语法元素相关值,取值为[1,2,3];

如是,则对第一子后缀码n1进行加密;如否,则不对第一子后缀码n1进行加密;第一子后缀码n1加密的计算公式为:

其中,n1′为第一子后缀码n1加密后得到的结果;

对第二子后缀码n2加密的计算公式为:

其中,n2′为第二子后缀码n2加密后得到的结果;

对非零系数的符号信息coeff_sign_flag进行符号数据隐藏的具体步骤为:

步骤a、求出一组系数组内所有非零系数的幅值绝对值之和,然后进行奇偶校验,若和值为偶数,则一组系数组内最后一个非零系数的符号被判为‘+’,即sdh=1;若和值为奇数,则一组系数组内最后一个非零系数的符号被判为‘-’,即sdh=0;

步骤b、根据步骤a中最后一个非零系数的两种不同符号分别对非零系数的符号信息coeff_sign_flag进行不同加密,得到加密后的非零系数的符号信息coeff_sign_flag′;

对语法元素的符号信息coeff_sign_flag进行加密的计算公式为:

其中,语法元素的符号信息coeff_sign_flag为二进制式的数值;

步骤5:增强层输入视频序列经过帧内预测、步骤4中的变换、量化和熵编码以及通过步骤3中增强层的参考图像列表实现的帧间预测,得到增强层编码比特流;

其中,对增强层进行编码得到增强层比特流的过程属于shvc编码中的现有技术,在本发明中增加了对层间参考图像中的颜色映射系数进行加密以及结合增强层编码过程中的两种语法元素的加密,从而对增强层编码后的比特流进行了加密,使增强层解码后得到视频的内容已无法完全被识别,保证了视频的安全性;

步骤6、将步骤1得到的基本层编码比特流和步骤5中得到的增强层编码比特流共同构建成输入视频序列编码后的比特流。

本发明中,一方面考虑到尽可能降低时间复杂度与运算量,从而不采用数据量较大的基本层重构图像的采样值进行加密,而选择对颜色映射过程中的颜色映射系数进行加密,实现了感知加密中视频质量的大幅度降低,且为了满足码流兼容性,将采用可产生流密码的cfb模式下的aes分组加密方法中密钥序列发生器产生的子密钥与颜色映射系数的绝对值进行异或操作,保持系数符号位不变;另一方面考虑到不改变码流格式的兼容性,因此选择对增强层中语法元素的非零系数的绝对值余数以及非零系数的符号信息进行加密,对它们进行加密操作不会改变码流的格式兼容性,也不会影响编码的压缩效率,同时,存在较大的编码空间可以增强加密算法的安全性。

由于对增强层中语法元素的非零系数的绝对值余数以及非零系数的符号信息进行加密是完成纹理信息加密,本发明中输入视频图像经过上述编码已经联合加密后得到压缩视频的比特流,在未解密的情况下可以直接解码输出,具有码流格式兼容性,但对该压缩视频比特流进行解密时,解码后的输出视频中基本层的解码正常,但是增强层解码后得到视频的内容已无法完全被识别。因此通过该方法加密后的视频可实现高安全级别保护,使得层间参考图像能够对比特流执行网络自适应并且进一步减少端到端延迟,且引入了较低的压缩负载和时间开销,保留了视频格式兼容性,具有实际应用价值,为可伸缩编码的加密算法提供了新的解决办法。

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