当前位置: 首页 > news >正文

isp 图像处理--DPC坏点矫正

一,Bayer pattern简要介绍

我们平时所看到的彩色图像每个像素有三个分量组成,分别为红绿蓝。而目前广泛用到的成像传感器为CMOS传感器,其输出的数据格式为每个像素点只有一个颜色分量,一般称为Bayer Pattern数据格式如下图所示

  • 坏点定义

在图像局部区域内,看起来明显过亮、过暗的点即可称为坏点

注意:坏点的值不一定非得是0或者255,比如全零的局部块中间有个128的像素点,此时应该认为是坏点

  • 坏点来源
  1. CMOS图像传感器,在生产环节不能保证每个点都是百分之百好的一般都会或多或少出现一些异常的点
  2. 感光元器件在使用过程中,温度,湿度,光强电流等发生变化时,也会一定程度上对传感器造成损坏,出现异常;

  • 坏点分类

   静态坏点和动态坏点

  • 坏点去除位置

一般是在bayer域去除,如果不在bayer域并且是isp pipe靠前的位置,经过bayer 域去噪(Bayer NR)和Demosaic(cfa 插值) 后,会极大的放大坏点的影响范围,如图下图所示

  1. bayer 域2x2的坏点簇,经过Demosaic后会变成6x6的坏点簇,极大的影响图像是的视觉体验,并且这个6x6坏点簇如果想在rgb/yuv域去除,基本很难做到,或者需要花费比raw很多倍的代价才能做到
  2. 如果BNR/Demosaic算法滤波核太大,demosaic 后6x6的坏点簇可能会更大
  3. 故一般去坏点一般在ISP Pipe的最前端(或者比较靠前的位置)
  • DPC算法的评价指标
  1. 能够去除所有坏点
  2. 不能损失图像细节
  3. 不能使原本正常点,变成不正常的点
  • 坏点算法开发流程
  1. 确定算法去除坏点的能力:

比如去除单坏点,或者2x2坏点簇,或者2x2中含3个坏点等,这个可以通过sensor Spec来确定,或者通过经验来确定;

  1. 检测坏点:

主要确定当前点是不是坏点,这也是此算法最核心的东西,也有很多种方案,比如:

  1. ,对于单坏点,一定是局部最大值(最小值),只需找到局部最值,然后与局部均值做差值,与设置的阈值作比较即可
  2. 对于坏点簇,这个不同的公司由不同的算法,这里就不在详述

注:实际开发过程中需要注意坏点在图像中的位置,比如平坦区,边缘,角点位置等等

  1. 矫正坏点:

    这一步就简单很多了,比如用均值滤波,中值滤波,带方向的滤波等都是可以的

  • 效果图

 

http://www.xdnf.cn/news/1408321.html

相关文章:

  • 张柏芝亮相林家谦演唱会 再次演绎《任何天气》
  • 秋招笔记-8.31
  • 【ACP】2025-最新-疑难题解析- 练习一汇总
  • 矩阵待办ios app Tech Support
  • 【机器学习】-torch相关知识01
  • IO_hw_8.29
  • 8.31【A】scons,带宽,语义semantic,读论文颜色规范,系统运行命令
  • 在Ubuntu系统上安装和配置JMeter和Ant进行性能测试
  • 【数学史冷知识】关于行列式的发展史
  • kkfile一键部署-ubuntu版
  • 云计算与服务器
  • 大模型参数量与计算量(FLOPs)估算方法
  • 【Flink】并行度的设置
  • 从 JDK 8 到 JDK 17
  • dify docker知识库topk最大值参数配置
  • Linux 文件夹权限也会导致基本命令权限缺失问题
  • Langflow 框架中 Prompt 技术底层实现分析
  • 第2.4节:大模型之LLaMA系列(Meta)
  • 项目跑起来之前的那些事
  • shell的原理和Linux的指令效果演示
  • Rust 登堂 之 枚举和整数(八)
  • K8s学习笔记(一)——
  • 试试 Xget 加速 GitHub 克隆仓库
  • React前端开发_Day12_极客园移动端项目
  • Windows中如何将Docker安装在E盘并将Docker的镜像和容器存储在E盘的安装目录下
  • IDM(Internet Download Managerv 6.38)破除解版下载!IDM 下载器永久免费版!提升下载速度达5倍!安装及使用
  • Google 的 Agent2Agent 协议 (A2A):带示例的指南
  • Java试题-选择题(26)
  • Swin Transformer基本原理与传统Transformer对比图解
  • Lua基础知识精炼