【阅读笔记】沙尘图像线性颜色校正A fusion-based enhancing approach for single sandstorm image

一、沙尘图像背景

沙尘图像处理面临的主要问题是色彩偏移和图像细节模糊,在去除偏色后利用改进的去雾算法对沙尘图像进行处理,但是由于沙尘和雾霾形成的原理不同,沙尘的颗粒半径接近25µm,远远大于雾霾(0.01 ~ 1µm)和雾(1 ~ 10µm),因此除雾算法模型不适用,容易出现色彩失真的问题。

由于沙尘天气下空气中悬浮的沙尘颗粒对蓝色光的吸收和对红色光的反射,沙尘暴图像一般呈现黄色,因为黄色光的穿透性和散射性最大,沙尘图像RGB三通道的直方图分布不均衡,同时存在分布较为集中,这使得图像整体看起来偏黄和偏红。沙尘环境下对视频图像采集的影响首先是色彩的偏移。

二、线性颜色校正

本文关注颜色校正部分,沙尘图的三通道直方图具有偏移性,要调整三通道的偏移性,以往的研究方法是通过对直方图进行建模,这样虽然能解决这个问题,但是也有可能会导致色彩失真等问题。

《A fusion-based enhancing approach for single sandstorm image》的作者对沙尘暴图像进行预处理,采用基于统计方法的颜色校正方法去除色差,使图像呈现自然的外观。

O m a x c = O m e a n c + μ ∗ O v a r c O m i n c = O m e a n c − μ ∗ O v a r c O_{max}^{c} =O_{mean}^{c}+\mu *O_{var}^{c} \\ O_{min}^{c} =O_{mean}^{c}-\mu *O_{var}^{c} Omaxc=Omeanc+μ∗OvarcOminc=Omeanc−μ∗Ovarc

其中,O表示输入图像,c表示RGB通道, O m e a n c O_{mean}^{c} Omeanc表示均值, O v a r c O_{var}^{c} Ovarc表示均方差, μ \mu μ是控制图像饱和度的参数,论文中参数为3。

O m a x c O_{max}^{c} Omaxc表示色偏最大估计值, O m i n c O_{min}^{c} Ominc表示色偏最小估计值。对每个颜色通道做归一化处理,得到:

O C R c = O c − O m i n c O m a x c − O m i n c ∗ 255 O_{CR}^{c} =\frac{O^{c}-O_{min}^{c}}{O_{max}^{c}-O_{min}^{c}}*255 OCRc=Omaxc−OmincOc−Ominc∗255

其中, O C R c O_{CR}^{c} OCRc是颜色校正后的数据分量。

三、论文后续处理

3.1 亮度改善

颜色校正不能解决光的吸收和散射导致的亮度不均匀问题,后续在HSV域对V分量使用gamma校正改善亮度问题、或者使用直方图均衡处理V通道提高图像对比度。

V ′ = 255 ( V 255 ) 1 γ V'=255(\frac{V}{255})^{\frac{1}{\gamma}} V′=255(255V)γ1

3.2 权重融合

sharpness weight map、chromatic weight map、prominence weight map三种权重结合进行图像融合,这里不展开了。

四、文章效果

对比算法都是拉伸图像动态范围,没有处理沙尘图像偏色问题

五、仿真效果

原理简单,直接复现,颜色校正效果还行,计算还比较简单,左图原始图,右图是仿真结果图

测试代码链接


我的个人博客主页,欢迎访问

我的CSDN主页,欢迎访问

我的GitHub主页,欢迎访问

我的知乎主页,欢迎访问

相关推荐
RainCity1 天前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
LinXunFeng9 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
闪闪发亮的小星星13 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq13 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
阿米亚波13 天前
【Windows】QEMU 启动 openEuler aarch64/arm64 架构系统 + 离线软件源
linux·windows·经验分享·笔记·架构·arm
自传.13 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding
.千余13 天前
【C++】模板进阶全解:非类型参数|全特化|偏特化|分离编译完全指南
开发语言·c++·笔记·学习·其他
自传.13 天前
尚硅谷 Vibe Coding|第二章 AI编程工具生态 学习笔记
笔记·学习·ai编程·尚硅谷·vibe coding
秋波。未央13 天前
Java Agent 开发 · Day 1 学习笔记(含作业完整标准答案)
java·笔记·学习
中屹指纹浏览器13 天前
2026指纹浏览器字体指纹、字体渲染偏差检测与全维度虚拟字体池搭建方案
经验分享·笔记