基于DSP和FPGA的机器视觉系统设计与实现
设计利用视频口进行图像采集,用以太网接口实现图像传输。
视频口能够支持BT.656、HDTV Y/C、MPEG-2 Transport stream input等多种格式的视频数据的输入输出。本次设计采用逐行扫描且只采集亮度数据,视频口工作在YcbCr 4:2:2方式下。视频口与DM642的EDMA结合,每采集一行图像数据便启动一次EDMA同步事件,将数据从接收FIFO中倒到SDRAM中暂存下来。一场图像数据采集之后,采用EDMA链接自动重新配置EDMA参数。整个图像采集只消耗极少的CPU时间,使CPU能够把精力集中到后面的图像处理工作中。
2.3.2 存储器模块
外扩了SDRAM及FLASH两种存储器。
1 )SDRAM存储器
在CE0空间连接了64bit的SDRAM总线。选取2片48LCHM3282来构成SDRAM。这32M的SDRAM空间用来存储程图像数据和图像处理中间结果等信息。总线由外部PLL驱动设备控制,在133MHz的最佳运行状态下运行。SDRAM的刷新由TMS320DM642自动控制。
2 )FLASH存储器
本系统扩展了1M的FLASH,映射在CE1空间的低位。FLASH存储器选用1M*8的MBM29DL800。FLASH存储器主要用于DSPs程序的存储。CE1空间被配置成8bit,异步接口,FLASH存储器也是8bit。复位后的默认地址是000,并进行1K数据的上电自动引导。
2. 4 以太网模块
DM642上的EMAC接口为DSP处理内核与网络提供了一个有效的接口。他支持10Base-T、100 Base-TX,可工作在10Mbits/second 和 100Mbits/second的速度下进行全双工或半双工传输。并提供硬件流量控制和QOS支持。
DM642的EMAC接口支持到计算机网络协议的数据链路层,支持标准的MII接口(媒体无关接口)与物理层设备相连。物理层设备使用BROADCOM公司的BCM5221,加Pulse公司的1:1型隔离变压器H1102。
网络图像及控制信息的传输采用非面向连接的UDP协议,对于480*480大小的8位灰度的图像,每秒可传送20幅。
2.5 IO模块与串行接口模块
IO接口由FPGA控制,用于向机械部分、自动控制部分发送控制信号,并行IO接口有两路,一路经LV162245驱动输出,一路经光耦进行隔离输出。
串行接口使用TI公司的TL16C752B UART,他与ST16C550 UART引脚兼容,并具有更大的发送、接收FIFO缓存(发送、接收各64Byte ),支持硬件、软件流量控制。电平转换采用MAXIM公司的MAX3160,RS-232、RS-485、RS-422等多种传输协议。
3、FPGA实现图像预处理算法
以FPGA实现3*3 Sobel边缘检测为例,介绍FPGA实现图像预处理的方法。
首先,应从视频信号中提取出3*3 大小的图像框。须使用三个FIFO,其大小与一行像素大小相同,将三个FIFO串行连接在一起。用视频信号的前三行充满三个FIFO,之后每来一个像素在写入FIFO的同时,从每个FIFO中读出一个像素的亮度值,分别放入三个移位寄存器。如此,在三个像素点之后就得到一个3*3的矩形框。随着视频信号的不断流入,矩形框将遍历整个图像区域。
之后,就可以对提取出来的像素点,进行各种算法的处理。
以下是用Verilog语言描述的3*3 Sobel算子:
wire[10:0] temp1,temp2,temp3,temp4;
wire[7:0] sobel1,sobel2,sobel3,sobel4;
wire[7:0] dataout;
assign temp1 = temp[1] + temp[2] + temp[3];
assign temp2 = temp[7] + temp[8] + temp[9];
assign temp3 = temp[1] + temp[4] + temp[7];
assign temp4 = temp[3] + temp[6] + temp[9];
assign sobel1 = (temp1>temp2)?(temp1-temp2):0 ;
assign sobel2 = (temp3>temp4)?(temp3-temp4):0 ;
assign sobel3 = (sobel1>8’d 255) ? 8’d255 : sobel1;
assign sobel4 = (sobel2>8’d 255) ? 8’d255 : sobel2;
assign dataout[7:0] = ((sobel3 > sobel4)?sobel3[7:0]:sobel4[7:0]);
其中,考虑到了数据计算的溢出或结果为负值的情况,边缘检测效果良好。
4、结束语
本次设计为机器视觉系统搭建图像处理部分的硬件平台,结合机器视觉系统发展的两大趋势:嵌入式系统与网络技术。基于美国德州仪器公司新近推出的6000系列DSPs芯片TMS320CDM642,利用TMS320DM642芯片上提供的Video Port和Ethernet Media Access Controller实现视频采集与网络技术的结合。利用在线可编程技术,在FPGA中实现必要的图像预处理算法,减轻TMS320DM642的负担,为后续的图像实时检测打下了良好的基础。
本次设计实现了对于480*480的灰度图像,通过以太网进行25 Frames/s的流畅的传输。
以下为FPGA实现
机器视觉 Altera 德州仪器 FPGA DSP 相关文章:
- Atmel针对工业机器视觉应用推出快速CMOS相机(10-22)
- 工业机器视觉系统市场迅猛发展,行业应用新视点逐步扩大(11-06)
- Xilinx用于工业自动化的机器视觉解决方案(11-30)
- Xilinx多协议机器视觉摄像机参考设计(12-01)
- 德州仪器(TI)3D机器视觉参考设计(11-30)
- Lattice USB 3.0 视频桥接解决方案(11-30)
- 妤傛ḿ楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閸忋劍鏌熸担宥咁劅娑旂姴鐨犳0鎴滅瑩娑撴氨鐓$拠鍡礉閹绘劕宕岄惍鏂垮絺瀹搞儰缍旈懗钘夊閿涘苯濮幃銊ユ彥闁喐鍨氶梹澶歌礋娴兼ḿ顫呴惃鍕殸妫版垵浼愮粙瀣瑎...
- 娑擃厾楠囩亸鍕暥瀹搞儳鈻肩敮鍫濆悋閹存劕鐓跨拋顓熸殌缁嬪顨滅憗锟�
缁箖鈧拷30婢舵岸妫亸鍕暥閸╃顔勭拠鍓р柤閿涘奔绗撶€硅埖宸跨拠鎾呯礉閸斺晛顒熼崨妯烘彥闁喕鎻崚棰佺娑擃亜鎮庨弽鐓庣殸妫版垵浼愮粙瀣瑎閻ㄥ嫯顩﹀Ч锟�...
- Agilent ADS 閺佹瑥顒熼崺纭咁唲鐠囧墽鈻兼總妤勵棅
娑撴挸顔嶉幒鍫n嚦閿涘苯鍙忛棃銏n唹鐟欘枃DS閸氬嫮顫掗崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱遍崝鈺傚亶閻€劍娓堕惌顓犳畱閺冨爼妫跨€涳缚绱癆DS...
- HFSS鐎涳缚绡勯崺纭咁唲鐠囧墽鈻兼總妤勵棅
鐠у嫭绻佹稉鎾愁啀閹哄牐顕抽敍灞藉弿闂堛垼顔夐幒鍦欶SS閻ㄥ嫬濮涢懗钘夋嫲鎼存梻鏁ら敍灞藉簻閸斺晜鍋嶉崗銊╂桨缁崵绮洪崷鏉款劅娑旂姵甯夐幓顡嶧SS...
- CST瀵邦喗灏濆銉ょ稊鐎广倕鐓跨拋顓熸殌缁嬪顨滅憗锟�
閺夊孩妲戝ú瀣╁瘜鐠佽绱濋崗銊╂桨鐠佸弶宸緾ST閸氬嫰銆嶉崝鐔诲厴閸滃苯浼愮粙瀣安閻㈩煉绱濋崝鈺傚亶韫囶偊鈧喕鍤滅€涳附甯夐幓顡塖T鐠佹崘顓告惔鏃傛暏...
- 鐏忓嫰顣堕崺铏诡攨閸╃顔勭拠鍓р柤
娑撳洣绗€妤傛ɑ銈奸獮鍐叉勾鐠у嚖绱濇潻娆庣昂鐠囧墽鈻兼稉杞扮稑閸︺劌鐨犳0鎴炲Η閺堫垶顣崺鐔枫亣鐏炴洘瀚甸懘姘剧礉閹垫挷绗呴崸姘杽閻ㄥ嫪绗撴稉姘唨绾偓...
- 瀵邦喗灏濈亸鍕暥濞村鍣洪幙宥勭稊閸╃顔勭拠鍓р柤閸氬牓娉�
鐠愵厺鎷遍崥鍫ユ肠閺囨潙鐤勯幆鐙呯礉缂冩垵鍨庨妴渚€顣剁拫鍙樺崕閵嗕胶銇氬▔銏犳珤閵嗕椒淇婇崣閿嬬爱閿涘本鍨滅憰浣圭壉閺嶉绨块柅锟�...