JP5071727B2 - 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム - Google Patents

画面データ送信装置、画面データ送信方法及び画面データ送信プログラム Download PDF

Info

Publication number
JP5071727B2
JP5071727B2 JP2008087121A JP2008087121A JP5071727B2 JP 5071727 B2 JP5071727 B2 JP 5071727B2 JP 2008087121 A JP2008087121 A JP 2008087121A JP 2008087121 A JP2008087121 A JP 2008087121A JP 5071727 B2 JP5071727 B2 JP 5071727B2
Authority
JP
Japan
Prior art keywords
difference
block
frame rate
frame
screen data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008087121A
Other languages
English (en)
Other versions
JP2009246415A (ja
Inventor
勇次 古田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2008087121A priority Critical patent/JP5071727B2/ja
Publication of JP2009246415A publication Critical patent/JP2009246415A/ja
Application granted granted Critical
Publication of JP5071727B2 publication Critical patent/JP5071727B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、画面データを送信する画面データ送信装置、画面データ送信方法及び画面データ送信プログラムに関し、特に、サーバ装置に備わり、シンクライアント(thin client)に画面を送信する画面データ送信装置、画面データ送信方法及び画面データ送信プログラムに関する。
近年、シンクライアント及びそれに対応したサーバを有するシンクライアントシステムが普及してきている。シンクライアントシステムにおいては、サーバがアプリケーションプログラムやデータファイルを保有し、シンクライアントは、必要最低限の機能を有する。
画面転送型のシンクライアントシステムにおいては、シンクライアントの画面に表示する画面データもサーバが保有する。そして、変化のあった画面データをサーバからシンクライアントに送信し、シンクライアントは、サーバから送られてきた画面データを基に、表示画面データを再構築する。
次に、変化のあった画面データをサーバからシンクライアントに送信するための基本的な画面データ送信装置について説明する。
図1を参照すると、基本的な画面データ送信装置は、書込部901、偶数フレームメモリ903、奇数フレームメモリ905、差分存在領域検出部907及び差分存在部分送信部909を備える。
書込部901は、シンクライアントで表示するべき画面データと同一の画面データよりなる出力フレームを入力し、出力フレームのうち偶数フレームを偶数フレームメモリ903に書き込み、奇数フレームを奇数フレーム905に書き込む。
差分存在領域検出部907は、例えば、図2に示すような32画素×32画素のブロックを単位として、偶数フレームメモリ903に書き込まれている画面データと奇数フレームメモリ905に書き込まれている画面データとを比較し、差分存在領域を検出する。差分存在領域は(32×n)画素×(32×m)画素の矩形の領域であってもよいし、図3の差分存在領域で示すような領域であってもよい。
差分存在領域送信部909は、差分存在領域検出部907で検出された差分存在領域の画面データを符号化し、符号化された画面データをシンクライアントに送信する。符号化のためには、例えば、ウェーブレット変換、ハフマン符号化などが用いられる。
次に、図4を参照して、図1に示す基本的な画面データ送信装置の動作を説明する。
まず、書込部901が、最初の出力フレームを入力する(ステップS951)。
次に、入力した出力フレームは、偶数フレームであるのか又は奇数フレームであるのかを判断する(ステップS953)。
偶数フレームである場合には、入力した出力フレームの画面データを偶数フレームメモリ903に書き込む(ステップS955)。他方、奇数フレームである場合には、入力した出力フレームの画面データを奇数フレームメモリ905に書き込む(ステップS957)。
ステップS955又はステップS957の次に、差分存在領域検出部907は、差分存在領域を検出する(ステップS959)。
次に、差分存在領域送信部909は、全ての差分存在領域について、差分存在領域のデータの送信(ステップS963)を、繰り返す(ステップS961)。
次に、書込部901は、次の出力フレームの画面データを入力し(ステップS965)、ステップS953に戻る。
差分存在領域は、図5に示すように、第nフレームになかったウィンドウ701が第(n+1)フレームで現れた場合には、符号703で示す領域である。また、差分存在領域は、図6に示すように、自動車705が第nフレームで図7(a)に示すような位置にあり、第(n+1)フレームで図7(b)に示すような位置にある場合には、図7(c)に示すような、自動車705が走り去った後の背景を含む領域707と新たに自動車705を含むこととなった領域709である。
図7にシンクライアントのうち表示画面に関連する部分を示す。
復号部821は、差分存在領域送信部809により符号化された画面データを復号する。
フレームメモリ823は、復号された画面データを格納する。
表示部825は、フレームメモリ823に格納されている画面データを読み出して、表示装置に出力する。
特開平11−285001号公報 クライアント統合ソリューション、画面転送型、平成20年2月15日検索、 インターネット<URL: http://www.nec.co.jp/clsol/gamentenso.html>
シンクライアント1台当たりの画面送信のためのビットレートは予め定められている。そして、所定の差分以上の差分がある画面ブロックのデータは全て送信される。従って、所定の差分以上の差分がある画面ブロックが多い場合には、1ブロック当たりの割当ビット数が少なくなり、画面が劣化する。これは、特に、画面に動画の広いウィンドウが存在する場合に顕著である。
ところで、マウスカーソルも画面データとして送信される。図8(a)に示すように、マウスカーソルが動かない場合には、そのマウスカーソルを含むブロックのブロックデータは伝送されない。
図8(b)に示すように、マウスカーソルが動いた場合には、移動後のマウスカーソルを含むブロックのブロックデータが伝送される。マウスカーソルがあるブロックから他のブロックに移動した場合には、移動前のマウスカーソルを含むブロックのブロックデータも伝送される。
図8(c)に示すように、マウスカーソルが、4つのブロックに跨る領域に動いた場合には、移動後のマウスカーソルを含む4つのブロックのブロックデータが伝送される。
このように、マウスカーソルも画面データとして送信されるため、画面に動画が含まれる場合、特に、広い領域を占める動画が含まれる場合には、マウスカーソルの画質が劣化する。ところが、マウスカーソルは、画面中でユーザが最も注目している領域の中心であるため、マウスカーソルの画質を維持する必要がある。
マウスカーソルについて上記したことは、キャラクタカーソルについても同様である。
そこで、本発明は、広い領域を占める動画が画面に含まれる場合であっても、カーソルの画質を維持することを可能とする画面データ送信装置及びその方法を提供することを目的とする。
本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信装置であって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出手段と、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減手段と、前記差分検出手段の検出結果が肯定的であるブロックであって、前記フレームレート低減手段により設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信手段と、前記差分検出手段の検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出手段とを備え、前記フレームレート低減手段は、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信装置が提供される。
また、本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信装置であって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出手段と、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減手段と、前記差分検出手段の検出結果が肯定的であるブロックであって、前記フレームレート低減手段により設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信手段と、前記差分検出手段の検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出手段とを備え、前記フレームレート低減手段は、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信装置が提供される。
また、本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信方法であって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、前記フレームレート低減ステップでは、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法が提供される。
また、本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信方法であって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出ステップ検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、前記フレームレート低減ステップでは、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法が提供される。
更に、本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信プログラムであって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、前記フレームレート低減ステップでは、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法をコンピュータに実行させるための画面データ送信プログラムが提供される。
また、本発明によれば、所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信プログラムであって、入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出ステップ検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、前記フレームレート低減ステップでは、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法をコンピュータ実行させるための画面データ送信プログラムが提供される。
本発明によれば、動画に割り当てる符号量を低く抑えることができるため、広い領域を占める動画が画面に含まれる場合であっても、カーソルの画質を維持することができる。
以下、図面を参照して本発明を実施するための最良の形態について詳細に説明する。
[実施形態1]
図9は、本発明の実施形態1により送信される画面の例を示す図である。
図9を参照すると、マウスカーソル102を含むブロック101は、マウスカーソル102が動いている時には、60fps(frame per second)で送信される。ウィンドウ103に含まれる小さな差分存在領域104も60fpsで送信される。ウィンドウ105に含まれる中程度の広さの差分存在領域106は30fpsで送信される。ウィンドウ107に含まれる中程度の広さの差分存在領域108は30fpsで送信される。ウィンドウ107に含まれる広い差分存在領域109は20fpsで伝送される。
このように、差分存在領域に含まれるブロックは、差分存在領域のサイズが広くなればなるほど遅いフレームレートで送信される。
図10を参照すると、本発明の実施形態1による画面データ送信装置は、書込部121、偶数フレームメモリ123、奇数フレームメモリ125、コピー部127、差分存在領域検出部129、差分存在領域サイズ検出部131、フレーム番号カウンタ133、送信フレーム判断部135、送信/コピー判断部137及び差分存在領域送信部139を備える。
書込部121は、出力フレームの画面データを入力し、偶数フレームの画面データを偶数フレームメモリ123に書き込み、奇数フレームの画面データを奇数フレームメモリ125に書き込む。
偶数フレームメモリ123は、偶数フレームの画面データ及びコピー部127により書き込まれた差分存在領域のブロックのデータを格納する。
奇数フレームメモリ125は、奇数フレームの画面データ及びコピー部127により書き込まれた差分存在領域のブロックのデータを格納する。
コピー部127は、送信/コピー判断部137からの指示に従い、差分存在領域のブロックのうち送信されないブロックのデータを、直前のフレームの画面データを格納しているフレームメモリ(偶数フレームメモリ123又は奇数フレームメモリ125)から現在のフレームの画面データを格納しているフレームメモリ(奇数フレームメモリ125又は偶数フレームメモリ123)にコピーする。
差分存在領域検出部129は、差分存在領域検出部907と同様に、例えば、図2に示すような32画素×32画素のブロックを単位として、偶数フレームメモリ123に書き込まれている画面データと奇数フレームメモリ125に書き込まれている画面データとを比較し、差分存在領域を検出する。差分存在領域は(32×n)画素×(32×m)画素の矩形の領域であってもよいし、図3の差分存在領域で示すような領域であってもよい。
差分存在領域サイズ検出部131は、差分存在領域を、例えば、大領域、中領域、小領域などのように大きさに応じて分類する。例えば、差分存在領域である(32×n)画素×(32×m)画素の矩形の領域のm×nの値が第1の閾値よりも大きければ、その領域を大領域とし、m×nの値が第1の閾値以下であるが、第1の閾値よりも小さい第2の閾値よりも大きければその領域を中領域とし、m×nの値が第2の閾値以下であれば、その領域を小領域とする。
フレーム番号カウンタ133、フレーム毎にカウント値を1ずつ増加させる。
送信フレーム判断部135は、図11に示すように、大領域、中領域、小領域毎に、各フレームで差分存在領域の画面データを送信するかどうか判断する。例えば、大領域については、フレーム番号を3で除算して得られる残余がゼロであれば、現在のフレームの差分存在領域の画面データを送信する。また、中領域については、フレーム番号を2で除算して得られる残余がゼロであれば、現在のフレームの差分存在領域の画面データを送信する。更に、小領域については、現在のフレームの全ての差分存在領域の画面データを送信する。こうすることにより、大領域については、3フレーム毎に1回、現在のフレームの差分存在領域の画面データを送信し、中領域については、2フレーム毎に1回、現在のフレームの差分存在領域の画面データを送信し、小領域については、毎フレーム、現在のフレームの差分存在領域の画面データを送信することとなる。
送信/コピー判断部137は、差分存在領域サイズ検出部131から入力した各差分存在領域の大きさの分類及び送信フレーム判断部135から入力した、差分領域の大きさの分類毎の送信の可否を基に、差分存在領域検出部129で検出した各差分存在領域を送信するのか、又は、偶数フレームメモリ123と奇数フレームメモリ125との間でコピーをするのかを判断する。
差分存在領域送信部139は、送信/コピー判断部137により送信するべきであると判断された差分存在領域に含まれる各ブロックのデータを符号化してシンクライアントに送信する。
次に、図10に示す画面データ送信装置の動作について、図12を参照して説明する。
まず、書込部121は、最初の出力フレームの画面データを入力する(ステップS151)。
次に、入力した出力フレームは、偶数フレームであるのか、又は、奇数フレームであるのかを判断する(ステップS153)。この判断のためには、フレーム番号カウンタ133のLSBを用いてもよい。
偶数フレームである場合には、入力した出力フレームの画面データを偶数フレームメモリ123に書き込む(ステップS155)。他方、奇数フレームである場合には、入力した出力フレームの画面データを奇数フレームメモリ125に書き込む(ステップS157)。
次に、差分存在領域検出部129は、偶数フレームメモリ123に格納されている偶数フレームの画面データと奇数フレームメモリ125に格納されている奇数フレームの画面データとを比較することにより差分存在領域を検出する(ステップS159)。具体的には、例えば、図3に示すように、フレーム間の差分のある画素を少なくとも1つ含むブロック(○を付けてある差分存在ブロック)を中心とした3ブロック×3ブロックの領域を設け、これらを合わせたものを差分存在領域としてもよい。また、動画アプリケーションを検出し、そのアプリケーションの画面の位置情報により差分存在領域を検出してもよい。更に、マウスカーソルやキャラクタカーソルの位置を検出し、カーソルを含むブロックの集合を差分存在領域としてもよい。
次に、全ての差分存在領域について、ステップS163からの動作を繰り返す(ステップS161S〜ステップS161E)。なお、図示していないが、現在のフレームに差分存在領域が存在しないならば、ステップS159からステップS175に直接進む。
ステップS163では、差分存在領域サイズ検出部131は、差分存在領域の大きさを判断する。検出方法は、上述したとおりである。サイズが大である場合にはステップS165に進み、サイズが中である場合にはステップS167に進み、サイズが小である場合にはステップS169に進む。
ステップS165では、送信/コピー判断部137が、現在のフレームは、大の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
同様に、ステップS167では、送信/コピー判断部137が、現在のフレームは、中の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
更に同様に、ステップS169では、送信/コピー判断部137が、現在のフレームは、小の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
ステップS171では、差分存在領域送信部139が、現在扱っている差分存在領域に含まれる各ブロックのデータを符号化して、シンクライアントに送信する。
ステップS173では、コピー部127が、現在扱っている差分存在領域の各ブロックのデータを1つ前のフレームの画面データを格納しているフレームメモリ(偶数フレームメモリ123又は奇数フレームメモリ125)から現在のフレームの画面データを格納しているフレームメモリ(奇数フレームメモリ125又は偶数フレームメモリ123)にコピーする。
ステップS161の繰り返しが終了したならば、次の出力フレームの画面データを入力し(ステップS175)、ステップS153に戻る。
次に、差分存在領域のうち送信しない差分存在領域をフレームメモリ間でコピーすることの意義について説明する。
例えば、図13に示すように、中程度の大きさの差分存在領域を含む画面データがあったとする。第nフレームの中程度の大きさの差分領域の内容はAであり、第(n+1)フレームの中程度の大きさの差分領域の内容はBであり、第(n+2)フレームの中程度の大きさの差分領域の内容もBであるとする。中程度の大きさの差分領域については、フレームレートを1/2に落とすので、2フレームにつき1フレームを送信する。そうすると、第nフレームの次に第(n+2)フレームのデータを送信する。従って、第nフレームでは、内容がAである中程度の大きさの差分存在領域に含まれるブロックのデータを送信し、第(n+2)フレームでは、内容がBである中程度の大きさの差分存在領域に含まれるブロックのデータを送信する必要がある。
ところが、図14に示すように、フレームメモリ間で差分存在領域のコピーを行わない場合には、第(n+2)フレームで内容Bと内容Bとを比較することとなり、結果として、差分がないという判断がなされる。従って、第(n+2)フレームの内容がBの中程度の大きさの差分存在領域が送信されないこととなってしまう。
これに対し、図15に示すように、本発明に従って、フレームメモリ間で差分存在領域のコピーを行う場合には、第(n+2)フレームで内容Aと内容Bとを比較することとなり、結果として、差分があるという判断がなされる。従って、第(n+2)フレームの内容がBの中程度の大きさの差分存在領域が送信されることとなる。
[実施形態2]
実施形態1では、差分存在領域の送信レートを差分存在領域の大きさのみによって決めていたが、実施形態2では、差分存在領域の送信レートを差分存在領域の大きさ及び動き量履歴によって決める。
図16は、実施形態2による本発明の実施形態2による画面データ送信装置の構成を示すブロック図である。図10と図16とを比較すると明らかなように、実施形態2では、実施形態1と比較し、動き量履歴計算部141が追加されている点が異なる。また、送信/コピー判断部137の動作が異なる。
動き量履歴は、画面の全ての32画素×32画素のブロックに対して存在する。図17は、各ブロックについての動き量履歴計算部141の動作を説明するためのフローチャートである。
図17を参照すると、まず、動き量履歴Mを初期値に設定する(ステップS201)。次に、偶数フレームメモリ123に格納されているブロックと奇数フレームメモリ125に格納されている同位置のブロックとの間に差分があるか否かを判断する(ステップS203)。差分がある場合には(ステップS203でYES)、動き量履歴MにΔAを加算する(ステップS205)。差分がない場合には(ステップS203でNO)、動き量履歴MからΔBを減算する(ステップS207)。
ステップS205又はステップS207の次に、動き量履歴Mが上限値を上回るか否かを判断し(ステップS209)、そうである場合には(ステップS209でYES)、動き量履歴Mに上限値を設定する(ステップS211)。
ステップS209又はステップS211の次に、動き量履歴Mが下限値を下回るか否かを判断し(ステップS213)、そうである場合には(ステップS213でYES)、動き量履歴Mに下限値を設定する(ステップS215)。
次のフレームが来たならば、ステップS203からの動作を繰り返す。
従って、動き量履歴Mは、各ブロックの差分が出現した頻度を示す量となる。
図18は、レベルと送信フレームとの対応関係を示す。レベルは、差分存在領域のサイズから置き換わるものである。
レベル1では、毎フレーム差分存在領域のデータが送信される。レベル2では、2フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル3では、3フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル4では、4フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル5では、5フレームにつき1フレームだけ差分存在領域のデータが送信される。
図19は、サイズと差分存在領域についての動き量履歴との組合せとレベルとの対応関係を示す。ここで、差分存在領域についての動き量履歴とは、各差分存在領域に存在するブロックに跨る動き量履歴の算術平均値、幾何平均値、中央値、最大値又は最小値などである。
図19を参照すると明らかなように、差分存在領域の大きさが同じ分類に属する場合であっても、動き量履歴が大きいほどレベルが大きくなる。従って、差分存在領域の大きさが同じ分類に属する場合であっても、動き量が大きいほどフレームレートが下がる。
また、図19を参照すると明らかなように、動き量履歴が下限値である場合には、差分存在領域の大きさに関係なく、レベル1が選択される。従って、差分存在領域の大きさに関係なく、それまで動きがなかった領域に動きが生じたならば、遅延なく画面データが送られる。
図16に示す画面データ送信装置の動作を図20に示す。
図20を図12と比較すると明らかなように、実施形態2は、実施形態1と比較すると、ステップS163、S165、S167及びS169がステップS181、S183、S185、S187、S189及びS191に置き換わっている点のみが異なる。
ステップS181では、送信/コピー判断部137が、現在の差分存在領域がどのレベルのものであるのかを判断する。現在の差分存在領域がレベル1のものである場合にはステップS183に進み、現在の差分存在領域がレベル2のものである場合にはステップS185に進み、現在の差分存在領域がレベル3のものである場合にはステップS187に進み、現在の差分存在領域がレベル4のものである場合にはステップS189に進み、現在の差分存在領域がレベル5のものである場合にはステップS191に進む。
ステップS183では、現フレームはレベル1の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
同様に、ステップS185では、現フレームはレベル2の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
同様に、ステップS187では、現フレームはレベル3の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
同様に、ステップS189では、現フレームはレベル4の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
同様に、ステップS191では、現フレームはレベル5の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
なお、本発明による画面データ送信装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。
本発明は、画面転送型シンクライアントシステムなどの画面を転送するシステムに適用することができる。
本発明に関連した画面データ送信装置の構成を示すブロック図である。 画面を送信ブロックに分割した様子を示す図である。 差分存在領域を抽出する方法を説明するための図である。 図1に示す画面データ送信装置の構成を示すブロック図である。 画面転送型のシンクライアントに送信される画面領域の一例を示す図である。 画面転送型のシンクライアントに送信される画面領域の他の一例を示す図である。 シンクライアントの画面表示に関連した部分を示すブロック図である。 マウスカーソルと送信されるブロックとの関係を示す図である。 本発明の実施形態に従って、差分存在領域の大きさによって送信レートが異なる様子を説明するための図である。 本発明の実施形態1による画面データ送信装置の構成を示すブロック図である。 本発明の実施形態1に従って、差分存在領域のサイズによってフレームレートが異なる様子を示す図である。 図10に示す画面データ送信装置の動作を示すフローチャートである。 本発明の実施形態において、差分存在領域のうち送信しない差分存在領域をフレームメモリ間でコピーすることの意義について説明する第1の図である。 本発明の実施形態において、差分存在領域のうち送信しない差分存在領域をフレームメモリ間でコピーすることの意義について説明する第2の図である。 本発明の実施形態において、差分存在領域のうち送信しない差分存在領域をフレームメモリ間でコピーすることの意義について説明する第3の図である。 本発明の実施形態2による画面データ送信装置の構成を示すブロック図である。 図16に示す動き量履歴計算部の動作を示すフローチャートである。 本発明の実施形態1に従って、レベルによってフレームレートが異なる様子を示す図である。 差分検出領域の大きさと動き量履歴との組合せとレベルとの関係を示す表である。 図16に示す画面データ送信装置の動作を示すフローチャートである。
符号の説明
121 書込部
123 偶数フレームメモリ
125 奇数フレームメモリ
127 コピー部
129 差分存在領域検出部
131 差分存在領域サイズ検出部
133 フレーム番号カウンタ
135 送信フレーム判断部
137 送信/コピー判断部
139 差分存在領域送信部
141 動き量履歴計算部

Claims (7)

  1. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信装置であって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出手段と、
    前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減手段と
    前記差分検出手段の検出結果が肯定的であるブロックであって、前記フレームレート低減手段により設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信手段と、
    前記差分検出手段の検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出手段とを備え、
    前記フレームレート低減手段は、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信装置。
  2. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信装置であって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出手段と、
    前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減手段と、
    前記差分検出手段の検出結果が肯定的であるブロックであって、前記フレームレート低減手段により設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信手段と、
    前記差分検出手段の検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出手段とを備え、
    前記フレームレート低減手段は、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信装置。
  3. 請求項1又は2に記載の画面データ送信装置において、
    前記差分検出手段の検出結果が肯定的であるブロックであって、前記フレームレート低減手段により設定されたフレームレートに従えば、送信することが禁止されているブロックに対応する位置にある対応ブロックであって、前記第2の画面フレームに含まれる対応ブロックのデータを、前記第2の画面フレームを記憶しているフレームメモリから前記第1の画面を記憶するべきフレームメモリにコピーする手段を更に備え、
    前記第1の画面フレームに含まれるブロックであって、前記差分検出手段の検出結果が肯定的であるブロックに対応する位置にある対応ブロックであって、前記第2の画面フレームに含まれる対応ブロックのデータを前記差分検出手段が、後に、差分検出のために用いられるようにしたことを特徴とする画面データ送信装置。
  4. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信方法であって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、
    前記フレームレート低減ステップでは、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法
  5. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信方法であって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、
    前記差分検出ステップ検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、
    前記フレームレート低減ステップでは、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法。
  6. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信プログラムであって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、
    前記フレームレート低減ステップでは、前記差分存在領域が広ければ広いほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法をコンピュータ実行させるための画面データ送信プログラム。
  7. 所定のフレームレートの画面データを入力し、その画面データを処理してから送信する画面データ送信プログラムであって、
    入力した前記画面データに含まれる第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、
    前記差分検出ステップ検出結果が肯定的であるブロックのデータを送信するためのフレームレートを前記所定のフレームレートよりも低く設定するフレームレート低減ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックであって、前記フレームレート低減ステップにより設定されたフレームレートに従えば、送信することが許可されているブロックを送信する送信ステップと、
    前記差分検出ステップの検出結果が肯定的であるブロックを基に、差分存在領域とその差分存在領域のサイズを検出する差分存在領域サイズ検出ステップとを備え、
    前記フレームレート低減ステップでは、前記差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域に含まれるブロックであって、前記差分検出ステップの検出結果が肯定的であるブロックのデータを送信するためのフレームレートを、より低くすることを特徴とする画面データ送信方法をコンピュータ実行させるための画面データ送信プログラム。
JP2008087121A 2008-03-28 2008-03-28 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム Expired - Fee Related JP5071727B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008087121A JP5071727B2 (ja) 2008-03-28 2008-03-28 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008087121A JP5071727B2 (ja) 2008-03-28 2008-03-28 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム

Publications (2)

Publication Number Publication Date
JP2009246415A JP2009246415A (ja) 2009-10-22
JP5071727B2 true JP5071727B2 (ja) 2012-11-14

Family

ID=41307914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008087121A Expired - Fee Related JP5071727B2 (ja) 2008-03-28 2008-03-28 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム

Country Status (1)

Country Link
JP (1) JP5071727B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5540766B2 (ja) * 2010-02-25 2014-07-02 大日本印刷株式会社 シンクライアントシステム、シンクライアントサーバ、シンクライアント端末、プログラム及び記憶媒体
JP5471668B2 (ja) * 2010-03-19 2014-04-16 日本電気株式会社 画像転送装置、方法及びプログラム
JP5685840B2 (ja) * 2010-07-01 2015-03-18 富士通株式会社 情報処理装置、画像送信プログラム及び画像表示方法
US9998749B2 (en) * 2010-10-19 2018-06-12 Otoy, Inc. Composite video streaming using stateless compression
JP5593514B2 (ja) * 2010-12-14 2014-09-24 奇揚網科股▲ふん▼有限公司 スクリーンフレームの符号化方法、及び、それを応用した電子装置
KR101606662B1 (ko) 2011-12-20 2016-03-25 인텔 코포레이션 향상된 무선 디스플레이

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02119486A (ja) * 1988-10-28 1990-05-07 Nec Corp 動画像信号の符号化制御方法および符号化制御器
JP2001103491A (ja) * 1999-07-16 2001-04-13 Sony Corp 送信装置、受信装置、およびこれらを用いた信号伝送システム
JP4153202B2 (ja) * 2001-12-25 2008-09-24 松下電器産業株式会社 映像符号化装置
JP2004086550A (ja) * 2002-08-27 2004-03-18 Matsushita Electric Ind Co Ltd 表示画面更新システム
JP4246528B2 (ja) * 2003-03-26 2009-04-02 富士通コンポーネント株式会社 切替器

Also Published As

Publication number Publication date
JP2009246415A (ja) 2009-10-22

Similar Documents

Publication Publication Date Title
JP5071727B2 (ja) 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム
AU2010341605B2 (en) Systems and methods for video-aware screen capture and compression
JP5628300B2 (ja) アニメーションに使用するための望ましい物理的特徴を伴うグラフィックオブジェクトを生成する方法、装置及びコンピュータプログラム製品
US8953676B2 (en) Information processing apparatus, computer-readable storage medium storing image transmission program, and computer-readable non transitory storage medium storing image display program
CN107515759B (zh) 截屏方法、装置、电子设备及可读存储介质
JP5678743B2 (ja) 情報処理装置、画像送信プログラム、画像送信方法および画像表示方法
US9485290B1 (en) Method and system for controlling local display and remote virtual desktop from a mobile device
US9747510B2 (en) Techniques for rotating language preferred orientation on a mobile device
JP2005229594A (ja) リモコンでオブジェクト選択可能なディスプレイ装置及びその方法
US20110126113A1 (en) Displaying content on multiple web pages
US20200142571A1 (en) Optimizing Window Resize Actions for Remoted Applications
US10432681B1 (en) Method and system for controlling local display and remote virtual desktop from a mobile device
JP2022509191A (ja) 映像デコーディング制御方法、装置、電子機器及び記憶媒体
JP2016103117A (ja) 情報処理装置、端末装置、画像表示システムおよび画像送信プログラム
JP5110304B2 (ja) 画面データ送信装置、画面データ送信方法及び画面データ送信プログラム
US9953015B2 (en) Displaying a document file target area based on history of display settings
WO2010110786A1 (en) Performing remoting operations for different regions of a display surface at different rates
US10949488B1 (en) Image quality optimization during remote isolated sessions
CN115390689A (zh) 触控数据压缩方法、装置、存储介质以及交互平板
CN114095762A (zh) 数据传输方法、装置、计算机设备及计算机可读存储介质
JP4985492B2 (ja) 画面データ送信装置及びその方法
JP5168486B2 (ja) 画面データ送信装置及びその方法
US9563715B2 (en) Method for performing information monitoring control of at least one target division block of at least one web page with aid of at least one monitoring control server, and associated apparatus and associated monitoring system
CN112584152B (zh) 远程桌面中的差异检测与分区域动态编码方法、电子设备、计算机可读存储介质
CN114694146B (zh) 文本识别模型的训练方法、文本识别方法、装置及设备

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20100729

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110214

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110509

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120215

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120413

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120808

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees