JP2011040808A - Information processor, control method and program - Google Patents

Information processor, control method and program Download PDF

Info

Publication number
JP2011040808A
JP2011040808A JP2009183469A JP2009183469A JP2011040808A JP 2011040808 A JP2011040808 A JP 2011040808A JP 2009183469 A JP2009183469 A JP 2009183469A JP 2009183469 A JP2009183469 A JP 2009183469A JP 2011040808 A JP2011040808 A JP 2011040808A
Authority
JP
Japan
Prior art keywords
area
update
movement
detected
coordinate position
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.)
Pending
Application number
JP2009183469A
Other languages
Japanese (ja)
Inventor
Yuji Furuta
勇次 古田
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.)
NEC Embedded Products Ltd
Original Assignee
NEC Embedded Products Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Embedded Products Ltd filed Critical NEC Embedded Products Ltd
Priority to JP2009183469A priority Critical patent/JP2011040808A/en
Publication of JP2011040808A publication Critical patent/JP2011040808A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an information processor reducing an area to be detected as an updating area. <P>SOLUTION: The information processor (100) compares a frame to be encoded and an encoded reference frame, and detects an image area included in both the frame to be encoded and the reference frame, and moving its position on a screen, as a moving area (step S4). Then, the image of the detected moving area is copied to a coordinate position after movement on the reference frame, and motion compensation is executed (step S6). Then, the image area different in the reference frame after copying and the frame to be encoded is detected as the updating area (step S8). On the basis of the relation between the coordinate position of the detected moving area and the coordinate position of the detected updating area, the detected updating area is divided further. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、ユーザインタフェース表示を制御する技術に関する。   The present invention relates to a technique for controlling user interface display.

近年、サーバ装置と、シンクライアント端末と、がネットワークを介して接続して構成するシンクライアントシステムがある。   In recent years, there is a thin client system in which a server device and a thin client terminal are connected via a network.

シンクライアントシステムは、シンクライアント端末に必要最小限の機能を搭載し、殆どの処理をサーバ装置側で実行し、シンクライアント端末側は、サーバ装置側で実行した処理結果を受信し、その処理結果をシンクライアント端末の画面に表示することにしている。これにより、端末からの情報漏洩を防止したり、端末側でのアプリケーション管理の容易性を図ったりすることを可能にしている。   The thin client system is equipped with the minimum necessary functions in the thin client terminal and executes most of the processing on the server device side, and the thin client terminal side receives the processing result executed on the server device side, and the processing result Is displayed on the screen of the thin client terminal. This makes it possible to prevent information leakage from the terminal and to facilitate application management on the terminal side.

また、シンクライアントシステムでは、サーバ装置で実行したアプリケーションプログラムの描画データをシンクライアント端末に転送し、シンクライアント端末の画面に表示することにしている。   In the thin client system, drawing data of an application program executed on the server device is transferred to the thin client terminal and displayed on the screen of the thin client terminal.

このため、描画データの処理量が大きくなったり、サーバ装置に接続されるシンクライアント端末の台数が多くなったりすると、描画データをシンクライアント端末に転送するためのサーバ装置での処理の負荷が増大し、応答時間の低下やシンクライアント端末の接続台数の制限などの問題が生じたりすることになる。   For this reason, if the processing amount of drawing data increases or the number of thin client terminals connected to the server device increases, the processing load on the server device for transferring drawing data to the thin client terminal increases. However, problems such as a decrease in response time and a limitation on the number of connected thin client terminals may occur.

このようなことから、ソフトウェアによる描画データの表示制御技術として、1画面内で描画更新された描画データ部分を含む矩形の更新領域のみを切り出し、更に、これを必要に応じて圧縮して転送する技術について開示された文献がある(例えば、特許文献1参照)。これにより、コンピュータ画面の描画データの転送に伴うデータ量を削減し、サーバ装置の処理の負荷を軽減することを可能にしている。   For this reason, as a drawing data display control technique by software, only a rectangular update area including a drawing data portion that has been updated in one screen is cut out, and this is compressed and transferred as necessary. There is a document disclosing the technology (for example, see Patent Document 1). As a result, the amount of data associated with the transfer of drawing data on the computer screen can be reduced, and the processing load on the server device can be reduced.

また、MPEG(Moving Picture Expert Group)などの動画像符号化方式では、符号化すべき符号化対象フレームと、既に符号化済みの参照フレームと、を比較し、移動ベクトル及び移動領域を検出し、その移動ベクトル及び移動領域を基に動き補償を行い、伝送符号量の削減を図っている。なお、移動ベクトル及び移動領域の検出には、全探索法と呼ばれる手法が一般的に使用されている。   In addition, in a moving picture coding system such as MPEG (Moving Picture Expert Group), a frame to be coded is compared with a reference frame that has already been coded, and a movement vector and a movement area are detected. Motion compensation is performed based on the movement vector and the movement area to reduce the transmission code amount. Note that a technique called a full search method is generally used to detect a movement vector and a movement area.

しかし、全探索法は非常に大きな演算量を必要とする。このため、最初に粗く、広く探索し、その評価結果に応じて狭く、高精度に探索する高速化手法について開示された文献がある(例えば、特許文献2参照)。   However, the full search method requires a very large amount of computation. For this reason, there is a document that discloses a high-speed technique that first searches coarsely and widely, narrows according to the evaluation result, and searches with high accuracy (see, for example, Patent Document 2).

特表2004−503862号公報JP-T-2004-503862 特開2004−129099号公報JP 2004-129099 A

上述した特許文献1に開示されているシンクライアントシステムにおいても、コンピュータ画面の描画データをサーバ装置からシンクライアント端末に転送する際に、サーバ装置側でウィンドウ等の画像領域の移動を検出し、該検出した画像領域を基に、動き補償を行うことで転送データ量を削減することができる。   Even in the thin client system disclosed in Patent Document 1 described above, when the drawing data on the computer screen is transferred from the server device to the thin client terminal, the server device detects the movement of an image area such as a window, The amount of transfer data can be reduced by performing motion compensation based on the detected image area.

しかし、ウィンドウ等の画像領域が1フレームの時間内に移動する距離は、画素数にして100画素以上に及ぶ可能性もあるが、多くは、数画素〜数十画素程度である。   However, the distance that an image region such as a window moves within one frame time may reach 100 pixels or more, but in many cases, it is about several pixels to several tens of pixels.

このため、サイズの大きなウィンドウ等は、図1に示すように、移動前後で一般的に重複することになる。図1は、移動前後のウィンドウA'を示す図である。移動前のウィンドウA'を含む参照フレームと、移動後のウィンドウA'を含む符号化対象フレームと、を比較すると、図1に示すように、移動前後の移動領域B'を検出することができる。移動前後の移動領域B'が検出できると、その移動前後の移動領域B'を基に、動き補償を行うことができる。移動前の移動領域B'の始点の座標位置は、(X1’,Y1’)であり、終点の座標位置は、(X2’,Y2’)である。また、移動後の移動領域B'の始点の座標位置は、(nX1’,nY1’)であり、終点の座標位置は、(nX2’,nY2’)である。   For this reason, large windows or the like generally overlap before and after movement as shown in FIG. FIG. 1 shows a window A ′ before and after movement. When the reference frame including the window A ′ before the movement and the encoding target frame including the window A ′ after the movement are compared, as shown in FIG. 1, the movement area B ′ before and after the movement can be detected. . If the movement area B ′ before and after movement can be detected, motion compensation can be performed based on the movement area B ′ before and after movement. The coordinate position of the start point of the movement area B ′ before the movement is (X1 ′, Y1 ′), and the coordinate position of the end point is (X2 ′, Y2 ′). Further, the coordinate position of the start point of the movement area B ′ after the movement is (nX1 ′, nY1 ′), and the coordinate position of the end point is (nX2 ′, nY2 ′).

なお、動き補償を行った参照フレームと、符号化対象フレームと、を比較し、1画面内で描画更新された描画データ部分を含む矩形の更新領域を切り出す際に、画面全体を1つの更新領域検出域に設定すると、図2に示すように、移動前の移動領域B'に相当する領域全体が更新領域D'として検出される。その結果、動き補償(コピー)領域と重複する領域部分も更新領域D'として検出され、符号量が増大してしまうことになる。更新領域D'は、図2に示す点線部分で囲まれた矩形の領域を示す。   It should be noted that when the reference frame subjected to motion compensation is compared with the encoding target frame and a rectangular update area including a drawing data portion that has been drawn and updated in one screen is cut out, the entire screen is set as one update area. When the detection area is set, as shown in FIG. 2, the entire area corresponding to the movement area B ′ before the movement is detected as the update area D ′. As a result, the region overlapping the motion compensation (copy) region is also detected as the update region D ′, and the code amount increases. The update area D ′ indicates a rectangular area surrounded by a dotted line portion shown in FIG.

なお、図1、図2に示すウィンドウA'は、 Windows(登録商標) XPを想定しており、外枠部分C'も移動領域B'として検出することになる。このため、ウィンドウA'の外形サイズと、移動領域B'の外形サイズと、が同じになっている。   The window A ′ shown in FIGS. 1 and 2 is assumed to be Windows (registered trademark) XP, and the outer frame portion C ′ is also detected as the movement region B ′. For this reason, the outer size of the window A ′ is the same as the outer size of the moving area B ′.

しかし、図3に示すように、ウィンドウAがWindows Vista(登録商標)等の場合には、外枠部分Cが透明ガラスのように透けるため、ウィンドウAの外枠部分Cの裏に重なっている画像が外枠部分Cから透けて見えることになる。図3の例の場合は、移動前のウィンドウAの外枠部分Cには、背景画像が透けて見えることになる。その結果、図3に示すように、移動前のウィンドウAを含む参照フレームと、移動後のウィンドウAを含む符号化対象フレームと、を比較すると、外枠部分Cを除いた移動前後の移動領域Bを検出することになる。このため、ウィンドウAの外形サイズと、移動領域Bの外形サイズと、が異なっている。図3に示す移動前の移動領域Bの始点の座標位置は、(X1,Y1)であり、終点の座標位置は、(X2,Y2)である。また、移動後の移動領域Bの始点の座標位置は、(nX1,nY1)であり、終点の座標位置は、(nX2,nY2)である。   However, as shown in FIG. 3, when the window A is Windows Vista (registered trademark) or the like, the outer frame portion C is transparent like transparent glass, and therefore overlaps the back of the outer frame portion C of the window A. The image is seen through the outer frame portion C. In the example of FIG. 3, the background image can be seen through the outer frame portion C of the window A before the movement. As a result, as shown in FIG. 3, when the reference frame including the window A before the movement is compared with the encoding target frame including the window A after the movement, the movement area before and after the movement excluding the outer frame portion C is compared. B will be detected. For this reason, the outer size of the window A is different from the outer size of the moving area B. The coordinate position of the start point of the movement area B before the movement shown in FIG. 3 is (X1, Y1), and the coordinate position of the end point is (X2, Y2). Further, the coordinate position of the start point of the movement area B after the movement is (nX1, nY1), and the coordinate position of the end point is (nX2, nY2).

この移動前後の移動領域Bを基に動き補償を行った参照フレームと、符号化対象フレームと、を比較し、1画面内で描画更新された描画データ部分を含む矩形の更新領域を切り出す際に、画面全体を1つの更新領域検出域に設定すると、図4に示すように、移動前後の移動領域Bを包含するような領域が更新領域Dとして検出される。更新領域Dは、図4に示す点線部分で囲まれた領域を示す。その結果、図4に示すように、図2に示す更新領域D'よりも過大な更新領域Dが検出され、符号量が更に増大してしまうことになる。   When a reference frame that has been subjected to motion compensation based on the moving area B before and after the movement is compared with the encoding target frame, and when a rectangular update area that includes a drawing data portion that has been updated in one screen is cut out When the entire screen is set as one update area detection area, an area including the movement area B before and after the movement is detected as the update area D as shown in FIG. The update area D indicates an area surrounded by a dotted line portion shown in FIG. As a result, as shown in FIG. 4, an update area D that is larger than the update area D ′ shown in FIG. 2 is detected, and the code amount further increases.

本発明は、上記事情に鑑みてなされたものであり、上述した課題である、更新領域として検出する領域を低減することができる情報処理装置、制御方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above circumstances, and an object thereof is to provide an information processing apparatus, a control method, and a program that can reduce an area to be detected as an update area, which is the problem described above.

かかる目的を達成するために、本発明は、以下の特徴を有することとする。   In order to achieve this object, the present invention has the following features.

<情報処理装置>
本発明にかかる情報処理装置は、
符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出手段と、
前記移動領域検出手段で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償手段と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出手段と、を有し、
前記更新領域検出手段は、
前記移動領域検出手段で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする。
<Information processing device>
An information processing apparatus according to the present invention includes:
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. A moving area detecting means for detecting a moving image area as a moving area;
Motion compensation means for copying the image of the movement area detected by the movement area detection means to the coordinate position after movement on the reference frame;
Update area detecting means for detecting an image area different between the reference frame after copying and the encoding target frame as an update area;
The update area detecting means includes
The update area is further divided based on the relationship between the coordinate position of the movement area detected by the movement area detection means and the coordinate position of the update area.

<制御方法>
本発明にかかる制御方法は、
情報処理装置で行う制御方法であって、
符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出工程と、
前記移動領域検出工程で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償工程と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出工程と、を有し、
前記更新領域検出工程は、
前記移動領域検出工程で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする。
<Control method>
The control method according to the present invention includes:
A control method performed by an information processing apparatus,
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. A moving area detecting step of detecting a moving image area as a moving area;
A motion compensation step of copying the image of the movement region detected in the movement region detection step to the coordinate position after movement on the reference frame;
An update area detecting step of detecting an image area that is different between the reference frame after copying and the encoding target frame as an update area, and
The update region detection step includes
The update area is further divided based on the relationship between the coordinate position of the movement area detected in the movement area detection step and the coordinate position of the update area.

<プログラム>
本発明にかかるプログラムは、
情報処理装置に実行させるプログラムであって、
符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出処理と、
前記移動領域検出処理で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償処理と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出処理と、を、コンピュータに実行させ、
前記更新領域検出処理は、
前記移動領域検出処理で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする。
<Program>
The program according to the present invention is:
A program to be executed by an information processing apparatus,
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. Moving area detection processing for detecting a moving image area as a moving area;
A motion compensation process for copying the image of the moving area detected in the moving area detection process to the coordinate position after movement on the reference frame;
An update area detection process for detecting, as an update area, an image area that is different between the reference frame after copying and the encoding target frame,
The update area detection process includes:
The update area is further divided based on the relationship between the coordinate position of the movement area detected by the movement area detection process and the coordinate position of the update area.

本発明によれば、更新領域として検出する領域を低減することができる。   According to the present invention, the area to be detected as the update area can be reduced.

透明でない外枠C'を含むウィンドウA'(Windows XP)を右下に移動した場合を示す図である。It is a figure which shows the case where window A '(Windows XP) including outer frame C' which is not transparent is moved to the lower right. 画面全体を更新領域検出域に設定した場合を示す図である。It is a figure which shows the case where the whole screen is set to the update area | region detection area. 透明な外枠Cを含むウィンドウA(Windows Vista)を右下に移動した場合を示す図である。It is a figure which shows the case where the window A (Windows Vista) containing the transparent outer frame C is moved to the lower right. 画面全体を更新領域検出域に設定した場合を示す図である。It is a figure which shows the case where the whole screen is set to the update area | region detection area. 本実施形態のシンクライアントシステムのシステム構成例を示す図である。It is a figure which shows the system configuration example of the thin client system of this embodiment. シンクライアントシステムを構成するサーバ装置100の内部構成例を示す図である。3 is a diagram illustrating an internal configuration example of a server apparatus 100 that configures a thin client system. FIG. シンクライアントシステムにおける一連の処理動作例を示す図である。It is a figure which shows a series of processing operation examples in a thin client system. シンクライアントシステムにおける一連の処理動作例を説明するための第1の図である。It is a 1st figure for demonstrating a series of processing operation examples in a thin client system. シンクライアントシステムにおける一連の処理動作例を説明するための第2の図である。It is a 2nd figure for demonstrating a series of processing operation examples in a thin client system. 更新領域検出域設定部24の構成例を示す図である。3 is a diagram illustrating a configuration example of an update area detection area setting unit 24. FIG. 更新領域検出域設定部24の処理動作例を示す図である。6 is a diagram illustrating an example of processing operation of an update area detection area setting unit 24. FIG. 更新領域検出域設定部24の処理動作例を説明するための第1の図である。FIG. 10 is a first diagram for explaining an example of processing operation of an update area detection area setting unit 24; 更新領域検出域設定部24の処理動作例を説明するための第2の図である。FIG. 10 is a second diagram for explaining an example of the processing operation of the update area detection area setting unit 24. 更新領域検出部25の構成例を示す図である。3 is a diagram illustrating a configuration example of an update region detection unit 25. FIG. 更新領域検出部25の処理動作例を示す図である。6 is a diagram illustrating an example of processing operation of an update area detection unit 25. FIG. 更新領域検出部25の処理動作例(更新領域1を分割する場合)を説明するための第1の図である。FIG. 10 is a first diagram for explaining an example of processing operation of the update region detection unit 25 (when the update region 1 is divided). 更新領域検出部25の処理動作例(更新領域1を分割する場合)を説明するための第2の図である。FIG. 10 is a second diagram for explaining an example of processing operation of the update region detection unit 25 (in the case where the update region 1 is divided). 更新領域検出部25の処理動作例(更新領域1を分割する場合)を説明するための第3の図である。FIG. 11 is a third diagram for explaining an example of processing operation of the update region detection unit 25 (in the case where the update region 1 is divided). 更新領域検出部25の処理動作例(更新領域2を分割する場合)を説明するための第4の図である。FIG. 10 is a fourth diagram for explaining an example of processing operation of the update region detection unit 25 (when the update region 2 is divided). 更新領域検出部25の処理動作例(更新領域2を分割する場合)を説明するための第5の図である。FIG. 10 is a fifth diagram for explaining an example of processing operation of the update region detection unit 25 (when the update region 2 is divided). 更新領域検出部25の処理動作例(更新領域2を分割する場合)を説明するための第6の図である。It is a 6th figure for demonstrating the processing operation example (when dividing the update area | region 2) of the update area | region detection part 25. FIG. 更新領域検出部25の処理動作例(更新領域1、2を分割した場合)を説明するための第7の図である。FIG. 14 is a seventh diagram for explaining an example of processing operation of the update region detection unit 25 (when the update regions 1 and 2 are divided). 第2の実施形態の更新領域検出部25の処理動作例を示す図である。It is a figure which shows the processing operation example of the update area | region detection part 25 of 2nd Embodiment. 第2の実施形態の更新領域検出部25の処理動作例を説明するための図である。It is a figure for demonstrating the processing operation example of the update area | region detection part 25 of 2nd Embodiment.

<本実施形態のシンクライアントシステムの概要>
まず、図5、図7を参照しながら、本実施形態のシンクライアントシステムの概要について説明する。
<Outline of Thin Client System of this Embodiment>
First, an outline of the thin client system of this embodiment will be described with reference to FIGS.

本実施形態のシンクライアントシステムは、サーバ装置100と、シンクライアント端末200-1〜n(nは、任意の整数)と、がネットワーク(NW)を介して接続して構成している。   The thin client system of the present embodiment is configured by connecting the server device 100 and thin client terminals 200-1 to 200-n (n is an arbitrary integer) via a network (NW).

本実施形態のサーバ装置100は、図7に示すように、符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、符号化対象フレームと参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する(ステップS4)。そして、そのステップS4で検出した移動領域の画像を、参照フレーム上で移動後の座標位置に複写し、動き補償を行う(ステップS6)。次に、複写後の参照フレームと符号化対象フレームとで相違する画像領域を更新領域として検出する(ステップS8)。この時、ステップS4で検出した移動領域の座標位置と、ステップS8で検出した更新領域の座標位置と、の関係を基に、ステップS8で検出した更新領域を更に分割する。   As illustrated in FIG. 7, the server apparatus 100 according to the present embodiment compares the encoding target frame to be encoded with the encoded reference frame, and sets both the encoding target frame and the reference frame. An image area that is an existing image area and whose position on the screen is moving is detected as a movement area (step S4). Then, the image of the movement area detected in step S4 is copied to the coordinate position after movement on the reference frame, and motion compensation is performed (step S6). Next, an image area that is different between the copied reference frame and the encoding target frame is detected as an update area (step S8). At this time, the update area detected in step S8 is further divided based on the relationship between the coordinate position of the movement area detected in step S4 and the coordinate position of the update area detected in step S8.

これにより、サーバ装置100は、更新領域として検出する領域を低減し、シンクライアント端末200-1〜nに出力する転送データ量を削減することができる。このため、ネットワークNWの負荷を軽減し、効率的なデータ転送を行うことができる。以下、添付図面を参照しながら、本実施形態のシンクライアントシステムについて詳細に説明する。   Thereby, the server apparatus 100 can reduce the area detected as the update area and reduce the amount of transfer data output to the thin client terminals 200-1 to 200-n. For this reason, it is possible to reduce the load on the network NW and perform efficient data transfer. Hereinafter, the thin client system of this embodiment will be described in detail with reference to the accompanying drawings.

<シンクライアントシステムのシステム構成例>
まず、図5を参照しながら、本実施形態のシンクライアントシステムのシステム構成例について説明する。
<System configuration example of thin client system>
First, a system configuration example of the thin client system of the present embodiment will be described with reference to FIG.

本実施形態のシンクライアントシステムは、サーバ装置100と、シンクライアント端末200-1〜n(nは、任意の整数)と、がネットワークNWを介して接続して構成している。   The thin client system of the present embodiment is configured by connecting the server device 100 and the thin client terminals 200-1 to 200-n (n is an arbitrary integer) via a network NW.

サーバ装置100は、サーバ装置100で管理する各種情報をシンクライアント端末200-1〜nに送信する装置である。   The server device 100 is a device that transmits various information managed by the server device 100 to the thin client terminals 200-1 to 200-n.

シンクライアント端末200-1〜nは、サーバ装置100から送られてきた各種情報を受信し、該受信した情報をシンクライアント端末200-1〜nの画面に表示する装置である。   The thin client terminals 200-1 to 200-n are devices that receive various types of information sent from the server device 100 and display the received information on the screens of the thin client terminals 200-1 to 200-n.

<サーバ装置100の内部構成例>
次に、図6を参照しながら、本実施形態のサーバ装置100の内部構成例について説明する。
<Internal configuration example of server device 100>
Next, an example of the internal configuration of the server device 100 of this embodiment will be described with reference to FIG.

本実施形態のサーバ装置100は、記憶部10と、制御部20と、通信部30と、を有して構成する。   The server device 100 according to the present embodiment includes a storage unit 10, a control unit 20, and a communication unit 30.

<記憶部10>
記憶部10は、各種情報を記憶する。本実施形態の記憶部10は、符号化対象フレーム記憶部11と、参照フレーム記憶部12と、を含んで構成する。
<Storage unit 10>
The storage unit 10 stores various information. The storage unit 10 of the present embodiment includes an encoding target frame storage unit 11 and a reference frame storage unit 12.

符号化対象フレーム記憶部11は、符号化対象の符号化対象フレームを記憶する。制御部20は、符号化対象となる映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶する。例えば、図示しないコンピュータのディスプレイ画面のカラー映像信号をアナログキャプチャあるいはディジタルキャプチャし、そのキャプチャした1画面分の映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶する。また、図示しないコンピュータのディスプレイ画面のカラー映像信号を生成するためにコンピュータ内部に格納している画像情報からデータをキャプチャし、そのキャプチャした1画面分の映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶することも可能である。   The encoding target frame storage unit 11 stores an encoding target frame to be encoded. The control unit 20 stores the video signal to be encoded in the encoding target frame storage unit 11 as an encoding target frame. For example, a color video signal on a display screen of a computer (not shown) is analog or digital captured, and the captured video signal for one screen is stored in the encoding target frame storage unit 11 as an encoding target frame. In addition, in order to generate a color video signal of a computer display screen (not shown), data is captured from image information stored inside the computer, and the captured video signal for one screen is used as an encoding target frame. It can also be stored in the frame storage unit 11.

参照フレーム記憶部12は、符号化対象フレーム記憶部11に記憶されている符号化対象フレームを符号化する際に使用する符号化済みの参照フレームを記憶する。   The reference frame storage unit 12 stores an encoded reference frame used when encoding the encoding target frame stored in the encoding target frame storage unit 11.

<制御部20>
制御部20は、サーバ装置100を統括して制御する。本実施形態の制御部20は、移動ベクトル検出部21と、移動領域検出部22と、動き補償部23と、更新領域検出域設定部24と、更新領域検出部25と、領域符号化部26と、を含んで構成する。
<Control unit 20>
The control unit 20 controls the server device 100 in an integrated manner. The control unit 20 of the present embodiment includes a movement vector detection unit 21, a movement region detection unit 22, a motion compensation unit 23, an update region detection region setting unit 24, an update region detection unit 25, and a region encoding unit 26. And comprising.

移動ベクトル検出部21は、符号化対象フレームと、参照フレームと、を比較し、主要な1つの移動ベクトルを検出する。主要な移動ベクトルとは、1以上の移動ベクトルの内の支配的なものを意味する。例えば、コンピュータの画面で地図スクロールとマウスカーソル移動が同時に発生した場合、移動ベクトルの大部分は地図スクロールが占めるため、地図スクロールによる移動ベクトルを主要な移動ベクトルとして検出する。なお、移動ベクトルの検出方法は、特に限定するものではなく、あらゆる検出方法が適用可能である。なお、符号化対象フレームと、参照フレームと、を画面全体で比較することで、ウィンドウ等の比較的大きなオブジェクト単位での移動ベクトルが主要な移動ベクトルとして検出することができる。   The movement vector detection unit 21 compares the encoding target frame and the reference frame, and detects one main movement vector. The main movement vector means a dominant one of one or more movement vectors. For example, when a map scroll and a mouse cursor move simultaneously on the computer screen, the map scroll occupies most of the movement vector, so the movement vector by the map scroll is detected as the main movement vector. In addition, the detection method of a movement vector is not specifically limited, All the detection methods are applicable. Note that by comparing the encoding target frame and the reference frame over the entire screen, a movement vector in a relatively large object unit such as a window can be detected as a main movement vector.

移動領域検出部22は、符号化対象フレームと参照フレームとの何れにも存在する同一または類似の画像領域であって、画面上での位置が移動ベクトル検出部21で検出された移動ベクトルだけ変化している画像領域を移動領域として検出する。なお、移動領域の検出方法は、特に限定するものではなく、後述する動き補償を行うことが可能であれば、あらゆる検出方法が適用可能である。   The movement area detection unit 22 is the same or similar image area that exists in both the encoding target frame and the reference frame, and the position on the screen changes by the movement vector detected by the movement vector detection unit 21. The detected image area is detected as a moving area. Note that the detection method of the moving region is not particularly limited, and any detection method can be applied as long as motion compensation described later can be performed.

動き補償部23は、移動領域検出部22で検出された移動領域を、参照フレーム内で移動ベクトルが示す移動先に複写し、動き補償後の参照フレームを生成する。なお、動き補償の方法は、特に限定するものではなく、例えば、MPEG等に規定されているあらゆる動き補償の方法が適用可能である。   The motion compensation unit 23 copies the movement region detected by the movement region detection unit 22 to the movement destination indicated by the movement vector in the reference frame, and generates a reference frame after motion compensation. Note that the motion compensation method is not particularly limited, and for example, any motion compensation method defined in MPEG or the like is applicable.

更新領域検出域設定部24は、フレーム上に1以上の更新領域検出域を設定する。   The update area detection area setting unit 24 sets one or more update area detection areas on the frame.

更新領域検出部25は、更新領域検出域設定部24により設定された更新領域検出域毎に、動き補償後の参照フレームと符号化対象フレームとで相違する矩形の画像領域を更新領域として検出する。また、更新領域検出部25は、その検出した更新領域の位置座標と、移動領域検出部22が検出した移動領域の座標位置と、の関係を基に、更新領域を更に分割する。   The update region detection unit 25 detects, as the update region, a rectangular image region that is different between the reference frame after motion compensation and the encoding target frame for each update region detection region set by the update region detection region setting unit 24. . Further, the update area detection unit 25 further divides the update area based on the relationship between the detected position coordinates of the update area and the coordinate position of the movement area detected by the movement area detection unit 22.

領域符号化部26は、更新領域検出部25で検出された更新領域を画像として任意の符号化方式によって符号化した符号を生成する。   The region encoding unit 26 generates a code that is encoded by an arbitrary encoding method using the update region detected by the update region detection unit 25 as an image.

通信部30は、記憶部10に記憶された各種情報の通信制御を行う。例えば、符号化対象フレーム記憶部11に記憶されている符号化対象フレームについて生成された符号情報をシンクライアント端末200-1〜nに送信する。なお、1つの符号化対象フレームについて生成された符号情報には、領域符号化部26で生成された更新領域の符号情報、移動ベクトル検出部21と移動領域検出部22で検出された移動領域情報(移動元の領域の座標情報と移動ベクトル情報)が含まれる。シンクライアント端末200-1〜nは、サーバ装置100から送信された符号情報を受信し、その受信した符号情報を基に、符号化対象フレームを復号することになる。   The communication unit 30 performs communication control of various types of information stored in the storage unit 10. For example, the code information generated for the encoding target frame stored in the encoding target frame storage unit 11 is transmitted to the thin client terminals 200-1 to 200-n. Note that the code information generated for one encoding target frame includes the update region code information generated by the region encoding unit 26, and the moving region information detected by the moving vector detecting unit 21 and the moving region detecting unit 22. (Coordinate information and movement vector information of the movement source area) are included. The thin client terminals 200-1 to 200-n receive the code information transmitted from the server device 100, and decode the encoding target frame based on the received code information.

<シンクライアントシステムにおける一連の処理動作>
次に、図7を参照しながら、本実施形態のシンクライアントシステムにおける一連の処理動作について説明する。
<A series of processing operations in the thin client system>
Next, a series of processing operations in the thin client system of this embodiment will be described with reference to FIG.

制御部20は、符号化対象となるフレームをキャプチャし、そのキャプチャしたフレームを符号化対象フレームとして符号化対象フレーム記憶部11に記憶する(ステップS1)。   The control unit 20 captures a frame to be encoded, and stores the captured frame in the encoding target frame storage unit 11 as an encoding target frame (step S1).

移動ベクトル検出部21は、符号化対象フレーム記憶部11に記憶された符号化対象フレームと、参照フレーム記憶部12に記憶されている参照フレームと、を比較し、主要な1つの移動ベクトルを検出する(ステップS2)。   The motion vector detection unit 21 compares the encoding target frame stored in the encoding target frame storage unit 11 with the reference frame stored in the reference frame storage unit 12, and detects one main movement vector. (Step S2).

例えば、図8に示す符号化対象フレーム301と、参照フレーム302と、の比較から図8に示す移動ベクトル303が支配的であれば、その移動ベクトル303を主要な移動ベクトルとして検出する。移動ベクトル検出部21は、検出した移動ベクトル303の情報を記憶部10に一時的に保存する。   For example, if the movement vector 303 shown in FIG. 8 is dominant from the comparison between the encoding target frame 301 shown in FIG. 8 and the reference frame 302, the movement vector 303 is detected as a main movement vector. The movement vector detection unit 21 temporarily stores information on the detected movement vector 303 in the storage unit 10.

図8に示す符号化対象フレーム301と参照フレーム302とに含まれるウィンドウAの外枠部分Cは、透明ガラスのように透けるものとする。その結果、図8に示すように、移動前のウィンドウAを含む参照フレーム302と、移動後のウィンドウAを含む符号化対象フレーム301と、を比較すると、外枠部分Cを除いた部分の移動ベクトル303が検出されることになる。   Assume that the outer frame portion C of the window A included in the encoding target frame 301 and the reference frame 302 shown in FIG. 8 is transparent like transparent glass. As a result, as shown in FIG. 8, when the reference frame 302 including the window A before movement and the encoding target frame 301 including the window A after movement are compared, the movement of the part excluding the outer frame part C is compared. Vector 303 will be detected.

次に、移動領域検出部22は、符号化対象フレームから移動ベクトルが検出された場合は(ステップ3/Yes)、符号化対象フレームと、参照フレームと、の何れにも存在する同一または類似の画像領域であって、画面上での位置が移動ベクトル検出部21で検出された移動ベクトル303だけ変化している画像領域を移動領域として検出する(ステップS4)。   Next, when a movement vector is detected from the encoding target frame (step 3 / Yes), the moving area detection unit 22 is the same or similar that exists in both the encoding target frame and the reference frame. An image area which is an image area and whose position on the screen is changed by the movement vector 303 detected by the movement vector detection unit 21 is detected as a movement area (step S4).

例えば、図8に示す符号化対象フレーム301と参照フレーム302とにおいて、符号化対象フレーム301の領域304と参照フレーム302の領域305とが同一または類似の画像領域であった場合、移動領域検出部22は、その画像領域304,305を移動領域Bとして検出する。移動領域検出部22は、検出した移動領域Bの座標情報を記憶部10に一時的に保存する。   For example, in the encoding target frame 301 and the reference frame 302 shown in FIG. 8, when the region 304 of the encoding target frame 301 and the region 305 of the reference frame 302 are the same or similar image regions, the moving region detection unit 22 detects the image areas 304 and 305 as the movement area B. The movement area detection unit 22 temporarily stores the detected coordinate information of the movement area B in the storage unit 10.

図8に示す符号化対象フレーム301と参照フレーム302とに含まれるウィンドウAの外枠部分Cは、透明ガラスのように透けるものとする。その結果、外枠部分Cを除いた部分の領域304,305が移動領域Bとして検出されることになる。移動前の移動領域Bの始点の座標位置は、(X1,Y1)であり、終点の座標位置は、(X2,Y2)である。また、移動後の移動領域Bの始点の座標位置は、(nX1,nY1)であり、終点の座標位置は、(nX2,nY2)である。   Assume that the outer frame portion C of the window A included in the encoding target frame 301 and the reference frame 302 shown in FIG. 8 is transparent like transparent glass. As a result, the areas 304 and 305 excluding the outer frame part C are detected as the movement area B. The coordinate position of the start point of the movement area B before the movement is (X1, Y1), and the coordinate position of the end point is (X2, Y2). Further, the coordinate position of the start point of the movement area B after the movement is (nX1, nY1), and the coordinate position of the end point is (nX2, nY2).

次に、動き補償部23は、移動領域が検出された場合は(ステップS5/Yes)、参照フレーム上で移動前の移動領域Bの画像を移動ベクトル303が示す移動後の位置へ複写する動き補償を行い、参照フレーム記憶部12に記憶されている参照フレームを更新する(ステップS6)。   Next, when a movement area is detected (step S5 / Yes), the motion compensation unit 23 copies the image of the movement area B before movement on the reference frame to the position after movement indicated by the movement vector 303. Compensation is performed, and the reference frame stored in the reference frame storage unit 12 is updated (step S6).

例えば、図8の場合、参照フレーム302上で、領域305を符号化対象フレーム301における領域304に相当する位置にコピーする。これにより、図9(a)に示すように、動き補償後の参照フレーム306が生成される。   For example, in the case of FIG. 8, the region 305 is copied to the position corresponding to the region 304 in the encoding target frame 301 on the reference frame 302. As a result, a reference frame 306 after motion compensation is generated as shown in FIG.

但し、移動ベクトルが検出されなかった場合は(ステップS3/No)、移動領域の検出と動き補償が実行されないことになる。また、移動ベクトルが検出されても移動領域の検出に失敗した場合は(ステップS5/No)、動き補償が実行されないことになる。   However, when the movement vector is not detected (step S3 / No), the movement area detection and the motion compensation are not executed. In addition, even if a movement vector is detected, if the detection of the movement area fails (step S5 / No), motion compensation is not executed.

次に、更新領域検出域設定部24は、更新領域を検出する1以上の更新領域検出域をフレーム上に設定する(ステップS7)。更新領域検出域の設定方法については後述する。   Next, the update area detection area setting unit 24 sets one or more update area detection areas for detecting the update area on the frame (step S7). A method for setting the update area detection area will be described later.

次に、更新領域検出部25は、更新領域検出域設定部24により設定された更新領域検出域毎に、動き補償後の参照フレームと符号化対象フレームとで相違する画像領域を更新領域として検出する(ステップS8)。この時、更新領域検出部25は、移動領域検出部22がステップS4で検出した移動領域の座標位置と、更新領域検出部25がステップS8で検出した更新領域の座標位置と、の関係を基に、ステップS8で検出した更新領域を更に分割する。更新領域検の検出方法については後述する。これにより、例えば、図9(b)の場合、6つの更新領域307〜312が検出される。更新領域307〜312は、図9(b)に示す点線部分で囲まれた矩形の領域を示す。更新領域検出部25は、検出した6つの更新領域307〜312の座標情報を記憶部10に一時的に保存する。   Next, the update region detection unit 25 detects, as update regions, image regions that differ between the reference frame after motion compensation and the encoding target frame for each update region detection region set by the update region detection region setting unit 24. (Step S8). At this time, the update region detection unit 25 is based on the relationship between the coordinate position of the movement region detected by the movement region detection unit 22 in step S4 and the coordinate position of the update region detected by the update region detection unit 25 in step S8. In addition, the update area detected in step S8 is further divided. A detection method of the update area detection will be described later. Thereby, for example, in the case of FIG. 9B, six update regions 307 to 312 are detected. The update areas 307 to 312 indicate rectangular areas surrounded by dotted lines shown in FIG. The update area detection unit 25 temporarily stores the coordinate information of the detected six update areas 307 to 312 in the storage unit 10.

次に、領域符号化部26は、更新領域検出部25で検出された更新領域を画像として符号化した符号を生成する(ステップS9)。領域符号化部26は、生成した符号の情報を、記憶部10に記憶されている更新領域307〜312の座標情報に対応付けて一時的に保存する。   Next, the region encoding unit 26 generates a code obtained by encoding the update region detected by the update region detection unit 25 as an image (step S9). The area encoding unit 26 temporarily stores the generated code information in association with the coordinate information of the update areas 307 to 312 stored in the storage unit 10.

通信部30は、符号化対象フレームについて生成された情報、即ち、各更新領域の座標情報、その符号情報及び移動領域情報(移動元の領域の座標情報と移動ベクトル情報)を記憶部10から読み出し、その読み出した情報をシンクライアント端末200-1〜nに出力する(ステップS10)。   The communication unit 30 reads the information generated for the encoding target frame, that is, the coordinate information of each update region, the code information and the movement region information (the coordinate information and the movement vector information of the movement source region) from the storage unit 10. The read information is output to the thin client terminals 200-1 to 200-n (step S10).

例えば、図9(b)の場合、更新領域307〜312の座標情報とその符号情報、移動領域305の座標情報と移動ベクトル303の情報を、符号化対象フレーム301に関する符号情報としてシンクライアント端末200-1〜nに出力する。   For example, in the case of FIG. 9B, the coordinate information of the update areas 307 to 312 and the code information thereof, the coordinate information of the movement area 305 and the information of the movement vector 303 are used as the code information related to the encoding target frame 301 as the thin client terminal 200. Output to -1 to n.

シンクライアント端末200-1〜nは、サーバ装置100から送信された符号情報を受信し、該受信した符号情報を基に、フレームを復号する場合は、符号化と逆の手順で行う。例えば、図8(b)の符号化対象フレーム301を参照フレーム302と符号情報とから復号する場合は、まず、参照フレーム302の移動領域305を移動ベクトル303が示す場所へ複写し、図9(a)に示す動き補償後の参照フレーム306を生成し、この参照フレーム306に対し、符号情報から復号した更新領域307〜312を反映し、符号化対象フレーム301を生成する。   When the thin client terminals 200-1 to 200-n receive the code information transmitted from the server device 100 and decode the frame based on the received code information, the thin client terminals 200-1 to 200-n perform a procedure reverse to the encoding. For example, when decoding the encoding target frame 301 of FIG. 8B from the reference frame 302 and the code information, first, the moving area 305 of the reference frame 302 is copied to the location indicated by the moving vector 303, and FIG. The motion-compensated reference frame 306 shown in a) is generated, and the encoding target frame 301 is generated by reflecting the update regions 307 to 312 decoded from the code information to the reference frame 306.

このように、サーバ装置100は、例えば、図8に示す符号化対象の符号化対象フレーム301と、符号化済みの参照フレーム302と、を比較し、符号化対象フレーム301と参照フレーム302との何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域Bとして検出する。そして、その検出した移動領域Bを、参照フレーム302上で移動後の位置に複写し、図9(a)に示す動き補償後の参照フレーム306を生成する。そして、その生成した図9(a)に示す複写後の参照フレーム306と、図8(b)に示す符号化対象フレーム301と、で相違する画像領域を検出し、その検出した更新領域の位置座標と、移動領域Bの座標位置と、の関係を基に、上記検出した更新領域を更に分割し、図9(b)に示す更新領域307〜312を検出する。そして、その更新領域307〜312の座標情報、その符号情報及び移動領域情報(移動前の移動領域Bの座標情報と移動ベクトル情報303)をシンクライアント端末200-1〜nに出力する。これにより、サーバ装置100は、更新領域として検出する領域を低減し、シンクライアント端末200-1〜nに出力する転送データ量を削減することができる。このため、ネットワークNWの負荷を軽減し、効率的なデータ転送を行うことができる。   In this way, the server apparatus 100 compares, for example, the encoding target frame 301 to be encoded shown in FIG. 8 with the encoded reference frame 302, and the encoding target frame 301 and the reference frame 302 are compared. An image area that exists in both areas and whose position on the screen is moving is detected as a movement area B. Then, the detected movement area B is copied to the position after movement on the reference frame 302, and a reference frame 306 after motion compensation shown in FIG. 9A is generated. Then, a different image area is detected between the generated reference frame 306 after copying shown in FIG. 9A and the encoding target frame 301 shown in FIG. 8B, and the position of the detected update area is detected. Based on the relationship between the coordinates and the coordinate position of the moving area B, the detected update area is further divided to detect update areas 307 to 312 shown in FIG. Then, the coordinate information of the update areas 307 to 312, the code information and the movement area information (coordinate information and movement vector information 303 of the movement area B before movement) are output to the thin client terminals 200-1 to 200 -n. Thereby, the server apparatus 100 can reduce the area detected as the update area and reduce the amount of transfer data output to the thin client terminals 200-1 to 200-n. For this reason, it is possible to reduce the load on the network NW and perform efficient data transfer.

<更新領域検出域設定部24>
次に、図10を参照しながら、更新領域検出域設定部24について説明する。
<Update area detection area setting unit 24>
Next, the update area detection area setting unit 24 will be described with reference to FIG.

更新領域検出域設定部24は、図10に示すように、移動領域有無判定部241と、分割部242と、を含んで構成する。   The update area detection area setting unit 24 includes a moving area presence / absence determination unit 241 and a division unit 242 as shown in FIG.

移動領域有無判定部241は、移動領域検出部22で移動領域が検出されたか否かを判定する。   The moving region presence / absence determining unit 241 determines whether or not a moving region has been detected by the moving region detecting unit 22.

分割部242は、移動領域有無判定部241の判定結果に従って画面分割の必要性の判定および画面分割による更新領域検出域の設定を行う。   The dividing unit 242 determines the necessity of screen division and sets an update region detection area by screen division according to the determination result of the moving region presence / absence determining unit 241.

<更新領域検出域設定部24の処理動作例>
次に、図11を参照しながら、更新領域検出域設定部24の処理動作例について説明する。
<Example of processing operation of update area detection area setting unit 24>
Next, an example of processing operation of the update area detection area setting unit 24 will be described with reference to FIG.

移動領域有無判定部241は、移動領域検出部22の検出結果を記憶部10から読み出し、検出結果を解析することで、移動領域が検出されたか否かを判定する(ステップS71)。   The moving region presence / absence determining unit 241 reads out the detection result of the moving region detecting unit 22 from the storage unit 10 and analyzes the detection result to determine whether or not a moving region has been detected (step S71).

分割部242は、移動領域が検出されなかった場合は(ステップS71/No)、画面全体を1つの更新領域検出域に設定する(ステップS72)。   When the moving area is not detected (step S71 / No), the dividing unit 242 sets the entire screen as one update area detection area (step S72).

また、移動領域が検出された場合は(ステップS71/Yes)、移動領域検出部22の検出結果に含まれる移動後の移動領域の座標情報を記憶部10から読み出し、移動後の移動領域の始点、終点の座標位置に探索処理分離線を設け、その探索処理分離線で画面を3分割し(ステップS73)、各分割領域をそれぞれ1つの更新領域検出域に設定する(ステップS74)。その後、更新領域検出域毎に更新領域検出部25による更新領域の検出が行われる。   If a movement area is detected (step S71 / Yes), the coordinate information of the movement area after movement included in the detection result of the movement area detection unit 22 is read from the storage unit 10, and the starting point of the movement area after movement is read. Then, a search process separation line is provided at the coordinate position of the end point, the screen is divided into three by the search process separation line (step S73), and each divided area is set as one update area detection area (step S74). Thereafter, the update area detection unit 25 detects the update area for each update area detection area.

例えば、図3に示すように、透明な外枠部分Cを含むウィンドウAが右下方向に移動した場合、画面全体を1つの更新領域検出域に設定すると、図4に示すように、移動前後の移動領域Bを包含するような更新領域Dが検出されてしまう。これに対し、本実施形態では、図12に示すように、移動後の移動領域Bの始点の座標位置(nX1,nY1)、終点の座標位置(nX2,nY2)に探索処理分離線を設け、その探索処理分離線で画面を3分割し、各々の更新領域検出域で更新領域の検出を行うため、図13に示すように、更新領域として検出する領域の合計面積を小さくでき、その分、符号量を削減することができる。   For example, as shown in FIG. 3, when the window A including the transparent outer frame portion C moves in the lower right direction, if the entire screen is set as one update area detection area, as shown in FIG. An update area D that includes the moving area B is detected. On the other hand, in the present embodiment, as shown in FIG. 12, a search processing separation line is provided at the coordinate position (nX1, nY1) of the start point and the coordinate position (nX2, nY2) of the end point of the movement area B after movement, Since the screen is divided into three by the search processing separation line, and the update area is detected in each update area detection area, as shown in FIG. 13, the total area of the areas to be detected as the update area can be reduced. The amount of codes can be reduced.

なお、MPEG規格等では、ブロック単位(例えば、4×4画素単位、8×8画素単位等)で符号化を行うことになる。このため、探索処理分離線を設ける移動領域の座標位置(nX1,nY1)、(nX2,nY2)が、ブロック単位の境界線に存在しない場合もある。この場合は、調整部(図示せず)を設け、ブロック単位の境界線に探索処理分離線が存在するように、探索処理分離線を設ける座標位置(nX1,nY1)、(nX2,nY2)を調整することになる。   In the MPEG standard or the like, encoding is performed in block units (for example, 4 × 4 pixel units, 8 × 8 pixel units, etc.). For this reason, the coordinate positions (nX1, nY1) and (nX2, nY2) of the moving region where the search processing separation line is provided may not exist on the boundary line of the block unit. In this case, an adjustment unit (not shown) is provided, and the coordinate positions (nX1, nY1) and (nX2, nY2) for providing the search processing separation lines are set so that the search processing separation lines exist on the boundary line of the block unit. Will be adjusted.

例えば、探索処理分離線を設ける座標位置(nX1,nY1)、(nX2,nY2)の調整は、図12に示す→方向に一意に調整し、符号化を行うブロック単位の境界線に探索処理分離線が存在するように調整する。   For example, the adjustment of the coordinate positions (nX1, nY1) and (nX2, nY2) where the search process separation lines are provided is uniquely adjusted in the → direction shown in FIG. Adjust so that there is a separation line.

<更新領域検出部25>
次に、図14を参照しながら、更新領域検出部25について説明する。
<Update area detector 25>
Next, the update region detection unit 25 will be described with reference to FIG.

更新領域検出部25は、更新領域検出域設定部24により設定された各々の更新領域検出域毎に、動き補償後の参照フレーム(図9(a)に示す306)と、符号化対象フレーム(図8(b)に示す301)と、で相違する画像領域を更新領域として検出する。更新領域検出部25は、図14に示すように、更新領域抽出部251と、分割部252と、を含んで構成する。   For each update region detection region set by the update region detection region setting unit 24, the update region detection unit 25 performs a motion-compensated reference frame (306 shown in FIG. 9A) and an encoding target frame (306). An image area that differs from 301) shown in FIG. 8B is detected as an update area. As illustrated in FIG. 14, the update area detection unit 25 includes an update area extraction unit 251 and a division unit 252.

更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する。なお、所定の閾値は、任意に設定変更可能であり、例えば、0に設定することも可能である。   The update region extraction unit 251 calculates, for each update region detection region, a difference between pixel values at the same position in the reference frame after motion compensation and the encoding target frame, the calculated difference, and a predetermined threshold value. , Compare. Then, the update region extraction unit 251 extracts an image region including a pixel value in which a difference larger than a predetermined threshold is detected as an update region. Note that the predetermined threshold value can be arbitrarily changed, and can be set to 0, for example.

分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し、移動前後の移動領域Bの座標位置を含む更新領域がある場合は、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する。領域変動量(ΔY)は、動き補償後の参照フレームと、符号化対象フレームと、の画素値の差分が所定の閾値(0を含む)よりも大きな画素値で構成する領域の変動量を意味する。   The dividing unit 252 determines whether there is an update area including the coordinate position of the movement area B before and after the movement in the update area extracted by the update area extraction unit 251, and the coordinate position of the movement area B before and after the movement If there is an update area including the update area, a separation line is provided at the coordinate position where the area variation amount (ΔY) in the Y direction of the update area is the largest, and the update area is further divided via the separation line. The region variation amount (ΔY) means the variation amount of a region constituted by a pixel value in which the difference in pixel value between the reference frame after motion compensation and the encoding target frame is larger than a predetermined threshold (including 0). To do.

<更新領域検出部25の処理動作例>
次に、図15を参照しながら、更新領域検出部25の処理動作例について説明する。
<Example of processing operation of update area detection unit 25>
Next, an example of the processing operation of the update region detection unit 25 will be described with reference to FIG.

更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する(ステップS81)。   The update region extraction unit 251 calculates, for each update region detection region, a difference between pixel values at the same position in the reference frame after motion compensation and the encoding target frame, the calculated difference, and a predetermined threshold value. , Compare. Then, the update region extraction unit 251 extracts an image region including a pixel value in which a difference larger than a predetermined threshold is detected as an update region (Step S81).

分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し(ステップS82)、移動前後の移動領域Bの座標位置を含む更新領域がある場合は(ステップS82/Yes)、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する(ステップS83)。   The dividing unit 252 determines whether there is an update area including the coordinate position of the movement area B before and after the movement in the update area extracted by the update area extraction unit 251 (step S82). If there is an update area that includes the B coordinate position (step S82 / Yes), a separation line is provided at the coordinate position where the area variation (ΔY) in the Y direction of the update area is the largest, and the update is performed via the separation line. The area is further divided (step S83).

本実施形態では、図12に示すように、移動後の移動領域Bの始点(nX1,nY1)、終点(nX2,nY2)に探索処理分離線を設け、その探索処理分離線で画面を3分割し、更新領域抽出部251は、各々の更新領域検出域毎に、更新領域の検出を行うことにしている。このため、図13に示すように、更新領域として検出する領域の合計面積を小さくでき、その分、符号量を削減することができる。   In the present embodiment, as shown in FIG. 12, a search processing separation line is provided at the start point (nX1, nY1) and end point (nX2, nY2) of the movement area B after movement, and the screen is divided into three by the search processing separation line. Then, the update area extraction unit 251 detects the update area for each update area detection area. For this reason, as shown in FIG. 13, the total area of the areas detected as update areas can be reduced, and the amount of codes can be reduced accordingly.

更に、本実施形態では、分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域がある場合は、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割することにしている。   Furthermore, in this embodiment, the dividing unit 252 determines that the update area extracted by the update area extraction unit 251 includes an update area including the coordinate position of the movement area B before and after the movement, in the Y direction of the update area. A separation line is provided at a coordinate position where the region variation amount (ΔY) is the largest, and the update region is further divided through the separation line.

例えば、図16に示すように、更新領域1は、移動前後の移動領域Bの座標位置(X1,Y1)、(nX1,nY1)、(nX2,nY1)を含んでおり、更新領域を分割するための分割条件、(Xa、Ya)<(nX2、nY1)≦(Xb、Yb)、且つ、(Xa、Ya)≦(X1、Y1)<(Xb、Yb)を満たすことになる。更新領域1を抽出した際に得られる始点の座標位置は、(Xa,Ya)であり、終点の座標位置は、(Xb,Yb)であり、更新領域1の検出矩形は、その始点(Xa,Ya)、終点(Xb,Yb)で囲まれた領域である(図16に示す点線部分で囲まれた矩形の領域)。移動前の移動領域Bの始点の座標位置は、(X1,Y1)であり、終点の座標位置は、(X2,Y2)であり、移動前の移動領域Bは、その始点(X1,Y1)、終点(X2,Y2)で囲まれた領域である。移動後の移動領域Bの始点の座標位置は、(nX1,nY1)であり、終点の座標位置は、(nX2,nY2)であり、移動後の移動領域Bは、その始点(nX1,nY1)、終点(nX2,nY2)で囲まれた領域である。このため、図17に示すように、その更新領域1のY方向の領域変動量(ΔY)が最も大きい座標位置(Xα、Yβ)に分離線を設け、その分離線を介して更新領域1を更に分割し、図18に示すように、更新領域1を更新領域1'と更新領域5とに分割することになる。   For example, as shown in FIG. 16, the update area 1 includes the coordinate positions (X1, Y1), (nX1, nY1), (nX2, nY1) of the movement area B before and after the movement, and divides the update area. (Xa, Ya) <(nX2, nY1) ≦ (Xb, Yb) and (Xa, Ya) ≦ (X1, Y1) <(Xb, Yb). The coordinate position of the start point obtained when extracting the update area 1 is (Xa, Ya), the coordinate position of the end point is (Xb, Yb), and the detection rectangle of the update area 1 is the start point (Xa , Ya) and an end point (Xb, Yb) (a rectangular region surrounded by a dotted line portion shown in FIG. 16). The coordinate position of the start point of the movement area B before movement is (X1, Y1), the coordinate position of the end point is (X2, Y2), and the movement area B before movement is its start point (X1, Y1) , The region surrounded by the end points (X2, Y2). The coordinate position of the start point of the movement area B after movement is (nX1, nY1), the coordinate position of the end point is (nX2, nY2), and the movement area B after movement is its start point (nX1, nY1) , A region surrounded by end points (nX2, nY2). For this reason, as shown in FIG. 17, a separation line is provided at the coordinate position (Xα, Yβ) where the region variation amount (ΔY) in the Y direction of the update region 1 is the largest, and the update region 1 is defined via the separation line. Further, as shown in FIG. 18, the update area 1 is divided into an update area 1 ′ and an update area 5.

また、図19に示すように、更新領域2は、移動前後の移動領域Bの座標位置(X1,nY1)、(nX1,nY1)、(nX1,nY2)を含んでおり、更新領域を分割するための分割条件、(Xa、Ya)<(nX1、nY2)≦(Xb、Yb)、且つ、(Xa、Ya)≦(X1、nY1)<(Xb、Yb)を満たすことになる。更新領域2を抽出した際に得られる始点の座標位置は、(Xa,Ya)であり、終点の座標位置は、(Xb,Yb)であり、更新領域1の検出矩形は、その始点(Xa,Ya)、終点(Xb,Yb)で囲まれた領域である(図19に示す点線部分で囲まれた矩形の領域)。移動前の移動領域Bの始点の座標位置は、(X1,Y1)であり、終点の座標位置は、(X2,Y2)であり、移動前の移動領域Bは、その始点(X1,Y1)、終点(X2,Y2)で囲まれた領域である。移動後の移動領域Bの始点の座標位置は、(nX1,nY1)であり、終点の座標位置は、(nX2,nY2)であり、移動後の移動領域Bは、その始点(nX1,nY1)、終点(nX2,nY2)で囲まれた領域である。分割条件で用いられる座標情報(X1、nY1)は、移動前後の移動領域Bの座標情報から得られる。このため、図20に示すように、その更新領域2のY方向の領域変動量(ΔY)が最も大きい座標位置(Xα、Yβ)に分離線を設け、その分離線を介して更新領域2を更に分割し、図21に示すように、更新領域2を更新領域2'と更新領域6とに分割することになる。   Further, as shown in FIG. 19, the update area 2 includes the coordinate positions (X1, nY1), (nX1, nY1), (nX1, nY2) of the movement area B before and after the movement, and divides the update area. (Xa, Ya) <(nX1, nY2) ≦ (Xb, Yb) and (Xa, Ya) ≦ (X1, nY1) <(Xb, Yb). The coordinate position of the start point obtained when extracting the update area 2 is (Xa, Ya), the coordinate position of the end point is (Xb, Yb), and the detection rectangle of the update area 1 is its start point (Xa , Ya) and an end point (Xb, Yb) (a rectangular region surrounded by a dotted line portion shown in FIG. 19). The coordinate position of the start point of the movement area B before movement is (X1, Y1), the coordinate position of the end point is (X2, Y2), and the movement area B before movement is its start point (X1, Y1) , The region surrounded by the end points (X2, Y2). The coordinate position of the start point of the movement area B after movement is (nX1, nY1), the coordinate position of the end point is (nX2, nY2), and the movement area B after movement is its start point (nX1, nY1) , A region surrounded by end points (nX2, nY2). The coordinate information (X1, nY1) used in the division condition is obtained from the coordinate information of the movement area B before and after the movement. For this reason, as shown in FIG. 20, a separation line is provided at the coordinate position (Xα, Yβ) where the region variation amount (ΔY) in the Y direction of the update region 2 is the largest, and the update region 2 is defined via the separation line. Further, as shown in FIG. 21, the update area 2 is divided into an update area 2 ′ and an update area 6.

これにより、更新領域検出部25は、図22に示すように、更新領域として検出する領域の合計面積を図13よりも更に小さくでき、その分、符号量の削減を行うことができる。また、無駄な更新領域の情報を送信することがないため、ネットワークNWの負荷を更に軽減し、効率的なデータ転送を行うことができる。   Thereby, as shown in FIG. 22, the update region detection unit 25 can further reduce the total area of the regions detected as the update region, compared with FIG. 13, and can reduce the code amount accordingly. In addition, since unnecessary update area information is not transmitted, the load on the network NW can be further reduced and efficient data transfer can be performed.

なお、MPEG規格等では、ブロック単位(例えば、4×4画素単位、8×8画素単位等)で符号化を行うことになる。このため、分離線を設ける移動領域の座標位置(Xα、Yβ)が、ブロック単位の境界線に存在しない場合もある。この場合は、調整部(図示せず)を設け、ブロック単位の境界線に分離線が存在するように、分離線を設ける座標位置(Xα、Yβ)を調整することになる。   In the MPEG standard or the like, encoding is performed in block units (for example, 4 × 4 pixel units, 8 × 8 pixel units, etc.). For this reason, the coordinate position (Xα, Yβ) of the moving region where the separation line is provided may not exist on the boundary line of the block unit. In this case, an adjustment unit (not shown) is provided, and the coordinate position (Xα, Yβ) where the separation line is provided is adjusted so that the separation line exists on the boundary line of the block unit.

なお、座標位置の調整方向は、移動ベクトル検出部21で検出された移動ベクトルの移動方向、または、移動領域検出部22で検出された移動領域Bの移動方向に応じて一意に決定される。例えば、図8に示すように、移動ベクトル検出部21で検出された移動ベクトルの移動方向、または、移動領域検出部22で検出された移動領域Bの移動方向が右下の場合は、分離線を設ける座標位置(Xα、Yβ)の調整方向は、図17、図20に示す→方向に一意に調整し、符号化を行うブロック単位の境界線に分離線が存在するように調整する。   The adjustment direction of the coordinate position is uniquely determined according to the movement direction of the movement vector detected by the movement vector detection unit 21 or the movement direction of the movement region B detected by the movement region detection unit 22. For example, as shown in FIG. 8, when the movement direction of the movement vector detected by the movement vector detection unit 21 or the movement direction of the movement region B detected by the movement region detection unit 22 is lower right, a separation line The coordinate position (Xα, Yβ) to be provided is adjusted uniquely in the → direction shown in FIGS. 17 and 20 so that the separation line exists on the boundary line of the block unit to be encoded.

<本実施形態のシンクライアントシステムの作用・効果>
このように、本実施形態のシンクライアントシステムでは、サーバ装置100は、図8に示す符号化対象の符号化対象フレーム301と、符号化済みの参照フレーム302と、を比較し、符号化対象フレーム301と参照フレーム302との何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域Bとして検出する。そして、その検出した移動領域Bを、参照フレーム302上で移動後の位置に複写し、図9(a)に示す動き補償後の参照フレーム306を生成する。そして、その生成した図9(a)に示す複写後の参照フレーム306と、図8(b)に示す符号化対象フレーム301と、で相違する矩形の画像領域を更新領域として検出する。これにより、例えば、図13に示す更新領域1〜4を検出することができる。更に、本実施形態のサーバ装置100は、移動領域Bの座標位置と、上記検出した各更新領域1〜4の座標位置と、の関係を基に、上記検出した更新領域1、2を更に分割する。これにより、図22に示す更新領域1'、2'、3〜6を検出することができる。
<Operation / Effect of Thin Client System of this Embodiment>
As described above, in the thin client system of the present embodiment, the server apparatus 100 compares the encoding target frame 301 to be encoded shown in FIG. 8 with the encoded reference frame 302, and encodes the encoding target frame. An image area that exists in both 301 and the reference frame 302 and that moves on the screen is detected as a movement area B. Then, the detected movement area B is copied to the position after movement on the reference frame 302, and a reference frame 306 after motion compensation shown in FIG. 9A is generated. Then, a rectangular image area that is different between the generated reference frame 306 after copying shown in FIG. 9A and the encoding target frame 301 shown in FIG. 8B is detected as an update area. Thereby, for example, the update areas 1 to 4 shown in FIG. 13 can be detected. Furthermore, the server apparatus 100 according to the present embodiment further divides the detected update areas 1 and 2 based on the relationship between the coordinate position of the moving area B and the detected coordinate positions of the update areas 1 to 4. To do. Thereby, update area | region 1 ', 2', and 3-6 shown in FIG. 22 are detectable.

その結果、サーバ装置100は、更新領域として検出する領域を低減し、シンクライアント端末200-1〜nに出力する転送データ量を削減することができる。このため、ネットワークNWの負荷を軽減し、効率的なデータ転送を行うことができる。   As a result, the server apparatus 100 can reduce the area detected as the update area and reduce the amount of transfer data output to the thin client terminals 200-1 to 200-n. For this reason, it is possible to reduce the load on the network NW and perform efficient data transfer.

なお、上記実施形態では、更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割することにした。しかし、更新領域のX方向の領域変動量(ΔX)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割することも可能である。   In the above embodiment, the separation line is provided at the coordinate position where the region variation amount (ΔY) in the Y direction of the update region is the largest, and the update region is further divided through the separation line. However, it is also possible to provide a separation line at the coordinate position where the region variation amount (ΔX) in the X direction of the update region is the largest, and further divide the update region via the separation line.

また、上記実施形態では、図12に示すように、移動後の移動領域Bの始点(nX1,nY1)、終点(nX2,nY2)に探索処理分離線を設け、その探索処理分離線で画面を3分割し、更新領域抽出部251は、各々の更新領域検出域毎に、更新領域の検出を行うことにした。   In the above embodiment, as shown in FIG. 12, a search process separation line is provided at the start point (nX1, nY1) and end point (nX2, nY2) of the movement area B after movement, and the screen is displayed by the search process separation line. The update area extraction unit 251 performs the update area detection for each update area detection area.

しかし、移動後の移動領域Bの始点(nX1,nY1)のみに探索処理分離線を設け、その探索処理分離線で画面を2分割し、更新領域抽出部251は、各々の更新領域検出域毎に、更新領域の検出を行うことも可能である。この場合も、更新領域検出部25において更に更新領域の分割処理が行われることになるため、更新領域として検出する領域の合計面積を更に小さくでき、その分、符号量の削減を行うことができる。   However, a search process separation line is provided only at the start point (nX1, nY1) of the movement area B after the movement, and the screen is divided into two by the search process separation line. It is also possible to detect the update area. Also in this case, since the update area detection unit 25 further performs update area division processing, the total area of the areas detected as update areas can be further reduced, and the amount of code can be reduced accordingly. .

また、移動前の移動領域Bの始点(X1,Y1)、終点(X2,Y2)、移動後の移動領域Bの始点(nX1,nY1)、終点(nX2,nY2)に探索処理分離線を設け、その探索処理分離線で画面を5分割し、更新領域抽出部251は、各々の更新領域検出域毎に、更新領域の検出を行うことも可能である。この場合も、更新領域検出部25において更に更新領域の分割処理が行われることになるため、更新領域として検出する領域の合計面積を更に小さくでき、その分、符号量の削減を行うことができる。   Also, search processing separation lines are provided at the start point (X1, Y1) and end point (X2, Y2) of the movement area B before movement, and at the start point (nX1, nY1) and end point (nX2, nY2) of the movement area B after movement. Then, the screen is divided into five by the search processing separation line, and the update region extraction unit 251 can detect the update region for each update region detection region. Also in this case, since the update area detection unit 25 further performs update area division processing, the total area of the areas detected as update areas can be further reduced, and the amount of code can be reduced accordingly. .

(第2の実施形態)
次に、第2の実施形態について説明する。
(Second Embodiment)
Next, a second embodiment will be described.

第2の実施形態のサーバ装置100は、移動ベクトル検出部21で検出された移動ベクトルの移動方向、または、移動領域検出部22で検出された移動領域Bの移動方向を基に、分割判定を行う更新領域を特定し、その特定した更新領域の座標位置と、移動領域検出部22で検出された移動領域Bの座標位置と、の関係を基に分割判定を行い、移動前後の移動領域Bの座標位置を含む更新領域の場合は、その更新領域を更に分割する。これにより、分割判定を行う更新領域を低減することができる。その結果、サーバ装置100で行う処理の負荷を更に低減することができる。以下、添付図面を参照しながら、本実施形態のサーバ装置100について説明する。なお、サーバ装置100の構成は、第1の実施形態と同様に構成するため、第1の実施形態と異なる処理動作のみに限定して説明する。   The server device 100 according to the second embodiment performs the division determination based on the movement direction of the movement vector detected by the movement vector detection unit 21 or the movement direction of the movement region B detected by the movement region detection unit 22. Identify the update area to be performed, perform division determination based on the relationship between the coordinate position of the identified update area and the coordinate position of the movement area B detected by the movement area detection unit 22, and move area B before and after movement In the case of an update area including the coordinate position, the update area is further divided. Thereby, the update area | region which performs a division | segmentation determination can be reduced. As a result, it is possible to further reduce the processing load performed by the server apparatus 100. Hereinafter, the server device 100 of the present embodiment will be described with reference to the accompanying drawings. Since the configuration of the server device 100 is configured in the same manner as in the first embodiment, only the processing operation different from that in the first embodiment will be described.

<更新領域検出部25の処理動作例>
まず、図23を参照しながら、更新領域検出部25の処理動作例について説明する。
<Example of processing operation of update area detection unit 25>
First, an example of the processing operation of the update region detection unit 25 will be described with reference to FIG.

更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する(ステップS81)。   The update region extraction unit 251 calculates, for each update region detection region, a difference between pixel values at the same position in the reference frame after motion compensation and the encoding target frame, the calculated difference, and a predetermined threshold value. , Compare. Then, the update region extraction unit 251 extracts an image region including a pixel value in which a difference larger than a predetermined threshold is detected as an update region (Step S81).

分割部252は、移動ベクトル検出部21で検出された移動ベクトルの移動方向を基に、次のステップS82で分割判定を行う更新領域を特定する(ステップS'811)。   Based on the movement direction of the movement vector detected by the movement vector detection unit 21, the division unit 252 identifies an update region in which division determination is performed in the next step S82 (step S′811).

例えば、図24(a)に示すように、ウィンドウを右下に移動した場合は、移動ベクトルの移動方向は右下になるため、分割判定を行う更新領域を更新領域1、2(上側と、左側の更新領域)に特定する。   For example, as shown in FIG. 24 (a), when the window is moved to the lower right, the movement direction of the movement vector is lower right. Specify the update area on the left.

また、図24(b)に示すように、ウィンドウを左下に移動した場合は、移動ベクトルの移動方向は左下になるため、分割判定を行う更新領域を更新領域1、2(上側と、右側の更新領域)に特定する。   Also, as shown in FIG. 24B, when the window is moved to the lower left, the movement direction of the movement vector is the lower left, so the update areas for performing the division determination are the update areas 1 and 2 (upper and right). Update area).

また、図24(c)に示すように、ウィンドウを左上に移動した場合は、移動ベクトルの移動方向は左上になるため、分割判定を行う更新領域を更新領域1、2(下側と、右側の更新領域)に特定する。   Also, as shown in FIG. 24 (c), when the window is moved to the upper left, the moving vector moves in the upper left direction, so the update areas for performing the division determination are the update areas 1 and 2 (lower and right sides). Update area).

また、図24(d)に示すように、ウィンドウを右上に移動した場合は、移動ベクトルの移動方向は右上になるため、分割判定を行う更新領域を更新領域1、2(下側と、左側の更新領域)に特定する。   Also, as shown in FIG. 24 (d), when the window is moved to the upper right, the movement direction of the movement vector is to the upper right. Therefore, the update areas for performing the division determination are the update areas 1 and 2 (lower and left sides). Update area).

このように、分割部252は、移動ベクトル検出部21で検出された移動ベクトルの移動方向に応じて、ステップS82で分割判定を行う更新領域を一意に特定することになる。   As described above, the dividing unit 252 uniquely identifies the update region in which the division determination is performed in step S82 according to the moving direction of the movement vector detected by the movement vector detecting unit 21.

次に、分割部252は、ステップS'811の工程で特定した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し(ステップS82)、移動前後の移動領域Bの座標位置を含む更新領域がある場合は(ステップS82/Yes)、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する(ステップS83)。   Next, the dividing unit 252 determines whether or not there is an update area including the coordinate position of the movement area B before and after the movement in the update area specified in the step S′811 (Step S82). If there is an update area that includes the coordinate position of the previous and subsequent moving area B (step S82 / Yes), a separation line is provided at the coordinate position where the area variation amount (ΔY) in the Y direction of the update area is the largest, and the separation line The update area is further divided through (step S83).

<本実施形態のシンクライアントシステムの作用・効果>
このように、本実施形態のシンクライアントシステムでは、サーバ装置100は、移動ベクトル検出部21で検出された移動ベクトルの移動方向を基に、分割判定を行う更新領域を特定し、その特定した更新領域の座標位置と、移動領域検出部22で検出された移動領域Bの座標位置と、の関係を基に分割判定を行い、移動前後の移動領域Bの座標位置を含む更新領域の場合は、その更新領域を更に分割する。これにより、分割判定を行う更新領域を低減することができる。その結果、サーバ装置100で行う処理の負荷を更に低減することができる。
<Operation / Effect of Thin Client System of this Embodiment>
As described above, in the thin client system according to the present embodiment, the server device 100 identifies the update area for performing the division determination based on the movement direction of the movement vector detected by the movement vector detection unit 21, and the identified update. Division determination is performed based on the relationship between the coordinate position of the area and the coordinate position of the movement area B detected by the movement area detection unit 22, and in the case of an update area including the coordinate position of the movement area B before and after the movement, The update area is further divided. Thereby, the update area | region which performs a division | segmentation determination can be reduced. As a result, it is possible to further reduce the processing load performed by the server apparatus 100.

なお、上記処理動作では、移動ベクトル検出部21で検出された移動ベクトルの移動方向を基に、分割判定を行う更新領域を特定することにした。しかし、移動領域検出部22で検出した移動前後の移動領域Bの移動方向を基に、分割判定を行う更新領域を特定することも可能である。   In the processing operation described above, the update region for performing the division determination is specified based on the movement direction of the movement vector detected by the movement vector detection unit 21. However, based on the movement direction of the movement area B before and after the movement detected by the movement area detection unit 22, it is also possible to specify the update area where the division determination is performed.

なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。   The above-described embodiment is a preferred embodiment of the present invention, and the scope of the present invention is not limited to the above-described embodiment alone, and various modifications are made without departing from the gist of the present invention. Implementation is possible.

例えば、上記実施形態では、移動ベクトル検出部21は、符号化対象フレームと、参照フレームと、を比較し、主要な1つの移動ベクトルを検出し、上述した一連の処理動作を行うことにした。しかし、複数の移動ベクトルを検出し、該検出した複数の移動ベクトル毎に上述した一連の処理動作を行うように構築することも可能である。例えば、2つの移動ベクトルを検出した場合は、その2つの移動ベクトル毎に上述した一連の処理動作を行うように構築することも可能である。   For example, in the above-described embodiment, the movement vector detection unit 21 compares the encoding target frame with the reference frame, detects one main movement vector, and performs the above-described series of processing operations. However, it is also possible to construct such that a plurality of movement vectors are detected and the above-described series of processing operations are performed for each of the detected plurality of movement vectors. For example, when two movement vectors are detected, it is possible to construct so as to perform the above-described series of processing operations for each of the two movement vectors.

また、上記実施形態では、更新領域1の分割条件として、(Xa、Ya)<(nX2、nY1)≦(Xb、Yb)、且つ、(Xa、Ya)≦(X1、Y1)<(Xb、Yb)を適用し、更新領域2の分割条件として、(Xa、Ya)<(nX1、nY2)≦(Xb、Yb)、且つ、(Xa、Ya)≦(X1、nY1)<(Xb、Yb)を適用することにした。しかし、移動前後の移動領域Bの座標位置を含む更新領域か否かを判定することが可能であれば、上記の分割条件に限定するものではなく、様々な分割条件を適用することも可能である。   In the above embodiment, the update area 1 is divided as (Xa, Ya) <(nX2, nY1) ≦ (Xb, Yb) and (Xa, Ya) ≦ (X1, Y1) <(Xb, Yb) is applied, and (Xa, Ya) <(nX1, nY2) ≦ (Xb, Yb) and (Xa, Ya) ≦ (X1, nY1) <(Xb, Yb) ) Was applied. However, as long as it is possible to determine whether or not the update area includes the coordinate position of the movement area B before and after the movement, the division condition is not limited to the above, and various division conditions can be applied. is there.

また、上述した本実施形態におけるサーバ装置100を構成する各装置における制御動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成を用いて実行することも可能である。   Further, the control operation in each device constituting the server device 100 in the present embodiment described above can be executed using hardware, software, or a combined configuration of both.

なお、ソフトウェアを用いて処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させることが可能である。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。   In the case of executing processing using software, it is possible to install and execute a program in which a processing sequence is recorded in a memory in a computer incorporated in dedicated hardware. Alternatively, the program can be installed and executed on a general-purpose computer capable of executing various processes.

例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことが可能である。あるいは、プログラムは、リムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。なお、リムーバブル記録媒体としては、フロッピー(登録商標)ディスク、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto optical)ディスク、DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどが挙げられる。   For example, the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium. Alternatively, the program can be stored (recorded) temporarily or permanently in a removable recording medium. Such a removable recording medium can be provided as so-called package software. Examples of the removable recording medium include a floppy (registered trademark) disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, and a semiconductor memory.

なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールすることになる。また、ダウンロードサイトから、コンピュータに無線転送することになる。また、ネットワークを介して、コンピュータに有線で転送することになる。   The program is installed on the computer from the removable recording medium as described above. In addition, it is wirelessly transferred from the download site to the computer. In addition, it is transferred to a computer via a network by wire.

また、本実施形態におけるサーバ装置100は、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。   In addition, the server device 100 in the present embodiment is not only executed in time series according to the processing operation described in the above embodiment, but also the processing capability of the device that executes the processing, or in parallel as necessary It can also be constructed to run individually.

本発明は、データ転送サービスに適用可能である。   The present invention is applicable to a data transfer service.

100 サーバ装置(情報処理装置)
200−1〜n シンクライアント端末
10 記憶部
11 符号化対象フレーム記憶部
12 参照フレーム記憶部
20 制御部
21 移動ベクトル検出部
22 移動領域検出部
23 動き補償部
24 更新領域検出域設定部
241 移動領域有無判定部
242 分割部
25 更新領域検出部
251 更新領域抽出部
252 分割部
26 領域符号化部
30 通信部
100 server device (information processing device)
200-1 to 200 thin client terminal 10 storage unit 11 encoding target frame storage unit 12 reference frame storage unit 20 control unit 21 movement vector detection unit 22 movement region detection unit 23 motion compensation unit 24 update region detection region setting unit 241 movement region Presence / absence determination unit 242 Division unit 25 Update region detection unit 251 Update region extraction unit 252 Division unit 26 Region encoding unit 30 Communication unit

Claims (10)

符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出手段と、
前記移動領域検出手段で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償手段と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出手段と、を有し、
前記更新領域検出手段は、
前記移動領域検出手段で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする情報処理装置。
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. A moving area detecting means for detecting a moving image area as a moving area;
Motion compensation means for copying the image of the movement area detected by the movement area detection means to the coordinate position after movement on the reference frame;
Update area detecting means for detecting an image area different between the reference frame after copying and the encoding target frame as an update area;
The update area detecting means includes
An information processing apparatus, wherein the update area is further divided based on a relationship between a coordinate position of the movement area detected by the movement area detection means and a coordinate position of the update area.
前記更新領域検出手段は、
前記移動領域検出手段で検出された移動領域の移動方向を基に、分割する前記更新領域を特定し、該特定した前記更新領域の座標位置と、前記移動領域検出手段で検出された移動領域の座標位置と、の関係を基に、前記特定した前記更新領域を更に分割することを特徴とする請求項1記載の情報処理装置。
The update area detecting means includes
The update area to be divided is identified based on the movement direction of the movement area detected by the movement area detection means, and the coordinate position of the identified update area and the movement area detected by the movement area detection means are determined. The information processing apparatus according to claim 1, wherein the specified update area is further divided based on a relationship with a coordinate position.
前記移動領域検出手段で検出された移動領域の座標位置を基に画面を分割し、該分割した各々の分割領域を、前記更新領域検出手段において前記更新領域を検出する際の処理単位となる更新領域検出域に設定する更新領域検出域設定手段を有し、
前記更新領域検出手段は、
前記更新領域検出域設定手段により設定された前記更新領域検出域毎に、複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出し、該検出した更新領域の座標位置と、前記移動領域検出手段で検出された移動領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする請求項1または2記載の情報処理装置。
The screen is divided based on the coordinate position of the moving area detected by the moving area detecting means, and each divided area is updated as a processing unit when the update area detecting means detects the update area. Having an update area detection area setting means for setting in the area detection area;
The update area detecting means includes
For each update area detection area set by the update area detection area setting means, an image area that is different between the copied reference frame and the encoding target frame is detected as an update area, and the detected update area 3. The information processing apparatus according to claim 1, wherein the update area is further divided based on a relationship between a coordinate position and a coordinate position of the movement area detected by the movement area detection unit.
前記更新領域検出手段は、
前記更新領域の始点、終点の座標位置で構成される矩形の領域の中に、前記移動領域の座標位置が含まれている場合に、前記更新領域を更に分割することを特徴とする請求項1から3の何れか1項に記載の情報処理装置。
The update area detecting means includes
2. The update area is further divided when the coordinate position of the moving area is included in a rectangular area constituted by the coordinate positions of the start point and end point of the update area. 4. The information processing apparatus according to any one of items 1 to 3.
前記更新領域検出手段は、
前記更新領域の中で、複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域の領域変動量が最も大きい座標位置に、前記更新領域を分割するための分離線を設け、該設けた分離線を介して前記更新領域を更に分割することを特徴とする請求項1から4の何れか1項に記載の情報処理装置。
The update area detecting means includes
In the update region, a separation line for dividing the update region is provided at the coordinate position where the region variation amount of the image region that is different between the reference frame after copying and the encoding target frame is the largest, The information processing apparatus according to any one of claims 1 to 4, wherein the update area is further divided through a provided separation line.
前記更新領域検出域設定手段は、
前記移動領域検出手段で検出された移動領域の座標位置に、前記画面を分割するための分離線を設け、該設けた分離線を介して前記画面を分割することを特徴とする請求項3から5の何れか1項に記載の情報処理装置。
The update area detection area setting means includes:
4. A separation line for dividing the screen is provided at the coordinate position of the movement area detected by the movement area detection means, and the screen is divided through the provided separation line. The information processing apparatus according to any one of 5.
前記分離線を設ける前記座標位置を調整する調整手段を有することを特徴とする請求項5または6記載の情報処理装置。   The information processing apparatus according to claim 5, further comprising an adjusting unit that adjusts the coordinate position where the separation line is provided. 前記調整手段は、
前記座標位置を調整する調整方向を前記移動領域検出手段で検出された移動領域の移動方向を基に決定することを特徴とする請求項7記載の情報処理装置。
The adjusting means includes
The information processing apparatus according to claim 7, wherein an adjustment direction for adjusting the coordinate position is determined based on a movement direction of the movement area detected by the movement area detection unit.
情報処理装置で行う制御方法であって、
符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出工程と、
前記移動領域検出工程で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償工程と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出工程と、を有し、
前記更新領域検出工程は、
前記移動領域検出工程で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とする制御方法。
A control method performed by an information processing apparatus,
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. A moving area detecting step of detecting a moving image area as a moving area;
A motion compensation step of copying the image of the movement region detected in the movement region detection step to the coordinate position after movement on the reference frame;
An update area detecting step of detecting an image area that is different between the reference frame after copying and the encoding target frame as an update area, and
The update region detection step includes
A control method characterized by further dividing the update area based on the relationship between the coordinate position of the movement area detected in the movement area detection step and the coordinate position of the update area.
情報処理装置に実行させるプログラムであって、
符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、前記符号化対象フレームと前記参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する移動領域検出処理と、
前記移動領域検出処理で検出された移動領域の画像を、前記参照フレーム上で移動後の座標位置に複写する動き補償処理と、
複写後の前記参照フレームと前記符号化対象フレームとで相違する画像領域を更新領域として検出する更新領域検出処理と、を、コンピュータに実行させ、
前記更新領域検出処理は、
前記移動領域検出処理で検出された移動領域の座標位置と、前記更新領域の座標位置と、の関係を基に、前記更新領域を更に分割することを特徴とするプログラム。
A program to be executed by an information processing apparatus,
The encoding target frame to be encoded is compared with the encoded reference frame, and the position on the screen is moved in an image area that exists in both the encoding target frame and the reference frame. Moving area detection processing for detecting a moving image area as a moving area;
A motion compensation process for copying the image of the moving area detected in the moving area detection process to the coordinate position after movement on the reference frame;
An update area detection process for detecting, as an update area, an image area that is different between the reference frame after copying and the encoding target frame,
The update area detection process includes:
A program characterized in that the update area is further divided based on the relationship between the coordinate position of the movement area detected by the movement area detection process and the coordinate position of the update area.
JP2009183469A 2009-08-06 2009-08-06 Information processor, control method and program Pending JP2011040808A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009183469A JP2011040808A (en) 2009-08-06 2009-08-06 Information processor, control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009183469A JP2011040808A (en) 2009-08-06 2009-08-06 Information processor, control method and program

Publications (1)

Publication Number Publication Date
JP2011040808A true JP2011040808A (en) 2011-02-24

Family

ID=43768171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009183469A Pending JP2011040808A (en) 2009-08-06 2009-08-06 Information processor, control method and program

Country Status (1)

Country Link
JP (1) JP2011040808A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012208866A (en) * 2011-03-30 2012-10-25 Nec Corp Information processor, display update method, display update program, and information processing system
WO2014017003A1 (en) * 2012-07-25 2014-01-30 日本電気株式会社 Update area detection device
JP2015505208A (en) * 2011-12-20 2015-02-16 インテル・コーポレーション Enhanced wireless display
CN112070867A (en) * 2019-06-11 2020-12-11 腾讯科技(深圳)有限公司 Animation file processing method and device, computer readable storage medium and computer equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005522083A (en) * 2002-03-25 2005-07-21 エクスパートシティー.コム, インコーポレイテッド Method and apparatus for rapid block motion detection

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005522083A (en) * 2002-03-25 2005-07-21 エクスパートシティー.コム, インコーポレイテッド Method and apparatus for rapid block motion detection

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012208866A (en) * 2011-03-30 2012-10-25 Nec Corp Information processor, display update method, display update program, and information processing system
JP2015505208A (en) * 2011-12-20 2015-02-16 インテル・コーポレーション Enhanced wireless display
US9756333B2 (en) 2011-12-20 2017-09-05 Intel Corporation Enhanced wireless display
WO2014017003A1 (en) * 2012-07-25 2014-01-30 日本電気株式会社 Update area detection device
US9633414B2 (en) 2012-07-25 2017-04-25 Nec Corporation Update region detection device
CN112070867A (en) * 2019-06-11 2020-12-11 腾讯科技(深圳)有限公司 Animation file processing method and device, computer readable storage medium and computer equipment
JP2022517836A (en) * 2019-06-11 2022-03-10 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 Video file processing methods and devices, computer programs and computer devices
JP7357681B2 (en) 2019-06-11 2023-10-06 ▲騰▼▲訊▼科技(深▲セン▼)有限公司 Video file processing method and device, computer program, and computer device

Similar Documents

Publication Publication Date Title
US8467575B2 (en) Moving-object detection apparatus, moving-object detection method and moving-object detection program
US8718324B2 (en) Method, apparatus and computer program product for providing object tracking using template switching and feature adaptation
JP5272886B2 (en) Moving object detection apparatus, moving object detection method, and computer program
US20110002550A1 (en) Update region detection device
JP5522174B2 (en) Video encoding device
CN109040792B (en) Processing method for video redirection, cloud terminal and cloud desktop server
KR102598459B1 (en) Lost foot recovery of human objects from image sequences based on horizon detection.
JP2011040808A (en) Information processor, control method and program
US8379095B2 (en) Method and apparatus for determining presence of user&#39;s hand tremor or intentional motion
US8891833B2 (en) Image processing apparatus and image processing method
JP2005252359A (en) Motion vector detecting apparatus, motion vector detection method and computer program
JP4525064B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
JP4622265B2 (en) Motion vector detection device, motion vector detection method, and program
WO2022172341A1 (en) Object detection device, method, and program
JP6540445B2 (en) Same determination program, same determination apparatus, and same determination method
JP2005252360A (en) Motion vector detecting apparatus, motion vector detection method and computer program
JP2009075926A (en) Moving image face detection device and method
JP4207764B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
KR20140103021A (en) Object recognition device
US8249152B2 (en) Video image segmentation
JP2004164479A (en) Device, method, and program for generating image deformation information
WO2023017723A1 (en) Information processing device, information processing system, information processing method, and program
JP2019057886A (en) Encoder, encoding method, and program
WO2021261141A1 (en) Object detection device and object detection method
JP7459151B2 (en) Information processing device, information processing system, information processing method, and program

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110513

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20110920

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120717

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130312

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130528