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 个评论

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.

请先登录,再进行评论。

 采纳的回答

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.

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by