CN114022337B - 基于菱形预测器的高容量可逆水印方法和装置 - Google Patents

基于菱形预测器的高容量可逆水印方法和装置 Download PDF

Info

Publication number
CN114022337B
CN114022337B CN202110120797.9A CN202110120797A CN114022337B CN 114022337 B CN114022337 B CN 114022337B CN 202110120797 A CN202110120797 A CN 202110120797A CN 114022337 B CN114022337 B CN 114022337B
Authority
CN
China
Prior art keywords
pixel
embedded
pixel point
value
target
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.)
Active
Application number
CN202110120797.9A
Other languages
English (en)
Other versions
CN114022337A (zh
Inventor
唐鑫
储泠
刘小梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Relations, University of
Original Assignee
International Relations, University of
Filing date
Publication date
Application filed by International Relations, University of filed Critical International Relations, University of
Priority to CN202110120797.9A priority Critical patent/CN114022337B/zh
Publication of CN114022337A publication Critical patent/CN114022337A/zh
Application granted granted Critical
Publication of CN114022337B publication Critical patent/CN114022337B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请提出一种基于菱形预测器的高容量可逆水印方法和装置,涉及图像处理技术领域,其中,方法包括:通过将待处理图像的像素点分成两个集合,通过菱形预测器得到一个集合的一对高低预测值,选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据,接着通过菱形预测器得到另一个集合的一对高低预测值,对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。由此,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。

Description

基于菱形预测器的高容量可逆水印方法和装置
技术领域
本申请涉及图像处理技术领域,尤其涉及一种基于菱形预测器的高容量可逆水印方法和装置。
背景技术
目前,数字水印是数字版权保护的重要手段,应实际应用需要,可逆数字水印技术应运而生,其特点在于利用该技术嵌入水印之后,除了能提取出水印信息,还能无失真的恢复原始载体图像。可逆数字水印的可逆性使其很适用于一些高保真应用场景,如医疗、军事等领域。可逆数字水印技术的优劣有两个重要的衡量标准:嵌入容量和失真度,而高嵌入容量一定程度会导致高失真,难以同时实现高嵌入容量和低失真度。为了更好的解决这个问题,提出了很多可逆水印算法来寻找嵌入容量和失真度的优质平衡点,但并没有取得特别好的结果,相关技术中的可逆水印方案最多达到1bpp的嵌入容量,即每个像素点处最多嵌入1bit的二进制数据,随着嵌入数据位数的增多,对图像造成的失真也累计增大。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种基于菱形预测器的高容量可逆水印方法,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。
本申请的第二个目的在于提出一种基于菱形预测器的高容量可逆水印装置。
为达上述目的,本申请第一方面实施例提出了一种基于菱形预测器的高容量可逆水印方法,包括:
S1,获取待处理图像,将所述待处理图像转化为灰度图像,并将所述灰度图像的像素点划分为第一像素集合和第二像素集合;
S2,通过菱形预测器基于所述第一像素集合和所述第二像素集合预测,获取所述第一像素集合中每个像素点对应的第一高预测值和第一低预测值;
S3,计算所述第一像素集合中每个像素点对应的第一波动值,并按照所述第一波动值进行排序,根据排序结果确定所述第一像素集合中每个像素点的第一嵌入顺序;
S4,根据所述第一嵌入顺序确定所述第一像素集合中第一嵌入像素点,并利用所述第一嵌入像素点的第一高预测值对所述第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用所述第一嵌入像素点的第一低预测值对所述第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点;
S5,根据所述第一嵌入顺序依次对所述第一像素集合中每个像素点重复步骤S4的操作,直到所述第一像素集合中每个像素点完成嵌入,获取第一目标像素集合;
S6,通过所述菱形预测器基于所述第一目标像素集合和所述第二像素集合预测,获取所述第二像素集合中每个像素点对应的第二高预测值和第二低预测值;
S7,计算所述第二像素集中每个像素点对应的第二波动值,并按照所述第二波动值进行排序,根据排序结果确定所述第二像素集中每个像素点的第二嵌入顺序;
S8,根据所述第二嵌入顺序确定所述第二像素集合中第二嵌入像素点,并利用所述第二嵌入像素点的第二高预测值对所述第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用所述第二嵌入像素点的第二低预测值对所述第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点;
S9,根据所述第二嵌入顺序依次对所述第二像素集合中每个像素点重复步骤S8的操作,直到所述第二像素集合中每个像素点完成嵌入,获取第二目标像素集合。
S10,根据所述第一目标像素集合和所述第二目标像素集合,生成包含水印的目标图像。
本申请实施例的基于菱形预测器的高容量可逆水印方法,通过将待处理图像的像素点分成两个集合,通过菱形预测器得到一个集合的一对高低预测值,选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据,接着通过菱形预测器得到另一个集合的一对高低预测值,对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。由此,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。
可选地,在本申请的一个实施例中,所述S1,包括:
获取每个像素点的位数的奇偶值;
根据所述位数的奇偶值将所述灰度图像的像素点划分为所述第一像素集合和所述第二像素集合。
可选地,在本申请的一个实施例中,所述S2,包括:
基于所述第一像素集合和所述第二像素集合获取所述第一像素集中每个像素点相邻的上下左右四个像素点;
根据所述四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为所述第一高预测值,以及排最后一位的像素点对应的像素值作为所述第一低预测值。
可选地,在本申请的一个实施例中,所述S6,包括:
基于所述第一目标像素集合和所述第二像素集合获取所述第二像素集中每个像素点相邻的上下左右四个像素点;
根据所述四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为所述第二高预测值,以及排最后一位的像素点对应的像素值作为所述第二低预测值。
可选地,在本申请的一个实施例中,所述计算所述第一像素集中每个像素点对应的第一波动值,包括:
计算所述第一像素集中每个像素点的局部复杂度;
通过公式根据所述局部复杂度计算所述第一像素集中每个像素点的当前像素值的第一波动值。
可选地,在本申请的一个实施例中,所述计算所述第二像素集中每个像素点对应的第二波动值,包括:
计算所述第二像素集中每个像素点的局部复杂度;
通过公式根据所述局部复杂度计算所述第二像素集中每个像素点的当前像素值的第二波动值。
可选地,在本申请的一个实施例中,所述S4,包括:
将所述第一嵌入像素点对应的像素值与所述第一高预测值作差得到第一个预测误差;
对所述第一个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第一高预测值相加,获取所述第一嵌入像素点对应的像素值;
将所述第一嵌入像素点对应的像素值作为初始像素值与所述第一低预测值作差得到第二个预测误差;
对所述第二个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第一低预测值相加,获取所述第一目标嵌入像素点的像素值。
可选地,在本申请的一个实施例中,所述S8,包括:
将所述第二嵌入像素点对应的像素值与所述第二高预测值作差得到第三个预测误差;
对所述第三个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第二高预测值相加,获取所述第二嵌入像素点对应的像素值;
将所述第二嵌入像素点对应的像素值作为初始像素值与所述第二低预测值作差得到第四个预测误差;
对所述第四个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第二低预测值相加,获取所述第二目标嵌入像素点的像素值。
可选地,在本申请的一个实施例中,所述的基于菱形预测器的高容量可逆水印的图像提取方法,包括:
将所述包含水印的目标图像的像素点划分为第一目标像素集合和第二目标像素集合;
通过菱形预测器基于所述第一目标像素集合和所述第二目标像素集合预测,获取所述第二目标像素集合中像素点对应的一对高低预测值,计算所述第二目标像素集合中像素点的第二目标波动值,根据所述第二目标波动值的排序结果确定嵌入数据时像素点的第二嵌入顺序;
根据所述第二目标像素集合中像素点对应的一对高低预测值和所述第二嵌入顺序对所述第二目标像素集合中的嵌入数据进行第一提取;
通过所述菱形预测器基于进行第一提取处理后的第二目标像素集合和所述第一目标像素集合预测,获取所述第一目标像素集合中像素点对应的另一对高低预测值,计算所述第一目标像素集合中像素点的第一目标波动值,根据所述第一目标波动值的排序结果确定嵌入数据时像素点的第一嵌入顺序;
根据另一对高低预测值所述第一嵌入顺序对第一提取后的像素集合中的嵌入数据进行第二提取,获取恢复图像。
为达上述目的,本申请第二方面实施例提出了一种基于菱形预测器的高容量可逆水印装置,包括:
获取划分模块,用于获取待处理图像,将所述待处理图像转化为灰度图像,并将所述灰度图像的像素点划分为第一像素集合和第二像素集合;
第一预测模块,用于通过菱形预测器基于所述第一像素集合和所述第二像素集合预测,获取所述第一像素集合中每个像素点对应的第一高预测值和第一低预测值;
第一计算模块,用于计算所述第一像素集合中每个像素点对应的第一波动值,并按照所述第一波动值进行排序,根据排序结果确定所述第一像素集合中每个像素点的第一嵌入顺序;
第一获取模块,用于根据所述第一嵌入顺序确定所述第一像素集合中第一嵌入像素点,并利用所述第一嵌入像素点的第一高预测值对所述第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用所述第一嵌入像素点的第一低预测值对所述第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点;
第一嵌入模块,用于根据所述第一嵌入顺序依次对所述第一像素集合中每个像素点重复所述第一获取模块的操作,直到所述第一像素集合中每个像素点完成嵌入,获取第一目标像素集合;
第二预测模块,用于通过所述菱形预测器基于所述第一目标像素集合和所述第二像素集合预测,获取所述第二像素集合中每个像素点对应的第二高预测值和第二低预测值;
第二计算模块,用于计算所述第二像素集中每个像素点对应的第二波动值,并按照所述第二波动值进行排序,根据排序结果确定所述第二像素集中每个像素点的第二嵌入顺序;
第二获取模块,用于根据所述第二嵌入顺序确定所述第二像素集合中第二嵌入像素点,并利用所述第二嵌入像素点的第二高预测值对所述第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用所述第二嵌入像素点的第二低预测值对所述第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点;
第二嵌入模块,用于根据所述第二嵌入顺序依次对所述第二像素集合中每个像素点重复所述第二获取模块的操作,直到所述第二像素集合中每个像素点完成嵌入,获取第二目标像素集合;
生成模块,用于根据所述第一目标像素集合和所述第二目标像素集合,生成包含水印的目标图像。
本申请实施例的基于菱形预测器的高容量可逆水印装置,通过将待处理图像的像素点分成两个集合,通过菱形预测器得到一个集合的一对高低预测值,选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据,接着通过菱形预测器得到另一个集合的一对高低预测值,对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。由此,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例一所提供的一种基于菱形预测器的高容量可逆水印方法的流程示意图;
图2为本申请实施例的像素点被分成点集和叉集的示例图;
图3为本申请实施例的菱形区域5个像素值示例图;
图4为本申请实施例的区域内像素点编号示例图;
图5为本申请实施例的中心点P的相邻像素点示例图;
图6为本申请实施例的使用高低预测器进行双层嵌入示意图;
图7为本申请实施例的基于菱形预测器的高容量可逆水印生成和提取的示意图;
图8为本申请实施例所提供的一种基于菱形预测器的高容量可逆水印装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的基于菱形预测器的高容量可逆水印方法和装置。
图1为本申请实施例一所提供的一种基于菱形预测器的高容量可逆水印方法的流程示意图。
具体地,在已有的基于预测误差扩展的可逆数字水印算法当中,最理想情况下也只能达到每个像素点嵌入1bit数据,因此认为嵌入容量想得到更大提升需得提出一个新的嵌入框架,这个框架不仅能提供较大的嵌入容量,还应该尽可能减缓嵌入数据对图像造成的失真影响。
本申请提出了一种基于菱形预测器的高容量可逆水印方法,在菱形预测的基础上实现了数据双层嵌入,即理想情况下每个像素点最多可嵌入2bit数据,并且尽可能的削弱了两次预测误差扩展造成的图像失真。步骤如下:将像素点分成两个集合;通过菱形预测器得到一对高低预测值;选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据;对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。
如图1所示,该基于菱形预测器的高容量可逆水印方法包括以下步骤:
步骤S1,获取待处理图像,将待处理图像转化为灰度图像,并将灰度图像的像素点划分为第一像素集合和第二像素集合。
在本申请实施例中,获取每个像素点的位数的奇偶值;根据位数的奇偶值将灰度图像的像素点划分为第一像素集合和第二像素集合。
具体地,如图2所示,将图片转化为灰度图像后进行分组,根据位数的奇偶值将像素点分为点集和叉集,此以中心像素是点集为例。
具体地,如图3,像素点xi,j的上下左右四个像素xi-1,j,xi+1,j,xi,j-1,xi,j+1均来自叉集。需要注意的是,图像的边缘一圈像素由于没有完整的相邻像素,所以不进行嵌入。
步骤S2,通过菱形预测器基于第一像素集合和第二像素集合预测,获取第一像素集合中每个像素点对应的第一高预测值和第一低预测值。
在本申请实施例中,获取第一像素集中每个像素点相邻的上下左右四个像素点;根据四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为第一高预测值,以及排最后一位的像素点对应的像素值作为第一低预测值。
具体地,高低预测值的选取需要使用图3中上下左右4个像素值,因为嵌入数据前后这4个像素值并未改变数值,所以在提取时可以采取同样的方法得到高低预测值,从而恢复原像素值。基于前述要点,选取高低预测值有很多种方法,此处以两种可行的取值方案为例进行说明。
具体地,将与中心像素点相邻的上下左右四个像素点{xi-1,j,xi+1,j,xi,j-1,xi,j+1}(如图3所示)按从小到大顺序进行排序,得到新的序列:x1<x2<x3<x4,设高预测值为Ph,低预测值为Pl,得Ph=x4,Pl=x1
具体地,将与中心像素点相邻的上下左右四个像素点{xi-1,j,xi+1,j,xi,j-1,xi,j+1}(见图3)按从小到大顺序进行排序,得到新的序列:x1<x2<x3<x4,设高预测值为Ph,低预测值为Pl,得:
步骤S3,计算第一像素集中每个像素点对应的第一波动值,并按照第一波动值进行排序,根据排序结果确定第一像素集中每个像素点的第一嵌入顺序。
步骤S4,根据第一嵌入顺序确定第一像素集合中第一嵌入像素点,并利用第一嵌入像素点的第一高预测值对第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用第一嵌入像素点的第一低预测值对第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点。
步骤S5,根据第一嵌入顺序依次对第一像素集合中每个像素点重复步骤S4的操作,直到第一像素集合中每个像素点完成嵌入,获取第一目标像素集合。
在本申请实施例中,计算第一像素集中每个像素点的局部复杂度,通过公式根据局部复杂度计算第一像素集中每个像素点的当前像素值的第一波动值。
具体地,波动值一定程度上反映了该菱形区域的平滑性,较为平滑的地区往往能取得较准确的预测结果,故通过计算每个待嵌入中心点的波动值来获取嵌入顺序是可行的,具体如下:1.利用属于另一点集的像素点计算得到每个待嵌入中心像素点的波动值;2.将波动值按从小到大的顺序排列并一一映射到其对应的像素点;3.按照波动值排序得到的像素点序列依次嵌入数据。
同样,满足条件的波动值计算方法也有很多种,具体地,选取点集优先嵌入作为示例。
首先计算点集中每个像素的局部复杂度,公式如下:
Ωp=|a-b|+|b-c|+|a+c-b-d|+|c+d-a-b| (1)
其中,a,b,c和d是与像素点P相邻的上、左、右和下像素值,如图5所示。
为了更准确地测算像素区域的平滑度,结合其相邻像素值的局部复杂度来计算当前像素值的波动值F,以图4中的像素值为例,像素点P1的波动值F的计算如下:
图4中像素点P2的波动值计算F为:
同理,图3中像素点P4的波动值计算为:
具体地,如图5所示中心像素点的周围有四点a,b,c,d,首先计算四点均值m:将四个点两两组成一组,分别计算其均值mi
具体地,将6个像素对均值分别与m作差,得到di
具体地,计算波动值F:F=d1+d2+d3+d4+d5+d6.
在本申请实施例中,将第一嵌入像素点对应的像素值与第一高预测值作差得到第一个预测误差;对所述第一个预测误差进行扩展,获取预测误差;将预测误差和第一高预测值相加,获取第一嵌入像素点对应的像素值;将第一嵌入像素点对应的像素值作为初始像素值与第一低预测值作差得到第二个预测误差;对第二个预测误差进行扩展,获取预测误差;将预测误差和第一低预测值相加,获取第一目标嵌入像素点的像素值。
具体地,首先将点集中的所有像素点按照各自的波动值进行从小到大的排序,排序后的像素值序列将被用于嵌入数据,每个像素点需依次利用高低预测值嵌入数据,此处以先使用高预测值后使用低预测值嵌入数据为例(如图6所示)。
具体地,将点xi,j的像素值与高预测值作差得到第一个预测误差/>用于下一步预测误差扩展嵌入信息:
具体地,将第一个预测误差乘以2,即相当于其二进制表示情况下将所有数字向左移动一位,空出最低比特位以用来嵌入信息,从而得到扩展后的预测误差/>
具体地,完成预测误差的扩展后,将扩展的预测误差加到高预测值中,得到第一轮嵌入结束后的像素值x'i,j
具体地,第一层嵌入结束,开始第二层嵌入,以嵌入一轮结束的像素值x'i,j为初始像素值,使用低预测值作差得到第二个预测误差
具体地,使用同样的预测误差扩展方法对进行预测误差扩展:
具体地,将扩展后的第二个预测误差加到低预测值/>中,得到嵌入两轮过后的像素值x”i,j
步骤S6,通过菱形预测器基于第一目标像素集合和第二像素集合预测,获取第二像素集合中每个像素点对应的第二高预测值和第二低预测值。
在本申请实施例中,获取第二像素集合中每个像素点对应的第二高预测值和第二低预测值,包括:获取第二像素集中每个像素点相邻的上下左右四个像素点;根据四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为第二高预测值,以及排最后一位的像素点对应的像素值作为第二低预测值。
具体参见上述对于第一高预测值和第一低预测值的描述,此处不再详述。
步骤S7,计算第二像素集中每个像素点对应的第二波动值,并按照第二波动值进行排序,根据排序结果确定第二像素集中每个像素点的第二嵌入顺序。
步骤S8,根据第二嵌入顺序确定第二像素集合中第二嵌入像素点,并利用第二嵌入像素点的第二高预测值对第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用第二嵌入像素点的第二低预测值对第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点。
在本申请实施例中,将第二嵌入像素点对应的像素值与第二高预测值作差得到第三个预测误差;对第三个预测误差进行扩展,获取预测误差;将预测误差和第二高预测值相加,获取第二嵌入像素点对应的像素值;将第二嵌入像素点对应的像素值作为初始像素值与第二低预测值作差得到第四个预测误差;对第四个预测误差进行扩展,获取预测误差;将预测误差和第二低预测值相加,获取第二目标嵌入像素点的像素值。
步骤S9,根据第二嵌入顺序依次对第二像素集合中每个像素点重复步骤S8的操作,直到第二像素集合中每个像素点完成嵌入,获取第二目标像素集合。
在本申请实施例中,计算第二像素集合中每个像素点的局部复杂度;通过公式根据局部复杂度计算第二像素集中每个像素点的当前像素值的第二波动值。
需要说明的是,第二像素集合的像素点的处理与上述相同,此处不再详述描述。
步骤S10,根据第一目标像素集合和第二目标像素集合,生成包含水印的目标图像。
需要说明的是,除了嵌入数据造成的失真度如何的问题,在嵌入过程中还需要考虑如何预防上下溢出问题,即像素点经过嵌入数据后其像素值超过[0,255]这个灰度图像像素值区间,例如一个像素点像素值为254,其高预测值为255,低预测值为253,两层嵌入的数据都是比特1,第一层嵌入结束后其像素值为255,第二层嵌入结束后像素值达到了256,发生了溢出,这样的点就不能嵌入数据。为了解决这个问题,在正规嵌入数据前对所有像素点进行一次试验嵌入:此处若像素点小于128,则应两轮都应嵌1,使最后像素值尽可能大,若此种情况下都溢出了,那该点无论嵌什么都会低于0,位置图标为1;若像素点大于128,应两轮都嵌0,是最后像素值尽可能小,若此时还是溢出了,那该点无论嵌什么都会超过255,位置图标为1。经过试验后我们得到了所有可能溢出的点,在嵌入数据前先判断一下位置图的对应位置是否为1,若为1则该点不嵌入数据。
基于上述描述可以了解本申请生成的目标图像是可逆的,还可以对图像进行提取,具体地,将所述包含水印的目标图像的像素点划分为第一目标像素集合和第二目标像素集合;通过菱形预测器基于第一目标像素集合和第二目标像素集合预测,获取第二目标像素集合中像素点对应的一对高低预测值,计算所述第二目标像素集合中像素点的第二目标波动值,根据所述第二目标波动值的排序结果确定嵌入数据时像素点的第二嵌入顺序;根据所述第二目标像素集合中像素点对应的一对高低预测值和所述第二嵌入顺序对所述第二目标像素集合中的嵌入数据进行第一提取;通过菱形预测器基于进行第一提取处理后的第二目标像素集合和第一目标像素集合预测,获取第一目标像素集合中像素点对应的另一对高低预测值,计算第一目标像素集合中像素点的第一目标波动值,根据第一目标波动值的排序结果确定嵌入数据时像素点的第一嵌入顺序;根据另一对高低预测值第一嵌入顺序对第一提取后的像素集合中的嵌入数据进行第二提取,获取恢复图像。
具体地,在可逆数字水印当中,提取模块所作的工作其实就是嵌入工作的逆过程。上面我们先向点集嵌入再向叉集嵌入,先用高预测值嵌入再用低预测值嵌入,那么恢复时则需要先提取叉集里嵌入的数据并恢复图像,然后再用相同的方法对点集进行操作,其提取数据的过程都得先用低预测值提取再用高预测值提取才能顺利提取出隐藏信息并恢复原始图像。
具体地,为了确定提取的顺序,需要计算每个叉集像素点的波动值,并将波动值按升序排序,结合位置图的标记,得到嵌入数据时像素点的顺序,此即也是提取数据时选定像素点的顺序;使用和嵌入数据之前得到高低预测值的同样方法,再次计算得到高低预测值Ph和Pl;将嵌入了两层信息后的像素值x”i,j减去低预测值得到第二个预测误差扩展后的值/>
具体地,在嵌入数据时利用了预测误差扩展的方式将嵌入信息放在了扩展后预测误差的最低位,所以在提取时,只需要对扩展后的预测误差进行模2运算即可提取出隐藏在其中的信息:
具体地,提取完第二层数据后需要将像素值x”i,j恢复到第二层数据嵌入前的值x'i,j
具体地,将第二层提取结束后恢复而来的像素值x'i,j减去高预测值得到第一层经过扩展的预测误差/>
具体地,从第一层的预测误差中采取同样的方法提取出隐藏在其中的信息:
具体地,提取完第一层的数据后需要将像素值x'i,j恢复为初始像素值xi,j
作为一种场景举例,如图7所示,在传统的基于预测误差扩展的菱形预测嵌入方案基础上提出了新的嵌入框架,在该框架下,每个像素点依次向高低两个方向进行预测误差扩展嵌入数据,实现了每个像素点最高嵌入2bit数据,大大提升了嵌入容量,而且使用高低预测值向两边扩展这种嵌入方法,可以一定程度上抵消嵌入数据对图像造成的失真,这保证了在高嵌入容量的情况下也能实现较好的失真度,相较以往的可逆水印方案有了很大提升。
本申请实施例的基于菱形预测器的高容量可逆水印方法,通过将待处理图像的像素点分成两个集合,通过菱形预测器得到一个集合的一对高低预测值,选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据,接着通过菱形预测器得到另一个集合的一对高低预测值,对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。由此,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。
为了实现上述实施例,本申请还提出一种基于菱形预测器的高容量可逆水印装置。
图8为本申请实施例提供的一种基于菱形预测器的高容量可逆水印装置的结构示意图。
如图8所示,该基于菱形预测器的高容量可逆水印装置包括:获取划分模块201、第一预测模块202、第一计算模块203、第一获取模块204、第一嵌入模块205、第一预测模块206、第二计算模块207、第二获取模块208、第二嵌入模块209和生成模块210。
获取划分模块201,用于获取待处理图像,将所述待处理图像转化为灰度图像,并将所述灰度图像的像素点划分为第一像素集合和第二像素集合。
第一预测模块202,用于通过菱形预测器基于所述第一像素集合和所述第二像素集合预测,获取所述第一像素集合中每个像素点对应的第一高预测值和第一低预测值。
第一计算模块203,用于计算所述第一像素集合中每个像素点对应的第一波动值,并按照所述第一波动值进行排序,根据排序结果确定所述第一像素集合中每个像素点的第一嵌入顺序。
第一获取模块204,用于根据所述第一嵌入顺序确定所述第一像素集合中第一嵌入像素点,并利用所述第一嵌入像素点的第一高预测值对所述第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用所述第一嵌入像素点的第一低预测值对所述第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点。
第一嵌入模块205,用于根据所述第一嵌入顺序依次对所述第一像素集合中每个像素点重复所述第一获取模块的操作,直到所述第一像素集合中每个像素点完成嵌入,获取第一目标像素集合。
第二预测模块206,用于通过所述菱形预测器基于所述第一目标像素集合和所述第二像素集合预测,获取所述第二像素集合中每个像素点对应的第二高预测值和第二低预测值。
第二计算模块207,用于计算所述第二像素集中每个像素点对应的第二波动值,并按照所述第二波动值进行排序,根据排序结果确定所述第二像素集中每个像素点的第二嵌入顺序。
第二获取模块208,用于根据所述第二嵌入顺序确定所述第二像素集合中第二嵌入像素点,并利用所述第二嵌入像素点的第二高预测值对所述第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用所述第二嵌入像素点的第二低预测值对所述第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点。
第二嵌入模块209,用于根据所述第二嵌入顺序依次对所述第二像素集合中每个像素点重复所述第二获取模块的操作,直到所述第二像素集合中每个像素点完成嵌入,获取第二目标像素集合。
生成模块210,用于根据所述第一目标像素集合和所述第二目标像素集合,生成包含水印的目标图像。
本申请实施例的基于菱形预测器的高容量可逆水印装置,通过将待处理图像的像素点分成两个集合,通过菱形预测器得到一个集合的一对高低预测值,选定一个集合通过波动值排序对每个点依次采用高低预测值嵌入数据,接着通过菱形预测器得到另一个集合的一对高低预测值,对另一个集合同样通过波动值排序对每个点依次采用高低预测值嵌入数据。由此,实现了两次嵌入数据造成的失真互相抵消的方案,改善了嵌入数据对原图像的失真影响,大大提升了嵌入容量,实现了更好的嵌入效果。
需要说明的是,前述对基于菱形预测器的高容量可逆水印方法实施例的解释说明也适用于该实施例的基于菱形预测器的高容量可逆水印装置,此处不再赘述。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (10)

1.一种基于菱形预测器的高容量可逆水印方法,其特征在于,包括以下步骤:
S1,获取待处理图像,将所述待处理图像转化为灰度图像,并将所述灰度图像的像素点划分为第一像素集合和第二像素集合;
S2,通过菱形预测器基于所述第一像素集合和所述第二像素集合预测,获取所述第一像素集合中每个像素点对应的第一高预测值和第一低预测值;
S3,计算所述第一像素集合中每个像素点对应的第一波动值,并按照所述第一波动值进行排序,根据排序结果确定所述第一像素集合中每个像素点的第一嵌入顺序;
S4,根据所述第一嵌入顺序确定所述第一像素集合中第一嵌入像素点,并利用所述第一嵌入像素点的第一高预测值对所述第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用所述第一嵌入像素点的第一低预测值对所述第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点;
S5,根据所述第一嵌入顺序依次对所述第一像素集合中每个像素点重复步骤S4的操作,直到所述第一像素集合中每个像素点完成嵌入,获取第一目标像素集合;
S6,通过所述菱形预测器基于所述第一目标像素集合和所述第二像素集合预测,获取所述第二像素集合中每个像素点对应的第二高预测值和第二低预测值;
S7,计算所述第二像素集中每个像素点对应的第二波动值,并按照所述第二波动值进行排序,根据排序结果确定所述第二像素集中每个像素点的第二嵌入顺序;
S8,根据所述第二嵌入顺序确定所述第二像素集合中第二嵌入像素点,并利用所述第二嵌入像素点的第二高预测值对所述第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用所述第二嵌入像素点的第二低预测值对所述第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点;
S9,根据所述第二嵌入顺序依次对所述第二像素集合中每个像素点重复步骤S8的操作,直到所述第二像素集合中每个像素点完成嵌入,获取第二目标像素集合;
S10,根据所述第一目标像素集合和所述第二目标像素集合,生成包含水印的目标图像。
2.如权利要求1所述的方法,其特征在于,所述S1,包括:
获取每个像素点的位数的奇偶值;
根据所述位数的奇偶值将所述灰度图像的像素点划分为所述第一像素集合和所述第二像素集合。
3.如权利要求1所述的方法,其特征在于,所述S2,包括:
基于所述第一像素集合和所述第二像素集合获取所述第一像素集中每个像素点相邻的上下左右四个像素点;
根据所述四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为所述第一高预测值,以及排最后一位的像素点对应的像素值作为所述第一低预测值。
4.如权利要求1所述的方法,其特征在于,所述S6,包括:
基于所述第一目标像素集合和所述第二像素集合获取所述第二像素集中每个像素点相邻的上下左右四个像素点;
根据所述四个像素点的像素值进行排序,获取排首位的像素点对应的像素值作为所述第二高预测值,以及排最后一位的像素点对应的像素值作为所述第二低预测值。
5.如权利要求1所述的方法,其特征在于,所述计算所述第一像素集中每个像素点对应的第一波动值,包括:
计算所述第一像素集中每个像素点的局部复杂度;
通过公式根据所述局部复杂度计算所述第一像素集中每个像素点的当前像素值的第一波动值。
6.如权利要求1所述的方法,其特征在于,所述计算所述第二像素集中每个像素点对应的第二波动值,包括:
计算所述第二像素集中每个像素点的局部复杂度;
通过公式根据所述局部复杂度计算所述第二像素集中每个像素点的当前像素值的第二波动值。
7.如权利要求1所述的方法,其特征在于,所述S4,包括:
将所述第一嵌入像素点对应的像素值与所述第一高预测值作差得到第一个预测误差;
对所述第一个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第一高预测值相加,获取所述第一嵌入像素点对应的像素值;
将所述第一嵌入像素点对应的像素值作为初始像素值与所述第一低预测值作差得到第二个预测误差;
对所述第二个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第一低预测值相加,获取所述第一目标嵌入像素点的像素值。
8.如权利要求1所述的方法,其特征在于,所述S8,包括:
将所述第二嵌入像素点对应的像素值与所述第二高预测值作差得到第三个预测误差;
对所述第三个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第二高预测值相加,获取所述第二嵌入像素点对应的像素值;
将所述第二嵌入像素点对应的像素值作为初始像素值与所述第二低预测值作差得到第四个预测误差;
对所述第四个预测误差进行扩展,获取预测误差;
将所述预测误差和所述第二低预测值相加,获取所述第二目标嵌入像素点的像素值。
9.如权利要求1-8任一项所述的基于菱形预测器的高容量可逆水印方法,其特征在于,还包括图像提取步骤,该图像提取步骤包括:
将所述包含水印的目标图像的像素点划分为第一目标像素集合和第二目标像素集合;
通过菱形预测器基于所述第一目标像素集合和所述第二目标像素集合预测,获取所述第二目标像素集合中像素点对应的一对高低预测值,计算所述第二目标像素集合中像素点的第二目标波动值,根据所述第二目标波动值的排序结果确定嵌入数据时像素点的第二嵌入顺序;
根据所述第二目标像素集合中像素点对应的一对高低预测值和所述第二嵌入顺序对所述第二目标像素集合中的嵌入数据进行第一提取;
通过所述菱形预测器基于进行第一提取处理后的第二目标像素集合和所述第一目标像素集合预测,获取所述第一目标像素集合中像素点对应的另一对高低预测值,计算所述第一目标像素集合中像素点的第一目标波动值,根据所述第一目标波动值的排序结果确定嵌入数据时像素点的第一嵌入顺序;
根据另一对高低预测值所述第一嵌入顺序对第一提取后的像素集合中的嵌入数据进行第二提取,获取恢复图像。
10.一种基于菱形预测器的高容量可逆水印装置,其特征在于,包括:
获取划分模块,用于获取待处理图像,将所述待处理图像转化为灰度图像,并将所述灰度图像的像素点划分为第一像素集合和第二像素集合;
第一预测模块,用于通过菱形预测器基于所述第一像素集合和所述第二像素集合预测,获取所述第一像素集合中每个像素点对应的第一高预测值和第一低预测值;
第一计算模块,用于计算所述第一像素集合中每个像素点对应的第一波动值,并按照所述第一波动值进行排序,根据排序结果确定所述第一像素集合中每个像素点的第一嵌入顺序;
第一获取模块,用于根据所述第一嵌入顺序确定所述第一像素集合中第一嵌入像素点,并利用所述第一嵌入像素点的第一高预测值对所述第一嵌入像素点进行嵌入,获取第一候选嵌入像素点,并利用所述第一嵌入像素点的第一低预测值对所述第一候选嵌入像素点进行嵌入,获取第一目标嵌入像素点;
第一嵌入模块,用于根据所述第一嵌入顺序依次对所述第一像素集合中每个像素点重复所述第一获取模块的操作,直到所述第一像素集合中每个像素点完成嵌入,获取第一目标像素集合;
第二预测模块,用于通过所述菱形预测器基于所述第一目标像素集合和所述第二像素集合预测,获取所述第二像素集合中每个像素点对应的第二高预测值和第二低预测值;
第二计算模块,用于计算所述第二像素集中每个像素点对应的第二波动值,并按照所述第二波动值进行排序,根据排序结果确定所述第二像素集中每个像素点的第二嵌入顺序;
第二获取模块,用于根据所述第二嵌入顺序确定所述第二像素集合中第二嵌入像素点,并利用所述第二嵌入像素点的第二高预测值对所述第二嵌入像素点进行嵌入,获取第二候选嵌入像素点,并利用所述第二嵌入像素点的第二低预测值对所述第二候选嵌入像素点进行嵌入,获取第二目标嵌入像素点;
第二嵌入模块,用于根据所述第二嵌入顺序依次对所述第二像素集合中每个像素点重复所述第二获取模块的操作,直到所述第二像素集合中每个像素点完成嵌入,获取第二目标像素集合;
生成模块,用于根据所述第一目标像素集合和所述第二目标像素集合,生成包含水印的目标图像。
CN202110120797.9A 2021-01-28 基于菱形预测器的高容量可逆水印方法和装置 Active CN114022337B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110120797.9A CN114022337B (zh) 2021-01-28 基于菱形预测器的高容量可逆水印方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110120797.9A CN114022337B (zh) 2021-01-28 基于菱形预测器的高容量可逆水印方法和装置

Publications (2)

Publication Number Publication Date
CN114022337A CN114022337A (zh) 2022-02-08
CN114022337B true CN114022337B (zh) 2024-06-07

Family

ID=

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005109338A1 (en) * 2004-05-10 2005-11-17 Koninklijke Philips Electronics N.V. Method of detecting watermarks
CN106023058A (zh) * 2016-05-25 2016-10-12 广东工业大学 一种高保真可逆水印嵌入方法
CN106485640A (zh) * 2016-08-25 2017-03-08 广东工业大学 一种基于多层次ipvo的可逆水印计算方法
WO2020051953A1 (zh) * 2018-09-10 2020-03-19 五邑大学 基于预测误差加法扩展的可逆图像水印方法及装置
CN113919996A (zh) * 2020-07-09 2022-01-11 国际关系学院 可逆数字水印方法及装置
CN114004724A (zh) * 2020-09-02 2022-02-01 国际关系学院 基于改进权重预测器的可逆水印方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005109338A1 (en) * 2004-05-10 2005-11-17 Koninklijke Philips Electronics N.V. Method of detecting watermarks
CN106023058A (zh) * 2016-05-25 2016-10-12 广东工业大学 一种高保真可逆水印嵌入方法
CN106485640A (zh) * 2016-08-25 2017-03-08 广东工业大学 一种基于多层次ipvo的可逆水印计算方法
WO2020051953A1 (zh) * 2018-09-10 2020-03-19 五邑大学 基于预测误差加法扩展的可逆图像水印方法及装置
CN113919996A (zh) * 2020-07-09 2022-01-11 国际关系学院 可逆数字水印方法及装置
CN114004724A (zh) * 2020-09-02 2022-02-01 国际关系学院 基于改进权重预测器的可逆水印方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
A novel Diamond-Mean predictor for reversible watermarking of images;Muhammad Ishtiaq 等;Journal of Applied Research and Technology 15 (2018);20171213;第524–532页 *
High‑fdelity reversible data hiding using novel comprehensive rhombus predictor;Rajeev Kumar 等;Multimedia Tools and Applications;20240316;全文 *
Improved Weighted Average-based Rhombus Predictor in Reversible Data Hiding Using Prediction Error Expansion;Ling Chu 等;2021 IEEE the 6th International Conference on Computer and Communication Systems;20210621;第6-11页 *
Reversible data hiding based on improved rhombus predictor and prediction error expansion;Xin Tang 等;2020 IEEE 19th International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom);20210209;第13-21页 *
基于LASSO的可逆图像水印算法;郑鸿昌;王春桃;王俊祥;;计算机应用;20180330(第08期);第153-158页 *
基于预测误差修改和直方图移动的可逆信息隐藏算法研究;宋湉;知网研学;20220630;全文 *

Similar Documents

Publication Publication Date Title
Arham et al. Multiple layer data hiding scheme based on difference expansion of quad
CN112862689B (zh) 一种图像超分辨率重建方法及系统
US20070071282A1 (en) Digital watermark embedding apparatus and method, and digital watermark detection apparatus and method
JP2003092707A (ja) 不良ピクセルを検出し補正するセンサ装置
JP2007201530A (ja) 画素欠陥補正装置
CN111898136A (zh) 一种基于预测误差值排序的高保真可逆信息隐藏方法和装置
CN114399419B (zh) 基于预测误差扩展的可逆图像水印算法
CN114638836B (zh) 基于高度有效驱动与多层级特征融合的城市街景分割方法
Uyyala et al. Reversible data hiding using improved gradient based prediction and adaptive histogram bin shifting
CN113032813A (zh) 基于改进的像素局部复杂度计算和多峰嵌入的可逆信息隐藏方法
CN114022336A (zh) 基于块间预测误差直方图平移的可逆图像水印方法及装置
CN116030357A (zh) 一种高分辨率遥感图像变化检测深度网络及检测方法
CN114022337B (zh) 基于菱形预测器的高容量可逆水印方法和装置
JP2010035173A (ja) 画像処理装置および画像処理方法
CN114022337A (zh) 基于菱形预测器的高容量可逆水印方法和装置
CN104732508B (zh) 基于分布式压缩感知的图像融合方法
CN108510425B (zh) 基于ippvo和优化mhm的可逆水印方法
JP4169267B2 (ja) 画像改ざん検知装置およびその保存データの復元方法
CN116385369A (zh) 深度图像质量评价方法、装置、电子设备及存储介质
CN109389546B (zh) 多分块可逆水印嵌入方法及装置、水印提取方法及装置
CN115423697A (zh) 图像修复方法、终端及计算机存储介质
CN114648446A (zh) 视频处理方法和装置
Yang et al. Improving visual quality of reversible data hiding in medical image with texture area contrast enhancement
CN114219738A (zh) 单幅图像多尺度超分辨重建网络结构及方法
CN113536971A (zh) 一种基于增量学习的目标检测方法

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant