Pattern Select

Pattern Select アクションステップ​を使用すると、ユーザーは予測不可能な状況に柔軟に対応できます。

これは、さまざまな状態になる可能性がある​アクションステップ​の実行後にデプロイされます。これらの状態は、特定の検索パターンの存在によって特徴づけられます。プログラムパスがどのように進むかは、この検索パターンのいずれかが見つかるかどうかによって異なります。

このため、すべての可能な状態の検索パターンが記録されます。 Pattern Select​ では、検索パターンごとに​ケース​が作成されます。各​ケース​には、その状況で実行されるステップが含まれます。 ケース​は、検索パターンが見つかるまで順次処理されます。リストされている検索パターンが見つからない場合、エラー処理 (​DoElse​ ブランチ) を実行できます。

Pattern Select​ は、たとえば、新しいソフトウェアユーザーが作成された場合に使用します。結果として、ユーザーが正常に作成されたことを示すメッセージや、さまざまな理由でユーザーを作成できなかったことを示すメッセージを表示できます。これらの可能な各メッセージはスクリーンショットでキャプチャされ、​ケース​として保存されるため、​ワークフロー​内の後続のステップをこのメッセージに従って実行できます。

Pattern Select​ ​アクションステップ​の別の使用方法として、画面に予測可能な順序または位置で表示されていない複数のダイアログボックスを連続して閉じることができます。このシナリオでは、すべての指定されたウィンドウが閉じるまで ​Pattern Select​ ​アクションステップ​が実行されます。

Pattern Select​ 画像検索は設定可能であり、最大 50 個の検索パターンを含むことができます。

Pattern Select アクションステップ​の設定はデバッグモードでは変更できません。ただし、​ケース​に含まれる​アクションステップ​と、​Pattern Select アクションステップ​の ​DoElse​ ブロックの設定を変更できます。

Pattern Select アクションステップ​で​ブレークポイント​を設定する場合、​デバッグ​モードでアクションステップを繰り返し、さまざまな​ケース​ブランチを実行しながら、ブレーク後に表示された検索パターンを変更することができます。

プロパティ

Image Processing (画像処理)

Allow multiple matches of a found pattern (検出パターンの複数の一致を許可)​ このオプションが選択されている場合、​検索領域​にパターンが複数回表示されることが許可されます。このオプションが選択されていない場合、​Search Pattern アクションステップ​は、検出パターンが複数回出現するとエラーを返します。

検出パターンの座標が後で別の​アクションステップ​で再利用される場合 (パターンに相対的なマウスクリックなど)、同じパターンが複数検出されると、​検索領域​内の左端のパターンの座標が使用されます。複数の同じ検索画像が左側の同じ位置に相互に積み重なっている場合、一番上の画像が選択されます。

Hide mouse (マウスを非表示)​ カーソルを画面の左上隅 (座標 x=0、y=0) に移動します。この方法により、マウスの不要なフロート表示効果を回避できます。この設定に関係なく、カーソルは検索に含まれません。そのため、カーソル記号で覆われている検索パターンも検出されます。検索後、カーソルは元の位置に戻ります。

Margin for automatic search area [pixel] (自動検索領域の余白)​ 検索領域を自動的に定義するための検出パターンの周囲のピクセル数。有効な値は、0 ~ 999 で、デフォルト値は 100 です。

Neighborhood Pixel (近隣ピクセル)​ 検出されたピクセルの位置と指定されたピクセルの位置のずれの許容ピクセル数。この設定のデフォルト値は 1 です。

値が 1 を超える場合、類似する画像をより容易に検索できます。つまり、ピクセルに基づくと画像は 100% 同一ではありません。ただし、位置によっては、パーセントスコアの値が数パーセント変わる可能性があります。

Original Desktop Size (元のデスクトップサイズ)​ 画像検索が最後にテストされたときの画面解像度。​ワークフロー​がさまざまな画面解像度のデバイスで使用される場合、​検索領域​ (​検索パターン​ではない) をスケールするためにこのサイズが必要になります。

Pattern Steady check (パターン安定チェック)​ [Wait For Pattern Steady Timeout (パターン安定待機タイムアウト)] オプションを有効にして、検出パターンの座標がこの期間内に再度変わるかどうかをチェックします。変わらない場合は検索が成功して終了し、変わる場合は検索が繰り返されます。

Reduce Score By [%] (スコアの低減幅 (%))​ ​Search Pattern​ の設定をテストするときに、​[Score (スコア)]​ よりもこのパーセント分低い一致も表示されます。テスト結果ウィンドウでは、これらは黄色でマークされます。

ウィザードでは、この設定は ​[Search Settings (検索設定)]​ に表示され、​[Required matching precision (%) (必要な一致精度 (%))]​ スライダーの黄色のゾーンとして表示されます。

Repeat search until nothing found (何も見つからなくなるまで検索を繰り返し)​ ​[Repeat search until nothing found (何も見つからなくなるまで検索を繰り返し)]​ オプションが有効になっている場合、画像検索は、​タイムアウト​期間内で、検索している画像が見つからなくなるまで実行されます。

Score [%] (スコア (%))​ パーセント単位の精度を示します。検出パターンと指定されたパターンがこの精度で一致しないと、検出されたとはみなされません。ウィザードでは、このオプションは ​[Search Settings (検索設定)]​ にあり、表示ラベルは ​[Required matching precision (%) (必要な一致精度 (%))]​ となっています。また、スライダーの緑のゾーンとして表示されます。

Search Mode (検索モード)​ 3 つの検索モードがあります。

  • Match only one pattern (1 つのパターンにのみ一致)​ 指定された 1 つの検索パターンのみが検出された場合に成功します。

  • Match one or more patterns (1 つ以上のパターンに一致)​ 指定された 1 つ以上の検索パターンが検出された場合に成功します。

  • Match all patterns (すべてのパターンに一致)​ 指定されたすべての検索パターンが検出された場合に成功します。

Wait for Pattern Steady Timeout [ms] (パターン安定待機タイムアウト (ミリ秒))​ ​[Pattern steady check (パターン安定チェック)]​ オプションが選択されている場合、ここで入力する (または、ウィザードの ​[Search Settings (検索設定)]​ > ​[Check whether found match stays in same location every [time in ms] milliseconds (検出された一致の場所が変わっていないかどうかを [time in ms] ミリ秒ごとにチェック)]​ の) 間隔値に応じて、検出パターンの位置が変わっていないかどうか、検出パターンが引き続き​検索領域​に表示されていないかどうかがチェックされます。上記を満たしている場合、検索が成功して終了します。上記を満たしていない場合、成功するか、​アクションステップ​がタイムアウトするまで検索が繰り返されます。

値が 0 の場合、パターンが検出された後にその位置が再チェックされません。その後、​アクションステップ​は実行時間を超えると待機しなくなります。

インバウンド変数

Find Coordinate (検出座標)

Search Pattern アクションステップの前に、パターンを使用する他のアクションステップが 1 つ以上ある場合、​[Find coordinate (検出座標)]​ アウトバウンド変数は後続のアクションステップのインバウンド変数になります。

アウトバウンド変数

[Pattern Case Index (パターンケースインデックス)]​ では、見つかったパターンに基づいて実行されるケースインデックスが返されます。

Find Coordinate (検出座標)​ 正常に検出されたパターンの左上隅。複数のパターンの検索が行われ、それらのパターンが検出された場合、ウィザードで指定された一連の検索パターンの左端の画像の座標が返されます。​[Search Area (検索領域)]​ の左端の同じ位置で複数の同一パターンが見つかった場合、一番上のパターンが使用されます。

Found Pattern Name (検出パターン名)​ ​パターンギャラリー​に入力されている一致パターンの名前。

Found Matched Pattern Count (検出された一致パターンの数)​ ​[Regular (通常)]​ カテゴリの検出された検索パターンの数。一致の数は、異なるパターンの一致で構成されることがあります。​[Ignore (無視)]​ および ​[Exclude (除外)]​ カテゴリのパターンの一致は含まれません。

Search Pattern​ でエラーが返された場合、​[Found Matched Pattern Count (検出された一致パターンの数)]​ は 0 になります。(​[Regular (通常)]​ カテゴリのパターンの一致が検出された場合でも)。

ウィザード

Pattern Select​ ウィザードでは、​検索パターン​とキー検索設定を選択します。

すべてのパターン操作を含め、ここで示されている ​Pattern Strip​ の基本機能については、​「Pattern Strip モジュール」​セクションを参照してください。

[OK]​ をクリックして設定を確定するか、必要に応じて ​[Cancel (キャンセル)]​ をクリックします。​[Test (テスト)]​ ボタンでは、検索が評価されて、[Search Results (検索結果)] ウィンドウに結果が表示されます。

パターン名による絞り込みおよびパターン画像のサイズ変更

[Filter…​ (検索条件…​)]​ 項目にテキストを入力すると、名前にそのテキストが含まれない、ウィザードの下部セクションにあるすべてのパターンが段階的に非表示になります。 検索条件テキストはパターン名のどの位置に出現してもかまいませんが、連続する必要があります。

例:​ ​Search Pattern​ ​アクションステップ​に、House、House1、Mouse、Mouse1 という名前を持つパターンが含まれているときに、検索条件に「use」と入力した場合はすべての画像が検出され、「1」と入力した場合は House1 と Mouse1 のみが検出され、「H」の場合は House と House1 が検出されます。

Regular Patterns (通常のパターン)

このセクションには、検索パターンがリストされています。検索できるパターンの数は 50 個に制限されます。

パターンを検索する方法は 3 つあります。

Match only one pattern (1 つのパターンにのみ一致)​ 選択された ​1 つのパターンのみ​が​検索領域​で検出された場合に成功します。選択されたパターンが検出されなかった場合や多数検出された場合、エラーが返されます。

Match one or more patterns (1 つ以上のパターンに一致)​ 選択された ​1 つ以上のパターン​が​検索領域​で検出された場合に成功します。選択されたパターンが検出されなかった場合、エラーが返されます。

Match all patterns (すべてのパターンに一致)​ 選択された​すべて​のパターンが​検索領域​で検出された場合に成功します。選択されたパターンが検出されなかった場合や一部のみが検出された場合、エラーが返されます。

[Match all patterns (すべてのパターンに一致)]​ オプションが有効になっている場合、優先度が最も高い画像の​ケース​ブランチのみが実行されます。グラフィック情報では、これは最初の検索パターンまたはリスト内の一番上の​ケース​になります。

同じパターンが複数回出現した場合、​[Search Settings (検索設定)]​ の ​[Allow multiple matches of a found pattern (検出パターンの複数の一致を許可)]​ が有効になっていれば、上記のように検索が成功します。有効になっていない場合、同じパターンが複数回出現すると、​アクションステップ​でエラーが返されます。

アクションステップ​内の​ケース​の順序は、ウィザード内の検索パターンの順序に対応します。​ワークフロー​は、発生した最初の​ケース​のステップを続行します。

必ず ​DoElse​ ブロックも入力してください。空の ​DoElse​ ブロックでは、実行時にエラーが発生し、​ワークフロー​全体が終了します。

パターンは、​パターンギャラリー​から選択したり、スクリーンショット (​キャプチャ​) を介して作成したりできます。

1 つまたは複数のパターンをクリックして選択し、削除したり、グループとして移動したりします。パターンが選択されると、右上隅に緑の背景の白いチェックマークが表示されます。選択を取り消すには、​[Clear Selection (選択をクリア)]​ ボタンをクリックします。黒い縦線は、ドラッグアンドドロップを使用してパターンを移動できる場所を示します。​[Match one or more patterns (1 つ以上のパターンに一致)]​ が選択されている場合、リストの最初のパターンに青い境界線が表示されます。この画像は、ワークフローが進んだときに他のアクションステップの参照ポイントとして使用できます (​一致パターンのその他の使用​を参照)。

Capture Pattern (パターンをキャプチャ)

パターンを定義する方法の 1 つは、パターンが表示されているスクリーンショットを撮ることです。

[Capture Pattern (パターンをキャプチャ)]​ ボタンの機能についての詳細は、​「画面キャプチャからのパターンの追加」​を参照してください。

Pattern Select​ ​アクションステップ​を使用してキャプチャされたすべてのパターンは​ワークフロー​の ​Pattern Gallery​ に転送されます。

ワークフロー​の ​Pattern Gallery​ にすでにパターンが含まれている場合、そのパターンを​アクションステップ​のパターンリストに追加できます。

[Select Patterns to add (追加するパターンを選択)]​ ウィンドウには、​ワークフロー​の​パターンギャラリー​に含まれるすべての画像が表示されます。右上隅にある緑の背景の白いチェックマークは、​Search Pattern​ ​アクションステップ​にすでに含まれているパターンを示します。同じ​アクションステップ​の別のカテゴリにすでに含まれているパターンは表示されません。

パターンを検索に追加するには、マウスでクリックして選択します。 同じ方法を使用して、検索に含める必要がなくなったパターンを選択解除します。

[OK] をクリックして選択内容を確定し、​アクションステップ​のパターンリストに追加します。

Ignore All Matches within These Patterns (これらのパターン内のすべての一致を無視)

他のパターンに含まれる可能性のある 1 つのパターンの出現をチェックする場合、検索パターンが含まれるパターンを検索から除外する必要があります。除外できるパターンの数は 50 個に制限されます。

例: 「staffing」などの別の単語の一部ではない staff という名詞の単語を検索するとします。このパターンは、検索パターン内の緑の項目に含まれている必要があります。この単語を含む他のパターン (staffing や staffed など) をここで追加する必要があります。

パターン内の単色の領域は考慮されません。 そのため、右端に空き領域のある staff をキャプチャするには、上記の例では不十分です。これは、​特徴​が不足していることが原因でこの空き領域が検索パターンに含まれないためです。

検索パターンカテゴリの変更

選択されたパターンは、​[Regular (通常)]​ カテゴリと ​[Ignored (無視)]​ カテゴリの間で移動できます。これを行うには、メニューバーの ​[Move to… (次に移動…​)]​ ボタンを使用します。

Search Settings (検索設定)

Search Pattern​ ​アクションステップ​ウィザードの ​[Search Settings (検索設定)]​ 使用して、すべての検索種別の最も頻繁に必要とされる設定を定義および変更できます。

[Required matching precision in percent (必要な一致精度 (%))]​ は、スライダーの緑のゾーンとして表示されます。緑の左側にある黄色のゾーンは、テストおよび詳細検索時の条件を監視するために ​[Properties (プロパティ)]​ の ​[Reduce Score by [%] (スコアの低減幅)]​ に入力された範囲を示します。

一般的な​タイムアウト​を使用することも、独自のタイムアウトを使用することもできます。

[Check whether found match stays in same location every [time in ms] milliseconds (検出された一致の場所が変わっていないかどうかを [time in ms] ミリ秒ごとにチェック)] オプション (プロパティペインの [Wait for Image Steady Timeout [ms] (画像安定待機タイムアウト (ミリ秒))])​ が有効になっている場合、この値に応じて別の​タイムアウト​を選択した方が良いこともあります。

繰り返される画像検索は、タイムアウト内にここで定義した間隔で完了する必要があるため、最大間隔値は ½*​タイムアウト​にすることをお勧めします。

[Move mouse to 0,0 while pattern search is active (パターン検索がアクティブな場合にマウスを 0,0 に移動)]​ では、検索時にカーソルを画面の左上隅 (座標 x=0、y=0) に移動します。この方法により、マウスの不要なフロート表示効果を回避できます。この設定に関係なく、カーソルは検索に含まれません。そのため、カーソル記号で覆われている検索パターンも検出されます。検索後、カーソルは元の位置に戻ります。

検索領域は、設定セクションの右側に表示されます。 ドラッグアンドドロップで検索領域を定義するには、​[Define manually (手動で定義)]​ ボタンをクリックします。​[Define automatically (自動で定義)]​ ボタンでは、検索領域の定義時に表示されるすべての ​[regular (通常)]​ の一致が含まれる検索領域が自動的に定義されます。​[ResetTo Full Screen (全画面にリセット)]​ ボタンをクリックすると、検索領域が全画面に戻ります。

検索領域は、​固定​または動的 (​相対​) 位置のいずれかに設定できます。動的位置を定義するには、現時点で使用できるすべての ​[Coordinates (座標)]​ 種別の変数がリストされる ​[Relative To (相対的)]​ 選択リストを使用します。このリストには、同じトランザクションの前の ​Search Pattern​ アクションステップのアウトバウンド変数などが含まれます。ウィザードで [Relative To (相対的)] として座標が選択されると、オフセットベクトルが即座に計算されます。​ワークフロー​の設計時には、選択された座標から​検索領域​の左上隅が指し示されます。​ワークフロー​の実行時には、計算されたオフセットベクトルが座標の相対的な​検索領域​のリアルタイム値に適用されます。つまり、​ワークフロー​の実行時の​検索領域​は、設計時の [Relative To (相対的)] 座標から等距離に配置されます。

[Repeat search until nothing found (何も見つからなくなるまで検索を繰り返し)]​ オプションでは、検索パターンが見つからなくなるか、タイムアウトするまで画像検索が繰り返されます。 1 つの可能な使用方法として、不明な順序または位置で出現している可能性がある複数のダイアログボックスを閉じることができます。

[Repeat search until nothing is found (何も見つからなくなるまで検索を繰り返し)]​ オプションが有効になっている場合、最大​タイムアウト​は、ここに入力された時間の 2 倍未満になります。複数のパターンが含まれ、タイムアウト内で最初のパターンが見つかった場合、指定した​タイムアウト​でタイムアウト期間が 1 回のみ延長されます。 この残りの​タイムアウト​期間内で他のすべてのパターンが見つかる必要があります。見つからない場合、プログラムはエラー状態になり、​OnError ケース​が実行されます。このため、​タイムアウト​は、​ケース​内で完了する必要があるステップの所要時間に調整されます。

[Repeat search until nothing is found (何も見つからなくなるまで検索を繰り返し)]​ オプションが有効になっている場合、さまざまな検索オプションに関する次の点に留意する必要があります。

  • Match only one patterns (1 つのパターンにのみ一致)​ 選択した画像の 1 つのみを常に表示することができます。このオプションは、パターンが別のパターンの上に階層化されている場合に使用できます。

  • Match one or more patterns (1 つ以上のパターンに一致)​ いずれかの検索画像を表示できます。

  • Match all patterns (すべてのパターンに一致)​ 選択したすべての画像が見つかる必要があります。

すべてのモードで次の点が適用されます。

  • 複数のパターンが見つかった場合、優先度が最も高い画像の​ケース​ブランチが実行されます。グラフィック情報では、これは最初の検索パターンまたはリスト内の一番上の​ケース​になります。

  • [Allow multiple instances of a found pattern (見つかったパターンの複数のインスタンスを許可)]​ オプションが有効になっている場合、上記の優先度が与えられ、​[Search Area (検索領域)]​ の左端に位置する画像が再利用されます。複数の同じ検索画像が左側の同じ位置に相互に積み重なっている場合、一番上の画像が選択されます。

テスト

[Test (テスト)]​ ボタンをクリックすると、​ワークフロー​の実行とは独立して検索が起動し、検索が評価される ​[Search Results (検索結果)]​ ウィンドウが開きます。このウィンドウには、​[Search Settings (検索設定)]​ で行うことができる改善候補に関するヒントが表示されることがあります。

[Search Result (検索結果)]​ ウィンドウの主要部分には、テストが実行されたときの画面コンテンツが表示されます。

検索領域​は、青い境界線で囲まれます。​検索領域​の外側の領域はグレー表示されます。

一致​は、色付きで強調表示されます。ウィンドウの右側にある色の凡例は、さまざまな一致種別の表示を切り替えるチェックボックスパネルがオン/オフになると同時に機能します。特定の種別の一致がない場合、対応するチェックボックス項目がグレー表示されます。

定義された精度内で検出された、​[Match all patterns (すべてのパターンに一致)] / [Match only one pattern (1 つのパターンにのみ一致)] / [Match one or more pattern (1 つ以上のパターンに一致)]​ リストの​検索パターン​は緑で強調表示されます。 [Ignore all matches within these patterns (これらのパターン内のすべての一致を無視)]​ リストの一致はライトブルーで強調表示され、​[Make sure none of these patterns appear (これらのパターンが表示されていないことを確認)]​ リストの一致は赤で強調表示されます。

黄色の強調表示は、精度を低く設定していれば検索パターンが検出されていた可能性があることを示します。この低減された精度は、​[Score (スコア)]​ から ​[Reduced Score (低減スコア)]​ を差し引いて計算されます。それぞれのケースで一致の精度が規定されます。

検索領域​の外側の一致は、種別に関係なく灰色でマークされます。カラースポット​が検出されたが、特定の位置で ​[Color Spot (カラースポット)]​ の色と一致しないパターンは青でマークされます。ウィンドウの右側の詳細ペインで一致の種別を参照できます。

ウィンドウを開くときに、スクリーンショット全体が表示されるようにスクリーンショットのサイズが調整されます。スクリーンショットの右側にあるスライダーをドラッグして画像をズームイン/アウトできます。この作業はマウスホイールで行うこともできます。スライダーをダブルクリックすると、元のサイズで画像が表示されます。画像が拡大されている場合、ビューの位置を調整するためのスクロールバーが画像の右側と下部の境界線に表示されます。

スライダーの下には、スクリーンショットに表示されている画面に対する現在のマウスの位置が動的に表示されます。

一致にマウスポインターを置くと、名前、サムネイル、一致精度がツールチップとして表示されます。

スクリーンショット上で一致をクリックすると、ウィンドウの右側にこのパターンの詳細が表示されます。ウィンドウの下部の境界線にある ​[Pattern (パターン)]​ タブのパターンをクリックすると、このパターンのすべての一致の詳細が表示されます。 スクリーンショットの一致をクリックすると、その 1 つの一致の詳細のみが表示されます。詳細には、パターンの名前、種別、サイズ (ピクセル単位)、サムネイルと、検出された一致の色でマークされたリストが含まれます。すべての一致の場合、左上隅の座標と一致精度が表示されます。色付けは上記と同じです。

詳細ペインの一致をクリックすると、スクリーンショットの対応する一致の強調表示が切り替わります。詳細ペインの一致は、境界線に色を付けたり、背景色のコントラストを高くしたりして強調表示されます。詳細ペインの​一致​をクリックすると、スクリーンショットのこの一致を指し示すアニメーション矢印が表示されます。このプロセスで、全体がウィンドウ内に表示されるようにスクリーンショットのサイズが変更されます。

[Search Results Summary (検索結果の概要)]​ タブには、検索設定と検索結果の概要 (テキスト) が表示されます。

1 つのパターンが原因で検索に失敗した場合、​[Failure Reason (失敗の理由)]​ タブにこのパターンが表示されます。

一致パターンのその他の使用

マウスクリックが一致画像に対して相対的に実行され、複数の画像が検索される場合、マウスクリックの相対的な画像がリストの一番上になるようにする必要があります。

リストの最初の画像が検出されない場合、マウスクリックは最初に検出されたリストの画像に対して相対的に挿入されます。

リストの最初の画像が複数回検出される場合、画面の左端にある画像が使用されます。左側に横の位置が同じ画像が複数ある場合、一番上の画像が使用されます。

Mouse click​ ​アクションステップ​を編集する直前に、​Pattern Select​ アクションステップの ​[Test (テスト)]​ 機能を実行して、参照パターンを見つける必要があります。それ以外の場合、以前に見つかった検索パターンが常に使用されます。