CN109741233A - 一种可逆水印的嵌入和提取方法 - Google Patents
一种可逆水印的嵌入和提取方法 Download PDFInfo
- Publication number
- CN109741233A CN109741233A CN201811646012.6A CN201811646012A CN109741233A CN 109741233 A CN109741233 A CN 109741233A CN 201811646012 A CN201811646012 A CN 201811646012A CN 109741233 A CN109741233 A CN 109741233A
- Authority
- CN
- China
- Prior art keywords
- pixel
- image block
- pixels
- sequence
- difference
- 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.)
- Granted
Links
- 238000003780 insertion Methods 0.000 title claims abstract description 52
- 230000037431 insertion Effects 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 31
- 230000002441 reversible effect Effects 0.000 title claims abstract description 28
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 title claims abstract description 24
- 238000012545 processing Methods 0.000 claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 2
- 230000000284 resting effect Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 7
- HUTDUHSNJYTCAR-UHFFFAOYSA-N ancymidol Chemical compound C1=CC(OC)=CC=C1C(O)(C=1C=NC=NC=1)C1CC1 HUTDUHSNJYTCAR-UHFFFAOYSA-N 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000000605 extraction Methods 0.000 description 10
- 230000008901 benefit Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Landscapes
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种可逆水印的嵌入方法,包括:先对像素处理防止像素溢出和失真,再将载体图像划分成互不重叠的图像块并排序得到一维像素序列;并利用三个最大像素和三个最小像素按像素序列顺序两两预测得到差值;将所有局部复杂度小于或等于第一预设阈值的图像块归入第一待变换集合;根据差值判断图像块是否需要进行水印嵌入;若是,则对图像块进行水印嵌入,进一步完成水印嵌入。通过用第三大像素去预测第二大像素,同时用第二大像素预测最大像素,使得两个最大像素和两个最小像素都能被它最近邻的像素预测,使得差值的分布更加集中,提高了预测性能。本申请还提供了可逆水印的提取方法、计算机可读存储介质和图像处理终端,具有相同有益效果。
Description
技术领域
本申请涉及图像处理领域,特别涉及一种可逆水印的嵌入和提取方法,以及一种计算机可读存储介质和一种图像处理终端。
背景技术
可逆信息隐藏是一种特殊的信息隐藏技术,其特殊性体现在水印信息被正确提取出之后隐藏算法仍能完全复原出原始载体信息。因其特殊性,可逆信息隐藏被广泛应用于医学、法律和军事等对原始载体信息要求较高的领域。上述这些领域不允许原始载体遭受任何永久失真,因为一旦原始载体出现少许的偏差,就极有可能导致错误的诊断结论以及法律证据上的纠纷。
在已有的基于PVO(pixel-value-ordering,像素值排序)的可逆水印算法中,仅仅通过像素的大小关系生成预测误差,因此,预测误差仍旧很大,不利于可逆水印的嵌入及后续的提取。
申请内容
本申请的目的是提供一种可逆水印的嵌入方法,以及一种计算机可读存储介质和一种图像处理终端,解决现有的水印信息在嵌入和提取过程中受损的问题。
为解决上述技术问题,本申请提供一种可逆水印的嵌入方法,具体技术方案如下:
获取原始载体图像,根据所述原始载体图像中的预设像素值生成一维位置图;所述预设像素值包括0、1、254和255;
对所述一维位置图中像素值为0的像素作加一处理、像素值为255的像素作减一处理,标识至所述原始载体图像后得到载体图像;
将所述载体图像划分成互不重叠的图像块;
对所述图像块排序得到一维像素序列;
利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值;
计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合;
根据所述差值判断所述图像块是否需要进行水印嵌入;
若是,则对所述图像块进行水印嵌入,并在所述第一待变换集合中的所有所述图像块的水印嵌入结束后完成所述原始载体图像的水印嵌入。
其中,将所述载体图像划分成互不重叠的图像块包括:
将大小为R×C的所述载体图像I′分成大小为r×c的互不重叠的图像块{X1,…,XN},其中R和C分别为所述载体图像I′的宽度和长度,每个所述图像块中的像素数量用n=r×c表示,N为所述图像块的数量。
其中,计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合包括:
对于任一个所述图像块Xi(i∈{1,…,N}),利用所述一维像素序列中除两个最大像素和两个最小像素以外的像素评估所述图像块的局部复杂度,记为Δi(i∈{1,…,N});将所有所述局部复杂度小于第一预设阈值T的所述图像块组成第一待变换集合SP;其中,所述两个最大像素为所述三个最大像素中的两个较大像素,所述两个最小像素为所述三个最小像素中的两个较小像素。
其中,利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值包括:
对于一维像素序列xi={xσ(1),…,xσ(n)}中三个最大像素(xσ(n-2),xσ(n-1),xσ(n)),利用xσ(n-2)预测xσ(n-1)产生出第一差值dl1,即dl1=|xσ(n-2)-xσ(n-1)|;
再用xσ(n-1)预测xσ(n)产生第二差值dl2=|xσ(n)-xσ(n-1)|;
对于所述一维像素序列xi={xσ(1),…,xσ(n)}中三个最小像素(xσ(1),xσ(2),xσ(3)),利用xσ(3)预测xσ(2)产生出第三差值ds1,即ds1=|xσ(3)-xσ(2)|,再用xσ(2)预测xσ(1)产生出第四差值ds2=|xσ(2)-xσ(1)|;
其中,xσ(n-1)表示大于或等于xσ(n-2)的位置靠前的像素,xσ(n)表示大于或等于xσ(n-2)的位置靠后的像素,xσ(2)表示小于或等于xσ(3)的位置靠后的像素,xσ(2)表示小或等于xσ(3)的位置靠前的像素,符号|·|表示绝对值符号。
其中,根据所述差值判断所述图像块是否需要进行水印嵌入包括:
根据所述三个最大像素或所述三个最小像素的实际大小顺序对应的映射关系对所述差值进行像素值替换,得到含密差值;
根据所述含密差值判断所述图像块是否需要进行水印嵌入。
其中,还包括:
将所述一维位置图经算术编码压缩得到二进制比特流;
生成附加信息,并将所述附加信息和载荷以所述图像块为单位逐个嵌入至所述载体图像;所述附加信息至少包括嵌入容量值、所述二进制比特流的大小、所述图像块的大小和嵌入结束位置信息中的一种。
其中,利用所述一维像素序列中除两个最大像素和两个最小像素以外的像素评估所述图像块的局部复杂度包括:
利用评估所述图像块的局部复杂度,其中
本申请还提供一种可逆水印的提取方法,应用于上文所述的可逆水印的嵌入方法所得到的含水印图像,具体技术方案如下:
将所述含水印图像划分成互不重叠的第二图像块;
按嵌入时相反顺序计算所述第二图像块的局部复杂度;
将所有所述局部复杂度小于或等于第二预设阈值的所述第二图像块归入第二待变换集合;
对所述第二图像块排序得到一维含密像素序列,利用所述一维含密像素序列中的三个最大像素和三个最小像素还原出对应的差值;
对所述第二待变化集合中的所有所述第二图像块均进行水印提取,得到所述含水印图像对应的原始图像和水印信息。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现上文嵌入方法对应的步骤。
本申请还提供一种图像处理终端,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上文嵌入方法对应的步骤。
本申请所提供的一种可逆水印的嵌入方法,包括:获取原始载体图像,根据所述原始载体图像中的预设像素值生成一维位置图;所述预设像素值包括0、1、254和255;对所述一维位置图中像素值为0和254的像素均作加一处理,标识至所述原始载体图像后得到载体图像;将所述载体图像划分成互不重叠的图像块;对所述图像块排序得到一维像素序列;利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值;计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合;根据所述差值判断所述图像块是否需要进行水印嵌入;若是,则对所述图像块进行水印嵌入,并在所述第一待变换集合中的所有所述图像块的水印嵌入结束后完成所述原始载体图像的水印嵌入。
本申请将图像块中的每一个像素按照像素值的大小进行排序后,他们在没有排序的图像块中都有相对应的位置。通过用第三大像素预测大于或等于第三大像素的位置靠前的像素,同时用大于第三个像素的位置靠前的像素来预测位置靠后的像素,使得两个最大像素和两个最小像素都能被它的最相邻的像素预测,从而使得差值的分布更加集中,提高了预测性能。本申请还提供了一种可逆水印的提取方法、一种计算机可读存储介质和一种图像处理终端,具有上述有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种可逆水印的嵌入方法的流程图;
图2为本申请实施例所提供的一种可逆水印的提取方法的流程图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例提供的一种可逆水印的嵌入方法的流程图,该嵌入方法如下:
S101:获取原始载体图像,根据所述原始载体图像中的预设像素值生成一维位置图;
在获取到原始载体图像后,先确定原始载体图像中各个像素的像素值,而仅根据预设像素值生成一维位置图。该预设像素值包括0、1、254和255。换句话说,将原始载体图像中像素值为这四个数值的像素标记出来,所有像素为这四个像素值的像素构成了一维位置图。
S102:对所述一维位置图中像素值为0的像素作加一处理、像素值为255的像素作减一处理,标识至所述原始载体图像后得到载体图像;
因为在嵌入过程中,0(指像素值,本段同)会作减1处理由0变为-1,255会作加1处理由255变为256,-1和256超出了[0,255]范围从而产生溢出,为了防止溢出,将0在嵌入之前作加1处理,这样的话即使在嵌入过程中即使作减1处理,也不会引起上溢;将255在嵌入之前作减1处理,这样的话即使在嵌入过程中作加1处理,也不会引起下溢。
本步骤针对一维位置图进行,当然也可以基于原始载体图像进行,目的是将像素值为0作加一处理、像素值为255的作减一处理,分别得到像素值为1和254的像素。此时,像素值修改后的原始载体图像不包含像素值为0和像素值为255的像素,为与原始载体图像进行区分,称之为载体图像。
S103:将所述载体图像划分成互不重叠的图像块;
本步骤旨在对载体图像进行图像分块,载体图像就是待嵌入水印信息的图像。划分成图像块时,要求所有图像块互不重叠,除此之外对于具体的划分方式不做限定。之所以需要所有图像块互不重叠,是需要保证水印嵌入效率以及排除因图像块重叠带来的水印嵌入紊乱的问题。每个图像块的像素数量与图像块的大小有关。当然,在此对于图像块的具体大小不作限定,具体划分成图像块时应考虑载体图像的大小。
具体的,下面举例说明,将大小为R×C的载体图像I′分成大小为r×c的互不重叠的图像块{X1,…,XN},其中R和C分别为所述载体图像I′的宽度和长度,每个所述图像块中的像素数量用n=r×c表示,N为所述图像块的数量。
S104:对所述图像块排序得到一维像素序列;
本步骤旨在对二维的图像块Xi(i∈{1,…,N})根据其像素值做排序并得到排序后的一维像素序列xi={xσ(1),…,xσ(n)},为S105作准备。
在此对于排序的具体顺序不作限定,无论是从大到小还是从小到大均可以,在此不作限定。
S105:利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值;
在S104对像素进行排序后,很容易得到三个最大的像素和三个最小的像素,换句话说,即一维像素序列xi={xσ(1),…,xσ(n)}中的前三个和后三个像素。
对于一维像素序列xi={xσ(1),…,xσ(n)}中三个最大像素(xσ(n-2),xσ(n-1),xσ(n)),利用xσ(n-2)预测xσ(n-1)产生出第一差值dl1,即dl1=|xσ(n-2)-xσ(n-1)|;
再用xσ(n-1)预测xσ(n)产生第二差值dl2=|xσ(n)-xσ(n-1)|;
对于所述一维像素序列xi={xσ(1),…,xσ(n)}中三个最小像素(xσ(1),xσ(2),xσ(3)),利用xσ(3)预测xσ(2)产生出第三差值ds1,即ds1=|xσ(3)-xσ(2)|,再用xσ(2)预测xσ(1)产生出第四差值ds2=|xσ(2)-xσ(1)|;
其中,xσ(n-1)表示大于或等于xσ(n-2)的位置靠前的像素,xσ(n)表示大于或等于xσ(n-2)的位置靠后的像素,xσ(2)表示小于或等于xσ(3)的位置靠后的像素,xσ(2)表示小或等于xσ(3)的位置靠前的像素,符号|·|表示绝对值符号。
之所以使用绝对值是保证无论计算最大像素预测出的差值还是最小像素预测出的差值均为正数,差值为负数没有意义。
可以理解的是,对于水印嵌入而言,差值越小越好。若差值较小,则水印嵌入更加容易,同时也便于后续的水印提取。
S106:计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合;
本步骤旨在计算局部复杂度。只有局部复杂度不大于低于第一预设阈值时才能对图像块进行水印嵌入。
在此对于如何计算局部复杂度不作限定。在此提供一种优选的计算方法,需要说明的是,xσ(n-2)和xσ(3)在嵌入过程中只用作预测,并没有发生任何改变,因此可以利用这些在嵌入过程中没有修改的像素,即(xσ(3),…,xσ(n-4)),来评估所在块的局部复杂度。
以图像块的局部复杂度作为控制参数,来决定一个像素是否适合嵌入数据。对于一个二维图像块X,将环绕块的(r+c+1)像素和块内像素(xσ(4),…,xσ(n-3))构成块的邻域,并计算该邻域的局部复杂度,记为Δi(i∈{1,…,N})。只有复杂度小于或等于预设阈值T的图像块才能用于嵌入信息。将复杂度小于预设阈值T的所有图像块组成一个集合SP,即第一待变换集合,集合中图像块数量记为L。
具体的,用来表示图像块的邻域,x1,r+1,…xc,r+1,xc+1,r+1,xc+1,1,…xc+1,r+1是环绕X的c+r+1个像素。先将X按照像素值升序排序后得到一维向量x={xσ(1),…,xσ(n)},再将在嵌入过程中不发生改变的像素(即{xσ(3),…,xσ(n-2)})值和r+c+1个环绕像素构成一个数据集合,记为GP。
具体的,可以利用评估所述图像块的局部复杂度,表示第一待变换集合SP中所有像素的均值,即
在此对于第一预设阈值T的值不作限定,应由本领域技术人员设定。
此外,计算图像块的局部复杂度时,通常需要按照预设顺序执行,这样可以保证所有的图像块均被计算完毕,有条不紊地计算图像块的局部复杂度。且预设顺序在后续的水印提取过程将会采用。在此对于图像块的局部复杂度的计算预设顺序不作具体限定,只要按照该预设顺序可以遍历所有的图像块即可。
此外,可以理解的是,本步骤旨在计算图像块的局部复杂度,和S104、S105并无直接联系。因此本步骤只需在S103之后、S107之前执行即可。
S107:根据所述差值对所述第一待变换集合中所述图像块计算相应的含密差值,根据所述含密差值判断所述图像块是否需要进行水印嵌入;若是,进入S108;
具体的,如何计算含密差值可以参见表一和表二,表一为三个最大像素xσ(n-2)、xσ(n-1)和xσ(n)的水印嵌入过程的对照表,表二三个最小像素xσ(3)、xσ(2)和xσ(1)的水印嵌入过程的对照表。
表一 三个最大像素xσ(n-2)、xσ(n-1)和xσ(n)的水印嵌入过程
表二 三个最小像素xσ(3)、xσ(2)和xσ(1)的水印嵌入过程
当判断该图像块不适合进行水印嵌入时,则依次对下一个图像块重复进行本步骤中对于图像块是否合适进行水印嵌入的判断,直至所有图像块判断完毕。
S108:对所述图像块进行水印嵌入,并在所述第一待变换集合中的所有所述图像块的水印嵌入结束后完成所述载体图像的水印嵌入。
此时,在最终嵌入水印的过程中,按照从左到右,从上到下的顺序遍历载体图像I′中的每一个图像块,并计算每一个图像块的局部复杂度Δ,如果Δ>T,则跳过该图像块对其不作任何处理;如果Δ≤T,则对该图像块进行水印嵌入。
在S107确定了可进行水印嵌入的图像块后,即可进行对图像块的水印嵌入。在此对于S107和S108具体的执行顺序不作限定,可以在确定一个可以进行水印嵌入的图像块后即刻进行水印嵌入,也可以在确定完所有的图像块后再统一进行水印嵌入。
基于上述实施例,作为优选的实施例,该嵌入方法通常还可以包括:
将一维位置图经算术编码压缩得到二进制比特流;
生成附加信息,并将所述附加信息和载荷以所述图像块为单位逐个嵌入至所述载体图像;所述附加信息至少包括嵌入容量值、所述二进制比特流的大小、所述图像块的大小和嵌入结束位置信息中的一种。
附加信息主要用于后续水印提取过程中,便于水印提取时根据附加信息确定相关信息,例如在水印嵌入时划分的图像块大小,以及确定哪些像素在水印嵌入发生了像素值变化等。
在最终嵌入水印的过程中,按照从左到右,从上到下的顺序遍历图像I中的每一个图像块,并计算每一个图像块的局部复杂度Δ,如果Δ>T,则跳过该图像块对其不作任何处理;如果Δ≤T,则对该图像块进行水印嵌入。
假设载体图像的大小为512×512,则嵌入容量的值可以用18比特二进制表示,图像块的宽度和长度分别用4比特二进制表示,压缩后的一维位置图大小用18比特二进制表示,嵌入结束位置用18比特二进制表示。当然,可以理解的是,附加信息可以因载体图像的大小的变换而变换。
之所以要将附加信息和载荷一起嵌入到图像中,是因为在抽取过程中需要先将这些附加信息提取出来,然后再依靠这些附加信息来进行正确的水印提取和载体图像恢复。特别地,载荷指的是容量。
本申请公开了一种可逆水印的嵌入方法,其特点是:①提出了一种新的预测策略:以图像块的三个最大像素为例,本申请用第三大像素xσ(n-2)去预测大于或等于xσ(n-2)的位置靠前的像素xσ(n-1),同时用xσ(n-1)预测大于或等于xσ(n-2)的位置靠后的像素xσ(n)。该策略使得两个最大像素和两个最小像素都能被它的最近邻的像素预测,从而使得差值的分布更加集中;②本申请根据最大三个像素(或最小三个像素)的不变大小关系来保证的水印正确提取和原始像素的无损恢复,通过以上两种措施使得水印嵌入及提取性能大大提高。
以下对本申请提供的一种可逆水印的提取方法进行介绍,本提取方法针对的图像由上述实施例中所述的可逆水印的嵌入方法所得到的含水印图像。该提取方法具体可以包括:
S201:将所述含水印图像划分成互不重叠的第二图像块;
本步骤和上述实施例中水印嵌入过程中的划分图像块的步骤相似,具体的,可以按照提取出来的块的大小r和c,采用和嵌入过程相同的方式将含密图像分成大小为n=r×c的互不重叠的图像块{X′1,…,X′N}。
进一步的,本步骤之前通常还包括提取最不重要位:即按照和嵌入过程时所述的顺序提取像素的最不重要位,并将提取得到的最不重要位经算术译码后得到位置图。再将位置图经无损压缩得到压缩后的比特流,比特流长度记为LS,按照每个参数的固定长度依次将各个参数提取出来。
S202:按嵌入时相反顺序计算所述第二图像块的局部复杂度;
计算局部复杂度:为了保证算法的可逆性,必须按照和嵌入过程相反的次序恢复原始像素和提取水印信息,同样,也要按照和嵌入过程相反的次序计算复杂度。同样的,在此对于计算第二图像块的局部复杂度的顺序不作限定。优选的,本申请实施例在此提供一种优选的计算局部复杂度的方法:
具体的,对于当前第二图像块X′i(i∈{N,…,1}),可以先将X′i按照一定的顺序(可以与水印嵌入时相同的顺序)排列成一维含密像素序列x′i={x′σ(1),…,x′σ(n),用环绕它的n+1个像素和第二图像块内没有做修改的像素(即{x′σ(3),…,x′σ(n-2)})来计算它的局部复杂度Δi,如果Δi>T,则Xi=X′i;如果Δi≤T,则X′i可以进行水印提取。
S203:将所有所述局部复杂度小于或等于第二预设阈值的所述第二图像块归入第二待变换集合;
本步骤旨在选取第二图像块中可以嵌入水印的图像块。
S204:对所述第二图像块排序得到一维含密像素序列,利用所述一维含密像素序列中的三个最大像素和三个最小像素还原出对应的差值;
本步骤旨在进行修改像素值,实现信息提取:将二维的图像块X′i(i∈{1,…,N})按照升序排列得到排序后的一维像素序列x′i={x′σ(1),…,x′σ(n)},对于三个最大像素(xσ(n-2),x′σ(n-1),x′σ(n)),如果xσ(n-2)<x′σ(n-1)>x′σ(n)且x′σ(n-1)-xσ(n-2)≥2,x′σ(n-1)-x′σ(n)≥2,则xσ(n-1)=x′σ(n-1)-1,xσ(n)=xσ(n);如果xσ(n-2)<x′σ(n-1)>x′σ(n),而x′σ(n-1)-x′σ(n)=1或x′σ(n-1)-xσ(n-2)=1,则先用xσ(n-2)预测x′σ(n-1)得到含密d′l1,并用下面公式提出水印信息b1和恢复出xσ(n-1):
利用恢复出的xσ(n-1)预测x′σ(n)得到的d′l2,用下面公式提出水印信息b2和恢复出xσ(n);
如果xσ(n-2)、x′σ(n-1)和x′σ(n)满足下列条件之一:xσ(n-2)<x′σ(n-1)<x′σ(n)、xσ(n-2)=x′σ(n-1)=x′σ(n)、xσ(n-2)=x′σ(n-1)<x′σ(n)、xσ(n-2)<x′σ(n-1)=x′σ(n),则采用公式(1)恢复出xσ(n-1),在利用恢复出的xσ(n-1)预测x′σ(n)得到的d′l2,用公式(2)提出水印信息b2和恢复出xσ(n)。
对于三个最小像素(xσ(3),x′σ(2),x′σ(1)),如果xσ(3)>x′σ(2)<x′σ(1)且xσ(3)-x′σ(2)≥2,x′σ(1)-x′σ(2)≥2,则xσ(2)=x′σ(2)+1,xσ(1)=xσ(1);如果xσ(3)>x′σ(2)<x′σ(1),而xσ(3)-x′σ(2)=1或x′σ(1)-x′σ(2)=1,则先用xσ(3)预测x′σ(2)得到含密d′s1,并用下面公式提出水印信息b1和恢复出xσ(2):
利用恢复出的xσ(2)预测x′σ(1)得到的d′l2,用下面公式提出水印信息b2和恢复出xσ(1):
如果xσ(3)、x′σ(2)和x′σ(1)满足下列条件之一:xσ(3)=x′σ(2)=x′σ(1)、xσ(3)=x′σ(2)>x′σ(1)、xσ(3)>x′σ(2)>x′σ(1)、xσ(3)>x′σ(2)=x′σ(1),则采用公式(3)恢复出xσ(2),在利用恢复出的xσ(2)预测x′σ(1)得到的d′l2,用公式(4)提出水印信息b2和恢复出xσ(1)。
S205:对所述第二待变化集合中的所有所述第二图像块均进行水印提取,得到所述含水印图像对应的原始图像和水印信息。
信息提取和原始像素恢复:按照步骤S204,依次处理完SP中所有第二图像块后,得到恢复后的原始图像I′和嵌入的水印信息。
对于原始图像I′中的任一个像素,如果其值(即像素值,下同)为1,且位置图中标识为1,则该像素保持不变;如果其值为1,且位置图中相应位置标识为0,则该像素通过减一操作来恢复出原始像素;如果其值为254,且位置图中标识为1,则该像素保持不变;如果其值为254,且位置图中标识为0,则该像素通过加1操作来恢复出原始像素;在值为0、1、254和255的像素被处理之后,即可得到恢复后的最初原始图像。
需要说明的是,原始图像I′和上文水印嵌入过程中的载体图像I′指代同一阶段的图像,容易理解的是,水印的嵌入和提取过程互为逆过程,而本实施例中的水印提取方法基于上文所述的水印的嵌入方法,此处原始图像指的是经过本实施例中的操作恢复至与嵌入过程中相似的图像结构。
本申请还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的可逆水印的嵌入方法或提取方法的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请还提供了一种图像处理终端,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的可逆水印的嵌入方法或提取方法的步骤。当然所述终端还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种可逆水印的嵌入方法,其特征在于,包括:
获取原始载体图像,根据所述原始载体图像中的预设像素值生成一维位置图;所述预设像素值包括0、1、254和255;
对所述一维位置图中像素值为0的像素作加一处理、像素值为255的像素作减一处理,标识至所述原始载体图像后得到载体图像;
将所述载体图像划分成互不重叠的图像块;
对所述图像块排序得到一维像素序列;
利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值;
计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合;
根据所述差值判断所述图像块是否需要进行水印嵌入;
若是,则对所述图像块进行水印嵌入,并在所述第一待变换集合中的所有所述图像块的水印嵌入结束后完成所述原始载体图像的水印嵌入。
2.根据权利要求1所述的嵌入方法,其特征在于,将所述载体图像划分成互不重叠的图像块包括:
将大小为R×C的所述载体图像I′分成大小为r×c的互不重叠的图像块{X1,…,XN},其中R和C分别为所述载体图像I′的宽度和长度,每个所述图像块中的像素数量用n=r×c表示,N为所述图像块的数量。
3.根据权利要求2所述的嵌入方法,其特征在于,计算所述图像块对应的局部复杂度,将所有所述局部复杂度小于或等于第一预设阈值的所述图像块归入第一待变换集合包括:
对于任一个所述图像块Xi,i∈{1,…,N},利用所述一维像素序列中除两个最大像素和两个最小像素以外的像素评估所述图像块的局部复杂度,记为Δi(i∈{1,…,N});将所有所述局部复杂度小于第一预设阈值T的所述图像块组成第一待变换集合SP;其中,所述两个最大像素为所述三个最大像素中的两个较大像素,所述两个最小像素为所述三个最小像素中的两个较小像素。
4.根据权利要求3所述的嵌入方法,其特征在于,利用一维像素序列中三个最大像素和三个最小像素分别按像素序列顺序两两预测得到差值包括:
对于一维像素序列xi={xσ(1),…,xσ(n)}中三个最大像素(xσ(n-2),xσ(n-1),xσ(n)),利用xσ(n-2)预测xσ(n-1)产生出第一差值dl1,即dl1=|xσ(n-2)-xσ(n-1)|;
再用xσ(n-1)预测xσ(n)产生第二差值dl2=|xσ(n)-xσ(n-1)|;
对于所述一维像素序列xi={xσ(1),…,xσ(n)}中三个最小像素(xσ(1),xσ(2),xσ(3)),利用xσ(3)预测xσ(2)产生出第三差值ds1,即ds1=|xσ(3)-xσ(2)|,再用xσ(2)预测xσ(1)产生出第四差值ds2=|xσ(2)-xσ(1)|;
其中,xσ(n-1)表示大于或等于xσ(n-2)的位置靠前的像素,xσ(n)表示大于或等于xσ(n-2)的位置靠后的像素,xσ(2)表示小于或等于xσ(3)的位置靠后的像素,xσ(2)表示小或等于xσ(3)的位置靠前的像素,符号|·|表示绝对值符号。
5.根据权利要求4所述的嵌入方法,其特征在于,根据所述差值判断所述图像块是否需要进行水印嵌入包括:
根据所述三个最大像素或所述三个最小像素的实际大小顺序对应的映射关系对所述差值进行像素值替换,得到含密差值;
根据所述含密差值判断所述图像块是否需要进行水印嵌入。
6.根据权利要求1所述的嵌入方法,其特征在于,还包括:
将所述一维位置图经算术编码压缩得到二进制比特流;
生成附加信息,并将所述附加信息和载荷以所述图像块为单位逐个嵌入至所述载体图像;所述附加信息至少包括嵌入容量值、所述二进制比特流的大小、所述图像块的大小和嵌入结束位置信息中的一种。
7.根据权利要求3所述的嵌入方法,其特征在于,利用所述一维像素序列中除两个最大像素和两个最小像素以外的像素评估所述图像块的局部复杂度包括:
利用评估所述图像块的局部复杂度,其中
8.一种可逆水印的提取方法,其特征在于,应用于由权利要求1-7任一项所述的可逆水印的嵌入方法所得到的含水印图像,包括:
将所述含水印图像划分成互不重叠的第二图像块;
按嵌入时相反顺序计算所述第二图像块的局部复杂度;
将所有所述局部复杂度小于或等于第二预设阈值的所述第二图像块归入第二待变换集合;
对所述第二图像块排序得到一维含密像素序列,利用所述一维含密像素序列中的三个最大像素和三个最小像素还原出对应的差值;
对所述第二待变化集合中的所有所述第二图像块均进行水印提取,得到所述含水印图像对应的原始图像和水印信息。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的嵌入方法的步骤。
10.一种图像处理终端,其特征在于,包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1-7任一项所述的嵌入方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811646012.6A CN109741233B (zh) | 2018-12-29 | 2018-12-29 | 一种可逆水印的嵌入和提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811646012.6A CN109741233B (zh) | 2018-12-29 | 2018-12-29 | 一种可逆水印的嵌入和提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109741233A true CN109741233A (zh) | 2019-05-10 |
CN109741233B CN109741233B (zh) | 2024-01-23 |
Family
ID=66362807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811646012.6A Active CN109741233B (zh) | 2018-12-29 | 2018-12-29 | 一种可逆水印的嵌入和提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109741233B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110533569A (zh) * | 2019-08-06 | 2019-12-03 | 淮阴工学院 | 基于二次差值扩展的水印处理方法 |
CN111163241A (zh) * | 2019-12-10 | 2020-05-15 | 中国科学院深圳先进技术研究院 | 一种可逆信息嵌入方法 |
CN113393364A (zh) * | 2021-07-07 | 2021-09-14 | 福建工程学院 | 一种基于像素值排序的可逆信息隐藏方法 |
CN113537484A (zh) * | 2020-04-14 | 2021-10-22 | 中国人民银行数字货币研究所 | 神经网络训练方法、图像编码和解码方法及相关产品 |
CN113744111A (zh) * | 2021-08-13 | 2021-12-03 | 三维通信股份有限公司 | 水印嵌入方法和装置、水印提取方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101026081B1 (ko) * | 2010-01-22 | 2011-03-31 | 금오공과대학교 산학협력단 | 가역 워터마크 삽입, 추출 및 원본 영상 복원 방법 |
CN102044061A (zh) * | 2010-12-20 | 2011-05-04 | 北京大学 | 一种可逆水印的嵌入方法及其提取方法 |
CN103414840A (zh) * | 2013-07-25 | 2013-11-27 | 西安空间无线电技术研究所 | 一种基于图像集的数据隐藏方法 |
CN104933668A (zh) * | 2015-06-11 | 2015-09-23 | 广东工业大学 | 一种基于局部定位和Alattar整数变换的可逆水印的处理方法 |
CN105741224A (zh) * | 2016-01-28 | 2016-07-06 | 广东工业大学 | 基于pvo和自适应块分割的可逆水印算法 |
CN108109101A (zh) * | 2017-12-20 | 2018-06-01 | 广东工业大学 | 一种基于多媒体数据的信息隐藏方法、装置及设备 |
CN108898542A (zh) * | 2018-07-04 | 2018-11-27 | 广东工业大学 | 一种可逆水印的嵌入和提取方法 |
-
2018
- 2018-12-29 CN CN201811646012.6A patent/CN109741233B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101026081B1 (ko) * | 2010-01-22 | 2011-03-31 | 금오공과대학교 산학협력단 | 가역 워터마크 삽입, 추출 및 원본 영상 복원 방법 |
CN102044061A (zh) * | 2010-12-20 | 2011-05-04 | 北京大学 | 一种可逆水印的嵌入方法及其提取方法 |
CN103414840A (zh) * | 2013-07-25 | 2013-11-27 | 西安空间无线电技术研究所 | 一种基于图像集的数据隐藏方法 |
CN104933668A (zh) * | 2015-06-11 | 2015-09-23 | 广东工业大学 | 一种基于局部定位和Alattar整数变换的可逆水印的处理方法 |
CN105741224A (zh) * | 2016-01-28 | 2016-07-06 | 广东工业大学 | 基于pvo和自适应块分割的可逆水印算法 |
CN108109101A (zh) * | 2017-12-20 | 2018-06-01 | 广东工业大学 | 一种基于多媒体数据的信息隐藏方法、装置及设备 |
CN108898542A (zh) * | 2018-07-04 | 2018-11-27 | 广东工业大学 | 一种可逆水印的嵌入和提取方法 |
Non-Patent Citations (2)
Title |
---|
钱华山等: "基于三像素块差值的多层可逆图像水印算法", 《计算机应用与软件》 * |
钱华山等: "基于三像素块差值的多层可逆图像水印算法", 《计算机应用与软件》, no. 03, 15 March 2017 (2017-03-15), pages 258 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110533569A (zh) * | 2019-08-06 | 2019-12-03 | 淮阴工学院 | 基于二次差值扩展的水印处理方法 |
CN110533569B (zh) * | 2019-08-06 | 2023-03-31 | 淮阴工学院 | 基于二次差值扩展的水印处理方法 |
CN111163241A (zh) * | 2019-12-10 | 2020-05-15 | 中国科学院深圳先进技术研究院 | 一种可逆信息嵌入方法 |
CN111163241B (zh) * | 2019-12-10 | 2021-08-20 | 中国科学院深圳先进技术研究院 | 一种基于预测值相关性的可逆信息隐藏方法 |
CN113537484A (zh) * | 2020-04-14 | 2021-10-22 | 中国人民银行数字货币研究所 | 神经网络训练方法、图像编码和解码方法及相关产品 |
CN113537484B (zh) * | 2020-04-14 | 2024-01-02 | 中国人民银行数字货币研究所 | 用于数字水印的网络训练、编码和解码方法、装置及介质 |
CN113393364A (zh) * | 2021-07-07 | 2021-09-14 | 福建工程学院 | 一种基于像素值排序的可逆信息隐藏方法 |
CN113744111A (zh) * | 2021-08-13 | 2021-12-03 | 三维通信股份有限公司 | 水印嵌入方法和装置、水印提取方法和装置 |
CN113744111B (zh) * | 2021-08-13 | 2024-03-19 | 三维通信股份有限公司 | 水印嵌入方法和装置、水印提取方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109741233B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109741233A (zh) | 一种可逆水印的嵌入和提取方法 | |
CN105741224B (zh) | 基于pvo和自适应块分割的可逆水印算法 | |
CN106023058A (zh) | 一种高保真可逆水印嵌入方法 | |
Hatoum et al. | Using deep learning for image watermarking attack | |
CN108416724B (zh) | 一种基于多预测器的可逆信息隐藏方法 | |
CN108109101A (zh) | 一种基于多媒体数据的信息隐藏方法、装置及设备 | |
CN110334709B (zh) | 基于端到端多任务深度学习的车牌检测方法 | |
Gore et al. | Full reference image quality metrics for JPEG compressed images | |
CN108898542A (zh) | 一种可逆水印的嵌入和提取方法 | |
CN113658182B (zh) | 基于并行多分支特征融合的表面缺陷区域分割方法及装置 | |
CN110009621B (zh) | 一种篡改视频检测方法、装置、设备及可读存储介质 | |
CN109523453A (zh) | 基于菱形预测与图像像素排序的可逆信息隐藏及提取方法 | |
CN109178831B (zh) | 一种皮带机纵向撕裂检测方法 | |
CN106485640A (zh) | 一种基于多层次ipvo的可逆水印计算方法 | |
CN105741225A (zh) | 一种多维预测误差扩展的可逆水印方法 | |
CN113744153A (zh) | 双分支图像修复伪造检测方法、系统、设备及存储介质 | |
CN109859090B (zh) | 基于人类视觉系统的可逆水印方法及装置 | |
CN107169915B (zh) | 一种基于分块合并策略的pvo数字水印方法 | |
Wang et al. | Structure-priority image restoration through genetic algorithm optimization | |
Lee et al. | Reversible data hiding using a piecewise autoregressive predictor based on two-stage embedding | |
CN107292803B (zh) | 一种符合人眼观察规律的可逆鲁棒数字图像水印方法 | |
Lee et al. | High-capacity reversible data hiding based on star-shaped PVO method | |
CN106127670A (zh) | 一种可逆水印图像的处理方法 | |
CN103440616B (zh) | 一种基于自适应预测模型的高容量可逆水印方法 | |
CN108510425B (zh) | 基于ippvo和优化mhm的可逆水印方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |