新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于DSP与双目CMOS摄像头的数字图像处理系统

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

——
作者:侯彦宾,李玉山,张 静 时间:2007-01-26 来源:《电子技术应用》 收藏


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

本文引用地址:https://www.eepw.com.cn/article/21146.htm

1 原理概述

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

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

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 图像处理模块
  
该模块由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所示。

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所示。

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

本系统图像的最大数据量为640×480×30×2=18.4mbps,1394a最高支持400mbps的传输速率,图像实时传输不需要经过压缩。实际传输过程中,为确保每帧图像的完整,采用异步传输模式,图像序列之间加入了帧同步信号,使带宽利用率有所下降,最终的实测速率为20fps@640×480。该系统采用32位浮点dsp和大容量、多i/o口的高速fpga,数据处理能力强,电路设计灵活,为今后运动目标检测与跟踪算法的研究提供了软硬件支持。



关键词:

评论


相关推荐

技术专区

关闭