【发布时间】:2011-07-04 05:18:37
【问题描述】:
我有一百个大小相同的 RGB 图像,编号从 1 到 100。我想从中创建一个图像。例如,如果我给定 row=10 和 column=10,那么输出应该是前 10 个图像将形成第一行,依此类推。
【问题讨论】:
我有一百个大小相同的 RGB 图像,编号从 1 到 100。我想从中创建一个图像。例如,如果我给定 row=10 和 column=10,那么输出应该是前 10 个图像将形成第一行,依此类推。
【问题讨论】:
一种方法是创建一个包含图像的 10×10 元胞数组,然后使用 CELL2MAT 将它们连接成一个大图像。
nRows = 10;
nCols = 10;
imgCell = cell(nRows,nCols);
for iImage = 1:nRows*nCols
%# construct image name - fix this like so it conforms to your naming scheme
%# also, add the path if necessary
imageName = sprintf('image%i.jpg',iImage);
%# add the image to imgCell
%# images will filled first into all rows of column one
%# then into all rows of column 2, etc
imgCell{iImage} = imread(imageName);
end
%# if you want the images to be arranged along rows instead of
%# columns, you can transpose imgCell here
%# imgCell = imgCell';
%# catenate into big image
bigImage = cell2mat(imgCell);
%# show the result
imshow(bigImage)
【讨论】: