(57)【要約】【課題】送信領域画像の情報量やクライアント端末への通信速度といった画面伝送に関わる条件が広範囲に変化する状況下であっても、最適な操作品質を提供する。【解決手段】本発明による制御装置は、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定する品質制御手段５０１を備える。【選択図】図２０
2015177446.tif 000002
【特許請求の範囲】
【請求項１】
出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって前記符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、前記符号化対象情報を圧縮符号化する際の圧縮強度を決定する品質制御手段を備えた
ことを特徴とする制御装置。
【請求項２】
出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する符号化対象情報取得手段と、
圧縮強度のパラメータを有し、指定された圧縮強度に従って、前記符号化対象情報を圧縮符号化する符号化手段と、
前記符号化対象情報を前記符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、前記符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度とを、各々前記圧縮強度の関数として推定する第１の推定手段と、
前記第１の推定手段によって推定された符号化データ長を利用して、前記符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、前記圧縮強度の関数として推定する第２の推定手段と、
画質劣化度の各値に対して遅延時間の上限を定めた関数であって、画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数を記憶する閾値関数記憶手段を有し、前記閾値関数記憶手段に記憶されている閾値関数に基づいて、遅延時間の上限を供給する遅延閾値供給手段と、
前記第１の推定手段による画質劣化度の推定結果と、前記第２の推定手段による遅延時間の推定結果と、前記遅延閾値供給手段から供給される遅延時間の上限とに基づいて、前記符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する品質制御手段とを備えた
ことを特徴とする画面送信サーバ。
【請求項３】
遅延閾値供給手段は、
複数の閾値関数を記憶する閾値関数記憶手段と、
前記閾値関数記憶手段に記憶されている複数の閾値関数の中から、使用する１つの閾値関数を選択する閾値関数選択手段とを有する
請求項２に記載の画面送信サーバ。
【請求項４】
遅延閾値供給手段は、
出力画面において表示が更新されたピクセル数または表示が更新された時間頻度に基づいて、現在の時間的および／または空間的な画面変化の割合を示す量である画面変化密度を推定する画面変化密度推定手段を有し、
閾値関数選択手段は、前記画面変化密度推定手段が推定した画面変化密度に基づいて、複数の閾値関数の中から使用する１つの閾値関数を選択する
請求項３に記載の画面送信サーバ。
【請求項５】
遅延閾値供給手段は、
クライアント端末から送信される出力画面に対する操作の情報である操作情報によって示される操作の種類または操作頻度に基づいて、現在の操作に対して要求される時間応答性の高さを表す時間応答要求度を推定する時間応答要求度推定手段を有し、
閾値関数選択手段は、前記時間応答要求度推定手段が推定した時間応答要求度に基づいて、複数の閾値関数の中から使用する１つの閾値関数を選択する
請求項３に記載の画面送信サーバ。
【請求項６】
閾値関数は、許容する最大の画質劣化度に対する遅延時間の上限に、遅延時間との比較処理において必ず大きいと判定される値が設定されている
請求項２から請求項５のうちのいずれか１項に記載の画面送信サーバ。
【請求項７】
制御装置が、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって前記符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、前記符号化対象情報を圧縮符号化する際の圧縮強度を決定する
ことを特徴とする出力画面の品質制御方法。
【請求項８】
画面送信サーバに適用される出力画面の品質制御方法であって、
前記画面送信サーバが、
出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得し、
取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、前記符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度とを、各々前記圧縮強度の関数として推定し、
推定された符号化データ長を利用して、前記符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、前記圧縮強度の関数として推定し、
前記画質劣化度の推定結果と、前記遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、前記符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する
ことを特徴とする出力画面の品質制御方法。
【請求項９】
コンピュータに、
出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって前記符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、前記符号化対象情報を圧縮符号化する際の圧縮強度を決定する処理
を実行させるための制御プログラム。
【請求項１０】
画面送信サーバが備えるコンピュータに、
出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する処理、
取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、前記符号化データを復号した際に前記画像データに生じる画質の劣化の程度である画質劣化度とを、各々前記圧縮強度の関数として推定する処理、
推定された符号化データ長を利用して、前記符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、前記圧縮強度の関数として推定する処理、
画質劣化度の推定結果と、遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、前記符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する処理、および
決定された圧縮強度を指定して、前記符号化手段に符号化対象情報を圧縮符号化させる処理
を実行させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを経由してクライアント装置に送信される出力画面の品質を制御する制御装置、クライアント装置にネットワークを経由して出力画面を送信する画面送信サーバ、出力画面の品質制御方法および制御プログラムに関する。
【背景技術】
【０００２】
ユーザが使うクライアント端末から、通信ネットワークを介して接続されたサーバ側のコンピュータを遠隔操作できるシンクライアントシステムが普及している。シンクライアントシステムでは、サーバ側のコンピュータが生成する出力画面の情報をクライアント端末に送信して表示させる画面伝送技術が使用されている。
【０００３】
画面伝送技術には、差分送信技術、圧縮符号化技術、伝送レート制御技術といった通信速度が限られたネットワーク条件下においても好ましい操作応答性を実現するための各種技術が組み込まれている。画面伝送技術における差分送信技術は、出力画面内における表示内容が変化した画像領域のみを送信対象とすることにより、通信データ量を削減する技術である。また、圧縮符号化技術は、送信対象とされたデータを圧縮符号化することにより、通信データ量を削減する技術である。また、伝送レート制御技術は、サーバとクライアント間の単位時間当たりの通信データ量である伝送レートが通信ネットワークの許容量や所定の目標値を超過しないように、一度に送出するデータの量や送出を行う時間の間隔を制御する技術である。
【０００４】
画面伝送に要する通信データ量を適切に削減することでその通信にかかる時間を短縮すると、サーバ側のコンピュータ画面の変化を即座にクライアント画面に反映させることができるため、遠隔操作に対する画面の応答性が向上する。
【０００５】
ところで、サーバ側のコンピュータからクライアント端末に送信が必要な画像領域である送信領域の画像の情報量は、その大きさや表示内容に依存して変化する。送信対象とされる画像の情報量が変化すれば、当然、それをサーバが送信するまでにかかる時間（伝送遅延）も変化する。この時間の変化は、クライアントからの遠隔操作によって生じたサーバ側のコンピュータ画面の更新がクライアントの画面に表示されるまでの遅延時間に影響を与える。そこで、送信領域の画像（以下、送信領域画像という。）の圧縮符号化における圧縮率を、送信領域画像の情報量に応じて変化させて、伝送遅延が目標値以下となるように制御する画面伝送技術が使用されている。
【０００６】
例えば、特許文献１には、画像の圧縮品質に関わるパラメータを制御することで、送信遅延が閾値を超えないようにするサーバ装置が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−２０３６６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１に記載されている画像送信技術では、送信領域画像の情報量やクライアント端末への通信速度といった画面伝送に関わる条件が広範囲に変化する場合に、細やかに対応できないという問題があった。例えば、特許文献１に記載されているような伝送遅延を目標値以下に保つことのみを目標にして画像の圧縮率を制御する方法では、送信領域画像の情報量が大きいときには画質が下げられ、送信領域画像の情報量が小さいときには画質が上げられることになる。しかし、送信領域画像の情報量の変化幅が大きい状況下では、画質のみを変化させるのではなく、伝送遅延の目標値も変化させて、画質と伝送遅延の両者のバランスを見た方が、操作品質が向上するため好ましい。
【０００９】
例えば、送信領域画像の情報量が急に増えた場合を考えたとき、伝送遅延を目標値以下にするために画質が過度に低下するよりも、画質の急激な劣化を防止して伝送遅延を大きくした方が、ユーザが体感するストレスが小さい場合がある。また、例えば送信領域が小さく送信領域画像の情報量が小さい場合を考えたとき、出力画像全体に対して小さい領域である送信領域の画質を高めるよりも伝送遅延を短縮した方が、ユーザが体感する操作性がより向上する。本発明では、遠隔操作者が体感する操作性やストレスをまとめて操作品質と呼び、操作品質向上のためにサーバ側が行う画像送信に関わる各種制御を品質制御と呼ぶ。
【００１０】
本発明は、上記問題に鑑みてなされたものであり、送信領域画像の情報量やクライアント端末への通信速度といった画面伝送に関わる条件が広範囲に変化する状況下であっても、最適な操作品質を提供できる制御装置、画面送信サーバ、出力画面の品質制御方法および画面送信用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明による制御装置は、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定する品質制御手段を備えたことを特徴とする。
【００１２】
本発明による画面送信サーバは、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する符号化対象情報取得手段と、圧縮強度のパラメータを有し、指定された圧縮強度に従って、符号化対象情報を圧縮符号化する符号化手段と、符号化対象情報を符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定する第１の推定手段と、第１の推定手段によって推定された符号化データ長を利用して、符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定する第２の推定手段と、画質劣化度の各値に対して遅延時間の上限を定めた関数であって、画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数を記憶する閾値関数記憶手段を有し、閾値関数記憶手段に記憶されている閾値関数に基づいて、遅延時間の上限を供給する遅延閾値供給手段と、第１の推定手段による画質劣化度の推定結果と、第２の推定手段による遅延時間の推定結果と、遅延閾値供給手段から供給される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する品質制御手段とを備えたことを特徴とする。
【００１３】
本発明による出力画面の品質制御方法は、制御装置が、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定することを特徴とする。
【００１４】
本発明による出力画面の品質制御方法は、画面送信サーバに適用される出力画面の品質制御方法であって、画面送信サーバが、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得し、取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定し、推定された符号化データ長を利用して、符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定し、画質劣化度の推定結果と、遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定することを特徴とする。
【００１５】
本発明による制御プログラムは、コンピュータに、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定する処理を実行させることを特徴とする。
【００１６】
また、本発明による制御プログラムは、画面送信サーバが備えるコンピュータに、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する処理、取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定する処理、推定された符号化データ長を利用して、符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定する処理、画質劣化度の推定結果と、遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する処理、および決定された圧縮強度を指定して、符号化手段に符号化対象情報を圧縮符号化させる処理を実行させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、送信領域画像の情報量やクライアント端末への通信速度といった画面伝送に関わる条件が広範囲に変化する状況下であっても、最適な操作品質を提供できる。
【図面の簡単な説明】
【００１８】
【図１】第１の実施形態の画面伝送システムの構成例を示すブロック図である。
【図２】画面符号化送信手段１２の構成例を示すブロック図である。
【図３】符号化データ長関数Ｃ（Ｑ）および画質劣化度関数Ｄｉ（Ｑ）の例を示すグラフである。
【図４】遅延時間関数Ｄｔ（Ｑ）の例を示すグラフである。
【図５】閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例を示すグラフである。
【図６】閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例を示すグラフである。
【図７】閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例を示すグラフである。
【図８】閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例を示すグラフである。
【図９】画面受信復号手段２２の構成例を示すブロック図である。
【図１０】第１の実施形態の画面伝送システムの画面送信サーバ１の動作の一例を示すフローチャートである。
【図１１】品質制御手段１２７による圧縮強度Ｑの決定処理の処理フローの例を示すフローチャートである。
【図１２】画質劣化度Ｄｉと遅延時間Ｄｔの関係の一例を示すグラフである。
【図１３】圧縮強度Ｑの決定方法を模式的に示す説明図である。
【図１４】圧縮強度Ｑの決定方法を模式的に示す説明図である。
【図１５】圧縮強度Ｑの決定方法を模式的に示す説明図である。
【図１６】圧縮強度Ｑの決定方法を模式的に示す説明図である。
【図１７】遅延閾値設定手段１２６が保持する複数の閾値関数の例を示す説明図である。
【図１８】第２の実施形態における遅延閾値設定手段１２６の構成例を示すブロック図である。
【図１９】第２の実施形態における遅延閾値設定手段１２６の構成例を示すブロック図である。
【図２０】本発明による制御装置の最小の構成例を示すブロック図である。
【図２１】本発明による画面送信サーバの特徴を表現した構成例を示すブロック図である。
【発明を実施するための形態】
【００１９】
実施形態１．
以下、本発明の実施形態を図面を参照して説明する。図１は、本発明の実施形態にかかる画面伝送システムの構成例を示すブロック図である。図１に示す画面伝送システムは、画面送信サーバ１と、画面受信クライアント２とを備える。
【００２０】
画面送信サーバ１（以下、サーバ１という。）は、画面受信クライアント２からの操作情報を受信すると、出力画面の表示画像の少なくとも一部の領域の画像データを含む情報を圧縮符号化して送信する機能を有するコンピュータである。サーバ１は、図１に示すように、画面生成手段１１と、画面符号化送信手段１２と、操作情報受信手段１３とを備える。以下、出力画面の表示画像の少なくとも一部の領域の画像データを含む情報を圧縮符号化して得られた符号化データを「出力画面の符号化データ」という。
【００２１】
また、画面受信クライアント２（以下、クライアント２という。）は、サーバ１から出力画面の符号化データを受信して、受信した符号化データを復号し、得られた画像データを基にサーバ１が生成した出力画面の表示画像を具備する表示手段（不図示）の画面に表示する機能を有するコンピュータである。図１に示すように、クライアント２は、操作情報入力手段２１と、画面受信復号手段２２とを備える。
【００２２】
図１に示す画面伝送システムにおいて、サーバ１とクライアント２との間の通信セッションは、適当な開始手続きを経て開始される。セッション中は、サーバ１からクライアント２にサーバ１で生成された出力画面の符号化データが送信され、クライアント２からサーバ１に現在表示中の出力画面を操作するための指示情報等の操作情報が送信される。また、セッションは適当な終了手続きを経て終了される。
【００２３】
サーバ１の画面生成手段１１は、セッション中にクライアント２に送信される出力画面を生成する。出力画面は、サーバ１を構成するもしくはサーバ１に接続されたコンピュータ機器やそこで動作するオペレーティングシステムが生成する画面であってもよい。また、出力画面は、サーバ１を構成するコンピュータ機器上で動作する仮想マシンが生成するコンピュータ画面や、サーバ１を構成するコンピュータ機器上で動作するアプリケーションが生成する画面（アプリケーションが動作するコンピュータ画面の一部）であってもよい。また、出力画面はパーソナルコンピュータ等の汎用コンピュータが生成するコンピュータ画面に限らず、例えば、業務システムやカーナビゲーションといったサーバ１に対応する専用のクライアント端末を有するシステムの場合などには、サーバ１を構成するもしくはサーバ１に接続された専用機器が生成する電子画面等であってもよい。画面生成手段１１は、上記で示されるようなオペレーティングシステムや仮想マシンやアプリケーション、専門機器といった出力画面を生成する機能を有するプログラムおよびそのプログラムを動作させるＣＰＵ等の情報処理装置によって実現される。
【００２４】
画面符号化送信手段１２は、画面生成手段１１が生成した出力画面を画像データとして取得し、取得した画像データの少なくとも一部に対して適当な符号化を施し、得られた符号化データを、出力画面の符号化データとしてネットワークを介してクライアント２に送信する。
【００２５】
操作情報受信手段１３は、クライアント２から送信される操作情報を受信し、画面生成手段１１に出力する。
【００２６】
クライアント２の操作情報入力手段２１は、セッション中、キーボードやマウス、タッチパネル、その他の適当な入力手段を用いて入力された情報を、操作情報として、サーバ１に送信する。
【００２７】
画面受信復号手段２２は、サーバ１から送信された出力画面の符号化データを受信し、受信した符号化データを復号して得られた画像データを基に、サーバ１が生成した出力画面の表示画像をディスプレイ等の当該クライアント２が具備している表示手段（図示せず）の画面に表示するなどの処理を行う。
【００２８】
また、図２は、画面符号化送信手段１２の構成例を示すブロック図である。図２に示す画面符号化送信手段１２は、画像取得手段１２１と、送信領域決定手段１２２と、符号化手段１２３と、画質−データ量推定手段１２４と、遅延時間推定手段１２５と、遅延閾値設定手段１２６と、品質制御手段１２７と、送信手段１２８と、制御手段１２９とを備える。
【００２９】
画像取得手段１２１は、画面生成手段１１が生成した現在の出力画面を、画像データとして取得する。出力画面の画像データの取得は、例えば、画面生成手段１１であるコンピュータ機器のオペレーティングシステムに、表示画面を取得するＡＰＩをコールするソフトウェアモジュールを組み込む方法によって実現できる。
【００３０】
送信領域決定手段１２２は、画像取得手段１２１が取得した出力画面の画像領域のうち、クライアント２に送信が必要な画像領域（以下、送信領域という。）を決定する。送信領域決定手段１２２は、例えば、クライアント２に送信済みの出力画像（前画面）の画像データを格納する記憶領域を有し、該記憶領域に格納されている前画面の画像データと、画像取得手段１２１が取得した出力画面（現画面）の画像データとを比較し、前画面から画素情報が変化しているピクセルの位置を抽出してもよい。そして、そのようにして抽出したピクセルの位置の情報を基に、画素情報が変化したピクセルを全て含むような適当な形状の画像領域を送信領域として決定する。送信領域は、例えば、１個以上の矩形の和で表されてもよい。
【００３１】
符号化手段１２３は、送信領域の位置および形状と、送信領域内の画像データとを含む情報に対して符号化処理を行い、出力画面の符号化データを生成する。なお、送信領域が２以上ある場合は、各送信領域の位置と形状と、各送信領域内の画像データとを含む情報に対して符号化処理を行い、出力画面の符号化データを生成する。以下、符号化手段１２３による符号化処理の対象とする情報を、符号化対象情報という場合がある。符号化対象情報は、送信領域の位置および形状と、送信領域内の画像データとを含む情報に限らず、例えば、送信領域内の画像データだけであってもよい。その場合、送信領域内の画像データを符号化した符号化データと、送信領域の位置および形状とを含む情報が、出力画面の画面データとしてクライアント２に送信される。
【００３２】
本実施形態の符号化手段１２３は、画像データの符号化に、符号化データ長を削減可能な画像圧縮手段を利用する。そのような画像圧縮の方法としては、例えばＪＰＥＧ等の歪み画像圧縮を用いる方法、使用色数の削減処理（減色）を行ってからエントロピー符号化をする方法がある。画像圧縮の方法は単一である必要はなく、複数の圧縮手法を有しておき、画像の特徴やサイズや後述する圧縮強度によって切り替えてよい。この場合は、使用した圧縮手段をクライアントで特定するための情報も含めて符号化すればよい。
【００３３】
本実施形態では、画像圧縮時の符号化データ長およびそれに関連する圧縮後の画質を制御するためのパラメータとして、圧縮強度Ｑというパラメータを定義する。符号化手段１２３は、上述したような符号化による画像の歪みの程度や使用色数を可変としたり、圧縮手法を切り替えるといった制御を、後述する品質制御手段１２７によって指定される圧縮強度Ｑに従って行う。
【００３４】
圧縮強度Ｑは、圧縮後の画質または符号化データ長の少なくともいずれかに影響を与える指標として、各値が圧縮時に調整可能な１つ以上のパラメータと対応づけられて予め定義されたものであれば、特に限定されない。なお、複数の圧縮方法を利用する場合は、圧縮強度Ｑは、各値が、圧縮方法の指定とともに圧縮時に調整可能な１つ以上のパラメータと対応づけられて予め定義されたものであればよい。
【００３５】
以下に示す例では、圧縮強度Ｑは０以上１００以下の整数で表されるものとし、０が最も圧縮による歪みの弱い圧縮手法に対応し、１００が最も歪みの強い圧縮手法に対応するものとする。圧縮強度Ｑは、例えば、ＪＰＥＧを画像圧縮に用いる場合、ＪＰＥＧのＱｕａｌｉｔｙパラメータの値Ｑ１を用いて、Ｑ＝１００−Ｑ１としてもよい。符号化手段１２３は、品質制御手段１２７より指定される圧縮強度Ｑに従って、その圧縮強度Ｑに対応づけられている圧縮方法やパラメータセット（本例の場合、Ｑｕａｌｉｔｙパラメータ）を用いて符号化対象情報に対して符号化処理を行い、出力画面の符号化データを生成する。
【００３６】
画質−データ量推定手段１２４は、符号化手段１２３が符号化対象情報を符号化した場合の符号化データ長Ｃと、符号化データをクライアント２で復号した結果得られる復号画像に生じる画質の劣化の程度である画質劣化度Ｄｉとを推定する。画質劣化度Ｄｉは、例えば、画像の歪みの大きさを表すものであってもよい。本実施形態において、符号化データ長Ｃおよび画質劣化度Ｄｉは、圧縮強度Ｑに依存する。したがって、画質−データ量推定手段１２４は、これらの値を、圧縮強度Ｑの関数すなわちＣ（Ｑ）、Ｄｉ（Ｑ）として推定する。ここで、「圧縮強度Ｑの関数として推定する」とは、具体的には、推定対象の値（上記でいう符号化データ長Ｃおよび画質劣化度Ｄｉ）を、Ｑを独立変数とする従属変数として、任意のＱに対応する値を推定することを意味する。このとき、画質−データ量推定手段１２４は、例えば任意のＱに対応する符号化データ長Ｃすなわち符号化データ長関数Ｃ（Ｑ）を、Ｑの増加に対して単調減少するすなわち値が小さくなるか変化しないものとして推定してもよい。また、画質−データ量推定手段１２４は、例えば任意のＱに対応する画質劣化度Ｄｉすなわち画質劣化度関数Ｄｉ（Ｑ）を、Ｑの増加に対して単調増加するすなわち値が大きくなるか変化しないものとして推定してもよい。
【００３７】
画質−データ量推定手段１２４は、例えば、代表値となるいくつかの圧縮強度Ｑで符号化対象の画像すなわち実際の送信領域画像の符号化を符号化手段１２３に行わせ、そのときの符号化データ長Ｃと画質劣化度Ｄｉとを測定し、中間の圧縮強度における符号化データ長Ｃと画質劣化度Ｄｉとを適当な手法（例えば、線形補間など）で補間推定することにより、符号化データ長関数Ｃ（Ｑ）および画質劣化度関数Ｄｉ（Ｑ）を推定してもよい。そのような場合には、サーバ１が、符号化データを復号する復号手段と、復号画像と元の画像から画質劣化度を算出する画質劣化度算出手段とを備えていてもよい。画質劣化度算出手段は、例えば、送信画像領域内の復号画像に生じた圧縮歪みを平均２乗誤差の平方根で評価する方法を用いて画質劣化度を算出してもよい。この場合、画質劣化度は、符号化データに含まれる画像データと、該画像データに対応する復号画像の画像データとの間の平均２乗誤差の平方根すなわち誤差の標準偏差となる。なお、送信領域が複数ある場合は、送信領域ごとの標準偏差から平均をとればよい。また、画質劣化度は、例えば、平均２乗誤差の対数や、誤差の絶対値の平均であってもよい。また、ＭＳＳＩＭ（Ｍｅａｎ  Ｓｔｒｕｃｔｕｒａｌ  Ｓｉｍｉｌｉｔａｒｙ）指標の符号を反転させたものであってもよい。
【００３８】
図３（ａ）は、符号化データ長関数Ｃ（Ｑ）の例を示すグラフである。また、図３（ｂ）は、画質劣化度関数Ｄｉ（Ｑ）の例を示すグラフである。図３（ａ）のグラフにおいて、縦軸は符号化データ長Ｃ［ｂｙｔｅ］を表し、横軸は圧縮強度Ｑを表している。また、図３（ｂ）のグラフにおいて、縦軸は画質劣化度Ｄｉ（Ｑ）を表し、横軸は圧縮強度Ｑを表している。図３（ａ）に示されるように、符号化データ長関数Ｃ（Ｑ）は、Ｑの増加に対して単調減少している。また、および図３（ｂ）に示されるように、画質劣化度関数Ｄｉ（Ｑ）は、Ｑの増加に対して単調増加している。
【００３９】
また、画質−データ量推定手段１２４は、例えば符号化対象の画像を解析して、符号化データ長関数Ｃ（Ｑ）を推定してもよい。例えば、圧縮手法がＪＰＥＧである場合は、画像にＤＣＴ変換を適用して、ＤＣＴ変換係数の分布を求め、その結果と画素数等の情報から符号化データ長関数Ｃ（Ｑ）を推定してもよい。また、画質−データ量推定手段１２４は、例えば、各Ｑ値に対して期待される平均２乗誤差の典型値を予め実験等により算出しておき、これを画像によらない定数として各Ｑ値と対応づけて保持しておき、このようなＱ値と上記典型値との対応関係を示す情報（対応表）を、画質劣化度関数Ｄｉ（Ｑ）としてもよい。
【００４０】
遅延時間推定手段１２５は、符号化手段１２３が符号化対象情報を符号化して得られる符号化データを現在の通信条件下でクライアント２まで送信するために要する時間を、遅延時間Ｄｔとして推定する。なお、上記の例は、遅延時間Ｄｔを、本システムが画面表示に通信を伴うために生じる通信による遅延時間として定義した例であるが、遅延時間Ｄｔをより広義に捉えて、画面の遠隔操作に伴う、画面生成から表示までにかかる時間の遅延量としてもよい。そのような場合には、遅延時間Ｄｔは、符号化データをクライアント２まで送信するために要する時間だけでなく、符号化処理に要する時間や復号処理にかかる時間を含んでいてもよい。いずれの場合であっても、遅延時間Ｄｔは、符号化データ長Ｃに依存する時間の量であればよい。
【００４１】
遅延時間Ｄｔは、符号化データ長Ｃに依存することから、圧縮強度Ｑに依存すると言える。したがって、遅延時間推定手段１２５は、遅延時間Ｄｔを圧縮強度Ｑの関数すなわちＤｔ（Ｑ）として推定する。このとき、遅延時間推定手段１２５は、任意のＱに対応する遅延時間Ｄｔすなわち遅延時間関数Ｄｔ（Ｑ）を、Ｑの増加に対して単調減少するすなわち値が小さくなるか変化しないものとして推定してもよい。
【００４２】
遅延時間推定手段１２５は、例えば、以下の式（１）に示すように、画質−データ量推定手段１２４によって推定された符号化データ長関数Ｃ（Ｑ）の出力値［ｂｙｔｅ］と、制御手段１２９より与えられる現在の通信速度Ｒ［ｂｙｔｅ／ｓｅｃ］とを利用して符号化データの送信にかかる時間を算出したものを、推定結果である遅延時間関数Ｄｔ（Ｑ）すなわち任意のＱに対応する遅延時間Ｄｔ（Ｑ）としてもよい。なお、Ｃ（Ｑ）がＱの増加に対して単調減少するため、Ｄｔ（Ｑ）もＱの増加に対して単調減少する。
【００４３】
Ｄｔ（Ｑ）＝Ｃ（Ｑ）／Ｒ  ・・・（１）
【００４４】
図４は、遅延時間関数Ｄｔ（Ｑ）の例を示すグラフである。なお、図４のグラフにおいて、縦軸は遅延時間Ｄｔ［ｍｓｅｃ］を表し、横軸は圧縮強度Ｑを表している。図４に示されるように、遅延時間Ｄｔは、Ｑの増加に対して単調減少している。
【００４５】
遅延閾値設定手段１２６は、符号化による画質劣化と低遅延性のバランスを制御するための閾値として、画質劣化Ｄｉの各値に応じた遅延時間Ｄｔの上限である遅延上限Ｄｔ_ｍａｘを定める閾値関数を記憶する閾値関数記憶手段を有し、品質制御手段１２７からの要求に応じて指定された画質劣化Ｄｉに対して定められている遅延上限Ｄｔ＿ｍａｘを供給する。本実施形態では、この閾値関数を、Ｄｉの関数すなわちＤｔ＿ｍａｘ（Ｄｉ）として定義し、保持する。閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）は、例えば、各Ｄｉ値と対応づけて遅延上限Ｄｔ＿ｍａｘの値を保持する対応表であってもよい。
【００４６】
本実施形態では、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）を、非負の値を取り、かつ画質劣化度Ｄｉに対して単調増加するものとして定義する。また、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）は無限大（∞）を取ることができるものとし、システムが許容する最大の画質劣化度Ｄｉに対して遅延上限Ｄｔ＿ｍａｘが無限大を取るように設定されるものとする。ここで、「無限大を取ることができる」とは、具体的には、比較判定処理において必ず大きいと判定される値を有していればよい。例えば、無限大を示す値として、遅延時間推定手段１２５が推定する最大の遅延時間Ｄｔ以上の値が設定されていればよい。
【００４７】
画質劣化とデータ伝送の遅延はどちらも画面の遠隔操作の品質を損ねる要因である。これら２要因の均衡条件を、画質劣化度Ｄｉから遅延上限Ｄｔ＿ｍａｘへの変換関数として定義したものが閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）である。
【００４８】
図５および図６は、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例を示すグラフである。図５および図６のグラフにおいて、縦軸は遅延上限Ｄｔ＿ｍａｘ［ｍｓｅｃ］を表し、横軸は画質劣化度Ｄｉを表している。なお、本例では、画質劣化度Ｄｉの単位は、平均２乗誤差の平方根すなわち誤差の標準偏差とし、縦軸との交点０を歪みのない状態としている。
【００４９】
図５および図６に示されるように、遅延上限Ｄｔ＿ｍａｘは、画質劣化度Ｄｉの増加に対して単調増加している。なお、図５に示す例は、画質劣化度Ｄｉがａ未満であるような、画質が良好な条件下では遅延時間Ｄｔを３３ｍｓｅｃ〜１００ｍｓｅｃ以下とし、画質劣化度Ｄｉがａ以上ｂ未満の条件下では遅延時間Ｄｔを２００ｍｓｅｃ以下とし、画質劣化度Ｄｉがｂ以上ｄ未満の条件下では遅延時間Ｄｔを２０００ｍｓｅｃ以下とするのが画面伝送時の品質制御において好ましい、かつ画質劣化度Ｄｉをｄより大きくしないという制御ポリシを閾値関数で表現した例である。また、図６に示す例は、画質劣化度Ｄｉがａ未満であるような、画質が良好な条件下では遅延時間Ｄｔを３３ｍｓｅｃ〜１００ｍｓｅｃ以下とし、画質劣化度Ｄｉがａ以上ｃ未満の条件下では遅延時間Ｄｔを１００ｍｓｅｃ以下とし、画質劣化度Ｄｉがｃ以上ｄ未満の条件下では遅延時間Ｄｔを２５０ｍｓｅｃ以下とするのが画面伝送時の品質制御において好ましい、かつ画質劣化度Ｄｉをｄより大きくしないという制御ポリシを閾値関数で表現した例である。なお、閾値関数を利用した画質劣化度Ｄｉの上限制御については後述する。
【００５０】
また、図７および図８は、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の他の例を示すグラフである。図７および図８のグラフにおいて、縦軸は遅延上限Ｄｔ＿ｍａｘ［ｍｓｅｃ］を表し、横軸は画質劣化度Ｄｉを表している。なお、本例でも、画質劣化度Ｄｉの単位は、誤差の標準偏差とし、縦軸との交点０を歪みのない状態としている。図７のグラフには、遅延時間に上限を設けずに圧縮時の画質を一定として送信領域画像を符号化する場合に設定される閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例が示されている。また、図８のグラフには、画質劣化度Ｄｉに上限等を設けずに遅延時間が所定値以下となるように送信領域画像を符号化する場合に設定される閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の例が示されている。これらの例は、符号化による画質劣化と低遅延性のバランスを柔軟に制御したい目的においては好ましい例ではないが、本実施形態の品質制御方法によれば、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の設定を変更するだけで、単純な品質制御も実施できることを示す目的で例示している。
【００５１】
品質制御手段１２７は、送信領域画像の画像データを含む符号化対象情報を符号化する際の圧縮強度Ｑを、画質−データ量推定手段１２４による画質劣化度Ｄｉの推定結果と、遅延時間推定手段１２５による遅延時間Ｄｔの推定結果と、遅延閾値設定手段１２６から得られる遅延上限Ｄｔ＿ｍａｘとに基づいて決定する。本実施形態では、品質制御手段１２７は、遅延時間Ｄｔが遅延上限ＤＴ＿ｍａｘを上回らない圧縮強度Ｑの中で画質劣化度Ｄｉが最小となる圧縮強度Ｑを選択することにより、圧縮強度Ｑの決定を行う。
【００５２】
送信手段１２８は、符号化手段１２３が生成した現画面の符号化データを、クライアント２に送信する。その際、サーバ１からの単位時間あたりの送信データ量が、制御手段１２９より与えられる現在の通信速度Ｒ［ｂｙｔｅ／ｓｅｃ］を超えないよう、データのバッファリング等を行いながら通信速度を制御する。
【００５３】
制御手段１２９は、画面符号化送信手段１２内の各機能部に指示を出したり、起動をかけるなどして、全体の動作とそのタイミングを制御する。
【００５４】
また、図９は、画面受信復号手段２２の構成例を示すブロック図である。図９に示す画面受信復号手段２２は、受信手段２２１と、復号手段２２２と、画像合成手段２２３とを備える。
【００５５】
画面受信復号手段２２の受信手段２２１は、サーバ１から送信された出力画面の符号化データを受信する。復号手段２２２は、受信手段２２１が受信した出力画面の符号化データを復号し、送信領域の位置および形状と、送信領域内の画像データとを得る。なお、送信領域が複数ある場合は、各々の送信領域の位置および形状と、画像データとを得る。画像合成手段２２３は、直前に表示した表示画像（前画像）の画像データを格納する記憶領域を有しており、該記憶領域に格納されている前画像の画像データによって示される表示画像に、復号手段２２２による復号処理によって得られた各送信領域内の画像データによって示される送信領域画像を上書きするように合成して、クライアント２の表示手段に出力する表示画像を生成する。
【００５６】
本実施形態において、画面符号化送信手段１２は、サーバ１を構成するコンピュータが備えるＣＰＵ、メモリおよびネットワークインタフェース部とによって実現される。また、操作情報受信手段１３は、サーバ１を構成するコンピュータが備えるＣＰＵ、メモリおよびネットワークインタフェース部とによって実現される。また、操作情報入力手段２１は、クライアント２を構成するコンピュータが備える各種入力装置（例えば、キーボード、マウス、外部機器インタフェース部等）、ＣＰＵ、メモリおよびネットワークインタフェース部とによって実現される。また、画面受信復号手段２２は、クライアント２を構成するコンピュータが備えるＣＰＵ、メモリおよびネットワークインタフェース部とによって実現される。
【００５７】
次に、本実施形態の画面伝送システムの動作について説明する。図１０は、本実施形態の画面伝送システムのサーバ１の動作の一例を示すフローチャートである。なお、図１０では、特に画面符号化送信手段１２の動作について示している。図１０に示す例では、まず画像取得手段１２１が出力画面の取得時間を設定する（ステップＳ１１）。出力画面の取得時間には、送信手段１２８における符号化データのバッファリング量を増大させず、かつ送信の空き時間が生じないような時間を設定することが好ましい。なお、出力画面に変化がなければ送信すべきデータはないため、送信の空き時間が生じてもよい。画像取得手段１２１は、例えば、前画面の符号化データの送出完了予定時刻と、次画面の符号化データを生成するまでに要する総処理時間の見込み値とを基に、次の出力画面の取得時間を決定してもよい。
【００５８】
ステップＳ１１で設定した取得時間になると、画像取得手段１２１は、画面生成手段１１が生成した現在の出力画面を、画像データとして取得する（ステップＳ１２）。
【００５９】
次に、送信領域決定手段１２２は、画像取得手段１２１が取得した画像データの画像領域の中から送信領域を決定する（ステップＳ１３）。
【００６０】
次に、画質−データ量推定手段１２４は、現画像の送信領域内の画像データを含む符号化対象情報を符号化するときの符号化データ長Ｃおよび画質劣化度Ｄｉを、各々Ｑの関数として推定する（ステップＳ１４）。
【００６１】
次に、遅延時間推定手段１２５は、ステップＳ１４で推定された符号化データ長Ｃを基に、現画像の送信領域内の画像データを含む符号化対象情報を符号化して得られる符号化データを、現在の通信条件下で送信するときの遅延時間Ｄｔを、Ｑの関数として推定する（ステップＳ１５）。
【００６２】
次に、品質制御手段１２７は、現画像の送信領域内の画像データを含む符号化対象情報を符号化する際の圧縮強度Ｑを、画質−データ量推定手段１２４による画質劣化度Ｄｉの推定結果と、遅延時間推定手段１２５による遅延時間Ｄｔの推定結果と、遅延閾値設定手段１２６から得られる遅延上限Ｄｔ＿ｍａｘとに基づいて決定する（ステップＳ１６）。
【００６３】
圧縮強度Ｑが決定されると、符号化手段１２３は、符号化対象情報に対して、指定された圧縮強度Ｑに対応づけられている圧縮手法やパラメータセットを用いて符号化処理を行い、出力画面の符号化データを生成する（ステップＳ１７）。
【００６４】
次に、送信手段１２８は、生成された出力画面の符号化データをクライアント２に送信する（ステップＳ１８）。
【００６５】
サーバ１は、セッション終了を認識すると、クライアント２への出力画面の送信処理を終了する（ステップＳ１９のＹｅｓ）。セッションが継続していれば（ステップＳ１９のＮｏ）、ステップＳ１１に戻り、上述したクライアント２への出力画面の送信処理（ステップＳ１１〜Ｓ１８）を繰り返し行う。なお、もしステップＳ１３で送信領域がゼロ、すなわち出力画面が前画面から変化していなければ、ステップＳ１４〜Ｓ１８の処理は省略される。
【００６６】
図１１は、品質制御手段１２７による圧縮強度Ｑの決定処理（図１０のステップＳ１６）のより詳細な処理フローの例を示すフローチャートである。図１１に示す例では、品質制御手段１２７はまず、圧縮強度Ｑを初期化する（ステップＳ１６１）。本例では、品質制御手段１２７は、圧縮強度Ｑを最小値であるゼロに設定する。以下、ステップＳ１６１および後述するステップＳ１６６で設定された圧縮強度Ｑを現Ｑと呼ぶ場合がある。
【００６７】
次に、品質制御手段１２７は、現Ｑでの遅延時間Ｄｔを取得する（ステップＳ１６２）。ステップＳ１６２では、品質制御手段１２７は、例えば遅延時間推定手段１２５が供給する遅延時間取得用ＡＰＩを現Ｑを指定してコールし、その戻り値を得てもよい。
【００６８】
次に、品質制御手段１２７は、現Ｑでの画像劣化度Ｄｉを取得する（ステップＳ１６３）。ステップＳ１６３では、品質制御手段１２７は、例えば画質−データ量推定手段１２４が供給する画像劣化度取得用ＡＰＩを現Ｑを指定してコールし、その戻り値を得てもよい。
【００６９】
次に、品質制御手段１２７は、現Ｑでの遅延上限Ｄｔ＿ｍａｘを取得する（ステップＳ１６４）。ステップＳ１６３では、品質制御手段１２７は、例えば遅延閾値設定手段１２６が供給する遅延上限取得用ＡＰＩを、ステップＳ１６３で取得した画像劣化度Ｄｉを指定してコールし、その戻り値を得てもよい。
【００７０】
次に、品質制御手段１２７は、ステップＳ１６２で取得した遅延時間Ｄｔが、ステップＳ１６４で取得した遅延上限Ｄｔ＿ｍａｘを上回るか否かを判定する（ステップＳ１６５）。ここで、遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘを上回っていなければ（ステップＳ１６５のＮｏ）、品質制御手段１２７は、現Ｑを今回の符号化対象情報の符号化に適用する圧縮強度Ｑに決定する（ステップＳ１６８）。
【００７１】
一方、遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘを上回っていれば、品質制御手段１２７は、現Ｑを増加させる（ステップＳ１６６）。ここでは、品質制御手段１２７は、現Ｑの値を１つ増加させる。圧縮強度Ｑを増加させることは、圧縮時の歪みの程度を大きくすることであり、結果として符号化データ長Ｃの減少および遅延時間Ｄｔの減少に繋がる。
【００７２】
次に、品質制御手段１２７は、増加後の圧縮強度Ｑである現Ｑが最大値であるか否かを判定する（ステップＳ１６７）。ここで、現Ｑが最大値であれば（ステップＳ１６７のＹｅｓ）、品質制御手段１２７は、現Ｑを今回の符号化対象情報の符号化に適用する圧縮強度Ｑに決定する（ステップＳ１６８）。これは、現Ｑでの遅延時間Ｄｔが最小値であって、これ以上の低減は見込めないからである。
【００７３】
一方、現Ｑが最大値でなければ（ステップＳ１６７のＮｏ）、ステップＳ１６２に戻り、品質制御手段１２７は、増加後の現Ｑでの遅延時間Ｄｔを評価する処理（ステップＳ１６２〜Ｓ１６５）を、遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘ以下となるまで繰り返し行う。
【００７４】
品質制御手段１２７は、このようにして圧縮強度Ｑが小さい条件から順に遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘを上回るか否かを判定することにより、遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘを上回らない範囲内で最小の圧縮強度Ｑを選択する。
【００７５】
次に、具体例を用いて本実施形態における圧縮強度Ｑを用いた品質制御方法を説明する。図１２は、ある符号化対象情報に対して推定された画質劣化度Ｄｉと遅延時間Ｄｔの関係を示すグラフである。図１２のグラフにおいて、縦軸は遅延時間Ｄｔを表し、横軸は画質劣化度Ｄｉを表している。図１２のグラフに示されるように、遅延時間Ｄｔは画質劣化度Ｄｉに対して単調減少する性質を有しており、右下がりである。これは、画質劣化度ＤｉがＱの増加に対して単調増加する性質を有するのに対して、遅延時間ＤｔはＱの増加に対して単調減少する性質を有するからである。なお、図１２では、参考までに対応するＱの値も示している。
【００７６】
また、図１３および図１４は、図５および図６に示した遅延閾値Ｄｔ＿ｍａｘ（Ｄｉ）の例に対して、各々図１２に示した画質劣化度Ｄｉと遅延時間Ｄｔの関係を当てはめたときの圧縮強度Ｑの決定方法を模式的に示す説明図である。品質制御手段１２７は、図中の左から右へと２つの関数Ｄｔ（Ｄｉ（Ｑ））とＤｔ＿ｍａｘ（Ｄｉ（Ｑ））の値を比べたときに、Ｄｔ（Ｄｉ（Ｑ））≦Ｄｔ＿ｍａｘ（Ｄｉ（Ｑ））となる最初のＱを選ぶ。これは、図中でいうＤｔ（Ｄｉ（Ｑ））とＤｔ＿ｍａｘ（Ｄｉ（Ｑ））の交点となるＱを選ぶことに相当する。なお、図１３の例ではＱ＝４２と決定され、図１４の例ではＱ＝８０と決定される。
【００７７】
また、図１５および図１６は、図７および図８に示した遅延閾値Ｄｔ＿ｍａｘ（Ｄｉ）の例に対して、各々図１２に示した画質劣化度Ｄｉと遅延時間Ｄｔの関係を当てはめたときの圧縮強度Ｑの決定方法を模式的に示す説明図である。図１５に示されるように、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の設定次第で、上記の決定方法のまま、画質を一定にできる。
【００７８】
なお、図１５に示す閾値関数は圧縮時の画質を一定にする場合の例である。図１５に示されるように、画質を一定にしたい場合には、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）において設定しうる最大の画質劣化度をＤｉ＿ｆｉｘとする、すなわちＤｔ＿ｍａｘ（Ｄｉ≧Ｄｉ＿ｆｉｘ）＝∞とするとともに、設定しうる最大の画質劣化度よりも小さい画質劣化度を許容しない、すなわちＤｔ＿ｍａｘ（Ｄｉ＜Ｄｉ＿ｆｉｘ）＝０もしくは遅延時間推定手段１２５が推定する遅延時間Ｄｔの最小値未満の値とすればよい。このようにすれば、遅延時間Ｄｔがどのような値をとったとしても決定される圧縮強度ＱはＤｉ＿ｆｉｘをとるＱとなる。なお、図１５の例ではＱ＝３５と決定される。このとき、Ｄｔ＿ｍａｘ（）＞０となる最初のＤｉ＿ｆｉｘはＤｉの下限値とされ、またＤｔ＿ｍａｘ（）＝∞をとるＤｉ＿ｆｉｘはＤｉの上限値とされる。なお、図１５の例では、Ｄｉの上限値と下限値とを同じ値にすることでＤｉが一定となる例を示しているが、Ｄｉの上限値と下限値とは異なる値であってもよい。
【００７９】
また、図１６に示す閾値関数は遅延時間を所定値以下にする場合の例である。図１６に示されるように、閾値関数Ｄｔ（Ｄｉ）の設定次第で、上記の決定方法のままで、遅延時間ＤｔがＤｔ＿ｆｉｘを超えないように制御できる。この場合、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）の最大値をＤｔ＿ｆｉｘとする、すなわちＤｔ＿ｍａｘ（）≦Ｄｔ＿ｆｉｘとすればよい。なお、図１６の例ではＱ＝３２と決定される。
【００８０】
図１３および図１４に示す例は、図１５および図１６に示したようなＤｉの上限値と下限値や遅延時間の上限値を、Ｄｔの一部の値域のまたはＤｔの一部の値域に対して設定としたものと見ることもできる。例えば、画質劣化と伝送遅延の増加に対する操作品質の変化には、何らかの境界（閾値）が見られるような不連続的な応答と連続的な応答とが混在すると考えられる。
【００８１】
図５に示した閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）は、図６に示した例に比べて画質をより優先する閾値関数の例であって、遅延時間Ｄｔが３３ｍｓｅｃ、２００ｍｓｅｃ、２０００ｍｓｅｃ、および画質劣化度Ｄｉがｂとｄのときに、体感品質の応答が異なる離散的な応答があり、遅延時間Ｄｔが３３ｍｓｅｃ〜２００ｍｓｅｃ、画質劣化度ｄｉがｂ〜ｄの間には連続的な応答があると想定して作成された閾値関数の例である。なお、遅延上限Ｄｔ＿ｍａｘ＝３３ｍｓｅｃは画面伝送システムの負荷を考慮して定められた最小値である。また、遅延上限Ｄｔ＿ｍａｘ＝１００ｍｓｅｃ〜２００ｍｓｅｃは時間的に連続変化する画像や操作応答性を要求される画像を含む画面表示に対して必要な遅延時間の上限および画面送信周期に対応している。また、遅延上限Ｄｔ＿ｍａｘ＝２０００ｍｓｅｃは、瞬時の応答が要求されない種類の画像を含む画面表示に対して操作者が過度のストレスを感じずに待ちうる時間に対応している。一方、遅延上限Ｄｔ＿ｍａｘ＝∞となる最初の画質劣化度Ｄｉ＝ｄは、これを上回る画質劣化は許容できないすなわち画質劣化度Ｄｉの上限値として設定されている。また、遅延上限Ｄｔ＿ｍａｘ＞２００ｍｓｅｃとなる最初の画質劣化度Ｄｉ＝ｂは、遅延時間Ｄｔが２００ｍｓｅｃを満足すべきか否かを判断する画質の判断基準として設定されている。
【００８２】
図５に示す例では、上述した圧縮強度Ｑの決定方法とこのような閾値関数Ｄｔ＿ｍａｘ（）の設定ルールとを組み合わせることによって、次のような条件Ｘ１〜Ｘ６を充足するような品質制御を実行可能にしている。
【００８３】
・条件Ｘ１：画質劣化度Ｄｉがｄを超えないことを保証する。
・条件Ｘ２：条件Ｘ１が充足される範囲内で、可能ならば遅延時間Ｄｔが２０００ｍｓｅｃを超えないことを保証する。
・条件Ｘ３：条件Ｘ２が充足される範囲内で、可能ならば画質劣化度度Ｄｉがｂを超えないことを保証する。
・条件Ｘ４：条件Ｘ３が充足される範囲内で、可能ならば遅延時間Ｄｔが２００ｍｓｅｃを超えないことを保証する。
・条件Ｘ５：条件Ｘ４が充足される範囲内で、可能ならば遅延時間Ｄｔが以下の式（２）を満たすことを保証する。
Ｄｔ≦１００＋１００（Ｄｉ−ａ）÷（ｂ−ａ）  ・・・（２）
・条件Ｘ６：条件Ｘ５が充足される範囲内で、可能ならば遅延時間Ｄｔが以下の式（３）を満たすことを保証する。
Ｄｔ≦３３＋６７×Ｄｉ÷ａ  ・・・（３）
【００８４】
このように、本実施形態の品質制御方法によれば、伝送遅延と画質劣化の増加に対する操作者の体感品質の応答が複雑にモデル化されるような場合にも、好ましい画面伝送品質の制御が可能である。特に単純に画質を一定にする制御もしくは単純に遅延に上限を設けて符号量を制御する方法と比較すると、本実施形態では、画面伝送に関わる条件が非常に良好な場合、あるいは非常に悪い場合であっても遅延時間と画質劣化のうちの片方の指標に傾斜偏重せず、両者のバランスを見て圧縮強度を制御できるので、操作品質を向上できる、より具体的には操作者の感じる品質感が総合的に高まる、あるいは操作者の感じるストレスが軽減されるといった効果がある。
【００８５】
なお、上記の条件Ｘ１〜Ｘ６および式（２）および式（３）はあくまで例であって、この限りではない。例えば、図６に例示したような閾値関数を設定すれば、上記条件Ｘ１〜Ｘ６とは異なる条件を充足する品質制御が可能である。
【００８６】
例えば、図６に示した閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）は、画質劣化度Ｄｉをｃ未満に抑えて符号化可能な条件下では遅延時間Ｄｔを１００ｍｓｅｃ以下に抑え、画質劣化度Ｄｉをｄ未満に抑えられる条件下では遅延時間Ｄｔを２５０ｍｓｅｃ以下に抑えるよう品質制御される閾値関数の例である。図５の例と比較すると、遅延時間Ｄｔに関する２０００ｍｓｅｃの閾値が用いられておらず、画質向上よりも遅延短縮を重視していると言える。
【００８７】
図６に示される閾値関数を用いた品質制御は、例えば遅延時間Ｄｔが１００ｍｓｅｃ以下となるように圧縮強度を制御する方法と比較すると、画質劣化度Ｄｉがａ未満あるいはｃ以上の条件下において、遅延時間の上限が可変であるため、操作品質を向上できる効果がある。
【００８８】
以上のように、本発明の実施形態のサーバ１および画面伝送システムは、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）として、画質劣化度Ｄｉから遅延上限Ｄｔ＿ｍａｘへの関数を予め保持しておく。そして、現画面の送信領域画像の画像データを含む符号化対象情報を圧縮符号化したときの画質劣化度Ｄｉ、符号化データ長Ｃ、および得られる符号化データの伝送に伴う遅延時間Ｄｔを各々圧縮強度Ｑの関数として推定する。そして、これらの推定結果に基づいて、遅延時間Ｄｔが遅延上限Ｄｔ＿ｍａｘ以下、かつ画質劣化度Ｄｉが最小になるように、圧縮強度Ｑを決定する。このような仕組みを有することにより、閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）を適当に設定するだけで、画質と画面更新の遅延の両方のバランスの取れ、かつ広範囲の条件変化においても、柔軟な画面伝送品質の制御が可能になる。
【００８９】
したがって、本実施形態によれば、画面伝送に関わる条件が広範囲に変化する状況下であっても、最適な操作品質を提供できる。
【００９０】
閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）は、単調増加な画質劣化度Ｄｉの関数として予めシステムの運用者やユーザに設定させればよい。例えば、この閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）を図７や図８に例示したように設定することで、画質劣化度を一定とする品質制御や遅延時間を一定とする品質制御が可能になる。また、例えば閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）を図５や図６に例示したように多段階的あるいは連続的に変化する関数として設定することで、柔軟な画面伝送品質の制御が可能になる。
【００９１】
また、本実施形態の品質制御方法の他の利点として、通信速度や送信領域画像の画像サイズによらず共通の閾値関数、および品質制御の仕組みを利用可能であることが挙げられる。画質もしくは伝送遅延を一定にした品質制御の場合、セッション開始時に通信速度や画面の画像サイズに応じて制御目標となる品質値を決定する処理が行われることが多いが、本発明ではそのような処理は不要である。また、動的に通信速度が変化するような状況にも対応可能である。すなわち、遅延時間推定手段１２５がその都度、最新の通信速度を用いて遅延時間を推定するだけでよく、閾値関数を通信速度等に応じて定める必要はない。
【００９２】
実施形態２．
次に、本発明の第２の実施形態について説明する。本実施形態の画面伝送システムの構成は基本的には第１の実施形態と同様である。以下、第１の実施形態と異なる部分についてのみ説明する。
【００９３】
本実施形態の画面伝送システムは、第１の実施形態と比べて、サーバ１の画面符号化送信手段１２の遅延閾値設定手段１２６の動作が異なる。
【００９４】
本実施形態の遅延閾値設定手段１２６は、画質と画面更新の遅延とのバランスを制御するための閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）を予め複数保持しておく。そして、品質制御手段１２７からの要求に応じて遅延上限Ｄｔ＿ｍａｘを供給する際に、指定されたＤｉに応じた遅延上限Ｄｔ＿ｍａｘを得るために用いる閾値関数を複数ある中から１つ選択する。
【００９５】
図１７は、遅延閾値設定手段１２６が保持する複数の閾値関数の例を示す説明図である。図１７（ａ）には、遅延閾値設定手段１２６が保持する複数の閾値関数のうちの第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）の例が示されている。また、図１７（ｂ）には、遅延閾値設定手段１２６が保持する複数の閾値関数のうちの第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ）の例が示されている。また、図１７（ｃ）には、遅延閾値設定手段１２６が保持する複数の閾値関数のうちの第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）の例が示されている。
【００９６】
図１７（ａ）に示す第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）は図５に示した閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）と同じものである。また、図１７（ｃ）に示す第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）は図６に示した閾値関数Ｄｔ＿ｍａｘ（Ｄｉ）と同じものである。第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）は、第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）と比べると画質優先の品質制御を行うよう設定されており、例えば、遅延時間Ｄｔが２００ｍｓｅｃを超えても２０００ｍｓｅｃ以内であれば画質劣化度Ｄｉをｂ以下に抑えること、および、画質劣化度Ｄｉがｂを超えた場合には画質劣化度がｄ以下であれば遅延時間Ｄｔを２０００ｍｓｅｃ以内に抑えることを重視している。
【００９７】
一方、第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）は、低遅延性優先の品質制御を行うよう設定されており、例えば、画質劣化度Ｄｉがｃ未満であれば遅延時間Ｄｔを１００ｍｓｅｃ以下に抑えること、および画質劣化度Ｄｉがｃを超えてもｄ未満であれば遅延時間Ｄｔを２５０ｍｓｅｃ以下に抑えることを重視している。
【００９８】
また、第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ）は、第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）と第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）との中間的な性質を持つ閾値関数として設定されている。第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ）は、例えば、画質劣化度Ｄｉをｂ以下に抑えつつ遅延時間Ｄｔを１００ｍｓｅｃ以下にすることを目指しつつ、遅延時間Ｄｔが２０００ｍｓｅｃ以内であって画質劣化度Ｄｉがｃ未満であれば画質劣化度Ｄｉに応じた遅延時間Ｄｔの上限を設けつつ、画質劣化度Ｄｉがｃを超えた場合には、画質劣化度がｄ以内までは遅延時間Ｄｔを２０００ｍｓｅｃ以内に抑えることを重視している。
【００９９】
本実施形態では、サーバ１は、出力画面の符号化処理において操作品質を向上させるために画質と低遅延性のどちらを優先すべきかを判断する。より具体的には、画面符号化送信手段１２の遅延閾値設定手段１２６が、所定のタイミングで画質と低遅延性のどちらを優先すべきかの判定処理を行い、その結果に基づいて閾値関数を選択する。判定処理のタイミングは、例えば、セッション中において所定の時間が経過する毎であってもよいし、出力画面を取得する毎であってもよい。
【０１００】
遅延閾値設定手段１２６は、例えば、判定処理の結果、画質を優先すべきと判断した場合には、予め用意しておいた閾値関数のうち画質を優先させた閾値関数（例えば、上記第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ））を選択してもよい。一方、低遅延性を優先すべきと判断した場合には、予め用意しておいた閾値関数のうち低遅延性を優先させた閾値関数（例えば、上記第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ））を選択し、どちらを優先すべきか判断できない場合には、予め用意しておいた閾値関数のうち画質優先と低遅延性優先の中間的な性質を持つ閾値関数（例えば、上記第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ））を選択してもよい。なお、判定処理の結果は、「画質優先／低遅延性優先／判定不可」の３択に限られない。どちらをどの程度優先すべきかを比率等で示すような判定結果であってもよい。
【０１０１】
以下の（Ａ），（Ｂ）に示される判定方法は、優先させる指標を判定する方法の例である。なお、判定方法はこれらに限定されない。また、これらの方法もしくは他の方法を複数併用してもよい。
【０１０２】
（Ａ）出力画面の変化密度解析に基づく判定方法
本方法は、クライアント２にこれまでに得た出力画面の情報を基にクライアント２における出力画面の更新パタンを解析して得られる画面の変化密度から現在、出力画面が高頻度で更新される状態であるか否かを判定し、この結果に基づき画質と低遅延性のどちらを（どの程度）優先させるかを判定する。遅延閾値設定手段１２６は、例えば、過去に切り出された送信領域に関する情報および送信領域画像の画像データを基に、画面更新の頻度や更新されたピクセルの個数等を算出する。そして、算出した画面更新の頻度や更新されたピクセルの個数等から現在の画面の変化密度（以下、画面変化密度という。）を推定する。そして、推定された画面変化密度を基に、現在、出力画面が高頻度で更新される高変化密度状態であるか否かを判断し、この結果に基づき閾値関数を切り替える。例えば、画面変化密度（の推定値）として、出力画面の画像領域全体に対する、直近のある時間窓内（例えば、１秒以内）に更新されたピクセル数の割合であるピクセル変化率を算出してもよい。
【０１０３】
このようにして推定した画面変化密度が所定の閾値よりも高ければ、スクロールやページ異動といった影響範囲の大きい画面操作が行われているとして、画質よりも低遅延性を優先させる閾値関数を選択してもよい。一方、推定した画面変化密度が所定の閾値よりも小さければ、影響範囲の小さい画面操作しか行われていないとして、低遅延性よりも画質を優先させる閾値関数を選択してもよい。
【０１０４】
画面変化密度は、時間的および／または空間的な画面変化の割合を示す量であればよい。画面変化密度は、例えば、所定時間内または／および所定領域内に生じた画面変化を示す量（画面が変化した回数やピクセル数）が全体に対して分布する割合であってもよい。また、上記で示した画面更新の頻度やピクセル変化率に限らず、これらを足し合わせたものや掛け合わせたものであってもよい。また、これらを足し合わせたり掛け合わせるときに重みを付してもよい。重みの例として、例えば時間軸における画面の変化密度を表している画面更新頻度に対してより大きな重みを付与してもよい。なお、アイコン等比較的小さい領域が高頻度で更新されているような場合はそれほど低遅延性は重要でないため、そのような場合に画質を優先させるよう画面変化密度としては小さな値を取るようにしてもよい。例えば、画面変化密度として、所定値以上のピクセル変化率が発生する時間頻度を用いてもよい。
【０１０５】
遅延閾値設定手段１２６は、例えば、推定した画面変化密度を２つ閾値と比較して、画面変化密度が第１の閾値よりも小さい場合は、画質を優先させる第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）を選択してもよい。また、例えば画面変化密度が第２の閾値（ただし、第２の閾値＞第１の閾値）よりも大きい場合は、画質よりも低遅延性を優先させる第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）を選択してもよい。また、例えば、上記以外の場合すなわち画面変化密度が第１の閾値以上かつ第２の閾値以下の場合は、画質優先と低遅延性優先の中間的な性質を持つ第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ）を選択してもよい。
【０１０６】
図１８は、このような画面変化密度に基づいて閾値関数を選択する遅延閾値設定手段１２６の構成例を示すブロック図である。図１８に示す遅延閾値設定手段１２６は、閾値関数記憶手段１２６１と、画面変化密度推定手段１２６２Ａと、閾値関数選択手段１２６３Ａと、遅延閾値供給手段１２６４とを備える。
【０１０７】
閾値関数記憶手段１２６１は、複数の閾値関数（より具体的には、各閾値関数を示す情報）を、それらの選択条件とともに記憶する。
【０１０８】
画面変化密度推定手段１２６２Ａは、クライアント２にこれまでに送信した出力画面の情報を基に、現在の画面変化密度を推定する。
【０１０９】
閾値関数選択手段１２６３Ａは、画面変化密度推定手段１２６２Ａによって推定された現在の画面変化密度に基づいて、閾値関数を１つ選択する。
【０１１０】
遅延閾値供給手段１２６４は、閾値関数選択手段１２６３Ａによって選択された閾値関数を用いて、品質制御手段１２７からの要求に対し、指定されたＱに応じた遅延時間下限Ｄｔ＿ｍａｘを供給する。
【０１１１】
（Ｂ）ユーザ操作イベントの解析に基づく判定方法
本方法は、クライアント２からサーバ１に送信される操作情報を解析して得られる、要求される時間応答性に基づき、画質と低遅延性のどちらを（どの程度）優先させるかを判定する。遅延閾値設定手段１２６は、例えば、受信した操作情報の種類と頻度を解析し、操作に対して要求される時間応答性の高さを示す時間応答要求度を推定する。そして、推定された時間応答要求度より、時間応答性の高い操作が行われたと判断された場合には、現在は遅延短縮の重要度が高い状態であると判断し、低遅延性を優先する閾値関数を選択してもよい。時間応答要求度は、例えば、キーボードのタイプ頻度、マウスの移動速度、マウスのクリック頻度、マウスクリック後の経過時間の短さ（短いほど大きな値とする）、タッチパネルのタッチ頻度、タッチパネル上の指の移動量等の指標による加重平均値を用いてもよい。これらの指標によれば、値が大きい程時間応答要求度は高いと考えられる。したがって、現在の時間応答要求度（の推定値）として、前回出力画面の情報を送信した以後から現時点までの間の、または直近のある時間窓内における、これらの指標の１つ以上による荷重平均値を算出してもよい。
【０１１２】
遅延閾値設定手段１２６は、例えば、推定した時間応答要求度が第１の閾値よりも小さい場合には、画質を優先させる第１の閾値関数Ｄｔ＿ｍａｘ１（Ｄｉ）を選択してもよい。また、時間応答要求度が第２の閾値（ただし、第２の閾値＞第１の閾値）以上の場合には画質よりも低遅延性を優先させる第３の閾値関数Ｄｔ＿ｍａｘ３（Ｄｉ）を選択してもよい。また、上記以外の場合すなわち時間応答要求度が第１の閾値以上かつ第２の閾値未満の場合には画質優先と低遅延性優先の中間的な性質を持つ第２の閾値関数Ｄｔ＿ｍａｘ２（Ｄｉ）を選択してもよい。
【０１１３】
図１９は、このような時間応答要求度に基づいて閾値関数を選択する遅延閾値設定手段１２６の構成例を示すブロック図である。図１９に示す遅延閾値設定手段１２６は、閾値関数記憶手段１２６１と、時間応答要求度推定手段１２６２Ｂと、閾値関数選択手段１２６３Ｂと、遅延閾値供給手段１２６４とを備える。
【０１１４】
閾値関数記憶手段１２６１と遅延閾値供給手段１２６４は、図１８に示したものと同様である。
【０１１５】
時間応答要求度推定手段１２６２Ｂは、クライアント２から送信された操作情報を基に、現在の時間応答要求度を推定する。
【０１１６】
閾値関数選択手段１２６３Ｂは、時間応答要求度推定手段１２６２Ｂによって推定された現在の時間応答要求度に基づいて、閾値関数を１つ選択する。
【０１１７】
この他、特定キーの押下やラッグ（マウスボタンの長押しと移動）、パネルのタップ操作やピンチイン、ピンチアウトなど、高い応答性が要求される操作イベントが検出された時に、現在、時間応答要求度が高い状態にあるとして、即座に低遅延性重視の閾値関数に切り替えるといった品質制御も可能である。
【０１１８】
以上のように、本実施形態によれば、符号化による低遅延性と画質劣化のバランスを、その時点の画面の更新パタンや操作に基づく応答時間の短縮要求性に適合するように最適に制御できるので、変化する状況に応じて最適な操作品質を提供できる。
【０１１９】
次に、本発明による制御装置の最小構成について説明する。図２０は、本発明による制御装置の最小の構成例を示すブロック図である。図２０に示すように、本発明による制御装置は、最小の構成要素として、品質制御手段５０１を含む。
【０１２０】
図２０に示す最小構成の順序保存暗号化システムでは、品質制御手段５０１は、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定する。
【０１２１】
なお、品質制御手段５０１は、上記実施形態では、品質制御手段１２７として開示されている。
【０１２２】
従って、最小構成の制御装置によれば、出力画面のデータ伝送に関わる条件が広範囲に変化する状況下であっても、符号化による低遅延性と画質劣化という操作品質に関わる２つの指標を所望のバランスで制御でき、その結果、最適な操作品質を提供できる。
【０１２３】
また、図２１は、本発明による画面送信サーバの特徴を表現した構成例を示すブロック図である。図２１に示す画面送信サーバは、上述した品質制御手段５０１に加えて、符号化対象情報取得手段５０２と、符号化手段５０３と、第１の推定手段５０４と、第２の推定手段５０５と、遅延閾値供給手段５０６とを含む。
【０１２４】
なお、符号化対象情報取得手段５０２は、上記実施形態では、画像取得手段１２１および送信領域決定手段１２２として開示されている。また、符号化手段５０３は、符号化手段１２３として開示されている。また、第１の推定手段５０４は、画質−データ量推定手段１２４として開示されている。また、第２の推定手段５０５は、遅延時間推定手段１２５として開示されている。また、遅延閾値供給手段５０６は、遅延閾値設定手段１２６として開示されている。
【０１２５】
符号化対象情報取得手段５０２は、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する。
【０１２６】
符号化手段５０３は、圧縮強度のパラメータを有し、指定された圧縮強度に従って、符号化対象情報を圧縮符号化する。
【０１２７】
第１の推定手段５０４は、符号化対象情報を符号化手段５０３が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定する。
【０１２８】
第２の推定手段５０５は、第１の推定手段５０４によって推定された符号化データ長を利用して、符号化対象情報を符号化手段５０３が圧縮符号化することにより生成される符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定する。
【０１２９】
遅延閾値供給手段５０６は、画質劣化度の各値に対して遅延時間の上限を定めた関数であって、画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数を記憶する閾値関数記憶手段（例えば、閾値関数記憶手段１２６１）を有し、閾値関数記憶手段に記憶されている閾値関数に基づいて、遅延時間の上限を供給する。
【０１３０】
そのような構成の場合、品質制御手段５０１は、第１の推定手段５０４による画質劣化度の推定結果と、第２の推定手段５０５による遅延時間の推定結果と、遅延閾値供給手段５０６から供給される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定すればよい。
【０１３１】
このような構成によれば、簡単に、出力画面のデータ伝送に関わる条件が広範囲に変化する状況下であっても、符号化による低遅延性と画質劣化という操作品質に関わる２つの指標を所望のバランスで制御でき、その結果、最適な操作品質を提供できる。
【０１３２】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１３３】
また、上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１３４】
（付記１）
制御装置（例えば、サーバ１）が、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を圧縮符号化することにより生成される符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度と、画面伝送に伴う遅延時間であって符号化データを所定の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間と、予め画像劣化度の各値に対して定められている遅延時間の上限とに基づいて、符号化対象情報を圧縮符号化する際の圧縮強度を決定する
ことを特徴とする出力画面の品質制御方法。
【０１３５】
（付記２）
制御装置が、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得し、制御装置が、取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定し、制御装置が、推定された符号化データ長を利用して、符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定し、制御装置が、画質劣化度の推定結果と、遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する
付記１に記載の出力画面の品質制御方法。
【０１３６】
（付記３）
制御装置は、複数の閾値関数を記憶する閾値関数記憶手段を有しており、制御装置が、遅延時間の上限を供給する際に、閾値関数記憶手段に記憶されている複数の閾値関数の中から、使用する１つの閾値関数を選択する
付記２に記載の出力画面の品質制御方法。
【０１３７】
（付記４）
制御装置が、出力画面において表示が更新されたピクセル数または表示が更新された時間頻度に基づいて、現在の時間的および／または空間的な画面変化の割合を示す量である画面変化密度を推定し、制御装置が、遅延時間の上限を供給する際に、推定した画面変化密度に基づいて、複数の閾値関数の中から使用する１つの閾値関数を選択する
付記３に記載の出力画面の品質制御方法。
【０１３８】
（付記５）
制御装置が、クライアント端末から送信される出力画面に対する操作の情報である操作情報によって示される操作の種類または操作頻度に基づいて、現在の操作に対して要求される時間応答性の高さを表す時間応答要求度を推定し、制御装置が、遅延時間の上限を供給する際に、推定した時間応答要求度に基づいて、複数の閾値関数の中から使用する１つの閾値関数を選択する
付記３に記載の出力画面の品質制御方法。
【０１３９】
（付記６）
閾値関数は、許容する最大の画質劣化度に対する遅延時間の上限に、遅延時間との比較処理において必ず大きいと判定される値が設定されている
付記２から付記５のうちのいずれかに記載の出力画面の品質制御方法。
【０１４０】
（付記７）
コンピュータに、出力画面の表示画像の少なくとも一部の領域の画像データを含む符号化対象情報を取得する処理、取得した符号化対象情報を、当該画面送信サーバが有する符号化手段であって圧縮強度のパラメータを有する符号化手段が圧縮符号化することにより生成される符号化データのデータ長である符号化データ長と、符号化データを復号した際に画像データに生じる画質の劣化の程度である画質劣化度とを、各々圧縮強度の関数として推定する処理、推定された符号化データ長を利用して、符号化データを現在の通信条件下でクライアント端末に送信するために要する時間を含む遅延時間を、圧縮強度の関数として推定する処理、画質劣化度の推定結果と、遅延時間の推定結果と、所定の記憶手段に記憶されている、画質劣化度の各値に対して遅延時間の上限を定めた関数であって画質劣化度の増加に対して遅延時間の上限が単調増加する関数である閾値関数に基づき特定される遅延時間の上限とに基づいて、符号化対象情報を符号化する際に指定する圧縮強度であって、遅延時間が上限を超えず、かつ画質劣化度が最小となる圧縮強度を決定する処理、および決定された圧縮強度を指定して、符号化手段に符号化対象情報を圧縮符号化させる処理を実行させるための制御プログラム。
【０１４１】
（付記８）
複数の閾値関数を記憶する閾値関数記憶手段を有するコンピュータに、閾値関数記憶手段に記憶されている閾値関数に基づいて、指定された画質劣化度に応じた遅延時間の上限を供給する処理を実行させ、遅延時間の上限を供給する処理で、閾値関数記憶手段に記憶されている複数の閾値関数の中から、使用する１つの閾値関数を選択させる
付記７に記載の制御プログラム。
【０１４２】
（付記９）
コンピュータに、出力画面において表示が更新されたピクセル数または表示が更新された時間頻度に基づいて、現在の時間的および／または空間的な画面変化の割合を示す量である画面変化密度を推定する処理を実行させ、遅延時間の上限を供給する処理で、閾値関数記憶手段に記憶されている複数の閾値関数の中から、推定された画面変化密度に基づいて、使用する１つの閾値関数を選択させる
付記８に記載の制御プログラム。
【０１４３】
（付記１０）
コンピュータに、出力画面において表示が更新されたピクセル数または表示が更新された時間頻度に基づいて、現在の時間的および／または空間的な画面変化の割合を示す量である画面変化密度を推定する処理を実行させ、遅延時間の上限を供給する処理で、閾値関数記憶手段に記憶されている複数の閾値関数の中から、推定された時間応答要求度に基づいて、使用する１つの閾値関数を選択させる
付記８に記載の制御プログラム。
【産業上の利用可能性】
【０１４４】
本発明は、クライアントに送信するデータが出力画面の情報以外であっても、ネットワークを経由してデータを符号化圧縮して送信するシステムにおいて、符号化による低遅延性と画質劣化をバランスよく制御したい用途に好適に適用可能である。
【符号の説明】
【０１４５】
１  画面送信サーバ
１１  画面生成手段
１２  画面符号化送信手段
１２１  画像取得手段
１２２  送信領域決定手段
１２３  符号化手段
１２４  画質−データ量推定手段
１２５  遅延時間推定手段
１２６  遅延閾値設定手段
１２７  品質制御手段
１２８  送信手段
１２９  制御手段
１３  操作情報受信手段
２  画面受信クライアント
２１  操作情報入力手段
２２  画面受信復号手段
２２１  受信手段
２２２  復号手段
２２３  画像合成手段
１２６１  閾値関数記憶手段
１２６２Ａ  画面変化密度推定手段
１２６２Ｂ  時間応答要求度推定手段
１２６３Ａ、１２６３Ｂ  閾値関数選択手段
１２６４  遅延閾値供給手段
５０１  品質制御手段
５０２  符号化対象情報取得手段
５０３  符号化手段
５０４  第１の推定手段
５０５  第２の推定手段
５０６  遅延閾値供給手段
【図１】
2015177446.tif 000003
【図２】
2015177446.tif 000004
【図３】
2015177446.tif 000005
【図４】
2015177446.tif 000006
【図５】
2015177446.tif 000007
【図６】
2015177446.tif 000008
【図７】
2015177446.tif 000009
【図８】
2015177446.tif 000010
【図９】
2015177446.tif 000011
【図１０】
2015177446.tif 000012
【図１１】
2015177446.tif 000013
【図１２】
2015177446.tif 000014
【図１３】
2015177446.tif 000015
【図１４】
2015177446.tif 000016
【図１５】
2015177446.tif 000017
【図１６】
2015177446.tif 000018
【図１７】
2015177446.tif 000019
【図１８】
2015177446.tif 000020
【図１９】
2015177446.tif 000021
【図２０】
2015177446.tif 000022
【図２１】
2015177446.tif 000023