前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >浅析matlab中imadjust函数

浅析matlab中imadjust函数

作者头像
砸漏
发布2020-11-05 11:09:44
1.1K0
发布2020-11-05 11:09:44
举报
文章被收录于专栏:恩蓝脚本恩蓝脚本

imadjust

imadjust是一个计算机函数,该函数用于调节灰度图像的亮度或彩色图像的颜色矩阵。在matlab的命令窗口中键入: doc imadjust或者help imadjust即可获得该函数的帮助信息, 键入type imadjust可以查看函数的源代码。

函数功能:

imadjust在数字图像处理中用于进行图像的灰度变换(调节灰度图像的亮度或彩色图像的颜色矩阵)。在matlab的命令窗口中键入: doc imadjust或者help imadjust即可获得该函数的帮助信息, 键入type imadjust可以查看函数的源代码。

格式:

g = imadjust(f,[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,则输出灰度将被反转。

代码语言:javascript
复制
f = imread('C:\Users\win\Desktop\city-street.jpg'); %调整灰度图像的灰度范围
g = imadjust(f,[0.2;0.6],[0;1]);
figure(1);
subplot(1,2,1);imshow(f);title('原图');
subplot(1,2,2);imshow(g);title('调节灰度的图')

原图像的灰度范围在0~255之间,imadjust将小于0.2×255的值设为0,将大于0.6×255的值设为255。

在这里插入图片描述
在这里插入图片描述

stretchlim()

计算灰度图像的最佳输入区间。

使用stretchlim()和imadjust()共同对调整灰度图像的灰度范围

代码语言:javascript
复制
f = imread('C:\Users\win\Desktop\landscape.jpg');
s = stretchlim(f);%计算灰度图像的最佳输入区间
g = imadjust(f,s,[0,1]);%调整灰度图像的灰度范围
figure(1);
subplot(1,2,1);imshow(f);title('原图');
subplot(1,2,2);imshow(g);title('调节灰度的图')
在这里插入图片描述
在这里插入图片描述

g = imadjust(f,[low_in; high_in],[low_out; high_out],gamma) 将图像 I 中的亮度值映射到 J 中的新值。其中 gamma指定描述值f和值g关系的曲线形状。如果gamma小于1,此映射偏重更高数值(明亮)输出;如果gamma大于1,此映射偏重更低数值(灰暗)输出;默认gamma为1(线性映射)。

代码语言:javascript
复制
f = imread('C:\Users\win\Desktop\landscape.jpg');
s = stretchlim(f);%计算灰度图像的最佳输入区间
g = imadjust(f,s,[0,1],0.6);%调整灰度图像的灰度范围
h = imadjust(f,s,[0,1],6);
figure(1);
subplot(1,3,1);imshow(f);title('原图');
subplot(1,3,2);imshow(g);title('gamma = 0.6')
subplot(1,3,3);imshow(h);title('gamma = 6');
在这里插入图片描述
在这里插入图片描述

RGB2 = imadjust(RGB1,…) 对 RGB 图像 RGB1 的红、绿、蓝调色板分别进行调整。随着颜色矩阵的调整,每一个调色板都有唯一的映射值。

代码语言:javascript
复制
f = imread('C:\Users\win\Desktop\rabbit.jpg');
g = imadjust(f,[0.2 0.3 0.1;0.6 0.8 0.9],[],0.6);%imadjust对RGB图像进行处理
figure(1);
subplot(1,2,1);imshow(f);title('原图');
subplot(1,2,2);imshow(g);title('处理后的图像')
在这里插入图片描述
在这里插入图片描述

知识点补充:

MATLAB imadjust函数理解

J = imadjust(I,[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 = imadjust(I,[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 = imadjust(I,[LOW_IN; HIGH_IN],[LOW_OUT; HIGH_OUT],GAMMA) GAMMA指定描述I和J关系的曲线的形状,GAMMA小于1意味着I的值在映射到J时变得比原值更大,GAMMA大于1意味着I的值映射后更小。

总结

到此这篇关于matlab——imadjust函数的文章就介绍到这了,更多相关matlab——imadjust函数内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档