1 图像采集系统的应用现状
实时图像采集系统已经广泛应用于手机、PDA、实时监控系统等高端嵌入式系统中。在这类系统中,处理器具有以下特点:具有较高的处理速度可以实时处理采集回来的大量图像数据;具有较大的内存可以存放若干帧完整的图像数据;具有丰富的外设接口可以比较容易的扩展大容量的存储设备如CF卡、SD存储卡等来备份一些图像数据。然而在一些测控领域也需要采集图像,以使管理人员能够直观的监控被测对象。由于被测量的变化比较缓慢不需要实时采集图像,每隔一段时间传回监控中心一幅图像就能满足要求。在这类系统中,处理器主要是面向控制领域,它们的特点是内存比较小,处理速度比较慢,外设接口也不多。因此在这类低端嵌入式系统中增加图像采集功能要面临处理器处理能力有限和硬件资源受限制的问题。
2 CMOS图像传感器MT9V011介绍
以创新的CMOS活跃象素技术,美光的超低功耗MT9V011图像感应器融合了上乘的VGA分辨率和标准电荷耦合器件(CCD)所不具备的很多优越功能。它能以高达30fps的帧频输出高质量的逐行扫描图像,而电池寿命却比CCD竞争产品大幅度延长,因此成为手机、掌上电脑和PC机USB摄像头的理想选择。
MT9V011多种精密的相机功能(包括窗口化、行镜像变换、左右和上下图像翻转、电子旋转快门(ERS)、列镜像变换)已被直接集成到芯片上,从而减少了CCD通常需要的额外组件,最大程度地缩小了产品尺寸和主板空间。其变量功能(也直接包括在芯片内)如可编程增益、帧频和曝光控制等可以在默认模式 *** 作,也可以由最终用户通过一个简单的两线I2C接口进行编程。
图1 CMOS摄像头芯片MT9V011工作时序
MT9V011默认输出的是一幅640ⅹ480象素的图像。MT9V011芯片的工作时序如图1所示。LINE_VALID是行有效信号,PIXCLK是象素时钟信号,DOUT9-DOUT0是10位的图像数据,FRAME_VALID是帧有效信号。其中LINE_VALID有效期间共有640个PIXCLK时钟周期,FRAME_VALID有效期间共有480个LINE_VALID有效信号。默认情况下图像数据从第一行第一列开始在PIXCLK信号的上升沿顺序输出。
MT9V011输出的图像格式是RGB Bayer类型,如图2所示。每一个点只有一种颜色,箭头所指的是第0行第0列。假设P0-0(9:0)至P0-639(9:0)是第0行的所有象素点的颜色数据,P1-0(9:0)至P1-639(9:0)是第1行所有点的颜色数据,则P0-0(9:0)代表绿色的颜色值,P0-1(9:0)代表红色的颜色值,P0-2(9:0)代表绿色的颜色值,P1-0(9:0)代表的是蓝色的颜色值,P1-1(9:0)代表的是绿色的颜色值,P1-2(9:0)代表的是蓝色的颜色值等等。点P0-0、P0-1、P1-0、P1-1组合在一起便具备了R、G、B三色,可以合成一个真彩色的点在PC机屏幕上显示。
图2 MT9V011输出的数字图像格式
3 系统设计方案
图3 嵌入式图像采集系统框图
本图像采集系统基于菲利普的低端ARM7嵌入式微处理器
4 CPLD控制逻辑设计
图4 CPLD控制逻辑流程图
因为系统主处理器LPC2104的I/O速度和内存的限制,无法完成采集一帧图像并存储的功能。这只能借助于在系统中扩展一片CPLD来协作完成系统功能。由CPLD片内的控制逻辑电路完成读取图像数据并缓存到SRAM中的功能。因为系统不是实时图像采集与处理,可以降低CMOS数字图像传感器输出图像的速率。这可以通过改变它的输入时钟来实现。系统中CPLD的时钟采用40MHz,经过10分频以后的时钟做为CMOS图像传感器的时钟。这样降低了图像输出的速率,减轻了处理器进行图像数据处理的负担,使处理器有空闲时间进行其它控制 *** 作。由于CPLD要读取CMOS图像传感器输出的图像数据并缓存到SRAM中,因此CPLD的片内逻辑主要是根据图像传感器输出图像数据的时序和SRAM的读写时序来编写。CPLD片内的控制逻辑电路主要由一个用电子硬件描述语言verilog编写的状态机实现。另外还有一些附加的门电路、多路选择器和加法器,它们和状态机共同组成了系统的摄像头缓存控制逻辑电路。CPLD控制逻辑流程图如图4所示。
5 功能验证
为了验证系统实现了图像采集的功能,需要对CPLD缓存下来的数据进行处理并显示出图像。由于PC机具有丰富的软硬件资源,因此我们利用PC机来显示图像,验证图像采集功能的正确性。具体方法是:系统主处理器LPC2104读取SRAM中的图像数据并通过串口传送给PC机,在PC机上编写软件接收数据并做简单的处理就可以在PC机屏幕上显示出图像,从而能够验证系统的功能。
通过在一个低端的嵌入式处理器系统中添加CMOS数字图像传感器,并编写硬件描述语言程序、嵌入式处理器程序,实现了采集图像的功能。
本文作者创新点:利用CPLD在一个低端嵌入式系统中实现了图像采集功能。
参考文献:
[1] (英)弗伯著,田泽等译.ARM SoC体系结构.北京航空航天大学出版社,2002
[2] 杜春雷.ARM体系结构与编程.清华大学出版社,2003
[3] 李现勇.Visual C++++ 串口通信技术与工程实践.人民邮电出版社,2002
[4] 李侃,廖启征.基于S3C2410平台与嵌入式Linux的图像采集应用.微计算机信息,2006,3-2:125-127
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)