Color Banding的个人记录
Index
- 概念
- 导致Banding的原因
- 处理方法
- Dithering
- DNN大法
简单记录个人的调研结果和想法, 可能不准确
概念
Color Banding (wiki)中文常称为色彩分层, 色彩断代, 色带等, 是图像处理中常见的一种artifact. 表现为颜色亮度本应均匀过渡的区域, 出现人眼可识别的边界.
导致Banding的原因
Banding出现的根本原因是色深不足, 在经过如色调调整, 图像/视频编码等处理步骤后, 更容易出现. 目前看到的会引发banding的处理包括:
- Inverse tone mapping
inverse/reverse tone mapping的是把一般为8位sRGB的LDR图像, 转换为HDR图像, 以在HDR设备上显示. 显然, 这种低位宽到高位宽的映射很容易造成banding. - Tone mapping
Tone mapping一般是指在相机ISP中, 将高比特位的图像(10/14/16 bit)的数据变换为8bit的图像, 或者也可以叫HDR到LDR的变换. Tone mapping是非线性的, 有时会对某亮度区间做大幅度拉伸(如提亮暗部), 这些区域有可能会出现banding. - 图像增强
图像增强一般存在对亮度, 色调, 对比度的调整, 会造成banding. - 去噪
噪声本身有抑制banding的效果. 噪声去除的过干净会容易使人观察到banding.
实际中对一张图像的处理会包含上述多个步骤. 例如, 相机ISP可能会对raw做多次去噪, 全局/局部tone mapping. 此时banding可能就会比较严重.
处理方法
看到的方法大致分为两类, 一类是对图像加噪, 一类是直接构造训练对, 用网络学. 还没详细研究具体算法, 此处仅列了少数几篇, 搜索时关键字可以是debanding, decontouring, contouring removal, color dequantization等. 另外在HDR, inverse tone mapping, 图像修复等方向也会有相关内容.
Dithering
简单来说就是找到banding区域, 对其加入一些噪声.
- [arXiv 2009] Adaptive Debanding Filter
- [arXiv 2102] CAMBI: Contrast-aware Multiscale Banding Index
- 图像处理之 Dithering
DNN大法
不是Low Level任务里的主流方向, 有影响力的论文比较少
- [TCSVT 2022] Fast Blind Decontouring Network
- [arXiv 2110] Deep Image Debanding
- [TIP 2019] Deep Reconstruction of Least Significant Bits for Bit-Depth Expansion
Color Banding的个人记录相关推荐
- GPU Gems 1: Chapter 22. Color Controls
全屏后处理的颜色调整算法: 亮度: float3 NewColor = OriginColor * fBrightness; 对比度:float3 NewColor = (OriginColor ...
- Real-time rendering笔记
Chapter 1 Introduction 1. 实时渲染---图像在计算机上快速的显示 2. 15fps --- 实时渲染的基本fps. 72fps以及更大的fps观察者无法发现其中的差别 60f ...
- mysql里hdr是什么的缩写_HDR 是什么?有哪些具体介绍?
原标题:HDR 是什么?有哪些具体介绍? HDR,高光动态渲染,概念我就不多做解释了. 为什么要HDR? 我们一般的显示器只能显示8位色,就是灰度从黑(0)到白(255)共有_256_个等级. 但是, ...
- TensorFlow基础3-机器学习基础知识(解析法实现一元线性回归、多元线性回归)
记录TensorFlow听课笔记 文章目录 记录TensorFlow听课笔记 一,机器学习基础 1.1一元线性回归 1.2解析法实现一元线性回归 1.3解析法实现多元线性回归 二,代码实现一元/多元回 ...
- 探索 MongoDB--转
原文地址:https://www.ibm.com/developerworks/cn/opensource/os-mongodb4/index.html?mhq=mongodb&mhsrc=i ...
- JavaScript的常用工具汇总
以下是基于jquery写的关于JavaScript处理的工具类 /*** 通用类* @type {{}}*/ var Public = {//页容量LIMIT: 10 }; /*** 发送POST方式 ...
- java paint 怎么用_java如何使用paint方法画图
详细内容 本篇文章的主要内容是关于在Java里用paint方法画图,具有一定参考价值,感兴趣的朋友可以了解一下,希望能对你有所帮助. java使用paint方法画图 需要继承JFrame类来画窗口 = ...
- 利用梯度下降法求解一元线性回归和多元线性回归
文章目录 原理以及公式 [1]一元线性回归问题 [2]多元线性回归问题 [3]学习率 [4]流程分析(一元线性回归) [5]流程分析(多元线性回归) 归一化原理以及每种归一化适用的场合 一元线性回归代 ...
- 解析法实现一元线性回归、多元线性回归以及数据模型可视化操作
目录 [1]解析法实现一元线性回归 python列表实现 利用Numpy实现 利用TensorFlow实现 数据和模型可视化 [2]解析法实现多元线性回归 利用Numpy实现 需要用到的NumPy数组 ...
最新文章
- .NET4.0并行计算技术基础(8)
- 【Android】显示Emoji表情字符
- 后台开发经典书籍--代码大全
- Linux学习之系统编程篇:管道设置为非阻塞及管道的读写行为
- php识别中文编码并自动转换为UTF-8
- mac java myeclipse_Myeclipse mac版-Myeclipse 2015 Mac版下载 V2015免费版-PC6苹果网
- Linux常用命令笔记2---文件管理2
- 形式语义学-JLU-ZHH
- myeclipse 7.5 for linux and windows
- mathtype安装教程
- html框架自动居中,Pandas DataFrame.to_html方法,让自动生成的html中的表格整体居中...
- 计算机网络 网络安全问题概述
- c语言常用延时程序,新手常用单片机延时程序
- webug 4.0 第四关 POST注入
- Kafka的ISR收缩机制
- angular 4 表单
- frontpage php,在 FrontPage 2003 中编辑 PHP的问题_在 FrontPage 2003 中编辑 PHP 及乱码问题 - 软件教程 - 格子啦...
- 视频教程-大牛带你全面剖析Python高频面试真题-Python
- 元旦倒计时(JS计时器)
- 武汉旅游地图(zz)
热门文章
- 谷歌中国宣布启用简短域名g.cn
- 移动H5 iPhone audio没有声音(声音不同步)问题的解决方式
- python之简介及入门
- 借贷记账法笔记1(资成费借加贷减,收负所借减贷加)
- python定义一个dog类 类属性有名字_66-分析一下Dog类这个例子-构造函数和属性
- 关于mac键盘部分数字键和字母键失灵,无法使用的问题的解决方案
- pointer-events用法
- Android程序员二本出身、逆袭网易、一路孤独、一路狂欢,源码解读-别再说你不知道HashMap原理
- 计算机关闭显示器和睡眠有什么区别,win10系统关闭屏幕和睡眠的区别
- WIN7wifi显示无法承载