「ツムツムのハートの自動送信がやりたくて、FRepの録画を使い始めたけど、自分をタップしたり招待してしまう。スクロールがずれてくると、ハートの送信漏れもたまにあって困ってる。」
このような悩みにお答えします。
この記事では、ハートの自動送信で使うFRepの画像認識について解説します。FRep初心者の悩みとして、「録画だけでは、完全な自動にならない」という点があると思います。
私も始めはFRepの使い方が分からず、色々と試行錯誤しました。時間を掛けても中々思い通りのものが作れず、時間だけが過ぎていく…。
とはいえ、FRepに詳しい方から使い方を教えてもらい、完全な自動プログラムが作れました。画像認識の機能を使えば、ハートのタップミスは絶対起こりません!それではいってみましょう。
録画のタップミス問題
録画を使うと、ハートのタップミスが起こるのはなぜでしょうか?ハートのタップミスとは、このような操作になります。
- 自分をタップ
- 招待をタップ
- ハートのタップ漏れ
それは、録画では教えた動きしかできないからです。ハートのタップミスを防ぎ、ハートを確実にタップするなら、どうすればいいでしょうか?
つまり、ハートがあればという、状況に応じた動きができれば、この問題は解決できます。
このような「状況による判断」と「状況に応じた操作」に対応できる機能を画像認識は、持ち備えています。
画像認識とは?
画像認識の機能を解説します。画像認識を使えば、表示してる画面が用意した画像と同じか判断して、同じなら指定した操作をしてくれます。画面と比べる画像は、事前に撮ったスクショを使います。
実際に比べる時は、画像全体ではなく画像の一部だけを使います。なので、スマホの時間やバッテリーの残量が違っても、その部分は使わないので問題ありません。
画像認識の事前準備
画像認識を使うには、事前に設定が必要な項目がいくつかあります。設定方法について、解説していきます。撮影タイプの変更
画像認識は、「今の画面のスクショを保存した画像」と「用意している画像」を比べます。このスクショを保存する画像の種類によって、処理の時間が異なってきます。初期設定のままだと、この処理時間が遅いです。撮影タイプの設定を変更すれば、処理時間が早くなるので、この設定は必ず行いましょう。
FRepを起動した画面から「オプション」をタップします。
「システム設定」をタップします
「撮影タイプ」をBMP(高速)に変更します
保存場所は、内部メモリー(本体)になっています。
SDカードに余裕があれば、外部メモリーに変更しても良いです。スクリーンショットの保存先と合わせておくと、画像を選択する時にフォルダを移動しなくて済みます。
タッチ情報の取得
画像画像を使うなら、画面をタップする操作を登録しておきましょう。このタップする操作をFRepでは、タッチ情報と呼んでいます。画面の右上の「…」をタップします
「タッチ情報の取得」をタップします
「タップして開始」をタップします
ここからは画面の指示にしたがって操作して下さい。
これで、事前に設定しておく内容は、全て完了しました。画像認識の機能が使えるようになっています。
画像認識の作り方
画像認識の作り方を解説します。実は、用途によって使い方が2つあります。- 画面と同じ
- 範囲指定
それぞれどのような時に使うのか解説します。
画面が変わった時の判定などに使います。
タップするハートの有無の判定に使います。
画像認識の操作を追加
それでは、画像認識を行う処理を追加してみましょう。まずは、画面と同じ時の使い方を解説します。「[+]条件」をタップします
「画像認識」をタップします
画像認識を行う画像を選択し、「適用」をタップします。
画像認識の種類を選択します
画像認識の種類について、解説します。
- 完全一致
完全一致 - 一致ピクセル率
同一色が指定の割合より大きい - 色の類似度
類似度が指定の割合より大きい - 検索:完全一致
完全一致(範囲指定有り) - 検索:類似度
類似度が指定の割合より大きい(範囲指定有り)
ツムツムの自動送信では、「色の類似度」と「検索:類似度」の2つを使います。
色の類似度 →画面と同じ
検索:類似度 →範囲指定
※検索:類似度の使い方は、後ほどハートのタップで説明します。検索:類似度 →範囲指定
類似度を使う時は、割合を設定します。割合とは、どれくらい似ているかという値です。数値が高いほど似ている事になります。
割合の数値が低すぎると、全く違うものを同じと判断するかもしれないので、60~80位が良いです。
画像認識で使う画像の設定
それでは、画像認識で使う画像を設定してみましょう。「画像を編集」をタップします。
画像認識をする場所を囲んで指定します。
上の赤枠で囲んでいる部分の±で微調整できます。From、Toはそれぞれ指定場所の左上のXY座標、右下のXY座標になります。
画像認識をする場所の指定方法について2つ注意しておくことがあります。
- 判定する範囲が大きすぎるとダメ
- 判定する範囲が小さすぎるとダメ
要するに、指定する範囲は適した大きさにすれば良いです。
この範囲指定では、数字の赤い部分も入っています。
この画像で判定をすれば、メールボックスが0件の時に、判定がOKになりません。ハートの数の10の位が9以外の時も同じです。
状況によって、画面の見た目が変わる部分は、判定に含めないようにしましょう。
この範囲指定では、完全一致しか選べず変更できません。
画像認識の種類で解説した通り、「完全一致」は使ってはいけません!範囲が小さすぎると完全一致しか選べなくなります。
範囲指定のコツは、大きい範囲から少しずつ小さくしていきます。完全一致になる直前がベストです。
画像認識の種類の他の設定項目について解説します。制御設定(上部分)
制御設定(下部分)
- 「スクリーンショットを撮る」
スクショを使うので、✔をつける - 成功時に認識領域中央をタップ
判定がOKで、タップする時は✔をつける - 次の待機を省略
2つとも✔は不要 - 判定(目安)
判定する時間を設定 - 成功したとき
判定でOKの時にする処理 - 失敗(時間切れ)
判定で失敗の時にする処理 - スキップ/延長用パネルを表示
✔はどちらでも良いです - 「ラベル:」
分かりやすい名前にする
ランキングのハートが見つからなかった時に、次の4人が表示されるまでスクロールする処理を作ります。
つまり、ハートの範囲指定では、NGの判定を普通に使います。その時の設定時間は、10秒は長いので、3秒位にしておきましょう。
※短すぎると、判定する前に処理が終わる事があるので注意!
「適用」をタップすると、画像認識の処理が追加されます。
新たに画像認識の処理が追加されました。
範囲指定の設定
範囲指定を使う時の設定方法を解説します。画像認識で画像を選ぶ手順までは、これまでと同じです。ハートの送信で使うので、ランキングが表示されている画像を設定します。
検索の種類は「検索:類似度」を選びます。
「検索」をタップして範囲選択をする画面を表示します。
ハートが表示される範囲を設定します。
範囲指定をする時に、気をつけるポイントが2つあります。
- 左右の範囲指定はハートが範囲に入る
- 上下の範囲指定はスクロールで移動する範囲(上下の横線と揃える)
範囲指定のコツは、まず大体の大きさで指定します。その後に座標の数値を変更し、微調整します。
見た目の画像を移動しているだけなので、指定している座標は変わりません。一度保存してから開き直すと確認できます。
これで範囲指定の設定は完了です。
範囲指定で探す画像の設定
ハートが表示される範囲の設定は終わったので、指定された範囲内で探すタップするハートの画像を設定します。ハートを画像として認識させますが、ハートの形の周りを囲ってはいけません。1つ目の理由は、ハートが少しでも見切れてしまった時に、ハートと認識できず判定がNGになります。この画像では、ハートの上の方が表示されていません。
もちろんスクロールがズレなければ、起こらないかもしれませんが、対応できるに越したことはありません。
2つ目の理由は、処理が遅いからです。
画像の判定で使用する大きさが大きいほど、処理が遅くなりスマホに負担がかかります。微々たるものかもしれませんが、スマホに掛かる負担は減らしましょう。
それでは、認識させる画像の設定を行いましょう。「画像を編集」をタップして、認識させる画像の設定をする画面を表示します。
このようにハートの真ん中らへんを縦に細長い形で設定します。
ハートを指定するというより、ハートの一部分のかけらを指定する感じです。
まとめ
画像認識を使えば、録画だけでは実現できない「状況に応じた操作」が可能となります。画像認識の設定がミスっていなければ、ハートの送信も含め、OKや閉じるのタップミスは絶対に起きません。画像認識が使えれば、プログラムのやれる事が増えるので、是非使いこなせるように頑張って下さい。
録画の他の機能は【初心者向け】FRepの基本機能を解説【これだけは覚えよう】をご覧下さい。
最後までご覧頂き、ありがとうございました。
[…] 作り方についてはこちらで詳しく説明しています。 あわせて読みたい →ツムツム自動送信 FRepの画像認識を使ってみましょう。これでタップのミ… […]
[…] 基本となる録画機能 ✔ずれないスクロールの作り方 ←次はコレ 画像認識でタップミスゼロ […]
[…] 基本となる録画機能 ずれないスクロールの作り方 画像認識でタップミスゼロ […]
タッチ情報の取得で中央のボタンを長押ししてくださいのところでどうにも先にすすせません・・・
なにか解決方法はありますか。
ネクサス7、ギャラクシS6で試しましたが、両方ここで躓いてスワイプの再生ができない状態です。
とってぃさん。コメントありがとうございます。
申し訳ないですが現物を見てみないと回答しがたい内容で解決方法はわからないです。
端末を変えても上手くいかないというのはアプリに問題があるような気もしますねぇ。
[…] これらの問題について、解消しないと完全な自動化にはなりません。それぞれの問題と解決方法を紹介します。 4人分のスクロールがズレる 画面のハートを全てタップした後の、4人分のスクロールが、ちょっとだけズレたりしませんか?見た目はズレてなさそうでも、何回も繰り返し再生していくと、ちょっとずつズレてきます。 この問題は、2つのスクロールを組み合わせれば、解決できます。スクロールをズレなくする方法は【重要】ツムツムの自動送信のスクロールがズレないテクニックを解説で解説しています。 自分や招待をタップして困る ハートをタップする操作で、自分が表示されるとその後の動きが変わって困る。一番下までスクロールすると招待をタップしてしまう。 録画では画面に表示されている内容に関わらず、同じ操作しかできません。人間なら、ハートがあるからハートをタップし、ハートがなければタップしません。この2つの大きな違いは、「ハートがあるから」という判断ができるかの違いです。録画では、同じ操作しかできないので、この判断ができません。 そこで、画面の内容を判断してくれる画像認識という機能を使います。画像認識を使えば、解決できます。画像認識の使い方はツムツムの自動送信のタップミスを防ぐ【FRepの画像認識を解説】をご覧下さい。 録画の他の機能は? 録画の他に画像認識のような、使うと便利な機能を紹介します。FRepにある機能を全て覚える必要はありません。 自動送信で使う抑えておきたい機能は【初心者向け】FRepの基本機能を解説【これだけは覚えよう】で解説しています。 ここまでくれば、FRepの機能は一通り理解されているでしょう。 続いては、処理の順番を並べたものを1つのプログラムとして作ります。処理を寄せ集めて、順序を決めてあげるイメージです。 プログラムの作り方はFRepのプログラムの作り方と整理の仕方【手順を詳しく解説】で解説しています。手順を覚えれば簡単です。 プログラムでは、いくつかの処理をまとめて整理することができ、その集まったものを「関数」と呼びます。自動送信のプログラムで使っている関数と処理の内容を公開します。 自動送信のプログラムで使用する関数はツムツムのハート自動送信のプログラムで使用する関数を紹介【参考】で解説しています。 […]
[…] この画面を参考に赤枠で囲っている部分に対して画像認識を使います。 赤枠の箇所でこのような判定を行います。 ①1人目名前 ②1人目ハート ③2人目名前 ④2人目ハート ⑤3人目名前 ⑥3人目ハート ⑦4人目名前 ⑧4人目ハート範囲指定の大きさに注意 実際に範囲指定をする時の大きさは出来る限り小さくして下さい。説明上分かりやすくする為に大きくしています。範囲指定の大きさが大きいほど処理の時間が増えます。 画像認識の使い方についてはこちらをご覧下さい。ツムツムの自動送信のタップミスを防ぐ【FRepの画像認識を解説】「ツムツ… […]