打印
[DSP编程]

嵌入式操作教程:7-1 基于CMOS数字摄像头的灰度转换实验

[复制链接]
8349|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
创龙教仪|  楼主 | 2024-1-19 14:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一、实验目的
学习灰度转换的原理,掌握OV2640 摄像头和VPIF总线的工作原理,实现OV2640 摄像头采集图像并进行实时灰度转换显示在 LCD 上。
二、实验原理OV2640摄像头
OV2640 是世界上第一个 1/4 英寸 2 百万像素视频传感器,同时是 OmniVision 最新的
2.2 微米 OmniPixel2™架构的视频传感器,可支持 200 万像素,分辨率可高达 1600x1200,
帧率可达 30 帧/秒,最高帧率可达 60 帧/秒。
OV2640摄像头采集图像时,会先经过感光元件,采样的信号经过运放,再进行AD转换,AD量化之后得到数字化的视频信号会进行控制调整,最终通过视频输出接口输出。
除此之外还有其他的一些信号接口,比如时钟输入,像素时钟,行同步信号,帧同步信号,时序产生和逻辑控制单元等等。
OV2640时序
图像数据在HREF为高的时候输出,当HREF变高后,每一个PCLK时钟,输出一个字节数据。比如我们采用UXGA时序,RGB565格式输出,每2个字节组成一个像素的颜色(低字节在前,高字节在后),这样每行输出总共有16002个PCLK周期,输出16002个字节。
当HREF输出高电平时开始读取一行像素点,当低电平时不操作,重复操作即可读取一帧图像。OV2640支持:RGB565或JPEG输出。RGB565输出时,时序如图所示。JPEG输出时,PCLK大大减少,且HREF不连续,数据流以0XFF,0XD8开头,以0XFF,0XD9结束。
TL2640摄像头模块和实验板的连接引脚对应表如表所示。DSP通过I2C总线配置摄像头的相关寄存器,摄像头采集的数据通过VPIF总线传输回DSP进行处理。
VPIF接口
VPIF是一种视频接口。VPIF的通道0和通道1只能用于接收数据,通道2和通道3只能用于发送数据。更多的接口说明可以自行查看相关手册。
VPIF 传输协议
VPIF 接口主要支持三种协议的传输:BT-656、BT-1120和Raw Capture mode
其中,VPIF 端口接收通道支持BT-656、BT-1120和Raw Capture mode三种协议,VPIF 端口发送通道只支持BT-656
和BT-1120两种协议。
VPIF 支持三种格式:NTSC、PAL和普通图像格式。
RGB24图像灰度转换
RGB颜色空间作为一种常用的彩色图像表示模型,分别用红(R)、绿(G)、蓝(B)三原色的组合来表示每个像素的颜色。一般情况下,RGB彩色图像灰度化有三种转化方案:
(1)加权平均法
(2)平均值法:对彩色图像的每个像素中的R、G、B三个分量的值进行简单的算术平均,将得到的平均值作为灰度图像对应像素的亮度值。
(3)最大值法:将彩色图像的每个像素中的R、G、B三个分量中的最大值作为灰度图对应像素的灰度值。
所谓加权平均法就是根据三基色的重要性及其他指标,将R、G、B三个分量以不同的权值进行加权平均。由于人眼对绿色的敏感最高,对蓝色敏感最低,因此我们可以按照下式对R、G、B三分量进行加权平均,则能得到较合理的灰度图像。
而实际应用时,希望避免低速的浮点运算,所以需要整数算法,由于系数都是3位精度的,可以将它们缩放1000倍来实现整数运算算法:
RGB一般是8位精度,现在缩放1000倍,所以上面的运算是32位整型的运算。后面那个除法是整数除法,所以需要加上500来实现四舍五入。
程序流程设计
程序流程设计中首先要使能缓存,接着进行DSP中断初始化和LCD的初始化,然后初始化配置I2C和OV2640摄像头,初始化VPIF总线。最后摄像头采集接收数据,灰度转换后将数据显示在LCD上。
三、操作现象实验设备
硬件接口为LCD和VPIF 接口,所需硬件为实验板、仿真器、TL2640I 摄像头模块、LCD和电源。
硬件连接
(1)将 TL2640I 摄像头模块连接到实验板的 VPIF 接口。
(2)连接仿真器和电脑的USB接口,
(3)将拨码开关拨到DEBUG模式01111,连接实验箱电源,拨动电源开关上电。
软件操作
导入工程,选择Demo文件夹下的对应工程
编译工程
将CCS连接实验箱并加载程序
点击运行程序
在LCD屏幕上实时显示采集并做了灰度转换处理的图像
实验结束后,先点击黄色按钮暂停程序运行,再点击红色按钮退出CCS与实验箱的连接,最后实验箱断电即可。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

66

主题

71

帖子

1

粉丝