JP2004072694A - 情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム - Google Patents
情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム Download PDFInfo
- Publication number
- JP2004072694A JP2004072694A JP2002233278A JP2002233278A JP2004072694A JP 2004072694 A JP2004072694 A JP 2004072694A JP 2002233278 A JP2002233278 A JP 2002233278A JP 2002233278 A JP2002233278 A JP 2002233278A JP 2004072694 A JP2004072694 A JP 2004072694A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- image
- information
- viewpoint
- resolution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
- H04N19/64—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
- H04N19/647—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission using significance based coding, e.g. Embedded Zerotrees of Wavelets [EZW] or Set Partitioning in Hierarchical Trees [SPIHT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/698—Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Studio Devices (AREA)
- Image Processing (AREA)
- Closed-Circuit Television Systems (AREA)
Abstract
【課題】データ量を抑制し、即時性を図るようにする。
【解決手段】視点情報により、現在の視点「N」の画像データが、解像度1でエンコードされるとした場合、「N」の左右隣の「NW」および「NE」の画像データは、1/2の解像度でエンコードされ、「NW」の左隣の「W」および「NE」の右隣の「E」の画像データは、1/4の解像度でエンコードされ、「W」の左隣の「SW」および「E」の右隣の「SE」の画像データは、1/8の解像度でエンコードされ、「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像データは、1/16の解像度でエンコードされる。本発明は、ネットワークを介して、全方位の画像の画像データを提供する全方位画像提供システムに適用することができる。
【選択図】 図6
【解決手段】視点情報により、現在の視点「N」の画像データが、解像度1でエンコードされるとした場合、「N」の左右隣の「NW」および「NE」の画像データは、1/2の解像度でエンコードされ、「NW」の左隣の「W」および「NE」の右隣の「E」の画像データは、1/4の解像度でエンコードされ、「W」の左隣の「SW」および「E」の右隣の「SE」の画像データは、1/8の解像度でエンコードされ、「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像データは、1/16の解像度でエンコードされる。本発明は、ネットワークを介して、全方位の画像の画像データを提供する全方位画像提供システムに適用することができる。
【選択図】 図6
Description
【0001】
【発明の属する技術分野】
本発明は、情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関し、特に、データ量を抑制し、即時性を図るようにした情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
任意の位置を中心として360度全方向を撮影した「全方位の画像」をユーザが見る場合、n台のカメラを用いて、全方位の画像を撮影したとすると、ユーザは、n個の画像の中から1つの画像を選択することになる。すなわち、全方位の画像の画像データが記憶されている記憶装置と、全方位の画像の画像データを再生する再生装置との間のネットワークには、実際にユーザが見る画像の画像データのn倍の膨大な情報量の画像データが流れることになる。なお、1つの撮影対象に対して全周囲方向から撮影する「Omni−Viewにおける画像」についても同様となる。
【0003】
それに対して、特開平6−124328号公報には、ユーザの視点情報に基づいて、複数の画像データを撮影時のデータと共に、画像記録媒体に圧縮して記録し、その画像記録媒体から、必要な画像データのみを読み出すことにより、ユーザの視点の自由な動きに対応するようにすることが提案されている。しかしながら、この場合、この画像記録媒体に記録される画像データは、圧縮されているとしても、実際に必要な画像データに比して、膨大な情報量となる。
【0004】
また、特開2000−132673号公報や特開2001−8232号公報には、撮影された画像の画像データを記憶装置に記憶し、再生装置から受け取った視点情報に基づいて、n個の画像データの中から必要となる画像データを記憶装置で読み出し、再生装置に送信することにより、記憶装置と再生装置のネットワーク間の情報量を削減することが提案されている。
【0005】
【発明が解決しようとする課題】
しかしながら、この場合においては、必要な画像データしか送信されないため、ネットワークの応答遅延などにより、次の視点情報が再生装置から記憶装置に伝達されるまでに少なからず時間を要してしまう。したがって、画像の切り替えが遅くなってしまい、ユーザの急な視点移動要求に対して、迅速な切り替えができなかったり、または、一時的に画像が途切れてしまうといった課題があった。
【0006】
本発明はこのような状況に鑑みてなされたものであり、ネットワークの情報量を軽減し、スムーズな視点移動が可能な画像を提供できるようにするものである。
【0007】
【課題を解決するための手段】
本発明の情報提供システムは、情報提供装置は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理装置は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【0008】
本発明の情報提供システムの情報提供方法は、情報提供方法は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理方法は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【0009】
本発明の情報提供装置は、情報処理装置から視点情報を受信する受信手段と、受信手段により受信された視点情報に基づいて、全方位の画像の画像データを、受信手段により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコード手段と、エンコード手段によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信手段とを備えることを特徴とする。
【0010】
エンコード手段は、画像データをJPEG2000でエンコードするようにすることができる。
【0011】
エンコード手段は、第2の方位のうち、第1の方位からより離れた方位が、さらにより低い解像度となるように、全方位の画像の画像データをそれぞれエンコードするようにすることができる。
【0012】
解像度は、画素数または色数により設定されるようにすることができる。
【0013】
エンコード手段によりエンコードされた全方位の画像の画像データを記憶する記憶手段をさらに備えるようにすることができる。
【0014】
エンコード手段によりエンコードされた全方位の画像の画像データを、1ファイルの画像データに合成する合成手段をさらに備え、記憶手段は、合成手段により合成された1ファイルの画像データを記憶するようにすることができる。
【0015】
視点情報に基づいて、記憶手段により記憶された第2の方位の画像の画像データの解像度を、より低い解像度に変換する変換手段をさらに備え、送信手段は、変換手段により変換された全方位の画像の画像データを送信するようにすることができる。
【0016】
受信手段により、複数の情報処理装置から受信された視点情報に基づいて、複数の情報処理装置に送信する第2の方位の画像の画像データの解像度のうち、最も高い解像度を選択する選択手段をさらに備え、送信手段は、選択手段により選択された解像度以下の解像度の全方位の画像の画像データを送信するようにすることができる。
【0017】
本発明の情報提供装置の情報提供方法は、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【0018】
本発明の情報提供装置の記録媒体のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【0019】
本発明の情報提供装置のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとをコンピュータに実行させることを特徴とする。
【0020】
本発明の情報提供システムおよび方法においては、情報提供装置および方法により、情報処理装置により設定された視点情報が取得され、取得された視点情報に基づいて、全方位の画像の画像データが、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードされ、エンコードされた全方位の画像の画像データが、情報処理装置に送信される。そして、情報処理装置および方法により、受信された全方位の画像の画像データの中から視点情報に対応する画像データがデコードされ、デコードされた画像データが出力される。
【0021】
本発明の情報提供装置および方法、記録媒体、並びにプログラムにおいては、情報処理装置から受信された視点情報に基づいて、全方位の画像の画像データが、受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードされ、エンコードされた全方位の画像の画像データが情報処理装置に送信される。
【0022】
ネットワークとは、少なくとも2つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであってもよいし、1つの装置を構成している内部ブロックどうしであってもよい。
【0023】
【発明の実施の形態】
以下、図を参照して本発明の実施の形態について説明する。
【0024】
図1は、本発明を適用した全方位画像提供システムの構成例を表している。インターネット、LAN、WANなどを含むネットワーク1には、ユーザ端末2とユーザ端末2に対して全方位の画像の画像データを提供するサーバ3が接続されている。この例においては、ユーザ端末2およびサーバ3が1台ずつ示されているが、ネットワーク1には、任意の台数のユーザ端末2およびサーバ3が接続される。
【0025】
サーバ3には、全方位の画像を撮影する撮影装置4が接続されている。撮影装置4は、360度全方位を同時に撮影できる特殊なカメラであり、8台のカメラ5−1乃至5−8により構成される。サーバ3は、撮影装置4で撮影された画像の画像データをエンコードし、ネットワーク1を介して、ユーザ端末2に提供する。ユーザは、サーバ3から提供された画像データをユーザ端末2によりデコードし、全方位の画像のうち、希望する画像を見ることができる。
【0026】
図2は、撮影装置4の外観の構成を示す図である。撮影装置4は、カメラ部とミラー部により構成される。ミラー部は、正八角形の底面を持つ正八角錐の側面にそれぞれ取り付けられた平面鏡11−1乃至11−8により構成される。カメラ部を構成するカメラ5−1乃至5−8は、それぞれ対応する平面鏡11−1乃至11−8に映し出される画像を撮影する。すなわち、8台のカメラ5−1乃至5−8が各方向を撮影することにより、撮影装置4の360度全方位の画像が撮影される。
【0027】
したがって、この全方位画像提供システムにおいて、サーバ3は、撮影装置4で撮影された8方向の画像により構成される全方位の画像を、ネットワーク1を介して、ユーザ端末2に提供する。
【0028】
なお、図2においては、8台の平面鏡とカメラにより構成するようにしたが、ミラー部を構成する正多角形の数に対応する数の平面鏡とカメラにより構成されていれば、その数は、何台でもよく、8台以下(例えば、6台)としてもよいし、8台以上(例えば、10台)としてもよい。そして、全方位の画像も、そのカメラの台数分の画像により構成される。
【0029】
図3は、ユーザ端末2の構成を表している。図3において、CPU(Central Processing Unit)21は、ROM(Read Only Memory)22に記憶されているプログラム、または記憶部30からRAM(Random Access Memory)23にロードされたプログラムに従って各種の処理を実行する。RAM23にはまた、CPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0030】
CPU21、ROM22およびRAM23は、バス26を介して相互に接続されている。また、バス26には、視点指定部24、デコード部25、および入出力インタフェース27が接続されている。
【0031】
視点指定部24は、入力部28からのユーザの操作に基づいて決定された視点により視点情報が作成される。この視点情報は、デコード部25に出力されるとともに、通信部31およびネットワーク1を介して、サーバ3にも送信される。
【0032】
デコード部25は、視点指定部24により作成された視点情報に基づいて、通信部31により受信されたサーバ3からの全方位の画像データの中から、視点を中心とする画像の画像データをデコードし、出力部29に供給する。
【0033】
入出力インタフェース27には、ヘッドマウントディスプレイ、マウス、ジョイスティックなどよりなる入力部28、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部29、ハードディスクなどより構成される記憶部30、モデム、ターミナルアダプタなどより構成される通信部31が接続されている。通信部31は、ネットワーク1を介しての通信処理を行う。
【0034】
入出力インタフェース27にはまた、必要に応じてドライブ40が接続され、磁気ディスク41、光ディスク42、光磁気ディスク43、或いは半導体メモリ44などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部30にインストールされる。
【0035】
図4は、サーバ3の構成例を表している。CPU61乃至RAM63およびドライブ80乃至半導体メモリ84は、図3のユーザ端末2のCPU21乃至RAM23およびドライブ40乃至半導体メモリ44と基本的に同様の機能を有するものであるので、その説明は省略する。
【0036】
サーバ3のバス66には、視点決定部64、エンコード部65、および入出力インタフェース67が接続されている。
【0037】
視点決定部64は、ネットワーク1を介してユーザ端末2より送信された視点情報に基づいて視点を決定する。エンコード部65は、視点決定部64からの視点情報に基づいて、撮影装置4から入力された画像データを、例えば、JPEG2000の画像フォーマットでエンコードし、それぞれエンコードされた画像データを、全方位の画像の画像データとして、通信部71を介してユーザ端末2に送信する。
【0038】
入出力インタフェース67には、マウスやキーボードなどよりなる入力部68、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部69、ハードディスクなどより構成される記憶部70、モデム、ターミナルアダプタなどより構成される通信部71が接続されている。通信部71は、ネットワーク1を介しての通信処理を行う。
【0039】
次に、図5のフローチャートを参照して、全方位画像提供システムの通信処理について説明する。
【0040】
この全方位画像提供システムにおいて、全方位の画像は、図6に示されるように、例えば、8台のカメラ5−1乃至5−8により撮影される8つの方向の画像により構成される。この8つの方向は、上中央部の方向を「N」(北)とすると、「N」から時計回りの順に、「NE」(北東),「E」(東),「SE」(南東),「S」(南),「SW」(南西),「W」(西)および「NW」(北西)とされる。したがって、「N」と対角である下中央部の方向は、「S」とされ、「N」の右側方向は、「NE」とされ、「N」の左側方向は、「NW」とされる。なお、以降、説明の便宜上、これらの8方向を視点情報とする。
【0041】
ユーザによりユーザ端末2の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS1において、視点指定部24は、現在の視点を表す、視点情報を設定する。ステップS2において、通信部31は、視点指定部24により設定された視点情報(いまの場合、「N」)を、ネットワーク1を介して、サーバ3に送信する。
【0042】
サーバ3の通信部71は、ステップS11において、ユーザ端末2からの視点情報を受信し、視点決定部64に出力する。ステップS12において、エンコード部65は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図7のフローチャートを参照して説明する。
【0043】
ステップS31において、エンコード部65は、予め設定された解像度(高解像度)R1を、解像度Rとする。ステップS32において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より、8方向の画像データを受け取る。
【0044】
エンコード部65は、ステップS33において、視点決定部64からの視点情報に基づいて、エンコードする方向の画像を選択し、それをXとし、ステップS34において、Xの左隣の画像をYとする。いまの場合、現在の視点情報が「N」であるので、Xは、「N」の画像であり、Yは、「NW」の画像である。
【0045】
エンコード部65は、ステップS35において、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS36において、Xの画像データを、解像度Rでエンコードする。すなわち、「N」の画像データは、予め設定された解像度R1でエンコードされる。
【0046】
ステップS37において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「NE」の画像とされる。
【0047】
エンコード部65は、ステップS38において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS39において、Yの画像データを既にエンコードしたか否かを判断する。ステップS39において、まだ、Yの画像データをエンコードしていないと判断された場合、ステップS40において、エンコード部65は、Yの画像データを、解像度Rでエンコードする。すなわち、「NW」の画像データが、解像度R1の1/2の解像度で(画素数が1/2になるように)エンコードされる。
【0048】
エンコード部65は、ステップS41において、Yを1つ左の画像に移動させる。いまの場合、Yは、「W」の画像とされる。
【0049】
そして、エンコード部65は、ステップS35に戻り、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS36において、Xの画像データを、解像度Rでエンコードする。これにより、いまの場合、「NE」の画像データが、解像度R1の1/2の解像度でエンコードされる。
【0050】
ステップS37において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「E」の画像とされる。
【0051】
ステップS38において、現在の解像度(いまの場合、(1/2)解像度R1)を1/2にしたもの((1/4)解像度R1)を、新たな解像度Rとする。ステップS39において、エンコード部65は、Yの画像データを既にエンコードしたか否かを判断し、まだ、Yの画像データをエンコードしていないと判断した場合、ステップS40において、Yの画像データを、解像度Rでエンコードする。すなわち、「W」の画像データが、解像度R1の1/4の解像度でエンコードされる。
【0052】
エンコード部65は、ステップS41において、Yを1つ左の画像に移動させる。いまの場合、Yは、「SW」の画像とされる。
【0053】
そして、エンコード部65は、ステップS35に戻り、それ以降の処理を繰り返す。このようにして、「E」の画像データが、解像度R1の1/4の解像度でエンコードされ、「SW」および「SE」の画像データが、解像度R1の1/8の解像度でエンコードされ、「S」の画像データが、解像度R1の1/16の解像度でエンコードされる。
【0054】
その結果、図6または図8に示されるように、現在の視点である「N」の画像の解像度を1とした場合、「N」の左右隣の「NW」および「NE」の画像の解像度は、1/2とされ、「NW」の左隣の「W」および「NE」の右隣の「E」の画像の解像度は、1/4とされ、「W」の左隣の「SW」および「E」の右隣の「SE」の画像の解像度は、1/8とされ、「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像の解像度は、1/16とされる。なお、図8の例の場合、隣接する方向の画像は、現在の視点である「N」を中心に並べられている。
【0055】
以上のように、現在の視点の方向に近い方向の画像データに比べて、移動する可能性が低いと予測される現在の視点の方向からより離れた方向の画像データは、より低い解像度でエンコードされる。
【0056】
そして、ステップS35において、Xの画像データを既にエンコードしたと判断された場合、または、ステップS39において、Yの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、処理は、図5のステップS13に進む。
【0057】
ステップS13において、通信部71は、エンコード部65によりエンコードされた全方位の画像の画像データをネットワーク1を介してユーザ端末2に送信する。
【0058】
ステップS3において、ユーザ端末2の通信部31は、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS4において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を、出力部29を構成するディスプレイに表示させる。
【0059】
以上のように、視点情報に基づいた視点方向を中心として、他の方向の画像データを、視点方向の画像データよりも低い解像度でエンコードするようにしたので、全ての方位の画像を現在の視点の画像と同一の解像度でエンコードする場合に較べて、送信する画像データの情報量を軽減することができる。
【0060】
さらに、図5の全方位画像提供システムの通信処理におけるデータの流れについて、図9を参照して説明する。図9においては、縦方向は、時間軸を示し、上から下に行くに連れて、時間が経過している。また、ユーザ端末2の時間軸に沿って付けられているa0,a1,a2,…は、ユーザ端末2からサーバ3に送信されるACK(確認応答パケット)と視点情報が送信されるタイミングを示し、サーバ3の時間軸に沿って付けられているb0,b1,b2,…は、サーバ3からユーザ端末2に画像データのパケットが送信されるタイミングを示し、撮影装置4の時間軸に沿って付けられているc0,c1,c2,…は、撮影装置4からサーバ3に画像データが送信されるタイミングを示している。
【0061】
a0のタイミングにおいて、ユーザ端末2から、ACKと視点情報「N」(現在の視点が「N」である)が送信される。サーバ3は、この視点情報「N」を受けて、撮影装置4からc0のタイミングで送信された画像データを、視点「N」を中心としてエンコードする。そして、サーバ3は、エンコードした画像データを含むパケットを、b1のタイミングにおいてユーザ端末2に向けて送信する。
【0062】
ユーザ端末2は、その画像データのパケットを、a2のタイミングの直前に受信し、視点情報「N」に基づいてデコードする。そして、ユーザ端末2は、a2のタイミングにおいて、視点「N」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「N」をサーバ3に送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0063】
この例では、a4のタイミングにおいて、ACK(b3のタイミングで送信されたパケットを受信した確認応答パケット)と視点情報「N」が送信された後に、ユーザは、視点を「N」から「N」の右隣の方向である「NE」に移動させる。それに対応して、a5のタイミング以降に、ユーザ端末2で設定される視点情報は、「N」から「NE」に変わる。
【0064】
しかしながら、サーバ3により画像データのパケットが送信されるb4とb5のタイミングにおいては、まだ、サーバ3に、変更された視点情報「NE」が伝わっていないため、サーバ3は、撮影装置4からc3およびc4のタイミングで送信された画像データを、視点「N」を中心としてエンコードして、ユーザ端末2に送信する。
【0065】
したがって、ユーザ端末2は、視点「N」を中心としてエンコードされた画像データのパケットを、a5とa6のタイミングの直前に受信し、変更された視点情報「NE」に基づいて、デコードすることになる。「N」の画像の解像度に対して、「NE」の画像の解像度は、まだ、1/2のままであるので、この「NE」の画像データは、標準の半分の解像度でデコードされる。すなわち、出力部29においては、現在の実際の視点の「NE」の画像が、まだ、標準の半分の画質で表示される。
【0066】
また、サーバ3は、b5のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末2によりa5のタイミングで送信されたACKと視点情報「NE」を受ける。したがって、次のb6のタイミング以降において、サーバ3は、画像データを、視点情報「NE」に基づいて、エンコードするように変更する。これにより、ユーザ端末2は、a7のタイミングの直前において、視点「NE」を中心としてエンコードされた画像データのパケットを受信し、視点情報「NE」に基づいてデコードすることになる。したがって、この時点から、現在の視点「NE」の画像が、標準の解像度で表示される。
【0067】
そして、ユーザ端末2は、a7のタイミングにおいて、視点「NE」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「NE」をサーバ3に送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0068】
この例では、a8のタイミングにおいて(b7のタイミングで送信されたパケットを受信した確認応答パケット)、ACKと視点情報「NE」が送信された後に、ユーザは、視点を「NE」から「NE」の対角方向である「SW」に移動させる。それに対応して、a9のタイミング以降にユーザ端末2で設定される視点情報は、「NE」から「SW」に変わる。
【0069】
しかしながら、サーバ3により画像データのパケットが送信されるb8とb9のタイミングにおいては、まだ、サーバ3に、変更された視点情報「SW」が伝わっていないため、サーバ3は、撮影装置4からc7とc8のタイミングで送信された画像データを、視点「NE」を中心としてエンコードして、ユーザ端末2に送信する。
【0070】
したがって、ユーザ端末2は、視点「NE」を中心としてエンコードされた画像データのパケットを、a9とa10のタイミングの直前に受信し、視点情報「SW」に基づいて、デコードすることになる。「NE」の画像の解像度に対して、「SW」の画像の解像度は、1/16であるので、この「SW」の画像データは、標準の1/16の解像度でデコードされる。すなわち、出力部29においては、現在の実際の視点の「SW」の画像が、標準の1/16の画質で表示される。
【0071】
また、サーバ3は、b9のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末2によりa9のタイミングにおいて送信された視点情報「SW」を受けるので、b10のタイミング以降において、サーバ3は、画像データを、視点情報「SW」に基づいて、エンコードするように変更する。これにより、ユーザ端末2は、a11のタイミングの直前において、視点「SW」を中心としてエンコードされた画像データのパケットを受信し、視点情報「SW」に基づいてデコードするようになる。したがって、この時点から、現在の視点「SW」の画像が、標準の解像度で表示される。
【0072】
そして、ユーザ端末2は、a11のタイミングにおいて、視点「SW」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「SW」を送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0073】
以上のようにして、ユーザ端末2とサーバ3の通信処理が実行されることにより、ユーザ端末2における視点の動きにスムーズに対応することができる。
【0074】
すなわち、視点が、360度のいずれかの方向に(8つの方向のうちのいずれかの方向に)変更されたとしても、新たな視点の画像を迅速に表示させることができる。迅速な表示が可能な分、視点変更直後の画質は劣化する。しかしながら、その劣化の程度は、現在の視点から遠い(視点変更の可能性が低い)ほど大きく、現在の視点に近い(視点変更の可能性が大きい)ほど小さい。したがって、ユーザは、その画質の劣化の変化に納得がいき、好ましいユーザインタフェースを実現することができる。
【0075】
なお、上記説明においては、視点情報を、カメラ方向である「N」、「NE」などを用いて説明したが、実際には、図10に示されるように、カメラ5−1乃至5−8の方向に対して、視点IDを設定し、設定された視点IDとカメラ5−1乃至5−8の方向との対応関係を、ユーザ端末2とサーバ3で共有するようにしてもよい。
【0076】
図10の例の場合、視点ID「0」には、カメラ方向「N」が対応し、視点ID「1」には、カメラ方向「NE」が対応し、視点ID「2」には、カメラ方向「E」が対応し、視点ID「3」には、カメラ方向「SE」が対応するように設定され、また、視点ID「4」には、カメラ方向「S」が対応し、視点ID「5」には、カメラ方向「SW」が対応し、視点ID「6」には、カメラ方向「W」が対応し、視点ID「7」には、カメラ方向「NW」が対応するように設定される。したがって、この場合においては、ユーザ端末2から送信される視点情報には、この視点IDが書き込まれている。
【0077】
また、以上においては、カメラ5−1乃至5−8に対応する左右方向の視点の移動について説明したが、撮影装置4においては、上下方向にカメラが複数台ある場合も考えられる。図11および図12を参照して、上下方向にもカメラが複数台ある場合の画像データのエンコード方法の例について説明する。なお、図11および図12においては、図8と同様に、隣接する方向の画像を、現在の視点である「N2」を中心に並べられている。また、「N2」の「N」は、左右方向の位置を表し、「2」は上下方向の位置を表すものとする。
【0078】
図11および図12の例の場合、撮影装置4は、左から順に、「S」,「SW」,「W」,「NW」,「N」,「NE」,「E」および「SE」の8つの左右方向の画像を撮影するカメラに加えて、上から順に、「1」,「2」および「3」の3つの上下方向の画像を撮影するカメラにより構成されている。したがって、この場合の全方位の画像は、24方向の画像により構成される。
【0079】
図11の例においては、現在の視点「N2」の画像の解像度を1とした場合、「N2」の左右隣の「NW2」および「NE2」の画像の解像度と同様に、「N2」の上下隣の「N1」および「N3」の画像の解像度も1/2とされる。そして、これらの、1/2の解像度の画像に接する「NW1」,「W2」,「NW3」,「NE1」,「E2」および「NE3」の画像の解像度は、1/4とされる。また、これらの、1/4の解像度の画像に接する「SW2」,「W1」,「W3」,「E1」,「E3」および「SE2」の画像の解像度は、1/8とされ、それ以外の「S1」,「S2」,「S3」,「SW1」,「SW3」,「SE1」および「SE3」の画像の解像度は、1/16とされる。
【0080】
また、上下方向の移動が可能になったことにより、横方向の移動と合わせて、斜め方向に移動させるようにしてもよい。この場合、図12に示されるように、「N2」から「NE1」および「NW1」などの斜め方向への移動を考慮したエンコード方法を用いることもできる。
【0081】
図12の例においては、現在の視点「N2」の画像の解像度を1とした場合、「N2」を囲む「NW1」,「NW2」,「NW3」,「N1」,「N3」,「NE1」,「NE2」および「NE3」の画像の解像度は、1/2とされる。そして、これらの、1/2の解像度の画像に接する「W1」,「W2」,「W3」,「E1」,「E2」および「E3」の画像の解像度は、1/4とされる。また、これらの、1/4の解像度の画像に接する「SW1」,「SW2」,「SW3」,「SE1」,「SE2」および「SE3」の画像の解像度は、1/8とされ、それ以外の「S1」,「S2」および「S3」の画像の解像度は、1/16とされる。
【0082】
以上のように、上下方向にもカメラが複数台ある場合にも、各方向の画像データに対して、異なる解像度によりエンコードするようにしたので、送信する画像データの情報量を軽減することができる。
【0083】
次に、図13乃至図15を参照して、図1の全方位画像提供システムにおける画像のエンコード方式としてのJPEG2000の画像フォーマットについて説明する。なお、図13は、JPEG2000のウェーブレット変換の例を説明する図であり、図14および図15は、図13に示されたウェーブレット変換の具体的な例を示している。
【0084】
JPEG2000では、画像を小さな矩形のブロック領域(セル)に分割した後に、その分割単位でウェーブレット変換を行うことができる。
【0085】
図13に示されるウェーブレット変換においては、画像データから、水平、垂直方向の低周波成分と高周波成分が抽出され、そのうち、最も重要な要素である、水平、垂直両方向の低周波成分が再帰的に(いまの場合、3回)分割される方式であるオクターブ分割方式が用いられている。
【0086】
図13の例の場合、「LL」,「LH」,「HL」および「HH」は、その1文字目が水平成分、2文字目が垂直成分を示し、「L」は、低周波成分、「H」は、高周波成分を示している。したがって、図13においては、画像が「LL1」,「LH1」,「HL1」および「HH1」に分割されている。そのうちの水平、垂直両方向の低周波成分である「LL1」が、さらに、「LL2」,「LH2」,「HL2」および「HH2」に分割され、そのうちの水平、垂直両方向の低周波成分である「LL2」が、さらに、「LL3」,「LH3」,「HL3」および「HH3」に分割されている。
【0087】
したがって、図14に示されるように、元の画像91−1の解像度を1とすると、デコードすることなく(エンコードされた状態のままで)、解像度1/2の画像91−2を取り出すことができる。また、図15に示されるように、元の画像92−1の解像度を1とすると、デコードすることなく、解像度1/4の画像92−2を取り出すことができる。
【0088】
以上のように階層化したエンコードにより、エンコードされたままの画像データに対して(デコードすることなく)デコード側で画質やサイズなどの選択が可能になる。
【0089】
また、JPEG2000では、1つの画像内の特定領域の解像度を簡単に変えることができる。
【0090】
例えば、図16の例においては、現在の視点Pが、カメラ方向単位ではなく、複数のカメラに跨ってしまうような「N」と「NE」の画像の間の中央の位置に設定されている。このような場合、JPEG2000を用いることにより、「N」の画像の右半分と「NE」の画像の左半分を、例えば、解像度1で圧縮し、「N」の画像の左半分および「NW」の画像の右半分と、「NE」の画像の右半分および「E」の画像の左半分を1/2の解像度で圧縮することができ、カメラ方向単位ではない視点の移動が可能になる。
【0091】
なお、図16の例における視点情報は、図17に示されるように、例えば、「N」の画像において定められた、左上を原点とするxy座標平面(0≦x≦X,0≦y≦Y)において、現在の視点の「x座標」および「y座標」が求められ、その求められた現在の視点の「x座標」および「y座標」が、「カメラ方向」を決める視点ID(i)とともに、以下の(1)式のように記述されることにより作成される。
【0092】
{(i,x,y)|i=∈{0,1,2,3,4,5,6,7},0≦x≦X,0≦y≦Y} … (1)
【0093】
なお、カメラ単位でしか視点の移動ができない場合には、x=X/2,y=Y/2で固定されて表される。
【0094】
例えば、図16における視点Pの視点情報は、「N」と「NE」の間の中央の位置であるので、(i,x,y)=(0,X,Y/2)のように表される。
【0095】
なお、図16の例においては、この視点情報が、画像上のある一点として説明したが、「一点とその移動方向」を表すベクトル情報とすることにより、サーバ3において、視点の移動を予測するようにすることもできる。
【0096】
以上のように、JPEG2000を用いて、各方向の画像がエンコードされることにより、カメラ方向単位ではない視点の移動が可能になる。
【0097】
以上においては、1つのカメラが出力する1つの画像(1つの画面)を単位として解像度を設定するようにしたが、(図6、図8、図11および図12において、ハッチングなどで表されている領域が1つの画像(画面)である)、1つの画面内において、領域によって異なる解像度を設定することもできる。
【0098】
図18乃至図20を参照して、この場合の例について説明する。なお、図18乃至図20において、太い実線で囲まれている、横方向の長さX、縦方向の長さYの領域が、1つの画像(画面)(例えば、「N」の画像)である。
【0099】
図18において、「N」の画像は、図17と同様に、左上を原点とするxy座標において、0≦x≦X,0≦y≦Yの範囲で表され、その中の領域101が、視点(xc,yc)を中心として、横の長さH、縦の長さV(X/2≦H,Y/2≦V)で囲まれた範囲とされる。
【0100】
この例の場合、図19に示されるように、「N」の画像内の座標(x,y)のうち、xc−H/2≦x≦xc+H/2、かつ、yc−V/2≦y≦yc+V/2を満たす範囲(すなわち、領域101内部)のデータが、設定された解像度R1(最も大きい解像度)でエンコードされる。
【0101】
また、図20に示されるように、「N」の画像内の座標(x,y)のうち、xc−H/2≦x≦xc+H/2、かつ、yc−V/2≦y≦yc+V/2を満たす範囲を除いた、xc−H/2≦x≦xc+H/2、または、yc−V/2≦y≦yc+V/2を満たす範囲(すなわち、領域101の上下左右の辺に接する領域102−1乃至102−4の範囲)のデータが、解像度R1の1/2の解像度でエンコードされる。
【0102】
さらに、図21に示されるように、xc−H/2≦x≦xc+H/2も満たさず、かつ、yc−V/2≦y≦yc+V/2も満たさない範囲(すなわち、領域101の上下左右の辺に接しない(領域101に対して対角方向に接する)領域103−1乃至103−4の範囲)のデータが、解像度R1の1/4の解像度でエンコードされる。
【0103】
以上のようにして、視点情報に基づいて、1枚の画像内において解像度を変更するようにしてもよい。これにより、「現在の見ている方向」に加えて、「その方向の画像内の見ている部分」にまで、視点情報を広げ、標準の解像度で圧縮されている画像(例えば、現在の視点「N」)内の特定の領域を、さらに高解像度で圧縮するようにできる。
【0104】
以上のように、JPEG2000を用いて画像データをエンコードすることにより、1つのカメラにより撮影された1つの方向の画像内における任意の位置の解像度を、他の位置と異なる解像度でエンコードすることが可能になる。
【0105】
以上においては、領域によって画素数を変更することで解像度を変更するようにしたが、色数を変更することで解像度を変更するようにしてもよい。
【0106】
次に、図22のフローチャートを参照して、この色数を減らして解像度を変更する場合の全方位の画像の画像データ作成処理について説明する。なお、この処理は、図5のステップS12(すなわち、図7)の全方位の画像の画像データ作成処理の他の例である。したがって、サーバ3の通信部71により、ユーザ端末2からの視点情報が、視点決定部64に出力されている。
【0107】
ステップS61において、エンコード部65は、予め設定された使用する色数C1を色数Cとする。ステップS62において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より、8方向の画像データを受け取る。
【0108】
エンコード部65は、ステップS63において、視点決定部64からの視点情報に基づいて、エンコードする画像を選択し、それをXとし、ステップS64において、Xの左隣の画像をYとする。いまの場合、現在の視点情報が「N」であるので、Xは、「N」の画像とされ、Yは、「NW」の画像とされる。
【0109】
エンコード部65は、ステップS65において、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS66において、Xの画像データを、色数Cでエンコードする。これにより、「N」の画像データは、予め設定された色数C1(最も多い色数)でエンコードされる。
【0110】
ステップS67において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「NE」の画像とされる。
【0111】
エンコード部65は、ステップS68において、現在の色数(いまの場合、色数C1)を1/2にしたものを、新たな色数Cとし、ステップS69において、Yの画像データを既にエンコードしたか否かを判断する。ステップS69において、まだ、Yの画像データをエンコードしていないと判断された場合、ステップS70において、エンコード部65は、Yの画像データを、色数Cでエンコードする。すなわち、「NW」の画像データが、色数C1の1/2の色数でエンコードされる。
【0112】
エンコード部65は、ステップS71において、Yを1つ左の画像に移動させる。いまの場合、Yは、「W」の画像とされる。
【0113】
そして、エンコード部65は、ステップS65に戻り、それ以降の処理を繰り返す。このようにして、「NE」の画像データが、色数C1の1/2の色数でエンコードされ、「W」および「E」の画像データが、色数C1の1/4の色数でエンコードされ、「SW」および「SE」の画像データが、色数C1の1/8の色数でエンコードされ、「S」の画像データが、色数C1の1/16の色数でエンコードされる。
【0114】
ステップS65において、Xの画像データを既にエンコードしたと判断された場合、または、ステップS69において、Yの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、全方位の画像の画像データ作成処理は終了する。
【0115】
以上のように、現在の視点の方向に近い方向の画像データに比べて、現在の視点の方向から離れた方向の画像データが、少ない色数でエンコードされるようにしたので、送信する画像データの情報量を軽減することができる。
【0116】
以上より、画像内の色数を減らしたり、画像のサイズを小さくしたり、または、量子化パラメータを変更するように、視点からの距離に比例して画像データの情報量を減らすようにしてもよい。
【0117】
次に、図23のフローチャートを参照して、エンコードされた画像データを一旦記憶部70に記憶してから送信する場合の通信処理について説明する。
【0118】
ユーザによりユーザ端末2の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS81において、視点指定部24は、視点情報を作成する。ステップS82において、通信部31は、視点指定部24により作成された視点情報を、ネットワーク1を介して、サーバ3に送信する。
【0119】
サーバ3の通信部71は、ステップS91において、ユーザ端末2からの視点情報を受信し、視点決定部64に出力する。ステップS92において、エンコード部65は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図24のフローチャートを参照して説明する。なお、図24のステップS101乃至S106,S108乃至S111,S113の処理は、図7のステップS31乃至S41の処理と同様の処理であり、繰り返しになるので、その説明は省略する。
【0120】
すなわち、解像度Rが設定され、カメラ5−1乃至5−8より8方向の画像データが取得され、視点決定部64からの視点情報に基づいて、画像Xと画像Yが求められる。そして、ステップS105において、Xの画像データをエンコードしていないと判断された場合、ステップS106において、エンコード部65により、Xの画像データが対応する解像度Rでエンコードされるので、ステップS107において、エンコード部65は、そのエンコードされたXの画像データを記憶部70に記憶する。
【0121】
同様にして、ステップS110において、Yの画像データをエンコードしていないと判断された場合、ステップS111において、エンコード部65により、Yの画像データが対応する解像度Rでエンコードされるので、ステップS112において、エンコード部65は、そのエンコードされたYの画像データを記憶部70に記憶する。
【0122】
以上の処理により、全方位の画像の画像データが対応する解像度でエンコードされ、記憶部70に一旦記憶される。
【0123】
次に、ステップS93において、CPU61は、全方位の画像の画像データの取得処理を実行する。この全方位の画像の画像データの取得処理について、図25のフローチャートを参照して説明する。
【0124】
ステップS121において、CPU61は、視点決定部64からの視点情報に基づいて、中心となる「N」の画像を、Xとし、設定された解像度R1(最も高い解像度)でエンコードされている「N」の画像データを、記憶部70から読み出し、通信部71に出力する。
【0125】
CPU61は、ステップS122において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS123において、Xを1つ右の画像に移動させ、ステップS124において、Xの左隣の画像をYとする。
【0126】
ステップS125において、CPU61は、Xの画像データを既に記憶部70から読み出したか否かを判断し、まだ、Xの画像データを記憶部70から読み出していないと判断した場合、ステップS126において、解像度RのXの画像データを記憶部70から読み出し、通信部71に出力する。すなわち、いまの場合、解像度R1の1/2の解像度である「NE」の画像データが記憶部70から読み出される。
【0127】
CPU61は、ステップS127において、Xを1つ右の画像に移動させ、ステップS128において、Yの画像データを既に記憶部70から読み出したか否かを判断する。ステップS128において、まだ、Yの画像データを記憶部70から読み出していないと判断された場合、ステップS129において、解像度RのYの画像データを記憶部70から読み出し、通信部71に出力する。すなわち、いまの場合、解像度R1の1/2の解像度である「NW」の画像データが記憶部70から読み出される。
【0128】
CPU61は、ステップS131において、Yを1つ左の画像に移動させ、ステップS132において、解像度R(いまの場合、(1/2)解像度R1)を1/2にしたもの((1/4)解像度R1)を、解像度Rとし、ステップS125に戻り、それ以降の処理を繰り返す。
【0129】
ステップS125において、既にXの画像データを読み出したと判断された場合、または、ステップS128において、既にYの画像データを読み出したと判断された場合、すべての画像データが読み出されたので、処理を終了する。
【0130】
以上の処理により、例えば、現在の視点の解像度を1とした場合、解像度1の「N」の画像データが通信部71に出力され、解像度1/2の「N」の左右隣の「NW」および「NE」の画像データが通信部71に出力され、解像度1/4の「NW」の左隣の「W」および「NE」の右隣の「E」の画像データが通信部71に出力される。また、解像度1/8の「W」の左隣の「SW」および「E」の右隣の「SE」の画像データが通信部71に出力され、解像度1/16の「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像データが出力される。
【0131】
これらの全方位の画像の画像データを、図23のステップS94において、通信部71は、ネットワーク1を介してユーザ端末2に送信する。
【0132】
ステップS83において、ユーザ端末2の通信部31は、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS84において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を、出力部29を構成するディスプレイに表示させる。
【0133】
以上のように、各カメラの画像に対して、異なる解像度によりエンコードした画像データを一旦記憶し、それを読み出してから送信するようにしたので、例えば、ユーザがどのように全方位映像を楽しんだかがサーバ3側(主催者側)で確認できるというような、ライブ配信のリプライが可能になる。
【0134】
なお、この場合、通信部71は、視点情報に基づいたすべての画像データを取得してからまとめてユーザ端末2に送信するようにしたが、CPU61から各方向の画像データが出力する度に、その画像データをネットワーク1を介してユーザ端末2に送信するようにしてもよい。この場合においては、より高い解像度の画像データから順番に、読み出され、送信されるので、送信する画像データの情報量を軽減することができるだけでなく、受信側で、より迅速に表示を行うことが可能になる。
【0135】
また、図23のステップS92においては、エンコードされた全方位の画像の画像データが各方向の画像データ毎に生成され、記憶されるが、図13を参照して説明したJPEG2000によりエンコードすることにより、例えば、図8に示されるように、解像度の異なる8方向の画像を繋ぎ合わせて、1つの画像として合成するようできる。これにより、記憶部70のデータ管理のコストを軽減できる。さらに、隣接する方向の画像を繋ぎ合わせることにより、例えば、「N」と「NE」の間に視点がある場合のように、同じ圧縮率で複数の画像データに対してエンコードを実行する場合に、1つのファイルの連続部分をエンコードすることになり、処理の煩雑さが軽減される。
【0136】
さらに、図26のフローチャートを参照して、この全方位の画像の画像データの取得処理の他の例について説明する。なお、この処理は、図23のステップS93(すなわち、図25)の全方位の画像の画像データ取得処理の他の例である。ただし、いまの場合、図23のステップS92の処理により、全方位の画像の画像データすべてが、エンコード部65により、設定された解像度R1のみで(最高の解像度で)エンコードされ、記憶部70に一旦記憶されているものとする。
【0137】
CPU61は、ステップS141において、エンコードされた全方位(8つ)の画像データを記憶部70から取得し、ステップS142において、視点決定部64からの視点情報に基づいて、中心となる「N」の画像を、Xとし、そのままの解像度R1で、通信部71に出力する。
【0138】
CPU61は、ステップS143において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS144において、Xを1つ右の画像に移動させ、ステップS145において、Xの左隣の画像をYとする。
【0139】
ステップS146において、CPU61は、Xの画像データを既に通信部71に出力したか否かを判断し、まだ、Xの画像データを通信部71に出力していないと判断した場合、ステップS147において、Xの画像データを、解像度Rに変換して、通信部71に出力する。すなわち、いまの場合、「NE」の画像データが解像度R1の1/2の解像度に変換されて、通信部71に出力される。
【0140】
CPU61は、ステップS148において、Xを1つ右の画像に移動させ、ステップS149において、Yの画像データを既に通信部71に出力したか否かを判断する。ステップS149において、まだ、Yの画像データを通信部71に出力していないと判断された場合、ステップS150において、Yの画像データを、解像度Rに変換して、通信部71に出力する。すなわち、いまの場合、「NW」の画像データが解像度R1の1/2の解像度に変換されて、通信部71に出力される。
【0141】
CPU61は、ステップS151において、Yを1つ左の画像に移動させ、ステップS152において、解像度R(いまの場合、解像度R1の1/2)を1/2にしたもの(解像度R1の1/4にしたもの)を、解像度Rとし、ステップS146に戻り、それ以降の処理を繰り返す。
【0142】
ステップS146において、既にXの画像データを通信部71に出力したと判断された場合、または、ステップS149において、既にYの画像データを通信部71に出力したと判断された場合、すべての画像データが通信部71に出力されたので、処理を終了する。
【0143】
以上のように、各カメラの画像に対して、設定された高解像度によりエンコードされた画像データを一旦記憶し、それを読み出して、視点情報に基づいた解像度変換を行ってから送信するようにしても、送信する画像データの情報量を軽減することができる。
【0144】
なお、上記説明においては、撮影された画像を、対応する解像度または設定された解像度でエンコードし、一旦記憶し、それを読み出してから送信する(すなわち、記憶しながら送信する)場合を説明したが、サーバ3の記憶部70に、エンコード部65によりさまざまな解像度で、エンコードされ、予め記憶されている画像を、図23のステップS93の処理で取得し、送信するようにしてもよい。
【0145】
すなわち、この場合、図23においては、ステップS92の処理は実行されず(図23の全方位画像データの通信処理の前に実行されているため)、ステップS93(図25)の全方位の画像の画像データ取得処理においては、撮影装置4のカメラ5−1乃至5−8により撮影され、さまざまな解像度でエンコードされ、予め記憶されている画像データの中から、視点情報に対応する解像度のものが読み出され、送信される。なお、この場合の解像度は、全方位画像提供システムで提供され得るあらゆる解像度とし、図25の取得処理を適用するようにしてもよいし、設定された高解像度とし、図26の取得処理を適用するようにしてもよい。
【0146】
次に、図27を参照して、本発明を適用した全方位画像提供システムの他の構成例を説明する。なお、図27において、図1における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
【0147】
この例の場合、ネットワーク1には、ルータ122を介して、n台のユーザ端末121−1,121−2,…121−n(以下、これらを個々に区別する必要がない場合、単にユーザ端末121と称する)が接続されている。
【0148】
ルータ122は、マルチキャストルータであり、ユーザ端末121からの視点情報に基づいて、サーバ3から送信される全方位の画像の画像データの中から、各ユーザ端末121に送信する画像データを検索し、その画像データを、ユーザ端末121に送信する処理を実行する。
【0149】
また、ユーザ端末121は、ユーザ端末1と基本的に同様の構成であり、繰り返しになるのでその説明は省略する。
【0150】
図28は、ルータ122の構成例を表している。図28において、CPU131乃至RAM133およびバス134乃至半導体メモリ144は、図3のユーザ端末2のCPU21乃至RAM23およびバス26乃至半導体メモリ44と基本的に同様の機能を有するものであるので、その説明は省略する。
【0151】
次に、図29のフローチャートを参照して、図27の全方位画像提供システムの通信処理について説明する。なお、図29においては、説明の便宜上、ユーザ端末121−1と121−2の2台としているが、実際は、n(n>0)台とされる。
【0152】
ユーザによりユーザ端末121−1の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS201において、視点指定部24は、視点情報を作成する。ステップS202において、通信部31は、視点指定部24により作成された視点情報を、ルータ122を介して、サーバ3に送信する。
【0153】
ルータ122のCPU131は、ステップS221において、通信部139によりユーザ端末121−1からの視点情報「N」を受信し、ステップS222において、記憶部138などを構成する視点情報テーブルに記憶し、ステップS223において、通信部139により、ネットワーク1を介して、サーバ3に送信する。
【0154】
また、同様にして、ユーザによりユーザ端末121−2の入力部28が操作され、現在の視点(いまの場合、「NE」)が入力される。それに対応して、ステップS211において、視点指定部24は、視点情報を作成する。ステップS212において、通信部31は、視点指定部24により作成された視点情報を、ルータ122を介して、サーバ3に送信する。
【0155】
ルータ122のCPU131は、ステップS224において、通信部139によりユーザ端末121−2からの視点情報「NE」を受信し、ステップS225において、記憶部138などを構成する視点情報テーブルに記憶し、ステップS226において、通信部139により、ネットワーク1を介して、サーバ3に送信する。
【0156】
図30を参照して、ルータ122に記憶される視点情報テーブルについて説明する。この視点情報テーブルにおいては、各ユーザ端末121に、図10を参照して説明した視点IDが対応付けられる。
【0157】
図30の例の場合、ユーザ端末121−1より、視点情報「N」(すなわち、視点ID「0」)が送信されてくるので、ユーザ端末121−1には、視点ID「0」が対応付けられる。また、ユーザ端末121−2より、視点情報「NE」(すなわち、視点ID「1」)が送信されてくるので、ユーザ端末121−2には、視点ID「1」が対応付けられる。同様にして、ユーザ端末121−3には、視点ID「3」が対応付けられ、ユーザ端末121−4には、視点ID「0」が対応付けられ、ユーザ端末121−5には、視点ID「1」が対応付けられ、…、ユーザ端末121−nには、視点ID「0」が対応付けられる。
【0158】
以上のように、この視点IDは、ユーザ端末121、ルータ122およびサーバ3の間で共有される情報となる。
【0159】
一方、サーバ3の通信部71は、ステップS241において、ユーザ端末121−1からの視点情報「N」をルータ122を介して受信し、視点決定部64に出力し、ステップS242において、ユーザ端末121−2からの視点情報「NE」をルータ122を介して受信し、視点決定部64に出力する。
【0160】
ステップS243において、視点決定部64は、すべてのユーザ端末121から取得した視点情報に基づいて、各方向の画像の解像度を求める。いまの場合、視点決定部64は、各方向の画像に対して、すべてのユーザ端末121から要求される解像度を収集し、そのうちの最高解像度を、その画像の解像度とする。
【0161】
例えば、視点決定部64がユーザ端末121−1乃至ユーザ端末121−5からの視点情報(図30)を取得した場合、「N(視点ID「0」)」の画像に対しては、視点ID「0」のユーザ端末121−1により、設定された解像度であるR1が要求され、視点ID「1」のユーザ端末121−2により、解像度R1の1/2の解像度が要求され、視点ID「3」のユーザ端末121−3により、解像度R1の1/8の解像度が要求され、視点ID「0」のユーザ端末121−4により、解像度R1の解像度が要求され、視点ID「1」のユーザ端末121−5により、解像度R1の1/2の解像度が要求されている。したがって、「N」の画像の解像度は、これらのうちの最高解像度である解像度R1とされる。
【0162】
同様にして、「E(視点ID「2」)」の画像に対しては、視点ID「0」のユーザ端末121−1により、解像度R1の1/4の解像度が要求され、視点ID「1」のユーザ端末121−2により、解像度R1の1/2の解像度が要求され、視点ID「3」のユーザ端末121−3により、解像度R1の1/2の解像度が要求され、視点ID「0」のユーザ端末121−4により、解像度R1の1/4の解像度が要求され、視点ID「1」のユーザ端末121−5により、解像度R1の1/2の解像度が要求されている。したがって、「N」の画像の解像度は、これらのうちの最高解像度である解像度R1の1/2解像度とされる。
【0163】
なお、上述したステップS243の演算処理は、ユーザ端末121の数が少ない場合には、有効な方法であるが、ユーザ端末121が多い場合には、この演算の負荷を抑えるために、全ての画像を、設定された解像度R1で送るようにしてもよい。
【0164】
以上のようにして、各方向の画像に対する解像度が求められるので、その解像度に基づいて、ステップS244において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より供給された8方向の画像データをエンコードする。
【0165】
ステップS245において、通信部71は、エンコード部65によりエンコードされた全方位の画像の画像データを、ネットワーク1およびルータ122を介してユーザ端末121に送信する。
【0166】
これに対応して、ルータ122のCPU131は、ステップS227において、全方位の画像の画像データを通信部139を介して受信し、ステップS228において、画像データの送信処理を実行する。この画像データの送信処理について、図31のフローチャートを参照して説明する。いまの場合、ユーザ端末121がn台(n>0)あるとする。
【0167】
CPU131は、ステップS271において、i=1を設定し、ステップS272において、ユーザ端末121−i(いまの場合、i=1)に対して画像データを送信したか否かを判断する。ステップS272において、ユーザ端末121−1に対して、まだ画像データを送信していないと判断された場合、ステップS273において、CPU131は、図30を参照して説明した視点テーブルに基づいて、ユーザ端末121−1の視点情報を求める。
【0168】
ステップS274において、CPU131は、ユーザ端末121−1の視点情報「N」に基づいて、全方位の画像の画像データを、適する解像度に調整する。すなわち、受信した画像データの解像度と送信すべき画像データの解像度が同じであれば、そのままの解像度とするが、受信した画像データの解像度よりも要求される画像データの解像度が低ければ、要求される画像データの解像度に変換する。
【0169】
例えば、ユーザ端末121−1に対しては、「N」の画像データは、解像度R1で受信されるので、解像度R1のままにされ、「NE」の画像データは、解像度R1で受信されるので、解像度R1の1/2の解像度に変換され、「E」の画像データは、解像度R1の1/2の解像度で受信されるので、その解像度の1/2の解像度(すなわち、解像度R1の1/4の解像度)に変換される。
【0170】
ステップS275において、CPU131は、視点テーブルに基づいて、ユーザ端末121−1と同じ視点情報のユーザ端末があるか否かを判断し、同じ視点情報のユーザ端末(例えば、ユーザ端末121−4およびユーザ端末121−n)があったと判断した場合、ステップS276において、ユーザ端末121−1、ユーザ端末121−4およびユーザ端末121−nに、ステップS274において調整された全方位の画像の画像データを送信する。
【0171】
ステップS275において、視点テーブルに基づいて、ユーザ端末121−1と同じ視点情報のユーザ端末がないと判断された場合、ステップS277において、ユーザ端末121−1にのみ、その調整された全方位の画像の画像データを送信する。
【0172】
ステップS272において、ユーザ端末121−iに対して、送信が既になされていると判断された場合、ステップS273乃至S277の処理はスキップされる。
【0173】
CPU131は、ステップS278において、iを1つ加算し(いまの場合、i=2とし)、ステップS279において、iがnよりも小さいか否かを判断する。ステップS279において、iがnよりも小さいと判断された場合、処理は、ステップS272に戻り、それ以降の処理が繰り返される。ステップS279において、iがnと同じか、またはnよりも大きいと判断された場合、送信処理は終了される。
【0174】
以上の処理により、ユーザ端末121−1に対しては、視点情報「N」に基づいた全方位の画像の画像データが送信され、ユーザ端末121−2に対しては、視点情報「NE」に基づいた全方位の画像の画像データが送信される。
【0175】
図29に戻って、ルータ122の以上の処理に対応して、ユーザ端末121−1の通信部31は、ステップS203において、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS204において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を出力部29を構成するディスプレイに表示させる。
【0176】
同様にして、ユーザ端末121−2の通信部31は、ステップS213において、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS214において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、デコードされた画像を出力部29に供給し、出力部29を構成するディスプレイに表示させる。
【0177】
以上のようにして、複数台のユーザ端末121において、視点の違いはあるにせよ、同じ画像ソースのデータを受け取ることができる。これにより、サーバ3の負荷が軽減され、さらに、ネットワーク1上のデータ量も軽減される。また、上記説明においては、サーバ3のエンコード部65においてエンコードされた画像データが即座に通信部71を介してネットワーク1に送信されていたが、この場合においても、エンコードされた画像データを一旦記憶部70に記憶するようにしてもよい。
【0178】
さらに、以上においては、画像データがJPEG2000でエンコードされているので、高解像度の画像データから低解像度の画像データに容易に変換する(取り出す)ことができ、変換のためのデコードが必要ないため、ルータ122の負荷を軽減することができる。
【0179】
また、ルータ122とユーザ端末121との間に充分な帯域があれば、ユーザ端末121が要求した解像度よりも高い解像度で送信してしまってもよい。この場合、ユーザ端末121においては、メモリ容量などの必要に応じて、解像度を落として表示するようになる。
【0180】
上記説明においては、画像の解像度が1/2,1/4,1/8または1/16のように指数的に変化していく例を説明したが、例えば、4/5,3/5,2/5または1/5のように線形的に変化してもよいし、急に背後を見る可能性の高い全方位の画像においては、1/2,1/4,1/2,1のように、減少後増加するような解像度としてもよく、特に制限はない。また、カメラ5−1乃至5−8により撮影される画像毎に異なる値を用いてもよい。
【0181】
また、以上においては、サーバが1台に対して、カメラが8台により構成したが、カメラ1台に対してサーバ1台を対応させ、ユーザ端末からの視点情報を各サーバに送信することにより、そのサーバが対応するカメラの方向の画像データのみをエンコードするようにしてもよい。
【0182】
本発明は、全方位の画像を提供する場合だけでなく、オムニビュー(Omni−View)の画像を提供する場合にも適用することができる。
【0183】
「Omni−Viewの画像」は、図32に示されるように、任意の対象物151を360度全方向から撮影することで得られる。図32の例においては、8台のカメラで上中央方向の「N」から時計回りに、「NE」,「E」,「SE」,「S」,「SW」,「W」および「NW」の8方向の画像が撮影されている。これらの画像から、隣接する方向の画像を繋ぎ合わせて合成すると、図33に示されるように、左から順に、「S」,「SE」,「E」,「NE」,「N」,「NW」,「W」,「SW」の画像が順に繋ぎ合わされた画像が1ファイルの画像とされる。これは、例えば、現在の視点情報が「N」を指す場合、視点が右に移動すると、「NW」の画像へと視点が移動し、逆に、視点が左に移動すると、「NE」に移動するというように、図8を参照して説明した「全方位の画像」の左右が入れ替わった状態と同様であるので、図2を参照して説明した撮影装置4の構成が変わる以外は、上述した全方位の画像の例と基本的に変わらない。したがって、本明細書では、「Omni−Viewの画像」は、「全方位の画像」に含まれるものとする。
【0184】
以上のように、視点情報に基づいて、それに対応した解像度、色、サイズでエンコードするようにしたので、「全方位の画像」(「Omni−Viewの画像」を含む)をユーザが見る際に、ユーザの視点移動に対する反応時間を短縮できる。また、ネットワーク上の通信経路内に流れるデータ量を低減できる。
【0185】
さらに、多くのユーザが「全方位の画像」(「Omni−Viewの画像」を含む)を見る場合であっても、スムーズに画像を提供することができる。
【0186】
以上により、ユーザが、スムーズに視点移動が可能な「全方位の画像」(「Omni−Viewの画像」を含む)を見ることができる快適な全方位画像提供システムを実現することができる。
【0187】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【0188】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図3、図4および図28に示されるように、磁気ディスク41,81,141(フレキシブルディスクを含む)、光ディスク42,82,142(CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク43,83,143(MD(Mini−Disc)(商標)を含む)、もしくは半導体メモリ44,84,144などよりなるパッケージメディア、または、プログラムが一時的もしくは永続的に格納されるROM22,62,132や、記憶部30,70,138などにより構成される。
【0189】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0190】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0191】
【発明の効果】
以上の如く、本発明によれば、即時性を持ったシステムを構築できる。また、本発明によれば、ネットワーク上のデータ量が軽減される。さらに、本発明によれば、ユーザに対して快適なシステムが提供される。
【図面の簡単な説明】
【図1】本発明を適用した全方位画像提供システムの構成例を示す図である。
【図2】図1の撮影装置の外観の構成を示す図である。
【図3】図1のユーザ端末の構成を示すブロック図である。
【図4】図1のサーバの構成を示すブロック図である。
【図5】図1の全方位画像提供システムの通信処理を説明するフローチャートである。
【図6】視点情報を説明する図である。
【図7】図5のステップS12の全方位の画像の画像データ作成処理を説明するフローチャートである。
【図8】全方位の画像を説明する図である。
【図9】図5の全方位画像提供システムの通信処理時におけるデータの流れを説明する図である。
【図10】視点情報の対応関係を説明する図である。
【図11】上下方向のカメラに対応するエンコード方法について説明する図である。
【図12】上下方向のカメラに対応するエンコード方法について説明する図である。
【図13】JPEG2000を説明する図である。
【図14】JPEG2000の具体的な例を説明する図である。
【図15】JPEG2000の具体的な例を説明する図である。
【図16】画像間における視点情報を説明する図である。
【図17】画像間における視点情報を説明する図である。
【図18】1つの方向の画像内のエンコード方法を説明する図である。
【図19】1つの方向の画像内のエンコード方法を説明する図である。
【図20】1つの方向の画像内のエンコード方法を説明する図である。
【図21】1つの方向の画像内のエンコード方法を説明する図である。
【図22】図5のステップS12の全方位の画像の画像データ作成処理の他の例を説明するフローチャートである。
【図23】図5の全方位画像提供システムの通信処理の他の例を説明するフローチャートである。
【図24】図23のステップS92の全方位の画像の画像データ生成処理を説明するフローチャートである。
【図25】図23のステップS93の全方位の画像の画像データ取得処理を説明するフローチャートである。
【図26】図23のステップS93の全方位の画像の画像データ取得処理の他の例を説明するフローチャートである。
【図27】本発明を適用した全方位画像提供システムの他の構成例を示す図である。
【図28】図27のルータの構成を示すブロック図である。
【図29】図27の全方位画像提供システムの通信処理の例を説明するフローチャートである。
【図30】視点テーブルを説明する図である。
【図31】図27のルータの画像データの送信処理を説明するフローチャートである。
【図32】Omni−Viewの視点情報を説明する図である。
【図33】Omni−Viewの画像を説明する図である。
【符号の説明】
1 ネットワーク,2 ユーザ端末,3 サーバ,4 撮影装置,5−1乃至5−8 カメラ,21 CPU,24 視点指定部,25 デコード部,30 記憶部,61 CPU,64 視点決定部,65 エンコード部,70 記憶部,121 ユーザ端末,122 ルータ,131 CPU
【発明の属する技術分野】
本発明は、情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関し、特に、データ量を抑制し、即時性を図るようにした情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
任意の位置を中心として360度全方向を撮影した「全方位の画像」をユーザが見る場合、n台のカメラを用いて、全方位の画像を撮影したとすると、ユーザは、n個の画像の中から1つの画像を選択することになる。すなわち、全方位の画像の画像データが記憶されている記憶装置と、全方位の画像の画像データを再生する再生装置との間のネットワークには、実際にユーザが見る画像の画像データのn倍の膨大な情報量の画像データが流れることになる。なお、1つの撮影対象に対して全周囲方向から撮影する「Omni−Viewにおける画像」についても同様となる。
【0003】
それに対して、特開平6−124328号公報には、ユーザの視点情報に基づいて、複数の画像データを撮影時のデータと共に、画像記録媒体に圧縮して記録し、その画像記録媒体から、必要な画像データのみを読み出すことにより、ユーザの視点の自由な動きに対応するようにすることが提案されている。しかしながら、この場合、この画像記録媒体に記録される画像データは、圧縮されているとしても、実際に必要な画像データに比して、膨大な情報量となる。
【0004】
また、特開2000−132673号公報や特開2001−8232号公報には、撮影された画像の画像データを記憶装置に記憶し、再生装置から受け取った視点情報に基づいて、n個の画像データの中から必要となる画像データを記憶装置で読み出し、再生装置に送信することにより、記憶装置と再生装置のネットワーク間の情報量を削減することが提案されている。
【0005】
【発明が解決しようとする課題】
しかしながら、この場合においては、必要な画像データしか送信されないため、ネットワークの応答遅延などにより、次の視点情報が再生装置から記憶装置に伝達されるまでに少なからず時間を要してしまう。したがって、画像の切り替えが遅くなってしまい、ユーザの急な視点移動要求に対して、迅速な切り替えができなかったり、または、一時的に画像が途切れてしまうといった課題があった。
【0006】
本発明はこのような状況に鑑みてなされたものであり、ネットワークの情報量を軽減し、スムーズな視点移動が可能な画像を提供できるようにするものである。
【0007】
【課題を解決するための手段】
本発明の情報提供システムは、情報提供装置は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理装置は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【0008】
本発明の情報提供システムの情報提供方法は、情報提供方法は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理方法は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【0009】
本発明の情報提供装置は、情報処理装置から視点情報を受信する受信手段と、受信手段により受信された視点情報に基づいて、全方位の画像の画像データを、受信手段により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコード手段と、エンコード手段によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信手段とを備えることを特徴とする。
【0010】
エンコード手段は、画像データをJPEG2000でエンコードするようにすることができる。
【0011】
エンコード手段は、第2の方位のうち、第1の方位からより離れた方位が、さらにより低い解像度となるように、全方位の画像の画像データをそれぞれエンコードするようにすることができる。
【0012】
解像度は、画素数または色数により設定されるようにすることができる。
【0013】
エンコード手段によりエンコードされた全方位の画像の画像データを記憶する記憶手段をさらに備えるようにすることができる。
【0014】
エンコード手段によりエンコードされた全方位の画像の画像データを、1ファイルの画像データに合成する合成手段をさらに備え、記憶手段は、合成手段により合成された1ファイルの画像データを記憶するようにすることができる。
【0015】
視点情報に基づいて、記憶手段により記憶された第2の方位の画像の画像データの解像度を、より低い解像度に変換する変換手段をさらに備え、送信手段は、変換手段により変換された全方位の画像の画像データを送信するようにすることができる。
【0016】
受信手段により、複数の情報処理装置から受信された視点情報に基づいて、複数の情報処理装置に送信する第2の方位の画像の画像データの解像度のうち、最も高い解像度を選択する選択手段をさらに備え、送信手段は、選択手段により選択された解像度以下の解像度の全方位の画像の画像データを送信するようにすることができる。
【0017】
本発明の情報提供装置の情報提供方法は、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【0018】
本発明の情報提供装置の記録媒体のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【0019】
本発明の情報提供装置のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとをコンピュータに実行させることを特徴とする。
【0020】
本発明の情報提供システムおよび方法においては、情報提供装置および方法により、情報処理装置により設定された視点情報が取得され、取得された視点情報に基づいて、全方位の画像の画像データが、情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードされ、エンコードされた全方位の画像の画像データが、情報処理装置に送信される。そして、情報処理装置および方法により、受信された全方位の画像の画像データの中から視点情報に対応する画像データがデコードされ、デコードされた画像データが出力される。
【0021】
本発明の情報提供装置および方法、記録媒体、並びにプログラムにおいては、情報処理装置から受信された視点情報に基づいて、全方位の画像の画像データが、受信された視点情報に対応する第1の方位の画像の画像データに較べて、第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードされ、エンコードされた全方位の画像の画像データが情報処理装置に送信される。
【0022】
ネットワークとは、少なくとも2つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであってもよいし、1つの装置を構成している内部ブロックどうしであってもよい。
【0023】
【発明の実施の形態】
以下、図を参照して本発明の実施の形態について説明する。
【0024】
図1は、本発明を適用した全方位画像提供システムの構成例を表している。インターネット、LAN、WANなどを含むネットワーク1には、ユーザ端末2とユーザ端末2に対して全方位の画像の画像データを提供するサーバ3が接続されている。この例においては、ユーザ端末2およびサーバ3が1台ずつ示されているが、ネットワーク1には、任意の台数のユーザ端末2およびサーバ3が接続される。
【0025】
サーバ3には、全方位の画像を撮影する撮影装置4が接続されている。撮影装置4は、360度全方位を同時に撮影できる特殊なカメラであり、8台のカメラ5−1乃至5−8により構成される。サーバ3は、撮影装置4で撮影された画像の画像データをエンコードし、ネットワーク1を介して、ユーザ端末2に提供する。ユーザは、サーバ3から提供された画像データをユーザ端末2によりデコードし、全方位の画像のうち、希望する画像を見ることができる。
【0026】
図2は、撮影装置4の外観の構成を示す図である。撮影装置4は、カメラ部とミラー部により構成される。ミラー部は、正八角形の底面を持つ正八角錐の側面にそれぞれ取り付けられた平面鏡11−1乃至11−8により構成される。カメラ部を構成するカメラ5−1乃至5−8は、それぞれ対応する平面鏡11−1乃至11−8に映し出される画像を撮影する。すなわち、8台のカメラ5−1乃至5−8が各方向を撮影することにより、撮影装置4の360度全方位の画像が撮影される。
【0027】
したがって、この全方位画像提供システムにおいて、サーバ3は、撮影装置4で撮影された8方向の画像により構成される全方位の画像を、ネットワーク1を介して、ユーザ端末2に提供する。
【0028】
なお、図2においては、8台の平面鏡とカメラにより構成するようにしたが、ミラー部を構成する正多角形の数に対応する数の平面鏡とカメラにより構成されていれば、その数は、何台でもよく、8台以下(例えば、6台)としてもよいし、8台以上(例えば、10台)としてもよい。そして、全方位の画像も、そのカメラの台数分の画像により構成される。
【0029】
図3は、ユーザ端末2の構成を表している。図3において、CPU(Central Processing Unit)21は、ROM(Read Only Memory)22に記憶されているプログラム、または記憶部30からRAM(Random Access Memory)23にロードされたプログラムに従って各種の処理を実行する。RAM23にはまた、CPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0030】
CPU21、ROM22およびRAM23は、バス26を介して相互に接続されている。また、バス26には、視点指定部24、デコード部25、および入出力インタフェース27が接続されている。
【0031】
視点指定部24は、入力部28からのユーザの操作に基づいて決定された視点により視点情報が作成される。この視点情報は、デコード部25に出力されるとともに、通信部31およびネットワーク1を介して、サーバ3にも送信される。
【0032】
デコード部25は、視点指定部24により作成された視点情報に基づいて、通信部31により受信されたサーバ3からの全方位の画像データの中から、視点を中心とする画像の画像データをデコードし、出力部29に供給する。
【0033】
入出力インタフェース27には、ヘッドマウントディスプレイ、マウス、ジョイスティックなどよりなる入力部28、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部29、ハードディスクなどより構成される記憶部30、モデム、ターミナルアダプタなどより構成される通信部31が接続されている。通信部31は、ネットワーク1を介しての通信処理を行う。
【0034】
入出力インタフェース27にはまた、必要に応じてドライブ40が接続され、磁気ディスク41、光ディスク42、光磁気ディスク43、或いは半導体メモリ44などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部30にインストールされる。
【0035】
図4は、サーバ3の構成例を表している。CPU61乃至RAM63およびドライブ80乃至半導体メモリ84は、図3のユーザ端末2のCPU21乃至RAM23およびドライブ40乃至半導体メモリ44と基本的に同様の機能を有するものであるので、その説明は省略する。
【0036】
サーバ3のバス66には、視点決定部64、エンコード部65、および入出力インタフェース67が接続されている。
【0037】
視点決定部64は、ネットワーク1を介してユーザ端末2より送信された視点情報に基づいて視点を決定する。エンコード部65は、視点決定部64からの視点情報に基づいて、撮影装置4から入力された画像データを、例えば、JPEG2000の画像フォーマットでエンコードし、それぞれエンコードされた画像データを、全方位の画像の画像データとして、通信部71を介してユーザ端末2に送信する。
【0038】
入出力インタフェース67には、マウスやキーボードなどよりなる入力部68、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部69、ハードディスクなどより構成される記憶部70、モデム、ターミナルアダプタなどより構成される通信部71が接続されている。通信部71は、ネットワーク1を介しての通信処理を行う。
【0039】
次に、図5のフローチャートを参照して、全方位画像提供システムの通信処理について説明する。
【0040】
この全方位画像提供システムにおいて、全方位の画像は、図6に示されるように、例えば、8台のカメラ5−1乃至5−8により撮影される8つの方向の画像により構成される。この8つの方向は、上中央部の方向を「N」(北)とすると、「N」から時計回りの順に、「NE」(北東),「E」(東),「SE」(南東),「S」(南),「SW」(南西),「W」(西)および「NW」(北西)とされる。したがって、「N」と対角である下中央部の方向は、「S」とされ、「N」の右側方向は、「NE」とされ、「N」の左側方向は、「NW」とされる。なお、以降、説明の便宜上、これらの8方向を視点情報とする。
【0041】
ユーザによりユーザ端末2の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS1において、視点指定部24は、現在の視点を表す、視点情報を設定する。ステップS2において、通信部31は、視点指定部24により設定された視点情報(いまの場合、「N」)を、ネットワーク1を介して、サーバ3に送信する。
【0042】
サーバ3の通信部71は、ステップS11において、ユーザ端末2からの視点情報を受信し、視点決定部64に出力する。ステップS12において、エンコード部65は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図7のフローチャートを参照して説明する。
【0043】
ステップS31において、エンコード部65は、予め設定された解像度(高解像度)R1を、解像度Rとする。ステップS32において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より、8方向の画像データを受け取る。
【0044】
エンコード部65は、ステップS33において、視点決定部64からの視点情報に基づいて、エンコードする方向の画像を選択し、それをXとし、ステップS34において、Xの左隣の画像をYとする。いまの場合、現在の視点情報が「N」であるので、Xは、「N」の画像であり、Yは、「NW」の画像である。
【0045】
エンコード部65は、ステップS35において、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS36において、Xの画像データを、解像度Rでエンコードする。すなわち、「N」の画像データは、予め設定された解像度R1でエンコードされる。
【0046】
ステップS37において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「NE」の画像とされる。
【0047】
エンコード部65は、ステップS38において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS39において、Yの画像データを既にエンコードしたか否かを判断する。ステップS39において、まだ、Yの画像データをエンコードしていないと判断された場合、ステップS40において、エンコード部65は、Yの画像データを、解像度Rでエンコードする。すなわち、「NW」の画像データが、解像度R1の1/2の解像度で(画素数が1/2になるように)エンコードされる。
【0048】
エンコード部65は、ステップS41において、Yを1つ左の画像に移動させる。いまの場合、Yは、「W」の画像とされる。
【0049】
そして、エンコード部65は、ステップS35に戻り、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS36において、Xの画像データを、解像度Rでエンコードする。これにより、いまの場合、「NE」の画像データが、解像度R1の1/2の解像度でエンコードされる。
【0050】
ステップS37において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「E」の画像とされる。
【0051】
ステップS38において、現在の解像度(いまの場合、(1/2)解像度R1)を1/2にしたもの((1/4)解像度R1)を、新たな解像度Rとする。ステップS39において、エンコード部65は、Yの画像データを既にエンコードしたか否かを判断し、まだ、Yの画像データをエンコードしていないと判断した場合、ステップS40において、Yの画像データを、解像度Rでエンコードする。すなわち、「W」の画像データが、解像度R1の1/4の解像度でエンコードされる。
【0052】
エンコード部65は、ステップS41において、Yを1つ左の画像に移動させる。いまの場合、Yは、「SW」の画像とされる。
【0053】
そして、エンコード部65は、ステップS35に戻り、それ以降の処理を繰り返す。このようにして、「E」の画像データが、解像度R1の1/4の解像度でエンコードされ、「SW」および「SE」の画像データが、解像度R1の1/8の解像度でエンコードされ、「S」の画像データが、解像度R1の1/16の解像度でエンコードされる。
【0054】
その結果、図6または図8に示されるように、現在の視点である「N」の画像の解像度を1とした場合、「N」の左右隣の「NW」および「NE」の画像の解像度は、1/2とされ、「NW」の左隣の「W」および「NE」の右隣の「E」の画像の解像度は、1/4とされ、「W」の左隣の「SW」および「E」の右隣の「SE」の画像の解像度は、1/8とされ、「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像の解像度は、1/16とされる。なお、図8の例の場合、隣接する方向の画像は、現在の視点である「N」を中心に並べられている。
【0055】
以上のように、現在の視点の方向に近い方向の画像データに比べて、移動する可能性が低いと予測される現在の視点の方向からより離れた方向の画像データは、より低い解像度でエンコードされる。
【0056】
そして、ステップS35において、Xの画像データを既にエンコードしたと判断された場合、または、ステップS39において、Yの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、処理は、図5のステップS13に進む。
【0057】
ステップS13において、通信部71は、エンコード部65によりエンコードされた全方位の画像の画像データをネットワーク1を介してユーザ端末2に送信する。
【0058】
ステップS3において、ユーザ端末2の通信部31は、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS4において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を、出力部29を構成するディスプレイに表示させる。
【0059】
以上のように、視点情報に基づいた視点方向を中心として、他の方向の画像データを、視点方向の画像データよりも低い解像度でエンコードするようにしたので、全ての方位の画像を現在の視点の画像と同一の解像度でエンコードする場合に較べて、送信する画像データの情報量を軽減することができる。
【0060】
さらに、図5の全方位画像提供システムの通信処理におけるデータの流れについて、図9を参照して説明する。図9においては、縦方向は、時間軸を示し、上から下に行くに連れて、時間が経過している。また、ユーザ端末2の時間軸に沿って付けられているa0,a1,a2,…は、ユーザ端末2からサーバ3に送信されるACK(確認応答パケット)と視点情報が送信されるタイミングを示し、サーバ3の時間軸に沿って付けられているb0,b1,b2,…は、サーバ3からユーザ端末2に画像データのパケットが送信されるタイミングを示し、撮影装置4の時間軸に沿って付けられているc0,c1,c2,…は、撮影装置4からサーバ3に画像データが送信されるタイミングを示している。
【0061】
a0のタイミングにおいて、ユーザ端末2から、ACKと視点情報「N」(現在の視点が「N」である)が送信される。サーバ3は、この視点情報「N」を受けて、撮影装置4からc0のタイミングで送信された画像データを、視点「N」を中心としてエンコードする。そして、サーバ3は、エンコードした画像データを含むパケットを、b1のタイミングにおいてユーザ端末2に向けて送信する。
【0062】
ユーザ端末2は、その画像データのパケットを、a2のタイミングの直前に受信し、視点情報「N」に基づいてデコードする。そして、ユーザ端末2は、a2のタイミングにおいて、視点「N」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「N」をサーバ3に送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0063】
この例では、a4のタイミングにおいて、ACK(b3のタイミングで送信されたパケットを受信した確認応答パケット)と視点情報「N」が送信された後に、ユーザは、視点を「N」から「N」の右隣の方向である「NE」に移動させる。それに対応して、a5のタイミング以降に、ユーザ端末2で設定される視点情報は、「N」から「NE」に変わる。
【0064】
しかしながら、サーバ3により画像データのパケットが送信されるb4とb5のタイミングにおいては、まだ、サーバ3に、変更された視点情報「NE」が伝わっていないため、サーバ3は、撮影装置4からc3およびc4のタイミングで送信された画像データを、視点「N」を中心としてエンコードして、ユーザ端末2に送信する。
【0065】
したがって、ユーザ端末2は、視点「N」を中心としてエンコードされた画像データのパケットを、a5とa6のタイミングの直前に受信し、変更された視点情報「NE」に基づいて、デコードすることになる。「N」の画像の解像度に対して、「NE」の画像の解像度は、まだ、1/2のままであるので、この「NE」の画像データは、標準の半分の解像度でデコードされる。すなわち、出力部29においては、現在の実際の視点の「NE」の画像が、まだ、標準の半分の画質で表示される。
【0066】
また、サーバ3は、b5のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末2によりa5のタイミングで送信されたACKと視点情報「NE」を受ける。したがって、次のb6のタイミング以降において、サーバ3は、画像データを、視点情報「NE」に基づいて、エンコードするように変更する。これにより、ユーザ端末2は、a7のタイミングの直前において、視点「NE」を中心としてエンコードされた画像データのパケットを受信し、視点情報「NE」に基づいてデコードすることになる。したがって、この時点から、現在の視点「NE」の画像が、標準の解像度で表示される。
【0067】
そして、ユーザ端末2は、a7のタイミングにおいて、視点「NE」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「NE」をサーバ3に送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0068】
この例では、a8のタイミングにおいて(b7のタイミングで送信されたパケットを受信した確認応答パケット)、ACKと視点情報「NE」が送信された後に、ユーザは、視点を「NE」から「NE」の対角方向である「SW」に移動させる。それに対応して、a9のタイミング以降にユーザ端末2で設定される視点情報は、「NE」から「SW」に変わる。
【0069】
しかしながら、サーバ3により画像データのパケットが送信されるb8とb9のタイミングにおいては、まだ、サーバ3に、変更された視点情報「SW」が伝わっていないため、サーバ3は、撮影装置4からc7とc8のタイミングで送信された画像データを、視点「NE」を中心としてエンコードして、ユーザ端末2に送信する。
【0070】
したがって、ユーザ端末2は、視点「NE」を中心としてエンコードされた画像データのパケットを、a9とa10のタイミングの直前に受信し、視点情報「SW」に基づいて、デコードすることになる。「NE」の画像の解像度に対して、「SW」の画像の解像度は、1/16であるので、この「SW」の画像データは、標準の1/16の解像度でデコードされる。すなわち、出力部29においては、現在の実際の視点の「SW」の画像が、標準の1/16の画質で表示される。
【0071】
また、サーバ3は、b9のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末2によりa9のタイミングにおいて送信された視点情報「SW」を受けるので、b10のタイミング以降において、サーバ3は、画像データを、視点情報「SW」に基づいて、エンコードするように変更する。これにより、ユーザ端末2は、a11のタイミングの直前において、視点「SW」を中心としてエンコードされた画像データのパケットを受信し、視点情報「SW」に基づいてデコードするようになる。したがって、この時点から、現在の視点「SW」の画像が、標準の解像度で表示される。
【0072】
そして、ユーザ端末2は、a11のタイミングにおいて、視点「SW」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるACKと視点情報「SW」を送信する。以上の処理が、ユーザ端末2とサーバ3間で、ユーザが視点を移動するまで、繰り返される。
【0073】
以上のようにして、ユーザ端末2とサーバ3の通信処理が実行されることにより、ユーザ端末2における視点の動きにスムーズに対応することができる。
【0074】
すなわち、視点が、360度のいずれかの方向に(8つの方向のうちのいずれかの方向に)変更されたとしても、新たな視点の画像を迅速に表示させることができる。迅速な表示が可能な分、視点変更直後の画質は劣化する。しかしながら、その劣化の程度は、現在の視点から遠い(視点変更の可能性が低い)ほど大きく、現在の視点に近い(視点変更の可能性が大きい)ほど小さい。したがって、ユーザは、その画質の劣化の変化に納得がいき、好ましいユーザインタフェースを実現することができる。
【0075】
なお、上記説明においては、視点情報を、カメラ方向である「N」、「NE」などを用いて説明したが、実際には、図10に示されるように、カメラ5−1乃至5−8の方向に対して、視点IDを設定し、設定された視点IDとカメラ5−1乃至5−8の方向との対応関係を、ユーザ端末2とサーバ3で共有するようにしてもよい。
【0076】
図10の例の場合、視点ID「0」には、カメラ方向「N」が対応し、視点ID「1」には、カメラ方向「NE」が対応し、視点ID「2」には、カメラ方向「E」が対応し、視点ID「3」には、カメラ方向「SE」が対応するように設定され、また、視点ID「4」には、カメラ方向「S」が対応し、視点ID「5」には、カメラ方向「SW」が対応し、視点ID「6」には、カメラ方向「W」が対応し、視点ID「7」には、カメラ方向「NW」が対応するように設定される。したがって、この場合においては、ユーザ端末2から送信される視点情報には、この視点IDが書き込まれている。
【0077】
また、以上においては、カメラ5−1乃至5−8に対応する左右方向の視点の移動について説明したが、撮影装置4においては、上下方向にカメラが複数台ある場合も考えられる。図11および図12を参照して、上下方向にもカメラが複数台ある場合の画像データのエンコード方法の例について説明する。なお、図11および図12においては、図8と同様に、隣接する方向の画像を、現在の視点である「N2」を中心に並べられている。また、「N2」の「N」は、左右方向の位置を表し、「2」は上下方向の位置を表すものとする。
【0078】
図11および図12の例の場合、撮影装置4は、左から順に、「S」,「SW」,「W」,「NW」,「N」,「NE」,「E」および「SE」の8つの左右方向の画像を撮影するカメラに加えて、上から順に、「1」,「2」および「3」の3つの上下方向の画像を撮影するカメラにより構成されている。したがって、この場合の全方位の画像は、24方向の画像により構成される。
【0079】
図11の例においては、現在の視点「N2」の画像の解像度を1とした場合、「N2」の左右隣の「NW2」および「NE2」の画像の解像度と同様に、「N2」の上下隣の「N1」および「N3」の画像の解像度も1/2とされる。そして、これらの、1/2の解像度の画像に接する「NW1」,「W2」,「NW3」,「NE1」,「E2」および「NE3」の画像の解像度は、1/4とされる。また、これらの、1/4の解像度の画像に接する「SW2」,「W1」,「W3」,「E1」,「E3」および「SE2」の画像の解像度は、1/8とされ、それ以外の「S1」,「S2」,「S3」,「SW1」,「SW3」,「SE1」および「SE3」の画像の解像度は、1/16とされる。
【0080】
また、上下方向の移動が可能になったことにより、横方向の移動と合わせて、斜め方向に移動させるようにしてもよい。この場合、図12に示されるように、「N2」から「NE1」および「NW1」などの斜め方向への移動を考慮したエンコード方法を用いることもできる。
【0081】
図12の例においては、現在の視点「N2」の画像の解像度を1とした場合、「N2」を囲む「NW1」,「NW2」,「NW3」,「N1」,「N3」,「NE1」,「NE2」および「NE3」の画像の解像度は、1/2とされる。そして、これらの、1/2の解像度の画像に接する「W1」,「W2」,「W3」,「E1」,「E2」および「E3」の画像の解像度は、1/4とされる。また、これらの、1/4の解像度の画像に接する「SW1」,「SW2」,「SW3」,「SE1」,「SE2」および「SE3」の画像の解像度は、1/8とされ、それ以外の「S1」,「S2」および「S3」の画像の解像度は、1/16とされる。
【0082】
以上のように、上下方向にもカメラが複数台ある場合にも、各方向の画像データに対して、異なる解像度によりエンコードするようにしたので、送信する画像データの情報量を軽減することができる。
【0083】
次に、図13乃至図15を参照して、図1の全方位画像提供システムにおける画像のエンコード方式としてのJPEG2000の画像フォーマットについて説明する。なお、図13は、JPEG2000のウェーブレット変換の例を説明する図であり、図14および図15は、図13に示されたウェーブレット変換の具体的な例を示している。
【0084】
JPEG2000では、画像を小さな矩形のブロック領域(セル)に分割した後に、その分割単位でウェーブレット変換を行うことができる。
【0085】
図13に示されるウェーブレット変換においては、画像データから、水平、垂直方向の低周波成分と高周波成分が抽出され、そのうち、最も重要な要素である、水平、垂直両方向の低周波成分が再帰的に(いまの場合、3回)分割される方式であるオクターブ分割方式が用いられている。
【0086】
図13の例の場合、「LL」,「LH」,「HL」および「HH」は、その1文字目が水平成分、2文字目が垂直成分を示し、「L」は、低周波成分、「H」は、高周波成分を示している。したがって、図13においては、画像が「LL1」,「LH1」,「HL1」および「HH1」に分割されている。そのうちの水平、垂直両方向の低周波成分である「LL1」が、さらに、「LL2」,「LH2」,「HL2」および「HH2」に分割され、そのうちの水平、垂直両方向の低周波成分である「LL2」が、さらに、「LL3」,「LH3」,「HL3」および「HH3」に分割されている。
【0087】
したがって、図14に示されるように、元の画像91−1の解像度を1とすると、デコードすることなく(エンコードされた状態のままで)、解像度1/2の画像91−2を取り出すことができる。また、図15に示されるように、元の画像92−1の解像度を1とすると、デコードすることなく、解像度1/4の画像92−2を取り出すことができる。
【0088】
以上のように階層化したエンコードにより、エンコードされたままの画像データに対して(デコードすることなく)デコード側で画質やサイズなどの選択が可能になる。
【0089】
また、JPEG2000では、1つの画像内の特定領域の解像度を簡単に変えることができる。
【0090】
例えば、図16の例においては、現在の視点Pが、カメラ方向単位ではなく、複数のカメラに跨ってしまうような「N」と「NE」の画像の間の中央の位置に設定されている。このような場合、JPEG2000を用いることにより、「N」の画像の右半分と「NE」の画像の左半分を、例えば、解像度1で圧縮し、「N」の画像の左半分および「NW」の画像の右半分と、「NE」の画像の右半分および「E」の画像の左半分を1/2の解像度で圧縮することができ、カメラ方向単位ではない視点の移動が可能になる。
【0091】
なお、図16の例における視点情報は、図17に示されるように、例えば、「N」の画像において定められた、左上を原点とするxy座標平面(0≦x≦X,0≦y≦Y)において、現在の視点の「x座標」および「y座標」が求められ、その求められた現在の視点の「x座標」および「y座標」が、「カメラ方向」を決める視点ID(i)とともに、以下の(1)式のように記述されることにより作成される。
【0092】
{(i,x,y)|i=∈{0,1,2,3,4,5,6,7},0≦x≦X,0≦y≦Y} … (1)
【0093】
なお、カメラ単位でしか視点の移動ができない場合には、x=X/2,y=Y/2で固定されて表される。
【0094】
例えば、図16における視点Pの視点情報は、「N」と「NE」の間の中央の位置であるので、(i,x,y)=(0,X,Y/2)のように表される。
【0095】
なお、図16の例においては、この視点情報が、画像上のある一点として説明したが、「一点とその移動方向」を表すベクトル情報とすることにより、サーバ3において、視点の移動を予測するようにすることもできる。
【0096】
以上のように、JPEG2000を用いて、各方向の画像がエンコードされることにより、カメラ方向単位ではない視点の移動が可能になる。
【0097】
以上においては、1つのカメラが出力する1つの画像(1つの画面)を単位として解像度を設定するようにしたが、(図6、図8、図11および図12において、ハッチングなどで表されている領域が1つの画像(画面)である)、1つの画面内において、領域によって異なる解像度を設定することもできる。
【0098】
図18乃至図20を参照して、この場合の例について説明する。なお、図18乃至図20において、太い実線で囲まれている、横方向の長さX、縦方向の長さYの領域が、1つの画像(画面)(例えば、「N」の画像)である。
【0099】
図18において、「N」の画像は、図17と同様に、左上を原点とするxy座標において、0≦x≦X,0≦y≦Yの範囲で表され、その中の領域101が、視点(xc,yc)を中心として、横の長さH、縦の長さV(X/2≦H,Y/2≦V)で囲まれた範囲とされる。
【0100】
この例の場合、図19に示されるように、「N」の画像内の座標(x,y)のうち、xc−H/2≦x≦xc+H/2、かつ、yc−V/2≦y≦yc+V/2を満たす範囲(すなわち、領域101内部)のデータが、設定された解像度R1(最も大きい解像度)でエンコードされる。
【0101】
また、図20に示されるように、「N」の画像内の座標(x,y)のうち、xc−H/2≦x≦xc+H/2、かつ、yc−V/2≦y≦yc+V/2を満たす範囲を除いた、xc−H/2≦x≦xc+H/2、または、yc−V/2≦y≦yc+V/2を満たす範囲(すなわち、領域101の上下左右の辺に接する領域102−1乃至102−4の範囲)のデータが、解像度R1の1/2の解像度でエンコードされる。
【0102】
さらに、図21に示されるように、xc−H/2≦x≦xc+H/2も満たさず、かつ、yc−V/2≦y≦yc+V/2も満たさない範囲(すなわち、領域101の上下左右の辺に接しない(領域101に対して対角方向に接する)領域103−1乃至103−4の範囲)のデータが、解像度R1の1/4の解像度でエンコードされる。
【0103】
以上のようにして、視点情報に基づいて、1枚の画像内において解像度を変更するようにしてもよい。これにより、「現在の見ている方向」に加えて、「その方向の画像内の見ている部分」にまで、視点情報を広げ、標準の解像度で圧縮されている画像(例えば、現在の視点「N」)内の特定の領域を、さらに高解像度で圧縮するようにできる。
【0104】
以上のように、JPEG2000を用いて画像データをエンコードすることにより、1つのカメラにより撮影された1つの方向の画像内における任意の位置の解像度を、他の位置と異なる解像度でエンコードすることが可能になる。
【0105】
以上においては、領域によって画素数を変更することで解像度を変更するようにしたが、色数を変更することで解像度を変更するようにしてもよい。
【0106】
次に、図22のフローチャートを参照して、この色数を減らして解像度を変更する場合の全方位の画像の画像データ作成処理について説明する。なお、この処理は、図5のステップS12(すなわち、図7)の全方位の画像の画像データ作成処理の他の例である。したがって、サーバ3の通信部71により、ユーザ端末2からの視点情報が、視点決定部64に出力されている。
【0107】
ステップS61において、エンコード部65は、予め設定された使用する色数C1を色数Cとする。ステップS62において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より、8方向の画像データを受け取る。
【0108】
エンコード部65は、ステップS63において、視点決定部64からの視点情報に基づいて、エンコードする画像を選択し、それをXとし、ステップS64において、Xの左隣の画像をYとする。いまの場合、現在の視点情報が「N」であるので、Xは、「N」の画像とされ、Yは、「NW」の画像とされる。
【0109】
エンコード部65は、ステップS65において、Xの画像データを既にエンコードしたか否かを判断し、まだ、Xの画像データをエンコードしていないと判断した場合、ステップS66において、Xの画像データを、色数Cでエンコードする。これにより、「N」の画像データは、予め設定された色数C1(最も多い色数)でエンコードされる。
【0110】
ステップS67において、エンコード部65は、Xを1つ右の画像に移動させる。いまの場合、Xは、「NE」の画像とされる。
【0111】
エンコード部65は、ステップS68において、現在の色数(いまの場合、色数C1)を1/2にしたものを、新たな色数Cとし、ステップS69において、Yの画像データを既にエンコードしたか否かを判断する。ステップS69において、まだ、Yの画像データをエンコードしていないと判断された場合、ステップS70において、エンコード部65は、Yの画像データを、色数Cでエンコードする。すなわち、「NW」の画像データが、色数C1の1/2の色数でエンコードされる。
【0112】
エンコード部65は、ステップS71において、Yを1つ左の画像に移動させる。いまの場合、Yは、「W」の画像とされる。
【0113】
そして、エンコード部65は、ステップS65に戻り、それ以降の処理を繰り返す。このようにして、「NE」の画像データが、色数C1の1/2の色数でエンコードされ、「W」および「E」の画像データが、色数C1の1/4の色数でエンコードされ、「SW」および「SE」の画像データが、色数C1の1/8の色数でエンコードされ、「S」の画像データが、色数C1の1/16の色数でエンコードされる。
【0114】
ステップS65において、Xの画像データを既にエンコードしたと判断された場合、または、ステップS69において、Yの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、全方位の画像の画像データ作成処理は終了する。
【0115】
以上のように、現在の視点の方向に近い方向の画像データに比べて、現在の視点の方向から離れた方向の画像データが、少ない色数でエンコードされるようにしたので、送信する画像データの情報量を軽減することができる。
【0116】
以上より、画像内の色数を減らしたり、画像のサイズを小さくしたり、または、量子化パラメータを変更するように、視点からの距離に比例して画像データの情報量を減らすようにしてもよい。
【0117】
次に、図23のフローチャートを参照して、エンコードされた画像データを一旦記憶部70に記憶してから送信する場合の通信処理について説明する。
【0118】
ユーザによりユーザ端末2の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS81において、視点指定部24は、視点情報を作成する。ステップS82において、通信部31は、視点指定部24により作成された視点情報を、ネットワーク1を介して、サーバ3に送信する。
【0119】
サーバ3の通信部71は、ステップS91において、ユーザ端末2からの視点情報を受信し、視点決定部64に出力する。ステップS92において、エンコード部65は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図24のフローチャートを参照して説明する。なお、図24のステップS101乃至S106,S108乃至S111,S113の処理は、図7のステップS31乃至S41の処理と同様の処理であり、繰り返しになるので、その説明は省略する。
【0120】
すなわち、解像度Rが設定され、カメラ5−1乃至5−8より8方向の画像データが取得され、視点決定部64からの視点情報に基づいて、画像Xと画像Yが求められる。そして、ステップS105において、Xの画像データをエンコードしていないと判断された場合、ステップS106において、エンコード部65により、Xの画像データが対応する解像度Rでエンコードされるので、ステップS107において、エンコード部65は、そのエンコードされたXの画像データを記憶部70に記憶する。
【0121】
同様にして、ステップS110において、Yの画像データをエンコードしていないと判断された場合、ステップS111において、エンコード部65により、Yの画像データが対応する解像度Rでエンコードされるので、ステップS112において、エンコード部65は、そのエンコードされたYの画像データを記憶部70に記憶する。
【0122】
以上の処理により、全方位の画像の画像データが対応する解像度でエンコードされ、記憶部70に一旦記憶される。
【0123】
次に、ステップS93において、CPU61は、全方位の画像の画像データの取得処理を実行する。この全方位の画像の画像データの取得処理について、図25のフローチャートを参照して説明する。
【0124】
ステップS121において、CPU61は、視点決定部64からの視点情報に基づいて、中心となる「N」の画像を、Xとし、設定された解像度R1(最も高い解像度)でエンコードされている「N」の画像データを、記憶部70から読み出し、通信部71に出力する。
【0125】
CPU61は、ステップS122において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS123において、Xを1つ右の画像に移動させ、ステップS124において、Xの左隣の画像をYとする。
【0126】
ステップS125において、CPU61は、Xの画像データを既に記憶部70から読み出したか否かを判断し、まだ、Xの画像データを記憶部70から読み出していないと判断した場合、ステップS126において、解像度RのXの画像データを記憶部70から読み出し、通信部71に出力する。すなわち、いまの場合、解像度R1の1/2の解像度である「NE」の画像データが記憶部70から読み出される。
【0127】
CPU61は、ステップS127において、Xを1つ右の画像に移動させ、ステップS128において、Yの画像データを既に記憶部70から読み出したか否かを判断する。ステップS128において、まだ、Yの画像データを記憶部70から読み出していないと判断された場合、ステップS129において、解像度RのYの画像データを記憶部70から読み出し、通信部71に出力する。すなわち、いまの場合、解像度R1の1/2の解像度である「NW」の画像データが記憶部70から読み出される。
【0128】
CPU61は、ステップS131において、Yを1つ左の画像に移動させ、ステップS132において、解像度R(いまの場合、(1/2)解像度R1)を1/2にしたもの((1/4)解像度R1)を、解像度Rとし、ステップS125に戻り、それ以降の処理を繰り返す。
【0129】
ステップS125において、既にXの画像データを読み出したと判断された場合、または、ステップS128において、既にYの画像データを読み出したと判断された場合、すべての画像データが読み出されたので、処理を終了する。
【0130】
以上の処理により、例えば、現在の視点の解像度を1とした場合、解像度1の「N」の画像データが通信部71に出力され、解像度1/2の「N」の左右隣の「NW」および「NE」の画像データが通信部71に出力され、解像度1/4の「NW」の左隣の「W」および「NE」の右隣の「E」の画像データが通信部71に出力される。また、解像度1/8の「W」の左隣の「SW」および「E」の右隣の「SE」の画像データが通信部71に出力され、解像度1/16の「SW」の左隣(すなわち、「N」の対角方向)の「S」の画像データが出力される。
【0131】
これらの全方位の画像の画像データを、図23のステップS94において、通信部71は、ネットワーク1を介してユーザ端末2に送信する。
【0132】
ステップS83において、ユーザ端末2の通信部31は、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS84において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を、出力部29を構成するディスプレイに表示させる。
【0133】
以上のように、各カメラの画像に対して、異なる解像度によりエンコードした画像データを一旦記憶し、それを読み出してから送信するようにしたので、例えば、ユーザがどのように全方位映像を楽しんだかがサーバ3側(主催者側)で確認できるというような、ライブ配信のリプライが可能になる。
【0134】
なお、この場合、通信部71は、視点情報に基づいたすべての画像データを取得してからまとめてユーザ端末2に送信するようにしたが、CPU61から各方向の画像データが出力する度に、その画像データをネットワーク1を介してユーザ端末2に送信するようにしてもよい。この場合においては、より高い解像度の画像データから順番に、読み出され、送信されるので、送信する画像データの情報量を軽減することができるだけでなく、受信側で、より迅速に表示を行うことが可能になる。
【0135】
また、図23のステップS92においては、エンコードされた全方位の画像の画像データが各方向の画像データ毎に生成され、記憶されるが、図13を参照して説明したJPEG2000によりエンコードすることにより、例えば、図8に示されるように、解像度の異なる8方向の画像を繋ぎ合わせて、1つの画像として合成するようできる。これにより、記憶部70のデータ管理のコストを軽減できる。さらに、隣接する方向の画像を繋ぎ合わせることにより、例えば、「N」と「NE」の間に視点がある場合のように、同じ圧縮率で複数の画像データに対してエンコードを実行する場合に、1つのファイルの連続部分をエンコードすることになり、処理の煩雑さが軽減される。
【0136】
さらに、図26のフローチャートを参照して、この全方位の画像の画像データの取得処理の他の例について説明する。なお、この処理は、図23のステップS93(すなわち、図25)の全方位の画像の画像データ取得処理の他の例である。ただし、いまの場合、図23のステップS92の処理により、全方位の画像の画像データすべてが、エンコード部65により、設定された解像度R1のみで(最高の解像度で)エンコードされ、記憶部70に一旦記憶されているものとする。
【0137】
CPU61は、ステップS141において、エンコードされた全方位(8つ)の画像データを記憶部70から取得し、ステップS142において、視点決定部64からの視点情報に基づいて、中心となる「N」の画像を、Xとし、そのままの解像度R1で、通信部71に出力する。
【0138】
CPU61は、ステップS143において、現在の解像度(いまの場合、解像度R1)を1/2にしたものを、新たな解像度Rとし、ステップS144において、Xを1つ右の画像に移動させ、ステップS145において、Xの左隣の画像をYとする。
【0139】
ステップS146において、CPU61は、Xの画像データを既に通信部71に出力したか否かを判断し、まだ、Xの画像データを通信部71に出力していないと判断した場合、ステップS147において、Xの画像データを、解像度Rに変換して、通信部71に出力する。すなわち、いまの場合、「NE」の画像データが解像度R1の1/2の解像度に変換されて、通信部71に出力される。
【0140】
CPU61は、ステップS148において、Xを1つ右の画像に移動させ、ステップS149において、Yの画像データを既に通信部71に出力したか否かを判断する。ステップS149において、まだ、Yの画像データを通信部71に出力していないと判断された場合、ステップS150において、Yの画像データを、解像度Rに変換して、通信部71に出力する。すなわち、いまの場合、「NW」の画像データが解像度R1の1/2の解像度に変換されて、通信部71に出力される。
【0141】
CPU61は、ステップS151において、Yを1つ左の画像に移動させ、ステップS152において、解像度R(いまの場合、解像度R1の1/2)を1/2にしたもの(解像度R1の1/4にしたもの)を、解像度Rとし、ステップS146に戻り、それ以降の処理を繰り返す。
【0142】
ステップS146において、既にXの画像データを通信部71に出力したと判断された場合、または、ステップS149において、既にYの画像データを通信部71に出力したと判断された場合、すべての画像データが通信部71に出力されたので、処理を終了する。
【0143】
以上のように、各カメラの画像に対して、設定された高解像度によりエンコードされた画像データを一旦記憶し、それを読み出して、視点情報に基づいた解像度変換を行ってから送信するようにしても、送信する画像データの情報量を軽減することができる。
【0144】
なお、上記説明においては、撮影された画像を、対応する解像度または設定された解像度でエンコードし、一旦記憶し、それを読み出してから送信する(すなわち、記憶しながら送信する)場合を説明したが、サーバ3の記憶部70に、エンコード部65によりさまざまな解像度で、エンコードされ、予め記憶されている画像を、図23のステップS93の処理で取得し、送信するようにしてもよい。
【0145】
すなわち、この場合、図23においては、ステップS92の処理は実行されず(図23の全方位画像データの通信処理の前に実行されているため)、ステップS93(図25)の全方位の画像の画像データ取得処理においては、撮影装置4のカメラ5−1乃至5−8により撮影され、さまざまな解像度でエンコードされ、予め記憶されている画像データの中から、視点情報に対応する解像度のものが読み出され、送信される。なお、この場合の解像度は、全方位画像提供システムで提供され得るあらゆる解像度とし、図25の取得処理を適用するようにしてもよいし、設定された高解像度とし、図26の取得処理を適用するようにしてもよい。
【0146】
次に、図27を参照して、本発明を適用した全方位画像提供システムの他の構成例を説明する。なお、図27において、図1における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
【0147】
この例の場合、ネットワーク1には、ルータ122を介して、n台のユーザ端末121−1,121−2,…121−n(以下、これらを個々に区別する必要がない場合、単にユーザ端末121と称する)が接続されている。
【0148】
ルータ122は、マルチキャストルータであり、ユーザ端末121からの視点情報に基づいて、サーバ3から送信される全方位の画像の画像データの中から、各ユーザ端末121に送信する画像データを検索し、その画像データを、ユーザ端末121に送信する処理を実行する。
【0149】
また、ユーザ端末121は、ユーザ端末1と基本的に同様の構成であり、繰り返しになるのでその説明は省略する。
【0150】
図28は、ルータ122の構成例を表している。図28において、CPU131乃至RAM133およびバス134乃至半導体メモリ144は、図3のユーザ端末2のCPU21乃至RAM23およびバス26乃至半導体メモリ44と基本的に同様の機能を有するものであるので、その説明は省略する。
【0151】
次に、図29のフローチャートを参照して、図27の全方位画像提供システムの通信処理について説明する。なお、図29においては、説明の便宜上、ユーザ端末121−1と121−2の2台としているが、実際は、n(n>0)台とされる。
【0152】
ユーザによりユーザ端末121−1の入力部28が操作され、現在の視点(いまの場合、「N」)が入力される。それに対応して、ステップS201において、視点指定部24は、視点情報を作成する。ステップS202において、通信部31は、視点指定部24により作成された視点情報を、ルータ122を介して、サーバ3に送信する。
【0153】
ルータ122のCPU131は、ステップS221において、通信部139によりユーザ端末121−1からの視点情報「N」を受信し、ステップS222において、記憶部138などを構成する視点情報テーブルに記憶し、ステップS223において、通信部139により、ネットワーク1を介して、サーバ3に送信する。
【0154】
また、同様にして、ユーザによりユーザ端末121−2の入力部28が操作され、現在の視点(いまの場合、「NE」)が入力される。それに対応して、ステップS211において、視点指定部24は、視点情報を作成する。ステップS212において、通信部31は、視点指定部24により作成された視点情報を、ルータ122を介して、サーバ3に送信する。
【0155】
ルータ122のCPU131は、ステップS224において、通信部139によりユーザ端末121−2からの視点情報「NE」を受信し、ステップS225において、記憶部138などを構成する視点情報テーブルに記憶し、ステップS226において、通信部139により、ネットワーク1を介して、サーバ3に送信する。
【0156】
図30を参照して、ルータ122に記憶される視点情報テーブルについて説明する。この視点情報テーブルにおいては、各ユーザ端末121に、図10を参照して説明した視点IDが対応付けられる。
【0157】
図30の例の場合、ユーザ端末121−1より、視点情報「N」(すなわち、視点ID「0」)が送信されてくるので、ユーザ端末121−1には、視点ID「0」が対応付けられる。また、ユーザ端末121−2より、視点情報「NE」(すなわち、視点ID「1」)が送信されてくるので、ユーザ端末121−2には、視点ID「1」が対応付けられる。同様にして、ユーザ端末121−3には、視点ID「3」が対応付けられ、ユーザ端末121−4には、視点ID「0」が対応付けられ、ユーザ端末121−5には、視点ID「1」が対応付けられ、…、ユーザ端末121−nには、視点ID「0」が対応付けられる。
【0158】
以上のように、この視点IDは、ユーザ端末121、ルータ122およびサーバ3の間で共有される情報となる。
【0159】
一方、サーバ3の通信部71は、ステップS241において、ユーザ端末121−1からの視点情報「N」をルータ122を介して受信し、視点決定部64に出力し、ステップS242において、ユーザ端末121−2からの視点情報「NE」をルータ122を介して受信し、視点決定部64に出力する。
【0160】
ステップS243において、視点決定部64は、すべてのユーザ端末121から取得した視点情報に基づいて、各方向の画像の解像度を求める。いまの場合、視点決定部64は、各方向の画像に対して、すべてのユーザ端末121から要求される解像度を収集し、そのうちの最高解像度を、その画像の解像度とする。
【0161】
例えば、視点決定部64がユーザ端末121−1乃至ユーザ端末121−5からの視点情報(図30)を取得した場合、「N(視点ID「0」)」の画像に対しては、視点ID「0」のユーザ端末121−1により、設定された解像度であるR1が要求され、視点ID「1」のユーザ端末121−2により、解像度R1の1/2の解像度が要求され、視点ID「3」のユーザ端末121−3により、解像度R1の1/8の解像度が要求され、視点ID「0」のユーザ端末121−4により、解像度R1の解像度が要求され、視点ID「1」のユーザ端末121−5により、解像度R1の1/2の解像度が要求されている。したがって、「N」の画像の解像度は、これらのうちの最高解像度である解像度R1とされる。
【0162】
同様にして、「E(視点ID「2」)」の画像に対しては、視点ID「0」のユーザ端末121−1により、解像度R1の1/4の解像度が要求され、視点ID「1」のユーザ端末121−2により、解像度R1の1/2の解像度が要求され、視点ID「3」のユーザ端末121−3により、解像度R1の1/2の解像度が要求され、視点ID「0」のユーザ端末121−4により、解像度R1の1/4の解像度が要求され、視点ID「1」のユーザ端末121−5により、解像度R1の1/2の解像度が要求されている。したがって、「N」の画像の解像度は、これらのうちの最高解像度である解像度R1の1/2解像度とされる。
【0163】
なお、上述したステップS243の演算処理は、ユーザ端末121の数が少ない場合には、有効な方法であるが、ユーザ端末121が多い場合には、この演算の負荷を抑えるために、全ての画像を、設定された解像度R1で送るようにしてもよい。
【0164】
以上のようにして、各方向の画像に対する解像度が求められるので、その解像度に基づいて、ステップS244において、エンコード部65は、撮影装置4のカメラ5−1乃至5−8より供給された8方向の画像データをエンコードする。
【0165】
ステップS245において、通信部71は、エンコード部65によりエンコードされた全方位の画像の画像データを、ネットワーク1およびルータ122を介してユーザ端末121に送信する。
【0166】
これに対応して、ルータ122のCPU131は、ステップS227において、全方位の画像の画像データを通信部139を介して受信し、ステップS228において、画像データの送信処理を実行する。この画像データの送信処理について、図31のフローチャートを参照して説明する。いまの場合、ユーザ端末121がn台(n>0)あるとする。
【0167】
CPU131は、ステップS271において、i=1を設定し、ステップS272において、ユーザ端末121−i(いまの場合、i=1)に対して画像データを送信したか否かを判断する。ステップS272において、ユーザ端末121−1に対して、まだ画像データを送信していないと判断された場合、ステップS273において、CPU131は、図30を参照して説明した視点テーブルに基づいて、ユーザ端末121−1の視点情報を求める。
【0168】
ステップS274において、CPU131は、ユーザ端末121−1の視点情報「N」に基づいて、全方位の画像の画像データを、適する解像度に調整する。すなわち、受信した画像データの解像度と送信すべき画像データの解像度が同じであれば、そのままの解像度とするが、受信した画像データの解像度よりも要求される画像データの解像度が低ければ、要求される画像データの解像度に変換する。
【0169】
例えば、ユーザ端末121−1に対しては、「N」の画像データは、解像度R1で受信されるので、解像度R1のままにされ、「NE」の画像データは、解像度R1で受信されるので、解像度R1の1/2の解像度に変換され、「E」の画像データは、解像度R1の1/2の解像度で受信されるので、その解像度の1/2の解像度(すなわち、解像度R1の1/4の解像度)に変換される。
【0170】
ステップS275において、CPU131は、視点テーブルに基づいて、ユーザ端末121−1と同じ視点情報のユーザ端末があるか否かを判断し、同じ視点情報のユーザ端末(例えば、ユーザ端末121−4およびユーザ端末121−n)があったと判断した場合、ステップS276において、ユーザ端末121−1、ユーザ端末121−4およびユーザ端末121−nに、ステップS274において調整された全方位の画像の画像データを送信する。
【0171】
ステップS275において、視点テーブルに基づいて、ユーザ端末121−1と同じ視点情報のユーザ端末がないと判断された場合、ステップS277において、ユーザ端末121−1にのみ、その調整された全方位の画像の画像データを送信する。
【0172】
ステップS272において、ユーザ端末121−iに対して、送信が既になされていると判断された場合、ステップS273乃至S277の処理はスキップされる。
【0173】
CPU131は、ステップS278において、iを1つ加算し(いまの場合、i=2とし)、ステップS279において、iがnよりも小さいか否かを判断する。ステップS279において、iがnよりも小さいと判断された場合、処理は、ステップS272に戻り、それ以降の処理が繰り返される。ステップS279において、iがnと同じか、またはnよりも大きいと判断された場合、送信処理は終了される。
【0174】
以上の処理により、ユーザ端末121−1に対しては、視点情報「N」に基づいた全方位の画像の画像データが送信され、ユーザ端末121−2に対しては、視点情報「NE」に基づいた全方位の画像の画像データが送信される。
【0175】
図29に戻って、ルータ122の以上の処理に対応して、ユーザ端末121−1の通信部31は、ステップS203において、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS204において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部29に供給し、デコードされた画像を出力部29を構成するディスプレイに表示させる。
【0176】
同様にして、ユーザ端末121−2の通信部31は、ステップS213において、その全方位の画像の画像データを受信し、デコード部25に供給する。ステップS214において、デコード部25は、視点指定部24からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、デコードされた画像を出力部29に供給し、出力部29を構成するディスプレイに表示させる。
【0177】
以上のようにして、複数台のユーザ端末121において、視点の違いはあるにせよ、同じ画像ソースのデータを受け取ることができる。これにより、サーバ3の負荷が軽減され、さらに、ネットワーク1上のデータ量も軽減される。また、上記説明においては、サーバ3のエンコード部65においてエンコードされた画像データが即座に通信部71を介してネットワーク1に送信されていたが、この場合においても、エンコードされた画像データを一旦記憶部70に記憶するようにしてもよい。
【0178】
さらに、以上においては、画像データがJPEG2000でエンコードされているので、高解像度の画像データから低解像度の画像データに容易に変換する(取り出す)ことができ、変換のためのデコードが必要ないため、ルータ122の負荷を軽減することができる。
【0179】
また、ルータ122とユーザ端末121との間に充分な帯域があれば、ユーザ端末121が要求した解像度よりも高い解像度で送信してしまってもよい。この場合、ユーザ端末121においては、メモリ容量などの必要に応じて、解像度を落として表示するようになる。
【0180】
上記説明においては、画像の解像度が1/2,1/4,1/8または1/16のように指数的に変化していく例を説明したが、例えば、4/5,3/5,2/5または1/5のように線形的に変化してもよいし、急に背後を見る可能性の高い全方位の画像においては、1/2,1/4,1/2,1のように、減少後増加するような解像度としてもよく、特に制限はない。また、カメラ5−1乃至5−8により撮影される画像毎に異なる値を用いてもよい。
【0181】
また、以上においては、サーバが1台に対して、カメラが8台により構成したが、カメラ1台に対してサーバ1台を対応させ、ユーザ端末からの視点情報を各サーバに送信することにより、そのサーバが対応するカメラの方向の画像データのみをエンコードするようにしてもよい。
【0182】
本発明は、全方位の画像を提供する場合だけでなく、オムニビュー(Omni−View)の画像を提供する場合にも適用することができる。
【0183】
「Omni−Viewの画像」は、図32に示されるように、任意の対象物151を360度全方向から撮影することで得られる。図32の例においては、8台のカメラで上中央方向の「N」から時計回りに、「NE」,「E」,「SE」,「S」,「SW」,「W」および「NW」の8方向の画像が撮影されている。これらの画像から、隣接する方向の画像を繋ぎ合わせて合成すると、図33に示されるように、左から順に、「S」,「SE」,「E」,「NE」,「N」,「NW」,「W」,「SW」の画像が順に繋ぎ合わされた画像が1ファイルの画像とされる。これは、例えば、現在の視点情報が「N」を指す場合、視点が右に移動すると、「NW」の画像へと視点が移動し、逆に、視点が左に移動すると、「NE」に移動するというように、図8を参照して説明した「全方位の画像」の左右が入れ替わった状態と同様であるので、図2を参照して説明した撮影装置4の構成が変わる以外は、上述した全方位の画像の例と基本的に変わらない。したがって、本明細書では、「Omni−Viewの画像」は、「全方位の画像」に含まれるものとする。
【0184】
以上のように、視点情報に基づいて、それに対応した解像度、色、サイズでエンコードするようにしたので、「全方位の画像」(「Omni−Viewの画像」を含む)をユーザが見る際に、ユーザの視点移動に対する反応時間を短縮できる。また、ネットワーク上の通信経路内に流れるデータ量を低減できる。
【0185】
さらに、多くのユーザが「全方位の画像」(「Omni−Viewの画像」を含む)を見る場合であっても、スムーズに画像を提供することができる。
【0186】
以上により、ユーザが、スムーズに視点移動が可能な「全方位の画像」(「Omni−Viewの画像」を含む)を見ることができる快適な全方位画像提供システムを実現することができる。
【0187】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【0188】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図3、図4および図28に示されるように、磁気ディスク41,81,141(フレキシブルディスクを含む)、光ディスク42,82,142(CD−ROM(Compact Disc−Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク43,83,143(MD(Mini−Disc)(商標)を含む)、もしくは半導体メモリ44,84,144などよりなるパッケージメディア、または、プログラムが一時的もしくは永続的に格納されるROM22,62,132や、記憶部30,70,138などにより構成される。
【0189】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0190】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0191】
【発明の効果】
以上の如く、本発明によれば、即時性を持ったシステムを構築できる。また、本発明によれば、ネットワーク上のデータ量が軽減される。さらに、本発明によれば、ユーザに対して快適なシステムが提供される。
【図面の簡単な説明】
【図1】本発明を適用した全方位画像提供システムの構成例を示す図である。
【図2】図1の撮影装置の外観の構成を示す図である。
【図3】図1のユーザ端末の構成を示すブロック図である。
【図4】図1のサーバの構成を示すブロック図である。
【図5】図1の全方位画像提供システムの通信処理を説明するフローチャートである。
【図6】視点情報を説明する図である。
【図7】図5のステップS12の全方位の画像の画像データ作成処理を説明するフローチャートである。
【図8】全方位の画像を説明する図である。
【図9】図5の全方位画像提供システムの通信処理時におけるデータの流れを説明する図である。
【図10】視点情報の対応関係を説明する図である。
【図11】上下方向のカメラに対応するエンコード方法について説明する図である。
【図12】上下方向のカメラに対応するエンコード方法について説明する図である。
【図13】JPEG2000を説明する図である。
【図14】JPEG2000の具体的な例を説明する図である。
【図15】JPEG2000の具体的な例を説明する図である。
【図16】画像間における視点情報を説明する図である。
【図17】画像間における視点情報を説明する図である。
【図18】1つの方向の画像内のエンコード方法を説明する図である。
【図19】1つの方向の画像内のエンコード方法を説明する図である。
【図20】1つの方向の画像内のエンコード方法を説明する図である。
【図21】1つの方向の画像内のエンコード方法を説明する図である。
【図22】図5のステップS12の全方位の画像の画像データ作成処理の他の例を説明するフローチャートである。
【図23】図5の全方位画像提供システムの通信処理の他の例を説明するフローチャートである。
【図24】図23のステップS92の全方位の画像の画像データ生成処理を説明するフローチャートである。
【図25】図23のステップS93の全方位の画像の画像データ取得処理を説明するフローチャートである。
【図26】図23のステップS93の全方位の画像の画像データ取得処理の他の例を説明するフローチャートである。
【図27】本発明を適用した全方位画像提供システムの他の構成例を示す図である。
【図28】図27のルータの構成を示すブロック図である。
【図29】図27の全方位画像提供システムの通信処理の例を説明するフローチャートである。
【図30】視点テーブルを説明する図である。
【図31】図27のルータの画像データの送信処理を説明するフローチャートである。
【図32】Omni−Viewの視点情報を説明する図である。
【図33】Omni−Viewの画像を説明する図である。
【符号の説明】
1 ネットワーク,2 ユーザ端末,3 サーバ,4 撮影装置,5−1乃至5−8 カメラ,21 CPU,24 視点指定部,25 デコード部,30 記憶部,61 CPU,64 視点決定部,65 エンコード部,70 記憶部,121 ユーザ端末,122 ルータ,131 CPU
Claims (13)
- 情報提供装置が、情報処理装置に全方位の画像の画像データをネットワークを介して提供する情報提供システムにおいて、
前記情報提供装置は、前記情報処理装置により設定された視点情報を取得し、取得された前記視点情報に基づいて、前記全方位の画像の画像データを、前記情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた前記全方位の画像の画像データを、前記情報処理装置に送信し、
前記情報処理装置は、受信された前記全方位の画像の画像データの中から前記視点情報に対応する画像データをデコードし、デコードされた前記画像データを出力する
ことを特徴とする情報提供システム。 - 情報提供装置が、情報処理装置に全方位の画像の画像データをネットワークを介して提供する情報提供システムの情報提供方法において、前記情報提供方法は、前記情報処理装置により設定された視点情報を取得し、取得された前記視点情報に基づいて、前記全方位の画像の画像データを、前記情報処理装置により設定された視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた前記全方位の画像の画像データを、前記情報処理装置に送信し、
前記情報処理方法は、受信された前記全方位の画像の画像データの中から前記視点情報に対応する画像データをデコードし、デコードされた前記画像データを出力する
ことを特徴とする情報提供方法。 - 情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置において、
前記情報処理装置から視点情報を受信する受信手段と、
前記受信手段により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信手段により受信された前記視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコード手段と、
前記エンコード手段によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信手段と
を備えることを特徴とする情報提供装置。 - 前記エンコード手段は、前記画像データをJPEG2000でエンコードする
ことを特徴とする請求項3に記載の情報提供装置。 - 前記エンコード手段は、前記第2の方位の画像のうち、前記第1の方位からより離れた方位の画像が、さらにより低い解像度となるように、前記全方位の画像の画像データをそれぞれエンコードする
ことを特徴とする請求項3に記載の情報提供装置。 - 前記解像度は、画素数または色数により設定される
ことを特徴とする請求項3に記載の情報提供装置。 - 前記エンコード手段によりエンコードされた前記全方位の画像の画像データを記憶する記憶手段を
さらに備えることを特徴とする請求項3に記載の情報提供装置。 - 前記エンコード手段によりエンコードされた前記全方位の画像の画像データを、1ファイルの画像データに合成する合成手段をさらに備え、前記記憶手段は、前記合成手段により合成された前記1ファイルの画像データを記憶する
ことを特徴とする請求項7に記載の情報提供装置。 - 前記視点情報に基づいて、前記記憶手段により記憶された前記第2の方位の画像の画像データの解像度を、より低い解像度に変換する変換手段をさらに備え、
前記送信手段は、前記変換手段により変換された前記全方位の画像の画像データを送信する
ことを特徴とする請求項7に記載の情報提供装置。 - 前記受信手段により、複数の前記情報処理装置から受信された前記視点情報に基づいて、複数の前記情報処理装置に送信する前記第2の方位の画像の画像データの解像度のうち、最も高い解像度を選択する選択手段をさらに備え、
前記送信手段は、前記選択手段により選択された解像度以下の解像度の前記全方位の画像の画像データを送信する
ことを特徴とする請求項3に記載の情報提供装置。 - 情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置の情報提供方法において、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を含むことを特徴とする情報提供方法。 - 情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置のプログラムであって、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。 - 情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置を制御するコンピュータに、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第1の方位の画像の画像データに較べて、前記第1の方位と異なる第2の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を実行させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002233278A JP2004072694A (ja) | 2002-08-09 | 2002-08-09 | 情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム |
US10/634,460 US20040086186A1 (en) | 2002-08-09 | 2003-08-05 | Information providing system and method, information supplying apparatus and method, recording medium, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002233278A JP2004072694A (ja) | 2002-08-09 | 2002-08-09 | 情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004072694A true JP2004072694A (ja) | 2004-03-04 |
Family
ID=32018442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002233278A Pending JP2004072694A (ja) | 2002-08-09 | 2002-08-09 | 情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040086186A1 (ja) |
JP (1) | JP2004072694A (ja) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006285833A (ja) * | 2005-04-04 | 2006-10-19 | Sony Corp | 情報処理装置および方法、記録媒体、並びにプログラム |
JP2008545300A (ja) * | 2005-05-12 | 2008-12-11 | テネブラックス コーポレイション | 改善された仮想ウィンドウ作成方法 |
JP2009004940A (ja) * | 2007-06-20 | 2009-01-08 | Victor Co Of Japan Ltd | 多視点画像符号化方法、多視点画像符号化装置及び多視点画像符号化プログラム |
JP2009004939A (ja) * | 2007-06-20 | 2009-01-08 | Victor Co Of Japan Ltd | 多視点画像復号方法、多視点画像復号装置及び多視点画像復号プログラム |
US8446509B2 (en) | 2006-08-09 | 2013-05-21 | Tenebraex Corporation | Methods of creating a virtual window |
JP2013534791A (ja) * | 2010-07-14 | 2013-09-05 | アルカテル−ルーセント | 複数のコンテンツアイテムから合成ビューを生成する方法、サーバ、および端末 |
JP2013183209A (ja) * | 2012-02-29 | 2013-09-12 | Nagoya Univ | 多視点映像ストリーム視聴システムおよび方法 |
US8564640B2 (en) | 2007-11-16 | 2013-10-22 | Tenebraex Corporation | Systems and methods of creating a virtual window |
US8791984B2 (en) | 2007-11-16 | 2014-07-29 | Scallop Imaging, Llc | Digital security camera |
JP2015012334A (ja) * | 2013-06-26 | 2015-01-19 | 日本電信電話株式会社 | 映像配信システム |
JP2016165105A (ja) * | 2015-03-05 | 2016-09-08 | ノキア テクノロジーズ オーユー | 映像ストリーミング方法 |
JP2016220113A (ja) * | 2015-05-22 | 2016-12-22 | 株式会社ソシオネクスト | 映像配信装置、映像配信方法、及び映像配信システム |
JP2017085566A (ja) * | 2015-10-26 | 2017-05-18 | ノキア テクノロジーズ オサケユイチア | 没入コンテンツの優れたストリーミングのための方法および装置 |
JP2017518663A (ja) * | 2014-04-07 | 2017-07-06 | ノキア テクノロジーズ オサケユイチア | 立体ビューイング |
JPWO2016092698A1 (ja) * | 2014-12-12 | 2017-09-21 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
WO2017195650A1 (ja) * | 2016-05-13 | 2017-11-16 | ソニー株式会社 | 生成装置および生成方法、並びに、再生装置および再生方法 |
JPWO2016140060A1 (ja) * | 2015-03-05 | 2017-12-14 | ソニー株式会社 | 画像処理装置および画像処理方法 |
JPWO2016140083A1 (ja) * | 2015-03-05 | 2017-12-14 | ソニー株式会社 | 画像処理装置および画像処理方法 |
WO2018025660A1 (ja) * | 2016-08-05 | 2018-02-08 | ソニー株式会社 | 画像処理装置および画像処理方法 |
JP2018522430A (ja) * | 2015-05-27 | 2018-08-09 | グーグル エルエルシー | ユーザヘッドセットへの球状ビデオ帯域幅を減少させる方法および装置 |
JP2020537418A (ja) * | 2017-10-12 | 2020-12-17 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 仮想現実アプリケーションのためのオーディオ配信の最適化 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005089417A2 (en) * | 2004-03-17 | 2005-09-29 | Tenebreax Corporation | Color images from monochromatic electro-optical channels |
JP2006220521A (ja) * | 2005-02-10 | 2006-08-24 | Hitachi Ltd | 自己位置計測装置及び自己位置計測方法を実行するためのプログラム |
KR101524146B1 (ko) * | 2007-04-25 | 2015-05-29 | 톰슨 라이센싱 | 다운샘플링된 기준 화상을 이용한 인터-뷰 예측 |
US20090290033A1 (en) * | 2007-11-16 | 2009-11-26 | Tenebraex Corporation | Systems and methods of creating a virtual window |
US8639046B2 (en) * | 2009-05-04 | 2014-01-28 | Mamigo Inc | Method and system for scalable multi-user interactive visualization |
EP2481209A1 (en) * | 2009-09-22 | 2012-08-01 | Tenebraex Corporation | Systems and methods for correcting images in a multi-sensor system |
FR2951041A1 (fr) * | 2009-10-05 | 2011-04-08 | Korea Electronics Telecomm | Systeme de fourniture d'un service de diffusion a angles multiples |
WO2013090922A1 (en) | 2011-12-16 | 2013-06-20 | Tenebraex Corporation | Systems and methods for creating full-color image in low light |
KR102360453B1 (ko) | 2015-04-10 | 2022-02-09 | 삼성전자 주식회사 | 카메라 설정 방법 및 장치 |
GB2543320B (en) | 2015-10-14 | 2020-05-13 | Sony Interactive Entertainment Inc | Head-mountable display system |
CN105791882B (zh) * | 2016-03-22 | 2018-09-18 | 腾讯科技(深圳)有限公司 | 视频编码方法及装置 |
JP6741784B2 (ja) * | 2016-04-08 | 2020-08-19 | ヴィズビット インコーポレイテッド | ビューを意識した360度ビデオストリーミング |
CN106060515B (zh) * | 2016-07-14 | 2018-11-06 | 腾讯科技(深圳)有限公司 | 全景媒体文件推送方法及装置 |
US10771791B2 (en) * | 2016-08-08 | 2020-09-08 | Mediatek Inc. | View-independent decoding for omnidirectional video |
US11290699B2 (en) * | 2016-12-19 | 2022-03-29 | Dolby Laboratories Licensing Corporation | View direction based multilevel low bandwidth techniques to support individual user experiences of omnidirectional video |
CN108810636B (zh) * | 2017-04-28 | 2020-04-14 | 华为技术有限公司 | 视频播放方法、虚拟现实设备、服务器、系统及存储介质 |
GB2563387B (en) * | 2017-06-09 | 2020-04-15 | Sony Interactive Entertainment Inc | Image processing device and system |
EP3658973B1 (en) | 2017-07-24 | 2021-01-20 | Chromatra, LLC | System and apparatus for color imaging device |
US11281726B2 (en) | 2017-12-01 | 2022-03-22 | Palantir Technologies Inc. | System and methods for faster processor comparisons of visual graph features |
CN108650460B (zh) * | 2018-05-10 | 2021-03-30 | 深圳视点创新科技有限公司 | 服务器、全景视频的存储和传输方法和计算机存储介质 |
US11962819B2 (en) * | 2018-07-17 | 2024-04-16 | Dolby Laboratories Licensing Corporation | Foviation and HDR |
WO2021041928A1 (en) | 2019-08-30 | 2021-03-04 | Chromatra, Llc | Systems and methods for creating a full-color image in low light |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6347163B2 (en) * | 1994-10-26 | 2002-02-12 | Symbol Technologies, Inc. | System for reading two-dimensional images using ambient and/or projected light |
JP2001008232A (ja) * | 1999-06-25 | 2001-01-12 | Matsushita Electric Ind Co Ltd | 全方位映像出力方法と装置 |
US7065253B2 (en) * | 1999-09-03 | 2006-06-20 | Intel Corporation | Wavelet zerotree coding of ordered bits |
JP4209061B2 (ja) * | 2000-02-09 | 2009-01-14 | 富士フイルム株式会社 | 画像処理符号復号化方法および画像処理符号復号化システム、画像処理符号化装置および画像処理復号化装置、並びに記録媒体 |
JP4378824B2 (ja) * | 2000-02-22 | 2009-12-09 | ソニー株式会社 | 画像処理装置及び方法 |
US7024046B2 (en) * | 2000-04-18 | 2006-04-04 | Real Time Image Ltd. | System and method for the lossless progressive streaming of images over a communication network |
JP2002094994A (ja) * | 2000-09-19 | 2002-03-29 | Nec Corp | 動画再生処理装置および動画再生処理方法 |
US6754400B2 (en) * | 2001-02-06 | 2004-06-22 | Richard Wilson, Jr. | System and method for creation, processing and visualization of omni-directional images |
US6831643B2 (en) * | 2001-04-16 | 2004-12-14 | Lucent Technologies Inc. | Method and system for reconstructing 3D interactive walkthroughs of real-world environments |
-
2002
- 2002-08-09 JP JP2002233278A patent/JP2004072694A/ja active Pending
-
2003
- 2003-08-05 US US10/634,460 patent/US20040086186A1/en not_active Abandoned
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006285833A (ja) * | 2005-04-04 | 2006-10-19 | Sony Corp | 情報処理装置および方法、記録媒体、並びにプログラム |
JP4661314B2 (ja) * | 2005-04-04 | 2011-03-30 | ソニー株式会社 | 情報処理装置および方法、記録媒体、並びにプログラム |
JP2008545300A (ja) * | 2005-05-12 | 2008-12-11 | テネブラックス コーポレイション | 改善された仮想ウィンドウ作成方法 |
US8446509B2 (en) | 2006-08-09 | 2013-05-21 | Tenebraex Corporation | Methods of creating a virtual window |
JP2009004940A (ja) * | 2007-06-20 | 2009-01-08 | Victor Co Of Japan Ltd | 多視点画像符号化方法、多視点画像符号化装置及び多視点画像符号化プログラム |
JP2009004939A (ja) * | 2007-06-20 | 2009-01-08 | Victor Co Of Japan Ltd | 多視点画像復号方法、多視点画像復号装置及び多視点画像復号プログラム |
US8564640B2 (en) | 2007-11-16 | 2013-10-22 | Tenebraex Corporation | Systems and methods of creating a virtual window |
US8791984B2 (en) | 2007-11-16 | 2014-07-29 | Scallop Imaging, Llc | Digital security camera |
JP2013534791A (ja) * | 2010-07-14 | 2013-09-05 | アルカテル−ルーセント | 複数のコンテンツアイテムから合成ビューを生成する方法、サーバ、および端末 |
JP2013183209A (ja) * | 2012-02-29 | 2013-09-12 | Nagoya Univ | 多視点映像ストリーム視聴システムおよび方法 |
JP2015012334A (ja) * | 2013-06-26 | 2015-01-19 | 日本電信電話株式会社 | 映像配信システム |
US10455221B2 (en) | 2014-04-07 | 2019-10-22 | Nokia Technologies Oy | Stereo viewing |
JP2017518663A (ja) * | 2014-04-07 | 2017-07-06 | ノキア テクノロジーズ オサケユイチア | 立体ビューイング |
US11575876B2 (en) | 2014-04-07 | 2023-02-07 | Nokia Technologies Oy | Stereo viewing |
US10645369B2 (en) | 2014-04-07 | 2020-05-05 | Nokia Technologies Oy | Stereo viewing |
JPWO2016092698A1 (ja) * | 2014-12-12 | 2017-09-21 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
JP2016165105A (ja) * | 2015-03-05 | 2016-09-08 | ノキア テクノロジーズ オーユー | 映像ストリーミング方法 |
JPWO2016140060A1 (ja) * | 2015-03-05 | 2017-12-14 | ソニー株式会社 | 画像処理装置および画像処理方法 |
JPWO2016140083A1 (ja) * | 2015-03-05 | 2017-12-14 | ソニー株式会社 | 画像処理装置および画像処理方法 |
US10600153B2 (en) | 2015-03-05 | 2020-03-24 | Nokia Technologies Oy | Video streaming method |
JP2016220113A (ja) * | 2015-05-22 | 2016-12-22 | 株式会社ソシオネクスト | 映像配信装置、映像配信方法、及び映像配信システム |
JP2018522430A (ja) * | 2015-05-27 | 2018-08-09 | グーグル エルエルシー | ユーザヘッドセットへの球状ビデオ帯域幅を減少させる方法および装置 |
JP2017085566A (ja) * | 2015-10-26 | 2017-05-18 | ノキア テクノロジーズ オサケユイチア | 没入コンテンツの優れたストリーミングのための方法および装置 |
US9888284B2 (en) | 2015-10-26 | 2018-02-06 | Nokia Technologies Oy | Method and apparatus for improved streaming of immersive content |
JPWO2017195650A1 (ja) * | 2016-05-13 | 2019-03-14 | ソニー株式会社 | 生成装置および生成方法、並びに、再生装置および再生方法 |
WO2017195650A1 (ja) * | 2016-05-13 | 2017-11-16 | ソニー株式会社 | 生成装置および生成方法、並びに、再生装置および再生方法 |
JPWO2018025660A1 (ja) * | 2016-08-05 | 2019-05-30 | ソニー株式会社 | 画像処理装置および画像処理方法 |
WO2018025660A1 (ja) * | 2016-08-05 | 2018-02-08 | ソニー株式会社 | 画像処理装置および画像処理方法 |
US11006135B2 (en) | 2016-08-05 | 2021-05-11 | Sony Corporation | Image processing apparatus and image processing method |
JP2020537418A (ja) * | 2017-10-12 | 2020-12-17 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 仮想現実アプリケーションのためのオーディオ配信の最適化 |
US11354084B2 (en) | 2017-10-12 | 2022-06-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Optimizing audio delivery for virtual reality applications |
JP7295851B2 (ja) | 2017-10-12 | 2023-06-21 | フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 仮想現実アプリケーションのためのオーディオ配信の最適化 |
Also Published As
Publication number | Publication date |
---|---|
US20040086186A1 (en) | 2004-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2004072694A (ja) | 情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラム | |
Chiariotti | A survey on 360-degree video: Coding, quality of experience and streaming | |
AU2010216298B2 (en) | Video sharing | |
US8972861B2 (en) | Interactive point-of-view authoring of digital video content using a resizable overlay window and a cylindrical layout | |
US8645832B2 (en) | Methods and apparatus for interactive map-based analysis of digital video content | |
US6633317B2 (en) | Image-based walkthrough system and process employing spatial video streaming | |
JP2003536319A (ja) | パノラマビデオのストリーミング方法及びシステム | |
US20090268046A1 (en) | Method for compressing imaging data by wide-angle lens, compression device, wide-angle camera device, and monitor system | |
JP5548671B2 (ja) | 画像処理システム、画像提供サーバ、情報処理装置、および画像処理方法 | |
US20100033552A1 (en) | Method for compressing imaging data by using wide-angle lens, decompressed display method, compression device, wide-angle camera device, and monitor system | |
JP6125432B2 (ja) | メディアプログラムのハイブリッドトランスコーディングのための方法および機器 | |
JP2010516101A (ja) | マニュアル操作によるディジタルビデオ安定化 | |
US20150113582A1 (en) | Communication System, Terminal Device, Video Display Method, and Storage Medium | |
CN111669564B (zh) | 图像重建方法、系统、设备及计算机可读存储介质 | |
CN111667438B (zh) | 视频重建方法、系统、设备及计算机可读存储介质 | |
JP4222982B2 (ja) | 画像復号縮小装置および方法 | |
US7423649B2 (en) | Methods and devices for creating, downloading and managing an animation | |
JP5171850B2 (ja) | ビデオをアップスケールするための方法および装置 | |
US6654414B1 (en) | Video conferencing using camera environment panoramas | |
TW200417254A (en) | A server and a server system | |
US7936936B2 (en) | Method of visualizing a large still picture on a small-size display | |
CN113810734B (zh) | 视频融合方法、装置、设备、系统及计算机可读存储介质 | |
JP3993003B2 (ja) | 表示指示装置、表示システム、表示指示プログラム、端末、及びプログラム | |
CN112738565B (zh) | 互动带宽优化方法、装置、计算机设备和存储介质 | |
JP4331492B2 (ja) | 画像処理装置、画像提供サーバ装置、画像処理方法および画像処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070822 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070831 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071220 |