正文
matlab读写图片,读取图像序列,读取AVI视频
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
介绍使用matlab读写图片,读取图像序列,读取AVI视频的方法:
一、读写图像
使用matlab读一幅图像,并另存
% Filename: ImageReadWrite
clc;
clear;
i = imread('D:\\aa3.bmp');%打开D:\\aa3.bmp图像
imshow(i); %显示图像
imwrite(i, 'D:\\aa4.jpg');%将图像另存为D:\\aa4.jpg
使用matlab读写还可以进行图片格式转换,将jpg图像转换成256色灰度图像:
% Filename:RGBtoGrayImage
i = imread('D:\\1.jpg');%读RGB图像
j = rgb2gray(i); %RGB图像转灰度图像
imshow(j);
imwrite(j, 'D:\\1.bmp') %另存时选bmp格式
二、读取图像序列
使用matlab读取图像序列,并显示
% Filename:ImageSequence
clc
clear
dList=dir('D:\\ImageSequence\\*.JPG');
N=length(dList); %Number of Images
for i=:N
Image_data{i}=imread(['D:\\ImageSequence\\',dList(i).name]);
imshow(Image_data{i});
pause(0.0);
drawnow;
end
三、读AVI格式的视频
% Filename:VideoRead
clc;
clear;
video = mmreader('D:\\VideoTest.avi');
nFrames = video.NumberOfFrames; %得到帧数
H = video.Height; %得到高度
W = video.Width; %得到宽度
Rate = video.FrameRate;
% Preallocate movie structure.
mov(:nFrames) = struct('cdata',zeros(H,W,,'uint8'),'colormap',[]);
%read one frame every time
for i = :nFrames
mov(i).cdata = read(video,i);
P = mov(i).cdata;
disp('当前播帧数:'),disp(i);
imshow(P),title('视频');
end