当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于ARM 和Linux的字符采集与识别系统

     摘要:提出了一种针对嵌入式系统的字符识别方法。介绍了一种基于ARM9处理器和嵌入式L inux 的字符图像采集与识别系统。该系统采用嵌入式L inux操作系统, 图像预处理和字符识别的软件开发可以脱离硬件。通过开发不同的识别软件, 系统可应用于名片识别、二维条码识别、纸币序列号识别等多种字符识别的场合, 提高了通用性。



  传统纸质读物的数字化以及诸如条码识别等字符识别系统都离不开图像的读入与识别, 然而目前广泛使用的字符识别设备将这两部分独立开, 即由图像读入设备(如扫描仪)和安装于计算机上的识别软件构成, 但这样的设备构成离不开安装识别软件的计算机, 造成成本上升和使用不便。随着电子产品的普及, 具有摄像功能的电子产品及其上的识别软件也可以构成一个字符识别系统, 但是这种识别系统的识别速度受到摄像头调焦的限制, 难以广泛应用。文中提出的便携式字符采集和识别系统, 其硬件平台是基于接触式图像传感器( C IS) 与ARM9处理器S3C2410,软件平台是基于嵌入式L inux 系统, 可以克服以上两种设备的缺点, 同时满足方便性和快速性的要求。另一方面, 由于设备基于L inux 操作系统, 使得识别软件的开发和扩展可以脱离硬件, 大大提高识别系统的通用性。



  1.图像采集模块



  字符识别系统主要由图像采集模块和图像处理模块组成, 其中图像采集模块是整个系统的硬件核心,图像采集的质量直接影响系统的整体性能。线阵C IS每次扫描得到一行像素值, 配合运动平台的纵向运动可以完成一幅二维图像的扫描。为保证图像采集的质量, 必须精确控制运动平台与C IS 之间的工作匹配, 本系统以CPLD 作为图像采集模块的控制核心,CIS传感器、步进电机、ADC 以及高速缓存FIFO 在CPLD的控制协调下完成一幅图像的采集、模数转换和数据缓存。系统总体结构框图如图1所示。



图1系统结构框图。

  1.1硬件平台



  ( 1)ARM 处理器。



  采用三星公司的ARM9系列S3C2410A 作为处理器, 工作频率可达203MH z, 片上资源丰富, 可以满足实时性要求, 为图像处理提供运行平台并配合CPLD 完成图像采集模块的逻辑和读写控制。



  ( 2)图像传感器及运动平台。



  接触式图像传感器( C IS) 具有体积小、重量轻、功耗低、结构紧凑、连接方便以及无阱深等优点, 在扫描仪等领域被广泛应用。本系统采用SV643C10型C IS, 其物理分辨率600 dpi( 236 do t /mm ) , 有效扫描宽度292mm, 共688个传感器像素单元, 其像素输出频率为5MH z。



  运动平台由步进电机和光电传感器等组成, 光电传感器实现对进纸的检测, 启动扫描。步进电机控制扫描件换行, 配合C IS完成图像的采集。



  ( 3)信号调理电路。



  信号调理电路完成对C IS 输出模拟信号的差分、放大等, 实现降噪和电压匹配的作用。



  ( 4)高速A /D转换器。



  由于C IS的像素输出频率高于处理器内部的A /D转换器, 所以本系统采用高速的外部ADC 器件TLC5540, 其最大采样率40 MB s- 1, 拥有8 位分辨率。



  ( 5)数据缓存。



  为了实现ADC 和ARM 的速度匹配, 提高系统工作效率, 在ADC 与ARM 处理器之间加一个F IFO 存储器作为高速数据缓存, 选用Averlog ic公司的1 MB8 bit的AL4V8M 440。



  ( 6) CPLD模块。



  实现图像采集模块的逻辑控制。为C IS传感器提供的时钟信号CP 和行转移信号SP。为ADC 提供采集时钟, 为FIFO 提供读写控制和写时钟等。


[!--empirenews.page--]



  ( 7)存储器。



  本系统采用三星公司的64 MB NAND Flash 存储器K 9F1208作为程序和数据的存储单元, 采用两片16位的HY57V561620CT- H (总容量64MB ) SDRAM作为系统内存, 同时作为DMA 方式读取缓存数据的目的存储器。其中Flash存储器存储空间分配情况如图2所示。



图2NAND Flash地址分配。

  1.2软件设计

图像采集模块的程序设计主要任务是实现该模块各元器件的协调工作以及实现对图像数据的读取。主要分为3部分内容。

( 1) CPLD 上的逻辑设计。采用VHDL 语言编写,该程序将外部晶振的10MH z输入进行分频, 为C IS、ADC、FIFO 等提供时钟和控制信号, 并为步进电机提供工作时序。

  ( 2)嵌入式L inux 系统的裁剪、配置和移植。

  本系统采用26内核, 宿主机环境为Ubuntu804。

图3L inux内核配置。

  ( 3) L inux 驱动程序的编写。由于采集模块对于Linux系统来说可看作为一个设备, 因此该部分程序应作为嵌入式L inux 设备驱动程序来编写, 该驱动程序通过CPLD间接实现采集模块的逻辑控制和图像数据的读取, 为应用程序的开发提供底层硬件的接口[ 5 ] 。从FIFO 缓存读取图像数据采用DMA 方式,DMA的目的存储器为ARM 系统的SDRAM。[!--empirenews.page--]

  图像采集模块工作流程图和图像采集效果分别如图4和图5所示。

  2.图像识别模块

  本文的目的是构建一个通用的字符识别系统,图像采集模块实现了对扫描件图像数据的获取。由于系统基于嵌入式L inux, 使得后续的图像处理与字符识别软件设计可以脱离硬件系统独立进行, 具有较高的通用性, 可以根据实际应用场合开发和扩展不同的识别软件, 本文仅探讨手写体数字识别的应用。[!--empirenews.page--]

  识别算法:

  线性判别分析( L inearity D istinct ion Analysis,LDA)是有效的特征抽取方法之一, 广泛用于人脸识别和字符识别等领域[ 6] 。其基本思想是选择使F isher准则函数达到极值的一组矢量作为最佳投影方向, 样本在该矢量集上投影后, 达到最大的类间离散度和最小的类内离散度。为找到投影轴, 应最大化类间离散矩阵Sb 和类内离散矩阵Sw 的比值:

  类间离散矩阵Sb 和类内离散矩阵Sw 的定义为

  其中, c表示为模式的类别数; j 表示为第j 类的均值(其概率为pj ); 0 为全部样本均值; xji 为第j 类模式i的h维向量; nj 是第j 类的样本数; N 是所有样本数。j 和0 定义为:

  最优化问题可以通过Sb 和Sw 的特征值的求解而获得。如果在样本离散矩阵中非目标样本占有比重较大, LDA 并不能保证找到最优子空间。LDA 的最优分类标准并不一定对分类准确性最优, 有可能使得已经分开的邻近类引起不必要的重迭。本文采用一种新的加权LDA 方法( ILDA ), 其计算S^b 和S^w 方法如下:

  显然, 如果( )是个常数, 在投影方向上, S^b和S^w 分别等同Sb 和Sw。如果每一类的( )是不同的, 这将对临近类的重迭样本的分类产生影响。可以看出, 如果 ij较大, 则( )较小。

  实验样本取自手写体通用数据库UC I, 在Bhattacharyya距离( BD)分类器下对加权线性判别分析与相应的算法进行实验比较和分析, 取得较好的识别性能, 证实了该方法提取的特征的有效性。

  3.结束语

  本文采用嵌入式Linux 和ARM 处理器软硬件平台, 利用C IS传感器配合运动平台实现了图像的采集和存储, 为嵌入式字符识别系统构建了一个图像采集平台。在字符识别的应用方面, 探讨了广泛应用的手写数字识别算法, 在已有的线性判别分析算法基础上, 提出了一种改进的加权线性判别分析算法, 并对该算法进行了实验验证, 获得了较好的识别率。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Linux电脑输入poweroff退出操作系统后电源会自动切断,而嵌入式Linux如果没做特殊处理 输入poweroff关闭系统后电源依旧保持着。敲击键盘也不会有响应。原因是CPU和主板之间有着行业标准,比如ACPI(A...

关键字: Linux 电源 硬件IO

北京2022年10月19日 /美通社/ -- 随着云计算、大数据的普及发展,过去的"云"是服务于大企业的计算模型,而十多年过去了,越来越多的应用及业务走上"云端",对计算核心数需求...

关键字: ARM 大数据 云游戏 CPU

无线连接已成为许多产品的必备功能,但往往会增加系统设计的成本和复杂性,因为它通常必须作为更大应用的附加功能。Microchip Technology Inc.(美国微芯科技公司)今日推出首款基于Arm Cortex®-M...

关键字: Microchip ARM PIC

物联网正在扩大规模并加速发展,进而驱动着全新的经济。而Arm生态系统正是这一巨大机遇背后的推动力。

关键字: ARM 物联网

ARM公司是一家知识产权(IP)供应商,它与一般的半导体公司最大的不同就是不制造芯片且不向终端用户出售芯片,而是通过转让设计方案,由合作伙伴生产出各具特色的芯片。

关键字: ARM

2018年10月26日,深圳星河丽思卡尔顿酒店,ARM中国CEO吴雄昂在ARM年度技术论坛上对记者如是说,彼时的吴坚定,温雅,意气风发。时隔两年,ARM中国CEO吴雄昂再次回到媒体视线,这一次,ARM中国与来自投资方和剑...

关键字: ARM 芯片 集成电路

喜欢折腾主机的小伙伴一定都知道X86和ARM架构的区别,前者在PC领域已经统治了几十年;后者则主要应用于移动领域,尤其是近几年,ARM的产品在终端应用特别是手持终端应用飞速发展。

关键字: 国产 ARM 主机

科技公司们认为,收购将使英伟达控制一个重要的供应商,该供应商向苹果、英特尔、三星电子、亚马逊和华为等公司授权基本的芯片技术,同时也向不计其数的中小技术企业提供授权。总部位于英国的ARM公司将芯片设计和相关软件代码授权给所...

关键字: 英伟达 ARM 半导体公司

在去年九月,英伟达宣布以400亿美金收购ARM时,就注定这场收购不会太顺利。因为一旦ARM成功被英伟达收购,这将使ARM改变在全球半导体市场中的中立立场,因为ARM的很多客户,都是英伟达的直接或者间接的对手。除此之外,还...

关键字: 英伟达 ARM 半导体

以下内容中,小编将对工控主板的相关内容进行着重介绍和阐述,希望本文能帮您增进对工控主板的了解,和小编一起来看看吧。

关键字: ARM 工控主板 主板

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭