沈巍,楼飞
(南京师范大学中北学院,江苏 南京 210046)
双目视觉系统可以模仿人眼功能,感知三维世界信息,能够得到被测对象到CCD摄像机的深度信息,在工业控制、智能交通、公共安全等应用领域显示出非常广阔的发展前景。然而,对于机器人双目视觉伺服系统,实时性问题一直是一个难以解决的重要问题。图像处理速度是影响双目视觉伺服系统实时性的主要瓶颈之一。为满足在实时环境下双目视觉系统处理海量运算的需求,笔者详细讨论了基于4片ADSP-TS201S的双目视觉并行系统,给出了系统的设计方案。
本文选用美国AD公司ADSP TS201S处理器组成多DSP系统,降低外围设计的复杂度,增强系统的稳定性。4片DSP的工作块连接方式如图1所示。
图1 4片DSP并行总线共享图图2系统原理框图
为保障共享资源、数据速率以及处理器间灵活通信,本文采用并行处理的混合耦合系统。连接4个ADSP TS201S的总线口,并连接各处理器的高速链路口,建立点对点DSP通道与处理器间共享资源的工作块模式[1]。4片SDRAM中,每两片扩展连接成64位,挂接到64位数据总线上,2片FLASH也通过总线访问。控制总线连接到DSP-4,由DSP-4统一控制4片DSP之间以及DSP与外部存储器之间的数据传输。
其系统硬件结构如图2所示。DSP1连接片外大容量SDRAM1,其他DSP也分别与各自对应的SDRAM相连,而片外的29LV800B FLASH存储器和DSP通过正常的地址总线和数据总线相连,这样能充分利用DSP的外扩功能,外部FLASH用于加载DSP的启动信息。DSP4控制其余DSP,通过双CCD摄像头采集图像信息和实现DSP地址空间的译码。系统采用基于高速外部总线与高速链路口混合的多DSP并行处理系统。双通道视频编码、解码芯片采用Philips公司的SAA7115H。FLASH选用AMD公司与富士通公司共同开发的29LV800B型FLASH(以下简称29LV800B)。它相对于其他FLASH芯片来说具有容量大、支持读写电压2.7~3.6 V、支持整片芯片擦写、存取时间短、低功耗等特点。双目摄像机用的是索尼电荷耦合器件图像传感器CCD(ChargeCoupled Device)摄相机DXC-390P。
DSP之间的相互数据交换是影响系统实时性的瓶颈,采用高效的数据交换方式是保证系统高速高效运行的关键。4块DSP的主要功能分配如下:DSP1、DSP2用来读取视频缓存FIFO过来的数字视频数据[2],并将其做初步的图像剪裁、中值滤波等算法.DSP3将DSP1、DSP2滤波处理后的图像进行整合,再进行图像灰度直方图转换、图像二值化、小波边缘检测、图像分割等后续处理。DSP4作为主DSP控制DSP1、DSP2、DSP3,并完成目标的检测、跟踪、目避碰、路线规划等算法,传输信号给PLC,让PLC控制机器人的动作。
本文提出了一种基于4片ADSP-TS201S数据处理器的双目视觉并行处理系统,重点对DSP并行结构设计进行了分析,并对各DSP间的数据交换进行了详细描述。采用ADSP 芯片并行工作的模式,将数据共享,且具备大量内部存储器的ADSP 处理器可存放独立的局部数据和指令,大大降低了外部总线的访问率,保证了系统的实时性和实用性。