读取和写入图像文件
- imread函数,读取图像文件
- imwrite函数,写入文件,通过指定不同后缀名可以修改图像的格式。
- imfinfo函数,读取图像文件的属性。
示例1
>> i=imread('pout.tif');%读入图像
>> whos i %查看图像变量信息
Name Size Bytes Class Attributes
i 291x240 69840 uint8
%通过whos命令可以看出读入的高为291宽为240的灰度图像是一个二维矩阵
>> imwrite(i,'pout.bmp');将图像写入文件中,同时转换了格式
>>> imfinfo('pout.tif')
ans =
包含以下字段的 struct:
Filename: 'F:\Program Files\Polyspace\R2019a\toolbox\images\imdata\pout.tif'
FileModDate: '13-4月-2015 13:23:13'
FileSize: 69296
Format: 'tif'
FormatVersion: []
Width: 240
Height: 291
BitDepth: 8
ColorType: 'grayscale'
FormatSignature: [73 73 42 0]
ByteOrder: 'little-endian'
NewSubFileType: 0
BitsPerSample: 8
Compression: 'PackBits'
PhotometricInterpretation: 'BlackIsZero'
StripOffsets: [1×9 double]
SamplesPerPixel: 1
RowsPerStrip: 34
StripByteCounts: [1×9 double]
XResolution: 72
YResolution: 72
ResolutionUnit: 'Inch'
Colormap: []
PlanarConfiguration: 'Chunky'
TileWidth: []
TileLength: []
TileOffsets: []
TileByteCounts: []
Orientation: 1
FillOrder: 1
GrayResponseUnit: 0.0100
MaxSampleValue: 255
MinSampleValue: 0
Thresholding: 1
Offset: 69004
ImageDescription: 'Copyright The MathWorks, Inc.'
显示图像
imshow函数
%调用格式
imshow(i,map) %i为要显示的图像矩阵,map是颜色索引表
imshow(filename) %可以不读入图像,直接使用图像文件名显示图像
多幅图像显示
不同窗口显示
>> i=imread('pout.tif');
>> %在不同窗口显示
>> figure;%创建一个新窗口
>> imshow(i);
>> figure;
>> imshow(i,[])
同一窗口显示
>> i=imread('pout.tif');
>> figure;
>> subplot(1,2,1);
>> imshow(i);
>> subplot(1,2,2);
>> imshow(i);
figure函数用于创建一个新的窗口,避免新的图像覆盖原图像。subplot(m,n,p)表示打开一个m行n列图像位置的窗口,并将焦点位于第p个位置上。
多帧图像的显示
显示多帧图像时,可以显示多帧中的一帧,也可以全部显示出来,还可以将多帧图像转化为电影播放出来。
>> load mri %载入软件自带的核磁共振图像
>> imshow(D(:,:,7),map); 显示多帧中的一幅
>> figure,montage(D,map); %同一窗口显示
>%转化为电影
>> figure
>> mov=immovie(D,map);
>> colormap(map); %设定颜色表
>> movie(mov);%播放电影
其余操作
- 图像放缩zoom on 与zoom off
- 像素值查看工具,impixelinfo函数,图像右下角实时显示像素值。xy坐标值与灰度值
- 交互方式查看两点之间的距离,imdistline函数。
转载:https://blog.csdn.net/effort_study/article/details/102011265
查看评论