多幅图像,MATLAB中读取多幅图像"/>
matlab 保存多幅图像,MATLAB中读取多幅图像
如何在MATLAB中实现连续读取多幅图像数据,利用imread()函数该怎么写?
循环读取图片第一种方法①List =dir('*.jpg'); %如需其它图片格式支持,可以自己【重载dir()】函数,实现查找所有图片文件的功能, %如果图片是其它路径,可以用 ["路径" ".扩展名"] 字符串来实现。 k =length(dList); for i=1:1:k image_data{i}=imread(dList(i).name); end 第二种方法②I=ones(8,5); q=reshape(49:56,8,1); I(:,1)=q; I(:,2)='.'; I(:,3)='b'; I(:,4)='m'; I(:,5)='p'; L=setstr(I); %将ASCII码转为字符串; 第三种方法③ images= [ ]; fo r i= 1:M str= strcat ('D: \MATLAB\work\', int2str(i) , ’.bmp’) ; % 连接字符串形成图像的文件名。 img= imread(str); [rows cols]= size(img) ; % 获得图像的行和列值。 temp= reshape ( img, rows*cols, 1) ; % 创建一个(N1*N2)×1 矩阵。 images= [ images temp ]; % 完成循环后的images 矩阵是一个(N 13 N 2) ×M 矩阵。 end 上述三种方法中,第一种主要利用dir()函数,获得文件夹内图片的信息,然后创建一个元胞数组,将图片文件信息送入元胞数组 第二种方法是已知图片文件名,并且按数字顺序排列,然后利用数字和字符串之间的转换来进行。 第三种方法利用字符串连接函数strcat()函数巧妙运用循环实现图片的连续读入。 搜集整理的知识
更多推荐
matlab 保存多幅图像,MATLAB中读取多幅图像
发布评论