ARM(Advanced RISC Machines)是主控制CPU,可以提供丰富的接口与外界进行通信,其应用领域已遍及工业控制、消费类电子、通信系统、网络系统、无线系统等各类产品[1-2]。基于DSP(Digital Signal Processor)的图像处理硬件平台在图像数据压缩、运算处理、运动模糊图像的恢复、图像特征提取等方面的应用具有不可替代的优势,普遍用作数字图像处理系统的核心硬件[3]。ARM+DSP构成了实时机器视觉技术的核心部件。随着机器视觉技术在农业领域应用中的广泛开展,实时地进行农作物害虫识别成为研究热点。
农田害虫识别系统以农作物害虫为研究对象,系统的核心是在ARM+DSP技术框架支撑下设计一个农田害虫识别硬件系统。本系统的开发是将原来的PC处理移植至ARM+DSP的嵌入式系统处理,设计目的是实现农作物害虫的实时识别。
1 系统设计方案
系统分为ARM控制系统、DSP识别系统和后台处理子系统。ARM控制系统选用ARM9为主处理器,负责控制DSP的算法处理,并可将采集到的视频和图像用H.264算法压缩传输到后台服务器;DSP识别系统外接摄像机得到处理对象,内部由DSP最小系统构成,内嵌害虫处理算法实时处理采集到的图像;后台处理子系统是在服务器上安装对应软件,接收ARM+DSP处理系统传来的结果,并加以存储和显示, 进一步传递给用户。图1为系统设计框架图。
2 硬件系统设计
系统硬件设计采用ARM+DSP的双核架构,ARM选用TI公司的DM365处理器,DSP选用TI公司的DM6437处理器,DM365和DM6437之间采用SPI串口进行通信。DM365和DM6437同时收到视频图像信号,DM365采用H.264算法进行压缩后传输到后台服务器,DM6437对视频帧图像处理,从而识别害虫。
2.1 ARM控制系统
系统采用的核心控制芯片是基于ARM9处理器的TMS320DM365芯片。DM365作为一款多媒体处理器,具有极其强大的视频输入输出端口,尤其在控制方面提高了其配置和使用的简易性[2]。
由于DM365的视频前端需要接入数字视频信号,所以系统采用了TVP5146视频A/D转换芯片。摄像机实时采集视频图像并将之转换成模拟视频信号,视频电缆将模拟视频信号送入TVP5146芯片,转换成的数字视频信号通过DM365硬件连线将一幅完整的视频帧传送输入DM365[2]。
DM365库里自带H.264压缩算法,H.264是一个新的数字视频编码标准,它采用回归基本的简捷设计,具有很高的编码效率,码流结构网络适应性强,增加了差错恢复能力,能够很好地适应IP和无线网络的应用。其基本系统是开放的,使用无需版权。
2.2 DSP识别系统
2.2.1 TMS320DM6437B
系统算法核心处理器采用TI公司的TMS320DM6437B。DM6437达芬奇处理器是TI公司新一代高性能数字媒体处理器,工作频率达 600 MHz,拥有以下出色性能:短1.67 ns的指令周期、每个时钟周期可并行执行8个32 bit的C64x+指令、 处理性能高达4 800 MIPS、功能丰富的视频处理系统。系统支持CCD和CMOS图像传感器接口,实时图像处理预览引擎,对通用视频解码器的无缝接口等[3]。
2.2.2 视频接口
系统采用2路标准模拟视频输入和1路模拟视频输出。2路标准模拟视频输入。通过相应的控制位进行选择,每次只能选择其中1路。视频解码器选用TVP5150APBS,视频编码器选用SAA7105H。视频解码器和编码器均支持标准的NTSC和PAL格式模拟视频。DM6437处理的对象就是TVP5150APBS解码器输入的一帧一帧的图像,然后再将处理结果通过SAA7105H编码器一帧一帧地送到液晶TV[4]。
2.3 ARM与DSP的通信设计
ARM与DSP双核工作机制中,ARM设置为主处理器,DSP设置为协处理器,之间采用SPI串口通信。SPI是一个同步协议接口,所有的传输都参照一个共同的时钟CLOCK,这个同步时钟信号由主机产生,从机使用时钟对串行比特流的接收进行同步化。主机和从机都包含一个串行移位寄存器,主机通过向SPI串行寄存器写入一个字节来发起一次传输。寄存器通过主输出从输入数据线MOSI(Master Output Slave Input)信号线将字节传送给从机,从机也将自己移位寄存器中的内容通过主输入从输出数据线MISO(Master Input Slave Output)信号线返回给主机,这样,两个移位寄存器中的内容就被交换了。还有一根可选的从选信号线SPI_EN,可以用于使能从机输出。由于本系统使用SPI_EN,所以必须保证SPI_EN在上电时为高电平,否则在上电后,从机将首先收到一个伪数据。因此实现 SPI接口需要4根线,其通信接口框架如图2所示[5]。
3 算法设计及实验
DM6437中的算法设计主要包括图像采集、图像的二值化、基于数学形态学的噪声去除及基于小虫跟踪法的害虫轮廓提取等,可通过H.264压缩算法由DM365经网络传送到后台服务器。本系统选取稻飞虱作为识别对象,采用仿真方式验证算法,仿真器选用北京瑞泰公司的ICETEK-XDS560,实验时在CCS3.3中VIEW菜单或通过SAA7105H编码器送到液晶TV观察具体结果。图3所示为通过Graph菜单选项显示采集到的2张稻飞虱图像。
3.1 图像二值化及形态学去噪
当采集到稻飞虱的图像后,首先进行二值化处理。具体算法是设定一个灰度阈值T,将一幅灰度图像f(x,y)中的像素分成两类:满足f(x,y)>T的像素和f(x,y)≤T的像素,其中前一类称为识别目标,后一类称为背景[6]。对于目标可以用1取代所有像素值,背景则用0取代,这样就实现了分割后图像二值化。
二值化后的图像经过数学形态学运算去噪,主要形态学运算如下:
3.2 基于小虫跟踪法的轮廓提取
小虫跟踪法(简称虫跟法),其定义如下[8]:
(1) 定义虫, 通常是一个矩形的具有相同权值的窗口;
(2) 以当前边界点为窗口轴心;
(3) 以上一边界点和当前边界点确定当前边界方向;
(4) 窗口在当前边界方向左右直角内旋转,在每一个窗口内确定平均梯度值对应梯度点;
(5) 确定具有最高平均梯度的窗口,对应的梯度点作为下一边界;
(6) 重复步骤(5),直到满足终止条件。
根据以上算法对稻飞虱去噪后的图像进行边界的提取,结果如图5所示。
本系统完成了ARM+DSP的害虫识别系统,DM365是一个ARM9处理器芯片,库里自带H.264压缩算法,使用H.264压缩后能够方便地传递到后台服务器。ARM控制系统使用H.264压缩算法将识别后的图像以视频形式一帧一帧压缩后传递给服务器,DM6437负责处理视频图像,尽管是通过仿真器仿真的方式,但是DSP速度很快,实验证明能够快速实时地识别稻飞虱。系统还需进一步改进和完善硬件以及算法,使之成为实际可用的害虫识别系统。
参考文献
[1] 余水,邓振,蔡洪斌.基于ARM+DSP的汽车视频黑匣子系统的总体设计[J].计算机应用研究,2008,25(2): 628-630.
[2] 王雄勇.基于DM365的视频编码器的硬件设计[J].电子设计工程,2011,19(8):128-129,136.
[3] 胡新华,邓元勇,王先平.基于达芬奇技术的日面活动图像处理与识别系统[J].计算机应用研究,2008,25(10):3165-3168.
[4] 冯桂兰,田维坚,屈有山,等.实时视场拼接系统的设计与实现[J].光电工程,2007,34(4):124-127.
[5] 张岩, 马旭东,张云帆. ARM与DSP的SPI通信设计实现[J].工业控制计算机,2008(9):56-57,66.
[6] 刘俊,吴谨.一种基于梯度的直方图阈值图像分割改进方法[J].计算机与数字工程,2010,38(4):131-133.
[7] 任获荣.数学形态学及其应用[D].西安:西安电子科技大学,2004.
[8] 马俊福,周晓军,徐志农,等.基于计算机视觉的锻件尺寸检测[J].组合机床与自动化加工技术检测,2007(11):48-50.