直方图的调整和图像处理方法、可读存储介质和电子设备技术

技术编号:37471131 阅读:19 留言:0更新日期:2023-05-06 09:51
一种直方图的调整和图像处理方法、可读存储介质和电子设备,所述直方图的调整方法包括:第一调整步骤。所述第一调整步骤包括:在直方图中删除各bin超过自身限定值的像素数以获得第一中间直方图,计算删除的像素数总量以获得第一删除总量;计算所述第一中间直方图中各个未达到自身限定值的bin的像素数总量,以获得第一剩余总量;在所述第一中间直方图中,将所述第一删除总量按分配比例补充至各个未达到自身限定值的bin,以获得调整后的直方图;其中,所述分配比例为:各个未达到自身限定值的bin对应的像素数占所述第一剩余总量的比例。bin对应的像素数占所述第一剩余总量的比例。bin对应的像素数占所述第一剩余总量的比例。

【技术实现步骤摘要】
直方图的调整和图像处理方法、可读存储介质和电子设备


[0001]本专利技术涉及图像处理领域,尤其涉及一种直方图的调整和图像处理方法、可读存储介质和电子设备。

技术介绍

[0002]近年来,越来越多的相机、摄像机、手机摄像头可以拍摄高动态图像。高动态图像可以同时记录场景中明亮区域和昏暗区域的内容,例如拍摄晴天室内窗前的人时,高动态图像可以同时记录窗前昏暗的人像和窗外明亮的风景。然而,目前大多数显示设备仍然是动态范围255的低动态(LDR)设备,无法直接显示高动态(HDR)图像,需要先通过图像处理对高动态图像进行动态范围压缩,通常使用色调映射(tone mapping)的方法,使其转变为低动态图像。
[0003]基于直方图调整的色调映射可以提高图像的对比度,使图像更符合人眼的观察习惯,提升图像质量。然而,对高动态图像进行直方图调整实现起来具有技术难度,因为统计直方图所需的竖条(bin)数量远大于低动态图像。例如,对于20bit的高动态图像,如果为每一个可能的DN值(像素值)都分配1个bin,那么将需要2
20
≈100万个bin来进行直方图统计,如此数量庞大的bin将导致运算速度缓慢、甚至在FPGA、DSP等硬件中难以实现。
[0004]现有技术存在多种直方图的调整方法,例如,图1所示,对原直方图hist1设置一条限定高度曲线limit_curve_1,将原直方图hist1中大于限定高度曲线limit_curve_1的bin截断,然后,将被截掉的像素数总数平均加到每一个bin上,得到调整后的直方图hist1

1。限定高度曲线limit_curve_1可以是一条横线,也可以是曲线,本领域技术人员可以根据实验或经验对其进行设定,目的是防止图像的对比度过度增强。更多的技术细节可以参考公开号为CN113691739A的中国专利申请。
[0005]上述现有技术对低动态图像(LDR)可以达到比较好的直方图调整效果,但对高动态图像的调整效果不佳。如图2所示的20bit高动态图像,图像中明亮的部分是一个透射式分辨力靶,黑暗的部分放置了反射式分辨力靶等背景。
[0006]公开号为CN113691739A的中国专利申请提出一种采用分段直方图调整的方法,对暗区做细致的直方图bin的划分,对亮区做较粗的直方图bin的划分。由此,在压缩高动态图像的动态范围的同时,使压缩后的图像具有较高的对比度,而且可以用较少数量的bin完成这一过程,使其易于硬件实现。然而,该专利申请中的技术对高动态图像中的昏暗区域具有较为细致的对比度拉伸效果,对于明亮区域细节的对比度拉伸效果不够充分。
[0007]图3为图2所示图像的直方图,从直方图可以看出,大部分像素集中在暗区,亮区的像素数量相对较少。采用现有技术对该直方图进行调整:被限定高度曲线limit curve截断的bin,将其被截掉的部分均匀分配到每一个bin上,如图4所示。由于要分配的bin的数量较多,因此分配到靠右侧的代表图像明亮区域的bin的像素数量很少。直方图调整后,右侧像素集中的各个bin仍较低,这将导致计算出的映射曲线无法充分拉伸亮区的细节。

技术实现思路

[0008]本专利技术解决的问题是:现有技术对直方图的调整会导致对比度的拉伸不足。
[0009]为解决上述问题,本专利技术提供一种直方图的调整方法,包括:第一调整步骤。
[0010]所述第一调整步骤包括:
[0011]在直方图中删除各bin超过自身限定值的像素数以获得第一中间直方图,计算删除的像素数总量以获得第一删除总量;
[0012]计算所述第一中间直方图中各个未达到自身限定值的bin的像素数总量,以获得第一剩余总量;
[0013]在所述第一中间直方图中,将所述第一删除总量按分配比例补充至各个未达到自身限定值的bin,以获得调整后的直方图;
[0014]其中,所述分配比例为:各个未达到自身限定值的bin对应的像素数占所述第一剩余总量的比例。
[0015]可选的,所述直方图的调整方法还可以包括:当调整后的直方图存在像素数超过所述自身限定值的bin时,重复执行所述第一调整步骤,直至所述第一调整步骤的执行次数达到次数阈值。
[0016]可选的,所述直方图的调整方法还可以包括:当所述第一调整步骤的执行次数达到所述次数阈值时,执行第二调整步骤。
[0017]所述第二调整步骤包括:
[0018]在直方图中删除各bin超过自身限定值的像素数以获得第二中间直方图,计算删除的像素数总量以获得第二删除总量;
[0019]在所述第二中间直方图中,将所述第二删除总量平均分配至各个bin,以获得调整后的直方图。
[0020]本专利技术还提供一种图像处理方法,包括:
[0021]获取原图像对应的第一层直方图;
[0022]对所述第一层直方图执行上述直方图的调整方法,以获得调整后的第一层直方图;
[0023]根据调整后的第一层直方图生成第一层映射曲线;
[0024]在所述第一层直方图的离散度未超过预设阈值时,根据所述第一层映射曲线对所述原图像进行映射以获得目标图像;
[0025]在所述第一层直方图的离散度超过所述预设阈值时,在所述第一层直方图中选取若干个bin,根据被选取的bin及其对应的像素形成第二层直方图;
[0026]对所述第二层直方图进行直方图的调整以获得调整后的第二层直方图;
[0027]根据所述第一层映射曲线、调整后的第二层直方图和被选取的bin生成第二层映射曲线;
[0028]根据所述第一层映射曲线和第二层映射曲线对所述原图像进行映射以获得目标图像。
[0029]可选的,根据调整后的第一层直方图生成第一层映射曲线的步骤包括:
[0030]使用调整后的第一层直方图计算累积直方图,以获得第一层累积直方图;
[0031]对所述第一层累积直方图进行归一化处理,以得到归一化的第一层累积直方图;
[0032]根据所述归一化的第一层累积直方图生成所述第一层映射曲线。
[0033]可选的,生成所述第一层映射曲线的公式为:
[0034]map_curve1=Lout*cdf1
[0035]其中,cdf1为归一化的第一层累积直方图,map_curve1表示第一层映射曲线,Lout为目标图像的最大可用像素值。
[0036]可选的,依据所述第一层映射曲线对所述被选取的bin的输入像素值范围进行映射,以获得被选取的bin的输出像素值范围;
[0037]生成所述第二层映射曲线的公式为:
[0038]map_curve2=y_min+(y_max

y_min)*cdf2
[0039]其中,map_curve2表示第二层映射曲线,y_min为被选取的bin的输出像素值范围内的最小值,y_max为被选取的bin的输出像素值范围内的最大值。
[0040]可选的,所述第二层直方图包括:第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种直方图的调整方法,其特征在于,包括:第一调整步骤;所述第一调整步骤包括:在直方图中删除各bin超过自身限定值的像素数以获得第一中间直方图,计算删除的像素数总量以获得第一删除总量;计算所述第一中间直方图中各个未达到自身限定值的bin的像素数总量,以获得第一剩余总量;在所述第一中间直方图中,将所述第一删除总量按分配比例补充至各个未达到自身限定值的bin,以获得调整后的直方图;其中,所述分配比例为:各个未达到自身限定值的bin对应的像素数占所述第一剩余总量的比例。2.如权利要求1所述的直方图的调整方法,其特征在于,还包括:当调整后的直方图存在像素数超过所述自身限定值的bin时,重复执行所述第一调整步骤,直至所述第一调整步骤的执行次数达到次数阈值。3.如权利要求2所述的直方图的调整方法,其特征在于,还包括:当所述第一调整步骤的执行次数达到所述次数阈值时,执行第二调整步骤;所述第二调整步骤包括:在直方图中删除各bin超过自身限定值的像素数以获得第二中间直方图,计算删除的像素数总量以获得第二删除总量;在所述第二中间直方图中,将所述第二删除总量平均分配至各个bin,以获得调整后的直方图。4.一种图像处理方法,其特征在于,包括:获取原图像对应的第一层直方图;对所述第一层直方图执行权利要求1至3中任一权利要求所述的直方图的调整方法,以获得调整后的第一层直方图;根据调整后的第一层直方图生成第一层映射曲线;在所述第一层直方图的离散度未超过预设阈值时,根据所述第一层映射曲线对所述原图像进行映射以获得目标图像;在所述第一层直方图的离散度超过所述预设阈值时,在所述第一层直方图中选取若干个bin,根据被选取的bin及其对应的像素形成第二层直方图;对所述第二层直方图进行直方图的调整以获得调整后的第二层直方图;根据所述第一层映射曲线、调整后的第二层直方图和被选取的bin生成第二层映射曲线;根据所述第一层映射曲线和第二层映射曲线对所述原图像进行映射以获得目标图像。5.如权利要求4所述的图像处理方法,其特征在于,根据调整后的第一层直方图生成第一层映射曲线的步骤包括:使用调整后的第一层直方图计算累积直方图,以获得第一层累积直方图;对所述第一层累积直方图进行归一化处理,以得到归一化的第一层累积直方图;根据所述归一化的第一层累积直方图生成所述第一层映射曲线。6.如权利要求5所述的图像处理方法,其特征在于,生成所述第一层映射曲线的公式
为:map_curve1=Lout*cdf1其中,cdf1为归一化的第一层累积直方图,map_curve1表示第一层映射曲线,Lout为目标图像的最大可用像素值。7.如权利要求6所述的图像处理方法,其特征在于,依据所述第一层映射曲线对所述被选取的bin的输入像素值范围进行映射,以获得被选取的bin的输出像素值范围;生成所述第二层映射曲线的公式为:map_curve2=y_min+(y_max

y_min)*cdf2其中,map_curve2...

【专利技术属性】
技术研发人员:孙淑云陈炜池国泉
申请(专利权)人:锐芯微电子股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1