CN116567227A - 视频数据处理方法、装置、设备及存储介质 - Google Patents
视频数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116567227A CN116567227A CN202210103402.9A CN202210103402A CN116567227A CN 116567227 A CN116567227 A CN 116567227A CN 202210103402 A CN202210103402 A CN 202210103402A CN 116567227 A CN116567227 A CN 116567227A
- Authority
- CN
- China
- Prior art keywords
- data block
- original data
- cost
- encoded
- propagation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 28
- 238000003672 processing method Methods 0.000 title abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 69
- 238000012545 processing Methods 0.000 claims abstract description 46
- 239000013598 vector Substances 0.000 claims description 94
- 238000013139 quantization Methods 0.000 claims description 81
- 230000006870 function Effects 0.000 claims description 66
- 230000009466 transformation Effects 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 23
- 238000013507 mapping Methods 0.000 claims description 19
- 238000012216 screening Methods 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 9
- 238000013473 artificial intelligence Methods 0.000 abstract 1
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 17
- 230000005540 biological transmission Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 5
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000013075 data extraction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/467—Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例公开了一种视频数据处理方法、装置、设备及存储介质,可应用于云技术中的视频数据处理、人工智能、智慧交通、辅助驾驶等各种场景;其中,该方法包括:获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与第一编码数据块具有编码参考关系的第二原始数据块;根据第一原始数据块、第一编码数据块以及第二原始数据块,预测第一编码数据块的数据块传播代价;数据块传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度;根据该数据块传播代价选择用于隐藏该目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。通过本申请能够提高视频数据的质量。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种视频数据处理方法、装置、设备及存储介质。
背景技术
随着互联网技术和多媒体技术的飞速发展,视频数据呈爆炸式增长,海量的视频处理需要相应的存储和计算平台,而云计算与云存储技术为大数据处理及其相关应用提供了最有效的解决方案。为了满足云计算环境下的内容安全、隐私保护以及信息检索等需求,需要对视频数据进行数据隐藏处理,此处的数据隐藏处理是指在视频数据中嵌入附加信息,嵌入后的附加信息具有不可见性,需要通过一定信息检测才能得到附加信息,可实现对视频数据的有效管理。例如,该附加信息可以包括视频数据的拥有者信息,在该视频数据中嵌入拥有者信息进行版权保护,防止视频数据被恶意传播,提高视频数据的安全性。
实践中发现,目前的数据隐藏处理方案,容易导致视频数据出现帧间失真漂移现象,使视频数据的质量比较低;此处帧间失真漂移现象是指对视频数据中的某一视频帧进行数据隐藏处理,如果数据隐藏处理后的该视频帧出现失真,不但会影响当前视频帧的质量,还会影响其他视频帧的质量。
发明内容
本申请实施例提供一种视频数据处理方法、装置、设备及存储介质,能够提高视频数据的质量。
本申请实施例一方面提供一种视频数据处理方法,包括:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
本申请实施例一方面提供一种视频数据处理装置,包括:
获取模块,用于获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
预测模块,用于根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
选择模块,用于根据所述数据块传播代价,从所述第一编码数据块中,选择用于隐藏所述目标视频数据的视频属性信息的目标编码数据块。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,以执行如下步骤:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
本申请实施例一方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,以实现如下步骤:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
本申请实施例一方面提供了一种计算机程序产品,该计算机程序被处理器执行时实现如下步骤:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
本申请中,计算机设备可以获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与该第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一原始数据块、第二原始数据块以及第一编码数据块,预测第一编码数据块的数据块传播代价,该传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度。也就是说,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,进而,增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,计算机设备可以根据该数据块传播代价选择用于隐藏该目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块,这样能够有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请提供的一种视频帧与原始数据块之间的关系示意图;
图1b是本申请提供的一种视频帧与原始数据块之间的关系示意图;
图2是本申请提供的一种视频帧之间的编码参考关系的示意图;
图3是本申请提供的一种视频数据处理系统的架构示意图;
图4是本申请提供的第一种视频数据处理方法的流程示意图;
图5是本申请提供的第一编码数据块与子区域之间的关系的示意图;
图6是本申请提供的第一种视频数据处理方法的流程示意图;
图7a是本申请提供的一种数据块传播代价与量化参数偏移量之间的映射关系的场景示意图;
图7b是本申请提供的一种分别采用本申请的数据隐藏方法和现有数据隐藏方法后,目标视频数据的峰值信噪比曲线对比的示意图;
图8是本申请提供的第一种视频数据处理方法的流程示意图;
图9是本申请实施例提供的一种视频数据处理装置的结构示意图;
图10是本申请实施例提供的一种视频数据处理装置的结构示意图;
图11是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请主要涉及数据隐藏处理技术,所谓数据隐藏处理是指通过将附加信息嵌入到载体对象(如视频)中,使得嵌入的信息难以被他人发现或发现后难以被理解,以达到隐藏的效果,被广泛应用于视频数据的版权保护、视频数据的完整性验证、视频数据检索等场景。例如,在视频数据版权保护场景中,在视频数据中嵌入拥有者信息进行版权保护,防止视频数据被盗版传播。在视频数据的完整性验证场景中,视频数据的发送端在视频数据中嵌入水印,如果该视频数据被篡改,该视频数据中嵌入的水印会随之变化,因此,视频数据的接收端可以根据该水印是否发生变化,验证视频数据的完整性,以鉴别视频数据是否被非法篡改。在视频数据检索场景中,在视频数据中嵌入视频内容分类标签进行信息检索,方便云端存储管理等。
数据隐藏处理技术在不断高嵌入容量的同时,对载密(携带嵌入数据)的视频数据的画面质量出了越来比较高的要求,为了提高视频数据的画面质量,本申请提出一种视频数据处理方法,具体的,该方法包括:视频数据的编码端可以对目标视频数据中的第一原始数据块进行编码,得到第一编码数据块,第一原始数据块可以是指目标视频数据中任一视频帧中的原始数据块,进一步,获取与该第一编码数据块具有编码参考关系的第二原始数据块,第一原始数据块与第二原始数据块可以属于目标视频数据中的同一视频帧;或者,第一原始数据块与第二原始数据块可以属于目标视频数据中的不同视频帧,如第一原始数据块属于第一视频帧,第二原始数据块属于第二视频帧。
接着,可以根据该第一原始数据块、第一编码数据块以及第二原始数据块确定该第一编码数据块的数据块传播代价,该数据块传播代价用于反映在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度,即该数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会导致第一编码数据块出现失真,进而,会增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,可以根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块,如该目标编码数据块可以是指第一编码数据块中数据块传播代价小于传播代价阈值的编码数据块;将该视频属性信息隐藏至目标编码数据块中,这样可以有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
本申请中的目标视频数据可以是指赛事直播、游戏直播、会议直播等直播视频数据,或者,目标视频数据可以是指日常短视频、美食短视频、影视剪辑短视频等,或者,该目标视频数据可以是指影视视频数据等。目标视频数据的视频属性信息可以包括目标视频数据的类别、目标视频数据的拥有者信息、水印以及目标视频数据的主题信息等等。
本申请中的目标视频数据中包括多帧视频,视频帧可分为三种类型:I帧、P帧和B帧,I帧为帧内预测帧,内部只含有I宏块;P帧为前向预测帧,内部可由I宏块和P宏块组成;B帧为双向预测帧,内部可由I宏块和B宏块组成。I宏块、P宏块和B宏块分别可做帧内预测(即帧内编码)、前向帧间预测(即前向帧间编码)和双向帧间预测(即双向帧间编码)。其中,I宏块可以包括Intra_16×16、Intra_8×8、Intra_4×4和I_PCM等类型。如图1a中,16×16、8×8、4×4分别表示宏块的分割尺寸,I_PCM表示该宏块无须进行预测和变换操作,只携带像素值信息。对于P宏块,其宏块类型可以包括P_16×16、P_8×8、P_16×8、P_8×16和P_Skip等等,其中,P_Skip为跳跃类型,该类型的宏块不携带任何信息,由其相邻宏块的数据推导而来。16×16、8×8、16×8、8×16分别表示宏块的分割尺寸,样式如图1b所示。特别地,P_8×8类型宏块的各个子块可进一步独立分割为8×8、4×4、8×4和4×8四种大小。B宏块相对于P宏块多了一种直接类型(B_Direct),它表示该宏块不含有自身的预测信息,可由相邻宏块的预测数据推导而来。Direct类型与Skip类型的区别是:Direct类型宏块拥有除预测信息之外的所有数据,而Skip类型宏块不含有任何数据。本申请中将I宏块、B宏块以及P宏块均统称为原始数据块。
本申请中的原始数据块的编码模式是指对原始数据块的编码方式,编码模式包括帧内编码模式或帧间编码模式,帧内编码模式是指基于同一视频帧内相邻原始数据块的像素信息进行编码,旨在空间维度上减少像素间的冗余。帧间编码模式是指利用连续视频帧之间内容高度相似的特点,通过帧间参考进行编码,旨在时间维度上减少像素间的冗余。其中,帧间编码模式包括单向帧间编码模式(即前向帧间编码模式)和双向帧间编码模式,单向帧间编码模式是指以前向帧为参考的帧间编码模式,双向帧间编码模式是指以前向和后向为参考的帧间编码模式,例如,目标视频数据包括视频帧0、视频帧1、以及视频帧2,视频帧0、视频帧1以及视频帧2的播放时间由先到后的顺序为:视频帧0、视频帧1、以及视频帧2,当需要对视频帧1中的原始数据块进行编码时,视频帧0称为视频帧1的前向帧,视频帧2称为视频帧1的后向帧。如果视频帧1中的原始数据块以视频帧0为参考帧进行编码,则称视频帧1中的原始数据块的编码模式为单向帧间编码;如果视频帧1中的原始数据块以视频帧0和视频帧2为参考帧进行编码,则称视频帧1中的原始数据块的编码模式为双向帧间编码模式。
例如,目标视频数据中包括视频帧0、视频帧1、以及视频帧2、视频帧3,……视频帧N,如图2所示,视频帧0包括原始数据块A0、原始数据块A1、原始数据块A2、原始数据块A3,视频帧1包括原始数据块C0、原始数据块C1、原始数据块C2、原始数据块C3,视频帧3包括原始数据块B0、原始数据块B1、原始数据块B2、原始数据块B3。视频帧0可以是指目标视频数据中的第一帧视频数据,即播放时间最早的视频帧,视频帧0中的原始数据块的编码模式为帧内编码模式,视频帧0可以称为I帧。视频帧1中的原始数据块的编码参考块属于视频帧0和视频帧3,如图2中,视频帧1中的原始数据块C2的编码参考块为视频帧3中的原始数据块B3的编码数据块,以及视频帧0中的原始数据块A2的编码数据块,视频帧1可以称为B帧。视频帧3中的原始数据块的编码参考块属于视频帧0,如图2中,原始数据块B0的编码参考块为原始数据块A1的编码块,原始数据块B2、原始数据块B3的编码参考块均为原始数据块A2的编码块,视频帧3称为P帧。
为了便于更清楚理解本申请,首先介绍实现本申请的视频数据处理方法的视频数据处理系统,如图3所示,视频数据处理系统中包括如图3所示,该视频数据处理系统中包括服务器10和终端集群,终端集群可以包括一个或者多个终端,这里将不对终端的数量进行限制。如图3所示,终端集群具体可以包括终端1、终端2、…、终端n;可以理解的是,终端1、终端2、终端3、…、终端n均可以与服务器10进行网络连接,以便于每个终端均可以通过网络连接与服务器10之间进行数据交互。
其中,服务器10可以是指用于为视频数据提供后端服务的设备,如,该服务器可以是指对视频数据进行数据隐藏处理、编码处理、解码处理的后端设备。各个终端可以是指面向用户的设备,终端可以是指用于为视频数据提供前端服务的设备,如终端可以是指用于对视频数据进行渲染、播放的设备。
其中,服务器可以是独立的一个物理服务器,也可以是至少两个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、中容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端具体可以是指智能手机、电脑、智能音箱、智能语音交互设备、智能家电、车载终端、飞行器等,但并不局限于此。其中,终端上可以设有客户端,如音视频播放客户端、短视频客户端、直播客户端等可以用于播放视频数据的客户端。各个终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,同时,终端以及服务器的数量可以为一个或至少两个,本申请在此不做限制。
进一步地,请参见图4,是本申请实施例提供的一种视频数据处理方法的流程示意图。如图4所示,该方法可由图3中的终端来执行,也可以由图3中的服务器来执行,还可以由图3中的终端和服务器共同执行,本申请中用于执行该方法的设备可以统称为计算机设备。其中,该视频数据处理方法可以包括如下步骤S101~S103:
S101、获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及该目标视频数据中与该第一编码数据块具有编码参考关系的第二原始数据块。
本申请中,计算机设备可以获取目标视频数据,目标视频数据可以是指由计算机设备拍摄得到的,或者,目标视频数据可以是由计算机设备从其他设备中获取得到的。为了降低目标视频数据的传输开销,首先,计算机设备可以计算目标视频帧中的每个原始数据块的帧内编码代和帧间编码代价,根据帧内编码代价和帧间编码代价确定每个原始数据块的编码模式,编码模式包括帧间编码模式或帧间编码模式。例如,如果原始数据块的帧间编码代价小于或等于帧内编码代价,则将帧间编码模式确定为原始数据块的编码模式;如果原始数据块的帧间编码代价大于帧内编码代价,则将帧内编码模式确定为原始数据块的编码模式。进一步,采用原始数据块对应的编码模式对原始数据块进行编码,得到原始数据块的编码数据块。第一原始数据块为目标视频数据中的任一数据块,由第一原始数据块所编码得到的编码数据块称为第一编码数据块,第二原始数据块可以是指目标视频数据中与第一编码数据块之间具有编码参考关系的原始数据块,即第二原始数据块是指目标视频数据中以第一编码数据块为编码参考块进行编码的原始数据块。
S102、根据该第一原始数据块、该第一编码数据块以及该第二原始数据块,预测该第一编码数据块的数据块传播代价;该数据块传播代价用于反映该第一编码数据块出现失真时对该第二原始数据块所属的视频帧的失真影响程度。
本申请中,由于第一编码数据块为第二原始数据块的编码参考块,在编码端需要根据第一编码数据块对第二原始数据块进行编码,得到第二原始数据块的编码数据块,在解码端,需要根据第一编码数据块对第二原始数据块的编码数据块进行解码,得到第二原始数据块。由此可知,当第一编码数据块在传输或解码等流程中出现失真时,会影响解码端获取到的第二原始数据块的质量,也就是说,当第一编码数据块在传输或解码等流程中出现失真时,会影响解码端获取到的第二原始数据块所属的视频帧的质量。因此,计算机设备需要根据第一原始数据块、第一编码数据块以及该第二原始数据块,预测该第一编码数据块的数据块传播代价,该数据块传播代价用于反映该第一编码数据块在传输或编码等流程中出现失真时,对第二原始数据块所属的视频帧的失真影响程度。此处第一编码数据块出现失真是指对第一编码数据块在传输、或解码等流程中,导致第一编码数据块的质量出现失真的情况,此处失真影响程度可以是指质量失真影响程度。
可选的,上述第二原始数据块的数量为K个,上述根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价,包括:获取所述第一编码数据块的第一尺寸信息和K个所述第二原始数据块分别对应的子区域的第二尺寸信息,所述第二原始数据块对应的子区域是指所述第二原始数据块在所述第一编码数据块中的编码参考区域;根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价;所述传播矢量代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块的失真影响程度;根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价。
当目标视频数据中存在K个第二原始数据块以第一编码数据块为编码参考块时,K为大于或等于1的正整数,计算机设备可以获取K个第二原始数据块的编码参考块的区域信息,以及第一编码数据块的区域信息,获取第一编码数据块的区域信息分别与K个第二原始数据块的编码参考块的区域信息的交集,得到第一编码数据块分别与K个第二原始数据块的编码参考块的重叠区域,该重叠区域为第二原始数据块在第一编码数据块中的编码参考区域,因此,将该K个重叠区域确定为K个该第二原始数据块分别对应的子区域。进一步,计算机设备可以获取所述第一编码数据块的第一尺寸信息和K个所述第二原始数据块分别对应的子区域的第二尺寸信息,第二尺寸信息所指示的尺寸可以小于或等于第一编码数据块的尺寸,当第二尺寸信息所指示的尺寸小于第一编码数据块的尺寸时,表明第二原始数据块以第一编码数据块中的部分区域作为编码参考区域,即第二原始数据块对第一编码数据块的依赖性比较弱,这种情况下,如果第一编码数据块出现失真,对第二原始数据块的失真影响程度比较低。当第二尺寸信息所指示的尺寸等于第一编码数据块的尺寸时,表明第二原始数据块以第一编码数据块中的整体区域作为编码参考区域,即第二原始数据块对第一编码数据块的依赖性比较强,这种情况下,如果第一编码数据块出现失真,对第二原始数据块的失真影响程度比较高。因此,计算机设备可以根据该第一原始数据块、该第一编码数据块以及K个该第二原始数据块,确定该第一编码数据块分别针对K个该第二原始数据块的传播矢量代价,该传播矢量代价用于反映该第一编码数据块出现失真时对该第二原始数据块的失真影响程度,然后,根据该第一尺寸信息和K个该第二尺寸信息,对K个该传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价。也就是说,上述传播矢量代价用于反映第一编码数据块出现失真时对单个第二原始数据块的失真影响程度,根据第一编码数据块出现失真时分别对单个第二原始数据块的失真影响程度(即传播矢量代价),以及第一尺寸信息以及K个第二尺寸信息,预测得到第一编码数据块对第二原始数据块所属的视频帧的失真影响程度(即数据块传播代价),从更加细粒度的角度获取第一编码数据块的数据块传播代价,提高数据块传播代价的获取准确度。
例如,与第一编码数据块具有编码参考关系的第二原始数据块包括第二原始数据块S1和第二原始数据块S2,如图5所示,第二原始数据块S1、第二原始数据块S2的编码参考块分别为R1、R2,第一编码数据块为S。如图5中,第二原始数据块S1的编码参考块R1与第一编码数据块S具有重叠区域11,该重叠区域11为第二原始数据块S1在第一编码数据块中编码参考区域,即重叠区域11为第二原始数据块S1对应的子区域;第二原始数据块S2的编码参考块R2与第一编码数据块S具有重叠区域12,该重叠区域12为第二原始数据块S2在第一编码数据块中编码参考区域,即重叠区域12为第二原始数据块S2对应的子区域。进一步,计算机设备可以根据重叠区域11、重叠区域12对第二原始数据块S1对应的传播矢量代价和第二原始数据块S2对应的传播矢量代价进行运算,得到第一编码数据块的数据块传播代价。
计算机设备可以根据第一原始数据块的编码模式,确定第一编码数据块出现失真时对单个第二原始数据块的失真影响程度(即传播矢量代价);具体的,当第一编码数据块的是采用帧内编码模式对第一原始数据块进行编码得到的,计算机设备可以采用如下方式一,获取第一编码数据块针对单个第二原始数据块的传播代价矢量;当第一编码数据块的是采用帧间编码模式对第一原始数据块进行编码得到的,计算机设备可以采用如下方式二,获取第一编码数据块针对单个第二原始数据块的传播代价矢量。
方式一:当第一编码数据块的是采用帧内编码模式对第一原始数据块进行编码得到的时,K个该第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数。计算机设备可以根据第一原始数据块与第一编码数据块之间的差异信息,确定第一编码数据块中的信息量与由帧内编码模式所传递的信息量之间的比值。进一步,根据第二原始数据块的编码参数信息获取该第二原始数据块Si对应的传播矢量函数,此处编码参数信息包括第二原始数据块Si的编码参考块的数量以及第二原始数据块的编码模式等中的至少一种。然后,可以根据比值和传播矢量函数,确定该第一编码数据块针对该第二原始数据块Si的传播矢量代价;也就是说,当第一编码块是由帧内编码模式对第一原始数据块进行编码得到的时,通过根据第一编码数据块中的信息量与由帧内编码模式所传递的信息量之间的比值,以及第二原始数据块Si对应的传播矢量函数,确定该第一编码数据块针对该第二原始数据块Si的传播矢量代价,能够提高该第二原始数据块Si的传播矢量代价的获取准确度。
方式二:当第一编码数据块是采用帧间编码模式对该第一原始数据块进行编码得到的,K个所述第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数;根据该第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率;所述传播率用于反映所述第一编码数据块的信息量与由所述帧间编码模式所传递的信息量之间的比值,获取所述第二原始数据块Si对应的传播矢量函数,根据该第二原始数据块Si对应的传播矢量函数以及所述传播率,确定该第一编码数据块针对该第二原始数据块Si的传播矢量代价。
在方式二中,计算机设备可以获取该第一原始数块与该第一编码数据块之间的差异信息,根据该差异信息确定所述第一编码数据块的传播率;该传播率用于反映所述第一编码数据块的信息量与由所述帧间编码模式所传递的信息量之间的比值;帧间编码模式所传递的信息量是指第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量。也就是说,传播率越大,表明第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量的比重越大,即第一编码数据块对第一原始数据块的参考编码块所属的视频帧的依赖性比较强,如果第一原始数据块的参考编码块所属的视频帧出现失真,对第一编码数据块的失真影响比较大。相反,传播率越小,表明第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量的比重越小,即第一编码数据块对第一原始数据块的参考编码块所属的视频帧的依赖性比较弱,如果第一原始数据块的参考编码块所属的视频帧出现失真,对第一编码数据块的失真影响比较小。由此可知,第一编码数据块的传播率能够用于反映第一原始数据块的参考编码块所属的视频帧出现失真时,对第一编码数据块的失真影响程度。进一步,根据第二原始数据块的编码参数信息获取该第二原始数据块Si对应的传播矢量函数,此处编码参数信息包括第二原始数据块Si的编码参考块的数量以及第二原始数据块的编码模式等中的至少一种,然后,可以根据该第二原始数据块Si对应的传播矢量函数以及该传播率,确定该第一编码数据块针对该第二原始数据块Si的传播矢量代价。由于第一编码数据块的传播率能够用于反映第一原始数据块的参考编码块所属的视频帧出现失真时,对第一编码数据块的失真影响程度,可见,确定第一编码数据块针对第二原始数据块Si的传播矢量代价过程中,考虑了第一编码数据块的前后多帧视频之间的失真影响程度,能够提确定传播矢量代价的准确度。
可选的,上述获取所述第二原始数据块Si对应的传播矢量函数,包括:获取该第二原始数据块Si的编码参考块的数量;若该第二原始数据块Si的编码参考块的数量为至少两个,则将包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数;所述距离参数是根据所述第二原始数据块Si与所述第二原始数据块Si的编码参考块之间的距离确定的;若所述第二原始数据块Si的编码参考块的数量为一个,则将不包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数。
计算机设备可以获取该第二原始数据块Si的编码参考块的数量,若该第二原始数据块Si的编码参考块的数量为至少两个,表明该第二原始数据块的编码参考块包括第一编码数据块,以及除第一编码数据块以外的其他编码数据块(如第三编码数据块),这时第一编码数据块针对第二原始数据块Si的失真影响程度,与第二原始数据块Si和第一编码数据块之间的距离成反比;因此,可以将包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数。若所述第二原始数据块Si的编码参考块的数量为一个,表明该第二原始数据块的编码参考块仅包括第一编码数据块,这时第一编码数据块针对第二原始数据块Si的失真影响程度,与第二原始数据块Si和第一编码数据块之间的距离成无关;因此,将不包含距离参数的传播矢量函数,确定为该第二原始数据块Si对应的传播矢量函数。
例如,如图2所示,当第一原始数据块为视频帧3中的原始数据块B1,第一编码数据块是对原始数据块B1进行编码得到的,第二原始数据为C1,由于第二原始数据块C1的编码参考块仅包括第一编码数据块,因此,该原始数据块B1对应的传播矢量函数为如下公式(1):
vector_cost=propagation_amount×propagation_rate (1)
其中,公式(1)中,vector_cost表示传播矢量代价,propagation_amount表示第二原始数据块对应的参考编码块的传输总代价,propagation_rate表示第二原始数据块对应的参考编码块的传播率。
再例如,如图2中,假设第一原始数据块为视频帧3中的原始数据块B3,第一编码数据块是对原始数据块B3进行编码得到的,第二原始数据为C2,由于第二原始数据块C2的编码参考块包括第一编码数据块以及原始数据块A2的编码数据块,因此,当第一编码数据块与第二原始数据块C2之间的距离为l1,原始数据块A2的编码数据块与第二原始数据块之间的距离为l2时,可以将如下公式(2)作为计算第一编码数据块针对第二原始数据块C2的传播矢量函数vector_cost1,将如下公式(3)作为计算原始数据块A2的编码数据块针对第二原始数据块C2的传播矢量函数vector_cost2。
其中,第一编码数据块与第二原始数据块C2之间的距离为l1可以是指根据第一编码数据块所属的视频帧的帧编号与第二原始数据块C2所属的视频帧的帧编号确定的,如图2中,第一编码数据块是对原始数据块B3进行编码得到的,原始数据块B3属于视频帧3(视频帧的帧编号为3),第二原始数据块C2属于视频帧1(视频帧的帧编号为1)。第一编码数据块与第二原始数据块C2的距离为2,即|3-1|=2,同理,原始数据块A2的编码数据块与第二原始数据块C2之间的距离为1,即|1-0|=1。
其中,第二原始数据块对应的参考编码块(如第一编码数据块)的总传播代价可以是根据第一原始数据块的帧间编码代价和第一编码数据块的数据块传播代价进行求和运算得到的,第二原始数据块对应参考编码块的总传播代价可以采用如下公式(4)表示:
propagation_amount=propagation_cost+prediction_cost (4)
其中,在公式(4)中,propagation_cost表示第二原始数据块对应的参考编码数据块的数据块传播代价,prediction_cost表示第一原始数据块的编码代价,第一原始数据块的编码代价可以是根据第一原始数据块的帧间编码代价和帧内编码代价确定的。例如,第一原始数据块的编码代价可以是第一原始数据块的帧间编码代价和帧内编码代价中的最小编码代价,可以采用如下公式(5)表示:
prediction_cost=min{intra_satd,inter_satd} (5)
其中,在公式(5)中,intra_satd表示第一原始数据块的帧内编码代价,inter_satd表示第一原始数据块的帧间编码代价。
可选的,上述根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率,包括:根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价;所述第二编码数据块是采用帧内编码模式对所述第一原始数据块进行模拟编码得到的;根据所述第一原始数据块的帧间编码代价以及帧内编码代价,确定所述第一编码数据块的传播率。
计算机设备可以获取第一原始数据块和该第一编码数据块之间的第一差异信息,根据该第一差异信息确定第一原始数据块的帧间编码代价,获取第一原始数据块和第二编码数据块之间的第二差异信息,根据该第二差异信息确定第一原始数据块的帧内编码代价,根据该帧间编码代价和帧内编码代价确定第一编码数据块的传播率。在计算第一编码数据块的传播率的过程中,不需要对编码数据块进行变换、量化等操作,提高获取第一编码数据块的传播率的效率,提升编码效率。
可选的,上述根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价,包括:获取所述第一原始数据块和所述第一编码数据块之间的第一差异信息;对所述第一差异信息进行正交变换,得到第一变换差异信息,对所述第一变换差异信息中的参数进行求和处理,得到所述第一原始数据块的帧间编码代价。进一步,获取所述第一原始数据块和所述第二编码数据块之间的第二差异信息;对所述第二差异信息进行正交变换,得到第二变换差异信息,对所述第二变换差值信息中的参数进行求和处理,得到所述第一原始数据块的帧内编码代价。
为了提高编码速度,计算机设备可以利用绝对变换差值之和(Sum of AbsoluteTransformed Difference,SATD)来计算第一原始数据块的编码模式的编码代价,此处SATD指的是:对第一原始数据块中的像素和第一原始数据块对应的编码数据块的像素之间的差异信息(即像素差矩阵)进行四阶哈达玛变换(即正交变换),将各变换系数的绝对值之和,作为第一原始数据块的编码模式的编码代价。具体的,计算机设备可以获取该第一原始数据块和该第一编码数据块之间的第一差异信息,根据第一差异信息生成第一像素差矩阵,对该第一像素差矩阵进行正交变换,得到第一变换差异信息,对该第一变换差异信息中的参数进行求和处理,得到所述第一原始数据块的帧间编码代价。进一步,获取该第一原始数据块和所述第二编码数据块之间的第二差异信息,根据第一差异信息生成第二像素差矩阵,对第二像素差矩阵进行正交变换,得到第二变换差异信息,对该第二变换差值信息中的参数进行求和处理,得到该第一原始数据块的帧内编码代价。在计算第一原始数据块的帧间编码代价以及帧内编码代价的过程中,不需要对第一编码数据块以及第二编码数据块进行变换以及量化等操作,可节省编码时间,提高编码效率。
可选的,所述根据所述第一原始数据块的帧间编码代价以及帧间编码代价,确定所述第一编码数据块的传播率,包括:将该第一原始数据块的帧间编码代价和该帧内编码代价之间的差值,确定为该第一编码数据块的信息增益,该信息增益用于反映该第一编码数据块中由所述帧间编码模式所传递的信息量,将所述信息增益与所述帧内编码代价之间的比值,确定为所述第一编码数据块的传播率。
计算机设备可以获取该第一原始数据块的帧间编码代价和该帧内编码代价之间的差值,将帧间编码代价和帧内编码代价之间的差值,确定为该第一编码数据块的信息增益;帧间编码模式所传递的信息量是指第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量。也就是说,信息增益越大,表明第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量越多,即第一编码数据块对第一原始数据块的参考编码块所属的视频帧的依赖性比较强,如果第一原始数据块的参考编码块所属的视频帧出现失真,对第一编码数据块的失真影响比较大。相反,信息增益越小,表明第一编码数据块中由第一原始数据块的参考编码块所属的视频帧所传递的信息量越少,即第一编码数据块对第一原始数据块的参考编码块所属的视频帧的依赖性比较弱,如果第一原始数据块的参考编码块所属的视频帧出现失真,对第一编码数据块的失真影响比较小。由此可知,第一编码数据块的信息增益能够用于反映第一原始数据块的参考编码块所属的视频帧出现失真时,对第一编码数据块的失真影响程度。进一步,将该信息增益与该帧内编码代价之间的比值,确定为所述第一编码数据块的传播率,可以提高确定第一编码数据块的传播率的准确度。
例如,计算机设备可以采用如下公式(6)计算第一编码数据块的信息增益:
profit=intra_satd-prodiction_cost (6)
其中,公式(6)中,profit表示第一编码数据块的信息增益,intra_satd表示第一原始数据块的帧内编码代价,由于第一编码数据块是采用帧间编码模式对第一原始数据块进行编码得到的,即第一原始数据块的帧间编码代价小于第一原始数据块的帧内编码代价,因此,第一编码数据块的编码代价prodiction_cost是指第一原始数据块的帧间编码代价。第一编码数据块的传播率可以采用如下公式(7)计算得到:
其中,公式(7)中,propagation_rate表示第一编码数据块的传播率。
可选的,K个该第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数;上述根据该第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价,包括:获取所述第二原始数据块Si对应的第二尺寸信息所指示的尺寸与所述第一尺寸信息所指示的尺寸之间的尺寸比值;获取所述尺寸比值与所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价之间的乘积,得到所述第二原始数据块Si对应的候选传播代价;累计每个所述第二原始数据块对应的候选传播代价,得到所述第一编码数据块的数据块传播代价。
计算机设备可以获取所述第二原始数据块Si对应的第二尺寸信息所指示的尺寸与该第一尺寸信息所指示的尺寸之间的尺寸比值,该尺寸比值越大,表明第二原始数据块在第一编码数据块中的编码参考区域越大,该尺寸比值越小,表明该第二原始数据块在第一编码数据块中的编码参考区域越小,可见,第二原始数据块在第一编码数据块中的编码参考区域的尺寸,与第一编码数据块的数据块传播代价相关。因此,计算机设备可以获取所述尺寸比值与所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价之间的乘积,得到所述第二原始数据块Si对应的候选传播代价。当第二原始数据块的数量为1时,可以将该候选传播代价确定为第一编码数据块的数据块传播代价;如果第一原始数据块的数量为至少两个,累计每个所述第二原始数据块对应的候选传播代价,得到所述第一编码数据块的数据块传播代价。通过累计第一编码数据块针对单个第二原始数据块的传播矢量代价,得到第一编码数据块的数据块传播代价,可以提高获取第一编码数据块的数据块传播代价的准确度。
例如,计算机设备可以采用如下公式(8)计算第一编码数据块的数据块传播代价:
其中,公式(8)中的n表示该第一编码数据块的出度,即第一编码数据块的出度是指以第一编码数据块为编码参考块的第二原始数据块的数量,n与K相等;S表示第一编码数据块所占的区域,Ri表示第二原始数据块Si的编码参考块所占的区域,∩表示两个区域的重叠部分,|·|表示区域的面积,vector_costi表示第一编码数据块针对该第二原始数据块Si的传播矢量代价。特别的,当目标视频数据中不存在以第一编码数据块为参考的原始数据块,那么第一编码数据块的出度为0,第一编码数据块的数据块传播代价为0。
S103、根据该数据块传播代价选择用于隐藏该目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
本申请中,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,会增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。由此可知,数据块传播代价比较高的第一编码数据块不适合用于隐藏目标视频数据的视频属性信息,数据块传播代价比较低的第一编码数据块比较适合用于隐藏目标视频数据的视频属性信息。因此,计算机设备可以根据该数据块传播代价,从该第一编码数据块中,选择用于隐藏该目标视频数据的视频属性信息的目标编码数据块,例如,目标编码数据块可以是指数据块传播代价小于数据块传播代价阈值的第一编码数据块;数据块传播代价阈值可以是根据目标视频数据的视频属性信息中的信息量确定得到的,或者,数据块传播代价阈值可以是根据目标视频数据中的视频帧的原始数据块的数量确定得到的。
本申请中,计算机设备可以获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与该第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一原始数据块、第二原始数据块以及第一编码数据块,预测第一编码数据块的数据块传播代价,该传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度。也就是说,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,进而,增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,计算机设备可以根据该数据块传播代价,从该第一编码数据块中,选择用于隐藏该目标视频数据的视频属性信息的目标编码数据块,这样能够有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
进一步地,请参见图6,是本申请实施例提供的一种视频数据处理方法的流程示意图。如图6所示,该方法可由图3中的终端来执行,也可以由图3中的服务器来执行,还可以由图3中的终端和服务器共同执行,本申请中用于执行该方法的设备可以统称为计算机设备。其中,该视频数据处理方法可以包括如下步骤S201~S207:
S201、获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及该目标视频数据中与该第一编码数据块具有编码参考关系的第二原始数据块。
S202、根据该第一原始数据块、该第一编码数据块以及该第二原始数据块,预测该第一编码数据块的数据块传播代价;该数据块传播代价用于反映该第一编码数据块出现失真时对该第二原始数据块所属的视频帧的失真影响程度。
S203、将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量;所述量化参数偏移量与所述数据块传播代价之间具有负相关关联关系。
本申请中,计算机设备可以将该数据块传播代价映射至量化参数空间,得到该第一编码数据块的数据块传播代价对应的量化参数偏移量,该量化参数偏移量不仅能够用于选择隐藏视频属性信息的目标编码数据块,还可用于编码端对目标编码数据块进行量化操作处理,相应地,在解码端,该量化参数偏移量不仅能够用于确定出隐藏视频属性信息的目标编码数据块,还可用于对目标编码数据块进行反量化操作处理。也就是说,量化参数偏移量为编码端传输至解码端的一个必要参数之一,通过将数据块传播代价映射至量化参数空间,不需要额外将数据块传播代价发送至解码端,节省数据传输开销,即节省传输资源。
可选的,该将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量,包括:统计该目标视频数据中的原始数据块对应的数据块总数量,统计该目标视频数据中,数据块传播代价属于目标代价范围的编码数据块的数据块数量;所述第一编码数据块的数据块传播代价属于所述目标代价范围。进一步,根据所述数据块总数量与所述数据块数量,确定所述第一编码数据块的数据块传播代价的分位数,将所述分位数映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量。
例如,计算机设备可以获取目标视频数据中各个编码数据块的数据块传播代价的分布曲线,如图7a中,横坐标为目标视频数据中的编码数据块的数据块传播代价,纵坐标为目标视频数据中数据块传播代价为某一个数据块传播代价的编码数据块的数量。计算机设备可以在分布曲线上按照数据块传播代价从小到大的顺序依次,获取数据块传播代价的分位数20%、40%、60%、80%以及100%,此处分位数还可以包括其他数值,本申请对此不做限定。数据块传播代价的分位数用于反映编码数据块的数据块传播代价的大小,以及目标视频数据中的编码数据块的数据块传播代价的聚集情况,如图7a中,分位数80%用于反映目标视频数据中有80%的编码数据块的数据块传播代价小于或等于500,分为数60%用于反映目标视频数据中有60%的编码数据块的数据块传播代价小于或等于180。也就是说,如果目标视频数据中的第一编码数据块的数据块传播代价大于180,且小于500时,则称第一编码数据块的分位数为[60%,80%)。进一步,将该分位数映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量,如,计算机设备可以采用如下公式(9)计算第一编码数据块的数据块传播代价对应的量化参数偏移量,
其中,公式(9)中,qp_offset表示量化参数偏移量,propagation_cost∈[a%,b%)表示编码数据块的数据块传播代价的分位数处于a%分位数和b%分位数之间。量化参数偏移量是指用于对编码数据块进行量化操作的参数,即量化参数偏移量为编码端本身需要发送至解码段的其中一个参数,通过将第一编码数据块的数据块传播代价映射至量化空间,即只需要将量化参数偏移量发送至解码端,不需要额外将第一编码数据块的数据块传播代价传输至解码端,可节省传输资源。
S204、从所述第一编码数据块中,选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为用于隐藏所述目标视频数据的视频属性信息的目标编码数据块。
本申请中,目标视频数据包括至少两个第一原始数据块,一个第一原始数据块对应一个第一编码数据块,即第一编码数据块的数量为至少两个,从至少两个第一编码数据块中选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为用于隐藏该目标视频数据的视频属性信息的目标编码数据块,偏移量阈值可以是根据视频属性信息中的信息量确定的。也就是说,第一编码数据块的传数据块传播代价越大,其画面质量对后续视频帧的影响越大,因此,给第一编码数据块赋予一个较小的量化参数偏移量,降低第一编码数据块的失真,并尽量避免向数据块传播代价大的第一编码数据块中隐藏视频属性信息,可有效避免帧间失真漂移。
例如,图7b展示了目标视频数据中以25%嵌入率进行数据隐藏下,使用本申请前(即使用现有数据隐藏方法)和使用本申请的数据隐藏方法后的峰值信噪比(Peak Signalto Noise Ratio,PSNR)曲线对比;此处嵌入率为目标视频数据的实际嵌入的数据量与目标视频数据的可嵌入数据量之间的比值。图7b中横坐标为目标视频数据中视频帧的帧编号,纵坐标为用于反映目标视频数据的画面质量的峰值信噪比,曲线1用于反映目标视频数据未被进行数据隐藏处理时的峰值信噪比变化情况,曲线2用于反映目标视频数据被采用本申请数据隐藏方法进行数据隐藏处理后的峰值信噪比变化情况,曲线3用于反映目标视频数据被采用现有数据隐藏方法进行数据隐藏处理后的峰值信噪比变化情况。能够发现,相较于使用现有数据隐藏方法的PSNR曲线,使用本申请的数据隐藏方法后,视频随着帧编号的变大,PSNR值的下降能够得到有效的控制,表明的本申请对帧间失真漂移有很好的抑制效果。
可选的,确定用于反映所述目标编码数据块与所述第一原始数据块之间的差异的残差系数,对所述目标视频数据的视频属性信息进行编码,得到所述视频属性信息的编码值,将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
计算机设备可以获取目标编码数据块与第一原始数据块之间的差异信息,对目标编码数据块与第一原始数据块之间的差异信息进行变换、量化等操作,得到用于反映该目标编码数据块与第一原始数据块之间的差异的残差系数,可以预设编码方式对该目标视频数据的视频属性信息进行编码,得到该视频属性信息的编码值,此处预设编码方式可以是指二进制编码方式或其他编码方式。进一步,将该视频属性信息的编码值隐藏值该目标编码数据块对应的残差系数中,得到携带该视频属性信息的编码值的残差系数,通过将视频属性信息隐藏至目标编码数据块对应的残差系数中,有利于确保目标视频数据的完整性以及内容的安全性。
可选的,所述目标编码数据块的数量为至少两个,上述将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:从至少两个目标编码数据块中筛选出对应残差系数为非零残差系数的目标编码数据块,作为指定编码数据块,根据所述指定编码数据块对应量化参数偏移量,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数,将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
由于向零残差系数中隐藏视频属性信息的编码值的过程比较复杂,因此,计算机设备可以从至少两个目标编码数据块中筛选出对应残差系数为非零残差系数的目标编码数据块,作为指定编码数据块。进一步,根据该指定编码数据块对应量化参数偏移量由大到小的顺序,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数,或者,根据该指定编码数据块对应的量化参数偏移量由小到大的顺序,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数,特别的,当存在两个指定编码数据块对应的量化参数偏移量相同,则可以按照指定编码数据块的解码顺序,对这两个指定编码数据块对应的残差系数进行排序。然后,可以将该视频属性信息的编码值,依次隐藏至该排序后的残差系数中,得到携带该视频属性信息的编码值的残差系数。
可选的,所述排序后的残差系数包括排序后的残差系数Hj,所述视频属性信息的编码值包括与排序后的残差系数Hj对应的编码值Qj,j为小于或等于N的正整数,N为所述排序后的参数系数的数量,所述视频属性信息的编码值的数量与所述排序后的残差系数的数量相同;上述将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:若所述排序后的残差系数Hj大于残差系数阈值,则采用第一隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第一调整残差系数,将所述第一调整残差系数确定为携带所述编码值Qj的残差系数;若所述排序后的残差系数Hj小于残差系数阈值,则采用第二隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第二调整残差系数,将所述第二调整残差系数确定为携带所述编码值Qj的残差系数;所述第一调整残差系数大于所述第二调整残差系数。
例如,该残差系数阈值为0,当该排序后的残差系数Hj大于0,则将如下公式(10)中的函数作为第一隐藏函数:
其中,公式(10)中,coeff和coeff′分别表示排序后的残差系数、携带编码值的残差系数,b表示编码值,如排序后的残差系数Hj为1,编码值Qj为0,采用公式(10)以及编码值对排序后的残差系数Hj进行调整,得到第一调整残差系数,即1。当该排序后的残差系数Hj小于0,则将如下公式(11)中的函数作为第二隐藏函数:
例如,排序后的残差系数Hj为-1,编码值Qj为0,采用公式(11)以及编码值对排序后的残差系数Hj进行调整,得到第二调整残差系数,即-1;当排序后的残差系数Hj为-1,编码值Qj为1,采用公式(11)以及编码值对排序后的残差系数Hj进行调整,得到第二调整残差系数,即-2。
可选的,计算机设备可以将该第一编码数据块对应的残差系数以及量化参数偏移量发送至解码终端,该量化参数偏移量用于指示该解码终端从该第一编码数据块对应的残差系数中,确定出携带该视频属性信息的编码值的残差系数,携带该视频属性信息的编码值的残差系数用于提取出所述目标视频数据的视频属性信息,通过在目标视频数据中隐藏目标视频数据的视频属性信息,有利于提高对目标视频数据的检索效率,有利于在云端存储管理目标视频数据;或者,有利于提高目标视频数据的完整性以及安全性等等。
本申请中,计算机设备可以获取目标视频数据中由第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一编码数据块、第一原始数据块以及第二原始数据块确定第一编码数据块的数据块传播代价,将该第一编码数据块的数据块传播代价映射至量化参数空间,得到第一编码数据块的数据块传播代价对应的量化参数偏移量,该量化参数偏移量与数据块传播代价之间具有负相关关系。也就是说,第一编码数据块的传数据块传播代价越大,其画面质量对后续视频帧的影响越大,给第一编码数据块赋予一个较小的量化参数偏移量,降低第一编码数据块的失真,并从第一编码数据块中,选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为隐藏视频属性信息的目标编码数据块,这样能够避免向数据块传播代价大的第一编码数据块中隐藏视频属性信息,可有效避免帧间失真漂移。
下面以向目标视频中添加水印的场景为例,对本申请的视频数据处理方法进行详细说明,如图8所示,本申请中的视频数据处理方法包括如下步骤S1~S15:
其中,步骤S1~S3由编码侧的编码设备来执行,即编码器针对目标视频数据中的每一原始数据块执行如下S1~S3:
S1、获取最优帧内编码模式,计算帧内编码代价;即计算原始数据块在各种帧内编码模式下的帧内编码代价,选择最优帧内编码模式下的帧内编码代价(最小帧内编码代价),作为其intra_satd。
S2、获取最优帧间编码模式,计算帧间编码代价;即计算原始数据块在各种帧间编码模式下的帧间编码代价,选择最优帧间编码模式下的帧间编码代价(最小帧间编码代价),作为其inter_satd,同时得到其参考帧索引(即编码参考块所属的视频帧的帧号)、参考矢量,参考矢量用于反映原始数据块的编码数据块与其他原始数据块之间的编码参考关系。
S3、如果帧间编码模式,计算编码代价,即如果编码数据块的编码模式为帧间编码模式,则计算机编码数据块的编码代价;具体的,采用公式(5)计算得到原始数据块对应的编码数据块的编码代价prediction_cost。
其中,步骤S4~S10由数据嵌入侧的数据嵌入设备来执行,即数据嵌入设备以编码器输出的连续的视频帧(Group of Pictures,GOP)为单位,依次执行S4~S15:
S4~S10是指计算每个编码数据块的传播代价,S4~S10的具体实现过程如下:
S4、按照解码顺序的逆序针对每一个视频帧依次执行S5。
S5、遍历视频帧中所有原始数据块对应的编码数据块,对每个原始数据块的编码数据块依次执行S6~S10。
S6、统计以原始数据块的编码数据块为起点的传播矢量代价及编码参考区域的区域像素面积,按照公式(8)计算原始数据块的编码数据块的数据块传播代价propagation_cost。
S7、按照公式(4)计算原始数据块对应编码数据块的总传播代价propagation_amount。
S8、按照公式(6)计算原始数据块对应编码数据块的信息增益profit。
S9、按照公式(7)计算原始数据块对应编码数据块的传播率propagation_rate。
S10、若以原始数据块(如第一原始数据块)对应编码数据块为编码参考块的原始数据块(如第二原始数据块)的入度为1,则按照公式(1)计算以该第二原始数据块为终点的一条传播矢量的传播矢量代价vector_cost;若第二原始数据块的入度为2,则按照公式(2)和公式(3)分别计算以该第二原始数据为终点的两条传播矢量的传播矢量代价vector_cost1和vector_cost2。此处,第二原始数据集块的入度用于反映第二编码数据块的编码参考块的数量,即入度为1,表明第二原始数据块的编码参考块的数量为1;入度为2,表明第二原始数据块的编码参考块的数量为2。
S11、统计所有编码数据块的传播代价,即统计该每个视频帧GOP中的原始数据块对应的编码数据块的数据块传播代价propagation_cost,分别计算数据块传播代价propagation_cost的20%、40%、60%、80%分位数。
S12、将传播代价映射为量化参数偏移量,即按照下式(9)将每个原始数据块对应的编码数据块的数据块传播代价propagation_cost映射,得到数据块传播代价对应量化参数偏移量。
S13、提取编码数据块的非零残差系数,也即按照如下优先级(量化参数偏移量大的编码数据块优先扫描,量化参数偏移量相同的编码数据块按解码顺序扫描),得到具有非零残差系数的编码数据块。然后对每个编码数据块依次执行S14和S15,S14和S15是指对编码数据块进行数据隐藏,S14和S15可以是由数据嵌入设备来执行的,具体的,S14和S15的实现过程如下:
S14、将待嵌入的视频属性信息(即水印)二进制编码,得到二进制比特序列,即视频属性信息的编码值,标记为B={b1,b2,...,bn},其中bi(1≤i≤n)表示序列的第i个比特。
S15、按照扫描顺序提取具有非零残差系数的指定编码数据块。若指定编码数据块的非零残差系数为正数,则按公式(10)调整该指定编码数据块的非零残差系数;若非零残差系数为负数,则按公式(11)调整该指定编码数据块的非零残差系数,以完成数据隐藏。
其中,数据嵌入设备在获取到携带视频属性信息的编码值的编码数据块后,可以将携带视频属性信息的编码值的编码数据块以及未携带视频属性信息的编码值的编码数据块发送至数据提取设备,数据提取设备可以按照量化参数偏移量大的编码数据块优先扫描、量化参数偏移量相同的编码数据块按解码顺序扫描的步骤,得到携带视频属性信息的编码数据块。按照上述扫描顺序提取编码数据块中所有非零残差系数,按照公式(12)得到嵌入的二进制比特序列,即视频属性信息的编码值。
其中,mod为模运算,coeffi为第i个非零残差系数,bi为提取的第i个二进制比特数据。
需要说明的是,编码侧的编码设备和数据嵌入侧的数据嵌入设备可以均属于同一设备,也可以属于不同设备。同理,数据提取侧的数据提取设备与解码侧的解码器可以均属于同一设备,也可以属于不同设备,本申请对此不做限定。
请参见图9,是本申请实施例提供的一种视频数据处理装置的结构示意图。上述视频数据处理装置可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,该视频数据处理装置可以包括:获取模块60、预测模块70以及选择模块80。
获取模块60,用于获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
预测模块70,用于根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
选择模块80,用于根据该数据块传播代价选择用于隐藏该目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
根据本申请的一个实施例,图4所示的视频数据处理方法所涉及的步骤可由图9所示的视频数据处理装置中的各个模块来执行。例如,图4中所示的步骤S101可由图9中的获取模块60来执行,图4中所示的步骤S102可由图9中的预测模块70来执行;图4中所示的步骤S103可由图9中的选择模块80来执行。
根据本申请的一个实施例,图9所示的视频数据处理装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的至少两个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由至少两个单元来实现,或者至少两个模块的功能由一个单元实现。在本申请的其它实施例中,视频数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由至少两个单元协作实现。
根据本申请的一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算机设备上运行能够执行如图4中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图9中所示的视频数据处理装置,以及来实现本申请实施例的视频数据处理方法。上述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请中,计算机设备可以获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与该第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一原始数据块、第二原始数据块以及第一编码数据块,预测第一编码数据块的数据块传播代价,该传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度。也就是说,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,进一步,会增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,计算机设备可以根据该数据块传播代价,从该第一编码数据块中,选择用于隐藏该目标视频数据的视频属性信息的目标编码数据块,这样能够有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
请参见图10,是本申请实施例提供的一种视频数据处理装置的结构示意图。上述视频数据处理装置可以用于执行本申请实施例提供的方法中的相应步骤。如图10所示,该视频数据处理装置可以包括:获取模块100a、预测模块200b、选择模块300c、隐藏模块400d以及发送模块500e。
需要说明的是,图10中的获取模块100a具有图9中的获取模块60的全部或部分功能,图10中的预测模块200b具有图9中的预测模块70的全部或部分功能,图10中的选择模块300c具有图9中的选择模块80的全部或部分功能。
可选的,所述第二原始数据块的数量为K个,K为正整数;预测模块200包括获取单元21、确定单元22以及运算单元23。
获取单元21,用于获取所述第一编码数据块的第一尺寸信息和K个所述第二原始数据块分别对应的子区域的第二尺寸信息;所述第二原始数据块对应的子区域是指所述第二原始数据块在所述第一编码数据块中的编码参考区域;
确定单元22,用于根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价;所述传播矢量代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块的失真影响程度;
运算单元23,用于根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价。
可选的,K个所述第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数;所述运算单元23根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价,包括:
获取所述第二原始数据块Si对应的第二尺寸信息所指示的尺寸与所述第一尺寸信息所指示的尺寸之间的尺寸比值;
获取所述尺寸比值与所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价之间的乘积,得到所述第二原始数据块Si对应的候选传播代价;
累计每个所述第二原始数据块对应的候选传播代价,得到所述第一编码数据块的数据块传播代价。
可选的,所述第一编码数据块是采用帧间编码模式对所述第一原始数据块进行编码得到的;所述确定单元22根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价,包括:
根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率;所述传播率用于反映所述第一编码数据块的信息量与由所述帧间编码模式所传递的信息量之间的比值;
获取所述第二原始数据块Si对应的传播矢量函数;
根据所述第二原始数据块Si对应的传播矢量函数以及所述传播率,确定所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价。
可选的,所述确定单元22获取所述第二原始数据块Si对应的传播矢量函数,包括:
获取所述第二原始数据块Si的编码参考块的数量;
若所述第二原始数据块Si的编码参考块的数量为至少两个,则将包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数;所述距离参数是根据所述第二原始数据块Si与所述第二原始数据块Si的编码参考块之间的距离确定的;
若所述第二原始数据块Si的编码参考块的数量为一个,则将不包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数。
可选的,所述确定单元22根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率,包括:
根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价;所述第二编码数据块是采用帧内编码模式对所述第一原始数据块进行模拟编码得到的;
根据所述第一原始数据块的帧间编码代价以及帧内编码代价,确定所述第一编码数据块的传播率。
可选的,所述确定单元22根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价,包括:
获取所述第一原始数据块和所述第一编码数据块之间的第一差异信息;
对所述第一差异信息进行正交变换,得到第一变换差异信息,对所述第一变换差异信息中的参数进行求和处理,得到所述第一原始数据块的帧间编码代价;
获取所述第一原始数据块和所述第二编码数据块之间的第二差异信息;
对所述第二差异信息进行正交变换,得到第二变换差异信息,对所述第二变换差值信息中的参数进行求和处理,得到所述第一原始数据块的帧内编码代价。
可选的,所述确定单元22根据所述第一原始数据块的帧间编码代价以及帧间编码代价,确定所述第一编码数据块的传播率,包括:
将所述第一原始数据块的帧间编码代价和所述帧内编码代价之间的差值,确定为所述第一编码数据块的信息增益;所述信息增益用于反映所述第一编码数据块中由所述帧间编码模式所传递的信息量;
将所述信息增益与所述帧内编码代价之间的比值,确定为所述第一编码数据块的传播率。
可选的,选择模块300包括映射单元31和选择单元32。
映射单元31,用于将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量;所述量化参数偏移量与所述数据块传播代价之间具有负相关关联关系;
选择单元32,用于从所述第一编码数据块中,选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为用于隐藏所述目标视频数据的视频属性信息的目标编码数据块。
其中,所述映射单元31,用于将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量,包括:
统计所述目标视频数据中的原始数据块对应的数据块总数量;
统计所述目标视频数据中,数据块传播代价属于目标代价范围的编码数据块的数据块数量;所述第一编码数据块的数据块传播代价属于所述目标代价范围;
根据所述数据块总数量与所述数据块数量,确定所述第一编码数据块的数据块传播代价的分位数;
将所述分位数映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量。
隐藏模块400,用于确定用于反映所述目标编码数据块与所述第一原始数据块之间的差异的残差系数;对所述目标视频数据的视频属性信息进行编码,得到所述视频属性信息的编码值;将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
可选的,隐藏模块400包括筛选单元41、排序单元42以及隐藏单元43。
筛选单元41,用于从至少两个目标编码数据块中筛选出对应残差系数为非零残差系数的目标编码数据块,作为指定编码数据块;
排序单元42,用于根据所述指定编码数据块对应量化参数偏移量,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数;
隐藏单元43,用于将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
可选的,所述排序后的残差系数包括排序后的残差系数Hj,所述视频属性信息的编码值包括与排序后的残差系数Hj对应的编码值Qj,j为小于或等于N的正整数,N为所述排序后的参数系数的数量,所述视频属性信息的编码值的数量与所述排序后的残差系数的数量相同;
所述隐藏单元43将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:
若所述排序后的残差系数Hj大于残差系数阈值,则采用第一隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第一调整残差系数,将所述第一调整残差系数确定为携带所述编码值Qj的残差系数;
若所述排序后的残差系数Hj小于残差系数阈值,则采用第二隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第二调整残差系数,将所述第二调整残差系数确定为携带所述编码值Qj的残差系数;所述第一调整残差系数大于所述第二调整残差系数。
发送模块500,用于将所述第一编码数据块对应的残差系数以及量化参数偏移量发送至解码终端,所述量化参数偏移量用于指示所述解码终端从所述第一编码数据块对应的残差系数中,确定出携带所述视频属性信息的编码值的残差系数,携带所述视频属性信息的编码值的残差系数用于提取出所述目标视频数据的视频属性信息。
本申请中,计算机设备可以获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与该第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一原始数据块、第二原始数据块以及第一编码数据块,预测第一编码数据块的数据块传播代价,该传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度。也就是说,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,会增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,计算机设备可以根据该数据块传播代价,从该第一编码数据块中,选择用于隐藏该目标视频数据的视频属性信息的目标编码数据块,这样能够有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
请参见图11,是本申请实施例提供的一种计算机设备的结构示意图。如图11所示,上述计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个在远离前述处理器1001的存储装置。如图11所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图11所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据该数据块传播代价选择用于隐藏该目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
可选的,所述第二原始数据块的数量为K个,K为正整数;处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价,包括:
获取所述第一编码数据块的第一尺寸信息和K个所述第二原始数据块分别对应的子区域的第二尺寸信息;所述第二原始数据块对应的子区域是指所述第二原始数据块在所述第一编码数据块中的编码参考区域;
根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价;所述传播矢量代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块的失真影响程度;
根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价。
可选的,K个所述第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数;处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价,包括:
获取所述第二原始数据块Si对应的第二尺寸信息所指示的尺寸与所述第一尺寸信息所指示的尺寸之间的尺寸比值;
获取所述尺寸比值与所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价之间的乘积,得到所述第二原始数据块Si对应的候选传播代价;
累计每个所述第二原始数据块对应的候选传播代价,得到所述第一编码数据块的数据块传播代价。
可选的,所述第一编码数据块是采用帧间编码模式对所述第一原始数据块进行编码得到的;处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价,包括:
根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率;所述传播率用于反映所述第一编码数据块的信息量与由所述帧间编码模式所传递的信息量之间的比值;
获取所述第二原始数据块Si对应的传播矢量函数;
根据所述第二原始数据块Si对应的传播矢量函数以及所述传播率,确定所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现获取所述第二原始数据块Si对应的传播矢量函数,包括:
获取所述第二原始数据块Si的编码参考块的数量;
若所述第二原始数据块Si的编码参考块的数量为至少两个,则将包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数;所述距离参数是根据所述第二原始数据块Si与所述第二原始数据块Si的编码参考块之间的距离确定的;
若所述第二原始数据块Si的编码参考块的数量为一个,则将不包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率,包括:
根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价;所述第二编码数据块是采用帧内编码模式对所述第一原始数据块进行模拟编码得到的;
根据所述第一原始数据块的帧间编码代价以及帧内编码代价,确定所述第一编码数据块的传播率。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价,包括:
获取所述第一原始数据块和所述第一编码数据块之间的第一差异信息;
对所述第一差异信息进行正交变换,得到第一变换差异信息,对所述第一变换差异信息中的参数进行求和处理,得到所述第一原始数据块的帧间编码代价;
获取所述第一原始数据块和所述第二编码数据块之间的第二差异信息;
对所述第二差异信息进行正交变换,得到第二变换差异信息,对所述第二变换差值信息中的参数进行求和处理,得到所述第一原始数据块的帧内编码代价。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述第一原始数据块的帧间编码代价以及帧间编码代价,确定所述第一编码数据块的传播率,包括:
将所述第一原始数据块的帧间编码代价和所述帧内编码代价之间的差值,确定为所述第一编码数据块的信息增益;所述信息增益用于反映所述第一编码数据块中由所述帧间编码模式所传递的信息量;
将所述信息增益与所述帧内编码代价之间的比值,确定为所述第一编码数据块的传播率。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现根据所述数据块传播代价,从所述第一编码数据块中,选择用于隐藏所述目标视频数据的视频属性信息的目标编码数据块,包括:
将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量;所述量化参数偏移量与所述数据块传播代价之间具有负相关关联关系;
从所述第一编码数据块中,选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为用于隐藏所述目标视频数据的视频属性信息的目标编码数据块。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量,包括:
统计所述目标视频数据中的原始数据块对应的数据块总数量;
统计所述目标视频数据中,数据块传播代价属于目标代价范围的编码数据块的数据块数量;所述第一编码数据块的数据块传播代价属于所述目标代价范围;
根据所述数据块总数量与所述数据块数量,确定所述第一编码数据块的数据块传播代价的分位数;
将所述分位数映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:确定用于反映所述目标编码数据块与所述第一原始数据块之间的差异的残差系数;
对所述目标视频数据的视频属性信息进行编码,得到所述视频属性信息的编码值;
将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
可选的,所述目标编码数据块的数量为至少两个,所述处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:
从至少两个目标编码数据块中筛选出对应残差系数为非零残差系数的目标编码数据块,作为指定编码数据块;
根据所述指定编码数据块对应量化参数偏移量,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数;
将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
可选的,所述排序后的残差系数包括排序后的残差系数Hj,所述视频属性信息的编码值包括与排序后的残差系数Hj对应的编码值Qj,j为小于或等于N的正整数,N为所述排序后的参数系数的数量,所述视频属性信息的编码值的数量与所述排序后的残差系数的数量相同;
所述处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:
若所述排序后的残差系数Hj大于残差系数阈值,则采用第一隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第一调整残差系数,将所述第一调整残差系数确定为携带所述编码值Qj的残差系数;
若所述排序后的残差系数Hj小于残差系数阈值,则采用第二隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第二调整残差系数,将所述第二调整残差系数确定为携带所述编码值Qj的残差系数;所述第一调整残差系数大于所述第二调整残差系数。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:将所述第一编码数据块对应的残差系数以及量化参数偏移量发送至解码终端,所述量化参数偏移量用于指示所述解码终端从所述第一编码数据块对应的残差系数中,确定出携带所述视频属性信息的编码值的残差系数,携带所述视频属性信息的编码值的残差系数用于提取出所述目标视频数据的视频属性信息。
本申请中,计算机设备可以获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及目标视频数据中与该第一编码数据块之间具有编码参考关系的第二原始数据块,根据第一原始数据块、第二原始数据块以及第一编码数据块,预测第一编码数据块的数据块传播代价,该传播代价用于反映第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度。也就是说,如果第一编码数据块的数据块传播代价比较高,表明第一编码数据块出现失真时,对第二原始数据块所属的视频帧的失真影响程度比较高,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,会使第一编码数据块出现失真,会增强第二原始数据块所属的视频帧的失真影响程度。反之,如果该数据块传播代价比较低,表明在第一编码数据块出现失真时对第二原始数据块所属的视频帧的失真影响程度比较低,这时如果向第一编码数据块中隐藏目标视频数据的视频属性信息,即使携带视频属性信息的第一编码数据块出现失真,对第二原始数据块所属的视频帧的质量影响比较小。因此,计算机设备可以根据该数据块传播代价,从该第一编码数据块中,选择用于隐藏该目标视频数据的视频属性信息的目标编码数据块,这样能够有效抑制视频数据的帧间失真漂移现象,提高视频数据的质量。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图4以及前文图6所对应实施例中对上述视频数据处理方法的描述,也可执行前文图9和图10所对应实施例中对上述视频数据处理装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的视频数据处理装置所执行的计算机程序,所述计算机程序被处理器执行时,以实现前文图4和图6对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
上述计算机可读存储介质可以是前述任一实施例提供的视频数据处理装置或者上述计算机设备的中部存储单元,例如计算机设备的硬盘或中存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的中部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同媒体中容,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本申请实施例还提供了一种本申请实施例提供了一种计算机程序产品,该计算机程序被处理器执行时实现前文图4和图6对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机程序产品的实施例中未披露的技术细节,请参照本申请方法实施例的描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程视频数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程视频数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程视频数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程视频数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (18)
1.一种视频数据处理方法,其特征在于,包括:
获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
2.如权利要求1所述的方法,其特征在于,所述第二原始数据块的数量为K个,K为正整数;
所述根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价,包括:
获取所述第一编码数据块的第一尺寸信息和K个所述第二原始数据块分别对应的子区域的第二尺寸信息;所述第二原始数据块对应的子区域是指所述第二原始数据块在所述第一编码数据块中的编码参考区域;
根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价;所述传播矢量代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块的失真影响程度;
根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价。
3.如权利要求2所述的方法,其特征在于,K个所述第二原始数据块包括第二原始数据块Si,i为小于或等于K的正整数;
所述根据所述第一尺寸信息和K个所述第二尺寸信息,对K个所述传播矢量代价进行运算,得到所述第一编码数据块的数据块传播代价,包括:
获取所述第二原始数据块Si对应的第二尺寸信息所指示的尺寸与所述第一尺寸信息所指示的尺寸之间的尺寸比值;
获取所述尺寸比值与所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价之间的乘积,得到所述第二原始数据块Si对应的候选传播代价;
累计每个所述第二原始数据块对应的候选传播代价,得到所述第一编码数据块的数据块传播代价。
4.如权利要求3所述的方法,其特征在于,所述第一编码数据块是采用帧间编码模式对所述第一原始数据块进行编码得到的;
所述根据所述第一原始数据块、所述第一编码数据块以及K个所述第二原始数据块,确定所述第一编码数据块分别针对K个所述第二原始数据块的传播矢量代价,包括:
根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率;所述传播率用于反映所述第一编码数据块的信息量与由所述帧间编码模式所传递的信息量之间的比值;
获取所述第二原始数据块Si对应的传播矢量函数;
根据所述第二原始数据块Si对应的传播矢量函数以及所述传播率,确定所述第一编码数据块针对所述第二原始数据块Si的传播矢量代价。
5.如权利要求4所述的方法,其特征在于,所述获取所述第二原始数据块Si对应的传播矢量函数,包括:
获取所述第二原始数据块Si的编码参考块的数量;
若所述第二原始数据块Si的编码参考块的数量为至少两个,则将包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数;所述距离参数是根据所述第二原始数据块Si与所述第二原始数据块Si的编码参考块之间的距离确定的;
若所述第二原始数据块Si的编码参考块的数量为一个,则将不包含距离参数的传播矢量函数,确定为所述第二原始数据块Si对应的传播矢量函数。
6.如权利要求4所述的方法,其特征在于,所述根据所述第一原始数块以及所述第一编码数据块,确定所述第一编码数据块的传播率,包括:
根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价;所述第二编码数据块是采用帧内编码模式对所述第一原始数据块进行模拟编码得到的;
根据所述第一原始数据块的帧间编码代价以及帧内编码代价,确定所述第一编码数据块的传播率。
7.如权利要求6所述的方法,其特征在于,所述根据所述第一原始数据块和所述第一编码数据块,确定所述第一原始数据块的帧间编码代价,根据所述第一原始数据块和第二编码数据块,确定所述第一原始数据块的帧内编码代价,包括:
获取所述第一原始数据块和所述第一编码数据块之间的第一差异信息;
对所述第一差异信息进行正交变换,得到第一变换差异信息,对所述第一变换差异信息中的参数进行求和处理,得到所述第一原始数据块的帧间编码代价;
获取所述第一原始数据块和所述第二编码数据块之间的第二差异信息;
对所述第二差异信息进行正交变换,得到第二变换差异信息,对所述第二变换差值信息中的参数进行求和处理,得到所述第一原始数据块的帧内编码代价。
8.如权利要求6所述的方法,其特征在于,所述根据所述第一原始数据块的帧间编码代价以及帧内编码代价,确定所述第一编码数据块的传播率,包括:
将所述第一原始数据块的帧间编码代价和所述帧内编码代价之间的差值,确定为所述第一编码数据块的信息增益;所述信息增益用于反映所述第一编码数据块中由所述帧间编码模式所传递的信息量;
将所述信息增益与所述帧内编码代价之间的比值,确定为所述第一编码数据块的传播率。
9.如权利要求1所述的方法,其特征在于,所述根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块,包括:
将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量;所述量化参数偏移量与所述数据块传播代价之间具有负相关关联关系;
从所述第一编码数据块中,选择量化参数偏移量大于偏移量阈值的第一编码数据块,作为用于隐藏所述目标视频数据的视频属性信息的目标编码数据块。
10.如权利要求9所述的方法,其特征在于,所述将所述数据块传播代价映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量,包括:
统计所述目标视频数据中的原始数据块对应的数据块总数量;
统计所述目标视频数据中,数据块传播代价属于目标代价范围的编码数据块的数据块数量;所述第一编码数据块的数据块传播代价属于所述目标代价范围;
根据所述数据块总数量与所述数据块数量,确定所述第一编码数据块的数据块传播代价的分位数;
将所述分位数映射至量化参数空间,得到所述第一编码数据块的数据块传播代价对应的量化参数偏移量。
11.如权利要求9所述的方法,其特征在于,所述方法还包括:
确定用于反映所述目标编码数据块与所述第一原始数据块之间的差异的残差系数;
对所述目标视频数据的视频属性信息进行编码,得到所述视频属性信息的编码值;
将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
12.如权利要求11所述的方法,其特征在于,所述目标编码数据块的数量为至少两个,所述将所述视频属性信息的编码值隐藏至所述目标编码数据块对应的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:
从至少两个目标编码数据块中筛选出对应残差系数为非零残差系数的目标编码数据块,作为指定编码数据块;
根据所述指定编码数据块对应量化参数偏移量,对所述指定编码数据块对应的残差系数进行排序,得到排序后的残差系数;
将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数。
13.如权利要求12所述的方法,其特征在于,所述排序后的残差系数包括排序后的残差系数Hj,所述视频属性信息的编码值包括与排序后的残差系数Hj对应的编码值Qj,j为小于或等于N的正整数,N为所述排序后的参数系数的数量,所述视频属性信息的编码值的数量与所述排序后的残差系数的数量相同;
所述将所述视频属性信息的编码值,依次隐藏至所述排序后的残差系数中,得到携带所述视频属性信息的编码值的残差系数,包括:
若所述排序后的残差系数Hj大于残差系数阈值,则采用第一隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第一调整残差系数,将所述第一调整残差系数确定为携带所述编码值Qj的残差系数;
若所述排序后的残差系数Hj小于残差系数阈值,则采用第二隐藏函数以及所述编码值Qj,对所述排序后的残差系数Hj进行调整,得到第二调整残差系数,将所述第二调整残差系数确定为携带所述编码值Qj的残差系数;所述第一调整残差系数大于所述第二调整残差系数。
14.如权利要求11所述的方法,其特征在于,所述方法还包括:
将所述第一编码数据块对应的残差系数以及量化参数偏移量发送至解码终端,所述量化参数偏移量用于指示所述解码终端从所述第一编码数据块对应的残差系数中,确定出携带所述视频属性信息的编码值的残差系数,携带所述视频属性信息的编码值的残差系数用于提取出所述目标视频数据的视频属性信息。
15.一种视频数据处理装置,其特征在于,包括:
获取模块,用于获取由目标视频数据中的第一原始数据块所编码得到的第一编码数据块,以及所述目标视频数据中与所述第一编码数据块具有编码参考关系的第二原始数据块;
预测模块,用于根据所述第一原始数据块、所述第一编码数据块以及所述第二原始数据块,预测所述第一编码数据块的数据块传播代价;所述数据块传播代价用于反映所述第一编码数据块出现失真时对所述第二原始数据块所属的视频帧的失真影响程度;
选择模块,用于根据所述数据块传播代价选择用于隐藏所述目标视频数据的视频属性信息的第一编码数据块,作为目标编码数据块。
16.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至14中任一项所述的方法的步骤。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法的步骤。
18.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至14中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210103402.9A CN116567227A (zh) | 2022-01-27 | 2022-01-27 | 视频数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210103402.9A CN116567227A (zh) | 2022-01-27 | 2022-01-27 | 视频数据处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116567227A true CN116567227A (zh) | 2023-08-08 |
Family
ID=87493387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210103402.9A Pending CN116567227A (zh) | 2022-01-27 | 2022-01-27 | 视频数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116567227A (zh) |
-
2022
- 2022-01-27 CN CN202210103402.9A patent/CN116567227A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112823521B (zh) | 使用基于历史的运动信息的图像编码方法及其装置 | |
CN110324623B (zh) | 一种双向帧间预测方法及装置 | |
CN108989802B (zh) | 一种利用帧间关系的hevc视频流的质量估计方法及系统 | |
CN109391846B (zh) | 一种自适应模式选择的视频加扰方法及装置 | |
CN109257521B (zh) | 一种stc信息隐藏算法 | |
CN102307320B (zh) | 一种适用于流媒体环境的盗版追踪水印方法 | |
AU2014275405A1 (en) | Tuning video compression for high frame rate and variable frame rate capture | |
CN111010495A (zh) | 一种视频降噪处理方法及装置 | |
KR20100042632A (ko) | 비디오 인덱싱 방법, 및 비디오 인덱싱 디바이스 | |
CN112235582B (zh) | 一种视频数据处理方法、装置、计算机设备及存储介质 | |
CN103237209B (zh) | 一种基于区域dct系数的h264视频水印方法 | |
Favorskaya et al. | Authentication and copyright protection of videos under transmitting specifications | |
US20130235935A1 (en) | Preprocessing method before image compression, adaptive motion estimation for improvement of image compression rate, and method of providing image data for each image type | |
WO2024169391A1 (zh) | 一种视频数据处理方法、装置、计算机设备以及存储介质 | |
US20090279614A1 (en) | Apparatus and method for managing reference frame buffer in layered video coding | |
CN1643608A (zh) | 已编码a/v序列的编辑 | |
Yu et al. | Detection of fake high definition for HEVC videos based on prediction mode feature | |
CN113992635B (zh) | 多媒体数据处理方法、装置、设备及存储介质 | |
WO2015028098A1 (en) | Method and system for embedding information and authenticating a h.264 video using a digital watermark | |
Li et al. | [Retracted] A Review of Motion Vector‐Based Video Steganography | |
CN116489385A (zh) | 视频编码方法、解码方法、装置、电子设备及存储介质 | |
CN116567227A (zh) | 视频数据处理方法、装置、设备及存储介质 | |
Su et al. | A privacy protection scheme in H. 264/AVC by data hiding | |
CN100387062C (zh) | 一种带补偿的保护mpeg-2视频数据的方法 | |
Saadi et al. | Combined fragile watermark and digital signature for H. 264/AVC video authentication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |