0

私はこの画像を持っています。そして、それはたくさんの不規則なポリゴンで構成されています。ここに画像の説明を入力してください

まず、2つのポリゴン間の最小距離を計算します。私がそれを達成できると思う方法は、最初に各ポリゴンの境界ピクセルの位置を抽出し、それを配列(B1とB2など)に格納することです。次に、B1の各ポイントからB2の各ポイントまでの距離を計算し、その最小値を見つけます。そして、図のポリゴンごとにこれを繰り返したいと思います。

だから、私が知りたいのは

  • 各ポリゴンの境界を抽出するにはどうすればよいですか?
  • 計算時間を最小限に抑えるにはどうすればよいですか?
  • この問題へのより良いアプローチはありますか?

また、ポリゴンは非常に不規則なので、少し滑らかにすることで時間を大幅に節約できると思います。しかし、もう一度私は方法がわかりませんか?

この関数は、ポリゴンの境界点があれば、私が望むことを実行するFEXであることがわかりましたが、その一般的な性質のために非常に複雑であることがわかりました。私は、より単純なコードがはるかに速く仕事をすることができると思います。

4

2 に答える 2

0

X と Y の 2 点が常に存在することはほぼ確実です (チェックする必要があります) )、そのうちの 1 つはポリゴンの頂点です。これにより、コンピュータの効率が向上します。B1 を B2 に対してチェックするだけで、B1 の頂点を B2 に対してチェックし、B2 の頂点を B1 に対してチェックする必要はありません。

于 2013-02-06T17:47:13.683 に答える
0

quadtrees や b-trees のような構造を調べる価値があるかもしれません。画像を四分木で表現すると、何をしようとしても達成しやすくなります。少なくとも、より高いレベルで木を剪定することで「滑らかにする」ことができます。

これを読んでみてください: http://www.cs.ubc.ca/~pcarbo/cs251/welcome.html

于 2013-02-07T09:38:37.263 に答える