Subscripted assignment dimension mismatch

N = 4;
tps=10;
status = [0 0 0 0 0 0 0 0 0 0 0];
img = zeros(540,960,N);
for i = 1:N
img_tmp = imread(f_list(i).name);
img(:,:,i) = img_tmp(:,:,1);
end
bck_img = (mean(img,3)); %average background template
%subplot(121);imagesc(bck_img)
%subplot(122);imagesc(img(:,:,1))
clear img;
pause(5)
%gaussian filter
hsize = 80;
sigma = 20;
gaus_filt = fspecial('gaussian',hsize , sigma);
%gaus_filt = fspecial('log',hsize , sigma);
%subplot(121); imagesc(gaus_filt)
%subplot(122); mesh(gaus_filt)
colormap(gray)
SE = strel('diamond', 0)
Here, I am getting the error as subscripted assignment dimension mismatch but I am unable to figure out where is the error.

3 Commenti

The error message will include the offending line in the text with traceback information to the calling routine.
Use the debugger and
dbstop on error
and you can see what condition of various variables is at the time of the failure which will more than likely lead you to the "aha!" moment...
Thank you, for helping me out. I got an error in the below line,
img(:,:,i)=img_tmp(:,:,1).
Can you please help me in this.

Accedi per commentare.

 Risposta accettata

Walter Roberson
Walter Roberson il 15 Apr 2018
Your images are not all the same size when they are read in. You will need to read into a temporary variable and then either crop or pad or imresize() to fit the expected space.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by