問題タブ [point-clouds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
181 参照

c++ - ポイントの削除 C++

ポイントクラウドにN個のポイント(x_N、y_N、z_N)があります。点群は、球形のオブジェクトの形状を形成します。私の問題は、クラウド内に z 軸に沿って目立つポイントがあることです (これは、スキャン中にオブジェクトにピン オブジェクトが挿入されたためです)。これらの点を削除したいと思います。

私が取ったアプローチの 1 つは、すぐ次のポイント セットと比較して、クラウド内のポイント セットの勾配の変化を見つけることです。(たとえば、最初の 10 ポイントを取得し、勾配の変化を計算して、次の 10 ポイントの勾配の変化と比較します)。しかし、これはうまく機能していません。助言がありますか?

どんな助けでも大歓迎です。私の問題に対する混乱があれば、お知らせください。

0 投票する
3 に答える
3662 参照

c++ - ポイントクラウドの各ポイントで法線を計算していますか?

点群を形成する一連の点があります。各ポイントで法線ベクトルを計算し、そのポイントから法線ベクトルの方向にレイをキャストする必要があります。この状況で法線ベクトルを計算するには、どのような式を使用する必要がありますか?

編集* 半球の形状を形成する点群 (これを A と呼びます) を形成する一連の点 (x、y、z) があります。また、A の内側に収まる別の半球を形成する面を当てはめた別の点群 (これを B と呼びます) があります。これらの面が互いにどれだけ離れているかの長さを測定したいので、私の計画はA の各点から面 B に光線を投射し、その点との交点を測定します。この説明が私の質問をより明確にすることを願っています。

お手伝いありがとう!

0 投票する
1 に答える
1613 参照

c++ - Ros 動的構成ファイル

PCL/ROS でセグメンテーション タスクを実行しようとしています。セグメンテーション タスクへの入力の数が多く、それぞれの影響を調べたいので、ROS で動的構成オプションを使用していますparam。C++ ソース コードに問題はありませんが、起動ファイルを実行しようとすると、ファイル パブリッシャが PCD ファイルを見つけることができません。

しかし、起動ファイルを実行すると、次のエラーが発生します。

どんな助けでも大歓迎です。

0 投票する
1 に答える
2412 参照

vector - PCA を使用して 3 次元点群の境界ボックスを見つける

PCA を使用して 3 次元点群の境界ボックスを見つけようとしています。SVDを実行するために、JAMA「Java Matrix Package」を使用しています。

  1. ポイント クラウドから 1000 をサンプリングして SVD を実行しています。

  2. 結果から 3 つの PCA ベクトルを抽出し、それらのネガを追加しています。

    double[] vector1 = {svd.getU().get(0, 0), svd.getU().get(1, 0), svd.getU().get(2, 0)}; double[] vector1N = Vec.Mult(vector1, -1); double[] vector2 = {svd.getU().get(0, 1), svd.getU().get(1, 1), svd.getU().get(2, 1)}; double[] vector2N = Vec.Mult(vector2, -1); double[] vector3 = {svd.getU().get(0, 2), svd.getU().get(1, 2), svd.getU().get(2, 2)}; double[] vector3N = Vec.Mult(vector3, -1);

  3. データの次元に従って各ベクトルを拡大しています (1000 個のポイントのそれぞれを通過し、最大の投影を確認します)。

    vector1 = Vec.projectData(vector1, nThPoints);

    /li>

これで、6 つの新しいベクトルが得られたので、8 つのコーナーを計算する必要があります (サンプルの中心を覚えている間) が、その方法がわかりません。

どうやってやるの?

0 投票する
1 に答える
9658 参照

point-clouds - プライ形式の頂点に色を追加する

XYZ ポイントの各頂点にそれぞれ異なる色/値属性が付加された 3D ポイント クラウドがあります。

生データは、x、y、z、V1、V2、V3 という列の単純な .txt / csv 形式であり、.ply を使用して画像を作成しようとしている次のポイントの新しい行です。次のような 3D 画像を作成したい:

これ.

これらの各値に基づいて各面または頂点に色を付けるための ply 形式の適切なコードは何ですか? 同じ形状で異なる色をサーフェスにマッピングする複数のマップを作成したいと考えています。

0 投票する
1 に答える
6442 参照

c++ - Iterative Closest Point (ICP) を使用しているときに Point Cloud Library (PCL) で NULL データをマークする方法

Point Cloud Library (PCL)に統合されたIterative Closest Point (ICP) アルゴリズムを使用して、2 セットの点群を整列させようとしています。十分な対応点が見つからないというエラー レポートが表示されます。setEuclideanFitnessEpsilon(-1.797e+5)、setMaximumIterations(40)、および setRANSACIterations(2000) のパラメーターの条件を既に緩和しましたが、まだ同じ問題があります.. (これらの条件値がどのように、またはどのようにすべきかについての情報はあまり見つかりませんでした適切な調整のためであるため、この点での助けも本当にありがたいです)

この問題は、値 NULL (0) でマークしたクラウドに多くの NULL データ ポイントがあるという事実に関係しているのではないかと疑っています。PCLを使用する場合、それは適切に行われていますか? PCL の NULL 標準値はありますか? データセットを整列しようとするときに、アルゴリズムがこれらのNULLポイントを考慮したくないことは明らかです..

ご協力いただきありがとうございます