0

マウス クリックの X、Y 座標のセットが与えられた場合、どのように形状を決定することができるのだろうか (もしあれば) 疑問に思っていました。

ここでは多くの問題に対処しています。形状に関係のないクリック (座標) が存在する可能性があります。以下に例を示します: http://tinypic.com/view.php?pic=286tlkx&s=6 緑色の点はマウスのクリックを表し、検索は、高さ/幅が少なくとも x で、高さ/幅が最大で y の正方形を探します。幅と 4 つのポイントの妥協、赤い線は見つかった形状を示します。正方形、長方形、三角形、理想的には円など、いくつかの基本的な形状を見つけられるようにしたいと考えています。

最小二乗法が役立つと聞いたことがありますが、これがどのように役立つかはわかりません。私はC#を使用しており、例は大歓迎です:)

4

1 に答える 1

0

サポートする形状ごとに検出器を作成できます。これらの検出器は、一連の点が形状を形成しているかどうかを判断します。

したがって、たとえば、4つのポイントをクワッド検出器に渡すと、4つのポイントがクワッドに整列しているかどうかに関係なく返されます。クワッド検出器は次のように機能します。

  • 各ポイントについて
    • 最も近い隣接点を見つける
    • 内角を計算する
    • 隣人までの距離を計算する
  • すべての内角が90°の場合+-あるしきい値->ok
  • すべての距離が等しい場合+-いくつかのしきい値(パーセンテージ)-> ok
  • それ以外の場合はクワッドではありません。

これらの検出器を使用する素朴な方法は、ポイントのすべてのサブセットを検出器に渡すことです。十分な時間があれば、これが最も簡単な方法です。ある程度のパフォーマンスを達成したい場合は、ポイントを選択して少し賢く渡すことができます。

たとえば、クワッドが常に軸に沿って配置されている場合は、任意のポイントから開始し、別のポイントに到達するまで右に移動し(ここでもいくつかのしきい値を設定)、下に移動して左に移動できます。

これらは、さらに役立つかもしれないいくつかの考えです。AIには、この問題をより実用的な方法で解決できるアルゴリズム、おそらくニューラルネットワークがあると想像できます。

于 2012-10-24T21:16:47.743 に答える