ISP有感自发

news2025/5/15 10:36:48

一、黑电平

由于传感器,即便在无光的情况下,依然会产生微小的暗电流,这些暗电流可能是噪点会影响后期的调试。因此,我们便将这些电流处理为0,成为纯黑的颜色。可以在源头消除这些误差。

如何矫正黑电平:

在其中有个ob区域(Optical Black Region),这个区域是不感光的,但是也会接收到黑电平。因此,可以把有效区域的值减去ob区的值,这样就可以得到矫正后的值。

  1. 获取OB区数据:从传感器读取遮蔽区域的像素值(如每行的前若干列)。

  2. 计算基准值:取OB区所有像素的均值或中位数(避免异常值干扰)。

  3. 矫正图像数据

    矫正后像素=原始像素−OB区基准值矫正后像素=原始像素−OB区基准值
  4. 限幅处理:确保结果不小于0(避免负值)。

二、ISP的调试思路

1、明确ISP的调试顺序。

因为靠前的会影响到靠后顺序的模块。不同平台会不同,一定要问清楚对应的厂商。

如上是一个比较简单的 ISP pipeline,各家平台会有些差异,但其实大概的流程原理都是差不多的,可能会多些小的功能模块,及做一些数据转换处理,比如raw域去噪前,因为raw数据比较暗,可能会加一条曲线把暗部调亮一点,有助于去噪的处理。
简单过一下如上的流程图,可以分为3个模块来看,sensor 出来的是 bayer 格式的raw 数据,中间经过黑电平矫正(blc),去除暗电流、镜头阴影矫正(lsc),去掉边缘暗角及color shading、接着经过坏点矫正(dpc),去除sensor中的动静态坏点。
再经过 Demosaic 处理后,输出RGB格式的数据,接着会经过时/空域的去噪处理、白平衡(awb)、颜色矩阵矫正(ccm)、gamma的处理,后面会转换成YUV格式的数据输出,再经过自动曝光(ae)、降彩噪(CNR)、锐化等的处理,最后经过编码输出显示出来。

2、特征标定

特征标定是ISP调试的第一步,目的是通过实验室环境下的标准化测试,提取传感器模组的物理特性,并生成一组静态参数。

  • BLC(Black Level Correction,黑电平校正):消除传感器暗电流引起的基线噪声。

  • LSC(Lens Shading Correction,镜头阴影校正):补偿镜头边缘亮度衰减和颜色不均匀性。

  • Noise Profile(噪声特性分析):量化传感器在不同光照条件下的噪声分布,为降噪算法提供依据。

  • Gamma(伽马校正):调整图像对比度,使输出符合人眼感知特性。

  • AWB(Auto White Balance,自动白平衡):校正色温,确保白色物体在不同光照下呈现中性色。

  • CCM(Color Correction Matrix,颜色校正矩阵):补偿传感器颜色滤波阵列(CFA)的色偏。

  • CAC(Chromatic Aberration Correction,色差校正):修正镜头色散导致的颜色边缘偏移。

这些参数本质上是传感器模组的 "物理指纹",反映了其硬件特性(如感光能力、噪声特性、镜头缺陷等)。标定得到的参数是 静态的,即在特定实验室环境下(固定光照、色温、标定板等)生成的参数,理论上 不随场景变化。它们是后续在线调试的基准。如果不矫正好,会影响后续的模块。在标定完成后,ISP会进入 在线调试(Tuning) 阶段,即根据实际场景动态调整参数(如动态降噪强度、局部对比度增强等)。但这一阶段需要 基于准确的标定参数。

3、不同功能模块调试

亮度/对比度相关的模块,如 gamma、ltm、gtm、aeb、色彩相关模块,如 ccm、awb、gamma、blcc、清晰度相关模块,如 ae、lsc、2d/3d nr、demosaic、dpc

4、在线调试

 ①在线调试的第一步是AE。

        因为很多模块都是基于曝光的,AE里面会涉及gain值和噪点,如果AE不确定,其他模块的噪点也不确定,调试也是没有意义的。

②降噪和清晰度调试。

        接着可以是降噪和清晰度模块的调试,降噪过大肯定是会对清晰度有损失,调试时是需要平衡的, 还有调试时要注意是raw域还是yuv域的处理(如果是raw域锐化或去噪过大,可能就会放大噪声或者损失清晰度,你后续yuv域的去噪或锐化就做不出来了),另外清晰度不够时,要思考是否是 demosaic 模块细节没做出来,或者raw域去噪太强,导致细节损失了,而不是一味的去调整锐化强度。解释如下:

        在低光场景(ISO 3200),需 适度放松降噪强度 以保留暗部细节,同时 降低锐化强度 避免放大噪声;而在明亮场景(ISO 100),可 增强降噪和锐化 以提升清晰度。

③ RAW域与YUV域处理的差异

RAW域处理
  • 输入数据:传感器输出的原始RAW数据(Bayer格式,未插值)。

  • 关键操作

    • 降噪:优先在RAW域进行 基础降噪(如时域降噪、空域滤波),因为此时噪声尚未被后续处理(如Demosaic)放大。

    • 锐化:RAW域锐化需谨慎,避免在插值前破坏Bayer模式的结构(可能引入伪色或混叠噪声)。

风险

  • RAW域降噪过强:会抹除高频细节(如纹理、边缘),导致后续Demosaic无法恢复。

  • RAW域锐化过度:可能放大噪声或产生伪色,后续YUV域处理难以修正。

YUV域处理
  • 输入数据:经过Demosaic、色彩校正、Gamma后的YUV格式数据(亮度Y + 色度UV分离)。

  • 关键操作

    • 降噪:针对YUV分量的特性进行 精细化降噪(如亮度通道降噪、色度通道降噪分离)。

    • 锐化:在Y通道(亮度)进行边缘增强,或在UV通道抑制色噪。

  • RAW域:侧重 基础降噪(抑制固定模式噪声、时域噪声),避免过度处理。

  • YUV域:侧重 精细化降噪(如色度降噪、亮度通道自适应滤波)和 可控锐化

④色彩模块

色彩相关的模块可以单独去调影响不大,但ccm调整的过饱和时,会出现色噪。一般整体的偏色都是白平衡偏了,图像中某个颜色不对可以调整ccm,一般情况下不建议手动去调整ccm,因为这肯定是会影响到其他颜色的。另外gamma的调整会对颜色有影响(具体为啥会有影响,我后续文章会在具体总结)。

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

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

相关文章

web 自动化之 PO 设计模式详解

文章目录 一、什么是 POM二、如何基于 POM 进行自动化框架架构?1、base 层封装2、pageobjects 层封装3、TestCases 层封装 三、元素和方法分离&数据分离1、哪些部分可以进行分离2、示例代码 四、总结 一、什么是 POM POM page object model 页面对象模型 WEB 自…

NVMe简介1

它分为两部分,这里是第一部分。 NVM Express(NVMe)是一种高性能、可扩展的接口协议,用于通过PCI express(PCIe)总线,实现主机软件与NVM设备之间的通信。目前,由于NVMe SSD相比于SATA…

【python机器学习】Day 25 异常处理

知识点: 异常处理机制debug过程中的各类报错try-except机制try-except-else-finally机制 在即将进入深度学习专题学习前,我们最后差缺补漏,把一些常见且重要的知识点给他们补上,加深对代码和流程的理解。 借助ai写代码的时候&…

数学建模初等模型应用

一、目的 掌握初等模型的建模方法,对简单的初等模型能借助Matlab工具软件进行辅助建模、求解和检验。 二、实验内容与设计思想(设计思路、主要代码分析) 1、预测鱼的质量 (1)设计思路:使用线性回归模型预测鱼的质量…

【MCP教程系列】SpringBoot 搭建基于 Spring AI 的 SSE 模式 MCP 服务

原文地址:https://developer.aliyun.com/article/1662946 在当今快速发展的AI技术背景下,如何高效地集成模型能力成为开发者关注的重点。本文将手把手教你如何基于 Spring AI 搭建支持 SSE(Server-Sent Events)模式的 MCP 服务 相…

利用散点图探索宇航员特征与太空任务之间的关系

利用散点图探索宇航员特征与太空任务之间的关系 import matplotlib.pyplot as plt import numpy as np import pandas as pdfrom flexitext import flexitext from matplotlib.patches import FancyArrowPatchplt.rcParams.update({"font.family": "Corbel&quo…

Qwen集成clickhouse实现RAG

一、RAG概要 RAG(Retrieval-Augmented Generation,检索增强生成) 是一种结合了信息检索技术与语言生成模型的人工智能技术。旨在通过检索相关文档来增强大模型的生成能力,从而提高预测的质量和准确性。RAG模型在生成文本或回答…

Excel分组计算求和的两种实现方案

文章目录 背景样例数据方案一、函数求和实现步骤缺点 方案二、数据透视表实现步骤优点 背景 在Excel文档中,经常会进行数据的求和计算,可使用不同的方式实现,记录下来,方便备查。 样例数据 已有商品销量信息,包含销…

LLM定制新路径:微调与上下文学习的博弈与融合

在当今人工智能的浪潮中,大型语言模型(LLMs)已成为推动行业进步的关键力量。无论是自然语言处理、文本生成还是多模态应用,LLMs都在展现着它们的强大能力。然而,当我们将这些强大的模型应用于特定的下游任务时&#xf…

嵌入式中深入理解C语言中的指针:类型、区别及应用

在嵌入式开发中,C语言是一种基础且极为重要的编程语言,其中指针作为一个非常强大且灵活的工具,广泛应用于内存管理、动态数据结构的实现以及函数参数的传递等方面。然而,尽管指针的使用极为常见,很多开发者在掌握其基本使用后,往往对指针的深入理解还不够。本文将深入分析…

香港维尔利健康科技集团成都区域运营中心投入使用,西南市场战略全面提速

近日,香港维尔利健康科技集团正式宣布,其位于四川成都的西南区域运营中心已全面建成并投入使用。该中心将集设备调配、技术支持、客户服务、运营管理及数字健康平台维护于一体,成为集团在中国内地智慧医疗战略版图中的关键枢纽,对…

STM32CubeMX HAL库 串口的使用

1.配置 2.开启中断后,生成代码 3.串口的接收 1).开启空闲中断接收 __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); // 关键步骤:启用空闲中断 2). 启动接收 调用 HAL_UARTEx_ReceiveToIdle_IT 启动异步接收,可以使用…

flutter 视频通话flutter_webrtc

flutter 比较热门的库 flutter_webrtc | Flutter package agora_rtc_engine | Flutter package 我使用的是flutter_webrtc 下面是官方推荐的demo库 GitHub - flutter-webrtc/flutter-webrtc-demo: Demo for flutter-webrtc 其中 https://demo.cloudwebrtc.com:8086/ 已经停…

Babylon.js学习之路《四、Babylon.js 中的相机(Camera)与视角控制》

文章目录 1. 引言:为什么相机是 3D 场景的“眼睛”?1.1 相机的核心作用1.2 常见相机类型概览 2. 相机基础参数解析2.1 通用属性2.2 相机坐标系 3. 详解常用相机类型3.1 自由相机(FreeCamera)3.2 弧形旋转相机(ArcRotat…

【Redis实战篇】秒杀优化

1. 秒杀优化-异步秒杀思路 我们来回顾一下下单流程 当用户发起请求,此时会请求nginx,nginx会访问到tomcat,而tomcat中的程序,会进行串行操作,分成如下几个步骤 1、查询优惠卷 2、判断秒杀库存是否足够 3、查询订单…

Trae IDE:AI深度集成的智能开发环境

(以高效人机协作重塑编程体验) 概述 Trae IDE(发音 /treɪ/)是一款深度集成AI能力的现代化开发工具,结合传统IDE的完备功能与前沿AI技术,提供智能问答、代码自动补全、跨文件编程及AI Agent驱动的自动化开…

【大模型】AI智能体Coze 知识库从使用到实战详解

目录 一、前言 二、知识库介绍 2.1 coze 知识库功能介绍 2.2 coze 知识库应用场景 2.3 coze 知识库类型 2.4 coze 知识库权限说明 2.5 coze 知识库与记忆对比 2.6 知识库的使用流程 三、知识库创建与使用 3.1 创建知识库入口 3.2 创建文本知识库 3.2.1 上传文件 3.…

【springcloud学习(dalston.sr1)】服务消费者通过restTemplate来访问服务提供者(含源代码)(五)

该系列项目整体介绍及源代码请参照前面写的一篇文章​​​​​​【springcloud学习(dalston.sr1)】项目整体介绍(含源代码)(一) 一般情况下,我们远程调用服务,可以用restTemplate来进行http请求的访问。接…

打破边界,智评未来:AI如何重塑学科交叉融合的评价体系?

目录: 引言:当“学科孤岛”遇上“创新浪潮”透视现状:学科交叉融合的“热望”与“冰壁”他山之石:国际交叉融合模式与评价的“镜与灯”AI赋能:重构学科交叉评价的内涵、要素与方法论 4.1. 基本内涵:从“知识叠加”到“价值涌现”4.2. 评价要素:超越“单点指标”的“网络…

ULVAC C30HMVRT系列冷冻泵和超捕集器压缩机组 安装、操作、维护和故障排除说明 含电路图

ULVAC C30HMVRT系列冷冻泵和超捕集器压缩机组 安装、操作、维护和故障排除说明 含电路图