MATLAB Answers

finding the centre line of the binary image

5 views (last 30 days)
Lord Thabet
Lord Thabet on 20 Sep 2021
Commented: Lord Thabet on 20 Sep 2021 at 21:54
Hi,
I have been trying to find the mid points of the white pixel in binary image so that I can draw a horizontal centre line.
As shown in the below image.So I'm thinking that I can find the right and left side points and then from there I can find the middle point for each row and this will create a multiple points which will alow me to dwar a centre line.
please if any one would be happy to help me that would be great. Thanks in advance
This is the image that I have.

Accepted Answer

Image Analyst
Image Analyst on 20 Sep 2021
Try
[rows, columns] = size(binaryImage);
leftEdges = nan(rows, 1);
rightEdges = nan(rows, 1);
for row = 1 : rows
t = find(binaryImage(row, :), 1, 'first');
if ~isempty(t)
leftEdges(row) = t;
rightEdges(row) = find(binaryImage(row, :), 1, 'last')
end
end
midPoints = (leftEdges + rightEdges) / 2;;
  5 Comments
Lord Thabet
Lord Thabet on 20 Sep 2021 at 21:54
Thank you so much that did help.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by