(57)【要約】【課題】最適な方法で３次元マップを生成できる画像処理装置、荷物搬送設備、及びそのプログラムを提供する。【解決手段】荷物搬送設備１００の制御部７０は、カメラ１０を移動させて、二地点において撮像させた二枚の２次元画像に基づいて部分的な３次元マップを生成する３次元マップ生成手段を備える。制御部７０は、予め、ガイドレール９０上の各地点からカメラ１０に撮影させて、それらの画像から全体の３次元マップを生成して記憶させる。制御部７０は、記憶している全体の３次元マップに基づいて、任意の撮像対象地点を見通せる地点を導出し、その地点の近傍でカメラ１０に撮像対象地点が撮影できた３次元マップが生成できるまで撮像させ、その部分の３次元マップを生成し、撮影対象地点の３次元マップを取得する。【選択図】図１
2009155056.tif 000002
【特許請求の範囲】
【請求項１】
移動可能領域を移動して２次元画像を撮像するカメラと、
前記カメラが前記移動可能領域の二地点において撮像した二枚の２次元画像に基づいて当該二地点からの３次元マップを生成する３次元マップ生成手段と、
前記３次元マップ生成手段に予め前記移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段と、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の撮像対象を見通せる地点を導出する見通し地点導出手段と、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記撮像対象の３次元マップを取得する対象画像取得手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記３次元マップ生成手段が生成した３次元マップが正当であるか否かを判別する３次元マップ判別手段をさらに備え、
前記対象画像取得手段は、
前記見通し地点導出手段が導出した地点の近傍の一地点で前記カメラに撮像させ、
前記カメラを所定の距離、移動させて当該近傍の他の一地点で撮像させ、
前記カメラが当該二地点で撮像した二枚の２次元画像に基づいて前記３次元マップ生成手段に３次元マップを生成させ、
生成した３次元マップが正当であるか否かを前記３次元マップ判別手段に判別させ、
当該３次元マップが正当でない場合には、前記カメラを再び所定の距離、移動させて撮像させ、
得られた２次元画像のうちの二枚に基づいて前記３次元マップ生成手段に３次元マップを生成させる
処理を、正当な３次元マップが得られるまで繰り返す、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記対象画像取得手段が取得した３次元マップから前記撮像対象の地点に障害物があるか否かを判別する障害物判別手段をさらに備える、
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記障害物判別手段は、前記全体マップ生成手段が生成した全体マップと、前記対象画像取得手段が取得した３次元マップとを比較して、前記撮像対象の地点に障害物があるか否かを判別する、
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
移動可能領域を移動して、任意の荷取り地点で荷取りを行い、任意の荷置き地点で荷置きを行うクレーンと、
前記クレーンと共に前記移動可能領域を移動して２次元画像を撮像するカメラと、
前記カメラが二地点において撮像した二枚の２次元画像に基づいて３次元マップを生成する３次元マップ生成手段と、
前記３次元マップ生成手段に予め前記移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段と、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の荷置き地点を見通せる地点を導出する見通し地点導出手段と、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記荷置き地点の３次元マップを取得する対象画像取得手段と、
前記対象画像取得手段が生成した前記荷置き地点の３次元マップから前記荷置き地点に障害物があるか否かを判別する障害物判別手段と、
前記荷置き地点に障害物がないと前記障害物判別手段が判別した場合に、前記荷置き地点において前記クレーンが荷置きを行うように制御する制御手段と、
を備えることを特徴とする荷物搬送設備。
【請求項６】
前記３次元マップ生成手段が生成した３次元マップが正当であるか否かを判別する３次元マップ判別手段をさらに備え、
前記対象画像取得手段は、
前記見通し地点導出手段が導出した地点の近傍の一地点で前記カメラに撮像させ、
前記カメラを所定の距離、移動させて当該近傍の他の一地点で撮像させ、
前記カメラが当該二地点で撮像した二枚の２次元画像に基づいて前記３次元マップ生成手段に３次元マップを生成させ、
生成した３次元マップが正当であるか否かを前記３次元マップ判別手段に判別させ、
当該３次元マップが正当でない場合には、前記カメラを再び所定の距離、移動させて撮像させ、
得られた２次元画像のうちの二枚に基づいて前記３次元マップ生成手段に３次元マップを生成させる
処理を、正当な３次元マップが得られるまで繰り返す、
ことを特徴とする請求項５に記載の荷物搬送設備。
【請求項７】
前記障害物判別手段は、前記全体マップ生成手段が生成した全体マップと、前記対象画像取得手段が取得した３次元マップとを比較して、前記荷置き地点に障害物があるか否かを判別する、
ことを特徴とする請求項５又は６に記載の荷物搬送設備。
【請求項８】
移動可能領域を移動して２次元画像を撮像するカメラを備えるコンピュータを、
前記カメラが二地点において撮像した二枚の２次元画像に基づいて当該二地点からの３次元マップを生成する３次元マップ生成手段、
前記３次元マップ生成手段に予め前記移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の撮像対象を見通せる地点を導出する見通し地点導出手段、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記撮像対象の３次元マップを取得する対象画像取得手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一台のカメラが移動して複数の地点で撮像した複数の２次元画像に基づいて３次元マップを生成する画像処理装置、荷物搬送設備、及びプログラムに関する。
【背景技術】
【０００２】
倉庫や工場等に設置された荷物搬送設備が、安全に荷物を搬送するためには、荷置き地点の３次元マップを生成し、その３次元マップに基づいて荷物を搬送することが適当である。
【０００３】
例えば、特許文献１では、車両に搭載された一台もしくは複数台のカメラの２次元画像から、３次元マップを生成し、その３次元マップから、例えば、上空等の視点から見た車両周囲の全方向画像を生成する画像生成装置が提案されている。
【０００４】
しかし、現在取得している２次元画像だけから３次元マップを生成しようとすると、車両の死角になる部分が生じ、完全な３次元マップを生成できない。そこで、同じく特許文献１の画像生成装置は、その死角部分を補完する為に、車両の移動に伴い、刻々変化していくカメラの２次元画像を蓄積しておき、蓄積された２次元画像を使用して３次元マップを生成する。
【特許文献１】特許第３２８６３０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１の技術では、過去に撮像した２次元画像をそのまま使用して３次元マップを生成していたので、過去に撮像した２次元画像に最適なものが存在しない場合には３次元マップを生成することができず、最適な方法であるとは言えなかった。
【０００６】
本発明は、上記問題点に鑑みてなされたもので、最適な方法で３次元マップを生成できる画像処理装置、及びそのプログラムを提供することを目的とする。
【０００７】
また、最適な方法で３次元マップを生成し、生成した３次元マップに基づいて荷物の搬送を行う荷物搬送設備を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の第１の観点に係る画像処理装置は、
移動可能領域を移動して２次元画像を撮像するカメラと、
前記カメラが前記移動可能領域の二地点において撮像した二枚の２次元画像に基づいて当該二地点からの３次元マップを生成する３次元マップ生成手段と、
前記３次元マップ生成手段に予め前記移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段と、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の撮像対象を見通せる地点を導出する見通し地点導出手段と、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記撮像対象の３次元マップを取得する対象画像取得手段と、
を備えることを特徴とする。
【０００９】
例えば、前記３次元マップ生成手段が生成した３次元マップが正当であるか否かを判別する３次元マップ判別手段をさらに備え、
前記対象画像取得手段は、
前記見通し地点導出手段が導出した地点の近傍の一地点で前記カメラに撮像させ、
前記カメラを所定の距離、移動させて当該近傍の他の一地点で撮像させ、
前記カメラが当該二地点で撮像した二枚の２次元画像に基づいて前記３次元マップ生成手段に３次元マップを生成させ、
生成した３次元マップが正当であるか否かを前記３次元マップ判別手段に判別させ、
当該３次元マップが正当でない場合には、前記カメラを再び所定の距離、移動させて撮像させ、
得られた２次元画像のうちの二枚に基づいて前記３次元マップ生成手段に３次元マップを生成させる
処理を、正当な３次元マップが得られるまで繰り返してもよい。
【００１０】
例えば、前記対象画像取得手段が取得した３次元マップから前記撮像対象の地点に障害物があるか否かを判別する障害物判別手段をさらに備えてもよい。
【００１１】
例えば、前記障害物判別手段は、前記全体マップ生成手段が生成した全体マップと、前記対象画像取得手段が取得した３次元マップとを比較して、前記撮像対象の地点に障害物があるか否かを判別してもよい。
【００１２】
本発明の第２の観点に係る荷物搬送設備は、
移動可能領域を移動して、任意の荷取り地点で荷取りを行い、任意の荷置き地点で荷置きを行うクレーンと、
前記クレーンと共に前記移動可能領域を移動して２次元画像を撮像するカメラと、
前記カメラが二地点において撮像した二枚の２次元画像に基づいて３次元マップを生成する３次元マップ生成手段と、
前記３次元マップ生成手段に予め移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段と、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の荷置き地点を見通せる地点を導出する見通し地点導出手段と、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記荷置き地点の３次元マップを取得する対象画像取得手段と、
前記対象画像取得手段が生成した前記荷置き地点の３次元マップから前記荷置き地点に障害物があるか否かを判別する障害物判別手段と、
前記荷置き地点に障害物がないと前記障害物判別手段が判別した場合に、前記荷置き地点において前記クレーンが荷置きを行うように制御する制御手段と、
を備えることを特徴とする。
【００１３】
例えば、前記３次元マップ生成手段が生成した３次元マップが正当であるか否かを判別する３次元マップ判別手段をさらに備え、
前記対象画像取得手段は、
前記見通し地点導出手段が導出した地点の近傍の一地点で前記カメラに撮像させ、
前記カメラを所定の距離、移動させて当該近傍の他の一地点で撮像させ、
前記カメラが当該二地点で撮像した二枚の２次元画像に基づいて前記３次元マップ生成手段に３次元マップを生成させ、
生成した３次元マップが正当であるか否かを前記３次元マップ判別手段に判別させ、
当該３次元マップが正当でない場合には、前記カメラを再び所定の距離、移動させて撮像させ、
得られた２次元画像のうちの二枚に基づいて前記３次元マップ生成手段に３次元マップを生成させる
処理を、正当な３次元マップが得られるまで繰り返してもよい。
【００１４】
例えば、前記障害物判別手段は、前記全体マップ生成手段が生成した全体マップと、前記対象画像取得手段が取得した３次元マップとを比較して、前記荷置き地点に障害物があるか否かを判別してもよい。
【００１５】
本発明の第３の観点に係るプログラムは、
移動可能領域を移動して２次元画像を撮像するカメラを備えるコンピュータを、
前記カメラが二地点において撮像した二枚の２次元画像に基づいて当該二地点からの３次元マップを生成する３次元マップ生成手段、
前記３次元マップ生成手段に予め前記移動可能領域の各二地点からの複数の３次元マップを生成させ、それらを合わせて全体マップを生成する全体マップ生成手段、
前記全体マップ生成手段が生成した全体マップに基づいて、任意の撮像対象を見通せる地点を導出する見通し地点導出手段、
前記見通し地点導出手段が導出した地点の近傍で前記カメラに撮像させ、前記３次元マップ生成手段に当該地点からの３次元マップを生成させ、前記撮像対象の３次元マップを取得する対象画像取得手段、
として機能させることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、最適な方法で３次元マップを生成できる。
【００１７】
また、本発明によれば、最適な方法で３次元マップを生成し、生成した３次元マップに基づいて荷物の搬送を行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明に係る荷物搬送設備を実施するための最良の形態について図面を参照して説明する。
【００１９】
図１に示すように、荷物搬送設備１００は、カメラ１０と、カメラコントローラ２０と、モータコントローラ４０と、クレーン５０と、制御部７０と、移動体８０と、ガイドレール９０とを備える。
また、図２に示すように、荷物搬送設備１００は、電気系統として、カメラ１０と、カメラコントローラ２０と、移動モータ３０と、モータコントローラ４０と、クレーン５０と、クレーンコントローラ６０と、制御部７０とを備える。
【００２０】
カメラ１０は、図１に示すように、移動体８０に下向き（Ｚ軸方向）に固定されて取り付けられており、カメラコントローラ２０からの指示により移動体８０の真下の様子を撮影する。
【００２１】
カメラコントローラ２０は、制御部７０の指示に従って、カメラ１０に所要の動作を実行させるとともに、カメラ１０で撮像された画像を制御部７０に転送する。
【００２２】
移動モータ３０は、移動体８０の下面に取り付けられ、モータコントローラ４０の制御に従って移動体８０をガイドレール９０に沿って移動させる。
【００２３】
モータコントローラ４０は、制御部７０の指示に従って、移動モータ３０を制御する。
【００２４】
クレーン５０は、図１に示すように、移動体８０に下向き（Ｚ軸方向）に固定されて取り付けられており、クレーンコントローラ６０からの指示により、任意の荷取り地点で荷取りを行い、任意の荷置き地点で荷置きを行う。
【００２５】
クレーンコントローラ６０は、制御部７０の指示に従って、クレーン５０を制御する。
【００２６】
制御部７０は、動作プログラムを記憶するＲＯＭ（Read Only Memory）、ユーザによる適当な数値入力等を受けて実行されるプログラム及び必要な情報を適宜記憶しておくＲＡＭ（Random Access Memory）、後述する前３次元マップデータ７１等を記憶するハードディスク、及びＣＰＵ（Central Processing Unit：中央演算処理装置）等から構成される。制御部７０は、所定の動作プログラムを実行することで、カメラコントローラ２０から転送された撮像画像を処理するとともに、カメラコントローラ２０とモータコントローラ４０とクレーンコントローラ６０とを制御する。この制御部７０内に３次元マップ生成手段、見通し地点導出手段、対象画像取得手段、３次元マップ判別手段及び障害物判別手段が設けられている。
【００２７】
例えば、制御部７０は、図３に示すように、荷取り地点でクレーン５０に荷物を取らせ、それを見通し地点導出手段により導出させた地点である荷置き地点の近傍に搬送し、荷置き地点近傍の画像をカメラ１０に複数枚、撮影させ、３次元マップ生成手段によりそれらの画像に基づいてステレオマッチング法による処理を行い、荷置き地点近傍の３次元マップを生成する。そして、生成した３次元マップに基づいて、障害物判別手段により障害物があるかないかを判別し、障害物がないと判別した場合には、図３に示すように、荷置き地点でクレーン５０に荷物を降ろさせる。
【００２８】
前３次元マップデータ７１は、荷物搬送設備１００が設置されたときや荷物搬送設備１００に電源が投入されたときに、カメラ１０に走査させて得た移動体８０真下の床全体（移動可能領域全体）の３次元マップである。前３次元マップデータ７１は、ＸＹ座標の項目と、そのＸＹ座標における床のＺ座標の項目と、そのＺ座標を算出するために使用した二枚の２次元画像を撮影したときのカメラ１０位置のＸ座標の項目二つと、から構成される。この前３次元マップデータ７１は、荷物搬送設備１００が、荷物を搬送する場合において、障害物判別手段による荷置き地点に障害物があるかないかを判別するときに見通し地点導出手段によりカメラ１０に荷置き地点を撮影させる場所を決定するために使用される。
【００２９】
移動体８０には、カメラ１０と、カメラコントローラ２０と、移動モータ３０と、モータコントローラ４０と、クレーン５０と、クレーンコントローラ６０とが取り付けられている。移動体８０は、カメラ１０やクレーン５０等と共に、Ｘ軸方向に平行移動する。
移動体８０の下面には、図３に示すように、移動モータ３０により駆動される複数の車輪３５と、被搬送物を把持するクレーン５０とが取り付けられている。複数の車輪３５は、離間したそれぞれのガイドレール９０上に備えられ、図１に示すように、移動体８０は、この複数の車輪３５を介してガイドレール９０に支承されている。
【００３０】
図１に示すように、２本のガイドレール９０は、平行に配設され、移動体８０を図中の矢印で示す方向（Ｘ軸方向）にガイド可能に支承している。また、ガイドレール９０は、移動体８０を支承可能な十分な剛度を備えた鋼材から構成されている。
【００３１】
以下、上記構成の荷物搬送設備１００の動作を説明する。
【００３２】
先ず、荷物搬送設備１００は、設置されたときや電源が投入されたときに、図５に示すように、カメラ１０を移動可能領域全体に走査させて、移動体８０真下の移動可能領域全体の３次元マップを前３次元マップデータ７１として得る。
【００３３】
具体的に説明すると、荷物搬送設備１００は、カメラ１０に撮像させてから、所定の距離を移動させ、再び撮像させ、撮像させた２次元画像と、その一つ前に撮像させた２次元画像との二枚の画像に基づいて、ステレオマッチング法により、それらの二画像の重複する部分の３次元マップを生成することを繰り返し、全体の３次元マップを生成する。
【００３４】
図６（ａ）に示すように、カメラ１０の光軸方向はＺ軸方向であり、カメラ１０の移動方向はＸ軸方向であり、点Ｏ’は、カメラ１０の光学中心である。点Ｑ（ｕ，ｖ，ｆ）は、カメラ１０が焦点距離Ｚ＝ｆにおいて得ることのできる２次元画像（画像１）上の点である。点Ｏ’と点Ｑとの延長線上に、点Ｑに対応する撮影対象である点Ｐ（ｘｐ，ｙｐ，ｚｐ）が存在する。点Ｑと点Ｐとのパラメータの間には、次の関係式が成立する。
【００３５】
（数１）
ｘｐ／ｕ＝ｙｐ／ｖ＝ｚｐ／ｆ
・・・・・・（１）
【００３６】
図６（ｂ）に示すように、荷物搬送設備１００は、カメラ１０を移動させ、撮影させて二枚の２次元画像を得る。この場合には、カメラ１０の光学中心は点Ｏ’から点Ｏ’’に移動し、荷物搬送設備１００は、画像２を得る。その二枚の２次元画像（画像１と画像２）から所定の特徴抽出フィルタで特徴点を抽出し、テンプレートマッチング法によって二画像間の各特徴点を対応付ける。画面１における点Ｑ（ｕ，ｖ，ｆ）に、画面２における点Ｑ’（ｕ’，ｖ’，ｆ）が対応する場合には、次の関係式が成立する。
【００３７】
（数２）
ｘｐ／ｕ’＝ｙｐ／ｖ’＝ｚｐ／ｆ
・・・・・・（２）
【００３８】
ただし、カメラ１０は、光軸を平行に保ちながらＸ軸方向に移動するので、ｖ＝ｖ’とすることができる。荷物搬送設備１００は、数式（１）と（２）を連立させることによって、点Ｐの座標を導出し、点Ｐの座標と、それを導出するための２次元画像を得たときのカメラ１０のＸ座標とを前３次元マップデータ７１に記載する。
【００３９】
荷物搬送設備１００は、二画像間で対応付けられた各特徴点について、このような処理を行うことによって、二画像に基づく部分の３次元マップを生成することができる。また、この処理を繰り返し、全体マップ生成手段により全体の３次元マップ（全体マップ）を生成し、前３次元マップデータ７１として記憶する。
【００４０】
また、荷物搬送設備１００は、ユーザの入力に応答して、荷物の搬送を行う。荷物搬送設備１００は、図３に示すように、荷取り地点でクレーン５０に荷物を取らせ、荷置き地点の３次元マップを生成するために最適なカメラ１０の位置を見通し地点導出手段により前３次元マップデータ７１から取得する。荷物搬送設備１００は、図７に示すように、見通し地点導出手段により前３次元マップデータ７１から取得した位置にカメラ１０を移動させ、その位置近傍の画像をカメラ１０に複数枚、撮影させる。それらの画像に基づいて、対象画像取得手段は、上記と同様に３次元マップ生成手段によりステレオマッチング法による処理を行い、荷置き地点近傍の３次元マップを生成する。そして、生成した３次元マップに基づいて、障害物判別手段により荷置き地点に障害物があるかないかを判別し、障害物がないと判別した場合には、図３に示すように、荷置き地点でクレーン５０に荷物を降ろさせる。
【００４１】
ここで、荷物搬送設備１００が設置されたときや電源が投入されたときに行う前処理を説明する。荷物搬送設備１００は、設置されたときにカメラ１０真下にある荷物搬送設備１００の移動可能領域全体の３次元マップを生成し、前３次元マップデータ７１として記憶する。
【００４２】
以下、図８に示すフローチャートを参照しながら、前処理を詳細に説明する。
【００４３】
荷物搬送設備１００に電源が投入された場合、荷物搬送設備１００の制御部７０は、移動体８０をガイドレール９０の片方の端部（移動可能領域の始端部）に移動させ（ステップＳ１１０）、カメラ１０に撮影させる（ステップＳ１２０）。
【００４４】
次に、制御部７０は、移動体８０を上記端部からその反対方向に所定の距離、移動させ（ステップＳ１３０）、カメラ１０に撮影させる（ステップＳ１４０）。
【００４５】
制御部７０内の３次元マップ生成手段は、ステップＳ１４０で撮影した２次元画像と、その一つ前に撮影した２次元画像とに基づく部分の３次元マップをステレオマッチング法により生成する３次元マップ生成処理を行う（ステップＳ１５０）。３次元マップ生成処理については、後述する。
【００４６】
次に、制御部７０内の全体マップ生成手段は、ステップＳ１５０において生成した３次元マップの情報と、その３次元マップの生成に使用した２次元画像を撮影した時のカメラ１０のＸ座標の情報とを前３次元マップデータ７１に記載する（ステップＳ１６０）。
【００４７】
制御部７０は、移動体８０がガイドレール９０のもう片方の端部（移動可能領域の終端部）に到達したか否かを判別する（ステップＳ１７０）。
【００４８】
カメラ１０がガイドレール９０のもう片方の端部（移動可能領域の終端部）に到達していないと判別すると（Ｓ１７０；ＮＯ）、制御部７０は、処理をステップＳ１３０に戻す。
【００４９】
カメラ１０がガイドレール９０のもう片方の端部（移動可能領域の終端部）に到達したと判別すると（Ｓ１７０；ＹＥＳ）、制御部７０は、荷物搬送設備１００の移動可能領域全体をカメラ１０が撮影したと判断して全体マップ生成のための処理を終了する。
【００５０】
このようにして、前処理によれば、荷物搬送設備１００は、カメラ１０を所定の距離ずつ移動させ、撮影させ、３次元マップ生成手段により各前後二枚の２次元画像に基づいて３次元マップを生成し、全体マップ生成手段により各３次元マップのデータを前３次元マップデータ７１に記載することで、荷物搬送設備１００の移動可能領域全体の３次元マップを生成することができる。なお、前３次元マップデータ７１に記載された３次元マップの情報と、その３次元マップの生成に使用した２次元画像を撮影した時のカメラ１０のＸ座標の情報とは、後の搬送処理において使用される。
【００５１】
次に、荷物搬送設備１００が行う搬送処理を説明する。荷物搬送設備１００は、ユーザの入力に応じて荷取りと荷置きとを行う。
【００５２】
以下、図９に示すフローチャートを参照しながら、搬送処理を詳細に説明する。
【００５３】
ユーザの入力により所定の荷取り地点で荷取りを行い、所定の荷置き地点で荷置きを行う旨の指示を受けると、制御部７０は、先ず、荷取り地点でクレーン５０に荷取りを行わせる（ステップＳ２１０）。
【００５４】
制御部７０内の見通し地点導出手段は、全体マップ生成手段により作成された前３次元マップデータ７１を参照して、荷置き地点を撮影するために好適なＸ座標（荷置き地点近傍）を求めて導出する。制御部７０は、このＸ座標にカメラ１０を移動させ（ステップＳ２２０）、制御部７０内の対象画像取得手段により撮影させる（ステップＳ２３０）。具体的には、例えば、前３次元マップデータ７１における荷置き地点の座標のカメラＸ座標１又はカメラＸ座標２を参照してそのＸ座標又はその付近にカメラ１０を移動させる。
【００５５】
次に制御部７０内の対象画像取得手段は、カメラ１０を所定の距離、移動させ（ステップＳ２４０）、撮影させる（ステップＳ２５０）。
【００５６】
制御部７０内の対象画像取得手段は、ステップＳ２５０で撮影した２次元画像と、ステップＳ２３０で撮影した２次元画像とに基づいて、３次元マップ生成手段によりステレオマッチング法により３次元マップを生成する３次元マップ生成処理を行う（ステップＳ２６０）。３次元マップ生成処理については、後述する。
【００５７】
制御部７０内の３次元マップ判別手段は、ステップＳ２６０において生成した３次元マップで荷置き地点が撮影されているか否かを判別する（ステップＳ２７０）。荷置き地点が撮影されていれば正当と判断し、撮影されていないときは否と判断する。荷置き地点が撮影されているか否かは、３次元マップで荷置き地点周辺の立体物の形状や大きさを判断して荷置き地点が周辺の立体物に隠されているか否かを判断する。
【００５８】
人や荷物等の障害物に隠されることによりステップＳ２６０において生成した３次元マップで荷置き地点が撮影されていないと３次元マップ判別手段が判別すると（Ｓ２７０；ＮＯ）、制御部７０は、カメラ１０が荷置き地点近傍の外にあるか否かを判別する（ステップＳ２８０）。
【００５９】
カメラ１０が荷置き地点近傍にあると判別すると（Ｓ２８０；ＮＯ）、制御部７０は、処理をステップＳ２４０に戻す。
【００６０】
カメラ１０が荷置き地点近傍にないと判別すると（Ｓ２８０；ＹＥＳ）、制御部７０は、荷置き地点近傍で荷置き地点が写った３次元マップが取得できなかったと判断して移動体８０を荷取り地点に戻して（ステップＳ２９０）、クレーン５０に荷置きを行わせ（ステップＳ３１０）、処理を終了する。
【００６１】
ステップＳ２６０において生成した３次元マップで荷置き地点が撮影されており正当と３次元マップ判別手段が判別すると（Ｓ２７０；ＹＥＳ）、制御部７０内の障害物判別手段は、その３次元マップに基づいて荷置き地点に障害物があるか否かを判別する（ステップＳ３００）。なお、荷置き地点に障害物があるか否かは、その３次元マップにおける荷置き地点付近に凹凸があるか否かで判別する。
【００６２】
荷置き地点に障害物があると判別すると（Ｓ３００；ＮＯ）、制御部７０は、移動体８０を荷取り地点に戻して（ステップＳ２９０）、荷取り地点でクレーン５０に荷置きを行わせ（ステップＳ３１０）、処理を終了する。
【００６３】
荷置き地点に障害物がないと判別すると（Ｓ３００；ＹＥＳ）、制御部７０は、荷置き地点でクレーン５０に荷置きを行わせ（ステップＳ３１０）、処理を終了する。
【００６４】
このようにして、搬送処理によれば、荷物搬送設備１００は、過去のデータ（前３次元マップデータ７１）に基づいて荷置き地点を撮影するために最適な地点（見通し地点）を取得し、その地点において荷置きをしようとしている現時点での撮影をし、現時点での３次元マップを生成し、この現時点での３次元マップに人や荷物等の障害物に隠されて荷置き地点が撮影されていなければ、カメラ１０を所定距離動かして再度撮影し、その撮影データで３次元マップを生成し直す。そして、荷置き地点が撮影されている現時点の３次元マップができるまでカメラ１０を所定距離動かして撮影を繰り返す。荷置き地点が撮影できなければ、荷物を荷取り地点に戻し、荷置き地点が撮影された３次元マップが生成できたら荷置き地点に障害物があるか否かを判別して、障害物がない場合には荷置きさせることができる。このため、人や荷物等の位置が刻々と変化する場所であっても、荷置き地点の３次元マップを高い確率で生成でき、人や荷物等の障害物の上に荷置きをしてしまう事故を起こさず荷置きをさせることができる。
【００６５】
次に、荷物搬送設備１００が行う３次元マップ生成処理（Ｓ１５０又はＳ２６０）を説明する。荷物搬送設備１００は、カメラ１０が撮影した２次元画像に基づいてステレオマッチング法による処理を行って３次元マップを生成する。
【００６６】
以下、図１０に示すフローチャートを参照しながら、３次元マップ生成処理を詳細に説明する。
【００６７】
先ず、制御部７０は、処理に使用する前後の２次元画像を取得する（ステップＳ３１０）。具体的に述べると、前処理においては、ステップＳ１４０で撮影した２次元画像と、その一つ前（Ｓ１２０又はＳ１４０）に撮影した２次元画像とを取得する。また、搬送処理においては、ステップＳ２５０で撮影した２次元画像と、ステップＳ２３０で撮影した２次元画像とを取得する。
【００６８】
次に、制御部７０内の３次元マップ生成手段は、ステップＳ３１０で取得した二枚の２次元画像から所定の特徴抽出フィルタで特徴点を抽出し（ステップＳ３２０）、テンプレートマッチング法によって二画像間の各特徴点を対応付ける（ステップＳ３３０）。
【００６９】
制御部７０内の３次元マップ生成手段は、二画像間の対応する特徴点の各移動ベクトルのうちで、カメラ１０の移動ベクトルに見合わないものがある場合に、その特徴点を異常であると判別して除去する（ステップＳ３４０）。
【００７０】
制御部７０内の３次元マップ生成手段は、異常なものを除去した後の各特徴点に基づいて、ステレオマッチング法により、各特徴点の３次元座標を算出し（ステップＳ３５０）、３次元マップを生成し（ステップＳ３６０）、処理を終了する。
【００７１】
このようにして、３次元マップ生成処理によれば、荷物搬送設備１００は、二枚の２次元画像に基づいて、３次元マップを生成することができる。
【００７２】
以上、本発明の実施形態に係る荷物搬送設備１００によれば、過去のデータに基づいて、最適な２次元画像の撮影位置（見通し地点）を判別し、その位置で撮影した２次元画像に基づいて荷置きをしようとしている現時点での最適な３次元マップを生成し、生成した３次元マップに基づいて障害物の有無を判別し、荷物の搬送を行うことができる。人や荷物等の位置が刻々と変化する場所において、人や荷物等が障害物となり荷置き地点の撮影がうまくいかないときでも、カメラ１０を所定距離ずつ動かして荷置き地点が写った３次元マップが生成できるまで撮影を繰り返すので、確実に現時点での荷置き地点の３次元マップが生成でき、その３次元マップによって荷置き地点に障害物があるかないかを判断して荷置きをすることができる。
【００７３】
本発明は、上記実施形態に限定されず、種々の応用及び変形が可能である。
【００７４】
上記実施例では、カメラ１０が設けられた移動体８０は、ガイドレール９０に沿って一軸上を移動したが、これに限らず、移動体８０がＸＹ軸の２軸上を平面的に移動するようにしてあってもよい。
また、上記実施形態の前処理においては、ステップＳ１４０で撮影した２次元画像と、その一つ前（Ｓ１２０又はＳ１４０）に撮影した２次元画像とに基づいて３次元マップを生成したが、任意に二枚の２次元画像を選択して、選択した２次元画像に基づいて３次元マップを生成してもよい。
【００７５】
また、上記実施形態の搬送処理においては、ステップＳ２５０で撮影した２次元画像と、ステップＳ２３０で撮影した２次元画像とに基づいて３次元マップを生成したが、ステップＳ２３０で撮影した２次元画像と、その一つ前に撮影した２次元画像とに基づいて３次元マップを生成してもよい。また、任意に二枚の２次元画像を選択して、選択した２次元画像に基づいて３次元マップを生成してもよい。
【００７６】
上記実施形態の搬送処理においては、その３次元マップにおける荷置き地点付近で凹凸があるか否かで、荷置き地点に障害物があるか否かを判別した。しかし、前処理で生成した３次元マップ（全体マップ）の荷置き地点付近と、搬送処理で生成した３次元マップの荷置き地点付近とを比較して異なるか否かで、荷置き地点に障害物があるか否かを判別してもよい。
【００７７】
また、上記実施形態の３次元マップ生成処理では、３次元マップを生成するためにステレオマッチング法を使用したが、二枚の画像から３次元情報を得るのであれば他の方法を使用してもよい。
【００７８】
また、具体的な細部構成や細部方法等についても適宜変更可能である。
例えば、上記実施形態では、カメラ１０は、移動体の真下の様子を撮影したが、真下ではなくカメラ１０の光軸を斜め下になるように設置し、下方の様子を撮影するようにしてもよい。この場合、下方の様子に真下を含ませても含まなくてもよい。
【図面の簡単な説明】
【００７９】
【図１】本発明の実施形態に係る荷物搬送設備の斜視図である。
【図２】本発明の実施形態に係る荷物搬送設備のブロック図である。
【図３】本発明の実施形態に係る荷物搬送設備の動作を説明するための図である。
【図４】図２の制御部が記憶する前３次元マップデータを説明するための表である。
【図５】本発明の実施形態に係る荷物搬送設備が全体の３次元マップを生成するときの動作を説明するための図である。
【図６】ステレオマッチング法による３次元マップの生成方法を説明するための図である。
【図７】本発明の実施形態に係る荷物搬送設備が荷置きを行うために部分的な３次元マップを生成するときの動作を説明するための図である。
【図８】前処理を説明するためのフローチャートである。
【図９】搬送処理を説明するためのフローチャートである。
【図１０】３次元マップ生成処理を説明するためのフローチャートである。
【符号の説明】
【００８０】
１０      カメラ
２０      カメラコントローラ
３０      移動モータ
３５      車輪
４０      モータコントローラ
５０      クレーン
６０      クレーンコントローラ
７０      制御部
７１      前３次元マップデータ
８０      移動体
９０      ガイドレール
１００    荷物搬送設備
【図１】
2009155056.tif 000003
【図２】
2009155056.tif 000004
【図３】
2009155056.tif 000005
【図４】
2009155056.tif 000006
【図５】
2009155056.tif 000007
【図６】
2009155056.tif 000008
【図７】
2009155056.tif 000009
【図８】
2009155056.tif 000010
【図９】
2009155056.tif 000011
【図１０】
2009155056.tif 000012