(57)【要約】【課題】全方向の距離計測をより小規模な構成で実行可能とする。【解決手段】実施形態および実施形態の各変形例に係る撮像装置は、レンズを介して入射する光を受光する撮像素子を含む撮像体と、少なくとも４の撮像体が配置される筐体と、を備える。実施形態および実施形態の各変形例に係る撮像装置において、筐体は、撮像体のそれぞれが他の何れか１の撮像体と光軸が略平行且つ光軸上の光の入射方向が逆となり、撮像体のそれぞれが他の全ての撮像体の撮像可能範囲外に配置される。【選択図】図１
2019159284.tif 000002
【特許請求の範囲】
【請求項１】
レンズを介して入射する光を受光する撮像素子を含む撮像体と、
少なくとも４の前記撮像体が配置される筐体と、
を備え、
前記筐体は、
前記撮像体のそれぞれが他の何れか１の前記撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、前記撮像体のそれぞれが他の全ての前記撮像体の撮像可能範囲外に配置される
撮像装置。
【請求項２】
６以上の前記撮像体が前記筐体に配置される
請求項１に記載の撮像装置。
【請求項３】
前記筐体は、
６面の四角形に囲まれた立体であって、該６面のうち４面以上の各面に前記撮像体が配置される
請求項１または請求項２に記載の撮像装置。
【請求項４】
前記立体は、直方体形状である
請求項３に記載の撮像装置。
【請求項５】
前記立体は、立方体形状である
請求項３または請求項４に記載の撮像装置。
【請求項６】
前記レンズは、１８０°以上の画角を持つ
請求項１乃至請求項５の何れか１項に記載の撮像装置。
【請求項７】
筐体に、レンズを介して入射する光を受光する撮像素子を含む少なくとも４の撮像体のそれぞれが、他の何れか１の該撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、該撮像体のそれぞれが他の全ての該撮像体の撮像可能範囲外に配置される該撮像体それぞれの撮像画像を取得する取得部と、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、３次元点群情報により表される全天球距離画像を生成する画像処理部と、
を備える
画像処理装置。
【請求項８】
前記画像処理部は、さらに、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、各画素が少なくとも輝度情報により表される全天球画像を生成する
請求項７に記載の画像処理装置。
【請求項９】
前記画像処理部は、
前記筐体の辺を共有する２の面にそれぞれ配置された２の撮像体から取得した前記撮像画像の組と、前記筐体に配置される、光軸が略平行且つ光軸上の光の入射方向が逆の２の前記撮像体から取得した前記撮像画像の組と、を組み合わせて、３次元の全方向について、前記全天球距離画像と、前記全天球画像と、を生成する
請求項８に記載の画像処理装置。
【請求項１０】
前記取得部は、
１８０°以上の画角を持つ前記レンズを介して入射する光を受光する前記撮像素子を含む前記撮像体それぞれから前記撮像画像を取得する
請求項７乃至請求項９の何れか１項に記載の画像処理装置。
【請求項１１】
筐体に、１８０°以上の全画角を持つレンズと、該レンズを介して入射する光を受光する撮像素子と、を含む少なくとも４の撮像体のそれぞれが、他の何れか１の該撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、該撮像体のそれぞれが他の全ての該撮像体の撮像可能範囲外に配置される該撮像体それぞれの撮像画像を取得する取得ステップと、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、３次元点群情報により表される全天球距離画像を生成する画像処理ステップと、
を有する
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置、画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
３次元の物体やシーンを計測するための技術として、ステレオ画像を用いた距離計測技術（ステレオ測距技術）がある。このステレオ測距技術は、複数の異なる視点にカメラを配置して撮像範囲が重なるように撮像を行い、撮像画像間で対応点を検出する。対応点に対応する視差に基づき、カメラから対応点までの距離を計測する。
【０００３】
ステレオ測距技術は、通常画角のカメラを複数台用いて構成するシステムでは、当然の事ながら、撮像範囲のみが距離計測可能範囲である。そのため、より広範囲の計測を可能にするため、例えば、特許文献１には、１２個のステレオカメラユニットを１２面体の各面に取り付け、全方向のカラー画像と距離情報をリアルタイムで取得できる技術が記載されている。また、特許文献２や特許文献３のように、入射面が反対向きになるように配置した２台の魚眼レンズにより構成される全天球カメラを複数台用いることにより、より少ないカメラ数で全方向の距離計測を可能にする構成も既に知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術による全天球カメラを用いたステレオカメラシステムにおいては、全方向の距離計測を行うためには３台以上の全天球カメラが必要であった。すなわち、２台の全天球カメラによるステレオカメラでは、各全天球カメラの撮像画像の中に、もう一方の全天球カメラが映り込んでしまい、その方向の距離計測が困難となる。その課題を解決するため、従来技術においては、３台以上の全天球カメラを使用しなければならないという問題があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、全方向の距離計測をより小規模な構成で実行可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、１８０°以上の全画角を持つレンズと、レンズを介して入射する光を受光する撮像素子と、を含む撮像体と、少なくとも４の撮像体が配置される筐体と、を備え、筐体は、撮像体のそれぞれが他の何れか１の撮像体と光軸が略平行且つ光軸上の光の入射方向が逆となり、撮像体のそれぞれが他の全ての撮像体の撮像可能範囲外に配置される。
【発明の効果】
【０００７】
本発明によれば、全方向の距離計測をより小規模な構成で実行可能となるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態に係る撮像装置の概要を説明するための図である。
【図２】図２は、実施形態に係る撮像装置のハードウェア構成の例を示すブロック図である。
【図３】図３は、実施形態に係る撮像装置の機能を説明するための一例の機能ブロック図である。
【図４】図４は、実施形態に係る撮像装置における全体処理を示す一例のフローチャートである。
【図５】図５は、実施形態に係る、全天球画像セットを生成する処理を説明するための図である。
【図６】図６は、実施形態に適用可能な、魚眼レンズがどのように３次元入射光を２次元に射影するかを説明するための図である。
【図７】図７は、実施形態に適用可能な、球面と正距円筒画像との対応関係を示す図である。
【図８】図８は、実施形態に適用可能な距離画像の生成処理を示す一例のフローチャートである。
【図９】図９は、実施形態に係る測距エリアについて説明するための図である。
【図１０】図１０は、実施形態に係る、各撮像体による各魚眼画像と、各測距エリアとの関係を示す図である。
【図１１】図１１は、実施形態に係る、測距エリアと測距用画像について説明するための図である。
【図１２】図１２は、実施形態に係る、特徴点の座標変換を説明するための図である。
【図１３】図１３は、実施形態に適用可能な、特徴点の距離の算出に適用可能な測距式を説明するための図である。
【図１４】図１４は、実施形態の第１の変形例に係る撮像装置を、筐体の上面側から見た例を示す図である。
【図１５】図１５は、実施形態の第２の変形例に係る撮像装置の概要を説明するための図である。
【図１６】図１６は、実施形態の第３の変形例に係る撮像装置の概要を説明するための図である。
【図１７】図１７は、実施形態の第４の変形例に係る撮像装置を筐体の上面側から見た例を示す図である。
【図１８】図１８は、実施形態の第５の変形例に係る撮像装置を筐体の上面側から見た例を示す図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、撮像装置、画像処理装置および画像処理方法の実施形態を詳細に説明する。
【００１０】
［実施形態に係る撮像装置の概要］
図１は、実施形態に係る撮像装置の概要を説明するための図である。図１（ａ）は、実施形態に係る撮像装置１ａの外観の例を概略的に示す斜視図である。図１（ａ）において、実施形態に係る撮像装置１ａは、立方体の筐体１０ａと、撮像装置１ａを手などにより保持するためのグリップ部１１と、を含む。筐体１０ａの６面のうちの対向する２面（上面および底面とする）を除く４つの面（側面とする）に、１８０°以上の全画角を撮像可能範囲とする撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３を配置する。なお、図１（ａ）において、撮像体Ｃａｍ０およびＣａｍ１は、図面上にて筐体１０ａの背面側にあるため、図においては符号のみ示している。
【００１１】
各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、魚眼レンズを用いた光学系と、例えばＣＣＤ(Charge  Coupled  Device)による撮像素子と、撮像素子を駆動するための駆動回路と、を含む。
【００１２】
グリップ部１１には、撮像を指示するための撮像ボタン１２が設けられる。グリップ部１１に対して、撮像装置１ａに対する設定などの操作を行う操作部や、ステータスなどを表示する表示部をさらに設けてもよい。
【００１３】
図１（ｂ）は、撮像装置１ａを、筐体１０ａの上面側（グリップ部１１が設けられる側に対して反対側）から見た例を示す。図１（ｂ）において、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３の撮像可能領域の例が、撮像範囲２０0、２０1、２０2および２０3として示されている。このように、実施形態に係る撮像装置１ａでは、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、互いの撮像体の撮像可能領域に含まれないように配置される。
【００１４】
また、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、それぞれの光軸の第１の方向に向けた半球を含む範囲を撮像可能とされ、光軸の第１の方向と逆方向の第２の方向に向けた半球を含む他の撮像体との組により、全天球の範囲を撮像可能とされる。図１（ｂ）の例では、撮像体Ｃａｍ０およびＣａｍ２の組、ならびに、撮像体Ｃａｍ１およびＣａｍ３の組それぞれで、全天球の範囲を撮像可能とされている。
【００１５】
すなわち、実施形態に係る撮像装置１ａは、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３の配置を、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３において、撮像画像の全画角１８０°以内に他の撮像体が映り込むことがないように配置される。また、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、２つの撮像体の組で全方位を撮像可能なように、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、他の何れかの撮像体のただ１つと光軸が略平行で、光軸上の光の入射する向きが逆となるように配置される。
【００１６】
換言すれば、筐体１０ａは、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３が、撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３のうち他の何れか１つの撮像体と光軸が略平行且つ光軸上の光の入射方向が逆となり、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３が、撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３のうち他の全ての撮像体の撮像可能範囲外に配置される。
【００１７】
実施形態に係る撮像装置１ａは、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３をこのように配置することで、任意の方位が少なくとも２つの撮像体の撮像可能範囲に入ることで、死角が無い状態で全方位ステレオ測距を実行できる。これにより、全方向の距離計測をより小規模な構成で実行することが可能となる。
【００１８】
図２は、実施形態に係る撮像装置１ａのハードウェア構成の例を示すブロック図である。図２において、撮像装置１ａは、ＣＰＵ(Central  Processing  Unit)１０００と、ＲＯＭ(Read  Only  Memory)１００１と、ＲＡＭ(Random  Access  Memory)１００２と、ＵＩ(User  Interface)デバイス１００３と、画像処理回路１００４と、データＩ／Ｆ１００５と、カメラＩ／Ｆ１００６と、を含む。
【００１９】
ＣＰＵ１０００は、ＲＯＭ１００１に予め記憶されるプログラムに従い、ＲＡＭ１００２をワークメモリとして用いて、この撮像装置１ａの全体の動作を制御する。ＵＩデバイス１００３は、例えば撮像ボタン１２や撮像装置１ａに対して各種設定を行うための入力デバイス、撮像装置１ａのステータスなどを表示する表示デバイスを含む。画像処理回路１００４は、例えばＤＳＰ(Digital  Signal  Processor)であって、ＣＰＵ１０００の指示に従い、ＲＡＭ１００２をワークメモリとして用いて画像処理を実行する。データＩ／Ｆ１００５は、外部装置と撮像装置１ａとの間でデータの送受信を行うもので、例えばＵＳＢ(Universal  Serial  Bus)を適用できる。
【００２０】
カメラＩ／Ｆ１００６は、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３とのインタフェースである。ＣＰＵ１０００は、例えば撮像ボタン１２に対する操作に応じてトリガ信号を生成する。このトリガ信号は、カメラＩ／Ｆ１００６を介して各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３に供給される。各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３は、このトリガ信号に応じて撮像を行い、撮像画像を出力する。各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３から出力される撮像画像は、魚眼レンズによる魚眼画像となる。
【００２１】
各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３から出力された各魚眼画像は、カメラＩ／Ｆ１００６を介して、例えばＣＰＵ１０００に渡され、ＲＡＭ１００２に記憶される。画像処理回路１００４は、ＣＰＵ１０００の指示に従い、ＲＡＭ１００２に記憶される各魚眼画像に対して後述する画像処理を行い、全天球画像を生成すると共に、３次元点群情報である全天球距離画像を生成する。
【００２２】
図３は、実施形態に係る撮像装置１ａの機能を説明するための一例の機能ブロック図である。図３において、撮像装置１ａは、画像取得部１００と、全体制御部１０１と、半球画像処理部１０２と、全天球画像処理部１０３と、出力部１０４と、ＵＩ部１０５と、を含む。
【００２３】
これら画像取得部１００、全体制御部１０１、半球画像処理部１０２、全天球画像処理部１０３および出力部１０４のうち、半球画像処理部１０２および全天球画像処理部１０３は、上述した画像処理回路１００４に含まれる機能である。また、画像取得部１００、全体制御部１０１および出力部１０４は、ＣＰＵ１０００上で動作するプログラムにより実現される。これに限らず、半球画像処理部１０２および全天球画像処理部１０３をさらにＣＰＵ１０００上で動作するプログラムにより実現してもよいし、画像取得部１００、全体制御部１０１および出力部１０４のうち一部または全部を互いに協働するハードウェア回路により構成してもよい。さらに、半球画像処理部１０２および全天球画像処理部１０３をそれぞれ別のハードウェア回路により構成してもよい。
【００２４】
画像取得部１００は、各撮像体Ｃａｍ０〜Ｃａｍ３から出力された各魚眼画像を取得する。画像取得部１００は、取得した各魚眼画像を、例えばＲＡＭ１００２に記憶する。全体制御部１０１は、画像取得部１００、半球画像処理部１０２、全天球画像処理部１０３および出力部１０４を、全体的に制御する。半球画像処理部１０２は、各撮像体Ｃａｍ０〜Ｃａｍ３から取得された各魚眼画像に関する処理を行い、半球画像および半球距離画像を生成する。全天球画像処理部１０３は、半球画像処理部１０２で生成された半球画像および半球距離画像に基づき全天球画像および全天球距離画像を生成する。このように、実施形態に係る撮像装置１ａは、画像処理装置としての機能（例えば半球画像処理部１０２および全天球画像処理部１０３の機能）を含む。
【００２５】
出力部１０４は、全天球画像処理部１０３により生成された全天球画像および全天球距離画像を外部に出力するための出力処理を行う。ＵＩ部１０５は、ＵＩデバイス１００３が含む入力デバイス（撮像ボタン１２を含む）に対するユーザ操作に対する処理と、表示デバイスに対する表示を制御する。
【００２６】
撮像装置１ａにおける画像処理装置としての機能を実現するための画像処理プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ(Compact  Disk)、フレキシブルディスク（ＦＤ）、ＤＶＤ(Digital  Versatile  Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、当該画像処理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、当該画像処理プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。
【００２７】
当該画像処理プログラムは、画像取得部１００、全体制御部１０１および出力部１０４を含むモジュール構成となっている（半球画像処理部１０２および全天球画像処理部１０３をＣＰＵ１０００で動作するプログラムにより実現する場合には、これらも含む）。実際のハードウェアとしては、ＣＰＵ１０００がＲＯＭ１００１などの記憶媒体から当該画像処理プログラムを読み出して実行することにより、上述した各部がＲＡＭ１００２などの主記憶装置上にロードされ、画像取得部１００、全体制御部１０１および出力部１０４が主記憶装置上に生成されるようになっている。
【００２８】
なお、上述では、図３に示した構成が撮像装置１ａに内蔵されるものとして説明しているが、これはこの例に限定されない。例えば、図３に示した構成を、撮像装置１ａとデータＩ／Ｆ１００５を介して接続可能な外部の情報処理装置に持たせてもよい。
【００２９】
図４は、実施形態に係る撮像装置１ａにおける全体処理を示す一例のフローチャートである。実施形態に係る撮像装置１ａでは、撮像ボタン１２が操作され、各撮像体Ｃａｍ０〜Ｃａｍ３の半球撮像画像がカメラＩ／Ｆ１００６を介して取り込まれて画像処理回路１００４に入力され、画像処理回路１００４により、全天球画像と、それに対応する全天球距離画像が出力される。
【００３０】
図４において、ステップＳ１０で、画像取得部１００により、各撮像体Ｃａｍ０〜Ｃａｍ３で撮像された各魚眼画像としての撮像画像が取得される。ここで、各撮像体Ｃａｍ０〜Ｃａｍ３は、それぞれ魚眼画像をカラー画像として出力するものとする。これに限らず、最終的に全天球距離画像のみ、若しくは、全天球距離画像とモノクロ画像による全天球画像とを必要とする場合には、各撮像体Ｃａｍ０〜Ｃａｍ３でモノクロ画像による魚眼画像を出力してもよい。
【００３１】
次のステップＳ１１で、半球画像処理部１０２は、２枚の魚眼画像からなる全天球画像セットを生成する。ここでは、ステップＳ１０で取得した各撮像体Ｃａｍ０〜Ｃａｍ３の各魚眼画像のうち、光軸が略平行で撮像方向が逆方向の２つの撮像体による組を１つ（例えば撮像体Ｃａｍ０およびＣａｍ２の組）指定し、当該組の各撮像体から取得された魚眼画像を変換して半球画像を生成する。ここで、半球画像は、各画素が輝度情報を持つ画像である。各画素が色情報をさらに持つ場合、当該半球画像はカラー画像となる。
【００３２】
半球画像は、魚眼画像を正距円筒図法の形式に変換することによって生成することができる。正距円筒図法とは、地球儀の緯度経度のような、２変数で３次元の方向を表し、緯度経度が直交するように平面表示した図法である。ここでは、ステップＳ１１で生成された全天球画像セットに含まれる２枚の魚眼画像から、２枚の半球画像が生成される。
【００３３】
次のステップＳ１２で、半球画像処理部１０２は、各半球画像に対する距離画像（半球距離画像と呼ぶ）をそれぞれ生成する。距離画像とは、各画素の数値が距離を表している画像である。距離画像生成方法については後述する。ここでは、ステップＳ１１で生成された全天球画像セットに含まれる２枚の魚眼画像にそれぞれ対応する、２枚の半球距離画像が生成される。
【００３４】
次のステップＳ１３で、全天球画像処理部１０３は、ステップＳ１２で生成された２枚の半球画像を繋ぎ、１枚の全天球画像を生成する。ここでは、複数画像を繋ぐための既存の技術を用いることができ、特に方法を限定しない。
【００３５】
次のステップＳ１４で、全天球画像処理部１０３は、上述したステップＳ１３の処理を踏襲し、ステップＳ１２で生成された２枚の半球距離画像を繋いで１枚の全天球距離画像を生成する。ここでは、全天球距離画像と、全天球画像との画素位置を一致させるために、ステップＳ１３と同様の処理により、全天球距離画像を生成する。
【００３６】
［実施形態に係る処理の詳細］
次に、上述した図４のフローチャートにおけるステップＳ１１の処理について、より詳細に説明する。図５は、実施形態に係る、全天球画像セットを生成する処理を説明するための図である。
【００３７】
図４のフローチャートにおけるステップＳ１１では、３次元の全方向をカバーできる２枚の半球画像を生成する。図５（ａ）に示される各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３において、撮像体Ｃａｍ０およびＣａｍ２のセットによる撮像範囲２０0および２０2と、撮像体Ｃａｍ１およびＣａｍ３のセットによる撮像範囲２０1および２０3とが、それぞれ３次元の全方向をカバーできる。ここでは、撮像体Ｃａｍ０およびＣａｍ２によるセットを用いた場合について説明する。
【００３８】
実施形態では、２枚の半球画像を正距円筒画像で持つため、魚眼画像からの変換処理が必要である。１８０°以上の全画角を持つ魚眼画像は、いわゆる円周魚眼というもので、撮像素子上に円状に画像が撮像され、その外側は無効領域として、通常は黒い領域となる。
【００３９】
図５（ｂ）は、撮像体Ｃａｍ０およびＣａｍ２における各撮像素子２１0および２１2上の魚眼画像２２0および２２2の例を示す。また、図５（ｃ）は、図５（ｂ）の各魚眼画像２２0および２２2に対応する正距円筒画像である半球画像２３0および２３2の例を示す。図５（ｂ）および図５（ｃ）において、無効領域を黒で塗り潰して示している。また、白抜きで示している領域は、有効な画素を含む有効領域である。
【００４０】
図６は、実施形態に適用可能な、魚眼レンズがどのように３次元入射光を２次元に射影するかを説明するための図である。図６（ａ）において、撮像体Ｃａｍ０を例に取り、撮像体Ｃａｍ０は、魚眼レンズ２４0と、撮像素子２１0と、を含む。撮像素子２１0の受光面に垂直の軸を、光軸とする。また、図６（ａ）の例では、入射角φは、魚眼レンズ２４0の縁に接する平面と光軸との交点を頂点とした場合の、光軸に対する角度として表される。
【００４１】
１８０°を超える画角を持つ魚眼レンズ２４0で撮像された魚眼画像は、撮像位置から、半球分のシーンの画像となる。ただし、図６（ａ）および図６（ｂ）に示されるように、射影関数ｆ(φ)で関係が決められる、入射角φに対応する像高ｈで魚眼画像２２0が生成される。射影関数ｆ(φ)は、魚眼レンズ２４0の性質によって異なる。例えば、像高ｈ、焦点距離ｆＬ、入射方向と光軸の成す角（入射角）をφとして、下記の式（１）で表される等距離射影方式と呼ばれる射影方式を持つ魚眼レンズ２４0があり、今回はそれを用いるものとする。
ｈ＝ｆＬ×φ    …（１）
【００４２】
正距円筒画像は、正距円筒図法を用いて生成された画像であり、球面座標系の２つの角度変数を２軸とする座標で表現されている。図７は、実施形態に適用可能な、球面と正距円筒画像との対応関係を示す図である。図７（ａ）は、正距円筒画像における座標の例、図７（ｂ）は、球面における座標の例を、それぞれ示す。正距円筒画像は、水平角度が−１８０〜１８０°、垂直角度が−９０〜９０°の、角度座標に対応する画素値を持つ画像である。角度座標は、球面上の各点と対応付けられており、地球儀の緯度経度座標のようなものとなっている。
【００４３】
魚眼画像の座標と、正距円筒画像の座標との関係は、図６で説明したような射影関数ｆ(φ)を用いることで対応付けることができる。よって、この対応関係を用いて、画像変換が可能である。
【００４４】
次に、図４のフローチャートにおけるステップＳ１２による距離画像の生成処理について、より詳細に説明する。図８は、実施形態に適用可能な距離画像の生成処理を示す一例のフローチャートである。ここでは、撮像体Ｃａｍ０により撮像された魚眼画像２２0を正距円筒画像に変換した半球画像２３0に対応する距離画像（半球距離画像と呼ぶ）を生成するものとする。なお、撮像体Ｃａｍ２により撮像された各魚眼画像に対応する各半球画像についても、同様の処理が適用される。撮像体Ｃａｍ０およびＣａｍ２からの２枚の半球距離画像により、全天球の範囲をカバーすることができる。撮像体Ｃａｍ１およびＣａｍ３により撮像された画像については、後述する距離画像生成時の比較画像として活用される。  
【００４５】
ステップＳ２０で、半球画像処理部１０２は、半球画像２３0に対して特徴点抽出を行う。特徴点抽出は、エッジやコーナー等の特徴を持つ点を抽出する技術であれば、適用する技術を特に限定しない。例えば、エッジ検出フィルタを用いた検出でもよいし、Ｈａｒｒｉｓのコーナー検出アルゴリズムを用いることも可能である。
【００４６】
次のステップＳ２１で、半球画像処理部１０２は、測距エリア毎に距離算出用の基準画像および比較画像を生成する。ステレオ測距は、同じシーンを異なる地点から撮像した２つの画像を用いる。よって、測距エリアは、撮像体Ｃａｍ０については、撮像体Ｃａｍ１とのペアでステレオ測距を行う領域と、撮像体Ｃａｍ３とのペアでステレオ測距を行う領域とに分かれる。
【００４７】
図９は、実施形態に係る測距エリアについて説明するための図である。４つの撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３を有する撮像装置１ａにおいては、筐体１０ａの水平面に対する全方位を、４つの測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０に分割している。
【００４８】
ここで、測距エリアＡｒｅａ０−１は、撮像体Ｃａｍ０およびＣａｍ１、測距エリアＡｒｅａ１−２は、撮像体Ｃａｍ１およびＣａｍ２、測距エリアＡｒｅａ２−３は、撮像体Ｃａｍ２およびＣａｍ３、測距エリアＡｒｅａ３−０は、撮像体Ｃａｍ３およびＣａｍ０、というように、各測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０に対して異なる２つの撮像体の組で撮像される。したがって、各測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０において、ステレオ測距を行うための画像の組み合わせが変わることになる。
【００４９】
図１０は、実施形態に係る、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ３による各魚眼画像２２0、２２1、２２2および２２3と、各測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０との関係を示す図である。図１０に示されるように、各魚眼画像２２0、２２1、２２2および２２3は、２つの測距エリアに跨っていることになる。例えば、魚眼画像２２0は、測距エリアＡｒｅａ３−０と測距エリアＡｒｅａ０−１に跨る。したがって、各魚眼画像２２0、２２1、２２2および２２3は、各測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０において、おおよそ半分ずつが用いられる。
【００５０】
基準画像および比較画像について説明する。ステレオ測距を行うための２つの画像のうち一方を基準画像、他方を比較画像と呼び、基準画像の画素位置に対応して距離が算出される。典型的な手法では、距離算出を容易にするために、事前に基準画像および比較画像の平行化処理が行われることが多い。ここでは、平行化された基準画像および比較画像を生成する。正距円筒画像を使ってステレオ測距する場合には、図７（ａ）においてφ＝−９０°およびφ＝９０°の極点を結ぶ軸の方向が、基準画像の撮像位置から比較画像の撮像位置へのベクトルと平行になるように画像を変換する必要がある。こうすることで、基準画像中の特徴点に対応する比較画像中の点は、φ軸方向への探索のみで見つけることができる。
【００５１】
実施形態では、半球画像を、光軸が略平行で撮像方向が互いに逆方向の２つの撮像体、例えば撮像体Ｃａｍ０およびＣａｍ２により撮像された各魚眼画像２２0および２２2に基づき生成している。この場合、最終的には、これらの魚眼画像２２0および２２2に基づく各半球画像に対応する距離画像を生成する必要がある。そのため、基準画像は、撮像体Ｃａｍ０およびＣａｍ２の何れかで撮像された魚眼画像に基づく半球画像が選択される。表１は、測距エリアＡｒｅａ０−１、Ａｒｅａ１−２、Ａｒｅａ２−３およびＡｒｅａ３−０毎の基準画像および比較画像の選択の例を示す。
【００５２】
【表１】
2019159284.tif 000003
【００５３】
図１１は、実施形態に係る、測距エリアと測距用画像について説明するための図である。ここでは、図１１（ａ）を参照し、測距エリアＡｒｅａ０−１を例として、測距用画像について説明する。図１１（ｂ）に示される、撮像体Ｃａｍ０およびＣａｍ１により撮像された各魚眼画像２２0および２２1がステレオ測距用のペアの魚眼画像となる。そのため基線長は、図１１（ａ）に例示されるように、撮像体Ｃａｍ０およびＣａｍ１のレンズの視点を結んだ線の長さとなる。
【００５４】
この基線長方向が正距円筒画像でのφ（図７（ａ）参照）の両端を結ぶ直線の方向となるように平行化した画像例が、図１１（ｃ）に示す測距用画像２５0および２５1である。ここでは、測距用画像２５0を基準画像、測距用画像２５1を比較画像として用いる。図１１（ｃ）において、測距用画像２５0および２５1内の白い部分が画角内の有効領域を示し、黒が画角外の無効領域を示す。正距円筒画像は、３次元全方向を表現するため、画角が１８０°を超える魚眼レンズでは全てをカバーすることはできず、無効領域が存在する。基準画像および比較画像で共に有効領域となっている領域２６0および２６1が、測距エリアＡｒｅａ０−１において測距可能な領域を示している。
【００５５】
次のステップＳ２２で、半球画像処理部１０２は、ステップＳ２０において算出した特徴点を、ステップＳ２１において生成した基準画像上の点に変換する。このとき、特徴点の属する測距エリアに応じて、基準画像を切り替える（表１参照）。また、基準画像上に変換された特徴点は、座標値を整数値に丸める。これは、最終的に特徴点毎の距離算出後に距離画像化するには、画素毎の値として距離を持つ必要があるためである。
【００５６】
図１２は、実施形態に係る、特徴点の座標変換を説明するための図である。ここでは、撮像体Ｃａｍ０で撮像された魚眼画像２２0を例に説明する。魚眼画像２２0が変換された半球画像２３0上で検出された特徴点は、点の位置の属する測距エリアに応じて、その測距エリアの基準画像上の特徴点に変換される。
【００５７】
具体的には、左半分（半球画像２３0内の領域２３０Ｌ）の場合（例えば点ＡおよびＢ）は、測距エリアＡｒｅａ３−０に属するので、測距エリアＡｒｅａ３−０の測距用基準画像２４０Ｌ上の点（この例では点Ａ’およびＢ’）に変換する。右半分（半球画像２３0内の領域２３０Ｒ）の場合（例えば点Ｃ）は、測距エリアＡｒｅａ０−１に属するので、測距エリアＡｒｅａ０−１の測距用基準画像２４０Ｒ上の点（この例では点Ｃ’）に変換する。
【００５８】
次のステップＳ２３で、半球画像処理部１０２は、測距エリアＡｒｅａ０−１、Ａｒｅａ１−１、Ａｒｅａ２−３およびＡｒｅａ３−０毎に特徴点座標の距離を算出する。ステレオ測距の方法は、特に限定されないが、画角が１８０°以上のため、正距円筒画像を用いたステレオ測距を行うことが望ましい。
【００５９】
特徴点の距離の算出は、典型的な手法では、距離算出を容易にするために、事前に２つの画像の平行化処理が行われることが多い。正距円筒画像を使ってステレオ測距する場合には、図７（ａ）においてφ＝−９０°およびφ＝９０°の極点を結ぶ軸の方向が、基準画像の撮像位置から比較画像の撮像位置へのベクトルと平行になるように画像を変換する必要がある。こうすることで、基準画像中の特徴点に対応する比較画像中の点は、φ軸方向への探索のみで見つけることができる。探索方法は、例えば、テンプレートマッチング法などが有効である。φ方向のシフト量すなわち視差から距離を算出する方法は、後述する。
【００６０】
ステップＳ２４で、半球画像処理部１０２は、ステップＳ２３で算出された特徴点座標の距離を、半球画像に係る距離画像（半球距離画像）として保存する。半球画像処理部１０２は、例えばＲＡＭ１００２の所定の領域、もしくは画像処理回路１００４内に、半球画像と同じ縦横サイズの距離画像バッファを用意し、当該距離画像バッファに対して、特徴点となった画素には距離を値として記憶する。特徴点とならなかった画素には、距離「０」もしくはデータとして設定可能な最大距離を入れておくことで、区別できるようにしておく。
【００６１】
図１３は、実施形態に適用可能な、特徴点の距離の算出に適用可能な測距式を説明するための図である。ステップＳ２３の特徴点Ｐの距離の算出に適用可能な測距式について、図１３を参照しながら説明する。φ方向のシフト量、すなわち視差をｄ［ｐｉｘ］とすると、正距円筒画像での距離ｒ［ｍｍ］は、以下の式（２）〜式（５）により求められる。なお、単位［ｐｉｘ］は、画素単位であることを表す。
【００６２】
なお、式（２）〜式（４）、および、図１３において用いられる、各変数、値および係数の意味は、下記の通りである。
(ｕ,ｖ)［ｐｉｘ］：基準画像の座標値
(ｘｃ,ｙｃ)［ｐｉｘ］：基準画像の画像中心
(φ,θ)［ｒａｄ］：基準画像の座標値を角度に直したもの
ｆｓ［ｐｉｘ／ｒａｄ］：角度を画素に変換するための比例係数
Ｂ［ｍｍ］：基線長(基準／比較画像の撮像位置間の距離)
ｄ［ｐｉｘ］：視差
ｒ［ｍｍ］：距離(球面座標系の半径)
【００６３】
φ＝(ｕーｘｃ)／ｆｓ    …（２）
θ＝(ｖーｙｃ)／ｆｓ    …（３）
ｑ＝Ｂ／｛ｔａｎ(φ＋ｄ／ｆｓ)−ｔａｎ(φ)｝    …（４）
ｒ＝ｑ／ｃｏｓ(φ)    …（５）
【００６４】
［実施形態の第１の変形例］
次に、実施形態の第１の変形例について説明する。図１４は、実施形態の第１の変形例に係る撮像装置１ｂを、筐体１０ｂの上面側から見た例を示す図である。なお、図１４において、上述した図１と共通する部分には同一の符号を付して、詳細な説明を省略する。
【００６５】
上述した実施形態に係る撮像装置１ａは、立方体である筐体１０ａの４つの側面に撮像体Ｃａｍ０〜Ｃａｍ３を配置していた。これに対して、実施形態の第１の変形例に係る撮像装置１ｂの筐体１０ｂは、図１４に面１３0、１３1、１３2および１３3で示されるように、図１の立方体の筐体１０ａの各側面の境界の辺を面取りしている。これにより、各撮像体Ｃａｍ０〜Ｃａｍ３の各レンズの大きさに対して筐体１０ｂを大きくしたとしても、レンズの画角内に対する筐体１０ｂの映り込みを防ぐことができる。筐体１０ｂを大きくすることにより、各撮像体Ｃａｍ０〜Ｃａｍ３をレンズ間の距離を離して配置できる。これにより、より高精度なステレオ測距が可能となる。
【００６６】
なお、立方体を面取りした立体は、面取りを行わない状態の各面を当該立体を構成する仮想的な面として考えることで、当該立体を立方体と見做すことができる。
【００６７】
［実施形態の第２の変形例］
次に、実施形態の第２の変形例について説明する。図１５は、実施形態の第２の変形例に係る撮像装置の概要を説明するための図である。図１５（ａ）は、実施形態の第２の変形例に係る撮像装置１ｃの外観の例を概略的に示す斜視図である。図１５（ｂ）は、実施形態の第２の変形例に係る撮像装置１ｃを筐体１０ｃの上面側から見た図である。
【００６８】
なお、図１５（ａ）および図１５（ｂ）において、上述した図１（ａ）および図１（ｂ）と共通する部分には同一の符号を付して、詳細な説明を省略する。また、図１５（ａ）において、撮像体Ｃａｍ０およびＣａｍ１は、図上にて筐体１０ｃの背面側にあるため、図においては符号のみ示している。
【００６９】
上述した実施形態に係る撮像装置１ａでは、筐体１０ａが立方体形状に形成され、この立方体の筐体１０ａの４つの側面に撮像体Ｃａｍ０〜Ｃａｍ３を配置していた。これに対して、実施形態の第２の変形例では、筐体１０ｃを、上面が、４辺の長さが等しい正方形ではなく、対向する２辺の長さが等しく頂点で接する２辺の長さが異なる長方形とした直方体として構成した例である。長方形が、短辺および長辺の長さの比が所定以下、すなわち、各撮像体Ｃａｍ０〜Ｃａｍ３に、１辺で接して隣接する面の撮像体（魚眼レンズ）が映り込まない形状であれば、直方体の筐体１０ｃであっても、上述した実施形態に係るステレオ測距を実施可能である。
【００７０】
これに限らず、各撮像体が配置される筐体は、６面の四角形に囲まれ、対向する２面が平行な立体であって、６面のうち４面以上の各面に撮像体が配置される形状であればよく、例えば、６面全てが平行四辺形で構成される平行六面体と呼ばれる形状であってもよい。
【００７１】
［実施形態の第３の変形例］
次に、実施形態の第３の変形例について説明する。図１６は、実施形態の第３の変形例に係る撮像装置の概要を説明するための図である。図１６（ａ）は、実施形態の第３の変形例に係る撮像装置１ｄの外観の例を概略的に示す斜視図である。図１６（ｂ）は、実施形態の第３の変形例に係る撮像装置１ｄを筐体１０ｄの上面側から見た図である。
【００７２】
上述した実施形態に係る撮像装置１ａでは、立方体の筐体１０ａの４つの側面に撮像体Ｃａｍ０〜Ｃａｍ３を配置していた。これに対して、実施形態の第３の変形例に係る撮像装置１ｄでは、図１６（ａ）および図１６（ｂ）に示されるように、立方体である筐体１０ｄの４つの側面に加え、当該筐体１０ｄの上面および底面に撮像体Ｃａｍ４およびＣａｍ５をさらに配置する。これにより、３次元方向全てに対して、３つの撮像体を用いて撮像を実施できる。ステレオ測距技術において、３眼以上のレンズで異なる位置から撮像することで、より精度を高める技術が既知である。実施形態の第３の変形例に係る撮像装置１ｄに対してこの技術を適用することで、より高精度な全天球距離計測が可能となる。
【００７３】
［実施形態の第４の変形例］
次に、実施形態の第４の変形例について説明する。図１７は、実施形態の第４の変形例に係る撮像装置１ｅを筐体１０ｅの上面側から見た例を示す図である。実施形態の第４の変形例は、図１７に示されるように、筐体１０ｅを六角柱により構成し、筐体１０ｅにおける六角柱の６つの面に、各撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２、Ｃａｍ３、Ｃａｍ４およびＣａｍ５を配置し、６個の撮像体を用いている。
【００７４】
この場合にも、全ての撮像体Ｃａｍ０〜Ｃａｍ５に対して、光軸が略平行で撮像方向が逆方向に別の撮像体が配置されているため（例えば撮像体Ｃａｍ０に対して撮像体Ｃａｍ３）、２つの撮像体により３次元の全方向を撮像可能とされている。これにより、３次元方向全てに対して、３つの撮像体を用いて撮像を実施できる。
【００７５】
また、実施形態の第３の変形例に比べて、下面にレンズが無いことで、グリップや撮像ボタンを配置するスペースを確保することが容易となる。
【００７６】
［実施形態の第５の変形例］
次に、実施形態の第５の変形例について説明する。図１８は、実施形態の第５の変形例に係る撮像装置１ｆを筐体１０ｆの上面側から見た例を示す図である。実施形態の第５の変形例は、図１８に示されるように、上述した実施形態の第３の変形例で示した、六角柱による筐体１０ｅに対して、当該六角柱の上面および底面にそれぞれ撮像体Ｃａｍ６およびＣａｍ７を追加し、８個の撮像体Ｃａｍ０〜Ｃａｍ７を用いた例である。なお、図１８において、撮像体Ｃａｍ７は、図面上で筐体１０ｆの背面側（底面）にあるため、図においては符号のみ示している。
【００７７】
この場合にも、全ての撮像体Ｃａｍ０〜Ｃａｍ７に対して、光軸が略平行で撮像方向が逆方向に別の撮像体が配置されているため、２つの撮像体により３次元の全方向を撮像可能とされている。８個構成では、全ての３次元方向に４つの撮像体（例えば撮像体Ｃａｍ０、Ｃａｍ１、Ｃａｍ２およびＣａｍ６）で異なる位置から撮像できる。
【００７８】
さらに、１つの筐体に配置する撮像体の数は、偶数であれば、１０個、１２個、…と、撮像装置の構造が許す限り、増加させることが可能である。例えば、１８０°以上の全画角を持つ魚眼レンズを有する撮像体を、正２０面体の各面に配置することも可能である。
【００７９】
［実施形態の第６の変形例］
上述した第１の実施形態では、撮像体Ｃａｍ０〜Ｃａｍ３がそれぞれ１８０°以上の全画角を撮像可能であるものとして説明しているが、これはこの例に限定されない。例えば、４の撮像体Ｃａｍ０〜Ｃａｍ３のうち２つの全画角を２００°、残る２つを全画角１６０°などとしてもよい。このような組み合わせであっても、対向する面に同じ画角を持つ撮像体を配置することで、辺を共有する２面に配置された撮像体による撮像範囲に重なりを持たせることができ、第１の実施形態と同様にして、全方位の距離計測を実施可能である。
【００８０】
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。
【符号の説明】
【００８１】
１ａ，１ｂ，１ｃ，１ｄ，１ｅ，１ｆ  撮像装置
１０ａ，１０ｂ，１０ｃ，１０ｄ，１０ｅ，１０ｆ  筐体
２０0，２０1，２０2，２０3  撮像範囲
２１0，２１2  撮像素子
２２0，２２2  魚眼画像
２３0，２３2  半球画像
２４0  魚眼レンズ
２５0  測距用画像
１００  画像取得部
１０２  半球画像処理部
１０３  全天球画像処理部
２４０Ｌ，２４０Ｒ  測距用基準画像
Ａｒｅａ０−１，Ａｒｅａ１−２，Ａｒｅａ２−３，Ａｒｅａ３−０  測距エリア
Ｃａｍ０，Ｃａｍ１，Ｃａｍ２，Ｃａｍ３，Ｃａｍ４，Ｃａｍ５，Ｃａｍ６，Ｃａｍ７  撮像体
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特許第３８２７９１２号公報
【特許文献２】特許第５４８３０２７号公報
【特許文献３】特許第５０１１５２８号公報
【図１】
2019159284.tif 000004
【図２】
2019159284.tif 000005
【図３】
2019159284.tif 000006
【図４】
2019159284.tif 000007
【図５】
2019159284.tif 000008
【図６】
2019159284.tif 000009
【図７】
2019159284.tif 000010
【図８】
2019159284.tif 000011
【図９】
2019159284.tif 000012
【図１０】
2019159284.tif 000013
【図１１】
2019159284.tif 000014
【図１２】
2019159284.tif 000015
【図１３】
2019159284.tif 000016
【図１４】
2019159284.tif 000017
【図１５】
2019159284.tif 000018
【図１６】
2019159284.tif 000019
【図１７】
2019159284.tif 000020
【図１８】
2019159284.tif 000021