matlab如何实现图像灰度拉伸?
来源:网络收集 点击: 时间:2024-04-30【导读】:
灰度拉伸是灰度分段线性变换的一种,能够增强图像对比度,实际上增强原图各部分的反差,增强输入中感兴趣的灰度区域,抑制不感兴趣的灰度区域。介绍1/3分步阅读
2/3
3/3
2/6
3/6
4/6
5/6
6/6
函数imgrayscaling1/7
2/7
3/7
4/7
5/7
6/7
7/7
示例1/3
2/3
3/3
MATLAB图像灰度拉伸分段线性变换
函数表达式如图,重要的参数是,.
x1和x2是需要转换的灰度范围,y1和y2参数决定线性变换的斜率.
可以看出函数表达式就是分段函数的表达式.

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

当斜率大于1,拉伸区域会变亮,斜率小于1会变暗.
分析函数parse_inputs1/6对图像变换前,需要定义一个分析输入参数个数和有效性的函数parse_inputs.
输出:图像A、索引图调色板map、参数组

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

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

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

检查调色板map.

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

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

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

对非灰度图像进行转换.

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

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

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

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

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

为 灰度拉伸后的图像如图.


为 灰度拉伸后的图像如图.


版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_634105.html