图像归一化可对图像的灰度分布按照规则进行调整,以增强图像局部细节。
本节内容包含:
该模块包含直方图均衡化、直方图归一化和均值标准差归一化三类算法。
直方图均衡化假设每一像素值在直方图上分布概率相同,则每一灰度级经过均衡化后的计算公式如下。其中:
k表示每一级灰度值,取值范围为:0~255。
nj表示灰度级为k时的累计像素和,n为输入图像的像素总数。
直方图归一化的算法工作流程如下所示。
计算归一化参数。具体分为如下两个子步骤。
根据预设的灰阶左端像素数量占比(left_scale)和右端像素数量占比(right_scale),计算左端像素级(LeftPos)和右端像素级(RightPos),如下图所示。
根据计算的左右端像素值,分别按如下公式计算图像归一化的参数scale(归一化系数)和offset(归一化偏移值)。公式中MinPos和MaxPos分别为预设的灰度值范围的最小值和最大值。
scale=(MinPos-MaxPos)/(LeftPos-RightPos)
offset= MaxPos- RightPos*scale
进行图像归一化,具体为:
将计算出的scale和offset代入如下公式,计算目标图像像素值。其中DstGray(i,j)表示输出图像第i行j列像素值,SrcGray(i,j)表示输入图像第i行j列像素值。
DstGray(i,j)= SrcGray(i,j)*scale+offset
均值标准差归一化的算法工作流程和直方图归一化的基本相同,区别在于归一化参数的计算方式。
计算归一化参数sale(归一化系数)和offset(归一化偏移值),计算公式分别如下。
scale=SetStd/SrcStd
offset=SetMean-scale*SrcMean
公式中,SetStd和SetMean分别表示预设的标准差和均值;SrcStd和SrcMean分别表示输入图像像素的标准差和均值。
进行图像归一化,具体为:
将计算出的scale和offset代入如下公式,计算目标图像像素值。公式中,DstGray(i,j)表示输出图像第i行j列像素值,SrcGray(i,j)表示输入图像第i行j列像素值。
DstGray(i,j)= SrcGray(i,j)*scale+offset
该模块对前后序模块无特定要求,一般前序模块为图像源。
以下仅介绍该模块的运行参数详情。通过配置运行参数,可定义当前模块如何处理输入的数据。
通过灰度直方图将图像灰度调整均匀。该方法可增强局部细节和对比度。具体原理见上文模块原理中的直方图均衡化。
在指定直方图范围内进行图像归一化。该方法可增强图像局部细节和对比度,相比直方图均衡化调参更灵活。具体原理见上文模块原理中的、直方图归一化。
即上文模块原理中提及的灰阶左端像素数量占比(left_scale)。
即上文模块原理中提及的灰阶右端像素数量占比(left_scale)。
对应除去左端比例和右端比例的直方图灰阶范围。
指定直方图标准差和均值进行图像归一化,增强局部细节和对比度。具体原理见上文模块原理中的均值标准差归一化。
该模块输出结果中各项参数详情,请参见图像归一化模块的输出结果。