問題タブ [delaunay]
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.
python - Python: Scipy の Delaunay Triangulation からボロノイ分割を 3D で計算する
新しい scipy (0.10 を使用) から scipy.spatial.Delaunay を実行した 3D には約 50,000 のデータ ポイントがあり、非常に便利な三角形分割が得られます。
基: http://en.wikipedia.org/wiki/Delaunay_triangulation (セクション「ボロノイ図との関係」)
...ボロノイ分割であるこの三角形分割の「デュアルグラフ」に到達する簡単な方法があるかどうか疑問に思っていました。
手がかりはありますか?これを調べてみると、組み込みの scipy 関数が表示されないようです。これはほとんど奇妙です!
ありがとう、エドワード
c++ - OpenCV で Delaunay 三角形分割のための C++ API はありますか?
私はアクティブな外観モデル ( AMM ) の 1 つを実装しようとしています。
Delaunay 三角形分割はこのタスクに適しているようです (より良いオプションがあれば修正してください)。OpenCV にはC API があります。しかし、ドロネー三角形分割用のC++ APIはありますか? もちろん、C++ API が実際に存在しない場合、C バージョンのラッパーを作成することは大したことではありませんが、API 自体ではなく、API の知識が不足している可能性があります。この場合、私は間違いなくネイティブの OpenCV 実装を好みます。
r - Rでdeldirを使用してドローネ三角形分割を行った後、ポイント間の距離を抽出するにはどうすればよいですか?
Delaunay Triangulations を使用して都市間の距離を計算したいと思います。距離を計算したい 20 都市の経度と緯度がありますが、三角測量から距離情報を抽出する方法がわかりません。これまで、deldir() (ライブラリ deldir から) を使用してきました。以下のコードを参照してください。
「try」のどこかにdeldirによって計算されたポイント間の距離が保存されていることは確かですが、どこにあるのかわかりません。距離を計算して $ 要素の値を探してみましたが、見つかりませんでした。私にとって、この情報を使用する最良の方法は、プロット上の各線の長さを個々の線にプロットできれば、すべての都市間の距離を手動で計算できることです。
ご協力いただきありがとうございます!
lines - 不規則なデータから特定の値でアイソライン (等高線) を生成する方法は?
(X、Y、Z) 座標を持つサンプル ポイントの配列があります。Delaunay Triangulation を使用してそれらから不規則なネットワークを生成し、線形補間を使用して固定値 (90、95、100、105 など) で等高線をプロットします。問題は、別のアルゴリズムで滑らかな等高線を生成する必要があることです。しばらく検索したところ、クリギングのようなものを使用する必要があることがわかりましたが、純粋な数学的関係からアルゴリズムを実装する数学が得意ではありません。また、アルゴリズムの実装や説明がどこにも見つからないようです。誰かが私を見つけるのを手伝ってくれますか? また、選択したアルゴリズムは正しいですか? もっと簡単に実装できるものは他にありますか?精度は気にしないことに注意してください。
https://dl.dropbox.com/u/15926260/ex.png
PS 探している結果を示すプロットを Surfer で作成しました。右側は三角測量と線形補間を使用して行ったもので、左側は別のアルゴリズムを使用してプロットする必要があるものです (クリギングは Surfer で使用されました)。スペルミスで申し訳ありませんが、私は母国語話者ではありません.
ありがとうございました!
opencv - 等高線または凸包での制約付き遅延訓練 opencv
等高線または凸包で、opencv C++ / C api を使用して CDT(constrained delauncy triangulation) を行う方法を知りたいです。
私の質問は似ています
algorithm - ボロノイ図、ドロネー三角形分割 - データ構造
ボロノイとその双対である Delaunay 三角形分割を計算したいと思います。Watson Bowyer アルゴリズムを使用しています。その後の私の目標は、アルファ形状 (凹包) を計算することです。そのため、隣接する特定のポイントのボロノイ セルにすばやくアクセスする必要があります...
Voronoi/Delaunay アルゴリズムにはどのデータ構造を使用しましたか? 元のデータセットのポイント p、Vp のポイントのセットである 1 つの親に「バインド」できるように、union-find 操作で互いに素なセットデータ構造を使用することを考えました。ただし、ボロノイ図の 1 点は複数のボロノイ セルに「属します」。
あなたのアドバイスは何ですか?
よろしく。
algorithm - ハーフエッジデータ構造ドロネー三角形分割
ハーフエッジデータ構造を使用してPythonドロネー三角形分割を記述しています。
また、三角測量アルゴリズムでは、ハーフエッジのみを格納しようとします。エッジのリストから三角形を取得します。
しかし、これはかなり冗長ですよね?1つの三角形は1つのエッジによって定義され、各エッジには次のエッジへのポインタがあるため、簡単にウォークスルーできるため、三角形を記述するために必要な数よりもはるかに多くのエッジがあります。
1 /ハーフエッジのリストのみを格納するdelaunayにWatsonアルゴを実装しても大丈夫ですか?それでは、歩くのは難しいでしょうか?
キャビティ内のエッジを決定するワトソンのアルゴリズムステップでは、エッジ上を歩き、3つ以上の異なるハーフエッジの端にあるエッジ頂点を見つけたいと思います。
2 /このプロパティは、「この頂点で3つ以上のエッジが終了する」ということで、Bowyer Watsonアルゴのエッジを破棄するための適切な基準ですか?
メッシュを歩くために、各ハーフエッジを繰り返します。ですから、私は三角形ごとではなく、端ごとに作業しています。'next'プロパティを使用せずにメッシュを歩いていますが、これは良くないようです。
3 /エッジのリストとして保存されている、メッシュ内の三角形をウォークスルーする方法は何ですか?または、メッシュのウォークスルーを容易にするために、メッシュをより適切に保存する方法はありますか?
ありがとう!
python - scipy.spatial.Delaunayを使用して、ドロネー三角形分割で特定のポイントのすべての近傍を見つける方法は?
私はこの質問に対する答えを探していましたが、役に立つものは何も見つかりませんでした。
私はPythonの科学計算スタック(scipy、numpy、matplotlib)を使用しており、2次元のポイントのセットがあり、を使用してDelaunayのtraingulation(wiki)を計算しますscipy.spatial.Delaunay
。
任意の点が与えられると、(三角形分割の隣接a
点)の頂点でもあるシンプレックス(つまり三角形)の頂点である他のすべての点を返す関数を作成する必要があります。ただし、(ここ)のドキュメントはかなり悪いので、シンプレックスがどのように指定されているかを一生理解することはできません。Delaunay出力の、および配列がどのように編成されているかを説明するだけでも、私は十分に理解できます。a
a
scipy.spatial.Delaunay
neighbors
vertices
vertex_to_simplex
助けてくれてありがとう。
python - numpy を使用して 2D キャリブレーション パターン ポイントを並べ替える
長方形のキャリブレーション パターンのドットから見つかったポイント (x、y) を持つ:2 マトリックスがあります。これらのポイントを行ごとに並べ替えるのが好きです。これらの点を lexsort で並べ替えましたが、カメラからの歪みが大きすぎて y 座標が重なってしまいます。
行を長くするドローネパターンを使用してこれをソートする方法はありますか?