基于DSP与双目CMOS摄像头的数字图像处理系统

发布时间:2010-8-30 15:12    发布者:techshare
关键词: CMOS , dsp , 摄像头 , 图像处理
传统的数字图像处理通常采用图像采集卡,将模拟电视信号转换成数字信号,然后由PC机进行软处理。这样不仅不够灵活,处理能力也受到PC机和软件的限制。随着CMOS成像芯片工艺的改进和数字信号处理器功能的提升,使得数据量与计算量较大的图像硬处理成为可能。本文详细介绍了通过两路CMOS摄像头采集图像,以浮点DSP为核心处理器,采用60万门FPGA实现逻辑控制的数字图像采集处理系统的设计原理和实现方法。本系统所采用的芯片与器件,在保证性能的同时,兼顾低功耗,整个系统可以由1394线缆供电。  

1 原理概述  

整个系统的原理框图如图1所示。系统上电后,FPGA配置子板把配置文件加载到FPGA中。DSP由外部 FLASH引导,通过FPGA先设置1394接口芯片的内部寄存器,再通过I2C总线设置摄像头1、2的控制寄存器。FPGA提供摄像头的工作时序和图像序列的读写时序。云台在DSP的控制下可以上下左右调整,捕捉感兴趣的目标。8片1MB的SRAM作为两路摄像头的数据存储器,16MB的SDRAM则充当DSP的外部数据缓冲。处理后的图像既可以直接输出至LCD进行显示,也可以通过1394总线传送至PC机。   


  
图1 数字图像采集处理系统原理框图  

2 系统设计   

整个系统由三部分构成:图像采集模块、图像处理模块和图像传输模块。  

2.1 图像采集模块   

该模块主要由两组CMOS摄像头和云台组成。该模块的接口信号见图2。  


  
图2 图像采集模块连接图  

摄像头采用韩国现代的HV7131R和五层玻璃透镜。HV7131R采用0.3μm的CMOS工艺,有效像素30万,功耗低于90mW,具有曝光控制、增益控制和白平衡处理等功能,最大帧率30fps@VGA。通过标准的I2C接口设置HV7131R的内部寄存器,可以调节图像的曝光时间、分辨率、帧率、RGB增益、镜像等。HV7131R输出10位的RGB原始数据,本系统采用了其中的高8位。多层玻璃透镜可以滤除波长大于630nm的红外线,并采用超焦距对焦方式,最小成像距离为3cm。  

摄像头借助云台跟踪运动目标,水平旋转范围为-180°~180°;垂直旋转范围为-45°~45°。  

考虑到运动图像处理至少需要3帧的序列图像,每组摄像头配备了4片RAM。3片做数据采集缓冲,1片存储DSP处理后的结果。  

2.2 图像处理模块  

该模块由DSP、FPGA和数据缓存器组成。  

DSP主要完成的功能有:
(1)加电自举,初始化1394接口芯片;
(2)通过I2C接口设置摄像头的寄存器;
(3)对图像进行预处理,提高成像质量;
(4)控制云台的转动,实现运动目标的跟踪。  

FPGA在本系统中的作用有:
(1)提供图像采集、存储与传输的工作时序;
(2)协同DSP实现复杂的组合逻辑控制电路;
(3)实现标准的VGA接口,外接LCD显示器。  

基于以上要求,本系统采用TI公司的32位浮点DSP TMS320C6711B。6711B采用改进的哈佛总线结构,主频为150MHz,内部集成硬件乘法器和累加器,采用流水线VelociTITM甚长指令字(VLIW)指令,具有丰富的片上外设,并有专门针对数字信号处理的指令系统,运算能力可达1200MFLOPS,适用于计算量大、实时性高的数字图像处理领域。FPGA 则采用Altera公司Apex系列的EP20K600EBC652。EP20K600EBC652具有高速度(622MHz的数据速率)、高密度(有效逻辑60万门)、低噪声和低功耗的特点。有4个PLL、480个低电压差分信号(LVDS)的I/O口,工作电压为2.5V和1.8V。  

2.2.2 图像的预处理
  
运动目标检测与跟踪、目标的识别与提取等基于图像内容的处理,对图像质量要求较高。影响成像质量的两个重要因素为曝光和白平衡:人眼对外部环境的明暗变化非常敏感,在强光环境下,瞳孔缩小,使得景物不那么刺眼;而光线较弱时,瞳孔扩大,使景物尽可能地变清楚。这在成像中,称为曝光。当外界光线较弱时,CMOS成像芯片工作电流较小,所成图像偏暗,这时要适当增加曝光时间进行背光补偿;光线充足或较强时,要适当减少曝光时间,防止曝光过度,图像发白。改善成像质量,仅靠调节曝光时间是不够的。因为物体颜色会随照射光线的颜色发生改变,在不同的光线场合图像有不同的色温。这就是白平衡问题。传统光学相机或摄像机通过给镜头加滤镜消除图像的偏色现象。对于CMOS成像芯片,可以通过调整RGB三基色的电子增益解决白平衡问题。   

本系统的自动曝光控制和白平衡处理实现方法如下:  

采集一帧RGB原始图像,在6711B中先计算出整幅图像亮度的均值m(Y);然后对图像做直方图均衡化,再计算出此时图像的亮度均值并作为一个阈值Yt。将m(Y)与Yt进行比较,如果m(Y) < Yt,则调大HV7131R的INT(Integration Time)寄存器的值以增加曝光时间;反之,减小曝光时间。白平衡的调节与此相似,根据原始图像与均衡化后的Cr和Cb的均值,通过HV7131R的RCG(Red Color Gain)、BCG(Blue Color Gain)调节红色、蓝色通道的增益。YCrCb和RGB的转换关系式为:

Y=0.59G+0.31R+0.11B
Cr=0.713×(R-Y)
Cb=0.564×(B-Y)

其中,Y是亮度分量,Cr和Cb则是色差分量。  

HV7131R的曝光时间范围为0~(224-1)个像素时钟周期,即0~1.34s?.5MHz;增益范围一般为30~63。试验结果表明,经过5~10次的迭代就能取得较为理想的效果。上述过程示意图以及成像效果如图3和图4所示。   


  
图3 曝光控制和白平衡处理  


  
图4 成像效果  

2.3 图像传输模块   

本系统图像传输模块采用IEEE1394高速串行总线。1394总线支持点对点通信、即插即用和热插拔,有等时和异步两种传输模式,速率高达400Mbps,最大有效距离为4.5m。1394线缆可以提供8V~40V的DC电压以及最高可达1.5A的电流,完全满足整个系统的供电需求。该模块主要包括链路层和物理层两个控制器。  

2.3.1链路层控制器(LLC)  

TSB12LV32具有2KB的通用接收FIFO(GRF)与2KB的通用发送FIFO(ATF),支持异步传输与等时传输。微控制器接口支持8/16位的数据宽度,工作时钟最高达60MHz。TSB12LV32提供DMA方式,待发送数据边读取边传送,传输效率较高。  

2.3.2 物理层控制器(PLC)   

TSB41AB3提供三个1394端口,3.3V单独供电,符合1394a标准,支持等时传输和异步传输,支持100/200/400Mbps的传输速率,可以与TSB12LV21、TSB12LV31、TSB12LV32、TSB12LV41或TSB12LV01A等链路层控制器实现无缝连接,具有较高的通信速率与可靠性。  

本系统为了便于调试,PC机被设定为根节点控制器,应用程序和硬件通过驱动程序进行交互。Win32应用程序通过设备驱动程序、总线驱动程序、端口驱动程序与1394设备进行通信,如图5所示。   


  
图5 主机与1394设备之间的通信  

其中,1394总线驱动程序和端口驱动程序处理所有繁琐的底层通信,只需提供设备驱动程序。LLC和PLC的内部寄存器通过6711B设置,设备的发现与识别、驱动程序的安装、1394总线的初始化等也需要6711B的控制和响应。  

本系统图像的最大数据量为640×480×30×2=18.4Mbps,1394a最高支持400Mbps的传输速率,图像实时传输不需要经过压缩。实际传输过程中,为确保每帧图像的完整,采用异步传输模式,图像序列之间加入了帧同步信号,使带宽利用率有所下降,最终的实测速率为20fps?×480。该系统采用32位浮点DSP和大容量、多I/O口的高速FPGA,数据处理能力强,电路设计灵活,为今后运动目标检测与跟踪算法的研究提供了软硬件支持。
本文地址:https://www.eechina.com/thread-24502-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表