一种基于极轻量级Unet的动态范围压缩方法及系统与流程

文档序号:35342462发布日期:2023-09-07 13:09阅读:100来源:国知局
一种基于极轻量级Unet的动态范围压缩方法及系统与流程

本发明涉及图像处理,更具体的说是涉及一种基于极轻量级unet的动态范围压缩方法及系统。


背景技术:

1、人眼能够观测到自然界中比较广泛亮度范围的场景,比如从伸手不见五指的黑夜到难以直视的太阳光,动态范围可以达到近10个数量级。然而现有的传统显示设备却受限于硬件设备,图像只能表达出极小部分的亮度范围,比如常见的8比特图像只能显示0到255整数范围的亮度。因此为了能够更好的显示高动态范围(hdr,high dynamic range)图像,需要实现从hdr图像到低动态范围(ldr,low dynamic range)的映射,完成hdr和ldr之间的转换,即动态范围压缩(drc,dynamic range compression)。

2、常见的动态压缩算法分为全局映射和局部映射。全局映射是指一对一的像素映射,这样得到的图像对比度较低,且容易丢失部分细节特征。局部映射则是通过像素和像素之间的联系,对不同的局部区域有区分的增强对比度和亮度,这种方法能够保留一定的对比度和细节信息,但较为复杂,会导致某些区域失真。

3、传统的动态压缩算法包括线性位移算法和对数映射算法。其中,线性移位算法属于全局映射方法,它将hdr图像的n比特整数位直接右移(n-m)个比特,然后得到m(m<n)比特整数的ldr图像。这样得到图像的分辨率和对比度都比较低,甚至像素颜色不均匀,高数值区间的颜色较单一,多集中于中低数值区域,并且这样得到的ldr图像丢失了很多细节,之前暗处的区域现在更加暗了,曝光的区域曝光也会更加严重,图像失真严重。对数映射算法将数据从区间[0,2n]变换到区间[0,n],然后再线性变换到区间[0,2m]。此方法与线性移位算法相同,都是全局映射算法,虽然效率较高,但无法兼顾图像的局部细节,图像效果一般。

4、与传统算法相比,基于深度学习的算法生成的图像能够增强暗区细节,避免过度曝光,保留纹理细节和对比度。但是现有的方法网络较为复杂,效率较低,实用性不高,大部分网络在脱离训练集的数据上表现不够稳定,甚至显示出不真实的颜色或纹理扭曲,结果失真。

5、因此,提供一种可有效解决深度学习算法生成方法网络较为复杂、效率较低、稳定性差、实用性不高等问题的动态范围压缩方法,是本领域技术人员亟需解决的问题。


技术实现思路

1、有鉴于此,本发明提供了一种基于极轻量级unet的动态范围压缩方法及系统,有效解决了传统算法不能保证图像暗部细节,容易过度曝光,以及深度学习算法生成方法网络较为复杂、效率较低、稳定性差、实用性不高等问题。

2、为了实现上述目的,本发明提供如下技术方案:

3、一种基于极轻量级unet的动态范围压缩方法,包括以下步骤:

4、获取高动态范围图片,所述高动态范围图片为rgb颜色空间图片;

5、对获取的图片进行预处理,所述预处理具体步骤,包括:

6、将rgb颜色空间图片转化为yuv颜色空间图片,得到所述图片的初始亮度值 i lum和亮度图;

7、结合自适应gamma算法和photoshop批量处理所述图片的初始亮度值 i lum,生成标准参考图,所述标准参考图包括标准权重图w和标准亮度图l;

8、将图片的亮度图进行数据增强处理后,输入到unet网络模型中;所述unet网络模型对高动态范围图片进行动态范围压缩,生成低动态范围图片。

9、所述图片的初始亮度值 i lum计算公式为:

10、;

11、其中, i r、 i g、 i b为rgb颜色空间图片的rgb值,这里的cr、cg和cb为常数。

12、所述结合自适应gamma算法和photoshop批量处理所述图片的初始亮度值 i lum,生成标准参考图,具体步骤为:

13、根据所述初始亮度值 i lum分布范围,生成初始gamma;

14、对所述初始gamma进行限制,限制范围为[0.4,1],得到gamma的最终值;

15、根据gamma的最终值获取新的亮度值l,根据所述亮度值l生成标准亮度图;

16、根据所述初始亮度值 i lum和所述亮度值l确定每个像素点对应的权重值w,并基于像素点的权重值w生成标准权重图。

17、所述unet网络模型训练过程具体包括:

18、将所述图片的亮度图数据集进行数据增强处理后,输入到待训练的unet网络模型中;

19、所述待训练的unet网络模型输出所述待训练的unet网络模型的权重图wout,并生成所述待训练的unet网络模型的亮度图lout;

20、根据数据预处理步骤中获得的标准权重图w和标准亮度图l与待训练网络输出的权重图wout和亮度图lout,计算当前损失loss;

21、根据所述当前loss更新迭代unet网络模型,在loss收敛趋于稳定后,结合此时模型输出结果,选取最终的unet网络模型。

22、所述数据增强处理包括:翻转、裁剪和高斯模糊。

23、所述计算当前损失loss的过程为:

24、根据数据预处理步骤中获得的标准亮度图l和待训练网络输出的亮度图lout,利用损失函数计算一组loss,记作lum_loss;

25、根据数据预处理步骤中获得的标准权重图w和待训练网络输出的权重图wout利用损失函数计算一组loss,记作weight_loss;

26、给lum_loss和weight_loss赋予不同的权重值,并将lum_loss和weight_loss相加得到总loss。

27、所述损失函数计算公式为:

28、;

29、其中, y i表示标准亮度图l或标准权重图w, f( x i)表示待训练网络输出的亮度图lout或权重图wout。

30、所述根据数据预处理步骤中获得的标准权重图w、标准亮度图l和待训练网络输出的权重图wout和亮度图lout,计算当前损失loss,并且还包括以下步骤:采用限制极值的minmax_loss对待训练的unet网络模型输出的极大值和极小值进行限制,消除极值对网络结果的影响;采用突出边缘的edge_loss将待训练的unet网络模型输出的权重图的边缘进行优化。

31、一种基于极轻量级unet的动态范围压缩系统,包括:

32、数据获取模块,用于获取rgb颜色空间图片;

33、数据预处理模块,用于将rgb颜色空间图片转化为yuv颜色空间图片,得到所述图片的初始亮度值 i lum;以及结合自适应gamma算法和photoshop批量处理所述图片的初始亮度值 i lum,生成标准权重图w和标准亮度图l;

34、网络训练模块,用于对构建的unet网络模型进行训练,得到训练好的unet网络模型;

35、动态范围压缩模块,用于根据训练好的unet网络模型对图片进行动态范围压缩。

36、所述网络训练模型包括数据增强子模块、损失函数计算子模块;

37、所述数据增强子模块用于对亮度图数据集进行数据增强操作,所述数据增强操作包括翻转、裁剪和高斯模糊;

38、所述损失函数计算子模块用于基于损失函数计算当前损失loss。

39、经由上述的技术方案可知,与现有技术相比,本发明公开了一种基于极轻量级unet的动态范围压缩方法及系统,使用自适应gamma算法和photoshop批量处理所有数据,与其他传统算法相比,更好的保留了图像暗部细节,暗处适当提亮的同时亮处没有过曝,并且处理过后的图像自然,并未有失真或颜色不真实情况;采用轻量级unet网络,与其他深度学习算法相比,本发明模型轻便,极大的节约了计算量,运行效率高,灵活性强,且在训练集以外的场景中效果依然突出且稳定,保留了大部分图片细节,利用亮度图进行训练,然后权重图作为网络输出,拟合方式简单易懂,且能保留图像的对比度信息,避免图像过度泛白或偏色;搭配使用多个loss,使得网络收敛稳定,输出的权重图边缘过度清晰流畅,增强了最后结果图的边缘细节和图片对比度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1