MATLAB Answers

0

Why my plot doesn't seem correct?

Asked by Stelios Fanourakis on 10 Oct 2019
Latest activity Commented on by Stelios Fanourakis on 12 Oct 2019
Hi
I am using a binary image of white and black pixels (see attached image). I want to plot the white area of pixels so I am using a code to count from top white pixel to the last white pixel of the pic.
heights = zeros(1, columns);
for col = 1 : size(seg,2)
thisColumn = seg(:, col);
topRow = find(thisColumn, 1, 'first');
bottomRow = find(thisColumn, 1, 'last');
heights(col) = bottomRow - topRow; % Add 1 if you want.
end
plot(heights(:))
But plot doesn't seem right (see attached image). it should had the form and shape of the white area of the image, means a rectangle with a steep bottom.
Any reason why plot doesn't seem correct?
Thanks

  3 Comments

darova
on 10 Oct 2019
Where are white pixels?
It would be helpful if you could provide a bit more clarification by :
  1. Stating clearly what do you want to plot ? By saying "I want to plot the white area of pixels", do you mean you want to plot number of white pixels in each column of image vs the indices of column?
  2. Providing a .png file of the image (only) you intend to work on (because the one you have attatched contains the image, your plot and background, its difficult to separate the image from background)
Yeah sorry for the inconveniece but at the end I think it's correct. The white area of the image begins just underneath the title "Global Region -Based Segmentation". So the plot should like an horizontal line but it looks like a vertical one. However, if you notice the vertical line of the axes in the plot you'll see that this sharp vertical transition is only a pixel from 30-31 and it may belong to those little discrepancies of one pixel that are apparent a bit left of the real image. So I assume the plot is eventually correct. Thanks for your time

Sign in to comment.

0 Answers