1、图像的读取与显示
>> rgb = imread('F:\图片\beautiful scenery\\2.jpg'); %读取图片
>> image(rgb) %显示图片
2、通过矩阵产生图像
>> A = [1 2 0 ;5 6 7;12 90 7];
>> imshow(A)
3、读取图像数据到数组
A = imread('tp.jpg') ;%图片数据存储在A中
对于一张真色彩图片,数组A是一个三维数组,即M*N*3.
注意:对数组A进行运算时候,要将其转换成double型才可以,否则会算术溢出(当值大于255便溢出)。例如T=[123 252 12 0]为数组A中的以部分元素,则T(1)+T(2)=0(溢出)。
因此对于图像数组运算千万要注意!
将图像数组转换成double型方法:
A = im2double(A).此时A中数字均会按照相应的比例转换成double数字.
4、改变图像像素
函数imresize(A,[M,N])将图片A的像素变成N*M,并返回改变像素后的图片。例:
hf = imread('E:\临时文件\38.jpg') ;
N = 800 ;%图片的像素为800*800
hf = imresize(hf,[N,N]) ;
5、窗口分割
【例一】
A= imread('E:\临时文件\3.bmp') ;
%黑白照片上下左右旋转
C0 = A ;
C1 = rot90(C0,1) ;%逆时针旋转90
C2 = rot90(C0,2);%逆时针旋转180
C3 = rot90(C0,3);%逆时针旋转270
%显示旋转的图片
figure('NumberTitle','off','Name','图片旋转') ;
subplot(2,2,1) ;
imshow(C0) ;
xlabel('原始图片') ;
subplot(2,2,2) ;
imshow(C1) ;
xlabel('左旋转') ;
subplot(2,2,3) ;
imshow(C2) ;
xlabel('倒置') ;
subplot(2,2,4) ;
imshow(C3) ;
xlabel('右旋转') ;
pause(3) ;
close all ;
效果如图:
【例二】
A = [1 2 ;3 4];
subplot(6,2,1:2:11);
imshow(A/256);
for i = 2:2:12
subplot(6,2,i);
imshow(A'/256