转载之色调映射

一、概述

        虽然HDR 图像有较大的动态范围,能更细致地反映真实场景,但他的缺点也很明显。一是同尺寸的数据比低动态范围图像大,需要更大的存储空间与传输带宽。二是难以输出,目前大多数显示器、打印机等图形输出设备的动态范围要比普通的高动态范围图像小得多。。因此,色调映射技术在这样的背景下,就显得尤为重要。HDR 图像处理的一个重要方面就是色调映射(Tone Mapping),即压缩其动态范围至输出设备的动态范围以下,使高动态范围HDR图像能够适应低动态范围LDR显示器。

        色调映射实质上是一个信息压缩过程。需要将HDR图像的色度,亮度,动态范围等,全部映射到LDR图像的标准范围内。在这个过程中,不能简单使用线性映射,因为这样会丢失原始图像的一些重要信息,例如全局与局部的对比度和重要的细节等,最重要的一点是,简单线性映射产生的图像相比于自然界中的场景,会出现严重的失真情况。因此,色调映射技术需要经过深入的研究与精密的设计,才能使得产生的图像在视觉效果上与实际场景中的效果一致。如何选取有效的信息成分,使低动态图像能保持人类对真实场景的视觉感受,是色调映射应遵循的基本原则。

        色调映射方法可以被分为两大类:

  1. 全局色调映射(The global tone mapping),它用一个空间不变映射函数来映射图像中所有的像素点;
  2. 局部色调映射(The local tone mapping),它根据局部的像素统计量和局部的像素上下文关系,来调节映射函数。

        全局色阶重建算法在对图像进行动态范围变换时, 图像的每个像素点使用同一个变换函数, 是一对一的映射关系。这类算法的优点是算法简单,运行速度快。但是由于统一不变的变换曲线不能自适应图像的不同区域, 会导致结果在细节、亮度以及颜色上的损失。

        局部色阶重建算法是针对图像的每个像素点所在不同的区域进行不同的变换,因此有可能出现在同一幅图像中由于位置不同, 照度值相同的两个像素点映射后得到不同的新的值, 或者是照度不同的两个像素点映射后得到相同的新的值。这类算法的优点是通过色调映射算法处理后能产生效果更好的图像。其缺点就是计算量大, 容易产生“光晕” 效应。

        色调映射的技术难点如下:

  • (1)消除图像中高对比度边缘周围出现的光晕:在局部色调映射算法中,当待处理的像素点的邻域选择过大时,由于对比度过度增强,往往容易产生光晕现象。
  • (2) 保持映射图像中的细节:图像中的细节往往集中在中等亮度区域,色调映射算法在保持这部分细节的同时,往往使得图像中较暗与较亮区域的细节过度压缩,使得其难以呈现或完全消失。
  • (3) 在局部算法中选择合适的支持域尺寸:在局部色调映射算法中,需要选择合适的支持域(局部映射区域)来计算图像的局部特征。支持域尺寸选择过大或过小,都不能反应局部区域的真实特征,容易造成映射图像的失真。

二、全局色调映射(global tone mapping)

        全局色调映射算法或者称为空域不变算法,它是采用同一个变换函数对HDR 图像中的所有像素进行相同的映射,使HDR图像的动态范围被压缩到显示设备的动 态范围内。常见的变换曲线主要有指数变换或者对数变换。

        由于全局映射是对图像中 所有的像素做相同的映射,因此这种映射算法计算简单且具有较高的时间效率和空间 效率,但是这种固定类型的变换曲线不能根据像素邻域的局部特征进行自适应变换, 因而会导致图像在色度以及细节等方面有一定损失,出现极暗或者极亮区域,图像整 体明暗层次不佳,局部对比度不高,映射之后的图像与真实的场景在视觉上有较大差异。

         线性映射函数是最简单的空域不变算法,它是对图像中的每一个像素进行相同的 变换,从图像F到图像F^的映射如式:

        其中Tclamp表示阈值。

        对于HDR图像而言,阈值设置得过高,图像的整体亮度就会偏暗,图像细 节就会显现不清;阈值设置过低,图像过多的像素会被设置为卜从而导致图像 的亮度走样,图像整体就会发生偏差。设置不同的闽仇时,就会产生不同的效果:

1、基于S型曲线

        Huang等人根据人类视觉系统对图像的感知变化是一种趋向于S型曲线的方 程,进而提出了使用S型曲线方程来压缩图像的动态范围。S型曲线方程如下: 

           通常a,b,c,d的取值为1。 S值域范围在[0,1]之间。它的曲线如下图所示:

        从S函数曲线图分析可知,当x的取值在[-5,5]之间的时候,函数的 值变化较大。因此利用S曲线方程可以得到平滑的处理效果,并将图像的亮度范围压缩至[0,1 ]之间,使其能够在低动态范围显示设备上正常显示。

        基于S曲线方程的色调映射算法主要思想是根据图像的平均对数亮度值作为参 数对图像进行全局压缩,平均对数亮度值计算如式所示: 

        其中Lw(x,y)是图像的亮度,\delta是一个较小的整数,主要是为了防止求出的亮度趋近于负无穷。获得平均亮度之后,对图像动态范围进行压缩:

        Lw为图像的像素值。经过该算法映射后的图像能够有比较好的视觉效果,保留图像的大部分细节,但是图像的对比度有一定的下降,并且存 在图像颜色的失真。 

2、基于自适应对数

        人类视觉系统对亮度的感知曲线趋近于对数变换函数,因此在理论上通过对 数变换对HDR图像进行动态范围压缩获得质量较高的图像,该对数模型如式 所示: 

        

        其中Lw为像素值。上式是根据人眼视觉模型提出 得简单色调映射算法,处理效果不佳,在此基础上有学者作了进一步改进, 提出了新的对数方程。下式中基数的选择直接影响图像对数变化后 对比度的效果,选择的不同基数,图像对数变换后的效果也不同。 

         

        exposure为相机的曝光时间。Ldmax为显示设备所能显示的最大亮度。式中基数是根据图像中侮个像素的亮度值进行自动调节的,且基数的取值范 围在2-10之间变化,算法采用的自适应的对数基数方程如下式所示。  

        式子中参数b为用户可调节参数,对明亮和昏暗影响比较显著,根据实验参数I, 一般可取的值为(0.5,1)。 自适应对数色调映射算法是根据人眼视觉模型提出的一种全局色调映射算法,处 理之后图像符合人眼的视觉模型曲线,整体明亮程度适中,但是图像丢失了一些细节信息。  

3、基于直方图

        

最后一种基于数字图像处理的算法是直方图校准算法,在这种算法中,也加入了一些人类视觉感知系统的理论应用。Larson将传统的直方图均衡技术进行了修改和调整,使它能够用于色调映射技术上,Larson同时也在其映射算法中模拟了人类视觉系统的一些特性。首先,这种方法要计算输入图像的灰度直方图I,并在对数域内使用二进制数 nbin 表示。Larson通过实验证明,最多需要100个二进制数就足够准确地表示结果,此时,累计直方图P表示如下:

         其中x是二进制数,这里需要注意的是累计直方图是一个积分形式,而灰度直方图是它在适宜尺度下的导数:

        随后,灰度直方图需要均衡化,传统的均衡化对比度方法如下:

         这种操作因为只利用了很少的点进行区域内的色度域压缩并用最中间的点进行拓展,所以会引起图像中一大片区域的对比度失真,因此他们使用了一种直接的方法,可以用下式表示:

        

         综合上面的三个式子,我们可以得到:

        

         上式可以简化为:

         因此,当上式的条件无法满足时,对比度的失真就产生了,解决方法就是截断f(x),不过这种操作需要迭代的进行,以避免改变T和c。这种算法引入了一些模拟人类视觉系统的机制,例如对比度、锐度和颜色敏感度等,这些都是受启发于Ferwerda之前的工作。

        总的来说,这种色调映射算法提供了一种改进HDR图像的直方图均衡方法,可以提供效果更好的动态范围压缩以及良好的整体对比度。

三、局部色调映射(local tone mapping)

        局部色调映射又叫做空域变化算法,它与空域不变算法不同的地方在于,空域不变算法不考虑像素位置,像素值的映射是单一映射,而空域变化算法需要根据像素 邻域的局部特征将图像划分多个区域,然后根据各个区域的相关特征进行色调映射, 像素值的映射可能是一对多或多对一的映射。

        空域变化算法相对于空域不变算法的优 势在于它是根据图像局部特征进行了色调映射,经过空域变化算法处理之后的图像不 仅亮度得到了压缩,同时还具有较好的视觉效果,保持了较高的局部对比度和细节信 息,因而图像的质量较高,但同时也增加时间复杂度和空间复杂度,并且图像中还会 出现光晕、虚假轮廓以及噪声等。

         空域变化算法是目前最常用的色调映射算法,它们通常是基于分层模型的算法, 这类算法模型如下图所示,首先将图像分解为高频分量、低频分量以及颜色分量, 然后对低频分量进行色调映射,最后合成这些分量得到映射后图像:

1、基于双边滤波

        2002 年,Durand 和 Dorsey 提出了一种基于双边滤波特性的色调映射算法,此算法通过对图像进行双边滤波,将图像分成基层和细节层,然后仅对基层进行色调映射,再将色调映射后的基层同细节层相加得到了压缩后的图像。因此,此算法不仅压缩了图像的动态范围,又保存了原始图像的边缘信息。

        Durand 算法的基本思想可用下图表述。首先将一副HDR 图像的灰度信息和色彩信息分开,形成一副灰度图(Intensity)和色域图(Chromaticity)。然后,对灰度图使用双边滤波将图像的细节信息分出来,得到细节层和基层,对基层进行色调映射后在结合分离出来的图像细节信息和色彩信息便可得到经Durand 算法色调映射后的图像。

双边滤波见数字图像处理——2D降噪 

        对于一副HDR 图像,若它有RGB 三个通道的分量,则可以通过如下公式得到HDR 图像的灰度图:

        然后对L 取对数,便可得到对数域下的灰度图,用LogL 表示,即:

        接下来对LogL 进行双边滤波,得到Log 域下的基层图像,即:

        对Log 域下的基层图像取指数,将其转换回原域下的基层图像:

  

        再对Lbase 进行色调映射,得到色调映射后的基层图像为Ld 。然后还需要求出图像的细节层,可用如下公式求出:

        最后,将映射后的基层图像Ld、细节层图像Ldetail 以及色域图相结合,便可得到经压缩后的HDR 图像,可通过如下公式得到映射后的彩色图像: 

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

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

相关文章

Windows OpenGL 图像色调

目录 一.OpenGL 图像色调调节 1.原始图片2.效果演示 二.OpenGL 图像色调调节源码下载三.猜你喜欢 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 基础 零基础 OpenGL ES 学习路线推荐 : OpenGL ES 学习目录 >> OpenGL ES 特效 零基础 OpenGL…

【PHP】识别图片主色调

一、适用情景&#xff1a;如http://www.teapic.com/list.htm&#xff0c;根据颜色列出相应图片。 二、主程序及API解释&#xff1a; <?phpclass MajorColor {//参考颜色protected $_colors null;//容差protected $_tolerance 80;//忽略的颜色protected $_ignoreColors a…

色调列表

NamedNumericColor NameHex RGBDecimal LightPink浅粉红#FFB6C1255,182,193 Pink粉红#FFC0CB255,192,203 Crimson猩红 (深红)#DC143C220,20,60 LavenderBlush淡紫红#FFF0F5255,240,245 PaleVioletRed弱紫罗兰红#DB7093219,112,147 HotPink热情的粉红#FF69B4255,105,180 DeepPin…

图片调色学习

色相环 色相混合正红&#xff08;0&#xff09;正黄&#xff08;60&#xff09;&#xff0c;透明度为&#xff08;50%&#xff09;即红黄等比例混合橙色&#xff08;30&#xff09; (060&#xff09;/230 真实调整透明度混合出并不一定为两者均值的色相,需要选择不同的混合方法…

Seaborn--调色板(二)

调色板 颜色很重要 color_palette()能传入任何Matplotlib所支持的颜色 color_palette()不写参数则默认颜色 set_palette()设置所有图的颜色import numpy as np import seaborn as sns import matplotlib.pyplot as plt %matplotlib inline sns.set(rc{"figure.figsize&qu…

色温,色阶,色调,色调

色温 对于外拍人像来说&#xff0c;需要注意的问题很多&#xff0c;例如环境选择、模特的服装、发型、配用的道具、拍摄时的姿势以及使用的器材等等。但从技术角度来说&#xff0c;还有很多在拍摄时需要注意的地方&#xff0c;例如白平衡的控制、焦点选择、机内色彩的调整、锐…

“莫兰迪色系” 高级灰

“莫兰迪色系”指的是高级灰色调&#xff0c;不鲜亮&#xff0c;仿佛蒙上一层灰调&#xff0c;低调有内涵&#xff0c;舒缓雅致&#xff0c;略显冷静&#xff0c;有一种性冷淡风&#xff0c;”高级灰“的梗就是出自这里。

10种舒服的颜色及配色推荐

前言 有一些配色的建议分享给大家。 颜色 RGB值 该部分RGB值来自 科学上最令人舒服的十种颜色&#xff08;RGB 19CAAD 8CC7B5 A0EEE1 BEE7E9 BEEDC7 1.R 25 G 202 B 173 2. R 140 G 199 B 181 3.R 160 G 238 B 225 4.R 190 G 231 B 233 5.R 190 G 237 B 199 D6D5B7 D1BA74…

【公众号】高级配色“马卡龙调色板”必须码住!

“马卡龙色系”的公众号模板也太“甜蜜”了吧&#xff01;配色绝了 哈喽大家好&#xff01;今天小编又带着刚出炉的“公众号模板”来分享啦&#xff01; 今天有点糖分超标了哦&#xff0c;赶快收藏好&#xff0c;以备不时之需吧&#xff01; 可用的范围&#xff1a;甜品店、…

如何调出阿宝色?

1.载入图片&#xff0c;调整曲线和色阶 2.合并可见图层&#xff0c;执行 图像-》模式-》lab颜色&#xff0c;切换到通道面板&#xff0c;选择a通道&#xff0c;Ctrla全选&#xff0c;选择复制&#xff0c;粘贴到通道b上 3.调整曲线 4.合并可见图层&#xff0c;调整色相和饱…

[Flink] Flink On Yarn(yarn-session.sh)启动错误

在Flink上启动 yarn-session.sh时出现 The number of requested virtual cores for application master 1 exceeds the maximum number of virtual cores 0 available in the Yarn Cluster.错误。 版本说明&#xff1a; Hadoop&#xff1a; 3.3.4 Flink&#xff1a;1.17.1 问题…

基于Python的栅格数据地理加权回归

本文结合实例详细讲解了如何使用Python对栅格数据进行地理加权回归&#xff08;GWR&#xff09;和多尺度地理加权回归分析&#xff08;MGWR&#xff09;&#xff0c;关注公众号GeodataAnalysis&#xff0c;回复20230605获取示例数据和代码&#xff0c;包含整体的写作思路&#…

org.apache.commons.io.monitor+logback.xml+vue实时显示当前日志信息

使用记录&#xff1a; 第一&#xff1a; 刷新页面导致session问题 可以在java的session中记录&#xff0c;如果是同一个客户重新链接的话&#xff0c;直接返回java的session的数据ssemiter给前端&#xff0c;前端自动接着获取日志。 ssemiter&#xff1a;详情自行百度ssemit…

【Spring Boot学习】Spring Boot的创建,第一个Spring Boot页面.

前言: 大家好,我是良辰丫,前面几篇文章,我们系统的学习了Spring框架,今天开始,我们就要学习更高级的SpringBoot框架了,不要着急哦,我们一起畅游SpringBoot框架的世界.&#x1f48c;&#x1f48c;&#x1f48c; &#x1f9d1;个人主页&#xff1a;良辰针不戳 &#x1f4d6;所属专…

EasyRecovery14免费并且超好用的数据恢复工具

相信不少小伙伴都遇到过误删文件或者文件丢失的时候&#xff0c;尤其是对于工作或者学习所需的重要文件来说&#xff0c;更让人不能接受。这个时候大家也可以通过数据恢复软件来进行找回&#xff0c;但是现在很多这种软件都需要付费才能够满足你的需求。那么有什么免费的恢复工…

EasyRecovery2020数据恢复软件激活码序列号秘钥下载及使用恢复教程

我们平时肯定都遇到过不小心把重要文件删除的情况&#xff0c;其实这些数据还是有很大几率可以恢复的&#xff0c;而且恢复起来并不难。 今天小编给大家推荐一个比较老牌的数据恢复软件EasyRecovery。 如回收站作为一个临时存放被删除文件的居所&#xff0c;有着预防用户误删…

EasyRecovery14最新个人版数据恢复工具

EasyRecovery14Mac最新版是一款功能非常强大的文件数据恢复工具软件&#xff0c;EasyRecovery14Mac最新版有着极为强大的数据恢复功能&#xff0c;可以帮助用户将各种丢失或者误删除的文件数据完美恢复&#xff0c;不过需要健康度高的文件才能恢复&#xff0c;感兴趣的用户快来…

easyrecovery数据恢复软件V15最新版本介绍

easyrecovery恢复文件介绍 easyrecovery是一款功能非常强大的数据恢复软件&#xff0c;不仅能够恢复手机等终端被删除的文件&#xff0c;还可以恢复从硬盘上删除的文件&#xff0c;而且操作非常简单&#xff0c;下面就跟着小编一起来看一下吧。电脑使用时间很长之后大家应该都…

数据恢复Ontrack EasyRecovery 15中文免费版2023最新

Ontrack EasyRecovery Crack Professional是一个全面的备份和恢复实用程序&#xff0c;可以从多个数据丢失事件中恢复文件&#xff0c;例如常见的意外删除、更严重的&#xff08;有时是病毒引起的&#xff09;分区或驱动器格式化&#xff0c;甚至硬盘严重损坏后的数据丢失。免费…

Ontrack易恢复最新版EasyRecovery数据恢复软件功能

Ontrack EasyRecovery易恢复是领先的数据恢复软件。可以解决任何数据丢失问题。 版本区别对比 EasyRecovery_Home个人版: 家用数据恢复&#xff1a;常规恢复各种文档&#xff0c;音乐&#xff0c; 照片&#xff0c;视频等数据。 EasyRecovery_Professional专业版: 高级数据恢…