注:
读取图像的路径自己设置。
图像文件的查询
% imfinfo() 用于获取一张图片的具体信息
info=imfinfo('E:\a_matlab_file\picture\longmao.jpg');
disp(info);
图像的读取
img_route='E:\a_matlab_file\picture\***.jpg';
A=imread(img_route);
set(0,'defaultFigurePosition',[100,100,1000,500]);
set(0,'defaultFigureColor',[1 1 1])
figure,
subplot(121);
title('图一');
#为什么不显示图像呢???
图像的储存
a=rand(50);
imwrite(a,'p1.jpg');
生成的图像在当前目录下面,和.m文件在同一个目录
也可以将一个图像写入当前目录下:
l1=imread(‘E:\a_matlab_file\picture***.jpg’);
img=rgb2gray(l1);
imshow(img);
imwrite(img,‘gray.jpg’);
图像文件的显示
以下函数的格式都可通过 help 函数名 来查看 ,以下图片如有侵权,请私聊,将其删除。
l=imread('E:\a_matlab_file\picture\666.jpg'); %图片的位置(绝对路径)
imtool()
imtool(l); % 函数显示图像示例
% imtool close all; % 关闭所有的图像工具
inshow()
imshow(l);
直接显示图像
显示双精度灰度图片
bw=zeros(1000,1000);
bw(20:20:980,20:20:980)=1;
imshow(bw);
显示索引图像
[X,MAP]=imread('E:\a_matlab_file\picture\666.jpg');
imshow(X,MAP);
按灰度级显示
imshow(l);
l1=imread('E:\a_matlab_file\picture\***.jpg');
% 将一幅彩色图像转换成灰度图像
img=rgb2gray(l1);
subplot(121);
imshow(l1);
title('原始图像');
subplot(122);
imshow(img);
title('灰度图像');
% 按最大灰度范围显示图像
l1=imread('E:\a_matlab_file\picture\***.jpg');
set(0,'defaultFigurePosition',[100,100,1000,500]);
set(0,'defaultFigureColor',[1 1 1]);
subplot(131),imshow(l1);
subplot(132),imshow(l1,[60,180]);
img=rgb2gray(l1); % 将一幅彩色图像转换成灰度图像
subplot(131);
imshow(l1);
title('原始图像');
subplot(132);
imshow(l1);
title('灰度图像1');
subplot(133);
imshow(img);
title('灰度图像2');
图形读取的image()、imagesc()
l1=imread('E:\a_matlab_file\picture\***.jpg');
figure,
subplot(221),imshow(l1);
title('imshow');
subplot(222),image(l1);
title('image');
subplot(223),image([50,200],[50,300],l1);
title('image2');
subplot(224),imagesc(l1,[60,150]);
title('imagesc');
image(x,y,c):x,y分别为图像显示位置的左上角坐标,c为图像
imagesc(…,clims):clism是两元素的向量,用来限定C中的数据的范围,这些值映射到当前色图的整个范围。
colorbar()
将颜色条添加到坐标轴对象中
% colorbar将颜色条添加到坐标轴对象中,若该坐标轴包含一个图像对象,则添加的颜色将指示出该图像中不同颜色的数据值
% 对于了解被现实图像的灰度级别有用
i=imread('E:\a_matlab_file\picture\sky.jpeg');
imshow(i,[]);
colorbar
i=imread('E:\a_matlab_file\picture\sky.jpeg');
imshow(i);
colorbar
% imshow(i,[])-->imshow(i,[0 255])
% imshow(i)-->imshow(i,[0 1])
montage()
% 多帧图像是一种包含多幅图像或帧的图像文件,又称多页图像或图像序列
% 是一个四维数组,第四维用来指定帧的序号,多帧图像数组中每一幅图像必须有相同大小和颜色分量,每幅图像使用相同的颜色图
% matlab函数可以对多帧图像的每一帧处理,如果该多帧图像超出了该函数能力范围,结果不可预知
% montage可使多帧图像一次显示,也可分区显示每一帧,所有子区的图像使用同一颜色条
mri=uint8(zeros(128,128,1,6));
for frame=1:9
[mri(:,:,:,frame),map]=imread('mri.tif',frame);
end
montage(mri,map);
warp()
% warp()
% 纹理映射:二维图像 映射 三维图形表面
i=imread('E:\a_matlab_file\picture\sky.jpeg');
[x,y,z]=sphere; % 创建三个(N+1)x(N+1)的矩阵,使得surf(x,y,z)建立一个球体,省略是N取20
set(0,'defaultFigurePosition',[100,100,1000,400]); %修改默认位置
set(0,'defaultFigureColor',[1 1 1]); % 修改背景颜色
figure,
subplot(121),warp(i); % 图像映射到矩形平面
subplot(122),warp(x,y,z,i); % 将二维图像纹理映射到三维球体表面
whos % Name Size Bytes Class Attributes
who % 显示所有的变量
grid on;
subimage()
% subimage()
% 在一个图形区域内显示多个图像
load trees;
[x2,map2]=imread('forest.tif');
subplot(1,2,1);
subimage(X,map);
subplot(1,2,2);
subimage(x2,map2);
load filename 是命令形式的语法。命令形式需要的特殊字符更少。您无需键入括号或者将输入括在单引号或双引号内。使用空格(而不是逗号)分隔各个输入项。
zoom()
% zoom()
% zoom是一个开关键
% zoom on 打开缩放模式 zoom off 关闭
% zoom in 放大局部图像 zoom out 缩小图像