matlab如何批量提取图像灰度值
我知道用imread语句可以提取一张图片的灰度值,但是我现在有上百张图片,一一提取灰度值非常麻烦而且低效,所以想请教一下有没有办法可以批量提取多张图片的灰度矩阵,急求各位...
我知道用imread语句可以提取一张图片的灰度值,但是我现在有上百张图片,一一提取灰度值非常麻烦而且低效,所以想请教一下有没有办法可以批量提取多张图片的灰度矩阵,急求各位大虾打救,谢谢
展开
1个回答
展开全部
你可以将这些图片按顺序命名,然后使用一个循环逐个读取数据,最后cat成一个三维数组。
追问
我觉得你的想法很好,能不能具体一点,例如需要什么指令之类的,或者举个例子讲解下,谢谢
追答
比如,你先把所有的图片使用批量重命名工具(网上有很多,如好压重命名)按顺序命名,如pic1,pic2,...,picN;
并将其放在下面的目录下,
currdir = 'D:/imagedir/';
imgdata = zeros(row,col,N);
for num = 1:N
name = [currdir,'pic',num2str(num),'.bmp'];
imgdata(:,:,num) = imread(name);
end
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询