Obtaining coordinate values within circular ROI
9 ビュー (過去 30 日間)
古いコメントを表示
Hello all,
I have a function that receives xlist (vector of row coordinates) and ylist (vector of column coordinates) as inputs. I would like create another function that allows users to just select a starting coordinate (x, y) and it will capture all coordinates within a circular region of radius r (predefined) in the format of xlist and ylist.
My image is always 512*512 (grayscale CT). How do I do this?
Thank you so much!
1 件のコメント
Michael Werthmann
2019 年 2 月 28 日
Hello Brian,
I have a similar problem. Die you manage to solve yours?
Regards
Michael
回答 (1 件)
KSSV
2019 年 2 月 28 日
Check this demo example:
I = imread('cameraman.tif') ;
[ny,nx] = size(I) ;
C = input('Enter center of circle C(x,y), should be less then 256:','s') ;
R = input('Enter Radius of circle:','s') ;
%
C = str2num(C) ;
R = str2num(R) ;
%
th = linspace(0,2*pi) ;
xc = C(1)+R*cos(th) ;
yc = C(2)+R*sin(th) ;
[X,Y] = meshgrid(1:nx,1:ny) ;
idx = inpolygon(X(:),Y(:),xc,yc) ;
I(~idx) = 255 ;
imshow(I)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!