基于数字水印技术的商标真伪检测系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于数字水印技术的商标真伪检测系统

宋立,裘正定

北京交通大学信息所,北京 (100044)

E-mail:songlipm@

摘要:本文提出了一种水印检测的便携式设备的实现方案。介绍了基于数字水印技术的商标真伪检测器的设计和实现。本设计利用Altera FPGA/NIOS II资源,将我实验室先进的基于数字水印技术的商标真伪检测专利算法在Altera的FPGA/NIOS II平台下实现。然后主要介绍用C2H(C-to-Hardware)工具对软件算法的瓶颈进行硬件加速处理,实验结果证明系统性能得到了明显提高。

关键词:数字水印技术,SOPC,NOISII,FPGA,C2H

中图分类号:TN911

1.引言

数字水印技术是一种在数字作品中加入一个不可察觉的标识信息的技术,需要时可以通过算法提出标识信息来进行验证。数字水印技术作为一新兴领域,其主要应用领域前几年主要集中于电子产品的版权保护。近年来,人们开始了在印刷领域的应用即版权保护、证件防伪与商标防伪[1,2,3,4]。基于数字水印的印刷防伪技术与传统的印刷防伪技术不同,它彻底更新了印刷防伪的传统观念,具有很多传统防伪印刷技术所不具备的独特性质:隐藏性、确定性、鲁棒性、安全可靠性、技术先进性和设备无关性等。将数字水印技术应用于印刷品的防伪,在当前的社会发展中有十分重要的意义。

当前关于数字水印在印刷防伪方面的应用已经取得了一些可喜的成果。美国Digimarc[7]公司率先在1995年推出了媒体桥(mediabridge)技术,是以插件形式集成到Adobe 公司的Photoshop和Corel Draw图像处理软件中。随后,又推出了开拓访问因特网的一条新途径—通过在杂志广告、产品包装、目录甚至各类票据中隐藏不可见的数字水印。英国Signum公司推出的V eriData系列软件,用不可见的水印阻止商标的盗版以及重要文档的伪造、盗版和未授权的更改。瑞士AlpVision公司专为打印文档设计的SafePaper软件则可嵌在Microsoft Word软件中,它将水印信息(如商标、专利、名字、金额等)隐藏到打印纸内,以此来证明该文档的真伪。

然而,这些应用都是离不开计算机的,对于日常生活遇到的防伪问题,便显得束手无策。

所以,我利用我实验室先进的基于数字水印技术的商标真伪检测专利算法[5],结合Altera 的FPGA/Nios II平台的优势,将水印检测模块嵌入式实现,有利于将其设计成可重用的知识产权核(IP core),不仅对算法进行了有效的知识产权保护,也为这种新颖的商标防伪方法的推广应用带来了便利。

2.系统需求分析

功能需求分析:

本文重点在于将鉴别商标真伪的数字水印检测模块在嵌入式处理器系统中实现,一个完整的水印检测系统应包括以下基本功能:

(1)图像采集功能。首先需要获取商标图像,所以采集功能不能少。

(2)图像预处理功能。采集到的商标图像因为光照不同、偏移不同、旋转角度不同等,需要进行预处理来得到标准化的图像。

(3)水印检测功能。得到标准图像后,还需要有一个水印检测模块来进行水印提取。

(4)外设控制功能。系统需要与用户进行一些交互,这些就需要一个外设控制模块来调动各外设协调工作。

性能需求分析:

一个要实际应用的系统,衡量它的性能的指标一个是准确率,一个是处理实时性。这两点通常也是用户最关心的方面。

我们对整个系统的框架结构进行了分析,找出影响这两个指标的各个方面。

影响准确率的因素:

(1)图像采集的清晰度,直接影响到系统的准确率。所以系统采用130万像素的摄像头作为采集设备,并固定了光源。

(2)预处理的效果,间接影响到系统的准确率。预处理部分在PC机上的算法已经成熟,移植到嵌入式开发板时,也应尽量保证运算精度,才能保证原有的准确率。

影响实时性的因素:

预处理部分。因为图像处理算法通常都是计算密集型算法,用软件代码来实现的算法一定会花很长时间来执行。我们考虑将速度慢的算法模块用C2H加速。保证从图像采集到给出结果的时间达到秒级。

3.系统结构

本设计采用SOPC的可编程设计思想,以Cyclone II中实现的Nios II处理器为核心,系统架构如图1所示。

嵌入式商标真伪检测系统分为以下四部分:图像采集模块、图像预处理模块、核心处理模块和外设控制模块。系统的结构如下图所示。

数据流

查询/控制流

图1基于NiosII的嵌入式商标真伪检测系统结构图

图像采集模块包括商标固定的采集装置和具备曝光调整和调焦功能的摄像头构成;摄像头内嵌到采集装置内部,摄像头的输出数字信号通过传输线传送至电路板上的存储单元。采用未来3G手机普遍采用的百万像素级的摄像头即可满足图像质量要求,系统从数字视频流中截取一幅图像,存入缓冲区。

图像预处理模块对于系统是必不可少的。因为采集到的原始商标图像相对于嵌入时的原始图像有旋转、缩放和移位,所以图像预处理模块需要完成对图像的配准,即从采集的商标图像中提取标准大小的“正”的商标图像,图像预处理的效果直接关系到系统识别率和实时性。图像数据流进入预处理模块需要进行多种处理,因此是一个比较耗时的处理模块。在某些场合,商标图像预处理耗时比水印检测模块进行水印提取的时间还要多,为了保证整个系统的实时性的要求,也要对预处理模块进行有效的优化,提高处理速度。

核心处理模块除了实现水印检测的功能。预处理的商标图像流进入核心处理模块,核心处理模块就对商标图像数据相处理,从而得到一个图像与水印的匹配结果,根据匹配结果和阈值,可以得到商标图像的真伪判别结果。核心处理模块需要对系统的整个工作流程进行控制,包括对图像采集模块、图像预处理模块和外设控制模块的控制和查询。

外设控制模块为用户提供了友好的交互界面。用户可以工作按键操作控制每一个处理流程的进行,采集数据可以通过显示器呈现在用户的眼前,当处理完成时,判别结果通过LCD 和语音两种方式进行输出。

4.系统性能的提升

在系统的模块实现中,图像预处理模块涉及到计算密集的复杂算法,将全部算法利用硬件描述语言来实现这些算法工作量巨大,我们采用软件的方式编写算法,然后利用Qartus6.0集成的新特性——C2H工具[6,7]将部分利用软件编写的算法转化为硬件模块,这样就在开发速度工作量与运行速度方面作了较好的均衡。

4.1 C2H硬件加速器的介绍

NiosII C-to-Hardware(C2H)加速器是一种能够直接把ANSI C源代码转化成自定义硬件加速模块的工具。硬件加速器的基本功能就是在硬件中描述一个C函数的逻辑模块,通常它能很大地提高执行的性能。使用C2H编译器,可以在Altera NiosII处理器的C环境中编写和调试算法,并且能快速地将这段C代码转化成一个硬件加速器,并把它集成到现场可编程逻辑阵列(FPGA)中去。

通过把专用的C函数描述成硬件加速器的形式,C2H编译器能够改善NiosII编程的性能。但是,C2H编译器不是一种把C当作设计语言来构建硬件系统的工具。

4.2 C2H使用规范

要使用C2H编译器,需要满足以下前提:

1、 ANSI C语法对于描述大运算量或访问存储器密集的任务是有效的;

2、 C2H工具不能干扰现有的软件和硬件开发流程。

基于这些前提,C2H编译器的设计方法能够提供下列功能:

1、满足ANSI C。C2H编译器对完全的ANSI C代码进行操作,并且支持大部分的C 结构,比如指针、数组、结构体、全局和局部变量、循环和子函数调用。C2H编译器不需要专用的算法或库函数来声明硬件的结构。

2、C到硬件的对应匹配。C2H编译器把C语法中的每一元素与已定义的硬件结构进行

相关文档
最新文档