一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区块链和离散小波变换的安全图像水印生成方法与流程

2022-02-24 12:53:50 来源:中国专利 TAG:


1.本发明属于信息安全领域,涉及区块链领域,特别是一种图像数据版权保护方法,旨在以一种安全的方式保护图像的版权信息。


背景技术:

2.随着多媒体技术的不断发展和普及,数字版权纠纷也日益严重。图像作为一种重要的信息载体,对其进行版权保护具有重要研究意义和实用价值。数字水印是一种用于版权保护和认证的技术,它通过将一段数据嵌入到图像中来完成对图像的保护。水印可以被图像所有者检测或提取,因此它能够对非法的篡改或滥用做出反应,防止图像未经授权就被使用。利用图像、音频或视频等数据进行水印嵌入时,所嵌入的水印必须是不可被感知的,以保证水印的安全性要求。
3.目前许多学者对图像中的水印技术进行了研究。niu等人(niu pp,wang xy,liu yn,yang hy.a robust color image watermarking using local invariant significant bitplane histogram[j].multimedia tools and applications,2017,76(3):3403-3433.)提出了一种用于rgb图像的局部不变的有效位平面直方图的鲁棒水印方法,该方法基于概率密度的特征点检测器和颜色不变性模型从彩色图像中提取特征点,具有良好的鲁棒性,但其信息嵌入容量较小。
[0004]
jamal等人(jamal ss,khan mu,shah t.a watermarking technique with chaotic fractional s-box transformation[j].wireless personal communications,2016,90(4):2033-2049.)利用离散傅里叶变换对图像进行分解,在此基础上,将混沌图产生的随机值嵌入图像中,该方法具有很高的鲁棒性,但是其计算复杂较高。
[0005]
vaidya等人(vaidya sp,mouli pc.adaptive digital watermarking for copyright protection of digital images in wavelet domain[j].procedia computer science,2015,58:233-240.)采用bhattacharyya和kurtoris技术评估缩放因子,在变换域中引入自适应水印方案,该方法在图像上应用两级离散小波变化将图像分解为四个子带,将水印嵌入到图像的ll子带中,但该方法的水印信息将可能被攻击者获得,其水印安全性存在不足。
[0006]
cao等人(cao x,fu z,sun x.a privacy-preserving outsourcing data storage scheme with fragile digital watermarking-based data auditing[j].journal of electrical and computer engineering,2016,vol.2016:article 3219042.)提出了一种基于逻辑映射混沌加密方法的水印方法,该方法提供了很高的信息嵌入数据容量,由于该方法未经过任何攻击测试,其安全性难以得到保障。
[0007]
传统方法利用密钥生成水印,并直接将其嵌入到ll分量中,由于ll分量携带图像的大部分信息,该水印生成和嵌入方法会导致原始图像失真。


技术实现要素:

[0008]
为了克服现有技术的不足,本发明提供一种基于区块链和离散小波变换的安全图像水印生成方法,利用离散小波变换和图像边缘检测生成水印并将水印嵌入到图像中。本发明中水印由图像本身信息生成,并通过缩放将水印嵌入到ll分量中,使得水印具有较高的鲁棒性和不可见性,对原始图像的影响较小;再利用区块链技术提高水印图像的安全性。因此,本发明能够同时兼顾数字水印的鲁棒性和安全性,使得数字水印技术能够应用于图像知识产权保护、数字防伪等领域,并且能够克服上述文献中存在的计算复杂度过高和鲁棒性低等问题,保证该数字水印方法具有良好的鲁棒性和安全性。
[0009]
本发明解决其技术问题所采用的技术方案包括以下步骤:
[0010]
(1)利用离散小波变换获得图像的离散小波变换域,将ll小波系数的边缘系数和扩张分量的差异作为水印,实现基于边缘检测的数字水印嵌入;
[0011]
(2)通过逆离散小波变换重建已嵌入水印的图像,算法加密重建后的图像;将图像作为区块链数据进行传输;
[0012]
(3)将图像解密,并利用离散小波变换和边缘检测计算解密图像的水印,将其与原始水印进行对比,判断图像或水印是否被篡改。
[0013]
所述的步骤(1)读取原始图像i1,将原始图像转换为长宽相等且能够被32整除的图像i2;对图像i2进行二级小波分解;利用边缘检测算子对ll分量进行边缘系数的计算,并计算边缘系数和膨胀分量的差值,将此差值作为水印;利用线性缩放方法将水印嵌入到ll分量中,通过逆离散小波变换得到嵌入水印的图像i3。
[0014]
所述的边缘检测算子包括sobel算子、roberts算子、prewitt算子、laplacian算子和canny算子。
[0015]
所述的步骤(2)调整嵌入水印的图像i3的大小,转换为长宽相等且能够被32整除的图像;用arnold变换将调整后的图像置乱;利用sha256算法对置乱图像进行加密。
[0016]
所述的步骤(3)解密被使用或传输后的安全水印图像i5′
,调整其尺寸并利用arnold逆变换重构图像;将重构图像按照水印嵌入过程对其做离散小波变换、边缘检测和扩张分量操作,获得一个新的水印;计算原始水印和新水印之间的相似度,若相似度不大于某一阈值,则表示图像没有被篡改。
[0017]
本发明的有益效果是:
[0018]
(1)本发明提出了一种基于边缘检测和区块链的数字水印方法,该水印是不可见的,具有良好的鲁棒性和安全性。
[0019]
(2)本发明提出一种新的鲁棒水印生成和嵌入方法,利用离散小波变换得到图像的离散小波变换域,在离散小波变换域中进行边缘检测和水印嵌入,提高了嵌入水印的鲁棒性和不可见性,使得水印对原始图像的影响尽可能小。
[0020]
(3)本发明利用区块链技术对嵌入水印的图像进行加密/解密,这保证了图像在传输过程中的安全性,使其难以被篡改。
附图说明
[0021]
图1为本发明整体过程图,它直观展示了本发明中各个步骤之间的时序逻辑关系;
[0022]
图2为本发明中水印生成和嵌入过程的流程图;
[0023]
图3为本发明中基于区块链的加密过程示意图;
[0024]
图4为本发明中图像解密和验证流程示意图。
具体实施方式
[0025]
下面结合附图和实施例对本发明进一步说明,本发明包括但不仅限于下述实施例。
[0026]
本发明提出了一种新的鲁棒、安全的数字水印方法,该方法主要分为三个阶段:
[0027]
第一阶段:利用离散小波变换获得图像的离散小波变换域,将ll小波系数的边缘分量和扩张分量的差异作为水印,以实现基于边缘检测的数字水印嵌入;
[0028]
第二阶段:通过逆离散小波变换重建已嵌入水印的图像,再利用sha256算法加密重建后的图像,以实现基于区块链的图像水印安全;将嵌入水印的图像作为区块链数据进行传输;
[0029]
第三阶段:将加密之后的图像解密,并利用离散小波变换和边缘检测计算解密图像的水印,将其与原始水印进行对比,判断图像或水印是否被篡改,以解密区块链数据完成图像重建,并判断图像是否被篡改。边缘检测在图像变换域中进行,从而提高了水印嵌入的鲁棒性。利用区块链技术能够保护嵌入水印的图像,防止数据被篡改。
[0030]
本发明的详细流程如图1所示,包括以下步骤:
[0031]
第一阶段:在数字水印嵌入过程中,首先读取原始图像i1,再将原始图像转换为长宽相等且能够被32整除的图像,如256
×
256大小的图像i2用于水印的嵌入,然后对图像i2进行二级小波分解,以提取低通和高通小波系数,最后利用边缘算子对ll分量进行边缘系数的计算。具体的水印嵌入过程的步骤如下:
[0032]
步骤s1:将数字水印嵌入原始图像i1中。
[0033]
步骤s11:读取原始图像i1,将其大小调整为256
×
256的图像i2。
[0034]
步骤s12:定义边缘检测算子的边缘检测算子。
[0035]
边缘检测的目的是利用通过边缘检测算子,识别图像中像素值发生突变的边界。利用边缘检测算子(如sobel算子、roberts算子、prewitt算子、laplacian算子和canny算子等)进行边缘检测。
[0036]
步骤s13:初始化离散小波变换的变量和大小。
[0037]
步骤s14:利用db1小波对图像i2进行二级离散小波变换,并进行ll分解。
[0038]
步骤s15:计算ll分量的边缘系数。
[0039]
步骤s17:计算边缘系数的膨胀分量,并计算边缘系数和膨胀分量的差值,将此差值作为水印。
[0040]
步骤s18:利用线性缩放方法将水印嵌入到ll分量中,再通过逆离散小波变换来再现带水印的图像i3。
[0041]
第二阶段:在得到水印图像i3后,本发明利用基于区块链的加密方法对水印图像进行加密,基于区块链的加密方法流程图如图3所示。在图像加密过程中,首先调整水印图像i3的大小,再打乱调整后的图像,在此基础上,利用sha256算法对打乱图像进行加密,以获得加密后的图像,并将其作为区块链数据进行传输。具体的图像加密过程算法步骤如下:
[0042]
步骤s2:基于区块链的图像加密过程。
[0043]
步骤s21:将水印图像i3转换为长宽相等且能够被32整除的图像,如512
×
512大小,以保证加密算法能够正常工作,并利用arnold变换将图像进行置乱,以获得置乱图像i4。其中arnold变换规则为:
[0044][0045]
步骤s22:利用32位块的加密哈希sha256算法生成基于区块链加密的安全水印图像i5。
[0046]
第三阶段:验证图像或者水印是否被篡改。根据被使用或传输后的安全水印图像i5′
,对其进行解密,再调整其尺寸并利用arnold逆变换重构图像;将重构图像按照水印嵌入过程对其做离散小波变换、计算边缘检测分量和扩张分量等操作,获得一个新的水印;计算原始水印和新水印之间的相似度,若相似度不大于某一阈值,则表示图像没有被篡改。具体的步骤如下:
[0047]
步骤s3:图像解密和验证过程。
[0048]
步骤s31:接收端对接收到的图像i5′
进行解密,以获得解密图像i6。
[0049]
步骤s32:对解密图像i6进行重构和离散小波变换,得到解密图像的变换域。
[0050]
步骤s33:在变换域内进行边缘检测,计算扩张分量。
[0051]
步骤s34:计算提取解密图像i6的水印。
[0052]
步骤s35:计算加密之前的水印和解密后的水印的相似度。
[0053]
步骤s36:若水印相似度不大于某一阈值,则表示安全水印图像i5没有被篡改;否则,表示安全水印图像i5被非法篡改。
[0054]
本发明的实施例包括以下步骤:
[0055]
步骤s1:将数字水印嵌入原始图像i1中。
[0056]
步骤s11:读取原始图像i1,将其大小调整为256
×
256的图像i2。
[0057]
步骤s12:定义边缘检测算子的边缘检测掩码。
[0058]
常用的边缘检测算子有roberts算子、sobel算子、prewitt算子、canny算子等,选择sobel做详细说明。sobel算子是一种一阶微分算子,它利用图像邻近的梯度来计算一个像素的梯度,并根据绝对值进行取舍,其计算公式为:
[0059][0060]
sobel算子的边缘检测卷积核为:
[0061]-1-2-1000121
[0062]
步骤s13:初始化离散小波变换的变量和大小。
[0063]
步骤s14:利用db1小波对图像i2进行二级离散小波变换,并进行ll分解。
[0064]
步骤s15:计算ll分量的边缘系数。
[0065]
步骤s17:计算边缘系数的膨胀分量,并计算边缘系数和膨胀分量的差值,将此差值作为水印。
[0066]
x(u,v)
ed
是ll分量的边缘系数,x(u,v)
di
是x(u,v)
ed
的膨胀分量,计算边缘分量和
膨胀分量之差,产生最小化的特征,并将其作为水印嵌入到图像中,计算公式为:
[0067]
x(u,v)=x(u,v)
di-x(u,v)
ed
[0068]
步骤s18:应用线性缩放方法将水印嵌入到ll分量中,再通过逆离散小波变换来再现带水印的图像i3。
[0069]
为了提高水印的不可见性,对特征进行缩放是一种有效的做法,在本发明中使用缩放系数α实现水印特征的缩放。具体地:
[0070]
w(x,y)=(1-α)*(y(u,v)) αn
x,y
[0071]
定义为二级dwt的ll子带,最终嵌入水印的图像为we可以通过如下公式得到:
[0072][0073]
通过逆离散小波变换再现图像,最终得到嵌入水印的图像。在得到嵌入水印的图像后,本发明采用基于区块链的加密/解密方法对水印图像进行加密,基于区块链的安全性方法流程图如图3所示。
[0074]
具体的算法流程如下:
[0075]
步骤s2:基于区块链的图像加密过程。
[0076]
步骤s21:将水印图像i3的大小调整为512
×
512,假设大小调整后的图像为i
′3,利用arnold算法将图像i3'进行打乱,以获得打乱图像i4。
[0077]
i4=shuffle(i
′3)
[0078]
步骤s22:利用32位块的加密哈希sha256算法生成基于区块链加密的安全水印图像i5。
[0079]
sha256算法主要分为两个阶段来实现。(1)第一阶段:图像大小被重新调整为512
×
512,使用向量m填充每个512位,其中每个块的长度位为32位;(2)第二阶段:每个512位被表示为:
[0080]
[m
(1)
,m
(2)


,m
(m)
]
[0081]
依次计算每个消息块的哈希值:
[0082][0083]
其中,cf是sha256的压缩函数,s
(k)
是第k个消息块,k=1,2

,m,而hk就是第k个消息块的哈希值。
[0084]
步骤s3:图像解密和验证过程。
[0085]
步骤s31:接收端对接收到的图像i5′
进行解密,并将图像的大小再次调整为256
×
256,得到图像i6。
[0086]
步骤s32:对解密图像i6进行重构和离散小波变换,得到解密图像的变换域。
[0087]
步骤s33:在变换域之中进行边缘检测,计算扩张分量。
[0088]
步骤s34:计算提取解密图像i6的水印。
[0089]
步骤s35:计算加密之前的水印和解密后的水印的相似度。
[0090]
步骤s36:若水印相似度不大于某一阈值,则表示安全水印图像i5没有被篡改;否则,表示安全水印图像i5被非法篡改。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献