1

我有一组带有许多斑点的矩阵(这从矩阵到矩阵的变化),我正在寻找一种方法来找到斑点的质心。为此,我使用regionpropsCentroid选项。

B = bwlabel(A);
stat = regionprops(B,'Centroid');

number_centers = numel(stat);
coord_centers = zeros(number_centers,2);
xy_cylinder = zeros(number_centers,2);
for x = 1: number_centers
   coord_centers(x,1) = stat(x).Centroid(1);   % Angle
   coord_centers(x,2) = stat(x).Centroid(2);   % Radius
end 

如果我绘制叠加质心的矩阵(下面的代码),我注意到它们略微偏移(它们位于质心所在像素的角落)。你觉得我说的对吗?你知道这是为什么吗?

axis equal;
pcolor(A), colorbar, hold on;
xlabel('Angle'); ylabel('Radius');
for x = 1: numel(stat)
    plot(stat(x).Centroid(1),stat(x).Centroid(2),'r+');
end

在此处输入图像描述

4

0 回答 0