Lesson 5: 画像検出

この Lesson では、画像検出を使って指定した画像をタップするシナリオを作成します。
ミニゲームを自動でクリアするシナリオを通じて、画像検出の基本操作を学びます。

以下のことを学ぶことができます。

✅️ 画像検出ステップの使用方法

📥作成済みシナリオをダウンロードする

1. シナリオの作成

今回の Lesson で使うシナリオを作成します。画面中央あたりにある「最初のシナリオを作成」をタップします。既にシナリオが1つ以上ある場合は、右下の + ボタンをタップしてシナリオを作成します。

Image in a image block
初めてシナリオを作成するときは「最初のシナリオを作成」をタップします

Image in a image block
2つ目移行のシナリオを作成するときは、シナリオリスト右下の + をタップします

シナリオに名前をつけて OK をタップします。シナリオの名前は、「Lesson 5」などわかりやすい名前にしておくと良いでしょう。

Image in a image block
Lesson 5 などのシナリオ名を入力して OK をタップします

シナリオが作成されると、画面下部にシナリオコントローラという操作パネルが表示される状態になります。

Image in a image block
正常にシナリオ作成が完了すると、シナリオコントローラが表示された状態になります

2. 練習用アプリを開く

準備でダウンロードした TapEzy 練習用アプリを開きます。

アプリを開くと、各レッスン向け画面へのボタンを含んだホーム画面が表示されます。ホーム画面で「Lesson 5 画像検出」ボタンをタップします。

Image in a image block
Lesson 5: 画像検出をタップします

宝石と石の画像がランダムに並んだ画面が表示されます。

この画面は、宝石をタップすると宝石が消えていき、全て宝石が消えるとクリアになるミニゲームになっています。試しに指で宝石をタップしてみてください。

タップで宝石を消していくミニゲームができます

3. TapEzy で画像検出ステップを追加する

それではTapEzy で練習用アプリのミニゲームをクリアしてみましょう。

シナリオコントローラの + ボタンをタップして、「画像検出」のステップを追加します。

Image in a image block
シナリオコントローラの + でステップを追加します

Image in a image block
「画像検出」をタップします

「画像検出」を選択すると、検出画像を指定するダイアログが表示されます。ここでは、画面内にある宝石画像をそのまま検出に使いたいので、「画面を撮影」を選択します。

Image in a image block
「画面を撮影」をタップします

画面の撮影を開始する際には下記画像のような、ユーザーに許可を求めるダイアログが表示されます。

⚠️ このダイアログはAndroid システムが表示しているもので、アプリが画面の内容を読み取る際には必ず表示されるものです。アプリ側から表示させないようにすることはできません。表示内容は使用されている機種や Android バージョンによって多少違いがあります。

ご理解の上、「今すぐ開始」などをタップして先に進んでください。

Image in a image block
「今すぐ開始」などの先に進むボタンをタップします

画面をキャプチャしたいタイミングで下部の「撮影」をタップします。この画面には動きはないのですぐに撮影をタップしても問題ありません。この画面のまま、アプリを操作することも可能です。たとえば、別の画面に移動してから撮影をタップすることで、任意の状態をキャプチャできます。

Image in a image block
「撮影」をタップします

撮影が完了すると、検出したい画像の範囲を選択する画面が表示されます。

「💎をタップしよう!」のところに表示されている宝石をドラッグで範囲指定します。この範囲で指定された画像を TapEzy で検出することになります。範囲選択ができたら、下部の OK をタップして確定します。

Image in a image block
使いたい画像の範囲を指定して「OK」をタップします

ステップの追加が完了すると、ステップのリスト画面が開きますので、先ほど追加したステップが表示されていることを確認してください。

検出画像の中心に赤い丸が確認できます。画像検出などの検出系のステップは、ステップ追加時点で検出した要素をタップする設定になっているため、このような表示になっています。

ステップリストは右下の「閉じる」ボタンをタップして閉じます。

Image in a image block
「閉じる」でステップリストを閉じます

4. 検出範囲を設定する

このまま画像検出を動かすこともできますが、検出範囲を設定しないと不要な場所(たとえば「💎をタップしよう!」の💎部分)もタップしてしまう可能性があります。

意図しない操作を防ぐために、画像検出を行う範囲を適切に設定しましょう。

ℹ️ 検出範囲を適切に設定することで処理負荷の軽減にもつながりますので、画像検出を使う時は可能な限り検出範囲の設定を行うことを推奨します。

シナリオコントローラのリストボタンをタップして、ステップリストを表示します。

Image in a image block
リストボタンでステップリストを表示します

先ほど作成した画像検出ステップをタップしてステップ編集画面を開きます。

Image in a image block
先ほど追加した画像検出ステップをタップします

検出範囲の設定を確認します。今は「全画面」となっているので、右にある✏️ボタンをタップして検出範囲を必要な部分に限定します。

Image in a image block
検出範囲の設定にある✏️をタップします

検出範囲を設定する画面になったら、ドラッグで範囲を指定します。範囲を宝石と石が並んでいる範囲に指定できたら、下部の「OK」をタップして確定します。

ドラッグ操作で検出範囲を設定します

検出範囲が指定できたら、下部の「OK」をタップしてステップ編集を確定します。

5. シナリオを再生する

作成したシナリオを再生して動作の確認を行いましょう。

シナリオの再生はシナリオコントローラの ▶ ボタンを使います。

Image in a image block
▶でシナリオの再生を開始します

シナリオの再生が開始されると、再度画面内容を読み取るための確認ダイアログが Android システムから表示されます。「今すぐ開始」をタップして再生を開始します。

宝石画像をタップしてミニゲームを自動でクリアしていく様子が確認できます。

再生の停止は ■ ボタンで行います。

自動で宝石をタップしていきます
Image in a image block
再生の停止は■ボタンで行います

まとめ

この Lesson では、以下の内容を学びました:

  • 宝石画像を検出し、自動でタップするシナリオの作成
  • 画像検出ステップの追加方法と設定方法
  • 検出範囲を指定して誤動作を防ぐ方法

シナリオを再生することで、指定した範囲の中で特定の画像だけを正確にタップできることを確認できました。

より詳しい説明はそれぞれ下記にありますので、ここからさらに設定を変更する場合は参考にしてください。