首页 > 其他分享 >再次梳理ISP的大致流程

再次梳理ISP的大致流程

时间:2025-01-10 14:29:33浏览次数:3  
标签:校正 传感器 流程 ISP 效果图 坏点 图像 梳理

目录

黑电平补偿(BLC)

镜头校正(LSC)

坏点校正(BPC)

去马赛克(Demosaic)

 去噪声(Denoise)

自动白平衡(AWB)

颜色校正(Color Correction)

伽马校正(Gamma Correction)

图像压缩

总结:


随着智能手机的普及,相机与我们的生活越来越紧密相关。在日常生活中,我们只需要轻轻按下手机上的拍照按钮,就能记录下美好时刻。那么问题来了:从我们指尖按下拍照按钮到一张色彩丰富的照片呈现在我们面前,这期间到底经历了什么?

当我们按下拍照按钮,传感器所输出的原始数据(raw data)实际与我们想象的大不相同。由于镜头和传感器的特性,这些原始图像通常噪声大、颜色暗淡、亮度低,并不符合人眼的视觉特性。因此,需要手机的图像信号处理器(image signal processor,ISP)对原始数据进行处理。

7a3a4a644580841bc9037f4d3d31bcc0.png

▲ ISP处理前效果图

a4c14b18c7fd16b91a9ef1c8ebb86174.png

▲ ISP处理后效果图

本文将介绍手机是如何一步步将原始数据转换为大家所看到的彩色图像的,即ISP处理流程。

2cbe0f0fd41ff21aa29753ac8c775405.png

▲ ISP流程图1

▲ ISP流程图2 

▲ ISP流程图3  

这些都是典型的ISP流程图,但实际上ISP可以不同的顺序实施这些步骤,甚至可能更加复杂,但是都会以某种方式完成这些处理模块。

ISP是Image Signal Processor的缩写,全称是影像处理器。在相机成像的整个环节中,它负责接收感光元件(Sensor)的原始信号数据,可以理解为整个相机拍照、录像的第一步处理流程,对图像质量起着非常重要的作用。

ISP(ISP PipeLine)的功能比较杂,基本上跟图像效果有关的它都有份。它内部包含多个图像算法处理模块,其中比较有代表性的是:扣暗电流(去掉底电流噪声),线性化(解决数据非线性问题),shading(解决镜头带来的亮度衰减与颜色变化),去坏点(去掉sensor中坏点数据),去噪(去除噪声),demosaic(raw数据转为RGB数据),3A(自动白平衡,自动对焦,自动曝光),gamma(亮度映射曲线,优化局部与整体对比度),旋转(角度变化),锐化(调整锐度),缩放(放大缩小),色彩空间转换(转换到不同色彩空间进处理),颜色增强(可选,调整颜色),肤色增强(可选,优化肤色表现)等。

图像产生过程:景物通过 Lens 生成的光学图像投射到 sensor 表面上, 经过光电转换为模拟电信号, 消噪声后经过 A/D 转换后变为数字图像信号, 再送到数字信号处理芯片( DSP) 中加工处理。所以,从 sensor 端过来的图像是 Bayer 图像,经过黑电平补偿 (black level compensation)、镜头矫正(lens shading correction)、坏像素矫正(bad pixel correction)、颜色插值 (demosaic)、Bayer 噪声去除、 白平衡(awb) 矫正、 色彩矫正(color correction)、gamma 矫正、色彩空间转换(RGB 转换为 YUV)、在YUV 色彩空间上彩噪去除与边缘加强、色彩与对比度加强,中间还要进行自动曝光控制等, 然后输出 YUV(或者RGB) 格式的数据, 再通过 I/O 接口传输到 CPU 中处理。

黑电平补偿(BLC)

在理想情况下,没有光照射的像素点其响应值应为0。但是,由于杂质、受热等其它原因的影响,传感器存在着暗电流,使得没有光照射到的像素点也会产生响应。

72c30193305e0ce3e9f32ebe7dc3ffe1.png

▲ 黑电平补偿前效果图

5da7692234fa48edf99cdfd82f6e7a5f.png

▲ 黑电平补偿后效果图

黑电平(Black Level)是用来定义图像数据为0时对应的信号电平。为减少暗电流对图像信号的影响,我们需要找到黑电平,并从已获得的图像信号中减去黑电平,从而获得一个更高对比度的图像。

镜头校正(LSC)

由于镜头本身的物理性质,传感器捕获的图像会表现出中心亮度高、边缘亮度低的特点。为了输出一个亮度均匀的图像,需要对图像进行镜头阴影(Lens Shading)校正。

校正的方法是根据一定的算法计算每个像素对应的亮度校正值,从而补偿周边衰减的亮度。通常,镜头校正方法有二次项校正、四次项校正等。

8284563f0eb141fd15ae0301c80bf3de.png

▲ 镜头校正前效果图

96590291df4fe08ec804b70de80525f6.png

▲ 镜头校正后效果图

坏点校正(BPC)

由于传感器可能存在部分缺陷像素,导致一些像素点输出信号不正常,出现白点或黑点,也就是坏点。同时,随着传感器老化,也可能会出现更多的坏点。因此,需要对坏点进行修复。

坏点修复方法通常有两种:一种是自动检测坏点并自动修复,另一种是建立坏点像素链表进行固定位置的坏点修复。

0f5b64c0bbf5db93d2e89978416d9de6.png

▲ 坏点校正前效果图

c0cbd849de29423fcea78f336e57150e.png

▲ 坏点校正后效果图

去马赛克(Demosaic

因为传感器只能感知光的强度,而不能直接感知光谱信息。因此,需要在传感器前加上滤光板来选取波段。但是,如果每个像素点都同时感知RGB三个分量,则需要三块滤光板,这样不仅成本高,而且难度大。因此,通常采用Bayer型的色彩滤波阵列(Color Filter Arrays,CFA)来获取场景的光谱信息。

e2369f60a375a1cbbd16732a9859e09b.png

Bayer型CFA

83b26b40f3d4986f191b898f6e8ed9bb.png

传感器感光示意图

从上面的示意图可见,每个像素只能探测一个通道的光信息,所以理想的Bayer图是一个较为昏暗的马赛克图。然而,为了获得彩色图像,需要计算出每个像素缺失的其它两个通道的响应值,即进行颜色插值处理。通常,经典处理方法包括最近邻域法、Bilinear插值、Cubic插值等。

 去噪声(Denoise

光照强度和传感器是产生噪声的主要因素。由于手机传感器的尺寸远小于普通相机,手机拍摄所产生的噪声会更多,所以需要更强的去噪能力。同时,当信号经过ADC时也会引入噪声。因此,这些都会使得图像质量变差。通常,经典的去噪算法包括均值滤波、中值滤波、高斯滤波等。

不同ISP的去噪模块可能会在不同的环节进行,但去噪原理没有本质不同。

af9d6dc41558528fa966f201f3056038.png

▲ 去噪前效果图

cfe97383cb0a24d320f6e69012426fef.png

▲ 去噪后效果图

自动白平衡(AWB)

白平衡是ISP中的一个重要模块。白平衡的主要目标就是在不同环境下,准确还原场景中的中性色,让其接近人眼感知的色貌;这里不多做介绍。

4de30134c487f946e1843240dfa18c0d.png

▲ 白平衡处理前效果图

22775708aec4e9586c27b4522a6e0afd.png

▲ 白平衡处理后效果图

颜色校正(Color Correction

在校正完白平衡后,需要进行彩色的校正。因为人眼对可见光的频谱响应度和半导体传感器频谱响应度之间存在差别,故而得到的颜色RGB值会存在偏差,因此,必须对颜色进行校正。通常,可用一个3x3的颜色变化矩阵来进行颜色校正。

伽马校正(Gamma Correction)

人眼与相机的感光特性不同。为了让图像与人眼感知的色貌相符合,需要将相机采集的图像进行伽马校正;这里不多做介绍。

ddfc552460fbf47594bc369236b7097c.png

▲ 人眼与相机的感光特性

图像压缩

最后,为了减小图像占用的存储空间,通常会将图像数据进行压缩,丢弃那些肉眼无法识别的信息,再用一些编码技术来提高信息利用率。其中,最常用的编码格式当然就是JPG 格式了。

总结:

本文介绍了相机在使用传感器记录拍摄景物的光学信号后进行的常见处理流程。可见,整个ISP处理流程非常复杂。在我们点击拍照按钮时,手机中的ISP芯片实际正在飞速地运转。也正是得益于这项成熟的技术,我们可以在瞬间记录下美好生活。

除了以上提到的,ISP中还有许多其它模块,如HDR、自动曝光控制 (AEC)、锐化等,这些模块都对最终成像结果产生了重要的影响。

标签:校正,传感器,流程,ISP,效果图,坏点,图像,梳理
From: https://blog.csdn.net/m0_72053187/article/details/145009776

相关文章

  • python系列:python whisper语音转文本
    pythonwhisper语音转文本pythonwhisper语音转文本PythonWhisper语音转文本实现流程1.准备工作2.导入必要的库3.将语音文件转换为适合识别的格式4.语音转文本整体流程示意图状态图代码解释总结pythonwhisper语音转文本PythonWhisper语......
  • 【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第
    【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到appstore完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app背景介绍接第四篇提交了安卓商店后,需要等待审核结果,但是目前苹果上架我们......
  • 【2025最新】渗透测试是什么?怎么分类?测试流程(超详细)是什么?
    一、渗透测试是什么?渗透测试是一种模拟黑客攻击的方法,通过对系统的弱点进行测试,以发现系统可能存在的安全漏洞。渗透测试可以帮助组织了解其系统的安全性,并采取必要的措施来增强系统的安全性。二、渗透测试怎么分类?(一)外部渗透测试和内部渗透测试。1.外部渗透测试:这种......
  • [20250109]dbms_xplan.display_cursor+peeked_binds无法查看绑定变量值.txt
    [20250109]dbms_xplan.display_cursor+peeked_binds无法查看绑定变量值.txt--//在我使用自己写的dpc.sql脚本中我会加入peeked_binds参数查看绑定变量值,但是有时候会遇到无法查看的情况。--//以前自己很少关注这个细节,应该有别的途径获取绑定变量值,最近在优化一条sql语句正好遇到,......
  • MySQL 知识梳理
    目录1数据库1.1数据简单原理图1.2使用命令行窗口[连接MYSQL](https://so.csdn.net/so/search?q=%E8%BF%9E%E6%8E%A5MYSQL&spm=1001.2101.3001.7020)数据库1.3Mysql三层结构1.4SQL语句分类1.5创建、查看、删除和备份恢复数据库√2.Mysql数据类型......
  • 发那科FANUC机器人A06B-0652-B212电机维修基本流程
    发那科FANUC机器人以其卓越的性能和可靠性赢得了广泛的认可。然而,就像其他任何机械设备一样,长时间的运行和复杂的工作环境都可能使伺服电机面临维修的需求。为了确保您的发那科FANUC机器人A06B-0652-B212电机始终保持在最佳状态,发那科伺服电机维修服务显得尤为重要。一、发那科FA......
  • 深度剖析淘宝 API:《从接入到实战的全流程技术指南》
    目录淘宝详情接口概述商品信息获取与展示用户体验优化与转化率提升数据监控、分析与优化调整     1.接口定义与功能淘宝详情接口是淘宝开放平台提供的一种API接口,用于获取商品详细信息。通过调用该接口,可以获取商品的标题、价格、图片、描述、规格等......
  • 【AIGC-ChatGPT进阶提示词指令】AI美食助手的设计与实现:Lisp风格系统提示词分析
    引言在人工智能助手的应用领域中,美食烹饪是一个既专业又贴近生活的方向。本文将详细分析一个基于Lisp风格编写的美食助手系统提示词,探讨其结构设计、功能实现以及实际应用效果。提出你的菜系,为你分析,并生成图片卡片提示词在最下方效果图系统架构设计核心角色定......
  • 产品创新为什么需要MVP流程
    01什么是MVP? 最近很多共创力客户在参加公开课或者现场咨询服务时,提到一个比较多的问题是:如何快速地打造产品原型?并得到市场的验证?尤其像美的、TCL、海信、格力、小米等电子电器类企业,产品迭代更新的周期较短,很多产品半年迭代升级一次,如工业设计、产品系列化设计、产品的性能等......
  • SAP 采购-生产-销售-月结 流程
    采购流程参考:MM采购生产流程参考:物料分类账实操销售流程参考:SD销售具体有关的细节都在对应的博文里面有讲解到,这里我们只做整个流程的整合,如果存在问题,还请提出共同交流。一、创建物料TCODE:MM01创建一个标准价格控制原材料和一个移动平均价格控制原材料和两个成品物料。......