多数のブロブを含む一連のマトリックスがあり (これはマトリックスごとに異なります)、ブロブの重心を見つける方法を探しています。そのためにregionprops
、オプションを使用しCentroid
ます。
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