我计算了图像的质心,现在想知道物体边界上距离质心最远点的坐标。
我使用以下代码计算最大距离。
boundaries = bwboundaries(pad);
thisBoundary = boundaries{1};
boundaryX=thisBoundary(:,1);
boundaryY=thisBoundary(:,2);
% Get the distances of the boundary pixels from the centroid.
distances= sqrt((boundaryX - a2).^2 + (boundaryY - b2).^2);
% Scan the boundary to find the pixel on it that is
% farthest from the centroid.
maxRadius = max(distances);
disp(maxRadius);
如果有人知道如何从质心计算物体边界上最远点的坐标。最远点与质心的距离在上面计算为maxRadius。这里a2,b2是对象'pad'的质心坐标。
答案 0 :(得分:3)
在这里,您似乎在问“我如何找到哪个输入值max
已选择为最大值”。您需要使用max
的第二个输出参数。对于您的具体情况,这给出了类似的内容:
[maxRadius, maxInd] = max(distances);
maxCoord = thisBoundary(maxInd, :);
请阅读the max
function's documentation。请在下次提出你要问的确切问题。