在比特流中插入水印辅助数据的方法和包括水印辅助数据的比特流的制作方法

文档序号:7750066阅读:117来源:国知局
专利名称:在比特流中插入水印辅助数据的方法和包括水印辅助数据的比特流的制作方法
技术领域
本发明涉及编码技术领域。更具体地,本发明涉及一种用于在编码数据比特流中 插入水印辅助数据的方法、涉及一种使用插入的水印辅助数据来水印化编码数据比特流的 方法、以及涉及一种实现水印化方法的设备。本发明还涉及一种包括由插入方法插入的水 印辅助数据在内的编码数据比特流。
背景技术
为了保护数字内容(例如,视频、音频或3D数据等),已知将数字编码形式产生的 唯一水印插入到所分发的每个流中,以便识别在没有授权的情况下个人或团体具有授权的 内容的传输。作为示例,在影片的宣传期间,向选定的人交付借助于不同水印的水印化DVD。 在泄露的情况下,能够通过重构水印来标识泄露源。其他应用是可能的插入水印使得能够 标识作品或受益人,或者另外经由水印传送辅助数据(元数据)。为此,已知消费设备使用视频水印来使得代表视频/图像序列的编码数据比特流 个人化。通过在编码数据中插入代表“用户ID”(作为示例)的数字码或可能的时间戳来实 现“个人化”,或者甚至插入一些其他类型的信息(例如,版权)。因此,在本文中,术语“水 印”、“数字码”和“用户ID”可交换用于表示插入到编码的比特流中的数字码。为了降低消 费设备中执行这种个人化所需的计算量,已知使用“借助于”诸如水印替换图(称作WSM)等 水印辅助数据的“水印替换”技术。该辅助替换技术实现了 3步骤的水印过程。第一步骤在广播头端设备中进行,在该广播头端设备中,使用图像序列或更一般 地使用要广播的数字内容来产生水印辅助数据。然后,在第二步骤期间,将那些水印辅助数 据嵌入在编码数据比特流中,并发送至进行第三步骤的消费侧。在第三步骤期间,在消费设 备中水印辅助数据用于通过插入水印来辅助接收到的编码数据比特流的个人化。第一步骤 的目的在于确保替换将不会破坏编码数据比特流,在重构图像序列之后,确保水印(即, 个人化)对于消费者而言不可见/不可听,以及确保水印对于一些相关攻击而言是足够鲁 棒的。因此,第一步骤包括标识编码数据比特流中要被替换的数据,并确定替换数据。第一 步骤还保证鲁棒性和保真度。从该第一步骤中产生水印辅助数据。在第二步骤期间,然后将水印辅助数据嵌入到要发送至消费设备的编码数据比特 流。在现有技术中,已知使用MPEG2-TS私有或用户数据(TS代表“传输流”)来嵌入水印 辅助数据° 在题为"InformationTechnology-Generic Coding of moving images and associated audio =Systems "的文献 ITU T Rec. H. 222. O | IS0/IEC 13818 1(第 二版, 2000)中定义了 MPEG2-TS传输层。在第三步骤期间,消费设备在压缩域内应用个人化水印。的确,在编码数据比特流 中直接“插入”水印。基于包含在嵌入的水印辅助数据中的信息,通过用一些其他编码数据 (所谓的替换数据)来代替(替换)编码数据比特流中的一些编码数据来进行该插入。在 压缩域中插入水印,不但能够保护比特流本身,而且还能够保护从对编码数据比特流进行解码中所产生的基带内容。确实,在解压缩期间,水印传送了基带内容。该解决方案的第一缺点在于,MPEG2-TS私有或用户数据是可容易移除的,这表现 出该解决方案对于攻击不够鲁棒。其次,MPEG2-TS私有或用户数据是不进行加密的,因此 需要特定附加加密机制。此外,MPEG2-TS分组中分配给私有数据的部分的大小在大小上是 有限的,这限制了水印辅助数据的大小。此外,水印辅助数据与图像序列的用户数据同步是 不直接的。的确,封装了用户数据的MPEG2-TS分组与封装视频的那些分组是不同的,因此, 需要各种分组的同步。最后,现有技术中定义的WSM不提供相对于各种应用需求的灵活性。

发明内容
本发明目的在于,消除现有技术的至少一个缺点。为此,本发明涉及一种用于在编 码数据比特流中插入水印辅助数据的方法。该方法包括步骤在编码数据比特流中插入对 要替换的编码数据进行标识的标识数据、以及针对每个要替换的编码数据插入至少一个替 换数据。该方法还包括在编码数据比特流中插入格式数据,该格式数据定义了用替换数据 来替换要替换的编码数据的方式。该格式数据提供能够最佳匹配各种应用需求的灵活性。根据特定实施例,该方法还包括步骤针对要替换的每个编码数据,在编码数据比 特流中插入校验数据。根据特定实施例,校验数据是根据要替换的编码数据计算的循环冗余校验。根据变型,校验数据是要替换的编码数据。根据特定特性,标识数据是对要替换的编码数据的开始进行标识的绝对地址。根据在将编码数据比特流封装到传输分组中时所使用的变型,标识数据包括标识 传输分组的数据,传输分组包括要替换的编码数据,以及相对于传输分组的开始标识要替 换的编码数据的开始的偏移值。根据特定特性,以补充增强信息消息的形式将标识数据、替换编码数据以及格式 数据插入到编码数据的比特流中。本发明还涉及编码数据比特流,包括_标识数据,对要替换的编码数据进行标识;以及_针对要替换的每个编码数据的至少一个替换数据;以及-格式数据,定义了用替换数据来替换要替换的数据的编码数据的方式。此外,本发明提供了一种通过水印对编码数据比特流进行水印化的方法,包括以 下步骤_根据编码数据比特流,确定对要替换的编码数据进行标识的标识数据、针对要替 换的每个编码数据的至少一个替换数据、以及定义了用替换数据来替换要替换的编码数据 的方式的格式数据;-使用标识数据来对要替换的编码数据进行标识;以及-基于格式数据和水印数据,通过用一个替换编码数据替换要替换的每个编码数 据,来对编码数据比特流进行水印化。本发明还涉及一种设备,包括_输入,用于接收代表数字内容的编码数据比特流;-水印模块,用于基于与该设备相关联的标识符来将编码数据比特流水印化成水印比特流;-解码模块,用于根据水印比特流来重构水印数字内容;-第一输出,用于传输水印比特流;以及_第二输出,用于发送水印数字内容。该设备的水印模块包括-确定单元,用于根据编码数据比特流来确定对要替换的编码数据进行标识的标 识数据、针对要替换的每个编码数据的至少一个替换数据、以及定义了用替换数据来替换 要替换的编码数据的方式的格式数据;_标识单元,用于根据标识数据来标识要替换的编码数据;以及-水印单元,用于基于格式数据和水印数据,通过用一个替换编码数据来替换要替 换的编码数据,以水印化编码数据比特流。


根据本发明的一些实施例的以下描述,本发明将变得显而易见,结合附图进行该 描述,在附图中图1是根据本发明的插入方法的框图;图2、3和4示出了编码数据比特流和根据本发明定义的各种替换数据;图5是根据本发明的水印方法的框图;图6示出了编码数据比特流以及与其关联的、根据本发明的水印方法的水印化比 特流;以及图7示出了根据本发明的设备。
具体实施例方式本发明涉及在编码数据比特流中插入水印辅助数据(例如,WSM)的方法。为了 简要起见,以下考虑代表图像序列的编码数据比特流。然而,编码数据比特流代表诸如音 频或3D数据等任何类型的数字内容。通常,对作为编码数据比特流的图像序列进行编码 包括根据先前编码图像的图像数据的图像数据预测(时间预测),或者根据同一先前编 码图像的图像数据的图像数据预测(空间预测)。对残差数据进行变换(例如,使用离散 余弦变换或类似变换)和量化,该残差数据通常是通过从原始数据中减去预测数据而计 算的。最后,例如,使用VLC( “可变长度编码”的英文缩写)表,将量化数据编码成数据比 特流的熵。作为示例,能够将序列编码为符合题为《Information technology-Coding of audio-visual objects-Part 10 =Advanced Video Coding))并出版于 2005 年 12 月 15 日 的文献IS0/IEC 14496-10第二版中描述的MPEG-4AVC/H. 264标准。根据变型,根据在题 为“SERIES H AUDIOVISUAL AND MULTIMEDIA SYSTEMS-Infrastructure ofaudiovisual services-Coding of moving Video-Video coding for low bitrate communication,,的 ITU-T推荐标准中描述的H. 263标准,对图像序列进行编码。根据另一变型,根据在题为 《Information technology-Generic coding of moving picture and associated audio information :Video》并出版于2000年12月15日的文献IS0/IEC 13818-2中描述的 MPEG-2标准,对图像序列进行编码。本发明既不受限于标准也不受限于数字内容的类型。
根据本发明,水印辅助数据可以具有若干条目。每个条目包括-至少一个标识数据,用于对编码数据比特流中要替换的编码数据进行标识;以 及_至少一个替换数据。作为示例,标识数据定义为,从编码数据比特流的开始至要替换的编码数据的开 始(例如,第一比特或字节)的偏移值。根据变型,标识数据定义为,从图像的开始至要替换的编码数据的开始的偏移值。根据变型,如果将水印辅助数据封装到诸如MPEG2-TS分组等传输分组中,该偏移 值包括两个部分-对包括要替换的编码数据的第一数据(例如,第一比特或字节)在内的分组的引 用,以及-从该分组的开始到要替换的编码数据的第一数据的偏移值。作为示例,在编码数据比特流中的每“η”个图像中,对高达“m”个要替换的编码数 据进行标识,其中,“III”和“η”是整数,例如,16和1。根据变型,根据在2008年10月2日 公开的国际专利申请W02008/118145中公开的方法,对这种要替换的编码数据进行标识。作为示例,根据在2008年10月2日公开的文献2008/118145中描述的方法,来确 定替换数据。参照图1,描述将水印辅助数据插入到编码数据比特流F中的方法的第一示例实 施例。以下考虑代表图像序列但是也可以代表任何类型的数字内容(例如,音频或3D数 据)的编码数据比特流。在步骤12,在编码数据比特流中插入至少一个标识数据以及至少一个替换数据, 所述至少一个标识数据对要替换的编码数据进行标识。标识数据和替换数据能够根据编码 数据比特流来计算,或者由查找表提供。在步骤14,在编码数据比特流F中插入格式数据,该格式数据定义了用替换数据 来替换要替换的编码数据的方式。诸如用户接口等外部装置提供格式数据作为参数。根据应用这样的格式数据可以 是固定的,或者动态改变。选择格式数据是以下若干方面的折衷-已经用于产生编码数据比特流F的压缩方案及其实现替换的能力,-压缩方案的编码数据比特流语法,-需要应用于每个图像的替换次数,-向水印辅助数据分配额外有效载荷的比特率,一些特定格式能够最小化该有效 载荷,-需要避免解压缩错误,-对攻击的鲁棒性是水印的目标,-要嵌入的数字码的实际大小,以及-该压缩方案随时间的重复速率,等。格式数据提供灵活性使得能够最佳匹配各种应用需求。因此,能够导出许多变型。作为示例,格式数据定义了替换数据的数目,定义是否对该替换进行纠错。根据在 编码数据比特流中编码的格式数据,可以对一些附加数据进行编码,例如,校验数据。
作为示例,根据第一替换格式(格式1),在步骤12插入两个替换数据。在消费设 备中,使用替换数据之一 Dl来代替要替换的编码数据,以便将‘0’嵌入到编码数据比特流 中,使用第二替换数据D2来代替要替换的编码数据,以便将‘1’嵌入到编码数据比特流中。 在图2的左部分上示意了这种情况。根据第二替换格式(格式2),在步骤12插入单个替换数据。在消费设备中使用 单个替换数据Dl来代替要替换的编码数据,以便将‘0’嵌入到编码数据比特流中,而要替 换的数据由其本身代替(即,不实现替换),以便将‘1’嵌入在编码数据比特流中。根据变 型,单个替换数据用于代替要替换的编码数据,以便将‘1’嵌入编码数据比特流中,而要替 换的编码数据由其本身代替(即,不实现替换),以便将‘0’嵌入在编码数据比特流中。在 图2的右部分上示意了这种情况。根据第一和第二替换格式的变型,在步骤12插入校验数据。在图3上示意了这种 情况。例如,校验数据是要替换的编码数据或根据要替换的编码数据而计算的CRC(代表 “循环冗余校验”)。作为示例,校验数据是对要替换的编码数据的所有字节的X0R(称作异 或的逻辑运算)。如果校验数据是要替换的编码数据,则在消费设备中,将校验数据与接收 到的要替换编码数据进行比较。如果两个数据匹配,则进行替换,否则,不进行替换,并且可 能报告该错误。如果校验数据是CRC,则将校验数据与局部地基于接收到的要替换编码数据 计算的CRC进行比较。如果两个数据是相等的,则进行替换,否则不进行替换。的确,如果 在发送期间,消费设备接收到的编码数据比特流中要替换的编码数据经历了某些修改,则 不进行替换。这样的修改可以是由于图像变换、转码...。有利地,能够使用比插入要替换 编码数据所需的比特数少的比特来插入CRC。根据图4所示的另一变型,在步骤12插入多于两个替换数据。每个替换数据代表 要嵌入的数据。在这种情况下,一次可以嵌入多于一个比特。作为图4所示的示例,在步骤 12插入4个替换数据。替换数据之一用于将‘00,嵌入在编码数据比特流中,第二替换数据 用于将‘11’嵌入在编码数据比特流中,第三替换数据用于将‘01’嵌入在编码数据比特流 中,以及第四替换数据用于将‘10’嵌入在编码数据比特流中。该变型可以与校验数据组合 使用。在使用SEI消息(SEI代表“补充增强信息”)的H. 264/MPEG4AVC编码标准的 框架内,参考图1描述第二示例实施例。在题为《Information technology-Coding of audio-visual objects-Part 10 =Advanced Video Coding》并出版于 2005 年 12 月 15 日的文献IS0/IEC1446的附录D中定义了这样的SEI消息。在H. 264中定义的SEI消息 决不受限于该标准。这样的消息可以与未来标准一起使用。这样的消息也可以与诸如 H. 263等先前标准一同使用。在文献H. 263的补充增强信息(SEI)中定义了 H.263(在题 为“SERIES H AUDIOVISUAL ANDMULTIMEDIA SYSTEMS-Infrastructure of audiovisual services-Coding of moving Video-Video coding for low bit rate communication,,的 ITU-T推荐标准的附录L和W中定义),H. 263包括在无需改变解码过程的情况下能够增强 编码图像数据的利用的许多特征。标准定义了语法,任何编码数据比特流必须满足与该标准兼容。语法具体定义了 如何对各种信息项(例如,与包括在序列中的图像、运动矢量等有关的数据)进行编码。根 据H. 264,使用CABAC( “基于上下文的自适应二进制算术编码”)对该信息项进行熵编码。注意,如果解码设备不拥有其使用所需的功能,则忽略该SEI。有利地,该第二示例实施例能 够在无需对标准进行修改的情况下发送水印辅助数据。在步骤12,使用SEI消息将至少一个标识数据和至少一个替换数据插入到编码数 据比特流F中。在步骤14,使用SEI消息将格式数据插入在编码数据比特流F中。为此,定义了被称为WSM SEI消息的新SEI消息,该新SEI消息封装了水印辅助数 据。以下,在伪码形式的阵列中呈现了新语法,具有与如文献IS0/IEC 14496-10中语法相 同的约定。具体地,运算符‘==’表示“等于”,‘!=’表示“不等于”。运算符‘ !’是“非” 逻辑运算符。SEI使用“数据未注册的” SEI有效载荷类型(等于5的SEI_payl0adType), 并参照IS0/IEC 14496-10的部分7. 3. 2. 3. 1定义如下 其中-f(n)是,使用以左比特在先写入(从左到右)的η个比特的固定模式比特流;-U (η)是,使用η个比特的无符号整数;-b⑶是,具有任何模式的比特串(8比特)的字节-b(v)是,可变长度的比特字段,以及-next_bits (η),出于比较目的,在无需增加比特流指针的情况下,在编码数据比 特流中提供接下来的比特。因此,其提供对编码数据比特流中的接下来的η个比特的查看,其中,η是其自变量。ff_byte是,等于OxFF的字节,用于标识所用的语法结构的较长表现的需要。user_data_unregistered_payload_type_byte 是 WSM SEI 消息的有效载荷类型。 作为示例,对于 MPEG-4AVC, user_data_unregistered_payload_type_byte 等于 0x05。last_payload_size_byte是SEI消息的大小的最后字节。还在文献IS0/IEC 14496-10的部分7. 3. 2. 3. 1中定义了这种类型的SEI消息。WSM_user_data_unregistered ()定义如下 uuid_iso_iec_11578应当具有根据在文献IS0/IEC 11578 1996附录A中定义的 过程的UUID (UUID代表通用唯一标识符)指定的值。使用IETF RFC 4122产生的这种UUID 的示例是 Idfa52e0-ef8b-lldd-ba2f-0800200c9a66。包含与水印辅助数据有关的信息在内的WSM_payl0ad的语法以以下方式定义
WSM_StringLength[i]u⑷WSM_StringOffset[i]u (20)PayLoadIndex+ = (20+4)/8for(j = 0 ;j 彡 WSM_StringLength[i] ;j++){WSM_CurrentValue[i][j]u⑶}for(j = 0 ;j 彡 WSM_StringLength[i] ;j++){WSM_OtherValue[i][j]u⑶}PayLoadIndex+ = 2*(WSM_StringLength[i]+ 1)}}else if (WSM_FormatType == FT2) {for(i = 0 ;i ^ WSM_NumberOfEntries ;i++) {WSM_StringLength[i]u⑷WSM_StringOffset[i]u (20)PayLoadIndex+ = (20+4)/8for(j = 0 ;j 彡 WSM_StringLength[i] ;j++){WSM_CurrentValue[i][j]U⑶} 串或CABAC串定义为比特序列。因此,在下文中,词语‘串’是指编码数据比特流 中要替换的连续比特。WSM_FormatType是用于定义执行替换从而格式化水印辅助数据条目的方式的字 节。作为示例定义以下格式化FTO 条目为空,没有报告错误。FTl 仅提出一个替换值 WSM_OtherValue 嵌入 “ 1,,,而当前值 WSM_CurrentValue 用于嵌入“0”。当前值WSM_CurrentValue是必须要替换的CABAC编码字节。也发送当前值 (WSM_CurrentValue)作为校验数据,以帮助增强个人化过程的鲁棒性。FT2 提出两个替换值,WSM_ZeroValue 嵌入“0”,而 WSM_0neValue 嵌入“1”。也发 送当前值(WSiLCurrentValue)作为校验数据,以帮助增强个人化过程的鲁棒性。FT3 与FTl相同,用简单1字节CRC来代替WSM_CurrentValue串,以节省比特率。 该WSiLCurrentValueCRC在消费设备中用作校验数据,以使得个人化过程更鲁棒。FT4 与FT2相同,用简单1字节CRC来代替WSM_CurrentValue串,以节省比特率。 该WSiLCurrentValueCRC在消费设备中用作校验数据,以使得个人化过程更鲁棒。FT5 与FTl相同,但是将WSM_StringOffset拆分成2个子字段分组地址(WSM_ PacketOffset)和所指分组(WSM_StringRelativeOffset)内的字节地址。FT6 与FT2相同,但是将WSM_StringOffset拆分成2个子字段分组地址(WSM_ PacketOffset)和所指分组(WSM_StringRelativeOffset)内的字节地址。FT7 与FT3相同,但是将WSM_StringOffset拆分成2个子字段分组地址(WSM_ PacketOffset)和所指分组(WSM_StringRelativeOffset)内的字节地址。FT8 与FT4相同,但是将WSM_StringOffset拆分成2个子字段分组地址(WSM_ PacketOffset)和所指分组(WSM_StringRelativeOffset)内的字节地址。其他保留以供今后使用。错误将被报告。作为示例,FTO= 0x00、FTl = 0x01、FT2 = 0x02、FT3 = 0x03、FT4 = 0x04、FT5 =0x05、FT6 = 0x06、FT7 = 0x07、和 FT8 = 0x08。当然,可以使用其他值。
在格式FTl至FT8的情况下,在步骤12,也在流中对校验数据进行编码,以便使得 个人化过程更鲁棒。在消费设备中,在替换WSM_StringOffSet所指的字节CABAC串之前, 将该CABAC串与WSM_CurrentValue进行比较。在它们不匹配的情况下,不会发生替换,能够 报告错误。根据变型,根据WSM_StringOffset所指的字节的CABAC串,在本地计算CRC,并 将其与WSM_CurrentValueCRC进行比较。在它们不匹配的情况下,不发生替换,并且能够报 告错误。能够引入更多的WSM_F0rmatType来使得更多比特(例如,8比特而不是4比特) 编码WSM_NumberOfEntries,并实现针对WSM_StringLength的24比特地址(或针对WSM_ PacketOffset 的 16 比特)。作为第一示例,新格式类型WSM_FormatType == FT9等同于所定义的FT2(即,除 了 WSM_CurrentValue之外有两个替换值)。FT9格式类型与FT2的不同之处在于,用8比 特(而非4比特)对WSM_NumberOfEntries进行进行编码,以及用24比特(而非4比特) 对WSiLStringLength进行编码。这使得能够处理更大访问单元。这样的格式非常适合于 高比特率编码。作为第二示例,定义了另一格式FTn,其中,η是与那些已知使用的有所不同的正 整数。根据这种格式,所有替换条目具有相同串长度。因此,为了最小化水印辅助数据有 效载荷大小,使得WSM_StringLength[i]对于所有条目是公共的,从而从循环“for(i = 0 ; i 彡 WSM_NumberOfEntries ;i++) ” 中移除该 WSM_StringLength[i],并移至 WSM_PayLoad 报头(例如,仅在 WSM_SequenceTag 之后)。从而 WSM_StringthLength [i]变成全局 WSM_ StringLength0WSM_NumberOfEntries指定当前水印辅助数据中出现的减一的条目数目。然后每 条目详细说明替换。根据变型,WSM_NumberOfEntries指定条目数目。WSiLSequenceTag指示在水印辅助数据的第一条目中,应当插入数字编码有效载 荷中的哪个比特(即,第一比特、第二比特、第三比特等等)。有效载荷包括“用户ID”,并还 可以包括“时间戳”、其他信息(例如,版权)、保护比特、冗余。WSM_StringLength定义替换串的减一的长度(例如,以字节数目)。根据变型,WSM_StringLength定义替换串的长度。WSM_StringOffSet是当前访问单元中要替换的第一字节的字节绝对地址。如果 WSM_StringOffset等于0,则其标识当前访问单元的第一片的第一字节。访问单元定义为 “始终包含一个主要编码画面的NAL单元集合”。NAL单元是“包含要遵循的数据类型以及 包含该数据的字节的指示的语法结构”。访问单元和NAL单元是MPEG-4AVC/H. 264标准的 一部分。根据具体特性,条目由升序偏移组织。根据变型,将WSM_StringOfTSet拆分成2个子字段,第一个子字段为WSM_ PacketOffset,是TS分组地址,第二个子字段为WSM_StringRelativeOffset,是从TS分组 的开始的字节的偏移值。这可以减轻在消费装置中的处理。在这种情况下,对以下字段进 行编码如果WSM_PacketOff set等于0,则其标识TS分组,TS分组包括WSM_PayLoad的第
一字节。
WSM_StringRelativeOffset 是在由 WSM_PacketOffset 所指的 TS 分组中要替换的 第一字节的相对地址。如果WSiLStringRelativeOffset等于0,则其标识TS分组有效载荷
的第一字节。WSM_Filler是滤波器字节。作为示例,WSM_Filler [i]等于OxFF。WSM_Filler在如果WSM_PayLoadSize太大的情况下能够用于填充。在H.264中,使用NAL单元(“网络适应层”的英文缩写)在编码数据比特流中嵌 入这样的私有SEI消息,该NAL单元为图像提供精确的时间参考,从而便于水印辅助数据与 图像编码数据之间的同步。的确,SEI消息被“附着”至访问单元。根据MPEG1/AVC编码模 式(字段、帧、MBAFF),访问单元包含一个全字段或一个全帧。因此,如下将NALWSM SEI消 息封装在NAL单元中 forbidden_zero_bit,根据 H. 264 应当等于 0。nal_ref_idC,针对所有NAL单元应当等于0,根据H. 264,所有NAL单元具有等于 6、9、10、11、或 12 的 nal_unit_type。nal_unit_type,如IS0/IEC 14496-10的表格7_1所指定的,指定包含在NAL单元 中的RBSP(代表“原始字节序列有效载荷”)数据结构的类型。VCL NAL单元(VCL是“视频 编码层”的英文缩写)指定为,那些具有等于1至5(包括1和5)的nal_imit_type的NAL 单元。所有剩余的NAL单元被称作非VCL NAL单元。等于6的Nal_unit_type表示SEI消 肩、οrbsp_trailing_bits()是特定可变长度编码的比特串。实际上,其通常返回0x00 之前的序列0x80。在使用SEI消息的H. 264/MPEG4AVC编码标准的框架内提出第三示例实施例。根据该第三示例实施例,定义信息SEI的新类型,以便对与WSM有关的附加信息进行编码。出 于此目的,根据还没有使用的值,定义针对字段PayloadType的新值(例如,payloadType 等于22)。具体地,payloadType的前22个值(从0至21)已经用于对特定信息进行编码, 例如,影片(与等于19的payloadType相对应)的粒度的特性。以下,在具有与文献ISO/ IEC 14496-10相同约定的伪码形式的阵列中呈现新语法。以如下方式扩展SEI数据(即, sei_payload)的语法,其中,WSM_payload与第二实施例的WSM_payload相同。
byte_aligned()用于检查编码数据比特流是否在字节边界对准。本发明涉及参照图5和6描述的水印方法。更精确地,本发明涉及对包括格式数 据、标识数据和替换数据在内的编码数据的比特流F+WSM进行水印化的方法。在步骤20,格式数据定义用替换数据来替换要替换的编码数据的方式,标识数据
标识要替换的编码数据,以及通过对编码数据比特流F的一部分进行解码来确定针对要替
换的每个编码数据的至少一个替换数据。作为示例,根据第二和第三示例实施例,对封装了WSM的SEI消息进行解码。在步骤22,标识数据标识要替换的编码数据。在步骤24,通过替换,将编码数据比特流F水印化成水印化的比特流F’,其中,在 编码数据比特流F中,用适当的替换数据来替换每个标识的编码数据。基于替换数据并还 基于要嵌入在编码数据比特流F中的水印W的值,根据格式数据来确定适当替换数据。作为示例,在图6上,在步骤22,根据在步骤20恢复的标识数据来标识要替换的三 个编码数据Cl、C2和C3。在步骤24,根据要嵌入的数字码W,来替换这三个编码数据中的每一个。作为示 例,W等于001。因此,为了将比特0嵌入到Cl中,用EO来替换Cl,而El用于嵌入比特1。 然后为了将比特0嵌入到C2中,用FO替换C2,而Fl用于嵌入比特1。最后,为了将比特1 嵌入到C3中,用Gl替换C3,而GO用于嵌入比特0。根据变型,在步骤20期间,还可以确定校验数据,并仅当校验数据与要替换的接 收到的数据相匹配时,才在步骤24进行替换。本发明还涉及一种编码数据比特流F,该比特流F代表图像、音频数据、3D数据或 任何类型的数字内容的序列。根据本发明的编码数据比特流包括水印辅助数据,并更具体 地-标识数据,对要替换的数据进行标识;_针对要替换的每个编码数据的至少一个替换数据;以及-格式数据,定义用替换数据来替换要替换的编码数据的方式。本发明还涉及参照图7描述的设备3。设备3包括用于接收编码数据比特流F的 入口 30,该比特流F代表包括水印辅助数据在内的图像、任何数字内容的序列。有利地,通 过根据三个示例实施例之一的插入方法来产生编码数据比特流F。入口 30的输出链接至水 印模块32的输入。水印模块32的输出链接至设备3的第一输出36,并链接至解码模块34 的输入。解码模块34的输出链接至设备3的第二输出38。水印模块32适合于实现根据本发明的水印方法的步骤20、22、24。为此,水印模块 32包括-确定单元,用于根据编码数据比特流,确定标识要替换的编码数据的标识数据、 针对要替换的每个编码数据的至少一个替换数据、以及定义用替换数据来替换要替换的编 码数据的方式格式数据;-标识单元,利用标识数据来标识要替换的编码数据;以及-水印单元,用于基于格式数据和水印数据,用一个替换编码数据来替换要替换的 图像编码数据,来水印化编码数据比特流。要嵌入到F中的水印W至少包括用户ID/使其能够标识设备3的标识符。第一输 出36输出可以被发送至诸如WLAN( “无线局域网”的英文缩写)等网络R的水印化比特流 F’。解码模块34适用于对水印化的流F’进行解码,以便重构水印化的数字内容S’,例如, 水印化的图像序列。可以将S’发送至电视机以用于显示。根据有利实施例,在已经应用于避免盗版者缓冲器拷贝从而恢复水印辅助数据之 后,从编码数据比特流中擦除(ERASE)水印辅助数据。作为与编码方法的第二示例实数有关的示例,可以应用以下过程来擦除水印辅助数据Set WSM_FormatType = 0Set WSM_NumberOfEntries = 0利用WSM_Filler填充有效载荷的剩余部分。使用NAL(“网络适应层”的英文缩写)单元将SEI消息嵌入在编码数据比特流中, 该NAL单元为图像提供精确的时间参考,因此便于水印辅助数据与图像编码数据之间的同 步。此外,利用与压缩图像序列相同的加密系统对SEI消息进行加密,并该SEI消息与压缩 图像序列深入合并。从而,为了移除水印辅助数据,需要破坏加密系统。最后,SEI消息不 限于有效载荷方面。当然,本发明不限于上述实施例。更精确地,本发明不限于将数据插入到图像编码 数据比特流中。的确,其中插入了数据的编码数据比特流可以表示任何类型的数字内容,例 如,音频或3D数据。此外,本发明不仅限于MPEG-4AVC视频编码标准。
权利要求
一种用于在代表数字内容的编码数据比特流(F)中插入水印辅助数据(WSM)的方法,包括步骤在所述编码数据比特流中插入(12)对要替换的编码数据进行标识的标识数据、以及针对要替换的每个编码数据插入至少一个替换数据,所述方法的特征在于所述方法还包括步骤在所述编码数据比特流中插入(14)格式数据,所述格式数据定义了用替换数据来替换要替换的编码数据的方式。
2.根据权利要求1所述的插入方法,其中,所述格式数据指定替换数据的数目。
3.根据权利要求1或2所述的插入方法,其中,所述格式数据指定所述标识数据的格式。
4.根据权利要求1至2中任一项所述的插入方法,其中,所述格式数据指定代表所述编 码数据的校验数据。
5.根据权利要求4所述的插入方法,其中,所述校验数据是根据要替换的编码数据而 计算的循环冗余校验。
6.根据权利要求4所述的插入方法,其中,所述校验数据是要替换的编码数据。
7.根据权利要求3所述的插入方法,其中,所述格式指定所述标识数据是标识了要替 换的编码数据的开始的绝对地址。
8.根据权利要求3所述的插入方法,其中,所述编码数据比特流被封装在传输分组中, 所述格式指定所述标识数据包括标识了传输分组的数据,所述传输分组包括要替换的编码 数据,以及相对于所述传输分组的开始的偏移值标识了要替换的编码数据的开始。
9.根据前述权利要求中任一项所述的插入方法,其中,以补充增强信息消息的形式将 所述标识数据、所述替换编码数据以及所述格式数据插入到所述编码数据比特流中。
10.一种代表数字内容的编码数据比特流,包括 _标识数据,对要替换的编码数据进行标识;以及-针对要替换的每个编码数据的至少一个替换数据;所述编码数据比特流的特征在于,所述比特流还包括格式数据,定义了用替换数据来 替换要替换的数据的编码数据的方式。
全文摘要
本发明涉及一种用于在编码数据比特流(F)中插入水印辅助数据(WSM)的方法,包括步骤在比特流中插入(12)对要替换的编码数据进行标识的标识数据、以及针对要替换的每个编码数据插入至少一个替换数据。该方法还包括步骤在比特流中插入(14)格式数据,该格式数据定义了用替换数据来替换要替换的编码数据的方式。
文档编号H04N7/26GK101902627SQ20101018674
公开日2010年12月1日 申请日期2010年5月19日 优先权日2009年5月29日
发明者帕斯卡尔·玛丽, 玛丽-让·科拉蒂斯 申请人:汤姆森许可贸易公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1