
remove outliers from a circumference
조회 수: 3 (최근 30일)
이전 댓글 표시
hi guys.. I have a series of points, those points generates a sort of circumference/ellipse in the 3d space ( intersection between a shpere and a cone).. i want to get rid of the outliers....I've tried using rmoutliers, but nothing.. can you help me?
댓글 수: 0
채택된 답변
darova
2019년 10월 16일
Here is an idea:
x0 = mean(x); % Choose some center point (maybe approximately)
y0 = mean(y);
[t,r] = cart2pol(x,y); % convert your data to polar system
[~,ix] = sort(t); % sort your data by angle
tol = 0.4; % some tolerance
ix1 = find(diff(r(ix) > tol); % find values where difference of radius is too big
ind = ix(ix1); % indices of outlier points
plot3(x(ind),y(ind),z(ind),'or')

댓글 수: 2
darova
2019년 10월 17일
Opps! Data should be replaced to 'origin'. Try:
[t,r] = cart2pol(x-x0,y-y0); % convert your data to polar system
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!