JPWO2019003889A1 - 生成装置および生成方法、並びに、再生装置および再生方法 - Google Patents

生成装置および生成方法、並びに、再生装置および再生方法 Download PDF

Info

Publication number
JPWO2019003889A1
JPWO2019003889A1 JP2019526767A JP2019526767A JPWO2019003889A1 JP WO2019003889 A1 JPWO2019003889 A1 JP WO2019003889A1 JP 2019526767 A JP2019526767 A JP 2019526767A JP 2019526767 A JP2019526767 A JP 2019526767A JP WO2019003889 A1 JPWO2019003889 A1 JP WO2019003889A1
Authority
JP
Japan
Prior art keywords
unit
image
vector
mapping
model
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.)
Granted
Application number
JP2019526767A
Other languages
English (en)
Other versions
JP7095697B2 (ja
Inventor
伸明 泉
伸明 泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JPWO2019003889A1 publication Critical patent/JPWO2019003889A1/ja
Application granted granted Critical
Publication of JP7095697B2 publication Critical patent/JP7095697B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/39Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/57Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本開示は、任意のマッピング手法に適用可能で、視聴方向を高解像度に設定したマッピングを提供することができるようにする生成装置および生成方法、並びに、再生装置および再生方法に関する。生成装置は、360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部を備える。本開示は、例えば、6方向の撮影画像から360度画像を生成し、その360度画像の所定の方向が高解像度に設定された符号化ストリームを生成する生成装置等に適用できる。

Description

本開示は、生成装置および生成方法、並びに、再生装置および再生方法に関し、特に、任意のマッピング手法に適用可能で、視聴方向を高解像度に設定したマッピングを提供することができるようにした生成装置および生成方法、並びに、再生装置および再生方法に関する。
上下左右全方位の360度を見回すことが可能な全天球画像の再生方法には、一般のディスプレイ上にコントローラを使って表示方向を変更しながら視聴する方法や、手に持ったモバイル端末画面上に端末内蔵のジャイロセンサから得た姿勢情報に基づいて方向を変えて表示する方法、頭部に装着したヘッドマウントディスプレイで頭部の動きを反映させて画像を表示する方法などがある。
これらの再生方法で全天球画像を再生する一人用の再生装置の特徴は、入力画像データが全天球分用意されているにもかかわらず、視聴者が見ていない方向はデータの表示を行う必要は無いため、実際に表示されるのは全天球画像の一部に限られることである。表示を行なっていない部分の伝送やデコード処理を削減することができれば、回線帯域効率を上げることが可能である。
しかしながら、MPEG2(Moving Picture Experts Group phase 2)やAVC(Advanced Video Coding)などの標準的なコーデックを使って圧縮する一般的な手法では、空間方向も時間軸方向も冗長性を利用して圧縮されおり、任意の領域を切り出してデコードすることも、任意の時刻から再生を開始することも難しい。
さらに、データが配信などでサーバからネットワーク経由で送られる場合には、サーバ応答遅延の問題もある。そのため、動画コーデックを利用してのデータの瞬時切り替えは非常に困難で、全天球のデータを複数に分割する形式を取っても、視聴者が急に見る方向を変えた時に、実際に切り替えが発生するまでの間、表示するデータが存在しないデータ欠損の状態が起こってしまう。このデータ欠損状態になると、再生品質が極度に低下するため、実際の全天球配信システムの構築では、急激な振り向きに備えて全方向分の最低限のデータが存在する状態を維持することが必要である。
そのため、限られた回線帯域の中で、全天球分の最低限のデータは確保しながら視聴者の見ている方向を高解像度・高画質にする手法が、各種提案されている。
例えば、特許文献1では、正距円筒図法の低解像度の全天球画像と、高解像度の一部切り出し画像を組み合わせて視聴する、いわゆる分割階層化配信システムが提案されている。分割階層化配信システムでは、視聴方向の高解像度部分画像が、視聴者の向きに応じて切り替わりながら配信される。視野周辺の高解像度部分画像がカバーされない領域の描画や、急な振り向きでストリームの切り替えが間に合わない場合には、低解像度の全天球画像が利用され、表示する画像が存在しない状態が発生しないようにしている。
このような分割階層化手法の問題点は、高解像度と低解像度が重なった部分では画質の良い高解像度を使って描画されるため、重なった部分の低解像度側が無駄になってしまうことである。高解像度と低解像度を2重に送っている分だけ回線帯域のロスが生じてしまう。
この重なった部分を2重に送ってしまう無駄を省く工夫を施した手法も存在する。
例えば、1枚の画像に全天球分の方向が含まれるが、方向によって割り当てられる面積すなわち画素数が異なり、ある特定の方向が高解像度となるように設計されたマッピングを使う手法がある。
この手法は、例えば、MPEG会合の2016年6月のGeneva会合で発行された Working Draft ” WD on ISO/IEC 23000-20 Omnidirectional Media Application Format”の「A.3.2.5 Truncated pyramid」の章で記述されている(非特許文献1参照)。また、同様の手法は、非特許文献2にも記述されている。Facebook社も、同様の考え方に基づく別のマッピングを “Pyramid Coding”と称し、Web上で公開している(非特許文献3参照)。
この手法によれば、正面エリアの割り当て画素が多く、解像度が高くなる。正面方向が異なる複数のビットストリームが用意され、視聴者の見ている方向に応じて、それらを切り替えながら伝送が行われる。解像度の差はあっても全方向のデータが含まれるため、急な視聴方向の変更によるデータ欠落は発生しない。
このような、視聴方向正面を高解像度に設定し、それ以外の方向が低解像度になるマッピングは、MPEG会合では、”viewport dependent projection mapping”と呼ばれている。
特開2016−15705号公報
http://mpeg.chiariglione.org/standards/mpeg-a/omnidirectional-media-application-format/wd-isoiec-23000-20-omnidirectional-media https://www.itu.int/en/ITU-T/studygroups/2017-2020/16/Documents/ws/201701ILE/S2P2-1701-01-19-MPEG_Immersive_Media_Thomas_Stockhammer.pdf https://code.facebook.com/posts/1126354007399553/next-generation-video-encoding-techniques-for-360-video-and-vr/
上記の視聴方向正面を高解像度に設定し、それ以外の方向が低解像度になるマッピングを用いる手法は、解像度差が生じるマッピングを新規に定義した専用マッピングを用いる手法である。専用マッピングを用いる手法は、通常のマッピング手法、即ち、全方向で画素密度(解像度)が均等な全天球画像を表示するマッピングと互換が無くなってしまう。そのため、一般の全天球用に設計されたマッピングをそのまま使うことができて、かつ、特定の方向が高解像度となるような画像を生成することができるマッピングが望まれる。
本開示は、このような状況に鑑みてなされたものであり、任意のマッピング手法に適用可能で、視聴方向を高解像度に設定したマッピングを提供することができるようにするものである。
本開示の第1の側面の生成装置は、360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部を備える。
本開示の第1の側面の生成方法は、360度画像をマッピングする所定の3Dモデルの第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換するステップを含む。
本開示の第1の側面においては、360度画像をマッピングする所定の3Dモデルの第1のベクトルが、単位球の3Dモデルの第2のベクトルに変換される。
本開示の第2の側面の再生装置は、他の装置で生成された360度画像を受け取る受け取り部と、前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部とを備える。
本開示の第2の側面の再生方法は、他の装置で生成された360度画像を受け取り、前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換するステップを含む。
本開示の第2の側面においては、他の装置で生成された360度画像が受け取られ、前記360度画像を所定の3Dモデルにマッピングする第1のベクトルが、単位球の3Dモデルの第2のベクトルに変換される。
なお、本開示の第1の側面の生成装置および第2の側面の再生装置は、コンピュータにプログラムを実行させることにより実現することができる。
また、本開示の第1の側面の生成装置および第2の側面の再生装置を実現するために、コンピュータに実行させるプログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
生成装置および再生装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
本開示の第1および第2の側面によれば、任意のマッピング手法に適用可能で、視聴方向を高解像度に設定したマッピングを提供することができるようにする。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本開示を適用した配信システムの第1の実施の形態の構成例を示すブロック図である。 図1の生成装置の構成例を示すブロック図である。 高解像度方向の設定を説明する図である。 マッピング処理部の詳細構成を示すブロック図である。 マッピング処理部の写像を説明する図である。 正八面体マッピングにおけるテクスチャ画像と3Dモデルとの関係を示す図である。 第1の実施の形態に係るマッピング処理部の処理を説明する図である。 単位球の球面上の各画素をオフセット位置から見た場合を説明する図である。 写像fのマッピング処理による2次元テクスチャ画像と3Dモデルとの対応関係を示す図である。 写像f’のマッピング処理による2次元テクスチャ画像と3Dモデルとの対応関係を示す図である。 写像f”のマッピング処理による2次元テクスチャ画像と3Dモデルとの対応関係を示す図である。 テーブル生成部により生成される補助情報の構成例を示す図である。 方位角θ、仰角φ、及び、回転角ψを説明する図である。 高解像度方向が異なる6個の全天球画像の例を示す図である。 生成処理を説明するフローチャートである。 図1の配信サーバと再生装置の構成例を示すブロック図である。 描画部の処理について説明する図である。 再生処理を説明するフローチャートである。 第1の実施の形態の変形例を説明する図である。 第1の実施の形態の変形例を説明する図である。 第1の実施の形態の変形例を説明する図である。 生成装置と再生装置のマッピング処理部の写像の向きを説明する図である。 生成装置と再生装置のマッピング処理部の写像の向きを説明する図である。 第2の実施の形態に係るマッピング処理部の構成例を示すブロック図である。 第2の実施の形態に係るマッピング処理部の写像を説明する図である。 第2の実施の形態に係るマッピング処理部の処理を説明する図である。 写像gのマッピング処理による2次元テクスチャ画像と3Dモデルとの対応関係を示す図である。 第1の実施の形態における偏心率kと解像度向上率との関係を説明する図である。 第2の実施の形態における偏心率kと解像度向上率との関係を説明する図である。 第1の実施の形態における偏心率kを変えたときの2次元テクスチャ画像の例を示す図である。 第2の実施の形態における偏心率kを変えたときの2次元テクスチャ画像の例を示す図である。 第1の実施の形態におけるマッピング処理の概念図である。 第2の実施の形態におけるマッピング処理の概念図である。 第1の実施の形態と第2の実施の形態のマッピング処理の違いを説明する図である。 3Dモデルとしてキューブモデルを採用した場合と比較説明する図である。 第3の実施の形態に係るマッピング処理部の処理を説明する図である。 第3の実施の形態におけるマッピング処理の概念図である。 補助情報としてのパラメータテーブルの他の例を示す図である。 符号化ストリームを3D画像用の全天球画像とする変形例を説明する図である。 本開示を適用したコンピュータの構成例を示すブロック図である。 車両制御システムの概略的な構成の一例を示すブロック図である。 車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
以下、本開示に係る技術を実施するための形態(以下、実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態
2.生成装置と再生装置のマッピング処理部の写像の向きについて
3.第2の実施の形態
4.偏心率kと解像度向上率との関係
5.第1の実施の形態と第2の実施の形態の違い
6.第1の実施の形態と第2の実施の形態の組み合わせ
7.まとめ
8.変形例
9.コンピュータ構成例
10.応用例
<1.第1の実施の形態>
(配信システムの第1の実施の形態の構成例)
図1は、本開示を適用した配信システムの第1の実施の形態の構成例を示すブロック図である。
図1の配信システム10は、撮影装置11、生成装置12、配信サーバ13、ネットワーク14、再生装置15、およびヘッドマウントディスプレイ16により構成される。配信システム10は、撮影装置11により撮影された撮影画像から全天球画像を生成し、全天球画像を用いて視聴者の視野範囲の表示画像を表示する。
具体的には、配信システム10の撮影装置11は、6個のカメラ11A−1乃至11A−6を有する。なお、以下では、カメラ11A−1乃至11A−6を特に区別する必要がない場合、それらをカメラ11Aという。
各カメラ11Aは、動画像を撮影する。撮影装置11は、各カメラ11Aにより撮影された6方向の動画像を撮影画像として生成装置12に供給する。なお、撮影装置11が備えるカメラの数は、複数であれば、6個に限定されない。
生成装置12は、正距円筒図法を用いた方法により、撮影装置11から供給される撮影画像から、水平方向の周囲360度および垂直方向の周囲180度の全天球画像を生成する。生成装置12は、正距円筒図法による、上下左右全方位の360度を見回すことが可能な全天球画像を、所定の3Dモデルにマッピングした画像データを、AVC(Advanced Video Coding)やHEVC(High Efficiency Video Coding)/H.265等の所定の符号化方式で圧縮符号化する。
生成装置12は、全天球画像を所定の3Dモデルにマッピングする際、視聴者の視線方向に対応する複数の方向を設定し、各方向について、設定された方向の解像度が高解像度に設定されるとともに、設定された方向とは反対の方向が低解像度となるようにマッピングを変換する。そして、生成装置12は、変換したマッピングを用いて生成した全天球画像の画像データを圧縮符号化した符号化ストリームを生成する。
例えば、立方体の中心を視聴位置として、中心から立方体の各面に垂直な方向となる6個の方向が、複数の方向として設定されるとすると、生成装置12は、6個の方向に対応するように、全天球画像の画像データを圧縮符号化した6本の符号化ストリームを生成する。生成された6本の符号化ストリームは、高解像度に設定された方向(以下、高解像度方向とも称する。)がそれぞれ異なる全天球画像の画像データとなる。
生成装置12は、高解像度方向がそれぞれ異なる複数本の符号化ストリームを配信サーバ13にアップロードする。また、生成装置12は、複数本の符号化ストリームを識別するための補助情報を生成し、配信サーバ13にアップロードする。補助情報は、高解像度方向がどの方向であるか等を定義した情報である。
配信サーバ13は、ネットワーク14を介して再生装置15と接続する。配信サーバ13は、生成装置12からアップロードされた複数本の符号化ストリームと補助情報を記憶する。配信サーバ13は、再生装置15からの要求に応じて、記憶している補助情報と、複数本の符号化ストリームの少なくとも1つを、ネットワーク14を介して再生装置15に送信する。
再生装置15は、配信サーバ13が記憶する複数本の符号化ストリームを識別するための補助情報を、ネットワーク14を介して配信サーバ13に要求し、その要求に応じて送信されてくる補助情報を受け取る。
また、再生装置15は、カメラ15Aを内蔵し、ヘッドマウントディスプレイ16に付されたマーカ16Aを撮影する。そして、再生装置15は、マーカ16Aの撮影画像に基づいて、3Dモデルの座標系(以下、3Dモデル座標系という。)における視聴者の視聴位置を検出する。さらに、再生装置15は、ヘッドマウントディスプレイ16のジャイロセンサ16Bの検出結果を、ヘッドマウントディスプレイ16から受け取る。再生装置15は、ジャイロセンサ16Bの検出結果に基づいて、3Dモデル座標系における視聴者の視線方向を決定する。再生装置15は、視聴位置と視線方向に基づいて、3Dモデルの内部に位置する視聴者の視野範囲を決定する。
そして、再生装置15は、補助情報と視聴者の視野範囲とに基づいて、複数本の符号化ストリームのうちの1本の符号化ストリームをネットワーク14を介して配信サーバ13に要求し、その要求に応じて配信サーバ13から送信されてくる1本の符号化ストリームを受け取る。
すなわち、再生装置15は、配信サーバ13が記憶する複数本の符号化ストリームのうち、視聴者の視線方向に最も近い高解像度方向の符号化ストリームを、取得する符号化ストリームとして決定し、配信サーバ13に要求する。
再生装置15は、受け取った1本の符号化ストリームを復号する。再生装置15は、復号の結果得られる全天球画像を所定の3Dモデルにマッピングすることにより、3Dモデル画像を生成する。
そして、再生装置15は、視聴位置を焦点として、3Dモデル画像を視聴者の視野範囲に透視投影することにより、視聴者の視野範囲の画像を表示画像として生成する。再生装置15は、表示画像をヘッドマウントディスプレイ16に供給する。
ヘッドマウントディスプレイ16は、視聴者の頭部に装着され、再生装置15から供給される表示画像を表示する。ヘッドマウントディスプレイ16には、カメラ15Aにより撮影されるマーカ16Aが付されている。従って、視聴者は、ヘッドマウントディスプレイ16を頭部に装着した状態で、移動することにより視聴位置を指定することができる。また、ヘッドマウントディスプレイ16には、ジャイロセンサ16Bが内蔵され、そのジャイロセンサ16Bによる角速度の検出結果は再生装置15に伝送される。従って、視聴者は、ヘッドマウントディスプレイ16を装着した頭部を回転させることにより、視線方向を指定することができる。
再生装置15は、視聴者の見ている方向に応じて、配信サーバ13が記憶する複数本の符号化ストリームを切り替えながら、視聴者の視野範囲の画像を生成し、ヘッドマウントディスプレイ16に表示させる。すなわち、視聴者の見ている方向の解像度が上がるように、配信サーバ13が記憶する複数本の符号化ストリームが動的に切り替えられる。
配信システム10において、配信サーバ13から再生装置15への配信方法は、どのような方法であってもよい。配信方法が、例えば、MPEG-DASH(Moving Picture Experts Group phase − Dynamic Adaptive Streaming over HTTP)を用いる方法である場合、配信サーバ13は、HTTP(HyperText Transfer Protocol)サーバであり、再生装置15はMPEG-DASHクライアントである。
(生成装置の構成例)
図2は、図1の生成装置12の構成例を示すブロック図である。
図2の生成装置12は、スティッチング処理部21、回転処理部22−1乃至22−6、マッピング処理部23−1乃至23−6、エンコーダ24−1乃至24−6、設定部25、テーブル生成部26、および、送信部27により構成される。
生成装置12では、回転処理部22、マッピング処理部23、および、エンコーダ24は、高解像度方向の数だけ設けられる。本実施の形態では、生成装置12は、高解像度方向として、図3の矢印dir1乃至dir6で示される、立方体の中心を視聴位置として、中心から立方体の各面に垂直な方向となる6個の方向が設定されるので、回転処理部22、マッピング処理部23、および、エンコーダ24が、それぞれ、6個ずつ設けられている。仮に、高解像度方向として12の方向を設定する場合には、生成装置12には、マッピング処理部23、および、エンコーダ24が、それぞれ、12個ずつ設けられている。
以下では、回転処理部22−1乃至22−6それぞれを特に区別する必要がない場合、単に回転処理部22と称する。マッピング処理部23−1乃至23−6、および、エンコーダ24−1乃至24−6についても同様に、それらを特に区別する必要がない場合、マッピング処理部23、および、エンコーダ24と称する。
スティッチング処理部21は、フレームごとに、図1のカメラ11Aから供給される6方向の撮影画像の色や明るさを同一にし、重なりを除去して接続し、十分な解像度を持った一枚の撮影画像に変換する。例えば、スティッチング処理部21は、一枚の撮影画像として、正距円筒画像に変換する。スティッチング処理部21は、フレーム単位の撮影画像である正距円筒画像を回転処理部22に供給する。
回転処理部22は、スティッチング処理部21から供給されるフレーム単位の撮影画像(例えば、正距円筒画像)を、高解像度方向が画像の中心となるように画像中心を回転(移動)する。どの方向を高解像度方向とするかは、設定部25から指示される。回転処理部22−1乃至22−6は、設定部25から指示される方向が異なるだけである。
マッピング処理部23は、画像中心付近が高解像度になるように変換された撮影画像を、所定の3Dモデルにマッピングすることにより、設定部25から指示された方向が高解像度に設定された全天球画像を生成する。生成された全天球画像において、設定部25から指示された方向と反対の(真後ろの)方向の解像度は、低解像度となっている。
エンコーダ24(符号化部)は、マッピング処理部23から供給される全天球画像をMPEG2方式やAVC方式などの所定の符号化方式で符号化し、符号化ストリームを生成する。エンコーダ24は、生成した1本の符号化ストリームを送信部27に供給する。
このとき、エンコーダ24−1乃至24−6によって生成された6本の符号化ストリームは、動的に切り替えて再生されるため、エンコーダ24−1乃至24−6により生成される6本の符号化ストリームの間で、例えば、GOP(Group of Picture)の先頭ピクチャやIDRピクチャなどのシンクポイントは同一にされる。エンコーダ24−1乃至24−6は、それぞれ、生成された1本の符号化ストリームを送信部27に供給する。
マッピング処理部23、および、エンコーダ24は、設定部25が設定した高解像度方向に対応する、回転処理部22から供給される画像の画像中心の方向を、正面方向として、同一の処理を実行する。回転処理部22から供給される高解像度方向が画像中心となっている画像を正面方向画像と称する。
設定部25は、水平方向の周囲360度および垂直方向の周囲180度に対して、並列に設けられた6個の回転処理部22、マッピング処理部23、および、エンコーダ24の組が、正面方向として扱う高解像度方向を決定する。設定部25は、決定した6個の高解像度方向のうちの1つの高解像度方向を特定する情報を、回転処理部22−1乃至22−6に供給する。回転処理部22−1乃至22−6それぞれに供給される高解像度方向は、互いに異なる。
また、設定部25は、水平方向の周囲360度および垂直方向の周囲180度の全方向を均一な解像度とする場合と比較して、高解像度方向をどれだけ高解像度とするかを示す、解像度向上率を決定し、マッピング処理部23−1乃至23−6に供給する。マッピング処理部23−1乃至23−6に供給される解像度向上率は、マッピング処理部23−1乃至23−6で異なる値でもよいが、本実施の形態では共通の値とする。
本実施の形態では、高解像度方向の設定数を予め6個に決定し、生成装置12内に、回転処理部22、マッピング処理部23、および、エンコーダ24のそれぞれを6個設けた構成を採用することとするが、設定部25が決定する任意の個数の高解像度方向に対応して、回転処理部22、マッピング処理部23、および、エンコーダ24それぞれの個数が可変する構成としてもよい。
さらに、設定部25は、回転処理部22−1乃至22−6に供給した6個の高解像度方向を特定する情報と、マッピング処理部23−1乃至23−6に供給した解像度向上率を示す情報をテーブル生成部26に供給する。
なお、図2では、設定部25から、回転処理部22−1乃至22−6およびマッピング処理部23−1乃至23−6に所定のデータ(高解像度方向、解像度向上率)を供給する供給線の図示が省略されている。
テーブル生成部26は、設定部25から供給される6個の高解像度方向と、解像度向上率を、高解像度方向ごとにまとめたテーブルを生成し、生成したテーブルを補助情報として、送信部27に供給する。
送信部27は、エンコーダ24−1乃至24−6のそれぞれから供給される合計6本の符号化ストリーム、および、テーブル生成部26から供給される補助情報を、図1の配信サーバ13にアップロード(送信)する。
(マッピング変換部の構成例)
図4は、マッピング処理部23の詳細構成を示すブロック図である。
マッピング処理部23は、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部43により構成される。
マッピング処理部23には、回転処理部22から、十分な解像度を持った一枚の画像(例えば、正距円筒画像)で、設定部25によって設定された高解像度方向が画像中心となっている画像がフレーム毎に供給される。
水平方向の周囲360度および垂直方向の周囲180度の全方向を均一な解像度とした全天球画像を生成する場合には、マッピング処理部23は、全天球マッピング座標生成部41のみで構成される。本実施の形態のように、所定の方向を高解像度方向とする全天球画像を生成するために、マッピング処理部23には、ベクトル正規化部42、および、マッピング補正部43が追加されている。
マッピング処理部23は、回転処理部22から供給される一枚の画像(例えば、正距円筒画像)を、所定の3Dモデルにマッピング(写像)する処理を行うが、実際には、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部43の3つの処理が、1回のマッピング処理により一括で行われる。
そこで、図5に示されるように、全天球マッピング座標生成部41単独で行われる写像を写像f、全天球マッピング座標生成部41とベクトル正規化部42を合わせて行われる写像を写像f’、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部43を合わせて行われる写像を写像f”と定義して、マッピング処理部23によるマッピング処理を段階的に説明する。
全天球マッピング座標生成部41は、回転処理部22から供給される正面方向画像を所定の3Dモデルにマッピングすることにより、高解像度方向が高解像度に設定された全天球画像を生成する。
例えば、所定の3Dモデルとして正八面体にマッピングする正八面体マッピングを採用したとすると、全天球マッピング座標生成部41は、回転処理部22から供給される正面方向画像を正八面体にマッピングすることにより、高解像度方向が高解像度に設定された全天球画像を生成する。
正八面体マッピングをはじめとする多面体マッピングは、複数の三角形パッチからなる3D多面体立体モデルにテクスチャ画像を貼りつけ、その面を3Dモデルの中心から見回すように透視投影することによって、GPUで比較的容易に描画可能なマッピング手法である。
図6は、正八面体マッピングにおけるテクスチャ画像と3Dモデルとの関係を示す図である。
図6のAは、3Dモデルとしての正八面体を示し、3Dモデルとしての正八面体は、X軸、Y軸、及びZ軸の3Dモデル座標系で定義される。
図6のBは、3Dモデルとしての正八面体に貼り付けられるテクスチャ画像であり、テクスチャ画像は、U軸及びV軸の平面座標系で定義される。
平面座標(u,v)のテクスチャ画像(画素)と、正八面体上の3次元座標位置(x,y,z)との対応関係が、(x,y,z)=f(u,v)のように、写像fで定義される。
図7のAは、Z=0の断面における正八面体モデルの模式図である。
図7のAに示されるように、正八面体の原点を視聴位置として、原点から正八面体上の所定の3次元座標位置(x,y,z)へのベクトルをベクトルdとすると、全天球マッピング座標生成部41による写像fは、ベクトルdに対応し、全天球マッピング座標生成部41は、式(1)のベクトルdを生成する。
Figure 2019003889
次に、ベクトルdが次の式(2)により正規化されることにより、ベクトルpが算出される。
Figure 2019003889
ベクトルpは、図7のBに示されるように、半径が1の球(以下、単位球という。)の球面上の3次元座標位置(x,y,z)へのベクトルを表す。
全天球マッピング座標生成部41とベクトル正規化部42を合わせて行われる写像f’は、ベクトルpを用いて、単位球(球面)の3Dモデルにマッピングする処理である。
したがって、ベクトル正規化部42は、全天球マッピング座標生成部41で採用した所定の3Dモデル(本実施の形態では、正八面体モデル)を、単位球(球面)の3Dモデルに変換する。
マッピング補正部43は、ベクトル正規化部42によって正規化されたベクトルpに所定のオフセット位置ベクトルを加算する。ベクトルpに加算されるオフセット位置ベクトルをベクトルsとし、マッピング補正部43による補正後のベクトルをベクトルqとすると、マッピング補正部43は、次の式(3)により、ベクトルqを算出する。
Figure 2019003889
ベクトルqは、図7のCに示されるように、ベクトルpに所定のオフセット位置ベクトルs(負のオフセット位置ベクトルs)を加算することで得られる。
全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部43を合わせて行われる写像f”は、このベクトルqを用いて、単位球(球面)の3Dモデルにマッピングする処理である。
算出されたベクトルqは、3Dモデルとしての単位球の球面上に配置されたテクスチャ画像を、中心(原点)からオフセット位置ベクトルsだけずれた位置から見ることに等しい。
図8に示されるように、単位球の球面上の各画素を、中心(原点)からオフセット位置ベクトルsだけずれた位置から見た場合、画素密度が高解像度な方向と低解像度な方向が発生する。
図7のCのオフセット位置ベクトルsの長さ(大きさ)は、球中心からのオフセット距離に相当する。オフセット位置ベクトルsの長さが0のときは、単位球の中心のままとなるので、解像度を変更しない無変換を意味する。
このオフセット位置ベクトルsの長さを偏心率kと呼ぶことにすると、偏心率kは、原点から単位球面までの値を取り得るため、偏心率kの取り得る値は、0≦k<1となる。偏心率k(オフセット位置ベクトルsの長さ)が大きいほど、図8に示した画素の疎密の差が大きくなり、偏心率kは、全方向を均一な解像度を基準としたときの正面方向の解像度の向上度を表す。
以上のように、マッピング処理部23は、式(3)のベクトルqに対応する写像f”のマッピング処理を実行することにより、回転処理部22から供給される正面方向画像から、特定の方向が高解像度方向に設定された全天球画像を生成する。
上述した例では、全天球マッピング座標生成部41による全天球画像処理の例として、正八面体の3Dモデルを採用した例について説明した。
しかし、全天球マッピング座標生成部41で採用する3Dモデルがどのような3Dモデルでもよい。例えば、キューブマッピングでもよいし、正距円筒でもよい。ただし、正距円筒は、通常は球体モデルで定義されるため、後段のベクトル正規化部42による正規化処理を施しても3Dモデル形状に変化はない。
換言すれば、全天球マッピング座標生成部41の後段に、任意の3Dモデルを単位球モデルに変換するベクトル正規化部42が設けられていることにより、全天球マッピング座標生成部41では、任意の3Dモデルを採用することができる。
図9は、全天球マッピング座標生成部41のみによる写像fのマッピング処理による、2次元テクスチャ画像と正八面体の3Dモデルとの対応関係を示す図である。
図10は、全天球マッピング座標生成部41による全天球画像処理とベクトル正規化部42による正規化処理とが一体となった写像f’のマッピング処理による、2次元テクスチャ画像と単位球の3Dモデルとの対応関係を示す図である。
図11は、全天球マッピング座標生成部41による全天球画像処理、ベクトル正規化部42による正規化処理、および、マッピング補正部43によるマッピング補正処理が一体となった写像f”のマッピング処理による、2次元テクスチャ画像と単位球の3Dモデルとの対応関係を示す図である。
図9乃至図11では、説明のため、水平面(XZ平面)上における所定の基準軸からの角度である方位角と、上下方向の角度である仰角に対して、等間隔に補助線が描画されている。
図面上では、図面の解像度の制限により十分に表現できないが、図11の写像f”のマッピング処理による2次元テクスチャ画像は、図10の写像f’のマッピング処理による2次元テクスチャ画像と異なる。図10と図11の3Dモデルは、同じように見えるが、実際には、図10と図11は、画素密度分布が異なる。
(補助情報の構成例)
図12は、図2のテーブル生成部26により生成される補助情報の構成例を示す図である。
テーブル生成部26は、高解像度方向を特定する情報と解像度向上率を、高解像度方向ごとにまとめたパラメータテーブルを、補助情報として生成する。
図12の例では、図3に示した矢印dir1乃至dir6に対応する6個の方向のそれぞれについて、高解像度方向を特定する情報と解像度向上率が定義されている。高解像度方向を特定する情報は、方位角θ、仰角φ、及び、回転角ψであり、解像度向上率は、上述した偏心率kである。矢印dir1乃至dir6は、例えば、図12のID1乃至ID6にそれぞれ対応する。
図13は、方位角θ、仰角φ、及び、回転角ψを説明する図である。
方位角θは、3Dモデル座標系の水平面であるXZ平面上における所定の基準軸からの角度であり、−180°から+180°までの値を取り得る(−180°≦θ≦180°)。図13の例では、右回りを正方向としている。
仰角φは、3Dモデル座標系のXZ平面を基準平面とする上下方向の角度であり、−90°から+90°までの値を取り得る(−90°≦φ≦90°)。図13の例では、上方向を正方向としている。
回転角ψは、視点である原点と球面上の点を結ぶ線を軸としたときの軸周りの角度であり、図13の例では、反時計回りを正方向としている。
なお、直交座標系の右手系又は左手系のどちらを採用するか、方位角θ、仰角φ、および、回転角ψにおいて、どの方向または回転方向を正方向とするかで、正負の符号は変わり得るが、どのように定義しても問題はない。
図14は、6個の回転処理部22、マッピング処理部23、および、エンコーダ24によって生成された6個の全天球画像の例を示している。
図14に示される6個の全天球画像61乃至61は、図12のID1乃至ID6にそれぞれ対応する高解像度方向を有する全天球画像である。6個の全天球画像61乃至61を特に区別しない場合には、単に全天球画像61と称する。
図14に示される6個の全天球画像61乃至61には、単位球としての地球儀の緯度経度に相当する補助線が描かれている。
6個の全天球画像61乃至61は、図12のパラメータテーブルで特定される解像度方向が画像中心となるように回転処理部22によって回転されている。全天球画像61は、画像中心に近いほど補助線の間隔が広くなっていることから、画像中心に近いほど画像が拡大されていることがわかる。
(生成装置の処理の説明)
図15は、図2の生成装置12による生成処理を説明するフローチャートである。この処理は、例えば、撮影装置11の6個のカメラ11A−1乃至11A−6で撮影された6方向の動画像が供給されたとき開始される。
初めに、ステップS11において、スティッチング処理部21は、フレームごとに、各カメラ11Aから供給される6方向の撮影画像の色や明るさを同一にし、重なりを除去して接続し、一枚の撮影画像に変換する。スティッチング処理部21は、一枚の撮影画像として、例えば正距円筒画像を生成し、フレーム単位の正距円筒画像を回転処理部22に供給する。
ステップS12において、設定部25は、6個の高解像度方向と解像度向上率を決定する。設定部25は、決定した6個の高解像度方向を回転処理部22−1乃至22−6に1つずつ供給し、決定した解像度向上率をマッピング処理部23−1乃至23−6に供給する。また、設定部25は、決定した6個の高解像度方向と解像度向上率をテーブル生成部26にも供給する。
ステップS13において、回転処理部22は、スティッチング処理部21から供給されたフレーム単位の撮影画像(例えば、正距円筒画像)を、設定部25で指示された高解像度方向が画像の中心となるように回転する。
ステップS14において、マッピング処理部23は、画像中心付近が高解像度になるように回転された撮影画像を、所定の3Dモデルにマッピングすることにより、設定部25から指示された方向が高解像度に設定された全天球画像を生成する。
具体的には、マッピング処理部23は、式(3)のベクトルqを計算し、その結果得られたベクトルqを用いて回転処理部22から供給された正面方向画像を単位球にマッピングする処理を実行することにより、全天球マッピング座標生成部41による3Dモデルマッピング処理、ベクトル正規化部42による正規化処理、および、マッピング補正部43によるマッピング補正処理が一体となった写像f”のマッピング処理を実行する。
ステップS15において、エンコーダ24は、マッピング処理部23から供給された全天球画像をMPEG2方式やAVC方式などの所定の符号化方式で符号化し、1本の符号化ストリームを生成する。エンコーダ24は、生成した1本の符号化ストリームを送信部27に供給する。
ステップS13乃至S15では、6個ずつ設けられた回転処理部22、マッピング処理部23、および、エンコーダ24それぞれが、高解像度方向(正面方向)が異なる方向とされた撮影画像に対して、並列に処理を行う。
ステップS16において、生成テーブル生成部26は、6個の高解像度方向を特定する情報と、解像度向上率を示す情報を高解像度方向ごとにまとめたパラメータテーブルを補助情報として生成し、送信部27に供給する。
ステップS17において、送信部27は、6個のエンコーダ24から供給された合計6本の符号化ストリーム、および、テーブル生成部26から供給された補助情報を、配信サーバ13にアップロードする。
(配信サーバと再生装置の構成例)
図16は、図1の配信サーバ13と再生装置15の構成例を示すブロック図である。
配信サーバ13は、受信部101、ストレージ102、および、送受信部103により構成される。
受信部101は、図1の生成装置12からアップロードされた6本の符号化ストリーム、および、補助情報を受信し、ストレージ102に供給する。
ストレージ102は、受信部101から供給される6本の符号化ストリーム、および、補助情報を記憶する。
送受信部103は、再生装置15からの要求に応じて、ストレージ102に記憶されている補助情報を読み出し、ネットワーク14を介して再生装置15に送信する。
また、送受信部103は、再生装置15からの要求に応じて、ストレージ102に記憶されている6本の符号化ストリームのうちの所定の1本の符号化ストリームを読み出し、ネットワーク14を介して再生装置15に送信する。送受信部103が再生装置15に送信する1本の符号化ストリームは、再生装置15からの要求に応じて適宜変更される。
なお、送信する符号化ストリームの変更は、シンクポイントで行われる。従って、送信する符号化ストリームの変更は、数フレームから数十フレーム単位で行われる。また、上述したように、6本の符号化ストリームの間でシンクポイントは同一である。従って、送受信部103は、送信する符号化ストリームをシンクポイントで切り替えることにより、再生装置15において、再生する撮影画像の切り替えを容易に行うことができる。
再生装置15は、カメラ15A、送受信部121、デコーダ122、マッピング処理部123、回転計算部124、受け取り部125、視線検出部126、ストリーム判定部127、および、描画部128により構成される。
再生装置15の送受信部121(受け取り部)は、補助情報を、ネットワーク14を介して配信サーバ13に要求し、その要求に応じて配信サーバ13の送受信部103から送信されてくる補助情報を受け取る。送受信部121は、取得した補助情報をストリーム判定部127に供給する。
また、送受信部121には、配信サーバ13から取得可能な6本の符号化ストリームのうち、どの1本の符号化ストリームを取得するかを示すストリーム選択情報が、ストリーム判定部127から供給される。
送受信部121は、ストリーム選択情報に基づいて決定した1本の符号化ストリームを、ネットワーク14を介して配信サーバ13に要求し、その要求に応じて配信サーバ13の送受信部103から送信されてくる1本の符号化ストリームを受け取る。送受信部121は、取得した1本の符号化ストリームをデコーダ122に供給する。
デコーダ122(復号部)は、送受信部121から供給される符号化ストリームを復号し、所定の方向が高解像度に設定された全天球画像を生成する。生成された全天球画像は、配信サーバ13から取得可能な6本の符号化ストリームそれぞれの高解像度方向のうち、現時点の視聴者の視線方向に対して最も近い方向の高解像度方向を有する全天球画像となっている。デコーダ122は、生成した全天球画像をマッピング処理部123に供給する。
マッピング処理部123は、デコーダ122から供給される全天球画像を、3Dモデルとしての単位球の球面上にテクスチャとしてマッピングすることにより、3Dモデル画像を生成し、描画部128に供給する。
より具体的には、マッピング処理部123は、生成装置12のマッピング処理部23と同様に、デコーダ122から供給される全天球画像を、式(3)のベクトルqを用いた写像f”でマッピングするマッピング処理を実行する。マッピングにより得られた3Dモデル画像は、現時点の視聴者の視線方向に近い所定の方向が高解像度方向に設定された画像となっている。
回転計算部124は、送受信部121が受信する1本の符号化ストリームの高解像度方向を特定する情報を、ストリーム判定部127から取得し、高解像度方向に対応した回転情報を生成して、描画部128に供給する。
すなわち、配信サーバ13から取得する6本の符号化ストリームは、生成装置12の回転処理部22によって、3Dモデル座標系における同一(共通)の方向が高解像度方向となるように回転処理された後、マッピング処理が施されている。そのため、回転計算部124は、ストリーム判定部127から供給される高解像度方向を特定する情報に基づいて、3Dモデル座標系の本来の方向に戻すための回転情報を生成し、描画部128に供給する。
受け取り部125は、図1のジャイロセンサ16Bの検出結果をヘッドマウントディスプレイ16から受け取り、視線検出部126に供給する。
視線検出部126は、受け取り部125から供給されるジャイロセンサ16Bの検出結果に基づいて、3Dモデル座標系における視聴者の視線方向を決定し、ストリーム判定部127に供給する。また、視線検出部126は、カメラ15Aからマーカ16Aの撮影画像を取得し、その撮影画像に基づいて、3Dモデルの座標系における視聴位置を検出する。
また、視線検出部126は、3Dモデル座標系における視聴位置と視線方向に基づいて、3Dモデル座標系における視聴者の視野範囲を決定する。視線検出部126は、視聴者の視野範囲と視聴位置を、描画部128に供給する。
ストリーム判定部127には、送受信部121から補助情報が供給されるとともに、視線検出部126から視聴者の視線方向が供給される。
ストリーム判定部127(選択部)は、視聴者の視線方向、および、補助情報に基づいて、配信サーバ13から取得可能な6本の符号化ストリームのうちの、視聴者の視線方向に最も近い高解像度方向を有する符号化ストリームを決定(選択)する。すなわち、ストリーム判定部127は、視聴者の視野範囲に透視投影される画像の正面が高解像度となるような、1本の符号化ストリームを決定する。
ストリーム判定部127は、選択した符号化ストリームを示すストリーム選択情報を送受信部121に供給する。
また、ストリーム判定部127は、選択した符号化ストリームの高解像度方向を特定する情報を回転計算部124に供給する。具体的には、ストリーム判定部127は、選択した符号化ストリームに対応する補助情報の方位角θ、仰角φ、及び、回転角ψを、回転計算部124に供給する。回転計算部124は、ストリーム判定部127から供給される高解像度方向を特定する情報に基づいて、回転情報を生成する。
なお、ストリーム判定部127が、ストリーム選択情報を回転計算部124にも供給するようにして、回転計算部124が、取得したストリーム選択情報から、ストリーム判定部127が記憶する図12のパラメータテーブルを参照して、回転情報を生成するようにしてもよい。
描画部128は、マッピング処理部123から供給される3Dモデル画像を、視線検出部126から供給される視聴位置を焦点として、視聴者の視野範囲に透視投影することにより、視聴者の視野範囲の画像を表示画像として生成する。
図17を参照して、描画部128の処理について説明する。
図17のAは、マッピング処理部123から供給される3Dモデル画像の概念図であり、図17のBは、図17のAの単位球の原点を通る水平断面図である。
図17に示されるように、マッピング処理部123から供給される3Dモデル画像は、中心点141の単位球の球面142上に、写像f”のマッピング処理用の2次元テクスチャ画像が貼り付けられたものとなっている。単位球の中心点141は、視聴者の視聴位置(視点)に対応する。
マッピング処理部123から供給される3Dモデル画像は、単位球の球面142の所定の方向、例えば、矢印143で示される方向が高解像度方向となっている。この矢印143の方向は、2次元テクスチャ画像の画像中心の方向であり、6本の符号化ストリームに対応する6つの3Dモデル画像で共通な方向であるが、視聴者の視線方向とは無関係な方向である。
描画部128は、この3Dモデル画像を、回転計算部124から供給される回転情報に従って、回転させる。図17の例では、矢印143で示される方向の2次元テクスチャ画像が矢印144で示される方向に回転(移動)され、2次元テクスチャ画像の高解像度部分が、視聴者の視線方向145に近い方向となる。
すなわち、描画部128は、マッピング処理部123から供給される3Dモデル画像の高解像度部分が、図3の矢印dir1乃至dir6の本来の方向となるように、回転させる。ストリーム判定部127により選択された1本の符号化ストリームの高解像方向(矢印144で示される方向)は、6個の符号化ストリームの解像度方向に対応する矢印dir1乃至dir6のなかで、視聴者の視線方向145に対して一番近い方向となっている。
次に、描画部128は、視線検出部126から供給される視聴者の視野範囲と視聴位置に基づいて、回転後の3Dモデル画像を、視聴者の視野範囲146に透視投影する。これにより、視聴位置である中心点141から視聴者の視野範囲146を通して見える、単位球にマッピングされた画像が、表示画像として生成される。生成された表示画像は、ヘッドマウントディスプレイ16に供給される。
(再生装置の処理の説明)
図18は、図16の再生装置15による再生処理を説明するフローチャートである。この再生処理は、例えば、再生装置15において電源オンや処理開始操作が検出されたとき開始される。
初めに、ステップS31において、送受信部121は、配信サーバ13に補助情報を要求し、その要求に応じて配信サーバ13の送受信部103から送信されてくる補助情報を受け取る。送受信部121は、取得した補助情報をストリーム判定部127に供給する。
ステップS32において、受け取り部125は、図1のジャイロセンサ16Bの検出結果をヘッドマウントディスプレイ16から受け取り、視線検出部126に供給する。
ステップS33において、視線検出部126は、受け取り部125から供給されるジャイロセンサ16Bの検出結果に基づいて、3Dモデルの座標系における視聴者の視線方向を決定し、ストリーム判定部127に供給する。
ステップS34において、視線検出部126は、3Dモデルの座標系における視聴者の視聴位置と視野範囲を決定し、描画部128に供給する。より具体的には、視線検出部126は、カメラ15Aからマーカ16Aの撮影画像を取得し、その撮影画像に基づいて3Dモデルの座標系における視聴位置を検出する。そして、視線検出部126は、検出した視聴位置と視線方向に基づいて、3Dモデル座標系における視聴者の視野範囲を決定する。
ステップS35において、ストリーム判定部127は、視聴者の視線方向、および、補助情報に基づいて、配信サーバ13から取得可能な6本の符号化ストリームのなかから、1本の符号化ストリームを決定(選択)する。換言すれば、ストリーム判定部127は、6本の符号化ストリームのなかから、視聴者の視線方向に最も近い高解像度方向を有する符号化ストリームを決定(選択)する。そして、ストリーム判定部127は、選択した符号化ストリームを示すストリーム選択情報を送受信部121に供給する。
ステップS36において、ストリーム判定部127は、選択した符号化ストリームの高解像度方向を特定する情報を回転計算部124に供給する。
ステップS37において、回転計算部124は、ストリーム判定部127から供給される高解像度方向を特定する情報に基づいて、回転情報を生成し、描画部128に供給する。
ステップS38において、送受信部121は、ストリーム判定部127から供給されたストリーム選択情報に対応する1本の符号化ストリームを、ネットワーク14を介して配信サーバ13に要求し、その要求に応じて配信サーバ13の送受信部103から送信されてくる1本の符号化ストリームを受け取る。送受信部121は、取得した1本の符号化ストリームをデコーダ122に供給する。
ステップS39において、デコーダ122は、送受信部121から供給された符号化ストリームを復号し、所定の方向が高解像度に設定された全天球画像を生成し、マッピング処理部123に供給する。
ステップS36およびS37の処理と、ステップS38および39の処理の順番は逆でもよい。また、ステップS36およびS37の処理と、ステップS38および39の処理は、並行して実行することができる。
ステップS40において、マッピング処理部123は、デコーダ122から供給される全天球画像を、3Dモデルとしての単位球にテクスチャとしてマッピングすることにより、単位球の球面上に2次元テクスチャ画像が貼り付けられた3Dモデル画像を生成し、描画部128に供給する。
具体的には、マッピング処理部123は、式(3)のベクトルqを用いた写像f”のマッピング処理を実行し、デコーダ122から供給される全天球画像を単位球にマッピングする。
ステップS41において、描画部128は、マッピング処理部123から供給された3Dモデル画像を、回転計算部124から供給された回転情報に従って回転させる。
ステップS42において、描画部128は、視線検出部126から供給された視聴者の視野範囲と視聴位置に基づいて、回転後の3Dモデル画像を視聴者の視野範囲に透視投影することにより、表示画像を生成する。
ステップS43において、描画部128は、表示画像をヘッドマウントディスプレイ16に送信して表示させる。
ステップS44において、再生装置15は、再生を終了するかを判定する。例えば、再生装置15は、視聴者により再生を終了する操作が行われたとき、再生を終了すると判定する。
ステップS44で再生を終了しないと判定された場合、処理はステップS32に戻り、上述したステップS32乃至S44の処理が繰り返される。一方、ステップS44で再生を終了すると判定された場合、再生処理が終了される。
(第1の実施の形態の変形例)
図19乃至図21を参照して、上述した第1の実施の形態の変形例について説明する。
上述した第1の実施の形態では、再生装置15が、写像f”のマッピング処理を実行した全天球画像を配信サーバ13から取得して、3Dモデルとしての単位球にテクスチャとしてマッピングし、単位球の中心位置を視聴位置として、視聴者が視線方向を見たときの表示画像を生成した。
この写像f”のマッピング処理に対応する、式(3)のベクトルqを求める式は、ベクトルpに対してベクトルs(負のベクトルs)を加算する単なるベクトル加算である。このベクトルsの加算は、再生側において、ベクトルpの単位球の3Dモデルの視聴位置を移動する操作と同値となる。
すなわち、上述した再生処理は、再生装置15が、図19のAに示されるように、写像f”のマッピング処理用の全天球画像(2次元テクスチャ画像)61を、3Dモデルとしての単位球の球面142上に写像f”のマッピング処理により貼り付け、視聴者が単位球の中心点141から見る画像を表示画像として生成する処理である。
これに対して、図19のBに示されるように、再生装置15が、写像f”のマッピング処理用の全天球画像(2次元テクスチャ画像)61を、3Dモデルとしての単位球の球面142上に写像f’のマッピング処理により貼り付け、視聴者が、単位球の中心点141を所定量オフセットさせた位置141’(以下、オフセット視聴位置141’と称する。)から見る画像を表示画像として生成しても、同じ表示画像を生成することができる。
図20は、図19のBで示した再生処理(以下、視点移動による再生処理という。)における、図17に対応する再生時の3Dモデルと視点の関係を示している。
単位球の中心点141からオフセット視聴位置141’までのオフセット量が、式(3)のベクトルsに相当し、また、図12のパラメータテーブルの偏心率kに相当する。
再生装置15が、図19のBを参照して説明した視点移動による再生処理を実行する場合、回転計算部124は、ストリーム判定部127から取得した高解像度方向を特定する情報に基づく回転情報に加えて、パラメータテーブルの偏心率kに基づいてオフセット量を計算し、移動情報として、描画部128に供給する。
マッピング処理部123は、デコーダ122から供給される全天球画像を、式(2)のベクトルpを用いた写像f’のマッピング処理を実行し、その結果得られる3Dモデル画像を、描画部128に供給する。マッピングされた3Dモデル画像は、現時点の視聴者の視線方向に近い所定の方向が高解像度方向に設定された画像となっている。
描画部128は、マッピング処理部123から供給される3Dモデル画像を、回転計算部124から供給された回転情報に従って回転させ、かつ、視聴位置を、移動情報に従って単位球の中心からオフセットさせる。
そして、描画部128は、回転後の3Dモデル画像を、オフセット移動後の視聴位置から、視聴者の視野範囲に透視投影することにより、視聴者の視野範囲の画像を表示画像として生成する。
図21のAは、上述した視点移動による再生処理で描画した場合の、単位球の中心点141、オフセット視聴位置141’、及び、3Dモデルとしての単位球の球面142の位置関係を、図12のID1乃至ID6に対応する6本の符号化ストリームについて示した図である。
図21のAでは、ID1乃至ID6の6本の符号化ストリームの単位球の中心点141、オフセット視聴位置141’、及び、単位球の球面142が、それぞれ、中心点141乃至141、オフセット視聴位置141’乃至141’、及び、単位球の球面142乃至142で示されている。
なお、オフセット視聴位置141’および141’は、紙面に垂直な方向にあり、図示が省略されている。
図21のBは、視聴者の視聴位置であるオフセット視聴位置141’乃至141’を基準にして単位球の球面142乃至142を示した図である。
視聴者の視聴位置であるオフセット視聴位置141’乃至141’を基準にすると、平行移動処理が行われるため、単位球の球面142乃至142は全てずれた場所に位置する。
第1の実施の形態の基本形である図19のAの再生処理と比較した、図19のBで示した視点移動による再生処理のメリットは、2次元テクスチャ画像を3Dモデルとしての単位球へ貼り付ける処理を、6本の符号化ストリームごとに行わなくてもよい点である。
すなわち、単位球の中心点141からオフセット視聴位置141’までのオフセット量は、式(3)のベクトルsの長さ、および、図12のパラメータテーブルの偏心率kに相当するが、写像f’のマッピング処理は、式(2)のベクトルpの計算式から明らかなように、ベクトルsおよび偏心率kに依存しない。
したがって、写像f’のマッピング処理を実行して得られる3Dモデル画像を、偏心率kに相当するオフセット量だけ移動させる処理を行うだけで、6本の符号化ストリームの切替えが可能である。そのため、6本の符号化ストリームの切替えが必要となったとき、配信サーバ13に新たな符号化ストリームを要求することなく、再生装置15内だけで、符号化ストリームを切替えることができる。
<2.生成装置と再生装置のマッピング処理部の写像の向きについて>
ところで、生成装置12のマッピング処理部23に入力される画像は、図22に示されるように、正距円筒画像などの撮影画像であり、撮影画像上の位置は、視聴位置を基準とする方位角θと仰角φからなる視線方向で決定される。
生成装置12のマッピング処理部23が出力する画像は、3Dモデルとしての単位球の球面上に、単位球の中心からオフセット位置ベクトルsだけずれた位置から見るようにマッピングした2次元テクスチャ画像(偏心球面マッピング画像)であり、2次元テクスチャ画像上の位置は、U軸及びV軸の平面座標系で定義される。
一方、再生装置15のマッピング処理部123に入力される画像は、図23に示されるように、3Dモデルとしての単位球の球面上に、単位球の中心からオフセット位置ベクトルsだけずれた位置から見るようにマッピングした2次元テクスチャ画像(偏心球面マッピング画像)であり、2次元テクスチャ画像上の位置は、U軸及びV軸の平面座標系で定義される。
そして、再生装置15の描画部128が出力する画像は、3Dモデル画像を視聴者の視野範囲に透視投影した画像であり、視聴位置を基準とする方位角θと仰角φからなる視線方向で決定される。
従って、生成装置12のマッピング処理部23と、再生装置15のマッピング処理部123とで、入出力の座標系は逆となっており、基本的には逆方向の処理であるにもかかわらず、生成装置12のマッピング処理部23と、再生装置15のマッピング処理部123は、いずれも、写像f”のマッピング処理を実行している。このように、生成装置12のマッピング処理部23と、再生装置15のマッピング処理部123が、逆写像f”−1を使わずに処理できる理由について説明する。
生成装置12のマッピング処理部23は、出力する2次元テクスチャ画像の(u,v)座標をループさせ、2次元テクスチャ画像の1画素1画素について、入力された撮影画像のどの位置に相当するかを計算するバックワードマッピング(backward mapping)を行う。2次元の画像処理では、出力の画素値を1つずつ計算する処理が通常の処理である。
これに対して、再生装置15のマッピング処理部123は、入力された2次元テクスチャ画像の(u,v)座標をループさせ、2次元テクスチャ画像の1画素1画素について、(u,v)座標と3Dモデルの3次元座標位置(x,y,z)の情報に従って、3Dモデルの頂点を配置するフォワードマッピング(forward mapping)を行う。3次元CG処理では、モデルの頂点を3次元空間上に配置していく処理がよく行われ、フォワード処理で計算することができる。
従って、生成装置12側は、順方向処理をバックワードマッピングで処理し、再生装置15側は、逆方向処理をフォワードマッピングで処理するため、使っている写像が一致する。これにより、写像f”だけを使って実装することができる。
<3.第2の実施の形態>
(第2の実施の形態の構成例)
次に、本開示を適用した配信システムの第2の実施の形態について説明する。
なお、第2の実施の形態については、上述した第1の実施の形態と異なる部分についてのみ説明する。
第2の実施の形態に係る配信システム10の生成装置12は、マッピング処理部23の一部が、上述した第1の実施の形態と異なる。そのため、生成装置12については、マッピング処理部23についてのみ説明する。
図24は、第2の実施の形態に係るマッピング処理部23の構成例を示すブロック図である。
図24のマッピング処理部23は、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部161により構成される。したがって、図4に示した第1の実施の形態に係るマッピング処理部23と比較すると、マッピング補正部161のみが異なり、全天球マッピング座標生成部41、および、ベクトル正規化部42については、第1の実施の形態と同様である。
換言すれば、図25に示されるように、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部161を合わせて行われる写像を写像gと定義すると、全天球マッピング座標生成部41単独で行われる写像f、及び、全天球マッピング座標生成部41とベクトル正規化部42を合わせて行われる写像f’については、第1の実施の形態と同様であり、マッピング補正部161を含めた写像gが、第1の実施の形態における写像f”と異なる。
図26のAは、全天球マッピング座標生成部41単独で行われる写像fに対応するベクトルdを示している。
図26のBは、全天球マッピング座標生成部41とベクトル正規化部42を合わせて行われる写像f’に対応するベクトルpを示している。
図26のCは、全天球マッピング座標生成部41、ベクトル正規化部42、および、マッピング補正部161を合わせて行われる写像gに対応するベクトルqを示している。
第2の実施の形態におけるオフセット位置ベクトルをベクトルsとすると、写像gに対応するベクトルqは、以下の式(4)で表される。
Figure 2019003889
ベクトルqは、オフセット位置ベクトルsからベクトルpの方向に直線を伸ばした直線と単位球面との交点へ、単位球の中心から向かうベクトルである。
ここで、ベクトルqは、単位球の球面上の点であるため、式(5)の条件を満たす。
Figure 2019003889
また、ベクトルpの方向と同一方向に伸ばした直線と単位球面との交点であるため、パラメータtは、以下を満たす。
t>0 ・・・・・・・・(6)
したがって、式(4)のベクトルqは、正の定数倍したベクトルpに、オフセット位置ベクトルsを加算することにより得られる。
式(5)に式(4)を代入することにより、式(7)となり、
Figure 2019003889
式(8)のtに関する2次方程式が得られる。
Figure 2019003889
式(8)のtに関する2次方程式におけるtの係数、tの係数、及び、定数項を、
Figure 2019003889
と置くと、2次方程式の解の公式から、以下のように、tが求まる。
Figure 2019003889
tが求まれば、式(4)によりベクトルqが求まるので、ベクトルqを用いた写像gのマッピング処理を実行することができる。
図27は、全天球マッピング座標生成部41による全天球画像処理、ベクトル正規化部42による正規化処理、および、マッピング補正部161によるマッピング補正処理が一体となった写像gのマッピング処理による2次元テクスチャ画像と、単位球の3Dモデルとの対応関係を示す図である。
図27は、第1の実施の形態における図11に対応する図であるが、式(3)のベクトルqと式(4)のベクトルqとの違いにより、2次元テクスチャ画像の歪み具合が図11とは少し異なる。
(生成装置の処理の説明)
第2の実施の形態における生成装置12の生成処理は、第1の実施の形態において、図15のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
ただし、第2の実施の形態の生成処理では、ステップS14において、式(3)のベクトルqを用いて写像f”のマッピング処理を実行する代わりに、式(4)のベクトルqを用いて写像gのマッピング処理を実行する処理が行われる。
(再生装置の説明)
第2の実施の形態に係る配信システム10の再生装置15について説明する。
第2の実施の形態に係る配信システム10の再生装置15も、マッピング処理部123の一部が、上述した第1の実施の形態と異なる。
第1の実施の形態におけるマッピング処理部123が、第1の実施の形態における生成装置12のマッピング処理部23と同様の構成を有していたのと同様に、第2の実施の形態に係るマッピング処理部123は、第2の実施の形態における生成装置12のマッピング処理部23と同様の構成を有する。
すなわち、第2の実施の形態に係るマッピング処理部123は、図24で示したマッピング処理部23と同一の構成を有し、式(4)のベクトルqを用いた写像gのマッピング処理を実行する。
(再生装置の処理の説明)
第2の実施の形態における再生装置15の再生処理は、第1の実施の形態において、図18のフローチャートを参照して説明した処理と同様であるので、その説明は省略する。
ただし、第2の実施の形態の再生処理では、ステップS40において、式(3)のベクトルqを用いて写像f”のマッピング処理を実行する代わりに、式(4)のベクトルqを用いて写像gのマッピング処理を実行する処理が行われる。
なお、第2の実施の形態で採用する式(4)のベクトルqは、単なる固定ベクトルの加算ではないため、第1の実施の形態において変形例として説明した視点移動による再生処理は適用できない。
<4.偏心率kと解像度向上率との関係>
第1及び第2の実施の形態それぞれにおける偏心率kと解像度向上率との関係について説明する。
図28は、第1の実施の形態における偏心率kと解像度向上率との関係を説明する図である。
第1の実施の形態において、最も高解像度になる点は、ベクトルsと逆方向の球面から最も遠い点となり、距離は(1+k)となるため、三角形の相似関係から、解像度向上率をμとすると、解像度向上率μはμ=(1+k)となる。偏心率kの取り得る値は、0≦k<1であるので、解像度向上率μの取り得る値は1≦k<2である。
図29は、第2の実施の形態における偏心率kと解像度向上率との関係を説明する図である。
第2の実施の形態において、最も高解像度になる点は、ベクトルsと同方向の球面に最も近い点となり、距離は(1−k)となるため、解像度向上率をμとすると、解像度向上率μは式(10)で表される。偏心率kの取り得る値は、0≦k<1であるので、解像度向上率μは1から無限大まで取り得る。
Figure 2019003889
図30は、第1の実施の形態における偏心率kを、k=0.5、0.75、および0.9としたときの2次元テクスチャ画像の例を示している。
偏心率kを、k=0.5から0.9に変化させるに従って、解像度は上がるが、2倍よりは高くならない。
図31は、第2の実施の形態における偏心率kを、k=0.5、0.75、および0.9としたときの2次元テクスチャ画像の例を示している。
偏心率kを、k=0.5から0.9に変化させるに従って、解像度は極端に大きくなっていく。
<5.第1の実施の形態と第2の実施の形態の違い>
図32乃至図34を参照して、第1の実施の形態と第2の実施の形態のマッピング処理の違いを説明する。
図32は、第1の実施の形態におけるマッピング処理の概念図である。
マッピング処理部23は、全天球マッピング座標生成部41が発生させたベクトルを、単位球の球面上に配置されるように正規化した後、オフセット位置ベクトルsを加算するマッピング補正を行う。2次元テクスチャ画像が貼り付けられた単位球の3Dモデルを、オフセット位置ベクトルsだけずれた視点から見る操作で再生が可能となる。正面となる右方向で密度が最も高くなり、左方向で密度が最も低くなる。
図33は、第2の実施の形態におけるマッピング処理の概念図である。
マッピング処理部23は、単位球の中心からオフセット位置ベクトルsだけずれた位置から、全天球マッピング座標生成部41が発生させたベクトルの延長直線と、球面が交わる位置を、新しいマッピング座標とする計算で、マッピング補正を行う。2次元テクスチャ画像が貼り付けられた単位球の3Dモデルを、単位球の中心から見る操作で再生が可能となる。正面となる右方向で密度が最も高くなり、左方向で密度が最も低くなる。
第1の実施の形態におけるマッピング処理は、図34のAに示されるように、マッピング補正の有無で、球面上の画素位置(マッピング位置)は変わらず、見る位置が変化する。球面上の画素位置は等間隔である。正面となる右方向で密度が最も高くなり、左方向で密度が最も低くなる。
これに対して、第2の実施の形態におけるマッピング処理は、図34のBに示されるように、マッピング補正の有無で、見る位置は変わらず、球面上の画素位置(マッピング位置)が変化する。球面上の画素位置は等間隔ではない。正面となる右方向で密度が最も高くなり、左方向で密度が最も低くなる。
図35は、3Dモデルとして、単位球ではなく、キューブモデルを採用し、本技術と同様に、2次元テクスチャ画像が貼り付けられた立方体の3Dモデルを、オフセット位置ベクトルsだけずれた視点から見る操作で、方向によって解像度に変化を付けた例を示している。
3Dモデルとして、キューブモデルを採用した場合、図35に示されるように、キューブモデル自体のもつ歪みにより、正面方向が、画素密度の最も高い方向とならない。これに対して、配信システム10によれば、単位球の3Dモデルにマッピングすることにより、正面方向を常に画素密度の最も高い方向とすることができる。
<6.第1の実施の形態と第2の実施の形態の組み合わせ>
第1の実施の形態と第2の実施の形態のマッピング処理は、上述したようにそれぞれ独立して実行してもよいし、両方のマッピング処理を組み合わせて実行することも可能である。第1の実施の形態と第2の実施の形態の両方のマッピング処理を実行する構成を第3の実施の形態と呼ぶことにする。
図36のAは、図7のCと同様の、第1の実施の形態における写像f”に対応するベクトルqを示している。
図36のBは、図26のCと同様の、第2の実施の形態における写像gに対応するベクトルqを示している。
図36のCは、第3の実施の形態における写像hに対応するベクトルqを示している。
ベクトルqは、第1の実施の形態における式(3)のベクトルpを、第2の実施の形態における式(4)のベクトルqに置き換えた式(11)で表される。
Figure 2019003889
式(4)のベクトルqは、式(5)で示した通り正規化されているため、式(2)に相当する正規化処理を行う必要はない。
この式(11)のベクトルqを、式(4)を使って展開すると、式(12)となる。
Figure 2019003889
式(12)におけるtは、式(4)のtと同じ値で、式(9)の2次方程式から求められる。tが求まれば、式(12)によりベクトルqが求まるので、ベクトルqを用いた写像hのマッピング処理を実行することができる。
図37は、第3の実施の形態におけるマッピング処理の概念図である。
マッピング処理部23は、第2の実施の形態と同じように、単位球の中心からオフセット位置ベクトルsだけずれた位置から、全天球マッピング座標生成部41が発生させたベクトルの延長直線と、球面が交わる位置を、新しいマッピング座標とする計算で、マッピング補正を行う。そして、2次元テクスチャ画像が貼り付けられた単位球の3Dモデルを、第1の実施の形態と同じように、オフセット位置ベクトルsだけずれた視点から見る操作で再生が可能となる。
<7.まとめ>
本開示の配信システム10によれば、生成装置12で生成され、配信サーバ13から伝送される1本の符号化ストリームの画像は、上下左右全方位の360度を見回しに対応した全方向の画像であり、かつ、視聴者の視線方向に対応する方向(正面方向)が高解像度に設定された画像である。これにより、視野周辺部や急な振り向き時に描画可能な画像を確保しつつ、正面方向の画質を向上させた画像を視聴者に提示することができる。全方向で解像度(画素密度)が均一な全天球画像を配信する配信システムと比べ、同じ帯域で視聴方向側が高画質な画像を視聴者に提示することができる。
正面方向に対応する所定の方向が高解像度に設定された全天球画像を生成する生成装置12では、全方向で解像度が均一な全天球画像を配信する場合の全天球マッピング座標生成部41に加えて、ベクトル正規化部42、および、マッピング補正部43が新たに設けられる。
ベクトル正規化部42は、全天球マッピング座標生成部41で採用した所定の3Dモデル(本実施の形態では、正八面体モデル)に対応するベクトルdを、単位球の3Dモデルのベクトルpに変換(正規化)する。
マッピング補正部43は、ベクトル正規化部42によって正規化されたベクトルpに所定のオフセット位置ベクトルsを加算する演算により、単位球の3Dモデルの補正を行う。
一般の全天球用マッピングには、キューブマッピングのように中心からの距離が一定でない3Dモデルで定義されるものもあり、3Dモデルの形状に依存せずに一定の解像度補正を行うことが難しかった。
生成装置12では、全天球マッピング座標生成部41で採用される所定の3Dモデルをベクトル正規化部42で単位球の3Dモデルに一旦変換するので、全天球用マッピングとして任意の3Dモデルに対応することができる。すなわち、どのような全天球用マッピングに対しても、特定の方向が高解像度となるような全天球画像を生成することができる。また、常に同じ単位球上での処理となるので、マッピング補正部43による補正の効果が一定となる。
したがって、配信システム10によれば、任意のマッピング手法に適用可能で、視聴方向を高解像度に設定したマッピングを提供することができる。
マッピング補正部43によって加算されるオフセット位置ベクトルsの長さに相当する偏心率kによって、正面方向の解像度向上率を無段階に設定することができ、再生側装置や撮影条件等に応じて自由に設定が可能となる。
また、偏心率kを所定の値(0)に設定すると、補正処理が行われない状態、即ち、全方向で解像度が均一な全天球画像を配信するシステムと同じになり、全方向で解像度が均一な全天球画像を配信する配信システムとの互換性を有することができる。
再生装置15においても、生成装置12のマッピング処理部23と同様の構成を有するマッピング処理部123を備えるので、上記と同様の作用効果を有する。
第1の実施の形態では、マッピング補正されたベクトルqを求める式が、ベクトルpに対する単なるベクトル加算で表現される特性から、正面方向に対応する符号化ストリームの切替えが発生したとき、偏心率kに相当するオフセット量だけ移動させる処理を行う再生装置15内の処理だけで対応することも可能である。
第2の実施の形態では、高解像度方向の解像度向上率μを無限大まで設定可能である。
<8.変形例>
上述した第1乃至第3の実施の形態に共通に適用できる変形例について説明する。
(符号化ストリームの他の第1の例)
上述した第1乃至第3の実施の形態では、配信サーバ13に保存される符号化ストリームの本数が6本である場合について説明したが、符号化ストリームの本数は、6本に限定されない。例えば、12本や24本など、6本より多くの高解像度方向に対応する符号化ストリームを配信サーバ13にアップロードし、視聴者の視線方向に対して、より細かく符号化ストリームを切り替えるようにしてもよい。
逆に、6本より少ない高解像度方向に対応する符号化ストリームを配信サーバ13にアップロードする構成も取り得る。
例えば、全天球画像がコンサート会場を撮影した撮影画像から生成された全天球画像であるような場合、視聴者にとって重要であると想定されるステージ方向とその近傍のみに対して高解像度方向を有する3本の符号化ストリームを配信サーバ13に用意し、その他の方向(例えば、ステージ方向と反対方向)が視聴者の視線方向となった場合には、全方向に均等な画素密度を有する1本の符号化ストリームを選択する構成とすることができる。
この場合、テーブル生成部26は、図38に示されるパラメータテーブルを、補助情報として生成する。
ID1乃至ID3に対応する3本の符号化ストリームは、所定の方向が高解像度方向に設定された符号化ストリームであり、ID4に対応する1本の符号化ストリームは、視聴者の視線方向がID1乃至ID3の符号化ストリームに対応する方向以外になったときに選択される、全方向に均等な画素密度を有する全天球画像の符号化ストリームである。
(符号化ストリームの他の第2の例)
上述した第1乃至第3の実施の形態では、配信サーバ13に保存される符号化ストリームの偏心率kが0.5の1種類のみ保存される例について説明したが、複数種類の偏心率kごとに、複数本の符号化ストリームを保存してもよい。例えば、k=0.2,0.5,0.7の3種類の偏心率kについて、上述した6本の符号化ストリームを生成、保存してもよい。この場合、例えば、再生装置15は、ヘッドマウントディスプレイ16の視野角に応じて適切な偏心率kの符号化ストリームを選択し、配信サーバ13に要求することができる。
(符号化ストリームの他の第3の例)
上述した実施の形態において、符号化ストリームとして伝送する全天球画像は、視聴者の右目と左目に同一の画像を表示する2D画像用の全天球画像であったが、左目用の全天球画像と右目用の全天球画像を合成(パッキング)した3D画像用の全天球画像であってもよい。
具体的には、図39のAに示すように、全天球画像は、例えば、左目用の全天球画像421と右目用の全天球画像422が横方向(水平方向)にパッキングされたパッキング画像420であってもよい。
また、図39のBに示すように、全天球画像は、例えば、左目用の全天球画像421と右目用の全天球画像422が縦方向(垂直方向)にパッキングされたパッキング画像440であってもよい。
左目用の全天球画像421は、球にマッピングされた左目用の視点の全天球画像を球の中心を焦点として、左目の視野範囲に透視投影することにより得られる画像である。また、右目用全天球画像422は、球にマッピングされた右目用の視点の全天球画像を球の中心を焦点として、右目の視野範囲に透視投影することにより得られる画像である。
全天球画像がパッキング画像である場合、図16のマッピング処理部123は、デコーダ122による復号の結果得られるパッキング画像を左目用の全天球画像と右目用の全天球画像に分離する。そして、マッピング処理部123は、左目用の視点および右目用の視点のそれぞれについて3Dモデル画像を生成し、描画部128は、左目用の視点および右目用の視点のそれぞれについて、3Dモデル画像を用いて表示画像を生成する。
これにより、ヘッドマウントディスプレイ16は、3D表示可能である場合、左目用の視点および右目用の視点の表示画像を、それぞれ、左目用の画像、右目用の画像として表示することにより、表示画像を3D表示することができる。
(ライブ配信の例)
上述した各実施の形態では、生成装置12が生成した複数本の符号化ストリームおよび補助情報が、一度、配信サーバ13のストレージ102に記憶され、再生装置15からの要求に応じて、配信サーバ13が、符号化ストリームおよび補助情報を再生装置15に送信するようにした。
しかしながら、生成装置12によって生成された1本以上の符号化ストリームおよび補助情報が、配信サーバ13のストレージ102に記憶されることなく、リアルタイム配信(ライブ配信)されるようにしてもよい。この場合、配信サーバ13の受信部101で受信されたデータが、即座に送受信部103から再生装置15に送信される。
(その他)
さらに、上述した実施の形態では、撮影画像は動画像であるものとしたが、静止画像であってもよい。また、上述した実施の形態では、全天球画像を用いた例で説明したが、本開示に係る技術は、全天球画像の他、全天周画像、全方位画像、360度パノラマ画像などを含む、360度(全方位)を撮影した360度画像全般に適用することができる。
配信システム10は、ヘッドマウントディスプレイ16の代わりに、設置型ディスプレイを有するようにしてもよい。この場合、再生装置15はカメラ15Aを有さず、視聴位置および視線方向は、視聴者が、再生装置15または設置型ディスプレイと接続するコントローラを操作することにより入力される。
また、配信システム10は、再生装置15とヘッドマウントディスプレイ16の代わりに、モバイル端末を有するようにしてもよい。この場合、モバイル端末は、カメラ15A以外の再生装置15の処理を行い、モバイル端末が有するディスプレイに表示画像を表示させる。視聴者は、視聴位置および視線方向をモバイル端末の姿勢を変化させることにより入力し、モバイル端末は、内蔵するジャイロセンサにモバイル端末の姿勢を検出させることにより、入力された視聴位置および視線方向を取得する。
<9.コンピュータ構成例>
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図40は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータ900において、CPU(Central Processing Unit)901,ROM(Read Only Memory)902,RAM(Random Access Memory)903は、バス904により相互に接続されている。
バス904には、さらに、入出力インタフェース905が接続されている。入出力インタフェース905には、入力部906、出力部907、記憶部908、通信部909、及びドライブ910が接続されている。
入力部906は、キーボード、マウス、マイクロフォンなどよりなる。出力部907は、ディスプレイ、スピーカなどよりなる。記憶部908は、ハードディスクや不揮発性のメモリなどよりなる。通信部909は、ネットワークインタフェースなどよりなる。ドライブ910は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア911を駆動する。
以上のように構成されるコンピュータ900では、CPU901が、例えば、記憶部908に記憶されているプログラムを、入出力インタフェース905及びバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ900(CPU901)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア911に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータ900では、プログラムは、リムーバブルメディア911をドライブ910に装着することにより、入出力インタフェース905を介して、記憶部908にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部909で受信し、記憶部908にインストールすることができる。その他、プログラムは、ROM902や記憶部908に、あらかじめインストールしておくことができる。
なお、コンピュータ900が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
<10.応用例>
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械(トラクター)などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
図41は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム7000の概略的な構成例を示すブロック図である。車両制御システム7000は、通信ネットワーク7010を介して接続された複数の電子制御ユニットを備える。図41に示した例では、車両制御システム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を備える。図41では、統合制御ユニット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は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
ここで、図42は、撮像部7410及び車外情報検出部7420の設置位置の例を示す。撮像部7910,7912,7914,7916,7918は、例えば、車両7900のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部7910及び車室内のフロントガラスの上部に備えられる撮像部7918は、主として車両7900の前方の画像を取得する。サイドミラーに備えられる撮像部7912,7914は、主として車両7900の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部7916は、主として車両7900の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部7918は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
なお、図42には、それぞれの撮像部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は、主として先行車両、歩行者又は障害物等の検出に用いられる。
図41に戻って説明を続ける。車外情報検出ユニット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は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図41の例では、出力装置として、オーディオスピーカ7710、表示部7720及びインストルメントパネル7730が例示されている。表示部7720は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部7720は、AR(Augmented Reality)表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ7610が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
なお、図41に示した例において、通信ネットワーク7010を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム7000が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク7010を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク7010を介して相互に検出情報を送受信してもよい。
なお、上述した配信システム10の各機能を実現するためのコンピュータプログラムを、いずれかの制御ユニット等に実装することができる。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体を提供することもできる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリ等である。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信されてもよい。
以上説明した車両制御システム7000に、上述した配信システム10を適用する場合、例えば、配信システム10の撮影装置11は、撮像部7410の少なくとも一部に相当する。また、生成装置12、配信サーバ13、再生装置15は一体化され、マイクロコンピュータ7610と記憶部7690に相当する。ヘッドマウントディスプレイ16は、表示部7720に相当する。なお、配信システム10を統合制御ユニット7600に適用する場合、ネットワーク14、カメラ15A、マーカ16A,およびジャイロセンサ16Bは設けられず、視聴者である搭乗者の入力部7800の操作により視聴者の視線方向および視聴位置が入力される。以上のようにして、配信システム10を、図41に示した応用例の統合制御ユニット7600に適用することにより、全天球画像を用いて生成される視線方向の表示画像の画質を高画質(高解像度)にすることができる。
また、配信システム10の少なくとも一部の構成要素は、図41に示した統合制御ユニット7600のためのモジュール(例えば、一つのダイで構成される集積回路モジュール)において実現されてもよい。あるいは、配信システム10が、図41に示した車両制御システム7000の複数の制御ユニットによって実現されてもよい。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
また、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本開示は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本開示は以下のような構成も取ることができる。
(1)
360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部
を備える生成装置。
(2)
変換された前記単位球の3Dモデルの第2のベクトルに、所定のオフセット位置ベクトルを加算する補正部をさらに備える
前記(1)に記載の生成装置。
(3)
前記補正部は、前記第2のベクトルに、負の前記オフセット位置ベクトルを加算する
前記(2)に記載の生成装置。
(4)
前記補正部は、正の定数倍した前記第2のベクトルに、前記オフセット位置ベクトルを加算する
前記(2)に記載の生成装置。
(5)
前記第1のベクトルを生成する生成部をさらに備える
前記(1)乃至(4)のいずれかに記載の生成装置。
(6)
前記360度画像に変換される撮影画像を、所定の方向が画像中心となるように回転する回転処理部をさらに備える
前記(1)乃至(5)のいずれかに記載の生成装置。
(7)
前記360度画像に対して高解像度に設定される方向である高解像度方向が複数あり、
前記正規化部は、高解像度方向の個数に対応する数だけ設けられるように構成される
前記(1)乃至(6)のいずれかに記載の生成装置。
(8)
前記360度画像に対して高解像度に設定される方向である高解像度方向の高解像度向上率を決定する設定部をさらに備える
前記(1)乃至(7)のいずれかに記載の生成装置。
(9)
前記360度画像に対して高解像度に設定される方向である高解像度方向を特定する情報を生成する設定部をさらに備える
前記(1)乃至(8)のいずれかに記載の生成装置。
(10)
360度画像をマッピングする所定の3Dモデルの第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する
ステップを含む生成方法。
(11)
他の装置で生成された360度画像を受け取る受け取り部と、
前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部と
を備える再生装置。
(12)
変換された前記単位球の3Dモデルの第2のベクトルに、所定のオフセット位置ベクトルを加算する補正部をさらに備える
前記(11)に記載の再生装置。
(13)
前記補正部は、前記第2のベクトルに、負の前記オフセット位置ベクトルを加算する
前記(12)に記載の再生装置。
(14)
前記補正部は、正数倍した前記第2のベクトルに、前記オフセット位置ベクトルを加算する
前記(12)に記載の再生装置。
(15)
前記第1のベクトルを生成する生成部をさらに備える
前記(11)乃至(14)のいずれかに記載の再生装置。
(16)
視聴者の視線方向に応じて、高解像度方向が異なる複数の360度画像のなかから、1つの360度画像を選択する選択部をさらに備え、
前記受け取り部は、前記選択部によって選択された前記360度画像を、前記他の装置がから受け取る
前記(11)乃至(15)のいずれかに記載の再生装置。
(17)
前記360度画像の高解像度方向を特定する情報に基づいて、前記360度画像の回転情報を生成する回転計算部をさらに備える
前記(11)乃至(16)のいずれかに記載の再生装置。
(18)
前記単位球の3Dモデルの第2のベクトルに従って前記360度画像がマッピングされた3Dモデル画像を前記回転情報に基づいて回転させ、視聴者の視野範囲に透視投影することにより、表示画像を生成する描画部をさらに備える
前記(17)に記載の再生装置。
(19)
前記回転計算部は、前記単位球の中心からのオフセット量を移動情報として計算し、
前記描画部は、前記3Dモデル画像を前記回転情報に基づいて回転させ、かつ、視聴位置を前記移動情報に従ってオフセットさせ、オフセット移動後の視聴位置から、視聴者の視野範囲に透視投影することにより、表示画像を生成する
前記(18)に記載の再生装置。
(20)
他の装置で生成された360度画像を受け取り、
前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する
ステップを含む再生方法。
10 配信システム, 11 撮影装置, 12 生成装置, 13 配信サーバ, 15 再生装置, 16 ヘッドマウントディスプレイ, 22−1乃至22−6 回転処理部, 23−1乃至23−6 マッピング処理部, 24−1乃至24−6 エンコーダ, 25 設定部, 26 テーブル生成部, 41 全天球マッピング座標生成部, 42 ベクトル正規化部, 43 マッピング補正部, 122 デコーダ, 123 マッピング処理部, 124 回転計算部, 125 受け取り部, 126 視線検出部, 127 ストリーム判定部, 128 描画部, 900 コンピュータ, 901 CPU, 902 ROM, 903 RAM, 906 入力部, 907 出力部, 908 記憶部, 909 通信部, 910 ドライブ

Claims (20)

  1. 360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部
    を備える生成装置。
  2. 変換された前記単位球の3Dモデルの第2のベクトルに、所定のオフセット位置ベクトルを加算する補正部をさらに備える
    請求項1に記載の生成装置。
  3. 前記補正部は、前記第2のベクトルに、負の前記オフセット位置ベクトルを加算する
    請求項2に記載の生成装置。
  4. 前記補正部は、正の定数倍した前記第2のベクトルに、前記オフセット位置ベクトルを加算する
    請求項2に記載の生成装置。
  5. 前記第1のベクトルを生成する生成部をさらに備える
    請求項1に記載の生成装置。
  6. 前記360度画像に変換される撮影画像を、所定の方向が画像中心となるように回転する回転処理部をさらに備える
    請求項1に記載の生成装置。
  7. 前記360度画像に対して高解像度に設定される方向である高解像度方向が複数あり、
    前記正規化部は、高解像度方向の個数に対応する数だけ設けられるように構成される
    請求項1に記載の生成装置。
  8. 前記360度画像に対して高解像度に設定される方向である高解像度方向の高解像度向上率を決定する設定部をさらに備える
    請求項1に記載の生成装置。
  9. 前記360度画像に対して高解像度に設定される方向である高解像度方向を特定する情報を生成する設定部をさらに備える
    請求項1に記載の生成装置。
  10. 360度画像をマッピングする所定の3Dモデルの第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する
    ステップを含む生成方法。
  11. 他の装置で生成された360度画像を受け取る受け取り部と、
    前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する正規化部と
    を備える再生装置。
  12. 変換された前記単位球の3Dモデルの第2のベクトルに、所定のオフセット位置ベクトルを加算する補正部をさらに備える
    請求項11に記載の再生装置。
  13. 前記補正部は、前記第2のベクトルに、負の前記オフセット位置ベクトルを加算する
    請求項12に記載の再生装置。
  14. 前記補正部は、正数倍した前記第2のベクトルに、前記オフセット位置ベクトルを加算する
    請求項12に記載の再生装置。
  15. 前記第1のベクトルを生成する生成部をさらに備える
    請求項11に記載の再生装置。
  16. 視聴者の視線方向に応じて、高解像度方向が異なる複数の360度画像のなかから、1つの360度画像を選択する選択部をさらに備え、
    前記受け取り部は、前記選択部によって選択された前記360度画像を、前記他の装置がから受け取る
    請求項11に記載の再生装置。
  17. 前記360度画像の高解像度方向を特定する情報に基づいて、前記360度画像の回転情報を生成する回転計算部をさらに備える
    請求項11に記載の再生装置。
  18. 前記単位球の3Dモデルの第2のベクトルに従って前記360度画像がマッピングされた3Dモデル画像を前記回転情報に基づいて回転させ、視聴者の視野範囲に透視投影することにより、表示画像を生成する描画部をさらに備える
    請求項17に記載の再生装置。
  19. 前記回転計算部は、前記単位球の中心からのオフセット量を移動情報として計算し、
    前記描画部は、前記3Dモデル画像を前記回転情報に基づいて回転させ、かつ、視聴位置を前記移動情報に従ってオフセットさせ、オフセット移動後の視聴位置から、視聴者の視野範囲に透視投影することにより、表示画像を生成する
    請求項18に記載の再生装置。
  20. 他の装置で生成された360度画像を受け取り、
    前記360度画像を所定の3Dモデルにマッピングする第1のベクトルを、単位球の3Dモデルの第2のベクトルに変換する
    ステップを含む再生方法。
JP2019526767A 2017-06-26 2018-06-12 生成装置および生成方法、並びに、再生装置および再生方法 Active JP7095697B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017123934 2017-06-26
JP2017123934 2017-06-26
PCT/JP2018/022303 WO2019003889A1 (ja) 2017-06-26 2018-06-12 生成装置および生成方法、並びに、再生装置および再生方法

Publications (2)

Publication Number Publication Date
JPWO2019003889A1 true JPWO2019003889A1 (ja) 2020-04-23
JP7095697B2 JP7095697B2 (ja) 2022-07-05

Family

ID=64741470

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019526767A Active JP7095697B2 (ja) 2017-06-26 2018-06-12 生成装置および生成方法、並びに、再生装置および再生方法

Country Status (6)

Country Link
US (1) US20200137417A1 (ja)
EP (1) EP3648064A4 (ja)
JP (1) JP7095697B2 (ja)
KR (1) KR20200019876A (ja)
CN (1) CN110770795A (ja)
WO (1) WO2019003889A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339627B2 (en) 2016-10-10 2019-07-02 Gopro, Inc. Apparatus and methods for the optimal stitch zone calculation of a generated projection of a spherical image
JP2020109926A (ja) * 2019-01-07 2020-07-16 株式会社オリィ研究所 ロボット制御装置、ロボット制御方法、ロボット制御プログラム及びロボット制御システム
JP2020135162A (ja) * 2019-02-15 2020-08-31 日本電気株式会社 マッピング装置、マッピング方法およびコンピュータプログラム
WO2022149189A1 (ja) * 2021-01-05 2022-07-14 日本電信電話株式会社 配信制御装置、配信制御システム、配信制御方法、及びプログラム
WO2023079623A1 (ja) * 2021-11-04 2023-05-11 株式会社ソニー・インタラクティブエンタテインメント 画像表示システム、画像送信装置、表示制御装置、および画像表示方法
US11928830B2 (en) 2021-12-22 2024-03-12 Honeywell International Inc. Systems and methods for generating three-dimensional reconstructions of environments

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10243310A (ja) * 1996-10-16 1998-09-11 He Holdings Inc Dba Hughes Electron 多使用者の実時間のリアリティの強調されたシステムおよびその方法
JP2003141562A (ja) * 2001-10-29 2003-05-16 Sony Corp 非平面画像の画像処理装置及び画像処理方法、記憶媒体、並びにコンピュータ・プログラム
JP2005283704A (ja) * 2004-03-29 2005-10-13 Hitachi Ltd 映像表示システム及び映像生成方法
WO2016140083A1 (ja) * 2015-03-05 2016-09-09 ソニー株式会社 画像処理装置および画像処理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6075889B2 (ja) 2014-06-10 2017-02-08 日本電信電話株式会社 映像配信装置及び映像再生装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10243310A (ja) * 1996-10-16 1998-09-11 He Holdings Inc Dba Hughes Electron 多使用者の実時間のリアリティの強調されたシステムおよびその方法
JP2003141562A (ja) * 2001-10-29 2003-05-16 Sony Corp 非平面画像の画像処理装置及び画像処理方法、記憶媒体、並びにコンピュータ・プログラム
JP2005283704A (ja) * 2004-03-29 2005-10-13 Hitachi Ltd 映像表示システム及び映像生成方法
WO2016140083A1 (ja) * 2015-03-05 2016-09-09 ソニー株式会社 画像処理装置および画像処理方法

Also Published As

Publication number Publication date
EP3648064A1 (en) 2020-05-06
US20200137417A1 (en) 2020-04-30
KR20200019876A (ko) 2020-02-25
EP3648064A4 (en) 2020-06-03
JP7095697B2 (ja) 2022-07-05
WO2019003889A1 (ja) 2019-01-03
CN110770795A (zh) 2020-02-07

Similar Documents

Publication Publication Date Title
JP6977720B2 (ja) 生成装置および生成方法、並びに、再生装置および再生方法
JP7127539B2 (ja) 画像処理装置および画像処理方法
JP7095697B2 (ja) 生成装置および生成方法、並びに、再生装置および再生方法
WO2018021067A1 (ja) 画像処理装置および画像処理方法
WO2018150933A1 (ja) 画像処理装置および画像処理方法
JP6988815B2 (ja) 画像処理装置および画像処理方法
JP7040466B2 (ja) 画像処理装置および画像処理方法
JP6944138B2 (ja) 画像処理装置および画像処理方法
WO2018021069A1 (ja) 画像処理装置および画像処理方法
JP6743893B2 (ja) 画像処理装置および画像処理方法
JP7028168B2 (ja) 画像処理装置および画像処理方法
WO2018021070A1 (ja) 画像処理装置および画像処理方法
WO2019003953A1 (ja) 画像処理装置および画像処理方法
KR20190067806A (ko) 화상 처리 장치 및 화상 처리 방법
WO2018021064A1 (ja) 画像処理装置および画像処理方法
JP6743894B2 (ja) 画像処理装置および画像処理方法
JP6977725B2 (ja) 画像処理装置および画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220329

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220511

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220524

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220606

R151 Written notification of patent or utility model registration

Ref document number: 7095697

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151