数字水印添加、提取方法及其装置的制作方法

文档序号:7556250阅读:190来源:国知局
专利名称:数字水印添加、提取方法及其装置的制作方法
技术领域
本发明涉及信息处理领域,尤其涉及数字水印添加、提取方法及其装置。
背景技术
当前,随着技术的进步,多媒体技术的应用领域也日趋广泛。大量的多媒体文件通过互联网等渠道进行迅速的传播。由于多媒体文件具有易复制、传播快的特点,因此,多媒体文件的版权所有人十分关心多媒体文件在传播过程中的版权保护问题。在无法完全控制非法复制以及传播的情况下,版权所有人力图通过有效的追溯机制,通过在多媒体文件中预先添加的某一隐性标记来确定该多媒体文件是否为合法复制文件,从而确定该文件是否为合法复制文件,并进而实现对非法复制行为来行使相应权力。当然,在鉴定领域,也存在类似的要求,为了区分所鉴定的多媒体文件是否为真品,也可以在多媒体文件中添加相应的标记,并以此作为区分多媒体文件是否为真品的重要因素。
为了满足上述要求,需要向多媒体文件中添加某些能够证明版权归属或者跟踪侵权行文的信息,这些信息可以是作者的序列号、公司标识、有意义的文本等,当然也可以是任何版权所有者所设定的特定信息。添加上述信息的过程也被称为数字水印的实现过程,在该过程中,将上述信息添加到例如图像、视频、音频等多媒体文件中,并且使得所添加的内容隐藏于原始文件中,从而在确保实现数字水印的过程中,不会影响原始文件的可观性和完整性。
对于数字水印而言,需要具备以下特征:
首先,数字水印应该具备可证明性。出于证明权属的需要,水印中应该有能够表明版权所有者的信息,更为重要的是,该信息应该能够被提取出来,从而起到证明权属或者表明真伪的作用。
其次,对于多媒体文件而言,增加数字水印应该尽可能减小对该文件显示效果的影响,即实现视觉上的不可见性。嵌入数字水印所导致图像的变化,对于观察者的视觉系统来讲应该是不可察觉的,最理想的情况是水印图像与原始图像在视觉上一模一样,这是绝大多数水印算法所应达到的要求。
最后,数字水印应该具有很好的鲁棒性。简单而言,鲁棒性是指一个数字水印应该能够承受大量的、不同的物理和几何失真,包括有意的(如恶意攻击)或无意的(如图像压缩、扫描与复印、噪声污染、尺寸变化等等)操作。在经过这些操作后,数字水印应该还能够根据之前的算法被正确的提取出来,而`不会由于这些操作造成数字水印的破坏,从而难以提取出来。
在现有技术中,通常是通过在多媒体文件的冗余信息中来添加额外的水印信息来实现数字水印。该种方法虽然能够实现数字水印,但是,随着技术的进步,已经显现出如下问题:
由于例如视频编码技术的多媒体编码技术的高速发展,多媒体文件压缩效率越来越高,多媒体文件中的冗余信息越来越少,由此造成越来越难以在有限的冗余信息中来添加数字水印信息。这在视频领域尤为明显,当前的视频压缩效率越来越高,MPEG2的压缩比为原始信息的10倍,H264/AVC压缩比为20倍,而HEVC的压缩比更可达到40倍,压缩后的视频信号中,已经很难找到足够的冗余信息来添加水印信息,从而使得数字水印的实现愈发困难。
除此之外,现有技术中实现数字水印通常都是基于某种特定的编码格式,而当前视频编码格式正在呈现多样化发展的趋势,涌现出例如MPEG2、MPEG4、H264/AVC、VC-1、RMVB等多种编码格式,在此情况下,基于某种特定编码格式的数字水印实现方法就难以满足编码格式多样化的需求了,而且,一旦视频文件发生编码格式的转变,也很有可能会造成对数字水印信息的破坏,从而使得数字水印难以被提取出来。发明内容
有鉴于此,本发明实施例的目的在于提供一种数字水印的添加、提取方法及装置,以便针对压缩率高的多媒体文件,也能够高效实现数字水印的添加和提取。
本发明实施例提供了一种添加数字水印的方法,所述方法包括:
步骤A:对水印信息进行二进制编码,得到编码为0、1的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值;
步骤B:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下步骤:
步骤B1:获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码;
根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则执行步骤B2 ;
步骤B2:将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值;
步骤C:对添 加水印后的各个帧进行编码,得到多媒体数据。
本发明实施例还提供了一种数字水印提取方法,该方法包括:
步骤a:对多媒体文件进行转码;
步骤b:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧;
步骤c:获取每一帧多媒体文件的属性信息;
步骤d:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加数字水印时属性值区间的划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码;
步骤e:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值;
步骤f:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
本发明实施例还提供了一种添加数字水印的装置,该装置包括:
编码、解码单元,用于:对水印信息进行二进制编码,得到编码为0、1的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值;
属性值判断及调整单元,用于:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下操作:
获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码;
根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值;
多媒体数据生成单元,用于:对添加水印后的各个帧进行编码,得到多媒体数据。
本发明实施例还提供了一种提取数字水印的装置,该装置包括:
转码单元,用于对多媒体文件进行转码;
分析处理单元,用于:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧;
属性信息获取单元,用于:获取每一帧多媒体文件的属性信息;
属性值转换单元,用于:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加 数字水印时属性值区间的划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码;
二进制编码确定单元,用于:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值;
水印图像生成单元,用于:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
本发明实施例中,通过动态的选择利用原多媒体文件的属性信息,给其增加或减少一个偏移量,使得其在与水印信息尽可能接近的情况下,对原视频产生尽可能小的影响,虽然在添加数字水印的过程中,每个多媒体帧所包含的水印信息非常微弱,但利用统计分布概率原理,经过大量帧的统计分析,仍然可以确保能够提取到相应的水印信息。而在提取数字水印的过程中,并不需要原水印图像信息,只要利用与添加数字水印时相同的算法和规则,即可简单的将解码后多媒体帧的属性信息转换为二进制编码O或者1,在经过大量帧统计和分析后,即可提取到水印信息。虽然有可能在转码后信息会有所损失,但只要拥有足够多的帧数据,仍可提取出水印信息。本发明实施例仅需对原有的属性信息进行调整,无需借助冗余信息来添加水印,因此能够更好的适应当前多媒体文件压缩效率越来越高的显示情况。而且,本发明所提供的方法,针对多媒体文件固有属性进行调整,而该属性即使在编码格式转变过程中,也不会发生大幅度的变化,从而可以确保数字水印即使在多媒体文件进行转码后,也能够被正确的提取出来。


为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中实现添加数字水印的方法流程图2为本发明一优选实施例中,实现对视频添加数字水印的流程图3为本发明一实施例中,多媒体文件数字水印提取方法的流程图4为本发明一优选实施例中,实现对视频文件提取数字水印的流程图5为本发明一实施例中,添加数字水印装置的示意图6为本发明一实施例中,提取数字水印装置的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本发明实施例中,在多媒体文件的大量帧中,通过修改多媒体相关属性值,从而实现在各个帧中自适应的添加数字水印信息。以此方式,能够在确保原始多媒体文件显示质量的情况下,通过添加极少量的数字水印信息,实现对于多媒体文件添加数字水印。尽管每一帧的水印信息极其微弱,但当多媒体文件帧数众多时,我们就可以经过大量的积累,而从中提取得到足以识别的数字 水印信息。
下面结合附图,对本发明实施例的具体实现加以介绍。
参加图1,在本发明一实施例中,实现添加数字水印包括以下步骤:
步骤101:对水印信息进行二进制编码,得到编码为0、1的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值;
步骤102:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下步骤:
步骤1021:获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码;
根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则执行步骤1022 ;
步骤1022:将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值;
其中,在步骤1022中,为了避免对属性值修改过大,在进行所述修改之前,还可进一步包括:
判断所述处理对象属性值与相邻水印处理区间的差值是否满足预先设定的要求,如果是,则执行所述修改的步骤,否则,不做调整,继续后续步骤;通过上述判断,能够确保仅在属性值调整幅度在预设范围内时才进行所述的修改,避免出现对于属性信息的大幅度修改而造成对原有多媒体文件的破坏;
另外,在存在两个相邻属性值区间时,步骤1022的具体实现可以为:
分别确定所述属性值与所述两个相邻属性值区间的相邻程度,将所述属性值修改为与其相邻度更高的相邻区间内的值;在确定相邻程度时,一般是以所述属性值当前所在区间与相邻区间的边界点作为判断依据,通过所述属性值与所述边界点的差值的绝对值来确定相邻度更高的相邻区间。
步骤103:对添加水印后的各个帧进行编码,得到多媒体数据。
在上述实施例中,采用区间的概念来区分不同取值的属性信息,通过预先设定属性值区间,在属性取值落入某一区间时,则可通过预先设定的区间与二进制编码的对应关系,得到该属性值所对应的二进制编码值;除了进行属性信息的二进制编码转换外,本发明实施例中还对水印信息进行了二进制编码,得到一系列的二进制编码;之后,将相同位置处的水印二进制编码值和多媒体构成对象二进制编码值进行比对,如果相同,则意味着水印和当前多媒体的属性信息相匹配,多媒体的属性信息即可表示水印信息,所以无需更改;如果不同,则意味着如果按照当前多媒体属性信息,其和水印的编码方式并不对应,如果不做修改,则难以将水印信息添加进去或解析出来,由此,需要将多媒体文件的属性信息调整为与水印信息相一致,为了使得此种调整不至于对原文件造成很大的影响,需要做进一步的处理,该进一步的处理具体为:判断属性信息所对应的二进制编码值是否较为靠近另一区间,如果其靠近程度达到预先设定的要求,即意味着即使将该属性值更改为另一区间的数值,也不会对多媒体文件的显示效果造成很大影响,则在此情况下,对该属性信息的二进制编码值进行调整,将其修改为另一区间的数值,从而和水印信息的二进制编码值保持一致。以此方式,能够使得更多帧中会出现和水印信息编码值相匹配的值,在帧的数量众多的情况下,由于和水印信息相匹配的属性信息的值更多,则可以结合统计的方式,添加以及解析水印信息。
为了增加具有水印信息的帧在整体帧中的几率,在本发明一优选实施例中,还可进一步进行如下 处理,具体为:
对于属性值的取值范围,除了划分得到上述的属性值区间外,还有可能存在域外区间,该域外区间中的属性值,在进行水印解析时不作为解析对象进行统计。一般而言,在属性值取值范围内,会设定两个域值,较小的第一域值至属性值取值范围最小值这一区间为第一域外区间,较大的第二域值至属性值取值范围最大值这一区间为第二域外区间。
在定义了上述两个域外区间后,在步骤1022中,如果所述属性值所在区间的相邻区间包括所述域外区间,且该属性值与所述域外区间的相邻度高于与另一相邻区间的相邻度,则可以将所述属性值调整为所述域外区间内的值。在该步骤中,由于将属性值修改为与其相邻的域外区间中的值,在提取水印时,域外区间内的属性值不在统计范围内,因此,可以减少与水印信息不一致的帧的数量,进而使得与水印信息一致的帧所占比例更高。
下面结合具体场景,对本发明实施例的具体实现进行详细说明。
以下实施例以所述多媒体文件为视频进行说明,当然,所述多媒体文件也可以为其他类型的多媒体文件。
参见图2,该实施例实现添加数字水印包括以下步骤:
步骤201:获取需要添加数字水印的视频;
在本步骤中,在进行添加数字水印时,可以对需要添加数字水印的视频进行特定的读取,以便针对该读取的视频进行后续的操作;当然,为了方便起见,也可以在视频播放或者制作的过程中,来同步进行所述读取输入的视频的步骤,以便提高处理效率;
步骤202:对获取的视频进行解码,提取得到各个视频帧;
在本发明实施例中,通过解码提取得到各个视频帧;当然,本发明中可以采用和编码算法相对应算法来实现解码,所采用的算法的具体类型并不影响本发明的实现;
在解码的过程中,可以根据添加、解析数字水印的精度要求,选择某一范围内的视频进行解码,针对该范围内的视频解码得到多个视频帧,从而无需对全部视频帧都进行解码,降低处理负担;
步骤203 步骤204:对于解码得到的视频帧,进行视频帧亮度通道分离,得到所述视频帧每个像素点 的亮度信息;在执行获取亮度信息的过程中,同样是为了提高处理效率,可以仅针对视频中需要添加水印的区域进行亮度信息的提取,当然,对于视频中所有区域进行亮度信息提取也可实现本发明,本发明实施例中对于亮度信息的提取方式、提取范围并不加以限定;
步骤205:在视频中需要添加数字水印的位置,添加数字水印;其中,在本步骤执行之前,需要预先获取需要添加的数字水印,具体的,可以获得该数字水印的单色位图或字符串,然后,对该单色位图或字符串进行二进制编码,从而得到数字水印的二进制串;
在该实施例中,以视频中的像素点作为处理对象,以像素点的亮度信息作为该像素点的属性信息。对于各个像素点分别执行添加数字水印的操作,其中,针对一个像素点所在位置添加数字水印包括如下步骤:
步骤2051:获取所述像素点位置处的亮度信息,确定该亮度信息所属的亮度区间;在本发明实施例中,每个像素点的亮度信息可以被规划为-128到+128之间的8位数值,从而形成一个亮度范围;在该亮度范围内,设定两个域值,从而将该亮度范围划分为至少两个亮度区间;在本发明实施例中,所设定的域值为+80和-80,以该域值所确定的区间为:-80到O这一第一亮度值区间以及O到+80这一第二亮度值区间。当然,本发明实施例中,也可以根据实际需要,设定其他数值作为域值,从而设定出其他亮度值区间,并不影响本发明的实现;属性值O为亮度值区间的平均值,当然,也可以根据实际亮度情况,确定出其他数值的亮度值区间的平均值,并通过该平均值和所述域值来确定所述区间;
步骤2052:根据预先确定的亮度值区间与二进制编码的对应关系,得到所述像素点的亮度信息所对应的二进制编码;
具体的,本发明实施例中,可以将所述-80到O这一第一亮度值区间对应二进制编码“0”,O到+80这一第二亮度值区间对应二进制编码“ I ”,假设获取的像素点的亮度信息为25时,则该亮度信息对应的二进制编码为I。当然,所述的区间和二进制编码的对应关系也可以为其他对应关系,并不局限于上述特定该的对应关系。
步骤2053:将所述像素点亮度值所对应的二进制编码与该像素点处应该添加的数字水印的二进制编码进行比较,判断二者数值是否相同:
如果相同,则意味着此处像素点的亮度信息与待添加的水印信息一致,在不做处理的情况下,已经可以完成数字水印的添加,则对于该视频帧的所述像素点位置完成了对数字水印的添加过程,后续继续执行对剩余像素点的数字水印添加过程;
如果不同,则执行步骤2054 ;
步骤2054:将所述亮度值修改为与其当前所在亮度区间相邻的亮度区间内的值;
具体的,为了减少由于添加水印对于原始视频图像的影响,在本发明实施例中,具体可以采用如下方式来实现步骤2054:
获得所述像素点位置处的亮度值同与其相邻的水印处理区间中的特定值的差值的绝对值,判断该绝对值是否小于预先设定的阈值,如果是,则将所述像素点位置处的亮度值更改为所述另一水印处理区间中的值;否则,对所述亮度值不予调整;
其中,所述另一水印处理区间中的特定值为预先设定的值,其取值理论上来说可以为任意值,但通常来说,该特定值应该为该区间中靠近另一区间的值,一般来说,可以选择两个区间的边界值作为所述特定值。在本发明实施例中,该特定值的取值为O。
其中,所述预先设定的阈值用来确定是否可以进行亮度的调整,可以根据需要来设定其大小。当所述差值的绝对值小于所述阈值时,意味着当前亮度信息和另一水印处理区间中的亮度差别不大,即使将当前亮度调整为另一水印处理区间中的亮度值,也不会造成亮度情况的过分变化;反之,意味着当前亮度和另一水印处理区间中的亮度差别很大,如果调整,则会很大的改变原有的图像亮度情况。
在将所述像素点位·置处的亮度值更改为所述另一水印处理区间中的值时,一般是将亮度值更改为更靠近两个所述水印处理区间边界的值,以此方式,能够尽可能的减小亮度值变化的幅度,使得由于增加水印而对图像的影响尽可能小。
在实际应用中,某一亮度值所在区间会存在两个与其相邻的区间,此时,就需要分别确定所述亮度值与所述相邻亮度值区间的相邻程度,从而将亮度值修改为与其相邻度更高的区间内的值,这样,会使得所进行的修改对原始图像的影响更小些。在本发明另一实施例中,所设定的亮度值区间进行了进一步的细分,具体的,划分出以下的亮度值区间:
-80到-40为A区间、-40到O为B区间、O到+40为C区间、+40到+80为D区间。A区间内亮度值对应二进制编码“I”、B区间内亮度值对应二进制编码“O”、C区间内亮度值对应二进制编码“1”、D区间内亮度值对应二进制编码“O”。当然,也可以进一步细分亮度值区间,以上仅为本发明一实施例的示例。当视频文件像素点的亮度值为10时,其处于C区间,而水印的二进制编码为“O”,这时需要对亮度值进行修改。此时,可以判断该亮度值距离其相邻区间的相邻度,具体的,可以将B区间以及D区间与C区间的边界值作为评判标准,以此来确定的相邻度。我们可以发现,亮度值10相距边界值O的差值为10,而相距边界值40的差值为30,由此可以判断出与B区间的相邻度更高,此时,可以将亮度值调整为B区间内的值,从而使得调整幅度相对较小。
当然,与属性值相邻的区间也可能是域外区间,所述域外区间内的亮度值在进行水印解析时不参与统计。在实现亮度值修改的过程中,也可以将亮度值修改为所述域外区间内的值。在本发明实施例中,域外区间分别为-128到-80,以及+80到+128。当所述亮度值为70,且水印信息的二进制编码为“0”,由于二进制编码不一致,需要进行亮度值修改。在修改之前,可以判断当前亮度值与其相邻区间的相邻度。通过分析我们发现,亮度值70距离第一亮度值区间(-80到O)较远,而距离+80到+128这一域外区间则较近,由此,可以将亮度值调整为域外区间中的值,例如85,由此可以减少对原始视频图像的影响。
需要说明的是,上述实施例中,属性值O可被理解为是视频帧中亮度值的平均值,当然,该值为O是一个联想状态,在实际应用中,可以根据实际情况,确定特定的所述亮度值平均值,并以该平均值作为划分条件之一,来划分得到上述区间。
通过上述步骤,可以实现将水印信息嵌入到视频的所有帧中。与传统的水印添加技术不同的是,本发明实施例并不将水印数据本身写入到视频中,而是动态地选择利用原始视频信息。对于和水印信息不一致的视频亮度值,给其增加或减少相应的一个较小的偏移量,使得修改后的值与水印信息相一致,并且对原始视频文件影响较小。虽然每个视频帧中所包含的水印信息非常微弱,但是,利用统计分布概率原理可以发现,通过对大量帧的统计分析,仍可提取得到相应的水印信息。
上述实施例以亮度信息作为多媒体文件的属性信息,在本发明其他实施例中,也可采用色度、饱和度等其他信息作为属性信息,相应的水印添加方法与上述实施例提及的方法类似,在此不再赘述。
相应的,本发明实施例还提供了一种多媒体文件数字水印提取方法,参见图3,该方法具体包括:
步骤301:对多媒体文件进行转码;
步骤302:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧;在本步骤中,当多媒体文件是视频时,可以采用与视频编码算法相对应的解码算法来提取得到多个视频帧,具体算法的类型在此不做限定;
步骤303:获取每一帧多媒体文件的属性信息;
步骤304:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加数字水印时属性值区间的 划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码;
步骤305:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值;
步骤306:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
在本发明中,多媒体文件具体可以为视频文件,相应的属性信息可以为亮度值,在此情况下,参见图4实现提取水印包括以下步骤:
步骤401:对视频文件进行转码;
步骤402:对转码后的视频结构进行分析处理,得到每个视频帧;
具体的,本发明中对于进行所述分析处理所采用的算法不加限定;
步骤403:对各个视频帧进行亮度通道分离,得到各个视频帧中相应像素点的亮度值;
在本发明具体实施例中,可以针对特定范围的视频帧来获取像素点的亮度值,也可以针对视频中特定区域,一般来说是确定添加了数字水印的区域,来获取亮度值,以此减少数据处理量;
步骤404:针对确定添加数字水印的各个位置,分别获取该位置处各个视频帧中各个像素点的亮度值,确定各个亮度值所属的区间,根据亮度值区间与二进制编码数值间的对应关系,确定所述各个像素点亮度值所对应的二进制编码数值;其中,所述亮度值区间的划分与添加数字水印时亮度值区间的划分相同或相对应,且在划分得到的至少两个亮度值区间中,各个区间互不重叠,相邻亮度值区间对应不同的二进制编码;在对多个所述二进制编码进行统计后,得到出现概率高的二进制编码,作为所述位置处数字水印的二进制编码;
具体的,亮度值区间的设置以及与二进制编码的对应关系,可以与添加数字水印时的设置情况及对应关系一致,例如,当添加数字水印时,采用如上实施例所述的方式,设置如下亮度值区间及对应关系时,进行数字水印提取时,也应按照该区间以及对应关系来进行相应的解析操作,从而实现根据预先确定的亮度值区间与二进制编码数值的对应关系,得到所述位置处各个像素点亮度值的二进制编码:
-80到-40为A区间、-40到O为B区间、O到+40为C区间、+40到+80为D区间。A区间内亮度值对应二进制编码“I”、B区间内亮度值对应二进制编码“O”、C区间内亮度值对应二进制编码“ I ”、D区间内亮度值对应二进制编码“O”。
以上区间及对应关系的设置仅为示例,也可采用其他区间及对应关系,并不影响本发明的实现。
当然,考虑到一些视频进行编码格式转换时,其亮度值会发生相应的转变,因此,也可以在提取数字水印时,按照如下方式来设置所述区间及对应关系:
在转码后的视频中,获取亮度值的平均值作为亮度范围中点;
以所述亮度范围中点为起点,划分出与添加数字水印时亮度值区间的大小相同的各个亮度值区间,并按照与添加数字水印时相同的对应关系设置方式,为各个亮度值区间分别设置二进制编码;其中,提取数字水印时一亮度区间所对应的二进制编码值与添加数字水印时相应亮度值区间的二进制编码相同;
例如,在添加数字水印时,亮度值平均值为0,亮度值区间的设置及对应关系为:
-80到-40为A区间、-40到O为B区间、O到+40为C区间、+40到+80为D区间。A区间内亮度值对应二进制编码“I”、B区间内亮度值对应二进制编码“O”、C区间内亮度值对应二进制编码“ I ”、D区间内亮度值对应二进制编码“O”。
在提取数字水印时,发现亮度值平均值发生了变化,具体变化为了 +10,则提取数字水印时的亮度值区间的设置及对应关系为:
-70到-30为E区间、-30到10为F区间、10到+50为G区间、+50到+90为H区间。E区间与A区间相对应,该区间内亮度值对应二进制编码“1”、F区间与B区间相对应,该区间内亮度值对应二进制编码“O”、G区间与C区间相对应,该区间内亮度值对应二进制编码“ I ”、H区间与D区间相对应,该区间内亮度值对应二进制编码“O”。
在进行数字水印提取时,会按照上述所划分的E、F、G、H区间及与二进制编码的对应关系,来完成数字水印提取操作。
在步骤404中,有可能会出现提取的亮度值处于域外区间的情况,例如处于-128到-80区间或+80到+128区间,此时,对于该亮度值进行忽略处理,从而在进行所述统计时,不把该亮度值作为统计对象计算在内。
步骤405:利用所述数字水印的二进制编码,解码得到数字水印信息,并根据该数字水印信息生成水印图像。
当然,和添加数字水印时相类似,在提取数字水印时,所依据的亮度值区间也可以为多个,此时,只需要按照各区间与二进制编码的对应关系来执行相应步骤即可。例如,提取数字水印时的区间设置为:
70到-30为E区间,对应二进制编码“ I” ;
-30到10为F区间,对应二进制编码“O” ;
10到+50为G区间,对应二进制编码“ I” ;
+50到+90为H区间,对应二进制编码“ O ” ;
此时,在提取出相应位置像素点的亮度值后,依据亮度值在哪一个区间内,即可得到相应的二进制编码,并按照后续的方式对相同位置处,多个所述二进制编码进行统计,得到出现概率高的二进制编码,作为所述位置处数字水印的二进制编码。
步骤405:根据所确定的数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
本发明上述实施例中,通过动态的选择利用原视频信息,给其增加或减少一个偏移量,使得其在与水印信息尽可能接近的情况下,对原视频产生尽可能小的影响,虽然在添加数字水印的过程中 ,每个视频帧所包含的水印信息非常微弱,但利用统计分布概率原理,经过大量帧的统计分析,仍然可以确保能够提取到相应的水印信息。而在提取数字水印的过程中,并不需要原水印图像信息,只要利用与添加数字水印时相同的算法和规则,即可简单的将解码后视频帧的亮度信息转换为二进制编码O或者1,在经过大量帧统计和分析后,即可提取到水印信息。虽然有可能在转码后信息会有所损失,但只要拥有足够多的帧数据,仍可提取出水印信息。
本发明实施例还提供了添加数字水印的装置,参见图5,该装置包括:
编码、解码单元501,用于:对水印信息进行二进制编码,得到编码为O、I的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值;
属性值判断及调整单元502,用于:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下操作:
获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码;
根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值;
多媒体数据生成单元503,用于:对添加水印后的各个帧进行编码,得到多媒体数据。
相对应的,本发明实施例还提供了一种提取数字水印的装置,参见图6,该装置包括:
转码单元601,用于对多媒体文件进行转码;
分析处理单元602,用于:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧;
属性信息获取单兀603,用于:获取每一巾贞多媒体文件的属性信息;
属性值转换单元604,用于:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加数字水印时属性值区间的划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码;
二进制编码确定单元605,用于:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值;
水印图像生成单元606,用于:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
对于装置实 施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明实施例所提供的实现设备统一控制的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的 限制。
权利要求
1.一种数字水印添加方法,其特征在于,所述方法包括: 步骤A:对水印信息进行二进制编码,得到编码为O、I的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值; 步骤B:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下步骤: 步骤B1:获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码; 根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则执行步骤B2 ; 步骤B2:将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值; 步骤C:对添加水印后的各个帧进行编码,得到多媒体数据。
2.根据权利要求1所述的方法,其特征在于,在步骤B2中,进行所述修改之前,该方法进一步包括: 判断所述处理对象属性值与相邻水印处理区间的差值是否满足预先设定的要求,如果是,则执行所述修改的步骤。
3.根据权利 要求1所述的方法,其特征在于,如果所述属性值当前所处属性值区间具有两个所述相邻属性值区间,则步骤B2包括: 分别确定所述属性值与所述两个相邻属性值区间的相邻程度,将所述属性值修改为与其相邻度更高的相邻区间内的值。
4.根据权利要求1所述的方法,其特征在于,在所述属性值区间之外,进一步设置域外区间,所述域外区间中的属性值,在进行水印解析时不作为解析对象进行统计; 当所述属性值所在区间的相邻区间包括所述域外区间时,所述步骤B2进一步包括:判断该属性值与所述相邻的域外区间的相邻度是否高于与另一相邻区间的相邻度,如果是,则将所述属性值调整为所述域外区间内的值。
5.根据权利要求1所述的方法,其特征在于,所述划分得到至少两个属性值区间为: 确定所述属性值的平均值,以该平均值为起点,沿着正负方向并按照预设大小划分得到两个或两个以上属性值区间。
6.根据权利要求1至5任意一项所述的方法,其特征在于,所述多媒体为视频,所述处理对象为像素点,所述属性为亮度。
7.一种数字水印提取方法,其特征在于,该方法包括: 步骤a:对多媒体文件进行转码; 步骤b:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧; 步骤c:获取每一帧多媒体文件的属性信息; 步骤d:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加数字水印时属性值区间的划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码; 步骤e:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值; 步骤f:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印信息生成水印图像。
8.根据权利要求7所述的方法,其特征在于,步骤d中,所述属性值区间的划分与添加数字水印时属性值区间的划分相对应时,按照如下方式来设置所述区间及对应关系: 在转码后的视频中,获取亮度值的平均值作为亮度范围中点; 以所述亮度范围中点为起点,划分出与添加数字水印时亮度值区间的大小相同的各个亮度值区间,并按照与添加数字水印时相同的对应关系设置方式,为各个亮度值区间分别设置二进制编码;其中,提取数字水印时一亮度区间所对应的二进制编码值与添加数字水印时相应亮度值区间的二进制编码相同。
9.根据权利要求7或8所述的方法,其特征在于,所述多媒体为视频,所述处理对象为像素点,所述属性为亮度。
10.一种添加数字水印的装置,其特征在于,该装置包括: 编码、解码单元,用于:对水印信息进行二进制编码,得到编码为0、1的二进制串;和,对多媒体文件的每一帧数据进行解码,提取得到每一帧数据中需要添加水印的区域的各个处理对象的属性信息,其中,对于多个帧,相同位置处的处理对象的所述属性信息的取值为变量值; 属性值判断及调整单元,用于:对于每一帧中需要添加数字水印的各个位置处的处理对象,分别执行以下操作: 获取多媒体文件所述处理对象的属性值,确定属性值所属的区间;其中,预先在属性值的取值范围内,划分得到至少两个属性值区间,所述各个区间互不重叠,且相邻属性值区间对应不同的二进制编码; 根据预先确定的属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值,和,提取所述处理对象所处位置处应该添加的水印的二进制编码数值,判断所述处理对象属性值所对应的二进制编码数值与所述应添加的水印的二进制编码数值是否相同,如果否,则将所述属性值修改为与其当前所处属性值区间相邻的属性值区间内的值; 多媒体数据生成单元,用于:对添加水印后的各个帧进行编码,得到多媒体数据。
11.一种提取数字水印的装置,其特征在于,该装置包括: 转码单元,用于对多媒体文件进行转码; 分析处理单元,用于:对转码后的多媒体文件进行分析处理,提取得到各个多媒体帧; 属性信息获取单元,用于:获取每一帧多媒体文件的属性信息; 属性值转换单元,用于:对于每一帧中确定添加数字水印的各个位置处的处理对象,分别获取所述处理对象的属性值,确定属性值所属的区间,根据属性值区间与二进制编码数值间的对应关系,确定所述处理对象属性值所对应的二进制编码数值;其中,所述属性值区间的划分与添加数字水印时属性值区间的划分相同或相对应,且在划分得到的至少两个属性值区间中,各个区间互不重叠,相邻属性值区间对应不同的二进制编码; 二进制编码确定单元,用于:针对多媒体文件中所述确定添加数字水印的各个位置,分别统计在不同帧的相同位置处的处理对象二进制编码数值,确定出现概率大的二进制编码数值,将其作为数字水印的二进制编码数值; 水印图像生成单元,用于:利用所述数字水印的二进制编码数值,编码得到数字水印信息,并根据该数字水印 信息生成水印图像。
全文摘要
本发明实施例公开了数字水印添加、提取方法及其装置,在多媒体文件的大量帧中,通过修改多媒体相关属性值,从而实现在各个帧中自适应的添加数字水印信息。以此方式,能够在确保原始多媒体文件显示质量的情况下,通过添加极少量的数字水印信息,实现对于多媒体文件添加数字水印。尽管每一帧的水印信息极其微弱,但当多媒体文件帧数众多时,我们就可以经过大量的积累,而从中提取得到足以识别的数字水印信息。
文档编号H04N7/26GK103248898SQ20131019029
公开日2013年8月14日 申请日期2013年5月22日 优先权日2013年5月22日
发明者张炯 申请人:张炯
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1