手机Camera理论

闪光灯(Flash)

手机而言,其主要分为氙气灯与LED灯两种,由于LED闪光灯具有功耗较低、体积较小的优势,作为手机闪光灯的主流选择。另外,现在很多手机采用了双色闪光灯的策略,双色闪光灯可以根据环境的需要调节两灯发光的强度,可以更为逼近自然光的效果,相比单闪光灯强度有所提升,另外色温也较普通双闪光灯要更为准确,总体来讲效果较好

图像处理器(ISP)

  • 需要做的便是去掉暗电流噪声。

CCD/CMOS而言,通常并不是全部都用于感光,有一部分是被专门遮挡住,用于采集在并未感光的情况的暗电流情况,通过这种方式消除掉暗电流带来的噪声。

  • 偏差进行修正

对于镜头的各处的折射率不同的属性,会随着视场角的慢慢增大,能够通过镜头的斜光束慢慢减少,从而产生了图像中心亮度较边缘部分要高,这个现象在光学系统中叫做渐晕,很显然这种差异性会带成像的不自然,所以ISP接下来需要对于这种偏差进行修正,而修正的算法便是镜头阴影矫正,具体原理便是以图像中间亮度均匀的区域为中心,计算出个点由于衰减带来的图像变暗速度,从而计算出RGB三通道的补偿因子,根据这些补偿因子来对图像进行修正。

  • 马赛克处理

由于感光器件针对光线都是采用红、绿、蓝三基色进行分别采集而成的,所以数据一般会呈现出类似马赛克的排布效果,此时便需要完成去马赛克处理,基本原理便是通过一定的插值算法,通过附近的颜色分量猜测该像素所缺失的颜色分量,力争还原每一个像素的真实颜色效果,从而形成一个颜色真实的图像数据,而此时的数据格式便是RAW数据格式,即最原始的图像数据。

  • 降噪处理

当感光器进行光电转换的过程中,每一个环节都会产生一定的偏差,而这个偏差到最后便会以噪声的方式表现出来,所以接下来需要对于这个无关信息–噪声进行一定的降噪处理,当前主要采用了非线性去噪算法,比如双边滤波器,在采样时不仅考虑了像素在空间距离上的关系,同时还加入了像素间的相似程度考虑,从而保持了原始图像的大体分块,对于边缘信息保持良好。

  • 白平衡进行处理

进一步降低了噪声之后,ISP需要对于图像白平衡进行处理,由于不同场景下的外界色温的不同,需要按照一定的比例调整RGB分量的值,从而使得在感光器中,白色依然是呈现白色的效果。白平衡可以采用手动白平衡,通过手动调整三个颜色分量的比例关系,达到白平衡的目的,而更一般地采用了自动白平衡的处理,这里ISP就承担着自动白平衡的使命,通过对当前图像进行分析,得到各颜色分量的比例关系,进而调整其成像效果。

  • 调整颜色误差

调整好图像白平衡后,需要进一步地调整颜色误差,这里的误差主要由于滤光片各颜色块之间存在颜色渗透所导致,一般在Tunning过程中会利用相机模组拍摄的图像与标准图像相比较得到的一个矫正矩阵,ISP利用这个矩阵来对拍摄的图像进行图像颜色矫正,从而达到还原拍摄场景中真实颜色的目的。

手机的相机系统可以分为两个部分,一个是相机模组,一个是图像处理器ISP

相机模组 :镜头、对焦马达、滤光片以及感光器(Sensor)

镜头:一般为了消除色差都会采用多个透镜的组合,其材质多是玻璃和塑料的组合,贵手机玻璃成像质量高,塑料低端机,同时其中,镜头主要存在以下几个参数:

  • 视场角FOV,该参数表明了通过镜头可以成像多大范围的场景,一般FOV越大就越能看到大范围的景物,但是有可能会带来严重的畸变,通常使用后期的畸变矫正算法来修正大FOV所带来的畸变。
  • 焦距F ,规定所有平行于透镜主轴的光线汇聚到的那点叫做焦点,而焦点到透镜中心的距离便是这里的焦距,一般焦距越大,镜头的FOV也就越小。而越短的焦距,往往FOV越大
  • 光圈值f,通过镜头焦距与实际光圈的直径比值来指定,该值越小,说明进光量也就越大,手机镜头一般采用f/2.0的固定光圈。

对焦马达:这部分在手机中主要采用的是音圈马达(VCM),而为了方便调整镜头,一般会将整个镜头集成在马达模组中,主板通过I2C总线传输指令,进而驱动马达的移动调整镜头达到对焦或者变焦的目的,这里我们简单介绍下音圈马达。

音圈马达:在电子学中被称为音圈电机,之所以被称为音圈,是因为其实现原理与扬声器类似,都是在一个永久磁场内部,通过改变马达内线圈的直流电流大小,来控制弹簧片的拉升位置,进而带动镜头上下运动,达到对焦或者变焦的目的,由于具有着高灵敏度与高精度的特点,使之成为手机的主流对焦组件。

在手机端,对于音圈马达的使用一般分为两种模式,一种是变焦,一种是对焦,两者原理和目的都不一样。

  • 变焦: 通过马达调整镜头组中某一个透镜的移动,进而改变整个镜头的焦距,引起视场角的变化,从而实现对于景物的放大缩小的目的,这种方式便是我们常说的光学变焦,这种变焦手段的优点是在放大景物的过程中,不会损失图像细节,但是缺点也很明显,受到体积的限制,无法进行大范围的光学变焦,所以手机厂商一般采用光学与数字变焦的组合方式,达到高范围的变焦目的。
  • 对焦: 通过音圈马达直接前后移动整个镜头,使物体的像平面与感光器的感光平面重合,进而得到一幅清晰的图像,这种方式正是对焦的过程。其目的是为了获得清晰的图像。

滤光片,该部分会针对光线做进一步处理,主要有两个目的:

  • 过滤红外线: 由于感光器会感受到部分不可见的红外线,进而干扰后面的图像处理效果,所以需要通过滤光片,将这部分红外线过滤掉,只让可见光透过。
  • 修正光线: 光线通过透镜之后,并不都是平行垂直射向感光器的,还有很多并非直射的光线,很显然如果不对其进行拦截,会对感光器产生一定的干扰,所以滤光片利用石英的物理偏光特性,保留了直射的光线,反射掉斜射部份,避免影响旁边的感光点,进一步提升成像效果。

感光器:光电转换

手机端的感光器主要有CCD与CMOS,但是由于成本较高,体积较大,CCD在手机端已经用的不多了,CMOS成为了这个领域的主流感光器,手机端的CMOS依然采用了三层结构,微透镜/滤光片/感光层,具体定义如下:

  • 微透镜层主要用于扩展单个像素的受光面积。
  • 滤光片采用的事Bayer模式,类似与RGB模式,都是采用RGB几个颜色分量来分别度量每一个像素的三通道的灰度值,但是基于人眼对于绿色更为敏感的基本规律,Bayer模式进一步强调了绿色分量,从而将绿色分量分别定义了Gr以及Gb,用于更好地表达图像的色彩和亮度。
  • 感光层,用于将光子转换成电子信号,在经过放大电路以及模电转换电路,将其转换成数字信号。

其感光层的核心便是一个个感光二极管,每一个二极管边上都包含了一个放大器和一个数模转换电路。由于每一个感光元件都有一个放大器,虽然在一定程度上加快的速度的读取,但是却无法保证每一个放大器的放大效果一致,所以这种设计会带来可能的噪声。另外,由于CMOS在每一个二极管旁都加入了额外的硬件电路,势必会造成感光面积的缩小,所以这种设计会影响整体感光效果,这种设计被称为前照式,为了解决该问题,CMOS厂商推出了背照式设计,这种设计将感光像素与金属电极晶体管分别放置于感光片的两面,提高了像素占空比,增加了光线感应效率,增加了像素数量,改善了信噪比,极大的提升了成像效果。

相关术语英简

HDR High Dynamic Range Imaging 高动态范围成像

R-FPC Rigid-flexiable printed circuit 软硬结合板
FPC Flexiable printed circuit 软板
FF Fixed Focus 定焦
AF Auto Focus 自动对焦
RGB Red Green Blue 红绿蓝三色元
RGBW Red Green Blue White 红绿蓝白四像素
PDAF Phase Detection auto focus 相位对焦
2PD Dual phse detection auto focus 双像素相位对焦
AWB Auto white balance 自动白平衡
LSC Luminance shading correction 亮度均匀性校准
Color Shading Color Shading 色彩均匀性校准
BlemishBlemish 坏点脏污
Color filter Color filter 滤光片
Photo diode Photo diode 光电二极管
EIS Electrical image stable 电子防抖
FSI Frontside illuminated 前照式
BSI Backside illuminated 背照式
Holder Holder 马达与sensor间的结构件
IR filter Infrared filter 红外滤光片
BG Blue glass 蓝玻璃滤光片
FOV Field of view 视场角
F# F number 光圈
TTL Total track length 镜头机械总长度
EFL Effective focal length 焦距
MTF Modulation Transfer Function 调制传递函数
TV Distortion TV Distortion 畸变
CRA Chief ray angle 主光角
6P 6 plastic 6片塑胶镜片
IH Image height 像高
RI Relative illuminance 相对亮度
DOF Depth of field 景深
Barrel Barrel 镜筒
VCM Voice coil motor 音圈马达
B-D Bi-directional 中置马达
C/L Closed Loop 闭环马达
OIS Optical image stable 光学防抖
OTP Once time programmed 一次性烧录
CSI Camera Serial Interface 相机串行接口
MIPI Mobile Industry Processor Interface 移动产业处理器接口
CCI Camera Control Interface 摄像头控制接口,一般即是I2C接口
CSIPHYMIPI协议的物理层
CSID MIPI协议层的一部分,用于解码数据流
AFAuto Focus 自动对焦
AWB Auto White Balance 自动白平衡
AEC Auto Exposure Control 自动曝光控制
RoI AF Region of Interest AF感兴趣区域
FOV Field of View 视场角
HDR High-Dynamic Range 高动态范围图像
ZSL Zero Shutter Later 零延迟拍照(高通)
ZSD Zero Shutter Delay 零延迟拍照 (MTK)
PDAF Phase Detection Auto Focus 相位对焦
AWB Auto White Balance 自动白平衡
CCT Color Correction Table 色彩校正表
CCM Color Correction Matrix 色差校正矩阵
ISP Image Signal Processing 图像信号处理
Pre-ISP Pre-Image Signal Processing 前期图像信号处理
Post-ISP Post-Image Signal Processing 后端图像信号处理
VFE Video Front-End of Camera Firmware 视频前端
CAC Chromatic Aberration Correction 色差校正
SNR Skin Noise Reduction 皮肤降噪
CPP Camera Post Processing 后端处理
BLC Black Level Correction 黑白校正
LSC Lens Shading Correction 镜头校正
ACE Advanced Chroma Enhancement 色度校正
SCE Skin Color Enhancement 皮肤颜色增强
MCE Memory Color Enhancement 记忆色彩增强
CS Chroma Suppression 色度抑制
WNR Wavelet Noise Reduction 小波降噪
DPC Defective Pixel Correction 缺陷像素校正
ABF Adaptive Bayer Filter 自适应Bayer滤镜
RNR Radial Noise Reduction 边缘降噪
ASF Advanced Streaming Format 高级流格式
FIR Finite Impulse Response 有限搏动反应滤波器
IIR Infinite impulse response 数字滤波器
RDI Raw Dump Interface 原始数据转储接口
MDP The Modular toolkit for Data Processing 数据处理包
PLV Preferred Vendor List 首选供应商名单
DNNF Deterministic, decomposable Negation Normal form 确定、分解的非正常形式
CNF Composite Nonlinear Feadback 复合非线性反馈控制
ICL Image Component Library 图像编码层
OMX OpenMax 多媒体应用程序标准
ExIF 一种图像格式
AXI Advanced eXtensible Interface 片内总线
AMBA Advanced Microcontroller Bus Architecture 高级微控制器总线架构
ASD Auto Scene Detection 自动场景检测
AFD Auto Frequency Detection 频闪自动检测
IQ Image Quality 图像质量
ICL Image C-Codec Layer 图像编解码层
BIMC Bus Integrated Memory Controller 总线集成内存控制器
GCDB Global Component Database 全局组件数据库
QRD Qualcomm Reference Design 高通参考设计
SOF Start of Frame 帧开始
FD Face Detection 人脸检测
GIC Green Imbalance Correction 绿不平衡校正
MCTL Media Control 媒体控制
PVL Preferred Vendor List 首选供应商名单
DSP Digital Symbol Processing 数字符号处理
ADSP Application DSP 不需要AP处理简单数据
VPE Video Processing Engine 视频处理引擎
CMOS Complementary Metal Oxide Semiconductor 互补金属氧化物半导体
CCD Charge coupled device 电荷耦合器件
DSC Digital Still Camera 数码相机
DSLR Digital Single-Lens Reflex 数码单反
OLPF Optical Low-pass Filter 低通滤波器
SNR Signal Noise Ratio 信噪比
DR Dynamic Range 动态范围
DP Defect Pixel 缺陷像素
HDR High Dynamic Range 高动态范围
DENOISE 去噪
BPC/DPC Bad/Defect Pixel Correction 坏点补偿
HUE 色相
HSV Hue Saturation Value 色相、饱和度、灰度
RGB Red Green Blue 红绿蓝三原色
MONO SENSOR 黑白传感器
ISP Image Signal Processor 图像信号处理器
GAMMA 伽马曲线
CONTRAST 对比度

black_level_lock
黑电平补偿是否锁定当前值,或者可以自由更改。
color_correction_aberration_mode
色差校正算法的运算方式。
color_correction_gains
适用于拜尔原料色通道的白平衡。
color_correction_mode
模式控制选择图像数据从传感器的原始颜色为线性sRGB色彩转换。
color_correction_transform
颜色的变换矩阵,利用从传感器RGB颜色空间到输出线性sRGB色彩空间变换。
control_ae_antibanding_mode
所需的摄像装置的自动曝光算法的antibanding补偿设置。
control_ae_exposure_compensation
自动曝光(AE)目标图像亮度的调整。
control_ae_lock
是否自动曝光(AE)当前锁定到其最新计算值。
control_ae_mode
照相机设备的自动曝光程序所需的模式。
control_ae_precapture_trigger
不论相机设备将触发Precapture计量序列时,处理这个请求。
control_ae_regions
用于自动曝光调整的计量区域列表。
control_ae_target_fps_range
自动曝光程序可以调整捕获帧速以保持良好曝光范围。
control_af_mode
当前是否启用自动对焦(AF),以及它设置为什么模式。
control_af_regions
用于自动对焦的计量区域列表。
control_af_trigger
照相机设备是否会触发这个请求的自动对焦。
control_awb_lock
无论是自动白平衡(AWB)是目前最新的计算值锁定。
control_awb_mode
无论是自动白平衡(AWB)是目前设置的颜色变换领域,其照明的目标是什么。
control_awb_regions
用于自动白平衡光源估计的测光区域列表。
control_capture_intent
信息到相机设备3A(自动曝光,自动对焦,自动白平衡)例程,目的是为了捕捉,帮助相机设备决定最佳3A策略。
control_effect_mode
特殊色彩效果。
control_enable_zsl
允许摄像装置使零快门延迟模式的要求与android.control.captureintent = = still_capture。
control_mode
3A模式(自动曝光、自动白平衡、自动对焦)控制例程。
control_post_raw_sensitivity_boost
捕获原始传感器数据后输出图像的附加灵敏度提升量。
control_scene_mode
当前活动场景模式的控件。
control_video_stabilization_mode
视频稳定是否有效。
造物主edge_mode
边缘增强操作模式。
flash_mode
照相机设备闪光灯控制所需的模式。
hot_pixel_mode
热像素校正的操作模式。
jpeg_gps_location
生成映像GPS元数据时要使用的位置对象。
jpeg_orientation
jpeg图像的定位。
jpeg_quality
最后jpeg图像的压缩质量。
jpeg_thumbnail_quality
jpeg缩略图压缩质量。
jpeg_thumbnail_size
嵌入式jpeg缩略图解析。
lens_aperture
理想透镜孔径,作为透镜焦距与有效孔径的比值。
lens_filter_density
透镜中性密度滤光器所需的设置。
lens_focal_length
所需的透镜焦距;用于光学变焦。
lens_focus_distance
所需的距离对焦点平面,从镜头前的表面测量。
lens_optical_stabilization_mode
设置照相机设备在拍摄图像时是否使用光学图像稳定(稳定)。
noise_reduction_mode
噪声抑制算法的运算方式。
reprocess_effective_exposure_factor
在发送处理前,应用程序处理对原始输出帧施加曝光时间增加因子的数量。
scaler_crop_region
要捕获的传感器读出的所需区域。
sensor_exposure_time
每个像素的曝光时间。
sensor_frame_duration
从帧曝光开始到下一帧曝光开始的持续时间。
sensor_sensitivity
在处理之前应用于传感器数据的增益量。
sensor_test_pattern_data
一个像素[ R,g_even,g_odd,b ]提供测试模式android.sensor.testpatternmode是当solid_color。
sensor_test_pattern_mode
当启用时,传感器发送一个测试模式,而不是从相机进行真正的曝光。
shading_mode
应用于图像数据的镜头阴影校正质量。

statistics_face_detect_mode
 

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MTK平台上的camera驱动教学课程旨在教授学员有关MTK平台上如何编写、安装和调试camera驱动程序的知识和技能。在这门课程中,学员将学习如何使用MTK平台提供的相应工具和接口来开发和优化camera驱动,以实现更好的图像质量和性能。 课程的内容包括以下几个方面: 1. 理论知识:学员将了解摄像头驱动的基本原理和工作原理,包括硬件架构、设备驱动接口和底层算法等。 2. 驱动开发环境搭建:学员将学习如何在MTK平台上搭建合适的开发环境,包括操作系统、编译器和调试工具等。 3. 驱动编写:学员将学习如何编写MTK平台上的camera驱动程序,包括设备初始化、图像采集和处理等功能的实现。 4. 驱动安装与调试:学员将学习如何将开发好的驱动程序安装到MTK平台上,并进行调试和优化,以确保驱动的稳定性和性能。 5. 实践项目:学员将完成一个实际的项目,如编写一个简单的camera应用程序或实现某种特定的图像处理算法,以应用所学知识并提升实践能力。 通过这门课程,学员将掌握MTK平台上camera驱动开发的基本技能,能够独立完成camera驱动的编写、安装和调试工作,并具备进一步深入研究和优化的能力。这对于从事手机软件开发、图像处理等领域的工程师和研究人员来说,将是一门非常实用和重要的课程。 ### 回答2: MTK平台的Camera驱动教学课程是针对使用MTK芯片的开发人员设计的一门课程。该课程旨在教授学员有关MTK平台中Camera驱动的基础知识、开发技巧和调试方法。 首先,课程将介绍MTK平台和其特点,帮助学员了解MTK芯片及其应用领域。接下来,课程将重点讲解Camera驱动的原理和工作机制,涵盖Camera传感器的工作原理、图像采集和处理流程等方面的知识。 课程还将介绍Camera驱动的开发环境和工具,如MTK平台上的Camera HAL层和相应的调试工具。学员将学会如何配置和编译Camera驱动,以及如何使用调试工具进行驱动的调试和性能优化。 除了理论知识的讲解,课程还将通过实例演示和实践操作帮助学员掌握Camera驱动的开发技巧。学员将有机会参与实际的Camera驱动开发项目,通过实践来加深对课程知识的理解和应用能力。 总结起来,MTK平台的Camera驱动教学课程旨在提供一套系统化的学习资源,帮助学员全面了解和掌握MTK平台上的Camera驱动开发。通过学习这门课程,学员将能够独立进行MTK平台上Camera驱动的开发和调试工作,从而为MTK芯片应用的开发和优化提供支持。 ### 回答3: MTK平台CMOS摄像头驱动开发是一门与软硬件结合紧密的技术课程。首先,学习者需要熟悉MTK平台的基本知识,包括芯片结构、嵌入式系统以及Linux操作系统的基本原理。其次,学习者需要了解摄像头工作原理和常用的摄像头传感器类型,例如CMOS和CCD传感器。在掌握这些基础知识后,学习者可以开始学习MTK平台上的摄像头驱动开发。 在开发摄像头驱动时,学习者需要掌握如何通过MTK平台提供的驱动接口与摄像头硬件进行通信。这包括配置摄像头的分辨率、帧率、曝光时间以及白平衡等参数。此外,还需要了解如何处理摄像头的数据传输和处理,例如图像的压缩、旋转、镜像等操作。 在学习过程中,学习者可以通过阅读相关的文档和资料,参考MTK平台提供的示例代码来加深理解。同时,实际动手开发和调试也是非常重要的,可以通过连接MTK平台开发板和摄像头来调试和验证自己的驱动代码。学习者还可以通过与其他开发者交流和分享经验,提升自己的开发能力。 总之,MTK平台摄像头驱动开发是一门需要结合软硬件知识的综合性课程,通过学习掌握相关的理论知识和实践经验,可以帮助学习者深入了解摄像头驱动的工作原理和开发流程,提高自己的技术水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值