6437
摘要:为了适应现代采集系统的小型化以及数字化需要,设计了一种基于达芬奇技术DSP芯片的数字图像采集系统。这种设计方法不需要外接编解码芯片,直接连接数字摄像头,减少了D/A转换带来的图像干扰,同时利用了迭芬奇系列DSP上集成的视频处理子系统组件(VPSS),其中的视频处理前端(VPFE)以硬件方式对数字视频图像进行视频采集、CFA插值、色彩空问变换等图像预处理操作,简化了软件设计。目录随
1 摄像机工作原理以及关键技术说明
数字摄像机是指把图像传感器采集到的数字图像信号直接传送给后端的图像处理芯片进行处理,不进行传统模拟摄像机的数字图像信号的数/模、模/数转换过程,这样就避免图像信号数/模转换过程带来的噪声影响。图像传感器送出的Bayer格式数字图像信号将被直接被后端的图像处理芯片采集,然后对采集到的视频信号进行CFA插值、色彩空间转换等操作。最后生成YUV格式的视频图像,生成的YUV格式视频图像可以存储起来或者通过网口发送到网络上。
Bayer格式:CMOS图像传感器光敏区域内的每一个像素感应一种颜色,其中R感应红光,G代表绿光,B感应蓝光。奇行扫描输出为R、G、R、G…,偶行扫描输出为G、B、G、B…。其格式如图1所示。
CFA插值:Bayer格式图像信号每像素只代表一种颜色,而像素颜色需要3原色来进行表示,需要对Bayer格式的图像信号进行插值,输出的图像使用临近像素中相同颜色成分做线性平均计算来补偿每个像素丢失的颜色。最终,每像素用R、G、B 3种颜色来表示也就是所谓RGB格式图像。
色彩空间转换:在图形图像的处理过程中,RGB的效率不是很高,因为在产生任何一种颜色时,R、G、B 3者需要同样的带宽,修改像素的亮度和色度的时候需要3者全部修改。而YUV色彩空间描述了亮度和色度的概念,Y指亮度,U指色调,V指饱和度。色彩空间的转换关系如图2所示。
2 摄像机硬件组成
数字摄像机主要由图像传感器、DSP芯片和显示器组成。系统整体框图如图3所示。
CMOS摄像头主要用来完成图像信息的光电转换,输出信号为数字Raw Bayer模式图像信号。输出Bayer模式图像信号将直接通过视频处理前端(VPFE)的视频输入端口进入到视频处理子系统中。视频处理前端将接收到的视频信号进行处理后存储,由于需要存储大量的视频图像数据,所以存储器容量需要足够大,TI专门为此设计了一个32位、256 M字节的高速、大容量的DDR2存储器来进行视频图像数据的高速存储。视频处理后端(VPBE)读取存储在DDR2中的视频图像信号,通过视频输出端口来传送到显示器上进行显示。
3 TMSDM6437 DSP硬件结构
TMS320DM6437是TI公司推出的、专门为高性能、低成本视频应用开发的、主频600MHz的、32位定点DSP达芬奇技术的处理器系列。DM643 7采用2级CaChe存储器体系结构,片上具有64通道增强型DMA控制器EDMA,支持复杂的数据类型的传输,有利于图像数据的高效传输和格式变换。DM6437包含丰富的外部存储器接口,同时还带有丰富的外设接口,可以很方便和其他器件相连接通信。
DM6437片上的视频输入/输出接口统称为视频处理子系统VPSS,DM6437的视频处理子系统由2部分组成:1是视频处理前端(VPFE),用于输入数字视频数据,为多种标准的数字视频输入提供接口,并为输入的数字视频数据作必要的预处理;2是视频处理后端(VPBE),用于输出视频数据,以驱动显示器显示视频图像。VPSS功能结构图如图4所示。
1)视频处理前端VPFE DM6437视频处理前端(VPFE)为视频处理系统提供2大功能,1是为多种标准数字视频输入提供无缝接口,2是为各种视频处理应用提供必要的预处理。
CCDC为数字视频输入接口,它可直接与CMOS摄像头连接,支持Bayer BGB图像格式输入或者是模拟视频信号通过编解码芯片转换为8//10位BT.656或者8/16行位带行、场同步信号的YUV4:2:2数字视频流。
预览器(Priview)用于Bayer RGB模式的是视频输入,由硬件来实现Bayer RGB图像格式的视频数据转换为YUV4:2:2的图像格式。
缩放器(Resizer)接受来自于预览器、CCDC控制器或者存储器的视频数据,实现图像大小的缩放,缩放范围为1/4~4倍。
H3A为自动对焦(Auto Focus)、自动白平衡(Auto White Blanee)和自动曝光(Auto Exposure)。H3A只能用于Raw Bayer模式数据,选择对应的矩阵就可以通过硬件来完成自动对焦、自动白平衡和自动曝光。
统计器(Histogram)用来对视频图像中的各种颜色信息进行直方图统计。
2)视频处理后端VPBE DM6437视频处理后端(VPBE)用于实现视频图像的输出显示,包括OSD模块和VENC模块。
OSD(On-Screen Display)模块主要用来把来自于不同源的视频数据、图形以及字符复合为同一个数字视频流,然后将复合后的视频流以YebCr格式输出到VENC中。
VENC(Video Encode)主要有3个模块:视频编码模块将产生模拟视频数据输出、数字LCD控制器产生数字RGB/YChCr数据输出以及需要的时序信号、时序产生器模块将产生视频编码模块和数据LCD控制器模块需要的输入和输出时钟信号。
4 摄像机运行过程
4.1 视频处理前端(VPFE)处理
对于DM6437芯片上集成的VPFE组件,我们主要用到了CCD控制器和预览器模块。CCD控制器作为接口接收外部视频信号,预览器则实现RGB到YChCr的转换。其内部设置的主要图像处理模块如图5所示。
对于CCD控制器(CCDC)中,采样和数据移位模块用来设置锁存器、数据时钟极性和CCD像素数据宽度的选择。光黑钳位模块用来去掉图像数据帧中的噪声。黑像素补偿用来调整各个颜色通道的信号电平。数据格式化和视频端像素选择用来设置行/场同步信号的长度,以及来此传感器的图像数据帧的格式,反映的是传感器的读出帧结构。
对于预览器(Preview)中,预览器接口用来选择视频源的接口方向以及设置输入帧的尺寸。中值滤波和噪声滤波则用来滤除图像数据中的噪声。CFA插值用来完成Bayer模式RGB图像格式数据到RGB数据格式的转换。Gamma校正用来调整视频图像机器显示的非线性特性。RGB到YCbCr用来完成图像从RGB色彩空间到YCbCr色彩空间的转换。4:2:2下采样模块使图像数据转变为YCbCr4:2:2格式。缓冲器接口用来图像数据的流向,如果为SDRAM则需要设置SDRAM的开始地址以及行偏移地址。
4.2 系统运行过程
整个系统的运行过程主要为系统的初始化以及对视频端口的配置。其主要运行过程如图6所示。
在运行整个视频采集系统之前,需要针对DSP芯片的管脚进行定义,因为DSP的管脚绝大部分都是复用管脚,需要根据需求来决定芯片管脚的作用和输出的信号,芯片管脚定义通过设置芯片内部PINMUX1、PINMUX2寄存器来决定,所以首先需要运行芯片初始化函数。
系统初始化:主要用于初始化DM6437的系统时钟、DDR2时钟、L2缓存的存储器空间分配、外部存储器空间映射以及复用管脚分配等功能。
前端处理:用来配置CCDC为10-bit Raw Bayer模式接口,接收来自数字摄像头的裸数据,同时定义了视频图像的分辨率为:720x576。使能了光黑钳位模块和黑电平补偿模块,最后设置CCDC的视频输出分辨率以及数据路径流向预览器。在预览器接口模块。设置接口接受来自CC-DC的10-bit Raw Bayer模式图像数据,在缓冲器接口模块中选择图像数据流行为外部存储器DDR2,指定图像存储地址和偏移地址。
摄像头配置:通过I2C总线来配置CMOS摄像头。需要对PLL设置寄存器进行配置,设置好的时钟信号则作为像素输出时钟使用。其次,需要设置图像格式寄存器和一些控制寄存器,主用于模拟信号的增益、数字信号的增益、黑电平校正、数字偏移更正寄存器,这些寄存器的设置可以使我们得到的图像信号更理想一些。
后端处理:用来配置视频处理后端(VPBE)。根据VPFE的设置,VPBE设置同样的视频图分辨率以,VPBE中的图像存储器读取地址就是VPFE中的图像存储地址。在显示窗选择上,选择显示窗为video windou0,禁止其他显示窗口。设置输出信号为NTSC制的复合视频信号(CVBS信号)。
5 测试结果
在视频采集系统中对摄像头的分辨率设置为720x576,采集到的视频图像如图7所示。观察采集到的视频图像,画面清晰、帧数稳定、色彩均衡,满足普通相机、网络摄像机对视频图像的要求。当需要改变分辨率的时候,只改变程序中相应的寄存器设置就可以,硬件无需变更,降低了开发成本。
6 结束语
在本文利用DaVinei技术的处理器TMSDM6437芯片,实现了数字视频图像的采集功能。这种方法充分利用到了该系列芯片上的集成组件——视频处理子系统,以硬件方式完成了视频图像数据的采集和一些图像预处理操作,使后续只进行图像提取和识别等,而不需要进行图像数据的转换、编解码等操作,简化了此类系统的设计。由于视频处理子系统为芯片上的硬件集成组件,运行速度快,这些都为小型、实时数字采集系统提供了保证。
更多推荐
所有评论(0)