1.引言
随着全球经济的飞速发展,城市车流量的高速递增,交通变得越来越拥挤,实现实时的城市交通智能监控对于交通信息收集、规范化交通管理、以及减少交通事故等方面具有着重要的现实意义。
传统的交通参数检测是通过埋在地下的感应器或车轴传感器实现的。这种方法对路面有损坏,不方便施工和安装,且要经常进行检修和维护,对道路和交通影响甚大。基于计算机视频检测技术的交通监控系统,根据所拍摄的图片信息,设定虚拟线圈,判断线圈内有无车辆通过。这避免了传统交通监控系统中使用物理感应线圈对交通和道路带来的影响。同时线圈数量和位置的设定可根据用户需求随时更改,进一步提高了系统的灵活性。通过高速的远程数据传输,交管中心不仅可以获得现场的各种交通参数,还可获取现场的实时照片或视频图像。
目前,视频处理的设计方案大都采用工业控制计算机加图像采集卡实现。该方案主要在计算机上编程实现,编程方便,开发周期短,但该方案成本较高。由于操作系统本身的原因,该方案的稳定性较差,不适于全天候长年累月运行。而采用媒体处理器(media processor)DSP实现视频处理可满足系统的实时性要求。自行设计嵌入式硬件系统也可大大降低系统功耗及设备尺寸,并确保长时间连续无故障运行。媒体处理器继承了通用DSP 芯片的特点, 并针对多媒体的应用, 扩充了各种接口功能和优化了中央处理器结构。它的出现,使得完全可编程的多媒体设备得以实现[1]。
2. 媒体处理器TMS320DM642
TI公司的TMS320DM642(以下简称DM642)是一款专门面向多媒体应用的专用定点DSP,是目前应用于数字图像处理的主流产品。采用的是C64xTMDSP核,VelociTI.2TM结构,其时钟频率高达720MHz,8个并行运算单元,处理能力达5760MIPS。C64xTM与其他C6000TMDSP平台指令兼容,原有程序可方便移植[2]。
DM642拥有三个可配置的视频端口(VP0,VP1和VP2)。三个视频端口均可被配置成视频输入端口、视频显示端口,或者流传输接口(transport stream interface TSI)。DM642的视频端口支持多种视频标准(例如:CCIR601, ITU–BT.656,BT.1120, SMPTE 125M, 260M, 274M, and 296M)。每个视频端口又分成A和B两个通道,A/B通道可分别处理一路视频采集,因此DM642 最多可以处理6路视频采集数据(不带音频)。
利用DM642 开发视频编码器,其视频输入部分只需一块视频采集芯片即可,如Philips 的SAA7115,无需外加逻辑控制电路和FIFO缓存,使硬件系统更为简单和稳定[3]。
除此之外,它还支持10M/100Mbps的以太网口(EMAC)、多通道音频串口(McASP)、PCI 接口等等。
3.硬件平台设计
采用TI公司的TMS320DM642作为系统的主控CPU。现场道路图像通过模拟摄像机采集并输出模拟视频信号,这些信号经过视频解码芯片进行A/D转换为数字信号,直接送入DSP后,进行图像的预处理、虚拟线圈的判定、并计算各种交通参数和进行图像的压缩等。然后通过DM642的以太网接口将各种数据传送回交管中心。系统设计充分发挥了DSP的高速性能以及丰富的外设资源,真正实现了Soc技术。
3.1 存储系统设计
数据存储部分的RAM采用三星公司的SDRAM。为配合DM642的64位EMIF(外部存储器接口),使用四片SDRAM,每片工作在16位模式,单片容量为32MB。程序存储部分的ROM,采用ATMEL公司的NOR型的Flash芯片,总容量为4MB,数据总线为8位。本系统中的SDRAM用来存放系统运行时的代码以及临时图像数据,Flash用来保存系统自启动代码以及系统程序代码。
3.2 视频采样电路
系统采用的视频解码芯片是Philips公司的SAA7115。从模拟视频输入口输入的标准制式电视信号在SAA7115内部经过钳位、抗混叠滤波、A/D转换、YUV分离电路之后,在YUV到YCrCb的转换电路中转换成BT.656视频数据流,输入到中央处理单元DM642中。DM642的视频端口VP0与视频解码芯片相接。VP0通道配置为8位BT.656视频输入端口。视频数据的行/场同步信号包含在BT.656数字视频数据流的EAV(end of active video)和SAV(start of active video)时基信号中,视频端口只需要视频采样时钟和采样使能信号即可。SAA7115内部寄存器参数的配置和状态的读出通过I2C总线进行。
3.3 以太网接口电路
DM642内嵌了一个以太网控制器,支持媒体独立接口(media independent interface ,MII),可在半双工或全双工模式下提供10Mbps/100Mbps的以太网接入。但DM642的内部实际只包含了以太网MAC控制,并未提供物理层接口,需要外接一片物理层芯片以提供以太网的接入通道。这里采用Intel公司的LXT971A 芯片, 它提供了MII 接口, 可以方便地和DM642连接。连接电路如图3所示,从DM642传输过来的数据通过LXT971转换为以太网物理层能够接收的数据信号后,通过隔离变压器,再经过RJ-45接头传输到以太网上去。
3.4 电源及其他电路设计
电源管理部分在一个硬件系统设计中占有举足轻重的地位。本系统的电源模块采用MAXIM公司的解决方案,包括一片MAX1762 芯片(产生1.4V电源给DM642内核供电) 以及两片MAX1626(分别产生3.3V电源给DM642的I/O 供电和产生5V电源供给其他5V逻辑芯片)。
此外系统配置了一个512M的电子盘,用于存储系统的配置信息,以及由于网络拥塞暂未发送成功的各种交通参数和现场照片。
为了保证系统的鲁棒性,保证各路段的交通参数能够及时地传回交管中心,系统配置了GPRS模块。当以太网出现故障时,系统通过GPRS将道路的实时交通参数送回交管中心。此时系统不传送道路监控视频流。
4.软件开发环境及系统程序设计
4.1 开发环境的建立