欢迎来到天天文库
浏览记录
ID:10582986
大小:49.50 KB
页数:3页
时间:2018-07-07
《基于数字图象处理的条码快速识别方法研究论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于数字图象处理的条码快速识别方法研究论文.freel可见激光二极管,扫描速度100次/秒,扫描精度5mil,采样时序图如图2所示:图2采样时序图开关信号一次接通的持续时间为5s;一个扫描周期内,正反相各占16ms;一次采样触发信号的持续时间为1.4μs。3数据传输由于PC机运行速度远高于单片机,我们将扫描器采集到的电信号通过计算机接口送给计算机处理。这种方法不存在通信协议方面的问题,数据输入简单、方便,如果采用高效的译码程序,将很大程度地提高数据处理的效率。PC机一般都配有一个标准的CENTRONICS并行打印机接口,它也可以作为通用
2、并行I/O口来使用。图3为常用的PC机并行口引脚图,内部包括三个并行I/O端口,地址分别为:0X378、0X37A、0X379,通过对这三个端口的控制,可以实现数据和控制信号的输入和输出。0X378口包含8位数据输入输出线(D0~D7),通过读写0X378H端口可以对数据线上的数据进行读写操作。进行一次写操作,就将一个8位数据写到寄存器锁存并输出;进行一次读操作,读入锁存在寄存器中的值。0X37A口包含4根控制信号输出线,可以通过该端口把控制信号输出到外部数据线上。0X379口包含5根状态输入线,通过该端口可以把扫描器上的状态信号输入到
3、PC机,文中采用379口的引脚10、12、13分别与扫描器内部芯片的开关信号、扫描方向信号、检测输出信号端相连(图4),实现数据传输。图3常用的PC并口引脚P1—检测输出信号P2—扫描方向信号P3—开关信号图4PC并口与扫描器芯片连接图4数字图象处理数字图象处理是将采集到的图象经A/D转换器数字化后,图象转换为由一定数量级的数字所表示的数学矩阵,然后用计算机根据一定的算法对其进行处理的过程2。本文采用BorlandC++Builder为开发环境,利用该软件强大的图形图象处理功能,结合MIL所带的一系列函数3,完成图象的实时处理和图象后处
4、理。当数据传输的任务完成后,单片机传输到PC机的是A/D转换后的数字量,表现为:当激光扫到条码的白色区域,检测到高电平;当激光扫到条码的黑色区域,检测到低电平,分别用数字1、0表示,用数字图象的形式表达出来,如图5所示。图5条码数字图象4.1滤波消噪数字化后的条码图象存在一定的噪声干扰,本文采用滤波的方法进行消噪处理,从而改善图象质量,便于特征提取。通过分析可知,图中的噪声主要包括孤点噪声和边缘毛刺噪声两部分。对于孤点噪声,本文采用中值滤波的方法进行消噪处理。中值滤波技术对干扰脉冲和点状噪声有良好的抑制作用,而对图象边缘能保持良好的非线
5、性,起到既消除噪声又保持图像细节的作用。中值滤波是将一个含有奇数个像素的滑动窗口内的像素点按灰度值排序,如:⑴其中,,l为窗口的长度,Fj即为窗口的中值滤波输出。表示为:4⑵表示取数列的中间值由于表面图象是二维的,将一维中值滤波推广到二维。这时选取某种形式的二维窗口,将窗口内像素点的灰度值按先行后列的顺序排列,生成单调二维数组序列Fij,二维中值滤波输出表示为:⑶由公式⑴、⑵、⑶可以看出,中值滤波是将中心像素与周围像素的灰度值进行比较,将灰度值较大的像素点与周围像素点接近,从而消除孤立的噪声点。本文采用3×3形式的二维中值滤波方法对图5
6、做消噪处理,结果如图6所示:图6中值滤波后的条码图象对于边缘毛刺,采用求平均值的方法处理。由于图象各行在同一位置的条空宽度不等,就会出现边缘毛刺现象。因此,本文将每个位置上逐行扫描到的条空宽度求平均值,得到该位置的条空宽度并输出(图7),求解过程如下:⑷⑸⑹⑺式中:Lr—第r个条(空)的宽度;lir—第r个条(空)第i扫描行的宽度;m—条码长度;n—扫描总行数图7均值滤波后的条码图象4.2边界检测由于光源扫描的范围不仅包括条码区,还包括非条码区,所以得到的数字图象也包括条码区和两侧静区(如图8所示),需对其进行边界检测,将条码部分提取出
7、来,以便进行译码处理。本文采用相邻条空宽度比较的方法5判别条码的起止位置:当所测条的宽度的10倍小于上一空的宽度时,此条即为条码的开始位置;当所测空的宽度大于上一条的宽度的10倍时,条码部分截止。图8条码图象组成4.3阀值分割受信号采集精度的影响,计算机输出的条码元素的宽度与实际值之间存在误差,如果直接译码,难免要出现误读的现象。因此,本文采用阀值分割的方法,选定一个宽度阀值M,通过公式⑻将所有条码元素的宽度f(x)划分为宽条、窄条、窄空、宽空四类,逻辑值分别为-2、-1、1、2,这种方法可以消除硬件带来的误差,保证了输出信息的正确性。
8、(8)5译码输出不同码制的条码,编码规则一般不同,解码方法也不同。本文采用逻辑值匹配的方法对目前常用的UPC/EAN码做译码分析,这两种码制的每个字符都由两条两空组成,以字符“5”为例,当它表示一位右手偶字
此文档下载收益归作者所有