JP6030405B2 - 平面検出装置およびそれを備えた自律移動装置 - Google Patents

平面検出装置およびそれを備えた自律移動装置 Download PDF

Info

Publication number
JP6030405B2
JP6030405B2 JP2012235950A JP2012235950A JP6030405B2 JP 6030405 B2 JP6030405 B2 JP 6030405B2 JP 2012235950 A JP2012235950 A JP 2012235950A JP 2012235950 A JP2012235950 A JP 2012235950A JP 6030405 B2 JP6030405 B2 JP 6030405B2
Authority
JP
Japan
Prior art keywords
plane
distance image
axis
distance
projection image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012235950A
Other languages
English (en)
Other versions
JP2014085940A (ja
Inventor
透 花岡
透 花岡
松尾 順向
順向 松尾
光平 松尾
光平 松尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2012235950A priority Critical patent/JP6030405B2/ja
Priority to PCT/JP2013/071855 priority patent/WO2014064990A1/ja
Publication of JP2014085940A publication Critical patent/JP2014085940A/ja
Application granted granted Critical
Publication of JP6030405B2 publication Critical patent/JP6030405B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、距離画像から平面を検出する平面検出装置、およびそれを備えた自律移動装置に関する。
ロボットや無人搬送車といった自律移動装置においては、移動時に前方にある障害物や段差を検出し、衝突や転落を防止する必要がある。このような障害物や段差の検出には、赤外線方式や超音波方式の近接センサ広く用いられていた。
しかし、赤外線方式や超音波方式の近接センサは、前方の障害物の有無は判別できるが、その詳細な位置や形状までは得られない。したがって、ロボットに取り付けた場合、直近に存在する障害物や段差などの検出はできるものの、進行方向前方の広い範囲の障害物や段差を予め発見して回避しながら移動するような用途には用いることができない。そこで、レーザレンジファインダ(LRF)などの距離センサが、用いられるようになった。
図13は、従来技術におけるレーザレンジファインダ101を備えた自律移動装置100の図であり、図13中の(a)は、従来技術におけるレーザレンジファインダ101を備えた自律移動装置100の外観図を示す図であり、図13中の(b)は、従来技術におけるレーザレンジファインダ101を備えた自律移動装置100が検出できない上方の障害物102、下方の障害物103、および段差104の図である。図13中の(a)に示すように、自律移動装置100は、レーザレンジファインダ101を高さHLRFの位置に備えている。レーザレンジファインダ101は、高さHLRFの位置において、水平方向(図のy軸に垂直な面内)に角度スキャンを行い、障害物、および段差を検出する。
しかし、レーザレンジファインダ101は、計測精度は高いが、計測する高さと異なる位置にある障害物、および段差は検出できないという欠点がある。例えば、図13中の(b)において、レーザレンジファインダ101は、障害物102、障害物103、および段差104を検出することはできない。したがって、障害物102、障害物103、および段差104を検出するために、レーザレンジファインダ101の他に、赤外線方式の近接センサ、超音波方式の近接センサなどを多数配置する必要があり、自律移動装置が煩雑な構造となっていた。
そこで、障害物、および段差を検出するために、障害物、および段差が含まれる画像を取得し、その画像から平面を検出して、その平面上の障害物、および段差を検出するという手法が提案されている。特許文献1においては、ステレオカメラを用いて、左右画像の微分画像のHough変換結果から道路面を検出し、それを手掛かりに他の車両や歩行者などを検出する。
また、特許文献2においては、TOF(Time Of Flight)方式の距離画像センサによって得られる距離画像データから、RANSAC(RANdom SAmple Consensus)法と呼ばれる計算手法によって平面情報を抽出し、それを手掛かりに歩行者などを検出する。
特開2005−24464号公報(2005年1月27日公開) 特表2011−530706号公報(2011年12月22日公表)
しかしながら、前記特許文献1に示された方法においては、ステレオカメラが必須である上、道路上の白線や路面端など、平面を検出するための分かりやすい手掛かりが必要となる。例えば、特許文献1にかかる平面検出装置を移動式ロボットに備えた場合、移動式ロボットが走行する路面上に白線や路面端などの分かりやすい手掛かりがない場合には、左右画像の対応関係が得られないため適用できない。
また、前記特許文献2に示された方法においては、距離画像データから直接平面情報を抽出できるものの、距離画像データ内に平面とは無関係の情報が多数含まれると、それがノイズとなって平面検出の障害となる。特に、距離画像データ内の大部分が平面以外の情報で占められているような場合には、平面が検出できなくなってしまう。また、平面を特定する際に算出すべきパラメータが多いため、演算時間が増大するという問題がある。
本発明は、前記の問題点を鑑みてなされたものであり、その目的は、距離画像からその画像内に含まれる平面を、高速かつより確実に検出できる平面検出装置を提供することにある。
前記の課題を解決するために、本発明に係る平面検出装置は、特定の検出対象平面を含む被写体の距離画像データから当該特定の検出対象平面を検出する平面検出装置であって、前記距離画像データを、前記特定の検出対象平面を表す検出対象3次元点群を含む3次元座標データに変換する3次元座標演算手段と、前記3次元座標データを所定の2次元平面に投影して、前記検出対象3次元点群が線形に分布した投影画像データを生成する投影画像生成手段と、前記投影画像データから前記線形の直線を検出する直線検出手段と、前記直線検出手段の検出結果に基づいて、前記特定の検出対象平面の傾きに関する情報を含む平面パラメータを算出する平面パラメータ算出手段と、を備えることを特徴としている。
また、前記の課題を解決するために、本発明に係る自律移動装置は、前記平面検出装置と、前記距離画像データを生成する距離画像生成手段と、走行手段と、を備えており、前記平面検出装置を用いて走行路となる平面を検出することを特徴としている。
本発明によれば、距離画像を3次元座標データに変換し、変換した3次元座標データを所定の2次元面(平面)に投影する。そして、投影した画像から直線を検出し、平面を検出する。したがって、距離画像の中に平面検出の手掛かりを必要とせず、また障害物等の平面とは無関係の情報が距離画像に多数含まれていても当該無関係の情報を排除して平面をより確実に検出できるという効果を奏する。
(a)は、本発明の実施形態1に係る平面検出装置を用いた清掃ロボットの外観図を示す図であり、(b)は、本発明の実施形態1に係る平面検出装置を用いた清掃ロボットの断面図である。 本発明の実施形態1に係る清掃ロボットに具備される距離画像センサの取り付け位置と、距離画像センサの計測範囲を示す図である。 (a)は、本発明の実施形態1に係る清掃ロボットに具備される遠距離用の距離画像センサにより撮影されたRGB画像であり、(b)は、本発明の実施形態1に係る清掃ロボットに具備される遠距離用の距離画像センサにより撮影された距離画像であり、(c)は、本発明の実施形態1に係る清掃ロボットに具備される近距離用の距離画像センサにより撮影されたRGB画像であり、(d)は、本発明の実施形態1に係る清掃ロボットに具備される近距離用の距離画像センサにより撮影された距離画像である。 本発明の実施形態1に係る清掃ロボットの機能構成を示すブロック図である。 (a)は、本発明の実施形態1に係る清掃ロボットに具備される近距離用の距離画像センサ基準の3次元座標系を示す図であり、(b)は、本発明の実施形態1に係る清掃ロボットに具備される遠距離用の距離画像センサ基準の3次元座標系を示す図であり、(c)は、本発明の実施形態1に係る清掃ロボット基準の3次元座標系を示す図である。 本発明の実施形態1に係る3次元座標データの例を示す図である。 本発明の実施形態1に係る図6の3次元座標データをyz平面に投影した投影画像である。 本発明の実施形態1に係る清掃ロボットの演算装置が処理する手順を示すフローチャートである。 (a)は、本発明の実施形態1に係る清掃ロボットに具備される遠距離用の距離画像センサにより撮影された距離画像から生成されたyz平面への投影画像であり、(b)は、(a)のボトム画像であり、(c)は、本発明の実施形態1に係る清掃ロボットに具備される近距離用の距離画像センサにより撮影された距離画像から生成されたyz平面への投影画像であり、(d)は、(c)のボトム画像である。 (a)は、本発明の実施形態1に係る清掃ロボットに具備される距離画像センサにより撮影された距離画像から生成された、床面より低い段差が存在する場合のyz平面への投影画像であり、(b)は、(a)のボトム画像である。 本発明の実施形態2に係る清掃ロボットの演算装置が処理する手順を示すフローチャートである。 (a)は、本発明の実施形態2に係る清掃ロボットに具備される距離画像センサにより撮影された距離画像から生成された3次元座標データの例を示す図であり、(b)は、(a)の3次元座標データをyz平面に投影した投影画像であり、(c)は、(a)の3次元座標データをxy平面に投影した投影画像であり、(d)は、(a)の3次元座標データをxy´平面に投影した投影画像である。 (a)は、従来技術におけるレーザレンジファインダを備えた自律移動装置の外観図を示す図であり、(b)は、従来技術におけるレーザレンジファインダを備えた自律移動装置が検出できない上方の障害物、下方の障害物、および段差の図である。
〔実施形態1〕
以下、本発明の平面検出装置および自律移動装置の一実施形態として、平面検出装置を備えた清掃ロボットを挙げて、これを図1〜図8を用いて説明する。
図1は、本実施形態1における清掃ロボット1を示す図であり、図1中の(a)は、この清掃ロボット1の外観図を示す図であり、図1中の(b)は、その清掃ロボット1の筐体11の内部構成を図示した断面図である。本実施形態1における清掃ロボット1は、床面を自律走行しながら清掃を行なう自律走行型の清掃ロボットである。この清掃ロボット1は、距離画像センサが取得した距離画像から平面を検出する平面検出装置を必須構成としている。清掃ロボット1は、平面検出装置によって、平面を検出し、進行方向の障害物、および段差を判別して、これらを避けて走行することができる。
なお、本発明に係る平面検出装置は、距離画像センサを構成要素として具備してもよいし、本実施形態1において以下で説明するように、清掃ロボット1に距離画像センサおよび平面検出装置が設けられており、当該距離画像センサが取得した距離画像を平面検出装置が入手して平面を検出する態様であってもよい。本実施形態1では、距離画像センサは平面検出装置の構成要素ではなく、平面検出装置の外部構成として距離画像センサが在る態様について説明する。
(清掃ロボット1の構成)
図1中の(a)において、清掃ロボット1は、窓21が設けられた筐体11と、駆動輪2(走行手段)と、保護部材12とを備えている。筐体11の内部には、後述する種々の制御系および駆動系などが実装されており、駆動輪2が駆動制御されることによって、清掃ロボット1が走行路面を走行し、走行中あるいは走行停止中に走行路面の清掃を行なう。
清掃ロボット1のより具体的な構成を図1中の(b)を用いて説明する。図1中の(b)において、清掃ロボット1は、窓21が設けられた筐体11の内部に、バッテリ4と、廃液回収ユニット45と、洗浄液吐出ユニット46と、モータ10と、距離画像センサ20(距離画像生成手段)と、演算装置30とを実装している。更に、図1中の(b)において、清掃ロボット1は、筐体11の外部、より具体的には筐体11と走行路面との間に、先に説明した駆動輪2とともに、従輪3と、清掃ブラシ9と、保護部材12とを備えている。以下に各構成について説明するが、本実施形態1の特徴的構成は演算装置30の一部に設けられた平面検出装置60にある。そこで、以下ではこの特徴的構成について重点的に説明する一方、特徴的構成以外の構成については従来周知の構成によって実現することも可能であるため詳細な説明は省略する。
なお、図1において、清掃ロボット1は、紙面左方向へ前進、紙面右方向へ後退、紙面奥、または手前方向への旋回が可能であるが、以下の説明では、主な進行方向である紙面左方向への移動を単に進行方向と記載することがある。
駆動輪2は、清掃ロボット1の底部の左右に配置されており、駆動モータ(不図示)により制御されて清掃ロボット1の移動を実現する。従輪3は、清掃ロボット1の底部に回転自在に取り付けられている。駆動輪2および従輪3は、前進、後退、旋回、および停止ができ、これらの組み合わせにより清掃ロボット1の自在な走行を可能としている。
バッテリ4は清掃ロボット1に電源を供給する。バッテリ4は、よく知られた降圧回路と整流平滑回路とにより充電され、所定の電圧を出力する。
洗浄液吐出ユニット46は、洗浄液タンク5と、洗浄液吐出部6とを有している。洗浄液タンク5は、洗浄液を貯留する。また、洗浄液吐出部6は、洗浄液タンク5とパイプにより連結されており、洗浄液タンク5に貯留されている洗浄液を吐出する。
廃液回収ユニット45は、廃液タンク7と、吸引口8とを有している。廃液タンク7は、清掃ロボット1が内部に吸い込んだ廃液(塵や埃等を含む)を溜める。清掃ロボット1は、吸引口8から廃液を吸い込み、吸引口8とパイプにより連結されている廃液タンク7に廃液を排出する。
清掃ブラシ9は、吸引口8の付近に設置され、洗浄液吐出部6から吐出された洗浄を使い清掃する。清掃ブラシ9は、モータ10によって駆動される。
保護部材12は、洗浄液の飛散、および異物の巻き込みを防止するために、清掃ロボット1の底部における進行方向前方側に設置されている。
距離画像センサ20は、近距離用の距離画像センサ20aと、遠距離用の距離画像センサ20bとを有している。なお、近距離用の距離画像センサ20aと、遠距離用の距離画像センサ20bとに共通する構成について説明する場合には単に距離画像センサ20と記載することがある。
距離画像センサ20は、赤外光投射方式の距離画像センサであり、その内部に赤外光の投射素子を含む投射光学系と、赤外光の撮像素子を含む撮像光学系を有する。所定のパターンを有する赤外光を外部に投影照射し、外部物体からの反射光を撮像素子で撮影することで、撮像光学系の視野範囲内にある物体までの距離を計測することができる。近距離用の距離画像センサ20aと、遠距離用の距離画像センサ20bとは、筐体11の内部に配設されており、赤外光を筐体11の窓21を通じて外部に投射するとともに、窓21を通じて外部から反射光を入射する。
距離画像センサ20の距離計測結果は、視野範囲に含まれる物体までの距離を画像上の画素のグレースケール値として表現した距離画像(深度画像、デプス画像)として出力される。本実施形態における距離画像センサ20a、および距離画像センサ20bの詳細については、後述する。
演算装置30は、距離画像センサ20の距離画像を取得して、平面を検出する処理を行う。演算装置30の構成および機能の詳細については、後述する。
なお、清掃ロボット1には、前記の各構成の他にも、後述する構成も含む。その他にも、手動走行、または自動走行を選択する操作パネル、手動走行時の走行方向を決定する走行スイッチ、および非常時に運転を停止させる非常停止スイッチ等の制御スイッチ50(図4)などを備えることができる。また、清掃ロボット1の形態は、前記のような洗浄液を使用して洗浄するタイプに限定されるものではなく、ファン、集塵室、吸込口などを備えたいわゆる家庭用掃除機のような態様のロボットであってもよい。
本発明に係る自律移動装置は、本実施形態1の清掃ロボット1でいうところの距離画像センサ20と、後述する演算装置30の平面検出装置60とを必須構成としている。そこで、以下では、先述した距離画像センサ20の詳細を説明するとともに、演算装置30の詳細を説明する。
(距離画像センサ20の詳細)
図2は、本発明の実施形態1に係る清掃ロボット1の、距離画像センサ20の取り付け位置と、距離画像センサ20の計測範囲を示す図である。距離画像センサ20は、清掃ロボット1の進行方向前面に、清掃対象である床面(走行路面)から垂直に所定の距離離間した高さ位置に取り付けられている。より具体的には、距離画像センサ20の光軸は、進行方向前後に沿って伸びているものの、光軸の一端である撮像素子から進行方向に向かって斜め下向きになるよう、つまり距離画像センサ20は斜め下向きに床面を向いて取り付けられている。本実施形態1においては、近距離用の距離画像センサ20aは、床面からの高さ(床面から撮像素子の設置位置までの高さ)H=740[mm]、床面に対する光軸の角度θ=67.5[deg]となるよう取り付けられている。同様に、遠距離用の距離画像センサ20bは、床面からの高さ(床面から撮像素子の設置位置までの高さ)H=710[mm]、床面に対する光軸の角度θ=22.5[deg]となるよう取り付けられている。
図3中の(a)は、遠距離用の距離画像センサ20bにより撮影されたRGB画像であり、図3中の(b)は、遠距離用の距離画像センサ20bにより撮影された距離画像であり、図3中の(c)は、近距離用の距離画像センサ20aにより撮影されたRGB画像であり、図3中の(d)は、近距離用の距離画像センサ20aにより撮影された距離画像である。RGB画像である図3中の(a)および(c)の視野内にある物体への距離を、近い距離は明るく、遠い距離は暗く表示した距離画像が図3中の(b)および(d)となる。図3中の(b)および(d)が示すように、距離画像センサ20aと距離画像センサ20bとは、取り付けられた位置、および水平面に対する角度が異なるため、平面である床面の角度が異なっている。
ここで、距離画像センサ20の光軸を床面に対して平行に配置した場合、清掃ロボット1本体の近傍が、距離画像センサの画角から外れてしまう。したがって、清掃ロボット1本体の近距離の広い範囲が、視野外領域となり、計測不能になってしまう。これに対し、進行方向前方の斜め下向きに取り付けると、近傍の視野外領域を小さくできるので、清掃ロボット1本体の比較的近距離まで計測可能となる。
また、床面上に投影した近距離用の距離画像センサ20aの視野範囲は、図2に示すAの台形領域になる。一方、遠距離用の距離画像センサ20bの視野範囲は、図2のAの台形領域になる。このように、水平面に対して異なる角度になるよう取り付けられた複数の距離画像センサ20を併用することにより、清掃ロボット1は、清掃ロボット1の進行方向の近傍から遠方まで、広い計測範囲を持つことが可能となる。
なお、距離画像センサ20の配置や個数は本実施形態1の構成に限定されず、例えば距離画像センサ20を1個のみ搭載したり、複数個を水平方向に並べて配置したりすることも可能である。また、本実施形態1において、近距離用の距離画像センサ20aおよび遠距離用の距離画像センサ20bは、同一波長の赤外光源を用いているため、互いの干渉を防ぐ目的で、視野領域AとAとの間に図2に示すようにわずかに隙間を設けている。異なる波長の光源を用いるなどして干渉を防ぐことが可能であれば、2つの視野領域の間に隙間を設けないように近距離用の距離画像センサ20aおよび遠距離用の距離画像センサ20bを設置することも可能である。
(清掃ロボット1の走行機能)
図4は、本実施形態1の清掃ロボット1における、走行機能に関連する構成を示すブロック図である。図4に示すように、清掃ロボット1は、先に説明した距離画像センサ20および演算装置30の他に、走行制御部41、清掃制御部42、マップ情報メモリ部43、状態表示部44、ロータリーエンコーダ47、駆動輪モータ48、ジャイロセンサ49、および制御スイッチ50を備えている。
演算装置30は、距離画像センサ20から距離画像を取得し、取得した距離画像から障害物や段差の位置、大きさ、および形状を抽出する。抽出された障害物、および段差の情報(以下、障害物・段差データと称する)は走行制御部41に出力される。演算装置30の詳細は後述する。
走行制御部41は、駆動輪2に取り付けられたロータリーエンコーダ47、およびジャイロセンサ49の情報に基づき、清掃ロボット1の移動距離、および現在の位置と方向とを把握する。予めマップ情報メモリ部43に保存されたマップ情報、および演算装置30から出力された障害物・段差データに基づき、障害物や段差を回避するように走行経路を決定し、駆動輪モータ48を制御する。また、制御スイッチ50から信号を取得すると、それに応じて非常停止や走行方向の変更など必要な制御を行う。これらの制御に関する情報は状態表示部44に表示され、リアルタイムに更新される。
清掃制御部42は、走行制御部41からのコマンドを受けて、清掃ブラシ9、廃液回収ユニット45、および洗浄液吐出ユニット46の動作開始、および停止の切り替えなど、清掃に関する部分を制御する。
マップ情報メモリ部43は、清掃ロボット1が清掃する範囲の障害物、および段差などの情報が保存されている。マップ情報メモリ部43に保存されている情報は、走行制御部41により、更新される。
状態表示部44は、清掃ロボット1の状態に関する情報を表示する。例えば、手動走行、または自動走行の表示、非常時の運転停止の表示等である。
ロータリーエンコーダ47は、駆動輪2に取り付けられており、回転の変位をデジタル信号として走行制御部41に出力する。ロータリーエンコーダ47の出力により、走行制御部41は、進んだ距離を把握することができる。
ジャイロセンサ49は、向きの変化を検出し、走行制御部41に出力する。ジャイロセンサ49の出力により、走行制御部41は進行方向を把握することができる。
(演算装置30の詳細)
図4に示すように、演算装置30は、平面検出装置60、障害物・段差検出部35、およびデータ統合部36を備えている。平面検出装置60は、図4に示すように、3次元座標演算部31(3次元座標演算手段、第2の3次元座標演算手段)と、投影画像生成部32(投影画像生成手段、第2の投影画像生成手段)と、直線検出部33(直線検出手段、第2の直線検出手段)と、平面検出部34(平面パラメータ算出手段、第2の平面パラメータ算出手段)とを有している。
・3次元座標演算部31
3次元座標演算部31は、距離画像センサ20から距離画像を取得し、取得した距離画像を3次元座標データに変換する。3次元座標データの座標系の定義を、図5を用いて説明する。
図5中の(a)は、近距離用の距離画像センサ20a基準の3次元座標系を示す図であり、図5中の(b)は、遠距離用の距離画像センサ20b基準の3次元座標系を示す図であり、図5中の(c)は、清掃ロボット1基準の3次元座標系を示す図である。なお、近距離用または遠距離用の距離画像センサ20a、20b基準の3次元座標系とは、距離画像センサ20の光学中心を原点として、進行方向を向いたときの左右方向をx軸(右向きを正)、上下方向をy軸(上向きを正)、前後方向、即ち距離画像センサ20の光軸方向をz軸(奥行き方向を正)にとる。距離画像センサ20aおよび距離画像センサ20bは取り付け位置、および角度が異なるため、図5中の(a)および(b)に示すように、座標系も互いに異なっている。また、距離画像センサ20基準の座標系で表した距離と、清掃ロボット1本体から床面に沿って計測した距離とも異なる。したがって、清掃ロボット1から対象物までの正確な距離を求めるためには、清掃ロボット1基準(床面基準)の座標系に座標変換して、2つの距離画像センサのデータを統合する必要がある。
そこで、図5中の(c)に示すように、距離画像センサ20基準のxyz座標とは別に、清掃ロボット1基準の座標系であるXYZ座標を定義する。進行方向をZ軸、床面の法線方向をY軸、Z軸およびY軸に垂直な方向をX軸(右向きを正)とする。
なお、本実施形態1においては、距離画像センサ20基準のx軸の向きと、清掃ロボット1基準のX軸の向きとが、ほぼ一致している。これは即ち、距離画像センサ20がz軸を中心に回転する方向に傾いて取り付けられてはおらず、床面と画像センサ20との傾きは、x軸を中心に回転する方向の傾きθだけであるということを意味する。もしくは、z軸を中心に回転する方向に傾いていたとしても、傾きθに比べて十分小さく、無視できるということを意味する。
続いて、3次元座標データに含まれる点の座標を算出する方法について説明する。3次元座標(x,y,z)データのうち、z座標は距離画像に含まれる距離そのものである。x座標、およびy座標は、距離画像センサ20の光学系の焦点距離f、画素ピッチp、光軸と撮像素子中心との画素ズレ量cなどが分かれば、三角測量の原理によりzから計算することが出来る。本実施形態1においては、事前に距離画像センサに対しキャリブレーションを行い、これらのパラメータを求めておく。これにより、距離画像が得られれば、その画像に含まれる全画素において距離画像センサ20基準の3次元座標(x,y,z)データ、即ち3次元点群(Point Cloud)データを得ることができる。
図6は、本実施形態1において、3次元座標データの例を示す図である。前述したように、進行方向に向いて左右方向をx軸、上下方向をy軸、前後方向をz軸にとっている。
なお、3次元座標演算部31は、前記の座標系以外にも、例えばx軸、y軸、およびz軸のうち、少なくとも一つの軸を中心に回転させた座標系や、原点を変更した座標系など、様々な座標系において、距離画像を3次元座標データに変換可能である。
・投影画像生成部32
投影画像生成部32は、3次元座標データを、2次元面(平面)に投影した投影画像を生成する。例えば、xy平面に投影された投影画像は、全ての画素について、そのx座標とy座標とを抽出したものになる。同様に、yz平面に投影された投影画像は、全ての画素について、そのy座標とz座標とを抽出したものとなり、zx平面に投影された投影画像は、全ての画像について、そのz座標とx座標とを抽出したものとなる。
ここで、投影画像は白(=「1」)/黒(=「0」)の2値の画像であり、その縦横のサイズは、投影時の縮尺に応じて自由に決めることができる。例えば、yz平面への投影画像の条件として、y軸の投影範囲を−1200mm〜+1200mm(オフセット1200mm)、z軸の投影範囲を0mm〜+3200mm(オフセット0mm)、投影時の縮尺を1/10[pixel/mm]とする。この場合、投影画像のサイズは以下のようになる。
縦(y軸): (1200−(−1200))/10=240
横(z軸): (3200−0)/10=320
即ち、横320pixel×縦240pixelとなる。
この投影画像サイズは、原画像(距離画像)の画像サイズとは独立に、上記等の縮尺を変えることで自由に変更することができる。投影画像サイズを大きくすると、投影時の分解能が細かくなることで計算の精度が上がるが、その分演算時間が長くなる。このトレードオフによって実際に使用する画像サイズが決定される。
実際の投影画像の作成は以下のようにして行う。一例として、3次元座標データの一つ、点A(x,y,z)=(500mm,−300mm,2000mm)というデータを、yz平面に投影する場合について、説明する。
最初に、yz平面に投影された投影画像に含まれる全ての点の画素値を「0」で初期化しておく。
次に、点Aのy座標、z座標を抽出すると、(y,z)=(−300mm,2000mm)となる。これを上記のyz平面に投影するために、上記の縮尺と投影範囲を考慮して座標を換算すると、
縦(y軸):(−300+1200)/10=90
横(z軸):(2000+0)/10=200
となるので、投影画像上の(y,z)=(90、200)の点に対応することが分かる。従って、yz平面投影画像の(y,z)=(90,200)の点の画素値を「0」から「1」に変更する。
次に、別のデータとして、点B(x,y,z)=(−400mm,900mm,1500mm)が存在したとする。このデータを同様にyz平面に投影すると、(y,z)=(210、150)の点に相当するので、この点の画素値を同様に「0」から「1」に変更する。
さらに、別のデータとして、点C(x,y,z)=(−200mm,−303mm,1998mm)が存在したとする。このデータを同様にyz平面に投影すると、(y,z)=(90、200)の点に相当する。これは点Aの投影後の座標と同じであり、既にこの点の画素値は「1」になっているため、ここでは何も行わない。これは、3次元座標上の異なる2点AとCとが、yz平面への投影後は同一の点に投影されることを意味する。
以下同様にして、3次元座標データに含まれる点の全てについて、y座標値・z座標値の抽出、yz平面の座標値への換算を行い、該当する座標の画素値の「1」への変更を行う。これにより、3次元座標データに含まれる点が存在する部分のみ「1」となった2値画像の形でyz平面投影画像が得られることになる。
・直線検出部33
直線検出部33は、投影画像生成部32が生成した投影画像から、直線を検出する。例えば、図7に示す投影画像において、床面を示す直線を検出する場合について説明する。
図7は、図6の3次元座標データをyz平面に投影した投影画像である。図7に示すように、yz平面への投影画像は、全ての画素について、y座標とz座標とを抽出している。また、床面よりも下に物体が存在しない場合、同一のz座標を有する点同士を比較すると、床面を表す点が最も低い、即ちy座標が最も小さい点(以下、ボトム点と称する)であることが分かる。さらに、床面を表す平面が、投影画像では直線になっていることが分かる。
前述したように、距離画像センサ20は、z軸を中心として回転する向きに傾いて取り付けられていないため、床面と距離画像センサ20との傾き角は、x軸を中心として回転する方向の傾きθに比べて十分小さい。その結果、床面を表す3次元座標データをyz平面へ投影すると、ほぼ一つの直線上に分布する。
ボトム点が床面を示すので、直線検出部33は、投影画像に含まれる各画素列を、下から上方向にスキャンして、スキャン方向に沿って最初に見つかった点、即ち最初に「1」となった点のみを残し、他の点を削除する演算を行い、ボトム画像を得る。
次に、直線検出部33は、得たボトム画像に対し、直線を検出するフィッティング処理を施し、直線の傾き、および切片等のパラメータを得る。直線検出の結果によっては直線の候補が一本ではなく複数本得られる場合があるが、その場合は予め定められた基準で最も確からしい直線を選出する。
直線検出手法(フィッティング処理)には、Hough変換、その改良手法である確率的Hough変換、単純な最小自乗法、およびRANSAC法など任意の処理を適用できる。なお、前記「定められた基準」としては、例えば、最小自乗法やRANSAC法であれば、直線フィッティングを行った際の誤差(残差)が最も小さい直線を、最も確からしい直線として選択することができる。また、Hough変換であれば、その直線を支持する点の数が最も多いものを、最も確からしい直線として選択することができる。これらの処理により、直線の候補が複数存在する場合に、それぞれの手法で最も確からしい直線を抽出することができる。
以上により、yz平面投影画像上で床面を表す直線の情報を得ることができる。
・平面検出部34
平面検出部34は、直線検出部33が検出した直線から、3次元座標データ内の平面を検出し、平面の高さ、および角度を算出する。検出された平面は、高さ、および角度という幾何的な情報以外に、例えば平面の方程式:ax+by+cz+d=0といった他の形式によって表現したパラメータを求めても構わない。
図6、および図7において平面として検出される床面は、距離画像センサ20の取り付けられた高さ、および角度から、平面検出部34によって検出される平面の高さ、および角度が推測可能である。したがって、検出される高さ、および角度の許容範囲を予め設定し、平面検出部34が検出した平面が許容範囲内にあるかを判定することによって、より確実に床面を検出可能となる。
また、平面検出部34は、検出した床面を、床平面情報として保有する。床平面情報は、平面検出部34が床面を検出すると、随時更新される。こうすることにより、清掃ロボット1の移動に伴って発生する床平面の変動に追随し、常に床平面を把握することが出来る。また、距離画像センサの前を人が横切るなどして床面が一時的に検出できなくなっても、以前に検出した床平面情報を使用することで、床平面検出処理の欠落を防止することができる。
・障害物・段差検出部35
障害物・段差検出部35は、xyz座標系の3次元座標データをXYZ座標系の3次元座標データに変換する。そして、XYZ座標系において、各点と平面との距離を計算し、検出した平面より高いか低いかを判定する。
・データ統合部36
データ統合部36は、複数の距離画像から検出された複数の障害物、および複数の段差を、一つの障害物・段差データとして統合する。本実施形態においては、距離画像センサ20a、および距離画像センサ20bのそれぞれから取得した距離画像から障害物、および段差が検出されるので、それらの障害物、および段差の情報を一つに統合し、障害物・段差データを作成する。その際、例えば、遠距離用の距離画像センサ20bで検出された障害物Aの前に、近距離用の距離画像センサ20aで検出された別の障害物Bがある場合、距離の近い障害物Bのデータが優先するようにしてデータを統合することもできる。
障害物・段差データの形式は、後で走行制御部41が処理しやすいように、任意の形式に変換することができる。データの座標系は、清掃ロボット基準のXYZ座標系のまま出力することもでき、また極座標系(R−θ座標系)に変換することもできる。検出した全ての障害物、および段差をデータ化する手法以外に、データの間引き、または補間を行ったり、清掃ロボット1本体に最も近い障害物、および段差データのみを抽出したりする手法も考えられる。
(演算装置30の処理)
以下に、演算装置30の処理フローを纏める。図8は、本発明の実施形態1に係る清掃ロボット1の演算装置30が処理する手順を示すフローチャートである。
まず、3次元座標演算部31が、距離画像センサ20が生成した距離画像を取得する(ステップS101)。本実施形態1においては、近距離用の距離画像センサ20aと、遠距離用の距離画像センサ20bとの2つの距離画像センサ20が取り付けられているので、近距離用の距離画像と、遠距離用の距離画像とを、それぞれの距離画像センサ20から取得する。
次に、3次元座標演算部31が、取得した距離画像を、xyz座標系の3次元座標データに変換する(ステップS102)。変換された3次元座標データから、投影画像生成部32はyz平面に投影された投影画像を生成する(ステップS103)。前述したように、本実施形態1においては、距離画像センサ20は、z軸を中心として回転する向きに傾いて取り付けられていないため、床面と距離画像センサ20とのz軸を中心として回転する方向の傾きは、x軸を中心として回転する方向の傾きに比べて十分に小さい。したがって、3次元座標データにおいて床面を表す平面は、yz平面への投影画像においては一直線上の点群となる。ここで、実際の投影画像を、図9に示す。
図9中の(a)は、本発明の実施形態1に係る遠距離用の距離画像センサ20bにより撮影された距離画像から生成されたyz平面への投影画像であり、図9中の(b)は、本発明の実施形態1に係る図9中の(a)のボトム画像であり、図9中の(c)は、本発明の実施形態1に係る近距離用の距離画像センサ20aにより撮影された距離画像から生成されたyz平面への投影画像であり、図9中の(d)は、本発明の実施形態1に係る図9中の(c)のボトム画像である。図9中の(a)および(c)において、床面を表す点群61、および点群62は、前述したように、直線になっていることが分かる。
続いて、直線検出部33が、投影画像からボトム画像を生成する(ステップS104)。図9(b)、および(d)に示すように、ボトム画像の直線は、床面を表す点群61、および床面を表す点群62と一致している。このボトム画像から、直線検出部33が、直線を検出する(ステップS105)。そして、平面検出部34が、検出された直線から、3次元座標データ内の平面を検出し、当該平面の角度および高さを算出する(ステップS106)。ここで平面の角度とは、z軸に対する角度(傾斜角)である。また、平面の高さとは、床面と距離画像センサ20との間の離間距離である。
算出された平面の角度、および高さは、平面検出部34により、予め設定された角度、および高さの許容範囲内にあるか判定される(ステップS107)。
ステップS107において、「角度、および高さが許容範囲内である」と判定された場合(ステップS107:Yes)、検出された平面は床面なので、平面検出部34は床平面情報を更新する(ステップS108)。一方、ステップS107において、「角度、および高さが許容範囲内ではない」と判定された場合(ステップS107:No)、検出された平面は床面ではないので、床平面情報は更新しない(ステップS109)。
ステップS108もしくはステップS109の後、障害物・段差検出部35が、xyz座標系からXYZ座標系へと、3次元座標データを変換する(ステップS110)。次に、障害物・段差検出部35が、変換したXYZ座標系の3次元座標データから、各点と平面との距離を計算し、検出した平面より高いか低いかを判定し、障害物および段差を検出する(ステップS111)。当該判定には、閾値tを設け、床平面との距離がtよりも大きければ床よりも高い障害物、もしくは段差、−tよりも小さければ床平面より低い段差と判定する。閾値tは、床平面の凹凸の大きさや、距離画像センサの計測誤差等を考慮して予め設定する。これにより、3次元座標データに含まれる全ての点について、その点が段差に属するか、障害物に属するか、あるいはそれ以外であるかが判定される。そして、各点の座標(X,Y,Z)に、その点が段差に属するか、障害物に属するか、それ以外であるかを表す情報Fが付加され、(X,Y,Z,F)形式に変換される。このようにして得られた段差および障害物に関する情報が、障害物・段差検出部35からデータ統合部36に渡される。
そして、データ統合部36が、障害物・段差検出部35が検出した障害物および段差の情報を統合し、障害物・段差データを作成する(ステップS112)。最後に、データ統合部36は、障害物・段差データを走行制御部41に出力する(ステップS113)。
このような手順により、演算装置30は、距離画像から障害物・段差データを高速かつより確実に作成し、走行制御部41に出力する。従って、清掃ロボット1は、障害物、および段差を回避しながら移動することが可能となる。また、複数の距離センサから独立に平面検出を行い、それらのデータを統合することで、さらに広い範囲の障害物、および段差を検出し、それらを回避しながら移動することができる。
また、一般的に3次元空間上において、一つの平面を特定するには、3つのパラメータを特定する必要がある。しかし、本実施形態においては、距離画像センサ20が床面に対して、z軸を中心として回転する向きに傾いて取り付けられていないという条件を利用し、高さ方向(y軸方向)と奥行き方向(z軸方向)の傾きのみを求めている。即ち、特定するパラメータの数を2つに限定しているため、3つのパラメータを特定する場合に比べて高速な平面検出が可能となり、自律移動装置においても容易にリアルタイムの床面検出が実現できる。
(段差の検出)
前述した実施形態1においては、床面よりも下に物体が存在しない場合が望ましいが、例えば、床面よりも低い面の段差が存在する場合がある。このような場合における床面の検出方法について、以下に説明する。
図10中の(a)は、床面より低い段差が存在する場合のyz平面への投影画像であり、図10中の(b)は、図10中の(a)のボトム画像である。図10中の(a)に示すように、yz平面への投影画像において、床面を表す点群61と、段差を表す点群62とが直線になっている。このような場合は、図10中の(b)に示すように、距離画像センサ20の取り付けられた高さ、角度から、予め床面が存在すると予想される範囲を限定し、それを直線検出の際の許容範囲64として設定する。許容範囲64を設定することにより、直線検出部33は、段差を表す点群63ではなく、床面を表す点群61を直線として検出可能となる。
例えば、遠距離用の距離画像センサ20bが、高さH=710[mm]、角度θ=22.5[deg]に取り付けられているとする。このとき、理論上の床面は、距離画像センサ基準の座標系で、原点から710[mm]の距離に、zx平面とのなす角(奥行き方向の傾き角)22.5[deg]で存在することになる。しかし、取り付け位置は組み立て誤差等により多少変動するため、ステップS106において、算出された床面の高さ、および角度が、前記の値から±数mm、±数degの範囲内にあるかどうかを確認する。確認の結果、範囲内にあれば床面であるとしてこの直線を検出し、範囲内になければ、ステップS105において検出された複数の直線から別の直線を選択し、同様に範囲内にあるかどうかを確認する。
このように、検出された平面の高さ、および角度を限定して床面を検出すれば、距離画像内に床面より低い段差が含まれていても、それを除外し、床面を検出することができる。
〔実施形態2〕
本発明の第2の実施形態について、図11〜図12を用いて説明する。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
実施形態1においては、床面と距離画像センサ20との傾きのうち、z軸を中心として回転する方向の傾きが、x軸を中心として回転する方向の傾きに比べて十分小さく無視できる場合について説明した。これに対して本実施形態2では、z軸を中心として回転する方向の傾きがx軸を中心として回転する方向の傾きに比べて小さいものの、完全には無視できない場合における平面検出について、以下に説明する。
(演算装置30の処理)
図11は、本実施形態2に係る清掃ロボットに具備される演算装置30が処理する手順を示すフローチャートである。なお、図8のフローチャートと同じステップについては、説明を省略する。また、図12中の(a)は、本実施形態2に係る3次元座標データの例を示す図であり、図12中の(b)は、図12中の(a)の3次元座標データをyz平面に投影した投影画像であり、図12中の(c)は、図12中の(a)の3次元座標データをxy平面に投影した投影画像であり、図12中の(d)は、図12中の(a)の3次元座標データをxy´平面に投影した投影画像である。
図11において、ステップS106の処理である、検出した平面のx軸を中心として回転する向きの角度θ、および高さを算出する。しかし、図12中の(b)に示すように、yz平面への投影画像で得られる点群は完全に一直線上には並ばず、幅を有して帯状に分布している。
そこで、xyz座標系を、x軸を中心として回転する方向の傾きθに相当する角度だけ回転させたxy´z´座標を、新たに定義する。例えば、床面がxyz座標系で原点から710[mm]の距離に、zx平面とのなす角(奥行き方向の傾き角)22.5[deg]で存在する場合、y´軸およびz´軸は、y軸およびz軸をそれぞれx軸を中心に22.5[deg]回転させて得られる。このように、3次元座標演算部31は、xyz座標系における3次元座標データを、新たに定義したxy´z´座標系に変換する(ステップS121)。
次に、投影画像生成部32は、変換された3次元座標データをxy´平面に投影し、投影画像を生成する(ステップS122)。その後、直線検出部33は、投影画像のボトム画像を生成し(ステップS123)、ボトム画像から直線を検出する(ステップS124)。直線検出部33が検出した直線から、平面検出部34は左右方向の角度を得ることができ(ステップS125)、ステップS106で得たx軸を中心として回転する方向の傾きθと合わせて、角度、および高さが設定範囲内であるか判定する(ステップS107)。以下、実施形態1と同様である。
このような手順により、演算装置30は、z軸を中心に回転する方向への傾きが無視できない場合においても、第1段階としてxyz座標系においてx軸を中心として回転する方向の傾きθを算出する。次に座標系をxy´z´に変換し、xy´平面への投影画像から、第2段階として左右方向の角度を算出する。このような2段階の処理により、より確実に床面を検出することができる。
なお、ステップS121のような座標変換を行わず、投影画像生成部32が元のxyz座標系のままxy平面への投影画像を生成すると、図12中の(c)のような投影画像を得る。図12中の(c)に示すように、この画像では床面を表す点群が一直線上に並んでいない。したがって、例えば、図12中の(c)のA−A´のラインに別の物体が存在し、床面が見えない状態にある場合、ボトム点の集合から直線を抽出したときに、A−A´ラインが床面を表す直線だと誤検出してしまうことになる。一方、最初にx軸を中心として回転する方向の傾きθだけx軸を中心に回転させたxy´z´座標系においては、z´軸が床面とほぼ平行になっているため、xy´平面への投影画像は図12中の(d)に示すように、床面を表す点群がボトム点となり、抽出できる。
〔まとめ〕
本発明の一態様に係る平面検出装置は、特定の検出対象平面を含む被写体の距離画像データから当該特定の検出対象平面を検出する平面検出装置(平面検出装置60)であって、前記距離画像データを、前記特定の検出対象平面を表す検出対象3次元点群を含む3次元座標データに変換する3次元座標演算手段(3次元座標演算部31)と、前記3次元座標データを所定の2次元平面に投影して、前記検出対象3次元点群が線形に分布した投影画像データを生成する投影画像生成手段(投影画像生成部32)と、前記投影画像データから前記線形の直線を検出する直線検出手段(直線検出部33)と、前記直線検出手段の検出結果に基づいて、前記特定の検出対象平面の傾きに関する情報を含む平面パラメータを算出する平面パラメータ算出手段(平面検出部34)と、を備えることを特徴としている。
前記の構成によれば、平面を含む距離画像データを3次元座標データに変換し、変換した3次元座標データを平面に投影する。そして、投影した画像から直線を検出し、その直線に基づいた平面パラメータを検出する。したがって、距離画像の中に平面検出の手掛かりを必要とせず、また障害物等の平面とは無関係の情報が多数含まれていても、平面をより確実に検出できるという効果を奏する。
さらに、本発明の一態様に係る平面検出装置(平面検出装置60)は、前記距離画像データにおいて、前記被写体の奥行き方向をz軸として、当該z軸に対して垂直であるx軸およびy軸であって、当該距離画像データの左右方向をx軸、上下方向をy軸としたxyz座標系において、前記投影画像生成手段(投影画像生成部32)は、前記3次元座標データをyz平面に投影した投影画像データを生成し、前記平面パラメータ算出手段(平面検出部34)は、投影画像データから、前記特定の検出対象平面の、前記z軸に対する傾斜角を含む前記平面パラメータを算出することを特徴としている。
前記の構成によれば、yz平面に投影した投影画像データから平面を検出できることにより、より高速に平面を検出できるという効果を奏する。
さらに、本発明の一態様に係る前記平面パラメータ算出手段は、前記直線が予め定めた範囲内にあるか否かを判別することを特徴としている。
前記の構成によれば、予め検出する直線の範囲を設定することによって、より確実に対象の平面を検出できるという効果を奏する。
さらに、本発明の一態様に係る平面検出装置(平面検出装置60)は、前記xyz座標系を、前記x軸を回転軸として回転させることによってxy´z´座標系に変換して、xy´z´座標系における前記特定の検出対象平面を表す検出対象3次元点群を含む第2の3次元座標データを生成する第2の3次元座標演算手段(3次元座標演算部31)と、前記第2の3次元座標データを、xy´平面に投影して、当該第2の3次元座標データに含まれる前記検出対象3次元点群が線形に分布した第2の投影画像データを生成する第2の投影画像生成手段(投影画像生成部32)と、前記第2の投影画像データから、当該第2の投影画像データに分布する前記線形の第2の直線を検出する第2の直線検出手段と(直線検出部33)、前記第2の直線検出手段の検出結果に基づいて、前記特定の検出対象平面の傾きに関する情報を含む第2の平面パラメータを算出する第2の平面パラメータ算出手段(平面検出部34)と、をさらに備えることを特徴としている。
前記の構成によれば、より確実に対象の平面を検出できるという効果を奏する。
さらに、本発明の一態様に係る自律移動装置(清掃ロボット1)は、平面検出装置(平面検出装置60)と、前記距離画像データを生成する距離画像生成手段(距離画像センサ20)と、走行手段(駆動輪2)と、を備えており、前記平面検出装置を用いて走行路となる平面を検出することを特徴とする自律移動装置。
前記の構成によれば、前記自律移動装置は、前記平面検出装置と同様の効果を奏することができる。
さらに、本発明の一態様に係る自律移動装置(清掃ロボット1)は、前記距離画像生成手段(距離画像センサ20)を複数備え、各距離画像生成手段が生成する距離画像データそれぞれから前記平面パラメータを算出することを特徴としている。
前記の構成によれば、より広範囲においてより確実に平面を検出できるという効果を奏する。
〔補足説明〕
本発明は前述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
(距離画像センサ20について)
前述した実施形態においては、距離画像センサ20は赤外線投射方式を用いたが、ステレオ方式やTOF方式など、他方式の距離画像センサを用いることも可能である。ステレオ方式の場合、ステレオ配置された左右カメラから得られる左右画像に対し、対応点探索などの手法によって視差を計算する。視差の値から三角測量の原理によって対象物までの距離を求めることができる。このようにして得られた距離画像について、前述した実施形態と同様の処理により、平面検出を実現できる。
(検出できる平面)
前述した実施形態においては、床面を検出したが、路面、水面、壁面、および天井面など、他の平面の検出にも用いることができる。
(自律移動装置)
前述した実施形態においては、自律移動装置として清掃ロボット1について説明したが、例えば工場内の無人搬送機、自動走行車、介護用ロボット、防犯用ロボット、災害救助用ロボット、エンターテインメント用ロボットなど、他の自律移動装置にも適用可能である。
(平面検出装置)
前述した実施形態においては、平面検出装置60を清掃ロボット1に組み込んで利用したが、平面検出装置60を独立した装置として産業用、民生用、その他用途に用いる他、汎用的な携帯情報端末などの一部に組み込むことも可能である。
(ソフトウェアによる実現例)
最後に、平面検出装置の各ブロックは、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
後者の場合、平面検出装置は、各機能を実現するプログラムの命令を実行するCPU、前記プログラムを格納したROM(Read Only Memory)、前記プログラムを展開するRAM(Random Access Memory)、前記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、前述した機能を実現するソフトウェアである平面検出装置の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、前記平面検出装置に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
前記記録媒体としては、一時的でない有形の媒体(non-transitory tangible medium)、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM/EEPROM(登録商標)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
また、平面検出装置を通信ネットワークと接続可能に構成し、前記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、前記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
本発明は、計測対象となる画像データに含まれる床などの平面を検出するための平面検出装置およびそれを用いた自律移動装置に関するものであり、平面検出装置自体を独立した装置として産業用、民生用、その他用途に用いる他、他の装置の一部に組み込んで利用したり、装置の一部または全部を集積回路(ICチップ)化したりして利用することができる。
1 清掃ロボット(自律移動装置)
2 駆動輪(走行手段)
3 従輪
4 バッテリ
5 洗浄液タンク
6 洗浄液吐出部
7 廃液タンク
8 吸引口
9 清掃ブラシ
10 モータ
11 筐体
12 保護部材
20 距離画像センサ(距離画像生成手段)
20a 近距離用の距離画像センサ
20b 遠距離用の距離画像センサ
30 演算装置
31 3次元座標演算部(3次元座標演算手段、第2の3次元座標演算手段)
32 投影画像生成部(投影画像生成手段、第2の投影画像生成手段)
33 直線検出部(直線検出手段、第2の直線検出手段)
34 平面検出部(平面パラメータ算出手段、第2の平面パラメータ算出手段)
35 障害物・段差検出部
36 データ統合部
41 走行制御部
42 清掃制御部
43 マップ情報メモリ部
44 状態表示部
45 廃液回収ユニット
46 洗浄液吐出ユニット
47 ロータリーエンコーダ
48 駆動輪モータ
49 ジャイロセンサ
50 制御スイッチ
60 平面検出装置

Claims (4)

  1. 特定の検出対象平面を含む被写体の距離画像データから当該特定の検出対象平面を検出する平面検出装置であって、
    前記距離画像データを、前記特定の検出対象平面を表す検出対象3次元点群を含む3次元座標データに変換する3次元座標演算手段と、
    前記3次元座標データを所定の2次元平面に投影して、前記検出対象3次元点群が線形に分布した投影画像データを生成する投影画像生成手段と、
    前記投影画像データから前記線形の直線を検出する直線検出手段と、
    前記直線検出手段の検出結果に基づいて、前記特定の検出対象平面の傾きに関する情報を含む平面パラメータを算出する平面パラメータ算出手段と、
    を備え、
    前記距離画像データにおいて、前記被写体の奥行き方向をz軸として、当該z軸に対して垂直であるx軸およびy軸であって、当該距離画像データの左右方向をx軸、上下方向をy軸としたxyz座標系において、前記投影画像生成手段は、前記3次元座標データをyz平面に投影した投影画像データを生成し、
    前記平面パラメータ算出手段は、投影画像データから、前記特定の検出対象平面の、前記z軸に対する傾斜角を含む前記平面パラメータを算出することを特徴とする平面検出装置。
  2. 前記平面パラメータ算出手段は、前記直線が予め定めた範囲内にあるか否かを判別することを特徴とする請求項1に記載の平面検出装置。
  3. 前記xyz座標系を、前記x軸を回転軸として回転させることによってxy´z´座標系に変換して、xy´z´座標系における前記特定の検出対象平面を表す検出対象3次元点群を含む第2の3次元座標データを生成する第2の3次元座標演算手段と、
    前記第2の3次元座標データを、xy´平面に投影して、当該第2の3次元座標データに含まれる前記検出対象3次元点群が線形に分布した第2の投影画像データを生成する第2の投影画像生成手段と、
    前記第2の投影画像データから、当該第2の投影画像データに分布する前記線形の第2の直線を検出する第2の直線検出手段と、
    前記第2の直線検出手段の検出結果に基づいて、前記特定の検出対象平面の傾きに関する情報を含む第2の平面パラメータを算出する第2の平面パラメータ算出手段と、
    をさらに備えることを特徴とする請求項に記載の平面検出装置。
  4. 請求項1からまでの何れか1項に記載の平面検出装置と、
    前記距離画像データを生成する距離画像生成手段と、
    走行手段と、を備えており、
    前記平面検出装置を用いて走行路となる平面を検出することを特徴とする自律移動装置。
JP2012235950A 2012-10-25 2012-10-25 平面検出装置およびそれを備えた自律移動装置 Active JP6030405B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012235950A JP6030405B2 (ja) 2012-10-25 2012-10-25 平面検出装置およびそれを備えた自律移動装置
PCT/JP2013/071855 WO2014064990A1 (ja) 2012-10-25 2013-08-13 平面検出装置、平面検出装置を備えた自律移動装置、路面段差検出方法、路面段差検出装置、および路面段差検出装置を備えた車両

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012235950A JP6030405B2 (ja) 2012-10-25 2012-10-25 平面検出装置およびそれを備えた自律移動装置

Publications (2)

Publication Number Publication Date
JP2014085940A JP2014085940A (ja) 2014-05-12
JP6030405B2 true JP6030405B2 (ja) 2016-11-24

Family

ID=50788924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012235950A Active JP6030405B2 (ja) 2012-10-25 2012-10-25 平面検出装置およびそれを備えた自律移動装置

Country Status (1)

Country Link
JP (1) JP6030405B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016065422A (ja) * 2014-09-26 2016-04-28 株式会社日立製作所 外界認識装置および外界認識装置を用いた掘削機械
KR101598385B1 (ko) * 2014-11-11 2016-03-02 한양대학교 산학협력단 직선 정보 기반 장소 인식을 이용한 로봇의 자율주행 방법 및 자율 주행 로봇
JP6781535B2 (ja) * 2015-07-27 2020-11-04 シャープ株式会社 障害物判定装置及び障害物判定方法
KR20190080974A (ko) 2015-08-04 2019-07-08 닛산 지도우샤 가부시키가이샤 단차 검출 장치 및 단차 검출 방법
JP7007078B2 (ja) * 2015-10-08 2022-01-24 東芝ライフスタイル株式会社 電気掃除機
JP6705636B2 (ja) 2015-10-14 2020-06-03 東芝ライフスタイル株式会社 電気掃除機
JP6649054B2 (ja) * 2015-11-19 2020-02-19 アイシン精機株式会社 移動体
JP6668740B2 (ja) * 2015-12-22 2020-03-18 いすゞ自動車株式会社 道路面推定装置
JP6654999B2 (ja) * 2016-12-12 2020-02-26 株式会社Soken 物標検出装置
JP2018136896A (ja) * 2017-02-24 2018-08-30 キヤノン株式会社 情報処理装置、システム、情報処理方法、および物品の製造方法
KR102461938B1 (ko) 2017-04-04 2022-10-31 엘지전자 주식회사 주행 지면의 장애물을 식별하는 방법 및 이를 구현하는 로봇
JP2019188556A (ja) * 2018-04-26 2019-10-31 オムロン株式会社 センサコントローラ、ロボットシステム、センサ制御方法、およびプログラム
KR102155095B1 (ko) * 2019-03-26 2020-09-11 엘지전자 주식회사 로봇 청소기
JP7308115B2 (ja) * 2019-09-24 2023-07-13 京セラ株式会社 物体検出装置、物体検出システム、移動体及び物体検出方法
CN111310663A (zh) * 2020-02-17 2020-06-19 北京三快在线科技有限公司 道路栅栏检测方法、装置、设备及存储介质
JP7707617B2 (ja) * 2021-04-06 2025-07-15 オムロン株式会社 床面状態検出装置およびこれを備えた測距装置、床面状態検出方法、床面状態検出プログラム
JP7679672B2 (ja) * 2021-04-06 2025-05-20 オムロン株式会社 出力制御装置およびこれを備えた測距装置、出力制御方法、出力制御プログラム
WO2023171611A1 (ja) * 2022-03-07 2023-09-14 興和株式会社 自動走行ロボット
KR20250129619A (ko) * 2022-12-29 2025-08-29 엘지전자 주식회사 객체 거리 측정 방법 및 이를 구현하는 로봇
WO2025005127A1 (ja) 2023-06-30 2025-01-02 京セラ株式会社 処理装置、ロボット制御装置、ロボットシステム及びプログラム
CN117731183B (zh) * 2024-02-19 2024-05-10 杭州万向职业技术学院 一种屏蔽门清洗机器人及其清洗方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4344860B2 (ja) * 2004-01-30 2009-10-14 国立大学法人東京工業大学 ステレオ画像を用いた道路平面領域並びに障害物検出方法
JP5567908B2 (ja) * 2009-06-24 2014-08-06 キヤノン株式会社 3次元計測装置、その計測方法及びプログラム

Also Published As

Publication number Publication date
JP2014085940A (ja) 2014-05-12

Similar Documents

Publication Publication Date Title
JP6030405B2 (ja) 平面検出装置およびそれを備えた自律移動装置
WO2014064990A1 (ja) 平面検出装置、平面検出装置を備えた自律移動装置、路面段差検出方法、路面段差検出装置、および路面段差検出装置を備えた車両
JP6132659B2 (ja) 周囲環境認識装置、それを用いた自律移動システムおよび周囲環境認識方法
EP3447532B1 (en) Hybrid sensor with camera and lidar, and moving object
EP3104194B1 (en) Robot positioning system
EP3132732B1 (en) Autonomous coverage robot
CN106489104B (zh) 用于移动机器人中的光学量程传感器的使用的系统和方法
CN106998983B (zh) 电动吸尘器
CN103054522B (zh) 一种清洁机器人系统及其测控方法
EP3415281B1 (en) Robot cleaner and method for controlling the same
US8467902B2 (en) Method and apparatus for estimating pose of mobile robot using particle filter
KR20190131402A (ko) 카메라와 라이다를 이용한 융합 센서 및 이동체
EP4250232B1 (en) Three-dimensional point group data generation method, position estimation method, three-dimensional point group data generation device, and position estimation device
CN111220148A (zh) 移动机器人的定位方法、系统、装置及移动机器人
KR20180080498A (ko) 공항용 로봇 및 그의 동작 방법
JP7296552B2 (ja) 掃除地図表示装置、及び、掃除地図表示方法
CN107105956A (zh) 电动吸尘器
US12059115B2 (en) Cleaner and method for controlling same
KR20200059666A (ko) 이동 장치 및 이동 장치의 객체 감지 방법
KR20130002834A (ko) 자율 이동 방법 및 그 장치
JP2014106638A (ja) 移動装置および制御方法
AU2015224421B2 (en) Autonomous coverage robot
EP2325713B1 (en) Methods and systems for movement of robotic device using video signal

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160823

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160927

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161020

R150 Certificate of patent or registration of utility model

Ref document number: 6030405

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150