图像增强
灰度线性变换
-
scale_image(Image : ImageScaled : Mult, Add : )——缩放或扩大图像的灰度值
原理:可以理解为用一个模板扫描图像中的每一个像素,模板中像素最大值和最小值的差作为模板中心像素点的值。
功能描述: g’ := g * Mult + Add 为当前的灰度值。由公式可以看出scale_image算子处理图像是个线性变化,因此会扩大图像的对比度,会让黑的地方更黑,亮的地方更亮。
备注: Mult 为所乘的系数,Add为加的偏移值。最佳Mult和Add值的选取由下:
其中:GMin为图像的最大灰度值,GMax为图像的最小灰度值。
可配合算子min_max_gray得到。min_max_gray(Regions, Image : : Percent : Min, Max, Range)确定区域内的最小和最大灰度值 -
scale_image_max(Image:ImageScaleMax::)
作用:按最大比例增强对比度,最大化图像的灰度值。该算子计算像素的最大和最小值,按照最大值比例化各个像素。
参数列表:
参数1(in):输入图像,多通道图像
参数2(out):增强后图像
增强图像对比度
-
emphasize(Image : ImageEmphasize : MaskWidth, MaskHeight, Factor : )
作用:增强图像的高频区域(边缘和拐角)的对比度,使图像看起来更清晰。
Image:输入的要增强的图像;
ImageEmphasize:输出的对比度增强的图像;
MaskWidth, MaskHeight:输入的掩膜宽度、高度; -
mult_image()
mult_image(Image1, Image2 : ImageResult : Mult, Add:)
作用:将两幅图像相乘。其效果会增加图像的对比度。即白越白黑越黑,中间灰度值像素很变少。
功能描述:输入图像的灰度值按以下表达式变换:(g1, g2)分别表示输入图像的像素值,gr是输出图像
gr := g1 * g2 * Mult + Add
参数列表:
参数1(in):输入图像1
参数2(in):输入图像2
参数3(out):输出图像
参数4(in):乘数因子,限制条件:-255.0 <= Mult <= 255.0
参数5(in):加数因子,限制条件:-512.0 <= Add <= 512.0 -
illuminate(Image : ImageIlluminate : MaskWidth, MaskHeight, Factor : )
作用:增强图像的高频区域(边缘和拐角)的对比度,使图像看起来更清晰。
参数1(in) Image:输入的要增强的图像;
参数2(out) ImageEmphasize:输出的亮度增强的图像;
参数3、4(in) MaskWidth, MaskHeight:输入的掩膜宽度、高度。
直方图均衡化
equ_histo_image()
equ_histo_image(Image : ImageEquHisto : : )
作用: 增强图像的对比度,采用直方图的方式。
灰度图像形态学
1)gray_opening
gray_opening(Image, SE : ImageOpening : : )
作用:灰度值开运算。结构元素在图像中遍历,灰度值最低的值作为新值,有使图像变暗的作用。
2)gray_closing
gray_closing(Image, SE : ImageClosing : : )
作用:灰度值关运算。结构元素在图像中遍历,灰度值最高的值作为新值,有使图像变亮的作用。
3) gray_range_rect
gray_range_rect(Image : ImageResult : MaskHeight, MaskWidth : )
作用:计算灰度值范围。即,输入图像的灰度值最大值和最小值的差值(最大值-最小值),在矩形掩模内的每个图像点的大小(掩模高度,掩模宽度)。
图像卷积
#TODO