MATLAB Answers

Why my plot doesn't seem correct?

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

darova 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

로그인 to comment.

답변 수: 0


Translated by