The Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.matlab

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: more non-singleton rhs dimensions than non-singleton?
Replies: 9   Last Post: Jul 1, 2013 2:18 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Jimmy

Posts: 39
Registered: 9/17/09
Re: more non-singleton rhs dimensions than non-singleton?
Posted: Mar 7, 2010 8:09 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

"Sadik " <sadik.hava@gmail.com> wrote in message <hn1hno$nda$1@fred.mathworks.com>...
> Please check the dimensions of I by typing
>
> size(I) %without a semicolon or any other input, just size(I)
>
> If it is an rgb image that you are reading, it will have 3 dimensions. I think this is why you are getting that error. If you are working with such images, it is a good idea to have a 4D variable [sequence(:,:,:,p)] rather than a 3D one.
>
> Best.
>
> "Jimmy " <testbest1@yahoo.com> wrote in message <hn1feh$18f$1@fred.mathworks.com>...

> > Hi all,
> >
> > I am trying to compile a video from a sequence of images but I am getting the following error: Assignment has more non-singleton rhs dimensions than non-singleton
> > subscripts. The code is:
> >
> > fileFolder = fullfile('C:\Users\Dimitar\Documents\MATLAB\Plot');
> > path=fullfile(fileFolder,'data*.tif');
> > dirOutput = dir(path);
> > fileNames ={dirOutput.name};
> > numFrames = numel(fileNames);
> > I = imread(fullfile(fileFolder,fileNames{+1}));
> > rmax=size(I,1);
> > cmax=size(I,2);
> >
> > sequence = zeros([size(I,1) size(I,2) numFrames], class(I));
> >
> > % load in array
> >
> > for p = 1:numFrames
> > sequence(:,:,p) = imread(fullfile(fileFolder,fileNames{p}));
> > end
> >
> > mov = avifile('test.avi','Compression','None','fps',8);
> >
> > for j=1:size(sequence,3)
> > imshow(sequence(:,:,j));
> > f=getframe;
> > mov = addframe(mov, f);
> > end
> >
> > mov = close(mov);
> > close all;
> >
> > The error is in line: sequence(:,:,p) = imread(fullfile(fileFolder,fileNames{p}));
> >
> > Does anyone have any idea?
> >
> > Thank you
> > Jimmy


>> Hi Sadik,
thank you for your reply, I checked the dimenssions and I have 3 dimenssions indeed.
I changed it to [sequence(:,:,:,p)] but I have another error saying:
Subscripted assignment dimension mismatch

Thanks
Jimmy



Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2018. All Rights Reserved.