説明

画像認識方法およびロボット

【課題】ロボットのカメラが移動している場合でも、静止している場合と変わらない状態で被写体の画像認識を行う。
【解決手段】ロボットは、画像を撮影するカメラ6と、カメラ6の位置及び移動速度を検出する検出手段であるエンコーダ4及び制御回路5と、カメラ6で撮影された画像を一定周期毎に取り込み、カメラ6の位置及び移動速度に基づいて、カメラ6から取り込んだ画像を補正し、補正した画像に基づいて画像認識を行う画像処理回路7とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラと画像処理回路とを備えたロボットを用いて画像認識を行う画像認識方法およびロボットに関するものである。
【背景技術】
【0002】
従来のロボットによる画像認識は、ロボットに小型のCCDカメラなどを配設し、あるサンプリング周期ごとに得られる画像情報を処理し、事前に登録された画像情報と比較照合することにより実現している(例えば、特許文献1、特許文献2、特許文献3参照)。
【0003】
なお、出願人は、本明細書に記載した先行技術文献情報で特定される先行技術文献以外には、本発明に関連する先行技術文献を出願時までに発見するには至らなかった。
【特許文献1】WO98/26598
【特許文献2】特開平11−136668号公報
【特許文献3】特開平11−275559号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1の技術では、静止したカメラを使って移動体を撮影しているため、例えば人形ロボットのようにカメラ自体が移動する場合には、被写体の画像認識を正しく行うことができないという問題点があった。
また、引用文献2の技術では、TVカメラで撮影した現在のフレームデータと直前のフレームデータとの差分を求めることで動きのある被写体のデータを除去したフレームデータを作成している。しかし、この引用文献2の技術では、カメラの移動中に被写体を撮影すると、カメラの移動に起因する画像のずれを被写体の動きに起因するものと見なして除去してしまうため、人形ロボットのようにカメラ自体が移動する場合には、被写体の画像認識を正しく行うことができないという問題点があった。同様に、引用文献3の技術においても、人形ロボットのようにカメラ自体が移動する場合には、被写体の画像認識を正しく行うことができないという問題点があった。
【0005】
通常、画像認識を正しく行うには、認識対象となる被写体に対しカメラが被写体の正面で静止している必要がある。その理由は、予め登録された被写体の顔の輪郭、目、鼻、口などの画像データと、あるサンプリング周期毎にカメラから送られてくる被写体の顔の輪郭、目、鼻、口などの情報とを比較するうえで、カメラが被写体に対して動いている場合、被写体の顔の輪郭、目、鼻、口などの位置がサンプルされたデータごとに異なるため、比較照合することができないからである。また、ある瞬間のデータを用いる場合では、認識のためのサンプルデータが少ないため誤認識の確率が多くなってくる。このため、引用文献2の技術では、カメラを移動させた後に停止させてカメラで撮影している。しかし、画像認識中にカメラを被写体に対して静止させることは、ロボットの自然な振る舞いを制限することになる。また、カメラを一旦停止させる場合には、カメラが停止するまでに時間を要するため、被写体を確認してから、被写体と登録データとを比較照合するまでに時間がかかるという問題点があった。
【0006】
本発明は、上記課題を解決するためになされたもので、ロボットのカメラが移動している場合でも、静止している場合と変わらない状態で被写体の画像認識を行うことができる画像認識方法およびロボットを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明は、カメラと画像処理回路とを備えたロボットを用いて画像認識を行う画像認識方法において、前記カメラの位置および移動速度を検出する検出手順と、前記カメラで撮影された画像を一定周期毎に前記画像処理回路に取り込むサンプリング手順と、前記カメラの位置および移動速度に基づいて、前記カメラから取り込んだ画像を前記画像処理回路で補正する補正手順と、前記補正された画像に基づいて画像認識を行う画像認識手順とを有するものである。
また、本発明の画像認識方法の1構成例において、前記補正手順は、前記カメラが所定の位置にあるときに取り込んだ画像または所定の時点で取り込んだ画像と前記カメラから取り込んだ補正対象の画像とが同じになるように、前記補正対象の画像を補正するようにしたものである。
また、本発明の画像認識方法の1構成例は、前記カメラもしくはロボット全体を駆動手段で移動させるようにしたものである。
また、本発明の画像認識方法の1構成例において、前記検出手順は、前記駆動手段の動きを検出するエンコーダの出力に基づいて前記カメラの位置および移動速度を求めるようにしたものである。
【0008】
また、本発明のロボットは、画像を撮影するカメラと、このカメラの位置および移動速度を検出する検出手段と、前記カメラで撮影された画像を一定周期毎に取り込み、前記カメラの位置および移動速度に基づいて、前記カメラから取り込んだ画像を補正し、補正した画像に基づいて画像認識を行う画像処理回路とを有するものである。
また、本発明のロボットの1構成例において、前記画像処理回路は、前記カメラが所定の位置にあるときに取り込んだ画像または所定の時点で取り込んだ画像と前記カメラから取り込んだ補正対象の画像とが同じになるように、前記補正対象の画像を補正するものである。
また、本発明のロボットの1構成例は、前記カメラもしくはロボット全体を移動させる駆動手段を備えるものである。
また、本発明のロボットの1構成例において、前記検出手段は、前記駆動手段の動きを検出するエンコーダと、このエンコーダの出力に基づいて前記カメラの位置および移動速度を求める制御回路とからなるものである。
【発明の効果】
【0009】
本発明によれば、カメラの位置および移動速度を検出し、このカメラの位置および移動速度に基づいて、カメラから取り込んだ画像を補正することにより、ロボットのカメラが移動している場合でも、静止している場合と変わらない状態で被写体の画像認識を行うことができる。その結果、本発明では、被写体の認識に、ロボットの動作が制約されることが無くなる。その理由は、通常、被写体の認識のために、カメラを静止させる必要があるが、本発明では、カメラが静止していなくても被写体を認識できるため、ロボット自体の自然な振る舞いが可能となるからである。また、本発明では、短時間で被写体の認識を行うことができる。その理由は、通常、被写体の認識のために、カメラを静止させる必要があるが、本発明では、カメラが被写体に対し静止する必要がなく、カメラやロボットの動作を静止させるまでの時間を削減できるからである。
【0010】
また、本発明では、ロボットの動作が加速、等速に関わらず、画像認識が可能である。その理由は、駆動手段の動きを検出するエンコーダの出力に基づいてカメラの位置および移動速度を求めるからである。
【発明を実施するための最良の形態】
【0011】
[第1の実施の形態]
以下、本発明の実施の形態について図面を参照して詳細に説明する。図1は本発明の第1の実施の形態となるロボットの概略構成図、図2は図1のロボットの断面図である。本実施の形態のロボットは、頭部1と、ギア2と、サーボモータ3と、エンコーダ4と、制御回路5と、カメラ6と、画像処理回路7と、記憶装置8と、胴体部9とを有する。サーボモータ3は、カメラ6を回動させる駆動手段を構成し、エンコーダ4と制御回路5は、カメラ6の位置および移動速度を検出する検出手段を構成している。
【0012】
ロボット1の頭部1の下面にはギア2が取り付けられ、ギア2はロボットの胴体部9によって回動自在に軸支されている。ロボットの頭部1は、ギア2を介してサーボモータ3により駆動され、ギア2の軸を中心として水平面内で回動する。また、サーボモータ3にはその回転を検出するエンコーダ4が取り付けられており、エンコーダ4から出力されたパルス情報は制御回路5へと伝えられる。ロボットの頭部1に取り付けられたカメラ6は正面の画像を撮像し、カメラ6から出力された画像信号は画像処理回路7に入力される。制御回路5と画像処理回路7と記憶装置8は、互いの情報を交換できるように結線されている。画像処理回路7は、カメラ6から取り込んだ画像と記憶装置8に事前に登録されている認識用の画像とを比較照合する。
【0013】
次に、本実施の形態のロボットの動作について図を参照して説明する。図3はロボットの動作を示す平面図である。図3に示すように、ロボットの頭部1は、角速度Wで矢印の方向に回動している。カメラ6はθの画角を有している。ロボットが被写体10を認識する基準位置をAとし、このときロボットの頭部1に取り付けられたカメラ6が撮像した画像を図4に示す。画像処理回路7は、予め定められたサンプリング周期毎にカメラ6からの画像信号を取り込む。このサンプリング周期をΔt秒とすれば、基準位置Aで画像信号を取り込んだ時点からΔt秒後のカメラ6の位置は図5のようになる。このΔt秒後の位置をBとし、このとき取り込んだ画像と基準位置Aで取り込んだ画像とを重ね合わせた画像を図6に示す。図6において、100Aが基準位置Aで取り込んだ画像、100Bが位置Bで取り込んだ画像である。図6から分かるように、カメラ6が被写体10に対して移動しているため、画像100Aと100Bの間にxのずれが生じ、このままでは、正確な画像認識に用いることはできない。
【0014】
そこで、本実施の形態の制御回路5は、エンコーダ4から出力されたパルス情報に基づいて頭部1(カメラ6)の位置情報及び速度情報を算出する。画像処理回路7は、算出された位置情報及び速度情報に基づいて、カメラ6で撮像された画像が所定の基準位置Aで撮像された画像と同じ位置になるように画像の水平方向のずれを補正する。この補正は、図示しない測距手段によりカメラ6と被写体10との距離を測定し、測定した距離とカメラ6の位置情報及び速度情報とカメラ6の画角θとから、基準位置Aで撮像された画像とのずれ量を算出すればよい。この補正は、コンピュータによるソフトウェア処理もしくはハードウェア回路で実現できる。
【0015】
位置Bで取り込んだ画像のずれを補正した画像を図7に示す。この場合、補正した画像にはずれが生じていないため、あたかも静止した画像として処理することができる。画像処理回路7は、補正後の画像データと記憶装置8に予め登録された画像データとを比較照合して画像認識を行う。以上の処理はΔt秒ごとにリアルタイムに行われ、ロボットの頭部1が動作中でも、静止している場合と変わらない状態で被写体10の認識を行うことができる。
【0016】
[第2の実施の形態]
次に、本発明の他の実施の形態について図面を参照して詳細に説明する。図8は本発明の第2の実施の形態となるロボットの断面図である。第1の実施の形態では、ロボットの頭部を水平方向に回動させるのに対し、本実施の形態では、ロボットの頭部を垂直方向に回動させる。本実施の形態のロボットは、頭部11と、サーボモータ13と、エンコーダ14と、制御回路15と、カメラ16と、画像処理回路17と、記憶装置18と、胴体部19と、ヘッドフレーム20と、センターフレーム21とを有する。サーボモータ13は、カメラ16を回動させる駆動手段を構成し、エンコーダ14と制御回路15は、カメラ16の位置および移動速度を検出する検出手段を構成している。
【0017】
センターフレーム21は、ロボットの胴体部19の上面に固定されている。ロボットの頭部11に固定されたヘッドフレーム20は、センターフレーム21によって回動自在に軸支されている。サーボモータ13は、ヘッドフレーム20に設けられたギア22と噛み合い、ロボットの頭部11を回動させる動力源となる。これにより、ロボットの頭部11(ヘッドフレーム20)は、サーボモータ13により駆動され、軸23を中心として垂直面内で回動する。サーボモータ13にはその回転を検出するエンコーダ14が取り付けられており、エンコーダ14から出力されたパルス情報は制御回路15へと伝えられる。ヘッドフレーム20に取り付けられたカメラ16はカメラ正面の画像を撮像し、カメラ16から出力された画像信号は画像処理回路17に入力される。画像処理回路17は、カメラ16から取り込んだ画像と記憶装置18に事前に登録されている認識用の画像とを比較照合する。
【0018】
次に、本実施の形態のロボットの動作について図を参照して説明する。図9はロボットの動作を示す側面図である。図9に示すように、ロボットの頭部11は、角速度Wで矢印の方向に回動している。カメラ16はθの画角を有している。ロボットが被写体10を認識する基準位置をAとする。画像処理回路17は、予め定められたサンプリング周期毎にカメラ16からの画像信号を取り込む。このサンプリング周期をΔt秒とし、基準位置Aで画像信号を取り込んだ時点からΔt秒後のカメラ16の位置をBとする。基準位置Aで取り込んだ画像と位置Bで取り込んだ画像とを重ね合わせた画像を図10に示す。図10において、101Aが基準位置Aで取り込んだ画像、101Bが位置Bで取り込んだ画像である。図10から分かるように、カメラ16が被写体10に対して移動しているため、画像101Aと101Bの間にxのずれが生じ、このままでは、正確な画像認識に用いることはできない。
【0019】
そこで、本実施の形態の制御回路15は、エンコーダ14から出力されたパルス情報に基づいて頭部11(カメラ16)の位置情報及び速度情報を算出する。画像処理回路17は、算出された位置情報及び速度情報に基づいて、カメラ16で撮像された画像が所定の基準位置Aで撮像された画像と同じ位置になるように画像の垂直方向のずれを補正する。この補正は、図示しない測距手段によりカメラ16と被写体10との距離を測定し、測定した距離とカメラ16の位置情報及び速度情報とカメラ16の画角θとから、基準位置Aで撮像された画像とのずれ量を算出すればよい。この補正は、コンピュータによるソフトウェア処理もしくはハードウェア回路で実現できる。
【0020】
これにより、補正した画像にはずれが生じていないため、あたかも静止した画像として処理することができる。画像処理回路17は、補正後の画像データと記憶装置18に予め登録された画像データとを比較照合して画像認識を行う。以上の処理はΔt秒ごとにリアルタイムに行われ、ロボットの頭部1が動作中でも、静止している場合と変わらない状態で被写体10の認識を行うことができる。
【0021】
[第3の実施の形態]
次に、本発明の第3の実施の形態について図面を参照して詳細に説明する。図11は本発明の第3の実施の形態となるロボットの断面図である。第1、第2の実施の形態では、ロボットの頭部を水平方向又は垂直方向に回動させるのに対し、本実施の形態では、ロボットを自走させる。本実施の形態のロボットは、頭部31と、サーボモータ33と、エンコーダ34と、制御回路35と、カメラ36と、画像処理回路37と、記憶装置38と、胴体部39と、タイヤ40,41と、ギア42とを有する。サーボモータ33は、ロボットを走行させる駆動手段を構成し、エンコーダ34と制御回路35は、カメラ36の位置および移動速度を検出する検出手段を構成している。
【0022】
ロボットの頭部31は胴体部39に固定されている。ロボットの胴体部39には、タイヤ40と旋回可能な小径のタイヤ41が設けられている。大径のタイヤ40にはギア42が取り付けられている。サーボモータ33はギア42と噛み合い、ロボットを走行させる動力源となる。これにより、サーボモータ33の回転がタイヤ40へ伝えられ、ロボットが走行する。また、サーボモータ33にはその回転を検出するエンコーダ34が取り付けられており、エンコーダ34から出力されたパルス情報は制御回路35へと伝えられる。ロボットの頭部31に取り付けられたカメラ36は正面の画像を撮像し、カメラ36から出力された画像信号は画像処理回路37に入力される。画像処理回路37は、カメラ36から取り込んだ画像と記憶装置38に事前に登録されている認識用の画像とを比較照合する。
【0023】
次に、本実施の形態のロボットの動作について図を参照して説明する。ロボットは、一定の速度で図11の矢印の方向に移動している。ロボットが画像認識を開始した時点をAとする。画像処理回路37は、予め定められたサンプリング周期毎にカメラ36からの画像信号を取り込む。このサンプリング周期をΔt秒とし、開始時点Aで画像信号を取り込んだ時点からΔt秒後の時点をBとする。開始時点Aで取り込んだ画像と時点Bで取り込んだ画像とを重ね合わせた画像を図12に示す。図12において、102Aが開始時点Aで取り込んだ画像、102Bが時点Bで取り込んだ画像である。図12から分かるように、カメラ36が被写体10に対して移動しているため、画像102Aと102Bの間にxのずれが生じ、このままでは、正確な画像認識に用いることはできない。
【0024】
そこで、本実施の形態の制御回路35は、エンコーダ34から出力されたパルス情報に基づいて頭部31(カメラ36)の位置情報及び速度情報を算出する。画像処理回路37は、算出された位置情報及び速度情報に基づいて、カメラ36で撮像された画像が開始時点Aで撮像された画像と同じ大きさになるように画像の大きさを補正する。この補正は、図示しない測距手段によりカメラ36と被写体10との距離を測定し、測定した距離とカメラ36の位置情報及び速度情報とカメラ36の画角θとから、開始時点Aで撮像された画像との大きさの違いを算出して、画像を拡大又は縮小すればよい。この補正は、コンピュータによるソフトウェア処理もしくはハードウェア回路で実現できる。
【0025】
これにより、補正した画像にはずれが生じていないため、あたかも静止した画像として処理することができる。画像処理回路37は、補正後の画像データと記憶装置38に予め登録された画像データとを比較照合して画像認識を行う。以上の処理はΔt秒ごとにリアルタイムに行われ、ロボットが走行中でも、静止している場合と変わらない状態で被写体10の認識を行うことができる。
【0026】
なお、第1の実施の形態〜第3の実施の形態では、ロボットの頭部の水平方向の回動と、垂直方向の回動と、ロボットの走行という3種類の動きをそれぞれ別々に扱っているが、これらの動きが同時に起こる場合は、第1の実施の形態〜第3の実施の形態で説明した補正を組み合わせることで、3種類の動きが同時に起きても同等の効果が得られることは言うまでもない。さらに、通常カメラで撮影した画像には、画角の端の方でいわゆる曲率による歪みが生じるが、この歪みの補正機能をあらかじめ画像処理回路に付加するとさらに効果的である。
【0027】
また、第1の実施の形態〜第3の実施の形態では、サーボモータに取り付けられたエンコーダの情報をフィードバックすることを例に挙げたが、タイヤ等の最終回転体にスリット部材とフォトセンサー等を設けたり、ポテンショメータとの組み合わせで同等な構成を実現できるのは言うまでもない。さらに、ステッピングモータ等を用いれば、入力情報をそのまま画像処理に用いることができる。ただし、この場合、入力と最終出力に伝達系の遅れ、モータ脱調が生じた場合、十分な効果を期待することはできない。
【0028】
また、第1の実施の形態〜第3の実施の形態では、画像認識を行うことを主に列記してきたが、本発明は被写体のデータ登録にも用いることができることは明白である。
また、第1の実施の形態〜第3の実施の形態では、説明上、制御回路と画像処理回路と記憶装置とを別々に記載したが、これらが同一の基板上の回路またはチップで構成され、各信号ルートが異なっていても良いことは言うまでもない。
【産業上の利用可能性】
【0029】
本発明は、ロボットによる画像認識に適用することができる。
【図面の簡単な説明】
【0030】
【図1】本発明の第1の実施の形態となるロボットの概略構成図である。
【図2】本発明の第1の実施の形態となるロボットの断面図である。
【図3】本発明の第1の実施の形態のロボットの動作を示す平面図である。
【図4】本発明の第1の実施の形態においてロボットのカメラが基準位置で撮像した画像を示す図である。
【図5】本発明の第1の実施の形態において基準位置からサンプリング周期後のカメラの位置を示す平面図である。
【図6】本発明の第1の実施の形態において基準位置で取り込んだ画像とサンプリング周期後に取り込んだ画像とを重ね合わせた画像を示す図である。
【図7】本発明の第1の実施の形態において補正後の画像を示す図である。
【図8】本発明の第2の実施の形態となるロボットの断面図である。
【図9】本発明の第2の実施の形態のロボットの動作を示す側面図である。
【図10】本発明の第2の実施の形態において基準位置で取り込んだ画像とサンプリング周期後に取り込んだ画像とを重ね合わせた画像を示す図である。
【図11】本発明の第3の実施の形態となるロボットの断面図である。
【図12】本発明の第3の実施の形態において開始時点で取り込んだ画像とサンプリング周期後に取り込んだ画像とを重ね合わせた画像を示す図である。
【符号の説明】
【0031】
1、11、31…頭部、2、22、42…ギア、3、13、33…サーボモータ、4、14、34…エンコーダ、5、15、35…制御回路、6、16、36…カメラ、7、17、37…画像処理回路、8、18、38…記憶装置、9、19、39…胴体部、10…被写体、20…ヘッドフレーム、21…センターフレーム、40、41…タイヤ。


【特許請求の範囲】
【請求項1】
カメラと画像処理回路とを備えたロボットを用いて画像認識を行う画像認識方法において、
前記カメラの位置および移動速度を検出する検出手順と、
前記カメラで撮影された画像を一定周期毎に前記画像処理回路に取り込むサンプリング手順と、
前記カメラの位置および移動速度に基づいて、前記カメラから取り込んだ画像を前記画像処理回路で補正する補正手順と、
前記補正された画像に基づいて画像認識を行う画像認識手順とを有することを特徴とする画像認識方法。
【請求項2】
請求項1記載の画像認識方法において、
前記補正手順は、前記カメラが所定の位置にあるときに取り込んだ画像または所定の時点で取り込んだ画像と前記カメラから取り込んだ補正対象の画像とが同じになるように、前記補正対象の画像を補正することを特徴とする画像認識方法。
【請求項3】
請求項1記載の画像認識方法において、
前記カメラもしくはロボット全体を駆動手段で移動させることを特徴とする画像認識方法。
【請求項4】
請求項3記載の画像認識方法において、
前記検出手順は、前記駆動手段の動きを検出するエンコーダの出力に基づいて前記カメラの位置および移動速度を求めることを特徴とする画像認識方法。
【請求項5】
画像を撮影するカメラと、
このカメラの位置および移動速度を検出する検出手段と、
前記カメラで撮影された画像を一定周期毎に取り込み、前記カメラの位置および移動速度に基づいて、前記カメラから取り込んだ画像を補正し、補正した画像に基づいて画像認識を行う画像処理回路とを有することを特徴とするロボット。
【請求項6】
請求項5記載のロボットにおいて、
前記画像処理回路は、前記カメラが所定の位置にあるときに取り込んだ画像または所定の時点で取り込んだ画像と前記カメラから取り込んだ補正対象の画像とが同じになるように、前記補正対象の画像を補正することを特徴とするロボット。
【請求項7】
請求項5記載のロボットにおいて、
前記カメラもしくはロボット全体を移動させる駆動手段を備えることを特徴とするロボット。
【請求項8】
請求項7記載のロボットにおいて、
前記検出手段は、前記駆動手段の動きを検出するエンコーダと、このエンコーダの出力に基づいて前記カメラの位置および移動速度を求める制御回路とからなることを特徴とするロボット。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate