JPWO2015107622A1 - 画像処理プログラム、画像処理方法、画像処理装置、および情報処理装置 - Google Patents

画像処理プログラム、画像処理方法、画像処理装置、および情報処理装置 Download PDF

Info

Publication number
JPWO2015107622A1
JPWO2015107622A1 JP2015557610A JP2015557610A JPWO2015107622A1 JP WO2015107622 A1 JPWO2015107622 A1 JP WO2015107622A1 JP 2015557610 A JP2015557610 A JP 2015557610A JP 2015557610 A JP2015557610 A JP 2015557610A JP WO2015107622 A1 JPWO2015107622 A1 JP WO2015107622A1
Authority
JP
Japan
Prior art keywords
information
processing apparatus
image
image processing
color information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015557610A
Other languages
English (en)
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2015107622A1 publication Critical patent/JPWO2015107622A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/64Systems for the transmission or the storage of the colour picture signal; Details therefor, e.g. coding or decoding means therefor
    • H04N1/648Transmitting or storing the primary (additive or subtractive) colour signals; Compression thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • H04N21/6547Transmission by server directed to the client comprising parameters, e.g. for client setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/759Region-based matching

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Color Image Communication Systems (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Processing (AREA)

Abstract

画像処理装置(101)は、画像に含まれる画素の画素値に基づいて、画像を複数の領域に分割する。次に、画像処理装置(101)は、分割した複数の領域の各々の領域の画像における位置から特定される画面上の位置に、各々の領域と同一形状の領域を表示するための位置情報(103)を作成する。そして、画像処理装置(101)は、作成した位置情報(103)を、情報処理装置(102)に送信する。一方で、情報処理装置(102)は、位置情報(103)を受信する。次に、情報処理装置(102)は、位置情報(103)に基づいて、各々の領域の画像における位置から情報処理装置(102)の画面上の位置を特定する。そして、情報処理装置(102)は、特定した位置に、各々の領域と同一形状の領域を表示する。

Description

本発明は、画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置に関する。
従来、サーバが、ネットワークを介して接続されたクライアントのユーザからの操作入力に基づいてクライアントの画面に表示する画像を作成し、作成した画像の画像情報をクライアントに送信してクライアントの画面に表示させることが行われる。
関連する技術としては、例えば、ネットワーク負荷状態に基づき、ネットワーク負荷が高いときはデータ転送量に影響を与える色数を減らし、逆にネットワーク負荷が低いときは色数を増やすものがある。また、カラー文書画像の各画素をインデックスに変換し、最大画素数のインデックスに対応するカラー値をカラー文書画像の背景色とし、インデックスごとに部分2値画像を生成するとともに、圧縮順位にしたがって2値画像を圧縮する技術がある。
また、共有入出力機器とそれを利用するコンピュータ機器との経路に公衆回線が含まれるか否かを検出し、含まれる場合には利用を要求している装置に対して共有入出力機器本来の能力以下の能力情報を返送する技術がある。また、印刷データの一部を先にサーバに送信しておき、他の印刷データに対する印刷処理を実行した後に、残りの部分をサーバに送信する技術がある。
特開2008−234389号公報 特開2004−229261号公報 特開2000−295311号公報 特開2008−042241号公報
しかしながら、上述した従来技術では、クライアントのユーザからの操作入力に対する、サーバの応答性能が低下してしまうことがある。例えば、サーバとクライアントとの間が低品質のネットワークで接続されている場合、ネットワークにおいて単位時間あたりに送信できるデータ量が少なかったり、パケットロスが発生してパケットを再送することになるため、クライアントがサーバから画像の画像情報を受信するまでにかかる時間が増大してしまう。
1つの側面では、本発明は、ユーザの操作入力に対する応答性能を向上することができる画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置を提供することを目的とする。
本発明の一側面によれば、ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、作成した前記位置情報を前記情報処理装置に送信する画像処理プログラム、画像処理方法、および画像処理装置が提案される。
また、本発明の一側面によれば、コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する表示プログラム、表示方法、および情報処理装置が提案される。
本発明の一態様によれば、ユーザの操作入力に対する応答性能を向上することができるという効果を奏する。
図1は、本実施の形態にかかる画像処理装置101による画像処理の一実施例を表す説明図である。 図2は、コンピュータ200のハードウェア構成例を示すブロック図である。 図3は、位置情報パケット300の内容の一例を示す説明図である。 図4は、色情報401を含む色情報パケット400の内容の一例を示す説明図である。 図5は、画像処理装置101の機能的構成例を示すブロック図である。 図6は、情報処理装置102の機能的構成例を示すブロック図である。 図7は、位置情報302と色情報401とを送信する具体例を示す説明図である。 図8は、位置情報302と色情報401とを作成する具体例を示す説明図である。 図9は、送信処理手順の一例を示すフローチャートである。 図10は、作成処理手順の一例を示すフローチャートである。 図11は、チェック処理手順の一例を示すフローチャートである。 図12は、判定処理手順の一例を示すフローチャートである。 図13は、表示処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、本発明にかかる画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置の実施の形態を詳細に説明する。
(画像処理の一実施例)
図1は、本実施の形態にかかる画像処理装置101による画像処理の一実施例を表す説明図である。画像処理装置101は、本実施の形態にかかる画像処理プログラムを実行することにより、ネットワークを介して接続される情報処理装置102の画面に表示可能な画像についての位置情報103を作成して、情報処理装置102に送信するコンピュータである。
画像処理装置101は、例えば、リモートデスクトップの技術を実現するコンピュータである。画像処理装置101は、具体的には、情報処理装置102から操作入力に基づいて、画像処理装置101が有するOS(Operating System)やCAD(Computer Aided Design)ソフトウェアなどを実行し、実行結果を表す画像についての位置情報103を送信する。画像処理装置101としては、ノート型パソコン、デスクトップ型パソコン、サーバなどを採用することができる。
また、情報処理装置102は、位置情報103を受信して、位置情報103に基づいて情報処理装置102が有する画面上の位置に、画像から分割された複数の領域の各々の領域と同一形状の領域を表示するコンピュータである。
情報処理装置102は、例えば、リモートデスクトップの技術を利用するコンピュータである。情報処理装置102は、具体的には、画像処理装置101に操作入力を送信して、実行結果を表す画像についての位置情報103を受信して、同一形状の領域を表示する。情報処理装置102としては、ノート型パソコン、デスクトップ型パソコン、携帯電話機、スマートフォン、PHS(Personal Handyphone System)、タブレット型端末などを採用することができる。
図1において、画像処理装置101は、画像に含まれる画素の画素値に基づいて、画像を複数の領域に分割する。画像処理装置101は、例えば、画像に含まれる各々の画素を、画素値の範囲でグループ分けして、同一のグループに所属する画素が含まれる領域ごとに、画像を分割する。
次に、画像処理装置101は、分割した複数の領域の各々の領域の画像における位置から特定される画面上の位置に表示される、各々の領域と同一形状の領域の位置を示す位置情報103を作成する。画像処理装置101は、例えば、各々のグループの識別情報に対応付けて、各々の領域の左上の画素が存在する座標と、左上の画素の下方向に存在する画素の個数と、下方向に存在する画素の右方向に存在する画素の個数とを記憶する位置情報103を作成する。
そして、画像処理装置101は、作成した位置情報103を、情報処理装置102に送信する。画像処理装置101は、例えば、位置情報103を含むパケットを作成して、情報処理装置102に送信する。以下の説明では、位置情報103を含むパケットを「位置情報パケット」と表記する場合がある。
ここで、画素値とは、画素の色を表す値である。画素値は、例えば、RGB形式で表現される。RGB形式とは、赤(Red)、緑(Green)、青(Blue)の3つの原色を用いた表現形式である。また、画素値は、さらに、透明度を含んでもよい。また、画素値は、例えば、YCrCb形式で表現されてもよい。YCrCb形式とは、例えば、輝度と色差とを用いた表現形式である。また、画素値は、例えば、HSV形式で表現されてもよい。HSV形式とは、例えば、色相と彩度と輝度とを用いた表現形式である。
一方で、情報処理装置102は、位置情報103を受信する。情報処理装置102は、例えば、位置情報パケットを受信し、位置情報パケットから位置情報103を抽出する。
次に、情報処理装置102は、位置情報103に基づいて、各々の領域の画像における位置から情報処理装置102の画面上の位置を特定する。情報処理装置102は、例えば、位置情報103に基づいて、画像において各々の領域の左上の画素が存在する座標に対応する、情報処理装置102の画面上の座標を特定する。
そして、情報処理装置102は、特定した位置に、各々の領域と同一形状の領域を表示する。情報処理装置102は、例えば、位置情報103に基づいて、特定した座標に存在する画素の下方向に存在する画素の個数と、下方向に存在する画素の右方向に存在する画素の個数とを特定する。
これにより、画像処理装置101は、情報処理装置102に送信するデータ量を低減し、情報処理装置102に送信する時間を短縮することができる。このため、情報処理装置102は、画像情報を受信する場合よりも、操作入力を送信してから位置情報103を受信して画面を更新するまでにかかる時間を短縮することができる。そして、情報処理装置102は、位置情報103を受信して同一形状の領域を画面に表示することができる。このため、情報処理装置102のユーザは、情報処理装置102の画面に同一形状の領域が表示されるため、同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、情報処理装置102に送信する単位時間当たりのデータ量を低減して、バーストトラフィックの発生を抑制することができる。
ここでは、画像処理装置101が位置情報103を送信する場合について説明したが、これに限らない。例えば、画像処理装置101は、各々の領域と同一形状の領域に含まれる画素に設定される、各々の領域に含まれる画素と同一画素値を示す色情報を作成して、位置情報103を送信した後に、色情報を含むパケットを送信してもよい。以下の説明では、色情報を含むパケットを「色情報パケット」と表記する場合がある。そして、情報処理装置102は、色情報を受信し、位置情報103と色情報とに基づいて、画像を表示してもよい。
これにより、画像処理装置101は、情報処理装置102に、画像を表示させることができる。このため、情報処理装置102のユーザは、画像を把握することができる。また、画像処理装置101は、単位時間あたりに情報処理装置102に送信するデータ量を低減して、バーストトラフィックの発生を抑制することができる。
(コンピュータ200のハードウェア構成例)
次に、図2を用いて、実施の形態にかかる画像処理装置101、または実施の形態にかかる情報処理装置102を実現するコンピュータ200のハードウェア構成例について説明する。
図2は、コンピュータ200のハードウェア構成例を示すブロック図である。図2において、コンピュータ200は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、を備えている。
また、コンピュータ200は、磁気ディスクドライブ(Hard Disk Drive)204と、磁気ディスク205と、光ディスクドライブ206と、光ディスク207と、を備えている。また、コンピュータ200は、ディスプレイ208と、インターフェース(I/F:Interface)209と、キーボード210と、マウス211と、スキャナ212と、プリンタ213と、を備えている。また、各構成部はバス220によってそれぞれ接続されている。
ここで、CPU201は、コンピュータ200の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。ROM202は、コンピュータ200が画像処理装置101を実現する場合は、少なくとも本実施の形態にかかる画像処理プログラムを記憶している。ROM202は、コンピュータ200が情報処理装置102を実現する場合は、少なくとも表示プログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。RAM203は、VRAM(Video RAM)を含んでもよい。
磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータのリード/ライトを制御する。光ディスク207は、光ディスクドライブ206の制御で書き込まれたデータを記憶したり、光ディスク207に記憶されたデータをコンピュータ200に読み取らせたりする。
ディスプレイ208は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ208は、例えば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F209は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク214に接続され、このネットワーク214を介して他の装置に接続される。そして、I/F209は、ネットワーク214と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F209には、例えば、モデムやLANアダプタなどを採用することができる。
キーボード210は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス211は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ212は、画像を光学的に読み取り、コンピュータ200内に画像データを取り込む。なお、スキャナ212は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ213は、画像データや文書データを印刷する。プリンタ213には、例えば、レーザプリンタやインクジェットプリンタを採用することができる。また、光ディスクドライブ206、光ディスク207、ディスプレイ208、キーボード210、マウス211、スキャナ212、およびプリンタ213の少なくともいずれか1つは、なくてもよい。
(位置情報パケット300の内容)
次に、図3を用いて、位置情報302を含む位置情報パケット300の内容の一例について説明する。
図3は、位置情報パケット300の内容の一例を示す説明図である。図3に示すように、位置情報パケット300は、ヘッダと、識別情報と、色情報フラグ301と、画面番号と、位置情報302とのフィールドを有する。位置情報パケット300は、各フィールドに情報が設定されることにより、作成される。
ヘッダは、IP(Internet Protocol)ヘッダ、およびTCP(Transmission Control Protocol)ヘッダである。識別情報は、位置情報パケット300を識別する情報である。
色情報フラグ301は、色情報を送信するか否かを示すフラグである。図3の例では、色情報フラグ301には、「0」または「1」の値が設定される。色情報フラグ301の「0」は、色情報を送信しないことを表す。色情報フラグ301の「1」は、色情報を送信することを表す。画面番号は、画像を示す画像情報の番号である。位置情報302は、画像における領域の位置を表す情報である。
(色情報401を含む色情報パケット400の内容)
次に、図4を用いて、色情報401を含む色情報パケット400の内容の一例について説明する。
図4は、色情報401を含む色情報パケット400の内容の一例を示す説明図である。色情報パケット400は、ヘッダと、識別情報と、画面番号と、色情報401とのフィールドを有する。色情報パケット400は、各フィールドに情報が設定されることにより、作成される。
ヘッダは、IPヘッダ、およびTCPヘッダである。識別情報は、色情報パケット400を識別する情報である。画面番号は、画像を示す画像情報の番号である。色情報401は、画像における領域に含まれる画素の画素値を表す情報である。
(画像処理装置101の機能的構成例)
次に、図5を用いて、画像処理装置101の機能的構成例について説明する。
図5は、画像処理装置101の機能的構成例を示すブロック図である。画像処理装置101は、制御部になる機能として、分割部501と、第1の作成部502と、取得部503と、計測部504と、判定部505と、第2の作成部506と、第1の送信部507と、第2の送信部508と、を含む。
分割部501と、第1の作成部502と、取得部503と、計測部504と、判定部505と、第2の作成部506と、第1の送信部507と、第2の送信部508は、例えば、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F209により、その機能を実現する。
分割部501は、ネットワークを介して接続される情報処理装置102の画面の表示対象となる画像に含まれる画素の画素値に基づいて、画像を複数の領域に分割する。分割部501は、例えば、画像から、画素値が所定の範囲に含まれる画素を含む領域を分割する。分割部501は、具体的には、画素値のRGBの平均値を算出する。次に、分割部501は、算出した平均値が、192〜255の範囲になる画素を含む領域と、128〜191の範囲になる画素を含む領域と、64〜127の範囲になる画素を含む領域と、0〜63の範囲になる画素を含む領域とに、画像を分割する。分割結果は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第1の作成部502は、分割した複数の領域の各々の領域を表す情報を含む位置情報を作成することができる。
第1の作成部502は、分割した複数の領域の各々の領域の画像における位置に対応する画面上の位置に表示される、各々の領域と同一形状の領域の位置を示す位置情報302を作成する。第1の作成部502は、例えば、領域内のいずれかの画素の座標と、当該画素の下方向に連続して存在する画素の個数と、下方向に連続して存在する画素の右方向に連続して存在する画素の個数とを対応付けた、領域の全体または領域の一部を表す情報を作成する。そして、第1の作成部502は、作成した情報を組み合わせて、分割した各々の領域を表す情報を作成して、分割した各々の領域を表す情報を含む位置情報302を作成する。さらに、第1の作成部502は、分割した各々の領域を表す情報に、各々の領域に含まれる画素の画素値の範囲に対応する領域IDを付与してもよい。第1の作成部502は、位置情報302を符号化してもよい。作成された位置情報302は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第1の作成部502は、画像情報よりデータ量が少なくなり、情報処理装置102のユーザが画像の内容を把握可能にするための各々の領域と同一形状の領域を画面に表示するための位置情報を作成することができる。
取得部503は、画像処理装置101と情報処理装置102とのデータ通信にかかる通信時間を取得する。取得部503は、例えば、情報処理装置102からのパケットを受信した受信時刻と、情報処理装置102からのパケットに含まれる情報処理装置102がパケットを送信した送信時刻との差分を算出して、算出した差分を通信時間として取得する。また、取得部503は、単位データ量あたりの通信時間を取得してもよい。
また、取得部503は、情報処理装置102に通信時間を算出させ、情報処理装置102から通信時間を表す情報を受信してもよい。以下の説明では、通信時間を表す情報を「ネットワーク情報」と表記する場合がある。取得された通信時間は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、取得部503は、画像処理装置101と情報処理装置102との間のネットワークの帯域を表す指標となる、通信時間を取得することができる。
計測部504は、情報処理装置102から画像の表示要求を受信してからの経過時間を計測する。以下の説明では、画像の表示要求となる、情報処理装置102のユーザの操作入力の内容を表す情報を「ユーザ操作情報」と表記する場合がある。計測部504は、例えば、タイマーを用いて、情報処理装置102から表示要求を受信した受信時刻からの経過時間を計測する。計測された経過時間は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、計測部504は、情報処理装置102の画面が更新されていない時間の指標となる、経過時間を計測することができる。
判定部505は、取得した通信時間に基づいて、色情報401を送信するか否かを判定する。判定部505は、例えば、通信時間が所定時間以上であることに応じて、色情報401を送信しないと判定する。また、判定部505は、計測した経過時間に基づいて、色情報401を送信するか否かを判定してもよい。判定部505は、例えば、経過時間が所定時間未満であることに応じて、色情報401を送信しないと判定する。
また、判定部505は、通信時間と経過時間とに基づいて、色情報401を送信するか否かを判定してもよい。判定部505は、例えば、通信時間が所定時間以上であって、かつ、経過時間が所定時間未満であることに応じて、色情報401を送信しないと判定する。判定された結果は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、判定部505は、画像処理装置101と情報処理装置102との間のネットワークの帯域が狭い場合は、色情報401を送信しないことにして、ネットワークのトラフィックを低減することができる。また、判定部505は、情報処理装置102の画面が所定時間以上更新されていない場合は、色情報401を送信することにして、情報処理装置102のユーザに画像を閲覧させることができる。
第2の作成部506は、各々の領域に含まれる画素の画素値に基づいて、画面上に表示される同一形状の領域に含まれる画素の画素値を示す色情報401を作成する。第2の作成部506は、分割した各々の領域の左上の画素の画素値を含む色情報401を作成する。また、第2の作成部506は、分割した各々の領域に左上の画素とは異なる画素値の画素が含まれる場合、異なる画素値と、各々の領域内の異なる画素値の画素が含まれる区域とを、さらに含む色情報401を作成する。第2の作成部506は、色情報401を符号化してもよい。また、第2の作成部506は、色情報401を送信しないと判定した場合、色情報401を作成しなくてもよい。作成された色情報401は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第2の作成部506は、情報処理装置102のユーザが画像を閲覧可能にするための各々の領域と同一形状の領域に含まれる画素に色彩を付けて表示するための色情報を作成することができる。
第1の送信部507は、作成した位置情報302を情報処理装置102に送信する。また、第1の送信部507は、色情報401を送信するか否かを判定した結果を位置情報302に付加して、情報処理装置102に送信してもよい。第1の送信部507は、例えば、位置情報パケット300を情報処理装置102に送信する。これにより、第1の送信部507は、情報処理装置102に位置情報302を受信させ、位置情報302に基づいて各々の領域と同一形状の領域を表示させることができる。
第2の送信部508は、第1の送信部507が位置情報302を送信する処理を実行した後に、色情報401を情報処理装置102に送信する。また、第2の送信部508は、色情報401を送信すると判定したことに応じて、色情報401を情報処理装置102に送信してもよい。第2の送信部508は、例えば、色情報パケット400を情報処理装置102に送信する。これにより、第2の送信部508は、情報処理装置102に色情報401を受信させ、位置情報302と色情報401とに基づいて、画像を表示させることができる。
(情報処理装置102の機能的構成例)
次に、図6を用いて、情報処理装置102の機能的構成例について説明する。
図6は、情報処理装置102の機能的構成例を示すブロック図である。情報処理装置102は、制御部になる機能として、受信部601と、表示部602と、を含む。
受信部601と、表示部602は、例えば、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F209により、その機能を実現する。
受信部601は、位置情報302を、画像処理装置101から受信する。また、受信部601は、画像処理装置101が色情報401を送信するか否かを判定した結果が付加された位置情報302を、画像処理装置101から受信してもよい。受信部601は、例えば、位置情報パケット300を画像処理装置101から受信して、位置情報パケット300から位置情報302を抽出する。また、受信部601は、位置情報パケット300から、色情報401を送信するか否かを判定した結果を表す、色情報フラグ301を抽出する。これにより、受信部601は、情報処理装置102のユーザが画像の内容を把握可能にするための各々の領域と同一形状の領域を画面に表示するための位置情報を受信することができる。
また、受信部601は、色情報401を、画像処理装置101から受信する。受信部601は、例えば、色情報フラグ301が「1」である場合に色情報パケット400の受信を待ち、色情報パケット400を画像処理装置101から受信して、色情報パケット400から色情報401を抽出する。受信された情報は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、受信部601は、情報処理装置102のユーザが画像を閲覧可能にするための各々の領域と同一形状の領域に含まれる画素に色彩を付けて表示するための色情報を受信することができる。
表示部602は、受信した位置情報302が示す画面上の位置に同一形状の領域を表示する。また、表示部602は、色情報401を送信しないと判定した結果が付加された位置情報302を受信したことに応じて、位置情報302が示す画面上の位置に同一形状の領域を表示してもよい。表示部602は、例えば、色情報フラグ301が「0」である場合に、各々の領域を表す情報に基づいて各々の領域に対応する同一形状の領域の位置を特定する。そして、表示部602は、特定した画面内の位置に、各々の領域を表す情報に付与された領域IDに対応する画素値の範囲を代表する画素値を設定した画素を含む同一形状の領域を表示する。これにより、表示部602は、各々の領域と同一形状の領域を画面に表示することができ、情報処理装置102のユーザに同一形状の領域の輪郭を閲覧させて画像の内容を把握させることができる。
表示部602は、位置情報302と、受信した色情報401とに基づいて、画面上に画像を表示する。また、表示部602は、色情報401を送信すると判定した結果が付加された位置情報302を受信したことに応じて、位置情報302と色情報401とに基づいて、画面上に画像を表示してもよい。表示部602は、位置情報302と、色情報401とに基づいて、画像情報を復元する。そして、表示部602は、画像情報に基づいて、画面に画像を表示する。これにより、表示部602は、画像を画面に表示することができ、情報処理装置102のユーザに画像を閲覧させることができる。
(位置情報302と色情報401とを送信する具体例)
次に、図7を用いて、画像処理装置101の画像処理により作成された位置情報302と色情報401とを送信する具体例について説明する。
図7は、位置情報302と色情報401とを送信する具体例を示す説明図である。図7において、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域は、第2の情報処理装置102との間におけるネットワークの帯域よりも狭いとする。
図7の例では、(1)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な第1の画像701の画像情報に基づいて、第1の画像701についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第1の画像701についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。次に、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第1の画像701の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第1の画像701についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第1の画像701の輪郭を表示し、第1の画像701についての色情報401を受信するまで待機する。
(2)画像処理装置101は、第1の画像701の画像情報に基づいて、第1の画像701についての色情報401を作成する。次に、画像処理装置101は、第1の画像701についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第1の画像701についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第1の画像701の輪郭を表示したままになる。
また、画像処理装置101は、第1の画像701についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第1の画像701の輪郭を表示する。
(3)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な、第1の画像701から連続する第2の画像702の画像情報に基づいて、第2の画像702についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第2の画像702についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。そして、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第2の画像702の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第2の画像702についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第2の画像702の輪郭を表示し、第2の画像702についての色情報401を受信するまで待機する。
(4)画像処理装置101は、第2の画像702の画像情報に基づいて、第2の画像702についての色情報401を作成する。次に、画像処理装置101は、第2の画像702についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第2の画像702についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第2の画像702の輪郭を表示したままになる。
また、画像処理装置101は、第2の画像702についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第2の画像702の輪郭を表示する。
(5)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な、第2の画像702から連続する第3の画像703の画像情報に基づいて、第3の画像703についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第3の画像703についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。そして、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第3の画像703の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第3の画像703についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第3の画像703の輪郭を表示し、第3の画像703についての色情報401を受信するまで待機する。
(6)画像処理装置101は、第3の画像703の画像情報に基づいて、第3の画像703についての色情報401を作成する。次に、画像処理装置101は、第3の画像703についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第3の画像703についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第3の画像703の輪郭を表示したままになる。
また、画像処理装置101は、第3の画像703についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第3の画像703の輪郭を表示する。
(位置情報302と色情報401とを作成する具体例)
次に、図8を用いて、画像処理装置101の画像処理により位置情報302と色情報401とを作成する具体例について説明する。
図8は、位置情報302と色情報401とを作成する具体例を示す説明図である。図8において、画像処理装置101は、画像800の画像情報に基づいて、画像800の画素を走査順に選択しながら、位置情報302と色情報401とを作成する。
以下の説明では、画像800のi行j列に存在する画素を「画素8ij」と表記する場合がある。例えば、画像800の左上の1行1列に存在する画素を「画素811」と表記する場合がある。
画像処理装置101は、例えば、画像800の左上の画素811を選択して、選択した画素811の画素値(255,0,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「0」を付与する。
画像処理装置101は、具体的には、画素値の範囲と、領域IDとを対応付けた対応情報に基づいて、取得した画素値に対応する領域IDを特定する。対応情報は、例えば、RGBのうちのRが最も高い値をとり、Rが192〜255の範囲になる画素値の範囲に、領域ID「0」を対応付けた情報を含む。
また、対応情報は、例えば、RGBのうちのGが最も高い値をとり、Gが192〜255の範囲になる画素値の範囲に、領域ID「1」を対応付けた情報を含む。また、対応情報は、例えば、RGBのうちのBが最も高い値をとり、Bが192〜255の範囲になる画素値の範囲に、領域ID「2」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが128〜191の範囲になる画素値の範囲に領域ID「3」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが128〜191の範囲になる画素値の範囲に領域ID「4」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが128〜191の範囲になる画素値の範囲に領域ID「5」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが64〜127の範囲になる画素値の範囲に領域ID「6」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが64〜127の範囲になる画素値の範囲に領域ID「7」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが64〜127の範囲になる画素値の範囲に領域ID「8」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが0〜63の範囲になる画素値の範囲に領域ID「9」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが0〜63の範囲になる画素値の範囲に領域ID「10」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが0〜63の範囲になる画素値の範囲に領域ID「11」を対応付けた情報を含む。
次に、画像処理装置101は、画素811から、画素811と同一の画素値で下方向に連続して存在する画素811,821,831,841,851,861を特定する。そして、画像処理装置101は、特定した画素811,821,831,841,851,861の個数「6」を算出する。
次に、画像処理装置101は、特定した画素811,821,831,841,851,861の各々の画素から、画素811と同一の画素値で右方向に連続して存在する画素を特定する。
画像処理装置101は、具体的には、画素811から、画素811と同一の画素値で右方向に連続して存在する画素811を特定して、特定した画素811の個数「1」を算出する。また、画像処理装置101は、画素821から、画素811と同一の画素値で右方向に連続して存在する画素821,822,823を特定して、特定した画素821,822,823の個数「3」を算出する。
また、画像処理装置101は、画素831から、画素811と同一の画素値で右方向に連続して存在する画素831,832,833を特定して、特定した画素831,832,833の個数「3」を算出する。また、画像処理装置101は、画素841から、画素811と同一の画素値で右方向に連続して存在する画素841を特定して、特定した画素841の個数「1」を算出する。
また、画像処理装置101は、画素851から、画素811と同一の画素値で右方向に連続して存在する画素851,852,853,854を特定して、特定した画素851,852,853,854の個数「4」を算出する。また、画像処理装置101は、画素861から、画素811と同一の画素値で右方向に連続して存在する画素861,862,863を特定して、特定した画素861,862,863の個数「3」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「0」と、画素値(255,0,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素811の位置「1,1」と、下方向に連続して存在する画素の個数「6」と、右方向に連続して存在する画素の個数「1,3,3,1,4,3」とを、第1の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択し、画像800の1行2列の画素812を選択する。そして、画像処理装置101は、選択した画素812の画素値(0,255,0)を取得して、取得した画素値に基づいて領域ID「1」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素812から、画素812と同一の画素値で下方向に連続して存在する画素812を特定する。そして、画像処理装置101は、特定した画素812の個数「1」を算出する。
次に、画像処理装置101は、特定した画素812から、画素812と同一の画素値で右方向に連続して存在する画素812,813,814,815,816を特定する。そして、画像処理装置101は、特定した画素812,813,814,815,816の個数「5」を算出する。
次に、画像処理装置101は、領域ID「1」に対応付けて、サブ領域ID「0」と、画素値(0,255,0)とを記憶する。また、画像処理装置101は、領域ID「1」に対応付けて、選択した画素の位置「1,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「5」とを、第2の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択し、画像800の1行3列の画素813を選択するが、選択した画素813がチェック済みのため、画素813についての処理を行わない。画像処理装置101は、同様に、走査順に画素を選択するが、選択した画像800の画素814,815,816,821,822,823がチェック済みのため、画素814,815,816,821,822,823についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の2行4列の画素824を選択する。そして、画像処理装置101は、選択した画素824の画素値(0,255,0)を取得して、取得した画素値に基づいて領域ID「1」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素824から、画素824と同一の画素値で下方向に連続して存在する画素824,834を特定する。そして、画像処理装置101は、特定した画素824,834の個数「2」を算出する。
次に、画像処理装置101は、特定した画素824から、画素824と同一の画素値で右方向に連続して存在する画素824,825,826を特定する。そして、画像処理装置101は、特定した画素824,825,826の個数「3」を算出する。
また、画像処理装置101は、特定した画素834から、画素824と同一の画素値で右方向に連続して存在する画素834,835,836を特定する。そして、画像処理装置101は、特定した画素834,835,836の個数「3」を算出する。
次に、画像処理装置101は、領域ID「1」に対応付けて、サブ領域ID「0」と、画素値(0,255,0)とを記憶する。また、画像処理装置101は、領域ID「1」に対応付けて、選択した画素の位置「2,4」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「3,3」とを、第3の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素825,826,831,832,833,834,835,836,841がチェック済みのため、画素825,826,831,832,833,834,835,836,841についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の4行2列の画素842を選択する。そして、画像処理装置101は、選択した画素842の画素値(255,255,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「1」を付与する。
次に、画像処理装置101は、画素842から、画素842と同一の画素値で下方向に連続して存在する画素842を特定する。そして、画像処理装置101は、特定した画素842の個数「1」を算出する。
次に、画像処理装置101は、特定した画素842から、画素842と同一の画素値で右方向に連続して存在する画素842,843を特定する。そして、画像処理装置101は、特定した画素842,843の個数「2」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「1」と、画素値(255,255,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素の位置「4,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「2」とを、第4の領域を表す情報として記憶する。
また、画像処理装置101は、サブ領域IDが「0」ではない場合、領域の区域「4,2,2,1」を作成して、サブ領域ID「1」に対応付けて、作成した領域の区域「4,2,2,1」を記憶する。区域「4,2,2,1」は、4行2列の画素842から、右方向に画素2個分かつ下方向に画素1個分の矩形になる区域であることを示す。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素843がチェック済みのため、画素843についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の4行4列の画素844を選択する。そして、画像処理装置101は、選択した画素844の画素値(255,0,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素844から、画素844と同一の画素値で下方向に連続して存在する画素844を特定する。そして、画像処理装置101は、特定した画素844の個数「1」を算出する。
次に、画像処理装置101は、特定した画素844から、画素844と同一の画素値で右方向に連続して存在する画素844,845,846を特定する。そして、画像処理装置101は、特定した画素844,845,846の個数「3」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「0」と、画素値(255,0,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素の位置「4,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「3」とを、第5の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素845,846,851,852,853,854がチェック済みのため、画素845,846,851,852,853,854についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の5行5列の画素855を選択する。そして、画像処理装置101は、選択した画素855の画素値(0,0,255)を取得して、取得した画素値に基づいて領域ID「2」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素855から、画素855と同一の画素値で下方向に連続して存在する画素855,865を特定する。そして、画像処理装置101は、特定した画素855,865の個数「2」を算出する。
次に、画像処理装置101は、特定した画素855から、画素855と同一の画素値で右方向に連続して存在する画素855,856を特定する。そして、画像処理装置101は、特定した画素855,856の個数「2」を算出する。
また、画像処理装置101は、特定した画素865から、画素855と同一の画素値で右方向に連続して存在する画素865,866を特定する。そして、画像処理装置101は、特定した画素865,866の個数「2」を算出する。
次に、画像処理装置101は、領域ID「2」に対応付けて、サブ領域ID「0」と、画素値(0,0,255)とを記憶する。また、画像処理装置101は、領域ID「2」に対応付けて、選択した画素の位置「5,5」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「2,2」とを、第6の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素856,861,862,863がチェック済みのため、画素856,861,862,863についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の6行4列の画素864を選択する。そして、画像処理装置101は、選択した画素864の画素値(0,0,255)を取得して、取得した画素値に基づいて領域ID「2」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素864から、画素864と同一の画素値で下方向に連続して存在する画素864を特定する。そして、画像処理装置101は、特定した画素864の個数「1」を算出する。
次に、画像処理装置101は、特定した画素864から、画素864と同一の画素値で右方向に連続して存在し、チェック済みではない画素864を特定する。そして、画像処理装置101は、特定した画素864の個数「1」を算出する。
次に、画像処理装置101は、領域ID「2」に対応付けて、サブ領域ID「0」と、画素値(0,0,255)とを記憶する。また、画像処理装置101は、領域ID「2」に対応付けて、選択した画素の位置「6,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「1」とを、第7の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素865,866がチェック済みのため、画素865,866についての処理を行わない。
そして、画像処理装置101は、選択を終了すると、領域IDに対応付けられた画素の位置と、下方向に連続して存在する画素の個数と、右方向に連続して存在する画素の個数とに基づいて、位置情報302を作成する。
画像処理装置101は、具体的には、同一の領域ID「0」に対応付けられた複数の情報が表す、第1の領域と、第4の領域と、第5の領域との各々の領域を結合して、領域Aとする。ここで、画像処理装置101は、第1の領域の右方向に、第4の領域と第5の領域とが連続して存在するため、第1の領域を表す情報に第4の領域を表す情報と第5の領域を表す情報とを結合する。
画像処理装置101は、より具体的には、領域ID「0」に対応付けられた第1の領域を表す情報のうちの右方向に連続して存在する画素の個数「1,3,3,1,4,3」に、第4の領域と第5の領域とに含まれる画素の個数を加算する。これにより、画像処理装置101は、右方向に連続して存在する画素の個数「1,3,3,6,4,3」を作成して、第4の領域を表す情報と第5の領域を表す情報とを削除する。
次に、画像処理装置101は、第1の領域を表す情報を含む、領域Aを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「0」と、画素の位置「1,1」と、下方向に連続して存在する画素の個数「6」と、右方向に連続して存在する画素の個数「1,3,3,6,4,3」とを対応付けた情報を、領域Aを表す情報として作成する。そして、画像処理装置101は、作成した領域Aを表す情報を、位置情報302に追加する。
ここでは、画像処理装置101が、いずれかの領域を表す情報と、いずれかの領域の右方向に連続して存在する他の領域を表す情報とを結合することについて説明したが、これに限らない。例えば、画像処理装置101は、いずれかの領域を表す情報と、いずれかの領域と左端の列が同列であって下方向に連続して存在する他の領域を表す情報とを結合してもよい。
また、画像処理装置101は、領域ID「0」と、領域ID「0」に対応付けられたサブ領域ID「0」と、画素値(255,0,0)とを対応付けた情報を、領域Aのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。さらに、画像処理装置101は、領域ID「0」と、領域ID「0」に対応付けられたサブ領域ID「1」と、画素値(255,255,0)と、区域「4,2,2,1」とを対応付けた情報を、領域Aのうちのサブ領域ID「1」の領域の色彩を表す情報として、色情報401に追加する。
また、画像処理装置101は、同一の領域ID「1」に対応付けられた複数の情報が表す、第2の領域と、第3の領域との各々の領域を結合して、領域Bとする。次に、画像処理装置101は、第2の領域を表す情報と、第3の領域を表す情報とを含む、領域Bを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「1」と、画素の位置「1,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「5」とを対応付けた情報を、領域Bを表す情報として、位置情報302に追加する。さらに、画像処理装置101は、領域ID「1」と、画素の位置「2,4」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「3,3」とを対応付けた情報を、領域Bを表す情報として、位置情報302に追加する。
また、画像処理装置101は、領域ID「1」と、領域ID「1」に対応付けられたサブ領域ID「0」と、画素値(0,255,0)とを対応付けた情報を、領域Bのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。
また、画像処理装置101は、同一の領域ID「2」に対応付けられた複数の情報が表す、第6の領域と、第7の領域とを結合して、領域Cとする。次に、画像処理装置101は、第6の領域を表す情報と、第7の領域を表す情報とを含む、領域Cを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「2」と、画素の位置「5,5」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「2,2」とを対応付けた情報を、領域Cを表す情報として、位置情報302に追加する。さらに、画像処理装置101は、領域ID「2」と、画素の位置「6,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「1」とを対応付けた情報を、領域Cを表す情報として、位置情報302に追加する。
また、画像処理装置101は、領域ID「2」と、領域ID「2」に対応付けられたサブ領域ID「0」と、画素値(0,0,255)とを対応付けた情報を、領域Cのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。これにより、画像処理装置101は、画像情報より情報量を削減した位置情報302を作成することができ、位置情報302と組み合わせることにより画像情報を復元することができる色情報401を作成することができる。
ここでは、画像処理装置101が、対応情報に基づいて領域IDを特定する場合について説明したが、これに限らない。例えば、画像処理装置101は、画素値から領域IDを算出する算出式に基づいて、画素値に対応する領域IDを特定してもよい。算出式は、例えば、画素値のRGBのうちのRを64で除算したときの商の整数部分を領域IDとして算出する式である。また、算出式は、例えば、画素値のRGBの平均値を64で除算したときの商の整数部分を領域IDとして算出する式であってもよい。
(送信するデータ量の具体例)
次に、画像処理装置101が送信するデータ量の具体例について説明する。ここで、画像処理装置101が、画像情報を符号化して送信する場合と、位置情報302と色情報401とを符号化して送信する場合とにおける、送信するデータ量の差について説明する。
まず、風景の画像を例に挙げて説明する。風景の画像は、例えば、グラデーションを含み、木々などの物体が表現されるという特徴を有する画像である。風景の画像の画像情報を符号化した場合、例えば、データ量は1074860Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、370812Byteと684707Byteになる。
次に、箱の画像を例に挙げて説明する。箱の画像は、色数が少なく、なだらかなグラデーションを含むという特徴を有する画像である。箱の画像の画像情報を符号化した場合、例えば、データ量は555494Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、179997Byteと467828Byteになる。
次に、回路の画像を例に挙げて説明する。回路の画像は、例えば、グラデーションが少なく、配線などがエッジで表現されるという特徴を有する画像である。回路の画像の画像情報を符号化した場合、例えば、データ量は15382Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、15366Byteと58Byteになる。
次に、表の画像を例に挙げて説明する。表の画像は、グラデーションがなく、文字や数字が表現されるという特徴を有する画像である。表の画像の画像情報を符号化した場合、例えば、データ量は26288Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、26157Byteと11544Byteになる。
このように、画像が有する特徴に応じて位置情報302のデータ量が異なるものの、画像情報を符号化した場合のデータ量より位置情報302を符号化した場合のデータ量の方が減少する。このため、情報処理装置102は、画像情報を受信して画像情報に基づいて画面を更新する場合よりも、符号化した位置情報302を受信して位置情報302に基づいて画面を更新する場合の方が、早い時刻に画面を更新することができる。これにより、情報処理装置102のユーザは、早めに同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、位置情報302と、色情報401とを別々に送信することにより、単位時間あたりに送信するデータ量を低減することができ、バーストトラフィックを防止することができる。
(送信処理手順の一例)
次に、図9を用いて、画像処理装置101の送信処理手順の一例について説明する。
図9は、送信処理手順の一例を示すフローチャートである。図9において、まず、画像処理装置101は、一定時間ごとに画像情報を取得する(ステップS901)。次に、画像処理装置101は、取得した画像情報に基づいて、位置情報302を作成する(ステップS902)。そして、画像処理装置101は、取得した画像情報に基づいて、色情報401を作成する(ステップS903)。位置情報302と色情報401とを作成する作成処理手順の一例については、図10を用いて後述する。
次に、画像処理装置101は、色情報401を送信するか否かを判定する(ステップS904)。色情報401を送信するか否かを判定する判定処理については、図12を用いて後述する。ここで、送信する場合(ステップS904:Yes)、画像処理装置101は、位置情報302を含み、色情報フラグ301に「1」が設定された位置情報パケット300を作成する(ステップS905)。次に、画像処理装置101は、位置情報パケット300を符号化して、情報処理装置102に送信する(ステップS906)。
そして、画像処理装置101は、色情報401を含む色情報パケット400を作成する(ステップS907)。次に、画像処理装置101は、色情報パケット400を符号化して、情報処理装置102に送信する(ステップS908)。そして、画像処理装置101は、ステップS901の処理に戻る。
一方で、送信しない場合(ステップS904:No)、画像処理装置101は、位置情報302を含み、色情報フラグ301に「0」が設定された位置情報パケット300を作成する(ステップS909)。次に、画像処理装置101は、位置情報パケット300を符号化して、情報処理装置102に送信する(ステップS910)。そして、画像処理装置101は、ステップS901の処理に戻る。
これにより、画像処理装置101は、情報処理装置102に位置情報パケット300を送信して、情報処理装置102に画像を分割した複数の領域の各々の領域と同一形状の領域を表示させることができる。また、画像処理装置101は、情報処理装置102に位置情報パケット300と色情報パケット400とを送信して、情報処理装置102に画像を表示させることができる。
(作成処理手順の一例)
次に、図10を用いて、図9のステップS902に示した、位置情報302を作成する作成処理手順の一例について説明する。
図10は、作成処理手順の一例を示すフローチャートである。図10において、画像処理装置101は、画像情報を複数のブロックの各々のブロックを表す画像情報に分割する(ステップS1001)。次に、画像処理装置101は、いずれかのブロックの画像情報を選択する(ステップS1002)。
そして、画像処理装置101は、選択したブロック内の画素を走査順に選択する(ステップS1003)。次に、画像処理装置101は、選択した画素がチェック済みの画素か否かを判定する(ステップS1004)。ここで、チェック済みの画素である場合(ステップS1004:Yes)、画像処理装置101は、ステップS1003の処理に戻る。
一方で、チェック済みの画素ではない場合(ステップS1004:No)、画像処理装置101は、選択した画素、または選択した画素から連続して存在する画素のうち、少なくとも選択した画素を含む、画像における領域を特定する(ステップS1005)。領域を特定するチェック処理手順の一例は、図11を用いて後述する。
次に、画像処理装置101は、すべての画素がチェック済みか否かを判定する(ステップS1006)。ここで、チェック済みではない画素がある場合(ステップS1006:No)、画像処理装置101は、ステップS1003の処理に戻る。
一方で、すべての画素がチェック済みである場合(ステップS1006:Yes)、画像処理装置101は、各々の領域の領域IDごとに各々の領域を表す情報を作成して、位置情報302として出力する(ステップS1007)。次に、画像処理装置101は、すべてのブロックが選択済みか否かを判定する(ステップS1008)。ここで、選択済みではないブロックがある場合(ステップS1008:No)、画像処理装置101は、ステップS1001の処理に戻る。
一方で、すべてのブロックが選択済みである場合(ステップS1008:Yes)、画像処理装置101は、作成処理を終了する。これにより、画像処理装置101は、位置情報302と色情報401とを作成することができる。
(チェック処理手順の一例)
次に、図11を用いて、図10のステップS1005に示した、チェック処理手順の一例について説明する。
図11は、チェック処理手順の一例を示すフローチャートである。図11において、画像処理装置101は、画素値に基づいて領域IDを特定する(ステップS1101)。
次に、画像処理装置101は、サブ領域IDを付与する(ステップS1102)。そして、画像処理装置101は、選択した画素から下方向に、選択した画素と同一の画素値で連続して存在する画素を特定し、特定した画素の個数を算出する(ステップS1103)。
次に、画像処理装置101は、算出した個数を、領域IDとサブ領域IDとに対応付けて記憶する(ステップS1104)。そして、画像処理装置101は、特定した、下方向に存在する各々の画素から右方向に、各々の画素と同一の画素値で連続して存在する画素を特定し、特定した画素の個数を算出する(ステップS1105)。
次に、画像処理装置101は、算出した個数を、領域IDとサブ領域IDとに対応付けて記憶する(ステップS1106)。そして、画像処理装置101は、特定した画素をチェック済みに設定して(ステップS1107)、チェック処理を終了する。これにより、画像処理装置101は、画像を複数の領域に分割することができる。
(判定処理手順の一例)
次に、図12を用いて、図9のステップS904に示した、判定処理手順の一例について説明する。
図12は、判定処理手順の一例を示すフローチャートである。図12において、画像処理装置101は、画像情報と、ネットワーク情報と、ユーザ操作情報とを取得する(ステップS1201)。次に、画像処理装置101は、ネットワーク情報に基づいて、ネットワークに空きがあるか否かを判定する(ステップS1202)。ここで、ネットワークに空きがあるとは、例えば、ネットワーク情報が表す通信時間が所定値以下であることである。
ここで、ネットワークに空きがない場合(ステップS1202:No)、画像処理装置101は、ユーザ操作情報に基づいて、最後のユーザ操作から200ms以上経過したか否かを判定する(ステップS1203)。最後のユーザ操作とは、例えば、画像の表示要求になる、情報処理装置102のユーザの操作入力である。また、最後のユーザ操作とは、画像の表示要求になる、画像処理装置101のユーザの操作入力であってもよい。ここで、経過していない場合(ステップS1203:No)、画像処理装置101は、色情報401を送信しないと判定して(ステップS1204)、判定処理を終了する。
一方で、ステップS1202において、ネットワークに空きがある場合(ステップS1202:Yes)、または、ステップS1203において、経過している場合(ステップS1203:Yes)、画像処理装置101は、色情報401を送信すると判定して(ステップS1205)、判定処理を終了する。
これにより、画像処理装置101は、画像処理装置101と情報処理装置102との間のネットワークの帯域が狭い場合は、色情報401を送信しないことにして、ネットワークのトラフィックを低減することができる。また、画像処理装置101は、情報処理装置102の画面が所定時間以上更新されていない場合は、色情報401を送信することにして、情報処理装置102のユーザに画像を閲覧させることができる。
(表示処理手順の一例)
次に、図13を用いて、情報処理装置102の表示処理手順の一例について説明する。
図13は、表示処理手順の一例を示すフローチャートである。図13において、情報処理装置102は、画像処理装置101からパケットを受信したか否かを判定する(ステップS1301)。ここで、パケットを受信していない場合(ステップS1301:No)、情報処理装置102は、ステップS1301の処理に戻る。
一方で、パケットを受信した場合(ステップS1301:Yes)、情報処理装置102は、受信したパケットに含まれる識別情報に基づいて、受信したパケットが位置情報パケット300であるか否かを判定する(ステップS1302)。
ここで、位置情報パケット300である場合(ステップS1302:Yes)、情報処理装置102は、色情報フラグ301に「1」が設定されているか否かを判定する(ステップS1303)。ここで、色情報フラグ301に「1」が設定されている場合(ステップS1303:Yes)、情報処理装置102は、ステップS1301の処理に戻る。
一方で、色情報フラグ301に「0」が設定されている場合(ステップS1303:No)、情報処理装置102は、受信した位置情報パケット300から位置情報302を抽出する(ステップS1304)。次に、情報処理装置102は、抽出した位置情報302に基づいて、画像における領域を表示する(ステップS1305)。そして、情報処理装置102は、ステップS1308の処理に移行する。
ステップS1302において、色情報パケット400である場合(ステップS1302:No)、情報処理装置102は、先に受信した位置情報パケット300から位置情報302を抽出し、後に受信した色情報パケット400から色情報401を抽出する(ステップS1306)。次に、情報処理装置102は、位置情報302と色情報401とに基づいて、画像を表示する(ステップS1307)。
そして、情報処理装置102は、ネットワーク情報を画像処理装置101に送信し(ステップS1308)、ステップS1301の処理に戻る。これにより、情報処理装置102は、位置情報302を受信した場合に、各々の領域と同一形状の領域を画面に表示することができ、情報処理装置102のユーザに同一形状の領域の輪郭を閲覧させて画像の内容を把握させることができる。また、情報処理装置102は、色情報401を受信した場合に、画像を画面に表示することができ、情報処理装置102のユーザに画像を閲覧させることができる。
以上説明したように、画像処理装置101によれば、画像を複数の領域に分割し、各々の領域と同一形状の領域の位置を示す位置情報302を作成し、位置情報302を情報処理装置102に送信することができる。これにより、画像処理装置101は、情報処理装置102に送信するデータ量を低減し、情報処理装置102に送信する時間を短縮することができる。このため、情報処理装置102は、画像情報を受信する場合よりも、操作入力を送信してから位置情報103を受信して画面を更新するまでにかかる時間を短縮することができる。そして、情報処理装置102は、位置情報103を受信して同一形状の領域を画面に表示することができる。このため、情報処理装置102のユーザは、情報処理装置102の画面に同一形状の領域が表示されるため、同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、情報処理装置102に送信する単位時間当たりのデータ量を低減して、バーストトラフィックの発生を抑制することができる。
また、画像処理装置101によれば、画面上に表示される同一形状の領域に含まれる画素の画素値を示す色情報401を作成し、位置情報302を送信する処理を実行した後に、色情報401を情報処理装置102に送信することができる。これにより、情報処理装置102は、位置情報302と色情報401とに基づいて、画像を画面に表示することができる。このため、情報処理装置102のユーザは、同一形状の領域の輪郭を閲覧して画像を把握することができる。
また、画像処理装置101によれば、情報処理装置102とのデータ通信にかかる通信時間に基づいて、色情報401を送信するか否かを判定し、色情報401を送信すると判定したことに応じて、色情報401を送信することができる。これにより、画像処理装置101は、情報処理装置102との間のネットワークの品質が悪い場合などには色情報401を送信せずに、ネットワークトラフィックを抑制することができる。
また、画像処理装置101によれば、情報処理装置102から画像の表示要求を受信してからの経過時間に基づいて、色情報401を送信するか否かを判定し、色情報401を送信すると判定したことに応じて、色情報401を送信することができる。これにより、画像処理装置101は、画像に変更がない場合などには色情報401を送信して、情報処理装置102の画面に画像を表示させることができる。
また、画像処理装置101によれば、色情報401を送信するか否かを判定した結果を位置情報302に付加して送信することができる。これにより、情報処理装置102は、画像処理装置101から色情報401が送信されるか否かを判定することができ、色情報401が送信されないときは位置情報302に基づいて同一形状の領域を画面に表示することができる。一方で、情報処理装置102は、色情報401が送信されるときは色情報401を受信するまで待機し、色情報401を受信してから位置情報302と色情報401とに基づいて画像を画面に表示することができる。このため、情報処理装置102のユーザは、本来の画像のみを閲覧することができる。
なお、本実施の形態で説明した画像処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本画像処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本画像処理プログラムは、インターネット等のネットワークを介して配布してもよい。
101 画像処理装置
102 情報処理装置
501 分割部
502 第1の作成部
503 取得部
504 計測部
505 判定部
506 第2の作成部
507 第1の送信部
508 第2の送信部
601 受信部
602 表示部
本発明は、画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置に関する。
従来、サーバが、ネットワークを介して接続されたクライアントのユーザからの操作入力に基づいてクライアントの画面に表示する画像を作成し、作成した画像の画像情報をクライアントに送信してクライアントの画面に表示させることが行われる。
関連する技術としては、例えば、ネットワーク負荷状態に基づき、ネットワーク負荷が高いときはデータ転送量に影響を与える色数を減らし、逆にネットワーク負荷が低いときは色数を増やすものがある。また、カラー文書画像の各画素をインデックスに変換し、最大画素数のインデックスに対応するカラー値をカラー文書画像の背景色とし、インデックスごとに部分2値画像を生成するとともに、圧縮順位にしたがって2値画像を圧縮する技術がある。
また、共有入出力機器とそれを利用するコンピュータ機器との経路に公衆回線が含まれるか否かを検出し、含まれる場合には利用を要求している装置に対して共有入出力機器本来の能力以下の能力情報を返送する技術がある。また、印刷データの一部を先にサーバに送信しておき、他の印刷データに対する印刷処理を実行した後に、残りの部分をサーバに送信する技術がある。
特開2008−234389号公報 特開2004−229261号公報 特開2000−295311号公報 特開2008−042241号公報
しかしながら、上述した従来技術では、クライアントのユーザからの操作入力に対する、サーバの応答性能が低下してしまうことがある。例えば、サーバとクライアントとの間が低品質のネットワークで接続されている場合、ネットワークにおいて単位時間あたりに送信できるデータ量が少なかったり、パケットロスが発生してパケットを再送することになるため、クライアントがサーバから画像の画像情報を受信するまでにかかる時間が増大してしまう。
1つの側面では、本発明は、ユーザの操作入力に対する応答性能を向上することができる画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置を提供することを目的とする。
本発明の一側面によれば、ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、作成した前記位置情報を前記情報処理装置に送信する画像処理プログラム、画像処理方法、および画像処理装置が提案される。
また、本発明の一側面によれば、コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する表示プログラム、表示方法、および情報処理装置が提案される。
本発明の一態様によれば、ユーザの操作入力に対する応答性能を向上することができるという効果を奏する。
図1は、本実施の形態にかかる画像処理装置101による画像処理の一実施例を表す説明図である。 図2は、コンピュータ200のハードウェア構成例を示すブロック図である。 図3は、位置情報パケット300の内容の一例を示す説明図である。 図4は、色情報401を含む色情報パケット400の内容の一例を示す説明図である。 図5は、画像処理装置101の機能的構成例を示すブロック図である。 図6は、情報処理装置102の機能的構成例を示すブロック図である。 図7は、位置情報302と色情報401とを送信する具体例を示す説明図である。 図8は、位置情報302と色情報401とを作成する具体例を示す説明図である。 図9は、送信処理手順の一例を示すフローチャートである。 図10は、作成処理手順の一例を示すフローチャートである。 図11は、チェック処理手順の一例を示すフローチャートである。 図12は、判定処理手順の一例を示すフローチャートである。 図13は、表示処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、本発明にかかる画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置の実施の形態を詳細に説明する。
(画像処理の一実施例)
図1は、本実施の形態にかかる画像処理装置101による画像処理の一実施例を表す説明図である。画像処理装置101は、本実施の形態にかかる画像処理プログラムを実行することにより、ネットワークを介して接続される情報処理装置102の画面に表示可能な画像についての位置情報103を作成して、情報処理装置102に送信するコンピュータである。
画像処理装置101は、例えば、リモートデスクトップの技術を実現するコンピュータである。画像処理装置101は、具体的には、情報処理装置102から操作入力に基づいて、画像処理装置101が有するOS(Operating System)やCAD(Computer Aided Design)ソフトウェアなどを実行し、実行結果を表す画像についての位置情報103を送信する。画像処理装置101としては、ノート型パソコン、デスクトップ型パソコン、サーバなどを採用することができる。
また、情報処理装置102は、位置情報103を受信して、位置情報103に基づいて情報処理装置102が有する画面上の位置に、画像から分割された複数の領域の各々の領域と同一形状の領域を表示するコンピュータである。
情報処理装置102は、例えば、リモートデスクトップの技術を利用するコンピュータである。情報処理装置102は、具体的には、画像処理装置101に操作入力を送信して、実行結果を表す画像についての位置情報103を受信して、同一形状の領域を表示する。情報処理装置102としては、ノート型パソコン、デスクトップ型パソコン、携帯電話機、スマートフォン、PHS(Personal Handyphone System)、タブレット型端末などを採用することができる。
図1において、画像処理装置101は、画像に含まれる画素の画素値に基づいて、画像を複数の領域に分割する。画像処理装置101は、例えば、画像に含まれる各々の画素を、画素値の範囲でグループ分けして、同一のグループに所属する画素が含まれる領域ごとに、画像を分割する。
次に、画像処理装置101は、分割した複数の領域の各々の領域の画像における位置から特定される画面上の位置に表示される、各々の領域と同一形状の領域の位置を示す位置情報103を作成する。画像処理装置101は、例えば、各々のグループの識別情報に対応付けて、各々の領域の左上の画素が存在する座標と、左上の画素の下方向に存在する画素の個数と、下方向に存在する画素の右方向に存在する画素の個数とを記憶する位置情報103を作成する。
そして、画像処理装置101は、作成した位置情報103を、情報処理装置102に送信する。画像処理装置101は、例えば、位置情報103を含むパケットを作成して、情報処理装置102に送信する。以下の説明では、位置情報103を含むパケットを「位置情報パケット」と表記する場合がある。
ここで、画素値とは、画素の色を表す値である。画素値は、例えば、RGB形式で表現される。RGB形式とは、赤(Red)、緑(Green)、青(Blue)の3つの原色を用いた表現形式である。また、画素値は、さらに、透明度を含んでもよい。また、画素値は、例えば、YCrCb形式で表現されてもよい。YCrCb形式とは、例えば、輝度と色差とを用いた表現形式である。また、画素値は、例えば、HSV形式で表現されてもよい。HSV形式とは、例えば、色相と彩度と輝度とを用いた表現形式である。
一方で、情報処理装置102は、位置情報103を受信する。情報処理装置102は、例えば、位置情報パケットを受信し、位置情報パケットから位置情報103を抽出する。
次に、情報処理装置102は、位置情報103に基づいて、各々の領域の画像における位置から情報処理装置102の画面上の位置を特定する。情報処理装置102は、例えば、位置情報103に基づいて、画像において各々の領域の左上の画素が存在する座標に対応する、情報処理装置102の画面上の座標を特定する。
そして、情報処理装置102は、特定した位置に、各々の領域と同一形状の領域を表示する。情報処理装置102は、例えば、位置情報103に基づいて、特定した座標に存在する画素の下方向に存在する画素の個数と、下方向に存在する画素の右方向に存在する画素の個数とを特定する。
これにより、画像処理装置101は、情報処理装置102に送信するデータ量を低減し、情報処理装置102に送信する時間を短縮することができる。このため、情報処理装置102は、画像情報を受信する場合よりも、操作入力を送信してから位置情報103を受信して画面を更新するまでにかかる時間を短縮することができる。そして、情報処理装置102は、位置情報103を受信して同一形状の領域を画面に表示することができる。このため、情報処理装置102のユーザは、情報処理装置102の画面に同一形状の領域が表示されるため、同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、情報処理装置102に送信する単位時間当たりのデータ量を低減して、バーストトラフィックの発生を抑制することができる。
ここでは、画像処理装置101が位置情報103を送信する場合について説明したが、これに限らない。例えば、画像処理装置101は、各々の領域と同一形状の領域に含まれる画素に設定される、各々の領域に含まれる画素と同一画素値を示す色情報を作成して、位置情報103を送信した後に、色情報を含むパケットを送信してもよい。以下の説明では、色情報を含むパケットを「色情報パケット」と表記する場合がある。そして、情報処理装置102は、色情報を受信し、位置情報103と色情報とに基づいて、画像を表示してもよい。
これにより、画像処理装置101は、情報処理装置102に、画像を表示させることができる。このため、情報処理装置102のユーザは、画像を把握することができる。また、画像処理装置101は、単位時間あたりに情報処理装置102に送信するデータ量を低減して、バーストトラフィックの発生を抑制することができる。
(コンピュータ200のハードウェア構成例)
次に、図2を用いて、実施の形態にかかる画像処理装置101、または実施の形態にかかる情報処理装置102を実現するコンピュータ200のハードウェア構成例について説明する。
図2は、コンピュータ200のハードウェア構成例を示すブロック図である。図2において、コンピュータ200は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、を備えている。
また、コンピュータ200は、磁気ディスクドライブ(Hard Disk Drive)204と、磁気ディスク205と、光ディスクドライブ206と、光ディスク207と、を備えている。また、コンピュータ200は、ディスプレイ208と、インターフェース(I/F:Interface)209と、キーボード210と、マウス211と、スキャナ212と、プリンタ213と、を備えている。また、各構成部はバス220によってそれぞれ接続されている。
ここで、CPU201は、コンピュータ200の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。ROM202は、コンピュータ200が画像処理装置101を実現する場合は、少なくとも本実施の形態にかかる画像処理プログラムを記憶している。ROM202は、コンピュータ200が情報処理装置102を実現する場合は、少なくとも表示プログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。RAM203は、VRAM(Video RAM)を含んでもよい。
磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータのリード/ライトを制御する。光ディスク207は、光ディスクドライブ206の制御で書き込まれたデータを記憶したり、光ディスク207に記憶されたデータをコンピュータ200に読み取らせたりする。
ディスプレイ208は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ208は、例えば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
I/F209は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク214に接続され、このネットワーク214を介して他の装置に接続される。そして、I/F209は、ネットワーク214と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F209には、例えば、モデムやLANアダプタなどを採用することができる。
キーボード210は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス211は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ212は、画像を光学的に読み取り、コンピュータ200内に画像データを取り込む。なお、スキャナ212は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ213は、画像データや文書データを印刷する。プリンタ213には、例えば、レーザプリンタやインクジェットプリンタを採用することができる。また、光ディスクドライブ206、光ディスク207、ディスプレイ208、キーボード210、マウス211、スキャナ212、およびプリンタ213の少なくともいずれか1つは、なくてもよい。
(位置情報パケット300の内容)
次に、図3を用いて、位置情報302を含む位置情報パケット300の内容の一例について説明する。
図3は、位置情報パケット300の内容の一例を示す説明図である。図3に示すように、位置情報パケット300は、ヘッダと、識別情報と、色情報フラグ301と、画面番号と、位置情報302とのフィールドを有する。位置情報パケット300は、各フィールドに情報が設定されることにより、作成される。
ヘッダは、IP(Internet Protocol)ヘッダ、およびTCP(Transmission Control Protocol)ヘッダである。識別情報は、位置情報パケット300を識別する情報である。
色情報フラグ301は、色情報を送信するか否かを示すフラグである。図3の例では、色情報フラグ301には、「0」または「1」の値が設定される。色情報フラグ301の「0」は、色情報を送信しないことを表す。色情報フラグ301の「1」は、色情報を送信することを表す。画面番号は、画像を示す画像情報の番号である。位置情報302は、画像における領域の位置を表す情報である。
(色情報401を含む色情報パケット400の内容)
次に、図4を用いて、色情報401を含む色情報パケット400の内容の一例について説明する。
図4は、色情報401を含む色情報パケット400の内容の一例を示す説明図である。色情報パケット400は、ヘッダと、識別情報と、画面番号と、色情報401とのフィールドを有する。色情報パケット400は、各フィールドに情報が設定されることにより、作成される。
ヘッダは、IPヘッダ、およびTCPヘッダである。識別情報は、色情報パケット400を識別する情報である。画面番号は、画像を示す画像情報の番号である。色情報401は、画像における領域に含まれる画素の画素値を表す情報である。
(画像処理装置101の機能的構成例)
次に、図5を用いて、画像処理装置101の機能的構成例について説明する。
図5は、画像処理装置101の機能的構成例を示すブロック図である。画像処理装置101は、制御部になる機能として、分割部501と、第1の作成部502と、取得部503と、計測部504と、判定部505と、第2の作成部506と、第1の送信部507と、第2の送信部508と、を含む。
分割部501と、第1の作成部502と、取得部503と、計測部504と、判定部505と、第2の作成部506と、第1の送信部507と、第2の送信部508は、例えば、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F209により、その機能を実現する。
分割部501は、ネットワークを介して接続される情報処理装置102の画面の表示対象となる画像に含まれる画素の画素値に基づいて、画像を複数の領域に分割する。分割部501は、例えば、画像から、画素値が所定の範囲に含まれる画素を含む領域を分割する。分割部501は、具体的には、画素値のRGBの平均値を算出する。次に、分割部501は、算出した平均値が、192〜255の範囲になる画素を含む領域と、128〜191の範囲になる画素を含む領域と、64〜127の範囲になる画素を含む領域と、0〜63の範囲になる画素を含む領域とに、画像を分割する。分割結果は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第1の作成部502は、分割した複数の領域の各々の領域を表す情報を含む位置情報を作成することができる。
第1の作成部502は、分割した複数の領域の各々の領域の画像における位置に対応する画面上の位置に表示される、各々の領域と同一形状の領域の位置を示す位置情報302を作成する。第1の作成部502は、例えば、領域内のいずれかの画素の座標と、当該画素の下方向に連続して存在する画素の個数と、下方向に連続して存在する画素の右方向に連続して存在する画素の個数とを対応付けた、領域の全体または領域の一部を表す情報を作成する。そして、第1の作成部502は、作成した情報を組み合わせて、分割した各々の領域を表す情報を作成して、分割した各々の領域を表す情報を含む位置情報302を作成する。さらに、第1の作成部502は、分割した各々の領域を表す情報に、各々の領域に含まれる画素の画素値の範囲に対応する領域IDを付与してもよい。第1の作成部502は、位置情報302を符号化してもよい。作成された位置情報302は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第1の作成部502は、画像情報よりデータ量が少なくなり、情報処理装置102のユーザが画像の内容を把握可能にするための各々の領域と同一形状の領域を画面に表示するための位置情報を作成することができる。
取得部503は、画像処理装置101と情報処理装置102とのデータ通信にかかる通信時間を取得する。取得部503は、例えば、情報処理装置102からのパケットを受信した受信時刻と、情報処理装置102からのパケットに含まれる情報処理装置102がパケットを送信した送信時刻との差分を算出して、算出した差分を通信時間として取得する。また、取得部503は、単位データ量あたりの通信時間を取得してもよい。
また、取得部503は、情報処理装置102に通信時間を算出させ、情報処理装置102から通信時間を表す情報を受信してもよい。以下の説明では、通信時間を表す情報を「ネットワーク情報」と表記する場合がある。取得された通信時間は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、取得部503は、画像処理装置101と情報処理装置102との間のネットワークの帯域を表す指標となる、通信時間を取得することができる。
計測部504は、情報処理装置102から画像の表示要求を受信してからの経過時間を計測する。以下の説明では、画像の表示要求となる、情報処理装置102のユーザの操作入力の内容を表す情報を「ユーザ操作情報」と表記する場合がある。計測部504は、例えば、タイマーを用いて、情報処理装置102から表示要求を受信した受信時刻からの経過時間を計測する。計測された経過時間は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、計測部504は、情報処理装置102の画面が更新されていない時間の指標となる、経過時間を計測することができる。
判定部505は、取得した通信時間に基づいて、色情報401を送信するか否かを判定する。判定部505は、例えば、通信時間が所定時間以上であることに応じて、色情報401を送信しないと判定する。また、判定部505は、計測した経過時間に基づいて、色情報401を送信するか否かを判定してもよい。判定部505は、例えば、経過時間が所定時間未満であることに応じて、色情報401を送信しないと判定する。
また、判定部505は、通信時間と経過時間とに基づいて、色情報401を送信するか否かを判定してもよい。判定部505は、例えば、通信時間が所定時間以上であって、かつ、経過時間が所定時間未満であることに応じて、色情報401を送信しないと判定する。判定された結果は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、判定部505は、画像処理装置101と情報処理装置102との間のネットワークの帯域が狭い場合は、色情報401を送信しないことにして、ネットワークのトラフィックを低減することができる。また、判定部505は、情報処理装置102の画面が所定時間以上更新されていない場合は、色情報401を送信することにして、情報処理装置102のユーザに画像を閲覧させることができる。
第2の作成部506は、各々の領域に含まれる画素の画素値に基づいて、画面上に表示される同一形状の領域に含まれる画素の画素値を示す色情報401を作成する。第2の作成部506は、分割した各々の領域の左上の画素の画素値を含む色情報401を作成する。また、第2の作成部506は、分割した各々の領域に左上の画素とは異なる画素値の画素が含まれる場合、異なる画素値と、各々の領域内の異なる画素値の画素が含まれる区域とを、さらに含む色情報401を作成する。第2の作成部506は、色情報401を符号化してもよい。また、第2の作成部506は、色情報401を送信しないと判定した場合、色情報401を作成しなくてもよい。作成された色情報401は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、第2の作成部506は、情報処理装置102のユーザが画像を閲覧可能にするための各々の領域と同一形状の領域に含まれる画素に色彩を付けて表示するための色情報を作成することができる。
第1の送信部507は、作成した位置情報302を情報処理装置102に送信する。また、第1の送信部507は、色情報401を送信するか否かを判定した結果を位置情報302に付加して、情報処理装置102に送信してもよい。第1の送信部507は、例えば、位置情報パケット300を情報処理装置102に送信する。これにより、第1の送信部507は、情報処理装置102に位置情報302を受信させ、位置情報302に基づいて各々の領域と同一形状の領域を表示させることができる。
第2の送信部508は、第1の送信部507が位置情報302を送信する処理を実行した後に、色情報401を情報処理装置102に送信する。また、第2の送信部508は、色情報401を送信すると判定したことに応じて、色情報401を情報処理装置102に送信してもよい。第2の送信部508は、例えば、色情報パケット400を情報処理装置102に送信する。これにより、第2の送信部508は、情報処理装置102に色情報401を受信させ、位置情報302と色情報401とに基づいて、画像を表示させることができる。
(情報処理装置102の機能的構成例)
次に、図6を用いて、情報処理装置102の機能的構成例について説明する。
図6は、情報処理装置102の機能的構成例を示すブロック図である。情報処理装置102は、制御部になる機能として、受信部601と、表示部602と、を含む。
受信部601と、表示部602は、例えば、図2に示したROM202、RAM203、磁気ディスク205、光ディスク207などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F209により、その機能を実現する。
受信部601は、位置情報302を、画像処理装置101から受信する。また、受信部601は、画像処理装置101が色情報401を送信するか否かを判定した結果が付加された位置情報302を、画像処理装置101から受信してもよい。受信部601は、例えば、位置情報パケット300を画像処理装置101から受信して、位置情報パケット300から位置情報302を抽出する。また、受信部601は、位置情報パケット300から、色情報401を送信するか否かを判定した結果を表す、色情報フラグ301を抽出する。これにより、受信部601は、情報処理装置102のユーザが画像の内容を把握可能にするための各々の領域と同一形状の領域を画面に表示するための位置情報を受信することができる。
また、受信部601は、色情報401を、画像処理装置101から受信する。受信部601は、例えば、色情報フラグ301が「1」である場合に色情報パケット400の受信を待ち、色情報パケット400を画像処理装置101から受信して、色情報パケット400から色情報401を抽出する。受信された情報は、例えば、RAM203、磁気ディスク205、光ディスク207などの記憶領域に記憶される。これにより、受信部601は、情報処理装置102のユーザが画像を閲覧可能にするための各々の領域と同一形状の領域に含まれる画素に色彩を付けて表示するための色情報を受信することができる。
表示部602は、受信した位置情報302が示す画面上の位置に同一形状の領域を表示する。また、表示部602は、色情報401を送信しないと判定した結果が付加された位置情報302を受信したことに応じて、位置情報302が示す画面上の位置に同一形状の領域を表示してもよい。表示部602は、例えば、色情報フラグ301が「0」である場合に、各々の領域を表す情報に基づいて各々の領域に対応する同一形状の領域の位置を特定する。そして、表示部602は、特定した画面内の位置に、各々の領域を表す情報に付与された領域IDに対応する画素値の範囲を代表する画素値を設定した画素を含む同一形状の領域を表示する。これにより、表示部602は、各々の領域と同一形状の領域を画面に表示することができ、情報処理装置102のユーザに同一形状の領域の輪郭を閲覧させて画像の内容を把握させることができる。
表示部602は、位置情報302と、受信した色情報401とに基づいて、画面上に画像を表示する。また、表示部602は、色情報401を送信すると判定した結果が付加された位置情報302を受信したことに応じて、位置情報302と色情報401とに基づいて、画面上に画像を表示してもよい。表示部602は、位置情報302と、色情報401とに基づいて、画像情報を復元する。そして、表示部602は、画像情報に基づいて、画面に画像を表示する。これにより、表示部602は、画像を画面に表示することができ、情報処理装置102のユーザに画像を閲覧させることができる。
(位置情報302と色情報401とを送信する具体例)
次に、図7を用いて、画像処理装置101の画像処理により作成された位置情報302と色情報401とを送信する具体例について説明する。
図7は、位置情報302と色情報401とを送信する具体例を示す説明図である。図7において、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域は、第2の情報処理装置102との間におけるネットワークの帯域よりも狭いとする。
図7の例では、(1)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な第1の画像701の画像情報に基づいて、第1の画像701についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第1の画像701についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。次に、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第1の画像701の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第1の画像701についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第1の画像701の輪郭を表示し、第1の画像701についての色情報401を受信するまで待機する。
(2)画像処理装置101は、第1の画像701の画像情報に基づいて、第1の画像701についての色情報401を作成する。次に、画像処理装置101は、第1の画像701についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第1の画像701についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第1の画像701の輪郭を表示したままになる。
また、画像処理装置101は、第1の画像701についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第1の画像701の輪郭を表示する。
(3)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な、第1の画像701から連続する第2の画像702の画像情報に基づいて、第2の画像702についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第2の画像702についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。そして、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第2の画像702の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第2の画像702についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第2の画像702の輪郭を表示し、第2の画像702についての色情報401を受信するまで待機する。
(4)画像処理装置101は、第2の画像702の画像情報に基づいて、第2の画像702についての色情報401を作成する。次に、画像処理装置101は、第2の画像702についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第2の画像702についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第2の画像702の輪郭を表示したままになる。
また、画像処理装置101は、第2の画像702についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第2の画像702の輪郭を表示する。
(5)画像処理装置101は、第1の情報処理装置102および第2の情報処理装置102が表示可能な、第2の画像702から連続する第3の画像703の画像情報に基づいて、第3の画像703についての位置情報302を作成する。次に、画像処理装置101は、画像処理装置101と第1の情報処理装置102との間におけるネットワークの帯域に基づいて、第3の画像703についての色情報401を第1の情報処理装置102に送信しないと判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信しないことを表す色情報フラグ301とを含む位置情報パケット300を作成して、第1の情報処理装置102に送信する。第1の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されないと判定する。そして、第1の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第3の画像703の輪郭を表示する。
また、画像処理装置101は、画像処理装置101と第2の情報処理装置102との間におけるネットワークの帯域に基づいて、第3の画像703についての色情報401を第2の情報処理装置102に送信すると判定する。そして、画像処理装置101は、作成した位置情報302と色情報401を送信することを表す色情報フラグ301とを含む位置情報パケット300を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、位置情報パケット300を受信すると、位置情報パケット300に含まれる色情報フラグ301に基づいて色情報401が送信されると判定する。そして、第2の情報処理装置102は、位置情報パケット300に含まれる位置情報302に基づいて第3の画像703の輪郭を表示し、第3の画像703についての色情報401を受信するまで待機する。
(6)画像処理装置101は、第3の画像703の画像情報に基づいて、第3の画像703についての色情報401を作成する。次に、画像処理装置101は、第3の画像703についての色情報401を第1の情報処理装置102に送信しないと判定したことに応じて、第3の画像703についての色情報401を含む色情報パケット400を第1の情報処理装置102に送信しない。第1の情報処理装置102は、色情報パケット400を受信しないため、第3の画像703の輪郭を表示したままになる。
また、画像処理装置101は、第3の画像703についての色情報401を第2の情報処理装置102に送信すると判定したことに応じて、作成した色情報401を含む色情報パケット400を作成して、第2の情報処理装置102に送信する。第2の情報処理装置102は、色情報パケット400を受信すると、位置情報302と色情報パケット400に含まれる色情報401とに基づいて、第3の画像703の輪郭を表示する。
(位置情報302と色情報401とを作成する具体例)
次に、図8を用いて、画像処理装置101の画像処理により位置情報302と色情報401とを作成する具体例について説明する。
図8は、位置情報302と色情報401とを作成する具体例を示す説明図である。図8において、画像処理装置101は、画像800の画像情報に基づいて、画像800の画素を走査順に選択しながら、位置情報302と色情報401とを作成する。
以下の説明では、画像800のi行j列に存在する画素を「画素8ij」と表記する場合がある。例えば、画像800の左上の1行1列に存在する画素を「画素811」と表記する場合がある。
画像処理装置101は、例えば、画像800の左上の画素811を選択して、選択した画素811の画素値(255,0,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「0」を付与する。
画像処理装置101は、具体的には、画素値の範囲と、領域IDとを対応付けた対応情報に基づいて、取得した画素値に対応する領域IDを特定する。対応情報は、例えば、RGBのうちのRが最も高い値をとり、Rが192〜255の範囲になる画素値の範囲に、領域ID「0」を対応付けた情報を含む。
また、対応情報は、例えば、RGBのうちのGが最も高い値をとり、Gが192〜255の範囲になる画素値の範囲に、領域ID「1」を対応付けた情報を含む。また、対応情報は、例えば、RGBのうちのBが最も高い値をとり、Bが192〜255の範囲になる画素値の範囲に、領域ID「2」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが128〜191の範囲になる画素値の範囲に領域ID「3」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが128〜191の範囲になる画素値の範囲に領域ID「4」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが128〜191の範囲になる画素値の範囲に領域ID「5」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが64〜127の範囲になる画素値の範囲に領域ID「6」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが64〜127の範囲になる画素値の範囲に領域ID「7」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが64〜127の範囲になる画素値の範囲に領域ID「8」を対応付けた情報を含む。
また、対応情報は、同様に、RGBのうちのRが最も高い値をとり、Rが0〜63の範囲になる画素値の範囲に領域ID「9」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのGが最も高い値をとり、Gが0〜63の範囲になる画素値の範囲に領域ID「10」を対応付けた情報を含む。また、対応情報は、同様に、RGBのうちのBが最も高い値をとり、Bが0〜63の範囲になる画素値の範囲に領域ID「11」を対応付けた情報を含む。
次に、画像処理装置101は、画素811から、画素811と同一の画素値で下方向に連続して存在する画素811,821,831,841,851,861を特定する。そして、画像処理装置101は、特定した画素811,821,831,841,851,861の個数「6」を算出する。
次に、画像処理装置101は、特定した画素811,821,831,841,851,861の各々の画素から、画素811と同一の画素値で右方向に連続して存在する画素を特定する。
画像処理装置101は、具体的には、画素811から、画素811と同一の画素値で右方向に連続して存在する画素811を特定して、特定した画素811の個数「1」を算出する。また、画像処理装置101は、画素821から、画素811と同一の画素値で右方向に連続して存在する画素821,822,823を特定して、特定した画素821,822,823の個数「3」を算出する。
また、画像処理装置101は、画素831から、画素811と同一の画素値で右方向に連続して存在する画素831,832,833を特定して、特定した画素831,832,833の個数「3」を算出する。また、画像処理装置101は、画素841から、画素811と同一の画素値で右方向に連続して存在する画素841を特定して、特定した画素841の個数「1」を算出する。
また、画像処理装置101は、画素851から、画素811と同一の画素値で右方向に連続して存在する画素851,852,853,854を特定して、特定した画素851,852,853,854の個数「4」を算出する。また、画像処理装置101は、画素861から、画素811と同一の画素値で右方向に連続して存在する画素861,862,863を特定して、特定した画素861,862,863の個数「3」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「0」と、画素値(255,0,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素811の位置「1,1」と、下方向に連続して存在する画素の個数「6」と、右方向に連続して存在する画素の個数「1,3,3,1,4,3」とを、第1の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択し、画像800の1行2列の画素812を選択する。そして、画像処理装置101は、選択した画素812の画素値(0,255,0)を取得して、取得した画素値に基づいて領域ID「1」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素812から、画素812と同一の画素値で下方向に連続して存在する画素812を特定する。そして、画像処理装置101は、特定した画素812の個数「1」を算出する。
次に、画像処理装置101は、特定した画素812から、画素812と同一の画素値で右方向に連続して存在する画素812,813,814,815,816を特定する。そして、画像処理装置101は、特定した画素812,813,814,815,816の個数「5」を算出する。
次に、画像処理装置101は、領域ID「1」に対応付けて、サブ領域ID「0」と、画素値(0,255,0)とを記憶する。また、画像処理装置101は、領域ID「1」に対応付けて、選択した画素の位置「1,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「5」とを、第2の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択し、画像800の1行3列の画素813を選択するが、選択した画素813がチェック済みのため、画素813についての処理を行わない。画像処理装置101は、同様に、走査順に画素を選択するが、選択した画像800の画素814,815,816,821,822,823がチェック済みのため、画素814,815,816,821,822,823についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の2行4列の画素824を選択する。そして、画像処理装置101は、選択した画素824の画素値(0,255,0)を取得して、取得した画素値に基づいて領域ID「1」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素824から、画素824と同一の画素値で下方向に連続して存在する画素824,834を特定する。そして、画像処理装置101は、特定した画素824,834の個数「2」を算出する。
次に、画像処理装置101は、特定した画素824から、画素824と同一の画素値で右方向に連続して存在する画素824,825,826を特定する。そして、画像処理装置101は、特定した画素824,825,826の個数「3」を算出する。
また、画像処理装置101は、特定した画素834から、画素824と同一の画素値で右方向に連続して存在する画素834,835,836を特定する。そして、画像処理装置101は、特定した画素834,835,836の個数「3」を算出する。
次に、画像処理装置101は、領域ID「1」に対応付けて、サブ領域ID「0」と、画素値(0,255,0)とを記憶する。また、画像処理装置101は、領域ID「1」に対応付けて、選択した画素の位置「2,4」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「3,3」とを、第3の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素825,826,831,832,833,834,835,836,841がチェック済みのため、画素825,826,831,832,833,834,835,836,841についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の4行2列の画素842を選択する。そして、画像処理装置101は、選択した画素842の画素値(255,255,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「1」を付与する。
次に、画像処理装置101は、画素842から、画素842と同一の画素値で下方向に連続して存在する画素842を特定する。そして、画像処理装置101は、特定した画素842の個数「1」を算出する。
次に、画像処理装置101は、特定した画素842から、画素842と同一の画素値で右方向に連続して存在する画素842,843を特定する。そして、画像処理装置101は、特定した画素842,843の個数「2」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「1」と、画素値(255,255,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素の位置「4,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「2」とを、第4の領域を表す情報として記憶する。
また、画像処理装置101は、サブ領域IDが「0」ではない場合、領域の区域「4,2,2,1」を作成して、サブ領域ID「1」に対応付けて、作成した領域の区域「4,2,2,1」を記憶する。区域「4,2,2,1」は、4行2列の画素842から、右方向に画素2個分かつ下方向に画素1個分の矩形になる区域であることを示す。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素843がチェック済みのため、画素843についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の4行4列の画素844を選択する。そして、画像処理装置101は、選択した画素844の画素値(255,0,0)を取得して、取得した画素値に基づいて領域ID「0」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素844から、画素844と同一の画素値で下方向に連続して存在する画素844を特定する。そして、画像処理装置101は、特定した画素844の個数「1」を算出する。
次に、画像処理装置101は、特定した画素844から、画素844と同一の画素値で右方向に連続して存在する画素844,845,846を特定する。そして、画像処理装置101は、特定した画素844,845,846の個数「3」を算出する。
次に、画像処理装置101は、領域ID「0」に対応付けて、サブ領域ID「0」と、画素値(255,0,0)とを記憶する。また、画像処理装置101は、領域ID「0」に対応付けて、選択した画素の位置「4,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「3」とを、第5の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素845,846,851,852,853,854がチェック済みのため、画素845,846,851,852,853,854についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の5行5列の画素855を選択する。そして、画像処理装置101は、選択した画素855の画素値(0,0,255)を取得して、取得した画素値に基づいて領域ID「2」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素855から、画素855と同一の画素値で下方向に連続して存在する画素855,865を特定する。そして、画像処理装置101は、特定した画素855,865の個数「2」を算出する。
次に、画像処理装置101は、特定した画素855から、画素855と同一の画素値で右方向に連続して存在する画素855,856を特定する。そして、画像処理装置101は、特定した画素855,856の個数「2」を算出する。
また、画像処理装置101は、特定した画素865から、画素855と同一の画素値で右方向に連続して存在する画素865,866を特定する。そして、画像処理装置101は、特定した画素865,866の個数「2」を算出する。
次に、画像処理装置101は、領域ID「2」に対応付けて、サブ領域ID「0」と、画素値(0,0,255)とを記憶する。また、画像処理装置101は、領域ID「2」に対応付けて、選択した画素の位置「5,5」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「2,2」とを、第6の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素856,861,862,863がチェック済みのため、画素856,861,862,863についての処理を行わない。
次に、画像処理装置101は、走査順に画素を選択し、チェック済みではない、画像800の6行4列の画素864を選択する。そして、画像処理装置101は、選択した画素864の画素値(0,0,255)を取得して、取得した画素値に基づいて領域ID「2」を特定し、取得した画素値にサブ領域ID「0」を付与する。
次に、画像処理装置101は、画素864から、画素864と同一の画素値で下方向に連続して存在する画素864を特定する。そして、画像処理装置101は、特定した画素864の個数「1」を算出する。
次に、画像処理装置101は、特定した画素864から、画素864と同一の画素値で右方向に連続して存在し、チェック済みではない画素864を特定する。そして、画像処理装置101は、特定した画素864の個数「1」を算出する。
次に、画像処理装置101は、領域ID「2」に対応付けて、サブ領域ID「0」と、画素値(0,0,255)とを記憶する。また、画像処理装置101は、領域ID「2」に対応付けて、選択した画素の位置「6,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「1」とを、第7の領域を表す情報として記憶する。そして、画像処理装置101は、特定した画素をチェック済みに設定する。
次に、画像処理装置101は、走査順に画素を選択するが、選択した画像800の画素865,866がチェック済みのため、画素865,866についての処理を行わない。
そして、画像処理装置101は、選択を終了すると、領域IDに対応付けられた画素の位置と、下方向に連続して存在する画素の個数と、右方向に連続して存在する画素の個数とに基づいて、位置情報302を作成する。
画像処理装置101は、具体的には、同一の領域ID「0」に対応付けられた複数の情報が表す、第1の領域と、第4の領域と、第5の領域との各々の領域を結合して、領域Aとする。ここで、画像処理装置101は、第1の領域の右方向に、第4の領域と第5の領域とが連続して存在するため、第1の領域を表す情報に第4の領域を表す情報と第5の領域を表す情報とを結合する。
画像処理装置101は、より具体的には、領域ID「0」に対応付けられた第1の領域を表す情報のうちの右方向に連続して存在する画素の個数「1,3,3,1,4,3」に、第4の領域と第5の領域とに含まれる画素の個数を加算する。これにより、画像処理装置101は、右方向に連続して存在する画素の個数「1,3,3,6,4,3」を作成して、第4の領域を表す情報と第5の領域を表す情報とを削除する。
次に、画像処理装置101は、第1の領域を表す情報を含む、領域Aを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「0」と、画素の位置「1,1」と、下方向に連続して存在する画素の個数「6」と、右方向に連続して存在する画素の個数「1,3,3,6,4,3」とを対応付けた情報を、領域Aを表す情報として作成する。そして、画像処理装置101は、作成した領域Aを表す情報を、位置情報302に追加する。
ここでは、画像処理装置101が、いずれかの領域を表す情報と、いずれかの領域の右方向に連続して存在する他の領域を表す情報とを結合することについて説明したが、これに限らない。例えば、画像処理装置101は、いずれかの領域を表す情報と、いずれかの領域と左端の列が同列であって下方向に連続して存在する他の領域を表す情報とを結合してもよい。
また、画像処理装置101は、領域ID「0」と、領域ID「0」に対応付けられたサブ領域ID「0」と、画素値(255,0,0)とを対応付けた情報を、領域Aのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。さらに、画像処理装置101は、領域ID「0」と、領域ID「0」に対応付けられたサブ領域ID「1」と、画素値(255,255,0)と、区域「4,2,2,1」とを対応付けた情報を、領域Aのうちのサブ領域ID「1」の領域の色彩を表す情報として、色情報401に追加する。
また、画像処理装置101は、同一の領域ID「1」に対応付けられた複数の情報が表す、第2の領域と、第3の領域との各々の領域を結合して、領域Bとする。次に、画像処理装置101は、第2の領域を表す情報と、第3の領域を表す情報とを含む、領域Bを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「1」と、画素の位置「1,2」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「5」とを対応付けた情報を、領域Bを表す情報として、位置情報302に追加する。さらに、画像処理装置101は、領域ID「1」と、画素の位置「2,4」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「3,3」とを対応付けた情報を、領域Bを表す情報として、位置情報302に追加する。
また、画像処理装置101は、領域ID「1」と、領域ID「1」に対応付けられたサブ領域ID「0」と、画素値(0,255,0)とを対応付けた情報を、領域Bのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。
また、画像処理装置101は、同一の領域ID「2」に対応付けられた複数の情報が表す、第6の領域と、第7の領域とを結合して、領域Cとする。次に、画像処理装置101は、第6の領域を表す情報と、第7の領域を表す情報とを含む、領域Cを表す情報を作成する。画像処理装置101は、より具体的には、領域ID「2」と、画素の位置「5,5」と、下方向に連続して存在する画素の個数「2」と、右方向に連続して存在する画素の個数「2,2」とを対応付けた情報を、領域Cを表す情報として、位置情報302に追加する。さらに、画像処理装置101は、領域ID「2」と、画素の位置「6,4」と、下方向に連続して存在する画素の個数「1」と、右方向に連続して存在する画素の個数「1」とを対応付けた情報を、領域Cを表す情報として、位置情報302に追加する。
また、画像処理装置101は、領域ID「2」と、領域ID「2」に対応付けられたサブ領域ID「0」と、画素値(0,0,255)とを対応付けた情報を、領域Cのうちのサブ領域ID「0」の領域の色彩を表す情報として、色情報401に追加する。これにより、画像処理装置101は、画像情報より情報量を削減した位置情報302を作成することができ、位置情報302と組み合わせることにより画像情報を復元することができる色情報401を作成することができる。
ここでは、画像処理装置101が、対応情報に基づいて領域IDを特定する場合について説明したが、これに限らない。例えば、画像処理装置101は、画素値から領域IDを算出する算出式に基づいて、画素値に対応する領域IDを特定してもよい。算出式は、例えば、画素値のRGBのうちのRを64で除算したときの商の整数部分を領域IDとして算出する式である。また、算出式は、例えば、画素値のRGBの平均値を64で除算したときの商の整数部分を領域IDとして算出する式であってもよい。
(送信するデータ量の具体例)
次に、画像処理装置101が送信するデータ量の具体例について説明する。ここで、画像処理装置101が、画像情報を符号化して送信する場合と、位置情報302と色情報401とを符号化して送信する場合とにおける、送信するデータ量の差について説明する。
まず、風景の画像を例に挙げて説明する。風景の画像は、例えば、グラデーションを含み、木々などの物体が表現されるという特徴を有する画像である。風景の画像の画像情報を符号化した場合、例えば、データ量は1074860Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、370812Byteと684707Byteになる。
次に、箱の画像を例に挙げて説明する。箱の画像は、色数が少なく、なだらかなグラデーションを含むという特徴を有する画像である。箱の画像の画像情報を符号化した場合、例えば、データ量は555494Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、179997Byteと467828Byteになる。
次に、回路の画像を例に挙げて説明する。回路の画像は、例えば、グラデーションが少なく、配線などがエッジで表現されるという特徴を有する画像である。回路の画像の画像情報を符号化した場合、例えば、データ量は15382Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、15366Byteと58Byteになる。
次に、表の画像を例に挙げて説明する。表の画像は、グラデーションがなく、文字や数字が表現されるという特徴を有する画像である。表の画像の画像情報を符号化した場合、例えば、データ量は26288Byteになる。一方で、画像情報から位置情報302と色情報401とを作成して、位置情報302と色情報401とを符号化した場合、例えば、データ量は、26157Byteと11544Byteになる。
このように、画像が有する特徴に応じて位置情報302のデータ量が異なるものの、画像情報を符号化した場合のデータ量より位置情報302を符号化した場合のデータ量の方が減少する。このため、情報処理装置102は、画像情報を受信して画像情報に基づいて画面を更新する場合よりも、符号化した位置情報302を受信して位置情報302に基づいて画面を更新する場合の方が、早い時刻に画面を更新することができる。これにより、情報処理装置102のユーザは、早めに同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、位置情報302と、色情報401とを別々に送信することにより、単位時間あたりに送信するデータ量を低減することができ、バーストトラフィックを防止することができる。
(送信処理手順の一例)
次に、図9を用いて、画像処理装置101の送信処理手順の一例について説明する。
図9は、送信処理手順の一例を示すフローチャートである。図9において、まず、画像処理装置101は、一定時間ごとに画像情報を取得する(ステップS901)。次に、画像処理装置101は、取得した画像情報に基づいて、位置情報302を作成する(ステップS902)。そして、画像処理装置101は、取得した画像情報に基づいて、色情報401を作成する(ステップS903)。位置情報302と色情報401とを作成する作成処理手順の一例については、図10を用いて後述する。
次に、画像処理装置101は、色情報401を送信するか否かを判定する(ステップS904)。色情報401を送信するか否かを判定する判定処理については、図12を用いて後述する。ここで、送信する場合(ステップS904:Yes)、画像処理装置101は、位置情報302を含み、色情報フラグ301に「1」が設定された位置情報パケット300を作成する(ステップS905)。次に、画像処理装置101は、位置情報パケット300を符号化して、情報処理装置102に送信する(ステップS906)。
そして、画像処理装置101は、色情報401を含む色情報パケット400を作成する(ステップS907)。次に、画像処理装置101は、色情報パケット400を符号化して、情報処理装置102に送信する(ステップS908)。そして、画像処理装置101は、ステップS901の処理に戻る。
一方で、送信しない場合(ステップS904:No)、画像処理装置101は、位置情報302を含み、色情報フラグ301に「0」が設定された位置情報パケット300を作成する(ステップS909)。次に、画像処理装置101は、位置情報パケット300を符号化して、情報処理装置102に送信する(ステップS910)。そして、画像処理装置101は、ステップS901の処理に戻る。
これにより、画像処理装置101は、情報処理装置102に位置情報パケット300を送信して、情報処理装置102に画像を分割した複数の領域の各々の領域と同一形状の領域を表示させることができる。また、画像処理装置101は、情報処理装置102に位置情報パケット300と色情報パケット400とを送信して、情報処理装置102に画像を表示させることができる。
(作成処理手順の一例)
次に、図10を用いて、図9のステップS902に示した、位置情報302を作成する作成処理手順の一例について説明する。
図10は、作成処理手順の一例を示すフローチャートである。図10において、画像処理装置101は、画像情報を複数のブロックの各々のブロックを表す画像情報に分割する(ステップS1001)。次に、画像処理装置101は、いずれかのブロックの画像情報を選択する(ステップS1002)。
そして、画像処理装置101は、選択したブロック内の画素を走査順に選択する(ステップS1003)。次に、画像処理装置101は、選択した画素がチェック済みの画素か否かを判定する(ステップS1004)。ここで、チェック済みの画素である場合(ステップS1004:Yes)、画像処理装置101は、ステップS1003の処理に戻る。
一方で、チェック済みの画素ではない場合(ステップS1004:No)、画像処理装置101は、選択した画素、または選択した画素から連続して存在する画素のうち、少なくとも選択した画素を含む、画像における領域を特定する(ステップS1005)。領域を特定するチェック処理手順の一例は、図11を用いて後述する。
次に、画像処理装置101は、すべての画素がチェック済みか否かを判定する(ステップS1006)。ここで、チェック済みではない画素がある場合(ステップS1006:No)、画像処理装置101は、ステップS1003の処理に戻る。
一方で、すべての画素がチェック済みである場合(ステップS1006:Yes)、画像処理装置101は、各々の領域の領域IDごとに各々の領域を表す情報を作成して、位置情報302として出力する(ステップS1007)。次に、画像処理装置101は、すべてのブロックが選択済みか否かを判定する(ステップS1008)。ここで、選択済みではないブロックがある場合(ステップS1008:No)、画像処理装置101は、ステップS1001の処理に戻る。
一方で、すべてのブロックが選択済みである場合(ステップS1008:Yes)、画像処理装置101は、作成処理を終了する。これにより、画像処理装置101は、位置情報302と色情報401とを作成することができる。
(チェック処理手順の一例)
次に、図11を用いて、図10のステップS1005に示した、チェック処理手順の一例について説明する。
図11は、チェック処理手順の一例を示すフローチャートである。図11において、画像処理装置101は、画素値に基づいて領域IDを特定する(ステップS1101)。
次に、画像処理装置101は、サブ領域IDを付与する(ステップS1102)。そして、画像処理装置101は、選択した画素から下方向に、選択した画素と同一の画素値で連続して存在する画素を特定し、特定した画素の個数を算出する(ステップS1103)。
次に、画像処理装置101は、算出した個数を、領域IDとサブ領域IDとに対応付けて記憶する(ステップS1104)。そして、画像処理装置101は、特定した、下方向に存在する各々の画素から右方向に、各々の画素と同一の画素値で連続して存在する画素を特定し、特定した画素の個数を算出する(ステップS1105)。
次に、画像処理装置101は、算出した個数を、領域IDとサブ領域IDとに対応付けて記憶する(ステップS1106)。そして、画像処理装置101は、特定した画素をチェック済みに設定して(ステップS1107)、チェック処理を終了する。これにより、画像処理装置101は、画像を複数の領域に分割することができる。
(判定処理手順の一例)
次に、図12を用いて、図9のステップS904に示した、判定処理手順の一例について説明する。
図12は、判定処理手順の一例を示すフローチャートである。図12において、画像処理装置101は、画像情報と、ネットワーク情報と、ユーザ操作情報とを取得する(ステップS1201)。次に、画像処理装置101は、ネットワーク情報に基づいて、ネットワークに空きがあるか否かを判定する(ステップS1202)。ここで、ネットワークに空きがあるとは、例えば、ネットワーク情報が表す通信時間が所定値以下であることである。
ここで、ネットワークに空きがない場合(ステップS1202:No)、画像処理装置101は、ユーザ操作情報に基づいて、最後のユーザ操作から200ms以上経過したか否かを判定する(ステップS1203)。最後のユーザ操作とは、例えば、画像の表示要求になる、情報処理装置102のユーザの操作入力である。また、最後のユーザ操作とは、画像の表示要求になる、画像処理装置101のユーザの操作入力であってもよい。ここで、経過していない場合(ステップS1203:No)、画像処理装置101は、色情報401を送信しないと判定して(ステップS1204)、判定処理を終了する。
一方で、ステップS1202において、ネットワークに空きがある場合(ステップS1202:Yes)、または、ステップS1203において、経過している場合(ステップS1203:Yes)、画像処理装置101は、色情報401を送信すると判定して(ステップS1205)、判定処理を終了する。
これにより、画像処理装置101は、画像処理装置101と情報処理装置102との間のネットワークの帯域が狭い場合は、色情報401を送信しないことにして、ネットワークのトラフィックを低減することができる。また、画像処理装置101は、情報処理装置102の画面が所定時間以上更新されていない場合は、色情報401を送信することにして、情報処理装置102のユーザに画像を閲覧させることができる。
(表示処理手順の一例)
次に、図13を用いて、情報処理装置102の表示処理手順の一例について説明する。
図13は、表示処理手順の一例を示すフローチャートである。図13において、情報処理装置102は、画像処理装置101からパケットを受信したか否かを判定する(ステップS1301)。ここで、パケットを受信していない場合(ステップS1301:No)、情報処理装置102は、ステップS1301の処理に戻る。
一方で、パケットを受信した場合(ステップS1301:Yes)、情報処理装置102は、受信したパケットに含まれる識別情報に基づいて、受信したパケットが位置情報パケット300であるか否かを判定する(ステップS1302)。
ここで、位置情報パケット300である場合(ステップS1302:Yes)、情報処理装置102は、色情報フラグ301に「1」が設定されているか否かを判定する(ステップS1303)。ここで、色情報フラグ301に「1」が設定されている場合(ステップS1303:Yes)、情報処理装置102は、ステップS1301の処理に戻る。
一方で、色情報フラグ301に「0」が設定されている場合(ステップS1303:No)、情報処理装置102は、受信した位置情報パケット300から位置情報302を抽出する(ステップS1304)。次に、情報処理装置102は、抽出した位置情報302に基づいて、画像における領域を表示する(ステップS1305)。そして、情報処理装置102は、ステップS1308の処理に移行する。
ステップS1302において、色情報パケット400である場合(ステップS1302:No)、情報処理装置102は、先に受信した位置情報パケット300から位置情報302を抽出し、後に受信した色情報パケット400から色情報401を抽出する(ステップS1306)。次に、情報処理装置102は、位置情報302と色情報401とに基づいて、画像を表示する(ステップS1307)。
そして、情報処理装置102は、ネットワーク情報を画像処理装置101に送信し(ステップS1308)、ステップS1301の処理に戻る。これにより、情報処理装置102は、位置情報302を受信した場合に、各々の領域と同一形状の領域を画面に表示することができ、情報処理装置102のユーザに同一形状の領域の輪郭を閲覧させて画像の内容を把握させることができる。また、情報処理装置102は、色情報401を受信した場合に、画像を画面に表示することができ、情報処理装置102のユーザに画像を閲覧させることができる。
以上説明したように、画像処理装置101によれば、画像を複数の領域に分割し、各々の領域と同一形状の領域の位置を示す位置情報302を作成し、位置情報302を情報処理装置102に送信することができる。これにより、画像処理装置101は、情報処理装置102に送信するデータ量を低減し、情報処理装置102に送信する時間を短縮することができる。このため、情報処理装置102は、画像情報を受信する場合よりも、操作入力を送信してから位置情報103を受信して画面を更新するまでにかかる時間を短縮することができる。そして、情報処理装置102は、位置情報103を受信して同一形状の領域を画面に表示することができる。このため、情報処理装置102のユーザは、情報処理装置102の画面に同一形状の領域が表示されるため、同一形状の領域の輪郭を閲覧して画像の内容を把握することができる。また、画像処理装置101は、情報処理装置102に送信する単位時間当たりのデータ量を低減して、バーストトラフィックの発生を抑制することができる。
また、画像処理装置101によれば、画面上に表示される同一形状の領域に含まれる画素の画素値を示す色情報401を作成し、位置情報302を送信する処理を実行した後に、色情報401を情報処理装置102に送信することができる。これにより、情報処理装置102は、位置情報302と色情報401とに基づいて、画像を画面に表示することができる。このため、情報処理装置102のユーザは、同一形状の領域の輪郭を閲覧して画像を把握することができる。
また、画像処理装置101によれば、情報処理装置102とのデータ通信にかかる通信時間に基づいて、色情報401を送信するか否かを判定し、色情報401を送信すると判定したことに応じて、色情報401を送信することができる。これにより、画像処理装置101は、情報処理装置102との間のネットワークの品質が悪い場合などには色情報401を送信せずに、ネットワークトラフィックを抑制することができる。
また、画像処理装置101によれば、情報処理装置102から画像の表示要求を受信してからの経過時間に基づいて、色情報401を送信するか否かを判定し、色情報401を送信すると判定したことに応じて、色情報401を送信することができる。これにより、画像処理装置101は、画像に変更がない場合などには色情報401を送信して、情報処理装置102の画面に画像を表示させることができる。
また、画像処理装置101によれば、色情報401を送信するか否かを判定した結果を位置情報302に付加して送信することができる。これにより、情報処理装置102は、画像処理装置101から色情報401が送信されるか否かを判定することができ、色情報401が送信されないときは位置情報302に基づいて同一形状の領域を画面に表示することができる。一方で、情報処理装置102は、色情報401が送信されるときは色情報401を受信するまで待機し、色情報401を受信してから位置情報302と色情報401とに基づいて画像を画面に表示することができる。このため、情報処理装置102のユーザは、本来の画像のみを閲覧することができる。
なお、本実施の形態で説明した画像処理方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本画像処理プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本画像処理プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、
分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、
作成した前記位置情報を前記情報処理装置に送信する、
処理を実行させることを特徴とする画像処理プログラム。
(付記2)前記コンピュータに、
前記各々の領域に含まれる画素の画素値に基づいて、前記画面上に表示される前記同一形状の領域に含まれる画素の画素値を示す色情報を作成し、
前記位置情報を送信する処理を実行した後に、前記色情報を前記情報処理装置に送信する、
処理を実行させることを特徴とする付記1に記載の画像処理プログラム。
(付記3)前記コンピュータに、
前記コンピュータと前記情報処理装置とのデータ通信にかかる通信時間を取得し、
取得した前記通信時間に基づいて、前記色情報を送信するか否かを判定する処理を実行させ、
前記色情報を送信する処理は、前記色情報を送信すると判定したことに応じて、前記色情報を送信することを特徴とする付記2に記載の画像処理プログラム。
(付記4)前記コンピュータに、
前記情報処理装置から前記画像の表示要求を受信してからの経過時間を計測し、
計測した前記経過時間に基づいて、前記色情報を送信するか否かを判定する処理を実行させ、
前記色情報を送信する処理は、前記色情報を送信すると判定したことに応じて、前記色情報を送信することを特徴とする付記2または3に記載の画像処理プログラム。
(付記5)前記位置情報を送信する処理は、前記色情報を送信するか否かを判定した結果を前記位置情報に付加して送信することを特徴とする付記3または4に記載の画像処理プログラム。
(付記6)前記コンピュータに、
前記情報処理装置が実行可能な復元方法に対応する符号化方法に基づいて、前記位置情報を符号化し、
前記符号化方法に基づいて、前記色情報を符号化する処理を実行させ、
前記位置情報を送信する処理は、符号化した前記位置情報を送信し、
前記色情報を送信する処理は、符号化した前記色情報を送信することを特徴とする付記2〜5のいずれか一つに記載の画像処理プログラム。
(付記7)コンピュータに、
前記コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、
受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する、
処理を実行させることを特徴とする表示プログラム。
(付記8)前記コンピュータに、
前記画面上に表示される前記同一形状の領域に含まれる画素の画素値を示す色情報を、前記画像処理装置から受信し、
前記位置情報と、受信した前記色情報とに基づいて、前記画面上に前記画像を表示する、
処理を実行させることを特徴とする付記7に記載の表示プログラム。
(付記9)前記位置情報を受信する処理は、前記画像処理装置が前記色情報を送信するか否かを判定した結果が付加された前記位置情報を、前記画像処理装置から受信し、
前記同一形状の領域を表示する処理は、前記色情報を送信しないと判定した結果が付加された前記位置情報を受信したことに応じて、前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示し、
前記画像を表示する処理は、前記色情報を送信すると判定した結果が付加された前記位置情報を受信したことに応じて、前記位置情報と前記色情報とに基づいて、前記画面上に前記画像を表示する、
ことを特徴とする付記8に記載の表示プログラム。
(付記10)コンピュータが、
ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、
分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、
作成した前記位置情報を前記情報処理装置に送信する、
処理を実行することを特徴とする画像処理方法。
(付記11)コンピュータが、
前記コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、
受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する、
処理を実行することを特徴とする表示方法。
(付記12)ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割する分割部と、
前記分割部によって分割された前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成する作成部と、
前記作成部によって作成された前記位置情報を前記情報処理装置に送信する送信部と、
を有することを特徴とする画像処理装置。
(付記13)画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信する受信部と、
前記受信部によって受信された前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する表示部と、
を有することを特徴とする情報処理装置。
101 画像処理装置
102 情報処理装置
501 分割部
502 第1の作成部
503 取得部
504 計測部
505 判定部
506 第2の作成部
507 第1の送信部
508 第2の送信部
601 受信部
602 表示部

Claims (13)

  1. コンピュータに、
    ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、
    分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、
    作成した前記位置情報を前記情報処理装置に送信する、
    処理を実行させることを特徴とする画像処理プログラム。
  2. 前記コンピュータに、
    前記各々の領域に含まれる画素の画素値に基づいて、前記画面上に表示される前記同一形状の領域に含まれる画素の画素値を示す色情報を作成し、
    前記位置情報を送信する処理を実行した後に、前記色情報を前記情報処理装置に送信する、
    処理を実行させることを特徴とする請求項1に記載の画像処理プログラム。
  3. 前記コンピュータに、
    前記コンピュータと前記情報処理装置とのデータ通信にかかる通信時間を取得し、
    取得した前記通信時間に基づいて、前記色情報を送信するか否かを判定する処理を実行させ、
    前記色情報を送信する処理は、前記色情報を送信すると判定したことに応じて、前記色情報を送信することを特徴とする請求項2に記載の画像処理プログラム。
  4. 前記コンピュータに、
    前記情報処理装置から前記画像の表示要求を受信してからの経過時間を計測し、
    計測した前記経過時間に基づいて、前記色情報を送信するか否かを判定する処理を実行させ、
    前記色情報を送信する処理は、前記色情報を送信すると判定したことに応じて、前記色情報を送信することを特徴とする請求項2または3に記載の画像処理プログラム。
  5. 前記位置情報を送信する処理は、前記色情報を送信するか否かを判定した結果を前記位置情報に付加して送信することを特徴とする請求項3または4に記載の画像処理プログラム。
  6. 前記コンピュータに、
    前記情報処理装置が実行可能な復元方法に対応する符号化方法に基づいて、前記位置情報を符号化し、
    前記符号化方法に基づいて、前記色情報を符号化する処理を実行させ、
    前記位置情報を送信する処理は、符号化した前記位置情報を送信し、
    前記色情報を送信する処理は、符号化した前記色情報を送信することを特徴とする請求項2〜5のいずれか一つに記載の画像処理プログラム。
  7. コンピュータに、
    前記コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、
    受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する、
    処理を実行させることを特徴とする表示プログラム。
  8. 前記コンピュータに、
    前記画面上に表示される前記同一形状の領域に含まれる画素の画素値を示す色情報を、前記画像処理装置から受信し、
    前記位置情報と、受信した前記色情報とに基づいて、前記画面上に前記画像を表示する、
    処理を実行させることを特徴とする請求項7に記載の表示プログラム。
  9. 前記位置情報を受信する処理は、前記画像処理装置が前記色情報を送信するか否かを判定した結果が付加された前記位置情報を、前記画像処理装置から受信し、
    前記同一形状の領域を表示する処理は、前記色情報を送信しないと判定した結果が付加された前記位置情報を受信したことに応じて、前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示し、
    前記画像を表示する処理は、前記色情報を送信すると判定した結果が付加された前記位置情報を受信したことに応じて、前記位置情報と前記色情報とに基づいて、前記画面上に前記画像を表示する、
    ことを特徴とする請求項8に記載の表示プログラム。
  10. コンピュータが、
    ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割し、
    分割した前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成し、
    作成した前記位置情報を前記情報処理装置に送信する、
    処理を実行することを特徴とする画像処理方法。
  11. コンピュータが、
    前記コンピュータの画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信し、
    受信した前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する、
    処理を実行することを特徴とする表示方法。
  12. ネットワークを介して接続される情報処理装置の画面の表示対象となる画像に含まれる画素の画素値に基づいて、前記画像を複数の領域に分割する分割部と、
    前記分割部によって分割された前記複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を作成する作成部と、
    前記作成部によって作成された前記位置情報を前記情報処理装置に送信する送信部と、
    を有することを特徴とする画像処理装置。
  13. 画面の表示対象となる画像から分割された複数の領域の各々の領域の前記画像における位置に対応する前記画面上の位置に表示される、前記各々の領域と同一形状の領域の位置を示す位置情報を、画像処理装置から受信する受信部と、
    前記受信部によって受信された前記位置情報が示す前記画面上の位置に前記同一形状の領域を表示する表示部と、
    を有することを特徴とする情報処理装置。
JP2015557610A 2014-01-14 2014-01-14 画像処理プログラム、画像処理方法、画像処理装置、および情報処理装置 Pending JPWO2015107622A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/050486 WO2015107622A1 (ja) 2014-01-14 2014-01-14 画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置

Publications (1)

Publication Number Publication Date
JPWO2015107622A1 true JPWO2015107622A1 (ja) 2017-03-23

Family

ID=53542546

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015557610A Pending JPWO2015107622A1 (ja) 2014-01-14 2014-01-14 画像処理プログラム、画像処理方法、画像処理装置、および情報処理装置

Country Status (5)

Country Link
US (1) US20160309061A1 (ja)
EP (1) EP3096509A4 (ja)
JP (1) JPWO2015107622A1 (ja)
CN (1) CN105900413A (ja)
WO (1) WO2015107622A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110634098A (zh) * 2019-06-13 2019-12-31 眸芯科技(上海)有限公司 无损稀疏图像的显示方法、装置及系统
CN110450543B (zh) * 2019-08-23 2020-09-01 深圳市汉森软件有限公司 喷头出墨控制方法、装置及计算机可读存储介质
CN112351333A (zh) * 2020-11-04 2021-02-09 深圳Tcl新技术有限公司 一种数据传输方法、设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001273231A (ja) * 2000-01-17 2001-10-05 Fuji Photo Film Co Ltd 画像データ転送制御方法および装置並びに記録媒体
JP2003513538A (ja) * 1999-10-22 2003-04-08 アクティブスカイ,インコーポレイテッド オブジェクト指向ビデオシステム
JP2006148282A (ja) * 2004-11-17 2006-06-08 National Institute Of Information & Communication Technology オブジェクト品質制御方法および装置
JP2007235961A (ja) * 2006-02-28 2007-09-13 Ricoh Co Ltd 圧縮データ画像オブジェクトの特徴抽出のための方法、情報処理装置及びコンピュータプログラム
JP2008147893A (ja) * 2006-12-08 2008-06-26 Ricoh Co Ltd クライアントサーバシステム及び遠隔操作システム
JP2009522939A (ja) * 2006-01-06 2009-06-11 グーグル インク. 動的メディア供給インフラストラクチャ
JP2009260820A (ja) * 2008-04-18 2009-11-05 Yamaha Corp 通信システムおよび通信方法
JP2011234230A (ja) * 2010-04-28 2011-11-17 Canon Inc 画像処理装置、画像処理方法、プログラム、および記憶媒体

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6560285B1 (en) * 1998-03-30 2003-05-06 Sarnoff Corporation Region-based information compaction as for digital images
JP2000295311A (ja) 1999-04-09 2000-10-20 Canon Inc ネットワーク制御方法、ネットワークシステム及びコンピュータ装置
JP4035456B2 (ja) 2002-11-27 2008-01-23 キヤノン株式会社 画像圧縮方法、画像圧縮装置
US20070133899A1 (en) * 2005-12-09 2007-06-14 Rai Barinder S Triggering an image processing function
JP2008042241A (ja) 2006-08-01 2008-02-21 Canon Inc 画像形成装置、及び、その制御方法
JP2008234389A (ja) 2007-03-22 2008-10-02 Nec Corp カラー画像データ転送システムおよびそれに使用されるクライアント
US8111919B2 (en) * 2008-02-04 2012-02-07 Eyep, Inc. Feature encoding system and method for connected component labeling

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003513538A (ja) * 1999-10-22 2003-04-08 アクティブスカイ,インコーポレイテッド オブジェクト指向ビデオシステム
JP2001273231A (ja) * 2000-01-17 2001-10-05 Fuji Photo Film Co Ltd 画像データ転送制御方法および装置並びに記録媒体
JP2006148282A (ja) * 2004-11-17 2006-06-08 National Institute Of Information & Communication Technology オブジェクト品質制御方法および装置
JP2009522939A (ja) * 2006-01-06 2009-06-11 グーグル インク. 動的メディア供給インフラストラクチャ
JP2007235961A (ja) * 2006-02-28 2007-09-13 Ricoh Co Ltd 圧縮データ画像オブジェクトの特徴抽出のための方法、情報処理装置及びコンピュータプログラム
JP2008147893A (ja) * 2006-12-08 2008-06-26 Ricoh Co Ltd クライアントサーバシステム及び遠隔操作システム
JP2009260820A (ja) * 2008-04-18 2009-11-05 Yamaha Corp 通信システムおよび通信方法
JP2011234230A (ja) * 2010-04-28 2011-11-17 Canon Inc 画像処理装置、画像処理方法、プログラム、および記憶媒体

Also Published As

Publication number Publication date
CN105900413A (zh) 2016-08-24
EP3096509A1 (en) 2016-11-23
EP3096509A4 (en) 2016-12-28
WO2015107622A1 (ja) 2015-07-23
US20160309061A1 (en) 2016-10-20

Similar Documents

Publication Publication Date Title
JP5643574B2 (ja) 画像処理装置及び画像処理方法
CN106663329B (zh) 图形基元和颜色通道
EP3568833B1 (en) Methods for dynamic image color remapping using alpha blending
RU2439676C2 (ru) Передача символов в подпиксельном разрешении
JP5939154B2 (ja) 画像処理装置およびコンピュータプログラム
JP5995864B2 (ja) 表示データの符号化方法及びシステム
KR101869302B1 (ko) 래스터 이미지 변환 장치, 화상독취장치, 래스터 이미지 변환 방법 및 컴퓨터 판독가능 기록매체
JP5183286B2 (ja) 文字表示装置
JP2012199652A (ja) 画像処理装置、方法及びプログラム
US20150254804A1 (en) Image processing device
WO2015107622A1 (ja) 画像処理プログラム、表示プログラム、画像処理方法、表示方法、画像処理装置、および情報処理装置
US9384562B2 (en) Methods for visual content processing, and systems and computer program codes thereto
WO2016016607A1 (en) Managing display data for display
JP2011249947A (ja) 画像減色装置、方法及びプログラム
JP6837860B2 (ja) 画像表示制御装置、画像表示制御方法、及び、画像表示制御プログラム
JP5457123B2 (ja) Lutを生成する方法、lutから輝度値を読み出す方法、プログラム及び装置
US20150379750A1 (en) Image processing device, image processing method, information storage medium, and program
JP2011138393A (ja) 画像処理装置および画像処理方法
JP2016139360A (ja) コンピュータプログラム及び制御装置
JP6707262B2 (ja) 画像形成装置およびプログラム
JP6292061B2 (ja) 情報処理装置およびプログラム
JP2023086279A (ja) 印刷装置
JP2009122841A (ja) 画像一覧イメージ構築装置、記録媒体及び画像形成装置
JP6140973B2 (ja) 画像処理装置、画像処理方法ならびにプログラム
CN114125013A (zh) 一种鼠标指针渲染方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171031

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180515