多层结构化编码单元中数据隐藏的方法和装置的制造方法

文档序号:10694538阅读:397来源:国知局
多层结构化编码单元中数据隐藏的方法和装置的制造方法
【专利摘要】本发明涉及提供用于将分层编码单元的值隐藏在编码单元包括的其它值中的方法(编码方法)。此外,本发明还涉及用于从已编码的编码单元重构隐藏数据的方法(解码方法)。本发明还涉及这些编码和/或解码方法在装置中和(非瞬时性)计算机可读介质上的实施。根据本发明,数据被隐藏到分层结构化编码单元的不同层的值中。
【专利说明】
多层结构化编码单元中数据隐藏的方法和装置
技术领域
[0001] 本发明设及提供用于将分层编码单元的值隐藏在编码单元包括的其它值中的方 法(编码方法)。此外,本发明还设及用于从已编码的编码单元重构隐藏数据的方法(解码方 法)。本发明还设及运些编码和/或解码方法在装置中和(非瞬时性)计算机可读介质上的实 施。
【背景技术】
[0002] 有损数据压缩具有许多用途,尤其是在通信、广播、娱乐和安全中。视频压缩是一 项具有挑战性的任务,因为要求较大的压缩比才能通过现有通信信道传输高质量且高分辨 率的图片。运项任务在无线和移动通信或媒体实时编码的环境中甚至更具挑战性。
[0003] 新近采用的ITU-T H.265/肥VC标准(IS0/IEC 23008-2:2013,信息技术一异构环 境中的高效编码和媒体发送一第二部分:高效视频编码(Information technology-Hi曲 efficiency coding and media delivery in heterogeneous environments-Part2:High efficien巧video coding) ,2013年11月)声明了一组最新视频编码工具,运些视频编码工 具提供了编码效率与计算复杂度之间的合理平衡。Gary J. Sullivan在2012年12月的IE邸 视频技术的电路和系统会刊(I邸E Transactions on Circuits and Systems for Video Technology)第22卷第12期的文章"高效视频编码化igh Efficiency Video Coding,肥VC) 标准概述(Overview of the Hi曲 Efficiency Video Coding(肥VC)Sl:andard)"中给出了 口U-T Η.265/肥VC标准的概述,其全部内容W引入的方式并入本文本中。
[0004] 与ITU-T H. 264/AVC视频编码标准类似,皿VC/H. 265视频编码标准提供了一种源 图片到块,例如编码单元(coding unit,CU)的划分。每个CU还可W分为较小CU或预测单元 (prediction unit,PU)。可W根据应用于PU像素的处理类型对PU进行帖内和帖间预测。在 帖间预测的情况下,PU表示通过运动补偿使用为PU指定的运动向量来处理的像素区域。对 于帖内预测,PU为一组变换单元(transform unit,TU)指定预测模式。TU可W具有不同大小 (例如,4x4、8x8、16x16和32x32像素)并且可W通过不同的方式处理。针对TU正执行变换编 码,即,正使用离散余弦变换(discrete cosine transform,DCT)对预测误差进行变换W及 量化。将产生的量化变换系数分组为CG,每个CG有16个量化变换系数。
[0005] 如上所述,对图片的块进行编码的运些标准的核屯、工具或类似专有编解码器为帖 内和帖间预测、频谱变换(例如,离散余弦变换或其整数近似)和量化。帖间和帖内预测工具 用于为给定块生成预测信号。在编码器侧,将源块与其预测之间的差异,所谓的残差信号, 变换为它们的频谱,即,通过频域中的变换系数来表示源块像素。此外,将系数量化。非零和 零量化变换系数通常分别称为重要系数和不重要系数。对包括量化变换系数和侧信息(例 如,用于帖内编码的帖内预测模式和用于帖间编码的运动向量)的所有语法元素进行二值 化和赌编码。压缩的H. 265/肥VC比特流中的赌编码后系数的部分可超过80%。
[0006] 对量化变换系数进行编码的阶段如下:
[0007] -对最后的重要系数,即,最后的非零量化变换系数,的位置进行编码。
[0008] -对用于恢复所有非零系数的位置的重要性图进行编码。
[0009] -重要系数的符号编码。
[0010] -重要系数的量级编码。
[0011] 运些阶段在量化变换系数的环境中执行,量化变换系数被分为所谓的系数组 (coefficient group,CG)。每个CG是一个通常由4x4个系数组成的子集。
[0012] 显式符号编码要求对每一个重要系数一个符号位进行编码。然而,ITU-T H. 265/ 肥VC标准采用称为符号位隐藏(Sign Bit Hiding,SBH)的新工具。运个技术背后的基本理 念是使用属于给定CG的重要系数的最小重要位之和的奇偶校验来隐式表示该CG内的第一 重要系数的符号。运个工具不是应用到所有CG,而是仅应用到满足阔值条件的那些CG,阔值 条件即第一与最后重要系数的位置差应大于或等于四。根据负责开发H. 265/肥VC标准的视 频编码联合组(Joint Collaborative Team on Video Coding,JCT-VC)提供的结果,运个 工具对于JCT-VC测试中使用的广泛视频序列降低了相同质量下的比特率。运证实了,尤其 是SBH,一般而言是数据隐藏,可W是有效的压缩工具。
[0013] 除了视频压缩,数据隐藏还可W用于不同的数字权限管理(Digital Rights Management,DRM)应用(例如,数字水印)中。运是用于载波信号中的内嵌数字信息的DRM技 术之一(参见例如Tirkelet等人的"电子水印化lectronic Water Mark)",数字图像计算: 技术和应用(Digital Image Computing:Techniques and Applications,DICTA) ,1993,麦 考瑞大学,第666-673页)。该隐藏信息可W用于验证载波信号的真实性或完整性或用于显 示其所有者的身份。
[0014] 在运种情况下,如果应对同一目标值集合执行若干隐藏操作,那么运些操作可能 会互相干扰。如果隐藏操作修改了集合的一个值而不考虑运个修改对先前隐藏操作期间隐 藏的数据的影响,那么会发生运种干扰。因此,隐藏操作的简单合并会导致产生不可解码的 比特流。
[0015] 作为运一情况的示例,可W考虑隐藏TU的量化变换系数内的一组标记,如果还应 为运些系数执行SBH。如果单独执行标记隐藏操作(即,其与SBH不配套),那么会不恰当地执 行提取隐藏符号。

【发明内容】

[0016] -个目的是提议一种用于基于编码单元中包括的数据(值)输入集对待编码的数 据单元(所述编码单元)的多段数据进行编码的新颖方法。另一个目的是提议一种用于再次 对所述已编码的数据单元中的所述多段数据进行解码的方式。此外,再一个目的是提议一 种数据隐藏机制,其中可W分别执行若干隐藏操作而不引起干扰,产生不可解码的编码后 数据。
[0017] 根据本发明的第一方面,待编码的数据单元具有分层结构。运意味着,例如,属于 所述编码单元的数据的各个值对应提供所述编码单元的若干层的分层结构。所述第一方面 的理念是使用数据隐藏模式隐藏属于相应给定层的信息(例如,值),基于所述编码单元的 其它信息。其上应用有相应数据隐藏模式的所述其它数据可W视为针对相应数据隐藏模式 的值的输入集。若干数据隐藏模式可基于值的相同输入集、值的部分交叠的输入集或值的 不同输入集,或甚至它们的组合。
[0018] 根据所述第一方面的第一示例性实施方式,提供了一种用于将分层编码单元的值 隐藏在所述编码单元包括的其它值中的方法(编码方法)。在所述方法中,提供了数据隐藏 模式的分层堆找。所述数据隐藏模式用于在所述编码单元的不同层处隐藏所述编码单元的 所述值。所述数据隐藏模式中的每一个均具有与其关联的校验函数,用于在所述编码单元 的所述层之一处隐藏所述编码单元的所述值中的一个或多个。针对所述数据隐藏模式中的 每一个,执行W下操作:
[0019] (i)基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其 它值中选择的值计算所述相应数据隐藏模式的所述校验函数;
[0020] (ii)确定所述校验函数的结果是否对应将由所述相应数据隐藏模式隐藏的所述 编码单元的值;
[0021] (iii)若否,则修改所述相应数据隐藏模式从所述编码单元的所述其它值中选择 的所述值中的至少一个,使得步骤(i i)中的所述校验函数的所述结果对应将由所述相应数 据隐藏模式隐藏的所述编码单元的所述值。
[0022] 所述已编码的编码单元包括如在步骤(iii)中针对所有数据隐藏模式修改的所述 编码单元的所述其它值。
[0023] 在所述第一方面的所述第一实施形式的另一第二实施方式中,所述数据隐藏模式 的所述分层堆找定义解禪的数据隐藏模式。所述解禪的数据隐藏模式可被认为满足W下标 准:使用所述堆找的任意数据隐藏模式恢复的隐藏值无法从所述堆找中定义的剩余数据隐 藏模式的组合(例如,线性组合)中推导出。如果解禪所述数据隐藏模式的分层堆找,那么对 值的同一输入数据集应用相同不会引起所述堆找中不同数据隐藏模式之间的干扰,使得隐 藏值可W正确恢复。运种干扰会在例如W下情况中发送:一个隐藏操作修改了所述值的输 入集的数据(即,在所述隐藏操作中使用的所述数据隐藏模式选择的所述值),而未考虑先 前数据隐藏操作中的所述值的输入集中的一个或多个值的修改的影响。
[0024] 此外,在所述第一方面的任一前述实施形式的第Ξ实施方式中,所述编码单元的 每个层可与所述数据隐藏模式中的一个或多个关联。
[0025] 在所述第一方面的任一前述实施形式的再一第四实施方法中,所述数据隐藏模式 可包括W下项中的至少一项:基于抽取的数据隐藏模式、一个或多个规律性数据隐藏模式, W及一个或多个伪随机数据隐藏模式。
[0026] 根据所述第一方面的任一前述实施形式的第五实施方法,所述方法还可包括针对 所述数据隐藏模式中的每一个执行W下操作:如果在步骤(iii)中用于修改所述相应数据 隐藏模式从所述编码单元的所述其它值中选择的所述值中的至少一个的算法没有修改所 述值使得步骤(ii)中的所述校验函数的所述结果对应将由所述相应数据隐藏模式隐藏的 所述编码单元的所述值,则重复步骤(i)至(iii),直到步骤(ii)中的所述校验函数的所述 结果对应将由所述相应数据隐藏模式隐藏的所述编码单元的所述值。
[0027] 根据所述第一方面的任一前述实施形式的第六实施方式,当使用所述数据隐藏模 式的第一数据隐藏模式和第二数据隐藏模式分别执行步骤(i)至(iii)时,已被所述第一数 据隐藏模式选择出且已在步骤(iii)中修改的所述编码单元的那些一个或多个其它值,如 果被所述第二数据隐藏模式在第二迭代中选择,则在针对所述第二数据隐藏模式执行步骤 (i)至(iii)时,在步骤(iii)中不再次修改。
[0028] 根据所述第一方面的任一前述实施形式的第屯实施方式,针对所述数据隐藏模式 之一在步骤(iii)中修改的所述至少一个值,在为另一数据隐藏模式执行步骤(i)至(iii) 时,被认为是替代原始值。
[0029] 根据所述第一方面的第八实施方式,提供了一种用于从已编码的编码单元重构隐 藏值的方法(解码方法)。再次,提供了数据隐藏模式的分层堆找。编码器已使用所述堆找隐 藏所述编码单元的所述值。所述数据隐藏模式中的每一个均具有与其关联的校验函数。在 本方法中,针对所述数据隐藏模式中的每一个,基于所述数据隐藏模式中的相应一个数据 隐藏模式从所述编码单元的所述其它值中选择的值计算所述相应数据隐藏模式的所述校 验函数,其中所述校验函数的结果对应重构的隐藏值之一。
[0030] 根据所述第一方面的任一前述实施形式的第九实施方式,所述编码单元包括的所 述值是所述编码单元的最低分层的值,其中所述数据隐藏模式的所述校验函数基于所述编 码单元包括的所述值计算。
[0031] 根据所述第一方面的所述第九实施形式中的第十实施形式,根据所述数据隐藏模 式中的相应一个数据隐藏模式从所述编码单元的所述最低分层的所述值的相应子集中选 择的值计算所述数据隐藏模式的所述校验函数,其中所述数据隐藏模式与除所述编码单元 的所述最低分层之外的一层关联。
[0032] 根据所述第一方面的所述第十实施形式的第十一实施方式,基于所述子集的大小 确定所述数据隐藏模式中的相应一个数据隐藏模式的大小,其中所述相应数据隐藏模式的 所述校验函数根据所述子集大小计算。
[0033] 根据所述第一方面的所述第十或第十一实施形式的第十二实施方向,除所述最低 分层之外的一层中的相应子集包括所述编码单元的所述最低分层的那些值,所述值分层地 属于所述相应层的组织数据单元。
[0034] 根据所述第一方面的所述第十二实施形式的第十Ξ实施方式,基于属于所述相应 层的相应组织数据单元的值的子集大小确定适用于所述相应层的所述相应组织数据单元 的数据隐藏模式的数目和/或大小,其中所述校验函数根据所述子集大小计算。
[0035] 根据所述第一方面的所述第十至第十Ξ实施方式的第十四实施方式,所述数据隐 藏模式中的相应一个数据隐藏模式的大小等于所述子集大小或为所述子集大小的除数,其 中所述相应数据隐藏模式的所述校验函数根据所述子集大小计算。为使其不同,所述子集 大小,其中所述相应数据隐藏模式的所述校验函数根据其计算,等于所述数据隐藏模式中 的相应一个数据隐藏模式的大小或为其整数倍。
[0036] 根据所述第一方面的任一前述实施形式的第十五实施方式,所述编码单元的所述 值表示图像的像素块,所述编码单元具有一个或多个预测单元、一个或多个变换单元W及 一个或多个系数组,其中所述数据隐藏模式与所述编码单元的层关联,所述编码单元的层 分别对应所述预测单元、所述变换单元和所述编码单元。此外,所述数据隐藏模式中的每一 个隐藏所述编码单元的所述关联层的一个或多个值。
[0037] 根据所述第一方面的所述第十五实施形式的第十六实施方式,所述数据隐藏模式 与所述编码单元的层关联,所述编码单元的层分别对应所述系数组、所述预测单元、所述变 换单元和所述编码单元,其中所述系数组是所述编码单元的所述最低层的一部分。
[0038] 根据所述第一方面的任一前述实施形式的第十屯实施形式,基于所述系数组的值 计算所述数据隐藏模式的所述校验函数。
[0039] 根据所述第一方面的所述第十五至第十屯实施形式的第十八实施方式,所述数据 隐藏模式包括用于针对所述编码单元的所述变换单元的帖内预测隐藏参考样本滤波标记 的一个或多个数据隐藏模式。
[0040] 根据所述第一方面的所述第十五至第十八实施形式的第十九实施方式,所述数据 隐藏模式包括用于隐藏W下项中的至少一项的一个或多个数据隐藏模式:预测模式指数W 及所述预测单元的大小。
[0041] 根据所述第一方面的所述第十五到第十九实施形式的第二十实施方式,所述数据 隐藏模式包括用于将水印嵌入所述编码单元的数据隐藏模式。
[0042] 根据所述第一方面的所述第十五到第二十实施形式的第二十一实施方式,所述数 据隐藏模式包括用于隐藏所述系数组的系数的符号位的数据隐藏模式。
[0043] 根据所述第一方面的所述第一至第十四是实施形式的第二十二实施方式,所述编 码单元的所述值表示待编码的图像数据的块、音频数据的块或文件的块。
[0044] 根据所述第一方面的所述第一至第二十二实施形式的第二十Ξ实施方式,所述隐 藏值之一允许确定所述编码单元中包括的所述值的真实性。
[0045] 根据所述第一方面的第二十四实施方式,本发明提供了一种用于将分层编码单元 的值隐藏在所述编码单元包括的其它值中的编码装置。所述编码装置设有数据隐藏模式的 分层堆找,用于在所述编码单元的不同层处隐藏所述编码单元的所述值,其中所述数据隐 藏模式中的每一个均具有与其关联的校验函数,用于在所述编码单元的所述层之一处隐藏 所述编码单元的所述值中的一个或多个。所述编码装置包括处理单元,用于针对所述数据 隐藏模式中的每一个执行W下操作:
[0046] (i)基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其 它值中选择的值计算所述相应数据隐藏模式的所述校验函数;
[0047] (ii)确定所述校验函数的结果是否对应将由所述相应数据隐藏模式隐藏的所述 编码单元的值;
[0048] (iii)若否,则修改所述相应数据隐藏模式从所述编码单元的所述其它值中选择 的所述值中的至少一个,使得步骤(i i)中的所述校验函数的所述结果对应将由所述相应数 据隐藏模式隐藏的所述编码单元的所述值。
[0049] 所述编码装置还包括输出单元,用于输出已编码的编码单元,所述已编码的编码 单元包括如在步骤(iii)中针对所有数据隐藏模式修改的所述编码单元的所述其它值。
[0050] 本发明的第一方面的第二十五实施方式提供了一种编码装置,用于执行根据所述 第一方面的任一实施形式的方法。
[0051] 本发明的所述第一方面的所述第二十六实施方式提供了一种解码装置,用于从已 编码的编码单元重构隐藏值。所述解码装置设有数据隐藏模式的分层堆找,编码器已使用 所述分层堆找隐藏所述编码单元的所述值,其中所述数据隐藏模式中的每一个均具有与其 关联的校验函数。所述解码装置包括:处理单元,用于针对所述数据隐藏模式中的每一个, 基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其它值中选择 的值计算所述相应数据隐藏模式的所述校验函数,其中所述校验函数的结果对应重构的隐 藏值之一;W及输出单元,用于输出所述已解码的编码单元,所述已解码的编码单元包括所 述重构的隐藏值,作为已解码的数据的一部分。
[0052] 根据所述第一方面的所述第一至第二十六实施形式的第二十屯实施方式,所述相 应数据隐藏模式从所述已编码的编码单元中选择的所述值是所述编码单元的最低分层的 值。
[0053] 根据所述第一方面的所述第一至第二十屯实施形式的第二十八实施方式,所述处 理单元还用于根据所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述 最低分层的所述值的相应子集中选择的值计算所述数据隐藏模式的所述校验函数,其中所 述数据隐藏模式与除所述已编码的编码单元的所述最低分层之外的一层关联。
[0054] 根据所述第一方面的所述第一至第二十八实施形式的第二十九实施方式,所述处 理单元还用于基于所述子集的大小确定所述数据隐藏模式中的相应一个数据隐藏模式的 大小,其中所述相应数据隐藏模式的所述校验函数根据所述子集大小计算。
[0055] 根据所述第一方面的所述第一至第二十八或第二十九实施形式的第=十实施方 向,除所述最低分层之外的一层中的相应子集包括所述编码单元的所述最低分层的那些 值,所述值分层地属于所述相应层的组织数据单元。
[0056] 根据所述第一方面的所述第一至第Ξ十实施形式的第Ξ十一实施方式,所述处理 单元用于基于属于所述相应层的相应组织数据单元的值的子集大小确定适用于所述相应 层的所述相应组织数据单元的数据隐藏模式的数目和/或大小,其中所述校验函数根据所 述子集大小计算。
[0057] 本发明的第一方面的第Ξ十二实施方式提供了一种解码装置,用于执行根据所述 第一方面的任一实施形式的解码方法。
[0058] 本发明的所述第一方面的第Ξ十Ξ实施方式提供了一种存储有指令的(非瞬时 性)计算机可读介质,当所述指令由编码装置的处理单元执行时,使所述编码装置针对所述 数据隐藏模式中的每一个执行W下操作:
[0059] (i)基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其 它值中选择的值计算所述相应数据隐藏模式的所述校验函数;
[0060] (ii)确定所述校验函数的结果是否对应将由所述相应数据隐藏模式隐藏的所述 编码单元的值;
[0061] (iii)若否,则修改所述相应数据隐藏模式从所述编码单元的所述其它值中选择 的所述值中的至少一个,使得步骤(i i)中的所述校验函数的所述结果对应将由所述相应数 据隐藏模式隐藏的所述编码单元的所述值。
[0062] 此外,指令还可使所述编码装置的所述处理单元在已编码的编码单元中包括如在 步骤(iii)中针对所有数据隐藏模式修改的所述编码单元的所述其它值。
[0063] 本发明的所述第一方面的第Ξ十四实施方式提供了一种存储有指令的(非瞬时 性)计算机可读介质,当所述指令由编码装置的处理单元执行时,使所述编码装置执行根据 所述第一方面的任一实施形式的编码方法。
[0064] 本发明的所述第一方面的第Ξ十四实施方式提供了一种存储有指令的(非瞬时 性)计算机可读介质,当所述指令由编码装置的处理单元执行时,使所述编码装置提供数据 隐藏模式的分层堆找,其中编码器已使用所述堆找隐藏所述编码单元的所述值。所述数据 隐藏模式中的每一个均具有与其关联的校验函数。所述指令还使所述解码装置,针对所述 数据隐藏模式中的每一个,基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码 单元的所述其它值中选择的值计算所述相应数据隐藏模式的所述校验函数,其中所述校验 函数的结果对应重构的隐藏值之一。
[0065] 本发明的所述第一方面的第Ξ十六实施方式提供了一种存储有指令的(非瞬时 性)计算机可读介质,当所述指令由解码装置的处理单元执行时,使所述解码装置执行根据 所述第一方面的任一实施形式的解码方法。
【附图说明】
[0066] 本发明的W下实施例结合附图更详细地描述。图中的类似或对应细节通过相同的 参考编码标记。
[0067] 图1所示为根据本发明一示例性实施例的编码单元的示例性结构(编码树);
[0068] 图2所示为本发明一实施例的编码单元的示例性结构,其类似于H.265标准中的编 码单元结构;
[0069] 图3所示为根据本发明实施例的一维解禪数据隐藏模式的不同示例;
[0070] 图4所示为根据本发明一实施例的二维解禪数据隐藏模式的不同示例;
[0071] 图5所示为根据本发明一实施例的针对图2中的不同层定义的数据隐藏模式的分 层堆找的结构的示例性实施例;
[0072] 图6所示为根据本发明一示例性实施例的数据隐藏模式的示例性分层结构;
[0073] 图7和图8所示为根据本发明一示例性实施例的用于多层分层结构化数据隐藏模 式的编码器侧上的系数调整流程的流程图;
[0074] 图9所示为根据本发明一示例性实施例的用于两层的数据隐藏模式的编码器侧上 的系数调整的简化流程的流程图;
[0075] 图10所示为根据本发明一实施例的解码视频流的过程的流程图;
[0076] 图11所示为本发明一示例性实施例的编码器和解码器结构;
[0077] 图12所示为根据本发明一示例性实施例的用于根据口U T H.265/皿VC帖内预测 的参考样本滤波的流程图隐式标记信令的示例性修改;
[0078] 图13所示为根据其它不同实施例的本发明的概念的示例性用例;
[0079] 图14所示为本发明一实施例的示例性编码装置;
[0080] 图15所示为本发明一实施例的示例性解码装置。
【具体实施方式】
[0081] W下段落将描述不同方面的各种实施方式和实施例。如上文已说明的,本发明的 一个方面设及对编码单元的数据执行多个数据隐藏操作。
[0082] 编码单元通常设及包含一组待编码数据的结构。假定编码单元具有分层结构。运 意味着,例如,表示属于所述编码单元的数据的各个值对应为编码单元提供若干层的分层 结构。运种分层可例如通过定义编码树的结构实现,其中编码单元层定义了树的根W及属 于下一较低层的树中的每个分支的数据。编码单元中的数据通过数据值(简称值)表示,数 据值表示结构的不同层处的信息。数据值可通过二进制格式表示。数据隐藏操作,尤其是校 验函数的计算,可对运些值执行,但是它们还可W根据需要对二进制表示(位级)执行。
[0083]图1示出了示例性编码树。编码单元的结构(层η单元,最高层单元)从而定义了编 码树层的层级顺序中的最高层。每层(除了最低层)处的每个单元可由相应层的侧信息W及 一个或多个低层单元组成。注意的是,根据本发明的应用,一个或多个层中可能不存在侧信 息。最低层单元(层0单元)可例如包括值或由值组成,可选地,可能还存在侧信息。
[0084]本发明的第一方面的理念是使用数据隐藏模式(data hiding pattern,DHP)隐藏 属于不同层的信息(例如,编码单元的一个或多个值),基于编码单元的其它值。例如,要隐 藏的数据可为相应层的一种或多种侧信息,运些信息另外将须要在已编码数据中显式编 码。在一实施方式中,可将相应层的数据结构(例如,层n-1单元或任何其它低层单元)的侧 信息隐藏在属于相应数据结构的值内。
[0085] 可例如预先确定或可向解码装置发送将哪一层的哪些信息(或值)隐藏在已编码 的编码单元中。还可预先确定或可从已编码的编码单元的参数,例如相应大小,推导出在相 应不同层上使用的数据隐藏模式。相同的数据隐藏模式可在一个层X中为该层的每一个层X 单元重用。
[0086] 在某些实施例中,数据隐藏操作基于的值属于编码单元的最低分层。应用相应数 据隐藏模式的运些值可W被认为是针对相应数据隐藏模式的值的输入集。若干数据隐藏模 式可基于值的相同输入集、值的部分交叠的输入集或值的不同输入集,或甚至它们的组合。
[0087] 通常,假定仅出于示例性目的,校验函数具有二进制结果,一个数据隐藏模式可隐 藏信息的一个位。因此,数据隐藏模式的数目对应要为一个相应层的单元隐藏的位数,除非 输入数据足够大,使得同一数据隐藏模式可W应用到其相应子集。因此,用于一层的数据单 元的数据隐藏模式可定义解禪的数据隐藏模式的堆找。数据隐藏模式的解禪确保隐藏位可 再次从已编码的编码单元重构。有利地,不仅为单个层的数据隐藏模式提供数据隐藏模式 的解禪,而且在编码单元的所有层中解禪数据隐藏模式。如前所述,"解禪"是指使用任意数 据隐藏模式从任意层恢复的数据无法通过为该层定义的剩余数据隐藏模式的组合(例如, 线性组合)推导出。换言之,可W通过从给定目标值集中推导出提取值的等式的非简并系统 来描述解禪数据隐藏模式的堆找。
[0088] 可例如通过各种方式构造解禪的数据隐藏模式的分层堆找。图3示出了一维解禪 数据隐藏模式的不同示例,运些数据隐藏模式可划分为Ξ组:基于抽取的、规律性的W及无 规律的(伪随机的)。在图3中,(a)和(b)呈现基于提取的DHP的两个示例;(c)、(d)和(e)示出 了其它规律性畑P的Ξ个不同示例;(f)示出了无规律(伪随机)畑P的示例。
[0089] 可通过运样一种方式构造基于抽取的数据隐藏模式:可W将给定值集合的每第η 个元素用于数据隐藏。在更普遍的情况下,如果数据隐藏模式规律性地,即,根据某一规律 性的顺序,选择集合的元素,那么运些数据隐藏模式可W划分为规律性数据隐藏模式。未在 数据隐藏模式内部定义任何规律性顺序的所有其它情况可W分组到无规律或伪随机数据 隐藏模式的分类中。
[0090] 层的堆找可W由不同类别的数据隐藏模式组成,但是对解禪的运些数据隐藏模式 具有约束。此外,数据隐藏模式可W是二维甚至多维的。图4给出了数据隐藏模式的二维分 层堆找的示例。二维数据隐藏模式可W例如应用到量化的变换系数,如一维数据隐藏模式 一样,但是,在那种情况下的数据隐藏和提取流程会在系数扫描之前发生。
[0091] 在W下示例中,假定大部分时间本发明用于视频编码环境中。因此,编码单元的数 据表示图像的像素块。出于示例性目的,假定编码单元具有与Η. 265标准类似的编码树结 构。编码单元具有一个或多个预测单元、一个或多个变换单元W及一个或多个系数组。图2 示出了该示例性分层结构,其中突出了编码单元山〇山叫unit,CU)的相应层。此外,为各个 层确定的参数列出了可为相应层的数据单元(CU、PU、TU和CG)隐藏的示例性侧信息。此外, 示例性地假定基于属于相应层的数据单元(CU、PU、TU和CG)的CG的变换系数值在每层执行 数据隐藏操作。因此,用于为相应层的数据单元执行的数据隐藏操作的输入数据集可不同。 运可允许为不同的相应层的数据单元重用相同的数据隐藏模式。
[0092] 图5示出了为图2中的不同层定义的数据隐藏模式的分层堆找的结构的示例性实 施例。在本示例中,仅出于示例性目的,假定,在四个层中的相应一个层中,每个相应层的数 据单元具有一个数据隐藏模式。
[0093] 在最低层(层0),CG层,要隐藏每个CG的一个值(例如,相应CG的(重要)变换系数的 符号标记)。注意的是,考虑变换系数的完整集合(例如,对于大小为4x4的CG,考虑全部16个 重要和不重要系数,尽管仅重要系数可在已编码的编码单元中进行编码)。
[0094] 通过相应数据隐藏模式和校验函数(例如,奇偶校验函数),可W对给定CG内的一 个或多个重要系数的符号进行编码。数据隐藏模式的大小等于CG的大小(或为CG的大小的 除数)(例如,对于4x4CG是16个值),并选择CG的系数值的子集用于校验函数。数据隐藏操作 可不用于所有CG,而仅用于满足阔值条件的那些CG。例如,如果第一与最后重要系数的位置 的差异应大于或等于四,则使用数据隐藏。
[0095] 在一个示例中,针对要隐藏的CG的每个值,定义对应的数据隐藏模式(和校验函 数)。因此,如果要隐藏4个重要系数的符号,那么定义4个不同的数据隐藏模式,每个数据隐 藏模式用于隐藏一个符号位(假定数据隐藏模式的大小等于CG的大小(即,其系数的数 目))。在图5的示例中,可为一个CG隐藏一个重要系数的一个符号位。注意的是,用于隐藏不 同CG的符号位的数据隐藏模式集合对于编码单元的所有CG可相同。然而,也可使用不同的 数据隐藏模式集合。
[0096] 现转向TU层,即,图5的示例中的层1,通常,若干个CG属于单个TU。因此,对于隐藏 TU的侧信息(例如,TU的参考样本滤波标记),数据隐藏操作的输入数据集现可为属于相应 TU的所有CG的变换系数。因此,TU层的数据隐藏模式的大小可等于CG的大小,如图5所示。如 果需要在TU层中隐藏多个位,则定义对应数目的解禪数据隐藏模式。
[0097] 或者,TU层的数据隐藏模式的大小可为CG大小的除数(未在图5中示出)。如下文将 说明的,数据隐藏模式可具有最大大小。在运种情况下,数据隐藏模式的大小的整数倍可等 于属于TU的CG的大小(即,属于TU的不同CG的系数的数目)。在运种情况下,可对属于TU的CG 的不同子集多次应用同一数据隐藏模式W隐藏多个位。
[0098] 与TU层类似,同样,在PU层中,即图5的示例中的层2中,若干个CG可属于单个PU。因 此,用于PU层的数据隐藏操作的输入数据集也可大于TU层的数据隐藏操作的输入数据集。 PU层的数据隐藏模式的大小也可等于属于相应PU的CG的大小,或者,PU层的数据隐藏模式 的大小可为CG大小的除数(未在图5中示出),便于在隐藏多个位时对属于相应PU的CG的系 数值的不同子集重用数据隐藏模式。
[0099] 通常,数据隐藏模式还可用于隐藏非二进制值,例如,PU的预测模式指数或运动向 量(指数)。根据数据隐藏模式的大小和属于相应层的单元的系数的数目,需要一个或多个 数据隐藏模式来运样做。假定一个PU具有多个τυ,可w预期,属于PU的CG的CG变换系数的数 目明显大于用于PU层的数据隐藏模式的(最大)大小,使得即使一个数据隐藏模式也可用于 隐藏非二进制值,比如PU的预测模式指数或运动向量(指数)。
[0100] 最后,在CU层处,即,图5的示例中的层3,CU的所有CG的所有系数都可W用于数据 隐藏过程。因此,可能隐藏CU层上的一种或若干种侧信息。例如,可通过CU的CG系数内的数 据隐藏操作来隐藏环路滤波器参数、SA0偏移值或去块效应滤波器参数,如上文针对TU和PU 层描述的。
[0101] 此外,还可能在任意层处增加水印(指纹),如将在下文说明的。
[0102] 愈加明显的是,数据隐藏操作可能需要修改最低层处的各个值(例如,CG层的系数 值与上文在图2和图5中论述的示例保持一致),使得应用到由相应数据隐藏模式选择的值 的校验函数提供正确的结果,用于隐藏要在不同层处隐藏的数据。因此,在考虑例如音频、 图片或视频编码等时,最低层数据的修改可能导致已解码信号的失真。由值的修改引起的 失真可W例如成本"来定义,用于决定需要修改哪个/哪些最低层值的算法可基于组成 数据隐藏操作的输入数据集的相应值(即,数据隐藏模式选择的值)的修改成本(即,估计的 质量下降)来做决定。由隐藏操作引起的失真还将依赖于相应数据隐藏模式选择的值的数 目(即,可用于修改的候选值的数目)W及那些值如何在编码单元的最低层值的整个值集合 上分布。通常,可W预期由数据隐藏操作引起的失真随着该数据隐藏模式的大小而减少,因 为可选择更多的值和/或所选的值在更大的值集合上分布。另一因素当然是针对编码单元 执行的数据隐藏操作的数目。
[0103] 然而,随着数据隐藏模式变得更大,数据隐藏模式的不同长度之间已解码信号的 失真的减少将变得更少。因此,定义数据隐藏模式的最大长度是有意义的,因为运可允许 (通常在较高层上)对与相应层的值关联的最低层值多次应用最大长度的数据隐藏模式,如 上文结合CU、PU和TU层说明的。运可减少由数据隐藏引起的失真,还可在定义数据隐藏模式 的解禪堆找时降低复杂度。
[0104] 然而,由于每层要隐藏的位的数目可W预先确定,且相应层的单元的大小及因 此与相应层的单元关联的最低层值的数目)可在编码过程中动态选择,所W编码装置W及 解码装置可动态决定要用于对相应编码单元进行编码和解码的数据隐藏模式的堆找(例 如,每层的数据隐藏模式的数目W及它们的大小)。然而,选择要用于对相应编码单元进行 编码和解码的数据隐藏模式的堆找可基于编码单元的结构(例如,相应层的单元的大小)来 决定,如将在下文更详细描述的,所W向解码装置发送编码中使用的数据隐藏模式的堆找 可能无需额外的信令开销,同时仍然能够动态使用数据隐藏模式的不同堆找,W减少由数 据隐藏引起的失真。
[0105] 现考虑隐藏数据的解码,即,从已编码的编码单元重构不同层处的隐藏值,在不同 层中使用的数据隐藏模式的解禪堆找可W不预先确定,但可从已编码的编码单元的结构中 推导出。例如,可基于编码单元的参数,例如CG、TU、PU和CU的大小,通过编码和解码装置自 适应地推导出数据隐藏模式的堆找,如将在下文概述的。
[0106] 为了说明运个概念,将在不失一般性的情况下考虑W下简化示例。假定数据隐藏 模式的最大大小为16位(即,从CG的16个系数的集合中选择值)。此外,假定CG的大小为4x4, 产生每CG 16个系数,或者大小为8x8,产生每CG 64个系数。并且,假定通过数据隐藏对CG中 前四个重要系数的符号进行编码(要隐藏四位)。此外,对于CG层,存在四个预先确定的数据 隐藏模式D册1、D册2、D册3和DHP4,它们被解禪且各自的大小为16位。数据隐藏模式D册1、 DHP2、DHP3和DHP4中的每一个均使用奇偶校验函数作为校验函数用于数据隐藏,因此每个 数据隐藏模式可W用于隐藏单一位。
[0107] 在编码过程中,如果编码单元具有产生4x4CG的结构,即,CG中有16个系数,那么编 码装置的处理单元将使用四个数据隐藏模式DHP1、DHP2、DHP3和DHP4对CG中的16个系数执 行四次数据隐藏操作来隐藏那四个符号位。类似地,在解码装置侧,在解码过程中,解码装 置的处理单元识别CG的大小为4x4,并基于四个数据隐藏模式DHP1、DHP2、DHP3和DHP4中的 每一个从CG的16个系数中选择出的系数,针对DHP1、DHP2、DHP3和DHP4中的每一个计算奇偶 校验函数的四个结果。
[0108] 如果编码单元具有产生8x8CG的结构,即,CG中有64个系数,那么编码装置的处理 单元将把运64个系数划分为不同的子集,每个子集16个系数,然后将对相应的16个系数的 子集执行四次数据隐藏操作来隐藏那四个符号位。在基于系数的四个不同子集的运四次数 据隐藏操作中,编码装置的处理单元可使用四个数据隐藏模式DHP1、D册2、DHP3和DHP4之 一,或者使用全部四个数据隐藏模式或使用四个数据隐藏模式DHP1、DHP2、DHP3和DHP4的一 个子集。可预先确定在编码装置中使用四个数据隐藏模式DHP1、DHP2、DHP3和DHP4中的哪个 或哪些,使得该信息无需发送给解码装置。
[0109] 类似地,在解码装置侧,在解码过程中,解码装置的处理单元识别CG的大小为8x8。 解码装置从CG中的64个系数形成四个子集,每个子集16个系数(注意的是,划分显然与编码 装置中相同,并且可预先确定)。然后,解码装置使用与编码装置使用的四个数据隐藏模式 DHP1、DHP2、DHP3和DHP4相同的一个或多个数据隐藏模式,基于相应的16个系数的子集计算 奇偶校验函数的四个结果。
[0110] 比较如下两种情况:通过使用对相同系数集合执行的四次数据隐藏操作来隐藏 4x4CG中的四位,与通过使用对不同系数子集执行的四次数据隐藏操作来隐藏8x8CG中的四 位,W下情况变得更加明显:与8x8CG相比,由系数修改引起W便确保奇偶校验函数为四个 符号中的每一个提供正确符号标记(位值)的失真可能引起4x4CG的已解码信号中的更多失 真。
[0111] 因此,可W考虑预见4x4CG的侧信息中的标记,其可W标志是否已在CG编码期间使 用数据隐藏。或者,运个标记可在TU侧信息中预见W标志在对TU的4x4CG进行编码时是否使 用数据隐藏。编码装置可W基于预先确定的或可配置的失真阔值决定4x4CG的数据隐藏的 使用。
[0112] 注意的是,对于隐藏数据的重构,解码装置可仅从已编码CG确定CG的16个系数 (即,重要和不重要系数),但是无需执行从频谱到时域的系数逆变换。
[0113] 当在水印应用中(例如,在比CG层高的层上,比如在CU层上)使用数据隐藏时,运后 一点尤为有利,因为水印可在无需执行从频谱到时域的系数逆变换的情况下校验。因此,如 果水印可W确认已编码数据的真实性,那么最低层数据的解码(例如,逆变换)可仅由解码 装置执行,使得在水印未确认时可W节省重要的处理资源。
[0114] 尽管W上示例设及在CG层中自适应地隐藏数据,但是类似的机制可用于TU层、PU 层和CU层中的一个或多个等。例如,在图2中,一些TU具有与其关联的4x4= 16个CG,而其它 τυ具有与其关联的8x8 = 64个CG。考虑每CG有4x4 = 16或8x8 = 64个系数,显然,用于数据隐 藏操作的可能输入数据集可基于属于TU的全部数目的系数的子集,而非它们所有。
[0115] 在一示例性实施方式中,出于示例性目的,假定每TU有8位要隐藏。对于具有大小 为4x4的16个CG的TU,运产生了总共256个系数值,可W对运些系数值执行数据隐藏操作。出 于示例性目的,考虑仅32位的一个数据隐藏模式,运一数据隐藏模式足W在256个系数中隐 藏8位。数据隐藏模式会在对256个系数中的32个系数的不同子集进行的8次数据隐藏操作 中应用.显然还可考虑定义不止一个长度为32位的数据隐藏模式,例如,W便确保跨所有层 的数据隐藏模式的堆找被解禪。因此,在解码装置侧,4x4的TU大小和4x4的CG大小会使得解 码装置选择预先确定的数据隐藏模式,每个数据隐藏模式为32位(如编码装置使用的),W 及从属于TU的256个系数中的32个系数的相应预先确定的子集重构8个隐藏位。
[0116] 对于具有大小为8x8的16个CG的TU或具有大小为4x4的64个CG的TU,运产生了总共 1024个系数值,可W对运些系数值执行数据隐藏操作。一个可能性可为根据增加的CG大小 来增加数据隐藏模式及它们相应地应用于的系数子集)的大小,即,定义一个或多个数 据隐藏模式,每个数据隐藏模式128位,用于使用属于TU的1024个系数中的128个系数的相 应预先确定的子集来隐藏和重构8个隐藏位。
[0117] 或者,可W使用与在具有4x4CG的4x4TU的情况下使用的相同的数据隐藏模式,运 些数据隐藏模式然后用于属于TU的1024个系数中的预先确定的256个。TU的剩余768个系数 可不使用。
[0118] 在另一选择中,可W使用与在具有4x4CG的4x4TU的情况下使用的相同的数据隐藏 模式,但TU的剩余768个系数可用于隐藏额外的位(即,总共可W隐藏32位)。
[0119] 对于具有大小为8x8的64个CG的TU,用于数据隐藏的可用系数的数目增加到4096 个系数。类似于W上情况,运可用于相应地增加数据隐藏模式的大小,W仅使用系数的一个 子集进行数据隐藏(同时保持数据隐藏模式的大小)或W隐藏TU中的更多数据。
[0120] 关于在每层中隐藏多少位的决定还应考虑由已解码信号中的数据隐藏操作引起 的整体失真。然而,如果预先确定了每层隐藏的数据,那么,在对已编码的编码单元进行解 码时,如相应层的数据单元(〇]、?1]、1'1]八6)的大小和/或一个或多个相应低层的数据单元 (PU、TU、CG)的大小等参数可W向解码装置表明编码装置使用的数据隐藏模式的堆找。
[0121] 转向数据隐藏操作,可如下同样实施。假设与数据隐藏模式关联的校验函数具有 二进制结果,使得它们可W在输入数据集(例如,CG的系数)中隐藏信息的一位。对于每层的 每个数据隐藏模式,相应数据隐藏模式选择输入数据集的值的子集(或其所有值)并根据所 选的值的集合计算校验函数。将该计算的二进制结果与要隐藏的二进制信息进行比较。如 果结果与要隐藏的二进制信息匹配,则无需对任何所选值进行修改。如果结果与要隐藏的 二进制信息不匹配,则需要修改数据隐藏模式从输入数据集中选择的值中的一个或多个, 使得校验函数的结果与要隐藏的二进制信息匹配。
[0122] 在一示例性实施方式中,通过使用一种算法执行对数据隐藏模式从输入数据集中 选择的值的修改,该算法能够确定要修改的值,同时最小化由所选值的修改引起的失真。
[0123] 如果在不同分层使用所选值有部分重叠的若干个数据隐藏模式(参见图4和图5), 则编码装置确保在第一数据隐藏操作中选择并修改的值在也选择了该值的另一第二数据 隐藏操作中不被再次修改。此外,在计算校验函数时,第二数据隐藏操作需要考虑所选和所 修改的值。运对于为各数据隐藏模式(和层)相继执行数据隐藏的实施方式很重要。
[0124] 或者,W下实施方式是可能的:首先为所有数据隐藏模式计算所有校验函数,然后 使用一种算法为所有数据隐藏模式修改编码单元的最低层的值,使得每个校验函数均提供 正确的结果。
[0125] 运两种选择的混合实施方式也是可能的,其中例如各层相继处理,但是对于单个 层,为该单个层的所有数据隐藏模式计算所有校验函数,并且修改算法为该单个层的所有 数据隐藏模式修改编码单元的最低层的值,使得每个校验函数均提供正确的结果。
[0126] 对于如图1所示的分层结构,可将一种专用系数调整规则应用于DHP,该系数调整 规则保证正确的系数调整(图6)。对于一层的给定DHP 601,可W发现一组子DHP 602、603。 在该组DHP内,可W选择一个专用DHP 603。当其它子DHP 602控制它们自己的校验函数值和 它们的相应子DHP时,所选的DHP 603还应控制给定的父DHP 601的值。递归地应用到每个子 DHP的同一规则为所有DHP 601至605提供目标校验函数值。
[0127] 图7和图8示出了用于多层分层结构化DHP的包括编码器侧系数调整的数据隐藏的 流程的示例性流程图。编码过程可例如基于如图6所示结构化的DHP的堆找,然而本发明不 限于此。通过为最高层的每个D册执行匹配的隐藏捜索701来获取已调整系数的结果集合。 该流程是递归的,除了具有W下输入的最低层:
[012引-层i的指数i
[0129] -层i的当前DHP
[0130] -为较高层重构的DHP的堆找,较高层表示相对于当前DHP的原始DHP的链(参见图 6)。当为最高层的DHP执行匹配的隐藏捜索时,DHP的堆找为空。
[0131] -与每个D册关联的目标值。运些目标值实际上是要隐藏的值,并定义了将由应用 到值的校验函数提供的结果,其中运些值由相应DHP选择。
[0132] 步骤702校验最低层是否被处理。假定将所有层从最低层开始编码,编码从零开 始,且输入层具有指数i,块702将i与零比较。
[0133] 如果处理的不是最底层α不等于零),则继续(或在i等最高层的指数的情况下开 始)捜索最佳DHP链。对于开始和继续捜索两种情况,均执行W下步骤:最佳成本初始化703、 捜索状态保存704、DHP扫描705和系数更新718。
[0134] 最佳成本初始化703应保证最佳成本校验715返回值true,除非没有重定义最佳隐 藏成本。例如,如果最佳隐藏成本可W存储在变量中,那么初始化703可W指派运个变量的 最高可能值,该值应大于在步骤714中计算的任何隐藏成本。
[0135] 初始化703的另一可能方式是在第一次校验715之前引入等于false的专用初始化 标记,并在执行校验715之后将其转换为true。在运种情况下,如果初始化标记为false,那 么校验715应始终为true。
[0136] 捜索状态保存704对于维持DHP扫描705-致性来说是必需的,即,扫描705的每个 独立迭代应WDHP堆找和系数的同一状态开始。对应于当前D册的子集的系数W及DHP的堆 找两者均可W在步骤704中存储到临时数组中,并且可W在恢复步骤706期间从运些临时数 组中恢复。或者,可W在开始705的下一迭代之前,即在717完成后或当715的值为false时, 执行恢复步骤706。然而,706的布置应不影响获得的结果,因为其为705的所有迭代提供了 相同的系数初始状态和相同的DHP堆找初始状态。
[0137] 如果对应于当前DHP的系数子集包括一个DHP的系数子集,那么运个DHP是当前DHP 的子DHP。步骤705扫描层i-1的所有DHP,其中运些DHP是当前畑P的子DHP,W便选择运样一 个子DHP,该子DHP不仅会为其自己提供目标校验函数的值,还会为原始DHP的链提供。
[0138] 选择候选子畑P后,应首先调整其它子畑P,因为任何子DHP的系数调整都会影响应 对所选DHP执行的调整。步骤707对除了所选DHP之外的所有子DHP进行迭代,并对它们中的 每一种执行匹配的隐藏捜索。然而,在迭代707期间不是当前DHP堆找传递给匹配的隐藏捜 索709,而是在步骤708中新构造的那一个。运个新构造的集合包括当前在步骤707中迭代的 子DHP,因此通过707迭代的所有DHP为它们自己W及它们的后续DHP提供正确的校验函数 值,而不为原始DHP提供。
[0139] 原始畑P的目标校验函数值应仅由在迭代步骤705中选择的子畑P提供。因此,当步 骤707完成时,DHP的输入堆找使用所选子DHP 711和当前输入DHP 712更新,当前输入DHP 712是所选子DHP的父DHP。
[0140] 当所有系数调整都完成时,可能计算DHP给定堆找的隐藏成本714。通过将该成本 与最佳成本715进行比较,可选择最佳系数调整变体。该选择可包括将系数调整716保存在 临时数组W及使用在步骤714中计算的当前成本来重定义最佳成本717。当前DHP的所有变 体在步骤705中通过迭代处理时,最佳系数调整在步骤718中从该临时数组恢复。其它操作 721取决于当前层i。如果i等于最高层指数,那么匹配的隐藏捜索完成且DHP的系数进行了 调整。否则,递归调用完成,709后的其它步骤应相应地执行。
[0141] 对于最低层的情况α为零),匹配的隐藏捜索701应根据DHP输入堆找执行子集调 整720。在步骤719中,针对子集调整选择的系数应属于与DHP输入堆找的最高层的DHP对应 的子集。
[0142] 图8所示为针对系数给定子集、包括Μ个DHP的DHP给定堆找、目标值给定堆找的系 数调整801的过程,其中,如果DHP属于DHP堆找的话,运些目标值应由每个DHP提供。在步骤 802中,将递归调用的计数器初始化为零。然而,如果子集调整801被递归调用,则应跳过该 步骤802。然后,执行子集校验803,验证校验函数的结果是否相应地等于目标值的堆找中的 值。该校验803包括计算DHP 804中的每一个的校验函数值,并且将运些值与目标值805进行 比较。
[0143] 如果运个等式对于DHP输入堆找的所有DHP成立,则子集调整完成。应执行立即退 出813,即使子集调整801从步骤815递归调用。
[0144] 否则,继续系数调整的捜索。可W注意到,因为堆找中的DHP被解禪,所W可W通过 调整Μ个系数的最大量来实现校验函数的目标值。然而,根据情况,所需调整的数目可W小 于Μ。
[0145] 系数调整开始于将系数的值存储在临时数组806中,所W迭代捜索807期间的任何 调整都可W恢复为初始状态。为输入子集的所有系数执行该迭代捜索807,除了已在先前递 归调用中修改的那些。为所选系数执行调整808。具体而言,该调整可在与增加一些常数值 (正数或负数)或改变系数的位的值。并且,在步骤808中,计算调整成本。然后,将系数集合 回退到初始状态809并选择下一系数。
[0146] 当所有系数都迭代时,在步骤811中,增加递归循环的计数器。对该计数器执行专 用校验810W便检测可能的错误。也可省略步骤810,因为其只是可选的。具体而言,如果递 归计数器超过堆找中DHP的数目M,那么运意味着Μ个已调整系数的子集校验803未成功。运 个情形仅在当堆找的DHP未解禪的情况下是可能的。当发生运种情形时,校验810未成功且 应处理错误812。通常,校验810的值在所有情况下都应求值为true。除了增加递归计数器 811,还根据从在步骤808中计算的成本中选择的最佳成本来调整输入系数。在步骤814中, 执行提供最佳成本值的系数调整,其中调整的系数排除在在下一迭代中执行的校验807之 夕h最后递归调用子集调整(步骤815)。
[0147] 显然,上述子集调整801W最低的调整成本修改Μ个或更少数目的系数。调整流程 801可W是次优的,但是应始终提供有效输入参数的有效结果。可W注意到,该流程还可W W循环的形式实施,因为递归调用815是该流程的最后一个步骤。
[0148] 对于两个层内的数据隐藏的特殊情况,可W考虑更简单的方案901,如图9所示。在 本示例中,仅出于示例性目的,假设父DHP对应TU且子DHP对应CG。流程的第一个步骤是执行 最佳成本和隐藏标记902的初始化。初始化最佳成本的方式与一般方案的步骤703的方式一 样。匹配的隐藏标记的初始值为零。当遍历步骤904至908的迭代903完成时,确定了具有最 低调整成本的CG。校验步骤906根据层0是否需要系数调整来控制方案的其它步骤。如果针 对至少一个CG检测出运个需要,那么在步骤908中将匹配的隐藏标记转向该CG。
[0149] 步骤903之后的操作取决于层0是否需要调整。如果是,则步骤909和910调整所有 需要的CG,除了具有最低成本的CG。否则,在所有CG内捜索具有最低调整成本的系数(步骤 911)。
[0150] 下一步骤912是(为TU)计算层1处的校验函数值。该值通过与目标值进行比较来校 验913。如果应为TU执行调整,则步骤914和916调整由TU的DHP选择的具有最低成本的系数。 根据匹配的隐藏标记值,应在步骤915和917中调整第二系数。该调整对于将层1的调整与层 0的调整进行匹配是必需的。
[0151] 如果TU校验函数求值913成功且匹配的隐藏标记不为零,则可能调整不属于TU的 DHP的单个系数。因此,针对运种情况执行阶段915、917。
[0152] 如果TU校验函数求值913成功且匹配的隐藏标记为0,则无需调整且流程901终止 (918)。
[0153] 在W上描述中,参考输入数据集的修改引起的隐藏成本。在视频或图像编码环境 中,可例如通过某一成本函数确定隐藏成本,该成本函数估计或确定由输入数据集的给定 修改引起的图像质量的下降。可例如使用成本函数估计图像质量的运种下降,运些成本函 数确定或近似由输入数据集的修改引起的速率失真。应注意,由于计算速率失真可能耗用 很多资源,所W最好选择支持成本的低计算密集型估计且可仅提供对质量下降的估计的成 本函数。
[0154] 隐藏数据的解码过程可如下实施。解码装置从已编码数据流获取相应已编码的编 码单元。由于编码装置使用的解禪数据隐藏模式的堆找可为静态的、可配置的或可从已编 码的编码单元的结构中推导出(如上所述),所W解码装置知道数据隐藏模式和形成编码装 置处的数据隐藏操作基础的输入数据集。因此,解码装置可W使用合适的输入数据集简单 地计算相应数据隐藏模式的校验函数。校验函数的运些输出值表示恢复的隐藏数据。
[0155] 对于针对数据隐藏操作选择校验函数,对校验函数的唯一要求是其应具有针对输 入目标值集合的单个输出值(二进制的或非二进制的)。最普通类型的校验函数是奇偶校验 函数,其通过检查输入目标值之和是偶数还是奇数来推导二进制输出值。在w下清单中给 出了校验函数的一些其它有效示例:
[0156] -用》' € M除W某一距离函数(例如,和函数)结果的余数等于零,
[0157] -零(或非零)值的数目的奇偶性
[0158] -某一统计特性(平均值、偏差等等)的值与阔值的比较
[0159] 校验函数的输出值还可W定义为非二进制值。例如,
[0160] -用3:'资.Μ除W某一距离函数(例如,和函数)结果的余数,其中X> 1。在运种情况 下,校验函数输出值限制在范围[0,···,X-1]内
[0161] -某一统计特性(平均值、偏差等等)的量化值
[0162] -满足某一标准的值的给定集合内的元素数目的函数
[0163] 图10示出了根据本发明一示例性实施例的解码视频流的更详细过程。该解码过程 适用于对已编码的视频流进行解码,该视频流已使用上文结合图7和图8描述的方法进行了 编码。赌解码器1002处理已编码的输入比特流1001。一些已解码值对应量化变换系数1005 的绝对值。运些值由解量化器进一步处理。该过程的结果是系数的绝对值,运些系数适用于 将正确符号分配给它们之后的逆变换过程1004。
[0164] 值的符号可例如在已编码输入比特流1001中显式地发送或可作为隐藏数据包含 在其中。在第一种情况下,赌解码器1002可W显式地执行符号的推导,在第二种情况下,隐 式地将合适的DHP应用到量化变换系数的对应集合。DHP选择器1006根据赌解码器1002提供 的可用量化变换系数1005来执行DHP选择。当系数仅对一个系数组(coefficient group, CG)可用时,DHP选择器1006为该CG提取符号值并提供运些符号1008 W获得用于逆变换1004 的系数的正确值。
[0165] 当量化变换系数对可包括不止一个CG的大型结构元件可用时,D册选择器1006应 用可W用于系数的给定(子)集合的所有DHP。根据选择的那个DHP,物位开关1007分派输出 值。如针对系数符号1008描述的,1007的输出可提供一部分已解码数据。在那种情况下,剩 余数据应另外解码。最明显的方式之一是显式地对该部分进行解码并使用赌解码器1002将 其恢复。
[0166] 如图10所示,DHP选择器1007的可能输出数据可W是W下一种或多种:
[0167] -系数符号1008,
[0168] -用于滤波参考样本1009的标记(其用途在图12中进一步说明),
[0169] -帖内预测1010的模式,
[0170] -环路滤波器参数1011,
[0171] -水印位 1012。
[0172] 然而,图10仅给出了量化变换系数内可能隐藏的数据的几个示例。隐藏数据的可 能类型不限于W上给定的清单。
[0173] 在变换系数逆变换之后,恢复了残差信号,其进一步增加预测信号1019。预测信号 是根据所选的预测模式使用帖内预测1013或帖间预测1014机制生成的。可W通过开关1018 的形式实现该选择。帖间和帖内预测两者均使用先前解码的像素,运些像素存储在帖缓冲 区1017中。然而,帖内预测机制可W使用未被环路滤波器1015修改的像素。
[0174] 除了视频编码应用,所提出的发明还可解决其它任务,例如水印。DHP选择器1006 可恢复隐藏的水印位1012,并且根据水印验证器1016针对运些位返回的结果,输出帖被阻 止输出,如开关1020所示范的。如果验证成功,则开关1020"关闭",输出图片1021由解码器 输出。否则,开关1〇20-打开",水印验证器1016可W示意水印失配。
[0175] 图11示出了根据本发明一实施例的视频解码装置的示例性结构。编码装置还包括 用于解码的方框(1112至1115),它们可在解码装置中单独提供,该解码装置还包括赌解码 器1002。图11的装置可W例如在专用或通用计算设备上实施(参见图14和图15)。编码装置 接收视频信号,包括要编码的各个帖/片1102,并产生已编码的比特流1110。如图15所示的 解码装置可W接收已编码的比特流1110并针对视频信号的每个帖/片输出已解码的视频 帖/片。
[0176] 编码装置包括运动估计/运动补偿块1101、模式决定块1105、变换块1106、量化器 1107和赌编码器(CABACH109。模式决定块1105可确定用于视频源的适当编码方式。模式决 定块1105可例如决定主体帖/片是I、Ρ还是Β帖/片,和/或帖/片内的特定编码单兀是帖间编 码还是帖内编码。
[0177] 变换块1106对空间域数据执行变换。变换块1106的运种变换可为基于块的变换W 将空间域数据转变为频谱分量。例如,离散余弦变换(discrete cosine transform,DCT)可 用于变换。还可使用其它变换,例如,离散正弦变换或其它。基于块的变换根据编码单元的 大小对编码单元执行。像素数据的块的基于块的变换得到如上所述的变换系数集合。量化 器1107对变换系数进行量化。然后,赌编码器(CABAC)1109对量化的系数和关联的侧信息进 行编码。量化的变换系数的块或矩阵可称为变换单元(transform unit,TU)。在某些情况 下,TU可为非正方形,例如,非正方形正交变换(non-square quadrature transform, NSQT)〇
[0178] 帖内编码的帖/片(即,类型I)在不设及其它帖/片1103的情况下进行编码,因而不 采用时间预测。帖内编码的帖(参见块1104)取决于帖/片内的空间预测。在编码时,可将块 中像素的特定块与已针对那个帖/片进行编码的块内的邻近像素的数据进行比较。通过使 用预测算法,可将块的源数据转变为残差数据。然后,变换块1106对残差数据进行编码。
[0179] 对由参考样本生成块1111产生的参考样本执行帖内预测。块1111可输出滤波的或 未滤波的参考样本用于帖内预测,通过滤波标记来选择使用它们中的哪一个。在图11的示 例中,示例性地假定将参考样本滤波标记作为隐藏数据添加到输出数据流1110中。RSAF标 记隐藏块1108执行隐藏操作,如上文结合图7和图8描述的,并且还可选择性地隐藏其它侧 信息,例如,从变换块1106获取的变换系数的一些或所有符号(未在图11中示出)。
[0180] 为了支持运动预测/补偿W利用时间预测,编码装置具有反馈回路,包括逆量化器 1112、逆变换块1113、去块效应滤波器1114 W及可选地样本自适应偏移块1114。去块效应滤 波器1114可包括去块效应处理器和滤波处理器。元件1112至1115镜像解码装置实施的解码 过程W再生原始帖/片,如上文概述的。帖存储(参考帖1103)用于存储再生的帖。通过运种 方式,运动预测基于将为重构帖1116的那些而不是基于原始帖,由于编码/解码中设及的有 损压缩,原始帖可不同于重构帖1116。运动估计/运动补偿1101使用存储在帖存储中的帖/ 片作为源帖/片,用于出于确定类似块的目的与当前帖进行比较。运动估计/运动补偿1101 提供的数据可包括侧信息、关于参考帖的信息、运动向量和表示参考块与当前块之间的差 异(若有的话)的残差像素数据。残差信号被提供给运动估计/运动补偿1101用于进一步编 码。关于参考帖的信息和/或运动向量可不由变换块1106和/或量化器1107处理,而是可提 供给赌编码器(CABAC)1109W作为比特流的一部分与量化的系数一起进行编码。
[0181] 解码装置可包括赌解码器,其倒转编码器侧的赌编码W及图11所示的方框1112至 1115。
[0182] 本发明具有广泛的用途。如上所述,可W如上文所论述的设想用于ITU T H. 265/ 肥VC帖内预测的参考样本滤波的运一应用隐式标记信令的一个示例。然而,如上所述,通过 本发明还可隐藏形成数据结构的一部分的其它侧信息,其中数据结构在编码期间生成。根 据口U T H.265/肥VC,根据所选的预测方式和被预测的块的大小来决定是否将低通滤波器 应用于参考样本。该决定可由一个标记推翻,该标记可通过使用所提出的发明在量化的变 换系数内隐式地示意。该修改在图12中示出。
[0183] 除了媒体压缩,可在水印应用中发现本发明的大量用例。图13表示了运些实施例 中的一些。图13a所示的用例表示认证流程,包括使用可提取的隐藏数据,通过将DHP应用到 像素或应用到存储在ID卡上的数码相片的量化的变换系数,来验证该ID卡的标识符。可通 过不同的方式执行验证,例如,通过计算校验和值并将其与提取的数据进行对比。如果发生 对比失配,则认证失败。该视频表示数码照片或标识符已在未经许可的情况下被修改。如果 对比成功,则验证应得到肯定的认证。
[0184] 图13b给出了篡改检测应用的一个示例。针对那种情况,假定已使数字图片准备好 在其块中,即,在像素值或变换系数中,隐藏关键数据。水印读取操作使用DHP从图片的块中 提取该隐藏的关键数据,该数据将使用安全密钥进一步验证。验证流程与图8a所呈现情况 的验证流程一样,所W失配导致检测已被篡改的特定图像块。
[0185] 另一用例(图13c)假定要求W很难检测该隐式消息的存在的方式在显式消息内传 输隐式消息。在图8c所示的该用例的示例中,通过在解码显式消息时将畑P应用到量化的值 来恢复隐式消息。
[0186] 图14示出了编码器1400的一示例性实施例的简化方框图。编码器1400包括处理器 1401、存储器1402和编码应用1403。编码应用1403可包括存储在存储器1402中的计算机程 序或应用,并可包括用于使处理器1401执行如本文所描述的那些操作的指令。例如,编码应 用1403可对根据本文描述的各种实施例,例如上文结合图7和图8描述的,依据编码过程编 码的比特率进行编码和输出。将理解,编码应用1403可存储在计算机可读介质上。输出比特 流可例如通过通信系统1404传输或存储于计算机可读介质上。
[0187] 现还参考图15,图15示出了解码器1500的一示例性实施例的简化方框图。解码器 1500包括处理器1501、存储器1502和解码应用1503。解码应用1503可包括存储在存储器 1501中的计算机程序或应用,并可包括指令,用于使处理器1501根据本文的各种实施例之 一,例如如上文结合图10概述的,来执行输入比特流的解码。将理解,解码应用1503可存储 在计算机可读介质上。输入比特率可例如通过通信系统1404接收或可从计算机可读介质中 读取。
[0188] 尽管一些方面已经在方法的上下文中描述,但是很明显运些方面还表示适合于执 行运种方法的对应装置的描述。在运类装置中,(功能的或有形的)块可对应一个或多个方 法步骤或方法步骤的特征。类似地,在对应块的上下文中描述的各方面或对应装置的条目 或特征也可与对应方法的各个方法步骤相对应。
[0189] 此外,本文所述的方法还可由(或使用)硬件装置,例如处理器、微处理器、可编程 计算机或电子电路执行。运一装置可执行最重要的方法步骤中的一个或多个。装置已在本 文中W功能块来描述,应进一步理解,装置的那些元件可完全或部分在应用元件/电路中实 施。各个硬件,例如处理器、微处理器等可用于实施装置的一个或多个元件的功能。
[0190] 此外,在实施硬件中装置的功能元件的方法步骤的过程中要存储信息或数据,该 装置可包括存储器或存储介质,其可通信式地禪合至装置的一个或多个硬件元件/电路。
[0191] 还预期在硬件或软件或它们的组合中实施本发明的各方面。运可使用数字存储介 质,例如,软盘、DVD、蓝光光盘、CD、ROM、PROM、EPROM、EEPR0M或闪存,其上存储有电子可读控 制信号或指令,运些控制信号或指令与(或能够与)可编程计算机系统合作,从而执行相应 方法。可提供数据载体,其具有电子方式可读的控制信号或指令,运些信号或指令能够与可 编程计算机系统合作W执行本文所述的方法。
[0192] 还考虑采用一种具有程序代码的计算机程序产品的形式实施本发明的各个方面, 当在计算机上运行计算机程序产品时,该程序代码操作地执行该方法。所述程序代码可存 储在计算机可读介质中。
[0193] W上所述仅仅是说明性的,应理解对装置的修改或变体W及本文所述的细节对于 所述领域的其他技术人员而言是显而易见的。因此,有意仅通过所附权利要求书的范围而 不是通过上述描述和解释所展示的特定细节来限制。
【主权项】
1. 一种用于将分层编码单元的值隐藏在所述编码单元包括的其它值中的方法,其特征 在于,所述方法包括: 提供数据隐藏模式的分层堆栈用于在所述编码单元的不同层处隐藏所述编码单元的 所述值,其中所述数据隐藏模式中的每一个均具有与其关联的校验函数,用于在所述编码 单元的所述层之一处隐藏所述编码单元的所述值中的一个或多个; 针对所述数据隐藏模式中的每一个,执行以下操作: (i) 基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其它值 中选择的值计算所述相应数据隐藏模式的所述校验函数; (ii) 确定所述校验函数的结果是否对应将由所述相应数据隐藏模式隐藏的所述编码 单元的值; (iii) 若否,则修改所述相应数据隐藏模式从所述编码单元的所述其它值中选择的所 述值中的至少一个,使得步骤(ii)中的所述校验函数的所述结果对应将由所述相应数据隐 藏模式隐藏的所述编码单元的所述值; 其中所述已编码的编码单元包括如在步骤(iii)中针对所有数据隐藏模式修改的所述 编码单元的所述其它值。2. 根据权利要求1所述的方法,其特征在于,所述数据隐藏模式的所述分层堆栈定义了 解耦的数据隐藏模式。3. 根据权利要求1或2所述的方法,其特征在于,每个层与所述数据隐藏模式中的一个 或多个关联。4. 根据权利要求1至3之一所述的方法,其特征在于,所述数据隐藏模式包括以下项中 的至少一项:基于抽取的数据隐藏模式、一个或多个规律性数据隐藏模式,以及一个或多个 伪随机数据隐藏模式。5. 根据权利要求1至4之一所述的方法,其特征在于,针对所述数据隐藏模式中的每一 个,所述方法还包括: 如果在步骤(iii)中用于修改所述相应数据隐藏模式从所述编码单元的所述其它值中 选择的所述值中的至少一个的算法没有修改所述值使得步骤(ii)中的所述校验函数的所 述结果对应将由所述相应数据隐藏模式隐藏的所述编码单元的所述值,则重复步骤(i)至 (iii),直到步骤(ii)中的所述校验函数的所述结果对应将由所述相应数据隐藏模式隐藏 的所述编码单元的所述值。6. 根据权利要求1至5之一所述的方法,其特征在于,当使用所述数据隐藏模式的第一 数据隐藏模式和第二数据隐藏模式分别执行步骤(i)至(i i i)时,已被所述第一数据隐藏模 式选择出且已在步骤(iii)中修改的所述编码单元的那些一个或多个其它值,如果被所述 第二数据隐藏模式在第二迭代中选择,则在针对所述第二数据隐藏模式执行步骤(i)至 (i i i)时,在步骤(i i i)中不再次修改。7. 根据权利要求1至6之一所述的方法,其特征在于,针对所述数据隐藏模式之一在步 骤(iii)中修改的所述至少一个值,在为另一数据隐藏模式执行步骤(i)至(iii)时,被认为 是替代原始值。8. -种用于从已编码的编码单元重构隐藏值的方法,其特征在于,所述方法包括: 提供数据隐藏模式的分层堆栈,编码器已使用所述堆栈隐藏所述编码单元的所述值, 其中所述数据隐藏模式中的每一个均具有与其关联的校验函数; 针对所述数据隐藏模式中的每一个,基于所述数据隐藏模式中的相应一个数据隐藏模 式从所述编码单元的所述其它值中选择的值计算所述相应数据隐藏模式的所述校验函数, 其中所述校验函数的结果对应重构的隐藏值之一。9. 根据权利要求1至8之一所述的方法,其特征在于,所述编码单元包括的所述值是所 述编码单元的最低分层的值,其中所述数据隐藏模式的所述校验函数基于所述编码单元包 括的所述值计算。10. 根据权利要求9所述的方法,其特征在于,根据所述数据隐藏模式中的相应一个数 据隐藏模式从所述编码单元的所述最低分层的所述值的相应子集中选择的值计算所述数 据隐藏模式的所述校验函数,其中所述数据隐藏模式与除所述编码单元的所述最低分层之 外的一层关联。11. 根据权利要求10所述的方法,其特征在于,基于所述子集的大小确定所述数据隐藏 模式中的相应一个数据隐藏模式的大小,其中所述相应数据隐藏模式的所述校验函数根据 所述子集大小计算。12. 根据权利要求10或11所述的方法,其特征在于,除所述最低分层之外的一层中的相 应子集包括所述编码单元的所述最低分层的那些值,所述值分层地属于所述相应层的组织 数据单元。13. 根据权利要求12所述的方法,其特征在于,基于属于所述相应层的相应组织数据单 元的值的子集大小确定适用于所述相应层的所述相应组织数据单元的数据隐藏模式的数 目和/或大小,其中所述校验函数根据所述子集大小计算。14. 根据权利要求10至13之一所述的方法,其特征在于,所述数据隐藏模式中的相应一 个数据隐藏模式的大小等于所述子集大小或为所述子集大小的除数,其中所述相应数据隐 藏模式的所述校验函数根据所述子集大小计算。15. 根据权利要求1至14之一所述的方法,其特征在于,所述编码单元的所述值表示图 像的像素块,所述编码单元具有一个或多个预测单元、一个或多个变换单元以及一个或多 个系数组,其中所述数据隐藏模式与所述编码单元的层关联,所述编码单元的层分别对应 所述预测单元、所述变换单元和所述编码单元, 所述数据隐藏模式中的每一个隐藏所述编码单元的所述关联层的一个或多个值。16. 根据权利要求15所述的方法,其特征在于,所述数据隐藏模式与所述编码单元的层 关联,所述编码单元的层分别对应所述系数组、所述预测单元、所述变换单元和所述编码单 元,其中所述系数组是所述编码单元的所述最低层的一部分。17. 根据权利要求1至16之一所述的方法,其特征在于,基于所述系数组的值计算所述 数据隐藏模式的所述校验函数。18. 根据权利要求15至17之一所述的方法,其特征在于,所述数据隐藏模式包括用于针 对所述编码单元的所述变换单元的帧内预测隐藏参考样本滤波标记的一个或多个数据隐 藏模式。19. 根据权利要求15至18之一所述的方法,其特征在于,所述数据隐藏模式包括用于隐 藏以下项中的至少一项的一个或多个数据隐藏模式:预测模式指数,以及所述预测单元的 预测单元大小。20. 根据权利要求15至19之一所述的方法,其特征在于,所述数据隐藏模式包括用于将 水印嵌入所述编码单元的数据隐藏模式。21. 根据权利要求15至20之一所述的方法,其特征在于,所述数据隐藏模式包括用于隐 藏所述系数组的系数的符号位的数据隐藏模式。22. 根据权利要求1至14之一所述的方法,其特征在于,所述编码单元的所述值表示待 编码的图像数据的块、音频数据的块或文件的块。23. 根据权利要求1至22之一所述的方法,其特征在于,所述隐藏值之一允许确定所述 编码单元中包括的所述值的真实性。24. -种用于将分层编码单元的值隐藏在所述编码单元包括的其它值中的编码装置, 其特征在于,所述编码装置设有数据隐藏模式的分层堆栈,用于在所述编码单元的不同层 处隐藏所述编码单元的所述值,其中所述数据隐藏模式中的每一个均具有与其关联的校验 函数,用于在所述编码单元的所述层之一处隐藏所述编码单元的所述值中的一个或多个, 所述编码装置包括: 处理单元,用于针对所述数据隐藏模式中的每一个执行以下操作: (i) 基于所述数据隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述其它值 中选择的值计算所述相应数据隐藏模式的所述校验函数; (ii) 确定所述校验函数的结果是否对应将由所述相应数据隐藏模式隐藏的所述编码 单元的值; (iii) 若否,则修改所述相应数据隐藏模式从所述编码单元的所述其它值中选择的所 述值中的至少一个,使得步骤(ii)中的所述校验函数的所述结果对应将由所述相应数据隐 藏模式隐藏的所述编码单元的所述值; 输出单元,用于输出已编码的编码单元,所述已编码的编码单元包括如在步骤(iii)中 针对所有数据隐藏模式修改的所述编码单元的所述其它值。25. 根据权利要求24所述的编码装置,其特征在于,所述编码装置用于执行根据权利要 求1至7之一的方法。26. -种用于从已编码的编码单元重构隐藏值的解码装置,其特征在于,所述解码装置 设有数据隐藏模式的分层堆栈,编码器已使用所述分层堆栈隐藏所述编码单元的所述值, 所述数据隐藏模式中的每一个均具有与其关联的校验函数;所述解码装置包括: 处理单元,用于针对所述数据隐藏模式中的每一个,基于所述数据隐藏模式中的相应 一个数据隐藏模式从所述编码单元的所述其它值中选择的值计算所述相应数据隐藏模式 的所述校验函数,其中所述校验函数的结果对应重构的隐藏值之一; 输出单元,用于输出所述已解码的编码单元,所述已解码的编码单元包括所述重构的 隐藏值,作为已解码的数据的一部分。27. 根据权利要求26所述的解码装置,其特征在于,所述相应数据隐藏模式从所述已编 码的编码单元中选择的所述值是所述编码单元的最低分层的值。28. 根据权利要求27所述的解码装置,其特征在于,所述处理单元还用于根据所述数据 隐藏模式中的相应一个数据隐藏模式从所述编码单元的所述最低分层的所述值的相应子 集中选择的值计算所述数据隐藏模式的所述校验函数,其中所述数据隐藏模式与除所述已 编码的编码单元的所述最低分层之外的一层关联。29. 根据权利要求28所述的解码装置,其特征在于,所述处理单元还用于基于所述子集 的大小确定所述数据隐藏模式中的相应一个数据隐藏模式的大小,其中所述相应数据隐藏 模式的所述校验函数根据所述子集大小计算。30. 根据权利要求28或29所述的解码装置,其特征在于,除所述最低分层之外的一层中 的相应子集包括所述编码单元的所述最低分层的那些值,所述值分层地属于所述相应层的 组织数据单元。31. 根据权利要求30所述的解码装置,其特征在于,所述处理单元用于基于属于所述相 应层的相应组织数据单元的值的子集大小确定适用于所述相应层的所述相应组织数据单 元的数据隐藏模式的数目和/大小,其中所述校验函数根据所述子集大小计算。
【文档编号】H04N19/18GK106063274SQ201480076758
【公开日】2016年10月26日
【申请日】2014年4月1日
【发明人】阿列克谢·康斯坦丁诺维奇·菲利波夫, 瓦西里·亚历斯维奇·拉夫特斯基
【申请人】华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1