首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于NiosII的二维条码识别系统设计
来源:本站整理  作者:佚名  2009-07-02 09:21:58




3 系统软件设计
    系统软件是在Nios II的μC/OSII操作系统下进行C语言编程的。系统初始化主要包括对采集芯片、射频传输控制模块、网络接口的初始化,整个系统动态扫描条码图像和实时译码。系统主要流程如图9所示。其中,系统初始化时利用函数IOWR(SIGNAL_CAP_O_BASE,O,1)将采集模块全局信号复位,然后使用函数alt_irq_register。(SIGNAL_CAP_0_IRQ,NULL,sig_cap_irq_proc)来建立一个用户中断程序,对按键中断响应进入中断服务程序sig_cap_irq_proc,向摄像头发送采集指令。当采集模块完成一幅条码图像采集后,产生一个硬件中断,将标志FLAG置1。当主循环程序判断FLAG为1时,就可以从外扩的SRAM中将图像数据读入SDRAM中,接着进行图像预处理和译码,其中包括用自定义用户指令和硬件模块实现的一些运算量大的部分。射频传输与NiosII的PIO口相连,通过函数IOWR_ALTERA_AVALON_PIO_DA_TA来实现。

                                            
4 实验与分析
    本识别系统工作频率为100 MHz,图像采样分辨率为320×240,一幅条码图像识别时间为60 ms。本系统有如下几个特点:
    ①利用PDF417码本身的特点来定位分割条码,与传统的条码定位分割算法相比,大大提高了条码识别速率。传统二维条码定位分割多采用Hough变换来确定条码倾斜角度,不能满足手持式嵌入式条码识读器的实时性要求。
    ②在FPGA中嵌入NioslI软核处理器,简化硬件设计,同时使系统更加稳定。FPGA的可重配置以及SOPC的可裁减使系统具有很高的资源利用率,而且方便升级和维护。
    ③利用自定义模块、自定义指令、C2H硬件加速等方法刮对部分耗时算法进行优化,大大提高了整个系统识别速率。
    笔者针对不同环境下采集的300幅条码图像进行了三次测试:第一次是在条码无破损的情况下,第二次是在条码有5%破损和污染的情况下,第三次随机识别100幅条码。本文所采用的算法平均识别率达96.7%,耗时60ms,如表1所列。

                          

结 语
    二维条形码诞生后,条码技术的应用领域更加广泛,不仅应用于物流运输,还渗透到生产、生活的各个领域。本文介绍了一种基于SOPC的二维条码识别系统的设计,提出了一种软硬件综合的解决方案,由于涉及底层的硬件系统设计和相应的软件设计,在系统性能优化方面有着很大的空间。

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

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:17,503.91000 毫秒