0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一套基于ARM的卷烟防伪识别系统设计与实现

电子工程师 来源:《现代电子技术》 作者:门鹏 2021-05-05 09:05 次阅读

为了保证消费者利益,卷烟防伪技术越来越受到烟草行业的重视,烟草工商企业不断寻求技术含量高、保密性强的新型防伪技术和防伪产品。目前常见的卷烟防伪技术有包装新型激光全息防伪标识和防伪技术光致变色油墨等。一些卷烟产品采用数码防伪技术,如部分“芙蓉王”香烟在每一盒(条)产品透明纸上喷印有一组惟一性的18位产品防伪数码(即产品的身份代码),使造假者无法批量假冒,对该数码进行查询,便可获得产品真伪信息

该方法可以确定该产品是否出自正规厂家,但无法得知卷烟是由哪家零售户出售的,且只适用于特定品牌的香烟。因此,本文利用国家烟草专卖局对每条卷烟所编32位代码进行查询,32位代码是每条卷烟的惟一身份代码,与零售户信息存在对应关系,通过32位码可获取条烟的准确来源及出库的初始日期等信息,由此辨认是否假冒或者串货卷烟。

卷烟32位码是根据零售户订单在烟草专卖局出库时由激光打码机或者是喷码机直接打印或喷涂在卷烟薄膜外侧的一组数字。由于数字串较长,采用人工方式读取编码效率较低,为了让稽查员能迅速将条烟上的代码输入到信息系统,继而获取条烟对应的零售户信息。需要一个类似于条码扫描器的设备,快速获取条码信息,由于图像识别技术较为成熟,应用领域较为广泛,本文采用图像识别算法识别条烟上的32位码,形成数字信息并通过远程通信的方式从远程数据库中查询条码所对应的零售户信息。

1 系统构架

系统由前台和后台两部分组成,前台系统主要是便携式手持识别设备,后台系统是条码查询系统。便携式手持设备包括软硬件两部分,硬件部分由以下四个模块构成:32位码扫描模块、数字识别模块、数字显示和修改模块、短信收发模块。软件部分以图像识别系统为主。条码查询系统由条码处理系统以及短信网关服务器两部分组成。防伪识别系统构架如图1所示。

o4YBAGB-pKOAJOJqAADzBuPsGLo249.png

识别过程是首先由32位码扫描模块拍摄条烟上的条码作为图像,输入到识别模块,由数字识别模块使用智能图像识别算法识别图像中的数字和字母,并将识别后的数字显示在显示屏上,同时对识别错误的数字进行人工更改,使用短信收发模块将识别出的条码以短信形式发送到短信网关服务器中,短信网关服务器通过数据库触发器查询条码数据库,并接收返回查询结果,与此同时条码处理系统每天定时增加当天的打码数据,以确保条码数据库的完整性。

2 防伪识别系统关键技术

2.1 便携式手持识别设备的关键技术

便携式手持识别设备由嵌入式硬件设备以及运行在该硬件设备上的软件系统两部分组成。

2.1.1 嵌入式硬件设备

采用ARM9 SamsungS3C2440为微处理器,并采用专业稳定的CPU内核电源芯片和复位芯片来保证系统运行时的稳定性,PCB电路板的制作采用沉金工艺的四层板技术,保证关键信号线的信号完整性。

图像扫描模块由数字摄像头、自带补偿光源组成。采用9650数字摄像头作为图像采集设备,同时使用照明LED作为自带补偿光源,可以不受外界干扰地拍摄香烟盒外包装上的防伪码高清图像。采集图像分辨率为800x600,24 b位图格式。

数字识别模块采用SamsungS3C2440A处理器,外接128 MB SDRAM和64 MB FLASH,使用WinCE操作系统

数字显示和修改模块为1块NEC 3.5英寸TFT触摸屏,是系统的人机交互接口

短信收发模块采用Siemens公司的TC35i GSM短信收发模块,能够稳定的发送识别结果。由于此装置为便携式设备,采用9 V,2 500 mA锂电池为其提供电能。

2.1.2 嵌入式设备上的软件

软件系统主要包括两部分:基于WinCE系统的人机交互界面和内嵌的图像识别程序。

人机交互界面界面使用EVC 4.0开发,当需要使用本系统进行图像识别时,先启动操作系统,启动应用程序,将带光源的摄像头扣到卷烟条码的位置,当条码完全放到显示框中后,点击“识别”按钮进行自动识别,识别数字将显示到第一个文本编辑框中,如果有未识别出的字符,系统用“*”号代替,然后采用人工方式进行辨认和修改,点击发送后识别结果将显示到第二行文本框中。

根据系统设计的要求,将图像识别过程初步分化为以下几个步骤:

步骤1:色彩模型转换及灰度化处理

为保证在色彩无失真的情况下实现图像处理,将彩色图像从RGB模型转化为HIS模型,并依据该模型对彩色图像进行灰度化处理。式(1)和(2)分别给出了模型转换和灰度化公式:

pIYBAGB-pLKAb5BbAADutJJkNWU927.png

步骤2:图像平滑及二值化处理

采用中值滤波方法对灰度化图像进行平滑以去除各种加性噪声。二值化处理则采用最大类间方差法(OTSU),该方法通过选取最佳阈值将原图像分成差别最大的前景和背景两个图像。

设前景点数占图像比例为w0,平均灰度为u0;背景点数占图像比例为w1,平均灰度为u1。则图像的总平均灰度为:

pIYBAGB-pMOAZ4J3AACmqwotvpc461.png

当方差g最大时,可以认为此时前景和背景差异最大,也就是此时的灰度是最佳阈值。

步骤3:去除联通区域

进行噪声处理,去掉一些不必要的小连通区域。通过统计各连通区域内的像素点数,将小于给定阈值的连通区域去除掉。

步骤4:基于支持向量机的数字识别

首先将灰度图像切割成多个具有单独数字的图像,然后采用支持向量机技术的数字进行识别。由于数字全为打印格式,参考文献中算法,采用水平垂直投影和左右轮廓投影结合的方法提取如下特征:垂直和水平投影及投影极值、左右轮廓投影、左右轮廓投影_阶差分、左右轮廓投影变化峰值、数字长、宽及长宽比等。由于数字只有10种情形,故可以将多个支持向量机的二类分类器组合起来构成一个多类分类器来实现数字的识别。如果测试样本与某个训练样本匹配,则给出对应的数字,如果不匹配,则会出现误匹配,这个时候尽量能给出错误提示,提示无法识别。

2.2 后台处理程序的关键技术

后台处理系统由打码数据处理系统、短信网关处理程序以及后台Web监控程序三个部分组成。

系统解析文本数据并存入本地数据库,移动联通短信网关可以接收来自用户的查询短信也可接收来自便携式识别设备发过来的查询短信。Web查询系统的主要作用是领导可以在Web页面上查看使用手持设备的稽查员都检查了哪些零售户,对稽查员的工作情况进行评价。另一方面,稽查人员可以通过网络系统查询32位条码,并查询该卷烟对应的零售户所的基本信息和违规信息等,同时普通用户也可在计算机上查询卷烟条码真伪。

2.2.1 短信网关处理系统

前台短信查询是通过短信网关MAS服务器接收用户请求,并通过查询数据库的方式将查询结果返回给用户。使用华为企业代理服务器V4.1D32,为了使得MAS短信网关自动回复短信,在短信网关服务器的SQL SERVER数据库中需要设计一系列触发器,用于自动处理查询请求。为了让触发器调用远程数据库上的数据,有两种途径,一种是通过Windows系统自带的MSDTC远程传输控制服务直接获取数据,另一种是在触发器中调用一段Java代码从远程数据库中获取数据。

2.2.2 打码数据处理系统

打码处理系统的作用是定时处理中软公司提供的打码到条接口,将中软公司每天给出的打码数据文本文件通过文本解析的方式拼接出卷烟32位码,然后定时存入本地数据库中。处理程序由Java语言swing类库编写的桌面应用程序,当设置好FTP的IP地址、用户名密码、定时处理时间后,程序会每天自动从中软接口中获取当天的打码数据。

2.2.3 后台Web查询系统

后台网络查询程序使用J2EE体系架构设计,采用WebWork这种MVC设计框架使得整个软件系统层次清晰、复用性强,便于系统的二次开发和升级维护。32位码查询系统包括卷烟32位码详细查询子系统、客户记录查询子系统、手机号码查询子系统、数据采集子系统、信息协作子系统以及系统管理子系统6个部分。

3 系统性能分析

图像处理程序的效率对整个系统的性能有着重要的影响,虽然ARM9处理器具有较强的处理能力,但在运行较复杂的图像处理算法时依然会有些吃力,尤其是在使用了支持向量机进行智能识别后,识别速度变慢。为此,这里特别针对本系统图像特点对处理程序进行了大量优化,主要从以下三方面进行:一是在不影响质量或对质量影响很小的情况下尽量简化处理步骤;二是对支持向量机模型进行了最优化设计;三是对程序中代码进行技术优化,使其在内存占用量和执行效率上均达到接近最优的程度。经过以上优化设计后,最终系统的性能达到了基本满意的程度。

4 结论

本文设计并实现了一套基于ARM的卷烟防伪识别系统。整个系统涉及到嵌入式硬件系统的设计、图像识别算法的实现、短信网关的处理程序以及J2EE数据库系统的开发等内容。可使用便携式识别设备、手机短消息以及网站等方式为稽查员、普通消费者以及卷烟零售户提供鉴别真假的手段,试验表明该系统的使用可有效的提高烟草商业的专卖管理水平。随着设备硬件性能的不断提升,在今后的研究工作中,可考虑使用更为复杂的智能识别算法进一步提升系统的识别和使用效果。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9021

    浏览量

    366368
  • 嵌入式
    +关注

    关注

    5056

    文章

    18953

    浏览量

    301633
  • 服务器
    +关注

    关注

    12

    文章

    8926

    浏览量

    85044
收藏 人收藏

    评论

    相关推荐

    一套电源ATE自动测试系统如何完成多型号电源模块测试?

    在使用NSAT-8000电源ATE测试系统后,鉴于不同型号的VPX电源生产工艺、参数有所不同,工程师可根据电源型号搭建相应的测试项目和方案,一套系统便完成了该公司多型号的电源模块测试,减少了测试成本。
    的头像 发表于 09-18 18:20 170次阅读
    <b class='flag-5'>一套</b>电源ATE自动测试<b class='flag-5'>系统</b>如何完成多型号电源模块测试?

    如何设计出一套用于移动式综合监测站管理的软件系统

    如何设计出一套用于移动式综合监测站管理的软件系统 要设计并实现一套系统,用于管理移动式综合监测站,并具备绘制其动态位置变化图和部署时间分布图
    的头像 发表于 09-10 18:15 147次阅读

    基于FPGA的指纹识别系统设计

    随着人们对安全问题的日益重视,指纹识别作为种高效、可靠的生物识别技术,在多个领域得到了广泛应用。本文设计并实现种基于FPGA的嵌入式指
    的头像 发表于 07-17 16:33 1170次阅读

    多目标智能识别系统

    智慧华盛恒辉多目标智能识别系统种利用现代计算机视觉技术和人工智能算法,从图像或视频中同时识别和分类多个目标物体的系统。这种系统广泛应用于
    的头像 发表于 07-16 10:42 1.2w次阅读

    基于OpenCV的人脸识别系统设计

    基于OpenCV的人脸识别系统个复杂但功能强大的系统,广泛应用于安全监控、人机交互、智能家居等多个领域。下面将详细介绍基于OpenCV的人脸识别系统的基本原理、
    的头像 发表于 07-11 15:37 1.1w次阅读

    如何用java语言开发一套数字化产科系统  数字化产科管理平台源码

    如何用java语言开发一套数字化产科系统 数字化产科管理平台源码
    的头像 发表于 07-06 09:38 946次阅读
    如何用java语言开发<b class='flag-5'>一套</b>数字化产科<b class='flag-5'>系统</b>  数字化产科管理平台源码

    基于GIS的SAR多目标智能识别系统

    智慧华盛恒辉基于GIS的SAR多目标智能识别系统个集成了合成孔径雷达(SAR)和地理信息系统(GIS)技术的先进系统,旨在实现高分辨率雷
    的头像 发表于 06-26 14:26 402次阅读

    车载语音识别系统语音数据采集标注案例

    车载语音识别系统是指利用机器学习算法实现种自然语言处理技术,载语音识别系统通过辨别声音的语调、语速和音量,将所听到的语音转化成可读取的语言数字,从而达到
    的头像 发表于 06-19 15:52 303次阅读
    车载语音<b class='flag-5'>识别系统</b>语音数据采集标注案例

    车载语音识别系统语音数据采集标注案例

    车载语音识别系统是指利用机器学习算法实现种自然语言处理技术,载语音识别系统通过辨别声音的语调、语速和音量,将所听到的语音转化成可读取的语言数字,从而达到
    的头像 发表于 06-19 15:49 424次阅读

    在不同的电脑上启动同一套代码时,出现编译路径错误的提示怎么解决?

    不同的电脑上安装esp-idf的路径不同时,启动同一套代码时会出现: 无法找到“D:\\Espressif\\tools\\xtensa-esp32-elf\\esp-2022r1-11.2.0
    发表于 06-11 06:54

    ICON发布一套新型建筑3D打印硬件、软件和材料

    2024年3月,先进建筑公司ICON 发布了一套实现建筑自动化的新产品和技术,包括能够实现多层建筑的全新机器人打印机、新型低碳建筑材料、包含 60 多种现成住宅设计的住宅建筑数字目录,以及用于住宅设计和施工的 AI 建筑师。
    的头像 发表于 04-07 18:27 1100次阅读

    解决方案:智能公交识别系统无线传输方案

    无线传输识别系统
    北京东用科技有限公司
    发布于 :2023年12月13日 11:59:34

    如何实现一套linux进程间通信的机制

    我们知道linux的进程的间通信的组件有管道,消息队列,socket, 信号量,共享内存等。但是我们如果自己实现一套进程间通信的机制的话,要怎么做?了解android 开发的可能会知道
    的头像 发表于 11-10 14:56 592次阅读
    如何<b class='flag-5'>实现</b><b class='flag-5'>一套</b>linux进程间通信的机制

    基于DSP的车载语音识别系统方案设计

    电子发烧友网站提供《基于DSP的车载语音识别系统方案设计.pdf》资料免费下载
    发表于 11-08 09:14 2次下载
    基于DSP的车载语音<b class='flag-5'>识别系统</b>方案设计

    远程RFID自动识别系统的研究

    电子发烧友网站提供《远程RFID自动识别系统的研究.pdf》资料免费下载
    发表于 11-06 10:24 0次下载
    远程RFID自动<b class='flag-5'>识别系统</b>的研究