CN112734664A - 一种对高动态范围图像的秘密信息嵌入和提取方法 - Google Patents
一种对高动态范围图像的秘密信息嵌入和提取方法 Download PDFInfo
- Publication number
- CN112734664A CN112734664A CN202011620310.5A CN202011620310A CN112734664A CN 112734664 A CN112734664 A CN 112734664A CN 202011620310 A CN202011620310 A CN 202011620310A CN 112734664 A CN112734664 A CN 112734664A
- Authority
- CN
- China
- Prior art keywords
- state
- embedded
- secret information
- pixel
- pixel point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 85
- 230000000007 visual effect Effects 0.000 claims description 35
- 230000009191 jumping Effects 0.000 claims description 30
- 230000000694 effects Effects 0.000 claims description 19
- 238000003780 insertion Methods 0.000 claims description 9
- 230000037431 insertion Effects 0.000 claims description 9
- 230000010339 dilation Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20208—High dynamic range [HDR] image processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种对高动态范围图像的秘密信息嵌入和提取方法,包括以下步骤:S1、通过信息发送方对RadianceRGBE格式的图像进行重构,得到载体图像;S2、对载体图像进行动态嵌入,得到隐写图像;S3、通过信息接收方对隐写图像提取秘密信息;本发明解决了现有HDR无失真隐写技术会导致比较明显的流扩张现象,隐写的安全性低的问题。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种对高动态范围图像的秘密信息嵌入和提取方法。
背景技术
图像隐写是一类在图片中隐藏秘密信息并使得秘密信息难以被发现和提取的方法。不同于与之对应的“加密”概念,图像隐写会使得含有秘密信息的图像同样具备意义,使得潜在的攻击者难以察觉这是一张包含了秘密信息的图像。
图像可以分为低动态范围(Low Dynamic Range,LDR)图像和高动态范围(HighDynamic Range,HDR)图像。由于真实场景的动态范围巨大,LDR图像并不能很好地还原真实地场景,尤其是在图像中存在过亮或过暗的区域时,会造成图像质量下降。而HDR图像拥有更大的动态范围,可以更好地还原出真实场景,是当前学术界与工业界的研究热点,应用也越来越广泛。然而图像隐写技术目前大多局限于LDR图像,虽然图像隐写已经在LDR领域取得了诸多成果与应用,但是HDR图像的像素是浮点数的特性意味着图像隐写在HDR领域还有很大的发展空间。
当前的HDR空域隐写技术可以分为无失真隐写和有失真隐写,无失真隐写意味着并不改变HDR图像的视觉效果,即不改变其显示时的RGB浮点数的值;有失真隐写意味着对HDR的视觉效果有一定改变,但是通过一定的手段来最小化这种改变使得这种变化对于人眼难以察觉或不可察觉。有失真隐写往往拥有更高的容量,但是安全性能相对较弱;无失真隐写虽然容量小于有失真隐写,但是安全性更高。
现有的HDR无失真隐写技术在安全性上仍存在两个隐患,第一是流扩张(StreamExpansion)问题,即隐写后会造成文件大小的变化,可能的攻击者可以直接通过图像的基本属性判断出该图像异常,并且由于无失真隐写技术的基础是当前最流行的RadianceRGBE格式,不能像LSB等算法那样通过更换文件格式来消除流扩张。第二是当前的无失真隐写方法中,忽略了Radiance RGBE格式保存图像时每个像素点的RGBE值的唯一性,使得当可能的攻击者得知算法后,无需载体图像就可以直接通过隐写图像获取秘密信息。这两点使得无失真隐写技术在安全性方面存在一定问题,需要研究一种方法对安全性进行加强。
HDR无失真隐写技术中,由于对RGBE中的指数(E)通道进行了改变,所以会导致比较明显的流扩张现象,使得隐写的安全性下降。此外,由于RadianceRGBE格式保存图像时会使得相同的RGB浮点数转换为RGBE整数时具有唯一性,所以当前的HDR无失真隐写技术存在一定安全隐患,在得知算法时,可以不需要载体图像,仅仅根据隐写图像就破解出秘密信息。
发明内容
针对现有技术中的上述不足,本发明提供的一种对高动态范围图像的秘密信息嵌入和提取方法解决了现有HDR无失真隐写技术会导致比较明显的流扩张现象,隐写的安全性低的问题。
为了达到上述发明目的,本发明采用的技术方案为:一种对高动态范围图像的秘密信息嵌入和提取方法,包括以下步骤:
S1、通过信息发送方对RadianceRGBE格式的图像进行重构,得到载体图像;
S2、对载体图像进行动态嵌入,得到隐写图像;
S3、通过信息接收方对隐写图像提取秘密信息。
进一步地,步骤S1包括以下分步骤:
S11、通过信息发送方计算RadianceRGBE格式的图像中每个像素点的视觉效果等价的状态数HVp,并筛选出状态数HVp>2的像素点;
上述进一步方案的有益效果为:通过对一张Radiance RGBE格式的文件重构将其作为载体图像,一方面提高了安全性,避免了不需要载体图像即可以破解到信息的情况出现。另一方面在保持流扩张为0的这一前提下扩大了容量。
进一步地,步骤S2包括以下分步骤:
S201、初始化载体图像的累积的第一流扩张大小Ea为0,取嵌入像素点序列{xi|1≤i≤n}中一个像素点作为密钥像素点xkey,其中,嵌入像素点序列{xi|1≤i≤n}为载体图像中HVp>2的像素点组成的序列,1≤key≤n,xkey为嵌入像素点序列{xi|1≤i≤n}中的第key个密钥像素点,n为HVp>2的像素点的总数,HVp为每个像素点的视觉效果等价的状态数;
S202、对于key<i≤n的像素点xi,计算像素点xi的第一流扩张影响判断累积的第一流扩张大小Ea是否等于0,若是,则将此时第一流扩张影响对应的像素点xi作为第一嵌入点,并跳转至步骤S204,若否,则跳转至步骤S203;
S205、判断i是否大于n,若是,则跳转至步骤S206,若否,则跳转至步骤S202;
S206、对于1≤i≤key的像素点x1至密钥像素点xkey,重复步骤S202至步骤S204的方法过程,直到i=key+1;
上述进一步方案的有益效果为:动态嵌入得到的图像即为隐写图像,其中包含了秘密信息,且可以确保隐写图像相对于载体图像没有发生任何流扩张,并且该过程每次计算下一个嵌入点的位置之前都更新了图像,因此每次嵌入的位置都是动态的,和密钥以及秘密信息有关,提供了更高的安全性。
S2021、对像素点xi所在的载体图像的行进行RLE编码,计算得到载体图像该行的第一次编码文件大小;
S2022、将像素点xi所在的载体图像的行的某个像素点处的像素值进行改动,计算得到载体图像该行的第二次编码文件大小;
进一步地,步骤S204中的编码规则为:
A1、像素点xi的视觉效果等价的状态数HVp=1,像素点xi无法嵌入秘密信息;
A2、像素点xi的视觉效果等价的状态数HVp=2,像素点xi可嵌入1比特的秘密信息;
A3、像素点xi的视觉效果等价的状态数HVp=3,像素点xi可嵌入1比特或2比特的秘密信息;
A4、像素点xi的视觉效果等价的状态数HVp=4,像素点xi可嵌入2比特的秘密信息;
A5、像素点xi的视觉效果等价的状态数HVp=5,像素点xi可嵌入2比特或3比特的秘密信息;
A6、像素点xi的视觉效果等价的状态数HVp=6,像素点xi可嵌入2比特或3比特的秘密信息;
A7、像素点xi的视觉效果等价的状态数HVp=7,像素点xi可嵌入2比特或3比特的秘密信息;
A8、像素点xi的视觉效果等价的状态数HVp=8,像素点xi可嵌入3比特的秘密信息。
进一步地,A2中嵌入1比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“0”,将像素点xi的状态更改为第1个状态;
所述A3中嵌入1比特或2比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第2个状态;
所述A4中嵌入2比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第3个状态;
所述A5中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第4个状态;
所述A6中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第5个状态;
所述A7中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第6个状态;
所述A8中嵌入3比特的秘密信息的方法为:嵌入秘密信息“111”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“110”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第6个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第7个状态。
进一步地,步骤S209中改变像素点xi的状态的公式为:
其中,k为改变像素点xi的状态的偏移量,HIp为像素点p种所有等价状态对应的k的值的集合。
进一步地,步骤S3包括以下分步骤:
S301、通过信息接收方接收隐写图像,提取隐写像素点x′key中的秘密信息,并基于隐写像素点x′key的秘密信息初始化载体图像上累积的第二流扩张大小其中,隐写像素点x′key来自隐写图像中HVp>2的隐写像素点构成的隐写像素点序列{xi|1≤i≤m}中的一个隐写像素点,m为隐写像素点的总数,xi为第i个隐写像素点;
S305、通过比对载体图像和隐写图像,根据解码规则,提取第二嵌入点的秘密信息;
S306、更改载体图像的第二嵌入点处的像素值与隐写图像相等,得到嵌入信息的载体图像;
S308、判断i是否大于m,若是,则跳转至步骤S309,若否,则跳转至步骤S302;
S309、对于1≤i≤key的隐写像素点x1至xkey,重复步骤S302至步骤S307的方法过程,直到i=key+1;
S310、重复步骤S302至S310,直到提取完成所有秘密信息或找不到任何满足条件的隐写像素点xi,得到对隐写图像提取的秘密信息。
上述进一步方案的有益效果为:(1)消除了流扩张,避免图像在传输过程中由于流扩张,使得潜在的攻击者从文件基本属性中察觉到该文件可能携带了秘密信息;(2)没有改变图像的视觉效果,使得潜在的攻击者无法单纯从视觉效果上察觉到可能携带有秘密信息(3)通过动态嵌入,使得密钥在保持简单的同时安全性提高,即使潜在的攻击者已经知晓本发明的所有细节,只要没有密钥,就仍然难以得到正确的秘密信息。
综上,本发明的有益效果为:
(1)通过动态嵌入消除了流扩张,避免图像在传输过程中由于流扩张,使得潜在的攻击者从文件基本属性中察觉到该文件可能携带了秘密信息。
(2)通过图像重构,使得载体图像偏离标准的RadianceRGBE文件格式的值,防止了潜在的攻击者利用RadianceRGBE文件保存时的唯一性直接通过隐写图像得到载体图像,从而破解信息,增强了传输过程中的安全性。
(3)通过动态嵌入,使得密钥在保持简单的同时安全性提高,即使潜在的攻击者已经知晓本发明的所有细节,只要没有密钥,就仍然难以得到正确的秘密信息。
附图说明
图1为一种对高动态范围图像的秘密信息嵌入和提取方法的流程图;
图4为编码和解码过程对应的编码和解码规则表;
图5为载体图像和隐写图像的对比图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,一种对高动态范围图像的秘密信息嵌入和提取方法,包括以下步骤:
S1、通过信息发送方对RadianceRGBE格式的图像进行重构,得到载体图像;
步骤S1包括以下分步骤:
S11、通过信息发送方计算RadianceRGBE格式的图像中每个像素点的视觉效果等价的状态数HVp,并筛选出状态数HVp>2的像素点;
假设像素点的等价状态与初始状态的偏移值k有HVp个可能的取值k1,k2,…,k为扰动之后的等价状态相对于初始状态的偏移,且k的取值范围为集合则k取值的概率P(k=ki)为即对于一个有HVp>2个等价状态的像素点,变动到每一种可能的等价状态的概率均为例如当一个像素点的值P=(60,70,80,127)时,其等价状态有其本身P′=(60,70,80,127),k1=0以及P′=(30,35,40,128),k2=-1和P′=(120,140,160,126),k3=1,共三种等价状态,即HVp=3,那么进行图像重构后该像素点的状态为以上三种状态中的一种,改变为任意一种状态的概率均为
这种重构不仅提高了安全性,并且在保持流扩张为0这一约束下,可以获得相比不重构时约10倍的隐写容量。可以提升容量的依据在于,重构前图像所有可用点的预期流扩张大多分布在正半轴,重构后正负半轴将更加均匀,因此可以在保证流扩张为0这一前提下选择更多的点进行嵌入。图2~3所示分别是一百张HDR图像重构前和重构后的平均的分布图,可以看出在重构后的值的分布更加均衡,其和也更逼近于0。在实际实验中,相比直接使用原图,重构图像可以扩大约10倍隐写容量,其中,为一个像素点p在进行上述状态更改时取偏移k引起的流扩张大小。
S2、对载体图像进行动态嵌入,得到隐写图像;
利用对每个点预期的流扩张动态的进行秘密信息的嵌入,在消除流扩张使得隐写图像更难被察觉出异常的同时提高了隐写的安全性。
首先对“动态嵌入”中的“动态”进行阐述。所谓动态嵌入,指的是第n个点嵌入信息的位置与前n-1个点嵌入信息的位置有关,即每个隐写的操作都有后效性,会对后续的隐写位置产生影响,这一点将在下文进行说明。因此,对于整个隐写过程,仅有第一个比特的秘密信息的位置是非动态的,而是人为确定的,而这一被确定的点的位置即为密钥(key)。不同于用隐写方法直接与密钥简单组合的方式,本发明中的密钥和隐写过程是耦合的,如果在不知道密钥的情况下试图强行破解,由于本发明动态嵌入的特点,得到的信息将从字节内部被破坏,无法通过字节粒度上的排列组合得到有意义的信息。
通过数据统计与分析,平均一张图片上可以进行隐写的点大概占比为1/8,以常见的1920×1080的尺寸为例,此时可以进行隐写的点平均可以达到259200个,由于可能破坏掉了字节的比特排列,强行破解信息几乎需要尝试相同数量级的次数,而密钥仅为一个方便记忆的整数。
步骤S2包括以下分步骤:
S201、初始化载体图像的累积的第一流扩张大小Ea为0,取嵌入像素点序列{xi|1≤i≤n}中一个像素点作为密钥像素点xkey,其中,嵌入像素点序列{xi|1≤i≤n}为载体图像中HVp>2的像素点组成的序列,1≤key≤n,xkey为嵌入像素点序列{xi|1≤i≤n}中的第key个密钥像素点,n为HVp>2的像素点的总数,HVp为每个像素点的视觉效果等价的状态数;
S202、对于key<i≤n的像素点xi,计算像素点xi的第一流扩张影响判断累积的第一流扩张大小Ea是否等于0,若是,则将此时第一流扩张影响对应的像素点xi作为第一嵌入点,并跳转至步骤S204,若否,则跳转至步骤S203;
S2021、对像素点xi所在的载体图像的行进行RLE编码,计算得到载体图像该行的第一次编码文件大小;
S2022、将像素点xi所在的载体图像的行的某个像素点处的像素值进行改动,计算得到载体图像该行的第二次编码文件大小;
如图4所示,步骤S204中的编码规则为:
A1、像素点xi的视觉效果等价的状态数HVp=1,像素点xi无法嵌入秘密信息;
A2、像素点xi的视觉效果等价的状态数HVp=2,像素点xi可嵌入1比特的秘密信息;
A3、像素点xi的视觉效果等价的状态数HVp=3,像素点xi可嵌入1比特或2比特的秘密信息;
A4、像素点xi的视觉效果等价的状态数HVp=4,像素点xi可嵌入2比特的秘密信息;
A5、像素点xi的视觉效果等价的状态数HVp=5,像素点xi可嵌入2比特或3比特的秘密信息;
A6、像素点xi的视觉效果等价的状态数HVp=6,像素点xi可嵌入2比特或3比特的秘密信息;
A7、像素点xi的视觉效果等价的状态数HVp=7,像素点xi可嵌入2比特或3比特的秘密信息;
A8、像素点xi的视觉效果等价的状态数HVp=8,像素点xi可嵌入3比特的秘密信息。
A2中嵌入1比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“0”,将像素点xi的状态更改为第1个状态;
所述A3中嵌入1比特或2比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第2个状态;
所述A4中嵌入2比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第3个状态;
所述A5中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第4个状态;
所述A6中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第5个状态;
所述A7中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第6个状态;
所述A8中嵌入3比特的秘密信息的方法为:嵌入秘密信息“111”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“110”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第6个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第7个状态。
S205、判断i是否大于n,若是,则跳转至步骤S206,若否,则跳转至步骤S202;
S206、对于1≤i≤key的像素点x1至密钥像素点xkey,重复步骤S202至步骤S204的方法过程,直到i=key+1;
步骤S209中改变像素点xi的状态的公式为:
其中,k为改变像素点xi的状态的偏移量,HIp为像素点p种所有等价状态对应的k的值的集合。
S3、通过信息接收方对隐写图像提取秘密信息。
步骤S3包括以下分步骤:
S301、通过信息接收方接收隐写图像,提取隐写像素点x′key中的秘密信息,并基于隐写像素点x′key的秘密信息初始化载体图像上累积的第二流扩张大小其中,隐写像素点x′key来自隐写图像中HVp>2的隐写像素点构成的隐写像素点序列{xi|1≤i≤m}中的一个隐写像素点,m为隐写像素点的总数,xi为第i个隐写像素点;
S305、通过比对载体图像和隐写图像,根据解码规则,提取第二嵌入点的秘密信息;
S306、更改载体图像的第二嵌入点处的像素值与隐写图像相等,得到嵌入信息的载体图像;
S308、判断i是否大于m,若是,则跳转至步骤S309,若否,则跳转至步骤S302;
S309、对于1≤i≤key的隐写像素点x1至xkey,重复步骤S302至步骤S307的方法过程,直到i=key+1;
S310、重复步骤S302至S310,直到提取完成所有秘密信息或找不到任何满足条件的隐写像素点xi,得到对隐写图像提取的秘密信息。
为了能更好地理解本发明,下表给出一个模拟的例子,表中数据代表载体图像的RGBE数值,由于流扩张实际上主要来源于E通道数据改变,因此为了方便理解,这里在计算流扩张时只考虑E通道改变的影响,同时动态嵌入时大于等于0和小于等于0的条件约束到严格大于0和小于0。表中省略号部分代表有125个和前后完全相同的数据。对于预期流扩张的计算的根据是RLE编码,该编码的一个特点是压缩连续的数据以此最多只能压缩127个。
这里在演示动态嵌入的同时,对前文所言的动态嵌入带来的安全性进行说明。与本发明提供的安全性相反的例子是,密钥仅仅作为一个隐写的起始位置,这样就会导致字节内部比特的分布没有被破坏,如果秘密信息为“Attack”,其二进制表示为010000010111010001110100011000010110001101101011,假设密钥的作用仅仅是将起始的位置改为第21个bit,那么强行破解到信息之后,只需要最多尝试移位8次,就可以得到类似“ackAtt”这样的信息。所以,为了方便展示密钥不同时强行提取信息对字节的破坏,假设秘密信息为00000000,此时上述反例无法起到任何保护作用。
表1:模拟图像RGBE值
由表1可以得知,下标为0,1,2的点是可以进行嵌入的点。初始文件大小为16,若密钥设为0,则从第0个点开始写入,将第0个点改写为(118,154,192,127)此时预期文件大小变为18,所以Ea=2,则下一个点的预期流扩张应当小于0,此时第1个点的预期流扩张为2,所以跳过这一个点,选择预期流扩张为-2的第2个点,将其改变为(120,158,194,127),此时有Ea=0,因此下一个可嵌入的点无论预期流扩张是多大都进行嵌入,第3个点预期流扩张为0,仍有Ea=0。下一个可嵌入的点为第5个点,预期流扩张为0,那么与第三个点情况相同。下一个可嵌入的点为第133个点,预期流扩张为-2,此时Ea=-2,将第133个点更改为(71,81,82,126)。同理下一个可嵌入的点为第134个,预期流扩张为-2,不满足条件,跳过该点。下一个可嵌入的点为第140个,预期流扩张为2,满足条件,Ea变为0。下一个可嵌入的点为第252个,预期流扩张为-2,进行嵌入。此时一个循环已经完毕,剩下第1个和第134个点没有写入信息,因此此时从头开始进行写入,第1个点的预期流扩张为2,因此写入第二个点。至此动态嵌入过程结束。
与之相对的,当我们取key=3时,先对第三个点进行了写入,有Ea=0。下一个可写入的点为第5个点,预期流扩张同样时0,且对应秘密信息为0,按照表1,将第五个点改为(138,88,92,127),需要注意的是,此时不同于密钥为0的情况,由于前面的RGBE数据与密钥为0时的不同,第133个点的预期流扩张已经从-2变为了0,因此第134个点无论流扩张是多大都会嵌入信息,此时第134个点预期流扩张为2,因此Ea=2,下一个可嵌入的点为140,预期流扩张为2,跳过该点,此时也与密钥为0的情况不同。下一个可嵌入的点为第252个,预期流扩张为-2,选择该点嵌入,此时有Ea=0,这时候已经到达该“图像”的末端,因此从0处到key处继续进行嵌入,此时第0个点的预期流扩张为0,写入该点。第1个点的预期流扩张为0,写入该点。第2个点的预期流扩张也为0,写入该点。至此动态嵌入过程结束。
对比密钥为0和密钥为3的情况,可以看出,密钥为0时嵌入的顺序是(0,2,3,5,133,140,252,1),密钥为3时嵌入的顺序时(3,5,133,134,252,0,1,2)显然,只要密钥改变,那么信息嵌入位置并非只是简单的换了一个起始位置,而是整个嵌入位置会全部被打乱。假如隐写时给定的密钥为3,而攻击者试图用密钥0强行破解信息,那么提取信息得到的结果将是:00000100,无论如何移位都不可能得到正确的秘密信息。如果算法仅仅是将密钥作为一个起始的位置,那么对于上述00000000的信息将不会起到任何的保护作用,而本发明则会使得使用错误密钥强行破解时,一个字节内部被破坏掉。当信息长度扩大到几十万比特、密钥的可能情况也增加到几十万种时,由于想要在没有密钥的情况下强行破解到完整的信息,理论上最多需要尝试所有可能的密钥,所以本发明拥有优越的安全性能。
下面给出本发明获得的隐写图像与载体图像对比的几个例子,并给出关于隐写容量的实验数据。
首先通过直观观察本发明生成的含有秘密信息的隐写图像来评判本方法的图像质量,与其它无失真隐写方法一样,本发明生成的隐写图像和载体图像视觉效果完全相同,转化成RGB浮点数后每个像素点的值完全相等。
如图5所示,上方四张图片为载体图像,下方四张图片为藏有秘密信息的图像,可以看出,本发明提出的方法在视觉效果上没有差异,且消除了流扩张。
由于本发明提出的方法生成的图像在RGB浮点数上和载体图像完全相等,所以主要对容量进行测试。
表2:与当前其它HDR无失真隐写方法相对容量的比较
从表2中可以看出,本发明的方法不仅解决了当前HDR无失真隐写方法的两个漏洞,还提升了一些隐写容量。本发明的方法的隐写容量可以达到0.135-0.144bpp,尽管和当前容量最高的无失真隐写方法0.139-0.147bpp相比略有损失,但是本发明的方法解决了HDR无失真隐写的两个安全隐患,并通过动态嵌入对安全性进行了增强,在综合性能上更为出色。
Claims (8)
1.一种对高动态范围图像的秘密信息嵌入和提取方法,其特征在于,包括以下步骤:
S1、通过信息发送方对RadianceRGBE格式的图像进行重构,得到载体图像;
S2、对载体图像进行动态嵌入,得到隐写图像;
S3、通过信息接收方对隐写图像提取秘密信息。
3.根据权利要求1所述的对高动态范围图像的秘密信息嵌入和提取方法,其特征在于,所述步骤S2包括以下分步骤:
S201、初始化载体图像的累积的第一流扩张大小Ea为0,取嵌入像素点序列{xi|1≤i≤n}中一个像素点作为密钥像素点xkey,其中,嵌入像素点序列{xi|1≤i≤n}为载体图像中HVp>2的像素点组成的序列,1≤key≤n,xkey为嵌入像素点序列{xi|1≤i≤n}中的第key个密钥像素点,n为HVp>2的像素点的总数,HVp为每个像素点的视觉效果等价的状态数;
S202、对于key<i≤n的像素点xi,计算像素点xi的第一流扩张影响判断累积的第一流扩张大小Ea是否等于0,若是,则将此时第一流扩张影响对应的像素点xi作为第一嵌入点,并跳转至步骤S204,若否,则跳转至步骤S203;
S205、判断i是否大于n,若是,则跳转至步骤S206,若否,则跳转至步骤S202;
S206、对于1≤i≤key的像素点x1至密钥像素点xkey,重复步骤S202至步骤S204的方法过程,直到i=key+1;
5.根据权利要求3所述的对高动态范围图像的秘密信息嵌入和提取方法,其特征在于,所述步骤S204中的编码规则为:
A1、像素点xi的视觉效果等价的状态数HVp=1,像素点xi无法嵌入秘密信息;
A2、像素点xi的视觉效果等价的状态数HVp=2,像素点xi可嵌入1比特的秘密信息;
A3、像素点xi的视觉效果等价的状态数HVp=3,像素点xi可嵌入1比特或2比特的秘密信息;
A4、像素点xi的视觉效果等价的状态数HVp=4,像素点xi可嵌入2比特的秘密信息;
A5、像素点xi的视觉效果等价的状态数HVp=5,像素点xi可嵌入2比特或3比特的秘密信息;
A6、像素点xi的视觉效果等价的状态数HVp=6,像素点xi可嵌入2比特或3比特的秘密信息;
A7、像素点xi的视觉效果等价的状态数HVp=7,像素点xi可嵌入2比特或3比特的秘密信息;
A8、像素点xi的视觉效果等价的状态数HVp=8,像素点xi可嵌入3比特的秘密信息。
6.根据权利要求5所述的对高动态范围图像的秘密信息嵌入和提取方法,其特征在于,所述A2中嵌入1比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“0”,将像素点xi的状态更改为第1个状态;
所述A3中嵌入1比特或2比特的秘密信息的方法为:嵌入秘密信息“1”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第2个状态;
所述A4中嵌入2比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“00”,将像素点xi的状态更改为第3个状态;
所述A5中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“01”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第4个状态;
所述A6中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“10”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第5个状态;
所述A7中嵌入2比特或3比特的秘密信息的方法为:嵌入秘密信息“11”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第6个状态;
所述A8中嵌入3比特的秘密信息的方法为:嵌入秘密信息“111”,将像素点xi的状态更改为第0个状态,嵌入秘密信息“110”,将像素点xi的状态更改为第1个状态,嵌入秘密信息“101”,将像素点xi的状态更改为第2个状态,嵌入秘密信息“100”,将像素点xi的状态更改为第3个状态,嵌入秘密信息“011”,将像素点xi的状态更改为第4个状态,嵌入秘密信息“010”,将像素点xi的状态更改为第5个状态,嵌入秘密信息“001”,将像素点xi的状态更改为第6个状态,嵌入秘密信息“000”,将像素点xi的状态更改为第7个状态。
8.根据权利要求3所述的对高动态范围图像的秘密信息嵌入和提取方法,其特征在于,所述步骤S3包括以下分步骤:
S301、通过信息接收方接收隐写图像,提取隐写像素点x′key中的秘密信息,并基于隐写像素点x′key的秘密信息初始化载体图像上累积的第二流扩张大小其中,隐写像素点x′key来自隐写图像中HVp>2的隐写像素点构成的隐写像素点序列{xi|1≤i≤m}中的一个隐写像素点,m为隐写像素点的总数,xi为第i个隐写像素点;
S305、通过比对载体图像和隐写图像,根据解码规则,提取第二嵌入点的秘密信息;
S306、更改载体图像的第二嵌入点处的像素值与隐写图像相等,得到嵌入信息的载体图像;
S308、判断i是否大于m,若是,则跳转至步骤S309,若否,则跳转至步骤S302;
S309、对于1≤i≤key的隐写像素点x1至xkey,重复步骤S302至步骤S307的方法过程,直到i=key+1;
S310、重复步骤S302至S310,直到提取完成所有秘密信息或找不到任何满足条件的隐写像素点xi,得到对隐写图像提取的秘密信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011620310.5A CN112734664B (zh) | 2020-12-30 | 2020-12-30 | 一种对高动态范围图像的秘密信息嵌入和提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011620310.5A CN112734664B (zh) | 2020-12-30 | 2020-12-30 | 一种对高动态范围图像的秘密信息嵌入和提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112734664A true CN112734664A (zh) | 2021-04-30 |
CN112734664B CN112734664B (zh) | 2023-05-30 |
Family
ID=75608502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011620310.5A Active CN112734664B (zh) | 2020-12-30 | 2020-12-30 | 一种对高动态范围图像的秘密信息嵌入和提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112734664B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150286807A1 (en) * | 2014-04-04 | 2015-10-08 | Mach 1 Development, Inc. | Marked image file security system and process |
CN105009580A (zh) * | 2013-02-21 | 2015-10-28 | 杜比实验室特许公司 | 高动态范围视频的显示管理 |
CN107067362A (zh) * | 2017-03-17 | 2017-08-18 | 宁波大学 | 一种对抗色调映射的高动态范围图像水印方法 |
WO2018005705A1 (en) * | 2016-06-29 | 2018-01-04 | Dolby Laboratories Licensing Corporation | Efficient histogram-based luma look matching |
CN107862646A (zh) * | 2017-09-27 | 2018-03-30 | 宁波大学 | 一种高动态范围图像信息隐藏方法 |
CN108492262A (zh) * | 2018-03-06 | 2018-09-04 | 电子科技大学 | 一种基于梯度结构相似性的无鬼影高动态范围成像方法 |
CN108898538A (zh) * | 2018-05-08 | 2018-11-27 | 天津大学 | 一种融合lbp特征的图像空域隐写算法 |
CN109785221A (zh) * | 2019-01-11 | 2019-05-21 | 宁波大学 | 一种数字图像隐写方法及秘密信息提取方法 |
CN110136074A (zh) * | 2019-03-26 | 2019-08-16 | 中国人民解放军战略支援部队信息工程大学 | 基于最小二乘法的高动态范围图像隐密像素比率估计算法 |
-
2020
- 2020-12-30 CN CN202011620310.5A patent/CN112734664B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105009580A (zh) * | 2013-02-21 | 2015-10-28 | 杜比实验室特许公司 | 高动态范围视频的显示管理 |
US20150286807A1 (en) * | 2014-04-04 | 2015-10-08 | Mach 1 Development, Inc. | Marked image file security system and process |
WO2018005705A1 (en) * | 2016-06-29 | 2018-01-04 | Dolby Laboratories Licensing Corporation | Efficient histogram-based luma look matching |
CN107067362A (zh) * | 2017-03-17 | 2017-08-18 | 宁波大学 | 一种对抗色调映射的高动态范围图像水印方法 |
CN107862646A (zh) * | 2017-09-27 | 2018-03-30 | 宁波大学 | 一种高动态范围图像信息隐藏方法 |
CN108492262A (zh) * | 2018-03-06 | 2018-09-04 | 电子科技大学 | 一种基于梯度结构相似性的无鬼影高动态范围成像方法 |
CN108898538A (zh) * | 2018-05-08 | 2018-11-27 | 天津大学 | 一种融合lbp特征的图像空域隐写算法 |
CN109785221A (zh) * | 2019-01-11 | 2019-05-21 | 宁波大学 | 一种数字图像隐写方法及秘密信息提取方法 |
CN110136074A (zh) * | 2019-03-26 | 2019-08-16 | 中国人民解放军战略支援部队信息工程大学 | 基于最小二乘法的高动态范围图像隐密像素比率估计算法 |
Non-Patent Citations (2)
Title |
---|
YUE GUO等: "A fast coding method for distortion-free data hiding in high dynamic range image" * |
高伟: "图像隐写分析及HDR图像隐写技术研究" * |
Also Published As
Publication number | Publication date |
---|---|
CN112734664B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lee et al. | Reversible image authentication based on watermarking | |
Lee et al. | Embedding capacity raising in reversible data hiding based on prediction of difference expansion | |
Yang et al. | A contrast-sensitive reversible visible image watermarking technique | |
Chang et al. | A reversible data hiding scheme for VQ indices using locally adaptive coding | |
Lee et al. | Adjustable prediction-based reversible data hiding | |
Chang et al. | A reversible compression code hiding using SOC and SMVQ indices | |
Chan et al. | A HDWT-based reversible data hiding method | |
CN111464717B (zh) | 利用直方图平移的具有对比度拉升的可逆信息隐藏方法 | |
Wu et al. | A high capacity reversible data hiding scheme with edge prediction and difference expansion | |
Hsu et al. | Dual-watermarking by QR-code Applications in Image Processing | |
Hamza et al. | Novel secure hybrid image steganography technique based on pattern matching | |
CN113382127A (zh) | 一种弹性选择和游程编码的加密图像可逆信息隐藏方法 | |
Xiao et al. | Reversible data hiding using histogram shifting in small blocks | |
Yao et al. | Reversible data hiding in encrypted images using global compression of zero-valued high bit-planes and block rearrangement | |
CN110533569B (zh) | 基于二次差值扩展的水印处理方法 | |
CN112734664A (zh) | 一种对高动态范围图像的秘密信息嵌入和提取方法 | |
Lee et al. | A data hiding scheme based on turtle-shell for AMBTC compressed images | |
Chang et al. | Reversible steganography for BTC-compressed images | |
Murthy et al. | A block-wise histogram shifting based reversible data hiding scheme with overflow handling | |
CN115103081A (zh) | 基于混合预测和哈夫曼编码的加密图像可逆数据隐藏方法 | |
RU2288544C2 (ru) | Способ внедрения дополнительной информации в цифровые изображения | |
Lu et al. | Lossless nibbled data embedding scheme based on difference expansion | |
Lysenko et al. | Applying of Kutter-Jordan-Bossen steganographic algorithm in video sequences | |
Joshi et al. | A new method of image steganography using last three bit plane of gray scale images | |
Jinna et al. | Lossless image watermarking using lifting wavelet transform |
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 |