zoukankan      html  css  js  c++  java
  • 31、CMOS摄像头说明

    ov7740(摄像头模块)

    输入信号: 自然景观等的模拟信号
    输出信号: RGB、YUV格式的数字信号

    1). 常用参数
    输入信号: 自然景观等的模拟信号
    输出信号:

    输出格式为:RAW RGB、YUV
    输出分辨率为:VGA(640*480)、QVGA(240*320)、CIF(352*288)、更小的任意大小

    有效感光阵列的大小:656*488 = 320128(30W)
    镜头的大小:1/5寸
    像素点颗粒的大小: 4.2um * 4.2um
    总结:
    以上三个参数,都是用来描述感光阵列,即使同为30W像素的摄像头,如果它的
    镜头尺寸大小越小,那么对应的像素点颗粒的大小就越小,从而感光性就越差,进而
    拍摄的效果就越差。

    输入时钟频率: 6~27MHz
    即0V7740摄像头模组的工作频率范围。

    扫描模式: 连续扫描(P)(一行一行,从左至右,从上至下),与之对应的还有一种隔行扫描(I)的概念

    2). 内部数据的处理流程(可以查看ov7740芯片手册)
    a.isc(image senser core)部分:(输出RAW RGB)
    翻转、增益大小调整、黑电平校准、饱和度的控制、OTP(one time programmer)存储器(存储厂家ID、设备ID等信息)

    b.isp(image senser processor)部分:
    提供测试功能、镜头补偿功能、自动白平衡、RAW RGB->RGB、RGB->YUV、
    窗口功能(图片裁剪)、缩小放大功能

    c.ioi部分(image output interface):
    RAW RGB/YUV(格式)、VGA/QVGA(分辨率)、BT601/BT656(传输方式)

    问:以上这些处理过程,不需要我们人为的做任何设置,它们都能自动完成吗?
    答:以上这些处理过程,只有极少部分是自动完成的,而剩余部分是需要我们设
    置后,才能完成。

    问:怎么对它们进行设置呢?
    答:是通过IIC总线,操作OV7740的寄存器来进行设置的。

    问:RAW RGB与RGB的区别是什么?
    答:所谓的RAW RGB就是只有红绿蓝三种颜色的数据(其是由感光阵列输出的最初始数据,感光阵列就是一颗颗只能感应红绿蓝三色的传感器颗粒)。而RGB数据,它不仅只表示红绿蓝三种颜色,而且还能表示由红绿蓝组合成的任何一种颜色。

    问:RGB、YUV又分别是什么?
    答:RGB、YUV是两种完全不同的颜色空间,它们之间可以相互转换。

    原理图(接口)
    控制类:
    IICSDA -- IIC总线的数据线
    IICSCL -- IIC总线的时钟线

    数据传输类:
    CAMRST -- 复位CMOS摄像头模块
    CAMCLK -- 摄像头模块工作的系统时钟(24MHz)
    CAM_HREF -- 行同步信号
    CAM_VSYNC -- 帧同步信号
    CAM_PCLK -- 像素时钟
    CAMDATA0~7-- 数据线

    总结:
    1.CMOS摄像头模块的接口分为两类:
    (1).控制类
    -- 初始化:对摄像头模块进行相应的初始化操作
    ,让摄像头模块能够正常的输出摄像头数据
    -- 控制: 设置亮度、旋转、缩放等等的操作

    (2).数据传输类: 与LCD的接口完全一样。

    2.CMOS摄像头模块,是一个IIC设备,需要给它写符合IIC设备那套架构的
    驱动,从而实现初始化和灵活的控制。

    640*480、30fps、YUV、BT601(下面会来实现这些参数的CMOS应用程序,通过IIC来设置摄像头)


    s3c2440摄像头控制器(CAMIF)

    问:BT601与BT656的传输方式有什么区别?
    答:BT601有独立的行同步信号线、帧同步信号线,而BT656是将这两种信号
    内嵌到数据中的。

    摄像头控制器接收到源数据后,最先通过一个窗口来截取图片,窗口的大小通过设置寄存器来设置,接着数据处理有两个分支:预览和编码;

    预览通道俗称PIP(picture in picture),用于产生较小分辨率的图片,支持的最大分辨率是640*480,能对图片进行缩放和颜色空间转换(比如YUV->RGB),其有自己独有的的DMA通道(preview DMA),会把数据输出到指定内存,其只能输出RGB16或RGB24格式,能进行图片进行旋转90°的倍数;

    编码通道支持的最大分辨率是4096*4096,能对图片进行缩放和编码(压缩),其有自己独有的的DMA通道(codec DMA),会把数据输出到指定内存,其只能输出YCbCr420或者YCbCr422格式,能进行图片进行旋转90°的倍数;

  • 相关阅读:
    前端模块化
    Spring Boot 配置中的敏感信息如何保护?
    开发者眼中的“道、法、术、器”
    只是想虐下春丽,一不当心玩了下serverless...感觉还不错哟!
    Spring Boot中使用时序数据库InfluxDB
    使用Elastic Job的时候报“Job conflict with register center”,如何处理?
    使用Elastic Job的分片配置加速任务执行和提高资源利用率
    Spring Boot 2.x基础教程:使用Elastic Job实现定时任务
    Spring Boot 2.x基础教程:使用@Scheduled实现定时任务
    Spring Cloud Alibaba 2.2.6发布:新增Nacos注册快速失败的配置
  • 原文地址:https://www.cnblogs.com/liusiluandzhangkun/p/8833961.html
Copyright © 2011-2022 走看看