今天就跟大家聊聊有关matlab中imadjust函数的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
imadjust
imadjust是一个计算机函数,该函数用于调节灰度图像的亮度或彩色图像的颜色矩阵。在matlab的命令窗口中键入: doc imadjust或者help imadjust即可获得该函数的帮助信息, 键入type imadjust可以查看函数的源代码。
函数功能:
imadjust在数字图像处理中用于进行图像的灰度变换(调节灰度图像的亮度或彩色图像的颜色矩阵)。在matlab的命令窗口中键入: doc imadjust或者help imadjust即可获得该函数的帮助信息, 键入type imadjust可以查看函数的源代码。
格式:
g = imadjustf,[low_in; high_in],[low_out; high_out]) 将图像I中的亮度值映射到J中的新值。即将low_in至high_in之间的值映射到low_out至high_out之间的值。 low_in 以下与 high_in 以上的值被剪切掉了,即低于low_in的作为low_in进行映射,高于high_in的作为high_in 进行映射。 [low_in; high_in]和[low_out; high_out]都可以使用空矩阵表示,默认为[0,1] 除f外,其他参数都在0到1之间。如果high_out<low_out,则输出灰度将被反转。
f = imread'C:\Users\win\Desktop\city-street.jpg'); %调整灰度图像的灰度范围 g = imadjustf,[0.2;0.6],[0;1]); figure1); subplot1,2,1);imshowf);title'原图'); subplot1,2,2);imshowg);title'调节灰度的图')
原图像的灰度范围在0~255之间,imadjust将小于0.2×255的值设为0,将大于0.6×255的值设为255。
stretchlim)
计算灰度图像的最佳输入区间。
使用stretchlim)和imadjust)共同对调整灰度图像的灰度范围
f = imread'C:\Users\win\Desktop\landscape.jpg'); s = stretchlimf);%计算灰度图像的最佳输入区间 g = imadjustf,s,[0,1]);%调整灰度图像的灰度范围 figure1); subplot1,2,1);imshowf);title'原图'); subplot1,2,2);imshowg);title'调节灰度的图')
g = imadjustf,[low_in; high_in],[low_out; high_out],gamma) 将图像 I 中的亮度值映射到 J 中的新值。其中 gamma指定描述值f和值g关系的曲线形状。如果gamma小于1,此映射偏重更高数值明亮)输出;如果gamma大于1,此映射偏重更低数值灰暗)输出;默认gamma为1线性映射)。
f = imread'C:\Users\win\Desktop\landscape.jpg'); s = stretchlimf);%计算灰度图像的最佳输入区间 g = imadjustf,s,[0,1],0.6);%调整灰度图像的灰度范围 h = imadjustf,s,[0,1],6); figure1); subplot1,3,1);imshowf);title'原图'); subplot1,3,2);imshowg);title'gamma = 0.6') subplot1,3,3);imshowh);title'gamma = 6');
RGB2 = imadjustRGB1,…) 对 RGB 图像 RGB1 的红、绿、蓝调色板分别进行调整。随着颜色矩阵的调整,每一个调色板都有唯一的映射值。
f = imread'C:\Users\win\Desktop\rabbit.jpg'); g = imadjustf,[0.2 0.3 0.1;0.6 0.8 0.9],[],0.6);%imadjust对RGB图像进行处理 figure1); subplot1,2,1);imshowf);title'原图'); subplot1,2,2);imshowg);title'处理后的图像')
知识点补充:
MATLAB imadjust函数理解
J = imadjustI,[LOW_IN; HIGH_IN],[LOW_OUT; HIGH_OUT]) [LOW_IN; HIGH_IN]控制原图像I中像素值要在J中显示的范围,LOW_IN表示I要显示的像素值最小值,HIGH_IN表示I要显示的像素值最大值 [LOW_OUT; HIGH_OUT]表示J中像素值范围
举个例子:
J = imadjustI,[0.3 0.8],[0.2 0.9]) :表示I显示在J中的像素值范围为0.3到0.8,而且0.3在J中对应0.2,0.8在J中对应0.9。I中小于0.3的也都在J中用0.2表示,高于0.8的像素在J中都用0.9表示。 J = imadjustI,[LOW_IN; HIGH_IN],[LOW_OUT; HIGH_OUT],GAMMA) GAMMA指定描述I和J关系的曲线的形状,GAMMA小于1意味着I的值在映射到J时变得比原值更大,GAMMA大于1意味着I的值映射后更小。