JP7517590B2 - 分類装置、分類方法、および、分類プログラム - Google Patents
分類装置、分類方法、および、分類プログラム Download PDFInfo
- Publication number
- JP7517590B2 JP7517590B2 JP2023506610A JP2023506610A JP7517590B2 JP 7517590 B2 JP7517590 B2 JP 7517590B2 JP 2023506610 A JP2023506610 A JP 2023506610A JP 2023506610 A JP2023506610 A JP 2023506610A JP 7517590 B2 JP7517590 B2 JP 7517590B2
- Authority
- JP
- Japan
- Prior art keywords
- operation event
- classification
- unit
- image
- gui
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 58
- 238000000605 extraction Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 12
- 239000000284 extract Substances 0.000 claims description 4
- 230000008569 process Effects 0.000 description 40
- 238000003860 storage Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 18
- 238000004891 communication Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000011017 operating method Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004801 process automation Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04812—Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、分類装置、分類方法、および、分類プログラムに関する。
従来、RPA(Robotic Process Automation)等で効果的な業務改善を実現するために、業務実態を正確かつ網羅的に把握することが重要である。例えば、業務実態を把握する方法として、操作者の端末(以下、端末装置)上で行われたGUI(Graphic User Interface)部品への操作を操作ログとして収集し、フローチャート形式で表示する方法がある。
また、操作者のGUI部品への操作の粒度で操作ログを取得する仕組みとして、例えば、GUIアプリケーションの操作画面を対象に、操作イベント発生時に、操作画面を構成するGUI部品の属性値を取得し、操作イベントの発生前後の変更箇所を特定する技術が知られている。
小笠原ほか、「業務の実行履歴を活用した業務プロセス可視化・分析システムの開発」、NTT技術ジャーナル、2009.2、P40-P43
しかしながら、従来の技術では、端末装置のアプリケーションの実行環境によって操作されたGUI部品とその種類を容易に特定することができない場合があった。例えば、GUI部品の属性値の取得方法は、アプリケーション種別やアプリケーションのバージョンごとに異なる場合がある。そのため、業務で利用する全てのアプリケーションの操作ログを取得するには、アプリケーションの実行環境に応じてGUI部品の属性値の取得および変更箇所を特定する機能の開発に加え、アプリケーションの仕様変更の度に改造が必要になり、それらの機能の実現が高コストであるという課題があった。
また、例えば、業務が端末装置で直接行われず、端末装置からシンクライアント端末に接続して行われる場合がある。この場合、シンクライアント端末から端末装置には画像情報のみしか送れないため、端末装置から従来技術を利用した場合に、シンクライアント端末上で操作されたGUI部品の情報および、変化箇所を特定することは難しいという課題があった。
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、端末装置のアプリケーションの実行環境に依らず、操作されたGUI部品とその種類を容易に特定することを目的とする。
上述した課題を解決し、目的を達成するため、本発明の分類装置は端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得部と、前記取得部によって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成部と、前記生成部によって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類部と、を備えることを特徴とする。
また、本発明の分類方法は、分類装置が実行する分類方法であって、端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得工程と、前記取得工程によって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成工程と、前記生成工程によって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類工程とを含んだことを特徴とする。
また、本発明の分類プログラムは、端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得ステップと、前記取得ステップによって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成ステップと、前記生成ステップによって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類ステップとをコンピュータに実行させることを特徴とする。
本発明によれば、端末装置のアプリケーションの実行環境に依らず、操作されたGUI部品とその種類を容易に特定することが可能となる効果を奏する。
以下に添付図面を参照して、本発明に係る分類装置、分類方法、および、分類プログラムの実施の形態を詳細に説明する。なお、この実施の形態により本発明が限定されるものではない。
[実施の形態1]
[実施の形態1]
以下の実施の形態1では、実施の形態1に係る分類装置の構成、分類装置の処理の流れを順に説明し、最後に実施の形態1による効果を説明する。
[分類装置の構成]
まず、最初に、図1を用いて、実施の形態1に係る分類装置の構成を説明する。図1は、実施の形態1に係る分類装置の構成を示すブロック図である。
まず、最初に、図1を用いて、実施の形態1に係る分類装置の構成を説明する。図1は、実施の形態1に係る分類装置の構成を示すブロック図である。
図1に示すように、分類装置10は、端末装置20とネットワーク(図示せず)を介して接続されており、有線接続または無線接続のどちらでもよい。なお、図1に示す構成は一例にすぎず、具体的な構成や各装置の数は特に限定されない。
端末装置20は、操作者が操作する情報処理装置である。例えば、端末装置20は、デスクトップ型PCや、ノート型PCや、タブレット端末や、携帯電話機や、PDA等である。
次に、図1に示した分類装置10の構成を説明する。同図に示すように、この分類装置10は、通信部11と、制御部12と、記憶部13とを有する。以下に分類装置10が有する各部の処理を説明する。
通信部11は、各種情報に関する通信を制御する。例えば、通信部11は、端末装置20やネットワークを介して接続される情報処理装置との間でやり取りする各種情報に関する通信を制御する。例えば、通信部11は、マウスやキーボードの操作が操作された際に発生する操作イベントに関する操作イベント情報を端末装置20から受信する。ここで、操作イベント情報とは、例えば、操作イベントの発生時間(時刻)、発生位置、イベント種別(マウスクリック、キーボード入力)、カーソルの情報を含む各種情報のことである。
記憶部13は、制御部12による各種処理に必要なデータおよびプログラムを格納し、キャプチャ画像記憶部13a、学習済みモデル記憶部13bおよび操作ログ記憶部13cを有する。例えば、記憶部13は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置などである。
キャプチャ画像記憶部13aは、後述する取得部12aによって、一定時間(例えば1秒)ごとに取得されたキャプチャ画像を記憶する。例えば、キャプチャ画像記憶部13aは、キャプチャされた時間(時刻)とキャプチャ画像とを対応付けて記憶する。なお、キャプチャ画像記憶部13aは、操作画面全体のキャプチャ画像を記憶してもよいし、操作画面上において一部の抽出されたキャプチャ画像を記憶してもよい。
学習済みモデル記憶部13bは、操作イベントで操作が行われたGUI部品の種類を分類する学習済みモデルを記憶する。学習済みモデル記憶部13bに記憶される学習済みモデルは、例えば、操作イベント発生時または発生後のキャプチャ画像と、操作イベントの発生前と発生後において操作画面に起こった変化を示す差分画像とを入力データとして、操作イベントで操作が行われたGUI部品の種類を出力する。また、学習済みモデルに入力されるデータは、キャプチャ画像と差分画像に限定されるものではなく、カーソル画像とキャプチャ画像を合成した画像や、カーソルの状態を示す値を含むカーソルの情報等を含んでもよい。なお、学習済みモデル記憶部13bに記憶される学習済みモデルは、外部の装置で事前に学習されているものとする。
なお、学習済みモデル記憶部13bに記憶される学習済みモデルは、外部の装置で学習されたものに限らず、例えば、分類装置10で学習されたものであってもよい。この場合には、例えば、分類装置10は、機械学習を行う学習部をさらに備え、学習部によって事前に上記の学習処理を行い、学習済みモデルを生成するものとする。
操作ログ記憶部13cは、取得部12aによってキャプチャ画像記憶部13aに保存したキャプチャ画像を、発生時間と共に操作イベントの発生前・発生時・発生後のキャプチャ画像として紐づけて記憶する。例えば、操作ログ記憶部13cは、操作イベントの発生前・発生時・発生後のキャプチャ画像と、生成部12cによって生成された差分画像と、分類部によって分類されたGUI部品の種類と、を紐づけて記憶する。また、操作ログ記憶部13cは、カーソルの情報や発生位置などを含む操作イベント情報の一部を紐づけて記憶してもよい。
また、操作ログ記憶部13cは、端末装置20で行われる全ての操作イベントのログを記憶してもよいし、予め定めた操作イベントのログのみを記憶してもよい。また、操作ログ記憶部13cは、特定の業務システムに関する操作イベントの操作ログだけではなく、メール、ウェブブラウザ、Word、Excel、PowerPointなどのOfficeアプリケーションなど様々なアプリケーションを利用する業務の操作イベントのログを同時に記憶してもよいし、アプリケーション単体の操作イベントごとにログを記憶してもよい。
制御部12は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。例えば、制御部12は、取得部12aと、抽出部12bと、生成部12cと、分類部12dとを有する。ここで、制御部12は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路やASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路である。
取得部12aは、端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する。例えば、取得部12aは、キャプチャ画像を一定間隔で定期的に取得し、取得したキャプチャ画像をキャプチャ画像記憶部13aに保存する。
そして、取得部12aは、操作者の操作イベントが発生したタイミングで、操作イベント発生時、発生前、発生後の3種類のキャプチャ画像をキャプチャ画像記憶部13aから取得してもよい。以下では、操作イベント発生時、発生前、発生後の3種類のキャプチャ画像を取得する場合を主な例として説明する。
例えば、取得部12aは、操作イベント発生前のキャプチャの取得方法として、操作イベント発生の有無によらず、一定時間ごとに取得部12aがキャプチャ画像を取得しておき、操作イベントが発生した際に、その操作イベントの発生前(所定の時間前)に取得されたキャプチャ画像を、操作イベントの発生前のキャプチャ画像として操作ログ記憶部13cに保存する。
また、取得部12aは、例えば、操作イベント発生後のキャプチャの取得方法として、操作イベントの発生後、一定時間が経過した後にキャプチャ画像を取得し、操作イベント発生後のキャプチャとして操作ログ記憶部13cに保存してもよい。また、取得部12aは、一定時間ごとに取得されたキャプチャの取得時間を、操作イベントの発生時間と比較し、操作イベントの発生時、発生前、発生後のキャプチャ画像として後から紐づける方法でもよい。
また、取得部12aは、キャプチャ画像を取得するとともに、操作画面上に表示されるカーソルの情報を取得し、該カーソルの情報を用いてカーソルの形状を特定するようにしてもよい。例えば、取得部12aは、操作イベント発生時にカーソルのハンドルを取得し、事前に定義されたカーソルのハンドルと比較することで、カーソルの形状を特定する。
また、取得部12aは、ユーザの操作イベントについて、イベントの発生時間、イベントの発生位置、イベント種別を取得する。例えば、取得部12aは、操作イベントの発生時において、クリック操作やキー入力等の操作内容を特定するイベント種別の情報、および操作イベントの発生時間の情報を端末装置20から取得する。さらに、取得部12aは、例えば、クリック操作が行われた場合には、操作イベントが発生した位置の情報を取得してもよいし、キー入力が行われた場合には、操作されたキーの種類の情報を取得してもよい。
抽出部12bは、操作イベントの発生前のキャプチャ画像と発生後のキャプチャ画像とを比較し、差分が発生している場合には、当該操作イベントを抽出する。例えば、抽出部12bは、ある操作イベントについて、操作イベントの発生時、発生前、発生後の各キャプチャ画像をそれぞれ比較し、いずれかに差分が発生していた場合には、その操作のイベントを意味のある操作が行われた可能性のある操作イベントとして抽出する。ここで意味のある操作が行われた可能性のある操作イベント(以下、「意味のある操作イベント」と記載)とは、GUI部品に対する操作が行われた可能性のある操作イベントのことを意味する。
なお、抽出部12bは、比較するキャプチャ画像について、画面全体のキャプチャ画像を用いてもよいし、キャプチャ画像から操作イベントの発生位置の周辺を切り出した画像を用いてもよい。
生成部12cは、取得部12aによって取得されたキャプチャ画像を用いて、操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する。具体的には、生成部12cは、抽出部12bによって抽出された操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する。
例えば、生成部12cは、抽出部12bにおいてGUI部品についての操作イベントと判断された操作イベントの発生前および発生後のキャプチャ画像の画素値の差分を算出し、差分の絶対値を画像データに変換することで、差分を画像として表現した差分画像を生成する。
ここで、図2~図6を用いて、GUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す。図2~図6においては、カーソルなしのキャプチャ画像の場合と、カーソルありのキャプチャ画像の場合とをそれぞれ例示している。
図2は、ラジオボタンのGUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す図である。図2に示すように、取得部12aは、操作前のキャプチャ画像として、「乗換回数」と表記されているラジオボタンがチェックされている操作前のキャプチャ画像を取得する。
その後、操作者が「運賃」と表記されているラジオボタンを選択するという操作イベントが発生した後、取得部12aは、「乗換回数」と表記されているラジオボタンのチェック表示が消え、「運賃」と表記されているラジオボタンがチェックされている操作後のキャプチャ画像を取得する。
そして、生成部12cは、操作前および操作後のキャプチャ画像の画素値の差分を算出し、該差分の絶対値を画像データに変換することで、二つのラジオボタンの丸い印を含む差分画像を生成する。
図3は、チェックボックスのGUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す図である。図3に示すように、取得部12aは、操作前のキャプチャ画像として、「特急線」と表記されているチェックボックスの淵が太枠で表示されているキャプチャ画像を取得する。
その後、操作者が、「路線バス」と表記されているチェックボックスを選択するという操作イベントが発生した後、取得部12aは、「特急線」と表記されているチェックボックスのチェックマークが消え、「路線バス」と表記されているチェックボックスの淵が太枠で表示され、かつ、チェックマークが表示されているキャプチャ画像を取得する。
そして、生成部12cが、操作前および操作後のキャプチャ画像の画素値の差分を算出し、差分の絶対値を画像データに変換し、二つのチェックボックスの四角い淵と「路線バス」のチェックマークを含む差分画像を生成する。
図4は、プルダウンメニューのGUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す図である。図4に示すように、取得部12aは、操作前のキャプチャ画像として、「2019年」と表記されているプルダウンメニューが選択されているキャプチャ画像を取得する。
その後、操作者が「11月」と表記されているプルダウンメニューをカーソルでクリック選択をするという操作イベントが発生した後、取得部12aは、「2019年」と表記されているプルダウンメニューの選択による色付けが消え、「11月」と表記されているプルダウンメニューに全ての月が選択式に表示されている操作後のキャプチャ画像を取得する。
そして、生成部12cが、操作前および操作後のキャプチャ画像の画素値の差分を算出し、該差分の絶対値を画像データに変換することで、「2019年」と表記されているプルダウンメニュー、および、「11月」と表記されているプルダウンメニューとその他全ての月の選択表示を含む差分画像を生成する。
図5は、テキストボックスのGUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す図である。図5に示すように、取得部12aは、操作前のキャプチャ画像として、「ウェブ検索」と表記されているテキストボックスのGUI部品が表示されているキャプチャ画像を取得する。
その後、操作者が「ウェブ検索」と表記されているテキストボックスのGUI部品を選択するという操作イベントが発生した後、取得部12aは、「ウェブ検索」と表記されているテキストボックスの文字が消え、テキストボックスのGUI部品にカーソルが表示されている操作後のキャプチャ画像を取得する。
そして、生成部12cが、操作前および操作後のキャプチャ画像の画素値の差分を算出し、該差分の絶対値を画像データに変換することで、「ウェブ検索」と表記されているテキストの文字、および、テキストボックスのGUI部品に表示されているカーソルを含む差分画像を生成する。
図6は、ボタンのGUI部品の操作前後のキャプチャ画像から生成された差分画像の一例を示す図である。図6に示すように、取得部12aは、操作前のキャプチャ画像として、「到着駅が見つかりません。」と表記されているタブに「OK」ボタンが表示されているキャプチャ画像を取得する。
その後、操作者が「OK」ボタンを押下する操作イベントが発生した後、取得部12aは、「到着駅が見つかりません。」と表記されているタブが消え、元の画面が表示されている操作後のキャプチャ画像を取得する。
そして、生成部12cが、操作前および操作後のキャプチャ画像の画素値の差分を算出し、該差分の絶対値を画像データに変換することで、「到着駅が見つかりません。」と表記されているタブ、および、タブによって隠れていた元の画面を含む差分画像を生成する。
図7は、GUI部品の操作前後の画面全体のキャプチャ画像から生成した差分画像の一例を示す図である。上述した差分画像を生成する例では、キャプチャ画像から操作イベントの発生位置の周辺を切り出した画像を用いている場合を説明したが、図7に示すように、生成部12cは、画面全体のキャプチャ画像を用いて差分画像を生成してもよい。
図1の説明に戻って、分類部12dは、生成部12cによって生成された差分画像を用いて、操作イベントで操作が行われたGUI部品の種類を分類する。ここで、分類部12dは、GUI部品の種類を分類するとともに、意味のある操作イベントか否かを判定する。つまり、分類部12dが、意味のある操作イベントである場合には、分類できるGUI部品としては、例えば、「ラジオボタン」、「チェックボックス」、「プルダウンメニュー」、「テキストボックス」、「ボタン」および「リンク」のうちいずれかに分類する。また、分類部12dは、意味のある操作イベントでない場合には、「意味のある操作イベントではない」と分類する。
例えば、分類部12dは、取得部12aによって取得されたキャプチャ画像とカーソルの情報と、生成部12cによって生成された差分画像とを入力として、操作イベントで操作が行われたGUI部品の種類を分類する学習済みモデルを用いて、各操作イベントで操作が行われたGUI部品の種類を分類するようにしてもよい。この学習済みモデルは、学習済みモデル記憶部13bに記憶された学習済みモデルであって、所定の機械学習アルゴリズムを用いて、入力データと操作されたGUI部品の関係を教師データとして学習された学習済みモデルである。
また、分類部12dは、生成部12cによって生成された差分画像と、取得部12aによって特定されたカーソルの形状とを用いて、操作イベントで操作が行われたGUI部品の種類を分類するようにしてもよい。
また、分類部12dは、分類を行う際、分類のターゲットの操作イベントの前後に行われた操作イベントについての情報を分類に用いてもよい。つまり、ターゲットとする操作イベントがテキストボックスへのフォーカスを目的としたマウスクリックの場合、次の操作イベントは文字などのキー入力となる可能性が高い。よって、次の操作イベントがキー入力であるという情報を用いることで、ターゲットとする操作イベントの分類精度の向上が見込める。この場合には、分類部12dは、学習済みモデルに対して、キャプチャ画像および差分画像に加えて、操作イベントの前後に行われた操作イベントを入力することで、操作イベントで操作が行われたGUI部品の種類を分類する。
また、取得部12aがウィンドウの識別情報が取得できる場合、分類部12dは、ウィンドウの識別情報を分類に用いてもよい。例えば、ターゲットとする操作イベントがリンクの押下である場合、操作イベントによりページの遷移が発生する可能性が高い。よって、取得部12aが操作イベントの後にページの遷移が発生したという情報がウィンドウの識別情報を得られる場合、ウィンドウの識別情報を用いることで、ターゲットとする操作イベントの分類精度の向上が見込める。この場合には、分類部12dは、学習済みモデルに対して、キャプチャ画像および差分画像に加えて、ウィンドウの識別情報を入力することで、操作イベントで操作が行われたGUI部品の種類を分類する。
ここで、学習済みモデルに対する入力データのバリエーションの例について説明する。図8は、学習済みモデルに対する入力データのバリエーションの例を示す図である。図8に例示するように、分類部12dは、学習済みモデルに対して、取得部12aによって取得されたキャプチャ画像と生成部12cによって生成された差分画像とを入力する。
また、分類部12dは、学習済みモデルに対して、キャプチャ画像および差分画像に加えて、カーソル画像を入力してもよい。また、分類部12dは、学習済みモデルに対して、キャプチャ画像および差分画像に加えて、取得部12aによって特定されたカーソルの形状の情報を入力してもよい。また、分類部12dは、学習済みモデルに対して、キャプチャ画像および差分画像に加えて、取得部12aによって取得された操作イベントの発生位置の情報を入力してもよい。
次に、学習済みモデルにキャプチャ画像と差分画像を入力することで、操作されたGUI部品の種類を分類する処理を説明する。図9は、学習済みモデルにキャプチャ画像と差分画像を入力することで、操作されたGUI部品の種類を分類する処理を説明する図である。図9の例では、CNNは、階層構造を有し、畳み込み層、プーリング層、全結合層、出力層を含む。
ここで、学習済みモデル記憶部13bに記憶される学習済みモデルの学習について説明する。操作イベントで操作が行われたGUI部品の種類を分類する学習済みモデルについて、学習データが少ない場合に、学習データに適合しすぎて未知のデータに対応できない状態である過学習に陥りやすいという状況を考慮する必要がある。例えば、学習を行う外部の装置は、限られた学習データから、未知のGUI部品に対してもロバストにその種類を取得するため、入力データと操作されたGUI部品の関係を学習する際、特定のレイヤーのノードのいくつかを不活性化するDropoutを用いてもよい。
また、学習を行う外部の装置は、限られたデータで学習を行う際、関連のある別のタスクについての学習済みモデルを利用することで、分類精度のよい学習モデルを生成することができる。また、学習を行う外部の装置は、限られた学習データから、未知のGUI部品に対してもロバストにその種類を取得するため、入力データと操作されたGUI部品の関係を学習する際、GUI部品の画像と、そのGUI部品の種類の関係をあらかじめ学習したモデルを用いて転移学習またはファインチューニングを行ってもよい。
[分類装置の処理の一例]
次に、図10~図13を用いて、第1の実施形態に係る分類装置1による処理手順の例を説明する。
次に、図10~図13を用いて、第1の実施形態に係る分類装置1による処理手順の例を説明する。
まず、図10を用いて、キャプチャ画像を格納する処理について説明する。図10は、実施の形態1に係る分類装置における操作イベント毎にキャプチャ画像を格納する処理の一例を示すフローチャートである。
図10に示すように、取得部12aは、ユーザが処理を停止したか、または、端末装置20の電源を落としたかを判定する(ステップS101)。この結果、取得部12aは、操作者が処理を停止、または、端末装置の電源を落としたと判定した場合には(ステップS101 Yes)、本フローの処理を終了する。また、取得部12aは、操作者が処理を停止せず、且つ、端末装置20の電源を落としていないと判定した場合には(ステップS101 No)、キャプチャ画像を一定間隔でキャプチャ画像記憶部13aに一時保存する(ステップS102)。
そして、取得部12aは、操作イベントが発生したか否かを判定する(ステップS103)。この結果、操作イベントが発生した場合(ステップS103 Yes)、取得部12aは、操作イベント情報を取得する(ステップS104)。例えば、取得部12aは、ユーザの操作イベントについて、イベントの発生時間、イベントの発生位置、イベント種別を取得し、イベント発生時のキャプチャ画像と紐づけて操作ログ記憶部13cに格納する。また、操作イベントが発生していない場合(ステップS103 NO)、ステップS101の処理に戻る。
そして、取得部12aは、ステップS102においてキャプチャ画像記憶部13aに一時保存したキャプチャ画像から発生時間をもとに操作イベントの発生前キャプチャ画像を取得する(ステップS105)。続いて、取得部12aは、一定時間経過後に操作イベントの発生後のキャプチャ画像としてキャプチャ画像を取得する(ステップS106)。そして、取得部12aは、取得したキャプチャ画像から発生時間をもとに操作イベントの発生前・発生時・発生後のキャプチャ画像を紐づけし、操作ログ記憶部13cに保存する(ステップS107)。その後、ステップS101に戻って、上記の処理の流れを繰り返す。
また、取得部12aは、実施の形態1に係る分類装置におけるキャプチャ画像を格納する処理を、キャプチャ画像を後から操作イベントに紐づけて格納してもよい。例えば、取得部12aは、キャプチャ画像の取得と操作イベントの取得を独立的に行い、キャプチャ画像のデータを一定量蓄積した後で、操作イベント発生時刻に基づいて、操作イベントとキャプチャ画像を紐づけてもよい。
次に、図11を用いて、実施の形態1に係る分類装置におけるキャプチャ画像からGUI部品についての操作イベントを抽出する処理について説明する。図11は、実施の形態1に係る分類装置におけるキャプチャ画像からGUI部品についての操作イベントを抽出する処理の一例を示すフローチャートである。
図11に示すように、抽出部12bは、全ての操作イベントをターゲットとしたかを判定する(ステップS201)。この結果、抽出部12bは、全ての操作イベントをターゲットと判定した場合(ステップS201 Yes)、本フローの処理を終了する。また、抽出部12bは、全ての操作イベントをターゲットとしていない場合には(ステップS201 No)、ターゲットとする操作イベントを決定する(ステップS202)。
続いて、抽出部12bは、操作イベントの発生時、発生前、発生後の間のいずれかのキャプチャ画像に差分があるか判定する(ステップS203)。この結果、抽出部12bは、操作イベントの発生時、発生前、発生後の間のいずれかのキャプチャ画像に差分がないと判断した場合(ステップS203 No)、ステップS201の処理に戻る。
また、抽出部12bは、操作イベントの発生時、発生前、発生後の間のいずれかのキャプチャ画像に差分があると判断した場合(ステップS203 Yes)、ターゲットとした操作イベントを意味のある操作として抽出する(ステップS204)。その後、ステップS201に戻って、上記の処理の流れを繰り返す。
次に、図12を用いて、実施の形態1に係る分類装置における差分画像を生成する処理について説明する。図12は、実施の形態1に係る分類装置における差分画像を生成する処理の一例を示すフローチャートである。
図12に示すように、生成部12cは、全ての操作イベントをターゲットとしたかを判定する(ステップS301)。この結果、生成部12cは、全ての操作イベントをターゲットと判定した場合(ステップS301 Yes)、本フローの処理を終了する。また、生成部12cは、全ての操作イベントをターゲットとしていない場合には(ステップS301 No)、ターゲットとする操作イベントを決定する(ステップS302)。
続いて、生成部12cは、ターゲットとした操作イベントが意味のある操作イベントとして抽出された操作イベントであるか否かを判定する(ステップS303)。この結果、生成部12cは、意味のある操作イベントとして抽出された操作イベントでない場合には(ステップS303 No)、ステップS301の処理に戻る。
そして、生成部12cは、ターゲットとした操作イベントが意味のある操作イベントとして抽出された操作イベントであると判断した場合には(ステップS303 Yes)、操作イベントの発生時、発生前、発生後のキャプチャ画像から、画面に起こった差分を画像として生成する(ステップS304)。例えば、生成部12cは、操作イベントの発生時、発生前、発生後のキャプチャ画像の画素値の差分を算出し、差分の絶対値を画像データに変換することで、差分画像を生成する。その後、ステップS301に戻って、上記の処理の流れを繰り返す。
次に、図13を用いて、実施の形態1に係る分類装置における操作イベント毎にキャプチャ画像からGUI部品を分類する処理について説明する。図13は、実施の形態1に係る分類装置における操作イベント毎にキャプチャ画像からGUI部品を分類する処理の一例を示すフローチャートである。
図13に示すように、分類部12dは、全ての操作イベントをターゲットとしたかを判定する(ステップS401)。この結果、分類部12dは、全ての操作イベントをターゲットと判定した場合(ステップS401 Yes)、本フローの処理を終了する。また、分類部12dは、全ての操作イベントをターゲットとしていない場合には(ステップS401 No)、ターゲットとする操作イベントを決定する(ステップS402)。
続いて、分類部12dは、ターゲットとした操作イベントが意味のある操作イベントとして抽出された操作イベントであるか否かを判定する(ステップS403)。この結果、分類部12dは、意味のある操作イベントとして抽出された操作イベントでない場合には(ステップS403 No)、ステップS401の処理に戻る。
そして、分類部12dは、ターゲットとした操作イベントが意味のある操作イベントとして抽出された操作イベントであると判断した場合には(ステップS403 Yes)、キャプチャ画像、差分画像、カーソル形状、操作イベント発生場所等の情報を用いて、操作したGUI部品の種類を分類する(ステップS404)。このとき、分類部12dは、GUI部品に対する意味のある操作に該当しない操作イベントを「意味のある操作イベントでない」のカテゴリーに分類する。その後、ステップS401に戻って、上記の処理の流れを繰り返す。
[実施の形態1の効果]
このように、実施の形態1に係る分類装置10は、端末装置20の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する。そして、分類装置10は、取得したキャプチャ画像を用いて、操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する。続いて、分類装置10は、生成した差分画像を用いて、操作が行われたGUI部品の種類を分類する。これにより、分類装置10は、端末装置20のアプリケーションの実行環境に依らず、操作されたGUI部品とその種類を容易に特定することができる。
このように、実施の形態1に係る分類装置10は、端末装置20の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する。そして、分類装置10は、取得したキャプチャ画像を用いて、操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する。続いて、分類装置10は、生成した差分画像を用いて、操作が行われたGUI部品の種類を分類する。これにより、分類装置10は、端末装置20のアプリケーションの実行環境に依らず、操作されたGUI部品とその種類を容易に特定することができる。
例えば、実施の形態1に係る分類装置10では、ユーザが操作したタイミングで、変化のあった操作箇所と操作箇所の見た目を用いて、操作が行われたGUI部品の特定およびその種類を判別することが可能である。具体例を挙げて説明すると、実施の形態1に係る分類装置10では、カーソルを上に乗せた際のGUI部品の形状の変化、またはマウスダウン時のGUI部品の形状の変化、またはクリック後に画面に発生する変化、を含む操作イベント前後に発生した画面の差分の変化のあった操作箇所と操作箇所の見た目を用いて、操作が行われたGUI部品の特定およびその種類を判別することが可能である。
また、例えば、実施の形態1に係る分類装置10では、GUI部品の存在しない場所にカーソルがある場合の形状として、標準の矢印、または、テキストボックスの上にカーソルがある場合の形状として、Iビーム、または、ボタンの上にカーソルがある場合の形状として、指を立てた手の形、のように変化のあった操作箇所と操作箇所の見た目を用いて、操作が行われたGUI部品の特定およびその種類を判別することが可能である。
また、実施の形態1に係る分類装置10では、取得部12aによって取得されたキャプチャ画像と生成部12cによって生成された差分画像とを入力として、操作イベントで操作が行われたGUI部品の種類を分類する学習済みモデルを用いて、各操作イベントで操作が行われたGUI部品の種類を分類する。このため、例えば、分類装置10もしくは外部の装置が、学習済みモデルについて、GUI部品に共通する特徴を学習することで、限られた学習データから、GUI部品が変化した場合や未知のGUI部品に対してロバストにその種類を取得することが可能となる。
このように、分類装置10が、操作が行われたGUI部品の種類を特定することで、RPAシナリオの作成や、シナリオの改良の参考となるデータを収集することが可能である。
例えば、効果的にRPA(Robotic Process Automation)を導入するためには、作業者による端末上の操作実態をフローチャート形式の表示によって把握し、自動化可能な繰り返し操作が行われている範囲を見つけることが重要である。端末操作を中心とした業務でサービスや商品を顧客に提供することを考えた場合、同一サービス・商品を提供するためのシステムの操作手順はサービスや商品ごとに決められており、マニュアルなどによって担当者に共有されている。
一般的に、担当者はマニュアルに沿ってサービス・商品の提供に必要な処理を行うことが期待されているため、同一サービス・商品を処理する手順は同じ操作手順になると想定される。そのため、従来、業務実態を把握する方法として、業務マニュアル中に記載された業務手順を確認する方法が有効だと考えられるが、顧客が注文後に注文内容を変更する、商品が欠品する、操作者の操作ミス、などマニュアル作成時には想定しなかった様々なイレギュラーな事象が発生するのが通常であり、これらのイレギュラーな事象に対しては、あらかじめすべての操作手順を規定しておくことは現実的ではないという課題があった。
また、従来より、担当者は多様な操作方法を覚えることは困難であり、すべてを規定された方法で処理することは現実的ではないため、同一サービス・商品であっても案件ごとに操作手順は様々であることが一般的であり、業務マニュアルから実際の業務実態を把握することは困難であるという課題があった。
また、実際の業務においては、業務システムだけではなく、メール、ウェブブラウザ、Word、Excel、PowerPointなどのOfficeアプリケーションなど様々なアプリケーションを利用しながら業務を進めることが一般的である。GUI部品の属性値の取得方法は、アプリケーションごとに異なるため、担当者の業務実施状況を網羅的に把握するためには、業務で利用するすべてのアプリケーションの実行環境に応じてGUI部品の属性値の取得および変更箇所を特定する仕組みを開発する必要があるが、実際には開発コストが非常に高く現実的ではない。仮に、特定のアプリケーションについて開発したとしても、対象のアプリケーションのバージョンアップに伴い仕様変更が発生すると、それに合わせた改造が必要になるという課題があった。
また、近年、コンピュータ資源の有効活用やセキュリティ対策を目的に、企業ではシンクライアント環境が普及している。シンクライアント環境では、操作者は直接操作を行う端末である端末装置にアプリケーションがインストールされておらず、クライアント端末に接続された別の端末にアプリケーションがインストールされている。クライアント端末には、アプリケーションが提供する操作画面が画像として表示され、担当者はその表示された画像を通して接続先側のアプリケーションを操作する。この場合、実際にユーザが操作を行う端末には操作画面が画像として表示されているため、クライアント端末からGUI部品および、変化箇所を特定することは不可能である。
このように、従来、多様なアプリケーションを用いた業務やシンクライアント環境においては、担当者のアプリケーション上で行われるGUI部品上への操作をログとして収集することは容易ではないため、GUI部品上への操作をログとして収集するためには、操作が行われたGUI部品の種類を特定することが必要である。
図14に示すように、本実施の形態の分類装置10では、端末装置20の操作画面のキャプチャ画像を用いて、操作ログを特定することにより、画面キャプチャとマウス・キーボードの操作情報のみしか取得できない環境でも利用可能である。また、端末装置20毎に、異なるブラウザ、Webサイト、アプリケーションを利用する場合であっても、キャプチャ画像および差分画像をCNNにより学習させることで、未知のデータについても判別が可能になる。このため、本実施の形態の分類装置10では、端末装置20のアプリケーションの実行環境に依らず、操作者による操作イベントのGUI部品の種類とその操作の流れを汎用的に取得することができる。
また、RPAの導入を目的とした業務分析においては、最終的にRPAシナリオを作成する必要がある。操作したGUI部品の種類を特定することで、分析結果をRPAシナリオへ反映することが容易になる。
また、例えば、操作したGUI部品の種類を特定することで、テキストボックスやラジオボタンなどのユーザが操作するGUI部品の、部品ごとの操作回数などの可視化が可能となる。これにより、例えばテキストボックスの入力が多く、かつパターン化できる場合、セレクトボックスに変更するなどのシステムの作りを改良するための参考とすることができる。
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
[プログラム]
また、上記実施形態に係る分類装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、分類装置10と同様の機能を実現する分類プログラムを実行するコンピュータの一例を説明する。
また、上記実施形態に係る分類装置10が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。以下に、分類装置10と同様の機能を実現する分類プログラムを実行するコンピュータの一例を説明する。
図15は、分類プログラムを実行するコンピュータを示す図である。図15に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。
メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1041に接続される。ディスクドライブ1041には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。
ここで、図15に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。上記実施形態で説明した各テーブルは、例えばハードディスクドライブ1090やメモリ1010に記憶される。
また、分類プログラムは、例えば、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、ハードディスクドライブ1090に記憶される。具体的には、上記実施形態で説明した分類装置10が実行する各処理が記述されたプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。
また、分類プログラムによる情報処理に用いられるデータは、プログラムデータとして、例えば、ハードディスクドライブ1090に記憶される。そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。
なお、分類プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1041等を介してCPU1020によって読み出されてもよい。あるいは、分類プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
10 分類装置
11 通信部
12 制御部
12a 取得部
12b 抽出部
12c 生成部
12d 分類部
13 記憶部
13a キャプチャ画像記憶部
13b 学習済みモデル記憶部
13c 操作ログ記憶部
20 端末装置
11 通信部
12 制御部
12a 取得部
12b 抽出部
12c 生成部
12d 分類部
13 記憶部
13a キャプチャ画像記憶部
13b 学習済みモデル記憶部
13c 操作ログ記憶部
20 端末装置
Claims (6)
- 端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得部と、
前記取得部によって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成部と、
前記生成部によって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類部と、
を備えることを特徴とする分類装置。 - 前記取得部は、前記キャプチャ画像を取得するとともに、操作画面上に表示されるカーソルの情報を取得し、該カーソルの情報を用いてカーソルの形状を特定し、
前記分類部は、前記生成部によって生成された前記差分画像と、前記取得部によって特定されたカーソルの形状とを用いて、前記操作イベントで操作が行われたGUI部品の種類を分類することを特徴とする請求項1に記載の分類装置。 - 前記分類部は、前記取得部によって取得された前記キャプチャ画像と前記生成部によって生成された前記差分画像とを入力として、前記操作イベントで操作が行われたGUI部品の種類を分類する学習済みモデルを用いて、各操作イベントで操作が行われたGUI部品の種類を分類することを特徴とする請求項1に記載の分類装置。
- 前記操作イベントの発生前のキャプチャ画像と発生後のキャプチャ画像とを比較し、差分が発生している場合には、当該操作イベントを抽出する抽出部をさらに有し、
前記生成部は、前記抽出部によって抽出された操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成することを特徴とする請求項1に記載の分類装置。 - 分類装置が実行する分類方法であって、
端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得工程と、
前記取得工程によって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成工程と、
前記生成工程によって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類工程と
を含んだことを特徴とする分類方法。 - 端末装置の操作イベントの発生前および発生後の操作画面のキャプチャ画像を取得する取得ステップと、
前記取得ステップによって取得された前記キャプチャ画像を用いて、前記操作イベントの発生前と発生後において操作画面に起こった変化を差分画像として生成する生成ステップと、
前記生成ステップによって生成された前記差分画像を用いて、前記操作イベントで操作が行われたGUI部品の種類を分類する分類ステップと
をコンピュータに実行させることを特徴とする分類プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/010932 WO2022195784A1 (ja) | 2021-03-17 | 2021-03-17 | 分類装置、分類方法、および、分類プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2022195784A1 JPWO2022195784A1 (ja) | 2022-09-22 |
JP7517590B2 true JP7517590B2 (ja) | 2024-07-17 |
Family
ID=83322055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023506610A Active JP7517590B2 (ja) | 2021-03-17 | 2021-03-17 | 分類装置、分類方法、および、分類プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240153241A1 (ja) |
JP (1) | JP7517590B2 (ja) |
WO (1) | WO2022195784A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011159018A (ja) | 2010-01-29 | 2011-08-18 | Fujitsu Ltd | 情報処理装置、情報処理プログラム、および情報処理方法 |
JP2017162120A (ja) | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
WO2020250320A1 (ja) | 2019-06-11 | 2020-12-17 | 日本電信電話株式会社 | 操作ログ取得装置、操作ログ取得方法および操作ログ取得プログラム |
JP2021128402A (ja) | 2020-02-12 | 2021-09-02 | 富士通株式会社 | 摂動プログラム、摂動方法、および情報処理装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5067328B2 (ja) * | 2008-09-22 | 2012-11-07 | 日本電気株式会社 | 評価装置、評価方法およびプログラム |
-
2021
- 2021-03-17 WO PCT/JP2021/010932 patent/WO2022195784A1/ja active Application Filing
- 2021-03-17 JP JP2023506610A patent/JP7517590B2/ja active Active
- 2021-03-17 US US18/281,641 patent/US20240153241A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011159018A (ja) | 2010-01-29 | 2011-08-18 | Fujitsu Ltd | 情報処理装置、情報処理プログラム、および情報処理方法 |
JP2017162120A (ja) | 2016-03-08 | 2017-09-14 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
WO2020250320A1 (ja) | 2019-06-11 | 2020-12-17 | 日本電信電話株式会社 | 操作ログ取得装置、操作ログ取得方法および操作ログ取得プログラム |
JP2021128402A (ja) | 2020-02-12 | 2021-09-02 | 富士通株式会社 | 摂動プログラム、摂動方法、および情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2022195784A1 (ja) | 2022-09-22 |
WO2022195784A1 (ja) | 2022-09-22 |
US20240153241A1 (en) | 2024-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2022514155A (ja) | ソフトウェアテスト | |
US10510044B2 (en) | Project management system providing digital form-based inspections in the field | |
US20140074452A1 (en) | System and method for automatic modeling of an application | |
US20150089415A1 (en) | Method of processing big data, apparatus performing the same and storage media storing the same | |
US20180239496A1 (en) | Clustering and analysis of commands in user interfaces | |
WO2021140594A1 (ja) | 操作ログ取得装置および操作ログ取得方法 | |
US11823086B2 (en) | Membership analyzing method, apparatus, computer device and storage medium | |
JP7235110B2 (ja) | 操作ログ取得装置、操作ログ取得方法および操作ログ取得プログラム | |
JP7517590B2 (ja) | 分類装置、分類方法、および、分類プログラム | |
WO2021087818A1 (zh) | 软件知识捕捉方法、装置和系统 | |
US20180067837A1 (en) | Framework for detecting source code anomalies | |
US10924362B2 (en) | Management of software bugs in a data processing system | |
US20230111999A1 (en) | Method and system of creating clusters for feedback data | |
CN116150517A (zh) | 页面处理方法及装置、电子设备和介质 | |
WO2022054262A1 (ja) | データ処理装置、データ処理方法及びデータ処理プログラム | |
CN115035044A (zh) | 一种应用于工业质检的智能ai平台 | |
CN111444170B (zh) | 基于预测业务场景的自动机器学习方法和设备 | |
CN113641569A (zh) | 机器人流程自动化方法 | |
JP2012038022A (ja) | クローン検出装置、クローン検出プログラム、及びクローン検出プログラムを記録した記録媒体 | |
US20160132468A1 (en) | User-interface review method, device, and program | |
WO2023105696A1 (ja) | 情報付与装置、情報付与方法及び情報付与プログラム | |
JP7517481B2 (ja) | 操作ログ生成装置および操作ログ生成方法 | |
Novaliendry et al. | Development of a Digital Twin Prototype for Industrial Manufacturing Monitoring System Using IoT and Augmented Reality. | |
US20240104011A1 (en) | Method of testing software | |
US20230297482A1 (en) | Managing artifact information relating to a physical system, for example improving traceability of re-baselined engineering-related information, method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230727 |
|
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: 20240604 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240617 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7517590 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |