将捕获的图像存储在结构中时出错

时间:2014-10-31 19:49:22

标签: matlab cell-array

我想从我的网络摄像头捕获100张图像,然后将它们存储在一个结构中。我尝试这样做但我收到错误'subscripted assignment dimensions mismatch'

代码是这样的:

sep_images=struct('images',[]);


vid=videoinput('winvideo',1,'YUY2_320x240');

set(vid,'FramesPerTrigger',Inf);
set(vid,'ReturnedColorspace','rgb');

vid.FrameGrabInterval=1;

start(vid)


for num_frames= 1:100

    im=getsnapshot(vid);

   sep_images.images(num_frames)=im;

end

stop(vid);

它在本声明sep_images.images(num_frames)=im;中给出了错误。 如果有人知道如何做到这一点?请告诉我。

1 个答案:

答案 0 :(得分:0)

我认为您希望images字段为单元格。

初始化如:

sep_images=struct('images',{[]})

分配如:

sep_images.images{num_frames}=im;

请记住也使用大括号(即I = sep_images.images{iframe})来访问它。