How to get the coordinates of two points?
1 次查看(过去 30 天)
显示 更早的评论
centroidColumn = int32(measurements.Centroid(1));
centroidRow = int32(measurements.Centroid(2));
middleColumn = binaryImage(:, centroidColumn);
topRowY = find(middleColumn, 1, 'first');
bottomRowY = find(middleColumn, 1, 'last');
middleRow = binaryImage(centroidRow, :);
leftColumnX = find(middleRow, 1, 'first');
rightColumnX= find(middleRow, 1, 'last');
imshow(Y);hold(imgca,'on');plot(centroidColumn, centroidRow,'m*','MarkerSize', 6, 'LineWidth', 3);
plot(centroidColumn, topRowY,'r*','MarkerSize', 6, 'LineWidth', 3);
By doing this I am able to mark two points. How can I get coordinates of these two points?
0 个评论
回答(1 个)
Guillaume
2020-1-28
I'm a bit confused by your question. You pass the coordinates of the points to plot, so you already know these coordinates:
1st point (magenta): (centroidColumn, centroidRow)
2nd point (red): (centroidColumn, topRowY)
---
Note: you should be using round instead of int32 to round numbers.
3 个评论
Guillaume
2020-1-28
Of course it's possible:
Ypoints = linspace(toRowY, centroidRow, 11); %divide the Y coordinates into 10 zones (== 11 boundaries)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!