画像認識の失敗には、主に環境の違い・画面状態の変化が関係しています。
以下のような原因が考えられます。
【よくある原因と対処方法】
■ ① 処理タイミングが早すぎる
・認識対象の画面がまだ表示されていない状態で画像認識を実行すると失敗します。
→ 画面表示を待機してから画像認識を行うよう、適切な「待機処理」を追加してください。
■ ② 解像度が異なる
・シナリオ作成時と実行時で画面の解像度が異なると、画像一致しません。
→ シナリオ作成と実行は同じ解像度・環境で行うようにし、
必要に応じて画像キャプチャを取り直すことで改善します。
💡 解像度が変わる例:
・端末を変更した
・リモートデスクトップ接続の有無
・プロジェクターや外部モニターの接続
■ ③ Windowsがロックされている
・Windowsがロックされていると画面の描画がされず、画像認識は100%失敗します。
→ スリープやロックを無効化する、または常時アクティブな状態を維持してください。
■ ④ モニターが接続されていない(無人端末など)
・モニターが物理的に接続されていないと、画面情報が取得できない状態になります。
→ HDMIダミープラグ(仮想ディスプレイ)を利用するなどの対処が必要です。
■ ⑤ 対象アプリ・サイトの外見が変わった
・ボタンや画面のデザインが更新された場合、過去の画像では一致しないため失敗します。
→ 対象UIが変更された場合は、画像キャプチャを撮り直して再登録してください。
【対策まとめ】
原因 | 対策 |
---|---|
処理が早すぎる | 画面が出るまで「待機」処理を入れる |
解像度の違い | 解像度を固定/画像を再キャプチャ |
Windowsロック中 | スリープ・ロック解除設定の見直し |
モニター未接続 | HDMIダミープラグを活用 |
UIの変更 | 新しい画像でキャプチャし直す |