基于fpga实现的脆弱数字水印添加装置及数码相机的制作方法

文档序号:6484387阅读:139来源:国知局
专利名称:基于fpga实现的脆弱数字水印添加装置及数码相机的制作方法
基于FPGA实现的脆弱数字水印添加装置及数码相机
所属技术领域本发明涉及一种数字水印添加装置,尤其涉及一种基于FPGA实现的脆弱数字水 印添加装置及具有该数字水印添加装置的数码相机,并基于FPGA实现向数码相机所摄取 的图像中添加数字水印的方法。
背景技术
数码相机已经被广泛地用于拍摄影像并方便保存,人们利用各种软件对拍摄的影 像进行修改、编辑,使得影像满足不同的需求,但同时也使得拍摄的原始的影像难以保证真 实性。为保证和鉴别拍摄的数字影像的真实性,现有技术采用了在数码相机中设置数字水 印添加装置,可以向拍摄的影像中添加数字水印,当添加数字水印的影像被篡改后,可以通 过数字水印的验证以检验影像的真实性,从而有效保证所拍摄的数字影像的真实性。然而,上述的现有技术的数码相机的数字水印添加通过控制芯片和水印嵌入芯片 将数字水印添加至影像中,控制芯片与水印嵌入芯片预先设定的方式使得数码相机添加数 字水印缺少灵活性,用户使用时,而不同的用户有不同的需求时,针对不同情况也无法选择 进行数字水印的添加。现有技术的现场可编程门阵列(Field Programmable Gate Array, FPGA)采用 了逻辑单元阵列LCA(Logic Cell Array),内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块 IOB (Input Output Block)和内部连线(Interconnect)三个 部分,可以灵活地实现硬件配置,增加使用的灵活性和通用性,使得产品的升级方便。因此,如何将FPGA用于数码相机中实现添加数字水印,增加用户使用数码相机进 行数字水印添加的选择的灵活性,则成为当前数字水印数码相机的发展趋势。

发明内容本发明提供一种数码相机的数字水印添加装置,增加添加数字水印的灵活性,使 用方便。为解决上述的技术问题,本发明提供一种基于FPGA实现的脆弱数字水印添加装 置,包括数字水印发生模块,包括密钥产生模块;控制模块,控制密钥产生模块产生的密 钥加密用于添加数字水印的水印源图像并生成数字水印;以及数字水印添加模块,包括脆 弱数字水印运算模块,所述的数字水印添加模块接收数字水印和需要添加数字水印的原图 像后,通过所述的脆弱数字水印运算模块进行脆弱数字水印运算变换,将数字水印嵌入到 原图像生成添加脆弱数字水印的脆弱数字水印图像。本发明还提供一种基于上述的FPGA实现添加脆弱数字水印的数码相机,包括光 学系统,获取外部景物的光学影像信号;数字影像感应系统,将获取的外部的光学影像信号 转换为数字影像信号;处理器,处理器控制所述的光学系统及数字影像感应系统并处理生 成数字的图像;以及基于FPGA的脆弱数字水印添加装置,生成数字水印并进行脆弱数字水 印运算变换后,将数字水印嵌入到需要添加数字水印的原图像中生成脆弱数字水印图像。
本发明还进一步一种基于上述的FPGA实现数字水印添加的数码相机添加数字水 印的方法,包括如下步骤(1)获取用于添加数字水印的水印源图像和需要添加数字水印的原图像;(2)加密所述的水印源图像并生成数字水印;(3)将所述的数字水印添加到原图像生成数字水印图像。上述的数码相机添加数字水印的方法的步骤(3)中,还包括(3. 1)将所述的原图像进行分块运算变换;(3. 2)将分块运算变换后的图像进行离散余弦变换;(3. 3)将离散余弦变换后的图像进行量化变换;(3. 4)将所述的数字水印添加到量化后的图像;(3. 5)将量化后的图像进行反量化变换;(3. 6)将反量化后的图像进行反离散余弦变换,生成添加数字水印的数字水印图像。如上所述,本发明基于FPGA实现添加数字水印的数码相机设置基于FPGA实现的 数字水印添加装置,获取数码相机所摄取的影像可以通过FPGA选择数字水印添加模块进 行添加数字水印,FPGA添加数字水印的运算速度快,灵活性高,增加用户选择使用数字水印 添加功能的灵活性和提高水印添加的效率,有利于不同的用户选择使用。

图1是本发明基于FPGA实现添加脆弱数字水印的数码相机的结构图。图2是本发明基于FPGA实现添加脆弱数字水印的数码相机添加数字水印的原理 图。图3是本发明基于FPGA实现的脆弱数字水印运算模块结构图。图4是本发明的数码相机添加数字水印的方法的流程图。
具体实施方式为进一步阐述本发明达成预定目的所采取的技术手段及功效,以下结合附图及实 施例,对本发明FPGA实现数字水印添加的数码相机及添加数字水印的方法的具体实施方 式、结构特征及其功效,详细说明如下。本发明FPGA实现添加数字水印的数码相机,针对使用者的需求,可以灵活地添加 数字水印,用户还可以选择输入信息添加至水印的信息或者选择其他信息作为数字水印的 图像,方便用户使用,增加数字水印相机的数字水印添加的灵活性和方便性。如图1及图2所示,本发明FPGA实现添加数字水印的数码相机包括光学系统、数 字影像感应系统、存储器、基于FPGA的水印添加装置以及处理器。处理器控制光学系统及 数字影像感应系统并处理生成数字的图像,基于FPGA的数字水印添加装置生成数字水印 并将数字水印嵌入到需要添加数字水印的原图像中生成数字水印图像并存储至存储器。本 发明的光学系统和数字影像装置采用现有技术的数码相机的技术,为增加影像处理的速度 和提高影像处理的质量,本发明的处理器包括用于影像处理的数字信号处理器和微处理 器,数字信号处理装置接收数字影像感应系统所获取的数字信号并进行处理生成所拍摄的数字的图像,为提高图像的质量,并可以对图像进行降噪处理、自动的光线明暗调节等,处 理后的图像可以传输至存储器存储。存储器包括随机存储器和闪存器,数字信号处理器处 理后的图像传输至闪存器存储。微处理器分别连接存储器和随机存储器,数字信号处理器 分别连接随机存储器和微处理器。在本发明中,若是使用者选择添加脆弱数字水印,则数字 信号处理器同时将数字的图像传输至随机存储器以用于添加数字水印。如图1所示,本发明的基于FPGA实现的数字水印添加装置包括数字水印发生模 块、控制模块以及数字水印添加模块,数字水印添加模块接收数字水印发生模块产生的数 字水印,进而将数字水印嵌入到需要添加数字水印的原图像生成添加数字水印的数字水印 图像。数字水印发生模块包括密钥产生模块和伪随机数发生器,密钥产生模块生成的密 钥触发伪随机数发生器产生伪随机序列,同时加密用于添加数字水印的水印源图像,进而 生成数字水印。在FPGA实现的数字水印发生模块时,伪随机数发生器是一个线性反馈移位 寄存器,密钥产生模块所产生的密钥是作为线性反馈移位寄存器的种子进行触发。数字水 印发生模块设置分别与随机存储器连接的地址译码器和与寄存器,地址译码器还连接控制 模块,寄存器还与数字水印嵌入模块连接,在具体实施例中,控制模块内可以直接设置地址 译码器和寄存器。使用者选择本发明的数码相机进行数字水印添加的功能后,密钥发生单 元产生密钥,同时控制模块控制地址译码器对需要添加数字水印的原图像和用于添加数字 水印的水印源图像的地址进行地址译码,进而从随机存储器中获取原图像和水印源图像并 分别传输至数字水印嵌入模块和数字水印发生模块。数字水印发生模块所生成的密钥加密 的接收的水印源图像和伪随机数发生器产生的伪随机数序列,并生成数字水印,生成的数 字水印传输至数字水印嵌入模块,至此,数字水印嵌入模块将数字水印添加至原图像中生 成添加数字水印后的数字水印图像。数字水印嵌入模块将添加数字水印后的数字水印图像 传输给寄存器,进而通过存储器传输至随机存储器。微处理器控制随机寄存器中的数字水 印图像进而传输至闪存器进行存储,或者传输至外部的电子设备。如图3所示,本发明中的FPGA实现的脆弱数字水印嵌入模块包括分块运算变换模 块、离散余弦变换模块、量化模块、加法模块、反量化模块以及反离散余弦变换模块。在FPGA 实现中,加法模块接收需要添加数字水印的原图像和数字水印,由于FPGA的灵活性,可以 采用加法器通过加法运算将数字水印嵌入到原图像的像素单元的数据中,也可以采用减法 器通过减法运算将数字水印嵌入到原图像的像素单元的数据中。数字水印嵌入模块接收数字水印和需要添加数字水印的原图像后,分块运算变换 模块、离散余弦变换模块及量化模块分别运算所述的需要添加数字水印的原图像并传输给 加法模块,同时加法模块接收数字水印,由此加法模块通过加法运算将数字水印添加至量 化后的原图像中,之后传输给反量化及反离散余弦变换模块进行运算后,生成数字水印图 像。控制模块控制数字水印嵌入模块将数字水印图像传输给寄存器以存储。如图4所示,本发明的数字水印嵌入模块接收数字水印和需要添加数字水印的原 图像后,添加脆弱数字水印的方法,包括如下步骤(1)获取用于添加数字水印的水印源图像和需要添加数字水印的原图像;(2)加密所述的水印源图像并生成数字水印;(3)将所述的数字水印添加到原图像生成数字水印图像。
6
上述的添加数字水印的步骤(3)中,还包括(3. 1)将所述的原图像进行分块运算变换;(3. 2)将分块运算变换后的图像进行离散余弦变换;(3. 3)将离散余弦变换后的图像进行量化变换;(3. 4)将所述的数字水印添加到量化后的图像;(3. 5)将量化后的图像进行反量化变换;(3. 6)将反量化后的图像进行反离散余弦变换,生成添加数字水印的数字水印图像。本发明的FPGA实现添加数字水印的数码相机在使用时,通过对数字水印的选择 性添加,方便使用者灵活地使用不同的数字水印添加,在添加数字水印的过程中,包括如下 的步骤(1)开始初始化;(2)选择是否进行数字水印的添加?若是,进入下一步骤,若否,则进入普通的数 码相机的影像拍摄模式;(3)进行数字水印添加装置的初始化;(4)将摄取的图像传输至数字信号处理器进行影像处理并存储,比如,进行影像的 去噪、明暗处理等;(5)获取需要添加数字水印的原图像和用语添加数字水印的水印源图像,具体地, 数字水印添加模块的控制器控制地址译码器获取需要添加数字水印的源图像的地址和用 于数字水印添加的水印源图像;(6)生成数字水印,具体地,密钥产生模块生成的密钥加密水印源图像并触发伪随 机数发生器,生成数字水印;(7)将数字水印嵌入到原图像中,具体地,数字水印嵌入模块接收数字水印和需要 添加数字水印的原图像,并将数字水印添加到原图像中生成数字水印图像并存储;(8)结束。在上述的步骤(5)中,还包括(5. 1)是否输入信息,输入的信息包括用户的名字或数字等,若是,则进入下一步 骤,若否,则进入步骤(6);(5. 2)将输入信息传输至数字水印发生器。在上述的步骤(7)中,还包括图像划分模块、摘要计算模块以及加密单元,还进一 步包括(7. 1)数字水印嵌入模块接收源图像,将源图像I划分为图像第一区域Dl和图像 第二区域D2 ;(7. 2)将图像第一区域Dl发送给摘要计算模块,经过计算得到散列值H,该散列值 是通过基于图像数据的计算表示图像的特征的摘要,该摘要是表示图像数据特征的一个摘 要,并且散列值H的特征在于敏感地反应即使是图像内容中一个像素的改变即变为完全不 同的数值;(7. 3)散列值H被发送给加密单元,在加密单元根据密钥K对散列值H进行加密, 并输出加密后的散列值H’,加密后的散列值H’为水印信息。
本发明的FPGA实现添加数字水印的数码相机验证数字水印时,数码相机还包括 区域识别模块、析取模块、密钥存储单元、验证模块以及对比模块。验证数字水印的操作步 骤如下(1)区域识别模块获取需要进行数字水印验证的图像D’,将D’识别为用来产生散 列值H的区域D1,以及被添加了加密后的散列值H’的区域D2’的两个区域;将图像第一区域Dl发送给摘要计算单元,重新计算出散列值H作为比对信息,并 将散列值H发送到验证信息产生单元;(2)分析取单元接收区域识别单元发送过来的被添加了数字水印的区域D2’,提 取出散列值H”,该散列值H’被发送到比对单元;(3)当散列值H被发送到验证信息产生单元时,验证信息产生单元调用存储在密 钥存储单元中的密钥K,根据密钥K对散列值H进行加密,计算出加密后的散列值H’,并发 送给比对单元;(4)在比对单元中,将上述的第(1)和(2)步骤中分别得出的提取出的散列值H” 和加密后的散列值H’进行对比;(5)得出结论,如果两个值完全一致,则说明书该被验证的图像是该相机所拍摄的 真实影像,若两个值不相同,则说明书该图像不是该数码相机所拍摄的真实影像。在具体实施例中,上述的步骤(5)中,可以显示数码相机的唯一设备号,当检测得 到的两个值完全一致时,则显示该数码相机的正确的设备号,若两个不完全一致,则显示乱 码,同时提示该图像的真实性不确定。在具体实施例中,本发明的数码相机的数字水印验证过程的部分工作可由计算机 完成,该计算机通过通讯接口例如USB接口、蓝牙接口、IEEE1394接口等与本发明的数码 相机连接。当然,本发明所述的区域识别模块、析取模块、摘要计算模块和比对模块的工作 可以由计算机的验证系统完成,从而,只需将作为比对信息的散列值H通过通讯接口发送 给相机的验证信息产生单元,然后将加密后的散列值H’通过通讯接口返回给计算机,由计 算机的验证系统完成比对过程。综上所述,本发明的FPGA实现数字水印的数码相机,方便使用者选择使用数字水 印的添加,FPGA的灵活性和高速的数据处理,提高本发明的脆弱数字水印添加的添加效率, 进而符合脆弱数字水印添加的实现真实性要求。当然,使用者也可以选择不添加数字水印, 从而可以选择进入普通的数字相机的影像模式。
8
权利要求
一种基于FPGA实现的脆弱数字水印添加装置,包括数字水印发生模块,包括密钥产生模块;控制模块,控制密钥产生模块产生的密钥加密用于添加数字水印的水印源图像并生成数字水印;以及数字水印添加模块,包括脆弱数字水印运算模块,所述的数字水印添加模块接收数字水印和需要添加数字水印的原图像后,通过所述的脆弱数字水印运算模块进行脆弱数字水印运算变换,将数字水印嵌入到原图像生成添加脆弱数字水印的脆弱数字水印图像。
2.根据权利要求1所述的基于FPGA实现的脆弱数字水印添加装置,其中,所述的密钥 产生模块还包括伪随机数发生器,所述的密钥产生模块产生的密钥触发伪随机数发生器产 生伪随机序列并加密所述的水印源图像生成所述的数字水印。
3.根据权利要求2所述的基于FPGA实现的脆弱数字水印添加装置,其中,所述的伪随 机数发生器是线性移位寄存器。
4.根据权利要求1所述的基于FPGA实现的脆弱数字水印添加装置,其中,所述的脆弱 数字水印运算模块包括分块运算模块、离散余弦变换模块、量化模块、加法模块、反量化模 块以及反离散余弦变换模块,所述的离散余弦变换模块及量化模块运算所述的需要添加数 字水印的原图像再由加法模块添加数字水印后,由所述的反量化及反离散余弦变换模块进 行运算生成所述的数字水印图像。
5.根据权利要求2所述的基于FPGA实现的脆弱数字水印添加装置,其中,还包括与控 制器连接的地址译码器,所述的地址译码器译码所述的需要添加数字水印的原图像和水印 源图像的地址并传输给控制器以获取水印源图像和原图像,并分别传输至所述的数字水印 发生模块和数字水印嵌入模块。
6.根据权利要求5所述的基于FPGA实现的脆弱数字水印添加装置,其中,还包括连接 数字水印嵌入模块的寄存器,所述的数字水印嵌入模块将添加数字水印后的数字水印图像 传输至寄存器以存储。
7.根据权利要求1所述的基于FPGA的脆弱数字水印添加装置,其中,还包括密钥存储 器和水印信息验证模块。
8.根据权利要求7所述的基于FPGA实现的脆弱数字水印添加装置,其中,所述的密钥 存储器内存储的密钥只能被加密单元或水印信息验证模块调用。
9.一种基于FPGA实现添加脆弱数字水印的数码相机,包括光学系统,获取外部景物的光学影像信号;数字影像感应系统,将获取的外部的光学影像信号转换为数字影像信号;处理器,处理器控制所述的光学系统及数字影像感应系统并处理生成数字的图像;以及基于FPGA的脆弱数字水印添加装置,生成数字水印并进行脆弱数字水印运算变 换后,将数字水印嵌入到需要添加数字水印的原图像中生成脆弱数字水印图像。
10.根据权利要求9所述的基于FPGA实现添加脆弱数字水印的数码相机,其中,所述的 基于FPGA的脆弱数字水印添加装置包括数字水印发生模块,包括密钥产生模块;控制模块,控制密钥产生模块产生的密钥加密用于添加数字水印的水印源图像并生成 数字水印;以及数字水印添加模块,包括脆弱数字水印运算模块,所述的数字水印添加模块接收 数字水印和需要添加数字水印的原图像后,通过所述的脆弱数字水印运算模块进行脆弱数 字水印运算变换,将数字水印嵌入到原图像生成所述的添加脆弱数字水印的脆弱数字水印 图像。
11.根据权利要求9所述的基于FPGA实现添加脆弱数字水印的数码相机,其中,还包括 与所述的控制模块连接的存储器。
12.根据权利要求11所述的基于FPGA实现添加脆弱数字水印的数码相机,其中,还包 括与存储器连接的寄存器,所述的寄存器将添加数字水印的数字水印图像传输至存储器存 储。
13.根据权利要求12所述的基于FPGA实现添加脆弱数字水印的数码相机,其中,所述 的处理器包括数字信号处理器和微处理器,所述的数字信号处理器和微处理器分别连接所 述的存储器。
14.根据权利要求12所述的基于FPGA实现添加脆弱数字水印的数码相机,其中,所述 的存储器包括随机存储器和闪存器,所述的随机存储器与控制模块连接,所述的闪存器与 处理器连接。
15.一种如权利要求9所述的数码相机添加脆弱数字水印的方法,包括如下步骤(1)获取用于添加数字水印的水印源图像和需要添加数字水印的原图像;(2)加密所述的水印源图像并生成数字水印;(3)将所述的数字水印添加到原图像生成脆弱数字水印图像。
16.根据权利要求13所述的数码相机添加脆弱数字水印的方法,所述的步骤(3)包括(3. 1)将所述的原图像进行分块运算变换;(3. 2)将分块运算变换后的图像进行离散余弦变换;(3. 3)将离散余弦变换后的图像进行量化变换;(3. 4)将所述的数字水印添加到量化后的图像;(3. 5)将量化后的图像进行反量化变换;(3. 6)将反量化后的图像进行反离散余弦变换,生成添加脆弱数字水印的脆弱数字水 印图像。
全文摘要
本发明公开一种基于FPGA实现的脆弱数字水印添加装置及数码相机,所述的数码相机包括基于FPGA实现的数字水印添加装置,数字水印嵌入模块通过FPGA进行运算变换,充分结合FPGA的灵活性和可编程的门阵列,使得本发明的数码相机的使用灵活方便,可以由使用者灵活配置和选择,此外,本发明采用的FPGA方便二次开发、增加设计的灵活性,降低开发费用。
文档编号G06T1/00GK101883201SQ200910083400
公开日2010年11月10日 申请日期2009年5月4日 优先权日2009年5月4日
发明者周朝晖 申请人:北京华旗资讯数码科技有限公司;北京华旗数码技术实验室有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1