MATLAB Answers

What would be the outcome of this line?

1 view (last 30 days)
Stelios Fanourakis
Stelios Fanourakis on 25 Feb 2019
Commented: Rik on 25 Feb 2019
Hi
If I use this line code
for col = col1 : col2
row2 = find(mask(:, col), 1, 'last'); % Get bottom row of mask
heights(col) = row2 - topRow;
end
The heights will be a number of pixel intensity (e.g. pixel intensity value of X - pixel intensity value of Y) OR will be a number of pixels (e.g. 320 - 310 pixels = 10 pixels)??
Can you please clarify?
Thank you

  2 Comments

Stelios Fanourakis
Stelios Fanourakis on 25 Feb 2019
Ok, now I know that the above line gives an arithmetic value, like 320-310 = 10 pixels.
But why when I use the line
heights(col) = rgbImage(320,col) - rgbImage(340,col);
I get the difference of pixel intensity values of those two pixels on the image? What's the difference between those two lines?
For instance if the pixel at position X: 320 Y: 454 has value of RGB: 88
And the pixel at position X: 340 Y: 454 has value RGB: 90
I will get result 2.
Why should I get result of 2 and NOT 20 which is the number of pixels between the two points?
Can someone explain clearly the difference?
Rik
Rik on 25 Feb 2019
You are subtracting positions to get a distance, you are subtracting values to get an intensity difference.
Since in this line
heights(col) = rgbImage(320,col) - rgbImage(340,col);
you're doing the second, it stands to reason you get an intensity difference, not a distance.

Sign in to comment.

Answers (0)

Sign in to answer this question.