Why "Attempt to grow array along ambiguous dimension." only for some images?

2 views (last 30 days)
I am analysing images in MATLAB and the code I have is running fine for most images.
I get the error: "Attempt to grow array along ambiguous dimension." for some images.
Why is this happening? I assume that the code is correct, as it works for most images...
The code runs into the issue here:
%Extract contour
RminusBdouble = double(Iplan(:,:,1))- double(Iplan(:,:,3));
%Mask out data outside of ROI (ROI determined from transects)
ROIx = [transects.x(1,:) fliplr(transects.x(2,:))]; %Transects file determines the ROI
ROIy = [transects.y(1,:) fliplr(transects.y(2,:))]; %Transects file determines the ROI
Imask = ~inpoly([X(:) Y(:)],[ROIx',ROIy']); %use the function inpoly instead of inpolygon as it is much faster
RminusBdouble(Imask) = NaN; %Mask data
%Imask = find(RminusBdouble==0); %Also remove regions of black colour
%RminusBdouble(Imask) = NaN; %Mask data
c = contours(X,Y,RminusBdouble,[thresh thresh]);
  1 Comment
Siegmund Nuyts
Siegmund Nuyts on 11 Mar 2022
The issue is resolved now.
I recalled an array with different dimensions, which caused the error.

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 11 Mar 2022
In arrays, the X coordinate is the second coordinate, not the first.
  2 Comments

Sign in to comment.


yanqi liu
yanqi liu on 12 Mar 2022
yes,sir,may be check
size(Iplan)
if is 2 dimension,may be can not use Iplan(:,:,3)

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by