CN115760537A - 数字水印写入方法及装置、数字水印校验方法及装置 - Google Patents
数字水印写入方法及装置、数字水印校验方法及装置 Download PDFInfo
- Publication number
- CN115760537A CN115760537A CN202211510733.0A CN202211510733A CN115760537A CN 115760537 A CN115760537 A CN 115760537A CN 202211510733 A CN202211510733 A CN 202211510733A CN 115760537 A CN115760537 A CN 115760537A
- Authority
- CN
- China
- Prior art keywords
- watermark
- pixel
- image
- carrier
- width
- 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.)
- Pending
Links
Images
Abstract
本发明提供了一种数字水印写入方法及装置、数字水印校验方法及装置,涉及图像处理技术领域。方法包括:根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。因此,本发明能够解决相关技术中逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种数字水印写入方法及装置、数字水印校验方法及装置。
背景技术
数字水印是将特定的数字信号嵌入数字产品中,且不影响载体使用的一种技术,属于隐写术的范畴,主要用来保护数字产品版权、完整性、防复制或去向追踪,具体分为时域水印嵌入算法(将水印嵌入到时域采样数据中)和变换域水印嵌入算法(先对音频做变换,将水印嵌入到变换域系数中)。
然而在现有技术中,通过逐字节将数字水印写入载体中,而导致数字水印的隐蔽性差,容易被发现或篡改。
发明内容
本发明实施例提供一种数字水印写入方法及装置、数字水印校验方法及装置,以解决相关技术中逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
为了解决上述技术问题,本发明是这样实现的:
第一方面,本发明实施例提供了一种水印图像写入方法,所述方法包括:根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
进一步地,在所述根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点之前,还包括:根据所述水印图像的宽高坐标、写入值获取所述水印图像的写入宽高坐标;若所述载体图像的宽高坐标大于或等于所述写入宽高坐标,则确定所述载体图像中能够写入所述水印图像,并根据载体图像的宽高坐标确定水印图像的载入点。
进一步地,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点,包括:根据载体图像的宽高坐标以及所述写入宽高坐标确定载入点范围;遍历所述载入点范围内的所有载体像素,并随机选取一个载体像素作为所述载入点。
进一步地,所述根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素,包括:根据所述像素分布依次确定所述各个水印像素在所述载体图像中对应的各个载体像素;依次将所述各个像素值载入对应的所述载体像素。
进一步地,所述依次将所述各个像素值载入对应的所述水印像素,包括:获取所述水印像素对应第一像素值以及所述水印像素对应的载体像素对应的第二像素值;若所述第一像素值与所述第二像素值不同,在所述载体像素中写入所述第一像素值。
第二方面,本发明实施例还提供了一种水印图像校验方法,所述方法包括:根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
进一步地,所述根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点,包括:根据所述水印图像的宽高坐标、写入值获取所述水印图像的写入宽高坐标;根据载体图像的宽高坐标以及所述写入宽高坐标确定载入点范围;遍历所述载入点范围内的所有载体像素,依次选取载体像素作为所述载入点。
进一步地,所述方法还包括:若当前的所述载入点对应的所述各个水印像素的像素值与所述各个载体像素的像素值不匹配,则在所述载入点范围中的下一个所述载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值。
第三方面,本发明实施例还提供了一种水印图像写入装置,所述装置包括:确定模块,用于根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;写入模块,用于根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
第四方面,本发明实施例还提供了一种水印图像校验装置,所述装置包括:选取模块,用于根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;校验模块,用于根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;确定模块,用于若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
第五方面,本发明实施例另外提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如前第一方面所述的水印图像写入方法或第二方面所述的水印图像校验方法的步骤。
第六方面,本发明实施例另外提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前第一方面所述的水印图像写入方法或第二方面所述的水印图像校验方法的步骤。
在本发明实施例中,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。本实施例中根据载体图像的宽高坐标确定水印图像的载入点,并根据水印图像的像素分布写入水印图像,使得写入至载体图像中的水印图像保持了原有的像素分布以及图像内容,同时,基于水印图像的像素分布进行水印图像的写入同时还方便后续水印图像的读取和校验。本发明解决了现有技术中由于通过逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中的一种水印图像写入方法的流程示意图;
图2是本发明实施例中的一种RGB色板的示意图;
图3是本发明实施例中的一种RGB最低有效位的示意图;
图4是本发明实施例中的一种水印图像写入的示意图;
图5是本发明实施例中的一种水印图像校验方法的流程示意图;
图6是本发明实施例中的一种水印图像写入装置的结构示意图;
图7是本发明实施例中的一种水印图像校验装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
根据本发明实施例,提供了一种水印图像写入方法,如图1所示,该方法具体可以包括以下步骤:
S102,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
S104,根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。
在本实施例中,载体图像为原本存在图像内容的载体图像,本实施例中的载体图像包括但不限于无损压缩图像PNG和无压缩图像BMP。
具体地,PNG和BMP图像中的像素一般是有由RGB三原色组成,每一种原色占用一个字节,取值范围为0~28-1,一个像素占用三个字节,即有224-1种色值。而人类的肉眼可以区分约1000万种不同的颜色,还剩有600多万人类肉眼无法区分,可以用来将数字水印隐写到图像中。如图2所示,每一行的颜色均不同,单是肉眼无法区分颜色的区别。
需要说明的是,LSB(Least Significant Bit)最低有效位是将信息嵌入到载体图像像素值的最低有效位(最不显著位)的方法,改变这一位置对载体图像的品质影响最小。当仅仅更改颜色分量的最低位时,肉眼不能区分这前后的变化,LSB就是在该位置存放信息,如图3所示,要写入的信息的二进制为000111000111000111,转十进制为29127,就是要隐写的信息。
在一个例子中,水印图像上的一个水印像素包含RGB三种原色,共计3*8=24比特,隐写入载体图像后,载体图像中的每个载体像素可以隐写3比特,则需要8个像素。如图4所示,假设需要的载体图像的载体像素数为n,为了完成按照水印图像的画像进行隐写,需满足其中N是自然数,因此n取值为9。
在本实施例中,首先获取载体图像的宽高坐标以及水印图像的宽高坐标,确定载体图像可以进行水印图像写入的范围。在可以写入水印图像的范围内,确定水印图像的载入点。
然后,根据水印图像各个水印像素的像素值,从载入点中按照水印图像中水印像素的像素分布将水印图像载入至载体图像,完成水印图像的写入。
在具体地应用场景中,像素值为RGB三原色的比特值,水印图像的水印像素的写入过程包括但不限于:获取水印像素的RGB三原色最低位的比特值以及载体像素的RGB三原色的比特值,对比水印像素的比特值以及载体像素的比特值,若二者比特值不一致,则通过水印像素的比特值对载体像素进行覆写,实现了水印像素的载入。
需要说明的是,通过本实施例,根据载体图像的宽高坐标确定水印图像的载入点;根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。本实施例中根据载体图像的宽高坐标确定水印图像的载入点,并根据水印图像的像素分布写入水印图像,使得写入至载体图像中的水印图像保持了原有的像素分布以及图像内容,同时,基于水印图像的像素分布进行水印图像的写入同时还方便后续水印图像的读取和校验。本发明解决了现有技术中由于通过逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
可选地,在本实施例中,在根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点之前,还包括但不限于:根据水印图像的宽高坐标、写入值获取水印图像的写入宽高坐标;若载体图像的宽高坐标大于或等于写入宽高坐标,则确定载体图像中能够写入水印图像,并根据载体图像的宽高坐标确定水印图像的载入点。
具体地,水印图像的写入值包括但不限于水印图像中水印像素的RGB三种原色对应的比特值。在实际的应用场景中,每个载体像素可以隐写的比特值是固定的。
例如,如图4所示,水印图像上的一个水印像素包含RGB三种原色,共计3*8=24比特,将水印像素隐写入载体图像后,每个载体像素可以隐写3比特,则需要8个载体像素。因此,在实际应用场景中,水印图像中的一个水印像素需要在入至8个载体像素中,因此写入值为3。作为实际的写入效果,相当于将水印像素放大3倍。
在本实施例中,根据载体图像Z的载体像素、水印图像S的载体像素,判断能否隐写,记录载体图像Z与水印图像S的宽高坐标分别为Z(w,h),S(w,h),则载入条件:Z(w,h)≥3*S(w,h)。
在满足上述载入条件的情况下,则表示在载体图像中存在可以写入水印图像的空间,载体图像中能够写入水印图像。然后根据载体选定的宽高坐标确定水印图像的载入点。
通过上述示例,根据水印图像的宽高坐标、写入值获取水印图像的写入宽高坐标;若载体图像的宽高坐标大于或等于写入宽高坐标,根据载体图像的宽高坐标确定水印图像的载入点,保证了载体图像中存在足够的空间来保证水印图像的全部写入。
可选地,在本实施例中,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点,包括但不限于:根据载体图像的宽高坐标以及写入宽高坐标确定载入点范围;遍历载入点范围内的所有载体像素,并随机选取一个载体像素作为载入点。
具体地,在本实施例中,在载体图像内随机选择载入点M,记M的宽高坐标为M(w,h),则M(w,h)≤(Zw-3*Sw,Zh-3*Sh)。
在本实施例中,将水印图像S的水印像素F映射到载体图像Z中,假设水印图像的水印像素坐标为F(w,h),以载入点M为起点,则载体图像隐写像素坐标范围A=M(w,h)+F(w*3,h*3)~M(w,h)+F(w*3+2,h*3+2)。
通过上述示例,确定载入点范围后,在载入点范围内随机选取载入点,使得水印图像能够完成的载入至载入图像中。
可选地,在本实施例中,根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素,包括但不限于:根据像素分布依次确定各个水印像素在载体图像中对应的各个载体像素;依次将各个像素值载入对应的载体像素。
在本实施例中,水印图像中的像素分布包括但不限于水印像素的排列顺序、排列数量以及像素值等。在确定了水印图像的载入点之后,根据水印图像中的像素分布确定载体图像中水印像素对应的载体图像,然后根据各个水印像素的像素值依次载入至对应的载体像素,完成水印图像的写入。
可选地,在本实施例中,依次将各个像素值载入对应的水印像素,包括但不限于:获取水印像素对应第一像素值以及水印像素对应的载体像素对应的第二像素值;若第一像素值与第二像素值不同,在载体像素中写入第一像素值。
具体地,获取水印图像S的水印像素F的RGB值,将其转成二进制字符串,若不足8位则前缀补0,再拼装起来得到该像素的24位二进制值:
Fbin=str(bin(R))+str(bin(G))+str(bin(B))
接下来,遍历载入范围A内的像素,获取其RGB三原色最低位的比特值,得到3*9=27位二进制,截取前24位得到Tbin。
然后,按像素值(比特)比较Fbin和Tbin,若不同,则将Fbin赋值Tbin,执行完毕,则完成了水印图像S中像素F到载体图像Z的隐写。若相同,则不用进行操作。
最后,遍历水印图像S中所有像素,依次执行上述的隐写操作,完成水印图像S到载体图像Z的隐写。
通过上述示例,根据像素分布依次确定各个水印像素在载体图像中对应的各个载体像素;依次将各个像素值载入对应的载体像素,实现了按照水印图像的像素分布,完成水印图像的载入。
基于与上述方法相同的构思,在本实施例中,还提供了一种水印图像校验方法,如图5所示,该方法具体可以包括以下步骤:
S502,根据载体图像的宽高坐标在载体图像中依次选取至少一个载入点;
可选地,在本实施例中,根据载体图像的宽高坐标在载体图像中依次选取至少一个载入点,包括但不限于:根据水印图像的宽高坐标、写入值获取水印图像的写入宽高坐标;根据载体图像的宽高坐标以及写入宽高坐标确定载入点范围;遍历载入点范围内的所有载体像素,依次选取载体像素作为载入点。
具体地,根据载体图像Z、水印图像S的像素,Z和S的宽高坐标分别为Z(w,h),S(w,h),确认载入点M的载入点范围为:(Zw-3*Sw,Zh-3*Sh)。
然后,遍历载体图像Z的(Zw-3*Sw,Zh-3*Sh)范围内的像素获取载入点M,记M的宽高坐标为M(w,h)。
此外,将水印图像S的像素F映射到载体图像Z中,假设水印图像像素坐标为F(w,h),以载入点M为起点,则载体图像隐写像素坐标范围为:
A=M(w,h)+F(w*3,h*3)~M(w,h)+F(w*3+2,h*3+2)
S504,根据水印图像中各个水印像素的像素值以及像素分布,分别从至少一个载入点处,依次对比各个水印像素的像素值与载体图像中各个载体像素的像素值;
可选地,在本实施例中,方法还包括但不限于:若当前的载入点对应的各个水印像素的像素值与各个载体像素的像素值不匹配,则在载入点范围中的下一个载入点处,依次对比各个水印像素的像素值与载体图像中各个载体像素的像素值。
S506,若存在各个水印像素的像素值与各个载体像素的像素值匹配,则确定载体图像中存在水印图像。
具体地,获取水印图像S的水印像素F的RGB值,将其转成二进制字符串,若不足8位则前缀补0,再拼装起来得到水印该像素的24位二进制值为:
Fbin=str(bin(R))+str(bin(G))+str(bin(B))
然后,遍历载入点范围A内的载体像素,获取其RGB三原色最低位的比特值,得到3*9=27位二进制,截取前24位得到Tbin。
进一步地,按比特比较Fbin和Tbin,若不同则在上述载入点范围内重新选取载入点M。
最后,遍历水印图像S中所有水印像素,依次执行上述操作,若所有像素的Fbin和Tbin相同,则可确认载体图像Z隐写了水印图像S。若遍历完载入点范围内的载入点M,都未确定存在载入点对应的所有像素的Fbin和Tbin相同,则确认载体图像Z未写入水印图像S。
在本实施例中的一个具体地实施例中,如图3所示,水印图像像素大小3*4,水印图像的像素列表是PINK,PINK,PINK,PINK,BLUE,BLUE,PINK,BLUE,BLUE,PINK,PINK,PINK。将水印图形隐写至载体图像具体可以包括以下步骤:
S1,在载体图像中选取随机的载入点,假设为(10,15);
S2,假设水印图像粉色RGB(255,118,128),浅蓝RGB(35,128,255),选择水印图像的第一个像素,得到其像素RGB(255,118,128),转为二进制得到11111111,01110110,10000000。
S3,将水印图像的第一个像素映射到载体图像,得到映射区域的9个像素(10,15)~(12,17)。
S4,获取载体图像映射区域的像素,得到(57,23,13),(68,28,19),(96,52,40),(76,36,24),(91,47,34),(89,45,33),(84,38,25),(92,48,35),(92,49,36),截取其前8个像素用于隐写。
S5,将水印图像第一个像素(11111111,01110110,10000000)逐比特放入载体图像区域前8个像素的RGB通道的最低位,则载体图像映射区域的像素修改为(57,23,13),(69,29,19),(97,53,40),(77,37,25),(90,47,35),(88,45,32),(84,38,24),(92,48,34)。
S6,循环执行S2-S5步,直到水印图像的所有像素隐写完毕,得到隐写后的载体图像。
需要说明的是,通过本发明实施例,根据载体图像的宽高坐标确定水印图像的载入点;根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。本实施例中根据载体图像的宽高坐标确定水印图像的载入点,并根据水印图像的像素分布写入水印图像,使得写入至载体图像中的水印图像保持了原有的像素分布以及图像内容,同时,基于水印图像的像素分布进行水印图像的写入同时还方便后续水印图像的读取和校验。本发明解决了现有技术中由于通过逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
实施例二
详细介绍本发明实施例提供的一种水印图像写入装置。
参照图6,示出了本发明实施例中一种水印图像写入装置的结构示意图。
本发明实施例的水印图像写入装置包括:确定模块60,写入模块62。
下面分别详细介绍各模块的功能以及各模块之间的交互关系。
确定模块60,用于根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
写入模块62,用于根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
接下来,详细介绍本发明实施例提供的一种水印图像校验装置。
参照图7,示出了本发明实施例中一种水印图像校验装置的结构示意图。
本发明实施例的水印图像校验装置包括:选取模块70,校验模块72以及确定模块74。
下面分别详细介绍各模块的功能以及各模块之间的交互关系。
选取模块70,用于根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;
校验模块72,用于根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;
确定模块74,用于若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
而且,在本发明实施例中,根据载体图像的宽高坐标确定水印图像的载入点;根据水印图像中各个水印像素的像素值以及像素分布,从载入点处依次载入各个水印像素。本实施例中根据载体图像的宽高坐标确定水印图像的载入点,并根据水印图像的像素分布写入水印图像,使得写入至载体图像中的水印图像保持了原有的像素分布以及图像内容,同时,基于水印图像的像素分布进行水印图像的写入同时还方便后续水印图像的读取和校验。本发明解决了现有技术中由于通过逐字节写入数字水印图像,而导致水印图像隐蔽性差的问题。
实施例三
优选的,本发明实施例还提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的水印图像写入方法或水印图像校验方法的步骤。
可选地,在本实施例中,存储器被配置为存储用于执行以下步骤的程序代码:
S1,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
S2,根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
可选地,在本实施例中,存储器被配置为存储用于执行以下步骤的程序代码:
S1,根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;
S2,根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;
S3,若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
可选地,本实施例中的具体示例可以参考上述实施例1中所描述的示例,本实施例在此不再赘述。
实施例五
本发明的实施例还提供了一种可读存储介质。可选地,在本实施例中,上述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如实施例1所述的水印图像写入方法或水印图像校验方法的步骤。
可选地,在本实施例中,可读存储介质被配置为存储用于执行以下步骤的程序代码:
可选地,在本实施例中,存储器被配置为存储用于执行以下步骤的程序代码:
S1,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
S2,根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
可选地,在本实施例中,存储器被配置为存储用于执行以下步骤的程序代码:
S1,根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;
S2,根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;
S3,若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
可选地,可读存储介质还被配置为存储用于执行上述实施例1中的方法中所包括的步骤的程序代码,本实施例中对此不再赘述。
可选地,在本实施例中,上述可读存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例1中所描述的示例,本实施例在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (12)
1.一种水印图像写入方法,其特征在于,所述方法包括:
根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
2.根据权利要求1所述的方法,其特征在于,在所述根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点之前,还包括:
根据所述水印图像的宽高坐标、写入值获取所述水印图像的写入宽高坐标;
若所述载体图像的宽高坐标大于或等于所述写入宽高坐标,则确定所述载体图像中能够写入所述水印图像,并根据载体图像的宽高坐标确定水印图像的载入点。
3.根据权利要求2所述的方法,其特征在于,根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点,包括:
根据载体图像的宽高坐标以及所述写入宽高坐标确定载入点范围;
遍历所述载入点范围内的所有载体像素,并随机选取一个载体像素作为所述载入点。
4.根据权利要求1所述的方法,其特征在于,所述根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素,包括:
根据所述像素分布依次确定所述各个水印像素在所述载体图像中对应的各个载体像素;
依次将所述各个像素值载入对应的所述载体像素。
5.根据权利要求1所述的方法,其特征在于,所述依次将所述各个像素值载入对应的所述水印像素,包括:
获取所述水印像素对应第一像素值以及所述水印像素对应的载体像素对应的第二像素值;
若所述第一像素值与所述第二像素值不同,在所述载体像素中写入所述第一像素值。
6.一种水印图像校验方法,其特征在于,所述方法包括:
根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;
根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;
若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
7.根据权利要求6所述的方法,其特征在于,所述根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点,包括:
根据所述水印图像的宽高坐标、写入值获取所述水印图像的写入宽高坐标;
根据载体图像的宽高坐标以及所述写入宽高坐标确定载入点范围;
遍历所述载入点范围内的所有载体像素,依次选取载体像素作为所述载入点。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若当前的所述载入点对应的所述各个水印像素的像素值与所述各个载体像素的像素值不匹配,则在所述载入点范围中的下一个所述载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值。
9.一种水印图像写入装置,其特征在于,所述装置包括:
确定模块,用于根据载体图像的宽高坐标以及水印图像的宽高坐标,确定水印图像的载入点;
写入模块,用于根据所述水印图像中各个水印像素的像素值以及像素分布,从所述载入点处依次载入所述各个水印像素。
10.一种水印图像校验装置,其特征在于,所述装置包括:
选取模块,用于根据载体图像的宽高坐标在所述载体图像中依次选取至少一个载入点;
校验模块,用于根据水印图像中各个水印像素的像素值以及像素分布,分别从所述至少一个载入点处,依次对比所述各个水印像素的像素值与所述载体图像中各个载体像素的像素值;
确定模块,用于若存在所述各个水印像素的像素值与所述各个载体像素的像素值匹配,则确定所述载体图像中存在所述水印图像。
11.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至5中任一项所述的水印图像写入方法或如权利要求6至8中任一项所述的水印图像校验方法的步骤。
12.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的水印图像写入方法或如权利要求6至8中任一项所述的水印图像校验方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211510733.0A CN115760537A (zh) | 2022-11-29 | 2022-11-29 | 数字水印写入方法及装置、数字水印校验方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211510733.0A CN115760537A (zh) | 2022-11-29 | 2022-11-29 | 数字水印写入方法及装置、数字水印校验方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115760537A true CN115760537A (zh) | 2023-03-07 |
Family
ID=85340226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211510733.0A Pending CN115760537A (zh) | 2022-11-29 | 2022-11-29 | 数字水印写入方法及装置、数字水印校验方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115760537A (zh) |
-
2022
- 2022-11-29 CN CN202211510733.0A patent/CN115760537A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3937841B2 (ja) | 情報処理装置及びその制御方法 | |
CN108961138B (zh) | 水印数据的嵌入及提取方法 | |
CN110766594B (zh) | 信息隐藏方法及装置、检测方法、装置及防伪溯源方法 | |
US20050180594A1 (en) | Embedding and detecting digital watermark in image | |
Wu et al. | Multi-layer assignment steganography using graph-theoretic approach | |
TW201931309A (zh) | 以調色盤壓縮為基礎的彩色影像驗證方法與電腦程式產品 | |
TWI534644B (zh) | 基於空間域圖像的數位浮水印的嵌入及提取方法 | |
JP4595014B2 (ja) | 電子透かし埋め込み装置および検出装置 | |
CN115760537A (zh) | 数字水印写入方法及装置、数字水印校验方法及装置 | |
JP5036643B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP4169267B2 (ja) | 画像改ざん検知装置およびその保存データの復元方法 | |
US9734550B1 (en) | Methods and apparatus for efficiently determining run lengths and identifying patterns | |
US6618489B1 (en) | Apparatus and method for embedding information in an image through requantization step width control | |
CN113628091B (zh) | 面向电子显示屏内容翻拍场景的安全信息提取方法及装置 | |
CN113784011B (zh) | 公文流程印章图片的防伪方法 | |
CN115063280A (zh) | 一种水印叠加、恢复方法及装置 | |
JP2003524932A (ja) | ファイルを取外し可能なマークでデジタル的にマーキングするためのシステムおよび方法 | |
CN111866514B (zh) | 一种压缩视频、解压视频的方法和装置 | |
Tilakaratne et al. | Image steganography scheme based on reversible data embedding strategy | |
US11816756B1 (en) | Anti-leak digital document marking system and method using distributed ledger | |
CN113139163B (zh) | 一种应用程序界面上水印信息生成的方法及设备 | |
CN113722680B (zh) | 一种图片版权保护方法、装置、设备及可读存储介质 | |
CN108307086A (zh) | 一种图像隐写的方法及装置 | |
CN118052687A (zh) | 遥感图像鲁棒截屏水印方法、系统和设备 | |
JP2584793B2 (ja) | 符号の割り付け方法 |
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 |