CN103310406B - 基于直方图对的图像可逆数据隐藏方法 - Google Patents

基于直方图对的图像可逆数据隐藏方法 Download PDF

Info

Publication number
CN103310406B
CN103310406B CN201310254398.7A CN201310254398A CN103310406B CN 103310406 B CN103310406 B CN 103310406B CN 201310254398 A CN201310254398 A CN 201310254398A CN 103310406 B CN103310406 B CN 103310406B
Authority
CN
China
Prior art keywords
data
histogram
value
psnr
embedding
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.)
Expired - Fee Related
Application number
CN201310254398.7A
Other languages
English (en)
Other versions
CN103310406A (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.)
Tongji University
Original Assignee
Tongji University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tongji University filed Critical Tongji University
Priority to CN201310254398.7A priority Critical patent/CN103310406B/zh
Publication of CN103310406A publication Critical patent/CN103310406A/zh
Application granted granted Critical
Publication of CN103310406B publication Critical patent/CN103310406B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

基于直方图对的图像可逆数据隐藏方法,本发明属于数据隐藏技术领域,可被应用在医学、法律和军事等敏感领域。本发明方法涉及能影响PSNR的四个参数,通过自动搜索确定出四个最优参数,即同时完成嵌入数据。过程中,当出现嵌入后溢出情况,本发明采取评价函数,自动搜索确定出最优压缩点,并用灰度范围阈值TL(左)和TR(右)作直方图最优调整;在数据嵌入环节,采用正负双向扫描的直方图对方法,逐次预测误差。本发明方法PSNR值高,效率高,视觉效果好。

Description

基于直方图对的图像可逆数据隐藏方法
技术领域
本发明属于数据隐藏技术领域,具体涉及一种无损数据隐藏方法,可被应用在医学、法律和军事等敏感领域。
背景技术
无损数据隐藏是数据隐藏领域的一个分支,它不但能恢复嵌入的隐藏数据,而且数据提取后原始图像也能得到完全恢复。
现有技术中,已有的各种无损数据隐藏方法:
Fridrich的LSB方法,即J.Fridrich等人对图像空域的最不重要位平面(LeastSignificantBit,LSB)进行无损压缩,在压缩后腾出的剩余空间中嵌入比较少的信息量,无损压缩后嵌入,涉及象素太多,嵌入数据量受限制,且嵌入效果PSNR差。
Tian的DifferenceExpansion方法(属于locationmap法),即Tian提出的差分扩展方法,为2x+b方法,是一种奇数偶判别法,将x移动一倍,变成偶数,偶数与奇数形成许多直方图对,都可嵌入数据。但该方法必须排除可能溢出的象素,并用locationmap记录嵌入位置,以防止嵌入前后矛盾,才可无损恢复。排除可能溢出的点,涉及象素太多,locationmap记录偏大。
Ni的MaximumandMinimumPoint方法,为x+b方法,是一种特殊的直方图移位法,可以称为最大最小移位法。最大直方图和最小直方图间的象素灰度扩展移位,在最大直方图处,形成直方图对,嵌入数据。必须记录最小直方图所有象素坐标,才可无损恢复。但该方法的局限是:最大直方图并不是最适合嵌入的地方,记录最小直方图所有象素坐标,占容量大。
2012年11月1日公开的论文《基于预测误差和直方图对的无损数据隐藏方法》(张晓杰等人,计算机应用,2012,32(11):3125-3128)。作为铺垫该论文首先介绍了直方图对的原理,此时属于在空域直接嵌入式的方法,仅适用于嵌入小数据,且性能差。《基于预测误差和直方图对的无损数据隐藏方法》论文,公开了用被测值减去预测值得到预测误差,再将待隐藏数据嵌入到预测误差中的直方图对的无损数据隐藏,在直方图对阈值T的基础上,加入起伏阈值TF,尝试在某设定的两个阈值T、TF参数下进行“自左到右、自上到下,逐次边预测边嵌入”。通过人工多次调整,挑选出最优的阈值参数。该最优阈值应满足:一次能全部嵌入数据,数据嵌入后不存在溢出,且获得最优嵌入效果。这里最优嵌入是指在给定嵌入时得到的PSNR(峰值信噪比PeakSignaltoNoiseRatio)最高。但是,该论文公开的“基于预测误差和直方图对的无损数据隐藏方法”,由于只有二个最优阈值,其阈值T为单阈值,嵌入效率和均匀性不够理想,又由于得到的最优解阈值是通过人工多次试错对比后获得的,具有偶然性,所谓的最优解具有不确定性,非绝对的,且效率低。
发明内容
本发明目的在于克服现有技术的不足,提出一种改进的基于直方图对的图像可逆数据隐藏方法。本发明方法涉及能影响PSNR的四个参数,通过自动搜索确定出四个最优参数,即同时完成嵌入数据。过程中,当出现嵌入后溢出情况,本发明采取评价函数,自动搜索确定出最优压缩点,并用灰度范围阈值TL(左)和TR(右)作直方图最优调整;在数据嵌入环节,采用正负双向扫描的直方图对方法,逐次预测误差。本发明方法PSNR值高,效率高,视觉效果好。
为实现上述目的,本发明给出的技术方案表征为:
一种基于直方图对的图像可逆数据隐藏方法,其特征在于,本方法包括如下步骤:
第(1)步,设置T、TF、TL、TR四个参数,预设一套参数值:
将该四个参数分两组,其中参数T和TF为一组,TL、TR为另一组;每组的参数各预设一个序贯,每个序贯由5个值组成(5*5=25个数值形成数据列阵),用以简化四变量求解最高PSNR。
第(2)步,先取定TR、TL组不变,遍历T、TF组的25种情况:
(2.1)判断是否溢出,如果TL、TR都等于0,则直接进入(2.3)进行逐一迭代方式嵌入数据过程;否则进入(2.2)先进行压缩及进行直方图对调整。
(2.2):采用评价函数P=k1*P1+k2*P2,搜索出图像中合适的象素点,做好位置记录,将记录到的象素点作为压缩点,采用初始的阈值TL和TR作直方图压缩调整,为第三步的嵌入作准备。
(2.3):采用直方图对的方法进行逐一迭代方式嵌入数据,具体流程为:
(2.3.1)根据T的设置,确定两个初始嵌入阈值(tN,tp),开始扫描。
(2.3.2)按起伏阈值TF判断:如果F>TF,跳过当前像素,否则该像素被选中。
(2.3.3)如果被选中,按预测误差pe判断:对于被选中的像素,确定是否嵌入、或不嵌入只扩展,或不变,取决于pe的符号和数值。设待嵌入的二进制数据为bi,取值“0”或“1”。如果pe≥0,有三种情况:(i)pe=tP,嵌入数据。pe=pe+bi。(ii)pe>tp,只扩展:pe=pe+1。(iii)pe为其他值,则不变:pe=pe。如果pe<0,也有三种情况:(i)pe=tN,嵌入数据。pe=pe-bi。(ii)pe<tN,只扩展:pe=pe-1。(iii)pe为其他值,则不变:pe=pe。
(2.3.4.1)如果数据嵌入完成,且无溢出,则记录终点阈值S=tp,或S=tN,并记录终点像素位置,嵌入过程结束,同时计算对应的PSNR值,回到步骤(2.1)。
(2.3.4.2)如果本次扫描已到达末尾,但数据未全部嵌入完,如果tp=tN=0,则记录嵌入失败,标记PSNR值=0,回到步骤(2.1)。否则修改tP和tN,下一个初始阈值T分别为tp-1和tN+1。修改tp和tN的方式是从两边逐步向中间靠拢,下一次扫描,正数减1,即tp-1;而负数加1,即tN+1,再到步骤(2.3.2);
(2.3.4.3)如果出现溢出,记录嵌入失败,标记PSNR值=0,回到步骤(2)。
遍历完T、TF组的25种情况后,对应获得25个PSNR计算结果,形成数据表一,即PSNR计算结果列阵。
第(3)步,取定T、TF组不变,遍历TR、TL组的25种情况:
(3.1)判断是否溢出,如果TL、TR都等于0,则直接进入(3.3)进行逐一迭代方式嵌入数据过程;否则进入(3.2)先进行压缩及直方图对调整。
(3.2):与步骤(2.2)相同。
(3.3)与步骤(2.3)相同。
遍历完TL、TR组的25种情况后,获得对应25个PSNR计算结果,形成数据表二,即PSNR计算结果列阵。
第(4)步,判断是否找到四个阈值并完成嵌入:
如果表一、表二两个数据表面中心PSNR值在所在表中均为最高,则搜索到四个最优阈值,并完成了数据嵌入,嵌入结束;否则回到第(1)步骤重现预设置四个阈值的参数序贯。
第(5)步:
数据的提取是嵌入的逆过程,倒扫描,可以无损恢复。该部分属于现有技术。
基于上述技术方案,与现有技术相比具有突出实质性区别和贡献在于:
1、本发明嵌入方法涉及T,TF,TL和TR四个参数。本领域公知,图像不可能有确切的分析形式数学模型,因此没有分析形式的最优解,只能通过实验取得最优。四个阈值最优是相互影响的,本发明为综合最优方法,本发明获得的解可以认为是全局最优,而不是四个单变量最优方法。若干次反复实验,就能得到最后的结果,这个过程是有规律的,可以按部就班进行,结果正确性是有保证的,效率高。
2、本发明方法,在完成搜索出四个最优参数的同时,也完成了数据的无损嵌入。因此,一旦找到最优参数,即也嵌入完毕。
3、与背景引用文件相比,本发明方法仍属于变换域(预测误差),仍采用逐一迭代的嵌入方式,但改进为“双阈值嵌入”,即每次扫描用正负两阈值(tp和tN),分别对正负预测误差嵌入数据,相对于“单阈值嵌入”,本发明方法双向嵌入数据,使嵌入数据分布更均匀,效率高,嵌入后图像的峰值性噪比更高。
4、本发明方法新增加了TL和TR两个阈值最优选择,不仅保证直方图调整防止灰度范围溢出,而且达到最优压缩,增强了嵌入性能,具有优化PSNR的作用。尤其当嵌入容量大时,最优压缩作用更为明显。
附图说明
以下结合附图对本发明技术方案作进一步说明。
图1是本发明整个方法流程图(四个参数取5个值(5*5=25个数值)为例进行搜索)。
图2为本发明对直方图两边的点进行调整压缩示意图。
图3为直方图例。
图4本发明方法中数据嵌入图像的流程图。
图5为本发明方法中数据提取和图像恢复的流程图。
图6为效果说明及验证之woman图(嵌入前后视觉对比)。
图7为效果说明及验证之woman图(嵌入质量曲线对比)。
图8为效果说明及验证之lena图(嵌入前后视觉对比)。
图9为效果说明及验证之lena图(嵌入质量曲线对比)。
具体实施方式
以下以具体的实施例以及附图对本发明技术方案作更为详细的介绍。
如图1所示为本发明方法的整个流程示意图,整个方法过程参见“发明内容”,不做重复性描述。该方法的实现可以是通过软件MATLAB运行即可完成。
本实施例的四个参数(T,TF,TL,TR),每个参数选五个序贯数据,共20个数。所述序贯数据,例如1,3,5,7,9,又例如3,5,7,9,11,选择的序贯数据可以是随机的。T、TF为第一组,TR、TL为第二组,由此分两组,形成两个5*5参数平面,依此进行PSNR计算。两组各有25个,共50个结果。以上为一次搜索。任何一个结果,有三种可能:(A)求得PSNR。(B)数据不够嵌入---失败之一。(C)产生溢出---失败之二。每当50个结果结束,检查PSNR分布:如果最高的PSNR,未处在该两组5*5参数平面各自的中点,继续下一次搜索。该两组来回搜索若干次,最终能获得最高的PSNR,处在两个5*5参数平面的中点。此时,搜索完成,嵌入也同时完成。
具体说,先调整第一组5*5(25种)的T和TF,使最优值在PSNR计算结果列阵中间地方(调整第一组时,TL和TR采用的是第二组的5*5列阵中间的TL和TR)。然后在新调整好第一组T和TF基础上(通常T和TF调整后,TL和TR最优值会移动),再调整第二组的5*5(25种)TL和TR,使最优值移动到PSNR计算结果列阵中间地方(调整第二组时,第一组T和TF采用的是上一次新调整的第二组的5*5(25种)中间值)。上述过程来回几次,一直到两边最优值都在PSNR计算结果列阵中间地方。若干次后可以完成。对于12种数据容量(0.01bpp~o.7bpp),每种数据容量做50个PSNR解(25个为T和TF,另外25个是TL和TR),共计600个数据,MATLAB程序是一次完成的。
效果说明及验证:
本发明在两张BMP图像上作数据(分别压缩至最短的嵌入容量为0.7bpp的纯随机数据)无损嵌入,都能获得比以前任何方法更高的PSNR。
例(1)woman
·最优参数条件下的woman图,嵌入前后视觉对比如图6所示。嵌入质量曲线,如图7所示。
例(2)Lena
·最优参数条件下嵌入至Lena图,嵌入前后视觉对比如图8所示。嵌入质量曲线如图9所示。
以下对本发明方法中若干关键步骤作详细介绍。
一、T、TF、TL、TR四个参数
本发明方法涉及T、TF、TL、TR四个最优阈值,四个最优阈值均存在最优选择。T、TF的定义及作用与背景技术引用文件相同。其中:
(A)T是嵌入幅度选择,是直方图对方法的关键参数,“嵌入量大小得益”和“形成直方图对的花费”之间,存在折衷选择,就是最优T的选择。
嵌入阈值的初始值T的取值:预测误差可能值得是在两个灰度差即(-255)到(+255)皆可能,因此嵌入阈值的初始值T的取值理论上最大可达为(-255)~(+255)。实际上大多数在小范围内取值。如嵌入阈值的初始值T=5,每次扫描取一对(小框):嵌入阈值的小框系列为达到嵌入数据长度,就停止嵌入(不一定到达0)。如果系列到达0,给定的嵌入容量还未嵌入完,必须重新选择T。例如T=-6,系列为
(B)TF是嵌入区域选择,选择分布最尖的区域(熵最小,或灰度起伏最小区域),PSNR最大。但起伏最小区域有限,影响最大嵌入容量。而且起伏小使嵌入区域受限制,嵌入幅度T选择余地相应减少,影响PSNR的提高。
起伏阈值的TF的取值:总是正数。理论上最小为1,最大发生在8个领域四个灰度为(+255),另外四个灰度(0),F大约为8乘上127的平方。实际上TF的取值范围很广,从1到几万。
(C)TL和TR是嵌入灰度范围选择。不仅起防止溢出的作用,对PSNR还有优化作用,尤其是嵌入容量大时其最优化作用就更为明显。
灰度直方图调整的TL、TR的取值:总是正数。理论上最小为0,最大为254。实际上大多数在小范围内取值,通常小于10,也有更小或更大些的。
二、嵌入过程中出现溢出情况,本发明方法采用搜索最优嵌入点并进行直方图对调整。
设定评价函数通过搜索方法找出直方图最佳压缩位置,设定TL、TR参数进行直方图对调整和压缩,然后设定T、TF阈值进行嵌入尝试,遍历后分别求出的嵌入后的PSNR解,筛选出最高PSNR解,该解下即对应的四个阈值参数即为最优值,同时完成数据嵌入。
本发明公开了最佳压缩位置搜索方法,即确定最佳位置(挑选出最优的序列用于压缩)来进行直方图调整,压缩选择时,适当靠近边缘且选择数值较小的直方图进行压缩,并且用评价函数定量地选择,压缩后再移位,形成边缘空格。如此找出最好的压缩位置,减少要移位的像素的个数,这样可以减小合并时所产生的失真,如此,突破原来仅考虑选择直方图两边的点进行调整压缩。对直方图两边的点进行调整压缩后如图2(a)所示。
本发明公开了最佳压缩位置搜索方法,找到最好的地方进行压缩,减少移位和记录量,判断依据有两个判断标准:
判断标准一,压缩这个点需要多少个记录,所需记录越少越好。如图3所示直方图为例,如果选择灰度0压缩需要记录0,1两个灰度,则总共需要记录11bit。如果选择灰度1压缩需要记录1,2两个灰度,则总共需要记录8bit。对比之,会优选灰度1点来压缩。
判断标准二,压缩这个点会造成多少个点移动,涉及移动点越少越好。例如图3所示的直方图,如果选择灰度0压缩需要把0移动到1上,总共造成了10个点移动。如果选择灰度1压缩需要把0移动到1上,1移动到2上,总共造成了10+1=11个点移动。对比之,会优选灰度0点来压缩。
假设被压缩象素点的灰度为g,g值范围0—255,TL、TR分别表示向左或者向右压缩该灰度值g的象素个数。在这点压缩需要记录N(g)+N(g+1)个bit,N表示直方图分布,令P1=N(g)+N(g+1)。在g点压缩会造成N(0)+N(1)+…+N(g)个点的移动,令P2=N(0)+N(1)+…+N(g)。P1越小,P2越小,则表示压缩这个点越好。但是这两个值有时候是矛盾的,P1小了,P2可能大。
为此,利用上述变量P1,P2来定义一个评价函数,采用该评价函数来判断选中哪个点来压缩。设评价函数P=k1*P1+k2*P2,P越小表示这个点压缩越好。系数k表示权值,即p1、p2这两种变化会对PSNR影响之间的比列。因为如果单以psnr为标准来选择最优点的话,会使计算的量很大,所以本发明选择用上述两个标准来判断,而这两个标准对PSNR的影响各不一样,因此用K系数表示各自对PSNR的影响程度。
例如,在实验中,k1=5,k2=1。
那么,如果在左边压缩,那么灰度0,1,2……6的评价函数的取值为:P[0]=65,P[1]=51,P[2]=128,P[3]=123,P[4]=61,P[5]=53,P[6]=74。
p[0]=5*11+1*10=65,其中p1=11,表示要记录0,1两个灰度共11bit;p2=10,表示要移动10bit。
P[1]=5*8+1*11其中p1=8,表示要记录1,2两个灰度,p2=11,要将1移动到2,0移动到1,需要移动11bit。
(P[3]=123,P[4]=61,P[5]=53,P[6]=74计算过程不再赘述)
因此,如果左边需要压缩一位的话,那么选择灰度g=1,如果需要压缩两位的话,那么选择g=1,5两个灰度来压缩,依此类推。
同理,在右边压缩的时候,评价函数取值为:P[1]=90,P[2]=74,P[3]=137,P[4]=102,P[5]=34,P[6]=22,P[7]=41。因此,如果在右边压缩一位,那么选择灰度g=5进行压缩,如果右边需要压缩两位,选择灰度g=5,6进行压缩。
因此,被压缩灰度g,由评价函数决定,根据评价函数,选中一些灰度来进行压缩。
实际的应用中,每次先选择一个最优点,只压缩一位,然后再次求评价函数,再次选最优的点压缩,重复这个过程直到压缩到指定的要求。这样做的好处是,每一次找出来的都是最好的。实验中采用先压缩左边,后压缩右边。
例如,要嵌入的数据容量很大,光压缩了9还不够,还得再次压缩,一般情况就是压缩8,但是8因为刚刚把9合并到了8上,它的个数变多了,这时8就不一定是最好的压缩点了。所以本发明再次求评价函数再次搜索最优点,直到能够把需要嵌入的信息都嵌入。
k1,k2选择讨论:
(1)k1≠0,k2=0。这时候评价函数完全由记录点的长度决定,压缩时会选择记录最短的一组点进行压缩,这个时候需要的记录最少。
(2)k1=0,k2≠0,由于P2是随着灰度单调递增,所以这种情况就是采用已有技术原来的压缩办法,在最两边压缩。
(3)k1≠0,k2≠0。这时候兼顾了记录点的长度和移动点的影响。如果边上的灰度很少,那么会优先选择边上的点。如果边上的灰度很多,会往里面选择适合压缩的点。
因此,综上采用设评价函数搜索出图像中合适的象素点,做好位置记录,将记录到的象素点作为压缩点,采用待测初始的阈值TL和TR作直方图压缩调整,TL和TR代表压缩的象素灰度个数,压缩进行后即完成了直方图调整。压缩后图像直方图后如图2(b)所示。
三、在沿用张晓杰方法采用逐一迭代嵌入数据的同时,采用双阈值,克服不均匀问题。数据嵌入图像的流程如图4所示,嵌入扩展后图像直方图如图2(c)所示。
通过阈值T、TF来判断当前像素是否被选中,若选中则采用直方图对的方法进行数据嵌入,而未被选中的部分不做改动,部分需要扩展。对于一个象素,采用3*3窗口的八领域取得预测误差,嵌入数据后,按扫描方向移动一位,下一个3*3窗口的8领域包括前次嵌入的结果,采用逐一迭代方式嵌入数据。在每个3*3窗口嵌入同时,必须随时返回原始图像检查图像灰度是否溢出。
计算嵌入数据长度L,图像像素数N。嵌入过程是在扫描中进行:从左往右,从上往下扫描整张图像。对于每一个像素,3*3窗口:
x 1 x 4 x 6 x 2 x x 7 x 3 x 5 x 8
预测误差(Predictionerror):(与x直接有关)
起伏值(fluctuationvalue)和平均值:(与x没有直接关系,只是与领域值相关)
所述逐一迭代方式嵌入数据的具体流程为:
(2.1)设定初始参数:选择嵌入阈值T和起伏阈值TF。其中根据T的设置,确定两个初始嵌入阈值(tN,tp)。
(2.2)按起伏阈值TF判断:如果F>TF,跳过当前像素,否则该像素被选中。
(2.3)按预测误差pe判断:对于(2.2)被选中的像素,确定是否嵌入、或不嵌入只扩展,或不变,取决于pe的符号和数值。设待嵌入的二进制数据为bi,取值“0”或“1”。如果pe≥0,有三种情况:(i)pe=tp,嵌入数据。pe=pe+bi。(ii)pe>tp,只扩展:pe=pe+1。(iii)pe为其他值,则不变:pe=pe。如果pe<0,也有三种情况:(i)pe=tN,嵌入数据。pe=pe-bi。(ii)pe>tN,只扩展:pe=pe-1。(iii)pe为其他值,则不变:pe=pe。
(2.4)是否继续,要看数据是否嵌入完还是本次扫描已到达末尾。
(2.4.1)如果数据嵌入完成(嵌入数据长度L),则将则记录终点阈值S=tp,或S=tN,并记录终点像素位置,以备作恢复图像的起点,同时更新当前像素值,从而得到嵌入后图像,嵌入过程结束。计算对应的PSNR值。
(2.4.2)如果本次扫描已到达末尾(图像像素数N),但数据未全部嵌入完,虽未溢出但未能一次性嵌入完毕时,所述通过重新设定初始阈值T和TF来克服之:此时采用下一个初始阈值T,T是正负交替,绝对值逐步减小,直到全部数据嵌入完毕,即修改tp和tN,下一个初始阈值T分别为tp-1和tN+1。修改tp和tN的方式是从两边逐步向中间靠拢,下一次扫描,正数减1,即tp-1;而负数加1,即tN+1。
T的取值:嵌入时T是正负交替,先正后负,绝对值逐步减小,如T=+5,-5,+4,-4,+3,-3,+2,-2,+1,-1,0。T最后不一定是0,只要嵌入数据完后即停止,记录S。提取时,从S开始,正负交替,但方向相反,绝对值逐步增加。
[tN,tp]的取值:如果T从正开始,则[tN,tp]=[-T,T]。例如T为5,,[tN,tp]=[-5,+5],[-4,+4],[-3,+3],...。如果T从负开始,则[tN,tp]=[T,-T-1]。例如T为-5,,[tN,tp]=[-5,+4],[-4,+3],[-3,+2],...。
(2.4.3)如果当回空域发现溢出,此时可以通过修改TL和TR重新进行直方图调整或者重新设定初始阈值T和TF方式来解决,然后重新完成一次性全部嵌入完毕。计算对应的PSNR值。
四、数据的提取,属现有技术。
数据的提取是嵌入的逆过程,倒扫描,可以无损恢复。直方图对无损数据隐藏的数据提取和图像恢复的流程图,如图5。本发明“顺向逐一迭代扫描嵌入,反向扫描提取”的特点与引用文件张晓杰论文方法相同。
在数据恢复的时候,要按照与嵌入数据相反的顺序进行提取,即自右向左,自下向上的顺序。对于图像中的最后一个3×3窗口,八邻域的灰度值在嵌入数据和提取数据时保持不变,所以可以算出预测值,进而得到预测误差和起伏值。通过阈值TF可以知道哪些点在嵌入过程中被选中。得到被选中的点后,按照直方图对方法的数据提取算法就可以提取到嵌入的数据,并且可以无损恢复原始图像。

Claims (1)

1.一种基于直方图对的图像可逆数据隐藏方法,其特征在于,本方法包括如下步骤:
第(1)步,设置T、TF、TL、TR四个参数,T是嵌入阈值,TF是起伏阈值,TL是直方图左压缩阈值,TR是直方图右压缩阈值,预设一套参数值:
将该四个参数分两组,其中参数T和TF为一组,TL、TR为另一组;每组的参数各预设一个序贯,每个序贯由5个值组成5*5=25个数值形成数据列阵,用以简化四变量求解最高PSNR;
第(2)步,先取定TR、TL组不变,遍历T、TF组的25种情况:
(2.1)判断是否溢出,如果TL、TR都等于0,则直接进入(2.3)进行逐一迭代方式嵌入数据过程;否则进入(2.2)先进行压缩及进行直方图对调整;
(2.2)采用评价函数P=k1*P1+k2*P2,其中:P1表示压缩像素点需要的记录量,P2表示压缩像素点造成的移动像素数,k1表示P1的权重系数,k2表示P2的权重系数,搜索出图像中合适的象素点,做好位置记录,将记录到的象素点作为压缩点,采用初始的阈值TL和TR作直方图压缩调整;
(2.3)采用直方图对的方法进行逐一迭代方式嵌入数据,具体流程为:
(2.3.1)根据T的设置,确定两个初始嵌入阈值(tN,tP),开始扫描;
(2.3.2)按起伏阈值TF判断:如果F>TF,F表示像素灰度起伏值,TF表示像素灰度起伏阈值,跳过当前像素,否则该像素被选中;
(2.3.3)如果被选中,按预测误差pe判断:对于被选中的像素,确定是否嵌入、或不嵌入只扩展,或不变,取决于pe的符号和数值;设待嵌入的二进制数据为bi,取值“0”或“1”,
如果pe≥0,有三种情况:(i)pe=tP,嵌入数据,pe=pe+bi;(ii)pe>tP,只扩展:pe=pe+1;(iii)pe为其他值,则不变:pe=pe;
如果pe<0,也有三种情况:(i)pe=tN,嵌入数据,pe=pe-bi;(ii)pe<tN,只扩展:pe=pe-1;(iii)pe为其他值,则不变:pe=pe;
(2.3.4.1)如果数据嵌入完成,且无溢出,则记录终点阈值S=tP,或S=tN,并记录终点像素位置,嵌入过程结束,同时计算对应的PSNR值,回到步骤(2.1);
(2.3.4.2)如果本次扫描已到达末尾,但数据未全部嵌入完,如果tP=tN=0,则记录嵌入失败,标记PSNR值=0,回到步骤(2.1);否则修改tP和tN,下一个初始阈值T分别为tp-1和tN+1,修改tP和tN的方式是从两边逐步向中间靠拢,下一次扫描,正数减1,即tp-1;而负数加1,即tN+1,再到步骤(2.3.2);
(2.3.4.3)如果出现溢出,记录嵌入失败,标记PSNR值=0,回到步骤(2);
遍历完T、TF组的25种情况后,对应获得25个PSNR计算结果,形成数据表一,即PSNR计算结果列阵;
第(3)步,取定T、TF组不变,遍历TR、TL组的25种情况:
(3.1)判断是否溢出,如果TL、TR都等于0,则直接进入(3.3)进行逐一迭代方式嵌入数据过程;否则进入(3.2)先进行压缩及直方图对调整;
(3.2):与步骤(2.2)相同;
(3.3)与步骤(2.3)相同;
遍历完TL、TR组的25种情况后,获得对应25个PSNR计算结果,形成数据表二,即PSNR计算结果列阵;
第(4)步,判断是否找到四个阈值并完成嵌入:
如果表一、表二两个数据表面中心PSNR值在所在表中均为最高,则搜索到四个最优阈值,并完成了数据嵌入,嵌入结束;否则回到第(1)步骤重现预设置四个阈值的参数序贯;
第(5)步:
数据的提取是嵌入的逆过程,倒扫描。
CN201310254398.7A 2013-06-25 2013-06-25 基于直方图对的图像可逆数据隐藏方法 Expired - Fee Related CN103310406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310254398.7A CN103310406B (zh) 2013-06-25 2013-06-25 基于直方图对的图像可逆数据隐藏方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310254398.7A CN103310406B (zh) 2013-06-25 2013-06-25 基于直方图对的图像可逆数据隐藏方法

Publications (2)

Publication Number Publication Date
CN103310406A CN103310406A (zh) 2013-09-18
CN103310406B true CN103310406B (zh) 2016-04-06

Family

ID=49135584

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310254398.7A Expired - Fee Related CN103310406B (zh) 2013-06-25 2013-06-25 基于直方图对的图像可逆数据隐藏方法

Country Status (1)

Country Link
CN (1) CN103310406B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107533768B (zh) 2015-06-23 2021-07-30 惠普发展公司有限责任合伙企业 基于目标颜色空间范围的图像直方图压缩端点对选择
CN107888922B (zh) * 2017-11-20 2019-12-20 西安空间无线电技术研究所 用于jpeg-ls无损压缩算法防码流溢出的图像预处理方法及装置
CN110362964B (zh) * 2019-06-05 2021-06-01 北京大学 一种基于多直方图修改的高容量可逆信息隐藏方法
CN110351450B (zh) * 2019-07-16 2022-01-11 广东工业大学 基于纵横交叉算法进行多直方图选点的可逆信息隐藏方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123720A (zh) * 2013-03-13 2013-05-29 中南大学 基于差值图像直方图循环平移的无损数据隐藏方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260065B2 (en) * 2006-05-08 2012-09-04 New Jersey Institute Of Technology Data hiding with wavelet transform histogram shifting

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123720A (zh) * 2013-03-13 2013-05-29 中南大学 基于差值图像直方图循环平移的无损数据隐藏方法

Also Published As

Publication number Publication date
CN103310406A (zh) 2013-09-18

Similar Documents

Publication Publication Date Title
CN111754403B (zh) 一种基于残差学习的图像超分辨率重构方法
CN114943963B (zh) 一种基于双分支融合网络的遥感图像云和云影分割方法
US10346997B2 (en) Depth estimation method based on light-field data distribution
CN103310406B (zh) 基于直方图对的图像可逆数据隐藏方法
EP2209090B1 (en) Image restoring apparatus and method thereof
CN103475876B (zh) 一种基于学习的低比特率压缩图像超分辨率重建方法
CN102113017A (zh) 使用边缘检测产生深度数据的系统及方法
CN103413286A (zh) 一种基于学习的高动态范围与高分辨率图像联合重建方法
CN111028165B (zh) 一种基于raw数据抵抗相机抖动的高动态图像恢复方法
CN1197383C (zh) 用于识别数字视频图像中像块伪痕的方法和装置
CN109978763A (zh) 一种基于跳跃连接残差网络的图像超分辨率重建算法
CN104123705A (zh) 一种超分辨率重建图像质量Contourlet域评价方法
CN111626927A (zh) 采用视差约束的双目图像超分辨率方法、系统及装置
CN110349087A (zh) 基于适应性卷积的rgb-d图像高质量网格生成方法
CN112381733B (zh) 面向图像恢复的多尺度神经网络结构搜索方法及网络应用
CN108460795A (zh) 倒金字塔式双目立体匹配方法及系统
CN116030357A (zh) 一种高分辨率遥感图像变化检测深度网络及检测方法
CN114998099A (zh) 一种基于图像预训练策略的图像超分辨率方法
US20090122189A1 (en) Method of Identifying Target Synchronization Point Pair through Scan-line Image Matching Scheme
CN112734645A (zh) 一种基于特征蒸馏复用的轻量化图像超分辨率重建方法
US8634671B2 (en) Methods and apparatus to perform multi-focal plane image acquisition and compression
CN117132472B (zh) 基于前向-反向可分离自注意力的图像超分辨率重建方法
CN110111270A (zh) 实现彩色图像对比度增强的可逆数据隐藏方法和恢复方法
CN103400394A (zh) 基于特征导向变分光流的视频超分辨率方法
CN110705499A (zh) 一种基于迁移学习的人群计数方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160406

Termination date: 20190625