研究TMS320DM642在机器视觉中的应用

出处:微计算机信息 发布于:2011-06-08 14:36:45

  引言

    通过视觉,人和动物感知外界物体的大小、明暗、颜色、动静,获得对机体生存具有重要意义的各种信息,至少有80%以上的外界信息经视觉获得,视觉是人和动物重要的感觉。就目前而言,一般机器视觉信息处理平台主要有(1)基于通用PC :主要是用软件实现图像处理和识别,能够提供中等的图像处理和识别能力,但是要占用CPU过多的处理能力;(2)基于通用DSP芯片:优点是设计简便、灵活,特别适合于新型产品的研究开发;(3)基于可编程FPGA:采用的是硬件描述语言(VHDL),用其开发图像处理算法难度较大。所以业界很需要一种专门处理视频图像和语言的微处理器。毕竟一个视野模糊的机器人不说带来好处,说不定会适得其反。

  机器的视觉有着图像处理与识别技术的特点是处理的数据量大,计算复杂,计算中间结果要求高,具有大量的乘法运算,并且在实现机器人视觉方面实时性要求较高的特点。而DSP具有运算速度快,高,有专门的硬件乘法器,可实现单周期乘法与累加的运算等特点,所以特别适合运用在对实时性要求较高的场合。DM642是TI公司推出的专门用于处理视频图像和语音的微处理器,具有速度快,并行处理能力强等特点,非常适合于图像实时地处理与识别。可以说DM642是专门为机器视觉而开发的。

  1 TI tms320dm642简介

  tms320dm642是TI公司C6000系列DSP总的定点DSP,其是C6416型高性能数字信号处理器,具有极强的处理性能,高度的灵活性和可编程性,同时外围集成了非常完整的音频、视频和网络通信等设备及接口,特别适用于机器视觉、医学成像、网络视频监控、数字广播以及基于数字视频/图像处理的消费类电子产品等高速DSP应用领域。

    DM642建立在C64x DSP架构基础上,采用德州仪器公司开发的第二代高性能长指令架构VelociTI.2TM,其每个乘法器对于每个时间周期内可执行两个16位乘以16位的乘法或者四个8位乘以8位的乘法。具有超强的运算能力。在这种强大运算能力下,对于复杂度较高与数据量较大的视频编码以及图像处理可进行实时的数据运算,并提供相关的指令集,例如图像与视频处理库(Image and Video Processing Library),让开发者能够更加容易的开发图像或视频的相关产品。

  2 系统的总体设计思路

  由于图像识别算法的设计需要大量的测试和分析,而直接在嵌入式环境下对其进行开发以及调试都相对比较困难,因此,本文针对DSP开发图像识别算法,总体设计思路和开发步骤为视觉处理的相关算法首先在PC平台上进行验证和实现,进而移植到DSP平台上,并加以优化。

  2.1 系统的硬件结构设计

  本文硬件平台系统原理框图如图1所示:摄像机选用普通的PAL制式彩色摄像机,解码芯片采用TVP5150;外扩2个大小为4MX32位的SDRAM。外扩的FLASH大小为4MX8位;RS-232电平转换芯片选用TL16C752BPT;TVP5150A是一种超低功耗的NTSC/PAL/SECAM的视频解码芯片,可以把NTSC/PAL/SECAM转换成8-bit ITU-R BT.656格式[3,4]。

  图1 系统硬件原理图

  2.2 系统的软件流程设计

  下面以机器视觉中比较典型的问题――门牌号识别为例,介绍DM642在机器视觉中的应用。门牌号识别算法主要功能模块如图2所示。

  图2软件功能模块流程图

  3 视觉相关算法在PC平台上的验证与实现

  门牌号识别算法方案确定后,需要在PC平台上进行验证,测试其实际效果,调整相关参数,为算法移植到DSP平台上实现做好准备。本文使用集成开发环境Visual C++,充分利用微软基本类库(MFC),从而加快开发速度、提高开发效率。本文为了测试识别算法,开发了基于MFC的测试平台,前端的图像采集部分主要利用VFW。小波神经网络的数字样本通过文件菜单加载进去,训练后的输入层到隐含层的权值保存在wih.txt中,隐含层到输出层的权值保存在who.txt中。

  4 视觉识别算法在DSP平台上的实现

  在上文算法验证基础上,可进一步实现基于DM642的门牌识别系统。根据PC平台与DM642平台的不同,程序移植主要注意以下几个问题:

  (1)删除或替换DSP不支持的C函数

  PC平台上所有使用MFC的代码一律删除,因为DSP不支持任何MFC的类和对象。

  (2)变量的存取方式调整

  在DM642中程序按段存储,主要包括.text、.cinit、.switch、.bss、.far、.stack、.system等。CCS的C编译器支持两种内存模式:大内存模式和小内存模式。不同的内存模式影响对。bss段变量的访问。程序中的全局和静态变量都分布在。bss段内,小内存模式下其总和不超过32KB。由于程序的全局变量和静态变量已经超过32KB,所以应采用大内存模式,即在编译选项中设置为-ml3。

  (3)更改数据类型

  PC机平台上long型是32位的,而DSP的long型是40位的。因为DM642通用寄存器为32位,访问40位数据时需要对两个寄存器进行读写操作,从节省程序运行时间的角度考虑,应把程序中所有的long型改成INT32或UINT32。

  (4)存储空间的分配

  在进行存储空间分配前必须了解芯片内外的存储空间的大小,编译后的C程序“跑飞”往往是超出存储区访问允许范围造成的;另外,还需注意堆栈的分配,在程序“跑飞”时注意检查是否发生堆栈溢出。

  4.1 存储空间的分配

  在本系统中,内存空间包括:DM642的256KB字节的二级缓存L2,可部分或全部作为SRAM存储空间,存取速度快;32MB字节的SDSRAM片外内存,存取速度慢。内存使用的一个原则是应尽量把数据和代码放入片内内存。但由于片内内存容量的限制,往往不可能将所有数据和代码都放入片内存,而将编程过程中频繁使用的一些关键数据(如滤波的模板、图像二值化的阈值、图像提取的阈值、门牌倾斜的角度等)放入片内保存。片外SDRAM中主要放置图像数据(如图像采集的数据等)。

  在本系统程序存储器的分配中,capChaAYSpace存放采集的图像的亮度信号Y;capChaACbSpace存放采集的图像的色度信号Cb;capChaACrSpace存放采集的图像的色度信号Cr;WEIGHT存放小波神经网络训练好的权值;INPUT 存放小波神经网络输入值,即特征化后的图像数据;tempYbuffer、tempY1buffer和tempY2buffer主要存储各个算法模块处理前和处理后的数据。

  4.2 系统程序的实现

  程序的实现部分主要包括图像采集部分的实现和图像处理与识别算法的实现。

  图像采集部分的程序是通过设置在视频端口控制寄存器(VPCTL)中的TSI(transport stream interface)位和在视频捕获通道控制寄存器(VCxCTL)中的CMODE位以选择视频捕获的模式。本文选择的是8-Bit ITU-R BT.656捕获模式,主要是因为选用的解码芯片TVP5150支持BT.656格式。本文只需要处理YCbCr中的亮度信号Y。图像采集部分主要过程是:PAL摄像头通过TVP5105解码器产生BT656格式的数据流,然后通过EDMA传送给SDRAM。BT656格式为隔行扫描,每帧实际图像大小为720×576,每帧分为奇偶两场,奇场的行数范围为0-288,偶场为289-576。为了提高实时性;在本文中只取奇场的数据,即程序只处理0-288行。在识别算法实现部分中,本文列出了图像经过各个算法功能模块的结果。图像显示的设置在CCS中路径为view->graph->image。

  下面我们以门牌号523为例说明基于DSP的图像处理的各个过程:通过摄像头采集原始门牌图像,其中视频流采用BT.656标准,隔行扫描。每一帧的大小为720×576。在这里只取奇场的数据,即图3(a)的大小为720×288,可以看出图像质量并没有明显的下降;图3(b)为二值化后的图像,主要是根据直方图信息选取阈值,具有较好的效果;图3(c)为倾斜度校正后的图像;图3(d)为归一化后的图像,此图像是被放大后的图像,原图像的大小为8X16;图3(e)为特征提取后的结果,本文主要是把数组中的数据提取出来,然后进行编排,从而便于理解。

  实验结果表明本文设计的系统识别单个门牌数字准确率达到100%,识别3个数字门牌识别率为90%以上。所以说机器人的视觉已经达到了很高的水品,可以说这个是机器人目前的“眼睛”了。

  4.3 代码的优化

  本文系统中涉及的识别算法具有数据量大,计算复杂,二重循环多等特点。在没有优化前,系统资源利用率低、运行速度慢、远远没有达到系统实时性的要求。本文通过代码优化技术使系统具有较好的实时性,具体包括开发C/C++代码、优化C/C++代码和编写线性汇编代码等几个阶段。相信会给编程人员带来很大的便利,有效的节省了开发过程中代码的编写时间。从而使开发时间大大的减少,在市场上的效益得到有效提高。

  5 结束语

  本文提出的基于DM642的机器人视觉系统实现了在走廊中机器人的自定位和目标定位与对操作者和典型障碍物的识别功能。本文在系统上的创新主要在两个方面:一方面是实现了基于DSP平台的门牌识别和优化,有效地提高了系统的目标的识别速度;另一方面是探索了基于图像识别技术、RFID技术、传感器技术相融合的自主移动机器人的机器视觉系统,这种方法有效地提高了系统的可靠性和鲁棒性。实际应用表明,本文设计的机器视觉系统具有较好的合理性和实用性。在机器人逐渐走上普遍的当今,相信这个视觉系统会给机器人的发展带来新的发展。也许这个视觉系统不是的,但是至少机器人视觉系统又有了新的选择。毕竟机器人的因为功用不同有着很多样式,多一种选择相信很多机器人就会有了合适自己的“眼睛”。

  关于德州仪器(TI)

  德州仪器 (TI) 是的数字信号处理与模拟技术半导体供应商,亦是推动因特网时代不断发展的半导体引擎。成立于1930年,成立之初是一家使用地震信号处理技术勘探原油的地质勘探公司,1951 年更名为现用名的德州仪器公司,1954 年进入半导体市场,推出首款商用硅晶体管。作为实时技术的,TI正在快速发展,在无线与宽带接入等大型市场及数码相机和数字音频等新兴市场方面,TI凭借性能卓越的半导体解决方案不断推动着因特网时代前进的步伐!

  德州仪器(TI)是世界上的半导体公司之一。始终致力于提供创新半导体技术,帮助我们的客户开发世界的电子产品。在模拟、嵌入式处理以及无线技术不断深入至生活的方方面面,从数字通信娱乐到医疗服务、汽车系统以及各种广泛的应用,无所不在。除半导体业务外,还提供包括传感与控制、教育产品和数字光源处理解决方案。TI总部位于美国得克萨斯州的达拉斯,并在25多个国家设有制造、设计或销售机构。


  
关键词:研究TMS320DM642在机器视觉中的应用

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!