以下、本開示を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.第1実施の形態:画像表示システム(図1乃至図18)
2.第2実施の形態:画像表示システム(図19)
3.テクスチャ画像の他の例(図20)
4.第3実施の形態:コンピュータ(図21)
5.応用例(図22および図23)
<1.第1実施の形態>
(画像表示システムの第1実施の形態の構成例)
図1は、本開示を適用した画像表示システムの第1実施の形態の構成例を示すブロック図である。
図1の画像表示システム10は、マルチカメラ11、コンテンツサーバ12、ホームサーバ13、変換装置14、およびヘッドマウントディスプレイ15により構成される。画像表示システム10は、マルチカメラ11により撮影されたYCbCr画像(YUV画像)である撮影画像から全天球画像を生成し、全天球画像のうちの視聴者の視野範囲の画像を表示する。
具体的には、画像表示システム10のマルチカメラ11は、水平方向の周囲360度および垂直方向の周囲180度を撮影範囲として、外向きに配置された複数(図1の例では6個)のカメラにより構成される。各カメラは、水平方向または垂直方向の少なくとも一方に所定の間隔を空けて配置された2つ以上の撮像センサ(CMOSイメージセンサやCCDイメージセンサ)を有するステレオカメラで構成される。各カメラは、撮影を行い、その結果得られる撮影画像をフレーム単位で生成する。マルチカメラ11は、各カメラの撮影画像をコンテンツサーバ12に供給する。なお、マルチカメラ11の各カメラとして、ToF(Time of Flight)センサに代表される画像情報と距離情報を1つでセンシングできるセンサを用いてもよい。
コンテンツサーバ12(画像処理装置)は、マルチカメラ11から供給される各カメラの撮影画像から、所定の視点の全天球画像のテクスチャ画像とデプス画像を生成する。第1実施の形態では、デプス画像は、所定の視点から各画素における被写体までの直線の距離rを示す8ビットの値としての、距離rの逆数1/rを画素値とする画像である。被写体までの直線の距離rは、ステレオカメラを構成する2つ以上の撮像センサで同一の被写体を撮像したときの視差から、三角測量の原理により算出することができる。なお、被写体までの直線の距離rは、例えば、ToF(Time of Flight)方式など、視差から求める方法以外の方法を用いて算出しもよい。
また、コンテンツサーバ12は、各カメラの撮影画像を用いて、全天球画像における視点を中心とした立方体を構成する6つの面に対応するテクスチャ画像とデプス画像を階層化して生成する。より具体的には、コンテンツサーバ12は、6つの面の第1レイヤおよび第2レイヤのテクスチャ画像とデプス画像を生成する。ここで、第1レイヤのテクスチャ画像と第2レイヤのテクスチャ画像とは、マルチカメラ11により撮影されたYCbCr画像(YUV画像)の輝度情報(Y成分)が異なるように生成される。
即ち、マルチカメラ11の各カメラは、例えば、絞りを変えたり、露光時間(シャッタ速度)を変えたりして、同一の視点及び視野範囲で、被写体の明るさが異なるように撮影して得られた2種類の撮影画像を生成し、コンテンツサーバ12に供給する。コンテンツサーバ12は、被写体の明るさの範囲が第1の範囲(以下、第1の明るさ範囲という。)となるように撮影された撮影画像に基づく全天球画像のテクスチャ画像とデプス画像から、6つの面の第1レイヤのテクスチャ画像とデプス画像を生成する。また、コンテンツサーバ12は、被写体の明るさの範囲が第1の範囲よりも明るい第2の範囲(以下、第2の明るさ範囲という。)となるように撮影された撮影画像に基づく全天球画像のテクスチャ画像とデプス画像から、6つの面の第2レイヤのテクスチャ画像とデプス画像を生成する。なお、全天球画像における視点と立方体の中心は異なっていていてもよい。
コンテンツサーバ12は、各面の第1レイヤのテクスチャ画像とデプス画像からなる第1レイヤ画像と、各面の第2レイヤのテクスチャ画像とデプス画像からなる第2レイヤ画像を、面、画像の種類、およびレイヤごとに、AVCやHEVC等の符号化方式で圧縮符号化する。コンテンツサーバ12は、その結果得られる各面の第1レイヤのテクスチャ画像の符号化ストリーム(以下、第1レイヤテクスチャストリームという)、第1レイヤのデプス画像の符号化ストリーム(以下、第1レイヤデプスストリームという)、第2レイヤのテクスチャ画像の符号化ストリーム(以下、第2レイヤテクスチャストリームという)、および第2レイヤのデプス画像の符号化ストリーム(以下、第2レイヤデプスストリームという)を記憶する。なお、第1レイヤ画像と第2レイヤ画像の符号化方式は、MVC(Multiview Video Coding)方式や3D-HEVC方式等であってもよい。
コンテンツサーバ12は、全天球画像のテクスチャ画像とデプス画像を低解像度化し、低解像度テクスチャ画像と低解像度デプス画像とを生成する。コンテンツサーバ12は、低解像度テクスチャ画像と低解像度デプス画像を、AVC(Advanced Video Coding)やHEVC(High Efficiency Video Coding)/H.265等の符号化方式で圧縮符号化する。コンテンツサーバ12は、その結果得られる低解像度テクスチャ画像の符号化ストリーム(以下、低解像度テクスチャストリームという)と低解像度デプス画像の符号化ストリーム(以下、低解像度デプスストリームという)を記憶する。なお、低解像度テクスチャ画像と低解像度デプス画像は、被写体の明るさの範囲が第1の範囲の撮影画像に基づく全天球画像のテクスチャ画像とデプス画像から生成してもよいし、第2の範囲の撮影画像に基づく全天球画像のテクスチャ画像とデプス画像から生成してもよい。あるいはまた、第1の範囲の撮影画像と第2の範囲の撮影画像を平均処理した撮影画像に基づく全天球画像のテクスチャ画像とデプス画像から生成してもよい。
さらに、コンテンツサーバ12は、第1レイヤおよび第2レイヤの各面に関する情報等をメタデータとして生成し、記憶する。コンテンツサーバ12は、記憶している低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを、図示せぬネットワークを介してホームサーバ13に伝送する。
なお、コンテンツサーバ12は、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを再構成(詳細は後述する)することもできる。この場合、コンテンツサーバ12は、再構成後の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームと、それらに対応するメタデータをホームサーバ13に伝送することもできる。しかしながら、以下では、説明の便宜上、再構成が行われた場合であっても、再構成前の6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームが、コンテンツサーバ12に伝送されるものとする。
ホームサーバ13(画像処理装置)は、コンテンツサーバ12から伝送されてくる、低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを受け取る。
また、ホームサーバ13は、カメラ13Aを内蔵し、視聴者の頭部に装着されるヘッドマウントディスプレイ15に付されたマーカ15Aを撮影する。そして、ホームサーバ13は、マーカ15Aの撮影画像に基づいて視聴位置を検出する。さらに、ホームサーバ13は、ヘッドマウントディスプレイ15のジャイロセンサ15Bの検出結果を、ヘッドマウントディスプレイ15から変換装置14を介して受け取る。ホームサーバ13は、ジャイロセンサ15Bの検出結果に基づいて視聴者の視線方向を決定し、視聴位置と視線方向に基づいて視聴者の視野範囲を決定する。
ホームサーバ13は、第1レイヤの6つの面のうちの、視聴者の視線方向に対応する3つの面を選択する。そして、ホームサーバ13は、選択された3つの面に対応する第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを復号する。これにより、ホームサーバ13は、選択された3つの面に対応する第1レイヤおよび第2レイヤのテクスチャ画像およびデプス画像を生成する。
また、ホームサーバ13は、低解像度テクスチャストリームと低解像度デプスストリームを復号し、低解像度テクスチャ画像と低解像度デプス画像を生成する。ホームサーバ13は、選択された3つの面に対応する第1レイヤおよび第2レイヤのテクスチャ画像およびデプス画像、並びに、低解像度テクスチャ画像と低解像度デプス画像を用いて、視聴者の視野範囲の画像を表示画像として生成する。ホームサーバ13は、図示せぬHDMI(登録商標)(High-Definition Multimedia Interface)ケーブルを介して表示画像を変換装置14に伝送する。
変換装置14は、ホームサーバ13から伝送されてくる表示画像における座標を、ヘッドマウントディスプレイ15における座標に変換する。変換装置14は、座標変換後の表示画像をヘッドマウントディスプレイ15に供給する。
ヘッドマウントディスプレイ15は、マーカ15Aとジャイロセンサ15Bを有し、視聴者の頭部に装着される。ヘッドマウントディスプレイ15は、変換装置14から供給される表示画像を表示する。また、ヘッドマウントディスプレイ15に内蔵されるジャイロセンサ15Bは、ヘッドマウントディスプレイ15の傾きを検出し、その検出結果を、変換装置14を介してホームサーバ13に伝送する。
(コンテンツサーバの構成例)
図2は、図1のコンテンツサーバ12の構成例を示すブロック図である。
図2のコンテンツサーバ12は、デプス検出部31、低解像度画像処理部33、および高解像度画像処理部34により構成される。
コンテンツサーバ12のデプス検出部31は、図1のマルチカメラ11から供給される各カメラの撮影画像の画素ごとに、その画素における被写体を含む奥行き方向に垂直なデプス平面とカメラの間の奥行き方向の距離zの逆数1/zを検出する。デプス検出部31は、その結果得られる各カメラの撮影画像の各画素の逆数1/zを画素値とするz画像を低解像度画像処理部33と高解像度画像処理部34に供給する。
低解像度画像処理部33は、マルチカメラ11の3次元座標系(以下、カメラ座標系という)における所定の3次元位置を視点として、マルチカメラ11から供給される各カメラの撮影画像を、視点を中心とした正八面体にマッピング(透視投影)することにより、全天球画像のテクスチャ画像を生成する。また、低解像度画像処理部33は、デプス検出部31から供給される各カメラのz画像を、撮影画像と同様に正八面体にマッピングすることにより、全天球画像のz画像を生成する。
低解像度画像処理部33は、全天球画像のz画像の各画素の逆数1/zを逆数1/rに変換する。そして、低解像度画像処理部33は、以下の式(1)により、逆数1/rに対して8ビット量子化を行う。
なお、Id(r)は、距離rの逆数1/rの8ビット量子化後の値である。rmax,rminは、それぞれ、全カメラの撮影画像における距離rの最大値、最小値である。
低解像度画像処理部33は、全天球画像の各画素の逆数1/rの8ビット量子化後の値を画素値とすることにより、全天球画像のデプス画像を生成する。
低解像度画像処理部33は、全天球画像のテクスチャ画像とデプス画像を低解像度化し、低解像度テクスチャ画像と低解像度デプス画像を生成する。低解像度画像処理部33は、低解像度テクスチャ画像と低解像度デプス画像を圧縮符号化し、その結果得られる低解像度テクスチャストリームと低解像度デプスストリームを記憶する。低解像度画像処理部33は、記憶している低解像度テクスチャストリームと低解像度デプスストリームを、図1のホームサーバ13に送信する。
高解像度画像処理部34は、マルチカメラ11から供給される各カメラの撮影画像を用いて、低解像度画像処理部33における正八面体と中心が同一である立方体を構成する6つの面に対応する第1レイヤおよび第2レイヤのテクスチャ画像を生成する。高解像度画像処理部34は、デプス検出部31から供給される各カメラのz画像を用いて、撮影画像と同様に6つの面に対応する第1レイヤおよび第2レイヤのデプス画像を生成する。
高解像度画像処理部34は、各面の第1レイヤおよび第2レイヤのテクスチャ画像とデプス画像を、面、画像の種類、およびレイヤごとに圧縮符号化する。コンテンツサーバ12は、その結果得られる第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを記憶する。
また、高解像度画像処理部34は、メタデータを生成して記憶する。コンテンツサーバ12は、記憶している6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを、図示せぬネットワークを介してホームサーバ13に伝送する。
(高解像度画像処理部の構成例)
図3は、図2の高解像度画像処理部34の構成例を示すブロック図である。
図3の高解像度画像処理部34は、第1レイヤ生成部50、量子化部51、エンコーダ52、第2レイヤ生成部53、量子化部54、エンコーダ55、設定部56、メタデータ生成部57、ストレージ58、再構成部59、および伝送部60により構成される。
第1レイヤ生成部50には、設定部56から、カメラ座標系における全天球画像の視点を原点とした3次元座標系(以下、3Dモデル座標系という)における、第1レイヤの視点の3次元位置として原点を示す視点位置情報が供給される。また、第1レイヤ生成部50には、3Dモデル座標系における原点を中心とした立方体を構成する6つの面をそれぞれ含む6つの面それぞれの、3Dモデル座標系における3次元位置およびサイズを示す面情報が供給される。
第1レイヤ生成部50は、視点位置情報が示す原点を第1レイヤの視点(第1の視点)に設定する。第1レイヤ生成部50(画像生成部)は、カメラ座標系における全天球画像の視点を原点として、第1レイヤの視点から、図1のマルチカメラ11から供給される第1の明るさ範囲の撮影画像を、6つの各面情報が示す3次元位置およびサイズの面のそれぞれにマッピングする。これにより、第1レイヤ生成部50は、第1レイヤの6つの面のテクスチャ画像を生成する。
また、第1レイヤ生成部50(画像生成部)は、カメラ座標系における全天球画像の視点を原点として、第1レイヤの視点から、図2のデプス検出部31から供給されるz画像を、6つの各面情報が示す3次元位置およびサイズの面のそれぞれにマッピングする。これにより、第1レイヤ生成部50は、第1レイヤの6つの面のz画像を生成する。
第1レイヤの6つの面に対応する視点は同一であるため、第1レイヤの6つの面のテクスチャ画像は、第1レイヤの視点を中心とした3Dモデルにマッピングされた全天球画像を6つの面にマッピングすることにより得られた画像であるといえる。同様に、第1レイヤの6つの面のz画像は、第1レイヤの視点を中心とした3Dモデルにマッピングされた全天球画像のz画像を6つの面にマッピングすることにより得られた画像であるといえる。第1レイヤ生成部50は、第1レイヤの6つの面のテクスチャ画像をエンコーダ52に供給し、第1レイヤの6つの面のz画像を量子化部51に供給する。
量子化部51は、第1レイヤ生成部50から供給される第1レイヤの6つの各面のz画像の各画素の逆数1/zを逆数1/rに変換する。そして、量子化部51は、上述した式(1)により、逆数1/rに対して8ビット量子化を行う。但し、式(1)におけるrmax,rminは、6つの面全てにおける距離rの最大値、最小値である。rmaxおよびrminを6つの面全てにおける距離rの最大値および最小値とすることにより、各面の距離rの最大値および最小値とする場合に比べて、面ごとに量子化ステップが変化することを防止することができる。量子化部51は、第1レイヤの6つの面のz画像の各画素の逆数1/rの8ビット量子化後の値を画素値とすることにより、第1レイヤの6つの面のデプス画像を生成し、エンコーダ52に供給する。
エンコーダ52は、第1レイヤ生成部52から供給される第1レイヤの6つの面のテクスチャ画像と量子化部51から供給される第1レイヤの6つの面のデプス画像を、面ごと、かつ、画像の種類ごとに圧縮符号化し、第1レイヤテクスチャストリームと第1レイヤデプスストリームを生成する。エンコーダ52は、第1レイヤテクスチャストリームと第1レイヤデプスストリームをストレージ58に供給する。
第2レイヤ生成部53には、設定部56から、第1レイヤの各面に対応する第2レイヤの各面の、第1レイヤの視点と同じ視点(第2レイヤの視点)を示す視点位置情報と、第1レイヤの各面に対応する第2レイヤの各面の面情報とが供給される。
第2レイヤ生成部53(画像生成部)は、第2レイヤの面ごとに、その面に対応する第2レイヤの視点から、マルチカメラ11から供給される第2の明るさ範囲の撮影画像を、6つの各面情報が示す3次元位置およびサイズの面のそれぞれにマッピングする。これにより、第2レイヤ生成部53は、第2レイヤの6つの面のテクスチャ画像を生成する。
また、第2レイヤ生成部53(画像生成部)は、第2レイヤの面ごとに、第2レイヤの視点から、図2のデプス検出部31から供給されるz画像を、6つの各面情報が示す3次元位置およびサイズの面のそれぞれにマッピングする。これにより、第2レイヤ生成部54は、第2レイヤの6つの面のz画像を生成する。
従って、テクスチャ画像の画素値が表す被写体の明るさは、第1レイヤのテクスチャ画像と第2レイヤのテクスチャ画像とで異なるが、z画像が表す被写体までの距離は、第1レイヤのz画像と第2レイヤのz画像で同一である。第2レイヤ生成部53は、第2レイヤの6つの面のテクスチャ画像をエンコーダ55に供給し、第2レイヤの6つの面のz画像を量子化部54に供給する。
量子化部54は、第2レイヤ生成部53から供給される第2レイヤの6つの各面のz画像の各画素の逆数1/zを逆数1/rに変換する。そして、量子化部54は、量子化部51と同様に、上述した式(1)により、逆数1/rに対して8ビット量子化を行う。量子化部54は、第2レイヤの6つの面のz画像の各画素の逆数1/rの8ビット量子化後の値を画素値とすることにより、第2レイヤの6つの面のデプス画像を生成し、エンコーダ55に供給する。
エンコーダ55は、第2レイヤ生成部53から供給される第2レイヤの6つの面のテクスチャ画像と量子化部54から供給される第2レイヤの6つの面のデプス画像を、面ごと、かつ、画像の種類ごとに圧縮符号化し、第2レイヤテクスチャストリームと第2レイヤデプスストリームを生成する。エンコーダ55は、第2レイヤテクスチャストリームと第2レイヤデプスストリームをストレージ58に供給する。
設定部56は、3Dモデル座標系における原点を第1レイヤの視点として設定する。設定部56は、第1レイヤの視点を中心とした立方体を構成する6つの矩形の面をそれぞれ含む6つの面を第1レイヤの面として設定する。
設定部56は、第1レイヤの1つの視点位置情報と6つの面情報を第1レイヤ生成部50とメタデータ生成部57に供給する。また、設定部56は、第1レイヤと同じ視点の視点位置情報と6つの面情報を第2レイヤ生成部53にも供給する。
メタデータ生成部57は、設定部56から供給される第1レイヤと第2レイヤに共通の視点位置情報および面情報を含むテーブルをメタデータとして生成し、ストレージ58に供給する。
ストレージ58は、エンコーダ52から供給される第1レイヤテクスチャストリームおよび第1レイヤデプスストリーム、並びに、エンコーダ55から供給される第2レイヤテクスチャストリームおよび第2レイヤデプスストリームを記憶する。また、ストレージ58は、メタデータ生成部57から供給されるメタデータを記憶する。
また、ストレージ58は、再構成部59から供給される再構成後の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びに、メタデータを記憶する。
再構成部59は、必要に応じて、ストレージ58に記憶されている6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを読み出し、再構成する。
具体的には、再構成部59は、再構成前の第1レイヤテクスチャストリームを用いて第1レイヤテクスチャストリームに対応する面の数や画角を変更し、再構成前の第1レイヤデプスストリームを用いて第1レイヤデプスストリームに対応する面の数や画角を変更する。例えば、再構成部59は、第1レイヤの面を、立方体を構成する6つの面をそれぞれ含む6つの面から、その6つの面に各面の中心を通る法線が立方体の12本の各辺の中点と視点を通る線である12個の面を加えた18個の面に変更する。
または、再構成部59は、再構成前の第1レイヤテクスチャストリームを用いて第1レイヤテクスチャストリームに対応する面どうしの間隔(密度)を変更し、再構成前の第1レイヤデプスストリームを用いて第1レイヤデプスストリームに対応する面どうしの間隔を変更する。例えば、再構成部59は、第1レイヤの面を、中心を通る法線の間隔が90度である、立方体を構成する6つの面をそれぞれ含む6つの面から、中心を通る法線の間隔が45度である18個の面に変更する。
第1レイヤの面どうしの間隔が狭くなると、面数が増加するため、総データ容量は増加するが、ホームサーバ13において、より視聴者の視野範囲に近い第1レイヤの面に対応するテクスチャ画像およびデプス画像を用いて表示画像を生成することができる。その結果、表示画像内の、第1レイヤまたは第2レイヤのテクスチャ画像およびデプス画像を用いて生成される高解像度領域が増加し、表示画像の画質が向上する。
なお、再構成部59は、再構成前の第1レイヤテクスチャストリームを用いて第1レイヤテクスチャストリームに対応する面の位置を変更し、再構成前の第1レイヤデプスストリームを用いて第1レイヤデプスストリームに対応する面の位置を変更することにより、再構成を行ってもよい。この場合、再構成部59は、例えば、主要な被写体が第1レイヤの面の境界に存在するとき、主要な被写体が第1レイヤの面の境界以外の位置(例えば中央)に存在するように、第1レイヤの6つの面に対応する立方体を回転することにより、再構成を行う。
また、再構成部59は、再構成前の第1レイヤテクスチャストリームを用いて第1レイヤテクスチャストリームに対応する面の傾きを変更し、再構成前の第1レイヤデプスストリームを用いて第1レイヤデプスストリームに対応する面の傾きを変更することにより、再構成を行ってもよい。この場合、再構成部59は、例えば、第1レイヤのテクスチャ画像内の主要な被写体が傾いているとき、傾きがなくなるように、第1レイヤの6つの面に対応する立方体を回転することにより、再構成を行う。
再構成部59は、以上のようにして変更された第1レイヤの各面に対して、再構成後の第2レイヤの視点と面を設定する。そして、再構成部59は、再構成前の第2レイヤテクスチャストリームを用いて、第2レイヤテクスチャストリームに対応する視点および面を、設定された再構成後の第2レイヤの視点および面に変更する。また、再構成部59は、再構成前の第2レイヤデプスストリームを用いて、第2レイヤデプスストリームに対応する視点および面を、設定された再構成後の第2レイヤの視点および面に変更する。
再構成部59は、再構成後の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームをストレージ58に供給する。また、再構成部59は、再構成後の第1レイヤの視点位置情報および面情報、並びに、第2レイヤの視点位置情報および面情報を含むテーブルをメタデータとして生成し、ストレージ58に供給する。
伝送部60は、ストレージ58から6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを読み出し、図1のホームサーバ13に送信する。
以上のように、図3の高解像度画像処理部34は、第1レイヤ画像と第2レイヤ画像を透視投影により生成する。従って、ホームサーバ13は、第1レイヤ画像と第2レイヤ画像に対して通常の画像用の処理を行うことができる。また、高解像度画像処理部34は、第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、通常の画像の符号化ストリームの送信方法で送信することができる。
(距離zと距離rの説明)
図4は、距離zと距離rを説明する図である。
なお、図4は、第1レイヤに対応する立方体の所定の面を上から見た図である。
距離zは、視点から各画素における被写体を含む奥行き方向に垂直なデプス平面までの奥行き方向の距離である。また、第1レイヤの各面の奥行き方向は、第1レイヤの各面に垂直な方向である。従って、第1レイヤの各面とデプス平面は平行になる。よって、第1レイヤの各面における距離zが同一であるデプス平面である等距離z面の形状は、第1レイヤの視点Oを中心とした立方体状になる。従って、等距離z面を第1レイヤに対応する立方体の所定の面の上から見た形状は、図4のAの点線で示すように正方形となる。
これに対して、距離rは、視点から各画素における被写体までの直線の距離である。また、第1レイヤの各面の視点Oから被写体までの直線の方向は、面によらず、視点Oを中心とした円の半径方向である。従って、第1レイヤの各面における距離rが同一である等距離r面の形状は、第1レイヤの視点Oを中心とした球状になる。よって、等距離r面を第1レイヤに対応する立方体の所定の面の上から見た形状は、図4のBの点線で示すように円状になる。
(デプス画像の効果の説明)
なお、以下では、第1レイヤの視点Oと、第1レイヤに対応する立方体80を構成する6つの面の中心を通る6つの面の法線ベクトルのうちの、互いに直交する3つを、3Dモデル座標系のX軸、Y軸、Z軸の正方向とし、その3つと逆方向の3つを、3Dモデル座標系のX軸、Y軸、Z軸の負方向とする。
図5は、3Dモデル座標系のX軸の変化を示す図であり、図6は、3Dモデル座標系のX軸の変化に伴う最小値zminと最小値rminの変化を示す図である。
なお、図5および図6の例では、第1レイヤの各面の画角が90度であるものとする。
また、図5に示すように、第1レイヤに対応する立方体80がY軸を軸としてXZ平面上で45度回転され、第1レイヤの各面の位置が変更される場合、X軸がXZ平面上で45度回転される。これにより、X軸の正方向を法線ベクトルとする第1レイヤの面81の奥行き方向はXZ平面上で45度回転する。
従って、図6に示すように、X座標が正の値であり、Z座標が0である位置を中心とした球76が被写体として面81の画角内に存在するとき、回転前の面81における最小値zminは、図6のAに示すように、視点Oと球76の図6のAのX軸の正方向の距離の最小値である。しかしながら、回転後の面81における最小値zminは、図6のBに示すように、視点Oと画角内の球76(図6のB中球76の上半分)の図6のBのX軸の正方向の距離の最小値である。
また、図6の例の場合、回転前の面81における最大値zmaxは無限大であるため、回転後の面81における最大値zmaxも無限大であるが、無限大ではない場合、最小値zminと同様の理由により、回転の前後で面81における最大値zmaxは変化する。第1レイヤの他の面についても同様に、最小値zminと最大値zmaxが変化する。
また、説明は省略するが、第1レイヤの面の画角、数、または間隔が変更される場合も、第1レイヤの全ての面における最小値zminと最大値zmaxは変化する。
従って、第1レイヤのデプス画像の各画素のy値(輝度値)として、距離zの逆数1/zが用いられると、再構成部59による再構成時に、各面における最小値zminと最大値zmaxを計算し直し、全ての面における最小値zminと最大値zmaxを決定し直す必要がある。その結果、デプス画像の8ビット量子化をやり直す必要がある。
これに対して、視点Oから被写体までの直線の方向は、第1レイヤの面の位置によらず同一である。従って、図5に示したように立方体80がY軸を軸としてXZ平面上で45度回転される場合であっても、最小値rminと最大値rmaxは同一である。
即ち、図6のBに示すように、図6のAのX軸がXZ平面上で45度回転されても、回転前と同様に、視点Oから被写体までの直線の方向は、視点Oから放射状に延びる方向である。従って、X軸の回転によらず、第1レイヤの全ての面における最小値rminは、視点Oから球76までの直線の距離の最小値である。第1レイヤの全ての面における最大値rmaxについても、最小値rminの場合と同様の理由により、回転前後で変化しない。
また説明は省略するが、第1レイヤの面の画角、数、または間隔が変更される場合も、視点Oから被写体までの直線の方向は変化しないため、最小値rminと最大値rmaxは変化しない。
従って、第1レイヤのデプス画像の各画素のy値として、逆数1/zではなく、逆数1/rの量子化値が用いられることにより、再構成部59による再構成時にデプス画像の8ビット量子化をやり直す処理を削減することができる。
なお、上述した説明では、低解像度テクスチャストリームと低解像度デプスストリームは再構成されないようにしたが、再構成されるようにしてもよい。この場合も、低解像度デプス画像の各画素のy値は逆数1/rの量子化値であるので、第1レイヤのデプス画像の再構成時と同様に、再構成時に低解像度デプス画像の8ビット量子化をやり直す処理を削減することができる。
また、低解像度テクスチャストリームと低解像度デプスストリームの再構成は、低解像度テクスチャストリームと低解像度デプスストリームのマッピング方式を変更することにより行われてもよい。この場合も、デプス画像の各画素のy値を逆数1/rの量子化値にすることにより、再構成時に低解像度デプス画像の8ビット量子化をやり直す処理を削減することができる。
(第1レイヤの6つの面のデプス画像の各画素の球上の位置の例)
図7は、第1レイヤの6つの面のデプス画像を球にマッピングした際の各画素の球上の位置の例を示す図である。
なお、図7では、第1レイヤの6つの面のデプス画像を球にマッピングした際の各画素の球上の位置が点で表されている。
第1レイヤの各面のデプス画像の各画素のデプス画像上の位置の間隔は等間隔である。しかしながら、図7に示すように、第1レイヤの6つの面のデプス画像を球にマッピングした際の各画素の球上の位置の間隔は等間隔ではない。即ち、第1レイヤの6つの面のデプス画像を球にマッピングした際の各画素の球上の位置の密度は、一定ではない。
(第1レイヤの面の例)
図8は、第1レイヤの面の例を示す図である。
なお、以下では、視点Oと6つの面のそれぞれとの距離をRとしたときのX=Rである面を、適宜、+X面ともいい、X=−Rである面を、適宜、−X面ともいう。同様に、Y=Rである面、Y=−rである面、Z=Rである面、Z=−Rである面を、適宜、+Y面、−Y面、+Z面、−Z面ともいう。
また、図8のAは、第1レイヤの立方体80の斜視図であり、図8のBは、第1レイヤの立方体80をY軸の負方向に見た図である。
図8のAに示すように、第1レイヤの1つの面91は、視点Oを中心とした立方体80を構成する6つの面81乃至86のうちの+Y面83を含む面である。より詳細には、面91は、+Y面83と同一の位置に設定され、横方向と縦方向の画角が、+Y面83の画角である90度より大きく、180度より小さい面である。
従って、図8のBに示すように、面91のテクスチャ画像は、+Y面83にマッピングされたテクスチャ画像だけでなく、+Y面83に隣接する+X面81、−X面82、+Z面85、および−Z面86にマッピングされるテクスチャ画像の一部を含む。面91のデプス画像についても、テクスチャ画像と同様である。
図8では、第1レイヤの1つの面91のみ図示したが、他の5つの面も、面91と同様に、それぞれ、+X面81、−X面82、−Y面84、+Z面85、−Z面86と同一の位置に設定され、横方向と縦方向の画角が90度より大きく180度より小さい面である。
以上のように、第1レイヤの6つの面のそれぞれは、立方体を構成する6つの面81乃至86のそれぞれを含むように構成されるので、第1レイヤの6つの面のいずれかに必ず、全天球画像がマッピングされる。従って、ホームサーバ13は、第1レイヤの6つの面のうちの多くとも隣接する3つの面を用いれば、視点Oを視聴位置とした水平方向の周囲360度および垂直方向の周囲180度の任意の方向の表示画像を生成することができる。
(第1レイヤの視点位置情報および面情報のテーブルの構成例)
図9は、図3のメタデータ生成部57により生成されるメタデータのうち、第1レイヤの視点位置情報および面情報のテーブルの構成例を示す図である。
図9の例では、面情報のうちの、面の3Dモデル座標系における3次元位置を示す情報が、方位角、仰角、回転角、および視線ベクトルであり、サイズを示す情報が横画角と縦画角である。
方位角は、視点と各面の中心を結ぶ線とZ軸とのなすXZ平面方向の角度であり、仰角は、視点と各面の中心を結ぶ線とXZ平面とのなす角度である。ここでは、方位角は、右回りを正方向とし、仰角は、左回りを正方向とする。視点から延びるZ軸方向の線を方位角だけXZ平面上を水平回転した後、仰角だけY軸方向に上下回転した線が、面の中心を通る法線である。
回転角は、視点と各面の中心を結ぶ線を軸としたときの各面の回転方向の角度である。ここでは、回転角は右回りが正方向とする。視線ベクトルは、視点を起点として各面の中心へ向かう長さが1であるベクトル、即ち各面の中心を通る法線ベクトルである。横画角は、各面の横方向の2つの端部それぞれと視点とを結んだ線のなす角度であり、縦画角は、各面の縦方向の2つの端部それぞれと視点とを結んだ線のなす角度である。
図9に示すように、第1レイヤの視点位置情報および面情報のテーブルには、図3のストレージ58において各面の第1レイヤテクスチャストリームおよび第1レイヤデプスストリームが格納されるファイルのファイル名の共通部分が登録される。
具体的には、図9の例では、+Z面85、−Z面86、+X面81、−X面82、+Y面83、−Y面84をそれぞれ含む各面の第1レイヤテクスチャストリームのファイル名が、posZ_texture,negZ_texture,posX_texture,negX_texture,posY_texture,negY_textureである。また、+Z面85、−Z面86、+X面81、−X面82、+Y面83、−Y面84をそれぞれ含む各面の第1デプスストリームのファイル名が、それぞれ、posZ_depth,negZ_depth,posX_depth,negX_depth,posY_depth,negY_depthである。従って、図9のテーブルには、第1レイヤの各面のファイル名の共通部分として、posZ,negZ,posX,negX,posY,negYが登録される。
また、第1レイヤの視点位置情報および面情報のテーブルには、ファイル名の共通部分に対応付けて、そのファイル名の共通部分に対応する面の面情報、視点位置情報、テクスチャ画像およびデプス画像の横画素数および縦画素数が登録される。
具体的には、+Z面85、−Z面86、+X面81、−X面82、+Y面83、−Y面84をそれぞれ含む第1レイヤの各面の中心と視点Oを結ぶ線と、Z軸とのなすXZ平面方向の角度は、それぞれ、0度、−180度、90度、−90度、0度、0度であり、XZ平面とのなす角度は、それぞれ、0度、0度、0度、0度、90度、−90度である。従って、ファイル名の共通部分「posZ」,「negZ」,「posX」,「negX」,「posY」,「negY」のそれぞれに対応付けて、方位角「0度」、「−180度」、「90度」、「−90度」、「0度」、「0度」が登録されるとともに、仰角「0度」、「0度」、「0度」、「0度」、「90度」、「−90度」が登録される。
また、図9の例では、第1レイヤの全ての面の回転角は0度である。従って、ファイル名の共通部分「posZ」,「negZ」,「posX」,「negX」,「posY」,「negY」のそれぞれに対応付けて、回転角「0度」が登録される。さらに、ファイル名の共通部分「posZ」,「negZ」,「posX」,「negX」,「posY」,「negY」のそれぞれに対応付けて、視点位置情報として原点の座標(0,0,0)が登録される。
また、視点Oから、+Z面85、−Z面86、+X面81、−X面82、+Y面83、−Y面84をそれぞれ含む第1レイヤの各面の視線ベクトルは、(0,0,1),(0,0,-1),(1,0,0)(-1,0,0),(0,1,0),(0,-1,0)である。従って、ファイル名の共通部分「posZ」,「negZ」,「posX」,「negX」,「posY」,「negY」のそれぞれに対応付けて、視線ベクトル(0,0,1),(0,0,-1),(1,0,0)(-1,0,0),(0,1,0),(0,-1,0)が登録される。
さらに、図9の例では、第1レイヤの全ての面の横画角および縦画角は90度より大きい100度であり、テクスチャ画像およびデプス画像の横方向の画素数である横画素数および縦方向の画素数である縦画素数は1024である。従って、ファイル名の共通部分「posZ」,「negZ」,「posX」,「negX」,「posY」,「negY」のそれぞれに対応付けて、横画角「100度」、縦画角「100度」、横画素数「1024」、および縦画素数「1024」が登録される。
以上のように、第1レイヤの視点位置情報および面情報のテーブルが、メタデータとしてメタデータ生成部57によって生成される。第2レイヤの視点位置および面情報は、第1レイヤと同一であるので、第2レイヤについても、この第1レイヤの視点位置情報および面情報のテーブルが参照される。
(第1の明るさ範囲及び第2の明るさ範囲と表示画像との関係)
図10は、第1の明るさ範囲及び第2の明るさ範囲と表示画像との関係を示す図である。
第1レイヤのテクスチャ画像に対応する撮影画像をマルチカメラ11の各カメラが撮影する場合、各カメラは、図10に示すように、被写体の明るさがB1min[lx]からB1max[lx]の範囲(B1min[lx]<B1max[lx])を第1の明るさ範囲として、8ビットで撮影する。
第2レイヤのテクスチャ画像に対応する撮影画像をマルチカメラ11の各カメラが撮影する場合、各カメラは、図10に示すように、被写体の明るさがB2min[lx]からB2max[lx]の範囲(B1min[lx]<B2min[lx]<B2max[lx], B1max[lx]<B2max[lx])を第2の明るさ範囲として、8ビットで撮影する。なお、図10の例では、B2min[lx]<B1max[lx]であるが、B2min[lx]とB1max[lx]は同じでもよい。
メタデータ生成部57は、第1の明るさ範囲及び第2の明るさ範囲を示す明るさ範囲情報、具体的には、B1min[lx],B1max[lx],B2min[lx],B2max[lx]の値を、メタデータの一部として生成する。B1min[lx],B1max[lx],B2min[lx],B2max[lx]の値は、マルチカメラ11から取得してもよいし、コンテンツサーバ12においてユーザによって入力された値を取得してもよい。
このようにして撮影された撮影画像から、第1レイヤのテクスチャ画像及び第2レイヤのテクスチャ画像が生成され、第1レイヤテクスチャストリーム及び第2レイヤテクスチャストリームとして、ホームサーバ13に伝送される。
ホームサーバ13は、第1レイヤおよび第2レイヤのテクスチャ画像を用いて表示画像を生成する場合、B1min[lx]からB2max[lx]までの範囲を8ビットで表現した表示画像を生成する。B2min[lx]からB1max[lx]までの重複する範囲については、例えば、2つのレイヤの平均値が採用される。
第1の明るさ範囲で撮影した第1レイヤのテクスチャ画像だけを用いて表示画像を生成した場合には、B1max[lx]以上の明るさは表現できず、いわゆる白とびした状態となってしまう。第2の明るさ範囲で撮影した第2レイヤのテクスチャ画像を有することで、表示画像において、B1max[lx]以上の明るさを表現することができる。
なお、図10の例では、第1レイヤ及び第2レイヤのテクスチャ画像並びに表示画像の輝度値のビット数が8ビットである場合について説明したが、10ビットや16ビットなどのその他のビット数でもよい。また、第1レイヤ及び第2レイヤのテクスチャ画像の輝度値のビット数と表示画像の輝度値のビット数は異なっていてもよい。
(コンテンツサーバの処理の説明)
図11は、図2のコンテンツサーバ12のストリーム生成処理を説明するフローチャートである。このストリーム生成処理は、図1のマルチカメラ11の各カメラから撮影画像がフレーム単位で供給されたとき、開始される。
図10のステップS11において、コンテンツサーバ12のデプス検出部31は、マルチカメラ11から供給される第1の明るさ範囲の各カメラの撮影画像から、第1の明るさ範囲の各カメラの撮影画像の各画素の逆数1/zを検出し、低解像度画像処理部33と高解像度画像処理部34に供給する。
ステップS12において、低解像度画像処理部33は、カメラ座標系における所定の3次元位置を視点として、マルチカメラ11から供給される第1の明るさ範囲の各カメラの撮影画像から全天球画像のテクスチャ画像を生成し、低解像度化する。
ステップS13において、低解像度画像処理部33は、デプス検出部31から供給される第1の明るさ範囲の各カメラのz画像から全天球画像のデプス画像を生成し、低解像度化する。
ステップS14において、低解像度画像処理部33は、ステップS12の処理により生成された低解像度テクスチャ画像とステップS13の処理により生成された低解像度デプス画像とを圧縮符号化して記憶する。
ステップS15において、低解像度画像処理部33は、記憶している低解像度テクスチャストリームと低解像度デプスストリームを、図1のホームサーバ13に送信する。
ステップS16において、高解像度画像処理部34の設定部56(図3)は、3Dモデル座標系における原点を第1レイヤと第2レイヤに共通の1つの視点として設定し、その視点を中心とした立方体を構成する6つの面それぞれを第1レイヤの面として設定する。また、設定部56は、第1レイヤの各面と同じ6つの面を、第2レイヤの面として設定する。設定部56は、第1レイヤと第2レイヤに共通の1つの視点を示す視点位置情報と6つの面の面情報を、第1レイヤ生成部50、第2レイヤ生成部53、及びメタデータ生成部57に供給する。
ステップS17において、第1レイヤ生成部50は、カメラ座標系における全天球画像の視点を原点とし、第1レイヤの視点位置情報が示す原点を視点として、第1の明るさ範囲の各カメラの撮影画像から、第1レイヤの各面情報に対応する各面のテクスチャ画像を生成する。
ステップS18において、第1レイヤ生成部50は、第1の明るさ範囲の各カメラのz画像から、第1レイヤの各面情報に対応する各面のz画像を生成して、量子化部51に供給する。量子化部51は、第1レイヤの各面のz画像から、第1レイヤの各面のデプス画像を生成して、エンコーダ52に供給する。
ステップS19において、第2レイヤ生成部53は、第2レイヤの面情報に対応する面ごとに、カメラ座標系における全天球画像の視点を原点とし、第2レイヤの視点位置情報が示す3次元位置を視点として、第2の明るさ範囲の各カメラの撮影画像から、第2レイヤの各面のテクスチャ画像を生成する。
ステップS20において、第2レイヤ生成部53は、第2レイヤの面情報に対応する面ごとに、第2の明るさ範囲の各カメラのz画像から、第2レイヤの各面情報に対応する各面のz画像を生成して、量子化部54に供給する。量子化部54は、第2レイヤの各面のz画像から、第2レイヤの各面のデプス画像を生成する。
ステップS21において、エンコーダ52は、第1レイヤの各面のテクスチャ画像とデプス画像を、面ごと、かつ、画像の種類ごとに圧縮符号化してストレージ58に供給し、記憶させる。
ステップS22において、エンコーダ55は、第2レイヤの各面のテクスチャ画像とデプス画像を、面ごと、かつ、画像の種類ごとに圧縮符号化してストレージ58に供給し、記憶させる。
ステップS23において、メタデータ生成部57は、設定部56から供給される第1レイヤ及び第2レイヤに共通の視点位置情報および面情報を含むテーブルと、第1の明るさ範囲及び第2の明るさ範囲を示す明るさ範囲情報をメタデータとして生成して、ストレージ58に供給して記憶させる。
ステップS24において、伝送部60は、ストレージ58から6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを読み出し、ホームサーバ13に送信する。
以上のように、コンテンツサーバ12は、明るさ範囲の異なる第1レイヤと第2レイヤのテクスチャ画像およびデプス画像を生成してホームサーバ13に伝送する。これにより、ホームサーバ13は、高画質の表示画像を生成することができる。
また、コンテンツサーバ12は、デプス画像の各画素のy値を逆数1/rを8ビット量子化した値とする。従って、コンテンツサーバ12は、再構成時にデプス画像の8ビット量子化をやり直す必要がない。
なお、上述したストリーム生成処理では、再構成しない第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームをホームサーバ13に伝送したが、再構成後のものを伝送することもできる。
(ホームサーバの構成例)
図12は、図1のホームサーバ13の構成例を示すブロック図である。
図12のホームサーバ13は、カメラ13A、受け取り部231、ストレージ232、受け取り部233、視線検出部234、ML3Dモデル生成部235、ML3Dモデル生成部236、ML3Dモデル生成部237、3Dモデル生成部238、および描画部239により構成される。
ホームサーバ13の受け取り部231は、コンテンツサーバ12から伝送されてくる低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを受け取り、ストレージ232に供給する。
ストレージ232は、受け取り部231から供給される低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを記憶する。
受け取り部233は、図1のジャイロセンサ15Bの検出結果をヘッドマウントディスプレイ15から受け取り、視線検出部234に供給する。
視線検出部234は、受け取り部233から供給されるジャイロセンサ15Bの検出結果に基づいて、3Dモデル座標系における視聴者の視線方向を決定する。また、視線検出部234は、カメラ13Aからマーカ15Aの撮影画像を取得し、その撮影画像に基づいて、3Dモデル座標系における視聴位置を検出する。
視線検出部234は、ストレージ232からメタデータのうちの第1レイヤのテーブルを読み出す。視線検出部234は、3Dモデル座標系における視聴位置および視線方向、並びに、第1レイヤのテーブルに基づいて、6つの面のうちの、視聴位置から視線方向に延びる視線に最も近い視線ベクトルに対応する3つの面を選択面に決定する。具体的には、視線検出部234は、+X面81と−X面82のいずれかを含む面、+Y面83と−Y面84のいずれかを含む面、および、+Z面85と−Z面86のいずれかを含む面を選択面に決定する。
以上のようにして選択面が決定されることにより、後述する描画部239により選択面に対応する第1レイヤおよび第2レイヤのテクスチャ画像とデプス画像を用いて生成される表示画像内の高解像度領域の割合が最も高くなる。また、3つの選択面が決定されることにより、1つの選択面が選択される場合に比べて、視線が立方体80の頂点付近に向かう場合に表示画像内の高解像度領域の割合を増加させることができる。
視線検出部234は、3つの選択面に対応する第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、ストレージ232から読み出す。視線検出部234は、読み出された第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、面ごとにML3Dモデル生成部235乃至237に供給する。また、視線検出部234は、低解像度テクスチャストリームと低解像度デプスストリームをストレージ232から読み出し、3Dモデル生成部238に供給する。
また、視線検出部234は、3Dモデル座標系における視聴位置と視線方向に基づいて、3Dモデル座標系における視聴者の視野範囲を決定する。視線検出部234は、視聴者の視野範囲と視聴位置を描画部239に供給する。さらに、視線検出部234は、視点位置情報と、3つの選択面を示す面情報を描画部239に供給する。
ML3Dモデル生成部235乃至237は、それぞれ、第1レイヤテクスチャストリームと第1レイヤデプスストリームを用いて、第1レイヤのテクスチャ画像の各画素に対応するサンプリング点のテクスチャ画像座標系における3次元位置(u,v,z)および接続情報と、カラー情報としてのRGB値とからなる3次元データを生成する。なお、各サンプリング点の接続情報は、そのサンプリング点(vertex)と他のサンプリング点との接続を表す情報である。テクスチャ画像座標系は、テクスチャ画像の横方向をu軸、縦方向をv軸、奥行き方向をz軸とする座標系である。
また、ML3Dモデル生成部235乃至237は、それぞれ、第2レイヤテクスチャストリームと第2レイヤデプスストリームを用いて、第2レイヤのテクスチャ画像の各画素に対応するサンプリング点のテクスチャ画像座標系における3次元位置(u,v,z)および接続情報と、カラー情報としてのRGB値とからなる3次元データを生成する。ML3Dモデル生成部235乃至237は、第1レイヤおよび第2レイヤの3次元データを描画部239に供給する。
3Dモデル生成部238は、視線検出部234から供給される低解像度テクスチャストリームと低解像度デプスストリームを復号し、低解像度テクスチャ画像と低解像度デプス画像を生成する。3Dモデル生成部238は、低解像度テクスチャ画像の各画素の画素値としてのYCbCr値をRGB値に変換し、各画素に対応するサンプリング点のRGB値とする。また、3Dモデル生成部238は、低解像度デプス画像の各画素の画素値に対して8ビット逆量子化を行い、逆数1/rを得る。そして、3Dモデル生成部238は、低解像度デプス画像の各画素の逆数1/rに基づいて、各画素の3次元位置(u,v,z)を各画素に対応するサンプリング点の3次元位置(u,v,z)として求める。
また、3Dモデル生成部238は、各サンプリング点の3次元位置(u,v,z)に基づいて、隣接する3つのサンプリング点どうしが接続するように各サンプリング点の接続情報を生成する。3Dモデル生成部238は、各サンプリング点の3次元位置(u,v,z)、接続情報、およびRGB値を、低解像度テクスチャ画像の3次元データとして、描画部239に供給する。
描画部239は、3Dモデル生成部238から供給される低解像度テクスチャ画像の3次元データに基づいて、3Dモデル座標系において、低解像度テクスチャ画像の三角形パッチ描画(点群描画)を行う。その後、描画部239は、ML3Dモデル生成部235乃至237のそれぞれから供給される第1レイヤおよび第2レイヤの3次元データと、視線検出部234から供給される視点位置情報及び面情報とに基づいて、3Dモデル座標系において、第1レイヤおよび第2レイヤを統合した高解像テクスチャ画像の三角形パッチ描画を行う。第1レイヤおよび第2レイヤを統合した高解像テクスチャ画像は、図10を参照して説明したように、第1レイヤのテクスチャ画像で表現される第1の明るさ範囲と、第2レイヤのテクスチャ画像で表現される第2の明るさ範囲とを含む全範囲(最小値B1minから最大値B2max)の輝度情報を有するテクスチャ画像である。
低解像度テクスチャ画像の視点は3Dモデル座標系における原点であり、3Dモデルとしての正八面体の各面の位置およびサイズは予め決まっている。従って、描画部239は、正八面体の各面に対応する各カメラの内部パラメータと外部パラメータを求めることができる。よって、描画部239は、この内部パラメータと外部パラメータを用いて、低解像度テクスチャ画像の各サンプリング点の3次元位置(u,v,z)から、各サンプリング点の画面上の位置(u,v)と3Dモデル座標系における3次元位置(X,Y,Z)を認識することができる。その結果、低解像度テクスチャ画像の各サンプリング点の画面上の位置(u,v)および3次元位置(X,Y,Z)と接続情報およびRGB値とを用いて三角形パッチ描画を行うことができる。
また、描画部239は、第1レイヤおよび第2レイヤの視点位置情報および面情報に基づいて、第1レイヤおよび第2レイヤの各面に対応する各カメラの内部パラメータと外部パラメータを求めることができる。従って、描画部239は、この内部パラメータと外部パラメータを用いて、第1レイヤおよび第2レイヤの各サンプリング点の3次元位置(u,v,z)から、各サンプリング点の画面上の位置(u,v)と3次元位置(X,Y,Z)を認識できる。その結果、描画部239は、第1レイヤおよび第2レイヤの各サンプリング点の画面上の位置(u,v)および3次元位置(X,Y,Z)と接続情報およびRGB値とを用いて三角形パッチ描画を行うことができる。
描画部239(画像生成部)は、3Dモデル座標系において描画された三角形パッチを、視線検出部234から供給される視聴位置を視点として視野範囲に透視投影(マッピング)することにより、視聴者の視点の表示画像を生成する。描画部239は、表示画像を図1の変換装置14に送信する。
(ML3Dモデル生成部の構成例)
図13は、図12のML3Dモデル生成部235の構成例を示すブロック図である。
図13のML3Dモデル生成部235は、デコーダ251、RGB変換部252、デコーダ253、デプス変換部254、3Dモデル生成部255、デコーダ257、RGB変換部258、デコーダ259、デプス変換部260、および3Dモデル生成部261により構成される。
ML3Dモデル生成部235のデコーダ251は、図12の視線検出部234から供給される第1レイヤテクスチャストリームを復号し、第1レイヤのテクスチャ画像を生成する。デコーダ251は、第1レイヤのテクスチャ画像をRGB変換部252に供給する。
RGB変換部252は、第1レイヤのテクスチャ画像の各画素の画素値としてのYCbCr値をRGB値に変換し、各画素に対応するサンプリング点のRGB値とする。そして、RGB変換部252は、各サンプリング点のRGB値を3Dモデル生成部255に供給する。
デコーダ253は、視線検出部234から供給される第1レイヤデプスストリームを復号し、第1レイヤのデプス画像を生成する。デコーダ253は、第1レイヤのデプス画像をデプス変換部254に供給する。
デプス変換部254は、デコーダ253から供給される第1レイヤのデプス画像の各画素の画素値に対して8ビット逆量子化を行い、逆数1/rを得る。そして、デプス変換部254は、第1レイヤのデプス画像の各画素の逆数1/rに基づいて、各画素の3次元位置(u,v,z)を各画素に対応するサンプリング点の3次元位置(u,v,z)として求める。デプス変換部254は、各サンプリング点の3次元位置(u,v,z)を3Dモデル生成部255に供給する。
3Dモデル生成部255(接続情報生成部)は、デプス変換部254から供給される各サンプリング点の3次元位置(u,v,z)に基づいて、各サンプリング点のうちの隣接する3つのサンプリング点どうしが接続するように、各サンプリング点の接続情報を生成する。即ち、3Dモデル生成部255は、サンプリング点ごとに、そのサンプリング点を頂点とする三角形パッチの3つの頂点どうしの接続を表す接続情報を生成する。
3Dモデル生成部255は、第1レイヤの各サンプリング点の3次元位置(u,v,z)、RGB値、および接続情報を、第1レイヤの3次元データとして生成し、図12の描画部239に供給する。
デコーダ257、RGB変換部258、デコーダ259、デプス変換部260、および3Dモデル生成部261の処理は、処理対象のレイヤが第1レイヤから第2レイヤに代わる点を除いて、デコーダ251、RGB変換部252、デコーダ253、デプス変換部254、および3Dモデル生成部255と同様であるので、説明は省略する。
なお、図示は省略するが、ML3Dモデル生成部236およびML3Dモデル生成部237は、図13のML3Dモデル生成部235と同様に構成される。
(第1レイヤの面の画角の効果の説明)
図14および図15は、それぞれ、第1レイヤの各面の画角が90度、100度である場合のサンプリング点を説明する図である。
図14および図15の例では、説明の便宜上、第1レイヤの各面の画角が90度、100度である場合の第1レイヤのテクスチャ画像およびデプス画像の解像度が、それぞれ、4x4画素、6x6画素であるものとする。
図14のBに示すように、第1レイヤの各面の画角が90度である場合、第1レイヤの6つの面は、立方体80を構成する6つの面81乃至86になる。
しかしながら、図14のAに示すように、第1レイヤの−Z面86のテクスチャ画像280上のサンプリング点291の位置(u,v)、即ち3Dモデル座標系における視点Oからサンプリング点291に向かう線が−Z面86と交差する位置は、各画素281の中心である。また、他の面81乃至85のサンプリング点の位置(u,v)も、−Z面86と同様に各画素の中心である。
従って、図14のBに示すように、図中黒丸で示すサンプリング点のうちの隣接する3つのサンプリング点どうしを接続することにより構成される全ての三角形パッチの、各面81乃至86上の領域283のu方向およびv方向サイズは、各面81乃至86に比べて画素の半分のサイズだけ小さい。よって、各面81乃至86の境界に対応する三角形パッチが生成されず、その結果、各面81乃至86の境界を通る視線の表示画像を高画質で生成することが困難になる。
これに対して、第1レイヤの各面の画角が100度である場合、図15のAに示すように、−Z面86を含む第1レイヤの面のテクスチャ画像310のサイズは、図14のテクスチャ画像280のサイズより大きい6×6画素になる。他の面81乃至85をそれぞれ含む第1レイヤの各面のテクスチャ画像のサイズも同様に6×6画素になる。
従って、図15のBに示すように、図中黒丸で示すサンプリング点のうちの隣接する3つのサンプリング点どうしを接続することにより構成される全ての三角形パッチの、−Z面86上の領域311のu方向およびv方向サイズは、−Z面86に比べて画素の半分のサイズだけ大きい。図示は省略するが、他の面81乃至85をそれぞれ含む第1レイヤの各面の三角形パッチの領域のu方向およびv方向サイズも、領域311と同様に、各面81乃至85に比べて画素の半分のサイズだけ大きい。従って、各面81乃至86の境界に対応する三角形パッチが生成され、その結果、各面81乃至86の境界を通る視線を含む任意の視線の表示画像を高画質で生成することができる。
図14および図15では、第1レイヤの各面の画角が100度である場合の効果について説明したが、第1レイヤの各面の画角が90度より大きければ、画角が100度ではない場合であっても同様の効果が発生する。また、第2レイヤについても同様の効果が発生する。
なお、ML3Dモデル生成部235乃至237は、復号の結果得られるテクスチャ画像やデプス画像に対して、周辺の画素を用いたフィルタ処理等の画像処理を行うようにしてもよい。この場合、第1レイヤおよび第2レイヤの各面の画角が90度より大きいことにより、各面の端部以外の領域の端部においても画像処理を行うことができるという効果を得ることができる。
(ホームサーバの処理の説明)
図16は、図12のホームサーバ13の再生処理を説明するフローチャートである。この再生処理は、例えば、コンテンツサーバ12から伝送されてくる低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータが伝送されてきたとき、開始される。
図16のステップS41において、ホームサーバ13の受け取り部231は、コンテンツサーバ12から、低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを受け取り、ストレージ232に供給する。
ステップS42において、ストレージ232は、低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを記憶する。
ステップS43において、受け取り部233は、図1のジャイロセンサ15Bの検出結果をヘッドマウントディスプレイ15から受け取り、視線検出部234に供給する。
ステップS44において、視線検出部234は、受け取り部233から供給されるジャイロセンサ15Bの検出結果に基づいて、3Dモデル座標系における視聴者の視線方向を決定する。ステップS45において、カメラ13Aは、ヘッドマウントディスプレイ15に付されたマーカ15Aを撮影し、その結果得られる撮影画像を視線検出部234に供給する。
ステップS46において、視線検出部234は、カメラ13Aから供給されるマーカ15Aの撮影画像に基づいて、3Dモデル座標系における視聴位置を検出し、描画部239に供給する。
ステップS47において、視線検出部234は、ストレージ232に記憶されているメタデータのうちの第1レイヤのテーブルと、3Dモデル座標系における視聴位置および視線方向とに基づいて、6つの面のうちの視線に最も近い視線ベクトルに対応する3つの面を選択面に決定する。
ステップS48において、視線検出部234は、3Dモデル座標系における視聴位置と視線方向に基づいて、3Dモデル座標系における視聴者の視野範囲を決定し、描画部239に供給する。
ステップS49において、視線検出部234は、低解像度テクスチャストリームと低解像度デプスストリームをストレージ232から読み出し、3Dモデル生成部238に供給する。また、視線検出部234は、3つの選択面に対応する第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、ストレージ232から読み出す。視線検出部234は、読み出された第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、面ごとにML3Dモデル生成部235乃至237に供給する。また、視線検出部234は、3つの選択面に対応する視点位置情報および面情報をストレージ232から読み出し、描画部239に供給する。
ステップS50において、ML3Dモデル生成部235乃至237は、面ごとに、第1レイヤおよび第2レイヤの各サンプリング点の3次元データを生成する3次元データ生成処理を行う。この3次元データ生成処理の詳細は、図17を参照して後述する。
ステップS51において、3Dモデル生成部238は、視線検出部234から供給される低解像度テクスチャストリームと低解像度デプスストリームから、低解像度テクスチャ画像の各サンプリング点の3次元データを生成し、描画部239に供給する。
ステップS52において、描画部239は、3Dモデル生成部238から供給される低解像度テクスチャ画像の3次元データに基づいて、3Dモデル座標系において、低解像度テクスチャ画像の三角形パッチ描画を行う。その後、描画部239は、ML3Dモデル生成部235乃至237のそれぞれから供給される第1レイヤおよび第2レイヤの3次元データと、視線検出部234から供給される視点位置情報および面情報とに基づいて、3Dモデル座標系において、第1レイヤおよび第2レイヤを統合した高解像度テクスチャ画像の三角形パッチ描画を行う。
ステップS53において、描画部239は、3Dモデル座標系において描画された三角形パッチを、視線検出部234から供給される視聴位置を視点として視野範囲に透視投影することにより、視聴者の視点の表示画像を生成する。ステップS54において、描画部239は、表示画像を図1の変換装置14に伝送する。
図17は、図16のステップS50においてML3Dモデル生成部235により行われる3次元データ生成処理の詳細を説明するフローチャートである。
図17のステップS71において、ML3Dモデル生成部235のデコーダ251(図13)は、図12の視線検出部234から供給される第1レイヤテクスチャストリームを復号し、第1レイヤのテクスチャ画像を生成する。デコーダ251は、第1レイヤのテクスチャ画像をRGB変換部252に供給する。
ステップS72において、RGB変換部252は、第1レイヤのテクスチャ画像の各画素の画素値としてのYCbCr値をRGB値に変換し、各画素に対応するサンプリング点のRGB値とする。そして、RGB変換部252は、各サンプリング点のRGB値を3Dモデル生成部255に供給する。
ステップS73において、デコーダ253は、視線検出部234から供給される第1レイヤデプスストリームを復号し、第1レイヤのデプス画像を生成する。デコーダ253は、第1レイヤのデプス画像をデプス変換部254に供給する。
ステップS74において、デプス変換部254は、デコーダ253から供給される第1レイヤのデプス画像の各画素の画素値に対して8ビット逆量子化を行い、第1レイヤのデプス画像の各画素の逆数1/rを得る。
ステップS75において、デプス変換部254は、第1レイヤのデプス画像の各画素の逆数1/rに基づいて、第1レイヤのデプス画像の各画素の3次元位置(u,v,z)を、各画素に対応するサンプリング点の3次元位置(u,v,z)として求める。デプス変換部254は、各サンプリング点の3次元位置(u,v,z)を3Dモデル生成部255に供給する。
ステップS76において、3Dモデル生成部255は、デプス変換部254から供給される各サンプリング点の3次元位置(u,v,z)に基づいて、各サンプリング点のうちの隣接する3つのサンプリング点どうしが接続するように、第1レイヤの各サンプリング点の接続情報を生成する。
ステップS77において、3Dモデル生成部255は、第1レイヤの各サンプリング点の3次元位置(u,v,z)、RGB値、および、ステップS76の処理による接続情報を、第1レイヤの3次元データとして生成する。3Dモデル生成部255は、第1レイヤの3次元データを図12の描画部239に供給する。
ステップS78において、デコーダ257は、視線検出部234から供給される第2レイヤテクスチャストリームを復号し、第2レイヤのテクスチャ画像を生成する。デコーダ257は、第2レイヤのテクスチャ画像をRGB変換部258に供給する。
ステップS79において、RGB変換部258は、第2レイヤのテクスチャ画像の各画素の画素値としてのYCbCr値をRGB値に変換し、各画素に対応するサンプリング点のRGB値とする。そして、RGB変換部258は、各サンプリング点のRGB値を3Dモデル生成部261に供給する。
ステップS80において、デコーダ259は、視線検出部234から供給される第2レイヤデプスストリームを復号し、第2レイヤのデプス画像を生成する。デコーダ259は、第2レイヤのデプス画像をデプス変換部260に供給する。
ステップS81において、デプス変換部260は、デコーダ259から供給される第2レイヤのデプス画像の各画素の画素値に対して8ビット逆量子化を行い、第2レイヤのデプス画像の各画素の逆数1/rを得る。
ステップS82において、デプス変換部260は、第2レイヤのデプス画像の各画素の逆数1/rに基づいて、第2レイヤのデプス画像の各画素の3次元位置(u,v,z)を、各画素に対応するサンプリング点の3次元位置(u,v,z)として求める。デプス変換部260は、各サンプリング点の3次元位置(u,v,z)を3Dモデル生成部261に供給する。
ステップS83において、3Dモデル生成部261は、デプス変換部260から供給される各サンプリング点の3次元位置(u,v,z)に基づいて、各サンプリング点のうちの隣接する3つのサンプリング点どうしが接続するように、第2レイヤの各サンプリング点の接続情報を生成する。
ステップS84において、3Dモデル生成部261は、各サンプリング点の3次元位置(u,v,z)および接続情報、並びに、RGB変換部258から供給されるRGB値を、第2レイヤの3次元データとして生成する。3Dモデル生成部261は、第2レイヤの3次元データを図12の描画部239に供給する。
なお、ML3Dモデル生成部236およびML3Dモデル生成部237により行われる3次元データ生成処理は、図17の3次元データ処理と同様に行われる。
以上のように、ホームサーバ13は、第1レイヤのテクスチャ画像と第2レイヤのテクスチャ画像を用いて、視聴者の視点の表示画像を生成する。第1レイヤのテクスチャ画像の輝度情報が表す第1の明るさ範囲と、第2レイヤのテクスチャ画像の輝度情報が示す第2の明るさ範囲は、異なる範囲となっているので、第1及び第2のレイヤを用いて表示画像を生成することにより、高画質の表示画像を生成することができる。
また、ホームサーバ13は、テクスチャ画像だけでなくデプス画像も用いて表示画像を生成する。従って、三角形パッチ描画により、被写体に応じた3次元形状の三角形パッチにテクスチャ画像をマッピングし、その三角形パッチを用いて表示画像を生成することができる。よって、テクスチャ画像のみを用いてテクスチャ画像を所定の面にマッピングすることにより表示画像を生成する場合に比べて、高画質の表示画像を生成することができる。
さらに、第1レイヤおよび第2レイヤのテクスチャ画像とデプス画像は、全天球画像のテクスチャ画像とデプス画像を所定の面にマッピングすることにより得られるテクスチャ画像とデプス画像である。従って、全天球画像のテクスチャ画像とデプス画像を所定の面にマッピングすることにより得られるテクスチャ画像とデプス画像のみを再生する再生装置において、第1レイヤのテクスチャ画像とデプス画像を再生することができる。
即ち、コンテンツサーバ12により生成される第1レイヤおよび第2レイヤのテクスチャ画像とデプス画像のフォーマットは、全天球画像のテクスチャ画像とデプス画像を所定の面にマッピングすることにより得られるテクスチャ画像とデプス画像のフォーマットと互換性を有する。また、ホームサーバ13による再生方法は、全天球画像のテクスチャ画像とデプス画像を所定の面にマッピングすることにより得られるテクスチャ画像とデプス画像のみを再生する再生装置の再生方法と互換性を有する。
なお、ホームサーバ13は、第1レイヤのテクスチャ画像とデプス画像のみを用いて表示画像を生成するようにしてもよい。
(レイヤごとに奥行き距離を変える例)
図18は、第1実施の形態の変形例を示している。
上述した第1の実施の形態では、第1レイヤ生成部52と第2レイヤ生成部54によって生成される第1レイヤのテクスチャ画像及びデプス画像と第2レイヤのテクスチャ画像及びデプス画像のうち、画像パラメータとしての画素値が表す輝度情報の範囲が第1レイヤのテクスチャ画像と第2レイヤのテクスチャ画像とで異なるように、第1レイヤ及び第2レイヤのテクスチャ画像が生成され、伝送された。
しかしながら、例えば、第1レイヤと第2レイヤのテクスチャ画像の画素値が表す輝度情報の範囲は同じにして、図18に示すように、距離パラメータとしての画素値が表す距離情報の範囲が第1レイヤのデプス画像と第2レイヤのデプス画像とで異なるように、第1レイヤ及び第2レイヤのデプス画像を生成して、伝送してもよい。
具体的には、マルチカメラ11の各カメラがD1min[m]からD2max[m]までの奥行き方向の距離の被写体を撮影する。コンテンツサーバ12の第1レイヤ生成部52は、D1min[m]からD1max[m]の範囲(D1min[m]<D1max[m])を第1のデプス範囲とするデプス画像を生成する。一方、第2レイヤ生成部54は、D2min[m]からD2max[m]の範囲(D2min[m]<D2max[m])を第2のデプス範囲とするデプス画像を生成する。なお、図18の例では、D2min[m]<D1max[m]であるが、D2min[m]とD1max[m]は同じでもよい。
メタデータ生成部57は、第1のデプス範囲及び第2のデプス範囲を示すデプス範囲情報、具体的には、D1min[m],D1max[m],D2min[m]D2max[m]の値を、メタデータの一部として生成する。D1min[m],D1max[m],D2min[m]D2max[m]の値は、マルチカメラ11から取得してもよいし、コンテンツサーバ12においてユーザによって入力された値を取得してもよい。
このようにして生成された第1レイヤのデプス画像及び第2レイヤのデプス画像から、第1レイヤデプスストリーム及び第2レイヤデプスストリームが生成され、ホームサーバ13に伝送される。
ホームサーバ13は、第1レイヤおよび第2レイヤのデプス画像を用いて表示画像を生成する場合、D1min[m]からD2max[m]までの奥行き方向の距離を表現した表示画像を生成する。B2min[lx]からD1max[m]までの重複する範囲については、例えば、2つのレイヤの平均値が採用される。
第1のデプス範囲の第1レイヤのデプス画像だけを用いて表示画像を生成した場合には、D1max[m]以上の距離は表現できない。第2のデプス範囲の第2レイヤのデプス画像を有することで、表示画像において、D1max[m]以上の奥行き方向の距離を表現することができる。
なお、第1レイヤと第2レイヤのテクスチャ画像の画素値が表す輝度情報の範囲と、第1レイヤと第2レイヤのデプス画像の画素値が表す距離情報の範囲の両方を、第1レイヤと第2レイヤとで異なるように、第1レイヤと第2レイヤのテクスチャ画像及びデプス画像を生成し、伝送してもよい。
<2.第2実施の形態>
(画像表示システムの第2実施の形態の構成例)
図19は、本開示を適用した画像表示システムの第2実施の形態の構成例を示すブロック図である。
図19に示す構成のうち、図1の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図19の画像表示システム400は、マルチカメラ11、コンテンツサーバ12、変換装置14、ヘッドマウントディスプレイ15、配信サーバ401、ネットワーク402、および再生装置403により構成される。画像表示システム400では、6つの面のうちの、視線に対応する1つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームのみが再生装置403に配信され、再生される。
具体的には、画像表示システム400の配信サーバ401は、コンテンツサーバ12から送信されてくる低解像度テクスチャストリームおよび低解像度デプスストリーム、6つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを受け取り、記憶する。
また、配信サーバ401は、ネットワーク402を介して再生装置403と接続する。配信サーバ401は、再生装置403からの要求に応じて、記憶している低解像度テクスチャストリームおよび低解像度デプスストリーム、1つの面の第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリーム、並びにメタデータを、ネットワーク402を介して再生装置403に伝送する。
再生装置403(画像処理装置)は、配信サーバ401に低解像度テクスチャストリーム、低解像度デプスストリーム、およびメタデータを、ネットワーク402を介して要求し、その要求に応じて伝送されてくる低解像度テクスチャストリーム、低解像度デプスストリーム、およびメタデータを受け取る。
また、再生装置403は、カメラ13Aを内蔵する。再生装置403は、ホームサーバ13と同様に、3Dモデル座標系における視聴位置を検出し、3Dモデル座標系における視聴者の視線方向と視野範囲を決定する。
そして、再生装置403は、3Dモデル座標系における視聴位置および視線方向、並びに、メタデータに含まれる第1レイヤのテーブルに基づいて、第1レイヤの6つの面のうちの、視線に最も近い視線ベクトルに対応する1つの面を選択面に決定する。再生装置403は、1つの選択面に対応する第1レイヤテクスチャストリーム、第1レイヤデプストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを、ネットワーク402を介して要求する。再生装置403は、その要求に応じて伝送されてくる1つの選択面に対応する第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを受け取る。
再生装置403は、低解像度テクスチャストリームおよび低解像度デプスストリーム、並びに、1つの選択面に対応する第1レイヤテクスチャストリーム、第1レイヤデプスストリーム、第2レイヤテクスチャストリーム、および第2レイヤデプスストリームを用いて表示画像を生成する。再生装置403の表示画像を生成する処理は、選択面の数が1つである点を除いて、ホームサーバ13の処理と同様であるので、説明は省略する。再生装置403は、図示せぬHDMIケーブルを介して表示画像を変換装置14に伝送する。
<3.テクスチャ画像の他の例>
図20は、第1レイヤのテクスチャ画像の他の例を示す図である。
上述した説明では、第1レイヤの各面のテクスチャ画像は、1つの視点Oのテクスチャ画像であったが、視点Oに対応する左目用の視点と右目用の視点のテクスチャ画像が合成されたものであってもよい。
具体的には、図20のAに示すように、第1レイヤの各面のテクスチャ画像は、例えば、視点Oに対応する左目用の視点の第1レイヤの各面のテクスチャ画像421と、右目用の視点の第1レイヤの各面のテクスチャ画像422が、横方向(水平方向)にパッキングされたパッキング画像420であってもよい。
また、図20のBに示すように、第1レイヤの各面のテクスチャ画像は、例えば、テクスチャ画像421とテクスチャ画像422が、縦方向(垂直方向)にパッキングされたパッキング画像440であってもよい。
同様に、第2レイヤの各面のテクスチャ画像は、左目用の視点の第2レイヤのテクスチャ画像と右目用の視点の第2レイヤのテクスチャ画像が横方向または縦方向にパッキングされたパッキン画像であってもよい。
また、第1レイヤ及び第2レイヤの各面のテクスチャ画像を、左目用の視点のテクスチャ画像と右目用の視点のテクスチャ画像を横方向または縦方向にパッキングしたパッキング画像とする場合、コンテンツサーバ12において視聴者の眼間距離を入力させるようにして、入力された眼間距離に応じて生成したパッキング画像とすることができる。あるいはまた、ホームサーバ13において視聴者の眼間距離を入力させるようにして、入力された眼間距離に応じて生成したパッキング画像を生成してもよい。
以上のように、第1レイヤおよび第2レイヤの各面のテクスチャ画像が左目用の視点と右目用の視点の画像をパッキングしたテクスチャ画像である場合、復号の結果得られるテクスチャ画像が、左目用の視点のテクスチャ画像と右目用の視点のテクスチャ画像に分離される。そして、第1レイヤおよび第2レイヤについて、左目用の3次元データと右目用の3次元データが生成される。
そして、視聴者の視聴方向および視聴位置に対応する左目の視聴方向および視聴位置基づいて、左目用の3次元データから左目用の表示画像が生成される。また、視聴者の視聴方向および視聴位置に対応する右目の視聴方向および視聴位置に基づいて、右目用の3次元データから右目用の表示画像が生成される。そして、ヘッドマウントディスプレイ15が3D表示可能である場合、ヘッドマウントディスプレイ15は、左目用の表示画像を左目用の画像として表示し、右目用の表示画像を右目用の画像として表示することにより、表示画像を3D表示する。
なお、第1および第2実施の形態では、撮影画像が正八面体にマッピングされることにより全天球画像が生成されたが、撮影画像がマッピングされる3Dモデルは、正八面体のほか、球や立方体などにすることができる。撮影画像が球にマッピングされる場合、全天球画像は、例えば、撮影画像がマッピングされた球の正距円筒図法による画像である。また、全天球画像ではなく、半天球画像や、前方を広角で表現した画像を生成してもよい。
上述した実施の形態では、デプス画像の画素値として格納される距離情報として、被写体までの直線の距離r(の逆数1/r)を量子化した値を採用したが、視差dを量子化した値を採用してもよい。奥行き方向の距離rと視差dは、r=(L/d)*fにより一意に変換可能である。ここで、Lはステレオカメラを構成する2つの撮像センサ間の水平距離、fは焦点距離を表す。
また、低解像度テクスチャストリームと低解像度デプスストリームは生成されなくてもよい。第1レイヤおよび第2レイヤのデプス画像は生成されなくてもよい。また、第2レイヤのテクスチャ画像とデプス画像は、重要な被写体の撮影画像がマッピングされる一部の面に対してのみ生成されるようにしてもよい。
さらに、低解像度テクスチャ画像および低解像度デプス画像も、高解像度のテクスチャ画像およびデプス画像と同様に、階層化して生成されてもよい。
<4.第3実施の形態>
(本開示を適用したコンピュータの説明)
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図21は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータ500において、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
バス504には、さらに、入出力インタフェース505が接続されている。入出力インタフェース505には、入力部506、出力部507、記憶部508、通信部509、及びドライブ510が接続されている。
入力部506は、キーボード、マウス、マイクロフォンなどよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記憶部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインタフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア511を駆動する。
以上のように構成されるコンピュータ500では、CPU501が、例えば、記憶部508に記憶されているプログラムを、入出力インタフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ500(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータ500では、プログラムは、リムーバブルメディア511をドライブ510に装着することにより、入出力インタフェース505を介して、記憶部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記憶部508にインストールすることができる。その他、プログラムは、ROM502や記憶部508に、あらかじめインストールしておくことができる。
なお、コンピュータ500が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
<5.応用例>
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
図22は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図22に示した例では、車両制御システム7000は、駆動系制御ユニット7100、ボディ系制御ユニット7200、バッテリ制御ユニット7300、車外情報検出ユニット7400、車内情報検出ユニット7500、及び統合制御ユニット7600を備える。これらの複数の制御ユニットを接続する通信ネットワーク7010は、例えば、CAN(Controller Area Network)、LIN(Local Interconnect Network)、LAN(Local Area Network)又はFlexRay(登録商標)等の任意の規格に準拠した車載通信ネットワークであってよい。
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク7010を介して他の制御ユニットとの間で通信を行うためのネットワークI/Fを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信I/Fを備える。図22では、統合制御ユニット7600の機能構成として、マイクロコンピュータ7610、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660、音声画像出力部7670、車載ネットワークI/F7680及び記憶部7690が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信I/F及び記憶部等を備える。
駆動系制御ユニット7100は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット7100は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット7100は、ABS(Antilock Brake System)又はESC(Electronic Stability Control)等の制御装置としての機能を有してもよい。
駆動系制御ユニット7100には、車両状態検出部7110が接続される。車両状態検出部7110には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット7100は、車両状態検出部7110から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
ボディ系制御ユニット7200は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット7200は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット7200には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット7200は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
バッテリ制御ユニット7300は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池7310を制御する。例えば、バッテリ制御ユニット7300には、二次電池7310を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット7300は、これらの信号を用いて演算処理を行い、二次電池7310の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
車外情報検出ユニット7400は、車両制御システム7000を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット7400には、撮像部7410及び車外情報検出部7420のうちの少なくとも一方が接続される。撮像部7410には、ToF(Time Of Flight)カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部7420には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム7000を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びLIDAR(Light Detection and Ranging、Laser Imaging Detection and Ranging)装置のうちの少なくとも一つであってよい。これらの撮像部7410及び車外情報検出部7420は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
ここで、図23は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
なお、図23には、それぞれの撮像部7910,7912,7914,7916の撮影範囲の一例が示されている。撮像範囲aは、フロントノーズに設けられた撮像部7910の撮像範囲を示し、撮像範囲b,cは、それぞれサイドミラーに設けられた撮像部7912,7914の撮像範囲を示し、撮像範囲dは、リアバンパ又はバックドアに設けられた撮像部7916の撮像範囲を示す。例えば、撮像部7910,7912,7914,7916で撮像された画像データが重ね合わせられることにより、車両7900を上方から見た俯瞰画像が得られる。
車両7900のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7922,7924,7926,7928,7930は、例えば超音波センサ又はレーダ装置であってよい。車両7900のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部7920,7926,7930は、例えばLIDAR装置であってよい。これらの車外情報検出部7920〜7930は、主として先行車両、歩行者又は障害物等の検出に用いられる。
図22に戻って説明を続ける。車外情報検出ユニット7400は、撮像部7410に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット7400は、接続されている車外情報検出部7420から検出情報を受信する。車外情報検出部7420が超音波センサ、レーダ装置又はLIDAR装置である場合には、車外情報検出ユニット7400は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット7400は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット7400は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
また、車外情報検出ユニット7400は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット7400は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部7410により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット7400は、異なる撮像部7410により撮像された画像データを用いて、視点変換処理を行ってもよい。
車内情報検出ユニット7500は、車内の情報を検出する。車内情報検出ユニット7500には、例えば、運転者の状態を検出する運転者状態検出部7510が接続される。運転者状態検出部7510は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット7500は、運転者状態検出部7510から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット7500は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
統合制御ユニット7600は、各種プログラムにしたがって車両制御システム7000内の動作全般を制御する。統合制御ユニット7600には、入力部7800が接続されている。入力部7800は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット7600には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部7800は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム7000の操作に対応した携帯電話又はPDA(Personal Digital Assistant)等の外部接続機器であってもよい。入力部7800は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部7800は、例えば、上記の入力部7800を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット7600に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部7800を操作することにより、車両制御システム7000に対して各種のデータを入力したり処理動作を指示したりする。
記憶部7690は、マイクロコンピュータにより実行される各種プログラムを記憶するROM(Read Only Memory)、及び各種パラメータ、演算結果又はセンサ値等を記憶するRAM(Random Access Memory)を含んでいてもよい。また、記憶部7690は、HDD(Hard Disc Drive)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
汎用通信I/F7620は、外部環境7750に存在する様々な機器との間の通信を仲介する汎用的な通信I/Fである。汎用通信I/F7620は、GSM(Global System of Mobile communications)、WiMAX、LTE(Long Term Evolution)若しくはLTE−A(LTE−Advanced)などのセルラー通信プロトコル、又は無線LAN(Wi−Fi(登録商標)ともいう)、Bluetooth(登録商標)などのその他の無線通信プロトコルを実装してよい。汎用通信I/F7620は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク(例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク)上に存在する機器(例えば、アプリケーションサーバ又は制御サーバ)へ接続してもよい。また、汎用通信I/F7620は、例えばP2P(Peer To Peer)技術を用いて、車両の近傍に存在する端末(例えば、運転者、歩行者若しくは店舗の端末、又はMTC(Machine Type Communication)端末)と接続してもよい。
専用通信I/F7630は、車両における使用を目的として策定された通信プロトコルをサポートする通信I/Fである。専用通信I/F7630は、例えば、下位レイヤのIEEE802.11pと上位レイヤのIEEE1609との組合せであるWAVE(Wireless Access in Vehicle Environment)、DSRC(Dedicated Short Range Communications)、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信I/F7630は、典型的には、車車間(Vehicle to Vehicle)通信、路車間(Vehicle to Infrastructure)通信、車両と家との間(Vehicle to Home)の通信及び歩車間(Vehicle to Pedestrian)通信のうちの1つ以上を含む概念であるV2X通信を遂行する。
測位部7640は、例えば、GNSS(Global Navigation Satellite System)衛星からのGNSS信号(例えば、GPS(Global Positioning System)衛星からのGPS信号)を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部7640は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、PHS若しくはスマートフォンといった端末から位置情報を取得してもよい。
ビーコン受信部7650は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部7650の機能は、上述した専用通信I/F7630に含まれてもよい。
車内機器I/F7660は、マイクロコンピュータ7610と車内に存在する様々な車内機器7760との間の接続を仲介する通信インタフェースである。車内機器I/F7660は、無線LAN、Bluetooth(登録商標)、NFC(Near Field Communication)又はWUSB(Wireless USB)といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器I/F7660は、図示しない接続端子(及び、必要であればケーブル)を介して、USB(Universal Serial Bus)、HDMI(High-Definition Multimedia Interface)、又はMHL(Mobile High-definition Link)等の有線接続を確立してもよい。車内機器7760は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも1つを含んでいてもよい。また、車内機器7760は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器I/F7660は、これらの車内機器7760との間で、制御信号又はデータ信号を交換する。
車載ネットワークI/F7680は、マイクロコンピュータ7610と通信ネットワーク7010との間の通信を仲介するインタフェースである。車載ネットワークI/F7680は、通信ネットワーク7010によりサポートされる所定のプロトコルに則して、信号等を送受信する。
統合制御ユニット7600のマイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム7000を制御する。例えば、マイクロコンピュータ7610は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット7100に対して制御指令を出力してもよい。例えば、マイクロコンピュータ7610は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むADAS(Advanced Driver Assistance System)の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ7610は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
マイクロコンピュータ7610は、汎用通信I/F7620、専用通信I/F7630、測位部7640、ビーコン受信部7650、車内機器I/F7660及び車載ネットワークI/F7680のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の3次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ7610は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
音声画像出力部7670は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図22の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
なお、図22に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
なお、図1乃至図20を用いて説明した本実施形態に係る画像表示システム10(400)の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
以上説明した車両制御システム7000において、図1乃至図20を用いて説明した本実施形態に係る画像表示システム10(400)は、図22に示した応用例の車両制御システム7000に適用することができる。例えば、画像表示システム10(400)のマルチカメラ11は、撮像部7410の少なくとも一部に相当する。また、コンテンツサーバ12、ホームサーバ13(配信サーバ401、ネットワーク402、再生装置403)、および変換装置14は一体化され、統合制御ユニット7600のマイクロコンピュータ7610と記憶部7690に相当する。ヘッドマウントディスプレイ15は、表示部7720に相当する。なお、画像表示システム10(400)を車両制御システム7000に適用する場合、カメラ13A、マーカ15A、およびジャイロセンサ15Bは設けられず、視聴者である搭乗者の入力部7800の操作により視聴者の視線方向および視聴位置が入力される。以上のようにして、画像表示システム10(400)を、図22に示した応用例の車両制御システム7000に適用することにより、全天球画像を用いて高画質の表示画像を生成することができる。
また、図1乃至図20を用いて説明した画像表示システム10(400)の少なくとも一部の構成要素は、図22に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、図1乃至図20を用いて説明した画像表示システム10(400)が、図22に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
また、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本開示は以下のような構成も取ることができる。
(1)
全天球画像のテクスチャ画像及びデプス画像から構成される第1レイヤのテクスチャ画像及びデプス画像と、前記第1レイヤのテクスチャ画像及びデプス画像の少なくとも一方と画素値が表す情報の範囲が異なる第2レイヤのテクスチャ画像及びデプス画像とを用いて、所定の視点の表示画像を生成する画像生成部と
を備える画像処理装置。
(2)
前記画像生成部は、前記第1レイヤのテクスチャ画像と画像パラメータの範囲が異なる前記第2レイヤのテクスチャ画像を用いて、前記表示画像を生成する
前記(1)に記載の画像処理装置。
(3)
前記画像パラメータは、画素値が表す輝度情報であり、
前記画像生成部は、前記第1レイヤのテクスチャ画像と画素値が表す輝度情報の範囲が異なる前記第2レイヤのテクスチャ画像を用いて、前記表示画像を生成する
前記(2)に記載の画像処理装置。
(4)
前記画像生成部は、前記第1レイヤのデプス画像と距離パラメータの範囲が異なる前記第2レイヤのデプス画像を用いて、前記表示画像を生成する
前記(1)乃至(3)に記載の画像処理装置。
(5)
前記距離パラメータは、画素値が表す距離情報であり、
前記画像生成部は、前記第1レイヤのデプス画像と画素値が表す距離情報の範囲が異なる前記第2レイヤのデプス画像を用いて、前記表示画像を生成する
前記(4)に記載の画像処理装置。
(6)
前記第1レイヤと第2レイヤのテクスチャ画像及びデプス画像は、前記全天球画像のテクスチャ画像及びデプス画像を所定の面に透視投影することにより得られたテクスチャ画像及びデプス画像から構成される
前記(1)乃至(5)のいずれかに記載の画像処理装置。
(7)
画像処理装置が、
全天球画像のテクスチャ画像及びデプス画像から構成される第1レイヤのテクスチャ画像及びデプス画像と、前記第1レイヤのテクスチャ画像及びデプス画像の少なくとも一方と画素値が表す情報の範囲が異なる第2レイヤのテクスチャ画像及びデプス画像とを用いて、所定の視点の表示画像を生成する
ステップを含む画像処理方法。
(8)
全天球画像のテクスチャ画像及びデプス画像から構成される第1レイヤのテクスチャ画像及びデプス画像と、前記第1レイヤのテクスチャ画像及びデプス画像の少なくとも一方と画素値が表す情報の範囲が異なる第2レイヤのテクスチャ画像及びデプス画像を生成する画像生成部
を備える画像処理装置。
(9)
前記画像生成部は、前記第1レイヤのテクスチャ画像と画像パラメータの範囲が異なる前記第2レイヤのテクスチャ画像を生成する
前記(8)に記載の画像処理装置。
(10)
前記画像パラメータは、画素値が表す輝度情報であり、
前記画像生成部は、前記第1レイヤのテクスチャ画像と画素値が表す輝度情報の範囲が異なる前記第2レイヤのテクスチャ画像を生成する
前記(9)に記載の画像処理装置。
(11)
前記画像生成部は、前記第1レイヤのデプス画像と距離パラメータの範囲が異なる前記第2レイヤのデプス画像を生成する
前記(8)乃至(10)のいずれかに記載の画像処理装置。
(12)
前記距離パラメータは、画素値が表す距離情報であり、
前記画像生成部は、前記第1レイヤのデプス画像と画素値が表す距離情報の範囲が異なる前記第2レイヤのデプス画像を生成する
前記(11)に記載の画像処理装置。
(13)
前記1レイヤと第2レイヤのテクスチャ画像及びデプス画像は、前記全天球画像のテクスチャ画像及びデプス画像を所定の面に透視投影することにより得られたテクスチャ画像及びデプス画像から構成される
前記(8)乃至(12)のいずれかに記載の画像処理装置。
(14)
画像処理装置が、
全天球画像のテクスチャ画像及びデプス画像から構成される第1レイヤのテクスチャ画像及びデプス画像と、前記第1レイヤのテクスチャ画像及びデプス画像の少なくとも一方と画素値が表す情報の範囲が異なる第2レイヤのテクスチャ画像及びデプス画像を生成する
ステップを含む画像処理方法。