JP5159562B2 - 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム - Google Patents

通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム Download PDF

Info

Publication number
JP5159562B2
JP5159562B2 JP2008279007A JP2008279007A JP5159562B2 JP 5159562 B2 JP5159562 B2 JP 5159562B2 JP 2008279007 A JP2008279007 A JP 2008279007A JP 2008279007 A JP2008279007 A JP 2008279007A JP 5159562 B2 JP5159562 B2 JP 5159562B2
Authority
JP
Japan
Prior art keywords
image
processing time
unit
decompression
software
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
JP2008279007A
Other languages
English (en)
Other versions
JP2010109637A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008279007A priority Critical patent/JP5159562B2/ja
Priority to PCT/JP2009/068699 priority patent/WO2010050593A1/ja
Publication of JP2010109637A publication Critical patent/JP2010109637A/ja
Application granted granted Critical
Publication of JP5159562B2 publication Critical patent/JP5159562B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/507Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction using conditional replenishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Facsimiles In General (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

この発明は、装置間でアプリケーションの画面を共有する機能を実現する通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラムに関する。
ユーザビリティの向上を目的として、最低限の入出力インターフェースを有する端末装置をユーザ側に配し、複雑な演算処理は遠隔地に設置された通信装置(本体装置)上で実行するコンピューティングシステムが存在する。例えば、特許文献1では、本体装置(パーソナルコンピュータ、サーバコンピュータ等)の画面情報を、ネットワークを介して遠隔の表示装置(表示端末)に投影するシステムに関する技術が提案されている。
このようなシステムでは、表示端末からの入力情報(デジタイザによるペン入力等)は、同様にネットワークを介して本体装置に送信され、実際のアプリケーションプログラム処理は本体装置が実行する。その後、実行結果および画面更新情報が、ネットワークを介して表示端末に転送される。表示端末は、受信された画面更新情報により出力処理(描画処理)を実行する。
一方、遠隔ネットワーク上の本体装置からの画面情報を表示端末へ効率よく伝送するための技術として、VNC(Virtual Network Computing)が知られている。このVNCでは、画面の更新を検知した際、読み出した画素情報の値を前回表示端末に伝送した画素情報の値と比較し、前回から変化した更新画面領域を決定する。さらに更新画面領域を静止画圧縮した後、表示端末に対して、圧縮した画面の差分情報のみを伝送する。これにより、通信帯域の消費を抑えることができる。従って、ウィンドウの移動等、画面の変更が大きい場合には送信すべき画面情報量が増加し、反対に画面の変更が小さい場合には送信すべき画面情報量は減少する。
そこで、表示端末が本体装置から受信した圧縮画像の伸張処理を専用のハードウェアで行うことによって、更新画面の表示に関するレスポンス性を向上させることが考えられる。しかし、ハードウェアで処理する場合、一般的にハードウェアの初期化処理に要する時間、圧縮画像の伸張処理に要する時間、および処理完了の割り込み型通知までに要する待機時間などがオーバーヘッドとして必要となる。このため、伸張する画像の画素数の大きさによっては、ハードウェアで処理するよりもソフトウェアで処理する方が少ない時間で済む場合が存在し得る。
この問題に対しては、表示端末が、本体装置から受信した圧縮画像の画素数が予め定めた閾値よりも大きい場合にはハードウェアによる伸張処理を実行し、それ以外の場合にはソフトウェアによる伸張処理を実行するように、処理を切替える方法が考えうる。
なお、画像の情報に基づいて複数の処理の中から1つの処理を選択して実施する方法として、特許文献2では、静止画像の付加(ヘッダー)情報に基づいて、ハードウェアとソフトウェアのいずれかを選択して圧縮データを解凍する技術が提案されている。また、特許文献3では、画像の解像度情報に基づいて、可逆圧縮と非可逆圧縮のいずれかを選択して符号化する技術が提案されている。
米国特許第6784855号公報 特開2000−50263号公報 特開2008−42681号公報
しかしながら、上述のように画素数が閾値よりも大きい圧縮画像はハードウェアによる伸張処理を実行し、画素数が閾値以下の圧縮画像はソフトウェアによる伸張処理を実行するように処理を切り替える方法では、表示端末側での画像伸張処理を効率化できない場合があった。
例えば、圧縮画像の画素数が閾値より小さくなる更新領域が複数存在する場合、複数の更新領域を1つに統合した矩形領域に対応する圧縮画像をハードウェアにより伸張処理する方が、複数の更新領域に対応する圧縮画像それぞれに対して複数回ソフトウェアにより伸張処理するより処理時間が少なくなる場合がある。しかし、上記の方法では、圧縮画像の画素数が閾値より小さくなる更新領域が複数存在する場合は、複数の更新領域に対応する圧縮画像それぞれに対して複数回のソフトウェア伸張処理を実行することしかできない。
本発明は、上記に鑑みてなされたものであって、通信装置から送信された圧縮画像をソフトウェアおよびハードウェアにより伸張可能な表示装置の処理を効率化することができる通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、画像を表示可能な表示装置にネットワークを介して接続可能な通信装置であって、前記表示装置に表示する表示画像を記憶する画像記憶部と、前記表示画像を更新するための更新画像を生成する更新画像生成部と、前記更新画像と前記表示画像との間で画素情報が一致しない領域を示す差分領域を検出する検出部と、複数の前記差分領域が検出された場合に、複数の前記差分領域の画像を圧縮した各々の圧縮画像に対する伸張処理をソフトウェアにより実行したときの処理時間を表すソフトウェア処理時間と、複数の前記差分領域を含む1つの領域を表す統合領域の画像を圧縮した圧縮画像に対する伸張処理をハードウェアにより実行したときの処理時間を表すハードウェア処理時間とを算出する算出部と、前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいか否かを判定する判定部と、前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいと判定された場合に、前記統合領域の画像を圧縮した圧縮画像を生成する圧縮画像生成部と、生成された圧縮画像を前記表示装置に送信する送信部と、を備えたことを特徴とする。
また、本発明は、上記装置を実行することができる方法およびプログラムである。
また、本発明は、通信装置にネットワークを介して接続された表示装置であって、更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、前記圧縮画像の伸張処理を実行可能な伸張回路と、前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成する画像生成部と、前記表示画像を表示する表示部と、前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、伸張処理を前記ソフトウェア伸張部により実行したか前記伸張回路により実行したかを表す伸張方式と、伸張した画像の画素数と、前記ソフトウェア処理時間および前記ハードウェア処理時間のいずれかと、対応づけた時間情報を生成する情報生成部と、前記時間情報を前記通信装置に送信する送信部と、を備えたことを特徴とする。
また、本発明は、上記装置を実行することができる方法およびプログラムである。
また、本発明は、通信装置にネットワークを介して接続された表示装置であって、更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、前記圧縮画像の伸張処理を実行可能な伸張回路と、前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成する画像生成部と、前記表示画像を表示する表示部と、前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、前記ソフトウェア伸張部により伸張した画像の画素数と前記ソフトウェア処理時間とに基づいて画素数から前記ソフトウェア処理時間を算出する第1関数を生成し、前記伸張回路により伸張した画像の画素数と前記ハードウェア処理時間とに基づいて画素数から前記ハードウェア処理時間を算出する第2関数を生成する情報生成部と、前記第1関数および前記第2関数を前記通信装置に送信する送信部と、を備えたことを特徴とする。
また、本発明は、上記装置を実行することができる方法およびプログラムである。
本発明によれば、通信装置から送信された圧縮画像をソフトウェアおよびハードウェアにより伸張可能な表示装置の処理を効率化することができるという効果を奏する。
以下に添付図面を参照して、この発明にかかる装置、方法およびプログラムの最良な実施の形態を詳細に説明する。
本実施の形態にかかる通信システムは、アプリケーションを実行する本体装置(通信装置)と、アプリケーションの実行により更新された画面を表示する表示端末(表示装置)とを備える。本体装置は、アプリケーションプログラムの動作により発生する画像情報の差分領域が複数存在することを検出した場合に、当該複数の差分領域を1つの矩形領域に統合することによって、表示端末で実行される画像伸張処理の処理時間が短縮されるかを判定する。そして処理時間が短縮されると判定した場合、本体装置は複数の差分領域を統合した矩形領域に対応する画像情報を圧縮して表示端末に送信する。これにより、表示端末での画像伸張処理を効率化することができる。
図1は、本実施の形態にかかる通信システムの構成を示すブロック図である。本実施の形態にかかる通信システムは、本体装置の画面に生じたイベントによる更新部分の画像を表示端末に伝送するシステムである。以下では、このような通信システムを画面転送システムと呼ぶ。
図1に示すように、本実施の形態にかかる画面転送システム10は、通信装置としての本体装置100と、本体装置100とネットワーク400を介して接続されたアクセスポイントとしての無線基地局300と、無線基地局300と無線LANにより無線通信する表示装置としての表示端末200とを備えている。
画面転送システム10は、本体装置100上で動作するアプリケーションソフトウェアの画面を、無線基地局300を介して表示端末200へ無線転送し、各表示端末200へ本体装置100のアプリケーション画面を表示する機能を有している。画面転送システム10では、本体装置100の側で更新された画面をリアルタイムに表示端末200へ転送するために、本体装置100の画面内で更新された部分の画像情報のみを転送する。すなわち、本体装置100は、画像情報を表示する表示端末200に対して、無線基地局300を介して画像情報を送信可能である。
表示端末200は、本体装置100から画像情報を受信し、受信した画像情報を伸張して画面内の対応する部分に表示する。
無線基地局300は、IEEE802.11などの無線通信プロトコルに準拠した無線通信の基地局である。ネットワーク400は、例えば、IEEE802.3などの有線通信プロトコルに準拠したネットワークである。なお、ネットワーク形態はこれに限られず、他のプロトコルで接続するように構成してもよい。また、表示端末200と本体装置100とを有線ネットワークで接続するように構成してもよい。
次に、本体装置100の詳細な構成について図2を用いて説明する。図2は、本実施の形態にかかる本体装置100のブロック図である。同図に示すように、本体装置100は、ディスプレイ101と、入力デバイス102と、画像バッファ121と、条件記憶部122と、セッション情報記憶部123と、イベント取得部111と、差分領域検出部112と、圧縮画像生成部113と、領域統合判定部114と、処理時間算出部115と、メッセージ解析部116と、通信処理部117と、セッションマネージャ118と、を備えている。
ディスプレイ101は、LCD(Liquid Crystal Display)などで実現される表示装置である。入力デバイス102は、ディスプレイ101の画面に表示されたカーソルを移動操作するマウスなどで実現される。この他、入力デバイス102としては、キーボード、トラックボールなどを用いてもよい。
画像バッファ121は、画像を記憶する記憶部である。条件記憶部122は、画像の画素数から、圧縮画像を表示端末200でソフトウェアで伸張処理した場合の処理時間(以下、ソフトウェア処理時間という)と、圧縮画像を表示端末200でハードウェアで伸張処理した場合の処理時間(以下、ハードウェア処理時間という)を算出するための所定の条件を記憶する。例えば、条件記憶部122は、画素数を入力としてソフトウェア処理時間を出力する関数(第1関数)を導出するための関数情報、および、画素数を入力としてハードウェア処理時間を出力する関数(第2関数)を導出するための関数情報を条件として記憶する。
例えば、画素数とソフトウェア処理時間またはハードウェア処理時間との関係が一次関数で表される場合は、一次関数の傾き情報および切片情報が関数を導出するための関数情報に相当する。なお、関数は一次関数に限られるものではない。
セッション情報記憶部123は、本体装置100とセッションを確立中の表示端末200に関する情報を表すセッション情報を記憶する。例えば、セッション情報記憶部123は、ユーザを識別するユーザ識別情報などと、セッションが利用中か否かを示す状態情報、および伝送制御がTCP(Transmission ControlProtocol)であるかUDP(User Datagram Protocol)であるかを表す伝送制御情報などの情報とを対応づけたセッション情報を記憶する。
1台の本体装置100に対して、複数の表示端末200がセッションを確立している状態では、セッション情報記憶部123は、本体装置100から送信するメッセージの宛先とする表示端末200を識別する端末識別情報を含むセッション情報を記憶する。
なお、画像バッファ121、条件記憶部122およびセッション情報記憶部123は、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。
イベント取得部111は、アプリケーションプログラム等の動作により発生するイベントを取得する。例えば、イベント取得部111は、コンピュータを統括制御するオペレーティングシステム(OS)と、このOSに組み込まれたディスプレイドライバと同等の機能を有する仮想ディスプレイドライバと、OS上で動作するアプリケーションソフトウェアなどのアプリケーションプログラムで実現される。
イベント取得部111は、アプリケーションソフトウェアにより画面が更新される場合や、マウス操作などでカーソルが移動操作されて画面内の任意の領域の画像が更新される場合に、画面(画像)が更新されたことをイベントとして取得する。
イベント取得部111は、詳細な構成として更新画像生成部111aを備えている。更新画像生成部111aは、例えばOSに組み込まれた仮想ディスプレイドライバとして実現できる。更新画像生成部111aは、画面更新のイベントが取得された場合、OSのグラフィックエンジンから描画命令を取得し、描画処理を行うことで表示端末200に表示させる画像を表す表示画像を生成して画像バッファ121へ順次出力して記憶する。これにより、画像バッファ121には、表示画像が順次保持される。
なお、以下では、画像バッファ121に保持されている画像を表示画像といい、更新画像生成部111aにより新たに生成され、画像バッファ121に保存する前の画像を更新画像という。このように、更新画像生成部111aは、アプリケーションプログラムの動作により発生するイベントに従って表示端末200に表示させる更新画像を生成する。
差分領域検出部112は、画像バッファ121に順次保持される新旧の表示画像で画素情報が一致しない領域を表す差分領域を検出する。すなわち、差分領域検出部112は、更新画像生成部111aにより更新画像が生成されたことを通知された場合に、生成された新たな画像情報(更新画像)と画像バッファ121にバッファリングされた画像情報(表示画像)との間の差分領域を検出する。差分領域検出部112は、例えば、2つの画像情報間で一致しない部分を含む最小の矩形を、差分領域として検出する。なお、差分領域検出部112が、所定の時間間隔毎に差分の有無を確認するように構成してもよい。
圧縮画像生成部113は、差分領域検出部112により検出された差分領域の画像を送信用に圧縮処理した圧縮画像を生成する。圧縮画像は、JPEG(Joint Photographic Experts Group)のような不可逆圧縮を用いて生成してもよいし、可逆圧縮方式を用いて生成してもよい。
なお、圧縮画像生成部113および上述の差分領域検出部112は、画面転送用のアプリケーションプログラムなどにより実現される。
領域統合判定部114は、複数の差分領域が検出された場合に、当該複数の差分領域を統合する方が表示端末200にとって効率的となるか否かを判定する。例えば、領域統合判定部114は、差分領域検出部112から差分領域によって示される画像の画素数を含む差分領域情報の通知を受け、通知された画素数と条件記憶部122に記憶された条件とから、複数の差分領域を統合する方が効率的か否かを判定する。
差分領域によって示される画像の画素数としては、例えば、差分領域の画像の縦幅と横幅とを掛け合わせた値を用いる。例えば、縦幅320画素、横幅240画素の矩形領域を差分領域として検出した場合、差分領域検出部112は、双方を掛け合わせた76800画素を差分領域によって示される画像の画素数として領域統合判定部114に通知する。
以下に、領域統合判定部114による判定処理の詳細について説明する。領域統合判定部114は、まず、処理時間算出部115を用いて複数の差分領域を1つに統合した領域(以下、統合領域という)に対するハードウェア処理時間と、複数の差分領域それぞれに対するソフトウェア処理時間とを算出する。
すなわち、処理時間算出部115は、統合領域の画像を圧縮した圧縮画像をハードウェアにより伸張処理したときのハードウェア処理時間と、複数の差分領域の画像を圧縮した圧縮画像それぞれをソフトウェアにより伸張処理したときのソフトウェア処理時間とを算出する。
具体的には、処理時間算出部115は、条件記憶部122に記憶した第1関数に、差分領域検出部112から通知された複数の差分領域の画像の画素数を入力し、ソフトウェア処理時間を算出する。また、処理時間算出部115は、条件記憶部122に記憶した第2関数に、差分領域検出部112が検出した複数の差分領域を統合した統合領域の画像の画素数を入力し、ハードウェア処理時間を算出する。
そして、領域統合判定部114は、算出したハードウェア処理時間がソフトウェア処理時間より小さいか否かを判定し、小さい場合に複数の差分領域を統合する方が効率的と判定して判定結果を差分領域検出部112に通知する。また、圧縮画像生成部113は、後述する領域統合判定部114により、複数の差分領域を統合した方が効率的と判定された場合に、複数の差分領域を統合した統合領域の画像を圧縮した圧縮画像を生成する。
以下に、領域統合判定部114による判定処理の詳細について図3を用いてさらに説明する。図3は、画像の画素数と伸張処理時間との関係の一例を示す図である。
同図の右上には、本体装置100の表示画面で2つの矩形領域α、βが更新すべき差分領域として検出された状態が示されている。なお、矩形領域301は、矩形領域α、βを1つに統合した統合領域を表す。矩形領域301は、例えば矩形領域α、βを含む最小の矩形領域として求めることができる。また、領域γは、矩形領域301内で実際には更新が発生していない矩形領域を示している。
また、同図では、横軸を画像の画素数、縦軸を表示端末200での圧縮画像の伸張処理時間とした場合の、ソフトウェア伸張処理による伸張処理時間と画素数との関係を表す関数(第1関数)と、ハードウェア伸張処理による診療処理時間と画素数との関係を表す関数(第2関数)の一例が併せて示されている。
なお、同図では、ソフトウェア伸張処理による伸張処理時間と画素数との関係を表す関数として、1つの矩形領域を処理する場合処理時間を表す関数式を実線(SW(1矩形))で、2つの矩形領域を別個に処理する場合の処理開始から完了までの総処理時間を表す関数式を点線(SW(2矩形))で示している。
例えば、表示端末200が、矩形領域αとβをそれぞれソフトウェアで伸張処理する場合、SW(1矩形)の関数式における横軸「α」と「β」に該当する伸張処理時間の値それぞれが、各矩形領域に対する伸張処理時間となる。矩形領域αとβをそれぞれ別個に処理する場合は、関数の切片に該当するオーバーヘッドが処理ごとに必要となるため、同図のSW(2矩形)の関数式における横軸「α+β」に該当する伸張処理時間の値が、2つの矩形領域をソフトウェアで処理する場合の総処理時間となる。
一方、本体装置100は、矩形領域αとβに対して、更新が発生していない領域γを加えることによって、表示画面内の1つの矩形領域301に統合することができる。そして、本体装置100は、矩形領域301をハードウェアで伸張処理した場合の処理時間を、同図のHW(1矩形)の関数式を用いて算出することができる。
同図では、HW(1矩形)の関数式における横軸「α+β+γ」に対応する伸張処理時間が、SW(2矩形)の関数式における横軸「α+β」に対応する伸張処理時間よりも短くなる場合が例示されている。このような場合は、領域統合判定部114は、2つの矩形領域を含む1つの矩形領域を表示画面から切り出して圧縮画像を生成する方が、当該複数の矩形領域の圧縮画像を別個に生成するよりも、表示端末200にとって効率的であると判定することができる。この結果、差分領域検出部112は、複数の矩形領域を含む1つの矩形領域を切り出し、圧縮画像を生成する対象領域として圧縮画像生成部113に通知する。
なお、同図では、2つの矩形領域が差分領域として検出された場合の例を示したが、より多くの矩形領域が検出された場合は、検出された差分領域数分のオフセットを加算した切片情報を持つ関数式から各領域を別個にソフトウェアで伸張処理した場合の総処理時間を算出する。そして、算出した総処理時間と、1つの矩形領域内に統合してハードウェアで伸張処理した場合の処理時間とを比較し、ハードウェアによる伸張処理時間の方が小さければ、当該複数の矩形領域を含む1つの矩形領域を表示画面から切り出して圧縮画像を生成する。
図2に戻り、メッセージ解析部116は、表示端末200から受信したメッセージを解析する。例えば、メッセージ解析部116は、圧縮画像の伸張処理に要する時間を含む時間情報を表示端末200から受信した場合に、時間情報から第1関数および第2関数を求め、条件記憶部122に保存する。このように、本実施の形態では、実際の伸張処理に要する時間を表示端末200から取得し、取得した時間を元に処理時間を算出するための関数を動的に得ることができる。なお、メッセージ解析部116による上記処理を行わず、事前に関数を求めて条件記憶部122に記憶するように構成してもよい。
通信処理部117は、表示端末200などの外部装置との間でメッセージを送受信する。通信処理部117は、メッセージを送信する送信部117aと、メッセージを受信する受信部117bとを備えている。例えば、送信部117aは、圧縮画像生成部113により生成された圧縮画像を含む送信画像メッセージを表示端末200に送信する。
送信画像メッセージは、更新する矩形領域の圧縮画像と矩形情報とを含む。圧縮画像は、JPEGなどの圧縮された静止画情報を示す。矩形情報は、更新する矩形領域の画像の描画位置を示す情報である。例えば、矩形情報は、(横方向始点座標、縦方向始点座標、横幅画素数、縦幅画素数)のような構成で画像の描画位置を示す。
なお、送信部117aは、後述するセッションマネージャ118により特定された表示端末200をあて先として、送信すべきメッセージを無線基地局300を介して送信する。
また、受信部117bは、表示端末200からメッセージを受信してメッセージ解析部116に渡す。例えば、受信部117bは、圧縮画像の伸張処理に要する時間を含む時間情報を表示端末200から受信する。
セッションマネージャ118は、表示端末200との間で確立した通信(セッション)を管理する。例えば、セッションマネージャ118は、ある表示端末200とセッションを確立したときに、表示端末200のユーザのユーザ識別情報、セッションの状態情報、および伝送制御情報などを対応づけたセッション情報を生成してセッション情報記憶部123に記憶する。そして、セッションマネージャ118は、メッセージの通信先とする表示端末200をセッション情報を参照して特定し、特定した表示端末200を通信先として通信処理部117によりメッセージを送受信する。
次に、表示端末200の詳細な構成について図4を用いて説明する。図4は、本実施の形態にかかる表示端末200のブロック図である。同図に示すように、表示端末200は、ディスプレイ201と、入力デバイス202と、アンテナ203と、画像バッファ221と、生成時間記憶部222と、セッション情報記憶部223と、入出力インターフェース211と、ソフトウェア伸張部212と、ハードウェア伸張回路213と、画像生成部214と、生成時間計測部215と、メッセージ生成部216と、無線通信処理部217と、セッションマネージャ218と、を備えている。
ディスプレイ201は、LCDなどで実現される表示装置である。入力デバイス202は、ディスプレイ201の画面に表示されたカーソルを移動操作するデジタイザやタッチスクリーンなどで実現される。入力デバイス202が取得した入力情報は、入出力インターフェース211(後述)に渡される。
アンテナ203は、本体装置100などの外部装置との間で無線通信するための電波を送受信する。
画像バッファ221は、画像を記憶する記憶部である。また、生成時間記憶部222は、後述する生成時間計測部215により計測された伸張画像の生成時間(伸張処理時間)をを記憶する。具体的には、生成時間記憶部222は、画像の伸張処理に用いた方式(ハードウェアによる伸張処理かソフトウェアによる伸張処理か)、画像の画素数(圧縮画像の縦幅と横幅を掛け合わせた値)、および伸張処理に実際に要した時間(伸張処理時間)を対応づけて記憶する。
セッション情報記憶部223は、セッションを確立中の本体装置100に関する情報を表すセッション情報を記憶する。例えば、セッション情報記憶部223は、セッションの状態情報、および伝送制御情報などを含むセッション情報を記憶する。
なお、画像バッファ221、生成時間記憶部222およびセッション情報記憶部223は、HDD、光ディスク、メモリカード、RAMなどの一般的に利用されているあらゆる記憶媒体により構成することができる。
入出力インターフェース211は、ディスプレイ201および入力デバイス202に対する入出力のインターフェースであり、GUI(Graphical User Interface)などのアプリケーションプログラムによって実現される。
例えば、入出力インターフェース211は、画像バッファ221から画像情報を取得し、ディスプレイ201に表示する。また、入出力インターフェース211は、本体装置100から送られた画像情報を、画像生成部214を介して取得し、画像バッファ221に書き込む機能に加え、表示端末200内で独自に生成されたGUI用の画像情報を画像バッファ221に書き込む機能を有する。
ソフトウェア伸張部212は、後述する画像生成部214の指示に応じて、本体装置100から受信した圧縮画像の伸張処理をソフトウェアにより実行する。ハードウェア伸張回路213は、画像生成部214の指示に応じて、本体装置100から受信した圧縮画像の伸張処理をハードウェアにより実行する。
画像生成部214は、本体装置100から受信した圧縮画像を、ソフトウェア伸張部212またはハードウェア伸張回路213で伸張した後、伸張した画像情報を、描画用の画像バッファ221の指定描画位置へ書き込む。すなわち、画像生成部214は、本体装置100から送信され無線通信処理部217により受信された圧縮画像を伸張して生成した部分画像をディスプレイ201の指定位置へ表示する。
なお、画像生成部214は、圧縮画像の画素数の大きさと予め定めた閾値に基づいて、ソフトウェアによる伸張処理(ソフトウェア伸張部212による伸張処理)とハードウェアによる伸張処理(ハードウェア伸張回路213による伸張処理)とを切替える。なお、画像生成部214は、送信画像メッセージ内の矩形情報、または、圧縮画像のヘッダ内の画素数(解像度)情報から圧縮画像の画素数を取得することができる。
例えば、閾値を縦幅100画素、横幅100画素を掛け合わせた10000画素の矩形領域とする。そして、例えば受信した圧縮画像が縦幅320画素、横幅240画素を掛け合わせた76800画素であれば、画像数が閾値よりも大きいため、画像生成部214は、ハードウェア伸張回路213を用いてハードウェアにより圧縮画像を伸張する。
また、例えば受信した圧縮画像が縦幅32画素、横幅32画素を掛け合わせた1024画素であれば、画像数が閾値よりも小さいため、画像生成部214は、ソフトウェア伸張部212を用いてソフトウェアにより圧縮画像を伸張する。
ここで、画像生成部214による伸張処理の切替方法について図5を用いてさらに説明する。図5は、画像の画素数と伸張処理時間との関係の一例を示す図である。
同図は、解像度(画素数)を横軸、伸張処理時間を縦軸とした関数式を示している。「SW」がソフトウェアによる伸張処理を行った場合の画素数と伸張処理時間の関係を表している。また、「HW」がハードウェアによる伸張処理を行った場合の画素数と伸張処理時間の関係を表している。
ハードウェアによる伸張処理を行う場合は、ハードウェアの初期化処理や伸張処理完了通知をハンドリングするまでの待機時間、具体的にはハードウェアデバイスからオペレーティングシステムへの割り込み通知までの待機時間などが固定のオーバーヘッドとして存在する。このため、同図に示すように関数の切片値が大きくなる。一方、ソフトウェアによる伸張処理を行う場合は、そのようなオーバーヘッドの問題は解消されるため、関数の切片値は小さくなる。
また、圧縮画像を伸張する部分に焦点を当てた処理時間は、ハードウェアにて処理する方がソフトウェアにて処理するよりも小さい。このため、ハードウェアによる処理時間と画素数との関係を示す関数式の傾きは、ソフトウェアによる関数式の傾きよりも小さくなる。従って、画像の画素数が小さい場合にはソフトウェアで伸張処理を実行する方が効率がよく、画像の画素数が大きい場合にはハードウェアで伸張処理を実行する方が効率がよい。
このような状況を鑑み、画像生成部214は、双方の関数式が交わる交点部分に該当する画素値を、ソフトウェアによる伸張処理とハードウェアによる伸張処理を切替えて実施する際の閾値とすることが望ましい。
同図のような関数を導出するための情報は、表示端末200にて圧縮画像の伸張を実際に行いながら、伸張処理の種別情報と、伸張した画像の画素数、伸張処理時間などを統計情報として取得し、生成時間記憶部222に記憶するように構成することができる。なお、予め定めた統計情報を表示端末200の生成時間記憶部222や本体装置100の条件記憶部122に記憶する方法を用いてもよい。
図2に戻り、生成時間計測部215は、画像生成部214による伸張処理時間を計測し、生成時間記憶部222に記憶する。具体的には、生成時間計測部215は、画像生成部214が圧縮画像の伸張処理に用いた方式(伸張方式)と、伸張した画像の画素数と、伸張処理時間とを対応づけて生成時間記憶部222に保存する。
メッセージ生成部216は、本体装置100などの外部装置に送信するメッセージを生成する。例えば、メッセージ生成部216は、生成時間記憶部222に保存された情報から、伸張方式と、伸張した画像の画素数と、伸張処理時間とを対応づけた時間情報を、本体装置100に送信するメッセージとして生成する。
図6は、時間情報を送信するための送信メッセージの一例を示す図である。図6は、表示端末200で実際に計測した圧縮画像の伸張処理時間を含む送信メッセージの構成例を示している。同図に示すように、時間情報の送信メッセージは、IP(Internet Protocol)ヘッダと、UDP/TCPヘッダと、メッセージ種別と、伸張方式と、領域情報と、伸張処理時間とを含んでいる。
IPヘッダは、送受信端末の宛先アドレスを識別するために用いる。UDP/TCPヘッダは、伝送制御プロトコルの情報を示す。メッセージ種別は、当該メッセージが表示端末200が生成した時間情報を含むメッセージであることを識別するために用いる。伸張方式は、伸張処理時間がソフトウェア処理時間を示すか、ハードウェア処理時間を示すかを識別する情報である。領域情報は、伸張した画像の画素数を含む。伸張処理時間は、実際に計測した伸張処理の処理時間を例えばミリ秒単位で記載する。なお、伸張方式から伸張処理時間までの情報は、表示端末200が計測したN個分だけ付加される。
上述のように、本体装置100のメッセージ解析部116は、図6のような時間情報を含む送信メッセージを受信した場合、この送信メッセージを解析して得られる時間情報から、画素数と伸張処理時間との関係を示す関数式を求める。すなわち、同図のメッセージ構成を用いる場合は、関数式の導出を表示端末200ではなく本体装置100が行う。
これに対し、表示端末200が、時間情報から関数式を求め、求めた関数式を表す関数情報を本体装置100に送信するように構成することもできる。図7は、このように構成した場合に表示端末200から本体装置100に関数情報を送信するための送信メッセージの一例を示す図である。
図7は、画素数とソフトウェア処理時間との関係を表す第1関数を導出するための傾き情報および切片情報と、画素数とハードウェア処理時間との関係を表す第2関数を導出するための傾き情報および切片情報とを含む送信メッセージの構成例を示している。伸張方式は、伸張処理時間がソフトウェア処理時間を示すか、ハードウェア処理時間を示すかを識別する情報である。傾き情報は、図3のような画素数と伸張処理時間との関係を示す関数式の傾きを示す。切片情報は、関数式の切片を示す。図7に示すように、伸張方式から切片情報までの情報は、ソフトウェア処理とハードウェア処理とに対応する2個分が付加される。
なお、メッセージ生成部216は、例えば本体装置100との通信セッションが開始された場合や、一定の時間間隔ごとに、生成した時間情報(または関数情報)を無線通信処理部217を介して本体装置100に送信する。
図2に戻り、無線通信処理部217は、無線基地局300との間でアンテナ203を介して信号を送受信する。無線通信処理部217は、メッセージを送信する送信部217aと、メッセージを受信する受信部217bとを備えている。無線通信処理部217は、IEEE802.11などに準拠した無線LAN機能によって実現される。
例えば、無線通信処理部217の受信部217bは、受信した無線信号を復調してパケットを生成し、パケットのメッセージ種別に応じて画像生成部214へ該当データを渡す。例えば、パケットが圧縮画像を含む送信画像メッセージのパケットであった場合、そのパケットから抽出した圧縮画像および画素数などの情報が画像生成部214に渡される。
また、例えば入力デバイス202がユーザからの入力情報を取得した場合、入出力インターフェース211によって入力情報から座標情報などが解析された後、無線通信処理部217の送信部217aを介して本体装置100に送信される。この場合、本体装置100は、表示端末200より受信した入力情報を元に、アプリケーション処理を実行する。アプリケーション処理の結果として画面の領域内に更新が発生した場合、本体装置100は、更新する画像情報を取得して送信画像メッセージを生成した後、表示端末200に向けて送信する。なお、この場合も、本体装置100側では、検出した画像の差分領域が複数存在する場合は、当該複数の差分領域を1つの矩形領域に統合する方が表示端末200の伸張処理時に効率的となり得るかどうかの判定処理を行った上で、送信画像メッセージを生成する。
セッションマネージャ218は、本体装置100との間で確立した通信(セッション)を管理する。例えば、セッションマネージャ218は、本体装置100とセッションを確立したときに、セッションの状態情報、および伝送制御情報などを対応づけたセッション情報を生成してセッション情報記憶部223に記憶する。
次に、このように構成された本実施の形態にかかる本体装置100による画像送信処理について図8を用いて説明する。図8は、本実施の形態における画像送信処理の全体の流れを示すフローチャートである。
まず、差分領域検出部112が、所定の時間間隔ごとに、画像バッファ121に記憶された画像情報(表示画像)と、更新画像生成部111aにより生成された新たな画像情報(更新画像)との差分領域を検出する(ステップS801)。
差分領域が検出された場合、領域統合判定部114は、複数の差分領域が検出されたか否かを判断する(ステップS802)。複数の差分領域が検出された場合(ステップS802:YES)、処理時間算出部115が、複数の差分領域をそれぞれソフトウェアにより伸張処理する場合の伸張処理時間(ソフトウェア処理時間)を算出する(ステップS803)。例えば、2つの差分領域が検出された場合であれば、処理時間算出部115は、図3のSW(2矩形)の関数式を用いることにより、複数の差分領域の画像の画素数に対応するソフトウェア処理時間を算出する。
次に、処理時間算出部115は、複数の差分領域を統合した1つの統合領域をハードウェアにより伸張処理する場合の伸張処理時間(ハードウェア処理時間)を算出する(ステップS804)。例えば、処理時間算出部115は、図3のHW(1矩形)の関数式を用いることにより、統合領域の画像の画素数に対応するハードウェア処理時間を算出する。
次に、領域統合判定部114は、算出されたハードウェア処理時間が算出されたソフトウェア処理時間より小さいか否かを判定する(ステップS805)。ハードウェア処理時間がソフトウェア処理時間より小さい場合(ステップS805:YES)、差分領域検出部112は、複数の差分領域を統合した統合領域を、圧縮画像を生成する対象領域として圧縮画像生成部113に通知する(ステップS806)。
次に、圧縮画像生成部113は、統合領域の画像を圧縮した圧縮画像を生成する(ステップS807)。なお、ステップS802で、複数の差分領域が検出されなかった場合は(ステップS802:NO)、圧縮画像生成部113は、検出された1つの差分領域の画像を圧縮した圧縮画像を生成する。また、ステップS805で、ハードウェア処理時間がソフトウェア処理時間より小さくないと判定された場合は(ステップS805:NO)、圧縮画像生成部113は、検出された複数の差分領域をそれぞれ別個に圧縮して複数の圧縮画像を生成する。
次に、送信部117aが、圧縮画像生成部113により生成された圧縮画像と圧縮画像の画素数とを含む送信画像メッセージを表示端末200に送信し(ステップS808)、画像送信処理を終了する。
次に、このように構成された本実施の形態にかかる表示端末200による画像表示処理について図9を用いて説明する。図9は、本実施の形態における画像表示処理の全体の流れを示すフローチャートである。
まず、無線通信処理部217の受信部217bが、本体装置100から送られた圧縮画像と画素数とを含む送信画像メッセージを受信する(ステップS901)。受信部217bは、送信画像メッセージから圧縮画像と画素数とを抽出し、画像生成部214に通知する。
次に、画像生成部214が、通知された圧縮画像の画素数が所定の閾値より小さいか否かを判定する(ステップS902)。画素数が閾値より小さい場合(ステップS902:YES)、画像生成部214は、ソフトウェア伸張部212を用いてソフトウェアにより圧縮画像を伸張する(ステップS903)。画素数が閾値以上の場合(ステップS902:NO)、画像生成部214は、ハードウェア伸張回路213を用いてハードウェアにより圧縮画像を伸張する(ステップS904)。
次に、画像生成部214は、入出力インターフェース211を介して、伸張処理で生成された画像情報を、画像バッファ221の指定位置に描画する(ステップS905)。これにより、ディスプレイ201に更新部分が反映されることになる。
次に、表示端末200と本体装置100との間で通信される情報の流れを図10のシーケンス図を用いて説明する。同図の例では、まず、表示端末200のメッセージ生成部216が、通信セッションの開始時に、ソフトウェアおよびハードウェアによる圧縮画像の伸張処理時間を含む時間情報を本体装置100に対して送信している(ステップS1001)。
本体装置100のメッセージ解析部116は、表示端末200から時間情報を受信すると、受信した時間情報から、伸張処理時間を算出するための一次関数の傾き情報および切片情報(関数情報)を求め、条件記憶部122に記憶されている関数情報を更新する。
その後、本体装置100の差分領域検出部112が、アプリケーション処理の結果に伴う表示画面内の更新部分(差分領域)を検出する(ステップS1002)。領域統合判定部114は、複数の差分領域が検出された場合に、複数の差分領域の統合判定を行う(ステップS1003)。その結果を元に、圧縮画像生成部113が、圧縮画像の生成と圧縮画像を含む送信画像メッセージの送信処理を行う(ステップS1004)。これにより、差分領域の画像を圧縮した圧縮画像が表示端末200に伝送される(ステップS1005)。なお、時間情報は、通信セッションの開始時だけではなく、一定の時間間隔毎に実施してもよい。
このように、本実施の形態にかかる通信装置(本体装置100)によれば、本体装置100が表示装置(表示端末200)にとって最適な大きさの圧縮画像を生成して送信することができるため、圧縮画像のソフトウェアによる伸張処理とハードウェアによる伸張処理を切り替えて実施する表示端末200側の処理を効率化することが可能となる。
次に、本実施の形態にかかる通信装置(本体装置100)および表示装置(表示端末200)のハードウェア構成について図11を用いて説明する。図11は、本実施の形態にかかる通信装置および表示装置のハードウェア構成を示す説明図である。
本実施の形態にかかる通信装置および表示装置は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、HDD(Hard Disk Drive)、CD(Compact Disc)ドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバス61を備えている。
本実施の形態にかかる通信装置で実行される画像送信プログラムおよび表示装置で実行される通信プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、本実施の形態にかかる通信装置で実行される画像送信プログラムおよび表示装置で実行される通信プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施の形態にかかる通信装置で実行される画像送信プログラムおよび表示装置で実行される通信プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
また、本実施の形態の画像送信プログラムおよび通信プログラムを、ROM等に予め組み込んで提供するように構成してもよい。
本実施の形態にかかる通信装置で実行される画像送信プログラムは、上述した各部(イベント取得部、差分領域検出部、圧縮画像生成部、領域統合判定部、処理時間算出部、メッセージ解析部、通信処理部、セッションマネージャ)を含むモジュール構成となっており、実際のハードウェアとしてはCPU51(プロセッサ)が上記記憶媒体から画像送信プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上述した各部が主記憶装置上に生成されるようになっている。
また、本実施の形態にかかる表示装置で実行される通信プログラムは、上述した各部(入出力インターフェース、ソフトウェア伸張部、ハードウェア伸張回路、画像生成部、生成時間計測部、メッセージ生成部、無線通信処理部、セッションマネージャ)を含むモジュール構成となっており、実際のハードウェアとしてはCPU51(プロセッサ)が上記記憶媒体から通信プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上述した各部が主記憶装置上に生成されるようになっている。
以上のように、本発明にかかる装置、方法およびプログラムは、装置間でアプリケーションの画面を共有する機能を実現する装置等に適している。
本実施の形態にかかる通信システムの構成を示すブロック図である。 本実施の形態にかかる通信装置のブロック図である。 画像の画素数と伸張処理時間との関係の一例を示す図である。 本実施の形態にかかる表示装置のブロック図である。 画像の画素数と伸張処理時間との関係の一例を示す図である。 時間情報を送信するための送信メッセージの一例を示す図である。 関数情報を送信するための送信メッセージの一例を示す図である。 本実施の形態における画像送信処理の全体の流れを示すフローチャートである。 本実施の形態における画像表示処理の全体の流れを示すフローチャートである。 表示装置と通信装置との間で通信される情報の流れを示すシーケンス図である。 本実施の形態にかかる通信装置および表示装置のハードウェア構成を示す説明図である。
符号の説明
51 CPU
52 ROM
53 RAM
54 通信I/F
61 バス
10 画面転送システム
100 本体装置
101 ディスプレイ
102 入力デバイス
111 イベント取得部
111a 更新画像生成部
112 差分領域検出部
113 圧縮画像生成部
114 領域統合判定部
115 処理時間算出部
116 メッセージ解析部
117 通信処理部
117a 送信部
117b 受信部
118 セッションマネージャ
121 画像バッファ
122 条件記憶部
123 セッション情報記憶部
200 表示端末
201 ディスプレイ
202 入力デバイス
203 アンテナ
211 入出力インターフェース
212 ソフトウェア伸張部
213 ハードウェア伸張回路
214 画像生成部
215 生成時間計測部
216 メッセージ生成部
217 無線通信処理部
217a 送信部
217b 受信部
218 セッションマネージャ
221 画像バッファ
222 生成時間記憶部
223 セッション情報記憶部
300 無線基地局
301 矩形領域
400 ネットワーク

Claims (14)

  1. 画像を表示可能な表示装置にネットワークを介して接続可能な通信装置であって、
    前記表示装置に表示する表示画像を記憶する画像記憶部と、
    前記表示画像を更新するための更新画像を生成する更新画像生成部と、
    前記更新画像と前記表示画像との間で画素情報が一致しない領域を示す差分領域を検出する検出部と、
    複数の前記差分領域が検出された場合に、複数の前記差分領域の画像を圧縮した各々の圧縮画像に対する伸張処理をソフトウェアにより実行したときの処理時間を表すソフトウェア処理時間と、複数の前記差分領域を含む1つの領域を表す統合領域の画像を圧縮した圧縮画像に対する伸張処理をハードウェアにより実行したときの処理時間を表すハードウェア処理時間とを算出する算出部と、
    前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいか否かを判定する判定部と、
    前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいと判定された場合に、前記統合領域の画像を圧縮した圧縮画像を生成する圧縮画像生成部と、
    生成された圧縮画像を前記表示装置に送信する送信部と、
    を備えたことを特徴とする通信装置。
  2. 画像の画素数から前記ソフトウェア処理時間および前記ハードウェア処理時間を算出するための予め定められた条件を記憶する条件記憶部をさらに備え、
    前記算出部は、複数の前記差分領域の画像それぞれの画素数から前記条件を用いて前記ソフトウェア処理時間を算出し、前記統合領域の画像の画素数から前記条件を用いて前記ハードウェア処理時間を算出すること、
    を特徴とする請求項1に記載の通信装置。
  3. 前記条件記憶部は、画像の画素数を入力した結果として前記ソフトウェア処理時間を出力する第1関数と、画像の画素数を入力した結果として前記ハードウェア処理時間を出力する第2関数とを前記条件として記憶し、
    前記算出部は、複数の前記差分領域の画像の画素数を前記第1関数に入力することによって前記ソフトウェア処理時間を算出し、前記統合領域の画像の画素数を前記第2関数に入力した結果として出力される前記ハードウェア処理時間を算出すること、
    を特徴とする請求項2に記載の通信装置。
  4. 伸張処理をソフトウェアにより実行したかハードウェアにより実行したかを表す伸張方式と、伸張した画像の画素数と、伸張処理に要した処理時間とを対応づけた時間情報を前記表示装置から受信する受信部と、
    伸張処理をソフトウェアにより実行したことを表す前記伸張方式を含む前記時間情報から前記第1関数を生成し、伸張処理をハードウェアにより実行したことを表す前記伸張方式を含む前記時間情報から前記第2関数を生成し、生成した前記第1関数および前記第2関数を前記条件として前記条件記憶部に保存するメッセージ解析部と、をさらに備えたこと、
    を特徴とする請求項3に記載の通信装置。
  5. 前記第1関数および前記第2関数を前記表示装置から受信する受信部と、
    受信された前記第1関数および前記第2関数を前記条件として前記条件記憶部に保存するメッセージ解析部と、をさらに備えたこと、
    を特徴とする請求項3に記載の通信装置。
  6. 前記検出部は、前記更新画像と前記表示画像との間で一致しない矩形領域を表す前記差分領域を検出し、
    前記算出部は、複数の前記差分領域が検出された場合に、前記ソフトウェア処理時間と、複数の前記差分領域を含む最小の矩形領域を表す前記統合領域に対する画像処理をハードウェアにより実行したときの前記ハードウェア処理時間とを算出すること、
    を特徴とする請求項1に記載の通信装置。
  7. 画像を表示可能な表示装置にネットワークを介して接続可能な通信装置で実行される画像送信方法であって、
    前記通信装置は、前記表示装置に表示する表示画像を記憶する画像記憶部を備え、
    更新画像生成部が、前記表示画像を更新するための更新画像を生成する更新画像生成ステップと、
    検出部が、前記更新画像と前記表示画像との間で画素情報が一致しない領域を示す差分領域を検出する検出ステップと、
    算出部が、複数の前記差分領域が検出された場合に、複数の前記差分領域の画像を圧縮した各々の圧縮画像に対する伸張処理をソフトウェアにより実行したときの処理時間を表すソフトウェア処理時間と、複数の前記差分領域を含む1つの領域を表す統合領域の画像を圧縮した圧縮画像に対する伸張処理をハードウェアにより実行したときの処理時間を表すハードウェア処理時間とを算出する算出ステップと、
    判定部が、前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいか否かを判定する判定ステップと、
    圧縮画像生成部が、前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいと判定された場合に、前記統合領域の画像を圧縮した圧縮画像を生成する圧縮画像生成ステップと、
    送信部が、生成された圧縮画像を前記表示装置に送信する送信ステップと、
    を備えたことを特徴とする画像送信方法。
  8. 画像を表示可能な表示装置にネットワークを介して接続可能な通信装置で実行させるための画像送信プログラムであって、
    前記通信装置は、前記表示装置に表示する表示画像を記憶する画像記憶部を備え、
    前記通信装置を、
    前記表示画像を更新するための更新画像を生成する更新画像生成部と、
    前記更新画像と前記表示画像との間で画素情報が一致しない領域を示す差分領域を検出する検出部と、
    複数の前記差分領域が検出された場合に、複数の前記差分領域の画像を圧縮した各々の圧縮画像に対する伸張処理をソフトウェアにより実行したときの処理時間を表すソフトウェア処理時間と、複数の前記差分領域を含む1つの領域を表す統合領域の画像を圧縮した圧縮画像に対する伸張処理をハードウェアにより実行したときの処理時間を表すハードウェア処理時間とを算出する算出部と、
    前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいか否かを判定する判定部と、
    前記ハードウェア処理時間が前記ソフトウェア処理時間より小さいと判定された場合に、前記統合領域の画像を圧縮した圧縮画像を生成する圧縮画像生成部と、
    生成された圧縮画像を前記表示装置に送信する送信部と、
    として機能させるための画像送信プログラム。
  9. 通信装置にネットワークを介して接続された表示装置であって、
    更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、
    前記圧縮画像の伸張処理を実行可能な伸張回路と、
    前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、
    前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成する画像生成部と、
    前記表示画像を表示する表示部と、
    前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、
    伸張処理を前記ソフトウェア伸張部により実行したか前記伸張回路により実行したかを表す伸張方式と、伸張した画像の画素数と、前記ソフトウェア処理時間および前記ハードウェア処理時間のいずれかと、対応づけた時間情報を生成する情報生成部と、
    前記時間情報を前記通信装置に送信する送信部と、
    を備えたことを特徴とする表示装置。
  10. 通信装置にネットワークを介して接続された表示装置で実行される通信方法であって、
    前記表示装置は、前記圧縮画像の伸張処理を実行可能な伸張回路と、画像を表示可能な表示部と、を備え、
    受信部が、更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信ステップと、
    画像生成部が、前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に、前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成し、前記表示部に表示する画像生成ステップと、
    計測部が、前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測ステップと、
    情報生成部が、伸張処理を前記ソフトウェア伸張部により実行したか前記伸張回路により実行したかを表す伸張方式と、伸張した画像の画素数と、前記ソフトウェア処理時間および前記ハードウェア処理時間のいずれかと、対応づけた時間情報を生成する情報生成ステップと、
    送信部が、前記時間情報を前記通信装置に送信する送信ステップと、
    を備えたことを特徴とする通信方法。
  11. 通信装置にネットワークを介して接続された表示装置で実行させるための通信プログラムであって、
    前記表示装置は、前記圧縮画像の伸張処理を実行可能な伸張回路と、画像を表示可能な表示部と、を備え、
    前記表示装置を、
    更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、
    前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、
    前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成し、前記表示部に表示する画像生成部と、
    前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、
    伸張処理を前記ソフトウェア伸張部により実行したか前記伸張回路により実行したかを表す伸張方式と、伸張した画像の画素数と、前記ソフトウェア処理時間および前記ハードウェア処理時間のいずれかと、対応づけた時間情報を生成する情報生成部と、
    前記時間情報を前記通信装置に送信する送信部と、
    として機能させるための通信プログラム。
  12. 通信装置にネットワークを介して接続された表示装置であって、
    更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、
    前記圧縮画像の伸張処理を実行可能な伸張回路と、
    前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、
    前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成する画像生成部と、
    前記表示画像を表示する表示部と、
    前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、
    前記ソフトウェア伸張部により伸張した画像の画素数と前記ソフトウェア処理時間とに基づいて画素数から前記ソフトウェア処理時間を算出する第1関数を生成し、前記伸張回路により伸張した画像の画素数と前記ハードウェア処理時間とに基づいて画素数から前記ハードウェア処理時間を算出する第2関数を生成する情報生成部と、
    前記第1関数および前記第2関数を前記通信装置に送信する送信部と、
    を備えたことを特徴とする表示装置。
  13. 通信装置にネットワークを介して接続された表示装置で実行される通信方法であって、
    前記表示装置は、前記圧縮画像の伸張処理を実行可能な伸張回路と、画像を表示可能な表示部と、を備え、
    受信部が、更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信ステップと、
    画像生成部が、前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に、前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成し、前記表示部に表示する画像生成ステップと、
    計測部が、前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測ステップと、
    情報生成部が、前記ソフトウェア伸張部により伸張した画像の画素数と前記ソフトウェア処理時間とに基づいて画素数から前記ソフトウェア処理時間を算出する第1関数を生成し、前記伸張回路により伸張した画像の画素数と前記ハードウェア処理時間とに基づいて画素数から前記ハードウェア処理時間を算出する第2関数を生成する情報生成ステップと、
    送信部が、前記第1関数および前記第2関数を前記通信装置に送信する送信ステップと、
    を備えたことを特徴とする通信方法。
  14. 通信装置にネットワークを介して接続された表示装置で実行させるための通信プログラムであって、
    前記表示装置は、前記圧縮画像の伸張処理を実行可能な伸張回路と、画像を表示可能な表示部とを備え、
    前記表示装置を、
    更新された領域の画像を圧縮した圧縮画像と更新された領域の画像の画素数とを前記通信装置から受信する受信部と、
    前記圧縮画像の伸張処理をソフトウェアにより実行可能なソフトウェア伸張部と、
    前記画素数と予め定められた閾値とを比較し、前記画素数が前記閾値より小さい場合に前記ソフトウェア伸張部により前記圧縮画像を伸張して前記更新された領域に対応する更新画像を生成し、前記画素数が前記閾値以上の場合に前記伸張回路により前記圧縮画像を伸張して前記更新された領域に対応する表示画像を生成し、前記表示部に表示する画像生成部と、
    前記ソフトウェア伸張部による伸張処理の処理時間を表すソフトウェア処理時間と前記伸張回路による伸張処理の処理時間を表すハードウェア処理時間とを計測する計測部と、
    前記ソフトウェア伸張部により伸張した画像の画素数と前記ソフトウェア処理時間とに基づいて画素数から前記ソフトウェア処理時間を算出する第1関数を生成し、前記伸張回路により伸張した画像の画素数と前記ハードウェア処理時間とに基づいて画素数から前記ハードウェア処理時間を算出する第2関数を生成する情報生成部と、
    前記第1関数および前記第2関数を前記通信装置に送信する送信部と、
    として機能させるための通信プログラム。
JP2008279007A 2008-10-30 2008-10-30 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム Expired - Fee Related JP5159562B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008279007A JP5159562B2 (ja) 2008-10-30 2008-10-30 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム
PCT/JP2009/068699 WO2010050593A1 (ja) 2008-10-30 2009-10-30 通信装置および表示装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008279007A JP5159562B2 (ja) 2008-10-30 2008-10-30 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム

Publications (2)

Publication Number Publication Date
JP2010109637A JP2010109637A (ja) 2010-05-13
JP5159562B2 true JP5159562B2 (ja) 2013-03-06

Family

ID=42128952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008279007A Expired - Fee Related JP5159562B2 (ja) 2008-10-30 2008-10-30 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム

Country Status (2)

Country Link
JP (1) JP5159562B2 (ja)
WO (1) WO2010050593A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5496130B2 (ja) * 2011-02-28 2014-05-21 京セラドキュメントソリューションズ株式会社 画像形成装置
US9811292B2 (en) 2013-09-06 2017-11-07 Seiko Epson Corporation Using image difference data to reduce data processing
JP6264790B2 (ja) * 2013-09-06 2018-01-24 セイコーエプソン株式会社 画像処理装置、印刷システム、及び、画像処理方法
JP6318771B2 (ja) * 2014-03-28 2018-05-09 セイコーエプソン株式会社 制御装置、印刷システム、及び、制御装置の制御方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000050084A (ja) * 1998-07-28 2000-02-18 Canon Inc 画像処理装置及び方法及び記憶媒体

Also Published As

Publication number Publication date
JP2010109637A (ja) 2010-05-13
WO2010050593A1 (ja) 2010-05-06

Similar Documents

Publication Publication Date Title
US8072631B2 (en) Image transmission apparatus, display apparatus and method
JP5678743B2 (ja) 情報処理装置、画像送信プログラム、画像送信方法および画像表示方法
JP5821610B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2010118976A (ja) 通信装置、通信方法および通信プログラム
JP5159562B2 (ja) 通信装置、画像送信方法、画像送信プログラム、表示装置、通信方法、および通信プログラム
JP6274067B2 (ja) 情報処理装置および情報処理方法
JP4444239B2 (ja) サーバ装置、並びにその制御命令処理方法及び制御命令処理プログラム、端末装置
US20170269709A1 (en) Apparatus, method for image processing, and non-transitory medium storing program
US20170272545A1 (en) Method and system for transmitting remote screen
US20130002521A1 (en) Screen relay device, screen relay system, and computer -readable storage medium
WO2016016607A1 (en) Managing display data for display
CN111625211A (zh) 一种屏幕投屏方法、装置、安卓设备及显示设备
JP2005339256A (ja) 画像伝送システムと画像送信装置
JP4675944B2 (ja) 画像処理装置、画像処理方法、画像処理プログラム
KR101410837B1 (ko) 비디오 메모리의 모니터링을 이용한 영상 처리 장치
JP5200979B2 (ja) 画像転送装置、方法及びプログラム
JP5401877B2 (ja) 情報処理装置、情報処理システム、省電力方法及びプログラム
US20150106733A1 (en) Terminal device, thin client system, display method, and recording medium
JP2016012797A (ja) 描画システム、情報処理装置、端末装置、描画制御プログラム、描画プログラム、及び描画制御方法
JP4540552B2 (ja) 画像伝送装置
CN109003313B (zh) 一种传输网页图片的方法、装置和系统
JP2010098622A (ja) コンピュータ
JP5278048B2 (ja) 画像供給装置、画像供給システム、画像供給方法、及び画像供給用プログラム
JP5701964B2 (ja) 画面中継装置
JP2010119030A (ja) 通信装置、通信方法および通信プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110427

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121211

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

Free format text: PAYMENT UNTIL: 20151221

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees