問題:
与えられた : n >> k の場合、3 次元の k 辺非凸多角形に強く相関する n 個のポイント
Find : ポイントの元のジオメトリに一致する最適な凹包
試みられた解決策:
警告: 疑似コード
segments = []
for each point in image:
#segment points into planes via comparing approximate normals
#actual implementation is more complicated
findSegment(image,point)
for each segment in image:
#transform coordinate system to be a
#2D-plane perpendicular to the normal of segment
transform(segment, segment.normal)
edges = findEdges(segment)
polygonHull = reconstructPolygon(edges)
#transform back to original coordinate system
transform(segment, segment.normal)
例:
___
| | |
| \__ ==> | ___
| | |__/ /_____
|_______| / / \_
/ /_____/
/
入力は、ポリゴン プレーン内にほぼ均一に分散されたランダムなポイントである高密度のポイント クラウドであり、少しノイズがあります。
出力は、3D ポイントのポリゴンの頂点になります。
私の質問は、この問題にアプローチするより良い方法はありますか? 上記の解決策の問題点は、ポイントがノイズになる可能性があることです。また、ポイントを 2D にラスタライズしてからエッジ検索を実行するのはかなりコストがかかります。
どんな指針も素晴らしいでしょう。前もって感謝します