如何对不同大小的矩阵(图像直方图)进行编号并检索它们(Matlab)

时间:2014-10-21 01:01:18

标签: matlab image-processing matrix cbir

使用Matlab,我有1000个彩色图像,它们的直方图大小为384 * 256 * 3或256 * 384 * 3,因此它们是矩阵。 我想给它们编号,然后检索它们。我知道我不能这样做:

for z=1:1000
H(:,:,:,z)={imread(strcat('image.orig/',int2str(z-1),'.jpg'))};
end

但是我的问题是如何对1000个矩阵进行编号,之后我可以得到它们中的任何一个,比如第一个图像,只需使用

H(:,:,:,1)

获取矩阵。我知道他们的尺寸不同所以我不能设置

H=zeros(384,256,3,1000);

因为它仅适用于大小为384 * 256 * 3的矩阵。

那么我应该做些什么来保存矩阵并简单地在变量名中使用1到1000之间的数字来获得任何矩阵?

我怎样才能对不同的矩阵进行编号并在以后获取每个矩阵?

希望我明确说明我的问题是什么。在此先感谢!!

1 个答案:

答案 0 :(得分:2)

正如chappjc所说,最好存放在牢房中。

H=cell(1000,1);

for z=1:1000
    H{z}=imread(strcat('test',int2str(z),'.jpg'))
end