JP2011040808A - Information processor, control method and program - Google Patents
Information processor, control method and program Download PDFInfo
- 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
Links
Images
Abstract
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).
上述した特許文献1に開示されているシンクライアントシステムにおいても、コンピュータ画面の描画データをサーバ装置からシンクライアント端末に転送する際に、サーバ装置側でウィンドウ等の画像領域の移動を検出し、該検出した画像領域を基に、動き補償を行うことで転送データ量を削減することができる。
Even in the thin client system disclosed in
しかし、ウィンドウ等の画像領域が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.
<本実施形態のシンクライアントシステムの概要>
まず、図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
本実施形態のサーバ装置100は、図7に示すように、符号化対象の符号化対象フレームと、符号化済みの参照フレームと、を比較し、符号化対象フレームと参照フレームとの何れにも存在する画像領域であって画面上での位置が移動している画像領域を移動領域として検出する(ステップS4)。そして、そのステップS4で検出した移動領域の画像を、参照フレーム上で移動後の座標位置に複写し、動き補償を行う(ステップS6)。次に、複写後の参照フレームと符号化対象フレームとで相違する画像領域を更新領域として検出する(ステップS8)。この時、ステップS4で検出した移動領域の座標位置と、ステップS8で検出した更新領域の座標位置と、の関係を基に、ステップS8で検出した更新領域を更に分割する。
As illustrated in FIG. 7, the
これにより、サーバ装置100は、更新領域として検出する領域を低減し、シンクライアント端末200-1〜nに出力する転送データ量を削減することができる。このため、ネットワークNWの負荷を軽減し、効率的なデータ転送を行うことができる。以下、添付図面を参照しながら、本実施形態のシンクライアントシステムについて詳細に説明する。
Thereby, the
<シンクライアントシステムのシステム構成例>
まず、図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
サーバ装置100は、サーバ装置100で管理する各種情報をシンクライアント端末200-1〜nに送信する装置である。
The
シンクライアント端末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
<サーバ装置100の内部構成例>
次に、図6を参照しながら、本実施形態のサーバ装置100の内部構成例について説明する。
<Internal configuration example of
Next, an example of the internal configuration of the
本実施形態のサーバ装置100は、記憶部10と、制御部20と、通信部30と、を有して構成する。
The
<記憶部10>
記憶部10は、各種情報を記憶する。本実施形態の記憶部10は、符号化対象フレーム記憶部11と、参照フレーム記憶部12と、を含んで構成する。
<
The
符号化対象フレーム記憶部11は、符号化対象の符号化対象フレームを記憶する。制御部20は、符号化対象となる映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶する。例えば、図示しないコンピュータのディスプレイ画面のカラー映像信号をアナログキャプチャあるいはディジタルキャプチャし、そのキャプチャした1画面分の映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶する。また、図示しないコンピュータのディスプレイ画面のカラー映像信号を生成するためにコンピュータ内部に格納している画像情報からデータをキャプチャし、そのキャプチャした1画面分の映像信号を符号化対象フレームとして符号化対象フレーム記憶部11に記憶することも可能である。
The encoding target
参照フレーム記憶部12は、符号化対象フレーム記憶部11に記憶されている符号化対象フレームを符号化する際に使用する符号化済みの参照フレームを記憶する。
The reference
<制御部20>
制御部20は、サーバ装置100を統括して制御する。本実施形態の制御部20は、移動ベクトル検出部21と、移動領域検出部22と、動き補償部23と、更新領域検出域設定部24と、更新領域検出部25と、領域符号化部26と、を含んで構成する。
<
The
移動ベクトル検出部21は、符号化対象フレームと、参照フレームと、を比較し、主要な1つの移動ベクトルを検出する。主要な移動ベクトルとは、1以上の移動ベクトルの内の支配的なものを意味する。例えば、コンピュータの画面で地図スクロールとマウスカーソル移動が同時に発生した場合、移動ベクトルの大部分は地図スクロールが占めるため、地図スクロールによる移動ベクトルを主要な移動ベクトルとして検出する。なお、移動ベクトルの検出方法は、特に限定するものではなく、あらゆる検出方法が適用可能である。なお、符号化対象フレームと、参照フレームと、を画面全体で比較することで、ウィンドウ等の比較的大きなオブジェクト単位での移動ベクトルが主要な移動ベクトルとして検出することができる。
The movement
移動領域検出部22は、符号化対象フレームと参照フレームとの何れにも存在する同一または類似の画像領域であって、画面上での位置が移動ベクトル検出部21で検出された移動ベクトルだけ変化している画像領域を移動領域として検出する。なお、移動領域の検出方法は、特に限定するものではなく、後述する動き補償を行うことが可能であれば、あらゆる検出方法が適用可能である。
The movement
動き補償部23は、移動領域検出部22で検出された移動領域を、参照フレーム内で移動ベクトルが示す移動先に複写し、動き補償後の参照フレームを生成する。なお、動き補償の方法は、特に限定するものではなく、例えば、MPEG等に規定されているあらゆる動き補償の方法が適用可能である。
The
更新領域検出域設定部24は、フレーム上に1以上の更新領域検出域を設定する。
The update area detection
更新領域検出部25は、更新領域検出域設定部24により設定された更新領域検出域毎に、動き補償後の参照フレームと符号化対象フレームとで相違する矩形の画像領域を更新領域として検出する。また、更新領域検出部25は、その検出した更新領域の位置座標と、移動領域検出部22が検出した移動領域の座標位置と、の関係を基に、更新領域を更に分割する。
The update
領域符号化部26は、更新領域検出部25で検出された更新領域を画像として任意の符号化方式によって符号化した符号を生成する。
The
通信部30は、記憶部10に記憶された各種情報の通信制御を行う。例えば、符号化対象フレーム記憶部11に記憶されている符号化対象フレームについて生成された符号情報をシンクライアント端末200-1〜nに送信する。なお、1つの符号化対象フレームについて生成された符号情報には、領域符号化部26で生成された更新領域の符号情報、移動ベクトル検出部21と移動領域検出部22で検出された移動領域情報(移動元の領域の座標情報と移動ベクトル情報)が含まれる。シンクライアント端末200-1〜nは、サーバ装置100から送信された符号情報を受信し、その受信した符号情報を基に、符号化対象フレームを復号することになる。
The
<シンクライアントシステムにおける一連の処理動作>
次に、図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
移動ベクトル検出部21は、符号化対象フレーム記憶部11に記憶された符号化対象フレームと、参照フレーム記憶部12に記憶されている参照フレームと、を比較し、主要な1つの移動ベクトルを検出する(ステップS2)。
The motion
例えば、図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
図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
例えば、図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
図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
次に、動き補償部23は、移動領域が検出された場合は(ステップS5/Yes)、参照フレーム上で移動前の移動領域Bの画像を移動ベクトル303が示す移動後の位置へ複写する動き補償を行い、参照フレーム記憶部12に記憶されている参照フレームを更新する(ステップS6)。
Next, when a movement area is detected (step S5 / Yes), the
例えば、図8の場合、参照フレーム302上で、領域305を符号化対象フレーム301における領域304に相当する位置にコピーする。これにより、図9(a)に示すように、動き補償後の参照フレーム306が生成される。
For example, in the case of FIG. 8, the
但し、移動ベクトルが検出されなかった場合は(ステップ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
次に、更新領域検出部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
次に、領域符号化部26は、更新領域検出部25で検出された更新領域を画像として符号化した符号を生成する(ステップS9)。領域符号化部26は、生成した符号の情報を、記憶部10に記憶されている更新領域307〜312の座標情報に対応付けて一時的に保存する。
Next, the
通信部30は、符号化対象フレームについて生成された情報、即ち、各更新領域の座標情報、その符号情報及び移動領域情報(移動元の領域の座標情報と移動ベクトル情報)を記憶部10から読み出し、その読み出した情報をシンクライアント端末200-1〜nに出力する(ステップS10)。
The
例えば、図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
シンクライアント端末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
このように、サーバ装置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
<更新領域検出域設定部24>
次に、図10を参照しながら、更新領域検出域設定部24について説明する。
<Update area detection
Next, the update area detection
更新領域検出域設定部24は、図10に示すように、移動領域有無判定部241と、分割部242と、を含んで構成する。
The update area detection
移動領域有無判定部241は、移動領域検出部22で移動領域が検出されたか否かを判定する。
The moving region presence /
分割部242は、移動領域有無判定部241の判定結果に従って画面分割の必要性の判定および画面分割による更新領域検出域の設定を行う。
The dividing
<更新領域検出域設定部24の処理動作例>
次に、図11を参照しながら、更新領域検出域設定部24の処理動作例について説明する。
<Example of processing operation of update area detection
Next, an example of processing operation of the update area detection
移動領域有無判定部241は、移動領域検出部22の検出結果を記憶部10から読み出し、検出結果を解析することで、移動領域が検出されたか否かを判定する(ステップS71)。
The moving region presence /
分割部242は、移動領域が検出されなかった場合は(ステップS71/No)、画面全体を1つの更新領域検出域に設定する(ステップS72)。
When the moving area is not detected (step S71 / No), the dividing
また、移動領域が検出された場合は(ステップ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
例えば、図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について説明する。
<
Next, the update
更新領域検出部25は、更新領域検出域設定部24により設定された各々の更新領域検出域毎に、動き補償後の参照フレーム(図9(a)に示す306)と、符号化対象フレーム(図8(b)に示す301)と、で相違する画像領域を更新領域として検出する。更新領域検出部25は、図14に示すように、更新領域抽出部251と、分割部252と、を含んで構成する。
For each update region detection region set by the update region detection
更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する。なお、所定の閾値は、任意に設定変更可能であり、例えば、0に設定することも可能である。
The update
分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し、移動前後の移動領域Bの座標位置を含む更新領域がある場合は、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する。領域変動量(ΔY)は、動き補償後の参照フレームと、符号化対象フレームと、の画素値の差分が所定の閾値(0を含む)よりも大きな画素値で構成する領域の変動量を意味する。
The dividing
<更新領域検出部25の処理動作例>
次に、図15を参照しながら、更新領域検出部25の処理動作例について説明する。
<Example of processing operation of update
Next, an example of the processing operation of the update
更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する(ステップS81)。
The update
分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し(ステップS82)、移動前後の移動領域Bの座標位置を含む更新領域がある場合は(ステップS82/Yes)、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する(ステップS83)。
The dividing
本実施形態では、図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
更に、本実施形態では、分割部252は、更新領域抽出部251で抽出した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域がある場合は、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割することにしている。
Furthermore, in this embodiment, the dividing
例えば、図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
また、図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
これにより、更新領域検出部25は、図22に示すように、更新領域として検出する領域の合計面積を図13よりも更に小さくでき、その分、符号量の削減を行うことができる。また、無駄な更新領域の情報を送信することがないため、ネットワークNWの負荷を更に軽減し、効率的なデータ転送を行うことができる。
Thereby, as shown in FIG. 22, the update
なお、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
<本実施形態のシンクライアントシステムの作用・効果>
このように、本実施形態のシンクライアントシステムでは、サーバ装置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
その結果、サーバ装置100は、更新領域として検出する領域を低減し、シンクライアント端末200-1〜nに出力する転送データ量を削減することができる。このため、ネットワークNWの負荷を軽減し、効率的なデータ転送を行うことができる。
As a result, the
なお、上記実施形態では、更新領域の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
しかし、移動後の移動領域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
また、移動前の移動領域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
(第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
<更新領域検出部25の処理動作例>
まず、図23を参照しながら、更新領域検出部25の処理動作例について説明する。
<Example of processing operation of update
First, an example of the processing operation of the update
更新領域抽出部251は、更新領域検出域毎に、動き補償後の参照フレームと、符号化対象フレームと、における同じ位置の画素値の差分を算出し、該算出した差分と、所定の閾値と、を比較する。そして、更新領域抽出部251は、所定の閾値よりも大きな差分が検出された画素値を含む画像領域を更新領域として抽出する(ステップS81)。
The update
分割部252は、移動ベクトル検出部21で検出された移動ベクトルの移動方向を基に、次のステップS82で分割判定を行う更新領域を特定する(ステップS'811)。
Based on the movement direction of the movement vector detected by the movement
例えば、図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
また、図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
また、図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
このように、分割部252は、移動ベクトル検出部21で検出された移動ベクトルの移動方向に応じて、ステップS82で分割判定を行う更新領域を一意に特定することになる。
As described above, the dividing
次に、分割部252は、ステップS'811の工程で特定した更新領域の中に、移動前後の移動領域Bの座標位置を含む更新領域があるか否かを判定し(ステップS82)、移動前後の移動領域Bの座標位置を含む更新領域がある場合は(ステップS82/Yes)、その更新領域のY方向の領域変動量(ΔY)が最も大きい座標位置に分離線を設け、その分離線を介して更新領域を更に分割する(ステップS83)。
Next, the dividing
<本実施形態のシンクライアントシステムの作用・効果>
このように、本実施形態のシンクライアントシステムでは、サーバ装置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
なお、上記処理動作では、移動ベクトル検出部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
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。 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
また、上記実施形態では、更新領域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
また、上述した本実施形態におけるサーバ装置100を構成する各装置における制御動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成を用いて実行することも可能である。
Further, the control operation in each device constituting the
なお、ソフトウェアを用いて処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させることが可能である。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。 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
本発明は、データ転送サービスに適用可能である。 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
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.
前記座標位置を調整する調整方向を前記移動領域検出手段で検出された移動領域の移動方向を基に決定することを特徴とする請求項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.
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)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005522083A (en) * | 2002-03-25 | 2005-07-21 | エクスパートシティー.コム, インコーポレイテッド | Method and apparatus for rapid block motion detection |
-
2009
- 2009-08-06 JP JP2009183469A patent/JP2011040808A/en active Pending
Patent Citations (1)
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)
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'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 |