(57)【特許請求の範囲】
【請求項１】
コンピュータを，
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段と，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得手段と，
前記基準位置取得手段で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得手段と，
前記部分画像取得手段で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較手段と，
前記比較手段で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行手段として，
機能させるための後続処理の自動処理プログラム。
【請求項２】
前記記憶手段には，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とが記憶されており，
前記後続処理実行手段では，前記比較手段で一致すると判定した判定部分画像が前記所定の後続処理に対応付けられた判定部分画像である場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行し，前記比較手段で一致すると判定した判定部分画像がない場合に，前記記憶手段に前記一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行する
ことを特徴とする請求項１に記載の後続処理の自動処理プログラム。
【請求項３】
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段と，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得手段と，
前記基準位置取得手段で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得手段と，
前記部分画像取得手段で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較手段と，
前記比較手段で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行手段とを備える
ことを特徴とする後続処理の自動処理装置。
【請求項４】
前記記憶手段には，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とが記憶されており，
前記後続処理実行手段では，前記比較手段で一致すると判定した判定部分画像が前記所定の後続処理に対応付けられた判定部分画像である場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行し，前記比較手段で一致すると判定した判定部分画像がない場合に，前記記憶手段に前記一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行する
ことを特徴とする請求項３に記載の後続処理の自動処理装置。
【請求項５】
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段を備えるコンピュータが画面に表示された部分画像に応じた処理を実行する後続処理の自動処理方法であって，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得過程と，
前記基準位置取得過程で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得過程と，
前記部分画像取得過程で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較過程と，
前記比較過程で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行過程とを有する
ことを特徴とする後続処理の自動処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，コンピュータで実行されているアプリケーションの実行状態を監視する技術に関するものであり，特に，コンピュータの画面状態を監視し，画面に特定の部分画像が表示されている場合に，その部分画像に対応する応答処理を自動的に実行する後続処理の自動処理プログラム，後続処理の自動処理装置および後続処理の自動処理方法に関するものである。
【背景技術】
【０００２】
コンピュータ処理には，強度解析処理やＣＡＤデータの変換処理などのような，処理に時間がかかるアプリケーション（以下，アプリとも記す）やその他のプログラムが存在する。このような処理に時間がかかるアプリケーションを実行している場合には，コマンドの入力，処理の正常終了の確認，エラー発生時の対処などのために，処理が終了するまでユーザが処理中のコンピュータの前に張り付いていなければならないこともあり，ユーザにとっては無駄な時間を過ごさなければならない場合もある。
【０００３】
このような状況に対処する技術として，プラント装置においてアプリケーションの動作を監視し，処理終了を通知するウィンドウを表示するなどの特定の動作を検出する技術がある。
【０００４】
また，アプリケーション処理中の表示画像を監視する技術が記載された先行技術文献としては，例えば特許文献１などがある。特許文献１には，オペレータが設定したディスプレイ内の所定の領域を初期画像データとして取得し，所定の時間ごとに画像データを取得し，その画像データを初期画像データとを比較し，両者が異なっていれば画像が変化した，すなわち演算が終了してメッセージが表示されたと判断して，オペレータに音や電子メール等により通知する技術が記載されている。また，特許文献１には，オペレータが設定したディスプレイ内の所定の領域の画像データを所定の時間ごとに取得し，その画像データ内にあらかじめ記憶された被検出画像データが存在すれば，その旨をオペレータに音や電子メール等により通知する技術が記載されている。
【特許文献１】特開２００４−３０２５５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述のプラント装置においてアプリケーションの動作を監視する技術では，アプリケーションの特定の動作検出を行っているため，そのアプリケーションだけしか監視することができない。
【０００６】
また，上記の特許文献１に記載された技術では，複数のアプリケーションによる表示画面の所定領域の変化を検出することができないため，同時に表示される複数の処理画面ごとの所定の領域を監視し，それぞれに対応する応答処理を自動化することはできない。
【０００７】
本発明は，上記の問題点の解決を図り，同時に複数のアプリケーションが実行されている場合でも，それぞれの処理画面を監視することにより，アプリケーションの処理状況に対応する応答処理を自動化することが可能となる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
基準部分画像と，比較すべき判定部分画像と，判定部分画像の基準部分画像からの相対位置と，所定の後続処理とを対応付けて記憶しておき，所定の間隔でキャプチャした画面から基準部分画像の位置と，この位置からの相対位置に存在する部分画像とを取得して，判定部分画像と一致する場合に対応する所定の後続処理を実行する。
【０００９】
具体的には，コンピュータにおいて，画面上の基準位置を特定する画像である基準部分画像と，基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて，記憶手段に記憶しておく。
【００１０】
基準部分画像は，例えば，監視対象となるアプリケーションの画面への表示画像のうち，そのアプリケーションの特徴的な部分の画像である。相対位置情報は，例えば，監視対象となるアプリケーションの画像上での基準部分画像の位置から監視位置までの相対座標などである。判定部分画像は，例えば，アプリケーション画像上の監視位置に表示される可能性がある画像である。所定の後続処理は，例えば，アプリケーション画像上の監視位置に判定部分画像と一致するアプリケーション終了を示す画像が表示された場合に，その判定部分画像に対応付けられた，アプリケーション終了をユーザに通知する後続処理などである。
【００１１】
基準位置取得手段は，所定の間隔でキャプチャした画面から，記憶手段に記憶した基準部分画像と一致する部分の，キャプチャした画面上での位置情報を取得する。
【００１２】
部分画像取得手段は，基準位置取得手段で取得した位置情報から，記憶手段に基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する。すなわち，基準位置取得手段で取得した位置情報と基準部分画像と対応付けられた相対位置情報とから，画面上の監視位置を特定し，その監視位置の部分画像を取得する。
【００１３】
比較手段は，部分画像取得手段で取得した部分画像と，記憶手段に基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する。
【００１４】
後続処理実行手段は，比較手段で監視位置の部分画像と判定部分画像とが一致すると判定した場合に，記憶手段に判定部分画像と対応付けて記憶した所定の後続処理を実行する。
【００１５】
このように，画面から基準部分画像が検出されることにより，アプリケーションの実行とそのアプリケーションの処理画像の画面上の位置とが認識され，さらに基準部分画像に対応する相対位置情報によってアプリケーションの処理画像上の監視位置が特定され，監視位置から取得された画像と一致する判定部分画像が存在する場合に，その判定部分画像に対応する後続処理を自動的に実行する。
【００１６】
これにより，処理に時間がかかるアプリケーションの監視のために，ユーザが拘束される必要がなくなる。また，アプリケーションの様々な処理状況ごとの応答処理の自動化が可能となり，多種多様なアプリケーションのそれぞれに対応した応答処理の自動化が可能となる。また，ディスプレイ画面上のどの位置にアプリケーションの処理画面が表示されていても，的確に監視位置を特定することができる。また，複数のアプリケーションの処理状態の監視と，それぞれの状態に対応する応答処理の自動実行が可能となる。
【００１７】
さらに，記憶手段に，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とを記憶し，後続処理実行手段で，比較手段で一致すると判定した判定部分画像が所定の後続処理に対応付けられた判定部分画像である場合に，記憶手段に判定部分画像と対応付けて記憶した所定の後続処理を実行し，比較手段で一致すると判定した判定部分画像がない場合に，記憶手段に一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行するようにしてもよい。
【００１８】
例えば，監視位置の画像が所定の後続処理に対応付けられた判定部分画像である場合には，その後続処理を実行し，監視位置の画像が所定の後続処理に対応付けられていない判定部分画像である場合には，特に後続処理を実行せずに監視対象のアプリケーションの処理を継続し，監視位置の画像に一致する判定部分画像が登録されていない場合には，監視位置から想定外の画像が検出された場合用に用意された後続処理を実行する。
【００１９】
これにより，例えば，アプリケーションの実行中に不測の状況が発生した場合でも，その旨をユーザに通知する等の処理を自動的に実行することが可能となるため，ユーザは，不測の状況発生に迅速に対応できるようになる。
【発明の効果】
【００２０】
アプリケーション実行中の画面に特定の判定部分画像が表示されたことで，表示された特定の判定部分画像に対応する応答処理を自動的に実行することができるので，処理に時間がかかるアプリケーションの監視のためにユーザが拘束される必要がなくなる。
【００２１】
また，特定の判定部分画像と応答処理とをあらかじめ対応付けてさえおけば，アプリケーション実行中の画面に特定の判定部分画像が表示されることによって対応する応答処理を自動的に実行されるので，アプリケーションの様々な処理状況ごとの応答処理の自動化が可能となり，多種多様なアプリケーションのそれぞれに対応した応答処理の自動化が可能となる。
【００２２】
また，アプリケーションの位置を特定する基準部分画像と，その基準部分画像から監視位置までの相対位置情報とを用いて監視位置を特定することにより，ディスプレイ画面上のどの位置にアプリケーションの処理画面が表示されていても，的確に監視位置を特定することができる。
【００２３】
また，同時に表示される複数の処理画面の監視位置が重なっていなければ，それぞれの処理画面ごとに所定の監視領域を監視することができるため，複数のアプリケーションの処理状態の監視と，それぞれの状態に対応する応答処理の自動実行が可能となる。
【発明を実施するための最良の形態】
【００２４】
以下，本発明の実施の形態について，図面を用いて説明する。
【００２５】
図１は，本実施の形態によるコンピュータシステムの構成例を示す図である。図１に示すコンピュータシステムは，自動応答処理部１０，表示処理部２０，ディスプレイ３０等を備える。
【００２６】
表示処理部２０は，各実行アプリケーション４０（実行中のアプリケーション）からの画面出力の信号を受け，ディスプレイ３０に表示画面の画像信号を送る。
【００２７】
自動応答処理部１０は，ディスプレイ３０の表示画面の画像情報を取得し，その表示画面内の所定領域の画像によって，対応する応答処理プログラムを自動的に実行する。自動応答処理部１０は，コンピュータシステムが備えるＣＰＵ，メモリ，ハードディスク等のハードウェアとソフトウェアプログラムとにより実現され，前処理部１１，表示画像取り出し部１２，アプリ画面位置特定部１３，監視位置画像取得部１４，アクション判定画像比較部１５，応答処理実行部１６，情報記憶部１７を備える。
【００２８】
前処理部１１は，ユーザにより登録された情報をもとに必要な解析や対応付けを行い，アプリ画面位置判定画像やアクション判定画像などの各画像データ，応答処理プログラム，監視位置を示す情報，各データやプログラムの対応情報などを情報記憶部１７に登録する。
【００２９】
表示画像取り出し部１２は，所定のタイミングで，ディスプレイ３０の画面全体の表示画像を，表示処理部２０から取得（キャプチャ）する。表示画像は，監視を行う各アプリケーションの処理ごとに設定されたタイミングで取得してもよいし，自動応答処理全体として共通に設定されたタイミングで取得してもよい。
【００３０】
アプリ画面位置特定部１３は，表示画像取り出し部１２により取得された表示画像から，情報記憶部１７に記憶されたアプリ画面位置判定画像の検出を行い，アプリ画面位置判定画像が検出された場合には，その位置情報を取得する。これにより，表示画面上のどの位置からでも，監視を行うアプリケーションの処理画面を検出することができる。
【００３１】
ここで，アプリ画面位置判定画像は，監視を行うアプリケーションの処理画面上の特徴的な部分画像である。アプリ画面位置判定画像がディスプレイ３０の表示画面から検出されるということは，監視を行うアプリケーションの処理が実行されているということである。
【００３２】
監視位置画像取得部１４は，アプリ画面位置判定画像が検出された場合に，アプリ画面位置特定部１３により取得された位置情報と，検出されたアプリ画面位置判定画像に対応する監視位置を示す情報とから，表示画像取り出し部１２により取得された表示画像上の監視位置を特定し，特定された監視位置の画像を取得する。
【００３３】
ここで，監視位置を示す情報は，アプリケーションの処理画面上のアプリ画面位置判定画像の位置と監視領域の位置との相対関係を示す情報である。ディスプレイ３０の表示画面上のアプリ画面位置判定画像が検出された位置と，監視位置を示す情報とから，アプリケーションの処理画面の監視位置を特定することができる。
【００３４】
アクション判定画像比較部１５は，監視位置画像取得部１４により取得された監視位置の画像と，検出されたアプリ画面位置判定画像に対応する各アクション判定画像とが一致するかを比較判定する。なお，監視位置の画像とアクション判定画像との一致判定は，ピクセル単位での完全一致によって一致と判断するようにしてもよいし，グラフマッチング等の類似度計算技術により双方の画像間の類似度計算を行い，類似度が所定の閾値以上である場合に一致と判断するようにしてもよい。
【００３５】
ここで，アクション判定画像は，アプリケーションの処理画面上の監視位置から取得された画像との比較判定を行う部分画像である。例えば，処理終了を示すメッセージの画像がアクション判定画像として登録されており，そのアクション判定画像と監視位置から取得された画像とが一致するということは，監視を行うアプリケーションの処理が終了したということである。
【００３６】
応答処理実行部１６は，アクション判定画像比較部１５により一致すると判定されたアクション判定画像が存在する場合に，そのアクション判定画像に対応する応答処理プログラムを実行する。例えば，処理終了を示すメッセージの画像（アクション判定画像）が監視位置から取得された場合に，その処理終了を示すメッセージの画像（アクション判定画像）に対応付けられた，アプリケーションの処理終了をユーザの携帯端末にメールで通知するという応答処理プログラムを実行する。
【００３７】
情報記憶部１７は，アプリ画面位置判定画像やアクション判定画像などの各画像データや，応答処理プログラム等を記憶する。また，情報記憶部１７は，各アプリ画面位置判定画像に対応付けられた監視位置を示す情報，アプリ画面位置判定画像とアクション判定画像の対応情報，アクション判定画像と応答処理プログラムとの対応情報などを記憶する。なお，各データ（プログラムを含む）間の対応付けは，１対１対応に限らず，１対複数（複数対１）対応でも，複数対複数対応でもよい。
【００３８】
図２は，本実施の形態による対応付けの例を示す図である。図２に示す例では，アプリ画面位置判定画像，監視位置の相対位置情報（監視位置を示す情報），アクション判定画像，応答処理プログラムの対応付けをテーブル形式で示したものである。
【００３９】
図２に示す例では，監視位置を示す情報（監視位置の相対位置情報）が，アプリ画面位置判定画像の端点から監視位置（すなわちアクション判定画像が検出される可能性がある位置）の端点への相対位置座標で表現されている。端点は，例えば，アプリ画面位置判定画像（または監視位置）の最上部のピクセルのうち，最も左にあるピクセルといったようにあらかじめ決定しておく。
【００４０】
図２に示すような対応情報を用意しておくことにより，表示画面上からアプリ画面位置判定画像が検出された場合に，そのアプリ画面位置判定画像に対応する表示画面上の監視位置とアクション判定画像とが抽出され，さらに監視位置画像とアクション判定画像とが一致すると判定された場合に，そのアクション判定画像に対応する応答処理プログラムを抽出することができる。
【００４１】
なお，特定のアクション判定画像に応答処理プログラムを対応付けるだけではなく，特定のアクション判定画像に応答処理プログラムがない旨を対応付け，さらに監視位置から特定のアクション判定画像が検出されないことに応答処理プログラムを対応付けることもできる。このように対応付けが設定された場合には，応答処理実行部１６は，監視位置の画像と応答処理プログラムが対応付けられたアクション判定画像との一致が判定された場合には，その対応付けられた応答処理プログラムを実行し，監視位置の画像と応答処理プログラムがない旨が対応付けられたアクション判定画像との一致が判定された場合には，特になにもせず，監視位置から特定のアクション判定画像が検出されない場合には，そのことに対応付けられた応答処理プログラムを実行する。
【００４２】
例えば，あるアプリケーション処理のメッセージ欄が監視対象となっている場合に，パスワード入力のメッセージ画像（アクション判定画像）が検出された場合には，自動的にパスワードを入力する応答処理プログラムを実行し，処理実行中のメッセージ画像（アクション判定画像）が検出された場合には，特に応答処理プログラムを実行せず，それ以外のアクション判定画像として登録されていない画像（例えば，エラーメッセージの画像）が検出された場合には，自動的に検出された画像からＯＣＲソフト（すなわち文字認識処理が可能なソフト）で表示文字を抽出し，ユーザの携帯端末にメールで送信する応答処理プログラムを実行する，といったことが可能となる。
【００４３】
以下，本実施の形態を，さらに具体的な実施例を挙げて説明する。
【００４４】
実際の表示画像の監視を行う前に，前処理により，ユーザから登録された情報（プログラムを含む）や，ユーザから登録された情報をもとに解析を行って得られた情報，各情報（プログラムを含む）間の対応情報等を，記憶しておく必要がある。
【００４５】
まず，ユーザの登録情報をもとに，監視時間の設定すなわちディスプレイ３０上の表示画像をキャプチャする時間間隔の設定を行う。本実施例では，アプリケーションごとに監視時間間隔が設定されるものとする。
【００４６】
図３は，監視時間設定情報の例を示す図である。図３に示す監視時間設定情報１００は，アプリＩＤと監視時間との対応情報である。アプリＩＤは，監視の対象となるアプリケーションを一意に識別する情報である。監視時間は，監視を行う時間間隔である。
【００４７】
次に，アプリ画面位置判定画像や監視位置を示す情報を登録する。ここでは，監視を行うアプリケーションのオリジナル画像上でユーザが範囲指定を行うことにより，アプリ画面位置判定画像や監視位置を示す情報を作成し，登録する例を説明する。
【００４８】
図４は，アプリオリジナル画像の例を示す図である。ユーザは，例えば，図４に示す“アプリケーション００１”のオリジナル画像（以下，アプリオリジナル画像１０１と記す）上で範囲を指定することにより，“アプリケーション００１”に関してのアプリ画面位置判定画像や監視位置の設定を行う。ここで，アプリオリジナル画像１０１は，ビットマップデータである。
【００４９】
図５は，アプリ画面位置判定画像と監視位置の設定を説明する図である。図５（Ａ）は，図４に示すアプリオリジナル画像１０１上で，アプリ画面位置判定画像とする部分を指定した画面の例である。図５（Ａ）では，ハッチング部分１０２がアプリ画面位置判定画像とする部分として，特定の色（例えば赤など）で塗りつぶされている。このようなアプリ画面位置判定画像とする部分が指定された画像を，アプリ画面位置判定設定画像１０３として保持する。ここで，アプリ画面位置判定設定画像１０３は，ビットマップデータである。なお，アプリ画面位置判定画像とする部分として，複数箇所を指定することもできる。
【００５０】
図５（Ｂ）は，図４に示すアプリオリジナル画像１０１上で，監視位置とする部分を指定した画面の例である。図５（Ｂ）では，ハッチング部分１０４が監視位置とする部分として，特定の色（例えば赤など）で塗りつぶされている。このような監視とする部分が指定された画像を，監視位置設定画像１０５として保持する。ここで，監視位置設定画像１０５は，ビットマップデータである。なお，監視位置とする部分として，複数箇所を指定することもできる。
【００５１】
前処理では，図４に示すアプリオリジナル画像１０１と，図５に示すアプリ画面位置判定設定画像１０３，監視位置設定画像１０５とから，アプリ画面位置判定画像や監視位置の設定を行う。
【００５２】
まず，アプリオリジナル画像１０１とアプリ画面位置判定設定画像１０３との差分をとり，差分部分のピクセル範囲の各ピクセルの色データを取り出し，アプリ画面位置判定画像とする。なお，アプリ画面位置判定画像とする部分として，複数箇所が指定されている場合には，複数のアプリ画面位置判定画像が抽出される。
【００５３】
ここで，ビットマップファイルは，例えば，ビットマップの識別などが指定されたファイルヘッダ，画像の幅や高さ，色数などの情報が指定された情報ヘッダ，パレットの色情報（色数分だけ）の情報であるパレット情報，実際の色とインデックス番号の情報である画像データ（インデックス）等の情報を持つ。アプリオリジナル画像１０１とアプリ画面位置判定設定画像１０３との画像データをピクセル単位で比較することにより，その差分（特定の色で塗りつぶされた範囲）の画像情報を得ることができる。
【００５４】
図６は，アプリ画面位置判定画像の例を示す図である。図６に示すアプリ画面位置判定画像１０６は，アプリオリジナル画像１０１とアプリ画面位置判定設定画像１０３との差分を取ることにより抽出された画像である。このアプリ画面位置判定画像１０６が，アプリオリジナル画像１０１のアプリケーションの特徴的な部分として，ユーザにより指定された画像である。
【００５５】
次に，アプリオリジナル画像１０１と監視位置設定画像１０５との差分をとり，差分部分のピクセル範囲の各ピクセルの色データを取り出し，監視位置画像とする。なお，監視位置とする部分として，複数箇所が指定されている場合には，複数の監視位置画像が抽出される。監視位置画像を構成する各ピクセルの位置が，監視位置となる。
【００５６】
以上の例ではアプリオリジナル画像１０１とアプリ画面位置判定設定画像１０３の差分，アプリオリジナル画像１０１と監視位置設定画像１０５の差分によって，アプリ画面位置判定画像１０６や監視位置画像を取得しているが，アプリオリジナル画像１０１からユーザに指定された部分の画像を切り出すことにより，アプリ画面位置判定画像１０６や監視位置画像を取得するようにしてもよい。
【００５７】
図７は，アプリ画面位置判定画像や監視位置を示す情報の登録の処理により作成されたデータの例を示す図である。図７（Ａ）は，アプリ画面位置判定画像１０６のデータ構成（アプリ画面位置判定画像データ１０７）の例であり，図７（Ｂ）は，監視位置画像のデータ構成（監視位置画像データ１０８）の例である。アプリ画面位置判定画像１０６のピクセル数はｎ個であり，監視位置画像のピクセル数はｍ個であるものとする。
【００５８】
図７（Ａ）に示すアプリ画面位置判定画像データ１０７は，インデックス番号，ピクセル位置（ｘ座標，ｙ座標），色データ（Ｒ，Ｇ，Ｂ）からなる。インデックス番号は，アプリ画面位置判定画像データ１０７内での各ピクセルの識別番号である。インデックス番号は，例えば，ｙ座標が小さい順（画面の上から下の順）に，さらにその中でｘ座標が小さい順（画面の左から右の順）に与えられる。ピクセル位置は，そのピクセルのアプリオリジナル画像１０１内での座標情報である。色データは，そのピクセルの色を示す情報である。
【００５９】
図７（Ｂ）に示す監視位置画像データ１０８は，インデックス番号，ピクセル位置（ｘ座標，ｙ座標），色データ（Ｒ，Ｇ，Ｂ）からなる。インデックス番号は，監視位置画像データ１０８内での各ピクセルの識別番号である。インデックス番号は，例えば，ｙ座標が小さい順（画面の上から下の順）に，さらにその中でｘ座標が小さい順（画面の左から右の順）に与えられる。ピクセル位置は，そのピクセルのアプリオリジナル画像１０１内での座標情報である。色データは，そのピクセルの色を示す情報である。
【００６０】
この例では，図７（Ａ）に示すアプリ画面位置判定画像データ１０７のピクセル位置と，図７（Ｂ）に示す監視位置画像データ１０８のピクセル位置との差が，監視位置を示す情報となる。
【００６１】
得られたアプリ画面位置判定画像１０６と監視位置画像を，すなわち図７（Ａ）に示すアプリ画面位置判定画像データ１０７と，図７（Ｂ）に示す監視位置画像データ１０８とを関連付けておく。
【００６２】
次に，アクション判定画像を登録する。アクション判定画像は，例えば，アプリ画面位置判定画像１０６の指定と同様にアプリオリジナル画像１０１上で指定することにより得ることができる。上記の監視位置画像をアクション判定画像の一つとすることもできる。このように，ユーザの登録情報（ユーザの指定などの情報）をもとに，アクション判定画像を作成し，登録する。
【００６３】
図８は，アクション判定画像の例を示す図である。図８に示す各アクション判定画像１０９は，アプリケーションの処理過程において，図５（Ｂ）に示すハッチング部分１０４にあたる監視位置に表示される画像である。以下の説明において，図８（Ａ）に示すアクション判定画像１０９ａと図８（Ｂ）に示すアクション判定画像１０９ｂは，応答処理プログラムに対応付けられるアクション判定画像１０９であり，図８（Ｃ）に示すアクション判定画像１０９ｃは，応答処理プログラムに対応付けられないアクション判定画像であるものとする。
【００６４】
図９は，アクション判定画像のデータ構成の例を示す。図９に示すアクション判定画像データ１１０は，インデックス番号，ピクセル位置（ｘ座標，ｙ座標），色データ（Ｒ，Ｇ，Ｂ）からなる。インデックス番号は，アクション判定画像データ１１０内での各ピクセルの識別番号である。インデックス番号は，例えば，ｙ座標が小さい順（画面の上から下の順）に，さらにその中でｘ座標が小さい順（画面の左から右の順）に与えられる。ピクセル位置は，そのピクセルのアプリオリジナル画像１０１内での座標情報である。色データは，そのピクセルの色を示す情報である。なお，アクション判定画像データ１１０のピクセル数とピクセル位置（ｘ座標，ｙ座標）は，図７（Ｂ）に示す監視位置画像データ１０８と同じである。
【００６５】
アプリ画面位置判定画像１０６とアクション判定画像１０９，すなわち図７（Ａ）に示すアプリ画面位置判定画像データ１０７と図９に示すアクション判定画像データ１１０とを関連付けておく。
【００６６】
次に，アクション判定画像と応答処理プログラムを対応付ける。ユーザの指定をもとにアクション判定画像１０９と，そのアクション判定画像１０９が検出された場合に実行する応答処理プログラムとを対応付ける。
【００６７】
図１０は，応答処理プログラム対応テーブルの例を示す図である。図１０に示す応答処理プログラム対応テーブル１１１は，アクション判定画像１０９と応答処理プログラムとの対応テーブルである。図１０に示す応答処理プログラム対応テーブル１１１の例では，アクション判定画像１０９のファイル名と応答処理プログラムのファイル名とを対応付けている。
【００６８】
図１０に示す応答処理プログラム対応テーブル１１１中，応答処理プログラムが“（継続）”となっているレコードは，監視位置からそのアクション判定画像１０９が検出された場合に特に応答処理を行わず，引き続き監視対象となっているアプリケーションの処理を実行することを示している。また，アクション判定画像１０９が“（画像不一致）”となっているレコードは，監視位置から登録されたアクション判定画像１０９が検出されなかった場合に，そのことに対応付けられた応答処理プログラムを実行することを示している。
【００６９】
ここまで図４から図１０を用いて説明した前処理は，一つの監視対象となるアプリケーションについての処理の例である。このような処理を，監視対象となるすべてのアプリケーションについて行う。
【００７０】
図１１は，本実施例による前処理フローチャートである。まず，ユーザの登録情報をもとに，図３に示すような監視対象となるアプリケーションの監視時間間隔を示す監視時間設定情報１００を登録する（ステップＳ１０）。その後，すべての監視の対象となるアプリケーションについて，以下のステップＳ１２〜ステップ１４に示す処理を行う（ステップＳ１１）。
【００７１】
ユーザの登録情報をもとに，アプリ画面位置判定画像１０６，監視位置を示す情報等を作成し，登録する（ステップＳ１２）。本実施例では，アプリ画面位置判定画像１０６と監視位置画像のアプリオリジナル画像１０１上での座標情報によって，アプリ画面位置判定画像１０６から監視位置までの相対位置を示している。このとき，アプリ画面位置判定画像１０６と監視位置画像とを対応付けておく。
【００７２】
ユーザの登録情報をもとに，アクション判定画像１０９を登録する（ステップＳ１３）。このとき，アプリ画面位置判定画像１０６とアクション判定画像１０９とを対応付けておく。
【００７３】
ユーザの登録情報をもとに，図１０に示すような応答処理プログラム対応テーブル１１１を作成する（ステップＳ１４）。このとき，必要な応答処理プログラムも登録しておく。
【００７４】
このような前処理により，ユーザは，アプリ画面位置判定画像１０６，監視位置を示す情報，アクション判定画像，応答処理プログラムおよびそれらを対応付ける情報などを，簡単に設定，登録することができる。前処理によって，アプリケーションの処理と応答プログラムとの対応を一度登録しておけば，以降同じアプリケーションを実行するたびに設定を行わなくても，自動応答処理による応答処理プログラムの実行が可能となる。
【００７５】
以上説明した前処理によって登録された情報を用いて，以下で説明する自動応答処理が実行される。
【００７６】
自動応答処理が実行されると，まず，監視時間設定情報１００を参照し，ディスプレイ３０の表示画面をキャプチャする時間をスケジューリングする。ディスプレイ３０の表示画面をキャプチャするタイミングになると，表示処理部２０からディスプレイ３０への表示画像を取得する。
【００７７】
図１２は，キャプチャされたディスプレイの表示画面の例を示す図である。図１２に示すような表示画面１１２がキャプチャされると，登録されているアプリ画面位置判定画像１０６で表示画面１１２を探索する。表示画面１１２からアプリ画面位置判定画像１０６が検出されれば，表示画面１１２内に監視対象となるアプリケーションのウィンドウ画面１１３が含まれていると判断できる。
【００７８】
表示画面１１２からアプリ画面位置判定画像１０６が検出されると，表示画面１１２上のアプリ画面位置判定画像１０６が表示されている位置から，監視位置を求める。例えば，表示画面１１２上のアプリ画面位置判定画像１０６が表示されている位置の座標と，前処理で設定された対応するアプリ画面位置判定画像１０６の座標情報と監視位置画像の座標情報から得られる相対位置関係から，監視位置を求めることができる。
【００７９】
図１２に示す表示画像１１２の例では，太い破線で示す位置１１４からアプリ画面位置判定画像１０６が検出され，その太い破線で示す位置１１４から相対的に監視位置，すなわち太い一点鎖線で示す位置１１５が特定される。特定された監視位置の画像を取得する。
【００８０】
取得された監視位置の画像と，検出されたアプリ画面位置判定画像１０６に対応する各アクション判定画像１０９との一致判定を行う。図１２に示す例では，取得された監視位置の画像が，図８（Ｃ）に示すアクション判定画像１０９ｃと一致する。この一致判定の結果で，応答処理プログラム対応テーブル１１１を参照する。上述したように，図８（Ｃ）に示すアクション判定画像１０９ｃは，応答処理プログラムに対応付けられないアクション判定画像であるので，応答処理プログラム対応テーブル１１１から，“（継続）”が得られ，特に応答処理を行わない。
【００８１】
例えば，表示画面１１２から取得された監視位置の画像が，応答処理プログラムと対応付けられた図８（Ａ）に示すアクション判定画像１０９ａや，図８（Ｂ）に示すアクション判定画像１０９ｂである場合には，応答処理プログラム対応テーブル１１１から得られた応答処理プログラムを実行する。例えば，取得された監視位置の画像が図８（Ａ）に示すアクション判定画像１０９ａである場合には，それに対応付けられた自動的にコマンドを入力する応答処理プログラムが実行され，取得された監視位置の画像が図８（Ｂ）に示すアクション判定画像１０９ｂである場合には，それに対応付けられた処理終了をユーザの携帯端末にメールで通知する応答処理プログラムが実行される。
【００８２】
図１３は，監視位置から取得された画像と一致するアクション判定画像が登録されていない場合の表示画面の例を示す図である。図１３に示す表示画像１１２の監視位置すなわち太い一点鎖線で示す位置１１５から，アクション判定画像１０９として登録されていない画像が取得されたものとする。このとき，応答処理プログラム対応テーブル１１１から，“（画像不一致）”に対応する応答処理プログラムが得られ，その応答処理プログラムが実行される。例えば，図１３に示す例において，“（画像不一致）”に対応する応答処理プログラムが，取得された監視位置の画像の文字認識を行い，得られた文字情報をユーザの携帯端末にメールで通知する応答処理プログラムであれば，“エラー（Ｅ００ｘｘ０１）が発生しました。”というメールがユーザの携帯端末に送られる。
【００８３】
図１４は，本実施例による自動応答処理フローチャートである。まず，監視時間設定情報１００を参照し，ディスプレイ３０の表示画像をキャプチャする間隔をスケジューリングする（ステップＳ２０）。
【００８４】
ディスプレイ３０の表示画像をキャプチャするタイミングになれば（ステップＳ２１），コンピュータシステムの表示処理部２０からディスプレイ３０の表示画像をキャプチャする（ステップＳ２２）。
【００８５】
キャプチャされた表示画像を，登録されているアプリ画面位置判定画像１０６で探索し（ステップＳ２３），表示画像からアプリ画面位置判定画像１０６が検出されなければ（ステップＳ２４），処理を終了する。なお，表示画像からアプリ画面位置判定画像１０６が検出されなかった場合に，ステップＳ２１に戻り，次の表示画像のキャプチャタイミングを待つようにしてもよい。
【００８６】
表示画像からアプリ画面位置判定画像１０６が検出されれば（ステップＳ２４），アプリ画面位置判定画像１０６の表示画像上の位置と監視位置を示す情報とから表示画面上の監視位置を求め，その監視位置の画像を取得する（ステップＳ２５）。
【００８７】
取得された監視位置の画像と登録されているアクション判定画像１０９とを比較し（ステップＳ２６），取得された監視位置の画像に一致するアクション判定画像１０９が登録されていなければ（ステップＳ２７），応答処理プログラム対応テーブル１１１を参照し，画像不一致に対応する応答処理プログラム実行する（ステップＳ２８）。その後，ステップＳ２１に戻り，次の表示画像のキャプチャタイミングを待つ。
【００８８】
取得された監視位置の画像に一致するアクション判定画像１０９が登録されていれば（ステップＳ２７），応答処理プログラム対応テーブル１１１を参照し，一致するアクション判定画像１０９に対応する実行処理プログラムがなければ（ステップＳ２９），ステップＳ２１に戻り，次の表示画像のキャプチャタイミングを待つ。
【００８９】
一致するアクション判定画像１０９に対応する実行処理プログラムがあれば（ステップＳ２９），その応答処理プログラムを実行する（ステップＳ３０）。その後，ステップＳ２１に戻り，次の表示画像のキャプチャタイミングを待つ。
【００９０】
以上説明した自動応答処理部１０による処理は，コンピュータとソフトウェアプログラムとによって実現することができ，そのプログラムをコンピュータ読み取り可能な記録媒体に記録することも，ネットワークを通して提供することも可能である。
【００９１】
本実施の形態により，ディスプレイ画面上のどの位置にアプリケーションの処理画面が表示されていても，的確に監視位置を特定し，その監視位置に表示された画像に対応する応答処理を実行することができる。また，同時に表示される複数の処理画面ごとに所定の領域を監視し，そのそれぞれに対応する応答処理を自動化することができる。
【００９２】
以上，本発明の実施の形態について説明したが，本発明は本実施の形態に限られるものではない。例えば，本実施の形態では，アプリ画面位置判定画像１０６の形状や，監視領域の形状すなわちアクション判定画像１０９の形状は，四角で示されているが，円や楕円，極端に言えば星型など，どのような形状であってもよい。
【００９３】
以上説明した本実施の形態の特徴を列挙すると，以下の通りとなる。
【００９４】
（付記１）
コンピュータを，
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段と，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得手段と，
前記基準位置取得手段で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得手段と，
前記部分画像取得手段で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較手段と，
前記比較手段で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行手段として，
機能させるための後続処理の自動処理プログラム。
【００９５】
（付記２）
前記記憶手段には，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とが記憶されており，
前記後続処理実行手段では，前記比較手段で一致すると判定した判定部分画像が前記所定の後続処理に対応付けられた判定部分画像である場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行し，前記比較手段で一致すると判定した判定部分画像がない場合に，前記記憶手段に前記一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行する
ことを特徴とする付記１に記載の後続処理の自動処理プログラム。
【００９６】
（付記３）
前記コンピュータを，
あらかじめ用意された設定用の画像に対する，ユーザによる設定用の画像上の基準となる部分の指定と設定用の画像上の監視対象となる部分の指定とを入力し，前記指定された設定用の画像の基準となる部分から前記基準部分画像を作成し，前記指定された設定用の画像の基準となる部分の位置情報と前記指定された設定用の画像上の監視対象となる部分の位置情報とから前記相対位置情報を作成し，作成された前記基準部分画像と前記相対位置情報とを対応付けて前記記憶手段に記憶する前処理手段として，
機能させるための付記１または付記２に記載の後続処理の自動処理プログラム。
【００９７】
（付記４）
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段と，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得手段と，
前記基準位置取得手段で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得手段と，
前記部分画像取得手段で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較手段と，
前記比較手段で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行手段とを備える
ことを特徴とする後続処理の自動処理装置。
【００９８】
（付記５）
前記記憶手段には，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とが記憶されており，
前記後続処理実行手段では，前記比較手段で一致すると判定した判定部分画像が前記所定の後続処理に対応付けられた判定部分画像である場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行し，前記比較手段で一致すると判定した判定部分画像がない場合に，前記記憶手段に前記一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行する
ことを特徴とする付記４に記載の後続処理の自動処理装置。
【００９９】
（付記６）
あらかじめ用意された設定用の画像に対する，ユーザによる設定用の画像上の基準となる部分の指定と設定用の画像上の監視対象となる部分の指定とを入力し，前記指定された設定用の画像の基準となる部分から前記基準部分画像を作成し，前記指定された設定用の画像の基準となる部分の位置情報と前記指定された設定用の画像上の監視対象となる部分の位置情報とから前記相対位置情報を作成し，作成された前記基準部分画像と前記相対位置情報とを対応付けて前記記憶手段に記憶する前処理手段を備える
ことを特徴とする付記４または付記５に記載の後続処理の自動処理装置。
【０１００】
（付記７）
画面上の基準位置を特定する画像である基準部分画像と，前記基準部分画像の位置から判定対象となる画面上の部分画像の位置までの位置関係を示す情報である相対位置情報と，前記判定対象となる画面上の部分画像と比較すべき画像である判定部分画像と，所定の後続処理とを対応付けて記憶する記憶手段を備えるコンピュータが画面に表示された部分画像に応じた処理を実行する後続処理の自動処理方法であって，
所定の間隔でキャプチャした画面から，前記記憶手段に記憶した基準部分画像と一致する部分の，前記画面上での位置情報を取得する基準位置取得過程と，
前記基準位置取得過程で取得した位置情報から，前記記憶手段に前記基準部分画像と対応付けて記憶した相対位置情報の位置に該当する部分画像を取得する部分画像取得過程と，
前記部分画像取得過程で取得した画像と，前記記憶手段に前記基準部分画像と対応付けて記憶した判定部分画像とが一致するかを判定する比較過程と，
前記比較過程で一致すると判定した場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行する後続処理実行過程とを有する
ことを特徴とする後続処理の自動処理方法。
【０１０１】
（付記８）
前記記憶手段には，所定の後続処理に対応付けられた判定部分画像と，所定の後続処理がないことを示す情報に対応付けられた判定部分画像と，一致する判定部分画像がないことを示す情報に対応付けられた所定の後続処理とが記憶されており，
前記後続処理実行過程では，前記比較過程で一致すると判定した判定部分画像が前記所定の後続処理に対応付けられた判定部分画像である場合に，前記記憶手段に前記判定部分画像と対応付けて記憶した所定の後続処理を実行し，前記比較過程で一致すると判定した判定部分画像がない場合に，前記記憶手段に前記一致する判定部分画像がないことを示す情報に対応付けて記憶した所定の後続処理を実行する
ことを特徴とする付記７に記載の後続処理の自動処理方法。
【０１０２】
（付記９）
あらかじめ用意された設定用の画像に対する，ユーザによる設定用の画像上の基準となる部分の指定と設定用の画像上の監視対象となる部分の指定とを入力し，前記指定された設定用の画像の基準となる部分から前記基準部分画像を作成し，前記指定された設定用の画像の基準となる部分の位置情報と前記指定された設定用の画像上の監視対象となる部分の位置情報とから前記相対位置情報を作成し，作成された前記基準部分画像と前記相対位置情報とを対応付けて前記記憶手段に記憶する前処理過程を有する
ことを特徴とする付記７または付記８に記載の後続処理の自動処理方法。
【図面の簡単な説明】
【０１０３】
【図１】本実施の形態によるコンピュータシステムの構成例を示す図である。
【図２】本実施の形態による対応付けの例を示す図である。
【図３】監視時間設定情報の例を示す図である
【図４】アプリケーションオリジナル画像の例を示す図である。
【図５】アプリ画面位置判定画像と監視位置の設定を説明する図である。
【図６】アプリ画面位置判定画像の例を示す図である。
【図７】アプリ画面位置判定画像や監視位置を示す情報の登録の処理により作成されたデータの例を示す図である。
【図８】アクション判定画像の例を示す図である。
【図９】アクション判定画像のデータ構成の例を示す。
【図１０】応答処理プログラム対応テーブルの例を示す図である。
【図１１】本実施例による前処理フローチャートである。
【図１２】キャプチャされたディスプレイの表示画面の例を示す図である。
【図１３】監視位置から取得された画像と一致するアクション判定画像が登録されていない場合の表示画面の例を示す図である。
【図１４】本実施例による自動応答処理フローチャートである。
【符号の説明】
【０１０４】
１０  自動応答処理部
１１  前処理部
１２  表示画像取り出し部
１３  アプリ画面位置特定部
１４  監視位置画像取得部
１５  アクション判定画像比較部
１６  応答処理実行部
１７  情報記憶部
２０  表示処理部
３０  ディスプレイ
４０  実行アプリケーション
【図１】
0004842917.tif 000002
【図２】
0004842917.tif 000003
【図３】
0004842917.tif 000004
【図４】
0004842917.tif 000005
【図５】
0004842917.tif 000006
【図６】
0004842917.tif 000007
【図７】
0004842917.tif 000008
【図８】
0004842917.tif 000009
【図９】
0004842917.tif 000010
【図１０】
0004842917.tif 000011
【図１１】
0004842917.tif 000012
【図１２】
0004842917.tif 000013
【図１３】
0004842917.tif 000014
【図１４】
0004842917.tif 000015