基于DSP与双目CMOS摄像头的数字图像处理系统
侯彦宾, 李玉山, 张 静
(西安电子科技大学 电路CAD研究所376信箱, 陕西 西安710071)
摘 要:介绍了基于浮点DSP处理器与双CMOS摄像头的数字图像采集处理系统,探讨了系统的基本原理和设计方法,并给出了系统的实现方案。在该系统中,数据采集由两个相互独立的CMOS摄像头完成,并由DSP进行图像处理,FPGA协同DSP完成时序逻辑控制和组合逻辑控制。处理后的图像可以通过1394接口输出。该系统主要由FPGA和DSP实现,设计灵活,具有很强的重构性。
关键词:图像 图像处理 DSP FPGA IEEE1394
传统的数字图像处理通常采用图像采集卡,将模拟电视信号转换成数字信号,然后由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.1 图像采集模块
该模块主要由两组CMOS摄像头和云台组成。该模块的接口信号见图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.2 图像处理模块
该模块由DSP、FPGA和数据缓存器组成。
2.2.1 主要器件的选型
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@12.5MHz;增益范围一般为30~63。试验结果表明,经过5~10次的迭代就能取得较为理想的效果。上述过程示意图以及成像效果如图3和图4所示。
- 全面解读 嵌入式DSP上的视频编解码(08-19)
- 基于ADSP-TS201S的图像采集处理系统(08-12)
- 基于Blackfin533的H.264编码(08-18)
- 图形液晶显示模块在嵌入式系统中的应用(09-02)
- 基于DSP和FPGA的电视观瞄系统设计(09-02)
- TI手提多媒体设备解决方案(09-23)