(57)【特許請求の範囲】
【請求項１】
所定の視野を有する撮像手段と、
前記撮像手段の前記視野の光軸方向とは異なる、少なくとも１方向の光を反射して、前記撮像手段に入射する反射手段と、
前記撮像手段から出力される画像信号のうち、前記光軸方向に対応する画像信号を抽出する第１の抽出手段と、
前記撮像手段から出力される画像信号のうち、前記反射手段からの入射光に対応する画像信号を抽出する第２の抽出手段と、
前記第１および第２の抽出手段により抽出された画像信号のそれぞれの特徴点を抽出する特徴点抽出手段と、
前記特徴点抽出手段により抽出された特徴点のオプティカルフローから、前記撮像手段の移動している方向を算出する算出手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記反射手段は、４枚の略台形の平面鏡の上底部を前記撮像手段に対向させるとともに、その反射面が外側を向くようにそれぞれの斜辺部を相互に連結させて形成されており、
前記撮像手段は、前記４枚の平面鏡の上底部を４辺とする透過部を透過した前記光軸方向の光と、前記４枚の平面鏡により反射された、前記光軸に対して上下左右方向の反射光とを入射する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
所定の視野を有する撮像ステップと、
前記撮像ステップの前記視野の光軸方向とは異なる、少なくとも１方向の光を反射して、前記撮像ステップに入射する反射ステップと、
前記撮像ステップから出力される画像信号のうち、前記光軸方向に対応する画像信号を抽出する第１の抽出ステップと、
前記撮像ステップから出力される画像信号のうち、前記反射ステップからの入射光に対応する画像信号を抽出する第２の抽出ステップと、
前記第１および第２の抽出ステップにより抽出された画像信号のそれぞれの特徴点を抽出する特徴点抽出ステップと、
前記特徴点抽出ステップにより抽出された特徴点のオプティカルフローから、前記撮像ステップの移動している方向を算出する算出ステップと
を備えることを特徴とする画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像処理装置および画像処理方法に関し、特に、装置自体の移動方向を検出することが可能な画像処理装置および画像処理方法に関する。
【０００２】
【従来の技術】
例えば、自走式のロボットなどにおいては、目的地に正確に移動するためには、ロボットが現在移動している方向を正確に検出する必要が生ずる。
【０００３】
従来において、このような自走式のロボットなどでは、例えば、ロボットの進行方向の画像をＣＣＤカメラなどにより撮像し、撮像された画像の特徴点を抽出した後、特徴点のオプティカルフロー（Optical Flow：光学的移動）などを求めることにより、移動方向を特定するようになされていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、このような方法では、例えば、ロボットが左方向に平行移動した場合、あるいは、ロボットが左方向に回転（方向転換）した場合の何れの場合においても、撮像される画像の特徴点は左から右方向へ移動する（特徴点が左から右へ移動する）ことになるので、これらの区別は困難であった。換言すると、取得される情報量が限定されているため、移動方向を正確に判定することが困難であるという課題があった。
【０００５】
また、前述のような課題を解決するために複数のＣＣＤカメラを装備し、それぞれ異なる方向の画像を撮像させ、各々の画像の移動方向からロボット自体の移動方向を検出することが考えられる。しかしながら、このような方法では、複数のＣＣＤカメラが必要になるので、コストが高くつくという課題があった。
【０００６】
本発明は、以上のような状況に鑑みてなされたものであり、移動方向を正確に、しかも簡単に検出することができる画像処理装置を低コストで実現することを目的とするものである。
【０００７】
【課題を解決するための手段】
請求項１に記載の画像処理装置は、所定の視野を有する撮像手段と、撮像手段の視野の光軸方向とは異なる、少なくとも１方向の光を反射して、撮像手段に入射する反射手段と、撮像手段から出力される画像信号のうち、光軸方向に対応する画像信号を抽出する第１の抽出手段と、撮像手段から出力される画像信号のうち、反射手段からの入射光に対応する画像信号を抽出する第２の抽出手段と、第１および第２の抽出手段により抽出された画像信号のそれぞれの特徴点を抽出する特徴点抽出手段と、特徴点抽出手段により抽出された特徴点のオプティカルフローから、撮像手段の移動している方向を算出する算出手段とを備えることを特徴とする。
【０００８】
請求項３に記載の画像処理方法は、所定の視野を有する撮像ステップと、撮像ステップの視野の光軸方向とは異なる、少なくとも１方向の光を反射して、撮像ステップに入射する反射ステップと、撮像ステップから出力される画像信号のうち、光軸方向に対応する画像信号を抽出する第１の抽出ステップと、撮像ステップから出力される画像信号のうち、反射ステップからの入射光に対応する画像信号を抽出する第２の抽出ステップと、第１および第２の抽出ステップにより抽出された画像信号のそれぞれの特徴点を抽出する特徴点抽出ステップと、特徴点抽出ステップにより抽出された特徴点のオプティカルフローから、撮像ステップの移動している方向を算出する算出ステップとを備えることを特徴とする。
【０００９】
請求項１に記載の画像処理装置においては、撮像手段は所定の視野を有し、撮像手段の視野の光軸方向とは異なる、少なくとも１方向の光を反射手段が反射して、撮像手段に入射し、撮像手段から出力される画像信号のうち、光軸方向に対応する画像信号を第１の抽出手段が抽出し、撮像手段から出力される画像信号のうち、反射手段からの入射光に対応する画像信号を第２の抽出手段が抽出し、第１および第２の抽出手段により抽出された画像信号のそれぞれの特徴点を特徴点抽出手段が抽出し、特徴点抽出手段により抽出された特徴点のオプティカルフローから、撮像手段の移動している方向を算出手段が算出する。例えば、ＣＣＤカメラのように所定の視野を有する撮像手段に対して、撮影手段の光軸に対して上下左右の計４方向からの光を４枚の反射鏡からなる反射手段がそれぞれ反射して入射するとともに、４枚の反射鏡の中央部に設けられた透過部を透過した光軸方向の光を入射し、第１の抽出手段は、透過部を透過した光に対応する画像を抽出し、第２の抽出手段は、４枚の反射鏡により反射された上下左右方向の光に対応する画像をそれぞれ抽出し、特徴点抽出手段は、第１および第２の抽出手段により抽出されたそれぞれの画像の特徴点を抽出し、算出手段は、特徴点抽出手段により抽出された合計５枚の画像の特徴点のオプティカルフローから撮像手段の移動方向を算出する。
【００１０】
請求項３に記載の画像処理方法においては、撮像ステップは所定の視野を有し、撮像ステップの視野の光軸方向とは異なる、少なくとも１方向の光を反射ステップが反射して、撮像ステップに入射し、撮像ステップから出力される画像信号のうち、光軸方向に対応する画像信号を第１の抽出ステップが抽出し、撮像ステップから出力される画像信号のうち、反射ステップからの入射光に対応する画像信号を第２の抽出ステップが抽出し、第１および第２の抽出ステップにより抽出された画像信号のそれぞれの特徴点を特徴点抽出ステップが抽出し、特徴点抽出ステップにより抽出された特徴点のオプティカルフローから、撮像ステップの移動している方向を算出ステップが算出する。例えば、ＣＣＤカメラのように所定の視野を有する撮像ステップに対して、撮影ステップの光軸に対して上下左右の計４方向からの光を４枚の反射鏡からなる反射ステップがそれぞれ反射して入射するとともに、４枚の反射鏡の中央部に設けられた透過部を透過した光軸方向の光を入射し、第１の抽出ステップは、透過部を透過した光に対応する画像を抽出し、第２の抽出ステップは、４枚の反射鏡により反射された上下左右方向の光に対応する画像をそれぞれ抽出し、特徴点抽出ステップは、第１および第２の抽出ステップにより抽出されたそれぞれの画像の特徴点を抽出し、算出ステップは、特徴点抽出ステップにより抽出された合計５枚の画像の特徴点のオプティカルフローから撮像ステップの移動方向を算出する。
【００１１】
【発明の実施の形態】
図１は、本発明の実施の形態の構成例を示すブロック図である。この図において、反射鏡１（反射手段）は、図２の正面図に示すように、４枚の略台形の平面鏡（上方画像用鏡１−１、下方画像用鏡１−２、左方向用鏡１−３、および、右方向用鏡１−４）の上底部をＣＣＤカメラ２（撮像手段）に対向させるとともに、その反射面が外側を向くようにそれぞれの斜辺部を相互に連結させて形成されおり、ＣＣＤカメラ２から所定の距離だけ離れた位置に固定されている。即ち、これら４枚の鏡は、台形の下底が上底よりも紙面の奥の方になるように配置されており、紙面の上方向から観察した場合には、凸形状となる。これら４枚の鏡は、ＣＣＤカメラ２の光軸に対して上下左右方向の光を反射して、ＣＣＤカメラ２に入射するようになされている。また、その中央部に設けられている透過部（反射鏡１−１乃至１−４の上底を４辺とする透過部）は、光軸方向の光を透過してＣＣＤカメラ２に入射するようになされている。
【００１２】
図３は、反射鏡１−１乃至１−４とＣＣＤカメラ２との位置関係を説明する図である。この図に示すように、反射鏡１−１乃至１−４は、ＣＣＤカメラ２の前方に配置されており、図４に示すように、ＣＣＤカメラ２の光軸に対して上下左右方向の光を反射してＣＣＤカメラ２に入射するようになされている。また、反射鏡１−１乃至１−４の上底部を４辺とする透過部からは、ＣＣＤカメラ２の光軸方向の光が入射される。
【００１３】
このようにしてＣＣＤカメラ２に入射された光は、対応する画像信号に変換されて出力される。図５は、ＣＣＤカメラ２から出力される画像の一例を示す図である。この図に示すように、ＣＣＤカメラ２から出力される画像は、反射鏡１−１乃至１−４の中央の透過部を透過した前方画像、反射鏡１−１により反射された上方画像、反射鏡１−２により反射された下方画像、反射鏡１−３により反射された左方画像、および、反射鏡１−４により反射された右方画像の複合画像である。
【００１４】
前方画像抽出部３−１（第１の抽出部）は、図５に示す前方画像（反射鏡の中央を透過した光に対応する画像）を抽出するようになされている。また、上方画像抽出部３−２（第２の抽出部）は、反射鏡１−１により反射された光に対応する画像を抽出するようになされてている。同様にして、下方画像抽出部３−３（第２の抽出部）、左方画像抽出部３−４（第２の抽出部）、または、右方画像抽出部３−５（第２の抽出部）は、それぞれ、反射鏡１−２乃至１−４により反射された光に対応する画像を抽出するようになされている。
【００１５】
特徴点抽出部４−１乃至４−５（特徴点抽出手段）は、前、および、上下左右方向の画像抽出部３−１乃至３−５により抽出された画像信号から所定の特徴点（例えば、画素値が隣接部分に比べて大きく変化する部分）を抽出するようになされている。
【００１６】
オプティカルフロー算出部５−１乃至５−５（算出手段）は、特徴点抽出部４−１乃至４−５により抽出された特徴点のオプティカルフロー（特徴点の移動方向）を算出するようになされている。これらのオプティカルフローは、上下左右方向の移動の有無、拡大もしくは縮小の有無、または、右もしくは左方向の回転の有無として算出される。
【００１７】
移動方向判定部６（算出手段）は、オプティカルフロー算出部５−１乃至５−５により算出されたオプティカルフローを総合して、ＣＣＤカメラ２の移動方向を判定するようになされている。
【００１８】
次に、以上の実施の形態の動作について説明する。
【００１９】
いま、図１に示す実施の形態が自走ロボット（以下、ロボットと略記する）の所定の部分に固定されているとする。そのような場合において、例えば、ロボットが前方（カメラの光軸方向）へ移動したとする。
【００２０】
そのとき、前方、および、上下左右方向の画像抽出部３−１乃至３−５は、ＣＣＤカメラ２から出力される画像信号から、図５に示す前方画像、および、上下左右方向の画像を抽出し、特徴点抽出部４−１乃至４−５に供給する。
【００２１】
特徴点抽出部４−１乃至４−５は、例えば、画素値が隣接部分に比べて大きく変化する点をそれぞれの画像から抽出し、抽出された点を特徴点とする。そして、抽出された特徴点をオプティカルフロー算出部５−１乃至５−５に供給する。
【００２２】
オプティカルフロー算出部５−１乃至５−５は、特徴点抽出部４−１乃至４−５により抽出された特徴点の移動している方向を、現在の特徴点の位置と、その直前の特徴点の位置とを比較するすることにより算出する。例えば、自走ロボットが前方（ＣＣＤカメラ２の光軸方向）に移動している場合、前方画像の特徴点は光軸を中心点として放射状に移動（拡散）することになる。
【００２３】
また、そのとき、上方画像の特徴点は上から下に向かって移動する。更に、下方画像では、特徴点は下から上に移動し、左方画像では左から右へ、また、右方画像では右から左へ移動する。
【００２４】
ＣＣＤカメラ２が所定の方向に移動されたり、回転された場合の特徴点の移動方向を図６に示す。
【００２５】
この図に示すように、ＣＣＤカメラ２が前方（光軸方向）へ移動された場合には、前述したように、前方画像は拡大し、上下左右方向の画像は、それぞれ、下、上、右、または、左方向へ移動する。
【００２６】
また、ＣＣＤカメラ２が後方へ移動された場合には、前方画像は縮小し、上下左右方向の画像は、それぞれ、上、下、左、または、右方向へ移動する。
【００２７】
ＣＣＤカメラ２が上へ平行移動された場合には、上方画像は拡大し、下方画像は縮小し、また、前方、左方、および、右方画像は全て下へ移動する。
【００２８】
ＣＣＤカメラ２が下へ平行移動された場合には、上方画像は縮小し、下方画像は拡大し、また、前方、左方、および、右方画像は全て上へ移動する。
【００２９】
ＣＣＤカメラ２が左へ平行移動された場合には、前方、上方、および、下方画像は全て右へ移動し、また、左方画像は拡大し、右方画像は縮小する。
【００３０】
ＣＣＤカメラ２が右へ平行移動された場合には、前方、上方、および、下方画像は全て左へ移動し、また、左方画像は縮小し、右方画像は拡大する。
【００３１】
ＣＣＤカメラ２が上へ回転された場合（ＣＣＤカメラ２のレンズが上へ、また、本体が下へ移動するように回転された場合）には、前方画像、左方画像、および、右方画像は全て下へ移動し、また、上方画像と下方画像はともに上へ移動する。
【００３２】
ＣＣＤカメラ２が下へ回転された場合（ＣＣＤカメラ２のレンズが下へ、また、本体が上へ移動するように回転された場合）には、前方画像、左方画像、および、右方画像は全て上へ移動し、また、上方画像と下方画像はともに下へ移動する。
【００３３】
ＣＣＤカメラ２が左へ回転された場合（ＣＣＤカメラ２を上から見た場合に、ＣＣＤカメラ２のレンズが左へ、また、本体が右へ移動するように回転された場合）には、前方画像、上方画像、および、下方画像は全て右へ移動し、左方画像と右方画像はともに左へ移動する。
【００３４】
ＣＣＤカメラ２が右へ回転された場合（ＣＣＤカメラ２を上から見た場合に、ＣＣＤカメラ２のレンズが右へ、また、本体が左へ移動するように回転された場合）には、前方画像、上方画像、および、下方画像は全て左へ移動し、左方画像と右方画像はともに右へ移動する。
【００３５】
ＣＣＤカメラ２がその光軸を中心として左に回転された場合（ＣＣＤカメラ２を後ろから見た場合に、本体が反時計方向に回転された場合）には、前方画像は、右方向（時計方向）に回転し、また、上下左右の画像は、それぞれ、右、左、上、または、下方向に移動する。
【００３６】
更に、ＣＣＤカメラ２がその光軸を中心として右に回転された場合（ＣＣＤカメラ２を後ろから見た場合に、本体が時計方向に回転された場合）には、前方画像は、左方向（反時計方向）に回転し、また、上下左右の画像は、それぞれ、左、右、下、または、上方向に移動する。
【００３７】
移動方向判定部６は、図６に示すような、それぞれの画像（前、および、上下左右の画像）の特徴点の移動方向とＣＣＤカメラ２の移動（または、回転）方向の対応関係を示すテーブルを図示せぬメモリに格納しており、各オプティカルフロー算出部５−１乃至５−５から出力される特徴点の移動方向とこのテーブルとを照合することにより、ＣＣＤカメラ２の移動（または、回転）方向を判定する。例えば、前述のように、前方画像の特徴点が拡大し、上下左右方向の特徴点がそれぞれ下、上、右、または、左へ移動している場合（図６の第１行目に対応する場合）には、ＣＣＤカメラ２が前方へ移動していると判定する。
【００３８】
なお、以上の実施の形態においては、上下左右方向に４枚の反射鏡１−１乃至１−４を設けるようにしたが、例えば、上方向の反射鏡１−１だけを設けるようにしてもよい。その場合、図６に示すように、左への平行移動と左への回転（前方画像、上方画像の双方が右へ移動）の区別と、右への平行移動と右への回転（前方画像、上方画像の双方が左方向へ移動）の区別がつかなくなるが、それ以外の判別は可能である。
【００３９】
そこで、例えば、上方画像用の反射鏡１−１と左方画像の反射鏡１−３の２つを設けると、左への平行移動と左への回転の区別は、左方画像が拡大するか左へ移動するか否かにより判別可能となる。また、右への平行移動と右への回転の区別は、左方画像が縮小するか右へ移動する否かにより判別可能となる。
【００４０】
なお、これらの反射鏡１−１乃至１−４の枚数や設置場所は、適用する装置に応じて適宜選択するようにすればよい。
【００４１】
図１に示す実施の形態では、ハードウエアによる実施の形態を採ったが、例えば、図７に示すようにパーソナルコンピュータ用いて実現することも可能である。
【００４２】
図７は、本発明の他の実施の形態の構成例を示すブロック図である。この図において、パーソナルコンピュータ２０は、ＣＰＵ（Central Processing Unit）２０−１（第１の抽出手段、第２の抽出手段、特徴点抽出手段、算出手段）、ＲＯＭ（Read Only Memory）２０−２、ＲＡＭ（Random Access Memory）２０−３、ＩＦ（Interface）２０−４、および、バス２０−５により構成されている。ＩＦ２０−４にはＣＣＤカメラ２が接続されており、ＣＣＤカメラ２の前方には、図２に示すものと同様の反射鏡１が配置されている。
【００４３】
ＣＰＵ２０−１は、各種演算を実行するとともに、装置の各部を制御するようになされている。ＲＯＭ２０−２には、各種プログラムやデータなどが格納されている。ＲＡＭ２０−３は、ＣＰＵ２０−１が各種演算を実行する際に、演算途中のデータなどを一時的に格納するようになされている。ＩＦ２０−４は、ＣＣＤカメラ２から出力される画像信号をディジタル信号に変換して読み込むとともに、パーソナルコンピュータ２０において判定されたＣＣＤカメラ２の移動方向の判定結果を出力する。バス２０−５は、ＣＰＵ２０−１、ＲＯＭ２０−２、ＲＡＭ２０−３、および、ＩＦ２０−４を相互に接続してデータを授受するようになされている。
【００４４】
図８は、図７に示す実施の形態において実行される処理の一例を説明するフローチャートである。この処理が実行されると、パーソナルコンピュータ２０のＣＰＵ２０−１は、ステップＳ１において、ＣＣＤカメラ２から出力される画像から、前方、および、上下左右方向の画像（図５参照）を抽出する。
【００４５】
ステップＳ２では、ＣＰＵ２０−１は、ステップＳ１において抽出した画像から、それぞれの特徴点（例えば、隣接する部分に比べて画素値が大きく変化する点）を抽出する。
【００４６】
ステップＳ３では、ＣＰＵ２０−１は、前回の処理において検出されてＲＡＭ２０−３に格納されている特徴点と、今回の処理で抽出された特徴点とを比較し、それぞれの画像におけるオプティカルフローを算出する。
【００４７】
ステップＳ４では、ＣＰＵ２０−１は、ステップＳ３において算出された各画像のオプティカルフローと、図６に示すテーブルとを照合し、ＣＣＤカメラ２の移動（または、回転）された方向を判定する。そして、判定された結果は、ＩＦ２０−４を介して出力される。
【００４８】
ステップＳ５においては、ＣＰＵ２０−１は、以上の処理（ステップＳ２の処理）で抽出された特徴点をＲＡＭ２０−３の所定の領域に格納する。そして、このようにして格納された特徴点は、次回の処理において、前回の処理において得られた特徴点として参照されることになる。
【００４９】
続くステップＳ６では、ＣＰＵ２０−１は、処理を終了するか否かを判定する。その結果、処理を継続する（ＮＯ）と判定した場合はステップＳ１に戻り、前述の場合と同様の処理を繰り返す。また、処理を終了する（ＹＥＳ）と判定した場合には、処理を終了する（エンド）。
【００５０】
以上のような実施の形態によれば、パーソナルコンピュータ２０とソフトウエアとの組み合わせにより、ＣＣＤカメラ２の移動方向を簡単に、しかも正確に検出することが可能となる。
【００５１】
なお、以上の実施の形態においては、４枚の反射鏡１−１乃至１−４をＣＣＤカメラ２の前方に配置するようにしたが、例えば、反射鏡１−１のみを配置して、これをＣＣＤカメラ２の光軸を中心として回転させ、特定の位置（反射鏡１−１乃至１−４に対応する位置）に反射鏡が移動した場合の画像を抽出するようにしてもよい。
【００５２】
【発明の効果】
請求項１に記載の画像処理装置および請求項３に記載の画像処理方法によれば、光軸方向と、光軸方向とは異なる少なくとも他の１方向の光とより画像信号を生成し、光軸方向に対応する画像信号を抽出し、光軸方向とは異なる方向の光に対応する画像信号を抽出し、抽出された２種類の画像信号のそれぞれの特徴点を抽出し、抽出された特徴点のオプティカルフローから移動している方向を算出するようにしたので、装置の移動方向を正確にしかも簡単に検出することが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施の形態の構成例を示すブロック図である。
【図２】図１に示す反射鏡１−１乃至１−４の配置状態を示す正面図である。
【図３】図１に示す反射鏡１−１乃至１−４とＣＣＤカメラ２の位置関係を示す図である。
【図４】図１に示す反射鏡１−１乃至１−４とＣＣＤカメラ２を横方向から見た場合の位置関係を示す図である。
【図５】図１に示す実施の形態により撮像された画像の一例を示す図である。
【図６】図１に示すＣＣＤカメラ２の移動方向（または、回転方向）と、各画像の移動方向（または、拡大縮小、回転方向）との対応関係を示す図である。
【図７】本発明の他の実施の形態の構成例を示すブロック図である。
【図８】図７に示す実施の形態において実行される処理を説明するフローチャートである。
【符号の説明】
１−１乃至１−４  反射鏡（反射手段），  ２  ＣＣＤカメラ（撮像手段），３−１  前方画像抽出手段（第１の抽出手段），  ３−２  上方画像抽出部（第２の抽出手段），  ３−３  下方画像抽出部（第２の抽出手段），  ３−４  左方画像抽出部（第２の抽出手段），  ３−５  右方画像抽出部（第２の抽出手段），  ４−１乃至４−５  特徴点抽出部（特徴点抽出手段），  ５−１乃至５−５  オプティカルフロー算出部（算出手段），  ６  移動方向判定部（算出手段），  ２０−１  ＣＰＵ（第１の抽出手段、第２の抽出手段、特徴点抽出手段、算出手段）
【図１】
0003937103.tif 000002
【図２】
0003937103.tif 000003
【図３】
0003937103.tif 000004
【図４】
0003937103.tif 000005
【図５】
0003937103.tif 000006
【図６】
0003937103.tif 000007
【図７】
0003937103.tif 000008
【図８】
0003937103.tif 000009