2

ユーザーがクリック/タッチしたアイコンまたはコントロールの画像を特定して抽出することが課題である実験プロジェクトに取り組んでいます。私が試している方法は次のとおりです(ステップ3で助けが必要です):

1)ユーザーが画面をクリック/タッチしたときにスクリーンショットを撮ります。

ここに画像の説明を入力

2) エッジ検出を適用します。

ここに画像の説明を入力

3)ユーザーのカーソルに関連付けられたポイントの周りの可能なアイコン画像を抽出します(これを行う方法がわかりません)

ここに画像の説明を入力 ここに画像の説明を入力

マウス オーバー イベントによってアイコン/コントロールが強調表示される簡単なケースもあります。これにより、単純なスクリーン ショットの比較 (マウス オーバーの前後) でコントロールを識別できます。上記の方法は、アイコンが強調表示されていない場合専用です。私は emgu を初めて使用するので、これをより適切に達成する方法について何かアドバイスがあれば、私はすべて耳にします。

乾杯!マット

4

1 に答える 1

1

エッジ検出を行う代わりに。次の手順を実行することを検討してください。

  1. ユーザーのカーソルのポイントの特定の半径内にあるピクセルのみをグラブします。これらのピクセルだけで新しい画像を作成します。

  2. しきい値処理を使用して、前景と背景に分類します。

  3. 重心を計算します (平均 x 座標と平均 y 座標を使用)。平均からの偏差を計算します。平均値から一定の偏差を超えている前景ピクセルを破棄します。例: 平均からの偏差が 1.6 を超えるピクセルを破棄します。(この手順を試す必要がある場合があります)。

  4. 凸包を使用して、アイコンが含まれる画像の領域を見つけます。

于 2013-07-27T16:28:08.550 に答える