JP5428681B2 - 情報処理装置、情報処理プログラム、および情報処理方法 - Google Patents

情報処理装置、情報処理プログラム、および情報処理方法 Download PDF

Info

Publication number
JP5428681B2
JP5428681B2 JP2009209436A JP2009209436A JP5428681B2 JP 5428681 B2 JP5428681 B2 JP 5428681B2 JP 2009209436 A JP2009209436 A JP 2009209436A JP 2009209436 A JP2009209436 A JP 2009209436A JP 5428681 B2 JP5428681 B2 JP 5428681B2
Authority
JP
Japan
Prior art keywords
area
screen
item
graphic
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009209436A
Other languages
English (en)
Other versions
JP2011060018A (ja
Inventor
悟 ▲高▼橋
隆夫 毛利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009209436A priority Critical patent/JP5428681B2/ja
Publication of JP2011060018A publication Critical patent/JP2011060018A/ja
Application granted granted Critical
Publication of JP5428681B2 publication Critical patent/JP5428681B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

本発明は、操作に関するログを取得する情報処理装置、情報処理プログラム、および情報処理方法に関する。
従来から、業務分析のために、アプリケーションが発行するログを用いて作業時間を計測することが行われている。ところが、対象となるアプリケーションがログを発行しないものであれば、何らかの手法により間接的にログを取得する必要がある。従来において、画面の画像データを所定時間前の画像データと比較して、画像データの一致不一致から画面の表示内容の切り替えタイミングを判断する手法がある。
また、予め定められた複数の業務項目について実際にかかった時間を計測する技術がある(たとえば、下記特許文献1参照。)。具体的には、計測装置は、特定の業務を開始する際の被測定者による特定の業務項目ボタンのクリックに応じて、時間計測を開始する。そして、計測装置は、特定の業務が終了して特定の業務項目の選択入力が行われると、特定の業務項目の時間計測の終了に関する情報を記録する。
また、対話システムの応答時間を測定する技術がある(たとえば、下記特許文献2参照。)。具体的には、測定装置は、ディスプレイに表示された画像情報の予め定められた第1の位置における画像情報の変化を検知し、その時刻をプログラムの動作開始時刻として記録する。そして、測定装置は、画像情報の予め定められた第2の位置における画像情報の変化を検知し、その時刻をプログラムの動作終了時刻として記録し、動作開始時刻と動作終了時刻から応答時間を計算する。
特開2002−107473号公報 特開2004−38619号公報
しかしながら、上述した従来技術では、画面内に複数の枠(表示領域)を有し、一の枠内の項目群のいずれかを選択すると、他の枠内の表示内容が切り替わるアプリケーションにおける項目の選択操作に関するログを取得することが難しいという問題がある。
具体的には、画面全体の画像データの一致不一致から表示内容の切り替えタイミングを判断する従来手法では、各枠のスクロール操作による画面変化も検出してしまうため、項目の選択操作に関するログのみを正確に取得することが難しいという問題がある。
また、枠内の各項目に座標を与えて、項目の選択操作にともなう画面変化を検出することも考えられる。しかしながら、アプリケーションの種類、設定およびウィンドウサイズによって各枠の配置位置が異なるため、各項目の配置位置を一意に特定することが難しいという問題がある。
本発明は、上述した従来技術による問題点を解消するため、効率的かつ高精度に項目の選択操作に関するログを取得することができる情報処理装置、情報処理プログラム、および情報処理方法を提供することを目的とする。
上述した課題を解決し、目的を達成するため、開示の情報処理装置、情報処理プログラム、および情報処理方法は、画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定し、所定の時間間隔で得られた前記画面の一連の表示内容のうち、任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容とを比較し、比較された比較結果に基づいて、特定された項目領域と情報領域の表示内容がともに変化しているか否かを判定し、前記項目領域と前記情報領域の表示内容がともに変化していると判定された場合、前記任意の時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力することを要件とする。
本情報処理装置、情報処理プログラム、および情報処理方法によれば、効率的かつ高精度に項目の選択操作に関するログを取得することができるという効果を奏する。
本実施の形態の概要の一例を示す説明図である。 情報処理装置のハードウェア構成を示すブロック図である。 情報処理装置の機能的構成を示すブロック図である。 イベントDBの記憶内容の一例を示す説明図である。 画面DBの記憶内容の一例を示す説明図である。 領域DBの記憶内容の一例を示す説明図である。 操作ログDBの記憶内容の一例を示す説明図である。 レポート情報の具体例を示す説明図である。 特定部の機能的構成の一例を示すブロック図である。 リスト領域および本文領域の特徴を示す説明図である。 非背景色テーブルの記憶内容の一例を示す説明図である。 基準画面DBの記憶内容の一例を示す説明図である。 選択リストDBの記憶内容の一例を示す説明図である。 判定部の機能的構成の一例を示すブロック図である。 画面差分の具体例を示す説明図(その1)である。 画面差分の具体例を示す説明図(その2)である。 画面差分の具体例を示す説明図(その3)である。 画面差分の具体例を示す説明図(その4)である。 画面差分の具体例を示す説明図(その5)である。 画面差分の具体例を示す説明図(その6)である。 画面差分の具体例を示す説明図(その7)である。 情報処理装置の情報処理手順の一例を示す説明図である。 イベントログ取得処理の具体的処理手順の一例を示すフローチャートである。 画面取得処理の具体的処理手順の一例を示すフローチャートである。 特定処理の具体的処理手順の一例を示すフローチャートである。 領域判定処理の具体的処理手順の一例を示すフローチャートである。 特徴判定処理の具体的処理手順の一例を示すフローチャート(その1)である。 特徴判定処理の具体的処理手順の一例を示すフローチャート(その2)である。 領域登録処理の具体的処理手順の一例を示すフローチャートである。 領域DBの記憶内容の変遷例を示す説明図である。 判定処理の具体的処理手順の一例を示すフローチャート(その1)である。 判定処理の具体的処理手順の一例を示すフローチャート(その2)である。 判定処理の具体的処理手順の一例を示すフローチャート(その3)である。 基準画面登録処理の具体的処理手順の一例を示すフローチャートである。 操作ログ登録処理の具体的処理手順の一例を示すフローチャートである。 出力処理の具体的処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、この発明にかかる情報処理装置、情報処理プログラム、および情報処理方法の好適な実施の形態を詳細に説明する。
(実施の形態の概要)
まず、本実施の形態の概要の一例について説明する。図1は、本実施の形態の概要の一例を示す説明図である。図1において、画面100は、項目群を表示する項目領域R1と、項目群から選ばれた項目に対応する情報を表示する情報領域R2と、を含む複数ペイン構造である。
画面100において、項目領域R1内の項目群の中から項目xが選択されている。このため、画面100では、項目領域R1内の項目xが強調表示(ハイライト表示)されている。さらに、画面100では、項目xに対応する情報Xが情報領域R2内に表示されている。
(1)画面100において、項目領域R1内の項目xから項目yに切り替えるためのクリック操作が行われると、画面100の表示内容が画面110の表示内容に変化する。具体的には、画面110では、項目yが選択された結果、項目領域R1内の項目yが強調表示され、項目yに対応する情報Yが情報領域R2内に表示されている。
(2)画面100において、項目領域R1内の表示内容を切り替えるためのスクロール操作が行われると、画面100の表示内容が画面120の表示内容に変化する。具体的には、画面120では、項目領域R1内の表示内容は変化しているが、選択されている項目xが切り替わっていないため、情報領域R2内の表示内容は変化していない。
そこで、本実施の形態では、画面内の項目領域R1と情報領域R2を特定し、情報領域R2の画面変化をともなう項目領域R1の画面変化を検知することで、情報領域R2の表示内容を切り替えるための項目の選択操作が行われたことを判断する。
画面110では、項目領域R1および情報領域R2の表示内容がともに変化しているため、情報領域R2の表示内容を切り替えるための項目の選択操作が行われたと判断される。一方、画面120では、項目領域R1の表示内容のみが変化しているため、情報領域R2の表示内容を切り替えるための項目の選択操作は行われていないと判断される。
このように、本実施の形態によれば、複数ペイン構造の画面内の項目領域R1と情報領域R2に着目して表示内容の変化を判断することで、効率的かつ高精度に情報領域R2の表示内容を切り替えるための項目の選択操作が行われたことを判断することができる。
(情報処理装置のハードウェア構成)
つぎに、本実施の形態にかかる情報処理装置200のハードウェア構成について説明する。図2は、情報処理装置のハードウェア構成を示すブロック図である。図2において、情報処理装置200は、CPU(Central Processing Unit)201と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、磁気ディスクドライブ204と、磁気ディスク205と、光ディスクドライブ206と、光ディスク207と、ディスプレイ208と、I/F(Interface)209と、キーボード210と、マウス211と、スキャナ212と、プリンタ213と、を備えている。また、各構成部はバス220によってそれぞれ接続されている。
ここで、CPU201は、情報処理装置200の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータのリード/ライトを制御する。光ディスク207は、光ディスクドライブ206の制御で書き込まれたデータを記憶したり、光ディスク207に記憶されたデータをコンピュータに読み取らせたりする。
ディスプレイ208は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ208は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
インターフェース(以下、「I/F」と略する。)209は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク214に接続され、このネットワーク214を介して他の装置に接続される。そして、I/F209は、ネットワーク214と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F209には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード210は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス211は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ212は、画像を光学的に読み取り、情報処理装置200内に画像データを取り込む。なお、スキャナ212は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ213は、画像データや文書データを印刷する。プリンタ213には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
(情報処理装置の機能的構成)
つぎに、情報処理装置200の機能的構成について説明する。図3は、情報処理装置の機能的構成を示すブロック図である。図3において、情報処理装置200は、取得部301と、特定部302と、判定部303と、認識部304と、算出部305と、作成部306と、出力部307と、を含む構成である。この制御部となる機能(取得部301〜出力部307)は、具体的には、たとえば、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F209により、その機能を実現する。
取得部301は、監視対象となるアプリケーションの実行中に発生したイベント(事象)のログを取得する機能を有する。ここで、ログとは、監視対象となるアプリケーションが発行するものではなく、たとえば、OS(Operating System)が発行するイベントログである。イベントログは、たとえば、図2に示したキーボード210やマウス211を用いた操作入力に関するログである。
また、取得部301は、監視対象となるアプリケーションに割り当てられている画面(ウィンドウ)のウィンドウサイズを取得する機能を有する。監視対象となるアプリケーションとしては、たとえば、メールソフト、RSS(RDF Site Summary)リーダ、電子書籍などがある。なお、ウィンドウサイズは、たとえば、画面の縦方向のピクセル数と横方向のピクセル数によって表現される。
具体的には、たとえば、取得部301が、ログおよびウィンドウサイズを、OSから取得してもよく、また、監視対象となるアプリケーションを実行中の外部のコンピュータ装置から取得してもよい。なお、取得されたログおよびウィンドウサイズは、たとえば、図4に示す操作イベントDB400に記憶される。
ここで、イベントDB400の記憶内容について説明する。図4は、イベントDBの記憶内容の一例を示す説明図である。図4において、イベントDB400は、ログID、クリック時刻、クリック座標およびウィンドウサイズのフィールド項目を有する。各フィールド項目に情報を設定することで、イベント情報400−1〜400−nがレコードとして記憶されている。
ログIDは、イベントログを識別する識別子である。クリック時刻は、クリックイベントの発生時刻である。クリック座標は、クリックイベントのクリック座標であり、たとえば、画面上での位置を特定する座標である。ウィンドウサイズは、クリックイベント発生時のアプリケーションに割り当てられた画面の大きさである。
なお、イベント情報400−1〜400−nは、クリック時刻が古いものから順にイベントDB400に記憶されている。また、イベントDB400は、たとえば、図2に示したRAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されている。
図3の説明に戻り、取得部301は、所定の時間間隔Tで画面の画像データを取得する機能を有する。ここで、画像データとは、画面に表示されている画面イメージのバイナリデータである。具体的には、たとえば、取得部301が、画面の画像データを、OSから取得してもよく、また、監視対象となるアプリケーションを実行中の外部のコンピュータ装置から取得してもよい。なお、時間間隔Tは、任意に設定可能である(たとえば、1秒間隔、0.3秒間隔など)。取得された画像データは、たとえば、図5に示す画面DB500に記憶される。
ここで、画面DB500の記憶内容について説明する。図5は、画面DBの記憶内容の一例を示す説明図である。図5において、画面DB500は、画面ID、取得時刻および画像データのフィールド項目を有する。各フィールド項目に情報を設定することで、画面情報500−1〜500−mがレコードとして記憶されている。
画面IDは、画像データを識別する識別子である。取得時刻は、画像データの取得時刻である。画像データは、画面イメージのバイナリデータである。なお、画面情報500−1〜500−mは、取得時刻が古いものから順に画面DB500に記憶されている。また、画面DB500は、たとえば、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されている。
図3の説明に戻り、特定部302は、画面内の複数の表示領域のうち、項目群を表示する項目領域と項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する機能を有する。ここで、表示領域とは、画面(ウィンドウ)を区切って分割された表示枠(ペイン)である。項目とは、たとえば、リスト(見出し)、インデックスなどである。情報とは、各項目に対応付けられている文章、グラフ、数式、表、絵などである。
具体的には、たとえば、特定部302が、取得された取得結果に基づいて、ウィンドウ内の複数の表示領域のうち、項目領域および情報領域を特定する。なお、特定部302の具体的な処理内容については図9を用いて後述する。また、特定された特定結果は、たとえば、図6に示す領域DB600に記憶される。
以下の説明では、監視対象となるアプリケーションを「メールソフト」、項目を「メールのリスト」、項目に対応する情報を「メールの本文」とする。また、項目領域を「リスト領域」、情報領域を「本文領域」と表記する。
ここで、領域DB600の記憶内容について説明する。図6は、領域DBの記憶内容の一例を示す説明図である。図6において、領域DB600は、クリック時刻、リスト領域範囲、本文領域範囲およびウィンドウサイズのフィールド項目を有する。各フィールド項目に情報を設定することで、画面内のリスト領域および本文領域に関する領域データ(たとえば、領域データ600−1)がレコードとして記憶されている。
クリック時刻とは、領域データを新規登録する際に基準となったクリックイベントの発生時刻である。リスト領域範囲とは、画面内のリスト領域の位置を特定する情報である。ここでは、リスト領域範囲が、リスト領域を示す矩形の対角頂点の座標によって表現されている。
本文領域範囲とは、画面内の本文領域の位置を特定する情報である。ここでは、本文領域範囲が、本文領域を示す矩形の対角頂点の座標によって表現されている。ウィンドウサイズとは、領域データを新規登録する際に基準となったクリックイベントの発生時刻でのウィンドウサイズである。なお、領域DB600は、たとえば、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されている。
図3の説明に戻り、判定部303は、特定された画面内のリスト領域および本文領域の表示内容がともに変化しているか否かを判定する機能を有する。具体的には、たとえば、判定部303が、時間間隔Tで得られた画面の一連の表示内容のうち、任意の時刻における画面の表示内容と、任意の時刻以前の時刻における画面の表示内容とを比較する。
そして、判定部303が、比較された比較結果に基づいて、任意の時刻の画面において、リスト領域および本文領域の表示内容がともに変化しているか否かを判定する。ここで、任意の時刻以前の時刻における画面の表示内容は、たとえば、後述する「基準画面SP」と「前回のハイライト範囲」によって定義される。なお、判定部303の具体的な処理内容については図14を用いて後述する。また、判定された判定結果は、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶される。
認識部304は、リストに表示されている文字列を認識する機能を有する。具体的には、たとえば、認識部304が、既存の文字認識技術を利用して、リストに表示されている文字列を認識することができる。なお、認識された認識結果は、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶される。
出力部307は、リスト領域と本文領域の表示内容がともに変化していると判定された場合、任意の時刻と関連付けてリスト領域内の一のリストから他のリストに切り替える選択操作に関する操作ログを出力する機能を有する。
具体的には、たとえば、出力部307が、一のリストから他のリストに切り替える選択操作に関する操作ログを図7に示す操作ログDB700に記録することにしてもよい。また、操作ログには、認識された認識結果(リストに表示されている文字列)を含むことにしてもよい。
図7は、操作ログDBの記憶内容の一例を示す説明図である。図7において、操作ログDB700は、操作ログID、選択時刻および文字列のフィールド項目を有する。各フィールド項目に情報を設定することで、一のリストから他のリストに切り替える選択操作に関する操作ログOL1〜OLsがレコードとして記憶されている。
なお、操作ログOL1〜OLsは、記録時刻が古いものから順に操作ログDB700に記憶されている。また、操作ログDB700は、たとえば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶されている。
算出部305は、時系列に連続する第1および第2の時刻の操作ログに基づいて、第1の時刻に選択されているリストに対応する本文の表示時間を算出する機能を有する。具体的には、たとえば、算出部305が、操作ログDB700を参照して、操作ログOL1の選択時刻と操作ログOL2の選択時刻の差分を表示時間として求める。
これにより、文字列「業務連絡 山田四郎・・・」が表示されたリストに対応する本文の閲覧時間を推測することができる。ここで、閲覧時間とは、監視対象となるアプリケーション(たとえば、メールソフト)を使用しているユーザが情報(メールの本文)を閲覧するために要した時間である。なお、算出された算出結果は、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。
作成部306は、算出された算出結果に基づいて、リストに対応する本文の閲覧時間を示すレポート情報を作成する機能を有する。ここで、レポート情報の具体例について説明する。図8は、レポート情報の具体例を示す説明図である。図8において、レポート情報800には、メールのリストごとの閲覧時間が示されている。レポート情報800によれば、各リストから特定されるメールの本文を閲覧するために要したユーザの閲覧時間を把握することができる。
また、出力部307は、算出された算出結果を出力する機能を有する。具体的には、たとえば、出力部307が、作成されたレポート情報800を出力することにしてもよい。なお、出力形式としては、たとえば、ディスプレイ208への表示、プリンタ213への印刷出力、I/F209による外部装置への送信がある。また、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶することとしてもよい。
(特定部の機能的構成)
つぎに、上記特定部302の機能的構成について説明する。図9は、特定部302の機能的構成の一例を示すブロック図である。図9において、特定部302は、選択部901と、第1の抽出部902と、第1の比較部903と、領域判定部904と、特徴判定部905と、を含む構成である。以下、メールソフトの画面内のリスト領域および本文領域を特定する場合を例に挙げて、各機能部901〜904の処理内容の一例を説明する。
選択部901は、イベントDB400から任意のイベントログLiを選択する(i=1,2,…,n)。第1の抽出部902は、画面DB500から、画像データの取得時刻がイベントログLiのクリック時刻直前の画面Pjの画像データを抽出する(j=1,2,…,m)。
また、第1の抽出部902は、画面DB500から、画像データの取得時刻がイベントログLiのクリック時刻直後の画面Pj+1の画像データを抽出する。なお、画像データの取得時刻がクリック時刻と一致する場合、その取得時刻をクリック時刻直前またはクリック時刻直後の時刻としてもよい。
第1の比較部903は、抽出された画面Pjの画像データと画面Pj+1の画像データとを比較する。具体的には、第1の比較部903は、画面Pjの画像データと画面Pj+1の画像データとの画面差分を抽出する。
ここで、画面差分とは、画面変化の有無をピクセル単位で示す情報である。ここでは、画面差分を、画面変化が有るところと無いところの境界線で囲まれた図形領域(線、矩形、円など)の集合とする。具体的には、たとえば、画面差分、各図形領域の範囲を特定する情報の集合である。なお、2つの画像データの画面差分を抽出する技術は既知のため説明を省略する。
領域判定部904は、抽出された画面差分にイベントログLiのクリック座標が含まれるか否かを判定する。また、領域判定部904は、クリック座標が画面差分に含まれる場合、画面差分のうちクリック座標を含む図形領域(以下、「第1図形領域」という)が規定サイズより大きいか否かを判定する。
ここで、規定サイズとは、リスト領域内のリストが選択された際に強調表示(ハイライト表示)される領域のサイズを規定するものである。具体的には、たとえば、規定サイズは、ハイライト表示される矩形領域の縦横のピクセル数(下限値、下限値および上限値など)によって表現される。より具体的には、たとえば、規定サイズは、「縦のピクセル数が5以上かつ横のピクセル数が30以上」などである。
特定部302は、第1図形領域が規定サイズより大きい場合、第1図形領域をリスト領域として特定する。また、複数のリスト領域が特定された場合、特定部302は、複数のリスト領域を重ね合わせることにより、一つのリスト領域として特定する。ただし、複数のリスト領域の、領域が特定された時刻でのウィンドウサイズが同一の場合に限る。
また、領域判定部904は、画面差分のうち第1図形領域を除く残余の図形領域を本文領域候補として判定する。具体的には、たとえば、領域判定部904が、画面差分のうち第1図形領域を除く残余の図形領域全体を囲む矩形領域を本文領域候補として判定することにしてもよい。
特徴判定部905は、本文領域候補の特徴を判定する。具体的には、たとえば、特徴判定部905は、リスト領域および本文領域が有する領域の特徴に基づいて、本文領域候補がどちらの特徴に類似しているかを判定することにしてもよい。ここで、リスト領域および本文領域が有する領域の特徴について説明する。
図10は、リスト領域および本文領域の特徴を示す説明図である。図10において、メールソフトの画面(ウィンドウ)内に表示されるリスト領域1010と本文領域1020とが示されている。ここで、リスト領域1010には、メールの件名、差出人、受信時刻などの項目単位で文字列が表示されるため、縦方向に規則的な隙間ができる特徴がある。
一方、本文領域1020には、メールの本文は段落ごとに空行が入る場合が多いため、横方向に不規則な隙間(空行)ができる特徴がある。そこで、特徴判定部905は、本文領域候補に縦方向または横方向の隙間があるか否かを判定することで、本文領域候補の特徴を判定する。なお、以下の説明では、本文領域候補の縦方向のピクセル数をHピクセルとし、横方向のピクセル数をWピクセルとする。
具体的には、たとえば、まず、特徴判定部905は、ピクセル単位の列(または、行)ごとに、本文領域候補の縦方向(または、横方向)の非背景色のピクセル数を算出する。ただし、背景色は予め設定されている。ここで、隙間の列(または、行)は非背景色のピクセル数が「0」であり、文字のある列は非背景色のピクセル数が大きくなる。
そこで、特徴判定部905は、非背景色のピクセル数が急激に閾値a(たとえば、a=0)以下となる境界を検出することで隙間を判定する。この際、文字間の隙間を項目間(または、空行)の隙間と判定することを回避するために、一定の幅でピクセル数が「0」となる列(または行)が一定数連続する場合に、隙間として判定する。
以下、本文領域候補の縦方向の隙間の有無を判定する場合を例に挙げて説明する。まず、特徴判定部905は、ピクセル単位の列ごとに、本文領域候補の縦方向の非背景色のピクセル数を算出する。なお、算出された非背景色のピクセル数は、たとえば、図11に示す非背景色テーブル1100に記憶される。
図11は、非背景色テーブルの記憶内容の一例を示す説明図である。図11において、非背景色テーブル1100は、本文領域候補の列F0〜FW-1ごとに非背景色のピクセル数を有している。この場合、特徴判定部905は、非背景色テーブル1100を参照して、隙間の境界を検出する。
具体的には、たとえば、特徴判定部905が、隣接列間で非背景色のピクセル数が、全列F0〜FW-1の非背景色のピクセル数の最大値のα%以上の値から閾値a以下となる列を隙間の境界として検出する。ここで、閾値aを「a=0」とし、非背景色のピクセル数の最大値を「100」とし、上記αを「α=50」すると、たとえば、列F89が隙間の境界として検出される。
そして、特徴判定部905は、隙間の境界として検出された列から、非背景色のピクセル数が閾値a以下となる列が一定数β連続する場合に隙間として判定する。ここで、閾値aを「a=0」とし、一定数βを「4」とすると、列F89〜列F92までの4ピクセル連続して非背景色のピクセル数が閾値以下となるため隙間として判定される。
なお、ある列(たとえば、列F89)から最終列FW-1まで連続して非背景色のピクセル数が閾値a以下となる場合は、隙間として判定しないことにしてもよい。これにより、リスト領域(または、本文領域)内の空きスペースを項目間(空行)の隙間として判定することを回避することができる。
そして、特定部302は、縦方向の隙間がある場合、本文領域候補を本文領域ではない領域(たとえば、リスト領域)と判定する。一方、特定部302は、横方向の隙間がある場合、本文領域候補を本文領域と判定する。さらに、特定部302は、横方向および縦方向の隙間がいずれもない場合は、本文領域候補を本文領域ではない領域(たとえば、リスト領域)と判定する。
また、複数の本文領域が特定された場合、特定部302は、複数の本文領域を重ね合わせることにより、一つの本文領域として特定する。ただし、複数のリスト領域の、領域が特定された時刻でのウィンドウサイズが同一の場合に限る。
(判定部の機能的構成)
つぎに、上記判定部303の機能的構成について説明する。ここではまず、判定部303に用いられる各種DBの記憶内容について説明する。図12は、基準画面DBの記憶内容の一例を示す説明図である。図12において、基準画面DB1200は、基準画面SPの画像データDを有している。
ここで、基準画面とは、任意の時刻における画面の比較対象となる画面である。具体的には、たとえば、基準画面は、任意の時刻直前に画面変化があった際の画面であり、リスト領域内のリストが選択されていない状態での画面である。なお、基準画面DB1200への画像データDの登録処理については、図34に示すフローチャートを用いて後述する。
図13は、選択リストDBの記憶内容の一例を示す説明図である。図13において、選択リストDB1300は、リスト領域から選ばれたリストのハイライト範囲を有している。ここで、ハイライト範囲とは、リスト領域内のリストが選択された際にハイライト表示される領域の範囲である。
選択リストDB1300には、任意の時刻直前に選ばれたリストのハイライト範囲(前回のハイライト範囲)が登録されている。ただし、選択リストDB1300の記憶内容は、選択されるリストが切り替わると、その都度更新されることになる。なお、選択リストDB1300へのハイライト範囲の登録処理については、図31に示すフローチャートを用いて後述する。
図14は、判定部303の機能的構成の一例を示すブロック図である。図14において、判定部303は、第2の抽出部1401と、第2の比較部1402と、第1の判断部1403と、第2の判断部1404と、第3の判断部1405と、登録部1406と、を含む構成である。
第2の抽出部1401は、画面DB500から、任意の画面Pjの画像データを抽出する。また、第2の抽出部1401は、選択リストDB1300から、リストのハイライト範囲を抽出する。ここで抽出されるハイライト範囲は、任意の時刻直前に選択されていたリストのハイライト範囲(前回のハイライト範囲)である。
第2の比較部1402は、画面Pjの画像データと、基準画面DB1200内の基準画面SPの画像データDとを比較する。具体的には、たとえば、第2の比較部1402が、画面Pjの画像データと基準画面SPの画像データDとの画面差分を抽出する。
第1の判断部1403は、抽出された画面差分のうち、規定サイズの画面差分がリスト領域内にあるか否かを判断する。なお、規定サイズとは、上述したように、リスト領域内のリストが選択された際にハイライト表示される領域のサイズを規定するものである。ここでは、規定サイズの画面差分を、規定サイズより大きい矩形の図形領域(以下、「矩形領域」という)とする。
具体的には、たとえば、第1の判断部1403が、領域DB600内のリスト領域範囲を参照して、リスト領域内に矩形領域が存在するか否かを判断する。すなわち、第1の判断部1403が、矩形領域の存在を判断することで、リスト領域内のいずれかのリストが選択されているか否かを判断できる。
また、第1の判断部1403は、リスト領域内に矩形領域がある場合、抽出されたリストのハイライト範囲と矩形領域が一致するか否かを判断する。具体的には、たとえば、第1の判断部1403が、選択リストDB1300から抽出された前回のハイライト範囲と矩形領域の範囲が一致するか否かを判断する。すなわち、第1の判断部1403が、前回のハイライト範囲と矩形領域の一致不一致を判断することで、選択されるリストが切り替わったか否かを判断できる。
第2の判断部1404は、抽出された画面差分のうち、矩形領域を除く他の画面差分がリスト領域内にあるか否かを判断する。具体的には、たとえば、第2の判断部1404が、領域DB600内のリスト領域範囲を参照して、リスト領域内に矩形領域を除く他の画面差分が存在するか否かを判断する。すなわち、第2の判断部1404が、リスト領域内の矩形領域以外の画面差分の存在を判断することで、リスト領域の表示内容がスクロールされたか否かを判断できる。
第3の判断部1405は、抽出された画面差分のうち、本文領域内の画面差分があるか否かを判断する。具体的には、たとえば、第3の判断部1405が、領域DB600内の本文領域範囲を参照して、本文領域内に画面差分が存在するか否かを判断する。すなわち、第3の判断部1405が、本文領域内の画面差分の存在を判断することで、本文領域の表示内容がスクロールされたか否かを判断できる。
以下、図15〜図17を用いて、画面内のリスト領域および本文領域の表示内容がともに変化する画面変化について説明する。図15〜図17は、画面差分の具体例を示す説明図である。ただし、以下に説明する画面差分は、任意の時刻の画面Pjと基準画面SPとの画面差分である。
<第1の画面変化>
判定部303は、前回のハイライト範囲と矩形領域の範囲が一致しないと判断され、かつ、他の画面差分がリスト領域内にないと判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定する。図15において、リスト領域R1と本文領域R2の表示内容がともに変化する場合の画面差分1500が示されている。
画面差分1500は、前回のハイライト範囲と今回のハイライト範囲が一致しない場合の画面差分である。ここでは、ユーザの操作入力により、リスト領域R1内のリストを切り替える選択操作(クリックイベント)が行われたため、本文領域R2の表示内容が変化している。
この場合、登録部1406は、矩形領域をリストのハイライト範囲として選択リストDB1300に登録する。すなわち、前回のハイライト範囲と今回のハイライト範囲が一致しないため、今回のハイライト範囲を以降参照するハイライト範囲として選択リストDB1300に登録する。
<第2の画面変化>
判定部303は、前回のハイライト範囲と矩形領域の範囲が一致すると判断され、かつ、他の画面差分がリスト領域内にあると判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定する。図16において、リスト領域R1と本文領域R2の表示内容がともに変化する場合の画面差分1600が示されている。
画面差分1600は、前回のハイライト範囲と今回のハイライト範囲が一致するにも関わらず、リスト領域R1と本文領域R2の表示内容がともに変化する場合の画面差分である。ここでは、ユーザの操作入力により、リスト領域R1の表示内容がスクロールされ、さらに、リストを切り替える選択操作(クリックイベント)が行われたため、本文領域R2の表示内容が変化している。
この場合、登録部1406は、画面Pjのリスト領域内のリストが選択されていない状態での画面を基準画面SPとして基準画面DB1200に登録する。すなわち、リスト領域の表示内容がスクロールされたため、現在着目している画面Pjを用いて基準画面SPを更新する。
なお、登録部1406は、矩形領域をリストのハイライト範囲として選択リストDB1300に登録することにしてもよい。ここでは、前回のハイライト範囲と今回のハイライト範囲が一致するが、今回のハイライト範囲を以降参照するハイライト範囲として選択リストDB1300に登録してもよい。
<第3の画面変化>
判定部303は、前回のハイライト範囲と矩形領域の範囲が一致しないと判断され、かつ、他の画面差分がリスト領域内にあると判断され、かつ、本文領域内の画面差分があると判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定する。図17において、リスト領域R1と本文領域R2の表示内容がともに変化する場合の画面差分1700が示されている。
画面差分1700は、前回のハイライト範囲と今回のハイライト範囲が一致しない場合の画面差分である。ここでは、ユーザの操作入力により、リスト領域R1の表示内容がスクロールされ、さらに、リストを切り替える選択操作(クリックイベント)が行われたため、本文領域R2の表示内容が変化している。
この場合、登録部1406は、矩形領域をリストのハイライト範囲として選択リストDB1300に登録する。すなわち、前回のハイライト範囲と今回のハイライト範囲が一致しないため、今回のハイライト範囲を以降参照するハイライト範囲として選択リストDB1300に登録する。
また、登録部1406は、画面Pjのリスト領域内のリストが選択されていない状態での画面を基準画面SPとして基準画面DB1200に登録する。すなわち、リスト領域の表示内容がスクロールされたため、現在着目している画面Pjを用いて基準画面SPを更新する。
つぎに、図18〜図21を用いて、画面内のリスト領域および本文領域のいずれか一方の表示内容が変化する、または、リスト領域および本文領域の表示内容がともに変化しない画面変化について説明する。図18〜図21は、画面差分の具体例を示す説明図である。
<第4の画面変化>
判定部303は、ハイライト範囲と矩形領域の範囲が一致しないと判断され、かつ、他の画面差分がリスト領域内にあると判断され、かつ、本文領域内の画面差分がないと判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定しない。図18において、リスト領域R1の表示内容のみが変化する場合の画面差分1800が示されている。
画面差分1800は、前回のハイライト範囲と今回のハイライト範囲が一致しない場合の画面差分である。ここでは、ユーザの操作入力により、リスト領域R1の表示内容をスクロールする選択操作のみが行われたため、本文領域R2の表示内容は変化していない。
この場合、登録部1406は、矩形領域をリストのハイライト範囲として選択リストDB1300に登録する。すなわち、前回のハイライト範囲と今回のハイライト範囲が一致しないため、今回のハイライト範囲を以降参照するハイライト範囲として選択リストDB1300に登録する。
また、登録部1406は、画面Pjのリスト領域内のリストが選択されていない状態での画面を基準画面SPとして基準画面DB1200に登録する。すなわち、リスト領域の表示内容がスクロールされたため、現在着目している画面Pjを用いて基準画面SPを更新する。
<第5の画面変化>
判定部303は、ハイライト範囲と矩形領域の範囲が一致すると判断され、かつ、他の画面差分がリスト領域内にないと判断され、かつ、本文領域内の画面差分があると判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定しない。図19において、本文領域R2の表示内容のみが変化する場合の画面差分1900が示されている。
画面差分1900は、前回のハイライト範囲と今回のハイライト範囲が一致する場合の画面差分である。ここでは、ユーザの操作入力により、本文領域R2の表示内容をスクロールする選択操作のみが行われたため、リスト領域R1の表示内容は変化しない。
この場合、リスト領域R1の表示内容が変化していないため、基準画面SPの更新は不要である。ただし、登録部1406は、画面Pjのリスト領域内のリストが選択されていない状態での画面を基準画面SPとして基準画面DB1200に登録することにしてもよい。
<第6の画面変化>
判定部303は、リスト領域内に矩形領域がないと判断され、かつ、他の画面差分がリスト領域内にあると判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定しない。図20において、リスト領域R1の表示内容のみが変化する場合の画面差分2000が示されている。
画面差分2000は、リスト領域内にハイライト範囲が存在しない場合の画面差分である。ここでは、ユーザの操作入力により、リスト領域R1の表示内容をスクロール(選択リストが非表示)する選択操作のみが行われたため、本文領域R2の表示内容は変化しない。
この場合、登録部1406は、空データをリストのハイライト範囲として選択リストDB1300に登録する。すなわち、選択リストが非表示でハイライト範囲が存在しないため、空データを以降参照するハイライト範囲として選択リストDB1300に登録する。
また、登録部1406は、画面Pjのリスト領域内のリストが選択されていない状態での画面を基準画面SPとして基準画面DB1200に登録する。すなわち、リスト領域の表示内容がスクロールされたため、現在着目している画面Pjを用いて基準画面SPを更新する。
<第7の画面変化>
判定部303は、リスト領域内に矩形領域がないと判断され、かつ、他の画面差分がリスト領域内にないと判断され、かつ、本文領域内の画面差分があると判断された場合、リスト領域と本文領域の表示内容がともに変化していると判定しない。図21において、本文領域R2の表示内容のみが変化する場合の画面差分2100が示されている。
画面差分2100は、リスト領域R1内にハイライト範囲が存在しない場合の画面差分である。ここでは、ユーザの操作入力により、本文領域R2の表示内容をスクロール(選択リストが非表示の状態でのスクロール)する選択操作のみが行われたため、リスト領域R1の表示内容は変化しない。
この場合、登録部1406は、空データをリストのハイライト範囲として選択リストDB1300に登録する。すなわち、選択リストが非表示でハイライト範囲が存在しないため、空データを以降参照するハイライト範囲として選択リストDB1300に登録する。
(情報処理装置の情報処理手順)
つぎに、情報処理装置200の情報処理手順について説明する。図22は、情報処理装置の情報処理手順の一例を示す説明図である。図22のフローチャートにおいて、まず、取得部301により、メールソフトのプロセスが起動したか否かを判断する(ステップS2201)。
ここで、プロセスが起動するのを待って(ステップS2201:No)、起動した場合(ステップ2201:Yes)、各種DB400,500,600,1200,1300を初期化する(ステップS2202)。具体的には、各種DB400,500,600の記憶内容をリセットし、基準画面DB1200に仮の画像データ(たとえば、白一色の矩形画像)を登録し、選択リスト1300に空データを登録する。
このあと、取得部301により、イベントログ取得処理の実行を開始し(ステップS2203)、画面取得処理の実行を開始する(ステップS2204)。そして、特定部302により、イベントログ取得処理および画面取得処理の実行が終了したか否かを判断する(ステップS2205)。
ここで、実行が終了するのを待って(ステップS2205:No)、終了した場合(ステップS2205:Yes)、特定部302により、画面内のリスト領域および本文領域を特定する特定処理を実行する(ステップS2206)。
そして、判定部303により、特定された画面内のリスト領域および本文領域の表示内容がともに変化しているか否かを判定する判定処理を実行する(S2207)。最後に、出力部307により、レポート情報を出力する出力処理を実行して(ステップS2208)、本フローチャートによる一連の処理を終了する。
なお、上述した情報処理手順の開始に先立って、情報処理装置200が、監視対象となるプロセスの名称をメールソフトの設計ファイルから取得することにしてもよい。これにより、複数のメールソフトがインストールされている環境下において、監視対象となるメールソフトを特定することができる。
<イベントログ取得処理手順>
つぎに、図22に示したステップS2203のイベントログ取得処理の具体的な処理手順について説明する。図23は、イベントログ取得処理の具体的処理手順の一例を示すフローチャートである。
図23のフローチャートにおいて、まず、取得部301により、アプリケーションの実行中に発生したイベント(事象)のイベントログを取得して(ステップS2301)、取得したイベントログがクリックイベントか否かを判断する(ステップS2302)。
ここで、クリックイベントの場合(ステップS2302:Yes)、取得部301により、アプリケーションに割り当てられている画面のウィンドウサイズを取得する(ステップS2303)。一方、クリックイベントではない場合(ステップS2302:No)、ステップS2305に移行する。
そして、取得部301により、取得したイベントログに含まれるクリック時刻、クリック座標およびウィンドウサイズをイベントDB400に登録する(ステップS2304)。この結果、イベントDB400に新たなイベント情報がレコードとして登録されることになる。
このあと、取得部301により、メールソフトのプロセスが終了したか否かを判断して(ステップS2305)、プロセスが終了していない場合(ステップS2305:No)、ステップS2301に戻る。一方、プロセスが終了した場合(ステップS2305:Yes)、本フローチャートによる一連の処理を終了する。
<画面取得処理手順>
つぎに、図22に示したステップS2204の画面取得処理の具体的な処理手順について説明する。図24は、画面取得処理の具体的処理手順の一例を示すフローチャートである。
図24のフローチャートにおいて、まず、取得部301により、アプリケーションに割り当てられている画面の画像データを取得して(ステップS2401)、取得した画像データを取得時刻と関連付けて画面DB500に登録する(ステップS2402)。
このあと、取得部301により、一定時間T待機して(ステップS2403)、メールソフトのプロセスが終了したか否かを判断する(ステップS2404)。ここで、プロセスが終了していない場合(ステップS2404:No)、ステップS2401に戻る。一方、プロセスが終了した場合(ステップS2404:Yes)、本フローチャートによる一連の処理を終了する。
<特定処理手順>
つぎに、図22に示したステップS2206の特定処理の具体的な処理手順について説明する。図25は、特定処理の具体的処理手順の一例を示すフローチャートである。図25のフローチャートにおいて、まず、選択部901により、「i=1」として(ステップS2501)、イベントDB400からイベントログLiを選択する(ステップS2502)。
このあと、第1の抽出部902により、選択されたイベントログLiからクリック時刻を特定する(ステップS2503)。そして、第1の抽出部902により、画面DB500にクリック時刻前後の画像データがあるか否かを判断する(ステップS2504)。ここで、クリック時刻前後の画像データがない場合(ステップS2504:No)、ステップS2512に移行する。
一方、クリック時刻前後の画像データがある場合(ステップS2504:Yes)、第1の抽出部902により、画面DB500から、画像データの取得時刻がイベントログLiのクリック時刻直前の画面Pjの画像データを抽出する(ステップS2505)。また、第1の抽出部902により、画面DB500から、画像データの取得時刻がイベントログLiのクリック時刻直後の画面Pj+1の画像データを抽出する(ステップS2506)。
つぎに、第1の比較部903により、選択されたイベントログLiからクリック座標およびウィンドウサイズを特定する(ステップS2507)。そして、第1の比較部903により、画面Pjの画像データと画面Pj+1の画像データとの画面差分を抽出する(ステップS2508)。
このあと、領域判定部904により、領域判定処理を実行して(ステップS2509)、特定部302により、リスト領域および本文領域が特定されたか否かを判断する(ステップS2510)。ここで、リスト領域および本文領域が特定されなかった場合(ステップS2510:No)、ステップS2512に移行する。
一方、リスト領域および本文領域が特定された場合(ステップS2510:Yes)、特定部302により、領域登録処理を実行する(ステップ2511)。そして、選択部901により、iをインクリメントして(ステップS2512)、「i>n」か否かを判断する(ステップS2513)。
ここで、「i≦n」の場合(ステップS2513:No)、ステップS2502に戻る。一方、「i>n」の場合(ステップS2513:Yes)、図22に示したステップS2207に移行する。
<領域判定処理手順>
つぎに、図25に示したステップS2509の領域判定処理の具体的な処理手順について説明する。図26は、領域判定処理の具体的処理手順の一例を示すフローチャートである。図26のフローチャートにおいて、まず、領域判定部904により、図25に示したステップS2508において抽出された画面差分にイベントログLiのクリック座標が含まれるか否かを判定する(ステップS2601)。
ここで、クリック座標が含まれない場合は(ステップS2601:No)、図25に示したステップS2510に移行する。一方、クリック座標が含まれる場合(ステップS2601:Yes)、領域判定部904により、画面差分からクリック座標を含む第1図形領域を抽出する(ステップS2602)。
そして、領域判定部904により、第1図形領域が規定サイズより大きいか否かを判定する(ステップS2603)。ここで、規定サイズより小さい場合は(ステップS2603:No)、図25に示したステップS2510に移行する。
一方、規定サイズより大きい場合(ステップS2603:Yes)、特定部302により、第1図形領域をリスト領域として特定する(ステップS2604)。このあと、領域判定部904により、画面差分のうち第1図形領域を除く残余の図形領域全体を囲む矩形領域を本文領域候補として判定する(ステップS2605)。
ここで、矩形領域が本文領域候補として判定されなかった場合(ステップS2606:No)、図25に示したステップS2510に移行する。一方、矩形領域が本文領域候補として判定された場合(ステップS2606:Yes)、領域判定部904により、画面差分から本文領域候補を抽出する(ステップS2607)。
そして、特徴判定部905により、本文領域候補の特徴を判定する特徴判定処理を実行する(ステップS2608)。このあと、特定部302により、本文領域候補は本文領域と判定されたか否かを判断する(ステップS2609)。ここで、本文領域と判定されなかった場合(ステップS2609:No)、図25に示したステップS2510に移行する。
一方、本文領域と判定された場合(ステップS2609:Yes)、特定部302により、本文領域候補を本文領域として特定して(ステップS2610)、図25に示したステップS2510に移行する。
<特徴判定処理手順>
つぎに、図26に示したステップS2608の特徴判定処理の具体的な処理手順について説明する。なお、以下の説明において、本領域候補の任意の列を「列Fp」と表記し(p=0,1,…,W−1)、任意の行を「行Rq」と表記する(q=0,1,…,H−1)。
図27および図28は、特徴判定処理の具体的処理手順の一例を示すフローチャートである。図27のフローチャートにおいて、まず、特徴判定部905により、本文領域候補の列ごとに、非背景色のピクセル数を算出する(ステップS2701)。そして、特徴判定部905により、「p=0」とし(ステップS2702)、列Fpを選択する(ステップS2703)。
つぎに、特徴判定部905により、列Fpの非背景色のピクセル数は全列F0〜FW-1の非背景色のピクセル数の最大値のα%以上か否かを判断する(ステップS2704)。ここで、α%未満の場合(ステップS2704:No)、ステップS2708に移行する。
一方、α%以上の場合(ステップS2704:Yes)、特徴判定部905により、非背景色のピクセル数が閾値a以下となる列が、列Fpからβ以上連続するか否かを判断する(ステップS2705)。ここで、β以上連続しない場合(ステップS2705:No)、ステップS2708に移行する。
一方、β以上連続する場合(ステップS2705:Yes)、特徴判定部905により、最終列FW-1まで連続して非背景色のピクセル数が閾値a以下となるか否かを判断する(ステップS2706)。
ここで、最終列FW-1まで連続して閾値a以下とならない場合(ステップS2706:No)、特徴判定部905により、本文領域候補をリスト領域として判定して(ステップS2707)、図26に示したステップS2609に移行する。
一方、最終列FW-1まで連続して閾値a以下となる場合(ステップS2706:Yes)、特徴判定部905により、pをインクリメントして(ステップS2708)、「p>W−1−β」か否かを判断する(ステップS2709)。
ここで、「p≦W−1−β」の場合(ステップS2709:No)、ステップS2703に戻る。一方、「p>W−1−β」の場合(ステップS2709:Yes)、図28にステップS2801に移行する。
図28のフローチャートにおいて、まず、特徴判定部905により、本文領域候補の行ごとに、非背景色のピクセル数を算出する(ステップS2801)。そして、特徴判定部905により、「q=0」とし(ステップS2802)、行Rqを選択する(ステップS2803)。
つぎに、特徴判定部905により、行Rqの非背景色のピクセル数は全行R0〜行RH-1の非背景色のピクセル数の最大値のα%以上か否かを判断する(ステップS2804)。ここで、α%未満の場合(ステップS2804:No)、ステップS2808に移行する。
一方、α%以上の場合(ステップS2804:Yes)、特徴判定部905により、非背景色のピクセル数が閾値a以下となる行が、行Rqからβ以上連続するか否かを判断する(ステップS2805)。ここで、β以上連続しない場合(ステップS2805:No)、特徴判定部905により、qをインクリメントして(ステップS2808)、「q>H−1−β」か否かを判断する(ステップS2809)。
ここで、「q≦H−1−β」の場合(ステップS2809:No)、ステップS2803に戻る。一方、「q>H−1−β」の場合(ステップS2809:Yes)、特徴判定部905により、本文領域候補をリスト領域として判定して(ステップS2810)、図26に示したステップS2609に移行する。
また、ステップS2805において、β以上連続する場合(ステップS2805:Yes)、特徴判定部905により、最終行RH-1まで連続して非背景色のピクセル数が閾値a以下となるか否かを判断する(ステップS2806)。
ここで、最終行RH-1まで連続して閾値a以下とならない場合(ステップS2806:No)、特徴判定部905により、本文領域候補を本文領域として判定して(ステップS2807)、図26に示したステップS2609に移行する。一方、最終行RH-1まで連続して閾値a以下となる場合(ステップS2806:Yes)、ステップS2810に移行する。
<領域登録処理手順>
つぎに、図25に示したステップS2511の領域登録処理の具体的な処理手順について説明する。図29は、領域登録処理の具体的処理手順の一例を示すフローチャートである。図29のフローチャートにおいて、まず、特定部302により、領域DB600の記憶内容は空か否かを判断する(ステップS2901)。
ここで、空の場合(ステップS2901:Yes)、ステップS2908に移行する。一方、空ではない場合(ステップS2901:No)、特定部302により、領域DB600から最後尾の領域データを選択する(ステップS2902)。そして、特定部302により、選択された領域データのウィンドウサイズは、図25に示したステップS2507において特定されたウィンドウサイズと同じか否かを判断する(ステップS2903)。
ここで、ウィンドウサイズが違う場合(ステップS2903:No)、ステップS2908に移行する。一方、ウィンドウサイズが同じ場合(ステップS2903:Yes)、特定部302により、選択された領域データのリスト領域と、特定されたリスト領域の両方を含む新たなリスト領域範囲を算出する(ステップS2904)。なお、特定されたリスト領域とは、図26に示したステップS2604において特定されたリスト領域である。
このあと、特定部302により、選択された領域データの本文領域と、特定された本文領域の両方を含む新たな本文領域範囲を算出する(ステップS2905)。なお、特定された本文領域とは、図26に示したステップS2610において特定された本文領域である。
そして、特定部302により、新たなリスト領域範囲と本文領域範囲が重なるか否かを判断する(ステップS2906)。ここで、重ならない場合(ステップS2906:No)、特定部302により、新たなリスト領域範囲と本文領域範囲を設定して領域DB600の最後尾の領域データを更新して(ステップS2907)、図25に示したステップS2512に移行する。
一方、重なる場合(ステップS2906:Yes)、特定部302により、図25に示したステップS2503とステップS2507において特定されたクリック時刻とウィンドウサイズを設定して新たな領域データを領域DB600に登録する(ステップS2908)。
そして、特定部302により、登録された領域データに、図26に示したステップS2604において特定されたリスト領域範囲を設定する(ステップS2909)。また、特定部302により、登録された領域データに、図26に示したステップS2610において特定された本文領域範囲を設定して(ステップS2910)、図25に示したステップS2512に移行する。
ここで、領域DB600の記憶内容の変遷について説明する。図30は、領域DBの記憶内容の変遷例を示す説明図である。図30において、「(1)→(2)」では、新たなリスト領域範囲が設定されて領域データ600−1が更新されている(図29に示したステップS2907の処理)。また、図30において、「(2)→(3)」では、新たな領域データ600−2が領域DB600に登録されている(図29に示したステップS2908〜S2910の処理)。
<判定処理手順>
つぎに、図22に示したステップS2207の判定処理の具体的な処理手順について説明する。図31〜図33は、判定処理の具体的処理手順の一例を示すフローチャートである。
図31のフローチャートにおいて、まず、第2の抽出部1401により、「j=1」として(ステップS3101)、画面DB500から画面Pjの画像データを抽出する(ステップS3102)。そして、第2の抽出部1401により、基準画面DB1200から基準画面SPの画像データDを抽出する(ステップS3103)。
このあと、第2の抽出部1401は、選択リストDB1300からリストのハイライト範囲(以下、「前回のハイライト範囲」という)を抽出する(ステップS3104)。そして、第2の比較部1402により、領域DB600から画面Pjの取得時刻以前の最新の領域データを特定する(ステップS3105)。
つぎに、第2の比較部1402により、画面Pjの画像データと基準画面SPの画像データDとの画面差分を抽出する(ステップS3106)。そして、第1の判断部1403により、抽出された画面差分のうち、特定された領域データのリスト領域範囲に、規定サイズの画面差分(以下、「矩形領域」という)があるか否かを判断する(ステップS3107)。
ここで、矩形領域がある場合(ステップS3107:Yes)、判定部303により、矩形領域をリストのハイライト範囲として選択リストDB1300に登録する(ステップS3108)。そして、第2の判断部1404により、リスト領域範囲に矩形領域を除く他の画面差分があるか否かを判断する(ステップS3109)。
ここで、他の画面差分がある場合(ステップS3109:Yes)、登録部1406により、基準画面SPの画像データDを更新する基準画面登録処理を実行して(ステップS3110)、図32に示すステップS3201に移行する。一方、他の画面差分がない場合(ステップS3109:No)、図33に示すステップS3301に移行する。
また、ステップS3107において、矩形領域がない場合(ステップS3107:No)、登録部1406により、選択リストDB1300に空データを登録する(ステップS3111)。そして、第2の判断部1404により、リスト領域範囲に矩形領域を除く他の画面差分があるか否かを判断する(ステップS3112)。
ここで、他の画面差分がない場合(ステップS3112:No)、ステップS3114に移行する。一方、他の画面差分がある場合(ステップS3112:Yes)、登録部1406により、基準画面SPの画像データDを更新する基準画面登録処理を実行する(ステップS3113)。
そして、第2の抽出部1401により、jをインクリメントして(ステップS3114)、「j>m」か否かを判断する(ステップS3115)。ここで、「j≦m」の場合(ステップS3115:No)、ステップS3102に戻る。一方、「j>m」の場合(ステップS3115:Yes)、図22に示したステップS2208に移行する。
つぎに、図32のフローチャートにおいて、まず、第1の判断部1403により、矩形領域(以下、「今回のハイライト範囲」という)と前回のハイライト範囲が一致するか否かを判断する(ステップS3201)。
ここで、一致する場合(ステップS3201:Yes)、ステップS3203に移行する。一方、一致しない場合(ステップS3201:No)、第3の判断部1405により、領域データの本文領域範囲に画面差分があるか否かを判断する(ステップS3202)。
ここで、画面差分がある場合(ステップS3202:Yes)、操作ログ登録処理を実行して(ステップS3203)、図31に示したステップS3114に移行する。一方、画面差分がない場合(ステップS3202:No)、図31に示したステップS3114に移行する。
つぎに、図33のフローチャートにおいて、まず、第1の判断部1403により、今回のハイライト範囲と前回のハイライト範囲が一致するか否かを判断する(ステップS3301)。ここで、一致しない場合(ステップS3301:No)、操作ログ登録処理を実行して(ステップS3302)、図31に示したステップS3114に移行する。一方、一致する場合(ステップS3301:Yes)、図31に示したステップS3114に移行する。
<基準画面登録処理手順>
つぎに、図31に示したステップS3110,S3113の基準画面登録処理の具体的な処理手順について説明する。図34は、基準画面登録処理の具体的処理手順の一例を示すフローチャートである。図34のフローチャートにおいて、まず、登録部1406により、抽出された画面差分からハイライト範囲を表わす矩形領域を抽出する(ステップS3401)。
ここで、矩形領域が抽出されなかった場合(ステップS3402:No)、ステップS3404に移行する。一方、矩形領域が抽出された場合(ステップS3402:Yes)、登録部1406により、画面Pjの矩形領域の背景色と文字色を修正してハイライト表示されていない状態に変換する(ステップS3403)。
そして、登録部1406により、画面Pjの画像データを基準画面SPの画像データDとして基準画面DB1200に登録して(ステップS3404)、図32に示したステップS3201または図31に示したステップS3114に移行する。
<操作ログ登録処理手順>
つぎに、図32に示したステップS3203および図33に示したステップS3302の操作ログ登録処理の具体的な処理手順について説明する。図35は、操作ログ登録処理の具体的処理手順の一例を示すフローチャートである。
図35のフローチャートにおいて、まず、認識部304により、抽出された画面差分からハイライト範囲を表わす矩形領域を抽出する(ステップS3501)。そして、認識部304により、抽出された矩形領域から文字列を認識する(ステップS3502)。
このあと、出力部307により、画面の取得時刻を特定し(ステップS3503)、認識された文字列と取得時刻を操作ログDB700に登録して(ステップS3504)、図31に示したステップS3114に移行する。なお、取得時刻は選択時刻として操作ログDB700に登録される。
<出力処理手順>
つぎに、図22に示したステップS2208の出力処理の具体的な処理手順について説明する。図36は、出力処理の具体的処理手順の一例を示すフローチャートである。なお、以下の説明において、任意の操作ログを「操作ログOLk」と表記する(k=1,2,…,s)。
図36のフローチャートにおいて、まず、算出部305が、「k=1」として(ステップS3601)、操作ログDB700から操作ログOLkを選択する(ステップS3602)。つぎに、算出部305により、操作ログOLkの選択時刻Tkを特定し(ステップS3603)、操作ログOLk+1の選択時刻Tk+1を特定する(ステップS3604)。
そして、算出部305により、操作ログOLkの選択時刻Tkと操作ログOLk+1の選択時刻Tk+1との差分を閲覧時間として算出する(ステップS3605)。このあと、作成部306により、操作ログOLkの文字列と算出された閲覧時間を用いてレポート情報を作成する(ステップS3606)。
このあと、算出部305により、kをインクリメントして(ステップS3607)、「k>s」か否かを判断する(ステップS3608)。ここで、「k≦s」の場合(ステップS3608:No)、ステップS3602に戻る。一方、「k>s」の場合(ステップS3608:Yes)、出力部307により、作成されたレポート情報を出力して(ステップS3609)、本フローチャートによる一連の処理を終了する。
以上説明したように、本実施の形態によれば、画面内のリスト領域と本文領域を特定し、本文領域の画面変化をともなうリスト領域の画面変化を判断することで、一のリストから他のリストに切り替える選択操作に関する操作ログを取得することができる。これにより、アプリケーションから発行されるログを必要とすることなく、効率的かつ高精度にリストの選択操作が行われたことを判断することができる。
また、本実施の形態によれば、時系列に連続して取得された操作ログの取得時刻を用いて、一のリストから他のリストに切り替わるまでの本文の表示時間を算出することで、本文の閲覧時間を推測することができる。
また、本実施の形態によれば、リスト領域内に規定サイズの画面差分があり、かつ、リスト領域内に他の画面差分がない場合に、リスト領域と本文領域の表示内容がともに変化していると判定する。これにより、リスト領域でのスクロール操作をともなわないリストの選択操作が行われたことを判断することができる。
また、本実施の形態によれば、前回のハイライト範囲と今回のハイライト範囲が一致し、かつ、リスト領域内に他の画面差分がある場合に、リスト領域と本文領域の表示内容がともに変化していると判定する。これにより、リスト領域でのスクロール操作により、前回のハイライト範囲と今回のハイライト範囲が偶然一致する場合であっても、リストの選択操作が行われたことを判断することができる。
また、本実施の形態によれば、リスト領域内に規定サイズの画面差分があり、かつ、リスト領域内に他の画面差分があり、かつ、本文領域内に画面差分がある場合に、リスト領域と本文領域の表示内容がともに変化していると判定する。このように、本文領域の画面変化も判断することで、リスト領域でのスクロール操作により画面変化が発生し、リストの選択操作が行われたと誤って判断してしまうことを回避することができる。
また、本実施の形態によれば、ハイライト範囲に表示されている文字列を認識して操作ログと関連付けて出力することで、閲覧対象となるメールの本文を特定するために必要となる情報を提供することができる。
また、本実施の形態によれば、時系列に連続する画面の表示内容の差分を表わす図形領域の集合のうち、クリック座標を含む規定サイズより大きい第1図形領域をリスト領域として特定することで、リスト領域の配置位置を正確に特定することができる。
また、本実施の形態によれば、時系列に連続する画面の表示内容の差分を表わす図形領域の集合のうち、リスト領域および本文領域が有する特徴に基づいて、第1図形領域を除く残余の図形領域の特徴を判定することで、本文領域の配置位置を正確に特定することができる。
これらのことから、本情報処理装置、情報処理プログラム、および情報処理方法によれば、監視対象となるアプリケーションがログを発行しないものやログの取得機能をプラグインできないものであっても、効率的かつ高精度にリストの選択操作に関する操作ログを取得することができる。
なお、本実施の形態で説明した情報処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本情報処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本情報処理プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定手段と、
所定の時間間隔で得られた前記画面の一連の表示内容のうち、任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容とを比較する比較手段と、
前記比較手段によって比較された比較結果に基づいて、前記特定手段によって特定された項目領域と情報領域の表示内容がともに変化しているか否かを判定する判定手段と、
前記判定手段によって前記項目領域と前記情報領域の表示内容がともに変化していると判定された場合、前記任意の時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力する出力手段と、
を備えることを特徴とする情報処理装置。
(付記2)前記出力手段によって時系列に連続する第1および第2の時刻の操作ログが出力された結果、当該第1および第2の時刻の操作ログに基づいて、前記第1の時刻に選択されている項目に対応する情報の表示時間を算出する算出手段を備え、
前記出力手段は、前記算出手段によって算出された表示時間を出力することを特徴とする付記1に記載の情報処理装置。
(付記3)前記比較結果に基づいて、前記任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容との差分を表わす画面差分のうち、規定サイズの画面差分が前記項目領域内にあるか否かを判断する第1の判断手段と、
前記画面差分のうち、前記規定サイズの画面差分を除く他の画面差分が前記項目領域内にあるか否かを判断する第2の判断手段と、を備え、
前記判定手段は、前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にないと判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記1または2に記載の情報処理装置。
(付記4)前記第1の判断手段は、前記比較結果に基づいて、前記任意の時刻に選択されていた前記項目の配置位置と、前記任意の時刻以前の時刻に選択されていた前記項目の配置位置とが一致するか否かを判断し、
前記判定手段は、前記第1の判断手段によって前記項目の配置位置が一致すると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記3に記載の情報処理装置。
(付記5)前記画面差分のうち前記情報領域内の画面差分があるか否かを判断する第3の判断手段を備え、
前記判定手段は、前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断され、かつ、前記第3の判断手段によって前記情報領域内の画面差分があると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記3または4に記載の情報処理装置。
(付記6)前記規定サイズの画面差分に含まれる文字列を認識する認識手段を備え、
前記出力手段は、前記認識手段によって認識された文字列を前記操作ログと関連付けて出力することを特徴とする付記3〜5のいずれか一つに記載の情報処理装置。
(付記7)前記画面の一連の表示内容のうち、任意の選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定手段と、
前記第1の領域判定手段によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定手段と、を備え、
前記特定手段は、前記第2の領域判定手段によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定することを特徴とする付記1〜6のいずれか一つに記載の情報処理装置。
(付記8)前記特定手段は、前記規定サイズとなる図形領域が複数判定された場合、当該複数の図形領域を重ね合わせた図形領域を前記項目領域として特定することを特徴とする付記7に記載の情報処理装置。
(付記9)前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定手段を備え、
前記特定手段は、前記特徴判定手段によって判定された判定結果に基づいて、前記残余の図形領域を前記本文領域として特定することを特徴とする付記7または8に記載の情報処理装置。
(付記10)前記特徴判定手段は、前記残余の図形領域のピクセル単位の列ごとの背景色のピクセル数または/および行ごとの背景色のピクセル数に基づいて、前記残余の図形領域の特徴を判定することを特徴とする付記9に記載の情報処理装置。
(付記11)コンピュータを、
画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定手段、
所定の時間間隔で得られた前記画面の一連の表示内容のうち、任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容とを比較する比較手段、
前記比較手段によって比較された比較結果に基づいて、前記特定手段によって特定された項目領域と情報領域の表示内容がともに変化しているか否かを判定する判定手段、
前記判定手段によって前記項目領域と前記情報領域の表示内容がともに変化していると判定された場合、前記任意の時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力する出力手段、
として機能させることを特徴とする情報処理プログラム。
(付記12)前記出力手段によって時系列に連続する第1および第2の時刻の操作ログが出力された結果、当該第1および第2の時刻の操作ログに基づいて、前記第1の時刻に選択されている項目に対応する情報の表示時間を算出する算出手段を備え、
前記出力手段は、前記算出手段によって算出された表示時間を出力することを特徴とする付記11に記載の情報処理プログラム。
(付記13)前記コンピュータを、
前記比較結果に基づいて、前記任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容との差分を表わす画面差分のうち、規定サイズの画面差分が前記項目領域内にあるか否かを判断する第1の判断手段、
前記画面差分のうち、前記規定サイズの画面差分を除く他の画面差分が前記項目領域内にあるか否かを判断する第2の判断手段、として機能させ、
前記判定手段は、前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にないと判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記11または12に記載の情報処理プログラム。
(付記14)前記第1の判断手段は、前記比較結果に基づいて、前記任意の時刻に選択されていた前記項目の配置位置と、前記任意の時刻以前の時刻に選択されていた前記項目の配置位置とが一致するか否かを判断し、
前記判定手段は、前記第1の判断手段によって前記項目の配置位置が一致すると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記13に記載の情報処理プログラム。
(付記15)前記コンピュータを、
前記画面差分のうち前記情報領域内の画面差分があるか否かを判断する第3の判断手段として機能させ、
前記判定手段は、前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断され、かつ、前記第3の判断手段によって前記情報領域内の画面差分があると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記13または14に記載の情報処理プログラム。
(付記16)前記コンピュータを、
前記規定サイズの画面差分に含まれる文字列を認識する認識手段として機能させ、
前記出力手段は、前記認識手段によって認識された文字列を前記操作ログと関連付けて出力することを特徴とする付記13〜15のいずれか一つに記載の情報処理プログラム。
(付記17)前記コンピュータを、
前記画面の一連の表示内容のうち、任意の選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定手段、
前記第1の領域判定手段によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定手段、として機能させ、
前記特定手段は、前記第2の領域判定手段によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定することを特徴とする付記11〜16のいずれか一つに記載の情報処理プログラム。
(付記18)前記特定手段は、前記規定サイズとなる図形領域が複数判定された場合、当該複数の図形領域を重ね合わせた図形領域を前記項目領域として特定することを特徴とする付記17に記載の情報処理プログラム。
(付記19)前記コンピュータを、
前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定手段として機能させ、
前記特定手段は、前記特徴判定手段によって判定された判定結果に基づいて、前記残余の図形領域を前記本文領域として特定することを特徴とする付記17または18に記載の情報処理プログラム。
(付記20)前記特徴判定手段は、前記残余の図形領域のピクセル単位の列ごとの背景色のピクセル数または/および行ごとの背景色のピクセル数に基づいて、前記残余の図形領域の特徴を判定することを特徴とする付記19に記載の情報処理プログラム。
(付記21)コンピュータが、
画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定工程と、
所定の時間間隔で得られた前記画面の一連の表示内容のうち、任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容とを比較する比較工程と、
前記比較工程によって比較された比較結果に基づいて、前記特定工程によって特定された項目領域と情報領域の表示内容がともに変化しているか否かを判定する判定工程と、
前記判定工程によって前記項目領域と前記情報領域の表示内容がともに変化していると判定された場合、前記任意の時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力する出力工程と、
を実行することを特徴とする情報処理方法。
(付記22)前記コンピュータが、
前記出力工程(以下、「第1の出力工程」という)によって時系列に連続する第1および第2の時刻の操作ログが出力された結果、当該第1および第2の時刻の操作ログに基づいて、前記第1の時刻に選択されている項目に対応する情報の表示時間を算出する算出工程と、
前記算出工程によって算出された表示時間を出力する第2の出力工程と、
を実行することを特徴とする付記21に記載の情報処理方法。
(付記23)前記コンピュータが、
前記比較結果に基づいて、前記任意の時刻における前記画面の表示内容と、前記任意の時刻以前の時刻における前記画面の表示内容との差分を表わす画面差分のうち、規定サイズの画面差分が前記項目領域内にあるか否かを判断する第1の判断工程と、
前記画面差分のうち、前記規定サイズの画面差分を除く他の画面差分が前記項目領域内にあるか否かを判断する第2の判断工程と、を実行し、
前記判定工程は、前記第1の判断工程によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断工程によって前記他の画面差分が前記項目領域内にないと判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記21または22に記載の情報処理方法。
(付記24)前記第1の判断工程は、前記比較結果に基づいて、前記任意の時刻に選択されていた前記項目の配置位置と、前記任意の時刻以前の時刻に選択されていた前記項目の配置位置とが一致するか否かを判断し、
前記判定工程は、前記第1の判断工程によって前記項目の配置位置が一致すると判断され、かつ、前記第2の判断工程によって前記他の画面差分が前記項目領域内にあると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記23に記載の情報処理方法。
(付記25)前記コンピュータが、
前記画面差分のうち前記情報領域内の画面差分があるか否かを判断する第3の判断工程を実行し、
前記判定工程は、前記第1の判断工程によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断工程によって前記他の画面差分が前記項目領域内にあると判断され、かつ、前記第3の判断工程によって前記情報領域内の画面差分があると判断された場合、前記項目領域と前記情報領域の表示内容がともに変化していると判定することを特徴とする付記23または24に記載の情報処理方法。
(付記26)前記コンピュータが、
前記規定サイズの画面差分に含まれる文字列を認識する認識工程を実行し、
前記出力工程は、前記認識工程によって認識された文字列を前記操作ログと関連付けて出力することを特徴とする付記23〜25のいずれか一つに記載の情報処理方法。
(付記27)前記コンピュータが、
前記画面の一連の表示内容のうち、任意の選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定工程と、
前記第1の領域判定工程によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定工程と、を実行し、
前記特定工程は、前記第2の領域判定工程によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定することを特徴とする付記21〜26のいずれか一つに記載の情報処理方法。
(付記28)前記特定工程は、前記規定サイズとなる図形領域が複数判定された場合、当該複数の図形領域を重ね合わせた図形領域を前記項目領域として特定することを特徴とする付記27に記載の情報処理方法。
(付記29)前記コンピュータが、
前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定工程を実行し、
前記特定工程は、前記特徴判定工程によって判定された判定結果に基づいて、前記残余の図形領域を前記本文領域として特定することを特徴とする付記27または28に記載の情報処理方法。
(付記30)前記特徴判定工程は、前記残余の図形領域のピクセル単位の列ごとの背景色のピクセル数または/および行ごとの背景色のピクセル数に基づいて、前記残余の図形領域の特徴を判定することを特徴とする付記29に記載の情報処理方法。
200 情報処理装置
301 取得部
302 特定部
303 判定部
304 認識部
305 算出部
306 作成部
307 出力部
400 イベントDB
500 画面DB
600 領域DB
700 操作ログDB
901 選択部
902 第1の抽出部
903 第1の比較部
904 領域判定部
905 特徴判定部
1200 基準画面DB
1300 選択リストDB
1401 第2の抽出部
1402 第2の比較部
1403 第1の判断部
1404 第2の判断部
1405 第3の判断部
1406 登録部

Claims (10)

  1. 画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定手段と、
    所定の時間間隔で得られた前記画面の一連の表示内容のうち、いずれかの時刻における前記画面の表示内容と、前記いずれかの時刻直前に画面変化があった際の前記画面の表示内容とを比較する比較手段と、
    前記比較手段によって比較された比較結果に基づいて、前記いずれかの時刻における前記画面内の前記特定手段によって特定された前記項目領域の表示内容前記情報領域の表示内容がともに変化しているか否かを判定する判定手段と、
    前記判定手段によって前記項目領域の表示内容と前記情報領域の表示内容がともに変化していると判定された場合、前記いずれかの時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力し、前記判定手段によって前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定されなかった場合には、前記いずれかの時刻に関連する操作ログを出力しない出力手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記画面の一連の表示内容のうち、いずれかの選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定手段と、
    前記第1の領域判定手段によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定手段と、
    前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定手段と、を備え、
    前記特定手段は、
    前記第2の領域判定手段によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定するとともに、前記特徴判定手段によって判定された判定結果に基づいて、前記残余の図形領域を前記情報領域として特定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記出力手段によって時系列に連続する第1および第2の時刻の操作ログが出力された結果、当該第1および第2の時刻の操作ログに基づいて、前記第1の時刻に選択されている項目に対応する情報の表示時間を算出する算出手段を備え、
    前記出力手段は、
    前記算出手段によって算出された表示時間を出力することを特徴とする請求項1または2に記載の情報処理装置。
  4. 前記比較結果に基づいて、前記いずれかの時刻における前記画面の表示内容と、前記いずれかの時刻直前に画面変化があった際の前記画面の表示内容との差分を表わす画面差分のうち、規定サイズの画面差分が前記項目領域内にあるか否かを判断する第1の判断手段と、
    前記画面差分のうち、前記規定サイズの画面差分を除く他の画面差分が前記項目領域内にあるか否かを判断する第2の判断手段と、を備え、
    前記判定手段は、
    前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にないと判断された場合、前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定することを特徴とする請求項1〜3のいずれか一つに記載の情報処理装置。
  5. 前記第1の判断手段は、
    前記比較結果に基づいて、前記いずれかの時刻に選択されていた前記項目の配置位置と、前記いずれかの時刻直前に画面変化があった際に選択されていた前記項目の配置位置とが一致するか否かを判断し、
    前記判定手段は、
    前記第1の判断手段によって前記項目の配置位置が一致すると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断された場合、前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定することを特徴とする請求項4に記載の情報処理装置。
  6. 前記画面差分のうち前記情報領域内の画面差分があるか否かを判断する第3の判断手段を備え、
    前記判定手段は、
    前記第1の判断手段によって前記規定サイズの画面差分が前記項目領域内にあると判断され、かつ、前記第2の判断手段によって前記他の画面差分が前記項目領域内にあると判断され、かつ、前記第3の判断手段によって前記情報領域内の画面差分があると判断された場合、前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定することを特徴とする請求項4または5に記載の情報処理装置。
  7. コンピュータを、
    画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定手段、
    所定の時間間隔で得られた前記画面の一連の表示内容のうち、いずれかの時刻における前記画面の表示内容と、前記いずれかの時刻直前に画面変化があった際の前記画面の表示内容とを比較する比較手段、
    前記比較手段によって比較された比較結果に基づいて、前記いずれかの時刻における前記画面内の前記特定手段によって特定された前記項目領域の表示内容と前記情報領域の表示内容とがともに変化しているか否かを判定する判定手段、
    前記判定手段によって前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定された場合に、前記いずれかの時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力し、前記判定手段によって前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定されなかった場合には、前記いずれかの時刻に関連する操作ログを出力しない出力手段、
    として機能させることを特徴とする情報処理プログラム。
  8. 前記コンピュータを、
    前記画面の一連の表示内容のうち、いずれかの選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定手段、
    前記第1の領域判定手段によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定手段、
    前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定手段としてさらに機能させ、
    前記特定手段は、
    前記第2の領域判定手段によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定するとともに、前記特徴判定手段によって判定された判定結果に基づいて、前記残余の図形領域を前記情報領域として特定することを特徴とする請求項7に記載の情報処理プログラム。
  9. コンピュータが、
    画面内の複数の表示領域のうち、項目群を表示する項目領域と前記項目群から選ばれた項目に対応する情報を表示する情報領域とを特定する特定工程と、
    所定の時間間隔で得られた前記画面の一連の表示内容のうち、いずれかの時刻における前記画面の表示内容と、前記いずれかの時刻直前に画面変化があった際の前記画面の表示内容とを比較する比較工程と、
    前記比較工程によって比較された比較結果に基づいて、前記いずれかの時刻における前記画面内の前記特定工程によって特定された前記項目領域の表示内容と前記情報領域の表示内容とがともに変化しているか否かを判定する判定工程と、
    前記判定工程によって前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定された場合に、前記いずれかの時刻と関連付けて前記項目領域内の一の項目から他の項目に切り替える選択操作に関する操作ログを出力し、前記判定工程によって前記項目領域の表示内容と前記情報領域の表示内容とがともに変化していると判定されなかった場合には、前記いずれかの時刻に関連する操作ログを出力しない出力工程と、
    を実行することを特徴とする情報処理方法。
  10. 前記コンピュータが、
    前記画面の一連の表示内容のうち、いずれかの選択操作があった時刻直前に得られた前記画面の表示内容と、前記選択操作があった時刻直後に得られた前記画面の表示内容との差分を表わす図形領域の集合のうち、前記選択操作による選択位置を含む図形領域があるか否かを判定する第1の領域判定工程と、
    前記第1の領域判定工程によって前記選択位置を含む図形領域があると判定された場合、当該図形領域が規定サイズか否かを判定する第2の領域判定工程と、
    前記図形領域の集合のうち、前記選択操作による選択位置を含む図形領域を除く残余の図形領域の特徴を判定する特徴判定工程と、をさらに実行し、
    前記特定工程は、
    前記第2の領域判定工程によって前記図形領域が規定サイズと判定された場合、当該図形領域を前記項目領域として特定するとともに、前記特徴判定工程によって判定された判定結果に基づいて、前記残余の図形領域を前記情報領域として特定することを特徴とする請求項9に記載の情報処理方法。
JP2009209436A 2009-09-10 2009-09-10 情報処理装置、情報処理プログラム、および情報処理方法 Expired - Fee Related JP5428681B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009209436A JP5428681B2 (ja) 2009-09-10 2009-09-10 情報処理装置、情報処理プログラム、および情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009209436A JP5428681B2 (ja) 2009-09-10 2009-09-10 情報処理装置、情報処理プログラム、および情報処理方法

Publications (2)

Publication Number Publication Date
JP2011060018A JP2011060018A (ja) 2011-03-24
JP5428681B2 true JP5428681B2 (ja) 2014-02-26

Family

ID=43947564

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009209436A Expired - Fee Related JP5428681B2 (ja) 2009-09-10 2009-09-10 情報処理装置、情報処理プログラム、および情報処理方法

Country Status (1)

Country Link
JP (1) JP5428681B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852720A (en) * 1996-08-16 1998-12-22 Compaq Computer Corp. System for storing display data during first time period prior to failure of computer and during second time period after reset of the computer
JP2001356936A (ja) * 2000-04-11 2001-12-26 Fujitsu Ltd Gui系プログラムのテスト支援装置および支援方法
JP4822166B2 (ja) * 2000-10-17 2011-11-24 日本電気株式会社 Gui評価システムとそのgui評価方法、及びgui評価プログラムを記録した記録媒体
JP2003085527A (ja) * 2001-09-14 2003-03-20 Sony Corp 情報作成方法、情報作成装置およびネットワーク情報処理システム
JP2004038619A (ja) * 2002-07-04 2004-02-05 Hitachi Ltd 応答時間自動測定方法および装置
JP3851261B2 (ja) * 2002-12-05 2006-11-29 秀樹 西本 データ処理システム、データ処理装置、データ処理用プログラム
JP4530995B2 (ja) * 2006-01-17 2010-08-25 三菱電機株式会社 情報処理装置及び操作ログ収集方法及び操作ログ収集プログラム
JP4842917B2 (ja) * 2007-12-07 2011-12-21 富士通株式会社 後続処理の自動処理プログラム,後続処理の自動処理装置および後続処理の自動処理方法
JP2009163370A (ja) * 2007-12-28 2009-07-23 Noritsu Koki Co Ltd キャプチャーソフトウエアプログラム及びキャプチャー装置
JP2009175970A (ja) * 2008-01-23 2009-08-06 Noritsu Koki Co Ltd ソフトウェア自動再現プログラム

Also Published As

Publication number Publication date
JP2011060018A (ja) 2011-03-24

Similar Documents

Publication Publication Date Title
EP1457917B1 (en) Apparatus and methods for converting network drawings from raster format to vector format
JP5663866B2 (ja) 情報処理装置及び情報処理プログラム
RU2631168C2 (ru) Способы и устройства, которые преобразуют изображения документов в электронные документы с использованием trie-структуры данных, содержащей непараметризованные символы для определения слов и морфем на изображении документа
JP4347677B2 (ja) 帳票ocrプログラム、方法及び装置
EP2107505B1 (en) Character recognition device
US20090110288A1 (en) Document processing apparatus and document processing method
JP6912714B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
RU2640322C2 (ru) Способы и системы эффективного автоматического распознавания символов
EP0654750A2 (en) Method for analyzing data defining an image
RU2648638C2 (ru) Способы и системы эффективного автоматического распознавания символов, использующие множество кластеров эталонов символов
KR100582039B1 (ko) 문자 인식 장치
JP4630911B2 (ja) 文書分類装置、文書分類方法およびそれらの方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP5428681B2 (ja) 情報処理装置、情報処理プログラム、および情報処理方法
CN114283190A (zh) 梁线拼接方法、装置、设备及存储介质
RU2625533C1 (ru) Устройства и способы, которые строят иерархически упорядоченную структуру данных, содержащую непараметризованные символы, для преобразования изображений документов в электронные документы
US11392260B2 (en) Display control device, display control method, and display control program
CN112835774B (zh) 显卡性能的可视化方法及装置、设备、计算机可读存储介质
RU2582064C1 (ru) Способы и системы эффективного автоматического распознавания символов с использованием леса решений
RU2625020C1 (ru) Устройства и способы, которые порождают параметризованные символы для преобразования изображений документов в электронные документы
JP6007720B2 (ja) 情報処理装置及び情報処理プログラム
JP5200719B2 (ja) Webアプリケーション検査プログラム、テスト実行装置、およびテスト実行方法
JP2001331763A (ja) 表認識方法
JP2019211941A (ja) マニュアル処理装置、マニュアル処理方法、およびマニュアル処理プログラム
JP2022051198A (ja) Ocr処理装置、ocr処理方法、及びプログラム
JP6136837B2 (ja) データ処理プログラム、およびデータ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131118

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5428681

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees