(57)【要約】【課題】  端末側で画像データから全天球画像に変換するためのデータを配信する撮影装置、方法およびプログラムを提供する。【解決手段】  全天球動画撮影システムに含まれる撮影装置であって、撮影装置固有の射影変換情報を記憶する射影変換情報記憶部２１８と、複数の方向を撮影した画像のフレームデータと射影変換情報とを全天球動画撮影システムに含まれる画像処理装置に送信する送信部２２０とを含み、射影変換情報は、撮影装置が撮影する複数の方向の情報を示す撮影方向データと、画像の像高と撮影装置に対する光の入射角とを対応付けた射影データとを含む。【選択図】  図３
2020174363.tif 000002
【特許請求の範囲】
【請求項１】
全天球動画撮影システムに含まれる撮影装置であって、
前記撮影装置固有の射影変換情報を記憶する記憶手段と、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記全天球動画撮影システムに含まれる画像処理装置に送信する送信手段と
を含み、前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含む、撮影装置。
【請求項２】
前記撮影装置は、
前記フレームデータと前記射影変換情報を対応付けて送信する、
請求項１に記載の撮影装置。
【請求項３】
前記撮影装置は、
前記射影変換情報を画像データとして、前記フレームデータに埋め込んで送信する、
請求項１に記載の撮影装置。
【請求項４】
前記撮影装置は、
前記射影変換情報を、離散コサイン変換した前記フレームデータの高周波領域に埋め込み、該埋め込んだフレームデータをさらに逆離散コサイン変換して送信する、
請求項１に記載の撮影装置。
【請求項５】
前記撮影装置は、
送信するデータ列に含まれるヘッダのオプション領域に、前記射影変換情報を埋め込んで送信する、
請求項１に記載の撮影装置。
【請求項６】
全天球動画撮影システムに含まれる撮影装置が実行する方法であって、
前記撮影装置固有の射影変換情報を記憶するステップと、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記全天球動画撮影システムに含まれる画像処理装置に送信するステップと
を含み、前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含む、方法。
【請求項７】
全天球動画撮影システムに含まれる撮影装置が実行するプログラムであって、前記撮影装置を
前記撮影装置固有の射影変換情報を記憶する記憶手段、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記全天球動画撮影システムに含まれる画像処理装置に送信する送信手段
として機能させ、前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含む、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮影装置、方法およびプログラムに関する。
【背景技術】
【０００２】
複数の魚眼レンズによって撮影された広角な画像を組み合わせることで、１回の撮影で全天球画像を出力する、全天球動画撮像システムが知られている。
【０００３】
しかし、複数の広角画像から全天球画像への射影変換には、パターンマッチングのような大きな負荷がかかる処理が必要となる。この点につき、特許第５８４６５４９号公報（特許文献１）では、全天球画像の用途に応じたモードの切り替えを行う技術が開示されている。特許文献１によれば、選択したモードによって画像のつなぎ処理を切り替えることができるため、撮像装置の処理負荷を低減できる。しかしながら、特許文献１では、情報量の大きい画像において、リアルタイム処理できず、射影変換処理に係る負荷が大きいという問題がある。
【０００４】
そこで、画像を受信する端末側でリアルタイムに射影変換を行うために、画像データから全天球画像に変換するためのデータを配信する技術が求められていた。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、上記従来技術における課題に鑑みてなされたものであり、端末側で画像データから全天球画像に変換するためのデータを配信する撮影装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
すなわち、本発明によれば、全天球動画撮影システムに含まれる撮影装置であって、
前記撮影装置固有の射影変換情報を記憶する記憶手段と、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記全天球動画撮影システムに含まれる画像処理装置に送信する送信手段と
を含み、前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データとを含む、撮影装置が提供される。
【発明の効果】
【０００７】
上述したように、本発明によれば、端末側で画像データから全天球画像に変換するためのデータを配信する撮影装置、方法およびプログラムが提供される。
【図面の簡単な説明】
【０００８】
【図１】本実施形態による全天球動画撮像システムを構成する全天球カメラの断面図。
【図２】本実施形態による全天球動画撮像システムのハードウェア構成図。
【図３】本実施形態による全天球動画撮像システム上に実現される全天球動画配信機能に関連する主要な機能ブロック図。
【図４】本実施形態による全天球動画撮像システムにおける射影関係を説明する図。
【図５】本実施形態による全天球カメラの撮影方向を説明する図。
【図６】全天球カメラが撮影した魚眼画像を３次元球体にテクスチャマッピングする例を示す図。
【図７】魚眼画像から任意の視線方向に透視射影変換する例を示す図。
【図８】本実施形態による全天球動画撮像システムにおいて配信されるデータ列の例を示す図。
【図９】本実施形態による全天球動画撮像システムにおいて画像データに射影変換情報を付加して配信する処理のフローチャート。
【図１０】本実施形態による全天球動画撮像システムにおいて画像データに射影変換情報を付加して配信する処理のフローチャート。
【図１１】射影変換情報を画像情報として埋め込む例を説明する図。
【図１２】射影変換情報を周波数空間に埋め込む例を説明する図。
【発明を実施するための形態】
【０００９】
以下、本実施形態について説明するが、本実施形態は、以下に説明する実施形態に限定されるものではない。なお、以下の実施形態では、撮像装置および撮像システムの一例として、２つの魚眼レンズを光学系に含む撮像体を備える全天球カメラ、および、全天球カメラと、該全天球カメラから分離された画像処理装置とを備える全天球動画撮像システムを用いて説明する。
【００１０】
［全体構成］
以下、図１および図２を参照しながら、本実施形態による全天球動画撮像システムの全体構成について説明する。図１は、本実施形態による全天球動画撮像システム１００を構成する全天球カメラ１１０の断面図である。図１に示す全天球カメラ１１０は、撮像体１２と、上記撮像体１２およびコントローラやバッテリなどの部品を保持する筐体１４と、上記筐体１４に設けられたシャッター・ボタン１８とを備える。
【００１１】
図１に示す撮像体１２は、２つの結像光学系２０Ａ，２０Ｂと、ＣＣＤ（Charge Coupled Device）センサやＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサなどの２つの撮像素子２２Ａ，２２Ｂを含み構成される。結像光学系２０各々は、例えば６群７枚の魚眼レンズとして構成されている。上記魚眼レンズは、図１に示す実施形態では、１８０度（＝３６０度／ｎ；光学系数ｎ＝２）より大きい全画角を有し、好適には、１８５度以上の画角を有し、より好適には、１９０度以上の画角を有する。このような広角な結像光学系２０と撮像素子２２とを１個ずつ組み合わせたものを広角撮像光学系と参照する。
【００１２】
２つの結像光学系２０Ａ，２０Ｂの光学素子（レンズ、プリズム、フィルタおよび開口絞り）は、撮像素子２２Ａ，２２Ｂに対して位置関係が定められる。より具体的には、結像光学系２０Ａ，２０Ｂの光学素子の光軸が、対応する撮像素子２２の受光領域の中心部に直交して位置するように、かつ、受光領域が、対応する魚眼レンズの結像面となるように位置決めが行われる。
【００１３】
図１に示す実施形態では、結像光学系２０Ａ，２０Ｂは、同一仕様のものであり、それぞれの光軸が合致するようにして、互いに逆向きに組み合わせられる。撮像素子２２Ａ，２２Ｂは、受光した光分布を画像信号に変換し、コントローラ上の画像処理手段に順次、画像フレームを出力する。詳細は後述するが、撮像素子２２Ａ，２２Ｂでそれぞれ撮像された画像は、画像処理装置１５０へ転送されて、合成処理されて、これにより、立体角４πステラジアンの画像（以下「全天球画像」と参照する。）が生成される。全天球画像は、撮影地点から見渡すことのできる全ての方向を撮影したものとなる。そして、全天球画像の連続するフレームにより、全天球動画が構成される。ここで、説明する実施形態では、全天球画像および全天球動画を生成するものとして説明するが、水平面のみ３６０度を撮影した、いわゆるパノラマ画像およびパノラマ動画など、全天球画像から一部の画像が欠けている画像であってもよい。
【００１４】
図２（ａ）は、本実施形態による全天球動画撮像システム１００を構成する全天球カメラ１１０のハードウェア構成を示す。全天球カメラ１１０は、ＣＰＵ（Central Processing Unit）１１２と、ＲＯＭ（Read Only Memory）１１４と、画像処理ブロック１１６と、動画圧縮ブロック１１８と、ＤＲＡＭ（Dynamic Random Access Memory）インタフェース１２０を介して接続されるＤＲＡＭ１３２と、外部センサインタフェース１２４を介して接続される加速度センサ１３６とを含み構成される。
【００１５】
ＣＰＵ１１２は、全天球カメラ１１０の各部の動作および全体動作を制御する。ＲＯＭ１１４は、ＣＰＵ１１２が解読可能なコードで記述された制御プログラムや各種パラメータを格納する。画像処理ブロック１１６は、２つの撮像素子１３０Ａ，１３０Ｂ（図１における撮像素子２２Ａ，２２Ｂである。）と接続され、それぞれで撮像された画像の画像信号が入力される。画像処理ブロック１１６は、ＩＳＰ（Image Signal Processor）などを含み構成され、撮像素子１３０から入力された画像信号に対し、シェーディング補正、ベイヤー補間、ホワイト・バランス補正、ガンマ補正などを行う。
【００１６】
動画圧縮ブロック１１８は、ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４などの動画圧縮および伸張を行うコーデック・ブロックである。ＤＲＡＭ１３２は、各種信号処理および画像処理を施す際にデータを一時的に保存する記憶領域を提供する。加速度センサ１３６は、３軸の加速度成分を検出し、検出された加速度成分は、鉛直方向を検出して全天球画像の天頂補正を施すために用いられる。
【００１７】
全天球カメラ１１０は、さらに、外部ストレージインタフェース１２２と、ＵＳＢ（Universal Serial Bus）インタフェース１２６と、シリアルブロック１２８とを含み構成される。外部ストレージインタフェース１２２には、外部ストレージ１３４が接続される。外部ストレージインタフェース１２２は、メモリカードスロットに挿入されたメモリカードなどの外部ストレージ１３４に対する読み書きを制御する。ＵＳＢインタフェース１２６には、ＵＳＢコネクタ１３８が接続される。ＵＳＢインタフェース１２６は、ＵＳＢコネクタ１３８を介して接続されるパーソナル・コンピュータなどの外部機器とのＵＳＢ通信を制御する。シリアルブロック１２８は、パーソナル・コンピュータなどの外部機器とのシリアル通信を制御し、無線ＮＩＣ（Network Interface Card）１４０が接続される。
【００１８】
電源スイッチの操作によって電源がオン状態になると、上記制御プログラムがメインメモリにロードされる。ＣＰＵ１１２は、メインメモリに読み込まれたプログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをメモリ上に一時的に保存する。これにより、全天球カメラ１１０の後述する各機能部および処理が実現される。
【００１９】
図２（ｂ）は、本実施形態による全天球動画撮像システム１００を構成する画像処理装置１５０のハードウェア構成を示す。図２（ｂ）に示す画像処理装置１５０は、ＣＰＵ１５２と、ＲＡＭ１５４と、ＨＤＤ（Hard Disk Drive）１５６と、ＧＰＵ（Graphics Processing Unit）１５８と、マウスやキーボードなどの入力装置１６０と、外部ストレージ１６２と、ディスプレイ１６４と、無線ＮＩＣ１６６と、ＵＳＢコネクタ１６８とを含み構成される。
【００２０】
ＣＰＵ１５２は、画像処理装置１５０の各部の動作および全体動作を制御する。ＲＡＭ１５４は、ＣＰＵ１５２の作業領域を提供する。ＨＤＤ１５６は、ＣＰＵ１５２が解読可能なコードで記述された、オペレーティング・システム、本実施形態による画像処理装置１５０側の処理を担うアプリケーションなどの制御プログラムを格納する。ＧＰＵ１５８は、画像処理演算に特化したプロセッサであり、種々の画像処理を行うことができる。なお、画像処理装置１５０は、ＧＰＵ１５８を搭載せず、その機能をＣＰＵ１５２が担ってもよい。
【００２１】
入力装置１６０は、マウス、キーボード、タッチパッド、タッチスクリーンなどの入力装置であり、ユーザ・インタフェースを提供する。外部ストレージ１６２は、メモリカードスロットなどに装着された着脱可能な記録媒体であり、動画形式の画像データや静止画データなどの各種データを記録する。ディスプレイ１６４は、ユーザ操作に応答して再生された全天球動画を画面表示する。無線ＮＩＣ１６６は、全天球カメラ１１０などの外部機器との無線通信の接続を確立する。ＵＳＢコネクタ１６８は、全天球カメラ１１０などの外部機器とのＵＳＢ接続をする。
【００２２】
画像処理装置１５０に電源が投入され電源がオン状態になると、ＲＯＭやＨＤＤ１５６から制御プログラムが読み出され、ＲＡＭ１５４にロードされる。ＣＰＵ１５２は、ＲＡＭ１５４に読み込まれた制御プログラムに従って、装置各部の動作を制御するとともに、制御に必要なデータをメモリ上に一時的に保存する。これにより、画像処理装置１５０の後述する各機能部および処理が実現される。
【００２３】
［全天球動画配信機能］
以下、図３〜図１２を参照しながら、本実施形態による全天球動画撮像システム１００が備える全天球動画配信機能について説明する。図３は、本実施形態による全天球動画撮像システム１００上に実現される全天球動画配信機能に関連する主要な機能ブロック２００を示す。
【００２４】
全天球カメラ１１０の機能ブロック２１０は、図３に示すように、撮像部２１２と、画像処理部２１４と、動画圧縮部２１６と、射影変換情報記憶部２１８と、送信部２２０とを含み構成される。これに対して、画像処理装置１５０の機能ブロック２５０は、受信部２５２と、動画復元部２５４と、射影変換情報取得部２５６と、変換テーブル生成部２５８と、方向指定部２６０と、動画変換部２６２と、表示部２６４とを含み構成される。
【００２５】
まず、全天球カメラ１１０側から説明する。撮像部２１２は、上述した２つの広角撮像光学系を含み構成され、２つの撮像素子１３０Ａ，１３０Ｂを制御して、連続したフレームを順次撮像する。撮像素子１３０各々で撮像される画像は、概ね全天球のうちの半球を視野に収めた魚眼画像であり、全天球画像の部分的な画像を構成する。以下、撮像素子１３０それぞれが撮像した画像を部分画像と参照する場合がある。
【００２６】
画像処理部２１４は、画像処理ブロック１１６を含み構成され、撮像部２１２が撮像した魚眼画像に対して、シェーディング補正、ベイヤー補間、ホワイト・バランス補正、ガンマ補正などの各種補正処理を行う。また、画像処理部２１４は、撮像された魚眼画像に、射影変換情報を埋め込む処理を行うことができる。射影変換情報の埋め込みについての詳細は後述する。
【００２７】
動画圧縮部２１６は、動画圧縮ブロック１１８を含み構成され、撮像部２１２が撮像した連続するフレームを所定の動画形式の画像データに圧縮する。動画圧縮形式としては、特に限定されるものではないが、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（Advanced Video Coding）、Ｈ．２６５／ＨＥＶＣ（High Efficiency Video Coding）、Ｍｏｔｉｏｎ  ＪＰＥＧ（Joint Photographic Experts Group）、Ｍｏｔｉｏｎ  ＪＰＥＧ２０００などの種々の動画圧縮形式を挙げることができる。
【００２８】
Ｍｏｔｉｏｎ  ＪＰＥＧ系は、連続した静止画として動画を表現する形式であり、この方式を採用することにより、高品質な動画を得ることができる。これに対して、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣやＨ．２６５／ＨＥＶＣは、時間軸方向の圧縮を行うことができるため、処理効率が高く、外部ストレージへの書き込み遅延の要件を緩和することができる。手持ちされる全天球カメラ１１０側では、小型化および低コスト化の要請から、高性能なハードウェアを搭載することが難しいため、好ましい実施形態では、時間軸方向の圧縮を行うことができ、ビットレートを抑制することができるＨ．２６４／ＭＰＥＧ−４  ＡＶＣやＨ．２６５／ＨＥＶＣを好適に採用することができる。
【００２９】
なお、説明する実施形態では、撮像部２１２が、２つの撮像素子１３０Ａ，１３０Ｂで同一のタイミングで撮像された２つの魚眼画像をそれぞれ独立に出力し、動画圧縮部２１６が、独立した２つの魚眼画像のフレームから２つの動画形式の画像データをそれぞれ独立して生成する。しかしながら、画像データの表現形式は、特に限定されるものではない。他の実施形態では、撮像部２１２が、２つの撮像素子１３０Ａ，１３０Ｂで撮像された２つの魚眼画像を接合して構成された単一の画像を出力し、動画圧縮部２１６は、この２つの魚眼画像を含む画像をフレームとした動画形式の画像データに圧縮することができる。
【００３０】
射影変換情報記憶部２１８は、ＲＯＭ１１４などに射影変換のための情報を記憶し、画像処理部２１４や送信部２２０などに射影変換情報を提供する。なお、射影変換情報には、全天球カメラ１１０に含まれるレンズの物理的な配置関係を示す撮影方向データ、撮影された画像の像高と魚眼レンズの入射角との関係を表す射影データ、画像フレームに配置された魚眼画像の方向、魚眼画像の中心座標、魚眼画像の有効半径、レンズ光学特性、レンズ組み付け誤差などの各種情報が含まれる。
【００３１】
送信部２２０は、画像データや射影変換情報をまとめたデータをパケットとして、画像処理装置１５０に送信する。なお、送信するデータは、まとめたデータとしてではなく、画像データと射影変換情報とを対応付けた上で、それぞれを別個に送信してもよい。このように画像データと、射影変換情報とを併せて配信することで、画像処理装置１５０側で、リアルタイムにつなぎ処理を行うことができ、ユーザにとって快適な視聴環境が提供される。
【００３２】
次に、画像処理装置１５０側について説明する。受信部２５２は、全天球カメラ１１０が配信したパケットを受信し、受信したデータを動画復元部２５４および射影変換情報取得部２５６に提供する。動画復元部２５４は、受信したデータに含まれる、圧縮された画像データに対応する所定のコーデックを用いて、画像データをデコードし、動画を構成する静止画のフレームを復元して、動画変換部２６２へ出力する。
【００３３】
射影変換情報取得部２５６は、受信したデータに含まれる射影変換情報を抽出し、射影データおよび撮影方向データを変換テーブル生成部２５８へ出力する。変換テーブル生成部２５８は、射影データおよび撮影方向データに基づいて、画像データを全天球画像の動画に変換するためのテーブルを生成する。変換テーブル生成部２５８が生成した変換テーブルは、動画変換部２６２へ出力される。
【００３４】
方向指定部２６０は、ユーザの操作によって、表示する全天球画像の視点方向を指定する。視点方向は、ユーザが任意の方向を指定することができ、指定された視点方向は動画変換部２６２へ出力される。
【００３５】
動画変換部２６２は、変換テーブルと、視点方向とに基づいて、画像データを全天球画像の動画に変換する。具体的には、変換テーブルを基に、全天球画像のどこを見るかを指定する視点方向にしたがって、画像データを切り出す変換を行い、表示部２６４へ出力する。
【００３６】
表示部２６４は、ディスプレイ１６４を含み構成され、変換された画像を画面上に表示することで、ユーザに動画を提供する。視聴の際には、この生成された動画データに基づき、表示アプリケーション上で、全天球において指定された特定の視野の画像が再生されて表示されることになる。なお、ユーザは動画の再生中にも視点方向を指定することができ、リアルタイムで視点を変えた動画を視聴することができる。
【００３７】
なお、上述した実施形態に示したソフトウェアブロックは、ＣＰＵが本実施形態のプログラムを実行することにより、各ハードウェアを機能させることにより、実現される機能手段に相当する。また、各実施形態に示した機能手段は、全部がソフトウェア的に実現されても良いし、その一部または全部を同等の機能を提供するハードウェアとして実装することもできる。
【００３８】
次に、射影変換情報に含まれる射影データについて説明する。射影データは、魚眼画像を全天球画像に変換する際に用いるパラメータであり、魚眼レンズに入る光の角度と、像高とを対応付ける。
【００３９】
図４は、魚眼レンズを用いた全天球カメラ１１０における射影関係を説明する図である。本実施形態において、１つ魚眼レンズで撮影された画像は、撮影地点から概ね半球分の方位を撮影したものとなる。また、魚眼レンズは、図４（ａ）に示すように、光軸に対する入射角度φに対応した像高ｈで画像を生成する。像高ｈと、入射角度φとの関係は、所定の投影モデルに応じた射影関数で決定される。射影関数は、魚眼レンズの性質によって異なるが、等距離射影方式と呼ばれる投影モデルの魚眼レンズでは、ｆを焦点距離として、下記式（１）で表現される。
【００４０】
【数１】
2020174363.tif 000003
【００４１】
上記投影モデルとしては、その他、中心投影方式（ｈ＝ｆ・ｔａｎφ）、立体射影方式（ｈ＝２ｆ・ｔａｎ（φ／２））、等立体角射影方式（ｈ＝２ｆ・ｓｉｎ（φ／２））および正射影方式（ｈ＝ｆ・ｓｉｎφ）を挙げることができる。いずれの方式においても、光軸からの入射角度φと焦点距離ｆとに対応して結像の像高ｈが決定される。また、本実施形態では、画像対角線よりもイメージサークル径が小さな、いわゆる円周魚眼レンズの構成を採用するものとし、得られる部分画像は、図４（ｂ）に示すように、撮影範囲の概ね半球分が投影されたイメージサークル全体を含む平面画像となる。
【００４２】
上述のようにして対応付けられた入射角と像高は、一例として、図４（ｃ）のような対応関係を示す射影データのテーブルとなる。当該テーブルでは、各結像光学系の中心位置の座標と、入射角と、像高などの各種データを保持する。魚眼画像は、テーブルに含まれる各データに基づいて、射影変換され、全天球画像として表示することができる。
【００４３】
次に、撮像装置が撮影する方向について説明する。図５は、本実施形態による全天球カメラ１１０の撮影方向を説明する図である。図５（ａ）は、撮像装置に対して、３軸の方向を定義している様子を示している。ここでは、撮像装置の正面方向、すなわちレンズの光軸方向をＲｏｌｌ軸、撮像装置の上下方向をＹａｗ軸、撮像装置の横方向をＰｉｔｃｈ軸としている。また、全天球カメラ１１０に含まれる撮像装置の方向を表すのに、全天球カメラの一方向を基準とし、基準に対するレンズの向きを、（Ｙａｗ，Ｐｉｔｃｈ，Ｒｏｌｌ）の角度で表す。
【００４４】
例えば、図５（ｂ）の全天球カメラ１１０では、結像光学系２０Ａは基準となる方向に対して正面を向いているため、（Ｙａｗ，Ｐｉｔｃｈ，Ｒｏｌｌ）＝（０，０，０）である。一方で、結像光学系２０Ｂは、正面に対して反対方向、すなわちＹａｗ軸に対して１８０°回転していることから、（Ｙａｗ，Ｐｉｔｃｈ，Ｒｏｌｌ）＝（１８０，０，０）である。
【００４５】
これらのデータを撮影方向データとして結像光学系ごとに取得することで、各結像光学系の位置関係を決定することができ、画像データと併せて、画像処理装置１５０に配信することで、魚眼画像から全天球画像に変換することができる。なお、図５の例では、結像光学系が２個の場合を例に示したが、この個数に限定するものではなく、結像光学系の個数に対応した撮影方向データを取得することで、全天球画像に変換できる。また、結像光学系の撮影方向を全天球カメラの一方向を基準として表したが、一つの結像光学系の撮影方向を基準に相対的に表しても良い。次に、魚眼画像から全天球画像への変換について説明する。
【００４６】
図６は、全天球カメラ１１０が撮影した魚眼画像を３次元球体にテクスチャマッピングする例を示す図であり、図６（ａ）は、魚眼画像を、図６（ｂ）は、全天球画像に対応する座標を有する単位球を、それぞれ示している。図６（ａ）は図４（ｂ）に対応し、魚眼画像には座標（ｕ，ｖ）に点Ｐが含まれている。魚眼画像の中心Ｏを通りＵ軸に平行な線と、ＯＰが成す角度をａとし、ＯＰの距離（像高）をｈとする。このような点Ｐは、図４（ｃ）に示す射影データのテーブルに基づいて、線形補正などの各種手法により、像高ｈに対する入射角度φを求めることができる。これらのａおよびφによって、点Ｐ（ｕ，ｖ）を、対応する３次元球体上の点Ｐ’（ｘ，ｙ，ｚ）に変換することができる。
【００４７】
図６（ｂ）より、Ｐ’をＸＹ平面上に射影した点をＱ（ｘ，ｙ，０）、球体の中心をＯ’とすると、図６（ａ）の角ａは、直線Ｏ’Ｑ’とＸ軸のなす角となる。また、入射角度φは、直線Ｏ’Ｐ’とＺ軸のなす角となる。Ｚ軸はＸＹ平面に垂直であることから、直線Ｏ’Ｐ’とＸＹ平面のなす角ＱＯ’Ｐ’は、９０−φとなる。以上より、点Ｐ’の座標（ｘ，ｙ，ｚ）は、下記式２によって求めることができる。
【００４８】
【数２】
2020174363.tif 000004
【００４９】
上記式２によって点Ｐ’の座標を求めた上で、撮影方向データを用いて、撮像時に撮像装置が向いていた方向に回転させると、図５（ａ）で定義された回転は、下記式３のようになる。なお、図５（ａ）のＰｉｔｃｈ軸、Ｙａｗ軸、Ｒｏｌｌ軸は、図６（ｂ）のＸ軸、Ｙ軸、Ｚ軸にそれぞれ対応する。
【００５０】
【数３】
2020174363.tif 000005
【００５１】
さらに、上記式３をまとめると、下記式４が得られ、図７に示すような、魚眼画像から撮影方向に合わせて透視射影変換を行うことができる。
【００５２】
【数４】
2020174363.tif 000006
【００５３】
図７は、魚眼画像から透視射影変換する例を示す図である。図７では、２つの魚眼レンズで撮像された画像から、自由な方向の透視射影変換した例を示しており、図７（ａ）は、撮像された魚眼画像を示している。図７（ａ）のような魚眼画像は、図６で示したように３次元球面上に対応する座標を求めることで、図７（ｂ）のように半球体状の画像とすることができる。図７では、２つの魚眼画像を基に変換することから、図７（ｂ）では半球体状の画像が２つから構成される。なお、図７（ｂ）において、濃い色で示される領域は、各半球が重複する領域を示しており、全天球画像に変換する際には、傾斜した透過度を設定することで、つなぎ目を目立たなくすることができ、違和感の少ない画像を提供することができる。
【００５４】
図７（ｂ）の半球形状の画像を適切な配置でつなぐことによって、全天球画像を作成することができ、さらに、図７（ｃ）のように、球状に画像を配置した中心に、透視射影カメラを仮想的に配置して、任意の方向、画角で画像を切り出すことで、ユーザは全天球画像を視聴することができる。なお、これらの処理は、画像処理装置１５０に搭載されているＧＰＵ１５８を用いることで、リアルタイムな処理が可能となる。
【００５５】
ここまでに説明した通り、上記の各式によって、魚眼画像から３次元球面に変換するテーブルを作成することができ、画像処理装置１５０は、変換された３次元球体を仮想の透視射影カメラで見ているように表示することで、図７（ｃ）のような任意の視線方向からの画像へと変換することができる。また、このような変換を行うために、撮影方向データや射影データなどの射影変換情報を付加情報として画像データに加えて、全天球カメラ１１０から画像処理装置１５０に配信する。
【００５６】
上述したような変換では、画像データと射影変換情報とを対応付けて配信するが、データを配信する方法は、図８に示すような種々の方法で配信することができる。図８は、本実施形態による全天球動画撮像システム１００において配信されるデータ列の例を示す図である。また、図８（ａ）は、射影変換情報をデータ列のヘッダのオプション領域に埋め込んで配信する方法を、図８（ｂ）は、フレームデータごとに射影変換情報を対応付けて配信する方法を、図８（ｃ）は、射影変換情報を画像データとしてフレームデータに埋め込んで配信する方法をそれぞれ示している。以下に、各配信方法の詳細を説明する。
【００５７】
まず、図８（ａ）について説明する。送信するデータ列は、ＲＴＰ（Real-time Transport Protocol）ヘッダと、画像フレームヘッダと、画像フレームデータオプション領域と、フレームデータから構成される。このうち、画像フレームデータオプション領域に射影変換情報を埋め込み、配信することで、データを受信する画像処理装置１５０において、射影変換情報取得部２５６が撮影方向データと射影データとを取得でき、射影変換を行うことができる。
【００５８】
次に、図８（ｂ）について説明する。図８（ｂ）は、フレームデータごとに射影変換情報を対応付けて配信する方法であり、画像データのデータ列と、射影変換情報のデータ列とを別個に配信する。画像データのデータ列は、ＲＴＰヘッダと、画像フレームヘッダと、フレームデータを含んで構成される。また、射影変換情報のデータ列は、画像データに含まれる各フレームデータに対応付けられた射影変換情報を含んで構成される。以下に、図８（ｂ）に示すデータ列を配信する処理について、図９を以て説明する。図９は、本実施形態による全天球動画撮像システム１００において画像データに射影変換情報を付加して配信する処理のフローチャートである。
【００５９】
まず、ステップＳ１０００から処理を開始する。ステップＳ１０００の段階で、撮影は行われており、撮影した画像データと、撮影時の撮影方向データ、射影変換データは、ＤＲＡＭ１３２に記憶されている。次に、ステップＳ１００１で、記憶されている画像データと射影変換情報とを対応付ける。ステップＳ１００１の対応付けは、記憶した時間のデータや、フラグなどによって行うことができる。
【００６０】
その後、ステップＳ１００２で、送信部２２０は、射影変換情報記憶部２１８から射影変換情報を読み込み、ステップＳ１００３で、射影変換情報を画像処理装置１５０に配信する。
【００６１】
さらに、送信部２２０は、ステップＳ１００４で、動画圧縮部２１６が処理した動画の画像のフレームデータを読み込み、ステップＳ１００５で、画像フレームを画像処理装置１５０に配信する。その後、ステップＳ１００６で、配信した画像フレームが最終フレームであるかを判定し、最終フレームであれば（ＹＥＳ）、ステップＳ１００７に進み、処理を終了する。最終フレームでなければ（ＮＯ）、ステップＳ１００４に戻り、画像フレームを取り込む処理と配信する処理を、最終フレームまで繰り返す。
【００６２】
以上、説明した処理によれば、画像処理装置１５０は画像データと射影変換情報を取得することができ、取得した射影変換情報に基づく変換テーブルを生成することで、任意の視線方向の全天球画像をリアルタイムで表示することができる。
【００６３】
最後に、図８（ｃ）について説明する。図８（ｃ）は、射影変換情報を画像データとしてフレームデータに埋め込んで配信する方法であり、配信するデータ列は、ＲＴＰヘッダと、画像フレームヘッダと、フレームデータを含んで構成される。以下に、図８（ｃ）に示すデータ列を配信する処理について、図１０を以て説明する。図１０は、本実施形態による全天球動画撮像システム１００において画像データに射影変換情報を付加して配信する処理のフローチャートである。なお、図１０における処理のうち、図９で説明したものと共通する処理については、適宜その説明を省略する。
【００６４】
まず、ステップＳ２０００から処理を開始し、ステップＳ２００１で、画像処理部２１４は射影変換情報を読み込む。さらに、ステップＳ２００２では、画像処理部２１４は、撮影した画像のフレームを取り込む。
【００６５】
その後、ステップＳ２００３で、画像処理部２１４は、読み込んだ射影変換情報を画像フレーム内に埋め込む処理を行う。射影変換情報を埋め込む方法としては、（１）フレーム内に画像情報として埋め込む、（２）離散コサイン変換をして周波数空間に埋め込むといった方法が挙げられる。ここで、埋め込み方法（１）、（２）について、図１１および図１２によって詳細に説明する。
【００６６】
図１１は、射影変換情報を画像情報として埋め込む例を説明する図であり、図１１（ａ）は、撮影した魚眼画像を含む画像フレームを、図１１（ｂ）は、該画像フレームに射影変換情報を埋め込んだフレームをそれぞれ示している。魚眼画像は、図示しているように円形の枠の画像であることから、矩形のフレームに配置した場合には、魚眼画像の周辺には画像に寄与しない不使用領域が存在する。この不使用領域に、射影変換情報を画像データとして埋め込むことで、射影変換情報と画像フレームデータとを併せて配信することができる。なお、図１１（ｂ）では、射影変換情報の画像データを、ＱＲコード（登録商標）として図示しているが、一例であって、これに限定するものではない。
【００６７】
また、図１２は、射影変換情報を周波数空間に埋め込む例を説明する図であり、図１２（ａ）は、撮影した魚眼画像を含む画像フレームを、図１２（ｂ）は、該フレームを離散コサイン変換したヒストグラムの例を、図１２（ｃ）は、該ヒストグラムに射影変換情報を付加したヒストグラムの例をそれぞれ示している。
【００６８】
図１２（ｂ）に示すように、離散コサイン変換は、変換後の信号の周波数成分が低周波領域に集中し、高周波成分の強度は非常に弱い。そこで、図１２（ｃ）のように、ヒストグラムの高周波領域に情報を重畳することで、射影変換情報を埋め込む。このように高周波領域に情報を付加し、さらに、逆離散コサイン変換を行うことで、画像のフレームデータに射影変換情報を埋め込んだことと同様の効果を得ることができる。また、射影変換情報は高周波領域に重畳していることから、画像データへの影響を小さくすることができ、元の画像データと、逆離散コサイン変換後の画像データとの差を、ノイズレベル程度に抑えることができる。
【００６９】
説明を図１０に戻す。ステップＳ２００３では、図１１および図１２に示した方法によって、射影変換情報を画像フレームに埋め込むことができる。その後、ステップＳ２００４で、画像フレームを画像処理装置１５０に配信し、ステップＳ２００５で、配信した画像フレームが最終フレームであるかを判定し、最終フレームであれば（ＹＥＳ）、ステップＳ２００６に進み、処理を終了する。最終フレームでなければ（ＮＯ）、ステップＳ２００２に戻り、画像フレームの取り込み、射影変換情報の埋め込み、画像フレームの配信の各処理を、最終フレームまで繰り返す。
【００７０】
ここまでに説明した図１０の処理によれば、画像処理装置１５０は射影変換情報が埋め込まれた画像データを取得することができ、取得した射影変換情報に基づく変換テーブルを生成することで、任意の視線方向の全天球画像をリアルタイムで表示することができる。
【００７１】
以上、説明した本発明の各実施形態によれば、端末側で画像データから全天球画像に変換するためのデータを配信する撮影装置、方法およびプログラムを提供することができる。
【００７２】
上述した本発明の実施形態の各機能は、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）等で記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、フレキシブルディスク、ＥＥＰＲＯＭ、ＥＰＲＯＭ等の装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【００７３】
以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではなく、当業者が推考しうる実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００７４】
１２…撮像体、１４…筐体、１８…ボタン、２０…結像光学系、２２…撮像素子、１００…全天球動画撮像システム、１１０…全天球カメラ、１１２…ＣＰＵ、１１４…ＲＯＭ、１１６…画像処理ブロック、１１８…動画圧縮ブロック、１２０…ＤＲＡＭインタフェース、１２２…外部ストレージインタフェース、１２４…外部センサインタフェース、１２６…ＵＳＢインタフェース、１２８…シリアルブロック、１３０…撮像素子、１３２…ＤＲＡＭ、１３４…外部ストレージ、１３６…加速度センサ、１３８…ＵＳＢコネクタ、１４０…無線ＮＩＣ、１５０…画像処理装置、１５２…ＣＰＵ、１５４…ＲＡＭ、１５６…ＨＤＤ、１５８…ＧＰＵ、１６０…入力装置、１６２…外部ストレージ、１６４…ディスプレイ、１６６…無線ＮＩＣ、１６８…ＵＳＢコネクタ、１６８…バス、２００…機能ブロック、２１０…機能ブロック、２１２…撮像部、２１４…画像処理部、２１６…動画圧縮部、２１８…射影変換情報記憶部、２２０…送信部、２５０…機能ブロック、２５２…受信部、２５４…動画復元部、２５６…射影変換情報取得部、２５８…変換テーブル生成部、２６０…方向指定部、２６２…動画変換部、２６４…表示部
【先行技術文献】
【特許文献】
【００７５】
特許第５８４６５４９号公報
【図１】
2020174363.tif 000007
【図２】
2020174363.tif 000008
【図３】
2020174363.tif 000009
【図４】
2020174363.tif 000010
【図５】
2020174363.tif 000011
【図６】
2020174363.tif 000012
【図７】
2020174363.tif 000013
【図８】
2020174363.tif 000014
【図９】
2020174363.tif 000015
【図１０】
2020174363.tif 000016
【図１１】
2020174363.tif 000017
【図１２】
2020174363.tif 000018
【手続補正書】
【提出日】令和2年6月23日(2020.6.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
撮影システムであって、
全天球画像を撮像する撮像装置と、
画像処理装置と、
を備え、
前記撮像装置は、
前記撮影装置固有の射影変換情報を記憶する記憶手段と、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記画像処理装置に送信する送信手段と
を有し、
前記画像処理装置は、
前記送信手段から送信された前記画像のフレームデータと前記射影変換情報とを、受信する受信手段と、
前記射影変換情報に基づいて、前記画像を射影変換するための変換テーブルを生成する変換テーブル生成手段と、
前記変換テーブルに基づいて、前記画像のフレームデータを全天球画像に変換する変換手段と、
を有し、
前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含む、
撮影システム。
【請求項２】
前記画像のフレームデータと前記射影変換情報とが対応付けられて送信される、
請求項１に記載の撮影システム。
【請求項３】
前記射影変換情報は、画像データとして前記画像のフレームデータに埋め込まれて送信される、
請求項１に記載の撮影システム。
【請求項４】
前記射影変換情報は、離散コサイン変換された前記フレームデータの高周波領域に埋め込まれ、該埋め込まれたフレームデータはさらに逆離散コサイン変換された送信される、
請求項１に記載の撮影システム。
【請求項５】
前記送信手段から送信されるデータ列に含まれるヘッダのオプション領域に、前記射影変換情報が埋め込まれて送信される、
請求項１に記載の撮影システム。
【請求項６】
全天球動画撮影システムに含まれる画像処理装置が実行する方法であって、
前記全天球動画撮影システムに含まれる撮像装置は、
前記撮影装置固有の射影変換情報を記憶する記憶手段と、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記画像処理装置に送信する送信手段と
を有し、
前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含み、
前記画像処理装置が実行する方法は、
前記送信手段から送信された前記画像のフレームデータと前記射影変換情報とを、受信する受信ステップと、
前記射影変換情報に基づいて、前記画像を射影変換するための変換テーブルを生成する変換テーブル生成ステップと、
前記変換テーブルに基づいて、前記画像のフレームデータを全天球画像に変換する変換ステップと、
を有する、方法。
【請求項７】
全天球動画撮影システムに含まれる画像処理装置が実行するプログラムであって、
前記全天球動画撮影システムに含まれる撮像装置は、
前記撮影装置固有の射影変換情報を記憶する記憶手段と、
複数の方向を撮影した画像のフレームデータと前記射影変換情報とを、前記画像処理装置に送信する送信手段と
を有し、
前記射影変換情報は、
前記撮影装置が撮影する複数の方向の情報を示す撮影方向データと、
前記画像の像高と、前記撮影装置に対する光の入射角とを対応付けた射影データと
を含み、
前記画像処理装置を、
前記送信手段から送信された前記画像のフレームデータと前記射影変換情報とを、受信する受信手段、
前記射影変換情報に基づいて、前記画像を射影変換するための変換テーブルを生成する変換テーブル生成手段、
前記変換テーブルに基づいて、前記画像のフレームデータを全天球画像に変換する変換手段、
として機能させる、プログラム。