(58)【調査した分野】(Int.Cl.,DB名)
障害物を検知する検知手段であって、焦点距離及びフォーカス位置が固定された魚眼レンズと位相差検出センサとを含む検知手段を備えた移動体の障害物検知方法であって、
前記位相差検出センサが、前記魚眼レンズに写り込んだ被写体と、前記移動体との間の距離を算出する算出ステップと、
前記検知手段が、前記距離が前記魚眼レンズの被写界深度に基づいて設定される所定距離内の場合には、前記被写体を前記障害物と判定する判定ステップと、
を含む移動体の障害物検知方法。
障害物を検知する検知手段であって、焦点距離及びフォーカス位置が固定された魚眼レンズと位相差検出センサとを含む検知手段を備えた移動体の障害物検知プログラムであって、
前記位相差検出センサが、前記魚眼レンズに写り込んだ被写体と、前記移動体との間の距離を算出する算出ステップと、
前記検知手段が、前記距離が前記魚眼レンズの被写界深度に基づいて設定される所定距離内の場合には、前記被写体を前記障害物と判定する判定ステップと、
をコンピュータに実行させる移動体の障害物検知プログラム。
【発明を実施するための形態】
【0011】
以下に、本発明を実施するための形態について、図面を参照して、例示的に詳しく説明記載する。ただし、以下の実施の形態に記載されている、構成、数値、処理の流れ、機能要素などは一例に過ぎず、その変形や変更は自由であって、本発明の技術範囲を以下の記載に限定する趣旨のものではない。
【0012】
[第1実施形態]
本発明の第1実施形態としての移動体100について、
図1を用いて説明する。移動体100は、遠隔操作や自動制御によって飛行できる装置であり、空撮や配送などの用途に用いられる装置である。また、本明細書において、移動体とは、飛行装置の他、地上を移動する車両、水上を移動する船舶等を含む概念である。
【0013】
図1に示すように、移動体100は、プロペラ101と、機体102と、撮像用センサ103と、検知部104とを備える。そして、検知部104は、魚眼レンズ141と、位相差検出センサ142とを含む。
【0014】
プロペラ101は、回転して飛行のための推進力を発生させる。機体102は、モータを介して、プロペラ101を支持する。撮像用センサ103は、画像を撮像する。検知部104は、障害物を検知する。
【0015】
本実施形態によれば、魚眼レンズと位相差検出センサとを用いて障害物を検知することができる。
【0016】
[第2実施形態]
次に本発明の第2実施形態に係る移動体について、
図2A乃至
図6を用いて説明する。
【0017】
図2Aは、本実施形態に係る移動体200の外観を示す正面図であり、
図2Bは、本実施形態に係る移動体200の外観を示す平面図である。
図2Cは、本実施形態に係る移動体の魚眼レンズおよび位相差検出センサと、障害物との位置関係を示す図である。
図2Dは、本実施形態に係る移動体による物面角度解像度の計算方法を説明する図である。
図2Eは、本実施形態に係る移動体による前方および後方被写界深度の計算方法を説明する図である。
図2Fは、本実施形態に係る移動体の備えるデュアルピクセルCMOSを説明する図である。
【0018】
図2Aおよび
図2Bに示したように、移動体200は、いわゆるドローンなどのUAV(Unmanned Aerial Vehicle)であり、遠隔操作可能であって、4つのプロペラ201と機体202とを備える。機体202の上部(上面)の四隅にプロペラ201が取り付けられている。機体202の下部(下面)には、ジンバル206と、カメラなどの撮像用センサ207と、支持体209とが取り付けられている。支持体209は、例えば、ランディングギアなどである。ジンバル206と撮像用センサ207とは接続されている。ジンバル206は、撮像用センサ207の姿勢を一定に保つ。四隅に配置されたプロペラ201は、回転駆動されて飛行のための推進力を発生させる。
【0019】
検知部208は、魚眼レンズ281と位相差検出センサ282とを含んで構成される。魚眼レンズ281は、機体202の正面に2つ設けられているが、魚眼レンズ281の数は2つには限られず、1つであっても、3つ以上であってもよい。位相差検出センサ282は、イメージセンサなどと呼ばれるものであり、本実施形態においては、例えば、デュアルピクセルCMOS(Complementary Metal Oxide Semiconductor)が用いられるが、これには限定されない。また、位相差検出センサ282は、機体202の内部に設けられており、魚眼レンズ281からの入射光は、位相差検出センサ282の複数の画素に到達する。
【0020】
魚眼レンズ281は、例えば、移動体200の前面(進行方向側)に取り付けられている。魚眼レンズ281は、移動体200の前方を向いて取り付けられているので、移動体200の進行方向にある被写体(障害物)を捉えることができる。
【0021】
位相差検出センサ282は、魚眼レンズ281で捉えた被写体、つまり、魚眼レンズ281に写り込んだ被写体の画像を結像する。そして、位相差検出センサ282は、魚眼レンズ281で捉えた被写体と、移動体200との間の距離を画素毎に算出する。検知部208は、被写体と移動体200との間の距離が所定距離以内の場合には、この被写体を障害物と判定して、障害物を検知する。
【0022】
図2Cに示したように、魚眼レンズ281の画角(FOV:Field of View)は180°よりも大きい。また、魚眼レンズ281は、焦点距離が固定されている。さらに、魚眼レンズ281は、フォーカス位置も固定されおり、その位置は3m以上5m以下である。これにより、レンズの構成として機械的に動作させる機構を設ける必要がない。なお、アイリス(F値)は、1.2以下で設定する。
【0023】
イメージセンサ(全面像面位相差センサ(デュアルピクセルCMOS))としての位相差検出センサ282は、画素毎のフォーカスの度合いを得ることができるので、その画素から被写体(障害物)までの距離を算出することができる。すなわち、魚眼レンズ281の被写界深度から外れても、全面位相差センサ(全面位相差検出センサ)を用いることである程度の距離であれば測定することができる。なお、位相差検出センサ282の位相差素子(位相差画素)の数は、多ければ多いほど、測距できる箇所が増えるので好ましい。ここでは、位相差検出センサは、全面位相差センサには限定されず、一部に位相差センサ(位相差画素)を備えた位相差検出センサであってもよい。
【0024】
そして、被写体が、魚眼レンズ281の被写界深度内に入ってくると、魚眼レンズ281により被写体を撮影することが可能となる。この場合、被写体を撮影できるか否かは、AF(Auto Focus)機能で判断することができるが、これには限定されない。つまり、魚眼レンズ281のAF機能で、被写体にピントが合わせられるか否かで判断することができる。魚眼レンズ281は、等距離射影方式の撮影方式を採用しており、等距離射影方式は、画面の中心からの距離と角度とが比例する撮影方式である。
【0025】
図2Dを参照して、魚眼レンズ281は、等距離射影方式を採用するので、1ピクセルは、1角度に対応する。そして、像高をyとすると、最大像高y
maxは、y
max=u*M/2となる。また、最大入射角度V
maxは、V
max=V/2となる。なお、Mは、画素数、uは、ピクセルピッチ、Vは、画角をそれぞれ示す。
【0026】
また、等距離射影により、最大像高と最大入射角度との関係は、a/(V
max)=y/y
max(a:任意の角度)と表せる。そして、この式を微分すると、物面角度解像度が以下の式のように得られる。
【0027】
Δa=(V/u*M)*Δy=(V/u*M)*u=V/M (Δy:素子ピッチ)
【0028】
次に、
図2Eを参照して、前方被写界深度および後方被写界深度は次のように表せる。なお、被写界深度=前方被写界深度+後方被写界深度である。
【0029】
前方被写界深度(mm)=(許容錯乱円径(mm)×絞り値×被写体距離(mm)
2)/(焦点距離(mm)
2+許容錯乱円径(mm)×絞り値×被写体距離(mm))
【0030】
後方被写界深度(mm)=(許容錯乱円径(mm)×絞り値×被写体距離(mm)
2)/(焦点距離(mm)
2−許容錯乱円径(mm)×絞り値×被写体距離(mm))
【0031】
ここで、位相差検出センサ282と魚眼レンズ281とのスペックが以下の場合に、物面角度解像度および被写界深度を具体的に計算した計算例を以下に示す。
【0032】
<位相差検出センサ(全面位相差センサ)>
ピクセル数:20M 5510×3665
センササイズ:23.6×15.7mm
2
画素ピッチ:0.0043mm
<魚眼レンズ>
焦点距離:16mm
F#:1.0
被写体までの距離:3,000mm
FOV:180°
許容錯乱円径:0.004mm(位相差検出センサの画素ピッチから決まる)
物面角度解像度:180°/3665=0.05°
3mの被写体距離での解像度は、3,000mm*0.05*π/180=2.6mm
前方被写界深度:134.33mm
後方被写界深度:147.54mm
被写界深度:281.87mm
【0033】
次に
図2Fを参照して、位相差検出センサ282の概略について説明する。
図2F左図に示したように、位相差検出センサ282としてのデュアルピクセルCMOSは、1画素中にフォトダイオード282aとフォトダイオード282bとの2つのフォトダイオードを有する。光を取り込む場合には、各画素の2つのフォトダイオード282a,282bは、それぞれ独立して光を取り込むことができる。
【0034】
そして、
図2F右図に示したように、AF時(AFモード)には、それぞれのフォトダイオード282a,282bからの信号を検出して、被写体との距離を算出したり、算出した距離に応じてフォーカス合わせに利用したりする。なお、撮影時(撮影モード)には、2つのフォトダイオード282a,282bを合わせて、1つの画素として画像信号を出力するが、本実施形態では撮影モードは用いない。
【0035】
図3は、本実施形態に係る移動体200の構成を示すブロック図である。移動体200は、ジンバル206と、検知部208と、メイン制御部310と、メモリ320と、通信インタフェース350と、カメラユニット360と、出力部370とを含む。移動体200とカメラユニット360とは、メイン制御部310を介して接続されている。カメラユニット360は、撮像装置330と、レンズ装置340とを含む。撮像装置330とレンズ装置340とは、一体形成されてもよい。
【0036】
ジンバル206は、支持機構261と、ヨー軸駆動モータ262aと、ピッチ軸駆動モータ262bと、ロール軸駆動モータ262cと、ヨー軸ドライバ263aと、ピッチ軸ドライバ263bと、ロール軸ドライバ263cと、ジンバル制御部264とを含む。さらに、支持機構261は、ヨー軸回転機構261aと、ピッチ軸回転機構261bと、ロール軸回転機構261cとを有する。
【0037】
ジンバル制御部264は、ヨー軸回転機構261aと、ピッチ軸回転機構261bと、ロール軸回転機構261cとを制御する。ヨー軸回転機構261aは、ヨー軸ドライバ263aを介してヨー軸駆動モータ262aにより回転駆動させられる。同様に、ピッチ軸回転機構261bは、ピッチ軸ドライバ263bを介してピッチ軸駆動モータ262bにより回転駆動させられる。ロール軸回転機構261cは、ロール軸ドライバ263bを介してロール軸駆動モータ262cにより回転駆動させられる。
【0038】
レンズ装置340は、複数のレンズ341a,341b,341cを含み、それぞれのレンズ341a,341b,341cは、レンズ制御部342により制御される。レンズ制御部342は、レンズ341a,341b,341cを制御して、ピントなどを合わせて撮影対象物からの光を集光する。
【0039】
撮像装置330は、取り外し可能なメモリ331と、撮像制御部332と、撮像素子333と、レンズの重心位置を調整する重心位置調整部334と、を有する。なお、撮像装置330には、重心位置調整部334を設けなくてもよい。撮像装置330は、レンズ装置340で集光した光を結像して、撮影対象物の像を出力する。
【0040】
検知部208は、魚眼レンズ281と、デュアルピクセルCMOS382と、算出部383と、判定部384とを有する。魚眼レンズ281で集光した光をデュアルピクセルCMOS382で検出し、被写体までの距離を算出部383で算出する。算出部383は、デュアルピクセルCMOS382の全ての画素から被写体までの距離を、位相差に基づいて算出する。
【0041】
検知部208の判定部384は、魚眼レンズ281で捉えた被写体までの距離が所定距離以内である場合には、その被写体を障害物と判断して、障害物を検知する。所定距離は、魚眼レンズ281の被写界深度に基づいて設定されるが、所定距離の設定方法はこれには限定されず、例えば、移動体200のユーザが手動で設定してもよく、任意の値に設定できる。
【0042】
そして、検知部208が障害物を検知すると、出力部370が、アラートメッセージを出力する。出力されたアラートメッセージは、通信インタフェース350を介して外部の機器などに送られる。アラートメッセージは、音声メッセージや、テキストメッセージ、光メッセージ、振動メッセージなどであってもよく、これらには限定されない。また、移動体200は、アラートメッセージを、例えば、移動体200の遠隔操作装置に送信してもよいし、また、移動体200の操作者の所有するスマートフォンなどの携帯端末に送信してもよい。
【0043】
メイン制御部310は、ジンバル206を制御するジンバル制御部264と、撮像制御部332と、算出部383とを制御する。メイン制御部310は、メモリ320と接続されている。メモリ320には、移動体200の制御などに必要なデータやプログラムなどが格納され、また、その他のデータを格納する領域も確保されている。メモリ320は、移動体200から取り外し可能であってもよい。
【0044】
図4は、本実施形態に係る移動体200の備える距離算出テーブル401の一例を示す図である。移動体200は、例えば、距離算出テーブル401を参照して被写体と移動体200との間の距離を算出してもよい。距離算出テーブル401は、魚眼レンズ281で撮像した被写体の画像と関連付けて、レンズ特性412と、位相差検出センサ特性413と、距離414とを記憶する。なお、移動体200が、被写体と移動体200との間の距離を算出する方法は距離算出テーブル401を参照する方法には限定されず、これ以外の様々な方法で計算してもよい。
【0045】
図5は、本実施形態に係る移動体200のハードウェア構成を説明するブロック図である。
【0046】
CPU(Central Processing Unit)510は演算制御用のプロセッサであり、プログラムを実行することで
図3の移動体200の機能構成部を実現する。ROM(Read Only Memory)520は、初期データおよびプログラムなどの固定データおよびプログラムを記憶する。また、ネットワークインタフェース530は、ネットワークを介してその他の装置などと通信する。なお、CPU510は1つに限定されず、複数のCPUであっても、あるいは画像処理用のGPU(Graphics Processing Unit)を含んでもよい。また、ネットワークインタフェース530は、CPU510とは独立したCPUを有して、RAM(Random Access Memory)540の領域に送受信データを書き込みあるいは読み出しするのが望ましい。また、RAM540とストレージ550との間でデータを転送するDMAC(Direct Memory Access Controller)を設けるのが望ましい(図示なし)。さらに、入出力インタフェース560は、CPU510とは独立したCPUを有して、RAM540の領域に入出力データを書き込みあるいは読み出しするのが望ましい。したがって、CPU510は、RAM540にデータが受信あるいは転送されたことを認識してデータを処理する。また、CPU510は、処理結果をRAM540に準備し、後の送信あるいは転送は通信制御部530やDMAC、あるいは入出力インタフェース560に任せる。
【0047】
RAM540は、CPU510が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM540には、本実施形態の実現に必要なデータを記憶する領域が確保されている。被写体画像541は、魚眼レンズ281で捉えた被写体の画像データである。レンズ特性542は、魚眼レンズ281の性能に関するデータである。位相差検出センサ特性543は、デュアルピクセルCMOS382などの位相差検出センサの性能に関するデータである。距離544は、位相差検出センサ282により算出した被写体と移動体200との間の距離である。
【0048】
入出力データ545は、入出力インタフェース560を介して入出力されるデータである。送受信データ546は、ネットワークインタフェース530を介して送受信されるデータである。また、RAM540は、各種アプリケーションモジュールを実行するためのアプリケーション実行領域547を有する。
【0049】
ストレージ550には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ストレージ550は、距離算出テーブル401を格納する。距離算出テーブル401は、
図4に示した、被写体と移動体200との間の距離と、レンズ特性412や位相差検出センサ特性413などと間の関係を管理するテーブルである。
【0050】
ストレージ550は、さらに、検知モジュール551と、算出モジュール552と、判定モジュール553と、出力モジュール554とを格納する。検知モジュール551は、障害物を検知するモジュールである。算出モジュール552は、被写体と移動体200との間の距離を算出するモジュールである。判定モジュール553は、被写体と移動体200との間の距離が所定距離以内か否かに基づいて、魚眼レンズ281で捉えた被写体が障害物か否かを判定するモジュールである。出力モジュール554は、障害物を検知した場合にアラートメッセージを出力するモジュールである。
【0051】
これらのモジュール551〜554は、CPU510によりRAM540のアプリケーション実行領域547に読み出され、実行される。制御プログラム555は、移動体200の全体を制御するためのプログラムである。
【0052】
入出力インタフェース560は、入出力機器との入出力データをインタフェースする。入出力インタフェース560には、表示部561、操作部562、が接続される。また、入出力インタフェース560には、さらに、記憶媒体564が接続されてもよい。さらに、音声出力部であるスピーカ563や、音声入力部であるマイク、あるいは、GPS位置判定部が接続されてもよい。なお、
図5に示したRAM540やストレージ550には、移動体200が有する汎用の機能や他の実現可能な機能に関するプログラムやデータは図示されていない。
【0053】
図6は、本実施形態に係る移動体200の検知部208の処理手順を説明するフローチャートである。ステップS601において、移動体200は、位相差検出センサの出力を初期化する。ステップS603において、移動体200は、魚眼レンズ281で捉えた被写体の画像を取得する。ステップS605において、移動体200は、位相差検出センサの各画素について、被写体の距離を算出する。ステップS607において、移動体200は、被写体が所定距離以内に入っているか否かを判断する。被写体が所定距離以内であれば(ステップS607のYES)、ステップS609において、移動体200は、アラートメッセージを出力する。被写体が所定距離以内でなければ(ステップS607のNO)、移動体200は、ステップS601以降の各ステップを繰り返す。
【0054】
本実施形態によれば、簡易な機構により障害物を検知することができる。また、魚眼レンズを用いているので、180°の画角(視野角)を有し、このため、レンズを駆動させる機構が不要となる。さらに、DFD(Depth From Defocus)方式の画像認識のような複雑な演算処理が不要となる。そして、魚眼レンズの合焦距離が固定されているので、この合焦距離の範囲内に入った被写体を障害物であるとして検出することもできる。
【0055】
[第3実施形態]
次に本発明の第3実施形態に係る移動体について、
図7Aおよび
図7Bを用いて説明する。本実施形態に係る移動体の検知部による処理は、上記第2実施形態と比べると、被写体の大きさを検出して、障害物か否かを判定する処理を有する点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【0056】
図7Aは、本実施形態に係る移動体700の構成を示すブロック図である。移動体700の検知部708は、検出部785をさらに有する。検出部785は、被写体の大きさを検出する。
【0057】
図7Bは、本実施形態に係る移動体700の検知部708の処理手順を説明するための図である。ステップS701において、移動体700の検知部708の判定部384は、検出部785で検出した被写体の大きさが所定の大きさ以上か否かを判定する。被写体の大きさが所定大きさ以上であれば(ステップS701のYES)、移動体はステップS609の処理を実行し、被写体の大きさが所定大きさ以上でなければ(ステップS701のNO)、移動体はステップS601以降の各ステップを繰り返す。被写体の大きさの検出は、例えば、位相差検出センサ282の画素数に基づいて行ってもよいし、また、被写体との距離と画素数とに基づいて行ってもよいが、これらには限定されない。
【0058】
本実施形態によれば、距離と大きさとで障害物判定を行うので、小型の被写体を障害物の検知対象から除外できる。
【0059】
[第4実施形態]
次に本発明の第4実施形態に係る移動体について、
図8Aおよび
図8Bを用いて説明する。
図8Aは、本実施形態に係る移動体の外観を示す正面図である。
図8Bは、本実施形態に係る移動体の外観を示す平面図である。本実施形態に係る移動体は、上記第2実施形態と比べると、魚眼レンズが機体上部に設けられている点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【0060】
魚眼レンズ881は、機体202の上部に取り付けられている。そして、検知部808は、魚眼レンズ881と位相差検出センサ282とで構成される。なお、魚眼レンズ881は、機体202の進行方向と交わる方向において、少なくとも1つ設けられている。魚眼レンズ881の個数は、1個に限られず、2個以上であってもよい。
【0061】
本実施形態によれば、機体の上部に魚眼レンズを設けたので、移動体の上方の障害物も検知することができる。
【0062】
[第5実施形態]
次に本発明の第5実施形態に係る移動体について、
図9Aおよび
図9Bを用いて説明する。
図9Aは、本実施形態に係る移動体の外観を示す正面図である。
図9Bは、本実施形態に係る移動体の外観を示す平面図である。本実施形態に係る移動体は、上記第2実施形態と比べると、魚眼レンズが機体側部に設けられている点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【0063】
魚眼レンズ981は、機体202の側部に4個取り付けられている。そして、検知部908は、魚眼レンズ981と位相差検出センサ282とで構成される。なお、魚眼レンズ981の個数は4個に限られず、1〜3個でも、5個以上であってもよいし、また、魚眼レンズ981を取り付ける位置も任意の位置に取り付けてもよい。ここでは、魚眼レンズ981は、上から見て、機体202の進行方向と平行な方向に2個、進行方向と垂直な方向に2個設けられている。
【0064】
本実施形態によれば、機体の側部に魚眼レンズを設けたので、移動体の前後左右の4方向の障害物を検知することができる。
【0065】
[第6実施形態]
次に本発明の第6実施形態に係る移動体について、
図10Aおよび
図10Bを用いて説明する。
図10Aは、本実施形態に係る移動体の外観を示す正面図である。
図10Bは、本実施形態に係る移動体の外観を示す平面図である。本実施形態に係る移動体は、上記第2実施形態と比べると、魚眼レンズが機体の四隅に設けられている点で異なる。その他の構成および動作は、第2実施形態と同様であるため、同じ構成および動作については同じ符号を付してその詳しい説明を省略する。
【0066】
魚眼レンズ1081は、機体202の四隅に4個、すなわち、4つのプロペラ201の下部に4個取り付けられている。そして、検知部1008は、魚眼レンズ1081と位相差検出センサとで構成される。なお、魚眼レンズ1081の個数は4個には限られない。
【0067】
本実施形態によれば、機体の四隅に魚眼レンズを設けたので、移動体の前後左右の4方向の障害物を検知することができる。また、移動体の附属物により視界を遮られないので、クリア視界を得られ、高い精度で障害物を検知できる。
【0068】
なお、魚眼レンズの取り付け位置について、上記第4実施形態〜第6実施形態を用いて説明をしたが、魚眼レンズの取り付け位置は、これらの実施形態には限定されず、例えば、支持体などに取り付けてもよい。
【0069】
[他の実施形態]
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の範疇に含まれる。
【0070】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、あるいはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるWWW(World Wide Web)サーバも、本発明の範疇に含まれる。特に、少なくとも、上述した実施形態に含まれる処理ステップをコンピュータに実行させるプログラムを格納した非一時的コンピュータ可読媒体(non-transitory computer readable medium)は本発明の範疇に含まれる。