APP下载

基于DM6467的高速图像预处理技术研究

2011-03-26陈益新吴开华

关键词:PC机存储器图像处理

陈益新,吴开华

(杭州电子科技大学生命信息与仪器工程学院,浙江杭州310018)

0 引言

传统的数字图像处理通常以PC机为平台,但这种方法处理速度较慢,不够灵活。随着固体图像传感器CCD和CMOS技术工艺的不断改进以及数字信号处理器的功能提升,使得DSP等高速处理器件在图像处理领域有了广泛的发展空间[1]。图像处理应用于检测系统中具有其独特的优点,它不干扰被测对象,尤其适用在一些不能采用接触测量的场合。本文研究了一种基于DM6467的高速图像处理方案。该方案能够有效的完成对轮对轮廓的图像采集和处理,同时利用基于EDMA的Ping-pong缓存技术动态分配内存,极大的提高了系统的处理速度,可以应用于测量、检测和安防监控等诸多领域。

1 系统总体设计

系统构成如图1所示,包括图像传感器、PC机、数字信号处理器、外部存储单元和以太网通信等部分组成。本方案采用高速面阵CCD完成图像的高速采集,图像分辨率为1 280象素×1 024象素,数字信号处理器DSP用于图像数据处理,DDR2作为DM6467的外部存储器,存储图像数据,FLASH存储源程序,在上电后程序分别下载到ARM和DSP中,以太网实现PC机与DM6467之间的数据交互。当轮对以一定速度运行到指定位置时,利用外部触发信号触发CCD进行图像采集,CCD的传输接口是两路Camera Link接口,采用LVDS方式传输。图像采集卡将采集到的图像数据传入PC机内存中,同时通过千兆以太网将图像数据传入DM6467中处理,处理结果通过以太网返回主机。

系统的核心处理器选择TI公司的TMS320DM6467。TMS320DM6467处理器芯片是TI公司推出的高性能数字媒体集成芯片,具有极强的处理能力和高度的灵活性及可编程性。

图1 系统设计框图

2 系统软件设计

2.1 DSP软件整体设计

TMS320DM6467在一个芯片上集成了ARM核和DSP核,利用Codec Engine软件框架进行两者之间的交互。ARM运行在MontaVistaLinux操作系统上,负责常用的控制任务及与外设之间的交互。DSP运行在Bios操作系统上,相当于一个“黑匣子”,只进行图像数据处理算法,这种双核并行处理模式大大提高了系统处理速度。

本方案利用DM6467的强大运算能力,在DSP内运行轮对轮廓提取算法。ARM核负责系统初始化和DM6467与PC机之间的网络通信。通过DDR2共享存储器实现ARM和DSP之间的数据通信。在达芬奇架构中,ARM通过CodecEngine调用DSP侧的算法,该算法必须符合xDM标准。本系统中软件整体流程图如图2所示:

图2 软件整体流程图

2.2 以太网传输设计

PC机和DSP处理单元需要双向数据交互,为提高系统数据交互的速度,本文采用千兆以太网进行双向的数据传输。以太网数据传输采用基于TCP套接字编程的方法实现,TMS320DM6467的ARM端作为服务器端监听客户端(PC端)的连接请求,连接建立后,双方进行数据的发送与接收。

2.3 基于Cache和乒乓缓存的图像处理

轮对轮廓在线检测系统中的巨量数据处理需要提高DSP的利用率,以提高数据处理的实时性,TMS320DM6467提供了(L1和L2)两级高速缓存,可配置成Cache或内部存储器。程序运行时可以把需要进行尺寸算法处理的图像数据放入Cache中使得运行速度提高。然而,Cache资源十分有限。为了进一步利用Cache资源,引入Ping-pong缓存技术,即在CPU处理数据的同时启动EDMA传输数据,提高CPU处理效率。合理的配置和使用L1和L2是能否提高系统速度的关键。DM6467提供了128K的L2空间和32K的L1空间,一方面要使Cache高速缓存尽量的大,以提高数据在Cache中的命中率,减少因数据置换而造成的时间浪费。另一方面要确保内部存储器的大小,保证有足够的存储器空间进行乒乓缓存。

2.3.1 乒乓缓存技术

乒乓缓冲技术在数据接收端建立了两个数据缓冲区,当第一组数据进来时,EDMA在数据放入ping缓存区的同时,CPU从Pong缓存区取数据进行处理;当ping缓存区放满时发出中断,Ping-pong缓存区进行切换:EDMA将下一组数据重定向到pong缓存区,而CPU从ping缓存区取数据处理。Ping-pong缓存技术提供了EDMA数据传输和CPU数据处理的并行机制,大大提高了CPU的利用率,其原理如图3所示。

图3 Ping-pong缓存原理图

2.3.2 EDMA3技术在乒乓缓存中的应用

EDMA传输是指在没有CPU参与下自动完成不同存储器空间之间的数据搬移,主要应用在需要大批量数据搬移的场合。DM6467提供了增强型EDMA控制器EDMA3,它基于RAM结构。EDMA3具有128个相互独立的传输通道,每个通道均对应一个可触发传输的同步事件,通道的传输行为由对应的片上参数存储器编程指定,如图4所示。Ping-pong缓存方式下EDMA通道有两个参数集,一个用于ping传入/出,另一个用于pong传入/出,当一个通道传输完毕,PaRAM中的新参数集重新加载它们以启动下一次传输。

图4 参数存储器

在本方案中由于图像分辨率为1 280象素×1 024象素,再结合L2内部存储器的容量将Ping-pong缓冲区的大小设置成2 560B,为2行图像数据的大小。信道传输源地址为DDR2中图像数据的地址,信道传输目的地址为申请的内部存储器地址。设置好EDMA3的参数存储器后,图像数据之间的传递即可在脱离CPU的情况下自动运行,实现与CPU的并行处理。

2.4 图像处理算法设计

图像处理是机器视觉系统的核心部分。它面对的是大量的原始图像数据,因此在基于面阵CCD的轮对轮廓检测系统中,图像处理算法的快速性和有效性是实现轮对轮廓提取的基础。轮对轮廓提取流程如图5所示。

图5 轮对轮廓提取流程图

3 实验验证

本设计在TI最新推出的SEED-VPM6467开发板和PC机上进行软、硬件的调试,CCD的分辨率为1 280象素×1 024象素。结合理论和实验的结果,本方案中将L2存储空间配置成96K的Cache和32K的内部存储器,将L1存储空间配置成24K的Cache和8K的内部存储器,Ping-pong缓冲区的大小设置成2 560B。

调试结果如图6所示。图6(a)为CCD采集到的原始图像,图6(b)为经过阈值分割后的图像,图6(c)为经过DSP处理后最终得到的图像。

图6 轮对轮廓提取

4 结束语

本文提出了一种基于TMS320DM6467的图像采集与预处理方案。在PC机的控制下,以面阵CCD采集图像数据,再通过以太网传输至DM6467中供DSP处理。同时该方案引入了基于Cache和Pingpong机制的缓存技术,极大的提高了CPU的处理效率。本文所给出的实验效果说明了本方案的技术可行性及其良好的检测性能。

[1]米本和也.CCD/CMOS图像传感器基础与应用[M].北京:科学出版社,2006:53.

[2]褚玉山.嵌入式高速图像采集系统设计[J].甘肃科技,2010,16(3):29-31.

[3]李武森,迟泽英,陈文建.高速DSP图像处理系统中的乒乓缓存结构研究[J].光电子技术与信息,2005,18(3):76-79.

[4]丁锐,袁誉乐,赵勇.基于达芬奇平台的视频监控系统的设计[J].微计算机信息,2007,23(11):44-58.

[5]TI.达芬奇技术概述手册[EB/OL].www.ti.com,2008-08-12.

猜你喜欢

PC机存储器图像处理
静态随机存储器在轨自检算法
基于图像处理的机器人精确抓取的设计与实现
机器学习在图像处理中的应用
基于三菱FXPLC的感应淬火机床与PC机的串行通信实现
VC.NET下实现dsPIC单片机与PC机的通信
排除OLT设备登录故障
基于图像处理的定位器坡度计算
VIVID3彩色超声仪结构原理及维修
存储器——安格尔(墨西哥)▲
Photo Shop通道在图像处理中的应用