手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

matlab如何实现图像灰度拉伸

时间:2024-10-12 19:16:01

灰度拉伸是灰度分段线性变换的一种,能够增强图像对比度,实际上增强原兔脒巛钒图各部分的反差,增强输入中感兴趣的灰度区域,抑制不感兴趣的灰度区域。

介绍

1、函数表达式如图,重要的参数是职邗珩垃[x1,x2],[y1,y2].x1和x2是需要转换的灰度范围,y1和y2参数决定线性变换的斜率.可以看出函数表达式就是分段函数的表达式.

matlab如何实现图像灰度拉伸

2、如图是x1,y1等值取一般值时,输入图像的灰度到输入图像灰度分段线性变换的映射.

matlab如何实现图像灰度拉伸

3、当斜率大于1,拉伸区域会变亮,斜率小于1会变暗.

分析函数parse_inputs

1、对图像变换前,需要定义一个分析输入参数个数和有效性的脑栲葱蛸函数parse_inputs.输出:图像A、索引图调色板map、参数组[x1,x2] [y1,y2]

matlab如何实现图像灰度拉伸

2、首先建立一个空map,以免后面调用isempty(map)出错.使用IPTCHECKNARGIN检查输入参数个数是否符合要求,使用IPTCHECKINPUT检查给定矩阵元素是否属于给定的类型列表.

matlab如何实现图像灰度拉伸

3、然后根据参数个数不同,分别确定相应的返回值.

matlab如何实现图像灰度拉伸

4、检测输入参数的有效性,检查RGB数组.

matlab如何实现图像灰度拉伸

5、检查调色板map.

matlab如何实现图像灰度拉伸

6、最后将int16矩阵化为uint16类型.

matlab如何实现图像灰度拉伸

函数imgrayscaling

1、该函数进行灰度拉伸,若输入图像不是灰度图像,会自动将图像转化为灰度形式.

matlab如何实现图像灰度拉伸

2、计算输入图像A的数据类型对应的取值范围.

matlab如何实现图像灰度拉伸

3、对非灰度图像进行转换.

matlab如何实现图像灰度拉伸

4、读取原图大小并初始化输出图像.

matlab如何实现图像灰度拉伸

5、使用嵌套循环和选择结构进行分段线性变换.

matlab如何实现图像灰度拉伸

6、将输出图像的格式变为与输入图像相同.

matlab如何实现图像灰度拉伸

7、输出,如果没有提供参数接受返回值.

matlab如何实现图像灰度拉伸

示例

1、以自带的coins.png为例,原图如图.

matlab如何实现图像灰度拉伸

2、[x1 x2][y1 y2]为[0.3 0.7] [0.15 0.85]灰度拉伸后的图像如图.

matlab如何实现图像灰度拉伸
matlab如何实现图像灰度拉伸

3、[x1 x2][y1 y2]为[0.15 0.85] [0.3 0.7]灰度拉伸后的图像如图.

matlab如何实现图像灰度拉伸
matlab如何实现图像灰度拉伸
© 手抄报圈