专利名称:图像中可见水印的嵌入和恢复原图像的方法及装置的制作方法
技术领域:
本发明涉及数字水印技术领域,尤其涉及一种图像中可见水印的嵌入和恢 复原图像的方法及装置。
背景技术:
可见数字水印应用非常广泛,例如电子书中的背景图,在一些给读者"试 读"的章节中,背景往往被加上出版社标记等半透明的水印图案,明确提示读 者该作品处于"试读"状态,这种可见水印不会把正文完全遮盖,在与正文重 叠的地方, 一般是采用"半透明"形式,使二者同时可见。当读者购买了此书
后,再通过一定的算法将可见水印脱掉,恢复^^皮水印遮盖的原图,如图1A和 图1B所示。
现有技术图像中可见水印的嵌入和恢复原图像的方法如下 方案一采用图像处理中的图像融合技术,
图像融合是一种最基本的图像处理技术,它是将两个或两个以上的图像进 行叠加最后生成一个新图像的过程。进行融合处理,首先要生成用于融合计算 的两个因子,即对应于原图像的源因子,和对应于水印图像的目标因子。例如 当源因子为阿尔法(Alpha)因子时,原图像某个像素的像素值是R-30; G=80; B=255,与此像素点对应的水印图像像素点的像素值是R-55; G=129; B=80, 则融合后的新图像此点的像素点值丁 = 03% +Wx ( 100-a) %,其中,O为原 图像,W为水印图像,T为融合后的新图像,a为源因子,100-a为目标因子。 由于数字图像的像素值只能为整数,当计算结杲为小数时采用四舍五入方法取 整。例如,当a=32, 100力=68时,融合后新图像对应点的像素值为
R = (33 x 32 + 55 x 68) / 100 = 47.96,取整为48;G = (84x32+ 129x68)/ 100 = 114.60,取整为115; B = (255 x 32+ 79 x 68) / 100 = 135.32,取整为135;
当需要由融合后新图像T恢复出原图像O时,可以容易地得到还原的公 式O-[Tx 100-Wx( 100-a)]/a 。例如对像素点B根据上述公式还原后O =[135 x 100 - 79x68] / 32 = 254.00,取整得到254,与原图像的数值255相差了 1 , 这是因为取整在物理概念上是一种抛弃信息中细节,只保留主干部分的操作, 类似有损信号/图像压缩算法中抛弃高频分量的做法。被抛弃的高频信息理论上 无法再通过压缩后的结果取回。所以恢复后的原图^f象存在块效应,即在恢复后 的原图像中,各像素点的像素值不一定精确地等于嵌入水印前的像素值,使原 图像恢复后在视觉上产生杂点的效果,水印嵌入边界区域和绝大部分区域为白 色的文本图像边界效应尤为明显。
此外,更为严重的是,如果对嵌入水印后的图像做了有损压缩会出现更为 严重的边界效应。如图2A所示为嵌入水印前的原图像,图2B为嵌入水印后 的图像,在水印图像和原图像的交界处,会出现所谓的高频信号。将嵌入水印 后的图像由tif格式转换为jpeg格式,jpeg压缩后在交界处做去除高频信号的 量化处理,抹平此区域的高频信号。此过程中视觉效果的变化是该边界区域 附加产生了一些中间色的噪音点,如图3所示。当恢复原图像后产生了明显的 灰度过渡点,如图4所示。
方案二采用图像分块局部加密的可去除可见水印的方法,
具体为将水印图像的每个像素点对应于原图像中的4 x 4大小的像素小块, 对像素小块中的部分像素点进行加密处理,得到嵌入水印后的图像,嵌入方与恢 复方拥有共同的密钥或密钥发生器,嵌入方根据密钥将水印图像嵌入到原图像 中,恢复方可以根据同样的密钥除去水印图像恢复出原图像。该方法的缺点需 要单独传输密钥,同时此方法没有提及对压缩后造成的边界效应的处理。
综上,现有技术不能精确地恢复原图像,或需要传输额外的信息才能恢复 原图,而且不能有效地对有损压缩的图像进行恢复处理。
发明内容
本发明实施例提供一种图像中可见水印的嵌入和恢复原图像的方法及装 置,用以解决现有技术中块效应和边界效应以及不精确恢复和压缩造成的视觉 影响。
本发明实施例提供的一种图像中可见水印的嵌入方法,包括 在原图像数据块中确定每个可见水印嵌入的基本区域后,在所述基本区域 的基础上进行外扩,得到所述每个可见水印嵌入的最终区域;
在所述基本区域上进行可见水印的嵌入,得到嵌入了可见水印的图像数据
块;
根据所述可见水印信息和所述最终区域信息构造附加数据块; 当所述附加数据块连接到嵌入了可见水印的图像数据块之后,完成可见水 印的嵌入。
本发明实施例提供的一种恢复原图像的方法,包括
在嵌入可见水印的图像数据块内定位附加数据块的位置;
根据所述定位的附加数据块的保存信息,获取原图像的数据信息;
根据所述获取的原始图像的数据信息恢复被可见水印"的原图像数据;
截去所述附加数据块,完成原图像数据块的恢复。
本发明实施例提供的 一种图像中可见水印的嵌入装置,包括
原图像模块,用于在根据原图像数据块中确定每个可见水印嵌入的基本区
域后,在所述基本区域的J^出上进行外扩,得到所述每个可见水印嵌入的最终
区域;
嵌入模块,用于根据所述确定的基本区域进行可见水印的嵌入,得到嵌入 了可见水印的图像数据块;
构造模块,用于才艮据可见水印信息和所述最终区域信息构造附加数据块; 存储模块,用于将所述附加数据块连接到嵌入了可见水印的图像数据块之后,完成可见水印的嵌入。
本发明实施例提供的一种恢复原图像的装置,包括 定位模块,用于在嵌入可见水印的图像内定位附加数据块的位置; 获取模块,用于根据所述定位的附加数据块的保存信息,获取原图像的数 据信息;
恢复模块,用于根据所述获取的原始图像的数据信息恢复被可见水印嵌入 的原图像数据;
存储模块,用于截去所述附加数据块,保存恢复后的图像。 本发明实施例在可见水印嵌入时,在每个可见水印嵌入的基本区域上进行 扩展,并构造附加数据块,原图像恢复时,根据附加数据块的保存信息进行原 图像的恢复。因此,本发明可以精确恢复原图像,避免块效应和边界效应,避 免不精确恢复和压缩造成的视觉影响,而且整个方法自封闭,在恢复原图像时 无需请求额外数据,运算快捷。
图1A为本发明实施例提供的原图像;
图1B为现有技术中对图1A嵌入可见水印的图像;
图2A为本发明实施例提供的原图像;
图2B为现有技术中对图2A进行水印嵌入得到的嵌入图像;
图3为现有技术中将图2B进行有损压缩后得到的图像;
图4为采用现有技术对图3进行恢复得到的图像;
图5为本发明实施例中原图像中嵌入可见水印的流程图6为本发明实施例中由嵌入的基本区域扩展为嵌入的最终区域的示意
图7为本发明实施例中恢复原图像的流程图8为采用本发明实施例提供的恢复原图像的方法对图3恢复后得到的图像;
图9为本发明实施例提供的一种图像中可见水印的嵌入装置示意图; 图10为本发明实施例提供的一种恢复原图像的装置示意图。
具体实施例方式
在本发明实施例中,原图像是记录像素点像素值的数据块,可见水印嵌入 原图像时,首先根据每个可见水印的大小和对应的每个可见水印嵌入的初始位 置,将可见水印嵌入的基本区域作扩展处理,得到每个可见水印嵌入的最终区 域,构造附加数据块,附加数据块中保存描述该最终区域的位置、最终区域对 应的原图像的有效数据、水印掩码表等信息,将构造的附加数据块连接到嵌入 可见水印后的图像的尾部;在恢复原图像时,根据附加数据块中保存的信息来 恢复原图像。
其中,最终区域对应的原图像的有效数据是指,在可见水印嵌入过程中原 图像的像素点的像素值发生变化的那些像素点对应的原图像的像素值,和基本 区域外最终区域内的像素点的像素值。
这里原图像包括灰度图像或彩色图像。
下面以附加数据块连接到嵌入可见水印后的图像的尾部为例,对本发明实 施例进4于详细i兌明。
如图5所示为图像中可见水印的嵌入方法的流程图,包括如下几个步骤
步骤501、在原图像上确定每个可见水印嵌入的初始位置,具体为,综合 考虑每个可见水印的大小,及各个可见水印在嵌入的过程中的叠加,所以选择 的初始位置可以避免嵌入过程中可见水印超出原图像的范围,或/和多个可见水 印嵌入过程中的叠加;
步骤502、根据步骤501确定的初始位置和每个可见水印的大小确定每个 可见水印嵌入的基本区域,在此基本区域的基础上进行扩展处理,得到每个可 见水印嵌入的最终区域。因为,嵌入了可见水印的图像进行有损压缩后,位于与嵌入的基本区域的相邻区域的像素点,虽然不在可见水印嵌入的基本区域之 内,但是会因为有损压缩的特定算法,如去除高频的量化算法,产生的边界效 应而受到影响,使此相邻区域的像素点的像素值发生变化,而在恢复原图像时, 若只对嵌入的基本区域内的像素点的像素值进行恢复,无法恢复此相邻区域像 素点的像素值,因此,针对此问题,可以在可见水印嵌入之前,根据每个可见 水印的大小和嵌入的初始位置,确定每个可见水印嵌入的基本区域,在此基本
区域的基础上每个边界向外进行扩展处理,每个边界向外扩展N个像素点的宽 度,其中,N为不小于4的整数,把可能受到影响的像素点都包括进来,如图 6所示为本发明实施例中由基本区域扩展为最终区域的示意图。同样在计算每 个水印图像嵌入的最终区域时,要考虑到超过边界的情况,例如,当嵌入的基 本区域有一边或者两边为原图像的边界时,当每个边界向外扩展时,由于本身 为原图像的边界的一边或两边向外扩展就超出了原图像的范围,因此,此一边 或两边可不需要向外扩展,因为此一边或两边没有与原图像相邻的像素点,在 嵌入了可见水印的图像进行有损压缩时不会造成边界效应。
步骤503、在确定的每个可见水印嵌入的基本区域内进行可见水印的嵌入, 嵌入的方法有多种,可以采用现有技术中方案一提供的方法,根据确定的每个 初始位置和对应的每个可见水印的像素值,在基本区域的每个像素点上进行像 素值叠加,并将叠加的结果根据四舍五入原则取整,得到嵌入可见水印的图像;
步骤504、构造附加数据块,由于在可见水印嵌入的过程中,每个可见水 印和对应的原图像的基本区域的像素点像素值进行叠加,将叠加的结果根据四 舍五入原则取整,所以在恢复原图像的过程中,无法精确恢复原图像的像素值, 因此,在可见水印的嵌入过程可以将嵌入可见水印前的原图像的像素点的像素 值保存到一个模块内,在恢复原图的过程中,将保存的原图像的像素点的像素 值直接覆盖嵌入了可见水印后的像素点的像素值,达到完全精确恢复。
因此,根据这个思想可以构造附加数据块,附加数据块中,按一定的数据 结构,将需要的信息保存下来,其中,需要的信息包括,原图像中嵌入了几种不同种类的可见水印信号、每种类型的可见水印信号嵌入了几个、确定的每个 可见水印嵌入的最终区域的位置信息、确定的原图像中最终区域内有效像素点 的像素值信息、水印掩码表,以及数据头信息等。
其中,数据头中保存了上述数据信息在附加数据块中的具体位置及每种信 息的长度,每种数据信息在附加数据块中的具体位置根据此信息的存储位置距 离数据头的偏移确定。
需要说明的是,可见水印在恢复原图像的过程中仅仅是起到"掩码"的作 用,即记录了对原图像的像素点是否需要恢复的信息,可以想象,若可见水印 某像素点的像素值与对应的原图像上的像素点的像素值完全相同,则该像素点 在经过可见水印嵌入后,其像素值仍然保持不变,因此,此类像素点在原图恢 复的过程中,其像素值是不需变化的。进一步,即使是需要恢复像素值的像素 点,也无需知道可见水印中像素点像素值的具体值,即只要把保存的需要恢复 的像素点对应的原图像的像素值赋值上去就可恢复此像素点,因此可见水印中
的每个像素点只需要简单地记录O或1,分别代表对于原图像像素点需要和不
需要恢复即可(当然也可以表示相反的意思)。这样,若出现了可见水印中很 多像素点的像素值与嵌入的原图像中像素点的像素值相同的情况,例如原图像 为背景大片白色的文稿图像,可见水印为大部分镂空的图像,或同样有大片白 色背景的情况,则在可见水印嵌入的过程中,原图像中大部分像素点的像素值 没有发生变化,因此在恢复原图像时,此大部分像素点不需要恢复。当像素点 的像素值不需要恢复时,此像素点的像素值在附加数据块中可以不记录,可以 降低附加数据块的长度,在恢复原图像时可以起到加速的作用。所以附加数据 块中记录了原图像中最终区域内的有效像素点的像素值的信息,即需要恢复的 原图像中像素点的像素值信息。
由于水印掩码表用0或1记录了原图像中对应像素点是否需要恢复的信
息,而记录了原图像中最终区域内有效像素点的像素值信息,未记录完整的最 终区域内的像素点的信息,因此,在可见水印进行嵌入和恢复原图像的处理中,必须解决此有效像素点的定位问题,在本发明实施例中可以采用查找水印掩码 表来解决,即在确定的原图像中最终区域内的第P个有效像素点的像素值,其 位置对应了水印掩码表中的第P个取值为1的点对应的像素点位置,其中,水
印掩码表中是以l表示对原图像中的像素点需要恢复,当采用o表示需要恢复 的信息时,上述描述即为第P个取值为0的点对应的^f象素点位置。
由于嵌入可见水印的图像在有损压缩后有明显的边界效应,所以水印掩码 表中必须包括扩展区域内的像素点的像素值的信息。
步骤505、将经过上述步骤构造的附加数据块连接到嵌入可见水印的图J象 尾部。
由于对所有原图像的解码都是通过对该图像本身数据头的索引、跳转表进 行,因此附加数据块连接到嵌入可见水印的图像尾部并不影响图像的显示。 在数据头中可以采用一个特定的数字串,用于以后定位附加数据块用。 下面对本发明实施例的恢复原图像的方法的具体实施过程进行说明。 图7为本发明实施中恢复原图像的方法的流程图,具体包括以下步骤 步骤701、在嵌入可见水印的图像中定位附加数"^居块的位置; 其中,定位附加数据块的位置可以先查找数据头,再由数据头中的记录信 息来进行附加数据块的位置查找。在查找数据头的过程中,可以从嵌入可见水 印的图像的尾部向前查找特定的字符串,配合校验和等手段来检验数据头的真 伪,或判断数据头是否受损。
步骤702、由数据头的记录信息,读出水印掩码表、原图像每个最终区域 内的有效像素点的信息、及嵌入的最终区域的位置信息等。
步骤703、遍历水印掩码表,若水印掩码表内某点为0,则不作处理;若 为l,则记下此点的索引M,由1计数器得到这是第Q个1,然后从原图像最 终区域的有效像素点信息内取出第Q个数据,在嵌入可见水印的图像内的第M 个像素点赋值。当所有掩码表遍历完后,所有的原图像内像素点的像素值得到 恢复。
ii步骤704、由于原图像的像素点的像素值得到恢复,将附加数据块截去以减小原图像的大小,完成原图像的恢复。
图8为采用本发明实施例提供的图像中嵌入可见水印和恢复原图像的方法,在基本区域的基础上向外扩展4个像素点的宽度后,从图3上恢复原图像得到的结果。
在本发明实施例以附加数据块中记录了原图像的像素点的像素值进行说明,在实际的操作中还可以记录恢复原图像的过程中得到的像素点的像素值,和对应的原图像的像素点的像素值的差值,根据记录的差值,在恢复原图像的过程中达到使像素点的像素值和原图像的像素值相同的目的,所以只要在恢复原图的过程中,使嵌入可见水印的像素点的像素值恢复到原图像的像素点的像素值的记录方法,都应在本发明的保护范围内。
参见图9所示,为本发明实施例提供的一种图像中嵌入可见水印的装置,包括,原图像模块900、嵌入模块910、构造模块920和存储模块930。其中,原图像模块900,用于在根据原图像数据块中确定每个可见水印嵌入的基本区域后,在所述基本区域的基础上进行外扩,得到所述每个可见水印嵌入的最终区域;嵌入模块910,用于根据所述基本区域进行可见水印的嵌入,得到嵌入了可见水印的图像数据块;构造模块920,用于根据可见水印信息和所述最终区域信息构造附加数据块;存储模块930,用于将所述构造的附加数据块连接到嵌入了可见水印的图像内,完成可见水印的嵌入。
原图像模块卯0包括,基本区域单元903、扩展单元901和存储单元卯2。其中,基本区域单元卯3,用于根据每个可见水印嵌入的初始位置,和对应的每个可见水印的长度确定每个可见水印嵌入的基本区域;扩展单元901,用于将所述基本区域的各个边界向外各扩展N个像素点的宽度,得到所述每个可见水印嵌入的最终区域,其中,N为不小于4的整数;存储单元902,用于保存所述得到的最终区域。
其中,原图像包括灰度图像或彩色图像。本发明实施例提供的一种恢复原图像的装置,如图10所示,包括,定位
模块IOOO、获取模块1100、恢复模块1200和存储模块1300。其中,定位模块1000,用于在嵌入可见水印的图像内定位附加数据块的位置;获取模块1100,用于根据所述定位的附加数据块的保存信息,获取原图像的数据信息;恢复模块1200,用于根据所述获取的原始图像的数据信息恢复被可见水印嵌入的原图像数据;存储模块1300,用于截去所述附加数据块,保存恢复后的图像。
恢复才莫块1200包括,恢复单元1210和存储单元1220。其中,恢复单元1210,用于根据获取的原图像每个嵌入的最终位置数据信息,恢复因可见水印嵌入,原图像的像素值发生变化的像素点的像素值;存储单元1220,用于保存恢复后的图像的像素点的像素值。
本发明实施例中可见水印嵌入和恢复原图像时,在每个可见水印嵌入基本区域上进行扩展,并构造附加数据块,原图像恢复时,根据附加数据块的保存信息进行原图像的恢复。因此,本发明可以精确恢复原图像,避免块效应和边界效应,避免不精确恢复和压缩造成的视觉影响,而且整个方法自封闭,在恢复原图像时无需请求额外数据,运算快捷。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
1权利要求
1、一种图像中可见水印的嵌入方法,其特征在于,该方法包括以下步骤在原图像数据块中确定每个可见水印嵌入的基本区域后,在所述基本区域的基础上进行外扩,得到所述每个可见水印嵌入的最终区域;在所述基本区域上进行可见水印的嵌入,得到嵌入了可见水印的图像数据块;根据所述可见水印信息和所述最终区域信息构造附加数据块;当所述附加数据块连接到嵌入了可见水印的图像数据块之后,完成可见水印的嵌入。
2、 如权利要求l所述的方法,其特征在于,所述原图像包括 灰度图像或彩色图像。
3、 如权利要求1所述的方法,其特征在于,所述确定每个可见水嵌入的 基本区域包括根据每个可见水印嵌入的初始位置,和对应的每个可见水印的长度确定每 个可见水印嵌入的基本区域。
4、 如权利要求1所述的方法,其特征在于,在所述基本区域的基础上进 行外扩,包括将所述基本区域的各个边界向外各扩展N个像素点的宽度, 其中,N为不小于4的整数。
5、 一种恢复原图像的方法,其特征在于,该方法包括以下步骤 在嵌入可见水印的图像数据块内定位附加数据块的位置; 根据所述定位的附加数据块的保存信息,获取原图像的数据信息; 根据所i4^取的原始图像的数据信息恢复被可见水印^的原图^lt据; 截去所述附加数据块,完成原图像数据块的恢复。
6、 如权利要求5所述的方法,其特征在于,根据所述获取的原始图像的 数据信息恢复被可见水印嵌入的原图像数据,包括根据获取的原图像每个嵌入的最终位置数据信息,恢复因可见水印嵌入, 原图像的像素值发生变化的像素点的像素值。
7、 一种图像中可见水印的嵌入装置,其特征在于,包括 原图像模块,用于在根据原图像数据块中确定每个可见水印嵌入的基本区域后,在所ii^本区域的勤出上进行外扩,得到所述每个可见水印嵌入的最终区域;嵌入模块,用于在所述基本区域进行可见水印的嵌入,得到嵌入了可见水 印的图像数据块;构造模块,用于根据可见水印信息和所述最终区域信息构造附加数据块; 存储模块,用于将所述附加数据块连接到嵌入了可见水印的图像数据块之 后,完成可见水印的嵌入。
8、 如权利要求7所述的装置,其特征在于,所述原图像模块包括 基本区域单元,用于根据每个可见水印嵌入的初始位置,和对应的每个可见水印的长度确定每个可见水印嵌入的基本区域;扩展单元,用于将所述基本区域的各个边界向外各扩展N个像素点的宽 度,得到所述每个可见水印嵌入的最终区域,其中,N为不小于4的整数。
9、 一种恢复原图像的装置,其特征在于,包括定位模块,用于在嵌入可见水印的图像内定位附加数据块的位置; 获取模块,用于根据所述定位的附加数据块的保存信息,获取原图像的数 据信息;恢复模块,用于根据所述获取的原始图像的数据信息恢复被可见水印嵌入 的原图像数据;存储模块,用于截去所述附加数据块,保存恢复后的图像。
10、 如权利要求9所述的装置,其特征在于,所述恢复模块包括 恢复单元,用于根据获取的原图像每个嵌入的最终位置数据信息,恢复因可见水印嵌入,原图像的像素值发生变化的像素点的像素值; 存储单元,用于保存恢复后的图像的像素点的像素值。
全文摘要
本发明公开了一种图像中可见水印嵌入的方法及装置,该方法包括,在原图像数据块中确定每个可见水印嵌入的基本区域后,在所述基本区域的基础上进行外扩,得到所述每个可见水印嵌入的最终区域;在所述基本区域上进行可见水印的嵌入,得到嵌入了可见水印的图像数据块;根据所述可见水印信息和所述最终区域信息构造附加数据块;当所述附加数据块连接到嵌入了可见水印的图像数据块之后,完成可见水印的嵌入。同时,本发明还公开了一种恢复原图像的方法及装置。本发明通过扩展基本区域和构造附加数据块,精确恢复原图像,避免块效应和边界效应,避免压缩造成的视觉影响,而且整个方法自封闭,恢复原图像时无需请求额外数据,运算快捷。
文档编号H04N7/24GK101472162SQ20071030415
公开日2009年7月1日 申请日期2007年12月25日 优先权日2007年12月25日
发明者吴於茜, 凯 康 申请人:北京大学;北大方正集团有限公司;北京方正电子政务技术有限公司