メインコンテンツまでスキップ

画像/テキストの検出

画面上の座標の位置が常に変化する特定のゲームやタスクでは、画像検出やテキスト検出を使用することが重要です。画像検出では、画面上で見つける必要のある画像の一部であるテンプレートを使用します。テキスト検出では、画面に表示される任意のテキストを検出できます。

画像検出

画像検出を使用する前に、デバイスの画面でテンプレートをキャプチャする必要があります。テンプレートをキャプチャするには、次の手順に従ってください。

1. テンプレートをキャプチャをクリックします

Home Page

2. 検出に使用するスクリーンショットの範囲を撮影します

Home Page

3. 画像テンプレートを保存します

Home Page

テンプレート画像を保存したら、そのテンプレートを使って画像検出を行えます。画像検出には Screen:click() を使用します。例:

同等のコード

# click 'stop-button.jpg'
Screen:click('stop-button.jpg');

同等のブロックビルダー

テキスト検出

テキスト検出には Screen:click() メソッドを使用できますが、クリックの挙動を変更するために第 2 引数で ClickParams():setDetectionType('TEXT') を渡す必要があります。setDetectionType が受け取る値は TEXTIMAGE の 2 つだけで、デフォルトの検出タイプは IMAGE です。テキスト認識を行うには、setDetectionType の値を TEXT に変更します。例:

同等のコード

Screen:click('your text', ClickParams():setDetectionType('TEXT'):setDetectionMethod(1))

同等のブロックビルダー

よく見ると、テキスト検出方法には 2 種類あります。

  1. Word By Word(デフォルト) この方法を使用すると、テキスト検出はマッチを複数の単語ごとに分割します。この場合、最適なユースケースは 1 単語だけを検出したいときです
  2. Line By Line この方法を使用すると、テキスト検出はマッチを複数の行ごとに分割します。この場合、最適なユースケースは 2 つ以上の単語を同時に検出したいときです

検出方法を変更するには、setDetectionMethod() の値を変更します。この関数のパラメータは次のとおりです。

  • 1 は Word by Word
  • 2 は Line by Line

次のステップ

基本的な検出に慣れたら、検出戦略を読んで、より高度なマクロで ScreenRegion、画像検出、テキスト検出、動的スケーリング、グレースケール、スコアチューニングをいつ使うべきかを学んでください。