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

图像处理方法及装置、存储介质、终端与流程

2021-11-22 13:19:00 来源:中国专利 TAG:


1.本发明涉及图像处理领域,尤其涉及图像处理方法及装置、存储介质、终端。


背景技术:

2.数字媒体(digital media)大多都是以图像形式进行保存。目前,越来越多的数字媒体需要进行版权保护,通常通过将数字水印(digital watermark)嵌入到待保护的图像中,后续再提取出数字水印,从而验证版权的归属,避免非法盗版的威胁。因此,亟需一种图像处理方法,能够有效地在图像中嵌入数字水印,提高数字水印的效果。


技术实现要素:

3.本发明解决的技术问题是提供一种有效地在图像中嵌入数字水印的图像处理方法。
4.为解决上述技术问题,本发明实施例提供一种图像处理方法,所述方法包括:获取原始图像的多个原始像素矩阵和水印图像的水印像素序列,其中,所述原始像素矩阵与所述原始图像的颜色通道一一对应,每个原始像素矩阵中的元素为所述原始图像的像素点在对应的颜色通道的灰度值,所述水印像素序列中的元素是根据所述水印图像的像素点在预设的颜色通道的灰度值确定的;对每个颜色通道对应的原始像素矩阵进行分割处理,以得到该颜色通道对应的多个原始子矩阵;对于每个颜色通道对应的多个原始子矩阵,分别对每个原始子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵,其中,所述奇异值矩阵为m行n列的矩阵,m为该颜色通道对应的原始子矩阵的数量,n为所述原始子矩阵的奇异值的个数,所述奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值,m、n、i为正整数,i≤m;根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到多个水印图像像素矩阵,所述水印图像像素矩阵与所述颜色通道一一对应,其中,c为所述水印像素序列中的元素个数,k和c为正整数,k≤c≤m/2,l为0至之间的整数;根据所述多个水印图像像素矩阵生成目标图像。
5.可选的,所述水印像素序列中的元素与所述水印图像的像素点一一对应,对于所述水印图像的每个像素点,如果该像素点在所述预设的颜色通道的灰度值大于等于第一预设阈值,则该像素点在所述水印像素序列中对应的元素的值为1,否则该像素点在所述水印像素序列中对应的元素的值为0。
6.可选的,所述原始子矩阵为2行2列的矩阵。
7.可选的,对每个颜色通道对应的原始像素矩阵进行分割处理之前,所述方法还包括:对每个原始像素矩阵进行小波变换,以得到多个变换后的像素矩阵,并将所述多个变换后的像素矩阵作为所述多个原始像素矩阵。
8.可选的,分别对每个原始子矩阵进行奇异值分解处理之前,所述方法还包括:分别对每个原始子矩阵进行离散余弦变换处理,以得到多个变换后的子矩阵,并将所述多个变
换后的子矩阵作为所述多个原始子矩阵。
9.可选的,所述奇异值矩阵中每行中的元素是按照数值从大到小的顺序排列的,根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行中至少一部分的元素包括:对于每个颜色通道对应的奇异值矩阵,根据所述水印像素序列中第k个元素,更新该奇异值矩阵中第k c
×
l行中前n列的元素,其中,n为预设的正整数,且n≤n。
10.可选的,根据所述水印像素序列中第k个元素,更新所述奇异值矩阵中第k c
×
l行中前n列的元素包括:采用下列公式进行更新:
[0011][0012]
其中,a(k c
×
l,j)为更新前所述奇异值矩阵中第k c
×
l行第j列的元素的值,a

(k c
×
l,j)为更新后所述奇异值矩阵中第k c
×
l行第j列的元素的值,j为正整数且j≤n,b、d为预设的正整数,c
k
为所述水印像素序列中第k个元素的值。
[0013]
可选的,根据所述多个水印图像像素矩阵生成目标图像包括:根据每个颜色通道对应的水印图像像素矩阵,生成该颜色通道对应的多个第一水印图像子矩阵,其中,第i个第一水印图像子矩阵是根据所述水印图像像素矩阵第i行的元素生成的;对每个颜色通道对应的多个第一水印图像子矩阵分别进行奇异值分解的逆变换处理,以得到该颜色通道对应的多个第二水印图像子矩阵;对每个颜色通道对应的多个第二水印图像子矩阵进行拼接处理,以得到该颜色通道对应的目标像素矩阵;根据各个颜色通道对应的目标像素矩阵生成所述目标图像。
[0014]
可选的,所述方法还包括:根据所述目标图像提取水印解码图像,并对所述水印解码图像与所述水印图像进行相似度检测。
[0015]
可选的,根据所述目标图像提取水印解码图像包括:生成多个目标像素矩阵,其中,所述目标像素矩阵与所述目标图像的颜色通道一一对应,每个目标像素矩阵中的元素为所述目标图像的像素点在对应的颜色通道的灰度值;对每个颜色通道对应的目标像素矩阵进行分割处理,以得到该颜色通道对应的多个目标子矩阵;对每个目标子矩阵进行奇异值分解处理,以得到该颜色通道对应的目标奇异值矩阵,其中,所述目标奇异值矩阵中第q行的元素为第q个目标子矩阵的奇异值,q为正整数,c≤q,q小于等于所述目标奇异值矩阵的行数;根据所述目标奇异值矩阵中第k行的至少一部分元素的值,确定水印解码序列中第k个元素的值,以得到所述水印解码序列;根据所述水印解码序列生成所述水印解码图像。
[0016]
本发明实施例还提供了一种图像处理装置,所述装置包括:获取模块,用于获取原始图像的原始像素矩阵和水印图像的水印像素序列,其中,所述原始像素矩阵与所述原始图像的颜色通道一一对应,每个原始像素矩阵中的元素为所述原始图像的像素点在对应的颜色通道的灰度值,所述水印像素序列中的元素是根据所述水印图像的像素点在预设的颜色通道的灰度值确定的;分割模块,用于对每个颜色通道对应的原始像素矩阵进行分割处理,以得到该颜色通道对应的多个原始子矩阵;奇异值分解模块,用于对于每个颜色通道对应的多个原始子矩阵,分别对每个原始子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵,其中,所述奇异值矩阵为m行n列的矩阵,m为该颜色通道对应的原始子矩阵的数量,n为所述原始子矩阵的奇异值的个数,所述奇异值矩阵中第i行的元素为第i个原
始子矩阵的奇异值,m、n、i为正整数,i≤m;更新模块,用于根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到多个水印图像像素矩阵,所述水印图像像素矩阵与所述颜色通道一一对应,其中,c为所述水印像素序列中的元素个数,k和c为正整数,k≤c<m,l为0至之间的整数;目标图像生成模块,用于根据所述多个水印图像像素矩阵生成目标图像。
[0017]
本发明实施例还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述的图像处理方法的步骤。
[0018]
本发明实施例还提供一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述的图像处理方法的步骤。
[0019]
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
[0020]
在本发明实施例的方案中,根据水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到各个颜色通道对应的水印图像像素矩阵,然后根据水印图像像素矩阵生成目标图像。采用这样的方案时,由于奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值,因此,根据水印像素序列中第k个元素进行更新时,更新的是第k c
×
l个原始子矩阵的奇异值。由于l为0至m/c之间的整数,且c≤m/2,因此,水印像素序列的第k个元素的值被添加至多个原始子矩阵的奇异值中。由于原始子矩阵是对原始图像的原始像素矩阵进行分割得到的,不同的原始子矩阵对应原始图像的不同位置,因此,根据水印像素序列中第k个元素进行更新时,水印像素序列的第k个元素的值可以被添加至原始图像的多个位置的像素信息中。由于k取1至c之间的正整数,因此水印像素序列中的所有元素均被添加至原始图像的多个位置。进一步地,由于水印像素序列中的元素是根据水印图像的像素点在预设的颜色通道的灰度值确定的,因此水印像素序列包括水印图像的像素信息,因此,采用本发明实施例的方案,可以在原始图像的不同位置处添加水印图像的像素信息,由此得到的目标图像可以包含丰富的水印图像的信息,因此添加水印的效果更好。即使对目标图像进行压缩、裁减等处理,仍然可以很好地检测、提取出水印图像,鲁棒性更好。
[0021]
进一步,本发明实施例的方案中,水印像素序列中的元素与水印图像的像素点一一对应,对于所述水印图像的每个像素点,如果该像素点在所述预设通道的灰度值大于等于第一预设阈值,则该像素点在所述水印像素序列中对应的元素的值为1,否则该像素点在所述水印像素序列中对应的元素的值为0,也即,水印像素序列中元素的值为0或1,因此,根据水印像素序列更新奇异值矩阵时,即可以加入水印图像的信息,又可以减少与更新前的数据的差异,从而可以使最终得到的目标图像与原始图像相比,色彩失真较少,从而可以平衡透明性和鲁棒性的需求。
[0022]
进一步,本发明实施例的方案中,对每个原始子矩阵进行奇异值分解处理之前,分别对每个原始子矩阵进行离散余弦变换处理,由于变换后的子矩阵中的元素能够直观地体现原始图像中的低频信息,因此,先进行离散余弦变换处理,再对变换后的子矩阵进行奇异值分解,以得到奇异值矩阵,有利于快速、准确地确定奇异值矩阵中待更新的元素的位置。
附图说明
[0023]
图1是本发明实施例中第一种图像处理方法的流程示意图;
[0024]
图2是本发明实施例中第二种图像处理方法的流程示意图;
[0025]
图3是本发明实施例中第三种图像处理方法的流程示意图;
[0026]
图4是本发明实施例中一种图像处理装置的结构示意图。
具体实施方式
[0027]
如背景技术所述,亟需一种图像处理方法,能够有效地在图像中嵌入数字水印,提高数字水印的效果。
[0028]
本发明的发明人经过研究发现,透明性是衡量数字水印效果的一项重要指标,现有技术中为了使添加的水印图像尽可能地不被察觉,也即,为了避免水印图像造成对原始图像的显示效果的影响,添加至原始图像中的水印图像的信息十分有限。具体而言,通常根据水印图像的像素个数对原始图像进行切分,也即,切分后的图像块的数量与水印图像的像素个数相同,然后将水印图像的各个像素的像素信息分别添加至对应的图像块中。因此,采用这种方案时,添加的水印图像的信息十分有限,当添加水印后的图像被压缩或裁减后,无法很好地检测出水印图像,也即,鲁棒性较差。
[0029]
为了解决上述技术问题,本发明实施例提供一种图像处理方法。在本发明实施例的方案中,根据水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到各个颜色通道对应的水印图像像素矩阵,然后根据水印图像像素矩阵生成目标图像。采用这样的方案时,由于奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值,因此,根据水印像素序列中第k个元素进行更新时,更新的是第k c
×
l个原始子矩阵的奇异值。由于l为0至m/c之间的整数,且c≤m/2,因此,水印像素序列的第k个元素的值被添加至多个原始子矩阵的奇异值中。由于原始子矩阵是对原始图像的原始像素矩阵进行分割得到的,不同的原始子矩阵对应原始图像的不同位置,因此,根据水印像素序列中第k个元素进行更新时,水印像素序列的第k个元素的值可以被添加至原始图像的多个位置。由于k取1至c之间的正整数,因此水印像素序列中的所有元素均被添加至原始图像的多个位置。进一步地,由于水印像素序列中的元素是根据水印图像的像素点在预设的颜色通道的灰度值确定的,水印像素序列包括水印图像的像素信息,因此,采用本发明实施例的方案,可以在原始图像的不同位置处添加水印图像的像素信息,由此得到的目标图像可以包含丰富的水印图像的信息,因此添加水印的效果更好。即使对目标图像进行压缩、裁减等处理,仍然可以检测、提取出水印图像,鲁棒性更好。
[0030]
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
[0031]
参照图1,图1是本发明实施例中一种图像处理方法的流程示意图。所述图像处理方法可以由终端执行,所述终端可以是各种恰当的终端,例如手机、电脑、物联网设备等,但并不限于此。通过本发明实施例提供的方案,可以在原始图像中加入水印图像的像素信息,以得到目标图像,相比于原始图像,目标图像在原始图像的基础上增加了水印图像的信息,用户可以后续对目标图像进行水印图像的检测或提取,以证明原始图像的版权归属等。图1示出的图像处理方法可以包括如下步骤:
[0032]
步骤s101:获取原始图像的多个原始像素矩阵和水印图像的水印像素序列;
[0033]
步骤s102:对每个颜色通道对应的原始像素矩阵进行分割处理,以得到该颜色通道对应的多个原始子矩阵;
[0034]
步骤s103:对于每个颜色通道对应的多个原始子矩阵,分别对每个原始子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵;
[0035]
步骤s104:根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到多个水印图像像素矩阵,所述水印图像像素矩阵与所述颜色通道一一对应;
[0036]
步骤s105:根据所述多个水印图像像素矩阵生成目标图像。
[0037]
可以理解的是,在具体实施中,所述方法可以采用软件程序的方式实现,该软件程序运行于芯片或芯片模组内部集成的处理器中;或者,该方法可以采用硬件或者软硬结合的方式来实现。
[0038]
在步骤s101的具体实施中,可以获取原始图像,所述原始图像可以是实时采集到的,也可以是从外部获取的,还可以是预先存储在本地的数据集中的,但并不限于此。原始图像可以是各种颜色空间的图像,例如,rgb颜色空间、yuv颜色空间、cmyk颜色空间、hsv颜色空间等,但并不限于此,本发明实施例对此并不进行任何限制。
[0039]
进一步地,可以将原始图像转化为多个原始像素矩阵,原始像素矩阵为原始图像的像素矩阵(pixel array)。其中,原始像素矩阵与原始图像的颜色通道一一对应,每个原始像素矩阵中的元素为原始图像的像素点在对应的颜色通道的灰度值。具体而言,生成原始图像在多个颜色通道的原始像素矩阵。在一个非限制性的实施例中,可以将原始图像转化为3个原始像素矩阵,3个原始像素矩阵与r、g、b三个颜色通道一一对应,原始像素矩阵中的元素与原始图像中的像素点一一对应,每个原始像素矩阵中的元素的值为对应的像素点在对应的颜色通道的灰度值,原始像素矩阵中的元素的值可以是0~255之间的整数。例如,原始图像的分辨率为1920
×
1080,则可以生成3个1920行1080列(也即,1920
×
1080)的矩阵。
[0040]
进一步地,还可以获取水印图像,所述水印图像可以是从外部获取的,也可以是预先存储在本地的数据集中的,但并不限于此。水印图像可以是彩色图像,也可以是灰度图像。需要说明的是,本发明实施例中,水印图像的像素点个数远远小于原始图像中的像素点个数,更具体地,水印图像的像素点个数小于原始图像行方向上的像素点个数。
[0041]
进一步地,可以将水印图像转化为水印像素序列,其中,水印像素序列中的元素的个数可以与水印图像的像素点个数相同,水印像素序列中的元素与水印图像的像素点一一对应,更具体地,水印图像中第r行第t列的像素点对应于水印像素序列中第r
×
p t个元素,其中,p为水印图像在行方向的像素点个数,r、t、p为正整数,r≤p。
[0042]
进一步地,水印像素序列中元素的值是根据水印图像中对应的像素点在预设的颜色通道的灰度值确定的。该预设的颜色通道为多个原始像素矩阵对应的多个颜色通道中的任一颜色通道,例如,可以将b通道作为上述预设的颜色通道。
[0043]
具体而言,对于水印图像的每个像素点,如果该像素点在预设的颜色通道的灰度值大于等于第一预设阈值,则该像素点在水印像素序列中对应的元素的值为1,否则该像素点在水印像素序列中对应的元素的值为0。其中,第一预设阈值可以是预先设置的,例如,第
一预设阈值可以为128,但并不限于此。由此,本发明实施例的方案中通过二值化序列来表征水印图像的像素信息。
[0044]
需要说明的是,本发明实施例对于获取原始像素矩阵和获取水印像素序列的先后顺序并不进行限制。
[0045]
在步骤s102的具体实施中,可以对每个颜色通道的原始像素矩阵进行分割,以得到该颜色通道对应的多个原始子矩阵。需要说明的是,每个颜色通道对应的原始子矩阵的数量是相同的。还需要说明的是,对原始像素矩阵进行分割处理,也即,对原始像素矩阵进行分块处理。通过对原始像素矩阵进行分割处理,相当于将原始图像分割为互不重叠的多个图像块,也即,每个图像块通过原始子矩阵来表示。
[0046]
具体而言,原始子矩阵的行数和列数可以是预先设置的,可以根据预先设置的原始子矩阵的行数和列数对原始像素矩阵进行分割。在一个具体的例子中,原始子矩阵为2行2列的矩阵,或者为3行3列的矩阵,或者为4行4列的矩阵,但并不限于此。在一个非限制性的实施例中,原始子矩阵为2
×
2的矩阵,也即,原始子矩阵为2行2列的矩阵,对于1920
×
1080的原始像素矩阵,可以分割得到129600个2
×
2的矩阵。
[0047]
在一个具体的实施例中,在对原始像素矩阵进行分割之前,可以对各个原始像素矩阵进行小波变换(wavelet transform,wt),以得到多个变换后的像素矩阵。例如,原始像素矩阵为1920
×
1080的矩阵,经过小波变化后,对应的变换后的像素矩阵为960
×
540的矩阵,然后对变换后的像素矩阵进行分割。
[0048]
可以理解的是,对原始像素矩阵进行小波变换,再对变换后的矩阵进行后续处理,不仅可以保留原始像素矩阵中的主要信息,还可以大幅减小后续的计算量,有利于提高图像处理的效率。
[0049]
在步骤s103的具体实施中,对每个原始子矩阵进行奇异值分解(singular value decomposition,svd)处理,以得到奇异值矩阵,奇异值矩阵与颜色通道一一对应。
[0050]
具体而言,每个颜色通道对应的原始子矩阵的数量为m,每个原始子矩阵的奇异值的数量为n,奇异值矩阵为m行n列的矩阵,奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值(singular value),m、n、i为正整数,i≤m。
[0051]
更具体地,可以根据m
a
×
b
=v
a
×
a
×
s
a
×
b
×
d
tb
×
b
对第i个原始子矩阵进行奇异值分解处理,其中,m
a
×
b
为原始子矩阵,v
a
×
a
为左奇异向量,d
tb
×
b
右奇异向量,s
a
×
b
为奇异值向量。更具体地,s
a
×
b
为对角矩阵,s
a
×
b
对角线上元素的值为m
a
×
b
的奇异值。进一步地,可以根据各个原始子矩阵的奇异值生成奇异值矩阵,奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值。
[0052]
需要说明的是,奇异值分解是一种正交变换,可以将矩阵对角化,图像的像素特征是由分解得到的奇异值体现的,并且图像的奇异值通常比较稳定,在图像被压缩或者裁减时,奇异值变化较小,因此,本发明实施例中的奇异值矩阵可以体现原始图像中不同位置的像素特征。
[0053]
在一个具体的实施例中,对于每个颜色通道对应的多个原始子矩阵,可以先对每个原始子矩阵进行离散余弦变换(discrete cosine transform,dct)处理,以得到多个变换后的子矩阵,然后对多个变换后的子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵。
[0054]
需要说明的是,可以采用现有的恰当的方法进行离散余弦变换,本发明实施例对于离散余弦变换的具体过程并不进行限制。可以理解的是,离散余弦变换是将图像的空域信号转换到频域上,具有良好的去相关性。换言之,离散余弦变换可以将原始子矩阵分解到不同的频域上,变换后的子矩阵中的元素为频域系数,左上角区域的元素体现原始子矩阵中的低频信息,右下角区域的元素体现原始子矩阵中的高频信息,其中右下角区域的元素的值通常为0。
[0055]
在步骤s104的具体实施中,根据水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到多个水印图像像素矩阵。其中,c为所述水印像素序列中的元素个数,k和c为正整数,k≤c≤m/2,l为0至之间的整数,也即,l依次取0、1、2
……
[0056]
具体而言,对于每个颜色通道对应的奇异值矩阵,根据水印像素序列中第k个元素,更新该奇异值矩阵中第k c
×
l行的至少一部分的元素,l取0至之间的整数。由于奇异值矩阵中第i行的元素的值为第i个原始子矩阵的奇异值,因此,可以根据水印像素序列中第k个元素的值,更新第k c
×
l个原始子矩阵的奇异值。由于c≤m/2,因此,l≥2,也即,水印像素序列中的每个元素至少可以用于更新2个原始子矩阵的奇异值。由于原始子矩阵的奇异值用于表征原始图像中不同位置处的像素特征,因此,可以根据水印像素序列更新原始图像中多个位置的像素特征。
[0057]
更具体地,奇异值矩阵中每行的元素是按照数值从大到小的顺序排列的,可以根据水印像素序列中第k个元素,更新该奇异值矩阵中第k c
×
l行中前n列的元素,其中,n为预设的正整数,且n≤n。例如,n=1,或者,n=2,但并不限于此。进一步地,可以采用下列公式进行更新:
[0058][0059]
其中,a(k c
×
l,j)为更新前奇异值矩阵中第k c
×
l行第j列的元素的值,a

(k c
×
l,j)为更新后奇异值矩阵中第k c
×
l行第j列的元素的值,j为正整数且j≤n,b、d为预设的正整数,例如,b可以取10或20或30,c
k
为水印像素序列中第k个元素的值,c
k
取0或1。在一个非限制性的实施例中,b为20,d为4。
[0060]
需要说明的是,采用上述更新奇异值的方法,可以在尽可能多地加入水印图像的像素信息时,使得更新后的奇异值矩阵与更新前的奇异值矩阵差异较小,从而使得最终得到的目标图像与原始图像相比,色彩失真较少。
[0061]
在一个具体的例子中,水印图像的分辨率为192
×
108,则水印像素序列中元素个数c=20736,奇异值矩阵为129600
×
2的矩阵,也即,m=129600,水印像素序列中第k个元素,可以用于更新奇异值矩阵中第k 20736
×
l行,l依次取0、1、2、3、4、5、6。
[0062]
在步骤s105的具体实施中,可以对每个水印图像像素矩阵依次进行步骤s103、步
骤s102的逆处理,以生成目标图像。
[0063]
具体而言,根据每个颜色通道对应的水印图像像素矩阵,生成该颜色通道对应的多个第一水印图像子矩阵,其中,第i个第一水印图像子矩阵是根据水印图像像素矩阵第i行的元素生成的。更具体地,第一水印图像子矩阵为对角矩阵,第i个第一水印图像子矩阵中对角线上的元素的值依次为水印图像像素矩阵第i行的元素的值。
[0064]
进一步地,对于每个颜色通道对应的多个第一水印图像子矩阵,对各个第一水印图像子矩阵进行奇异值分解的逆变换处理,以得到该颜色通道对应的多个第二水印图像子矩阵。
[0065]
进一步地,对每个颜色通道对应的多个第二水印图像子矩阵进行拼接处理,以得到该颜色通道对应的目标像素矩阵,每个目标像素矩阵的元素与目标图像的像素点一一对应,目标像素矩阵的元素的值为对应的像素点在对应的颜色通道的灰度值。由此可以根据各个颜色通道的目标像素矩阵生成目标图像。
[0066]
需要说明的是,如果在步骤s103的具体实施中,先对原始子矩阵进行离散余弦变换,再对变换后的子矩阵进行奇异值分解处理,则在步骤s105的具体实施中,可以先对各个第二水印图像子矩阵进行逆离散余弦变换的处理,以得到逆变换后的子矩阵,再对各个逆变换后的子矩阵进行拼接处理,以得到该颜色通道对应的目标像素矩阵。
[0067]
还需要说明的是,如果在步骤s102的具体实施中,先对原始像素矩阵进行小波变换,再对变换后的像素矩阵进行分割,则在步骤s105的具体实施中,可以先对各个目标像素矩阵进行逆小波变换,以得到最终的目标像素矩阵。
[0068]
参照图2,图2是本发明实施例中第二种图像处理方法的流程示意图。图2示出的方法可以包括以下步骤:
[0069]
步骤s201:获取原始图像的多个原始像素矩阵和水印图像的水印像素序列;
[0070]
步骤s202:对每个颜色通道对应的原始像素矩阵进行小波变换,以得到多个变换后的像素矩阵,变换后的像素矩阵和颜色通道一一对应;
[0071]
步骤s203:对每个颜色通道对应的变换后的像素矩阵进行分割处理,以得到该颜色通道对应的多个原始子矩阵;
[0072]
步骤s204:对每个颜色通道对应的多个原始子矩阵进行离散余弦变换,以得到该颜色通道对应的多个变换后的子矩阵;
[0073]
步骤s205:对于每个颜色通道对应的多个变换后的子矩阵,分别对每个变换后的子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵;
[0074]
步骤s206:根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素,以得到多个水印图像像素矩阵,所述水印图像像素矩阵与所述颜色通道一一对应;
[0075]
步骤s207:根据所述多个水印图像像素矩阵生成目标图像。
[0076]
关于步骤s201至步骤s207的具体内容可以参照上文步骤s101至步骤s105的相关描述,在此不再赘述。
[0077]
参照图3,图3是本发明实施例中第三种图像处理方法。图3示出的图像处理方法可以用于从目标图像中提取水印解码图像。图3示出的图像处理方法可以包括如下步骤:
[0078]
步骤s301:生成多个目标像素矩阵,其中,所述目标像素矩阵与所述目标图像的颜
色通道一一对应,每个目标像素矩阵中的元素为所述目标图像的像素点在对应的颜色通道的灰度值;
[0079]
步骤s302:对每个颜色通道对应的目标像素矩阵进行分割处理,以得到该颜色通道对应的多个目标子矩阵;
[0080]
步骤s303:对每个目标子矩阵进行奇异值分解处理,以得到该颜色通道对应的目标奇异值矩阵,其中,所述目标奇异值矩阵中第q行的元素为第q个目标子矩阵的奇异值,q为正整数,c≤q,q小于等于所述目标奇异值矩阵的行数;
[0081]
步骤s304:根据所述目标奇异值矩阵中第k行的至少一部分元素的值,确定水印解码序列中第k个元素的值,以得到所述水印解码序列;
[0082]
步骤s305:根据所述水印解码序列生成所述水印解码图像。
[0083]
在步骤s301的具体实施中,可以先获取目标图像,所述目标图像可以是通过图1或图2所示的图像处理方法得到的。进一步可以根据目标图像生成多个目标像素矩阵,其中,所述目标像素矩阵与所述目标图像的颜色通道一一对应,每个目标像素矩阵中的元素为所述目标图像的像素点在对应的颜色通道的灰度值。更多关于步骤s301的具体内容可以参照图1中步骤s101的相关描述,在此不再赘述。
[0084]
步骤s302中对目标像素矩阵进行分割处理,以得到多个目标子矩阵的具体内容,可以参照图1中步骤s102中对原始像素矩阵进行分割的相关描述,在此不再赘述。
[0085]
步骤s303中对每个目标子矩阵进行奇异值分解处理,以得到该颜色通道对应的目标奇异值矩阵的具体内容,可以参照图1中步骤s103中对原始子矩阵进行奇异值分解处理,以得到该颜色通道对应的奇异值矩阵的相关描述,在此不再赘述。
[0086]
在步骤s304的具体实施中,根据目标奇异值矩阵中第k行的至少一部分元素的值,确定水印解码序列中第k个元素的值,以得到所述水印解码序列。
[0087]
在一个具体的实施例中,目标奇异值矩阵中每行的元素是按照数值从大到小的顺序排列的,可以根据目标奇异值矩阵中第k行中前n列的元素的值,确定水印解码序列中第k个元素的值。需要说明的是,根据目标奇异值矩阵中第k行中前n列的元素的值,确定水印解码序列中第k个元素的值的过程,是根据所述水印像素序列中第k个元素,更新各个颜色通道对应的奇异值矩阵中第k c
×
l行的至少一部分的元素的逆运算。
[0088]
更具体地,对于目标奇异值矩阵中第k行中前n列中第j列的元素e(k,j)的值,计算的余数其中,b为公式(1)中预设的正整数。进一步地,可以将与进行比较,如果小于等于则水印解码序列中第k个元素的值为0,如果大于则水印解码序列中第k个元素的值为1。在一个非限制性的实施例中,b为20,d为4。
[0089]
在步骤s305的具体实施中,可以根据水印解码序列生成水印解码图像。具体而言,水印解码序列的元素与水印解码图像的像素点个数一一对应,如果水印解码序列中第k个元素的值为1,则第k个元素对应的像素点的灰度值为第一预设灰度值,如果水印解码序列
unit,简称cpu),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现成可编程门阵列(field programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0102]
还应理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read

only memory,简称rom)、可编程只读存储器(programmable rom,简称prom)、可擦除可编程只读存储器(erasable prom,简称eprom)、电可擦除可编程只读存储器(electrically eprom,简称eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,简称ram)可用,例如静态随机存取存储器(static ram,简称sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronous dram,简称sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,简称ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,简称esdram)、同步连接动态随机存取存储器(synchlink dram,简称sldram)和直接内存总线随机存取存储器(direct rambus ram,简称dr ram)。
[0103]
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机程序可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。
[0104]
在本技术所提供的几个实施例中,应该理解到,所揭露的方法、装置和系统,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的;例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式;例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0105]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。例如,对于应用于或集成于芯片的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于芯片模组的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件
的方式实现,不同的模块/单元可以位于芯片模组的同一组件(例如芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片模组内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于终端的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于终端内同一组件(例如,芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于终端内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现。
[0106]
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,表示前后关联对象是一种“或”的关系。
[0107]
本技术实施例中出现的“多个”是指两个或两个以上。
[0108]
本技术实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本技术实施例中对设备个数的特别限定,不能构成对本技术实施例的任何限制。
[0109]
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
再多了解一些

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

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

相关文献