论文部分内容阅读
二维条码具有便捷、灵活、成本低、信息量大、可靠性高、保密性好等优势,正广泛的应用于证件数据保管,物流数据保存,零售行业,资料保密防伪等诸多领域。目前以图像处理为基础的二维条码识别技术还不完善,需要在两个方面进行改善:1、为了降低光照不均、几何畸变、形变、散焦模糊等外部因素对条码图像识别的影响,需要对二维条码图像处理算法进行优化和改善。2、目前的条码解码设备都是由ARM,DSP或其它通用控制器组成,使用专用的针对二维条码图像处理芯片可以通过减小控制器周边的辅助元件有效避免目前由通用控制器构成的二维条码解码设备体积大,功耗高,价格贵等缺点。本论文以此为背景,对二维条码的图像处理算法及其芯片设计做了下面几个方面的研究。(一)提出了一种光照均衡算法。在二维条码采集过程中,由于光源位置、角度的差异,获得的条码图像一般都具有一定程度的非均衡光照现象,这种非均衡光照现象给二维条码识别带来极大的困难。为了提高二维条码的识别率,必须采用特殊的算法消除这种不均匀光照现象。本论文分别采用四种不同形状的结构元素对二维条码进行WTH(white top-hat)变换,然后将四种处理结果进行融合。实验结果显示该算法不但能保护图像细节,也消除了二维条码图像的非均衡光照现象。(二)提出了一种边缘保持的滤波算法。摄像头采集的条码图像主要受离散脉冲、椒盐噪声的影响,为了减小噪声对图像的影响,本论文提出了一种自适应滤波算法,该算法首先判断一个滤波窗口中是否有中值存在,在中值存在的情况下,再对滤波窗口的中心点像素进行噪声检测,如果不是噪声,则将滤波窗口的中值进行输出,否则通过构建包含窗口中心像素的八个不同边缘走向子窗口来对窗口的中心点进行检测,最后选择离散度最小的子窗口中值为最终输出值。如果滤波窗口中没有中值,则直接将图像中心点的像素值进行输出。实验结果显示该算法能在保护图像边缘的同时有效去除二维条码的噪声。(三)提出了一种二维条码图像的定位算法。条码定位是二维条码识别中必须解决的技术难点。本论文提出的算法首先用尺寸逐渐增大的结构元素对原始图像进行腐蚀,然后通过数学形态学重建得到连通度大于某尺寸的子图,通过与前一次获得的子图进行比较,当两次相邻的子图相同时,子图就为粗定位结果图。最后,为了消除噪声对条码边缘的影响,对粗定位图像进行开、重建操作,得到精细的提取图像。实验结果显示该算法能够对不同种类,不同尺度的二维条码图像进行定位。(四)提出了一种图像校正算法。由于成像系统本身的几何误差以及人为因素造成的误差,在三维场景由透镜转换为二维图像的过程中存在线性和非线性等多种失真,这些失真对二维条码图像校正精度产生巨大的影响。为获得条码图像包含的真实信息,必须将失真后的图像进行校正即将形变后的图像进行复原。本论文采用先扫描后拟合的方法,通过分多次删除离散度较大的点,得到精确的边缘直线,并通过直线的两两相交得到精确的图像校正定位点,同时,为了减小算法的计算量,在二维条码的校正算法中,采用了先反透视变换,后仿射变换的两步式图像校正算法。(五)设计了一款可配置的基于二维条码的图像处理芯片。首先,针对二维条码图像处理流程中的灰度变换、光照均衡、去噪声、二值化、定位、校正等处理算法,分别采用verilog硬件描述语言进行逻辑设计,并结合处理单元之间的互连总线及SRAM控制单元的设计完成了一款面向二维条码图像处理的可配置逻辑电路;其次,采用FPGA验证平台对硬件逻辑进行了功能验证,实验结果显示所提出的算法对复杂背景下的二维条码具有较好的处理效果,最后,在功能验证的基础上,采用SMIC0.13μm的工艺,对电路进行了版图设计。