Camera 基础知识

news2024/11/15 21:56:38

一、Camera 基础知识

1.1 Camera 工作原理

外部光线穿过镜头Lens 后, 经过 Color Filter 滤波后照射到CMOS Sensor 上, CMOS Sensor 将从 Lens 上传导过来的光线转换为电信号,再通过内部的AD模数转换,转换为数字信号。如果 Sensor 没有集成 DSP(数字信号处理),则通过 DVP(数字视频端口) 的方式传输到 基带Baseband上,此时的数据格式是 RAW DATA。如果集成 了 DSP, RAW DATA 数据经过 AWB、 则 Color Matrix、 Lens Shading、 Gamma、 Sharpness、 AE 和 De-noise 处理,后输出 YUV 或 RGB 格式的数据。
最后会由 CPU 送到 framebuffer 中进行显示,这样我们就看到 camera 拍摄到的影像了
Camera 工作原理举例:

程序员Android 转于网络

1.2 Camera 模组组成

Camera 模组主要包含 镜头Lens、传感器Sensor 、软硬结合板FPC、ISP图像处理器,音圈马达VCM等 。
Camera 模组举例:

程序员Android 转于网络

1.3 Camera 常见缩写解释
缩写全文备注
CMOSComplementary Metal-Oxide-Semiconductor互补金属氧化物半导体
ISPImage Singal Process图像信号处理
DSPDigital Signal Processing数字信号处理
DVPDigital Video Port数字视频端口
IFEImage front-end Engine图像前端引擎
BPSBayer Processing SegmentBayer 处理阶段
IPEImage-processing engine图像处理引擎
NPSNoise Processing Segment降噪处理阶段
PPSPost Processing Segment滤波处理阶段
AEAuto Exposure自动曝光
TETime Exposure曝光时间
AFAuto Focus自动对焦
AWBAuto White Balance自动白平衡
IQImage Quality效果相关的图像质量
DPCDefect pixel Correction坏点校正
BLCBlack Level Correction黑电平校正
DemosaicDemosaic去马赛克
BokehBokeh人像虚化,焦外成像
ASFAdaptive Spatical Filter边缘锐化
CACChromatic Aberrations Correction去紫边
FBCFrame Buffer Compressed帧缓冲压缩
CPASCamera Peripheral And Support相机外设
CSIDCamera Serial Interface Decoder Module相机串行接口解码器
CCICamera control interface相机控制界面
VPUVideo Processing Unit视频编解码处理单元
DPUDisplayProcessing Unit显示处理单元
HDRHigh-Dynamic Range高动态范围
LSCLens Shading Correction校正Lens 中间亮四周暗
CDAFContrast Detection Auto Focus反差对焦
PDAFPhase Detection Auto Focus相位对焦
LDAFLaser Detection Auto Focus激光对焦
1.4 Camera 部分名词解释
  • AE 自动曝光
    根据可用光源调节自动设置曝光值,避免找错主体拍摄时候过曝或曝光不足,主要有光圈 、曝光时间、感光度ISO三者共同决定。

  • AF 自动对焦
    通过对既得图像对比度移动镜头,使图像对比度达到最大

  • AWB 自动白平衡
    根据光源条件调节调整图片颜色的保真程度,避免物体在不同光线照射下出现不同程度的色差。

  • CDAF Contrast Detection Auto Focus 反差对焦

反差对焦是目前普及率最高、使用最广泛、成本相对较低的自动对焦技术,也称对比度对焦。

对焦的过程就是通过移动镜片来使对焦区域的图像达到最清晰的过程,所以对焦成功以后,直观的感受就是焦点的清晰度最高,而焦点以外的区域表现为相对模糊的状态。

采用反差对焦的相机,当我们对准被摄物体时,镜头模组内的马达便会驱动镜片从底部向顶部移动,在这个过程中,像素传感器将会对整个场景范围进行纵深方向上的全面检测,并持续记录对比度等反差数值。找出反差最大位置后,运动到顶部的镜片则会重新回到该位置,完成最终的对焦。

所以使用反差对焦的手机在拍照过程中,如果取景框中的物体位置、内容发生了变动,我们的肉眼就可以观察到屏幕上的内容由模糊到清晰再到模糊的过程,有一种镜片在前后推拉的直观感受。

因为反差对焦的工作方式是进行对比度检测,因此相机镜片必须要前后移动完整记录所有的图像信息,然后计算对比度最高的位置,才能最终完成对焦。所以反差对焦的一个主要缺点就是耗费的时间较长

  • PDAF Phase Detection Auto Focus 相位对焦
    单反相机普遍采用相位对焦系统,相比于数码单反相机上的相位对焦,手机上的相位对焦则是直接将自动对焦传感器和像素传感器直接集成在一起,即从像素传感器上拿出左右相对的成对像素点,分别对场景内的物体进行进光量等信息的检测,通过比对左右两侧的相关值的情况,便会迅速找出准确的对焦点,之后镜片马达便会一次性地将镜片推到相应位置,完成对焦。

由于取消了之前的检测过程,且镜片马达需要移动的距离更短,对焦速度明显变快,在画面上也不会有来回对焦的情况,对于拍视频而言,效果也更加自然。不过,相位对焦并不是那么完美,它对光线的要求就比较高,在弱光拍摄环境下,相位对焦就无能威力了。

  • LDAF Laser Detection Auto Focus 激光对焦
    激光对焦是通过后置摄像头旁边的红外激光传感器向被摄物体发射低功率激光,经过反射后被传感器接收,并计算出与被摄物体之间的距离。之后镜间马达便直接将镜片推到相应位置,完成对焦。 和相位对焦一样,同样是一次完成。

激光对焦技术对于微距、弱光环境以及反差不够明显的区域,效果显著,能够有效提高手机在这些情况下的对焦成功率,只是在对焦速度上,激光对焦比较一般。而在光线正常的条件下,激光对焦的速度和相位对焦一样非常之快

  • YUV Sensor 低端5M以下

YUV Sensor输出的Data格式为YUV,图像的效果处理使用Sensor内部的ISP,BB端接收YUV格式的data后只进行格式的转换,效果方面不进行处理,由于Sensor内部的ISP处理能力有限,且YUV Sensor的数据量比较大(YUV422的格式1个pixel2个byte),一般Size都比较小,常见的YUV sensor都是5M以下

  • RAW Sensor 主流模组

Raw Sensor输出的Data格式为Raw,图像的效果处理使用BB端的ISP,BB端接收Raw data后进行一系列的图像处理(OB,Shading,AWB,Gamma,EE,ANR等),效果方面由BB端控制,需要针对不同的模组进行效果调试,Raw sensor是目前的主流,数据量比YUV Sensor小(RAW10 格式的sensor 1个pixel 10个bit)使用平台ISP处理,能支持较大的size

  • 三路电压
    camera包含的三路电压:
    模拟电压(VCAMA) AVDD模拟供电,主要给感光区域和ADC部分供电
    数字电压(VCAMD)DVDD数字供电,主要给ISP供电
    IO口电压(VCAMIO)VDDIO数字IO电鱼主要给I2C 部分供电

ps:
还有一个VCAM_AF 是对Camera 自动对焦马达供电

  • I2C信号
    BB与Sensor端通过I2C来通信(读写寄存器),包括SCL(I2C Clock) SDA(I2C Data)信号

  • mipi几条lane

mipi data是成对的差分信号,MIPI_RDN和MIPI_RDP,有几对这样的pin脚,则说明是几条lane,同一颗sensor由于register setting不同,输出的信号有可能是2 lane或者4lane等

  • Data Format
    Sensor输出的数据格式,对于YUV Sensor来说,Data Fomat一般有YUYV,YVYU,UYVY等,配置不对可能会导致颜色和亮度错掉,例如下图

     

    程序员Android 转于网络

  • MCLK

BB提供给Sensor的外部clock

  • PCLK

Parallel接口的Sensor输出的clock,该clock变化一次,data更新一次

  • mipi 信号

mipi信号包括mipi clock和mipi data,该信号是高速信号,用来传输mipi数据包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1404192.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

unity项目《样板间展示》开发:火焰和UI设计

第二章:火焰和UI设计 前言一、火焰模型管理灶台火焰壁炉火焰 二、电视机播放三、UI设计结语 前言 这次带大家从0到1做一个unity项目:《样板间展示》。 顾名思义,项目内容是展示样板间,即玩家可以与房间中的物体、家具进行交互。 至…

【网络安全 -> 防御与保护】信息安全概述

目录 一、信息安全现状及挑战 二、信息安全脆弱性及常见安全攻击 1、网络环境的开放性 2、协议栈的脆弱性及常见攻击 3、操作系统的脆弱性及常见攻击 4、终端的脆弱性及常见攻击 5、其他常见攻击 三、信息安全要素 四、整体安全解决方案 一、信息安全现状及挑战 &…

51单片机LED点阵屏

LED点阵屏 LED点阵屏是一种由许多小型LED灯组成的矩阵式显示屏。这些LED灯可以是单色、双色或全彩的,它们排列成行和列的网格,可以根据需要点亮来显示图像、文字或动画等内容。LED点阵屏广泛应用于户外广告牌、室内显示、交通信号灯、电子价格标签和其他…

gradle打包分离依赖jar

正常打包的jar是包含项目所依赖的jar包资源,而且大多数场景下的依赖资源是不会频繁的变更的,所以实际把项目自身jar和其所依赖的资源分离可以实现jar包瘦身,减小上传的jar包总大小,能实现加速部署的效果 一 原本结构 二 配置buil…

CSS 蜡烛效果

<template><view class="holder"><!-- 身子 --><view class="candle"><!-- 光源 --><view class="blinking-glow"></view><!-- 火星子 --><view class="thread"></view>…

【Python时序预测系列】基于Holt-Winters方法实现单变量时间序列预测(源码)

一、引言 Holt-Winters是一种经典的时序序列预测方法&#xff0c;用于对具有季节性和趋势性的数据进行预测。在这种方法中&#xff0c;使用三个组件来建模时序数据&#xff1a;趋势&#xff08;Trend&#xff09;、季节性&#xff08;Seasonality&#xff09;和残差&#xff0…

项目实战——Qt实现FFmpeg音视频转码器

文章目录 前言一、移植 FFmpeg 相关文件二、绘制 ui 界面三、实现简单的转码四、功能优化1、控件布局及美化2、缩放界面3、实现拖拽4、解析文件5、开启独立线程6、开启定时器7、最终运行效果 五、附录六、资源自取 前言 本文记录使用 Qt 实现 FFmepg 音视频转码器项目的开发过…

k8s的helm

1、在没有helm之前&#xff0c;部署deployment、service、ingress等等 2、helm的作用&#xff1a;通过打包的方式&#xff0c;deployment、service、ingress这些打包在一块&#xff0c;一键部署服务、类似于yum功能 3、helm&#xff1a;官方提供的一种类似于仓库的功能&#…

空气净化器or宠物空气净化器?五款猫用空气净化器优质推荐!

作为一个养猫家庭的主人&#xff0c;每天都要面对清理猫砂盘的挑战&#xff0c;这种令人难以形容的气味实在让人难以忍受。尤其是家里有小孩和老人&#xff0c;他们可能会出现过敏性鼻炎等问题&#xff0c;而抵抗力较差的人更容易受到影响。此外&#xff0c;换毛季节到来时&…

Android状态栏布局隐藏的方法

1.问题如下&#xff0c;安卓布局很不协调 2.先将ActionBar设置为NoActionBar 先打开styles.xml 3.使用工具类 package com.afison.newfault.utils;import android.annotation.TargetApi; import android.app.Activity; import android.content.Context; import android.graph…

【算法】最优贸易(反向建图)

题目 C 国有 n 个大城市和 m 条道路&#xff0c;每条道路连接这 n 个城市中的某两个城市。 任意两个城市之间最多只有一条道路直接相连。 这 m 条道路中有一部分为单向通行的道路&#xff0c;一部分为双向通行的道路&#xff0c;双向通行的道路在统计条数时也计为 1 条。 C…

高防IP如何保护服务器

首先我们要知道什么是高防IP~ 高防IP是指高防机房所提供的ip段&#xff0c;主要是针对互联网服务器遭受大流量DDoS攻击时进行的保护服务。高防IP是目前最常用的一种防御DDoS攻击的手段&#xff0c;用户可以通过配置DDoS高防IP&#xff0c;将攻击流量引流到高防IP&#xff0c;防…

chrome提升搜索效率的快捷方法

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

缓解Spring Core的“Spring4Shell”零日漏洞

一、概述 2022年3月30日&#xff0c;安全社区广泛注意到Spring&#xff08;一种流行的开源Java框架&#xff09;爆出的一个漏洞。Akamai自适应安全引擎第一时间检测到基于该漏洞发起的零日攻击&#xff0c;为Akamai客户提供了保护。 该漏洞的披露时间线以及其他通过非正式方式…

仓储管理系统——软件工程报告(可行性研究报告及分析)①

可行性研究报告及分析 一、问题定义 1.1项目背景 随着社会的发展以及企业规模的扩大和业务的复杂化&#xff0c;仓库管理变得愈发重要。传统的手工管理方式已经导致了一系列问题&#xff0c;包括库存准确性低、订单处理效率慢等。为了提高仓库运作效率、降低成本并优化库存管…

深入MySQL窗口函数:原理和应用

在现代数据库管理系统中&#xff0c;窗口函数&#xff08;Window Functions&#xff09;已经成为处理复杂数据分析任务的关键工具。MySQL从8.0版本开始引入了对窗口函数的支持&#xff0c;这极大地增强了其在数据分析和报表生成方面的能力。本文将深入探讨MySQL窗口函数的原理、…

架构篇09:架构设计原则案例

文章目录 淘宝案例手机QQ案例小结 我们先复习一下架构设计的三条核心原则&#xff1a;合适原则、简单原则和演化原则。 我们在架构设计实践中&#xff0c;应该时刻谨记这三条设计原则&#xff0c;指导我们设计出合适的架构&#xff0c;即使是代表中国互联网技术最顶尖水平的 BA…

深度学习(5)---自注意力机制

文章目录 1. 输入与输出2. Self-attention2.1 介绍2.2 运作过程2.3 矩阵相乘理解运作过程 3. 位置编码4. Truncated Self-attention4.1 概述4.2 和CNN对比4.3 和RNN对比 1. 输入与输出 1. 一般情况下在简单模型中我们输入一个向量&#xff0c;输出结果可能是一个数值或者一个类…

利用STM32CubeMX和keil模拟器,3天入门FreeRTOS(2.0) —— 如何删除任务

前言 &#xff08;1&#xff09;FreeRTOS是我一天过完的&#xff0c;由此回忆并且记录一下。个人认为&#xff0c;如果只是入门&#xff0c;利用STM32CubeMX是一个非常好的选择。学习完本系列课程之后&#xff0c;再去学习网上的一些其他课程也许会简单很多。 &#xff08;2&am…