How to obtain this graph???
이전 댓글 표시
채택된 답변
추가 답변 (1개)
Winston
2020년 4월 8일
0 개 추천
Hi, Walter, I have a question regarding the x value, it is the pixel number, but most of the time, the intensity peak is at a point which is not an interger, such as a peak (y max) at x=160.23, which means among the 161st pixel, there is a peak. so if we plot x from 1 to 200 with increasement of 1, then we will omit the peak, how to find or export the exact x value?
댓글 수: 3
Walter Roberson
2020년 4월 8일
How are you computing the intensity peak? Or perhaps I should ask how you know that the peak should be at 160.23 (in this example) ?
Winston
2020년 4월 8일
figure, improfile(I, x, y);
then from the profile, I can use data tips to point out the peak, giveing the corresponding x value. x starts from 0 ending with the end pixel coordinates. then how to export all the x values ?

Walter Roberson
2020년 4월 8일
It is likely that you profiled at an angle across the image, rather than on a row or column.
improfile() works by finding the longer edge of the x and y distance, and setting up integer increments along that distance, and doing linear interpolation of the other coordinates to have the same number of points. Then it does interp2() with those coordinates.
We can tell from the fact that the "x" values are non-integer, that you are looking at values belonging to the shorter distance between coordinates, the one that would have been interpolated when the other coordinate would have been exact integers.
It is questionable as to whether you can say that the peak is "really" at x = 160.23. The value you are seeing there is a weighted average of the surrounding pixels. The "real" peak is at 160 or 161.
카테고리
도움말 센터 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
