(57)【要約】【課題】データ量を抑制し、即時性を図るようにする。【解決手段】視点情報により、現在の視点「Ｎ」の画像データが、解像度１でエンコードされるとした場合、「Ｎ」の左右隣の「ＮＷ」および「ＮＥ」の画像データは、１／２の解像度でエンコードされ、「ＮＷ」の左隣の「Ｗ」および「ＮＥ」の右隣の「Ｅ」の画像データは、１／４の解像度でエンコードされ、「Ｗ」の左隣の「ＳＷ」および「Ｅ」の右隣の「ＳＥ」の画像データは、１／８の解像度でエンコードされ、「ＳＷ」の左隣（すなわち、「Ｎ」の対角方向）の「Ｓ」の画像データは、１／１６の解像度でエンコードされる。本発明は、ネットワークを介して、全方位の画像の画像データを提供する全方位画像提供システムに適用することができる。【選択図】　　　図６
2004072694.tif 000002
【特許請求の範囲】
【請求項１】
情報提供装置が、情報処理装置に全方位の画像の画像データをネットワークを介して提供する情報提供システムにおいて、
前記情報提供装置は、前記情報処理装置により設定された視点情報を取得し、取得された前記視点情報に基づいて、前記全方位の画像の画像データを、前記情報処理装置により設定された視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた前記全方位の画像の画像データを、前記情報処理装置に送信し、
前記情報処理装置は、受信された前記全方位の画像の画像データの中から前記視点情報に対応する画像データをデコードし、デコードされた前記画像データを出力する
ことを特徴とする情報提供システム。
【請求項２】
情報提供装置が、情報処理装置に全方位の画像の画像データをネットワークを介して提供する情報提供システムの情報提供方法において、前記情報提供方法は、前記情報処理装置により設定された視点情報を取得し、取得された前記視点情報に基づいて、前記全方位の画像の画像データを、前記情報処理装置により設定された視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた前記全方位の画像の画像データを、前記情報処理装置に送信し、
前記情報処理方法は、受信された前記全方位の画像の画像データの中から前記視点情報に対応する画像データをデコードし、デコードされた前記画像データを出力する
ことを特徴とする情報提供方法。
【請求項３】
情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置において、
前記情報処理装置から視点情報を受信する受信手段と、
前記受信手段により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信手段により受信された前記視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコード手段と、
前記エンコード手段によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信手段と
を備えることを特徴とする情報提供装置。
【請求項４】
前記エンコード手段は、前記画像データをＪＰＥＧ２０００でエンコードする
ことを特徴とする請求項３に記載の情報提供装置。
【請求項５】
前記エンコード手段は、前記第２の方位の画像のうち、前記第１の方位からより離れた方位の画像が、さらにより低い解像度となるように、前記全方位の画像の画像データをそれぞれエンコードする
ことを特徴とする請求項３に記載の情報提供装置。
【請求項６】
前記解像度は、画素数または色数により設定される
ことを特徴とする請求項３に記載の情報提供装置。
【請求項７】
前記エンコード手段によりエンコードされた前記全方位の画像の画像データを記憶する記憶手段を
さらに備えることを特徴とする請求項３に記載の情報提供装置。
【請求項８】
前記エンコード手段によりエンコードされた前記全方位の画像の画像データを、１ファイルの画像データに合成する合成手段をさらに備え、前記記憶手段は、前記合成手段により合成された前記１ファイルの画像データを記憶する
ことを特徴とする請求項７に記載の情報提供装置。
【請求項９】
前記視点情報に基づいて、前記記憶手段により記憶された前記第２の方位の画像の画像データの解像度を、より低い解像度に変換する変換手段をさらに備え、
前記送信手段は、前記変換手段により変換された前記全方位の画像の画像データを送信する
ことを特徴とする請求項７に記載の情報提供装置。
【請求項１０】
前記受信手段により、複数の前記情報処理装置から受信された前記視点情報に基づいて、複数の前記情報処理装置に送信する前記第２の方位の画像の画像データの解像度のうち、最も高い解像度を選択する選択手段をさらに備え、
前記送信手段は、前記選択手段により選択された解像度以下の解像度の前記全方位の画像の画像データを送信する
ことを特徴とする請求項３に記載の情報提供装置。
【請求項１１】
情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置の情報提供方法において、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を含むことを特徴とする情報提供方法。
【請求項１２】
情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置のプログラムであって、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項１３】
情報処理装置に、全方位の画像の画像データをネットワークを介して提供する情報提供装置を制御するコンピュータに、
前記情報処理装置から視点情報を受信する受信ステップと、
前記受信ステップの処理により受信された前記視点情報に基づいて、前記全方位の画像の画像データを、前記受信ステップの処理により受信された前記視点情報に対応する第１の方位の画像の画像データに較べて、前記第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、
前記エンコードステップの処理によりエンコードされた前記全方位の画像の画像データを前記情報処理装置に送信する送信ステップと
を実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関し、特に、データ量を抑制し、即時性を図るようにした情報提供システムおよび方法、情報提供装置および方法、記録媒体、並びにプログラムに関する。
【０００２】
【従来の技術】
任意の位置を中心として３６０度全方向を撮影した「全方位の画像」をユーザが見る場合、ｎ台のカメラを用いて、全方位の画像を撮影したとすると、ユーザは、ｎ個の画像の中から１つの画像を選択することになる。すなわち、全方位の画像の画像データが記憶されている記憶装置と、全方位の画像の画像データを再生する再生装置との間のネットワークには、実際にユーザが見る画像の画像データのｎ倍の膨大な情報量の画像データが流れることになる。なお、１つの撮影対象に対して全周囲方向から撮影する「Ｏｍｎｉ−Ｖｉｅｗにおける画像」についても同様となる。
【０００３】
それに対して、特開平６−１２４３２８号公報には、ユーザの視点情報に基づいて、複数の画像データを撮影時のデータと共に、画像記録媒体に圧縮して記録し、その画像記録媒体から、必要な画像データのみを読み出すことにより、ユーザの視点の自由な動きに対応するようにすることが提案されている。しかしながら、この場合、この画像記録媒体に記録される画像データは、圧縮されているとしても、実際に必要な画像データに比して、膨大な情報量となる。
【０００４】
また、特開２０００−１３２６７３号公報や特開２００１−８２３２号公報には、撮影された画像の画像データを記憶装置に記憶し、再生装置から受け取った視点情報に基づいて、ｎ個の画像データの中から必要となる画像データを記憶装置で読み出し、再生装置に送信することにより、記憶装置と再生装置のネットワーク間の情報量を削減することが提案されている。
【０００５】
【発明が解決しようとする課題】
しかしながら、この場合においては、必要な画像データしか送信されないため、ネットワークの応答遅延などにより、次の視点情報が再生装置から記憶装置に伝達されるまでに少なからず時間を要してしまう。したがって、画像の切り替えが遅くなってしまい、ユーザの急な視点移動要求に対して、迅速な切り替えができなかったり、または、一時的に画像が途切れてしまうといった課題があった。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、ネットワークの情報量を軽減し、スムーズな視点移動が可能な画像を提供できるようにするものである。
【０００７】
【課題を解決するための手段】
本発明の情報提供システムは、情報提供装置は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理装置は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【０００８】
本発明の情報提供システムの情報提供方法は、情報提供方法は、情報処理装置により設定された視点情報を取得し、取得された視点情報に基づいて、全方位の画像の画像データを、情報処理装置により設定された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるようにエンコードし、エンコードされた全方位の画像の画像データを、情報処理装置に送信し、情報処理方法は、受信された全方位の画像の画像データの中から視点情報に対応する画像データをデコードし、デコードされた画像データを出力することを特徴とする。
【０００９】
本発明の情報提供装置は、情報処理装置から視点情報を受信する受信手段と、受信手段により受信された視点情報に基づいて、全方位の画像の画像データを、受信手段により受信された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコード手段と、エンコード手段によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信手段とを備えることを特徴とする。
【００１０】
エンコード手段は、画像データをＪＰＥＧ２０００でエンコードするようにすることができる。
【００１１】
エンコード手段は、第２の方位のうち、第１の方位からより離れた方位が、さらにより低い解像度となるように、全方位の画像の画像データをそれぞれエンコードするようにすることができる。
【００１２】
解像度は、画素数または色数により設定されるようにすることができる。
【００１３】
エンコード手段によりエンコードされた全方位の画像の画像データを記憶する記憶手段をさらに備えるようにすることができる。
【００１４】
エンコード手段によりエンコードされた全方位の画像の画像データを、１ファイルの画像データに合成する合成手段をさらに備え、記憶手段は、合成手段により合成された１ファイルの画像データを記憶するようにすることができる。
【００１５】
視点情報に基づいて、記憶手段により記憶された第２の方位の画像の画像データの解像度を、より低い解像度に変換する変換手段をさらに備え、送信手段は、変換手段により変換された全方位の画像の画像データを送信するようにすることができる。
【００１６】
受信手段により、複数の情報処理装置から受信された視点情報に基づいて、複数の情報処理装置に送信する第２の方位の画像の画像データの解像度のうち、最も高い解像度を選択する選択手段をさらに備え、送信手段は、選択手段により選択された解像度以下の解像度の全方位の画像の画像データを送信するようにすることができる。
【００１７】
本発明の情報提供装置の情報提供方法は、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【００１８】
本発明の情報提供装置の記録媒体のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとを含むことを特徴とする。
【００１９】
本発明の情報提供装置のプログラムは、情報処理装置から視点情報を受信する受信ステップと、受信ステップの処理により受信された視点情報に基づいて、全方位の画像の画像データを、受信ステップの処理により受信された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードするエンコードステップと、エンコードステップの処理によりエンコードされた全方位の画像の画像データを情報処理装置に送信する送信ステップとをコンピュータに実行させることを特徴とする。
【００２０】
本発明の情報提供システムおよび方法においては、情報提供装置および方法により、情報処理装置により設定された視点情報が取得され、取得された視点情報に基づいて、全方位の画像の画像データが、情報処理装置により設定された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるようにエンコードされ、エンコードされた全方位の画像の画像データが、情報処理装置に送信される。そして、情報処理装置および方法により、受信された全方位の画像の画像データの中から視点情報に対応する画像データがデコードされ、デコードされた画像データが出力される。
【００２１】
本発明の情報提供装置および方法、記録媒体、並びにプログラムにおいては、情報処理装置から受信された視点情報に基づいて、全方位の画像の画像データが、受信された視点情報に対応する第１の方位の画像の画像データに較べて、第１の方位と異なる第２の方位の画像の画像データの方が、より低い解像度となるように、それぞれエンコードされ、エンコードされた全方位の画像の画像データが情報処理装置に送信される。
【００２２】
ネットワークとは、少なくとも２つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであってもよいし、１つの装置を構成している内部ブロックどうしであってもよい。
【００２３】
【発明の実施の形態】
以下、図を参照して本発明の実施の形態について説明する。
【００２４】
図１は、本発明を適用した全方位画像提供システムの構成例を表している。インターネット、ＬＡＮ、ＷＡＮなどを含むネットワーク１には、ユーザ端末２とユーザ端末２に対して全方位の画像の画像データを提供するサーバ３が接続されている。この例においては、ユーザ端末２およびサーバ３が１台ずつ示されているが、ネットワーク１には、任意の台数のユーザ端末２およびサーバ３が接続される。
【００２５】
サーバ３には、全方位の画像を撮影する撮影装置４が接続されている。撮影装置４は、３６０度全方位を同時に撮影できる特殊なカメラであり、８台のカメラ５−１乃至５−８により構成される。サーバ３は、撮影装置４で撮影された画像の画像データをエンコードし、ネットワーク１を介して、ユーザ端末２に提供する。ユーザは、サーバ３から提供された画像データをユーザ端末２によりデコードし、全方位の画像のうち、希望する画像を見ることができる。
【００２６】
図２は、撮影装置４の外観の構成を示す図である。撮影装置４は、カメラ部とミラー部により構成される。ミラー部は、正八角形の底面を持つ正八角錐の側面にそれぞれ取り付けられた平面鏡１１−１乃至１１−８により構成される。カメラ部を構成するカメラ５−１乃至５−８は、それぞれ対応する平面鏡１１−１乃至１１−８に映し出される画像を撮影する。すなわち、８台のカメラ５−１乃至５−８が各方向を撮影することにより、撮影装置４の３６０度全方位の画像が撮影される。
【００２７】
したがって、この全方位画像提供システムにおいて、サーバ３は、撮影装置４で撮影された８方向の画像により構成される全方位の画像を、ネットワーク１を介して、ユーザ端末２に提供する。
【００２８】
なお、図２においては、８台の平面鏡とカメラにより構成するようにしたが、ミラー部を構成する正多角形の数に対応する数の平面鏡とカメラにより構成されていれば、その数は、何台でもよく、８台以下（例えば、６台）としてもよいし、８台以上（例えば、１０台）としてもよい。そして、全方位の画像も、そのカメラの台数分の画像により構成される。
【００２９】
図３は、ユーザ端末２の構成を表している。図３において、ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）２１は、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）２２に記憶されているプログラム、または記憶部３０からＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）２３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ２３にはまた、ＣＰＵ２１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００３０】
ＣＰＵ２１、ＲＯＭ２２およびＲＡＭ２３は、バス２６を介して相互に接続されている。また、バス２６には、視点指定部２４、デコード部２５、および入出力インタフェース２７が接続されている。
【００３１】
視点指定部２４は、入力部２８からのユーザの操作に基づいて決定された視点により視点情報が作成される。この視点情報は、デコード部２５に出力されるとともに、通信部３１およびネットワーク１を介して、サーバ３にも送信される。
【００３２】
デコード部２５は、視点指定部２４により作成された視点情報に基づいて、通信部３１により受信されたサーバ３からの全方位の画像データの中から、視点を中心とする画像の画像データをデコードし、出力部２９に供給する。
【００３３】
入出力インタフェース２７には、ヘッドマウントディスプレイ、マウス、ジョイスティックなどよりなる入力部２８、ＣＲＴ（Ｃａｔｈｏｄｅ　Ｒａｙ　Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ　Ｃｒｙｓｔａｌ　Ｄｉｓｐｌａｙ）などよりなるディスプレイ、並びにスピーカなどよりなる出力部２９、ハードディスクなどより構成される記憶部３０、モデム、ターミナルアダプタなどより構成される通信部３１が接続されている。通信部３１は、ネットワーク１を介しての通信処理を行う。
【００３４】
入出力インタフェース２７にはまた、必要に応じてドライブ４０が接続され、磁気ディスク４１、光ディスク４２、光磁気ディスク４３、或いは半導体メモリ４４などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部３０にインストールされる。
【００３５】
図４は、サーバ３の構成例を表している。ＣＰＵ６１乃至ＲＡＭ６３およびドライブ８０乃至半導体メモリ８４は、図３のユーザ端末２のＣＰＵ２１乃至ＲＡＭ２３およびドライブ４０乃至半導体メモリ４４と基本的に同様の機能を有するものであるので、その説明は省略する。
【００３６】
サーバ３のバス６６には、視点決定部６４、エンコード部６５、および入出力インタフェース６７が接続されている。
【００３７】
視点決定部６４は、ネットワーク１を介してユーザ端末２より送信された視点情報に基づいて視点を決定する。エンコード部６５は、視点決定部６４からの視点情報に基づいて、撮影装置４から入力された画像データを、例えば、ＪＰＥＧ２０００の画像フォーマットでエンコードし、それぞれエンコードされた画像データを、全方位の画像の画像データとして、通信部７１を介してユーザ端末２に送信する。
【００３８】
入出力インタフェース６７には、マウスやキーボードなどよりなる入力部６８、ＣＲＴ（Ｃａｔｈｏｄｅ　Ｒａｙ　Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ　Ｃｒｙｓｔａｌ　Ｄｉｓｐｌａｙ）などよりなるディスプレイ、並びにスピーカなどよりなる出力部６９、ハードディスクなどより構成される記憶部７０、モデム、ターミナルアダプタなどより構成される通信部７１が接続されている。通信部７１は、ネットワーク１を介しての通信処理を行う。
【００３９】
次に、図５のフローチャートを参照して、全方位画像提供システムの通信処理について説明する。
【００４０】
この全方位画像提供システムにおいて、全方位の画像は、図６に示されるように、例えば、８台のカメラ５−１乃至５−８により撮影される８つの方向の画像により構成される。この８つの方向は、上中央部の方向を「Ｎ」（北）とすると、「Ｎ」から時計回りの順に、「ＮＥ」（北東），「Ｅ」（東），「ＳＥ」（南東），「Ｓ」（南），「ＳＷ」（南西），「Ｗ」（西）および「ＮＷ」（北西）とされる。したがって、「Ｎ」と対角である下中央部の方向は、「Ｓ」とされ、「Ｎ」の右側方向は、「ＮＥ」とされ、「Ｎ」の左側方向は、「ＮＷ」とされる。なお、以降、説明の便宜上、これらの８方向を視点情報とする。
【００４１】
ユーザによりユーザ端末２の入力部２８が操作され、現在の視点（いまの場合、「Ｎ」）が入力される。それに対応して、ステップＳ１において、視点指定部２４は、現在の視点を表す、視点情報を設定する。ステップＳ２において、通信部３１は、視点指定部２４により設定された視点情報（いまの場合、「Ｎ」）を、ネットワーク１を介して、サーバ３に送信する。
【００４２】
サーバ３の通信部７１は、ステップＳ１１において、ユーザ端末２からの視点情報を受信し、視点決定部６４に出力する。ステップＳ１２において、エンコード部６５は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図７のフローチャートを参照して説明する。
【００４３】
ステップＳ３１において、エンコード部６５は、予め設定された解像度（高解像度）Ｒ１を、解像度Ｒとする。ステップＳ３２において、エンコード部６５は、撮影装置４のカメラ５−１乃至５−８より、８方向の画像データを受け取る。
【００４４】
エンコード部６５は、ステップＳ３３において、視点決定部６４からの視点情報に基づいて、エンコードする方向の画像を選択し、それをＸとし、ステップＳ３４において、Ｘの左隣の画像をＹとする。いまの場合、現在の視点情報が「Ｎ」であるので、Ｘは、「Ｎ」の画像であり、Ｙは、「ＮＷ」の画像である。
【００４５】
エンコード部６５は、ステップＳ３５において、Ｘの画像データを既にエンコードしたか否かを判断し、まだ、Ｘの画像データをエンコードしていないと判断した場合、ステップＳ３６において、Ｘの画像データを、解像度Ｒでエンコードする。すなわち、「Ｎ」の画像データは、予め設定された解像度Ｒ１でエンコードされる。
【００４６】
ステップＳ３７において、エンコード部６５は、Ｘを１つ右の画像に移動させる。いまの場合、Ｘは、「ＮＥ」の画像とされる。
【００４７】
エンコード部６５は、ステップＳ３８において、現在の解像度（いまの場合、解像度Ｒ１）を１／２にしたものを、新たな解像度Ｒとし、ステップＳ３９において、Ｙの画像データを既にエンコードしたか否かを判断する。ステップＳ３９において、まだ、Ｙの画像データをエンコードしていないと判断された場合、ステップＳ４０において、エンコード部６５は、Ｙの画像データを、解像度Ｒでエンコードする。すなわち、「ＮＷ」の画像データが、解像度Ｒ１の１／２の解像度で（画素数が１／２になるように）エンコードされる。
【００４８】
エンコード部６５は、ステップＳ４１において、Ｙを１つ左の画像に移動させる。いまの場合、Ｙは、「Ｗ」の画像とされる。
【００４９】
そして、エンコード部６５は、ステップＳ３５に戻り、Ｘの画像データを既にエンコードしたか否かを判断し、まだ、Ｘの画像データをエンコードしていないと判断した場合、ステップＳ３６において、Ｘの画像データを、解像度Ｒでエンコードする。これにより、いまの場合、「ＮＥ」の画像データが、解像度Ｒ１の１／２の解像度でエンコードされる。
【００５０】
ステップＳ３７において、エンコード部６５は、Ｘを１つ右の画像に移動させる。いまの場合、Ｘは、「Ｅ」の画像とされる。
【００５１】
ステップＳ３８において、現在の解像度（いまの場合、（１／２）解像度Ｒ１）を１／２にしたもの（（１／４）解像度Ｒ１）を、新たな解像度Ｒとする。ステップＳ３９において、エンコード部６５は、Ｙの画像データを既にエンコードしたか否かを判断し、まだ、Ｙの画像データをエンコードしていないと判断した場合、ステップＳ４０において、Ｙの画像データを、解像度Ｒでエンコードする。すなわち、「Ｗ」の画像データが、解像度Ｒ１の１／４の解像度でエンコードされる。
【００５２】
エンコード部６５は、ステップＳ４１において、Ｙを１つ左の画像に移動させる。いまの場合、Ｙは、「ＳＷ」の画像とされる。
【００５３】
そして、エンコード部６５は、ステップＳ３５に戻り、それ以降の処理を繰り返す。このようにして、「Ｅ」の画像データが、解像度Ｒ１の１／４の解像度でエンコードされ、「ＳＷ」および「ＳＥ」の画像データが、解像度Ｒ１の１／８の解像度でエンコードされ、「Ｓ」の画像データが、解像度Ｒ１の１／１６の解像度でエンコードされる。
【００５４】
その結果、図６または図８に示されるように、現在の視点である「Ｎ」の画像の解像度を１とした場合、「Ｎ」の左右隣の「ＮＷ」および「ＮＥ」の画像の解像度は、１／２とされ、「ＮＷ」の左隣の「Ｗ」および「ＮＥ」の右隣の「Ｅ」の画像の解像度は、１／４とされ、「Ｗ」の左隣の「ＳＷ」および「Ｅ」の右隣の「ＳＥ」の画像の解像度は、１／８とされ、「ＳＷ」の左隣（すなわち、「Ｎ」の対角方向）の「Ｓ」の画像の解像度は、１／１６とされる。なお、図８の例の場合、隣接する方向の画像は、現在の視点である「Ｎ」を中心に並べられている。
【００５５】
以上のように、現在の視点の方向に近い方向の画像データに比べて、移動する可能性が低いと予測される現在の視点の方向からより離れた方向の画像データは、より低い解像度でエンコードされる。
【００５６】
そして、ステップＳ３５において、Ｘの画像データを既にエンコードしたと判断された場合、または、ステップＳ３９において、Ｙの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、処理は、図５のステップＳ１３に進む。
【００５７】
ステップＳ１３において、通信部７１は、エンコード部６５によりエンコードされた全方位の画像の画像データをネットワーク１を介してユーザ端末２に送信する。
【００５８】
ステップＳ３において、ユーザ端末２の通信部３１は、その全方位の画像の画像データを受信し、デコード部２５に供給する。ステップＳ４において、デコード部２５は、視点指定部２４からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部２９に供給し、デコードされた画像を、出力部２９を構成するディスプレイに表示させる。
【００５９】
以上のように、視点情報に基づいた視点方向を中心として、他の方向の画像データを、視点方向の画像データよりも低い解像度でエンコードするようにしたので、全ての方位の画像を現在の視点の画像と同一の解像度でエンコードする場合に較べて、送信する画像データの情報量を軽減することができる。
【００６０】
さらに、図５の全方位画像提供システムの通信処理におけるデータの流れについて、図９を参照して説明する。図９においては、縦方向は、時間軸を示し、上から下に行くに連れて、時間が経過している。また、ユーザ端末２の時間軸に沿って付けられているａ０，ａ１，ａ２，…は、ユーザ端末２からサーバ３に送信されるＡＣＫ（確認応答パケット）と視点情報が送信されるタイミングを示し、サーバ３の時間軸に沿って付けられているｂ０，ｂ１，ｂ２，…は、サーバ３からユーザ端末２に画像データのパケットが送信されるタイミングを示し、撮影装置４の時間軸に沿って付けられているｃ０，ｃ１，ｃ２，…は、撮影装置４からサーバ３に画像データが送信されるタイミングを示している。
【００６１】
ａ０のタイミングにおいて、ユーザ端末２から、ＡＣＫと視点情報「Ｎ」（現在の視点が「Ｎ」である）が送信される。サーバ３は、この視点情報「Ｎ」を受けて、撮影装置４からｃ０のタイミングで送信された画像データを、視点「Ｎ」を中心としてエンコードする。そして、サーバ３は、エンコードした画像データを含むパケットを、ｂ１のタイミングにおいてユーザ端末２に向けて送信する。
【００６２】
ユーザ端末２は、その画像データのパケットを、ａ２のタイミングの直前に受信し、視点情報「Ｎ」に基づいてデコードする。そして、ユーザ端末２は、ａ２のタイミングにおいて、視点「Ｎ」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるＡＣＫと視点情報「Ｎ」をサーバ３に送信する。以上の処理が、ユーザ端末２とサーバ３間で、ユーザが視点を移動するまで、繰り返される。
【００６３】
この例では、ａ４のタイミングにおいて、ＡＣＫ（ｂ３のタイミングで送信されたパケットを受信した確認応答パケット）と視点情報「Ｎ」が送信された後に、ユーザは、視点を「Ｎ」から「Ｎ」の右隣の方向である「ＮＥ」に移動させる。それに対応して、ａ５のタイミング以降に、ユーザ端末２で設定される視点情報は、「Ｎ」から「ＮＥ」に変わる。
【００６４】
しかしながら、サーバ３により画像データのパケットが送信されるｂ４とｂ５のタイミングにおいては、まだ、サーバ３に、変更された視点情報「ＮＥ」が伝わっていないため、サーバ３は、撮影装置４からｃ３およびｃ４のタイミングで送信された画像データを、視点「Ｎ」を中心としてエンコードして、ユーザ端末２に送信する。
【００６５】
したがって、ユーザ端末２は、視点「Ｎ」を中心としてエンコードされた画像データのパケットを、ａ５とａ６のタイミングの直前に受信し、変更された視点情報「ＮＥ」に基づいて、デコードすることになる。「Ｎ」の画像の解像度に対して、「ＮＥ」の画像の解像度は、まだ、１／２のままであるので、この「ＮＥ」の画像データは、標準の半分の解像度でデコードされる。すなわち、出力部２９においては、現在の実際の視点の「ＮＥ」の画像が、まだ、標準の半分の画質で表示される。
【００６６】
また、サーバ３は、ｂ５のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末２によりａ５のタイミングで送信されたＡＣＫと視点情報「ＮＥ」を受ける。したがって、次のｂ６のタイミング以降において、サーバ３は、画像データを、視点情報「ＮＥ」に基づいて、エンコードするように変更する。これにより、ユーザ端末２は、ａ７のタイミングの直前において、視点「ＮＥ」を中心としてエンコードされた画像データのパケットを受信し、視点情報「ＮＥ」に基づいてデコードすることになる。したがって、この時点から、現在の視点「ＮＥ」の画像が、標準の解像度で表示される。
【００６７】
そして、ユーザ端末２は、ａ７のタイミングにおいて、視点「ＮＥ」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるＡＣＫと視点情報「ＮＥ」をサーバ３に送信する。以上の処理が、ユーザ端末２とサーバ３間で、ユーザが視点を移動するまで、繰り返される。
【００６８】
この例では、ａ８のタイミングにおいて（ｂ７のタイミングで送信されたパケットを受信した確認応答パケット）、ＡＣＫと視点情報「ＮＥ」が送信された後に、ユーザは、視点を「ＮＥ」から「ＮＥ」の対角方向である「ＳＷ」に移動させる。それに対応して、ａ９のタイミング以降にユーザ端末２で設定される視点情報は、「ＮＥ」から「ＳＷ」に変わる。
【００６９】
しかしながら、サーバ３により画像データのパケットが送信されるｂ８とｂ９のタイミングにおいては、まだ、サーバ３に、変更された視点情報「ＳＷ」が伝わっていないため、サーバ３は、撮影装置４からｃ７とｃ８のタイミングで送信された画像データを、視点「ＮＥ」を中心としてエンコードして、ユーザ端末２に送信する。
【００７０】
したがって、ユーザ端末２は、視点「ＮＥ」を中心としてエンコードされた画像データのパケットを、ａ９とａ１０のタイミングの直前に受信し、視点情報「ＳＷ」に基づいて、デコードすることになる。「ＮＥ」の画像の解像度に対して、「ＳＷ」の画像の解像度は、１／１６であるので、この「ＳＷ」の画像データは、標準の１／１６の解像度でデコードされる。すなわち、出力部２９においては、現在の実際の視点の「ＳＷ」の画像が、標準の１／１６の画質で表示される。
【００７１】
また、サーバ３は、ｂ９のタイミングにおいて画像データのパケットを送信した後に、ユーザ端末２によりａ９のタイミングにおいて送信された視点情報「ＳＷ」を受けるので、ｂ１０のタイミング以降において、サーバ３は、画像データを、視点情報「ＳＷ」に基づいて、エンコードするように変更する。これにより、ユーザ端末２は、ａ１１のタイミングの直前において、視点「ＳＷ」を中心としてエンコードされた画像データのパケットを受信し、視点情報「ＳＷ」に基づいてデコードするようになる。したがって、この時点から、現在の視点「ＳＷ」の画像が、標準の解像度で表示される。
【００７２】
そして、ユーザ端末２は、ａ１１のタイミングにおいて、視点「ＳＷ」を中心としてエンコードされた画像データのパケットを受信したという確認応答パケットであるＡＣＫと視点情報「ＳＷ」を送信する。以上の処理が、ユーザ端末２とサーバ３間で、ユーザが視点を移動するまで、繰り返される。
【００７３】
以上のようにして、ユーザ端末２とサーバ３の通信処理が実行されることにより、ユーザ端末２における視点の動きにスムーズに対応することができる。
【００７４】
すなわち、視点が、３６０度のいずれかの方向に（８つの方向のうちのいずれかの方向に）変更されたとしても、新たな視点の画像を迅速に表示させることができる。迅速な表示が可能な分、視点変更直後の画質は劣化する。しかしながら、その劣化の程度は、現在の視点から遠い（視点変更の可能性が低い）ほど大きく、現在の視点に近い（視点変更の可能性が大きい）ほど小さい。したがって、ユーザは、その画質の劣化の変化に納得がいき、好ましいユーザインタフェースを実現することができる。
【００７５】
なお、上記説明においては、視点情報を、カメラ方向である「Ｎ」、「ＮＥ」などを用いて説明したが、実際には、図１０に示されるように、カメラ５−１乃至５−８の方向に対して、視点ＩＤを設定し、設定された視点ＩＤとカメラ５−１乃至５−８の方向との対応関係を、ユーザ端末２とサーバ３で共有するようにしてもよい。
【００７６】
図１０の例の場合、視点ＩＤ「０」には、カメラ方向「Ｎ」が対応し、視点ＩＤ「１」には、カメラ方向「ＮＥ」が対応し、視点ＩＤ「２」には、カメラ方向「Ｅ」が対応し、視点ＩＤ「３」には、カメラ方向「ＳＥ」が対応するように設定され、また、視点ＩＤ「４」には、カメラ方向「Ｓ」が対応し、視点ＩＤ「５」には、カメラ方向「ＳＷ」が対応し、視点ＩＤ「６」には、カメラ方向「Ｗ」が対応し、視点ＩＤ「７」には、カメラ方向「ＮＷ」が対応するように設定される。したがって、この場合においては、ユーザ端末２から送信される視点情報には、この視点ＩＤが書き込まれている。
【００７７】
また、以上においては、カメラ５−１乃至５−８に対応する左右方向の視点の移動について説明したが、撮影装置４においては、上下方向にカメラが複数台ある場合も考えられる。図１１および図１２を参照して、上下方向にもカメラが複数台ある場合の画像データのエンコード方法の例について説明する。なお、図１１および図１２においては、図８と同様に、隣接する方向の画像を、現在の視点である「Ｎ２」を中心に並べられている。また、「Ｎ２」の「Ｎ」は、左右方向の位置を表し、「２」は上下方向の位置を表すものとする。
【００７８】
図１１および図１２の例の場合、撮影装置４は、左から順に、「Ｓ」，「ＳＷ」，「Ｗ」，「ＮＷ」，「Ｎ」，「ＮＥ」，「Ｅ」および「ＳＥ」の８つの左右方向の画像を撮影するカメラに加えて、上から順に、「１」，「２」および「３」の３つの上下方向の画像を撮影するカメラにより構成されている。したがって、この場合の全方位の画像は、２４方向の画像により構成される。
【００７９】
図１１の例においては、現在の視点「Ｎ２」の画像の解像度を１とした場合、「Ｎ２」の左右隣の「ＮＷ２」および「ＮＥ２」の画像の解像度と同様に、「Ｎ２」の上下隣の「Ｎ１」および「Ｎ３」の画像の解像度も１／２とされる。そして、これらの、１／２の解像度の画像に接する「ＮＷ１」，「Ｗ２」，「ＮＷ３」，「ＮＥ１」，「Ｅ２」および「ＮＥ３」の画像の解像度は、１／４とされる。また、これらの、１／４の解像度の画像に接する「ＳＷ２」，「Ｗ１」，「Ｗ３」，「Ｅ１」，「Ｅ３」および「ＳＥ２」の画像の解像度は、１／８とされ、それ以外の「Ｓ１」，「Ｓ２」，「Ｓ３」，「ＳＷ１」，「ＳＷ３」，「ＳＥ１」および「ＳＥ３」の画像の解像度は、１／１６とされる。
【００８０】
また、上下方向の移動が可能になったことにより、横方向の移動と合わせて、斜め方向に移動させるようにしてもよい。この場合、図１２に示されるように、「Ｎ２」から「ＮＥ１」および「ＮＷ１」などの斜め方向への移動を考慮したエンコード方法を用いることもできる。
【００８１】
図１２の例においては、現在の視点「Ｎ２」の画像の解像度を１とした場合、「Ｎ２」を囲む「ＮＷ１」，「ＮＷ２」，「ＮＷ３」，「Ｎ１」，「Ｎ３」，「ＮＥ１」，「ＮＥ２」および「ＮＥ３」の画像の解像度は、１／２とされる。そして、これらの、１／２の解像度の画像に接する「Ｗ１」，「Ｗ２」，「Ｗ３」，「Ｅ１」，「Ｅ２」および「Ｅ３」の画像の解像度は、１／４とされる。また、これらの、１／４の解像度の画像に接する「ＳＷ１」，「ＳＷ２」，「ＳＷ３」，「ＳＥ１」，「ＳＥ２」および「ＳＥ３」の画像の解像度は、１／８とされ、それ以外の「Ｓ１」，「Ｓ２」および「Ｓ３」の画像の解像度は、１／１６とされる。
【００８２】
以上のように、上下方向にもカメラが複数台ある場合にも、各方向の画像データに対して、異なる解像度によりエンコードするようにしたので、送信する画像データの情報量を軽減することができる。
【００８３】
次に、図１３乃至図１５を参照して、図１の全方位画像提供システムにおける画像のエンコード方式としてのＪＰＥＧ２０００の画像フォーマットについて説明する。なお、図１３は、ＪＰＥＧ２０００のウェーブレット変換の例を説明する図であり、図１４および図１５は、図１３に示されたウェーブレット変換の具体的な例を示している。
【００８４】
ＪＰＥＧ２０００では、画像を小さな矩形のブロック領域（セル）に分割した後に、その分割単位でウェーブレット変換を行うことができる。
【００８５】
図１３に示されるウェーブレット変換においては、画像データから、水平、垂直方向の低周波成分と高周波成分が抽出され、そのうち、最も重要な要素である、水平、垂直両方向の低周波成分が再帰的に（いまの場合、３回）分割される方式であるオクターブ分割方式が用いられている。
【００８６】
図１３の例の場合、「ＬＬ」，「ＬＨ」，「ＨＬ」および「ＨＨ」は、その１文字目が水平成分、２文字目が垂直成分を示し、「Ｌ」は、低周波成分、「Ｈ」は、高周波成分を示している。したがって、図１３においては、画像が「ＬＬ１」，「ＬＨ１」，「ＨＬ１」および「ＨＨ１」に分割されている。そのうちの水平、垂直両方向の低周波成分である「ＬＬ１」が、さらに、「ＬＬ２」，「ＬＨ２」，「ＨＬ２」および「ＨＨ２」に分割され、そのうちの水平、垂直両方向の低周波成分である「ＬＬ２」が、さらに、「ＬＬ３」，「ＬＨ３」，「ＨＬ３」および「ＨＨ３」に分割されている。
【００８７】
したがって、図１４に示されるように、元の画像９１−１の解像度を１とすると、デコードすることなく（エンコードされた状態のままで）、解像度１／２の画像９１−２を取り出すことができる。また、図１５に示されるように、元の画像９２−１の解像度を１とすると、デコードすることなく、解像度１／４の画像９２−２を取り出すことができる。
【００８８】
以上のように階層化したエンコードにより、エンコードされたままの画像データに対して（デコードすることなく）デコード側で画質やサイズなどの選択が可能になる。
【００８９】
また、ＪＰＥＧ２０００では、１つの画像内の特定領域の解像度を簡単に変えることができる。
【００９０】
例えば、図１６の例においては、現在の視点Ｐが、カメラ方向単位ではなく、複数のカメラに跨ってしまうような「Ｎ」と「ＮＥ」の画像の間の中央の位置に設定されている。このような場合、ＪＰＥＧ２０００を用いることにより、「Ｎ」の画像の右半分と「ＮＥ」の画像の左半分を、例えば、解像度１で圧縮し、「Ｎ」の画像の左半分および「ＮＷ」の画像の右半分と、「ＮＥ」の画像の右半分および「Ｅ」の画像の左半分を１／２の解像度で圧縮することができ、カメラ方向単位ではない視点の移動が可能になる。
【００９１】
なお、図１６の例における視点情報は、図１７に示されるように、例えば、「Ｎ」の画像において定められた、左上を原点とするｘｙ座標平面（０≦ｘ≦Ｘ，０≦ｙ≦Ｙ）において、現在の視点の「ｘ座標」および「ｙ座標」が求められ、その求められた現在の視点の「ｘ座標」および「ｙ座標」が、「カメラ方向」を決める視点ＩＤ（ｉ）とともに、以下の（１）式のように記述されることにより作成される。
【００９２】
｛（ｉ，ｘ，ｙ）｜ｉ＝∈｛０，１，２，３，４，５，６，７｝，０≦ｘ≦Ｘ，０≦ｙ≦Ｙ｝　…　（１）
【００９３】
なお、カメラ単位でしか視点の移動ができない場合には、ｘ＝Ｘ／２，ｙ＝Ｙ／２で固定されて表される。
【００９４】
例えば、図１６における視点Ｐの視点情報は、「Ｎ」と「ＮＥ」の間の中央の位置であるので、（ｉ，ｘ，ｙ）＝（０，Ｘ，Ｙ／２）のように表される。
【００９５】
なお、図１６の例においては、この視点情報が、画像上のある一点として説明したが、「一点とその移動方向」を表すベクトル情報とすることにより、サーバ３において、視点の移動を予測するようにすることもできる。
【００９６】
以上のように、ＪＰＥＧ２０００を用いて、各方向の画像がエンコードされることにより、カメラ方向単位ではない視点の移動が可能になる。
【００９７】
以上においては、１つのカメラが出力する１つの画像（１つの画面）を単位として解像度を設定するようにしたが、（図６、図８、図１１および図１２において、ハッチングなどで表されている領域が１つの画像（画面）である）、１つの画面内において、領域によって異なる解像度を設定することもできる。
【００９８】
図１８乃至図２０を参照して、この場合の例について説明する。なお、図１８乃至図２０において、太い実線で囲まれている、横方向の長さＸ、縦方向の長さＹの領域が、１つの画像（画面）（例えば、「Ｎ」の画像）である。
【００９９】
図１８において、「Ｎ」の画像は、図１７と同様に、左上を原点とするｘｙ座標において、０≦ｘ≦Ｘ，０≦ｙ≦Ｙの範囲で表され、その中の領域１０１が、視点（ｘｃ，ｙｃ）を中心として、横の長さＨ、縦の長さＶ（Ｘ／２≦Ｈ，Ｙ／２≦Ｖ）で囲まれた範囲とされる。
【０１００】
この例の場合、図１９に示されるように、「Ｎ」の画像内の座標（ｘ，ｙ）のうち、ｘｃ−Ｈ／２≦ｘ≦ｘｃ＋Ｈ／２、かつ、ｙｃ−Ｖ／２≦ｙ≦ｙｃ＋Ｖ／２を満たす範囲（すなわち、領域１０１内部）のデータが、設定された解像度Ｒ１（最も大きい解像度）でエンコードされる。
【０１０１】
また、図２０に示されるように、「Ｎ」の画像内の座標（ｘ，ｙ）のうち、ｘｃ−Ｈ／２≦ｘ≦ｘｃ＋Ｈ／２、かつ、ｙｃ−Ｖ／２≦ｙ≦ｙｃ＋Ｖ／２を満たす範囲を除いた、ｘｃ−Ｈ／２≦ｘ≦ｘｃ＋Ｈ／２、または、ｙｃ−Ｖ／２≦ｙ≦ｙｃ＋Ｖ／２を満たす範囲（すなわち、領域１０１の上下左右の辺に接する領域１０２−１乃至１０２−４の範囲）のデータが、解像度Ｒ１の１／２の解像度でエンコードされる。
【０１０２】
さらに、図２１に示されるように、ｘｃ−Ｈ／２≦ｘ≦ｘｃ＋Ｈ／２も満たさず、かつ、ｙｃ−Ｖ／２≦ｙ≦ｙｃ＋Ｖ／２も満たさない範囲（すなわち、領域１０１の上下左右の辺に接しない（領域１０１に対して対角方向に接する）領域１０３−１乃至１０３−４の範囲）のデータが、解像度Ｒ１の１／４の解像度でエンコードされる。
【０１０３】
以上のようにして、視点情報に基づいて、１枚の画像内において解像度を変更するようにしてもよい。これにより、「現在の見ている方向」に加えて、「その方向の画像内の見ている部分」にまで、視点情報を広げ、標準の解像度で圧縮されている画像（例えば、現在の視点「Ｎ」）内の特定の領域を、さらに高解像度で圧縮するようにできる。
【０１０４】
以上のように、ＪＰＥＧ２０００を用いて画像データをエンコードすることにより、１つのカメラにより撮影された１つの方向の画像内における任意の位置の解像度を、他の位置と異なる解像度でエンコードすることが可能になる。
【０１０５】
以上においては、領域によって画素数を変更することで解像度を変更するようにしたが、色数を変更することで解像度を変更するようにしてもよい。
【０１０６】
次に、図２２のフローチャートを参照して、この色数を減らして解像度を変更する場合の全方位の画像の画像データ作成処理について説明する。なお、この処理は、図５のステップＳ１２（すなわち、図７）の全方位の画像の画像データ作成処理の他の例である。したがって、サーバ３の通信部７１により、ユーザ端末２からの視点情報が、視点決定部６４に出力されている。
【０１０７】
ステップＳ６１において、エンコード部６５は、予め設定された使用する色数Ｃ１を色数Ｃとする。ステップＳ６２において、エンコード部６５は、撮影装置４のカメラ５−１乃至５−８より、８方向の画像データを受け取る。
【０１０８】
エンコード部６５は、ステップＳ６３において、視点決定部６４からの視点情報に基づいて、エンコードする画像を選択し、それをＸとし、ステップＳ６４において、Ｘの左隣の画像をＹとする。いまの場合、現在の視点情報が「Ｎ」であるので、Ｘは、「Ｎ」の画像とされ、Ｙは、「ＮＷ」の画像とされる。
【０１０９】
エンコード部６５は、ステップＳ６５において、Ｘの画像データを既にエンコードしたか否かを判断し、まだ、Ｘの画像データをエンコードしていないと判断した場合、ステップＳ６６において、Ｘの画像データを、色数Ｃでエンコードする。これにより、「Ｎ」の画像データは、予め設定された色数Ｃ１（最も多い色数）でエンコードされる。
【０１１０】
ステップＳ６７において、エンコード部６５は、Ｘを１つ右の画像に移動させる。いまの場合、Ｘは、「ＮＥ」の画像とされる。
【０１１１】
エンコード部６５は、ステップＳ６８において、現在の色数（いまの場合、色数Ｃ１）を１／２にしたものを、新たな色数Ｃとし、ステップＳ６９において、Ｙの画像データを既にエンコードしたか否かを判断する。ステップＳ６９において、まだ、Ｙの画像データをエンコードしていないと判断された場合、ステップＳ７０において、エンコード部６５は、Ｙの画像データを、色数Ｃでエンコードする。すなわち、「ＮＷ」の画像データが、色数Ｃ１の１／２の色数でエンコードされる。
【０１１２】
エンコード部６５は、ステップＳ７１において、Ｙを１つ左の画像に移動させる。いまの場合、Ｙは、「Ｗ」の画像とされる。
【０１１３】
そして、エンコード部６５は、ステップＳ６５に戻り、それ以降の処理を繰り返す。このようにして、「ＮＥ」の画像データが、色数Ｃ１の１／２の色数でエンコードされ、「Ｗ」および「Ｅ」の画像データが、色数Ｃ１の１／４の色数でエンコードされ、「ＳＷ」および「ＳＥ」の画像データが、色数Ｃ１の１／８の色数でエンコードされ、「Ｓ」の画像データが、色数Ｃ１の１／１６の色数でエンコードされる。
【０１１４】
ステップＳ６５において、Ｘの画像データを既にエンコードしたと判断された場合、または、ステップＳ６９において、Ｙの画像データを既にエンコードしたと判断された場合、全ての方向の画像データがエンコードされたので、全方位の画像の画像データ作成処理は終了する。
【０１１５】
以上のように、現在の視点の方向に近い方向の画像データに比べて、現在の視点の方向から離れた方向の画像データが、少ない色数でエンコードされるようにしたので、送信する画像データの情報量を軽減することができる。
【０１１６】
以上より、画像内の色数を減らしたり、画像のサイズを小さくしたり、または、量子化パラメータを変更するように、視点からの距離に比例して画像データの情報量を減らすようにしてもよい。
【０１１７】
次に、図２３のフローチャートを参照して、エンコードされた画像データを一旦記憶部７０に記憶してから送信する場合の通信処理について説明する。
【０１１８】
ユーザによりユーザ端末２の入力部２８が操作され、現在の視点（いまの場合、「Ｎ」）が入力される。それに対応して、ステップＳ８１において、視点指定部２４は、視点情報を作成する。ステップＳ８２において、通信部３１は、視点指定部２４により作成された視点情報を、ネットワーク１を介して、サーバ３に送信する。
【０１１９】
サーバ３の通信部７１は、ステップＳ９１において、ユーザ端末２からの視点情報を受信し、視点決定部６４に出力する。ステップＳ９２において、エンコード部６５は、全方位の画像の画像データ作成処理を実行する。この全方位の画像の画像データ作成処理を、図２４のフローチャートを参照して説明する。なお、図２４のステップＳ１０１乃至Ｓ１０６，Ｓ１０８乃至Ｓ１１１，Ｓ１１３の処理は、図７のステップＳ３１乃至Ｓ４１の処理と同様の処理であり、繰り返しになるので、その説明は省略する。
【０１２０】
すなわち、解像度Ｒが設定され、カメラ５−１乃至５−８より８方向の画像データが取得され、視点決定部６４からの視点情報に基づいて、画像Ｘと画像Ｙが求められる。そして、ステップＳ１０５において、Ｘの画像データをエンコードしていないと判断された場合、ステップＳ１０６において、エンコード部６５により、Ｘの画像データが対応する解像度Ｒでエンコードされるので、ステップＳ１０７において、エンコード部６５は、そのエンコードされたＸの画像データを記憶部７０に記憶する。
【０１２１】
同様にして、ステップＳ１１０において、Ｙの画像データをエンコードしていないと判断された場合、ステップＳ１１１において、エンコード部６５により、Ｙの画像データが対応する解像度Ｒでエンコードされるので、ステップＳ１１２において、エンコード部６５は、そのエンコードされたＹの画像データを記憶部７０に記憶する。
【０１２２】
以上の処理により、全方位の画像の画像データが対応する解像度でエンコードされ、記憶部７０に一旦記憶される。
【０１２３】
次に、ステップＳ９３において、ＣＰＵ６１は、全方位の画像の画像データの取得処理を実行する。この全方位の画像の画像データの取得処理について、図２５のフローチャートを参照して説明する。
【０１２４】
ステップＳ１２１において、ＣＰＵ６１は、視点決定部６４からの視点情報に基づいて、中心となる「Ｎ」の画像を、Ｘとし、設定された解像度Ｒ１（最も高い解像度）でエンコードされている「Ｎ」の画像データを、記憶部７０から読み出し、通信部７１に出力する。
【０１２５】
ＣＰＵ６１は、ステップＳ１２２において、現在の解像度（いまの場合、解像度Ｒ１）を１／２にしたものを、新たな解像度Ｒとし、ステップＳ１２３において、Ｘを１つ右の画像に移動させ、ステップＳ１２４において、Ｘの左隣の画像をＹとする。
【０１２６】
ステップＳ１２５において、ＣＰＵ６１は、Ｘの画像データを既に記憶部７０から読み出したか否かを判断し、まだ、Ｘの画像データを記憶部７０から読み出していないと判断した場合、ステップＳ１２６において、解像度ＲのＸの画像データを記憶部７０から読み出し、通信部７１に出力する。すなわち、いまの場合、解像度Ｒ１の１／２の解像度である「ＮＥ」の画像データが記憶部７０から読み出される。
【０１２７】
ＣＰＵ６１は、ステップＳ１２７において、Ｘを１つ右の画像に移動させ、ステップＳ１２８において、Ｙの画像データを既に記憶部７０から読み出したか否かを判断する。ステップＳ１２８において、まだ、Ｙの画像データを記憶部７０から読み出していないと判断された場合、ステップＳ１２９において、解像度ＲのＹの画像データを記憶部７０から読み出し、通信部７１に出力する。すなわち、いまの場合、解像度Ｒ１の１／２の解像度である「ＮＷ」の画像データが記憶部７０から読み出される。
【０１２８】
ＣＰＵ６１は、ステップＳ１３１において、Ｙを１つ左の画像に移動させ、ステップＳ１３２において、解像度Ｒ（いまの場合、（１／２）解像度Ｒ１）を１／２にしたもの（（１／４）解像度Ｒ１）を、解像度Ｒとし、ステップＳ１２５に戻り、それ以降の処理を繰り返す。
【０１２９】
ステップＳ１２５において、既にＸの画像データを読み出したと判断された場合、または、ステップＳ１２８において、既にＹの画像データを読み出したと判断された場合、すべての画像データが読み出されたので、処理を終了する。
【０１３０】
以上の処理により、例えば、現在の視点の解像度を１とした場合、解像度１の「Ｎ」の画像データが通信部７１に出力され、解像度１／２の「Ｎ」の左右隣の「ＮＷ」および「ＮＥ」の画像データが通信部７１に出力され、解像度１／４の「ＮＷ」の左隣の「Ｗ」および「ＮＥ」の右隣の「Ｅ」の画像データが通信部７１に出力される。また、解像度１／８の「Ｗ」の左隣の「ＳＷ」および「Ｅ」の右隣の「ＳＥ」の画像データが通信部７１に出力され、解像度１／１６の「ＳＷ」の左隣（すなわち、「Ｎ」の対角方向）の「Ｓ」の画像データが出力される。
【０１３１】
これらの全方位の画像の画像データを、図２３のステップＳ９４において、通信部７１は、ネットワーク１を介してユーザ端末２に送信する。
【０１３２】
ステップＳ８３において、ユーザ端末２の通信部３１は、その全方位の画像の画像データを受信し、デコード部２５に供給する。ステップＳ８４において、デコード部２５は、視点指定部２４からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部２９に供給し、デコードされた画像を、出力部２９を構成するディスプレイに表示させる。
【０１３３】
以上のように、各カメラの画像に対して、異なる解像度によりエンコードした画像データを一旦記憶し、それを読み出してから送信するようにしたので、例えば、ユーザがどのように全方位映像を楽しんだかがサーバ３側（主催者側）で確認できるというような、ライブ配信のリプライが可能になる。
【０１３４】
なお、この場合、通信部７１は、視点情報に基づいたすべての画像データを取得してからまとめてユーザ端末２に送信するようにしたが、ＣＰＵ６１から各方向の画像データが出力する度に、その画像データをネットワーク１を介してユーザ端末２に送信するようにしてもよい。この場合においては、より高い解像度の画像データから順番に、読み出され、送信されるので、送信する画像データの情報量を軽減することができるだけでなく、受信側で、より迅速に表示を行うことが可能になる。
【０１３５】
また、図２３のステップＳ９２においては、エンコードされた全方位の画像の画像データが各方向の画像データ毎に生成され、記憶されるが、図１３を参照して説明したＪＰＥＧ２０００によりエンコードすることにより、例えば、図８に示されるように、解像度の異なる８方向の画像を繋ぎ合わせて、１つの画像として合成するようできる。これにより、記憶部７０のデータ管理のコストを軽減できる。さらに、隣接する方向の画像を繋ぎ合わせることにより、例えば、「Ｎ」と「ＮＥ」の間に視点がある場合のように、同じ圧縮率で複数の画像データに対してエンコードを実行する場合に、１つのファイルの連続部分をエンコードすることになり、処理の煩雑さが軽減される。
【０１３６】
さらに、図２６のフローチャートを参照して、この全方位の画像の画像データの取得処理の他の例について説明する。なお、この処理は、図２３のステップＳ９３（すなわち、図２５）の全方位の画像の画像データ取得処理の他の例である。ただし、いまの場合、図２３のステップＳ９２の処理により、全方位の画像の画像データすべてが、エンコード部６５により、設定された解像度Ｒ１のみで（最高の解像度で）エンコードされ、記憶部７０に一旦記憶されているものとする。
【０１３７】
ＣＰＵ６１は、ステップＳ１４１において、エンコードされた全方位（８つ）の画像データを記憶部７０から取得し、ステップＳ１４２において、視点決定部６４からの視点情報に基づいて、中心となる「Ｎ」の画像を、Ｘとし、そのままの解像度Ｒ１で、通信部７１に出力する。
【０１３８】
ＣＰＵ６１は、ステップＳ１４３において、現在の解像度（いまの場合、解像度Ｒ１）を１／２にしたものを、新たな解像度Ｒとし、ステップＳ１４４において、Ｘを１つ右の画像に移動させ、ステップＳ１４５において、Ｘの左隣の画像をＹとする。
【０１３９】
ステップＳ１４６において、ＣＰＵ６１は、Ｘの画像データを既に通信部７１に出力したか否かを判断し、まだ、Ｘの画像データを通信部７１に出力していないと判断した場合、ステップＳ１４７において、Ｘの画像データを、解像度Ｒに変換して、通信部７１に出力する。すなわち、いまの場合、「ＮＥ」の画像データが解像度Ｒ１の１／２の解像度に変換されて、通信部７１に出力される。
【０１４０】
ＣＰＵ６１は、ステップＳ１４８において、Ｘを１つ右の画像に移動させ、ステップＳ１４９において、Ｙの画像データを既に通信部７１に出力したか否かを判断する。ステップＳ１４９において、まだ、Ｙの画像データを通信部７１に出力していないと判断された場合、ステップＳ１５０において、Ｙの画像データを、解像度Ｒに変換して、通信部７１に出力する。すなわち、いまの場合、「ＮＷ」の画像データが解像度Ｒ１の１／２の解像度に変換されて、通信部７１に出力される。
【０１４１】
ＣＰＵ６１は、ステップＳ１５１において、Ｙを１つ左の画像に移動させ、ステップＳ１５２において、解像度Ｒ（いまの場合、解像度Ｒ１の１／２）を１／２にしたもの（解像度Ｒ１の１／４にしたもの）を、解像度Ｒとし、ステップＳ１４６に戻り、それ以降の処理を繰り返す。
【０１４２】
ステップＳ１４６において、既にＸの画像データを通信部７１に出力したと判断された場合、または、ステップＳ１４９において、既にＹの画像データを通信部７１に出力したと判断された場合、すべての画像データが通信部７１に出力されたので、処理を終了する。
【０１４３】
以上のように、各カメラの画像に対して、設定された高解像度によりエンコードされた画像データを一旦記憶し、それを読み出して、視点情報に基づいた解像度変換を行ってから送信するようにしても、送信する画像データの情報量を軽減することができる。
【０１４４】
なお、上記説明においては、撮影された画像を、対応する解像度または設定された解像度でエンコードし、一旦記憶し、それを読み出してから送信する（すなわち、記憶しながら送信する）場合を説明したが、サーバ３の記憶部７０に、エンコード部６５によりさまざまな解像度で、エンコードされ、予め記憶されている画像を、図２３のステップＳ９３の処理で取得し、送信するようにしてもよい。
【０１４５】
すなわち、この場合、図２３においては、ステップＳ９２の処理は実行されず（図２３の全方位画像データの通信処理の前に実行されているため）、ステップＳ９３（図２５）の全方位の画像の画像データ取得処理においては、撮影装置４のカメラ５−１乃至５−８により撮影され、さまざまな解像度でエンコードされ、予め記憶されている画像データの中から、視点情報に対応する解像度のものが読み出され、送信される。なお、この場合の解像度は、全方位画像提供システムで提供され得るあらゆる解像度とし、図２５の取得処理を適用するようにしてもよいし、設定された高解像度とし、図２６の取得処理を適用するようにしてもよい。
【０１４６】
次に、図２７を参照して、本発明を適用した全方位画像提供システムの他の構成例を説明する。なお、図２７において、図１における場合と対応する部分には対応する符号を付してあり、その説明は繰り返しになるので省略する。
【０１４７】
この例の場合、ネットワーク１には、ルータ１２２を介して、ｎ台のユーザ端末１２１−１，１２１−２，…１２１−ｎ（以下、これらを個々に区別する必要がない場合、単にユーザ端末１２１と称する）が接続されている。
【０１４８】
ルータ１２２は、マルチキャストルータであり、ユーザ端末１２１からの視点情報に基づいて、サーバ３から送信される全方位の画像の画像データの中から、各ユーザ端末１２１に送信する画像データを検索し、その画像データを、ユーザ端末１２１に送信する処理を実行する。
【０１４９】
また、ユーザ端末１２１は、ユーザ端末１と基本的に同様の構成であり、繰り返しになるのでその説明は省略する。
【０１５０】
図２８は、ルータ１２２の構成例を表している。図２８において、ＣＰＵ１３１乃至ＲＡＭ１３３およびバス１３４乃至半導体メモリ１４４は、図３のユーザ端末２のＣＰＵ２１乃至ＲＡＭ２３およびバス２６乃至半導体メモリ４４と基本的に同様の機能を有するものであるので、その説明は省略する。
【０１５１】
次に、図２９のフローチャートを参照して、図２７の全方位画像提供システムの通信処理について説明する。なお、図２９においては、説明の便宜上、ユーザ端末１２１−１と１２１−２の２台としているが、実際は、ｎ（ｎ＞０）台とされる。
【０１５２】
ユーザによりユーザ端末１２１−１の入力部２８が操作され、現在の視点（いまの場合、「Ｎ」）が入力される。それに対応して、ステップＳ２０１において、視点指定部２４は、視点情報を作成する。ステップＳ２０２において、通信部３１は、視点指定部２４により作成された視点情報を、ルータ１２２を介して、サーバ３に送信する。
【０１５３】
ルータ１２２のＣＰＵ１３１は、ステップＳ２２１において、通信部１３９によりユーザ端末１２１−１からの視点情報「Ｎ」を受信し、ステップＳ２２２において、記憶部１３８などを構成する視点情報テーブルに記憶し、ステップＳ２２３において、通信部１３９により、ネットワーク１を介して、サーバ３に送信する。
【０１５４】
また、同様にして、ユーザによりユーザ端末１２１−２の入力部２８が操作され、現在の視点（いまの場合、「ＮＥ」）が入力される。それに対応して、ステップＳ２１１において、視点指定部２４は、視点情報を作成する。ステップＳ２１２において、通信部３１は、視点指定部２４により作成された視点情報を、ルータ１２２を介して、サーバ３に送信する。
【０１５５】
ルータ１２２のＣＰＵ１３１は、ステップＳ２２４において、通信部１３９によりユーザ端末１２１−２からの視点情報「ＮＥ」を受信し、ステップＳ２２５において、記憶部１３８などを構成する視点情報テーブルに記憶し、ステップＳ２２６において、通信部１３９により、ネットワーク１を介して、サーバ３に送信する。
【０１５６】
図３０を参照して、ルータ１２２に記憶される視点情報テーブルについて説明する。この視点情報テーブルにおいては、各ユーザ端末１２１に、図１０を参照して説明した視点ＩＤが対応付けられる。
【０１５７】
図３０の例の場合、ユーザ端末１２１−１より、視点情報「Ｎ」（すなわち、視点ＩＤ「０」）が送信されてくるので、ユーザ端末１２１−１には、視点ＩＤ「０」が対応付けられる。また、ユーザ端末１２１−２より、視点情報「ＮＥ」（すなわち、視点ＩＤ「１」）が送信されてくるので、ユーザ端末１２１−２には、視点ＩＤ「１」が対応付けられる。同様にして、ユーザ端末１２１−３には、視点ＩＤ「３」が対応付けられ、ユーザ端末１２１−４には、視点ＩＤ「０」が対応付けられ、ユーザ端末１２１−５には、視点ＩＤ「１」が対応付けられ、…、ユーザ端末１２１−ｎには、視点ＩＤ「０」が対応付けられる。
【０１５８】
以上のように、この視点ＩＤは、ユーザ端末１２１、ルータ１２２およびサーバ３の間で共有される情報となる。
【０１５９】
一方、サーバ３の通信部７１は、ステップＳ２４１において、ユーザ端末１２１−１からの視点情報「Ｎ」をルータ１２２を介して受信し、視点決定部６４に出力し、ステップＳ２４２において、ユーザ端末１２１−２からの視点情報「ＮＥ」をルータ１２２を介して受信し、視点決定部６４に出力する。
【０１６０】
ステップＳ２４３において、視点決定部６４は、すべてのユーザ端末１２１から取得した視点情報に基づいて、各方向の画像の解像度を求める。いまの場合、視点決定部６４は、各方向の画像に対して、すべてのユーザ端末１２１から要求される解像度を収集し、そのうちの最高解像度を、その画像の解像度とする。
【０１６１】
例えば、視点決定部６４がユーザ端末１２１−１乃至ユーザ端末１２１−５からの視点情報（図３０）を取得した場合、「Ｎ（視点ＩＤ「０」）」の画像に対しては、視点ＩＤ「０」のユーザ端末１２１−１により、設定された解像度であるＲ１が要求され、視点ＩＤ「１」のユーザ端末１２１−２により、解像度Ｒ１の１／２の解像度が要求され、視点ＩＤ「３」のユーザ端末１２１−３により、解像度Ｒ１の１／８の解像度が要求され、視点ＩＤ「０」のユーザ端末１２１−４により、解像度Ｒ１の解像度が要求され、視点ＩＤ「１」のユーザ端末１２１−５により、解像度Ｒ１の１／２の解像度が要求されている。したがって、「Ｎ」の画像の解像度は、これらのうちの最高解像度である解像度Ｒ１とされる。
【０１６２】
同様にして、「Ｅ（視点ＩＤ「２」）」の画像に対しては、視点ＩＤ「０」のユーザ端末１２１−１により、解像度Ｒ１の１／４の解像度が要求され、視点ＩＤ「１」のユーザ端末１２１−２により、解像度Ｒ１の１／２の解像度が要求され、視点ＩＤ「３」のユーザ端末１２１−３により、解像度Ｒ１の１／２の解像度が要求され、視点ＩＤ「０」のユーザ端末１２１−４により、解像度Ｒ１の１／４の解像度が要求され、視点ＩＤ「１」のユーザ端末１２１−５により、解像度Ｒ１の１／２の解像度が要求されている。したがって、「Ｎ」の画像の解像度は、これらのうちの最高解像度である解像度Ｒ１の１／２解像度とされる。
【０１６３】
なお、上述したステップＳ２４３の演算処理は、ユーザ端末１２１の数が少ない場合には、有効な方法であるが、ユーザ端末１２１が多い場合には、この演算の負荷を抑えるために、全ての画像を、設定された解像度Ｒ１で送るようにしてもよい。
【０１６４】
以上のようにして、各方向の画像に対する解像度が求められるので、その解像度に基づいて、ステップＳ２４４において、エンコード部６５は、撮影装置４のカメラ５−１乃至５−８より供給された８方向の画像データをエンコードする。
【０１６５】
ステップＳ２４５において、通信部７１は、エンコード部６５によりエンコードされた全方位の画像の画像データを、ネットワーク１およびルータ１２２を介してユーザ端末１２１に送信する。
【０１６６】
これに対応して、ルータ１２２のＣＰＵ１３１は、ステップＳ２２７において、全方位の画像の画像データを通信部１３９を介して受信し、ステップＳ２２８において、画像データの送信処理を実行する。この画像データの送信処理について、図３１のフローチャートを参照して説明する。いまの場合、ユーザ端末１２１がｎ台（ｎ＞０）あるとする。
【０１６７】
ＣＰＵ１３１は、ステップＳ２７１において、ｉ＝１を設定し、ステップＳ２７２において、ユーザ端末１２１−ｉ（いまの場合、ｉ＝１）に対して画像データを送信したか否かを判断する。ステップＳ２７２において、ユーザ端末１２１−１に対して、まだ画像データを送信していないと判断された場合、ステップＳ２７３において、ＣＰＵ１３１は、図３０を参照して説明した視点テーブルに基づいて、ユーザ端末１２１−１の視点情報を求める。
【０１６８】
ステップＳ２７４において、ＣＰＵ１３１は、ユーザ端末１２１−１の視点情報「Ｎ」に基づいて、全方位の画像の画像データを、適する解像度に調整する。すなわち、受信した画像データの解像度と送信すべき画像データの解像度が同じであれば、そのままの解像度とするが、受信した画像データの解像度よりも要求される画像データの解像度が低ければ、要求される画像データの解像度に変換する。
【０１６９】
例えば、ユーザ端末１２１−１に対しては、「Ｎ」の画像データは、解像度Ｒ１で受信されるので、解像度Ｒ１のままにされ、「ＮＥ」の画像データは、解像度Ｒ１で受信されるので、解像度Ｒ１の１／２の解像度に変換され、「Ｅ」の画像データは、解像度Ｒ１の１／２の解像度で受信されるので、その解像度の１／２の解像度（すなわち、解像度Ｒ１の１／４の解像度）に変換される。
【０１７０】
ステップＳ２７５において、ＣＰＵ１３１は、視点テーブルに基づいて、ユーザ端末１２１−１と同じ視点情報のユーザ端末があるか否かを判断し、同じ視点情報のユーザ端末（例えば、ユーザ端末１２１−４およびユーザ端末１２１−ｎ）があったと判断した場合、ステップＳ２７６において、ユーザ端末１２１−１、ユーザ端末１２１−４およびユーザ端末１２１−ｎに、ステップＳ２７４において調整された全方位の画像の画像データを送信する。
【０１７１】
ステップＳ２７５において、視点テーブルに基づいて、ユーザ端末１２１−１と同じ視点情報のユーザ端末がないと判断された場合、ステップＳ２７７において、ユーザ端末１２１−１にのみ、その調整された全方位の画像の画像データを送信する。
【０１７２】
ステップＳ２７２において、ユーザ端末１２１−ｉに対して、送信が既になされていると判断された場合、ステップＳ２７３乃至Ｓ２７７の処理はスキップされる。
【０１７３】
ＣＰＵ１３１は、ステップＳ２７８において、ｉを１つ加算し（いまの場合、ｉ＝２とし）、ステップＳ２７９において、ｉがｎよりも小さいか否かを判断する。ステップＳ２７９において、ｉがｎよりも小さいと判断された場合、処理は、ステップＳ２７２に戻り、それ以降の処理が繰り返される。ステップＳ２７９において、ｉがｎと同じか、またはｎよりも大きいと判断された場合、送信処理は終了される。
【０１７４】
以上の処理により、ユーザ端末１２１−１に対しては、視点情報「Ｎ」に基づいた全方位の画像の画像データが送信され、ユーザ端末１２１−２に対しては、視点情報「ＮＥ」に基づいた全方位の画像の画像データが送信される。
【０１７５】
図２９に戻って、ルータ１２２の以上の処理に対応して、ユーザ端末１２１−１の通信部３１は、ステップＳ２０３において、その全方位の画像の画像データを受信し、デコード部２５に供給する。ステップＳ２０４において、デコード部２５は、視点指定部２４からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、出力部２９に供給し、デコードされた画像を出力部２９を構成するディスプレイに表示させる。
【０１７６】
同様にして、ユーザ端末１２１−２の通信部３１は、ステップＳ２１３において、その全方位の画像の画像データを受信し、デコード部２５に供給する。ステップＳ２１４において、デコード部２５は、視点指定部２４からの視点情報に基づいて、全方位の画像の画像データの中から、現在の視点に対応する方向の画像データをデコードし、デコードされた画像を出力部２９に供給し、出力部２９を構成するディスプレイに表示させる。
【０１７７】
以上のようにして、複数台のユーザ端末１２１において、視点の違いはあるにせよ、同じ画像ソースのデータを受け取ることができる。これにより、サーバ３の負荷が軽減され、さらに、ネットワーク１上のデータ量も軽減される。また、上記説明においては、サーバ３のエンコード部６５においてエンコードされた画像データが即座に通信部７１を介してネットワーク１に送信されていたが、この場合においても、エンコードされた画像データを一旦記憶部７０に記憶するようにしてもよい。
【０１７８】
さらに、以上においては、画像データがＪＰＥＧ２０００でエンコードされているので、高解像度の画像データから低解像度の画像データに容易に変換する（取り出す）ことができ、変換のためのデコードが必要ないため、ルータ１２２の負荷を軽減することができる。
【０１７９】
また、ルータ１２２とユーザ端末１２１との間に充分な帯域があれば、ユーザ端末１２１が要求した解像度よりも高い解像度で送信してしまってもよい。この場合、ユーザ端末１２１においては、メモリ容量などの必要に応じて、解像度を落として表示するようになる。
【０１８０】
上記説明においては、画像の解像度が１／２，１／４，１／８または１／１６のように指数的に変化していく例を説明したが、例えば、４／５，３／５，２／５または１／５のように線形的に変化してもよいし、急に背後を見る可能性の高い全方位の画像においては、１／２，１／４，１／２，１のように、減少後増加するような解像度としてもよく、特に制限はない。また、カメラ５−１乃至５−８により撮影される画像毎に異なる値を用いてもよい。
【０１８１】
また、以上においては、サーバが１台に対して、カメラが８台により構成したが、カメラ１台に対してサーバ１台を対応させ、ユーザ端末からの視点情報を各サーバに送信することにより、そのサーバが対応するカメラの方向の画像データのみをエンコードするようにしてもよい。
【０１８２】
本発明は、全方位の画像を提供する場合だけでなく、オムニビュー（Ｏｍｎｉ−Ｖｉｅｗ）の画像を提供する場合にも適用することができる。
【０１８３】
「Ｏｍｎｉ−Ｖｉｅｗの画像」は、図３２に示されるように、任意の対象物１５１を３６０度全方向から撮影することで得られる。図３２の例においては、８台のカメラで上中央方向の「Ｎ」から時計回りに、「ＮＥ」，「Ｅ」，「ＳＥ」，「Ｓ」，「ＳＷ」，「Ｗ」および「ＮＷ」の８方向の画像が撮影されている。これらの画像から、隣接する方向の画像を繋ぎ合わせて合成すると、図３３に示されるように、左から順に、「Ｓ」，「ＳＥ」，「Ｅ」，「ＮＥ」，「Ｎ」，「ＮＷ」，「Ｗ」，「ＳＷ」の画像が順に繋ぎ合わされた画像が１ファイルの画像とされる。これは、例えば、現在の視点情報が「Ｎ」を指す場合、視点が右に移動すると、「ＮＷ」の画像へと視点が移動し、逆に、視点が左に移動すると、「ＮＥ」に移動するというように、図８を参照して説明した「全方位の画像」の左右が入れ替わった状態と同様であるので、図２を参照して説明した撮影装置４の構成が変わる以外は、上述した全方位の画像の例と基本的に変わらない。したがって、本明細書では、「Ｏｍｎｉ−Ｖｉｅｗの画像」は、「全方位の画像」に含まれるものとする。
【０１８４】
以上のように、視点情報に基づいて、それに対応した解像度、色、サイズでエンコードするようにしたので、「全方位の画像」（「Ｏｍｎｉ−Ｖｉｅｗの画像」を含む）をユーザが見る際に、ユーザの視点移動に対する反応時間を短縮できる。また、ネットワーク上の通信経路内に流れるデータ量を低減できる。
【０１８５】
さらに、多くのユーザが「全方位の画像」（「Ｏｍｎｉ−Ｖｉｅｗの画像」を含む）を見る場合であっても、スムーズに画像を提供することができる。
【０１８６】
以上により、ユーザが、スムーズに視点移動が可能な「全方位の画像」（「Ｏｍｎｉ−Ｖｉｅｗの画像」を含む）を見ることができる快適な全方位画像提供システムを実現することができる。
【０１８７】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０１８８】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図３、図４および図２８に示されるように、磁気ディスク４１，８１，１４１（フレキシブルディスクを含む）、光ディスク４２，８２，１４２（ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ−Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）を含む）、光磁気ディスク４３，８３，１４３（ＭＤ（Ｍｉｎｉ−Ｄｉｓｃ）（商標）を含む）、もしくは半導体メモリ４４，８４，１４４などよりなるパッケージメディア、または、プログラムが一時的もしくは永続的に格納されるＲＯＭ２２，６２，１３２や、記憶部３０，７０，１３８などにより構成される。
【０１８９】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１９０】
なお、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１９１】
【発明の効果】
以上の如く、本発明によれば、即時性を持ったシステムを構築できる。また、本発明によれば、ネットワーク上のデータ量が軽減される。さらに、本発明によれば、ユーザに対して快適なシステムが提供される。
【図面の簡単な説明】
【図１】本発明を適用した全方位画像提供システムの構成例を示す図である。
【図２】図１の撮影装置の外観の構成を示す図である。
【図３】図１のユーザ端末の構成を示すブロック図である。
【図４】図１のサーバの構成を示すブロック図である。
【図５】図１の全方位画像提供システムの通信処理を説明するフローチャートである。
【図６】視点情報を説明する図である。
【図７】図５のステップＳ１２の全方位の画像の画像データ作成処理を説明するフローチャートである。
【図８】全方位の画像を説明する図である。
【図９】図５の全方位画像提供システムの通信処理時におけるデータの流れを説明する図である。
【図１０】視点情報の対応関係を説明する図である。
【図１１】上下方向のカメラに対応するエンコード方法について説明する図である。
【図１２】上下方向のカメラに対応するエンコード方法について説明する図である。
【図１３】ＪＰＥＧ２０００を説明する図である。
【図１４】ＪＰＥＧ２０００の具体的な例を説明する図である。
【図１５】ＪＰＥＧ２０００の具体的な例を説明する図である。
【図１６】画像間における視点情報を説明する図である。
【図１７】画像間における視点情報を説明する図である。
【図１８】１つの方向の画像内のエンコード方法を説明する図である。
【図１９】１つの方向の画像内のエンコード方法を説明する図である。
【図２０】１つの方向の画像内のエンコード方法を説明する図である。
【図２１】１つの方向の画像内のエンコード方法を説明する図である。
【図２２】図５のステップＳ１２の全方位の画像の画像データ作成処理の他の例を説明するフローチャートである。
【図２３】図５の全方位画像提供システムの通信処理の他の例を説明するフローチャートである。
【図２４】図２３のステップＳ９２の全方位の画像の画像データ生成処理を説明するフローチャートである。
【図２５】図２３のステップＳ９３の全方位の画像の画像データ取得処理を説明するフローチャートである。
【図２６】図２３のステップＳ９３の全方位の画像の画像データ取得処理の他の例を説明するフローチャートである。
【図２７】本発明を適用した全方位画像提供システムの他の構成例を示す図である。
【図２８】図２７のルータの構成を示すブロック図である。
【図２９】図２７の全方位画像提供システムの通信処理の例を説明するフローチャートである。
【図３０】視点テーブルを説明する図である。
【図３１】図２７のルータの画像データの送信処理を説明するフローチャートである。
【図３２】Ｏｍｎｉ−Ｖｉｅｗの視点情報を説明する図である。
【図３３】Ｏｍｎｉ−Ｖｉｅｗの画像を説明する図である。
【符号の説明】
１　ネットワーク，２　ユーザ端末，３　サーバ，４　撮影装置，５−１乃至５−８　カメラ，２１　ＣＰＵ，２４　視点指定部，２５　デコード部，３０　記憶部，６１　ＣＰＵ，６４　視点決定部，６５　エンコード部，７０　記憶部，１２１　ユーザ端末，１２２　ルータ，１３１　ＣＰＵ
【図１】
2004072694.tif 000003
【図２】
2004072694.tif 000004
【図３】
2004072694.tif 000005
【図４】
2004072694.tif 000006
【図５】
2004072694.tif 000007
【図６】
2004072694.tif 000008
【図７】
2004072694.tif 000009
【図８】
2004072694.tif 000010
【図９】
2004072694.tif 000011
【図１０】
2004072694.tif 000012
【図１１】
2004072694.tif 000013
【図１２】
2004072694.tif 000014
【図１３】
2004072694.tif 000015
【図１４】
2004072694.tif 000016
【図１５】
2004072694.tif 000017
【図１６】
2004072694.tif 000018
【図１７】
2004072694.tif 000019
【図１８】
2004072694.tif 000020
【図１９】
2004072694.tif 000021
【図２０】
2004072694.tif 000022
【図２１】
2004072694.tif 000023
【図２２】
2004072694.tif 000024
【図２３】
2004072694.tif 000025
【図２４】
2004072694.tif 000026
【図２５】
2004072694.tif 000027
【図２６】
2004072694.tif 000028
【図２７】
2004072694.tif 000029
【図２８】
2004072694.tif 000030
【図２９】
2004072694.tif 000031
【図３０】
2004072694.tif 000032
【図３１】
2004072694.tif 000033
【図３２】
2004072694.tif 000034
【図３３】
2004072694.tif 000035