3

現在、キャンバス上のフリーハンド描画からのポイントの配列リストがあります。その形状が円を表しているかどうかを検出する簡単なアルゴリズムがあるかどうか疑問に思っていました.私はすでにこれを少し研究しており、私が指摘している主な項目はハフ変換またはビットマップ画像のいずれかですが、これらはどちらも少しオーバーしているようです.私がそれを必要とするためのトップ。アルゴリズムまたは実装へのポインタは非常に役立ちます。

よろしくお願いします。

4

4 に答える 4

0

多分この答えはあなたにいくつかのアイデアを与えることができます:https ://stackoverflow.com/a/940041/12860

つまり、2階導関数を計算します。それがかなり理解しているなら、それはおそらく円です。

于 2012-11-19T11:35:44.930 に答える
0

コメントを読んで、円を描く簡単な方法は、ユーザーが中心点をクリックしてから円の半径をドラッグすることです。計算がはるかに少なくなり、ユーザーが簡単に描画できます。

長方形やその他の凸多角形でも同じことができます。

于 2012-11-19T13:47:49.807 に答える
0

ユーザーが描画したいもの (円、楕円、線、長方形など) がわからない場合は、基本的な最適化アルゴリズムを使用して、手描きの点に最もよく一致する形状を見つけることができます。

  • 基本的な形状 (楕円、長方形、三角形、線など) ごとに、その形状のランダムなインスタンスを作成し、指定された点に関するエラーを測定します。
  • 指定されたポイントに最もよく一致する楕円形、ポイントに最もよく一致する長方形、最適な三角形などになるまで、各形状を (個別に) 最適化します。
  • エラーが最も少ない形状を選択して描画します
于 2012-11-19T13:49:21.647 に答える