2017-01-19 20 views
0

Kinect Fusionを使用していて、TSDFボリューム(450x450x150)を取得した後、3Dメッシュを表示するためにマーチングキューブ(MATLABの等値面)を適用しました。しかし、私が得たものは、その姿が示されています。オブジェクトの背後には長い影がありました。だから私の実装で何が間違っているか教えていただけますか?Kinect Fusion-Shadowエフェクトのマーチングキューブ

https://i.stack.imgur.com/onaFX.png) ありがとうございました。

+1

コードや実装で何をしているのかについて詳しく説明できますか? – akousmata

+0

Plz providez ur codez。 – rayryeng

+0

こんにちは、これは私のコードです https://drive.google.com/open?id=0B5cZWwgT9hfWN2NBT3BKZDViaHc 私は半球を説明するためにMCを使用します。しかし、私が得たものはそうではありません。 –

答えて

0

あなたがMatlabコードを提供できるなら、それは素晴らしいでしょう。

私はそうです。しかしながら;あなたが0(深度データなし)から実際のデータまでの範囲の値を持つ単一の深度フレームしか持たないので、影があることを指摘したいと思います。 3Dメッシュを構築するとき、隣接する点の間にサーフェスが作成され、オブジェクトのエッジに沿って0から実際の深さデータに移動し、それによって「シャドウ」が作成されます。このための回避策はありません。 360度のデータがあり、360度でサーフェスを作成している場合にのみ、完全な図形が得られます。完全な後ろと前で。

+0

はい、これは私のコードです。私は半球を説明するためにMCを使用します。 https://drive.google.com/open?id=0B5cZWwgT9hfWN2NBT3BKZDViaHc アイソサーフェイスを使用しているので、これは間違ったイラストにつながると思います。オブジェクトの後ろにあるポイントは-1の値を取得するため(コードでは-0.001、mmからmに変換します)。したがって、私のコードは半球を生成することはできません、それは球を楕円として拡張します。 私は多くのフレーム(kinectからの実際のデータ)を組み合わせても、私はまだ同じ影を持っています。 –

関連する問題