(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-04
(45)【発行日】2022-07-12
(54)【発明の名称】撮像装置、画像処理装置および画像処理方法
(51)【国際特許分類】
G03B 37/00 20210101AFI20220705BHJP
G03B 15/00 20210101ALI20220705BHJP
G03B 19/07 20210101ALI20220705BHJP
G02B 13/06 20060101ALI20220705BHJP
H04N 5/225 20060101ALI20220705BHJP
H04N 5/232 20060101ALI20220705BHJP
【FI】
G03B37/00 A
G03B15/00 W
G03B19/07
G02B13/06
H04N5/225 800
H04N5/225 200
H04N5/225 400
H04N5/232 290
H04N5/232 380
(21)【出願番号】P 2018050207
(22)【出願日】2018-03-16
【審査請求日】2021-02-08
(73)【特許権者】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100089118
【氏名又は名称】酒井 宏明
(72)【発明者】
【氏名】竹中 博一
【審査官】越河 勉
(56)【参考文献】
【文献】国際公開第2013/186803(WO,A1)
【文献】特表2012-504776(JP,A)
【文献】特開2012-220521(JP,A)
【文献】特開2014-057156(JP,A)
【文献】韓国特許第10-0944389(KR,B1)
【文献】国際公開第2010/121506(WO,A1)
【文献】特開2016-119693(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G03B 37/00
G03B 15/00
G03B 19/07
G02B 13/06
H04N 5/225
H04N 5/232
(57)【特許請求の範囲】
【請求項1】
レンズを介して入射する光を受光する撮像素子を含む撮像体と、
少なくとも
6の前記撮像体が配置される筐体と、
を備え、
前記筐体は、
前記撮像体のそれぞれが他の何れか1の前記撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、前記撮像体のそれぞれが他の全ての前記撮像体の撮像可能範囲外に配置され
、
前記撮像体のそれぞれの前記撮像可能範囲は、他の少なくとも2の前記撮像体の前記撮像可能範囲の一部と同一範囲で重なる
撮像装置。
【請求項2】
前記筐体の全方向に対して、少なくとも3の前記撮像体を用いて撮像する
請求項1に記載の撮像装置。
【請求項3】
前記筐体は、
6面の四角形に囲まれた立体であって、該6面のうち4面以上の各面に前記撮像体が配置される
請求項1または請求項2に記載の撮像装置。
【請求項4】
前記立体は、直方体形状である
請求項3に記載の撮像装置。
【請求項5】
前記立体は、立方体形状である
請求項3または請求項4に記載の撮像装置。
【請求項6】
前記レンズは、180°以上の画角を持つ
請求項1乃至請求項5の何れか1項に記載の撮像装置。
【請求項7】
筐体に、レンズを介して入射する光を受光する撮像素子を含む少なくとも
6の撮像体のそれぞれが、他の何れか1の該撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、該撮像体のそれぞれが他の全ての該撮像体の撮像可能範囲外に配置される該撮像体それぞれの撮像画像を取得する取得部と、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、3次元点群情報により表される全天球距離画像を生成する画像処理部と、
を備え
、
前記撮像体のそれぞれの前記撮像可能範囲は、他の少なくとも2の前記撮像体の前記撮像可能範囲の一部と同一範囲で重なる
画像処理装置。
【請求項8】
前記取得部は、前記筐体の全方向に対して、少なくとも3の前記撮像体を用いて撮像された前記撮像画像を取得する
請求項7に記載の画像処理装置。
【請求項9】
前記画像処理部は、さらに、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、各画素が少なくとも輝度情報により表される全天球画像を生成する
請求項7
または8に記載の画像処理装置。
【請求項10】
前記画像処理部は、
前記筐体の辺を共有する
3の面にそれぞれ配置された
3の撮像体から取得した前記撮像画像の組と、前記筐体に配置される、光軸が略平行且つ光軸上の光の入射方向が逆の2の前記撮像体から取得した前記撮像画像の組と、を組み合わせて、3次元の全方向について、前記全天球距離画像と、前記全天球画像と、を生成する
請求項
9に記載の画像処理装置。
【請求項11】
前記取得部は、
180°以上の画角を持つ前記レンズを介して入射する光を受光する前記撮像素子を含む前記撮像体それぞれから前記撮像画像を取得する
請求項7乃至請求項
10の何れか1項に記載の画像処理装置。
【請求項12】
筐体に、180°以上の全画角を持つレンズと、該レンズを介して入射する光を受光する撮像素子と、を含む少なくとも
6の撮像体のそれぞれが、他の何れか1の該撮像体と光軸が略平行且つ該光軸上の光の入射方向が逆となり、該撮像体のそれぞれが他の全ての該撮像体の撮像可能範囲外に配置される該撮像体それぞれの撮像画像を取得する取得ステップと、
前記筐体に配置される全ての前記撮像体から取得した前記撮像画像に基づき、3次元点群情報により表される全天球距離画像を生成する画像処理ステップと、
を有
し、
前記撮像体のそれぞれの前記撮像可能範囲は、他の少なくとも2の前記撮像体の前記撮像可能範囲の一部と同一範囲で重なる
画像処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、撮像装置、画像処理装置および画像処理方法に関する。
【背景技術】
【0002】
3次元の物体やシーンを計測するための技術として、ステレオ画像を用いた距離計測技術(ステレオ測距技術)がある。このステレオ測距技術は、複数の異なる視点にカメラを配置して撮像範囲が重なるように撮像を行い、撮像画像間で対応点を検出する。対応点に対応する視差に基づき、カメラから対応点までの距離を計測する。
【0003】
ステレオ測距技術は、通常画角のカメラを複数台用いて構成するシステムでは、当然の事ながら、撮像範囲のみが距離計測可能範囲である。そのため、より広範囲の計測を可能にするため、例えば、特許文献1には、12個のステレオカメラユニットを12面体の各面に取り付け、全方向のカラー画像と距離情報をリアルタイムで取得できる技術が記載されている。また、特許文献2や特許文献3のように、入射面が反対向きになるように配置した2台の魚眼レンズにより構成される全天球カメラを複数台用いることにより、より少ないカメラ数で全方向の距離計測を可能にする構成も既に知られている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術による全天球カメラを用いたステレオカメラシステムにおいては、全方向の距離計測を行うためには3台以上の全天球カメラが必要であった。すなわち、2台の全天球カメラによるステレオカメラでは、各全天球カメラの撮像画像の中に、もう一方の全天球カメラが映り込んでしまい、その方向の距離計測が困難となる。その課題を解決するため、従来技術においては、3台以上の全天球カメラを使用しなければならないという問題があった。
【0005】
本発明は、上記に鑑みてなされたものであって、全方向の距離計測をより小規模な構成で実行可能とすることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、180°以上の全画角を持つレンズと、レンズを介して入射する光を受光する撮像素子と、を含む撮像体と、少なくとも6の撮像体が配置される筐体と、を備え、筐体は、撮像体のそれぞれが他の何れか1の撮像体と光軸が略平行且つ光軸上の光の入射方向が逆となり、撮像体のそれぞれが他の全ての撮像体の撮像可能範囲外に配置され、撮像体のそれぞれの撮像可能範囲は、他の少なくとも2の撮像体の撮像可能範囲の一部と同一範囲で重なる。
【発明の効果】
【0007】
本発明によれば、全方向の距離計測をより小規模な構成で実行可能となるという効果を奏する。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施形態に係る撮像装置の概要を説明するための図である。
【
図2】
図2は、実施形態に係る撮像装置のハードウェア構成の例を示すブロック図である。
【
図3】
図3は、実施形態に係る撮像装置の機能を説明するための一例の機能ブロック図である。
【
図4】
図4は、実施形態に係る撮像装置における全体処理を示す一例のフローチャートである。
【
図5】
図5は、実施形態に係る、全天球画像セットを生成する処理を説明するための図である。
【
図6】
図6は、実施形態に適用可能な、魚眼レンズがどのように3次元入射光を2次元に射影するかを説明するための図である。
【
図7】
図7は、実施形態に適用可能な、球面と正距円筒画像との対応関係を示す図である。
【
図8】
図8は、実施形態に適用可能な距離画像の生成処理を示す一例のフローチャートである。
【
図9】
図9は、実施形態に係る測距エリアについて説明するための図である。
【
図10】
図10は、実施形態に係る、各撮像体による各魚眼画像と、各測距エリアとの関係を示す図である。
【
図11】
図11は、実施形態に係る、測距エリアと測距用画像について説明するための図である。
【
図12】
図12は、実施形態に係る、特徴点の座標変換を説明するための図である。
【
図13】
図13は、実施形態に適用可能な、特徴点の距離の算出に適用可能な測距式を説明するための図である。
【
図14】
図14は、実施形態の第1の変形例に係る撮像装置を、筐体の上面側から見た例を示す図である。
【
図15】
図15は、実施形態の第2の変形例に係る撮像装置の概要を説明するための図である。
【
図16】
図16は、実施形態の第3の変形例に係る撮像装置の概要を説明するための図である。
【
図17】
図17は、実施形態の第4の変形例に係る撮像装置を筐体の上面側から見た例を示す図である。
【
図18】
図18は、実施形態の第5の変形例に係る撮像装置を筐体の上面側から見た例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、撮像装置、画像処理装置および画像処理方法の実施形態を詳細に説明する。
【0010】
[実施形態に係る撮像装置の概要]
図1は、実施形態に係る撮像装置の概要を説明するための図である。
図1(a)は、実施形態に係る撮像装置1aの外観の例を概略的に示す斜視図である。
図1(a)において、実施形態に係る撮像装置1aは、立方体の筐体10aと、撮像装置1aを手などにより保持するためのグリップ部11と、を含む。筐体10aの6面のうちの対向する2面(上面および底面とする)を除く4つの面(側面とする)に、180°以上の全画角を撮像可能範囲とする撮像体Cam0、Cam1、Cam2およびCam3を配置する。なお、
図1(a)において、撮像体Cam0およびCam1は、図面上にて筐体10aの背面側にあるため、図においては符号のみ示している。
【0011】
各撮像体Cam0、Cam1、Cam2およびCam3は、魚眼レンズを用いた光学系と、例えばCCD(Charge Coupled Device)による撮像素子と、撮像素子を駆動するための駆動回路と、を含む。
【0012】
グリップ部11には、撮像を指示するための撮像ボタン12が設けられる。グリップ部11に対して、撮像装置1aに対する設定などの操作を行う操作部や、ステータスなどを表示する表示部をさらに設けてもよい。
【0013】
図1(b)は、撮像装置1aを、筐体10aの上面側(グリップ部11が設けられる側に対して反対側)から見た例を示す。
図1(b)において、各撮像体Cam0、Cam1、Cam2およびCam3の撮像可能領域の例が、撮像範囲20
0、20
1、20
2および20
3として示されている。このように、実施形態に係る撮像装置1aでは、各撮像体Cam0、Cam1、Cam2およびCam3は、互いの撮像体の撮像可能領域に含まれないように配置される。
【0014】
また、各撮像体Cam0、Cam1、Cam2およびCam3は、それぞれの光軸の第1の方向に向けた半球を含む範囲を撮像可能とされ、光軸の第1の方向と逆方向の第2の方向に向けた半球を含む他の撮像体との組により、全天球の範囲を撮像可能とされる。
図1(b)の例では、撮像体Cam0およびCam2の組、ならびに、撮像体Cam1およびCam3の組それぞれで、全天球の範囲を撮像可能とされている。
【0015】
すなわち、実施形態に係る撮像装置1aは、各撮像体Cam0、Cam1、Cam2およびCam3の配置を、各撮像体Cam0、Cam1、Cam2およびCam3において、撮像画像の全画角180°以内に他の撮像体が映り込むことがないように配置される。また、各撮像体Cam0、Cam1、Cam2およびCam3は、2つの撮像体の組で全方位を撮像可能なように、各撮像体Cam0、Cam1、Cam2およびCam3は、他の何れかの撮像体のただ1つと光軸が略平行で、光軸上の光の入射する向きが逆となるように配置される。
【0016】
換言すれば、筐体10aは、各撮像体Cam0、Cam1、Cam2およびCam3が、撮像体Cam0、Cam1、Cam2およびCam3のうち他の何れか1つの撮像体と光軸が略平行且つ光軸上の光の入射方向が逆となり、各撮像体Cam0、Cam1、Cam2およびCam3が、撮像体Cam0、Cam1、Cam2およびCam3のうち他の全ての撮像体の撮像可能範囲外に配置される。
【0017】
実施形態に係る撮像装置1aは、各撮像体Cam0、Cam1、Cam2およびCam3をこのように配置することで、任意の方位が少なくとも2つの撮像体の撮像可能範囲に入ることで、死角が無い状態で全方位ステレオ測距を実行できる。これにより、全方向の距離計測をより小規模な構成で実行することが可能となる。
【0018】
図2は、実施形態に係る撮像装置1aのハードウェア構成の例を示すブロック図である。
図2において、撮像装置1aは、CPU(Central Processing Unit)1000と、ROM(Read Only Memory)1001と、RAM(Random Access Memory)1002と、UI(User Interface)デバイス1003と、画像処理回路1004と、データI/F1005と、カメラI/F1006と、を含む。
【0019】
CPU1000は、ROM1001に予め記憶されるプログラムに従い、RAM1002をワークメモリとして用いて、この撮像装置1aの全体の動作を制御する。UIデバイス1003は、例えば撮像ボタン12や撮像装置1aに対して各種設定を行うための入力デバイス、撮像装置1aのステータスなどを表示する表示デバイスを含む。画像処理回路1004は、例えばDSP(Digital Signal Processor)であって、CPU1000の指示に従い、RAM1002をワークメモリとして用いて画像処理を実行する。データI/F1005は、外部装置と撮像装置1aとの間でデータの送受信を行うもので、例えばUSB(Universal Serial Bus)を適用できる。
【0020】
カメラI/F1006は、各撮像体Cam0、Cam1、Cam2およびCam3とのインタフェースである。CPU1000は、例えば撮像ボタン12に対する操作に応じてトリガ信号を生成する。このトリガ信号は、カメラI/F1006を介して各撮像体Cam0、Cam1、Cam2およびCam3に供給される。各撮像体Cam0、Cam1、Cam2およびCam3は、このトリガ信号に応じて撮像を行い、撮像画像を出力する。各撮像体Cam0、Cam1、Cam2およびCam3から出力される撮像画像は、魚眼レンズによる魚眼画像となる。
【0021】
各撮像体Cam0、Cam1、Cam2およびCam3から出力された各魚眼画像は、カメラI/F1006を介して、例えばCPU1000に渡され、RAM1002に記憶される。画像処理回路1004は、CPU1000の指示に従い、RAM1002に記憶される各魚眼画像に対して後述する画像処理を行い、全天球画像を生成すると共に、3次元点群情報である全天球距離画像を生成する。
【0022】
図3は、実施形態に係る撮像装置1aの機能を説明するための一例の機能ブロック図である。
図3において、撮像装置1aは、画像取得部100と、全体制御部101と、半球画像処理部102と、全天球画像処理部103と、出力部104と、UI部105と、を含む。
【0023】
これら画像取得部100、全体制御部101、半球画像処理部102、全天球画像処理部103および出力部104のうち、半球画像処理部102および全天球画像処理部103は、上述した画像処理回路1004に含まれる機能である。また、画像取得部100、全体制御部101および出力部104は、CPU1000上で動作するプログラムにより実現される。これに限らず、半球画像処理部102および全天球画像処理部103をさらにCPU1000上で動作するプログラムにより実現してもよいし、画像取得部100、全体制御部101および出力部104のうち一部または全部を互いに協働するハードウェア回路により構成してもよい。さらに、半球画像処理部102および全天球画像処理部103をそれぞれ別のハードウェア回路により構成してもよい。
【0024】
画像取得部100は、各撮像体Cam0~Cam3から出力された各魚眼画像を取得する。画像取得部100は、取得した各魚眼画像を、例えばRAM1002に記憶する。全体制御部101は、画像取得部100、半球画像処理部102、全天球画像処理部103および出力部104を、全体的に制御する。半球画像処理部102は、各撮像体Cam0~Cam3から取得された各魚眼画像に関する処理を行い、半球画像および半球距離画像を生成する。全天球画像処理部103は、半球画像処理部102で生成された半球画像および半球距離画像に基づき全天球画像および全天球距離画像を生成する。このように、実施形態に係る撮像装置1aは、画像処理装置としての機能(例えば半球画像処理部102および全天球画像処理部103の機能)を含む。
【0025】
出力部104は、全天球画像処理部103により生成された全天球画像および全天球距離画像を外部に出力するための出力処理を行う。UI部105は、UIデバイス1003が含む入力デバイス(撮像ボタン12を含む)に対するユーザ操作に対する処理と、表示デバイスに対する表示を制御する。
【0026】
撮像装置1aにおける画像処理装置としての機能を実現するための画像処理プログラムは、インストール可能な形式または実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、当該画像処理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、当該画像処理プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。
【0027】
当該画像処理プログラムは、画像取得部100、全体制御部101および出力部104を含むモジュール構成となっている(半球画像処理部102および全天球画像処理部103をCPU1000で動作するプログラムにより実現する場合には、これらも含む)。実際のハードウェアとしては、CPU1000がROM1001などの記憶媒体から当該画像処理プログラムを読み出して実行することにより、上述した各部がRAM1002などの主記憶装置上にロードされ、画像取得部100、全体制御部101および出力部104が主記憶装置上に生成されるようになっている。
【0028】
なお、上述では、
図3に示した構成が撮像装置1aに内蔵されるものとして説明しているが、これはこの例に限定されない。例えば、
図3に示した構成を、撮像装置1aとデータI/F1005を介して接続可能な外部の情報処理装置に持たせてもよい。
【0029】
図4は、実施形態に係る撮像装置1aにおける全体処理を示す一例のフローチャートである。実施形態に係る撮像装置1aでは、撮像ボタン12が操作され、各撮像体Cam0~Cam3の半球撮像画像がカメラI/F1006を介して取り込まれて画像処理回路1004に入力され、画像処理回路1004により、全天球画像と、それに対応する全天球距離画像が出力される。
【0030】
図4において、ステップS10で、画像取得部100により、各撮像体Cam0~Cam3で撮像された各魚眼画像としての撮像画像が取得される。ここで、各撮像体Cam0~Cam3は、それぞれ魚眼画像をカラー画像として出力するものとする。これに限らず、最終的に全天球距離画像のみ、若しくは、全天球距離画像とモノクロ画像による全天球画像とを必要とする場合には、各撮像体Cam0~Cam3でモノクロ画像による魚眼画像を出力してもよい。
【0031】
次のステップS11で、半球画像処理部102は、2枚の魚眼画像からなる全天球画像セットを生成する。ここでは、ステップS10で取得した各撮像体Cam0~Cam3の各魚眼画像のうち、光軸が略平行で撮像方向が逆方向の2つの撮像体による組を1つ(例えば撮像体Cam0およびCam2の組)指定し、当該組の各撮像体から取得された魚眼画像を変換して半球画像を生成する。ここで、半球画像は、各画素が輝度情報を持つ画像である。各画素が色情報をさらに持つ場合、当該半球画像はカラー画像となる。
【0032】
半球画像は、魚眼画像を正距円筒図法の形式に変換することによって生成することができる。正距円筒図法とは、地球儀の緯度経度のような、2変数で3次元の方向を表し、緯度経度が直交するように平面表示した図法である。ここでは、ステップS11で生成された全天球画像セットに含まれる2枚の魚眼画像から、2枚の半球画像が生成される。
【0033】
次のステップS12で、半球画像処理部102は、各半球画像に対する距離画像(半球距離画像と呼ぶ)をそれぞれ生成する。距離画像とは、各画素の数値が距離を表している画像である。距離画像生成方法については後述する。ここでは、ステップS11で生成された全天球画像セットに含まれる2枚の魚眼画像にそれぞれ対応する、2枚の半球距離画像が生成される。
【0034】
次のステップS13で、全天球画像処理部103は、ステップS12で生成された2枚の半球画像を繋ぎ、1枚の全天球画像を生成する。ここでは、複数画像を繋ぐための既存の技術を用いることができ、特に方法を限定しない。
【0035】
次のステップS14で、全天球画像処理部103は、上述したステップS13の処理を踏襲し、ステップS12で生成された2枚の半球距離画像を繋いで1枚の全天球距離画像を生成する。ここでは、全天球距離画像と、全天球画像との画素位置を一致させるために、ステップS13と同様の処理により、全天球距離画像を生成する。
【0036】
[実施形態に係る処理の詳細]
次に、上述した
図4のフローチャートにおけるステップS11の処理について、より詳細に説明する。
図5は、実施形態に係る、全天球画像セットを生成する処理を説明するための図である。
【0037】
図4のフローチャートにおけるステップS11では、3次元の全方向をカバーできる2枚の半球画像を生成する。
図5(a)に示される各撮像体Cam0、Cam1、Cam2およびCam3において、撮像体Cam0およびCam2のセットによる撮像範囲20
0および20
2と、撮像体Cam1およびCam3のセットによる撮像範囲20
1および20
3とが、それぞれ3次元の全方向をカバーできる。ここでは、撮像体Cam0およびCam2によるセットを用いた場合について説明する。
【0038】
実施形態では、2枚の半球画像を正距円筒画像で持つため、魚眼画像からの変換処理が必要である。180°以上の全画角を持つ魚眼画像は、いわゆる円周魚眼というもので、撮像素子上に円状に画像が撮像され、その外側は無効領域として、通常は黒い領域となる。
【0039】
図5(b)は、撮像体Cam0およびCam2における各撮像素子21
0および21
2上の魚眼画像22
0および22
2の例を示す。また、
図5(c)は、
図5(b)の各魚眼画像22
0および22
2に対応する正距円筒画像である半球画像23
0および23
2の例を示す。
図5(b)および
図5(c)において、無効領域を黒で塗り潰して示している。また、白抜きで示している領域は、有効な画素を含む有効領域である。
【0040】
図6は、実施形態に適用可能な、魚眼レンズがどのように3次元入射光を2次元に射影するかを説明するための図である。
図6(a)において、撮像体Cam0を例に取り、撮像体Cam0は、魚眼レンズ24
0と、撮像素子21
0と、を含む。撮像素子21
0の受光面に垂直の軸を、光軸とする。また、
図6(a)の例では、入射角φは、魚眼レンズ24
0の縁に接する平面と光軸との交点を頂点とした場合の、光軸に対する角度として表される。
【0041】
180°を超える画角を持つ魚眼レンズ24
0で撮像された魚眼画像は、撮像位置から、半球分のシーンの画像となる。ただし、
図6(a)および
図6(b)に示されるように、射影関数f(φ)で関係が決められる、入射角φに対応する像高hで魚眼画像22
0が生成される。射影関数f(φ)は、魚眼レンズ24
0の性質によって異なる。例えば、像高h、焦点距離fL、入射方向と光軸の成す角(入射角)をφとして、下記の式(1)で表される等距離射影方式と呼ばれる射影方式を持つ魚眼レンズ24
0があり、今回はそれを用いるものとする。
h=fL×φ …(1)
【0042】
正距円筒画像は、正距円筒図法を用いて生成された画像であり、球面座標系の2つの角度変数を2軸とする座標で表現されている。
図7は、実施形態に適用可能な、球面と正距円筒画像との対応関係を示す図である。
図7(a)は、正距円筒画像における座標の例、
図7(b)は、球面における座標の例を、それぞれ示す。正距円筒画像は、水平角度が-180~180°、垂直角度が-90~90°の、角度座標に対応する画素値を持つ画像である。角度座標は、球面上の各点と対応付けられており、地球儀の緯度経度座標のようなものとなっている。
【0043】
魚眼画像の座標と、正距円筒画像の座標との関係は、
図6で説明したような射影関数f(φ)を用いることで対応付けることができる。よって、この対応関係を用いて、画像変換が可能である。
【0044】
次に、
図4のフローチャートにおけるステップS12による距離画像の生成処理について、より詳細に説明する。
図8は、実施形態に適用可能な距離画像の生成処理を示す一例のフローチャートである。ここでは、撮像体Cam0により撮像された魚眼画像22
0を正距円筒画像に変換した半球画像23
0に対応する距離画像(半球距離画像と呼ぶ)を生成するものとする。なお、撮像体Cam2により撮像された各魚眼画像に対応する各半球画像についても、同様の処理が適用される。撮像体Cam0およびCam2からの2枚の半球距離画像により、全天球の範囲をカバーすることができる。撮像体Cam1およびCam3により撮像された画像については、後述する距離画像生成時の比較画像として活用される。
【0045】
ステップS20で、半球画像処理部102は、半球画像230に対して特徴点抽出を行う。特徴点抽出は、エッジやコーナー等の特徴を持つ点を抽出する技術であれば、適用する技術を特に限定しない。例えば、エッジ検出フィルタを用いた検出でもよいし、Harrisのコーナー検出アルゴリズムを用いることも可能である。
【0046】
次のステップS21で、半球画像処理部102は、測距エリア毎に距離算出用の基準画像および比較画像を生成する。ステレオ測距は、同じシーンを異なる地点から撮像した2つの画像を用いる。よって、測距エリアは、撮像体Cam0については、撮像体Cam1とのペアでステレオ測距を行う領域と、撮像体Cam3とのペアでステレオ測距を行う領域とに分かれる。
【0047】
図9は、実施形態に係る測距エリアについて説明するための図である。4つの撮像体Cam0、Cam1、Cam2およびCam3を有する撮像装置1aにおいては、筐体10aの水平面に対する全方位を、4つの測距エリアArea0-1、Area1-2、Area2-3およびArea3-0に分割している。
【0048】
ここで、測距エリアArea0-1は、撮像体Cam0およびCam1、測距エリアArea1-2は、撮像体Cam1およびCam2、測距エリアArea2-3は、撮像体Cam2およびCam3、測距エリアArea3-0は、撮像体Cam3およびCam0、というように、各測距エリアArea0-1、Area1-2、Area2-3およびArea3-0に対して異なる2つの撮像体の組で撮像される。したがって、各測距エリアArea0-1、Area1-2、Area2-3およびArea3-0において、ステレオ測距を行うための画像の組み合わせが変わることになる。
【0049】
図10は、実施形態に係る、各撮像体Cam0、Cam1、Cam2およびCam3による各魚眼画像22
0、22
1、22
2および22
3と、各測距エリアArea0-1、Area1-2、Area2-3およびArea3-0との関係を示す図である。
図10に示されるように、各魚眼画像22
0、22
1、22
2および22
3は、2つの測距エリアに跨っていることになる。例えば、魚眼画像22
0は、測距エリアArea3-0と測距エリアArea0-1に跨る。したがって、各魚眼画像22
0、22
1、22
2および22
3は、各測距エリアArea0-1、Area1-2、Area2-3およびArea3-0において、おおよそ半分ずつが用いられる。
【0050】
基準画像および比較画像について説明する。ステレオ測距を行うための2つの画像のうち一方を基準画像、他方を比較画像と呼び、基準画像の画素位置に対応して距離が算出される。典型的な手法では、距離算出を容易にするために、事前に基準画像および比較画像の平行化処理が行われることが多い。ここでは、平行化された基準画像および比較画像を生成する。正距円筒画像を使ってステレオ測距する場合には、
図7(a)においてφ=-90°およびφ=90°の極点を結ぶ軸の方向が、基準画像の撮像位置から比較画像の撮像位置へのベクトルと平行になるように画像を変換する必要がある。こうすることで、基準画像中の特徴点に対応する比較画像中の点は、φ軸方向への探索のみで見つけることができる。
【0051】
実施形態では、半球画像を、光軸が略平行で撮像方向が互いに逆方向の2つの撮像体、例えば撮像体Cam0およびCam2により撮像された各魚眼画像220および222に基づき生成している。この場合、最終的には、これらの魚眼画像220および222に基づく各半球画像に対応する距離画像を生成する必要がある。そのため、基準画像は、撮像体Cam0およびCam2の何れかで撮像された魚眼画像に基づく半球画像が選択される。表1は、測距エリアArea0-1、Area1-2、Area2-3およびArea3-0毎の基準画像および比較画像の選択の例を示す。
【0052】
【0053】
図11は、実施形態に係る、測距エリアと測距用画像について説明するための図である。ここでは、
図11(a)を参照し、測距エリアArea0-1を例として、測距用画像について説明する。
図11(b)に示される、撮像体Cam0およびCam1により撮像された各魚眼画像22
0および22
1がステレオ測距用のペアの魚眼画像となる。そのため基線長は、
図11(a)に例示されるように、撮像体Cam0およびCam1のレンズの視点を結んだ線の長さとなる。
【0054】
この基線長方向が正距円筒画像でのφ(
図7(a)参照)の両端を結ぶ直線の方向となるように平行化した画像例が、
図11(c)に示す測距用画像25
0および25
1である。ここでは、測距用画像25
0を基準画像、測距用画像25
1を比較画像として用いる。
図11(c)において、測距用画像25
0および25
1内の白い部分が画角内の有効領域を示し、黒が画角外の無効領域を示す。正距円筒画像は、3次元全方向を表現するため、画角が180°を超える魚眼レンズでは全てをカバーすることはできず、無効領域が存在する。基準画像および比較画像で共に有効領域となっている領域26
0および26
1が、測距エリアArea0-1において測距可能な領域を示している。
【0055】
次のステップS22で、半球画像処理部102は、ステップS20において算出した特徴点を、ステップS21において生成した基準画像上の点に変換する。このとき、特徴点の属する測距エリアに応じて、基準画像を切り替える(表1参照)。また、基準画像上に変換された特徴点は、座標値を整数値に丸める。これは、最終的に特徴点毎の距離算出後に距離画像化するには、画素毎の値として距離を持つ必要があるためである。
【0056】
図12は、実施形態に係る、特徴点の座標変換を説明するための図である。ここでは、撮像体Cam0で撮像された魚眼画像22
0を例に説明する。魚眼画像22
0が変換された半球画像23
0上で検出された特徴点は、点の位置の属する測距エリアに応じて、その測距エリアの基準画像上の特徴点に変換される。
【0057】
具体的には、左半分(半球画像230内の領域230L)の場合(例えば点AおよびB)は、測距エリアArea3-0に属するので、測距エリアArea3-0の測距用基準画像240L上の点(この例では点A’およびB’)に変換する。右半分(半球画像230内の領域230R)の場合(例えば点C)は、測距エリアArea0-1に属するので、測距エリアArea0-1の測距用基準画像240R上の点(この例では点C’)に変換する。
【0058】
次のステップS23で、半球画像処理部102は、測距エリアArea0-1、Area1-1、Area2-3およびArea3-0毎に特徴点座標の距離を算出する。ステレオ測距の方法は、特に限定されないが、画角が180°以上のため、正距円筒画像を用いたステレオ測距を行うことが望ましい。
【0059】
特徴点の距離の算出は、典型的な手法では、距離算出を容易にするために、事前に2つの画像の平行化処理が行われることが多い。正距円筒画像を使ってステレオ測距する場合には、
図7(a)においてφ=-90°およびφ=90°の極点を結ぶ軸の方向が、基準画像の撮像位置から比較画像の撮像位置へのベクトルと平行になるように画像を変換する必要がある。こうすることで、基準画像中の特徴点に対応する比較画像中の点は、φ軸方向への探索のみで見つけることができる。探索方法は、例えば、テンプレートマッチング法などが有効である。φ方向のシフト量すなわち視差から距離を算出する方法は、後述する。
【0060】
ステップS24で、半球画像処理部102は、ステップS23で算出された特徴点座標の距離を、半球画像に係る距離画像(半球距離画像)として保存する。半球画像処理部102は、例えばRAM1002の所定の領域、もしくは画像処理回路1004内に、半球画像と同じ縦横サイズの距離画像バッファを用意し、当該距離画像バッファに対して、特徴点となった画素には距離を値として記憶する。特徴点とならなかった画素には、距離「0」もしくはデータとして設定可能な最大距離を入れておくことで、区別できるようにしておく。
【0061】
図13は、実施形態に適用可能な、特徴点の距離の算出に適用可能な測距式を説明するための図である。ステップS23の特徴点Pの距離の算出に適用可能な測距式について、
図13を参照しながら説明する。φ方向のシフト量、すなわち視差をd[pix]とすると、正距円筒画像での距離r[mm]は、以下の式(2)~式(5)により求められる。なお、単位[pix]は、画素単位であることを表す。
【0062】
なお、式(2)~式(4)、および、
図13において用いられる、各変数、値および係数の意味は、下記の通りである。
(u,v)[pix]:基準画像の座標値
(xc,yc)[pix]:基準画像の画像中心
(φ,θ)[rad]:基準画像の座標値を角度に直したもの
fs[pix/rad]:角度を画素に変換するための比例係数
B[mm]:基線長(基準/比較画像の撮像位置間の距離)
d[pix]:視差
r[mm]:距離(球面座標系の半径)
【0063】
φ=(uーxc)/fs …(2)
θ=(vーyc)/fs …(3)
q=B/{tan(φ+d/fs)-tan(φ)} …(4)
r=q/cos(φ) …(5)
【0064】
[実施形態の第1の変形例]
次に、実施形態の第1の変形例について説明する。
図14は、実施形態の第1の変形例に係る撮像装置1bを、筐体10bの上面側から見た例を示す図である。なお、
図14において、上述した
図1と共通する部分には同一の符号を付して、詳細な説明を省略する。
【0065】
上述した実施形態に係る撮像装置1aは、立方体である筐体10aの4つの側面に撮像体Cam0~Cam3を配置していた。これに対して、実施形態の第1の変形例に係る撮像装置1bの筐体10bは、
図14に面13
0、13
1、13
2および13
3で示されるように、
図1の立方体の筐体10aの各側面の境界の辺を面取りしている。これにより、各撮像体Cam0~Cam3の各レンズの大きさに対して筐体10bを大きくしたとしても、レンズの画角内に対する筐体10bの映り込みを防ぐことができる。筐体10bを大きくすることにより、各撮像体Cam0~Cam3をレンズ間の距離を離して配置できる。これにより、より高精度なステレオ測距が可能となる。
【0066】
なお、立方体を面取りした立体は、面取りを行わない状態の各面を当該立体を構成する仮想的な面として考えることで、当該立体を立方体と見做すことができる。
【0067】
[実施形態の第2の変形例]
次に、実施形態の第2の変形例について説明する。
図15は、実施形態の第2の変形例に係る撮像装置の概要を説明するための図である。
図15(a)は、実施形態の第2の変形例に係る撮像装置1cの外観の例を概略的に示す斜視図である。
図15(b)は、実施形態の第2の変形例に係る撮像装置1cを筐体10cの上面側から見た図である。
【0068】
なお、
図15(a)および
図15(b)において、上述した
図1(a)および
図1(b)と共通する部分には同一の符号を付して、詳細な説明を省略する。また、
図15(a)において、撮像体Cam0およびCam1は、図上にて筐体10cの背面側にあるため、図においては符号のみ示している。
【0069】
上述した実施形態に係る撮像装置1aでは、筐体10aが立方体形状に形成され、この立方体の筐体10aの4つの側面に撮像体Cam0~Cam3を配置していた。これに対して、実施形態の第2の変形例では、筐体10cを、上面が、4辺の長さが等しい正方形ではなく、対向する2辺の長さが等しく頂点で接する2辺の長さが異なる長方形とした直方体として構成した例である。長方形が、短辺および長辺の長さの比が所定以下、すなわち、各撮像体Cam0~Cam3に、1辺で接して隣接する面の撮像体(魚眼レンズ)が映り込まない形状であれば、直方体の筐体10cであっても、上述した実施形態に係るステレオ測距を実施可能である。
【0070】
これに限らず、各撮像体が配置される筐体は、6面の四角形に囲まれ、対向する2面が平行な立体であって、6面のうち4面以上の各面に撮像体が配置される形状であればよく、例えば、6面全てが平行四辺形で構成される平行六面体と呼ばれる形状であってもよい。
【0071】
[実施形態の第3の変形例]
次に、実施形態の第3の変形例について説明する。
図16は、実施形態の第3の変形例に係る撮像装置の概要を説明するための図である。
図16(a)は、実施形態の第3の変形例に係る撮像装置1dの外観の例を概略的に示す斜視図である。
図16(b)は、実施形態の第3の変形例に係る撮像装置1dを筐体10dの上面側から見た図である。
【0072】
上述した実施形態に係る撮像装置1aでは、立方体の筐体10aの4つの側面に撮像体Cam0~Cam3を配置していた。これに対して、実施形態の第3の変形例に係る撮像装置1dでは、
図16(a)および
図16(b)に示されるように、立方体である筐体10dの4つの側面に加え、当該筐体10dの上面および底面に撮像体Cam4およびCam5をさらに配置する。これにより、3次元方向全てに対して、3つの撮像体を用いて撮像を実施できる。ステレオ測距技術において、3眼以上のレンズで異なる位置から撮像することで、より精度を高める技術が既知である。実施形態の第3の変形例に係る撮像装置1dに対してこの技術を適用することで、より高精度な全天球距離計測が可能となる。
【0073】
[実施形態の第4の変形例]
次に、実施形態の第4の変形例について説明する。
図17は、実施形態の第4の変形例に係る撮像装置1eを筐体10eの上面側から見た例を示す図である。実施形態の第4の変形例は、
図17に示されるように、筐体10eを六角柱により構成し、筐体10eにおける六角柱の6つの面に、各撮像体Cam0、Cam1、Cam2、Cam3、Cam4およびCam5を配置し、6個の撮像体を用いている。
【0074】
この場合にも、全ての撮像体Cam0~Cam5に対して、光軸が略平行で撮像方向が逆方向に別の撮像体が配置されているため(例えば撮像体Cam0に対して撮像体Cam3)、2つの撮像体により3次元の全方向を撮像可能とされている。これにより、3次元方向全てに対して、3つの撮像体を用いて撮像を実施できる。
【0075】
また、実施形態の第3の変形例に比べて、下面にレンズが無いことで、グリップや撮像ボタンを配置するスペースを確保することが容易となる。
【0076】
[実施形態の第5の変形例]
次に、実施形態の第5の変形例について説明する。
図18は、実施形態の第5の変形例に係る撮像装置1fを筐体10fの上面側から見た例を示す図である。実施形態の第5の変形例は、
図18に示されるように、上述した実施形態の第3の変形例で示した、六角柱による筐体10eに対して、当該六角柱の上面および底面にそれぞれ撮像体Cam6およびCam7を追加し、8個の撮像体Cam0~Cam7を用いた例である。なお、
図18において、撮像体Cam7は、図面上で筐体10fの背面側(底面)にあるため、図においては符号のみ示している。
【0077】
この場合にも、全ての撮像体Cam0~Cam7に対して、光軸が略平行で撮像方向が逆方向に別の撮像体が配置されているため、2つの撮像体により3次元の全方向を撮像可能とされている。8個構成では、全ての3次元方向に4つの撮像体(例えば撮像体Cam0、Cam1、Cam2およびCam6)で異なる位置から撮像できる。
【0078】
さらに、1つの筐体に配置する撮像体の数は、偶数であれば、10個、12個、…と、撮像装置の構造が許す限り、増加させることが可能である。例えば、180°以上の全画角を持つ魚眼レンズを有する撮像体を、正20面体の各面に配置することも可能である。
【0079】
[実施形態の第6の変形例]
上述した第1の実施形態では、撮像体Cam0~Cam3がそれぞれ180°以上の全画角を撮像可能であるものとして説明しているが、これはこの例に限定されない。例えば、4の撮像体Cam0~Cam3のうち2つの全画角を200°、残る2つを全画角160°などとしてもよい。このような組み合わせであっても、対向する面に同じ画角を持つ撮像体を配置することで、辺を共有する2面に配置された撮像体による撮像範囲に重なりを持たせることができ、第1の実施形態と同様にして、全方位の距離計測を実施可能である。
【0080】
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。
【符号の説明】
【0081】
1a,1b,1c,1d,1e,1f 撮像装置
10a,10b,10c,10d,10e,10f 筐体
200,201,202,203 撮像範囲
210,212 撮像素子
220,222 魚眼画像
230,232 半球画像
240 魚眼レンズ
250 測距用画像
100 画像取得部
102 半球画像処理部
103 全天球画像処理部
240L,240R 測距用基準画像
Area0-1,Area1-2,Area2-3,Area3-0 測距エリア
Cam0,Cam1,Cam2,Cam3,Cam4,Cam5,Cam6,Cam7 撮像体
【先行技術文献】
【特許文献】
【0082】
【文献】特許第3827912号公報
【文献】特許第5483027号公報
【文献】特許第5011528号公報