一.概念介绍

大多数数码相机使用单个传感器阵列加上彩色滤光片捕捉图像,数据通过在黑白 cmos 图像传感器的基础上,增加彩色滤波结构和彩色信息处理模块获得图像的彩色信息, 再对该彩色信息进行处理, 就可以获得色彩逼真的彩色图像。通常把彩色图像传感器表面覆盖的滤波称为彩色滤波阵列(CFA)。虽然有很多不同的cfa模式可用,但是最常见的还是bayer格式。经过在ISP pipeline中cfa处理后得到bayer数据,一般bayer格式有rggb,gbrg/grbg,bggr,rccb等。

为了实现图像从Bayer模式到全彩色的图像的重建, 需要对图像中的每一个像素点进行插值, 利用其周围像素点的色彩值来估计出缺失的另外两个色彩值, 最终得到一个每个像素点包含红、绿、蓝三个像素值的全彩色图, 这个过程就叫做Demosaic。

图1 Cfa滤波

二、常见的异常现场或者算法评价关注点

2.1 拉链效应

由于插值不是沿着边缘方向进行的,导致插值后在水平或垂直方向上出现有一些像素点有规律的间隔分布, 就称为拉链效应。

图2 拉链效应

2.2 伪彩色

高频分量在图像插值时易引起高频混叠。例如用镜头对准一个分辨率测试卡,当 sensor 表面没有 OLPF 时,在分辨率的高频部分容易出现伪彩。

2.3 伪细节

由于sensor 感光特性及受噪声等影响,会出现不属于原始图像的细节,影响主观感受,称之为“伪细节”

2.4 crosstalk

由于sensor 可能会因为特殊角度的光线入射而产生Crosstalk,在demosaic插值时产生方格或其他类似pattern。形成这些pattern 的根本原因就是因为临近像素值之间Gr 和Gb 值不一致。

2.5 常用评价指标

常用的评价算法的客观指标有:Psnr,Cpsnr,S-SIELAB等。该客观评价一般用于学术界内算法的评估。

三、Demosaic 算法Introduction

去马赛克算法在将图像从bayer域转换到rgb域的同时,需要尽量将上述的异常现象减弱到最低(算法评价)。一般会结合有方向插值与无方向插值的方法,减弱异常现象的同时还需还原图像的细节。去马赛克算法是ISP算法中最基本,最重要的图像算法之一,并且该算法在isppipeline的位置比较靠前,对之后的算法模块影响较大,所以该模块至关重要。

简单的插值技术,例如最近邻或双线性插值可以应用于去马赛克的问题。然而,此类方法会忽略边缘结构和通道间的相关性,从而导致颜色伪彩和图像模糊。一种值得注意的早期去马赛克方法(Hamilton),在初始化G分量时,使用红色和蓝色像素的二阶导数,这个想法成为许多后续算法的基本组成部分。

后续有作者提出使用颜色差异(color deference)的方差来决定采用哪个方向进行插值。DFPD算法提出在水平和垂直方向上执行插值,然后根据沿每个方向的梯度总和做出harddirection决策。

DLMMSE算法从沿水平和垂直方向计算 (G-R) 和 (G-B) 的颜色差异开始。然后,这些计算被视为对实际色差的噪声估计,并使用线性最小均方误差框架将它们优化组合。绿色通道插值完成后,使用原颜色差异信号和简单的双线性插值填充缺失的红色和蓝色通道像素.

GBTF解决了DLMMSE 算法中的一些限制。首先,由于其方向性,DLMMSE 算法仅使用目标像素的领域(与目标像素共享同一列或行的像素)的子集来找出每个方向对色差计算的贡献程度。尽管该解决方案在其自己的域中是最优的,但未考虑的相邻像素可能提供可以改进色差估计的附加信息。因此对于给定本地窗口内的每个相邻像素都包含在决策过程中。使用颜色差异的梯度来计算每个方向的权重。

更多算法大家可以参照相关的论文。

可关注公众号进行技术交流

ISP浅谈-Demosaic相关推荐

  1. 浅谈几种区块链网络攻击以及防御方案之其它网络攻击

    旧博文,搬到 csdn 原文:http://rebootcat.com/2020/04/16/network_attack_of_blockchain_other_attack/ 写在前面的话 自比特 ...

  2. 浅谈 DDoS 攻击与防御

    浅谈 DDoS 攻击与防御 原创: iMike 运维之美  什么是 DDoS DDoS 是英文 Distributed Denial of Service 的缩写,中文译作分布式拒绝服务.那什么又是拒 ...

  3. 浅谈当前电信检测宽带共享的机制

    本人在深圳,家里用的是中国电信的宽带,之前一直带的是两台电脑,后来把笔记本带回家后就出现了各种无法打开网页的问题.究竟是怎么回事? 时间得推回毕业后的那段时间,某一晚,两台台式机还在正常使用的时候.再 ...

  4. 浅谈“双平面”冗余架构

    浅谈"一网双平面"网络冗余架构 理论上来看:双平面架构的优势-冗余程度极高,可以实现高强度的互备分流效果. 如图所示,假设这是一个大型企业集团自己组建的广域骨干网络架构图,采用了双 ...

  5. 浅谈软件定义网络SDN

    浅谈软件定义网络SDN 前言 学习主要内容 一.SDN简介 二.SDN的三个主要特征 转控分离 集中控制 开放接口 三.SDN的工作原理 SDN网络架构的三层模型 SDN网络架构下的三个接口 SDN基 ...

  6. 浅谈宽带卫星通信系统

    浅谈宽带卫星通信系统 时间:2009-02-26 14:50:40 来源:数字通信世界 作者: 将卫星通信与因特网相结合正在成为通信业界的一个热点.自1994年以来,陆续出现了许多雄心勃勃的空中因特网 ...

  7. 浅谈TCP协议与DDOS

    本节内容 1.TCP协议浅谈 1.HTTP连接 2.SOCKET原理 3.TCP介绍 4.TCP连接的三次握手与四次挥手 2.DDOS 1.什么是DDOS 2.攻击原理 3.防护方法 4.其他攻击方式 ...

  8. 浅谈PCI Express体系结构(二)

    PCI总线的信号定义 PCI总线是一条共享总线,在一条PCI总线上可以挂接多个PCI设备.这些PCI设备通过一系列信号与PCI总线相连,这些信号由地址/数据信号.控制信号.仲裁信号.中断信号等多种信号 ...

  9. 浅谈Linux media framework

    基本概念 通过调试camera过程中对接触的v4l2,意外发现了Linux一个不是很起眼的子系统--Linux media framework,那它存在的意义是什么? 节选一段来自Linux源码中的文 ...

  10. Java开发的B/S程序生成并向客户端发送excel文件:浅谈MIME

    Java开发的B/S程序生成并向客户端发送excel文件:浅谈MIME 1.定义 MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型.是设定 ...

最新文章

  1. ajax使用异步问题
  2. 使用Qt的多线程编程
  3. MOSS 2010:Visual Studio 2010开发体验(15)——LINQ to SharePoint
  4. maven远程发布jar
  5. Swiftfox:极速的冲浪体验
  6. [转载] Java序列化的几种方式以及序列化的作用
  7. android屏幕录制鸿洋,Android之自定义View笔记(鸿洋)
  8. ffmpeg视频处理
  9. 在 Mac 上右键单击的方法
  10. 虚拟机装xp 架设服务器,VMware安装虚拟机系统ghost xp sp3步骤图解
  11. php在线文件编辑管理器 在线文本查看PHP插件
  12. 两个华为路由器实现MESH组网,WIFI信号无缝漫游
  13. Exchange高危0day漏洞 -- 直接拿下你的域控和服务器 -- 立即行动!CVE-2021-26855
  14. DirectX加速不可用、已禁用的解决方法(转载)
  15. CEO修炼手册:识人、识人还是识人
  16. win10无法访问ubuntu共享文件夹(smbd出错排查)
  17. Nacos注册中心和配置中心
  18. 【漏洞复现-maccms-命令执行】vulfocus/maccms-cve_2017_17733
  19. 360浏览器浏览网页字体模糊的解决方法
  20. mac电脑上网突然变得很慢

热门文章

  1. 使用Postman进行get、put、post端口测试
  2. 空间参考(一)---墨卡托投影、高斯-克吕格投影、UTM投影的异同
  3. plsql导出表结构到excel_plsql基本操作 复制表 导出表 导出表结构 及其导入
  4. 移远 NB-IOT_BC95_AT命令集
  5. python按键精灵是哪个库_按键精灵命令库的介绍和使用
  6. 《第一本无人驾驶技术书》扫描版PDF分享
  7. Navicat 注册机破解问题
  8. python100例详解-Python 经典算法100及解析(小结)
  9. killer网卡ubantu下不能wifi联网的问题(据说就是intel网卡)(心酸血泪史)(不升级内核)
  10. 【Android工具】更新Yandex网页剪辑插件测试!可以安装PCchrome插件的手机浏览器!...