灰度变换--imadjust和stretchlim

来源:互联网 发布:杰视帮美工教程 编辑:程序博客网 时间:2024/05/18 23:27
% imadjust函数用于对灰度级图像进行灰度变换% 语法格式为:g = imadjust(f, [low_in, high_in], [low_out, high_out],gamma)% 将f图像中low_in到high_in之间的值映射到low_out和high_out之间,low_in以下的值映射为low_out,high_in以上的值映射为high_out% 输入图像可以使uint8、uint16、single和double类型的,输出图像和输入图像类型一致% 其中low_in, high_in,low_out,% high_out都是在0,1之间的数,对于uint8类型的图像,系统自动将其乘以255.若输入或输出为空,则代表[0, 1]% gamma指定映射函数的形状,小于1时,上凸;大于1时,下凹;缺省时默认为1.% 明暗翻转(imadust)f = imread('pic.jpg');f = rgb2gray(f);figure(1);imshow(f);g = imadjust(f,[0 1],[1 0]);figure(2);imshow(g);% 明暗翻转(imcomplement)g1 = imcomplement(f);figure(3);imshow(g1);% 将0.5到0.75之间的灰度映射到0到1;g2 = imadjust(f,[0.5 0.75],[0 1]);figure(4);imshow(g2);% 将gamma值设为2,函数下凹,g3 = imadjust(f,[],[],2);figure(5);imshow(g3);% 自动的使用函数imadjust,不必关心参数大小问题时,使用函数stretchlim% Low_High = stretchlim(f,tol)% Low_High是一个两元素向量,由一个低限和一个高限组成,小于这个低限的值的像素占整张图片的tol,大于这个高限的值的像素占整张图片的1-tol% tol缺省时代表0.01.g4 = imadjust(f,stretchlim(f),[]);figure(6);imshow(g4);% 增强负片图像的对比度g5 = imadjust(f,stretchlim(f),[1 0]);figure(7);imshow(g5);
% 增加对比度时常用函数:% g = 1./(1 + (m./f).^E)f = mat2gray(f);m = mean2(f);E = 15;g6 = 1./(1 + (m./f).^E);figure(8);imshow(g6);



 
原创粉丝点击