基于DSP的PDF417快速解码终端的设计与实现

[10-10 20:38:44]   来源:http://www.88dzw.com  单片机学习   阅读:8842

文章摘要: 条码的4个顶点确定以后,再经过旋转变换、错切变换和透视变换,将几何形变的不规则四边形条码校正为矩形条码。条码的旋转使终端的解码不再局限于水平和垂直的条码,实现了PDF417的全方位解码。3.4 条码分层及码字读取 PDF417是堆叠式条形码,需要确定条码的层次以进行逐行码字的读取。确定条码层次的步骤如下: (1)用Sobel边缘检测算子作用于图像,提取图像边界。 (2)将得到的分层界限进行水平投影,记录投影点数目p(i)。 (3)隔行差分。按照dif(i)=p(i)-p(i-2)计算第i行的投影差分值。若当前行投影差分值大于零,而其下一行差分值小于零,则认为该行

基于DSP的PDF417快速解码终端的设计与实现,标签:单片机开发,单片机原理,http://www.88dzw.com
    条码的4个顶点确定以后,再经过旋转变换、错切变换和透视变换,将几何形变的不规则四边形条码校正为矩形条码。条码的旋转使终端的解码不再局限于水平和垂直的条码,实现了PDF417的全方位解码。
3.4 条码分层及码字读取
    PDF417是堆叠式条形码,需要确定条码的层次以进行逐行码字的读取。确定条码层次的步骤如下:
    (1)用Sobel边缘检测算子作用于图像,提取图像边界。
    (2)将得到的分层界限进行水平投影,记录投影点数目p(i)。
    (3)隔行差分。按照dif(i)=p(i)-p(i-2)计算第i行的投影差分值。若当前行投影差分值大于零,而其下一行差分值小于零,则认为该行为分层界限。
    (4)伪边界去除。将投影高度小于投影峰值1/4的边界去除,以消除由噪声产生的伪边界。
    得到条码的层边界后,系统采用层内投影并判断投影高度的方法来读取每层条码的条空信息。实践证明该方法具有较高的正确率。
    用条空的宽度除以单位模块的宽度得到条码的条空宽度序列,如:81111113….31111334….711311121。单位模块宽度求解方法为:
    
其中,Wm为单位模块宽度,Wl为层宽,n为一层条空总数。
    最终译码采用查表的方式将条空序列转换为码字序列。码字序列经过检错与纠错后,按照3种压缩模式编码的反方向进行译码,最终得到PDF417条码的原始数据。
4 实验结果
    对采集到的28 000幅、分辨率为320×480的图像进行测试。测试结果表明,本终端对PDF417条码的识别率可达99.76%,识别码解码正确率为100%,解码速度达10次/s以上,具有国内领先的技术水平。

上一页  [1] [2] [3] 


Tag:单片机学习单片机开发,单片机原理维修教程知识 - 单片机学习