水印添加方法、解析方法、装置、电子设备及存储介质与流程

文档序号:18323522发布日期:2019-08-03 10:44阅读:224来源:国知局
水印添加方法、解析方法、装置、电子设备及存储介质与流程

本申请涉及计算机技术领域,具体而言,涉及一种水印生成方法、装置、电子设备及存储介质。



背景技术:

随着计算机技术和网络技术的不断发展,数字水印的应用日益广泛。如针对互联网这一应用领域,为了避免互联网网站显示的图像被非法拷贝和篡改,通常会在图像中增加水印。

为了兼顾用户的使用体验和水印的合理使用,相关技术中提供了一种能够将水印图层隐藏的盲水印生成方案,该方案首先将原始图像空间域数据转换为频域数据,然后根据待隐藏的水印信息(如用户身份信息)对频域数据进行调整,并对调整后的频域数据进行逆变换,以将水印信息保存在原始图像中。这样,一旦用户对截取的图像执行非法操作(如将截图流传网络等),通过对截图执行解水印之后,就能得到水印信息,进而对该用户追责以确保原始图像所有者的合法权益。

然而,相关技术中提供的盲水印生成方案由于需要进行空间域至频域、频域至空间域的转换操作而导致耗时严重,需要消耗较多处理资源且处理效率较低。



技术实现要素:

有鉴于此,本申请实施例的目的在于提供一种水印添加方法、解析方法、装置、电子设备及存储介质,能够实现水印的添加和解析,省时省力。

主要包括以下几个方面:

第一方面,提供了一种水印添加方法,所述方法包括:

根据接收到的水印配置信息,在创建的图层上添加水印内容,得到水印图层;其中,所述水印图层中所述水印内容所在区域的透明度低于第一设定值,除所述水印内容所在区域以外的区域的透明度低于第二设定值,所述第二设定值小于所述第一设定值;

将所述水印图层和待处理图像进行融合处理后,得到融合后的图像;其中,所述融合后的图像与所述待处理图像在所述水印内容对应的位置处的像素点之间存在区别特征。

第二方面,提供了一种水印解析方法,所述方法包括:

获取待解析图像,所述待解析图像为第一方面所述的融合后的图像的全部或部分图像;

遍历所述待解析图像中的像素点,以遍历的第一个像素点的像素值作为参考像素值,并继续遍历所述待解析图像中的像素点,执行判断过程:

判断当前遍历的像素点的像素值与所述参考像素值之间的像素差值是否符合区别特征;

若判断结果为是,则将所述当前遍历的像素点的像素值调整为水印内容的预设像素值,并继续遍历所述待解析图像中的像素点,执行所述判断过程,直至确定出判断结果为否后,将所述参考像素值更新为当前遍历的像素点的像素值,并继续遍历所述待解析图像中的像素点,执行所述判断过程;

在对所述待解析图像中的像素点遍历结束后,得到解析后的图像。

第三方面,提供了一种水印添加装置,所述装置包括:

生成模块,用于根据接收到的水印配置信息,在创建的图层上添加水印内容,得到水印图层;其中,所述水印图层中所述水印内容所在区域的透明度低于第一设定值,除所述水印内容所在区域以外的区域的透明度低于第二设定值,所述第二设定值小于所述第一设定值;

融合模块,用于将所述水印图层和待处理图像进行融合处理后,得到融合后的图像;其中,所述融合后的图像与所述待处理图像在所述水印内容对应的位置处的像素点之间存在区别特征。

第四方面,提供了一种水印解析装置,所述装置包括:

获取模块,用于获取待解析图像,所述待解析图像为第三方面所述的融合后的图像中的全部或部分图像;

遍历模块,用于遍历所述待解析图像中的像素点,以遍历的第一个像素点的像素值作为参考像素值,并继续遍历所述待解析图像中的像素点,执行判断过程:

判断当前遍历的像素点的像素值与所述参考像素值之间的像素差值是否符合区别特征;

若判断结果为是,则将所述当前遍历的像素点的像素值调整为水印内容的预设像素值,并继续遍历所述待解析图像中的像素点,执行所述判断过程,直至确定出判断结果为否后,将所述参考像素值更新为当前遍历的像素点的像素值,并继续遍历所述待解析图像中的像素点,执行所述判断过程;

解析模块,用于在对所述待解析图像中的像素点遍历结束后,得到解析后的图像。

第五方面,提供了一种电子设备,该电子设备包括处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被处理器执行时执行如第一方面所述水印添加方法的步骤或者如第二方面所述水印解析方法的步骤。

第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述水印添加方法的步骤或者如第二方面所述水印解析方法的步骤。

采用上述方案,能够将设置有透明度的水印图层和待处理图像进行融合处理实现水印添加,使得融合后的图像中水印区域对应的区别特征得以弱化,展示给用户时不易被察觉,且操作简单,省时省力,从而可以节省处理资源,提升处理效率。

另外,针对具有全部或部分融合后的图像的待解析图像而言,本申请还可以通过对该待解析图像进行像素点遍历,并基于当前遍历的像素点的像素值与参考像素值之间的像素差值与区别特征的匹配结果进行水印解析,这样,解析得到的图像中的与水印内容相关的图像特征得以强化,从而可以达到对原始图像的安全保护。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本申请实施例一所提供的一种水印添加方法的流程图;

图2示出了本申请实施例一所提供的另一种水印添加方法的流程图;

图3示出了本申请实施例二所提供的一种水印解析方法的流程图;

图4示出了本申请实施例二所提供的另一种水印解析方法的流程图;

图5示出了本申请实施例三所提供的一种水印添加装置的结构示意图;

图6示出了本申请实施例四所提供的一种水印解析装置的结构示意图;

图7示出了本申请实施例五所提供的一种电子设备的结构示意图;

图8示出了本申请实施例五所提供的另一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

考虑到相关技术中提供的盲水印生成方案由于需要进行空间域至频域、频域至空间域的转换操作而导致耗时严重,需要消耗较多处理资源其而处理效率较低。有鉴于此,本申请一种实施例提供了一种水印添加方法、解析方法、装置、电子设备及存储介质,能够实现水印的添加和解析。在进行本申请实施例提供的上述各个方案的描述之前,首先对其应用场景进行简单说明。

本申请实施例可以应用于任何需要进行水印添加及水印解析的应用场景中,例如,可以应用于计算机桌面,还可以应用于虚拟桌面基础架构(virtualdesktopinfrastructure,vdi)桌面,还可以应用于其它需要进行水印添加及水印解析的应用场景,本申请实施例对此不做具体的限制,接下来以vdi桌面为例进行说明。

随着云计算和设备虚拟化技术的日趋成熟,vdi桌面由于其可以依赖于物理服务器在短时间内部署大批消耗资源较小的虚拟机、方便统一管理、且易扩展而使得vdi桌面具有了越来越广泛的应用。然而,vdi桌面广泛应用的同时,还带来了由截图操作产生的安全隐患,即是,对于具有远程操作vdi桌面权限的任何用户而言,均可以通过键盘上设置的印屏(printscreen)键或者其它截图软件截取屏幕内容,不管是保存到本地还是流传到网络,均可能会带来一定的安全隐患。例如,在一张包含有公司商业秘密的屏幕截图被发布到网络后,可能会对公司造成巨大的损失,如果没有相应的监控手段,甚至无法对这样的损失进行追责。

但是,目前采用的利用空间域和频域的转换实现盲水印生成的方案,由于需要进行空间域和频域的转换而导致耗时严重、处理资源消耗较多且处理效率较低的问题,从而无法适应vdi桌面的应用需求。

正是为了解决上述问题,本申请实施例提供了一种基于透明度设置的水印图层与待处理图像进行融合的水印添加方案,实现融合后的图像中水印区域对应的区别特征得以弱化的效果,且提供了与水印添加方案对应的水印解析方案,操作简单、省时省力,能够在实现水印添加和解析的过程,节省处理资源,提升处理效率。接下来分别通过如下几个具体实施例进行描述。

实施例一

如图1所示,为本申请实施例提供的一种水印添加方法的流程图,针对vdi这一应用场景而言,客户端可以依赖于vdi桌面架构先申请虚拟机,并利用客户端操作远程的虚拟机桌面,这样,上述水印添加方法的执行主体可以是虚拟机部署的远程服务器等电子设备。上述水印添加方法具体包括如下步骤:

s101、根据接收到的水印配置信息,在创建的图层上添加水印内容,得到水印图层;其中,水印图层中水印内容所在区域的透明度低于第一设定值,除水印内容所在区域以外的区域的透明度低于第二设定值,第二设定值小于第一设定值。

这里,有关图层的创建以及透明度的设置均可以根据水印配置信息来实现,水印配置信息可以包括水印内容(如水印文字)、还可以包括水印内容所处位置、还可以包括水印内容在展示屏幕中的显示信息(如全屏显示)等。

在具体应用时,为了进一步提升水印添加的效率,本申请实施例的远程服务器在确定客户端启动后,可以利用虚拟机自带的服务自动向水印组件下发水印配置信息以使水印组件根据水印配信息进行图层创建、透明度设置等操作。其中,上述服务以及水印组件均可以运行于虚拟机部署的远程服务器,服务可以负责启动和监视水印组件、并可以向水印组件下发水印配置信息,这主要是为了避免现有的服务可能不支持水印窗口创建等操作而导致水印图层生成失败的问题,也即,本申请实施例可以由服务实现水印配置信息的下发,并由水印组件实现水印操作行为(如创建图层、设置透明度等)的执行。

本申请实施例中的远程服务器在获取到水印配置信息之后,可以在创建的图层上添加水印内容以得到水印图层。其中,水印图层不仅可以包含水印内容(如水印文字)所处的水印图层区域(即水印内容所在区域),还可以包括水印图层区域之外的背景图层区域(即除水印内容所在区域以外的区域),且可以基于第一设定值设置水印图层中水印图层区域的透明度,以及基于第二设定值设置背景图层区域的透明度。为了使融合后的图像中与水印内容相关的图像区域得以弱化的同时,又能保证水印解析阶段能够较为准确的解析出与水印内容相关的图像区域,本申请实施例中的第二设定值可以小于第一设定值。

考虑到水印添加主要是对水印内容的添加,水印背景又可能对添加水印内容后的图像的生成带来一定程度的干扰,本申请实施例可以基于第二设定值将除水印内容所在区域以外的区域设为全透明(即透明度为0),这样,在后续将水印图层和待处理图像进行融合时,可以尽可能消除除水印内容所在区域以外的区域的像素值对融合后的图像的影响,并且,将水印内容所在区域的透明度设置为一个低于第一设定值的值,这样可以使得融合后的图像中的与水印内容相关的图像区域的像素值得以弱化,从而确保将融合后的图像在屏幕展示时人眼不易察觉水印内容。

为了使融合后的图像中与水印内容相关的图像区域得以弱化的同时,又能保证水印解析阶段能够较为准确的解析出与水印内容相关的图像区域,本申请实施例中,水印内容所在区域的像素点的像素值可以相同,除水印内容所在区域以外的区域的像素点的像素值也可以相同,而水印内容所在区域的像素点的像素值则可以不同于除水印内容所在区域以外的区域的像素点的像素值。

在具体应用时,可以选用如下两种方式生成最终的水印图层。其一,创建的图层可以是空白图层,该空白图层本身具有像素值以及透明度,将具有像素值以及透明度的水印内容覆盖至空白图层即可得到最终的水印图层;其二,空白图层和水印内容在叠加之前,不限定像素值和透明度,叠加之后进行调整以得到最终的水印图层。

s102、将水印图层和待处理图像进行融合处理后,得到融合后的图像;其中,融合后的图像与待处理图像在水印内容对应的位置处的像素点之间存在区别特征。

示例性的,上述待处理图像可以选择单一颜色或颜色变化不明显的图像,即,该待处理图像中各个像素点的像素值基本一致或像素值之间的差值小于一定的阈值。

其中,针对水印图层和待处理图像中分别处于相同位置处的第一像素点和第二像素点,上述融合处理的过程包括:

根据第一像素点的透明度、第一像素点的像素值和第二像素点的像素值,确定融合后的图像在相同位置处的第三像素点的像素值。

这里,有关水印图层和待处理图像的融合处理主要是基于水印内容的透明度,对水印图层的像素值以及待处理图像的像素值进行融合的过程。本申请实施例中,针对水印图层和待处理图像中分别处于相同位置处的第一像素点和第二像素点来说,可以首先确定第一像素点的像素值与第一像素点的透明度的乘积,以及第二像素点的像素值与透明度差值的乘积,然后将上述两个乘积进行求和运算,以得到融合图像中在相同位置处的第三像素点的像素值。其中,上述透明度差值可以为透明度阈值与第一像素点的透明度之差。这样,在进行融合处理后,得到的融合后的图像中包含了水印内容的图像特征,即融合后的图像与待处理图像在水印内容对应的位置处的像素点之间存在区别特征。

在进行第一像素点的像素值和第二像素点的像素值的融合时,可以对每个颜色通道进行像素融合,如图2所示,上述像素融合方法具体包括如下步骤:

s201、针对每个颜色通道,确定第一像素点在该颜色通道的像素值与第一像素点的透明度的第一乘积,以及第二像素点在该颜色通道的像素值与透明度差值的第二乘积;

s202、将第一乘积和第二乘积进行求和,得到第三像素点在该颜色通道的像素值。

这里,可以首先确定水印图层的第一像素点在该颜色通道的像素值与第一像素点的透明度的乘积结果(即第一乘积),以及确定待处理图像的第二像素点在该颜色通道的像素值与透明度差值的乘积结果(即第二乘积),然后将上述两个乘积结果进行求和运算,即可确定融合后的图像在与水印图像和待处理图像在相同位置处的第三像素的像素值。

其中,本申请实施例中,上述待处理图像可以是任何需要展示给用户的原始桌面图像,在vdi桌面这一应用场景中,该原始桌面图像可以是vdi桌面图像。

为了进一步理解基于上述像素融合方案实现水印图层和待处理图像的融合,接下来结合一个具体的示例和对应的公式进行说明。

针对水印图层来说,可以采用rgba值来进行带透明通道的颜色表示,该水印图层包含了三个颜色通道和一个透明通道,针对待处理图像,则可以采用rgb值来进行颜色表示,该待处理图像具有三个颜色通道,这样,针对水印图层和待处理图像融合得到的融合后的图像在其三个颜色通道上的像素值可以根据下式来确定:

其中,r3、g3、b3用于表示融合后的图像的第三像素点在其r颜色通道、g颜色通道和b颜色通道上的像素值,r1用于表示水印图层的第一像素点在其r颜色通道上的像素值,r2用于表示待处理图像的第二像素点在其r颜色通道上的像素值,g1用于表示水印图层的第一像素点在其g颜色通道上的像素值,g2用于表示待处理图像的第二像素点在其g颜色通道上的像素值,b1用于表示水印图层的第一像素点在其b颜色通道上的像素值,b2用于表示待处理图像的第二像素点在其b颜色通道上的像素值,α-a用于表示透明度差值,α用于表示透明度阈值,a用于表示水印图层的第一像素点在其透明通道上的透明度。

这样,在根据r1*a确定第一乘积,以及根据r2*(α-a)确定第二乘积后,便可以通过求和运算,得到融合后的图像的第三像素点在其r颜色通道上的像素值,同理,还可以确定融合后的图像的第三像素点在其它两个颜色通道上的像素值,可见,得到的融合后的图像中包含了水印内容的图像特征,从而可以实现水印解析。

在具体应用时,由于客户端可以通过虚拟协议与虚拟机实现通信,这样,远程服务器便可以将融合得到的融合后的图像通过vdi桌面(即虚拟机桌面)显示至客户端。

值得说明的是,为了尽可能的降低水印区别特征对待处理图像的影响,上述透明度阈值可以设为1,这样,可以对水印图层的第一像素点在其透明通道上的透明度进行归一化处理,以处理得到一个介于0和1之间的透明度,从而降低水印图层区域的图像特征对待处理图像的影响,用户不易察觉。

另外,在将透明度阈值设置为1时,对于水印图层区域之外的背景图层区域而言,在该背景图层区域设为全透明,即透明度为0时,还可以进一步消除背景图层区域的图像特征对待处理图像的影响,使得融合后的图像中仅包含与水印内容相关的图像特征,以便于后续进行解水印操作。

为了便于进行解水印操作,本申请实施例提供的水印添加方法还可以对背景图层区域进行颜色设置,这里,可以将背景图层区域设置为单一的背景色,如红色、蓝色等;还可以对水印图层区域(即水印内容所属图层区域)进行颜色设置,这里,为了避免待处理图像对水印内容所产生的颜色干扰,可以将水印图层区域各颜色通道的像素值均设置为255(即对应白色的水印内容)。除此之外,考虑到水印图层的第一像素点在其透明通道上的透明度可以是归一化后的一个介于0和1之间的值,这里,为了满足上述水印添加方法在不同应用场景下的需求,可以将1/255~3/255,作为归一化后的透明度范围,具体实施中,可以从上述透明度范围中任选一个值作为水印图层的第一像素点的透明度。

这里,为了兼顾水印添加的效果和水印隐藏显示的效果,在进行水印添加时,通常可以选用若干标识作为水印内容,且可以将水印内容设置于整个待处理图像比较居中的位置。

值得说明的是,上述vdi桌面这一应用场景,仅为本申请实施例提供的水印添加方法示例的一种应用场景,除此之外,本申请实施例还可以应用于任何需要进行水印添加的应用场景,如计算机桌面、计算机上展示的word文本、图片、视频帧等应用场景,在应用于上述应用场景时,其执行主体则可以是计算机设备,上述水印添加的功能模块可以安装在计算机设备上,计算机设备也可以参照上述方法对屏幕中显示的计算机桌面进行水印添加和显示。

为了进行水印解析,本申请实施例在得到融合后的图像后,可以将融合后的图像与待处理图像进行减法运算,得到差值图像,基于该差值图像中每个像素点的像素值,确定水印区别特征。基于该水印区别特征便可以进行水印解析,通过如下实施例二进行具体描述。

实施例二

如图3所示,为本申请实施例二提供的一种水印解析方法的流程图,针对vdi这一应用场景而言,上述水印添加方法的执行主体可以是客户端,还可以是虚拟机部署的远程服务器等电子设备,为了确保水印解析操作的管理权限,本申请实施例可以选用远程服务器作为执行主体,该水印解析方法具体包括如下步骤:

s301、获取待解析图像;

s302、遍历待解析图像中的像素点,以遍历的第一个像素点的像素值作为参考像素值,并继续遍历待解析图像中的像素点,执行判断过程:判断当前遍历的像素点的像素值与参考像素值之间的像素差值是否符合区别特征;

s303、若判断结果为是,则将当前遍历的像素点的像素值调整为水印内容的预设像素值,并继续遍历待解析图像中的像素点,执行判断过程,直至确定出判断结果为否后,将参考像素值更新为当前遍历的像素点的像素值,并继续遍历待解析图像中的像素点,执行判断过程;

s304、在对待解析图像中的像素点遍历结束后,得到解析后的图像。

这里,针对待解析图像,远程服务器可以对待解析图像解水印以得到水印信息。考虑到本申请实施例中与水印内容有关的区别特征可以是基于融合后的图像和待处理图像相减得到的,这部分区别特征可以作为解析水印内容的参照信息。但是由于获取的待解析图像中的图像特征,本身是经过融合处理后得到的,在不确定融合处理之前的原图和水印图层的情况下,在对待解析图像进行解析时,可以将相邻像素点之间的像素差值看做是原图和待解析图像在相同位置处的两个像素点之间的差值,进而判断像素差值是否符合区别特征,通过这种方式可以筛选出待解析图像中与水印内容相关的像素点,进而可以实现对水印内容的解析。

本申请实施例中,可以采用像素点遍历的方式实现对待解析图像的解水印操作。考虑到待解析图像可以是上述水印添加方法生成的图像,而采用水印添加方法生成的图像中,其水印内容添加的位置通常可以是居中设置在原始的待处理图像中的,这样,在待解析图像中除水印内容之外的图像区域应该是仅包括待处理图像这一背景图像对应的图像区域。因此,为了提升解析的准确度,本申请实施例可以以遍历的第一个像素点的像素值作为参考像素值进行像素点遍历。

本申请实施例中,在将遍历的该待解析图像的第一个像素点(假设第一个参考像素段为非水印区域的像素点)的像素值作为参考像素值后,可以遍历第二个像素点,并通过判断当前遍历的像素点的像素值与参考像素值之间的像素差值是否符合区别特征的判断结果来确定第二个像素点是否对应有水印内容;若是,则将第二个像素点的像素值调整为水印内容的预设像素值,并仍基于上述参考像素值遍历第三个像素点,同样的,对于第三个像素点也可以执行上述判断过程,依次遍历即可;若否,则需要先将参考像素值更新为第二个像素点的像素值,再基于更新后的参考像素值进行第三个像素点的遍历,依次遍历即可,直至在对各个像素点遍历完成,即可得到解析后的图像。

值得说明的是,上述遍历过程可以是正向遍历(如采用先左后右、先上后下的遍历方式),也可以是反向遍历(如采用先右后左、先下后上的遍历方式),针对一个由n个像素点组成的待解析图像而言,正向遍历可以从待解析图像的第1个像素点进行遍历,这时,可以先以第1个像素点的像素值作为参考像素值,进行第2个像素点是否为水印内容的判断,依次遍历,直至从第1个像素点遍历到第n个像素点,反向遍历则可以从待解析图像的第n个像素点进行遍历,这时,可以先以第n个像素点的像素值作为参考像素值,进行第n-1个像素点是否为水印内容的判断,依次遍历,直至从第n个像素点遍历到第1个像素点。

当然,也可以采用逐行遍历或逐列遍历的方式,对每行或每列的像素点分别依次进行遍历过程,这样,针对遍历到的第1个像素点作为参考值,以先以第1个像素点的像素值作为参考像素值,进行第2个像素点是否为水印内容的判断,依次遍历,直至从第1个像素点遍历到该行或该列的最后一个像素点。

本申请实施例中,为了进一步提升水印解析的准确度,可以结合正向遍历和反向遍历得到最终解析后的图像,或者结合逐行遍历和逐列遍历得到最终解析后的图像。考虑到水印内容对应的像素点在图像中的排布位置很可能是连续的,这样,针对解析后的图像,还可以将一些离散像素点进行过滤,以得到最终解析后的图像。

在具体应用时,待解析图像可以是用户利用键盘上设置的printscreen键截取的融合后的图像的全部图像,还可以是用户采用其它截图软件截取的全部或部分融合后的图像。上述融合后的图像即为利用本申请实施例一提供的水印添加方法融合得到的图像。在vdi桌面这一应用场景中,用户利用客户端可以直接对vdi桌面进行操作,这样,一旦远程服务器在确定用户执行了截图操作后,可以利用虚拟协议从客户端获取待解析图像。

与水印添加方法类似的是,这里,也可以针对每个颜色通道进行图像解析操作。如图4所示,上述遍历过程包括如下步骤:

s401、遍历待解析图像中的像素点,并针对每个颜色通道,以遍历的第一个像素点在该颜色通道的像素值作为参考像素值,并继续遍历待解析图像中的像素点,执行判断过程:判断当前遍历的像素点在该颜色通道的像素值与参考像素值之间的像素差值是否符合区别特征;

s402、若判断结果为是,则将当前遍历的像素点在该颜色通道的像素值调整为水印内容的预设像素值,并继续遍历待解析图像中的像素点,执行判断过程,直至确定出判断结果为否后,将参考像素值更新为当前遍历的像素点在该颜色通道的像素值,并继续遍历待解析图像中的像素点,执行判断过程。

这里,针对待解析图像而言,可以按照r、g、b三个颜色通道的顺序依次进行图像解析操作。在对任一颜色通道进行解析时,可以首先确定当前遍历的像素点在该颜色通道的像素值与参考像素值之间的像素差值,然后判断像素差值是否符合该颜色通道对应的区别特征,若符合,则标记该像素点在该颜色通道符合区别特征。本申请实施例中,在解析完三个颜色通道之后,将一个像素点的三个颜色通道均符合区别特征的像素点作为水印像素点。

值得说明的是,上述vdi桌面这一应用场景,仅为本申请实施例提供的水印解析方法示例的一种应用场景,除此之外,本申请实施例还可以应用于任何需要进行水印解析的应用场景,如计算机桌面,或者计算机上展示的word文本、图片等应用场景,在应用于上述应用场景时,其执行主体则可以是客户端,对应的由客户端实现水印解析即可。

基于同一发明构思,本申请实施例提供了一种与水印添加方法对应的水印添加装置,由于本申请实施例中的装置解决问题的原理与上述实施例一提供的水印添加方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

实施例三

如图5所示,为本申请实施例三所提供的水印添加装置的结构示意图,该装置包括:

生成模块501,用于根据接收到的水印配置信息,在创建的图层上添加水印内容,得到水印图层;其中,水印图层中水印内容所在区域的透明度低于第一设定值,除水印内容所在区域以外的区域的透明度低于第二设定值,第二设定值小于第一设定值;

融合模块502,用于将水印图层和待处理图像进行融合处理后,得到融合后的图像;其中,融合后的图像与待处理图像在水印内容对应的位置处的像素点之间存在区别特征。

在一些实施例中,水印内容所在区域的像素点的像素值相同,除水印内容所在区域以外的区域的像素点的像素值相同;水印内容所在区域的像素点的像素值不同于除水印内容所在区域以外的区域的像素点的像素值。

在一种实施方式中,融合模块502,具体用于:

针对水印图层和待处理图像中分别处于相同位置处的第一像素点和第二像素点,根据第一像素点的透明度、第一像素点的像素值和第二像素点的像素值,确定融合后的图像中在相同位置处的第三像素点的像素值。

基于同一发明构思,本申请实施例提供了一种与水印解析方法对应的水印解析装置,由于本申请实施例中的装置解决问题的原理与上述实施例二提供的水印解析方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

实施例四

如图6所示,为本申请实施例四所提供的水印解析装置的结构示意图,该装置包括:

获取模块601,用于获取待解析图像,待解析图像为融合后的图像的全部或部分图像;

遍历模块602,用于遍历待解析图像中的像素点,以遍历的第一个像素点的像素值作为参考像素值,并继续遍历待解析图像中的像素点,执行判断过程:

判断当前遍历的像素点的像素值与参考像素值之间的像素差值是否符合区别特征;

若判断结果为是,则将当前遍历的像素点的像素值调整为水印内容的预设像素值,并继续遍历待解析图像中的像素点,执行判断过程,直至确定出判断结果为否后,将参考像素值更新为当前遍历的像素点的像素值,并继续遍历待解析图像中的像素点,执行判断过程;

解析模块603,用于在对待解析图像中的像素点遍历结束后,得到解析后的图像。

在另一种实施方式中,还包括:

确定模块604,用于将融合后的图像和待处理图像相减,得到差值图像;

基于差值图像中每个像素点的像素值,确定区别特征。

实施例五

如图7所示,为本申请实施例五所提供的一种电子设备700的结构示意图,该电子设备700包括:处理器701、存储器702和总线703,存储器702存储有处理器701可执行的机器可读指令,当电子设备700运行时,处理器701与存储器702之间通过总线703通信,机器可读指令被处理器701执行时执行如下处理:

根据接收到的水印配置信息,在创建的图层上添加水印内容,得到水印图层;其中,水印图层中水印内容所在区域的透明度低于第一设定值,除水印内容所在区域以外的区域的透明度低于第二设定值,第二设定值小于第一设定值;

将水印图层和待处理图像进行融合处理后,得到融合后的图像;其中,融合后的图像与待处理图像在水印内容对应的位置处的像素点之间存在区别特征。

在一些实施例中,水印内容所在区域的像素点的像素值相同,除水印内容所在区域以外的区域的像素点的像素值相同;水印内容所在区域的像素点的像素值不同于除水印内容所在区域以外的区域的像素点的像素值。

在一种实施方式中,上述处理器701执行的处理中,将水印图层和待处理图像进行融合处理后,得到融合后的图像,包括:

针对水印图层和待处理图像中分别处于相同位置处的第一像素点和第二像素点,根据第一像素点的透明度、第一像素点的像素值和第二像素点的像素值,确定融合后的图像中在相同位置处的第三像素点的像素值。

如图8所示,为本申请实施例五所提供的另一种电子设备800的结构示意图,该电子设备800包括:处理器801、存储器802和总线803,存储器802存储有处理器801可执行的机器可读指令,当电子设备800运行时,处理器801与存储器802之间通过总线803通信,机器可读指令被处理器801执行时执行如下处理:

获取待解析图像,待解析图像为融合后的图像的全部或部分图像;

遍历待解析图像中的像素点,以遍历的第一个像素点的像素值作为参考像素值,并继续遍历待解析图像中的像素点,执行判断过程:

判断当前遍历的像素点的像素值与参考像素值之间的像素差值是否符合区别特征;

若判断结果为是,则将当前遍历的像素点的像素值调整为水印内容的预设像素值,并继续遍历待解析图像中的像素点,执行判断过程,直至确定出判断结果为否后,将参考像素值更新为当前遍历的像素点的像素值,并继续遍历待解析图像中的像素点,执行判断过程;

在对待解析图像中的像素点遍历结束后,得到解析后的图像。

在另一种实施方式中,上述处理器801执行的处理中,根据以下方式确定区别特征:

将融合后的图像和的待处理图像相减,得到差值图像;

基于差值图像中每个像素点的像素值,确定区别特征。

本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述实施例一提供的水印添加方法的步骤或执行上述实施例二提供的水印解析方法的步骤。

具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述水印添加及解析方法,从而解决由于需要空间域与频域的转换操作而存在的耗时严重问题,进而达到能够实现水印的添加和解析,省时省力的效果。

本申请实施例所提供的水印添加及解析方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1