传统纸张读数和字符识别系统(如条形码识别)的数字化与图像的读取和识别是分不开的。
然而,目前广泛使用的字符识别装置独立地分离这两个部分,即通过图像读取装置(例如扫描仪)。
它由安装在计算机上的识别软件组成,但是这种设备构成安装有识别软件的计算机,导致成本增加和使用不便。
随着电子产品的普及,带有相机功能的电子产品和识别软件也可以构成字符识别系统,但这种识别系统的识别速度受到相机焦距调节的限制,难以被广泛应用。
。
本文提出的便携式字符获取和识别系统基于接触式图像传感器(C IS)和ARM9处理器S3C2410。
该软件平台基于嵌入式Linux系统,可以克服上述两种设备的缺点,满足要求。
方便快捷的要求。
另一方面,由于该设备基于Linux操作系统,因此识别软件的开发和扩展可以与硬件分离,大大提高了识别系统的通用性。
(1)ARM处理器。
ARM9系列S3C2410A作为处理器,工作频率可达203MH z,片上资源丰富,可满足实时性要求,为图像处理提供运行平台,配合CPLD完成逻辑和读取 - 写入图像采集模块的控制。
(2)图像传感器和运动平台。
接触式图像传感器(C IS)具有体积小,重量轻,功耗低,结构紧凑,连接方便,无深井等优点。
它广泛用于扫描仪和其他领域。
系统采用SV643C10 C IS,物理分辨率为600 dpi(236 do t / mm),有效扫描宽度为292 mm。
总共688个传感器像素单元具有5MHz的像素输出频率。
运动平台由步进电机和光电传感器组成,光电传感器实现送纸检测并开始扫描。
步进电机控制扫描部分包裹,并与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位AL4V8M 440。
(6)CPLD模块。
实现图像采集模块的逻辑控制。
时钟信号CP和为C IS传感器提供的线路传输信号SP。
为ADC提供采集时钟,为FIFO提供读写控制和写时钟。
本文中的CPLD器件使用Altera的EPM 7128SLC84-15。
(7)记忆。
该系统使用三星的64 MB NAND闪存K 9F1208作为程序和数据的存储单元。
它使用两个16位HY57V561620CT-H(总容量64MB)SDRAM作为系统存储器,并将缓存数据读取为DMA模式。
记忆。
存储器存储空间分配情况如图2所示。
图像采集模块程序设计的主要任务是实现模块组件的协调,实现图像数据的读取。
主要分为三个部分。
(1)CPLD的逻辑设计。
该程序以VHDL编写,将外部晶振的10 MHz输入分频,为C IS,ADC,FIFO等提供时钟和控制信号,并为步进电机提供时序。
(2)定制,配置和移植嵌入式Linux系统。
系统使用26个内核,主机环境为Ubuntu804。
(3)编写Linux驱动程序。
由于采集模块可以视为Linux系统的设备,因此程序的一部分应该作为嵌入式Linux设备驱动程序编写。
驱动器间接实现采集模块的逻辑控制和通过CPLD读取图像数据。
应用程序的开发提供了底层硬件的接口[5]。
通过DMA从FIFO缓冲区读取图像数据,DMA的目标存储器是ARM系统的SDRAM。