一种CMOS图像传感器自动曝光算法的设计及实现

2015-10-15 02:05谭艳丽赵永强
电视技术 2015年3期
关键词:测光时序亮度

谭艳丽,赵永强

(太原工业学院 电子工程系,山西 太原 030008)

一种CMOS图像传感器自动曝光算法的设计及实现

谭艳丽,赵永强

(太原工业学院 电子工程系,山西 太原 030008)

针对传统自动曝光算法收敛时间长的问题,设计了一种基于对分搜索的CMOS图像传感器自动曝光控制算法,研究了基于CMOS图像的测光方法,给出了自动曝光算法的流程。首先在MATLAB中对算法进行了仿真,并和传统算法进行了比较,曝光收敛时间缩小了一半。最后在基于FPGA的CMOS图像采集平台上对算法进行了实现,实验证明了该算法的有效性。

自动曝光;对分搜索;CMOS;图像采集

伴随着半导体集成器件的发展,CMOS图像传感器应用领域越来越广[1],尤其是在数码相机、汽车行车记录仪、安防监控等方面。自动曝光的意义在于当外界光线发生变化时,通过调整图像传感器的曝光时间来调节图像的亮度,使其处于标准值的范围内。传统的CMOS图像传感器自动曝光算法有计算法、查表法和迭代法[2]。由于CMOS图像传感器呈像图像的亮度并非和外界光照成线性关系,所以无法建立一个完美的函数来表达图像亮度值和光照关系,所以采用计算法需要系统具有强大的计算能力。查表法是工业用相机自动曝光常采用的一种方法[3-5],但需要进行大量的实验测试得到查表数据,且当相机镜头发生变化时,此数据需要进行重新测量。迭代法也是最常用的自动曝光控制算法之一,传统的迭代法计算收敛时间较长,本文研究了一种基于对分搜索的CMOS图像传感器自动曝光控制算法,曝光收敛时间缩小了一半。

1 基于对分搜索的自动曝光算法

1.1 CMOS图像传感器输出图像格式

采用图像测光的方法主要是通过图像数据,计算得到图像的亮度信息,从而用亮度信息来代替空间的光照度,对于不同格式的色彩空间,对图片亮度值的计算过程是不一样的,如RGB色彩空间[6],需要先将图像从RGB色彩空间转换到YUV色彩空间,YUV色彩空间中的Y值即为图片的亮度值,由于只需要获取Y值,所以转换时只需要求取Y值即可,转换公式为

Y=0.299R+0.587G+0.114B

(1)

CMOS图像传感器输出的图像为Bayer格式,如图1所示。

图1 Bayer格式

在进行图片测光时,需要先将Bayer格式转换成RGB色彩空间,再将RGB色彩空间转换为YUV色彩空间,从而获得图片的亮度信息。

1.2 全局测光

根据测光区域的不同,大致可以分为全局测光、点测光和局部测光。局部测光是指在进行测光计算时选取图像的局部数据进行测光,这种方法使得曝光时间随关注目标的亮度值而改变,这种方法在图像为大面积黑色背景的环境中使用较多,如深空环境等[7],且由于其计算量小、测光灵活被广泛应用。点测光由于进一步降低测光算法的计算量,在部分特殊场合就得到应用,但是由于其测光区域小,会造成误测,所以只在部分特殊场合得到应用[8]。全局测光是相机中经常使用的一种测光方式,在正常的拍摄条件下,全局测光根据整幅图像的亮度值来还原拍摄背景的光照度,本文所研究的曝光计算就采用全局测光模式。

1.3 自动曝光算法

传统的CMOS图像传感器自动曝光算法有计算法、查表法和迭代法[9],由于上述3种方法均无法满足快速自动曝光和算法简单兼具的要求。本文设计了一种基于对分搜索的自动曝光控制算法,算法流程如图2所示。

图2 基于对分搜索的自动曝光算法流程图

图2中,Y1为图像亮度值,Y0为目标亮度值,Texp为曝光值。由图2可知在计算曝光时间Texp过程中,根据亮度值差Y的不同,得到的Texp值也不一样,这与传统的等步长曝光时间计算方法是不一样的。

1.4 算法仿真

采用MATLAB模拟传统算法[10]和本文提出的算法的收敛速度,其对比数据如表1所示,其中初始值为测试图像的归一化亮度值。由表1可知,本文提出的对分搜索法相较传统的变步长的收敛速度快近1倍,本算法经过近10帧图像数据即可完成目标图像的亮度测量以及准确的曝光时间计算,而完成相同的工作传统算法需要近20帧图像数据。受图像传感器自身条件的影响,当目标背景亮度非常小时即使进一步提高曝光时间,图像传感器输出图像的亮度值也不会有所提高。

表1 曝光收敛时间的仿真

2 基于FPGA的硬件平台的设计

基于FPGA CMOS图像传感器自动曝光控制平台结构如图3所示。

根据需求,本设计选择的FPGA和CMOS图像传感器芯片型号分别为Xilinx的Spartan-6系列FPGA XC6SLX4、镁光MT9T001[11]。

1)FPGA选择

Spartan-6系列的FPFA产品具有突出的优点:坏机的风险降低、工程期间投入减少、I/O支持超过12 Gbit/s的存储器访问带宽、兼容3.3V电压等。该系列器件生产技术采用45nm共9层金属布线双层氧化工艺,且含有高效双寄存器,更包括DSP逻辑片、高速收发器以及PCI Express®接口内核。因此选择该系列FPGA XC6SLX4的芯片作为系统的核心器件[12]。

图3 系统结构

2)CMOS图像传感器

MT9T001是MICRON公司生产的一款CMOS图像传感器,分辨率可以达到QXGA,有效像素阵列为2 048H×1 536V。可实现片上开窗、行列跳跃像素以及快照功能,曝光时间可以通过I2C总线进行控制[12]。

在完成了系统电路设计的基础上,得到系统的硬件电路如图4所示。

3 自动曝光算法的实现

如图5所示,FPGA软件工作量主要包括:I2C读写时序、MT9T001数据采集时序、数据缓存控制时序、自动曝光数据处理时序和系统各模块数据交换与控制时序。

图4 硬件电路

图5 功能模块

3.1 I2C控制时序

MT9T001官方提供的I2C总线时序如图6所示。

由系统要求可知,CMOS图像传感器的曝光时间需要通过I2C总线写入图像控制器内,I2C总线模块从自动曝光算法模块得到曝光时间按照图6所示的时序写入图像传感器中,在FPGA中对I2C总线的时序进行了设计,采用ModelSim6.0得到的时序仿真结果如图7所示,并采用了安捷伦示波器对I2C时序进行测量,结果如图8所示。

图6 I2C总线时序(截图)

图7 I2C时序仿真结果(截图)

图8 采用安捷伦示波器对I2C时序测量结果(截图)

3.2 自动曝光模块的实现

本论文采用的算法分3步实现,首先需要统计图像的像素亮度,然后根据此亮度带入公式得出系统的曝光参数,最后以此为依据整改旧的参数。以上3步在FPGA内部循环有序进行,完成根据外部环境变化需要的曝光参数,模块整体框图如图9所示。

图9 自动曝光流程示意图

在FPGA中采用状态机的方法对自动曝光算法进行了设计,采用ModelSim6.0得到的时序仿真结果如图10所示。

图10 自动曝光算法仿真结果(截图)

4 实验测试

采用本文设计的硬件系统,选择外部场景不同时间段,光照条件不一样的环境对曝光时间和曝光效果进行测试,结果如图11所示。

图11 实验结果

在完成图像拍摄后,采用Photoshop对图11a~11d的亮度进行了测量,其亮度值分别为50,98,160,100。这说明在光照较弱和较强的情况下,通过自动曝光后的照片均能获得较好亮度值。

5 结论

本文设计了一种基于对分搜索的CMOS图像传感器自动曝光控制算法,研究了基于CMOS图像的测光方法,给出了自动曝光算法的流程,并在FPGA硬件平台上对算法进行了实现,MATLAB仿真和实验测试表明,该系统能够达到对CMOS图像传感器快速自动曝光控制的要求,具有一定的工程应用价值。

[1]柳笛,黎福海,荣宏.CMOS图像传感器优势和最新产品[J].电视技术,2007,31(12):29-31.

[2]洪青江.数码相机的图像处理通道[J].电子产品世界,2006,11(6):123-125.

[3]贡青,李锦萍,闵子建,等.一种基于CMOS图像传感器的flicker自动检测方法[J].首都师范大学学报,2007(28):32-35.

[4]曹希霆,贾敏智.基于图像处理的智能射击训练系统[J].电视技术,2013,37(2):158-160.

[5]关文俊.现代相机自动测光系统及自动曝光功能阐释[J].哈尔滨师范大学学报:自然科学版,1999(4):79-82.

[6]胡晶.曝光控制[M].哈尔滨:黑龙江科学技术出版社,2006.

[7]伍振荣.光与曝光[M].北京:中国摄影出版社,2007.

[8]刘恩科,朱秉升,罗晋生.半导体物理学[M].北京:国防工业出版社,2007.

[9]GAMAL E,ABBAS E,HELMY.CMOS image sensors[J].IEEE Circuits and Devices Magazine,2005(21):6-20.

[10]赵建,刘济林,于海滨.基于以太网技术的立体视觉图像采集系统[J].电视技术,2005,29(3):70-72.

[11]朱奕丹,方怡冰.基于以太网技术的立体视觉图像采集系统[J].计算机应用,2011(31):1258-1261.

[12]潘明,陈元枝,李强.基于FPGA的图像采集系统的设计[J].国外电子测量技术,2012(31):58-60.

谭艳丽(1978— ),女,讲师,主研图像处理、模式识别;

赵永强(1968— ),教授,主研光通信、移动通信测试技术、宽带信息网等。

责任编辑:李 薇

Implementation and Design of CMOS Image Sensor Exposure Algorithm

TAN Yanli,ZHAO Yongqiang

(DepartmentofElectronicEngineer,TaiyuanInstituteofTechnology,Taiyuan030008,China)

To the convergence time problem of the traditional auto exposure algorithm,a auto exposure algorithm for CMOS image sensor based on binary search is studied in this paper.Firstly,the photometric method based on CMOS image is proposed and the algorithm flow chart is given.Then the algorithm is simulated in the MATLAB and compared with the traditional algorithm which shows that the convergence time is reduced by half.At last,the algorithm is implemented on CMOS image acquisition platform based on FPGA,the experimental results show the effectiveness of the algorithm.

auto exposure; dichotomous search; CMOS; image acquisition

【本文献信息】谭艳丽,赵永强.一种CMOS图像传感器自动曝光算法的设计及实现[J].电视技术,2015,39(3).

TN919.81

A

10.16280/j.videoe.2015.03.011

2014-09-18

猜你喜欢
测光时序亮度
清明
基于不同建设时序的地铁互联互通方案分析
亮度调色多面手
本月话题机内测光系统
基于FPGA 的时序信号光纤传输系统
亮度一样吗?
基于斩波调制的LED亮度控制
人生的亮度
基于模体演化的时序链路预测方法
相机探秘测光指南