작업은 내가 가지고있는 centroid를 regionprops
행에 가로로 연결 한 다음 누락 된 객체를 예측하는 것입니다. 여기 centroids를 수평으로 연결하고 누락 된 객체를 감지하십시오.
모든 무게 중심을 특정 y 좌표 범위 내에서 연결되어 있어야합니다 : 이것은 내가 달성하고자하는 것입니다
. 그 후 누락 된 객체를 예측하고 싶습니다. 예를 들어 위의 이미지에서 녹색 선에 더 많은 객체/중심이 있어야합니다. 지금까지
내 코드 :
BW = rgb2gray(imread('noise_removal_single_25_cropped.png'));
props = regionprops(im2bw(BW), 'Centroid');
centroids = cat(1, props.Centroid);
[B,L] = bwboundaries(BW,'noholes');
imshow(label2rgb(L, @jet, [.5 .5 .5]))
hold on
for k = 1:length(B)
boundary = B{k};
plot(boundary(:,2), boundary(:,1), 'w', 'LineWidth', 2)
end
plot(centroids(:,1),centroids(:,2), 'b*')
plot(centroids(:,1),centroids(:,2), 'k-')
코드는 수직으로 모든 무게 중심을 연결하고 나는 방법 (아마도 라인의 길이에 따라)없는 개체/무게 중심을 감지하는 아무 생각이 없다?
centroid를 어디에서 수직 연결합니까? 나는 당신이 당신의 코드에서 경계와 중심을 그리는 것을 본다. 한 가지 방법은 가장 가까운 이웃을 찾는 것입니다. 누락 된 포인트는 이웃 사람들이 평소보다 더 큰 거리를 갖게합니다. 물론 당신은 포인트가 수평으로 그룹화되어 있다는 것을 알 수있는 장점이 있습니다. https://en.wikipedia.org/wiki/Nearest_neighbor_search – Piglet