JP6662748B2 - Display control device, display control method, and display control program - Google Patents

Display control device, display control method, and display control program Download PDF

Info

Publication number
JP6662748B2
JP6662748B2 JP2016201413A JP2016201413A JP6662748B2 JP 6662748 B2 JP6662748 B2 JP 6662748B2 JP 2016201413 A JP2016201413 A JP 2016201413A JP 2016201413 A JP2016201413 A JP 2016201413A JP 6662748 B2 JP6662748 B2 JP 6662748B2
Authority
JP
Japan
Prior art keywords
change
window
screen
area
frequency
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
Application number
JP2016201413A
Other languages
Japanese (ja)
Other versions
JP2018063564A (en
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016201413A priority Critical patent/JP6662748B2/en
Publication of JP2018063564A publication Critical patent/JP2018063564A/en
Application granted granted Critical
Publication of JP6662748B2 publication Critical patent/JP6662748B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、表示制御装置、表示制御方法、および、表示制御プログラムに関する。   The present invention relates to a display control device, a display control method, and a display control program.

従来、ユーザがアプリケーションを利用する際に、オーバレイ表示によりユーザに対して視覚的な解釈内容を提供するアノテーションの技術が知られている。例えば、アノテーションの技術をリアルタイムの映像に適用することで、各瞬間の解釈結果をオーバレイ表示し、解釈対象の変化や動きに同期して表示更新して、ユーザにもとの映像とそれに対する解釈とを同時に提示することができる。これによりユーザの情報支援が可能となる。   2. Description of the Related Art An annotation technology that provides a user with visual interpretation by overlay display when an application is used has been known. For example, by applying annotation technology to real-time video, the interpretation result at each moment is displayed as an overlay, and the display is updated in synchronization with the change or movement of the interpretation target, so that the user can interpret the original video and its interpretation. Can be presented at the same time. This enables information support for the user.

この分野の具体的応用例として、例えば、PCのスクリーン画面を連続的にキャプチャし、その画面上から指定されたテンプレート画像と類似した領域を探索し、得られた位置にアイコンをオーバレイ表示するアノテーションシステムがある(特許文献1参照)。   As a specific application example of this field, for example, an annotation that continuously captures a screen screen of a PC, searches an area similar to a designated template image from the screen, and overlays an icon at an obtained position. There is a system (see Patent Document 1).

国際公開第2014/002812号International Publication No. WO 2014/002812 国際公開第2016/039273号International Publication No. WO 2016/039273 特許第5916136号公報Japanese Patent No. 5916136

しかし、上記の従来技術はいずれも、複数のウィンドウを対象としてアノテーションを適用しようとすると、ウィンドウ数に比例してアノテーションの処理負荷が増大し、これに伴いアノテーションの処理時間も増大するという問題がある。そこで、本発明は、前記した問題を解決し、複数のウィンドウを対象としてアノテーションの表示を行う場合におけるアノテーションの処理負荷の増大を抑制することを課題とする。   However, any of the above-mentioned conventional techniques has a problem in that when applying an annotation to a plurality of windows, the processing load of the annotation increases in proportion to the number of windows, and the processing time of the annotation also increases accordingly. is there. Therefore, an object of the present invention is to solve the above-described problem and suppress an increase in the processing load of the annotation when displaying the annotation on a plurality of windows.

前記した課題を解決するため、本発明は、デスクトップ上の複数のウィンドウについて前記ウィンドウごとに設定された周期で、前記ウィンドウの画面の変化を検知する変化検知部と、前記変化検知部によって画面の変化が検知されたウィンドウそれぞれについて画面の変化領域を探索範囲として、当該ウィンドウについてのアノテーションルールに設定されたテンプレート画像と類似する領域を探索し、前記類似する領域に、前記アノテーションルールに設定されるアイコンをオーバレイ表示する表示更新処理を行う表示更新部とを備えることを特徴とする。   In order to solve the above-described problem, the present invention provides a change detection unit that detects a change in the screen of the window at a cycle set for each of a plurality of windows on a desktop, and a change detection unit that detects a change in the screen. For each window in which a change has been detected, a change area of the screen is set as a search range, an area similar to the template image set in the annotation rule for the window is searched, and the similar area is set in the annotation rule. A display update unit that performs a display update process of overlaying the icons.

本発明によれば、複数のウィンドウを対象としてアノテーションの表示を行う場合におけるアノテーションの処理負荷の増大を抑制することができる。   According to the present invention, it is possible to suppress an increase in the processing load of the annotation when displaying the annotation for a plurality of windows.

図1は、各実施形態の表示制御装置の構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of a display control device according to each embodiment. 図2は、アノテーションルールの例を示す図である。FIG. 2 is a diagram illustrating an example of the annotation rule. 図3は、第1の実施形態の表示制御装置の制御部の概要を説明する図である。FIG. 3 is a diagram illustrating an outline of a control unit of the display control device according to the first embodiment. 図4は、第1の実施形態の表示制御装置の制御部を詳細に説明する図である。FIG. 4 is a diagram illustrating in detail a control unit of the display control device according to the first embodiment. 図5は、第1の実施形態の表示制御装置の処理手順の例を示すフローチャートである。FIG. 5 is a flowchart illustrating an example of a processing procedure of the display control device according to the first embodiment. 図6は、第2の実施形態の表示制御装置における正規更新および暫定更新それぞれの探索範囲を説明する図である。FIG. 6 is a diagram illustrating search ranges of regular update and provisional update in the display control device according to the second embodiment. 図7は、第2の実施形態の表示制御装置における正規更新および暫定更新それぞれの更新処理時間を説明する図である。FIG. 7 is a diagram illustrating the update processing time of each of the regular update and the provisional update in the display control device according to the second embodiment. 図8は、第2の実施形態の表示制御装置における正規更新および暫定更新それぞれのポーリング周期により別個に設定された検知を説明する図である。FIG. 8 is a diagram illustrating detection separately set by the regular update and the provisional update polling periods in the display control device according to the second embodiment. 図9は、第2の実施形態の表示制御装置におけるウィンドウの変化傾向のパターンごとの正規更新および暫定更新それぞれのポーリング周期の設定を説明する図である。FIG. 9 is a diagram illustrating the setting of the polling period for each of the regular update and the provisional update for each pattern of the window change tendency in the display control device according to the second embodiment. 図10は、第3の実施形態の表示制御装置の概要を説明する図である。FIG. 10 is a diagram illustrating an overview of the display control device according to the third embodiment. 図11は、表示制御プログラムを実行するコンピュータを示す図である。FIG. 11 is a diagram illustrating a computer that executes a display control program.

以下、図面を参照しながら、本発明を実施するための形態(実施形態)について説明する。なお、本発明は、以下に説明する実施形態に限定されない。また、以下の説明では、アノテーションを適用例とした表示制御について説明するが、アノテーションに限定されるものではない。   Hereinafter, embodiments (embodiments) for implementing the present invention will be described with reference to the drawings. Note that the present invention is not limited to the embodiments described below. In the following description, display control using annotation as an example is described, but is not limited to annotation.

[第1の実施形態]
まず、図1を用いて、各実施形態の表示制御装置10を説明する。表示制御装置10は、コンピュータのデスクトップ上に表示される複数のウィンドウの監視を行い、アノテーションを行う。つまり、表示制御装置10は、複数ウィンドウそれぞれの画面の変化を検知すると、変化したウィンドウにおける変化領域を対象にアノテーションルールを適用する。
[First Embodiment]
First, the display control device 10 of each embodiment will be described with reference to FIG. The display control device 10 monitors a plurality of windows displayed on the desktop of the computer and performs annotation. That is, when detecting a change in the screen of each of the plurality of windows, the display control device 10 applies the annotation rule to a change area in the changed window.

この表示制御装置10は、各ウィンドウの画面の変化を検知するためポーリングを行う。ポーリング周期はウィンドウごとに設定され、例えば、表示制御装置10は、デスクトップ上の複数のウィンドウのうち、頻繁に操作されるため変化の多いウィンドウについてはポーリング周期を短く設定し、それ以外のウィンドウについてはポーリング周期を長く設定する。つまり、表示制御装置10は、アノテーションを行うにあたり、限られたCPU(Central Processing Unit)資源を、変化の多いウィンドウに対して多く割り当て、変化の少ないウィンドウには少なく割り当てる。   The display control device 10 performs polling to detect a change in the screen of each window. The polling cycle is set for each window. For example, the display control apparatus 10 sets a short polling cycle for a window that is frequently operated and changes frequently among a plurality of windows on the desktop, and sets a short polling cycle for other windows. Sets the polling cycle longer. That is, when performing the annotation, the display control device 10 allocates a limited number of CPU (Central Processing Unit) resources to windows with a large change, and allocates small resources to windows with a small change.

このようにすることで、表示制御装置10は、複数のウィンドウを対象にアノテーションを行う場合において、限られたCPU資源を有効活用することができる。その結果、表示制御装置10は、複数のウィンドウを対象にアノテーションを行う場合の処理負荷や処理時間の増大を抑制することができる。   By doing so, the display control device 10 can effectively utilize limited CPU resources when performing annotation on a plurality of windows. As a result, the display control device 10 can suppress an increase in processing load and processing time when performing annotation on a plurality of windows.

(構成)
この表示制御装置10の構成を説明する。図1に示すように、表示制御装置10は、入力部11、出力部12、制御部13および記憶部14を有する。
(Constitution)
The configuration of the display control device 10 will be described. As shown in FIG. 1, the display control device 10 includes an input unit 11, an output unit 12, a control unit 13, and a storage unit 14.

入力部11は、画面のスクロール指示やアクティブウィンドウの選択指示等を入力するものであり、キーボードやマウス等を備える。また、出力部12は、画面を表示するものであり、ディスプレイやスピーカ等を備える。   The input unit 11 is for inputting a screen scroll instruction, an active window selection instruction, and the like, and includes a keyboard, a mouse, and the like. The output unit 12 displays a screen, and includes a display, a speaker, and the like.

記憶部14は、制御部13による各種処理に必要なデータおよびプログラムを格納するが、特に本発明に密接に関連するものとしては、アノテーションDB(Data Base)を有する。例えば、記憶部14は、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置等である。アノテーションDBは、例えば、アノテーション文章の表示対象となるウィンドウごとに複数のアノテーションルールを記憶する。   The storage unit 14 stores data and programs required for various kinds of processing by the control unit 13, and particularly has an annotation DB (Data Base) that is closely related to the present invention. For example, the storage unit 14 is a semiconductor memory device such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk. The annotation DB stores, for example, a plurality of annotation rules for each window for displaying an annotation text.

このアノテーションルールは、例えば、ウィンドウルールとアノテートルールとが親子関係となった構造となっている。制御部13は、まず各ウィンドウに対しウィンドウルールを適用し、当該ウィンドウルールに記述される条件を満たす場合に、当該ウィンドウルールの配下のアノテートルールを適用する。   This annotation rule has, for example, a structure in which a window rule and an annotation rule are in a parent-child relationship. The control unit 13 first applies a window rule to each window, and applies an annotation rule under the window rule when a condition described in the window rule is satisfied.

例えば、アノテーションルールは、図2に示すようなツリー構造であり、ルート直下から順に、ウィンドウルールを記述するwindowタグ、アノテートルールを記述するannotateタグがそれぞれ配置される。windowタグは、title属性を持ち、ここで指定されたウィンドウタイトル文字列にマッチするウィンドウに対して、配下のアノテートルールが適用される。annotateタグは、個々のアノテーションアイコンやメッセージツールチップに関する情報を保持しており、これがアノテーションを生成する直接のルール情報に相当する。なお、imgタグはルール編集やテンプレート画像生成等に必要な要素であるが、ここでは説明を省略する。   For example, the annotation rule has a tree structure as shown in FIG. 2, and a window tag describing a window rule and an annotate tag describing an annotation rule are arranged in order from immediately below the root. The window tag has a title attribute, and the subordinate annotation rules are applied to windows that match the window title character string specified here. The annotate tag holds information on each annotation icon and message tooltip, and corresponds to direct rule information for generating an annotation. Note that the img tag is an element necessary for rule editing, template image generation, and the like, but description thereof is omitted here.

図2に例示するアノテーションルールは、ウィンドウルール(windowタグ)の配下に複数のアノテートルール(annotateタグ)が関連付けられている。このうちウィンドウルールにはルール作成時にユーザが指定したウィンドウタイトル文字列(「電卓」)が保持され、アノテートルールにはルール作成時にユーザが指定したテンプレート画像が保持されている。このようなアノテーションルールに基づき、制御部13は、ウィンドウタイトル「電卓」のウィンドウ上から、指定されたテンプレート画像と類似する画像を探索する(テンプレート画像とのマッチングを行う)。そして、制御部13は、テンプレート画像と類似する画像を発見すると、例えば、当該画像の近傍に所定のアイコンをオーバレイ表示する。   In the annotation rule illustrated in FIG. 2, a plurality of annotation rules (annotate tags) are associated under a window rule (window tag). Among them, the window rule holds the window title character string (“calculator”) specified by the user at the time of rule creation, and the annotate rule holds the template image specified by the user at the time of rule creation. Based on such an annotation rule, the control unit 13 searches for an image similar to the specified template image from the window of the window title “calculator” (matches the template image). When finding an image similar to the template image, the control unit 13 displays a predetermined icon in the vicinity of the image, for example, in an overlay manner.

次に、制御部13を説明する。まず、図3を用いて制御部13の概要を説明する。まず、制御部13は、デスクトップのウィンドウ集合を取得すると、デスクトップ上の全ウィンドウを列挙し、いずれかのウィンドウの位置の変化があれば、これに伴いアノテーションの表示位置を更新する。   Next, the control unit 13 will be described. First, the outline of the control unit 13 will be described with reference to FIG. First, when acquiring the desktop window set, the control unit 13 enumerates all windows on the desktop, and updates the display position of the annotation in accordance with the change in the position of any one of the windows.

また、制御部13は、デスクトップ上の全ウィンドウを列挙し、いずれかのウィンドウの有無について変化があれば、変化のあったウィンドウについてウィンドウタイトルを参照して、アノテーションルールの適用対象となるウィンドウを絞り込む(ウィンドウタイトルでフィルタ)。   Further, the control unit 13 lists all windows on the desktop, and if there is a change in the presence or absence of any of the windows, refers to the window title of the changed window to determine the window to which the annotation rule is applied. Refine (filter by window title).

そして、制御部13は、絞り込んだウィンドウのうち、画面変化のあったウィンドウを列挙する。次に、制御部13は、列挙したウィンドウと当該ウィンドウにおける変化領域の矩形座標を特定すると、特定した矩形座標(差分の領域)に対し、アノテーションルールに設定されるテンプレート画像とのマッチングを行う。そして、制御部13は、テンプレート画像とマッチする画像を発見すると、ウィンドウ上にアノテーションルールに基づくアノテーションの表示(表示更新)を行う。   Then, the control unit 13 lists, among the narrowed windows, windows having a screen change. Next, when the control unit 13 specifies the enumerated windows and the rectangular coordinates of the change area in the windows, the control unit 13 performs matching of the specified rectangular coordinates (difference area) with the template image set in the annotation rule. When finding an image that matches the template image, the control unit 13 displays (updates) the annotation on the window based on the annotation rule.

このように制御部13がウィンドウの画面変化を検知し、前の表示からの差分の領域を対象にアノテーションの表示のためのテンプレート画像とのマッチングを行う。換言すると、制御部13は、画面変化が発生しないウィンドウ、および、ウィンドウの画面変化が発生していない領域については、テンプレート画像とのマッチングの対象外とする。これにより、表示制御装置10は、アノテーションの表示に際し、ウィンドウの画像とテンプレート画像とのマッチングを効率よく行うことができる。   As described above, the control unit 13 detects a change in the screen of the window, and performs matching with the template image for displaying the annotation in the area of the difference from the previous display. In other words, the control unit 13 excludes the window in which the screen change does not occur and the area in which the window does not change in the screen from the target of the matching with the template image. This allows the display control device 10 to efficiently match the window image and the template image when displaying the annotation.

なお、制御部13は、上記のとおり、アノテーションルールの適用対象となるウィンドウに対し当該ウィンドウごとに設定されたポーリング周期で、ウィンドウの画面の変化を検知する。ここで、ウィンドウごとのポーリング周期は、アノテーションルールの適用対象となるウィンドウのうち、ウィンドウ内の画像(画面)変化が少ないウィンドウについては比較的長く設定し、ウィンドウ内の画像(画面)変化が多いウィンドウについては比較的短く設定する。これにより、制御部13は、限られたCPU資源を有効活用し、各ウィンドウの画面の変化の検知を行うことができる。   Note that, as described above, the control unit 13 detects a change in the screen of the window at the polling period set for each window to which the annotation rule is applied. Here, the polling period for each window is set relatively long for windows to which the annotation rule is applied, where the image (screen) change in the window is small, and the image (screen) change in the window is large. Set windows relatively short. Thus, the control unit 13 can detect a change in the screen of each window by effectively using the limited CPU resources.

なお、上記のウィンドウごとのポーリング周期の設定は、表示制御装置10のユーザが手動で設定してもよいが、以下のように自動で設定してもよい。この自動でのポーリング周期の設定について、図4を参照しながら説明する。   The setting of the polling period for each window may be manually set by the user of the display control device 10 or may be automatically set as follows. The automatic setting of the polling cycle will be described with reference to FIG.

例えば、制御部13は、図4に示すように、ウィンドウ内のアノテーションの有無・位置の監視を行う。そして、制御部13は、ウィンドウ内のアノテーションの有無・位置の変化量・変化頻度を、ウィンドウごとに集計する。その後、制御部13は、この集計結果に基づきウィンドウのポーリング周期を変更する。   For example, as shown in FIG. 4, the control unit 13 monitors the presence / absence and position of the annotation in the window. Then, the control unit 13 totalizes the presence / absence / position change amount / change frequency of the annotation in the window for each window. Thereafter, the control unit 13 changes the polling cycle of the window based on the result of the aggregation.

例えば、制御部13は、ウィンドウ内のアノテーションのアイコンの時間あたりの変化の頻度および変化量の少なくともいずれかが増加傾向のウィンドウについては、ポーリング周期を現在よりも短く変更する。一方、制御部13は、ウィンドウ内のアノテーションのアイコンの時間あたりの変化の頻度および変化量の少なくともいずれかが減少傾向のウィンドウについてはポーリング周期を現在よりも長く変更する。   For example, the control unit 13 changes the polling cycle to be shorter than the current time for a window in which at least one of the frequency and the amount of change per time of the icon of the annotation in the window tends to increase. On the other hand, the control unit 13 changes the polling cycle to be longer than the current polling period for a window in which at least one of the frequency and the amount of change per hour of the icon of the annotation in the window tends to decrease.

なお、制御部13は、ウィンドウ内のアノテーションの有無・位置の変化量・変化頻度に加え、ウィンドウ内の画像変化の監視結果(例えば、ウィンドウ内の画像変化の変化量・変化頻度)も考慮してウィンドウのポーリング周期を変更してもよい。さらに、制御部13は、予め設定されたウィンドウの優先順に基づきポーリング周期を変更してもよい。上記のポーリング周期の変更の詳細については後記する。   In addition, the control unit 13 considers the monitoring result of the image change in the window (for example, the change amount / change frequency of the image change in the window) in addition to the presence / absence / position change amount / change frequency of the annotation in the window. The polling period of the window may be changed. Furthermore, the control unit 13 may change the polling cycle based on a preset window priority order. The details of the change of the polling cycle will be described later.

図1に戻り、制御部13を詳細に説明する。制御部13は、変化検知部131と、変化傾向計測部132と、表示更新部133とを備える。破線で示す表示順位評価部134は装備される場合と装備されない場合とがあり、装備される場合については後記する。   Returning to FIG. 1, the control unit 13 will be described in detail. The control unit 13 includes a change detection unit 131, a change tendency measurement unit 132, and a display update unit 133. The display order evaluation unit 134 indicated by a broken line may or may not be equipped, and the case where it is equipped will be described later.

変化検知部131は、デスクトップ上の複数のウィンドウについて、ウィンドウごとに設定されたポーリング周期でポーリングを行い、ウィンドウの画面の変化を検知する。なお、デスクトップ上のウィンドウは多様な変化をする。このため、変化検知部131は、表示更新部133によるウィンドウの画面の表示更新とは非同期に発生する時間遅れが極力少なくなるよう変化を検知する必要がある。よって、変化検知部131は、表示更新部133とは独立したスレッドでポーリング処理を実行する。   The change detection unit 131 performs polling on a plurality of windows on the desktop at a polling cycle set for each window, and detects a change in the window screen. The windows on the desktop change in various ways. For this reason, the change detection unit 131 needs to detect the change so that the time delay that occurs asynchronously with the display update of the window screen by the display update unit 133 is minimized. Therefore, the change detection unit 131 executes the polling process in a thread independent of the display update unit 133.

具体的には、変化検知部131は、ポーリング中にウィンドウに何らかの変化が発生した場合、その種類に応じて対応するフラグ(変化検知フラグ)をTrueにする。フラグの種類は、例えば、デスクトップ上の全ウィンドウの集合の変化(例えば、ウィンドウの有無の変化)、ウィンドウの位置の変化である。そして、変化検知部131は、表示更新部133からウィンドウの変化の有無や変化の種類の問い合わせを受けると、フラグを参照し、Trueの場合に、該当する詳細情報(例えば、変化のあった全ウィンドウのIDリスト等)を取得すると同時にフラグをFalseに戻す。   Specifically, when any change occurs in the window during polling, the change detection unit 131 sets a flag (change detection flag) corresponding to the type to True. The type of flag is, for example, a change in the set of all windows on the desktop (for example, a change in the presence or absence of a window), and a change in the position of the window. When the change detection unit 131 receives an inquiry about the presence / absence of a window change and the type of change from the display update unit 133, the change detection unit 131 refers to the flag, and in the case of True, the corresponding detailed information (for example, Window ID list, etc.) and return the flag to False at the same time.

なお、表示更新部133から変化検知部131へ、ウィンドウに変化がないにも関わらず長時間にわたり問い合わせを繰り返すことを避けるため、以下のようにしてもよい。すなわち、変化検知部131が表示更新部133から次の問い合わせを受けた際、フラグがFalseのままの場合は、表示更新部133は変化検知部131からの変化イベントの通知を待機する状態に移行する。そして、変化検知部131は変化イベントの通知で、表示更新部133のスレッドを復帰状態にするよう動作させる。待機手続きは、例えば、Java(登録商標)言語の場合、Objectクラスのwait()、notifyAll()を使用することにより実現できる。   Note that the following may be performed in order to avoid repeating the inquiry from the display update unit 133 to the change detection unit 131 for a long time even when there is no change in the window. That is, when the change detection unit 131 receives the next inquiry from the display update unit 133 and the flag remains False, the display update unit 133 shifts to a state of waiting for a notification of a change event from the change detection unit 131. I do. Then, the change detection unit 131 operates to return the thread of the display update unit 133 to the return state in response to the notification of the change event. For example, in the case of the Java (registered trademark) language, the wait procedure can be realized by using wait () and notifyAll () of the Object class.

なお、表示更新部133が待機手続きを呼び出した時点で、変化検知部131で保持するフラグの状態が1つでもTrueのときは、待機をせずに処理を続行する。一方、フラグの状態が全てFalseであれば、表示更新部133のスレッドを待機状態(wait())にする。そして、変化検知部131でフラグをTrueにした時点で表示更新部133が待機中であれば、表示更新部133のスレッドを再開(notifyAll())させる。これにより制御部13は、表示更新部133から変化検知部131への無駄な問い合わせを抑制することができるので、ウィンドウの変化検知に伴うCPU負荷を低減できる。   If at least one flag held in the change detecting unit 131 is True when the display updating unit 133 calls the standby procedure, the process is continued without waiting. On the other hand, if all the flag states are False, the thread of the display update unit 133 is set to a wait state (wait ()). Then, if the display update unit 133 is in a standby state when the change detection unit 131 sets the flag to True, the thread of the display update unit 133 is restarted (notifyAll ()). Thereby, the control unit 13 can suppress useless inquiries from the display update unit 133 to the change detection unit 131, so that the CPU load accompanying the detection of the change in the window can be reduced.

また、変化検知部131は、変化傾向計測部132によって計測されたウィンドウ上のアノテーションのアイコンの時間あたりの変化の頻度および変化量に基づき、当該ウィンドウのポーリング周期を以下のように設定してもよい(基準1によるポーリング周期の設定)。   In addition, the change detection unit 131 may set the polling cycle of the window as follows based on the frequency and amount of change per hour of the annotation icon on the window measured by the change tendency measurement unit 132. Good (setting of polling cycle based on criterion 1).

例えば、変化検知部131は、変化傾向計測部132によって計測されたウィンドウ上のアノテーションのアイコンの時間あたりの変化の頻度および変化量の少なくともいずれかが増加傾向のウィンドウについてはポーリング周期を短く設定する。一方、変化検知部131は、変化傾向計測部132によって計測されたウィンドウ上のアノテーションのアイコンの時間あたりの変化の頻度および変化量の少なくともいずれかが減少傾向のウィンドウについてはポーリング周期を長く設定する。   For example, the change detection unit 131 sets a short polling cycle for a window in which at least one of the frequency and the amount of change of the annotation icon on the window measured by the change tendency measurement unit 132 tends to increase. . On the other hand, the change detection unit 131 sets a longer polling cycle for a window in which at least one of the frequency of change and the amount of change of the annotation icon on the window measured by the change trend measurement unit 132 tends to decrease. .

例えば、変化検知部131は、ウィンドウの表示更新を実施しても出力されるアノテーションの内容が直前のフレームとほぼ同じ場合、ポーリング周期が過度に短く設定されている可能性がある。よって、変化検知部131は、ポーリング周期を長く変更する。一方、変化検知部131は、ウィンドウの表示更新を実施して出力されるアノテーションの内容が直前のフレームと異なる場合、ポーリング周期が過度に長く設定されている可能性がある。よって、変化検知部131は、ポーリング周期を短く変更する。   For example, when the content of the output annotation is almost the same as the immediately preceding frame even after the window display is updated, the change detection unit 131 may set the polling cycle too short. Therefore, the change detection unit 131 changes the polling cycle to be longer. On the other hand, when the content of the annotation output after performing the display update of the window is different from that of the immediately preceding frame, the change detection unit 131 may set the polling cycle too long. Therefore, the change detection unit 131 changes the polling cycle to a short period.

なお、変化検知部131は、変化傾向計測部132によって計測されたウィンドウ上のアノテーションのアイコンの時間あたりの変化頻度・変化量のバラつきが増大傾向の場合、ポーリング周期を短く設定し、逆に減少傾向の場合、ポーリング周期を長く設定してもよい。   Note that the change detection unit 131 sets the polling cycle short if the variation in the change frequency / change amount per hour of the annotation icon on the window measured by the change tendency measurement unit 132 is increasing, and conversely decreases it. In the case of the tendency, the polling cycle may be set longer.

さらに、変化検知部131は、上記の基準1によるポーリング周期の設定後、変化傾向計測部132により計測される、ウィンドウの画面変化、アノテーションのアイコンの時間あたりの変化頻度・変化量があまり変化しなくなった場合、ポーリング周期を以下の基準2により変更(調整)してもよい。   Further, after setting the polling cycle based on the above-described criterion 1, the change detecting unit 131 changes the window screen change and the change frequency / change amount of the icon of the annotation per unit time, which are measured by the change tendency measuring unit 132, significantly. When the polling cycle is exhausted, the polling cycle may be changed (adjusted) according to the following criterion 2.

すなわち、変化検知部131は、上記の基準1によるポーリング周期の設定を行った上で、変化傾向計測部132によって計測された、ウィンドウの画面の変化頻度・変化量に対するアノテーションの変化頻度・変化量の割合の計算結果を得る。そして、変化検知部131は、この計算結果の示す値(あるいはその値のバラつき)が減少傾向の場合、基準1で設定したポーリング周期を基準としてポーリング周期を長く変更し、逆に増大傾向の場合、基準1で設定したポーリング周期を基準としてポーリング周期を短く変更する(基準2による調整)。   That is, the change detection unit 131 sets the polling cycle based on the above-described criterion 1 and then changes the frequency and amount of change in the annotation with respect to the change frequency and change amount of the window screen measured by the change tendency measurement unit 132. Obtain the calculation result of the ratio of Then, the change detecting unit 131 changes the polling cycle longer based on the polling cycle set in the criterion 1 when the value indicated by the calculation result (or the variation in the value) is decreasing, and conversely, when the value indicates an increasing trend. Then, the polling cycle is shortened with reference to the polling cycle set in the criterion 1 (adjustment based on the criterion 2).

このように変化検知部131が、ウィンドウのポーリング周期の設定にあたり、基準1に加え基準2による調整を行うことで、ウィンドウの画面変化があった場合に、それが実際にアノテーションの内容に影響するケースが多い場合は、CPU資源が許す範囲で、ポーリング周期をできるだけ短くすることができる。   As described above, when the change detection unit 131 sets the polling period of the window, the change is made based on the reference 2 in addition to the reference 1, so that when the screen of the window changes, the change actually affects the content of the annotation. In many cases, the polling cycle can be shortened as much as possible within the range allowed by the CPU resources.

また、変化検知部131は、基準1に加え基準2による調整を行うことで、ウィンドウの画面変化があった場合に、それが実際にアノテーションの内容に影響するケースが少ない場合は、ポーリング周期を長くすることができる。これにより、変化検知部131は、表示制御装置10のCPU資源が許す範囲でポーリング周期を好適な状態に調整することができる。   In addition, the change detection unit 131 performs the adjustment based on the criterion 2 in addition to the criterion 1 so that when there is a change in the screen of the window, if there are few cases where the change actually affects the content of the annotation, the polling cycle is changed. Can be longer. Thereby, the change detection unit 131 can adjust the polling cycle to a suitable state within a range allowed by the CPU resources of the display control device 10.

なお、変化検知部131は、上記の基準1,2により各ウィンドウのポーリング周期を設定した後、再度、変化傾向計測部132による各ウィンドウの時間あたりの変化の計測結果を取得し、この計測結果に上記の基準1,2を適用して、各ウィンドウのポーリング周期を変更してもよい。つまり、変化検知部131は、各ウィンドウの時間あたりの変化の計測結果に基づき、各ウィンドウのポーリング周期を動的に変更してもよい。   The change detection unit 131 sets the polling cycle of each window according to the above-described criteria 1 and 2, and then obtains the measurement result of the change per window of each window by the change tendency measurement unit 132 again. The above-mentioned criteria 1 and 2 may be applied to change the polling cycle of each window. That is, the change detection unit 131 may dynamically change the polling cycle of each window based on the measurement result of the change per time of each window.

変化傾向計測部132は、複数のウィンドウそれぞれについて時間あたりの変化を計測する。ここでの計測対象は、例えば、表示更新部133によりウィンドウ上に表示されるアノテーションのアイコンの時間あたりの変化頻度や変化量、ウィンドウ自体の時間あたりの画面の変化頻度や変化量等を計測する。   The change tendency measuring unit 132 measures a change per time for each of the plurality of windows. The measurement target here measures, for example, the frequency and amount of change per hour of the icon of the annotation displayed on the window by the display update unit 133, the frequency of change and the amount of change of the screen per unit time of the window itself, and the like. .

表示更新部133は、変化検知部131によって画面の変化が検知されたウィンドウそれぞれについて画面の変化領域を探索範囲として、当該ウィンドウについてのアノテーションルールに設定されたテンプレート画像と類似する(マッチする)画像の領域を探索する。そして、表示更新部133は、テンプレート画像と類似する画像の領域に、アノテーションルールに設定されたアイコンをオーバレイ表示する。   The display update unit 133 sets, as a search range, a change area of the screen for each of the windows in which the change of the screen has been detected by the change detection unit 131, and an image similar (matching) to the template image set in the annotation rule for the window. Search the area of. Then, the display updating unit 133 overlays the icon set in the annotation rule on an area of the image similar to the template image.

このような表示制御装置10によれば、複数のウィンドウを対象にアノテーションを行う場合において、アノテーションに必要なCPU資源を有効活用することができる。その結果、表示制御装置10は、複数のウィンドウを対象にアノテーションを行う場合の処理負荷や処理時間の増大を抑制することができる。   According to such a display control device 10, when performing annotation on a plurality of windows, CPU resources necessary for the annotation can be effectively used. As a result, the display control device 10 can suppress an increase in processing load and processing time when performing annotation on a plurality of windows.

なお、表示制御装置10は、他のアプリケーションがCPU資源を多く消費する場合等、CPU資源が枯渇していることを検知した場合、ポーリング周期を一時的に極端に長くしたり、表示更新の動作自体を緊急停止させたりする機能を備えていてもよい。   When the display control device 10 detects that the CPU resources are depleted, for example, when another application consumes a large amount of the CPU resources, the display control device 10 temporarily increases the polling cycle or temporarily stops the display update operation. It may have a function of stopping itself.

さらに、表示制御装置10は、図1の表示順位評価部134をさらに備えていてもよい。この表示順位評価部134は、デスクトップ上に表示されるウィンドウ間の優先順位を決定する。表示順位評価部134は、例えば、ウィンドウが手前側にあるか、後ろ側にあるかの順(Z軸オーダ)や、ウィンドウの枠の矩形サイズの大きさの順や、ウィンドウの中心がデスクトップ画面の中心に近い順等によりウィンドウの優先順位を決定する。   Further, the display control device 10 may further include the display order evaluation unit 134 in FIG. The display order evaluation unit 134 determines the order of priority between windows displayed on the desktop. The display order evaluation unit 134 determines whether the window is on the near side or on the rear side (Z-axis order), the order of the rectangular size of the window frame, or the center of the window on the desktop screen. The priority of the window is determined in the order close to the center of the window.

また、表示順位評価部134は、デスクトップ上に複数ウィンドウが重なって表示されている場合、ウィンドウの重なり、前後関係を考慮し、ユーザの目に見える領域として実際に露出している面積の大きさの順にウィンドウの優先順位を決定してもよい。   When a plurality of windows are displayed on the desktop in an overlapping manner, the display order evaluation unit 134 considers the overlapping of the windows and the size of the area actually exposed as an area visible to the user in consideration of the context. May be determined in this order.

そして、表示更新部133は、表示順位評価部134により決定された優先順位の高いウィンドウから優先的にアノテーションのアイコンの表示を行う。このようにすることで、表示更新部133は、ユーザにとってより重要度が高い可能性の高いウィンドウについて速やかにアノテーションのアイコンの表示を行うことができる。   Then, the display update unit 133 preferentially displays the annotation icon from the window with the highest priority determined by the display order evaluation unit 134. By doing so, the display update unit 133 can promptly display the annotation icon for a window that is likely to be more important to the user.

また、変化検知部131は、表示順位評価部134により決定された優先順位の高いウィンドウについてはポーリング周期を短く調整し、優先順位の低いウィンドウについてポーリング周期を長く調整してもよい。このようにすることで、表示更新部133は、複数のウィンドウ上にアノテーションの表示を行うにあたり、ユーザにとっての重要度の高さに応じて各ウィンドウにCPU資源を割り当てることができる。   In addition, the change detection unit 131 may adjust the polling cycle to be shorter for the window with the higher priority determined by the display order evaluator 134, and may be longer for the window with the lower priority. By doing so, the display update unit 133 can allocate CPU resources to each window according to the degree of importance to the user when displaying annotations on a plurality of windows.

(処理手順)
次に、図5を用いて、表示制御装置10によるアノテーションの表示の処理手順を説明する。
(Processing procedure)
Next, a processing procedure for displaying an annotation by the display control device 10 will be described with reference to FIG.

まず、表示制御装置10の変化検知部131は、デスクトップ上の全ウィンドウのIDと位置とを取得する(S101:デスクトップ上の全ウィンドウを列挙(位置))。例えば、ウィンドウ表示に用いるOSがMicrosoft Windows(登録商標)系のOSの場合、変化検知部131は、デスクトップ上の全てのウィンドウのウィンドウハンドル(IDに相当)を、EnumWindows()関数を呼び出すことによって取得する。そして、変化検知部131は、ウィンドウのIDと、ウィンドウの位置座標と、ウィンドウタイトル文字列、画面キャプチャ画像を必要に応じてOSから取得する。   First, the change detection unit 131 of the display control device 10 acquires IDs and positions of all windows on the desktop (S101: enumerate (position) all windows on the desktop). For example, when the OS used for window display is a Microsoft Windows (registered trademark) OS, the change detection unit 131 obtains window handles (corresponding to IDs) of all windows on the desktop by calling the EnumWindows () function. get. Then, the change detection unit 131 acquires the window ID, the window position coordinates, the window title character string, and the screen capture image from the OS as necessary.

S101の後、変化検知部131が、デスクトップ上のいずれかのウィンドウに位置の変化があると判定した場合(S102でYes)、制御部13は、全ての対象ウィンドウに対し以下のS103、S104に示すループを開始する。すなわち、表示更新部133は、位置に変更があった(S103でYes)ウィンドウに対し、アノテーション表示位置の変更を行い(S104)、位置に変更のなかった(S103でNo)ウィンドウに対しては、S104の処理はスキップする。そして、制御部13は、全ての対象ウィンドウに対する上記のループを終了すると、S101へ戻る。   After S101, when the change detection unit 131 determines that the position of any of the windows on the desktop has changed (Yes in S102), the control unit 13 proceeds to the following S103 and S104 for all target windows. Start the indicated loop. That is, the display update unit 133 changes the annotation display position for the window whose position has been changed (Yes in S103) (S104), and has changed the annotation display position for the window whose position has not been changed (No in S103). , S104 are skipped. When the control unit 13 completes the above loop for all target windows, the process returns to S101.

S101の後、変化検知部131が、デスクトップ上のいずれのウィンドウにも位置の変化はないと判定した場合(S102でNo)、デスクトップ上の全ウィンドウを列挙するとともに全ウィンドウの有無に関する情報を取得する(S105:デスクトップ上の全ウィンドウを列挙(ウィンドウの有無))。   After S101, if the change detection unit 131 determines that there is no change in the position of any window on the desktop (No in S102), it enumerates all windows on the desktop and obtains information on the presence or absence of all windows. (S105: list all windows on the desktop (presence or absence of windows)).

S105の後、変化検知部131が、デスクトップ上のいずれかのウィンドウの有無について変化があると判定した場合(S106でYes)、全ての対象ウィンドウに対し、以下の処理を実行する。つまり、変化検知部131は、対象ウィンドウのタイトルと、ウィンドウルールに設定される全ウィンドウのタイトルとを比較し、マッチするウィンドウタイトルがあれば(S107:タイトルを比較しマッチする?でYes)、画面変化検知対象リストに登録する(S108)。   After S105, when the change detection unit 131 determines that there is a change in the presence or absence of any window on the desktop (Yes in S106), the following process is performed on all target windows. That is, the change detection unit 131 compares the title of the target window with the titles of all windows set in the window rule, and if there is a matching window title (S107: Compare titles and match? It is registered in the screen change detection target list (S108).

一方、変化検知部131は、マッチするウィンドウタイトルがなければ(S107:タイトルを比較しマッチする?でNo)、S108の処理をスキップする。そして、制御部13は、全ての対象ウィンドウに対し上記のループを終了すると、S101へ戻る。   On the other hand, if there is no matching window title (S107: Compare titles and match ?, No), change detection unit 131 skips the process of S108. Then, when the above-described loop is completed for all the target windows, the control unit 13 returns to S101.

S105の後、変化検知部131が、デスクトップ上のいずれかのウィンドウの有無について変化はないと判定した場合(S106でNo)、画面変化検知対象リストに登録されるウィンドウのうち、画面変化のあったウィンドウを列挙する。つまり、変化検知部131は、ウィンドウの有無について変化のあったウィンドウ集合と、当該ウィンドウ集合のうち画面変化のあったウィンドウの変化領域の矩形座標を列挙する(S109:画面変化のあったウィンドウを列挙(ウィンドウの有無、矩形座標))。   After S105, when the change detection unit 131 determines that there is no change in the presence or absence of any window on the desktop (No in S106), the window change is not detected among the windows registered in the screen change detection target list. List windows In other words, the change detection unit 131 lists the window set in which the presence or absence of the window has changed, and the rectangular coordinates of the change area of the window in which the screen has changed in the window set (S109: The window in which the screen has changed is displayed. Enumeration (presence of window, rectangular coordinates).

S109の後、変化検知部131が、画面変化検知対象リストに登録されるウィンドウに変化があると判定した場合(S110でYes)、つまり、変化検知部131が画面変化を検知した場合、表示更新部133は、全ての画面変化検知済みウィンドウに対し、全てのウィンドウルールの配下のアノテートルールのループを開始する。つまり、表示更新部133は全ての画面変化検知済みウィンドウに対し、該当する全てのウィンドウルールの配下のアノテートルールに設定されるテンプレート画像を探索し、マッチすれば(S111でYes)、アイコン表示を行う(S112)。   After S109, when the change detection unit 131 determines that there is a change in the window registered in the screen change detection target list (Yes in S110), that is, when the change detection unit 131 detects a screen change, the display update is performed. The unit 133 starts a loop of annotation rules under all window rules for all screen change detected windows. That is, the display update unit 133 searches for the template image set in the annotation rule under all the applicable window rules for all the screen change detected windows, and if there is a match (Yes in S111), the icon display is performed. Perform (S112).

一方、表示更新部133は、該当する全てのウィンドウルールの配下のアノテートルールに設定されるテンプレート画像を探索し、マッチしなければ(S111でNo)、S112の処理をスキップする。表示更新部133は、全ての画面変化検知済みウィンドウに対し上記のループを終了すると、S101へ戻る。   On the other hand, the display update unit 133 searches for a template image set in the annotation rule under all the applicable window rules, and if there is no match (No in S111), skips the processing of S112. When the above-described loop ends for all the screen change detected windows, the display update unit 133 returns to S101.

なお、変化検知部131が、画面変化検知対象リストに登録されるいずれのウィンドウにも、変化はないと判定した場合(S110でNo)、S101へ戻る。   If the change detection unit 131 determines that there is no change in any of the windows registered in the screen change detection target list (No in S110), the process returns to S101.

表示制御装置10が上記の処理を行うことで、画面の変化のあったウィンドウの変化領域に絞り込んでアノテーションルールに設定されるテンプレート画像とのマッチングを行い、アノテーションのアイコン表示を行うことができる。   By performing the above-described processing, the display control device 10 narrows down to a change area of a window where a screen has changed, performs matching with a template image set in an annotation rule, and can display an icon of an annotation.

[第2の実施形態]
次に、第2の実施形態の表示制御装置10を説明する。第2の実施形態の表示制御装置10は、表示更新部133が、ウィンドウ上のアノテーションの表示更新を行う際、正規更新処理および暫定更新処理(特許文献2参照)を行う。そして、変化検知部131は、ウィンドウの画面の変化を検知する際、正規更新処理および暫定更新処理それぞれの処理に個別のポーリング周期を設定することを特徴とする。なお、以下、正規更新処理は、適宜、正規更新と略し、暫定更新処理は、適宜、暫定更新と略す。
[Second embodiment]
Next, a display control device 10 according to a second embodiment will be described. When the display update unit 133 updates the display of the annotation on the window, the display control device 10 of the second embodiment performs a regular update process and a tentative update process (see Patent Document 2). Then, when detecting a change in the window screen, the change detection unit 131 sets an individual polling cycle for each of the regular update process and the provisional update process. Hereinafter, the regular update process is abbreviated as “regular update”, and the provisional update process is appropriately abbreviated as “temporary update”.

まず、図6を参照して、正規更新処理および暫定更新処理の概要を説明する。前記したとおり、表示更新部133は、画面の変化のあったウィンドウの変化領域を探索範囲としてアノテーションルールに設定されるテンプレート画像とのマッチングを行う。ここで、ウィンドウの変化領域すべてを探索範囲として上記のテンプレート画像とのマッチングを行うと時間がかかる可能性がある。そこで、テンプレート画像とのマッチングを行う際の探索範囲として、ウィンドウの変化領域のうち、特にテンプレート画像とマッチする可能性の高い領域に絞り込んだ領域を用いる。   First, an outline of the regular update process and the provisional update process will be described with reference to FIG. As described above, the display update unit 133 performs matching with the template image set in the annotation rule with the change area of the window where the screen has changed as the search range. Here, it may take a long time to perform matching with the above-described template image using the entire changing region of the window as a search range. Therefore, as a search range when performing matching with the template image, an area narrowed down to an area that is particularly likely to match the template image is used among the change areas of the window.

例えば、図6に示すウィンドウの領域601が変化領域であった場合を考える。この場合、例えば、ウィンドウの縦方向のスクロールが行われたことを想定し、領域601の中の前回のフレームのマッチ位置から垂直方向にスウィープした領域、すなわち変化領域に対して水平方向に絞り込んだ領域602を抽出する。そして、表示更新部133は、領域601を探索範囲としたテンプレート画像とのマッチングを行い、アノテーションの表示更新を行う(正規更新処理)。また、表示更新部133は、領域602を探索範囲としたテンプレート画像とのマッチングを行い、アノテーションの表示更新を行う(暫定更新処理)。この暫定更新処理は、正規更新に比べて正確性は保証されないものの、正規更新に比べて探索範囲を狭い範囲にしているので正規更新に比べて応答が速いというメリットがある。   For example, consider a case where the window area 601 shown in FIG. 6 is a change area. In this case, for example, assuming that scrolling of the window in the vertical direction has been performed, an area that is vertically swept from the match position of the previous frame in the area 601, that is, a narrowed area is narrowed down to a change area The region 602 is extracted. Then, the display update unit 133 performs matching with the template image having the area 601 as a search range, and updates the display of the annotation (regular update processing). Further, the display update unit 133 performs matching with the template image having the area 602 as a search range, and updates the display of the annotation (provisional update processing). Although the accuracy of this provisional update process is not guaranteed as compared to the regular update, the provisional update process has a merit that the response is faster than the regular update because the search range is narrower than the regular update.

例えば、図7に示すように、ウィンドウの画面の変化(例えば、画面のスクロール移動)を検知すると、表示更新部133は、正規更新と暫定更新それぞれのスレッドでテンプレート画像とのマッチングを行う。ここで、正規更新には時間がかかるため、画面の変化の検知が追い付かず、正規更新のループが戻ったときに変化検知部131のフラグがTrueであることから、すぐに次のループを実行する。一方、暫定更新は比較的短時間で終わるため、暫定更新のループが戻ったときに待機状態に移行し、変化検知部131のスレッドからのイベント通知により、暫定更新のループが再開され、図7に示すようにウィンドウの画面のスクロール方向に追随してアノテーションアイコンの表示も更新される。   For example, as shown in FIG. 7, when a change in the screen of the window (for example, scroll movement of the screen) is detected, the display update unit 133 performs matching with the template image in each thread of the regular update and the provisional update. Here, since the normal update takes time, the detection of the screen change cannot catch up, and the flag of the change detection unit 131 is True when the normal update loop returns, so that the next loop is immediately executed. I do. On the other hand, since the provisional update is completed in a relatively short time, when the provisional update loop returns, the process shifts to the standby state, and the event update from the thread of the change detection unit 131 restarts the provisional update loop. The display of the annotation icon is also updated following the scroll direction of the window screen as shown in FIG.

このように、表示更新部133が、正規更新と暫定更新の両方を行う場合において、前記した変化検知フラグを用いることにより、更新の処理時間が単位期間より長くなっても、短くなっても、正しい更新結果を得る動作が可能である。   As described above, in the case where the display update unit 133 performs both the regular update and the provisional update, by using the change detection flag, the update processing time can be longer or shorter than the unit period. An operation to obtain a correct update result is possible.

すなわち、単位期間を長くすると、ウィンドウの画面が変化してもすぐには通知されず、所定の期間の前後の変化がまとめて表示更新部133に通知される。その結果、表示制御装置10のCPUの処理能力に余力があっても、それを消費せず更新処理は待機状態となる。一方、単位期間を短くすると1回の更新処理の実行途中で複数回の変化検知が表示更新部133に通知される。これにより、表示制御装置10のCPUの処理能力が高ければ1対1に近い比率で通知ごとに更新するが、CPUの処理能力が低ければそれに応じて複数回の変化内容を1回の更新でまとめて処理する。これらの動きによって、待ち合わせ時間のロスや細かすぎる検知の無駄は発生するが、動作の基本的なしくみが破綻することはない。なお、ここでの単位期間の意味は、画面の変化が連続的に発生している場合に変化検知部131から通知される検知イベントの時間間隔であり、これは変化検知のポーリング周期と同じである。   That is, if the unit period is lengthened, the display update unit 133 is not notified immediately when the screen of the window changes, but is notified collectively of changes before and after the predetermined period. As a result, even if the CPU of the display control device 10 has sufficient processing capacity, the CPU does not consume it and the update processing is in a standby state. On the other hand, when the unit period is shortened, a plurality of change detections are notified to the display update unit 133 during the execution of one update process. Thereby, if the processing capability of the CPU of the display control device 10 is high, the update is performed for each notification at a ratio close to one-to-one, but if the processing capability of the CPU is low, the content of a plurality of changes is correspondingly updated by one update. Process together. These movements cause a loss of waiting time and wasteful detection too fine, but do not break the basic mechanism of the operation. Here, the meaning of the unit period is a time interval of a detection event notified from the change detection unit 131 when a change in the screen occurs continuously, and is the same as the polling cycle of the change detection. is there.

以上の作用を応用することで、変化検知部131は、上記の暫定更新および正規更新のそれぞれにポーリング周期を設定し、画面の変化の検知を個別に通知する構成に発展させることができる。   By applying the above operation, the change detecting unit 131 can develop a configuration in which a polling cycle is set for each of the provisional update and the regular update, and notification of a screen change is individually notified.

すなわち、図8に示すように、変化検知部131は、正規更新向けの変化継続中の検知と、暫定更新向けの変化継続中の検知とをそれぞれ別個に設定したポーリング周期で実行する。そして、変化検知部131の正規更新向けのポーリングによりウィンドウの変化が検知されると、表示更新部133は、ウィンドウの変化領域を対象に正規更新の計算(例えば、テンプレート画像とのマッチング等)を行い、結果領域を得る。また、変化検知部131の暫定更新向けのポーリングにより投機範囲(上記の変化領域から、テンプレート画像とマッチする可能性の高い領域に投機的に絞り込んだ領域)を対象に暫定更新の計算を行い、結果領域を得る。そして、表示更新部133は、この結果領域にアノテーションのアイコンの表示更新を行う。   That is, as illustrated in FIG. 8, the change detection unit 131 performs the detection of the ongoing change for the regular update and the detection of the continuous change for the provisional update at polling periods that are separately set. Then, when the change of the window is detected by the polling for the regular update of the change detecting unit 131, the display updating unit 133 calculates the regular update (for example, matching with the template image or the like) for the window change area. To obtain the result area. In addition, the provisional update is calculated for the speculative range (an area speculatively narrowed down from the above-mentioned change area to an area that is highly likely to match the template image) by polling for the provisional update by the change detection unit 131, Get the result area. Then, the display update unit 133 updates the display of the annotation icon in the result area.

その後、変化傾向計測部132は、ウィンドウの変化傾向の計測を行い、変化検知部131は、その計測結果を用いて、正規更新と暫定更新それぞれのポーリング周期のバランス調整を行う。例えば、変化検知部131は、ウィンドウの変化傾向に基づき、以下の方針に基づき、正規更新と暫定更新それぞれのポーリング周期の設定(バランス調整)を行う。ここでは、ウィンドウの変化傾向が、図9(a)に示すパターン1、図9(b)に示すパターン2のいずれかである場合を例に説明する。   After that, the change tendency measuring unit 132 measures the change tendency of the window, and the change detecting unit 131 adjusts the balance between the polling periods of the regular update and the provisional update using the measurement result. For example, the change detection unit 131 performs setting (balance adjustment) of the polling cycle of each of the regular update and the provisional update based on the following tendency based on the change tendency of the window. Here, the case where the change tendency of the window is one of the pattern 1 shown in FIG. 9A and the pattern 2 shown in FIG. 9B will be described as an example.

パターン1は、ウィンドウ内においてテンプレート画像とのマッチ対象の存在位置の変化の割合よりも、マッチ対象の存在有無の変化の割合の方が大きいパターンである。例えば、頻繁にGUI要素(マッチ対象)が出現/消滅する場合が該当する。また、パターン2は、ウィンドウ内においてテンプレート画像とのマッチ対象の存在有無の変化の割合よりも、マッチ対象の存在位置の変化の割合の方が大きいパターンである。例えば、画面の縦方向のスクロールが常時発生する場合が該当する。   Pattern 1 is a pattern in which the ratio of change in the presence or absence of a match target is greater than the ratio of change in the position of the match target with the template image in the window. For example, a case where a GUI element (match target) frequently appears / disappears. Pattern 2 is a pattern in which the ratio of the change in the location of the match target is greater than the ratio of the change in the presence or absence of the match target in the window. For example, this corresponds to a case where scrolling in the vertical direction of the screen always occurs.

パターン1のように、マッチ対象の「存在有無」の変化の割合が大きい場合、マッチ対象の位置の変化等にあわせてスムーズにアニメーション表示することはあまり重要ではないので、正規更新を手厚く実施した方が好ましい。よって、変化検知部131は、図9の(c)に示すように、正規更新のポーリング周期を短く設定し、暫定更新のポーリング周期を長く設定する。   As in Pattern 1, when the rate of change in the “existence” of the match target is large, it is not very important to display a smooth animation in accordance with the change in the position of the match target, etc. Is more preferred. Therefore, as illustrated in FIG. 9C, the change detecting unit 131 sets the regular update polling cycle short and sets the provisional update polling cycle long.

一方、パターン2のように、画面のスクロールが常時発生する等、マッチ対象の「存在位置」の変化の割合が大きい場合、位置の変化にあわせてリアルタイムにアニメーション表示することは重要なので、暫定更新を手厚く実施した方が好ましい。よって、変化検知部131は、図9の(c)に示すように、正規更新のポーリング周期を長く設定し、暫定更新のポーリング周期を短く設定する。   On the other hand, when the rate of change in the “existing position” of the match target is large, such as when the screen scrolls constantly, as in pattern 2, it is important to display the animation in real time in accordance with the position change. It is preferable to carry out the procedure carefully. Therefore, as illustrated in FIG. 9C, the change detection unit 131 sets a longer regular update polling cycle and a shorter temporary update polling cycle.

例えば、変化傾向計測部132は、デスクトップ上の複数のウィンドウそれぞれについてアノテーションにより表示されるアイコンの時間あたりの出現および消滅による変化の頻度(第1の変化の頻度)を測定する。また、変化傾向計測部132は、デスクトップ上の複数のウィンドウそれぞれについてアノテーションにより表示されるアイコンの位置の移動による変化の頻度(第2の変化の頻度)を計測する。   For example, the change tendency measuring unit 132 measures the frequency of the change (first change frequency) due to the appearance and disappearance of the icon displayed by the annotation per time for each of the plurality of windows on the desktop. Further, the change tendency measuring unit 132 measures the frequency of change (second change frequency) due to the movement of the position of the icon displayed by the annotation for each of the plurality of windows on the desktop.

そして、変化検知部131は、上記の第1の変化の頻度に対する第2の変化の頻度の割合が所定値より大きいウィンドウについて、当該ウィンドウにおける正規更新のポーリング周期の長さに対する、暫定更新のポーリング周期の長さの割合が所定値よりも大きくなるよう設定する。一方、変化検知部131は、上記の第1の変化の頻度に対する第2の変化の頻度の割合が所定値以下であるウィンドウについて、当該ウィンドウにおける正規更新のポーリング周期の長さに対する、暫定更新ポーリング周期の長さの割合を所定値以下になるよう設定する。   Then, for a window in which the ratio of the frequency of the second change to the frequency of the first change is larger than a predetermined value, the change detection unit 131 performs polling of the provisional update with respect to the length of the regular update polling cycle in the window. The period length ratio is set so as to be larger than a predetermined value. On the other hand, for a window in which the ratio of the frequency of the second change to the frequency of the first change is equal to or less than a predetermined value, the change detection unit 131 determines whether the temporary update polling is performed for the length of the regular update polling cycle in the window. The ratio of the length of the cycle is set to be equal to or less than a predetermined value.

つまり、変化検知部131は、マッチ対象の存在有無の変化頻度に対して、マッチ対象の位置の変化頻度が大きい場合、正規更新のポーリング周期に対する暫定更新のポーリング周期の割合を小さくする。一方、変化検知部131は、マッチ対象の存在有無の変化頻度に対して、位置の変化頻度が小さい場合、正規更新のポーリング周期に対する暫定更新のポーリング周期の割合を大きくする。   That is, when the change frequency of the position of the match target is higher than the change frequency of the presence or absence of the match target, the change detection unit 131 reduces the ratio of the polling cycle of the provisional update to the polling cycle of the regular update. On the other hand, when the change frequency of the position is smaller than the change frequency of the presence or absence of the match target, the change detection unit 131 increases the ratio of the provisional update polling cycle to the regular update polling cycle.

このように、変化検知部131は、ウィンドウそれぞれについて、当該ウィンドウのマッチ対象の有無の変化とマッチ対象の位置の変化のいずれの変化傾向が強いかに応じて、当該ウィンドウの正規更新および暫定更新のポーリング周期を設定する。   As described above, for each window, the change detection unit 131 performs the regular update and the tentative update of the window in accordance with which change tendency of the change of the presence or absence of the match target and the change of the position of the match target is stronger. Set the polling cycle of

なお、変化検知部131は、例えば、暫定更新のポーリング周期を正規更新のポーリング周期を基準としたときの割合を変えることで変化させる。この場合、正規更新のポーリング周期を長くするとそれに応じて暫定更新のポーリング周期は長くなり、正規更新のポーリング周期を短くするとそれに応じて暫定更新のポーリング周期は短くなる。   The change detecting unit 131 changes the polling cycle of the provisional update by changing the ratio based on the polling cycle of the regular update, for example. In this case, if the regular update polling period is made longer, the provisional update polling period becomes longer accordingly, and if the regular update polling period is made shorter, the provisional update polling period becomes shorter correspondingly.

ここで正規更新のポーリング周期よりも暫定更新のポーリング周期が長くなると、暫定更新の処理の前に正規更新の処理が完了し、その結果をもとに暫定更新の処理がキックされる(図8に示す「+」のリンク)。これにより、暫定更新の処理の必要性がなくなるため、実質的に暫定更新のポーリング処理は意味がなくなる。つまり、ポーリング周期による暫定更新単独での処理は一旦キャンセルされ、直近の暫定更新出力からのポーリング待機が改めて開始される。そのため、正規更新のポーリング周期に対する暫定更新のポーリング周期の割合は最大でも1.0とする。なお、正規更新のポーリング周期は、第1の実施形態で説明した、基準1および基準2を用いた調整を行えばよいが、このときはアノテーションにより表示されるアイコンの位置は無視して、アイコンの有無の変化について監視すればよい。   Here, if the polling cycle of the provisional update is longer than the polling cycle of the regular update, the regular update processing is completed before the provisional update processing, and the provisional update processing is kicked based on the result (FIG. 8). "+" Link shown below). This eliminates the necessity of the provisional update process, and the provisional update polling process is substantially meaningless. That is, the process of the provisional update alone in the polling cycle is temporarily canceled, and the polling standby from the latest provisional update output is started again. Therefore, the ratio of the provisional update polling cycle to the regular update polling cycle is set to 1.0 at the maximum. The regular update polling cycle may be adjusted using the criteria 1 and the criteria 2 described in the first embodiment. In this case, the position of the icon displayed by the annotation is ignored and the polling cycle of the icon is ignored. It is only necessary to monitor for changes in the presence or absence.

[第3の実施形態]
次に、第3の実施形態の表示制御装置10を説明する。第3の実施形態の表示制御装置10は、画面変化の終了を検知したとき、これをトリガとしてウィンドウの表示更新を行うことにより、ウィンドウの更新漏れや不正な表示内容が残る等の現象を防止することを特徴とする。
[Third Embodiment]
Next, a display control device 10 according to a third embodiment will be described. The display control device 10 according to the third embodiment, when detecting the end of the screen change, triggers the update of the window display to prevent phenomena such as omission of window update and incorrect display contents remaining. It is characterized by doing.

第1の実施形態や第2の実施形態のように、表示制御装置10の変化検知部131がポーリング周期を動的に変化させると、ポーリング周期が極端に長く設定された状態が発生する可能性がある。   As in the first embodiment and the second embodiment, when the change detection unit 131 of the display control device 10 dynamically changes the polling cycle, a state in which the polling cycle is set to be extremely long may occur. There is.

画面変化がスクロール操作のように長時間の連続的なものではなく、例えば1フレームだけの変化の場合、ユーザは静止画面画像がさし替わったと認識するので、変化後の静止画面画像に対しタイムラグなくアノテーションアイコンの表示更新が行われることを期待する。このときに、ポーリング周期が極端に長く設定されていると、変化後のタイムラグが長くなり、連続変化中の表示更新の周期が間引かれるよりも、ユーザエクスペリエンスが大きく低下してしまう。このため、画面が静止したときの表示更新は、ポーリング周期に関係なく、速やかに開始されることが望ましい。   If the screen change is not continuous for a long time like a scroll operation, but is, for example, a change of only one frame, the user recognizes that the still screen image has been replaced. It is expected that the display of the annotation icon will be updated. At this time, if the polling cycle is set to be extremely long, the time lag after the change will be long, and the user experience will be greatly reduced as compared with the case where the display update cycle during continuous change is thinned out. For this reason, it is desirable that the display update when the screen is stopped be started promptly regardless of the polling cycle.

そこで、第3の実施形態の表示制御装置10の変化検知部131は、複数のウィンドウそれぞれの画面の変化の停止(終了)を検知する。そして、変化検知部131によって画面の変化の停止が検知された場合、表示更新部133は、ポーリング周期を待たずに更新処理を行う。なお、表示制御装置10が第2の実施形態のように正規更新および暫定更新を行う場合、図10に示すように、表示更新部133は、画面の変化の終了が検知されると、正規更新のポーリング周期を待たずに正規更新を行う。   Therefore, the change detection unit 131 of the display control device 10 according to the third embodiment detects the stop (end) of the change of the screen of each of the plurality of windows. Then, when the change detecting unit 131 detects the stop of the screen change, the display updating unit 133 performs the updating process without waiting for the polling cycle. When the display control device 10 performs the regular update and the provisional update as in the second embodiment, as illustrated in FIG. 10, the display update unit 133 performs the regular update when the end of the screen change is detected. Regular update without waiting for the polling cycle of.

このようにすることで、表示制御装置10は、画面の変化の終了を検知した場合、必ず1回、正規更新による表示更新が実施されることが保証される。その結果、ポーリング周期が極端に長く設定された場合や表示更新処理の途中でポーリング周期が大幅に変化した場合でも、表示制御装置10はアノテーションのアイコンの表示更新を正確に行うことができる。また、ポーリング周期が極端に長く設定されている場合等でも、画面の変化が収束したとき、表示制御装置10はすみやかに表示更新を行うことができる。   In this way, when the display control device 10 detects the end of the screen change, it is guaranteed that the display update by the regular update is always performed once. As a result, even when the polling cycle is set to be extremely long or when the polling cycle changes significantly during the display update process, the display control device 10 can accurately update the display of the annotation icon. Further, even when the polling cycle is set to be extremely long, when the screen change converges, the display control device 10 can promptly update the display.

なお、変化検知部131による画面の変化の停止(終了)の検知は、例えば、通常のビットマップ比較による方法(特許文献1参照)の他に、スキャンラインによる方法(特許文献3参照)等、低負荷で速やかに実施する方法を組み合せることも可能である。   The change detection unit 131 detects the stop (end) of the screen change, for example, in addition to a normal bitmap comparison method (see Patent Document 1), a scan line method (see Patent Document 3), and the like. It is also possible to combine methods that are implemented quickly with low load.

[その他の実施形態]
なお、前記した第2の実施形態の表示制御装置10において正規更新および暫定更新にそれぞれ1つずつスレッドを割り当てる構成ととっているが、処理するスレッド数を増やして並列度を高めた構成をとることもできる。例えば、変化検知部131は、対象ウィンドウごとに変化検知フラグを1セットずつ保持するとともに、対象ウィンドウごとにスレッドを割り当てて実行することが考えられる。このとき、対象ウィンドウと同数のスレッドを動的に生成してもよいし、あらかじめ所定の個数のスレッドを生成しておき、それと同数のグループに対象ウィンドウ集合を分割して割り当ててもよい。グループ分けに際しては、表示順位評価部134、変化傾向計測部132の出力を利用して、対象ウィンドウ要素の優先順位を決定し、優先度区分により分割することが考えられる。これら並列度を高めた構成は、正規更新および暫定更新の各スレッド内で、ポーリングループ1回につき同時に処理する対象ウィンドウが多数になる頻度が高い場合に有効である。
[Other Embodiments]
In the display control device 10 of the second embodiment, one thread is assigned to each of the regular update and the provisional update, but the number of threads to be processed is increased to increase the degree of parallelism. You can also. For example, it is conceivable that the change detection unit 131 holds a set of change detection flags for each target window, and allocates and executes a thread for each target window. At this time, the same number of threads as the target window may be dynamically generated, or a predetermined number of threads may be generated in advance, and the target window set may be divided and assigned to the same number of groups. At the time of grouping, it is conceivable that the priority of the target window element is determined by using the output of the display order evaluation unit 134 and the change tendency measuring unit 132, and the target window element is divided by the priority division. The configuration in which the degree of parallelism is increased is effective when the number of windows to be processed simultaneously per polling loop frequently increases in each thread of the regular update and the provisional update.

また、上記の実施形態で述べた表示制御装置10は、表示制御装置10の機能を実現する表示制御プログラムを所望の情報処理装置(コンピュータ)にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記の表示制御プログラムを情報処理装置に実行させることにより、情報処理装置を表示制御装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等がその範疇に含まれる。また、表示制御装置10を、クラウドサーバに実装してもよい。   Further, the display control device 10 described in the above embodiment can be implemented by installing a display control program for realizing the function of the display control device 10 in a desired information processing device (computer). For example, by causing the information processing device to execute the display control program provided as package software or online software, the information processing device can function as the display control device 10. The information processing device referred to here includes a desktop or notebook personal computer. In addition, the information processing apparatus includes a mobile communication terminal such as a smartphone, a mobile phone, or a PHS (Personal Handyphone System), and a PDA (Personal Digital Assistants). Further, the display control device 10 may be mounted on a cloud server.

以下に、上記の表示制御プログラムを実行するコンピュータの一例を説明する。図11は、表示制御プログラムを実行するコンピュータを示す図である。図11に示すように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有する。これらの各部は、バス1080によって接続される。   Hereinafter, an example of a computer that executes the display control program will be described. FIG. 11 is a diagram illustrating a computer that executes a display control program. As shown in FIG. 11, the computer 1000 has, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These components are connected by a bus 1080.

メモリ1010は、ROM(Read Only Memory)1011およびRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。ディスクドライブ1100には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース1050には、例えば、マウス1110およびキーボード1120が接続される。ビデオアダプタ1060には、例えば、ディスプレイ1130が接続される。   The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012. The ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. In the disk drive 1100, for example, a removable storage medium such as a magnetic disk or an optical disk is inserted. For example, a mouse 1110 and a keyboard 1120 are connected to the serial port interface 1050. For example, a display 1130 is connected to the video adapter 1060.

ここで、図11に示すように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093およびプログラムデータ1094を記憶する。前記した各実施形態で説明した各種データや情報は、例えばハードディスクドライブ1090やメモリ1010に記憶される。   Here, as shown in FIG. 11, the hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. The various data and information described in the above embodiments are stored in, for example, the hard disk drive 1090 or the memory 1010.

そして、CPU1020が、ハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した各手順を実行する。   Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the hard disk drive 1090 into the RAM 1012 as necessary, and executes the above-described procedures.

なお、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムに係るプログラムモジュール1093やプログラムデータ1094は、LAN(Local Area Network)やWAN(Wide Area Network)等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。   The program module 1093 and the program data 1094 relating to the program are not limited to being stored in the hard disk drive 1090. For example, the program module 1093 and the program data 1094 are stored in a removable storage medium and read out by the CPU 1020 via the disk drive 1100 or the like. You may. Alternatively, the program module 1093 and the program data 1094 relating to the program are stored in another computer connected via a network such as a LAN (Local Area Network) or a WAN (Wide Area Network), and are stored in the CPU 1020 via a network interface 1070. May be read.

10 表示制御装置
131 変化検知部
132 変化傾向計測部
133 表示更新部
134 表示順位評価部
Reference Signs List 10 display control device 131 change detection unit 132 change tendency measurement unit 133 display update unit 134 display order evaluation unit

Claims (5)

デスクトップ上の複数のウィンドウについて前記ウィンドウごとに設定された周期で、前記ウィンドウの画面の変化を検知する変化検知部と、
前記変化検知部によって画面の変化が検知されたウィンドウそれぞれについて画面の変化領域を探索範囲として、当該ウィンドウについてのアノテーションルールに設定されたテンプレート画像と類似する領域を探索し、探索された前記類似する領域に、前記アノテーションルールに設定されるアイコンをオーバレイ表示する表示更新処理を行う表示更新部と
前記複数のウィンドウそれぞれについて前記表示更新部によりオーバレイ表示される前記アイコンの時間あたりの出現および消滅による変化の頻度である第1の変化の頻度と、前記アイコンの位置の移動による変化の頻度である第2の変化の頻度とを計測する計測部とを備え
前記表示更新部は、
前記変化検知部によって検知された前記ウィンドウそれぞれの画面の変化に応じて、前回探索された前記類似する領域を基に生成した所定の領域を前記探索範囲として、前記テンプレート画像と類似した領域を探索し、探索された前記類似する領域に前記アイコンをオーバレイ表示する暫定更新処理、および、前記所定の領域よりも広い領域を前記探索範囲として、前記テンプレート画像と類似した領域を探索し、探索された前記類似する領域に前記アイコンをオーバレイ表示する正規更新処理を実行し、
前記変化検知部は、
前記計測部によって計測された前記第1の変化の頻度に対する前記第2の変化の頻度の割合が第1の所定値より大きいウィンドウについて、当該ウィンドウにおける前記正規更新処理に要する画面の変化を検知する周期の長さに対する前記暫定更新処理に要する画面の変化を検知する周期の長さの割合を第2の所定値よりも大きく設定し、
前記計測部によって計測された前記第1の変化の頻度に対する前記第2の変化の頻度の割合が前記第1の所定値以下であるウィンドウについて、当該ウィンドウにおける前記正規更新処理に要する画面の変化を検知する周期の長さに対する前記暫定更新処理に要する画面の変化を検知する周期の長さの割合を前記第2の所定値以下に設定する
ことを特徴とする表示制御装置。
A change detection unit that detects a change in the screen of the window at a cycle set for each of the windows on the desktop,
The change area of the screen as the search range for each window change screen is detected by the change detection unit, the window to search an area similar to the set template image in the annotation rules for the similar is searched A display update unit that performs a display update process of overlay-displaying an icon set in the annotation rule in an area ;
A first change frequency, which is a frequency of a change due to the appearance and disappearance of the icon over time displayed by the display update unit with respect to each of the plurality of windows, and a change frequency due to a movement of the position of the icon. A measurement unit for measuring the frequency of the second change ,
The display update unit,
In accordance with a change in the screen of each of the windows detected by the change detection unit, a predetermined area generated based on the previously searched similar area is used as the search range to search for an area similar to the template image. A provisional update process of overlaying the icon on the searched similar area, and searching for an area similar to the template image using the area wider than the predetermined area as the search range. Performing a regular update process of overlaying the icon in the similar area,
The change detection unit,
For a window in which the ratio of the frequency of the second change to the frequency of the first change measured by the measurement unit is larger than a first predetermined value, a change in a screen required for the normal update process in the window is detected. Setting a ratio of a period length for detecting a change in the screen required for the provisional update process to a period length to be larger than a second predetermined value;
For a window in which the ratio of the frequency of the second change to the frequency of the first change measured by the measurement unit is equal to or less than the first predetermined value, a change in the screen required for the normal update process in the window is determined. A display control device , wherein a ratio of a length of a cycle for detecting a change in a screen required for the provisional update processing to a length of a cycle for detection is set to be equal to or less than the second predetermined value .
前記変化検知部は、
前記複数のウィンドウそれぞれの画面の変化の停止を検知し、
前記表示更新部は、
前記変化検知部によって前記画面の変化の停止が検知された場合には、前記表示更新処理を実行する
ことを特徴とする請求項1に記載の表示制御装置。
The change detection unit,
Detecting the stop of the screen change of each of the plurality of windows,
The display update unit,
The display control device according to claim 1, wherein the display update process is performed when the change detection unit detects that the change of the screen has stopped.
前記変化検知部は、
前記デスクトップ上の複数のウィンドウのうち、指定された所定のウィンドウタイトルを持つウィンドウを対象に前記画面の画像の変化を検知する
ことを特徴とする請求項1に記載の表示制御装置。
The change detection unit,
The display control device according to claim 1, wherein a change in an image on the screen is detected for a window having a designated predetermined window title among the plurality of windows on the desktop.
表示制御装置で実行される表示制御方法であって、
デスクトップ上の複数のウィンドウについて前記ウィンドウごとに設定された周期で、前記ウィンドウの画面の変化を検知する変化検知ステップと、
前記変化検知ステップによって画面の変化が検知されたウィンドウそれぞれについて画面の変化領域を探索範囲として、当該ウィンドウについてのアノテーションルールに設定されテンプレート画像と類似する領域を探索し、探索された前記類似する領域に、前記アノテーションルールに設定されるアイコンをオーバレイ表示する表示更新ステップと
前記複数のウィンドウそれぞれについて前記表示更新部によりオーバレイ表示される前記アイコンの時間あたりの出現および消滅による変化の頻度である第1の変化の頻度と、前記アイコンの位置の移動による変化の頻度である第2の変化の頻度とを計測する計測ステップとを含み、
前記表示更新部ステップでは、
前記変化検知ステップによって検知された前記ウィンドウそれぞれの画面の変化に応じて、前回探索された前記類似する領域を基に生成した所定の領域を前記探索範囲として、前記テンプレート画像と類似した領域を探索し、探索された前記類似する領域に前記アイコンをオーバレイ表示する暫定更新処理、および、前記所定の領域よりも広い領域を前記探索範囲として、前記テンプレート画像と類似した領域を探索し、探索された前記類似する領域に前記アイコンをオーバレイ表示する正規更新処理を実行し、
前記変化検知ステップでは、
前記計測ステップによって計測された前記第1の変化の頻度に対する前記第2の変化の頻度の割合が第1の所定値より大きいウィンドウについて、当該ウィンドウにおける前記正規更新処理に要する画面の変化を検知する周期の長さに対する前記暫定更新処理に要する画面の変化を検知する周期の長さの割合を第2の所定値よりも大きく設定し、
前記計測ステップによって計測された前記第1の変化の頻度に対する前記第2の変化の頻度の割合が前記第1の所定値以下であるウィンドウについて、当該ウィンドウにおける前記正規更新処理に要する画面の変化を検知する周期の長さに対する前記暫定更新処理に要する画面の変化を検知する周期の長さの割合を前記第2の所定値以下に設定する
ことを特徴とする表示制御方法。
A display control method executed by a display control device,
A change detection step of detecting a change in the screen of the window at a cycle set for each of the windows on the desktop,
For each of the windows in which the screen change has been detected by the change detection step, a screen change area is set as a search range, an area similar to the template image set in the annotation rule for the window is searched, and the searched similar area is searched. A display update step of overlaying an icon set in the annotation rule ,
A first change frequency, which is a frequency of a change due to the appearance and disappearance of the icon over time displayed by the display update unit with respect to each of the plurality of windows, and a change frequency due to a movement of the position of the icon. the step of measuring the frequency of the second variation seen including,
In the display update step,
In accordance with a change in the screen of each of the windows detected in the change detection step, a predetermined area generated based on the previously searched similar area is used as the search range to search for an area similar to the template image. A provisional update process of overlaying the icon on the searched similar area, and searching for an area similar to the template image using the area wider than the predetermined area as the search range. Performing a regular update process of overlaying the icon in the similar area,
In the change detecting step,
For a window in which the ratio of the frequency of the second change to the frequency of the first change measured in the measurement step is larger than a first predetermined value, a change in a screen required for the normal update process in the window is detected. Setting a ratio of a period length for detecting a change in the screen required for the provisional update process to a period length to be larger than a second predetermined value;
For a window in which the ratio of the frequency of the second change to the frequency of the first change measured in the measuring step is equal to or less than the first predetermined value, a change in a screen required for the normal update process in the window is determined. A display control method , wherein a ratio of a length of a cycle for detecting a change in a screen required for the provisional update processing to a length of a cycle for detection is set to be equal to or less than the second predetermined value .
請求項4に記載の表示制御方法が含む各ステップをコンピュータに実行させるための表示制御プログラム。 Display control program for executing each step included in the display control method according to the computer to claim 4.
JP2016201413A 2016-10-13 2016-10-13 Display control device, display control method, and display control program Active JP6662748B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016201413A JP6662748B2 (en) 2016-10-13 2016-10-13 Display control device, display control method, and display control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016201413A JP6662748B2 (en) 2016-10-13 2016-10-13 Display control device, display control method, and display control program

Publications (2)

Publication Number Publication Date
JP2018063564A JP2018063564A (en) 2018-04-19
JP6662748B2 true JP6662748B2 (en) 2020-03-11

Family

ID=61967847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016201413A Active JP6662748B2 (en) 2016-10-13 2016-10-13 Display control device, display control method, and display control program

Country Status (1)

Country Link
JP (1) JP6662748B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947770B2 (en) * 2020-08-07 2024-04-02 Nippon Telegraph And Telephone Corporation Display control device, display control method, and display control program
CN112698762B (en) * 2020-12-31 2023-04-18 维沃移动通信(杭州)有限公司 Icon display method and device and electronic equipment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0740047B2 (en) * 1990-12-28 1995-05-01 株式会社アルテック Digital display meter display method
KR100982511B1 (en) * 2003-10-08 2010-09-16 삼성전자주식회사 Apparatus and method for remote controlling
JP2007058677A (en) * 2005-08-25 2007-03-08 Canon Inc Display control device and method
JP2010146266A (en) * 2008-12-18 2010-07-01 Seiko Epson Corp Display device and program
US9715396B2 (en) * 2012-06-29 2017-07-25 Nippon Telegraph And Telephone Corporation Terminal device, annotation method, computer system, and computer program
JP6220079B2 (en) * 2014-09-08 2017-10-25 日本電信電話株式会社 Display control apparatus, display control method, and display control program

Also Published As

Publication number Publication date
JP2018063564A (en) 2018-04-19

Similar Documents

Publication Publication Date Title
JP6195182B2 (en) Application scenario identification method, power consumption management method, apparatus, and terminal device
US8479117B2 (en) Intelligent window sizing for graphical user interfaces
US8176433B2 (en) Application window area change surveillance
CN112540806B (en) Method and device for rendering small program page, electronic equipment and storage medium
CN109361948B (en) Interface management method, intelligent terminal and readable storage medium
JP2013130800A (en) Information processor, screen output system, screen output control method and program
WO2016039273A1 (en) Display control device, display control method, and display control program
JP6662748B2 (en) Display control device, display control method, and display control program
US9939982B2 (en) Control of application based on user operation on information processing apparatus
CN111667199A (en) Workflow construction method and device, computer equipment and storage medium
CN113641936B (en) Method, device, electronic equipment and storage medium for page skip
CN112506854A (en) Method, device, equipment and medium for storing page template file and generating page
JP2009252083A (en) Information processing apparatus, window display method and display control program
CN113986107A (en) Touch processing method and device based on graphic display system, electronic equipment and storage medium
CN111522619B (en) Method for automatically reducing refresh frequency of extended screen based on software type and mouse pointer position
CN116069497A (en) Method, apparatus, device and storage medium for executing distributed task
US11947770B2 (en) Display control device, display control method, and display control program
CN113126928B (en) File moving method and device, electronic equipment and medium
CN113641929B (en) Page rendering method, device, electronic equipment and computer readable storage medium
US10845953B1 (en) Identifying actionable content for navigation
CN113312050B (en) Content display method, device, equipment and medium
US10296190B2 (en) Spatially organizing communications
CN113138827B (en) Method, device, electronic equipment and medium for displaying data
CN111797933B (en) Template matching method, device, electronic equipment and storage medium
CN114329278B (en) Processing method and device of search result page, electronic equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200129

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: 20200212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200213

R150 Certificate of patent or registration of utility model

Ref document number: 6662748

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150