一种保持图像梯度方向的色阶映射方法

文档序号:31049330发布日期:2022-08-06 06:21阅读:101来源:国知局
一种保持图像梯度方向的色阶映射方法

1.本发明属于图像处理技术领域,具体涉及一种保持图像梯度方向的色阶映射方法。


背景技术:

2.由于常规显示器的动态范围远小于通过多曝光图像合成方法融合出的高动态范围(high dynamic range,hdr)图像,因此具有动态范围压缩功能的色阶映射算法越来越受到学术界的重视。传统的色阶映射算法主要存在的缺点是重建后的低动态范围(low dynamic range,ldr)图像的细节、纹理不突出,图像视觉效果不佳。


技术实现要素:

3.本发明的目的是为解决采用传统色阶映射算法重建后的ldr图像的细节、纹理不突出,图像视觉效果不佳的问题,而提出的一种保持图像梯度方向的色阶映射方法。
4.本发明为解决上述技术问题所采取的技术方案是:
5.一种保持图像梯度方向的色阶映射方法,所述方法具体包括以下步骤:
6.步骤一、对hdr图像的对角线像素进行选择;
7.步骤二、将步骤一中选择出的对角线像素组成的集合记为集合c,分别对集合c中的每个像素进行色阶映射,得到每个像素对应的色阶映射后的亮度;
8.步骤三、将步骤二中得到的色阶映射后亮度作为重建ldr图像中对应像素的亮度,将hdr图像中未被步骤一选择出的像素组成的集合记为集合e,根据集合e中的像素在hdr图像中的亮度值和色阶映射后的亮度计算出集合e中的像素在重建ldr图像中的亮度,获得重建ldr图像。
9.进一步地,所述步骤一中对hdr图像的对角线像素进行选择,选择出的像素包括两个部分;
10.其中,一部分像素的选择方式为:
11.步骤一一、选中hdr图像的最左下角像素为起始像素,并将起始像素作为当前像素;
12.步骤一二、选中位于当前像素的右上方且与当前像素紧相邻的像素;
13.步骤一三、再将步骤一二选中的像素作为当前像素;
14.步骤一四、重复步骤一二至步骤一三的过程,直至选中的像素到达hdr图像右侧边界为止;
15.步骤一五、将执行步骤一一至步骤一四的过程中,选中的全部像素作为选择出的一部分像素;
16.另一部分像素的选择方式为:
17.步骤一六、选中hdr图像最左下角像素的上方相邻像素为起始像素,并将起始像素作为当前像素;
18.步骤一七、选中位于当前像素的右上方且与当前像素紧相邻的像素;
19.步骤一八、再将步骤一七选中的像素作为当前像素;
20.步骤一九、重复步骤一七至步骤一八的过程,直至选中的像素到达hdr图像右侧边界为止;
21.步骤一十、将执行步骤一六至步骤一九的过程中,选中的全部像素作为选择出的另一部分像素。
22.进一步地,所述步骤二的具体过程为:
23.对于集合c中的任一像素,将该像素在hdr图像中的坐标点表示为(m,n),将该像素在hdr图像中的亮度值表示为l(m,n),则该像素对应的色阶映射后的亮度i(m,n)为:
[0024][0025]
其中,max(c)和min(c)分别表示集合c中的像素在hdr图像中的最大亮度和最小亮度,d
min
表示显示器的最小亮度,d
max
表示显示器的最大亮度。
[0026]
进一步地,所述步骤三的具体过程为:
[0027]
步骤三一、将hdr图像中位于坐标点(x,y)的像素的梯度和表示为:
[0028][0029]
其中,l(x,y)表示hdr图像中位于坐标点(x,y)的像素的亮度,l(x+1,y+1)表示hdr图像中位于坐标点(x+1,y+1)的像素的亮度,l(x+1,y)表示hdr图像中位于坐标点(x+1,y)的像素的亮度,l(x,y+1)表示hdr图像中位于坐标点(x,y+1)的像素的亮度;
[0030]
ldr图像中位于坐标点(x,y)的像素的梯度和表示为:
[0031][0032]
其中,i(x,y)表示ldr图像中位于坐标点(x,y)的像素的亮度,i(x+1,y+1)表示ldr图像中位于坐标点(x+1,y+1)的像素的亮度,i(x+1,y)表示ldr图像中位于坐标点(x+1,y)的像素的亮度,i(x,y+1)表示ldr图像中位于坐标点(x,y+1)的像素的亮度;
[0033][0034]
其中,φi(x,y)表示ldr图像中位于坐标点(x,y)像素梯度的方向,φ
l
(x,y)表示hdr图像中位于坐标点(x,y)像素梯度的方向;
[0035]
为了使ldr图像与hdr图像梯度方向具有一致性,需要保证:
[0036][0037]
对式(5)进行整理,得到ldr图像中位于坐标点(x,y)的像素的亮度i(x,y):
[0038][0039]
步骤三二、根据式(6)和步骤二中得到的色阶映射后亮度,计算出位于步骤一选择出的对角线像素左上方的像素的亮度;
[0040]
步骤三三、对式(6)进行整理,得到ldr图像中位于坐标点(x+1,y+1)的像素的亮度i(x+1,y+1):
[0041][0042]
步骤三四、根据式(7)和步骤二中得到的色阶映射后亮度,计算出位于步骤一选择出的对角线像素右下方的像素的亮度;
[0043]
步骤三五、将步骤三二和步骤三四中计算出的亮度作为ldr图像中对应像素的亮度后,获得重建ldr图像。
[0044]
进一步地,所述步骤三二的具体过程为:
[0045]
步骤三二一、将位于步骤一十中所选择出的像素正上方的、与步骤一十中所选择出的像素最相邻的像素作为第一组像素;
[0046]
根据式(6)和步骤二中得到的色阶映射后亮度,计算出第一组像素的亮度;
[0047]
步骤三二二、将位于第一组像素正上方的、与第一组像素最相邻的像素作为第二组像素;
[0048]
再根据式(6)和第一组像素的亮度,计算出第二组像素的亮度;
[0049]
以此类推,直至递推出位于步骤一选择出的对角线像素左上方的全部像素的亮度。
[0050]
更进一步地,所述步骤三四的具体过程为:
[0051]
步骤三四一、将位于步骤一五中所选择出的像素正下方的、与步骤一五中所选择出的像素最相邻的像素作为第1组像素;
[0052]
根据式(7)和步骤二中得到的色阶映射后亮度,计算出第1组像素的亮度;
[0053]
步骤三四二、将位于第1组像素正下方的、与第1组像素最相邻的像素作为第2组像素;
[0054]
再根据式(7)和第1组像素的亮度,计算出第2组像素的亮度;
[0055]
以此类推,直至递推出位于步骤一选择出的对角线像素右下方的全部像素的亮度。
[0056]
本发明的有益效果是:
[0057]
本发明方法首先选择hdr图像的对角线像素;其次,对对角线像素亮度进行色阶映射;再次,利用roberts算子推导出一种能够保持梯度方向的亮度计算方法;从次,根据对角线像素的亮度以及保持梯度方向的亮度计算方法,递推出对角线左上方全部像素的亮度;最后,根据对角线像素的亮度以及保持梯度方向的亮度计算方法,递推出对角线右下方全
部像素的亮度。实验结果表明通过本发明方法重建的ldr图像的局部细节、纹理较为突出,图像清晰度较高,图像整体视觉效果较好。
附图说明
[0058]
图1是尺寸为10
×
5的hdr图像对角线像素选择的示意图;
[0059]
图中将选择出的像素标记为0;
[0060]
图2是尺寸为11
×
11的hdr图像对应的对角线像素的示意图;
[0061]
图3是左上方第一组像素亮度递推过程的示意图;
[0062]
图中第一组像素标号为1;
[0063]
图4是左上方第二组像素亮度递推过程的示意图;
[0064]
图中第二组像素标号为2;
[0065]
图5是右下方第一组像素递推过程的示意图;
[0066]
图中第1组像素标号为1;
[0067]
图6是右下方第二组像素递推过程的示意图;
[0068]
图中第2组像素标号为2;
[0069]
图7a是hdr图像一;
[0070]
图7b是图7a的色阶映射结果图;
[0071]
图8a是hdr图像二;
[0072]
图8b是图8a的色阶映射结果图;
[0073]
图9a是hdr图像三;
[0074]
图9b是图9a的色阶映射结果图。
具体实施方式
[0075]
具体实施方式一、本实施方式所述的一种保持图像梯度方向的色阶映射方法,所述方法具体包括以下步骤:
[0076]
步骤一、对hdr图像的对角线像素进行选择;
[0077]
步骤二、将步骤一中选择出的对角线像素组成的集合记为集合c,分别对集合c中的每个像素进行色阶映射,得到每个像素对应的色阶映射后的亮度;
[0078]
步骤三、将步骤二中得到的色阶映射后亮度作为重建ldr图像中对应像素的亮度,将hdr图像中未被步骤一选择出的像素组成的集合记为集合e,根据集合e中的像素在hdr图像中的亮度值和色阶映射后的亮度计算出集合e中的像素在重建ldr图像中的亮度,获得重建ldr图像。
[0079]
具体实施方式二:结合图1说明本实施方式。本实施方式与具体实施方式一不同的是,所述步骤一中对hdr图像的对角线像素进行选择,选择出的像素包括两个部分;
[0080]
其中,一部分像素的选择方式为:
[0081]
步骤一一、选中hdr图像的最左下角像素为起始像素,并将起始像素作为当前像素;
[0082]
步骤一二、选中位于当前像素(首次执行本步骤时,当前像素是步骤一一中的起始像素,从第二次执行本步骤开始,当前像素是前一次迭代过程中步骤一三确定出的当前像
素)的右上方且与当前像素紧相邻的像素;
[0083]
步骤一三、再将步骤一二选中的像素作为当前像素;
[0084]
步骤一四、重复步骤一二至步骤一三的过程,直至选中的像素到达hdr图像右侧边界为止;
[0085]
步骤一五、将执行步骤一一至步骤一四的过程中,选中的全部像素作为选择出的一部分像素;
[0086]
另一部分像素的选择方式为:
[0087]
步骤一六、选中hdr图像最左下角像素的上方相邻像素为起始像素,并将起始像素作为当前像素;
[0088]
步骤一七、选中位于当前像素(首次执行本步骤时,当前像素是步骤一六中的起始像素,从第二次执行本步骤开始,当前像素是前一次迭代过程中步骤一八确定出的当前像素)的右上方且与当前像素紧相邻的像素;
[0089]
步骤一八、再将步骤一七选中的像素作为当前像素;
[0090]
步骤一九、重复步骤一七至步骤一八的过程,直至选中的像素到达hdr图像右侧边界为止;
[0091]
步骤一十、将执行步骤一六至步骤一九的过程中,选中的全部像素作为选择出的另一部分像素。
[0092]
其它步骤及参数与具体实施方式一相同。
[0093]
具体实施方式三:本实施方式与具体实施方式一或二不同的是,所述步骤二的具体过程为:
[0094]
对于集合c中的任一像素,将该像素在hdr图像中的坐标点表示为(m,n),(m,n)表示像素所在的平面位置,将该像素在hdr图像中的亮度值表示为l(m,n),则该像素对应的色阶映射后的亮度i(m,n)为:
[0095][0096]
其中,max(c)和min(c)分别表示集合c中的像素在hdr图像中的最大亮度和最小亮度,d
min
表示显示器的最小亮度,d
max
表示显示器的最大亮度。
[0097]
其它步骤及参数与具体实施方式一或二相同。
[0098]
具体实施方式四:本实施方式与具体实施方式一至三之一不同的是,所述步骤三的具体过程为:
[0099]
步骤三一、根据roberts算子,将hdr图像中位于坐标点(x,y)的像素的梯度和表示为:
[0100][0101]
其中,l(x,y)表示hdr图像中位于坐标点(x,y)的像素的亮度,l(x+1,y+1)表示hdr图像中位于坐标点(x+1,y+1)的像素的亮度,l(x+1,y)表示hdr图像中位于坐标点(x+1,y)
的像素的亮度,l(x,y+1)表示hdr图像中位于坐标点(x,y+1)的像素的亮度;
[0102]
ldr图像中位于坐标点(x,y)的像素的梯度和表示为:
[0103][0104]
其中,i(x,y)表示ldr图像中位于坐标点(x,y)的像素的亮度,i(x+1,y+1)表示ldr图像中位于坐标点(x+1,y+1)的像素的亮度,i(x+1,y)表示ldr图像中位于坐标点(x+1,y)的像素的亮度,i(x,y+1)表示ldr图像中位于坐标点(x,y+1)的像素的亮度;
[0105][0106]
其中,φi(x,y)表示ldr图像中位于坐标点(x,y)像素梯度的方向,φ
l
(x,y)表示hdr图像中位于坐标点(x,y)像素梯度的方向;
[0107]
为了使ldr图像与hdr图像梯度方向具有一致性,需要保证:
[0108][0109]
对式(5)进行整理,得到ldr图像中位于坐标点(x,y)的像素的亮度i(x,y):
[0110][0111]
步骤三二、根据式(6)和步骤二中得到的色阶映射后亮度,计算出位于步骤一选择出的对角线像素左上方的像素的亮度;
[0112]
步骤三三、对式(6)进行整理,得到ldr图像中位于坐标点(x+1,y+1)的像素的亮度i(x+1,y+1):
[0113][0114]
步骤三四、根据式(7)和步骤二中得到的色阶映射后亮度,计算出位于步骤一选择出的对角线像素右下方的像素的亮度;
[0115]
步骤三五、将步骤三二和步骤三四中计算出的亮度作为ldr图像中对应像素的亮度后,获得重建ldr图像。
[0116]
其它步骤及参数与具体实施方式一至三之一相同。
[0117]
具体实施方式五:结合图2、图3和图4说明本实施方式。本实施方式与具体实施方式一至四之一不同的是,所述步骤三二的具体过程为:
[0118]
步骤三二一、将位于步骤一十中所选择出的像素正上方的、与步骤一十中所选择出的像素最相邻的像素作为第一组像素;
[0119]
根据式(6)和步骤二中得到的色阶映射后亮度,计算出第一组像素的亮度;
[0120]
步骤三二二、将位于第一组像素正上方的、与第一组像素最相邻的像素作为第二组像素;
[0121]
再根据式(6)和第一组像素的亮度,计算出第二组像素的亮度;
[0122]
以此类推,直至递推出位于步骤一选择出的对角线像素左上方的全部像素的亮度。
[0123]
其它步骤及参数与具体实施方式一至四之一相同。
[0124]
具体实施方式六:结合图2、图5和图6说明本实施方式。本实施方式与具体实施方式一至五之一不同的是,所述步骤三四的具体过程为:
[0125]
步骤三四一、将位于步骤一五中所选择出的像素正下方的、与步骤一五中所选择出的像素最相邻的像素作为第1组像素;
[0126]
根据式(7)和步骤二中得到的色阶映射后亮度,计算出第1组像素的亮度;
[0127]
步骤三四二、将位于第1组像素正下方的、与第1组像素最相邻的像素作为第2组像素;
[0128]
再根据式(7)和第1组像素的亮度,计算出第2组像素的亮度;
[0129]
以此类推,直至递推出位于步骤一选择出的对角线像素右下方的全部像素的亮度。
[0130]
其它步骤及参数与具体实施方式一至五之一相同。
[0131]
实验结果与分析
[0132]
实验部分采用cpu为i7-11800h,内存16g的笔记本电脑作为硬件仿真。软件仿真平台为matlab 2016a。算法输入为后缀为hdr的hdr图像,算法输出为jpeg格式图像。算法的实验仿真结果如图7a、图7b、图8a、图8b、图9a以及图9b所示。
[0133]
由实验结果可知:原始hdr图像存在高光效应以及阴影效应,高光效应以及阴影效应导致人眼无法清晰分辨高光区域以及阴影区域的图像内容,而且高光区域给人眼带来较强的刺激性。因此直接显示hdr图像的图象质量无法得到保证。本发明提出的色阶映射算法可以有效压缩图像的动态范围,高光区域与阴影区域的图像细节以及纹理的可视性得到有效地提高,色阶映射得到的ldr图像整体亮度较为适合于人眼观看,图像质量得到显著提高。因此,本发明方法可以在保证图像质量的前提下,实现动态范围的压缩从而在ldr显示器上进行高质量地显示。
[0134]
本发明的上述算例仅为详细地说明本发明的计算模型和计算流程,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1