Info
이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.
Designing a Filter in MATLAB
조회 수: 1 (최근 30일)
이전 댓글 표시
I have a matrix containing the x,y,z data of points. I want to implement a filter which removes a particular value which is due to some mathematical error
Pnts =
41.5 91.5 71.5
41.6 91.6 71.6
41.7 91.7 71.7
41.8 91.8 71.8
41.9 91.9 71.9
41.10 91.10 71.10
41.11 91.11 71.11
55.5 110.5 95.5
41.13 91.13 71.13
41.14 91.14 71.14
41.15 91.15 71.15
41.16 91.16 71.16
41.17 91.17 71.17
So the value which is 55.5 110.5 and 95.5 is a error value and has to be removed. So please someone help me how to proceed with this problem.
Thanks
댓글 수: 4
답변 (1개)
Honglei Chen
2012년 11월 12일
You need to figure out a rule yourself because other people cannot know why the specific row is an error but others are not. Using your example, assume the rule is "anything greater than 42 is an error", then you can remove the line by doing
Pnts(Pnts(:,1)>42,:) = []
댓글 수: 5
Walter Roberson
2012년 11월 13일
Outlier detection in multiple dimensions can get a bit tricky. You could do the detection in terms of Euclidean distance (or other distance) from the centroid of all of the points together, but that can easily miss outliers that humans would pick out quickly. In particular if there are multiple clusters, it can be better to cluster the image first and then determine outliers relative to the deemed cluster.
In some cases it makes the most sense to use PCA to find the principle axes through the cloud, and then rotate the coordinates to align with those axes, and then to use something like the multi-dimensional equivalent of an ellipse aligned along the new X-Y-Z axes, with the exclusion criteria being determined according to distance from the outer shell of the ellipsoid (e.g., when one is working with points that are roughly on a surface surrounding a centroid, as opposed to working with points that are inside a surface surrounding a centroid.
If all you can say is that the points are in 3-space then the outlier detection will probably end up being pretty crude.
이 질문은 마감되었습니다.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!