JP2015514519A - 自律式カバレッジロボット - Google Patents

自律式カバレッジロボット Download PDF

Info

Publication number
JP2015514519A
JP2015514519A JP2015507269A JP2015507269A JP2015514519A JP 2015514519 A JP2015514519 A JP 2015514519A JP 2015507269 A JP2015507269 A JP 2015507269A JP 2015507269 A JP2015507269 A JP 2015507269A JP 2015514519 A JP2015514519 A JP 2015514519A
Authority
JP
Japan
Prior art keywords
color
image
robot
blobs
blob
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.)
Granted
Application number
JP2015507269A
Other languages
English (en)
Other versions
JP5844941B2 (ja
Inventor
マイケル ティー ローゼンスタイン
マイケル ティー ローゼンスタイン
マーク チアペッタ
マーク チアペッタ
マーク シュニットマン
マーク シュニットマン
アンドリュー パストーレ
アンドリュー パストーレ
Original Assignee
アイロボット コーポレイション
アイロボット コーポレイション
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 アイロボット コーポレイション, アイロボット コーポレイション filed Critical アイロボット コーポレイション
Publication of JP2015514519A publication Critical patent/JP2015514519A/ja
Application granted granted Critical
Publication of JP5844941B2 publication Critical patent/JP5844941B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4061Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2805Parameters or conditions being sensed
    • A47L9/2826Parameters or conditions being sensed the condition of the floor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • A47L9/2836Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means characterised by the parts which are controlled
    • A47L9/2852Elements for displacement of the vacuum cleaner or the accessories therefor, e.g. wheels, casters or nozzles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2201/00Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
    • A47L2201/06Control of the cleaning action for autonomous devices; Automatic detection of the surface condition before, during or after cleaning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Geometry (AREA)
  • Electric Vacuum Cleaner (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Image Processing (AREA)

Abstract

移動式床清掃ロボット(100)は、床表面(10)にわたってロボットを操縦するよう構成された駆動システム(120)によって支持されるロボット本体(110)を含む。ロボットはまた、ロボット本体によって支持される清掃システム(160)と、ロボット本体上に配置されたイメージセンサ(510)と、駆動システム及びイメージセンサと通信状態にあるコントローラ(150)と、を含む。コントローラは、床表面のイメージのシーケンス(514b)を受け取る。コントローラは、イメージのピクセル(514)をカラー量子化することにより各イメージをカラーブロブ(23)にセグメント化し、対応するピクセルロケーション(517)に基づいてイメージの各色の空間分布を決定し、当該色の閾空間分布を有するイメージの領域を識別する。次いで、コントローラは、イメージのシーケンスにわたりイメージセンサに対してカラーブロブのロケーション(12a)を追跡する。【選択図】 図1

Description

本開示は、表面清掃ロボットに関する。
真空掃除機は一般に、空気ポンプを用いて部分真空を生成して、通常は床から、任意選択的には更に他の表面から塵埃及び汚れを引き上げるようにしている。真空掃除機は通常、後で廃棄するために集塵バッグ又はサイクロン内に汚れを集める。家庭並びに産業界で使用される真空掃除機は、小型バッテリ駆動式携帯装置、家庭用セントラル真空掃除機、排出するまでに数百リットルの塵埃を扱うことができる大型の定置用産業電気機器、又は大量の流出液の回収及び汚染土壌の除去のための自走式真空トラックなど、様々なサイズ及びモデルが存在する。
自律式ロボット真空掃除機は一般に、正常動作条件下では、床を真空掃除しながら居住空間及び日常的な障害物の間を移動する。自律式ロボット真空掃除機は一般に、壁、家具、又は階段などの障害物を避けることを可能にするセンサを含む。ロボット真空掃除機は、障害物に衝突したときにその駆動方向を変える(例えば、転回又は後退する)ことができる。ロボット真空掃除機はまた、床上に異常な汚れスポットを検出したときに駆動方向又は駆動パターンを変えることができる。
米国特許出願公開第2008/0047092号明細書
汚れ又はデブリ(debris)の閾レベル(例えば、目視検査により気付くことができる程の)を有する床領域を検出、移動、及びスポット清掃することができるナビゲーションシステムを有する自律式カバレッジロボットは、床面(例えば、部屋)の床表面を効果的及び効率的に清掃することができる。汚れを探索し、又は汚れ又はデブリの閾レベルを検出するよう認識して、次いで、清掃のため対応する床領域をターゲットとすることによって、ロボットは、全体として床領域全体を清掃する前に比較的より汚れた床領域をスポット清掃することができる。
本開示の1つの態様は、移動式床清掃ロボットを作動させる方法を提供する。本方法は、ロボットから離れている床表面上の物体のロケーションを識別するステップと、床表面にわって駆動して、物体の識別されたロケーションにて床表面を清掃するステップと、物体が床表面上に残っているか否かを判定するステップと、を含む。物体が残っている場合には、本方法は、床表面にわって駆動して、物体の識別されたロケーションにて床表面を再度清掃するステップを含む。
本開示の実施構成は、以下の特徴の1又はそれ以上を含むことができる。一部の実施構成において、本方法は、物体の識別されたロケーションにて床表面を清掃するステップの後、物体が床表面上に残っているか否かを判定するように操縦するステップを含む。本方法は、ロボットを支持する床表面のイメージのシーケンスを受け取るステップを含むことができ、ここで各イメージはピクセルのアレイを有する。本方法は更に、イメージのピクセルをカラー量子化し、対応するピクセルロケーションに基づいてイメージの各色の空間分布を決定し、各イメージの色に対して、当該色の閾空間分布を有するイメージの領域を識別することによって、イメージをカラーブロブ(color blobs)にセグメント化するステップを含む。本方法は、イメージのシーケンスにわたりイメージセンサに対して各カラーブロブのロケーションを追跡するステップを含む。
一部の実施例において、ピクセルのカラー量子化は、垂直方向に向けられたイメージの下側部分、及び/又はイメージの中心部分の外に適用される。イメージをカラーブロブにセグメント化するステップは、イメージを領域に分割して、該各領域のピクセルを別個にカラー量子化するステップ、及び/又は各ピクセルを第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行するステップを含むことができる。ビットシフト演算は、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持することができる。
カラーブロブのロケーションを追跡するステップは、イメージセンサに対して各カラーブロブの速度ベクトルを決定するステップと、イメージシーケンスの各イメージについて決定されたカラーブロブロケーションを記録するステップと、を含むことができる。一部の実施例において、本方法は、各カラーブロブのサイズを決定するステップを含む。本方法は、1又はそれ以上のカラーブロブのロケーションに基づいてロボットを操縦する、及び/又は最も近いカラーブロブに向けてロボットを操縦するよう駆動コマンドを発するステップを含むことができる。最も近いカラーブロブは、イメージシーケンスのイメージの閾値数で識別することができる。
一部の実施例において、本方法は、各カラーブロブのサイズを決定するステップと、イメージセンサに対して各カラーブロブの速度ベクトルを決定するステップと、1又はそれ以上のカラーブロブのサイズ及び速度ベクトルに基づいてロボットを操縦するよう駆動コマンドを発するステップと、を含む。駆動コマンドは、最大のサイズ及びロボットに向かう最大の速度ベクトルを有するカラーブロブに向けてロボットを操縦するよう発することができる。本方法は更に、カラーブロブのサイズ及び速度に関する発見的手法を実行して、床表面上のデブリを示さないカラーブロブをフィルタ除去するステップを含むことができる。
一部の実施例において、本方法は、カラースペースにおいて各ピクセルの色について数値表現を割り当てるステップを含む。イメージのピクセルのカラー量子化は、イメージを9ビットの赤−緑−青のイメージに低減する赤−緑−青のカラースペースにおいて、又はLABカラースペースにおいて行うことができる。
本方法は更に、互いに通信状態にある制御調停システムと挙動システムとを有する制御システムを実行するステップを含むことができる。挙動システムは清掃挙動部を実行する。清掃挙動部は、イメージセグメント化に基づいて制御調停システムによるコマンドの実行に影響を及ぼし、ロボットの清掃システムを用いて清掃するために、汚れ床領域に相当するカラーブロブ及び汚れ床領域上を操縦するよう追跡しているカラーブロブを識別する。
本開示の別の態様は、前方駆動方向を有するロボット本体を備えた移動式床清掃ロボットを提供する。移動式床清掃ロボットは、駆動システム、清掃システム、イメージセンサ、及びコントローラを有する。駆動システムは、ロボット本体を支持し、床表面にわたってロボットを操縦するよう構成される。ロボット本体は、清掃システム及びイメージセンサを支持する。コントローラは、床表面のイメージのシーケンスを受け取り、ここで各イメージは、ピクセルのアレイを有する。次いで、コントローラは、イメージをカラーブロブにセグメント化する。セグメント化プロセスは、イメージのピクセルをカラー量子化することにより始まる。次に、コントローラは、対応するピクセルロケーションに基づいてイメージの各色の空間分布を決定する。最後に、コントローラは、当該色の閾空間分布を有するイメージの領域を識別する。コントローラがイメージをセグメント化すると、コントローラは、イメージのシーケンスにわたりイメージセンサに対して各カラーブロブのロケーションを追跡する。
一部の実施構成において、コントローラは、垂直方向に向けられたイメージの下側部分におけるピクセルのみ、及び/又はイメージの中心部分の外にあるピクセルのみをカラー量子化することによりイメージをカラーブロブにセグメント化する。コントローラは、イメージを領域に分割して、該各領域のピクセルを別個にカラー量子化することができる。一部の実施例において、コントローラは、各ピクセルを第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行する。ビットシフト演算は、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持することができる。
一部の実施例において、イメージセンサは、ロボットの前方駆動方向に沿った視野を備えたカメラを有する。カメラは、ロボットの前方駆動方向に対して左右方向及び/又は上下方向でスキャンすることができる。
各カラーブロブのロケーションを追跡することは、イメージセンサに対して各カラーブロブの速度ベクトルを決定し、イメージシーケンスの各イメージについて決定されたカラーブロブロケーションを記録する、ことを含むことができる。一部の実施例において、コントローラは、各カラーブロブのサイズを決定する。コントローラは、1又はそれ以上のカラーブロブのロケーションに基づいてロボットを操縦するよう駆動コマンドを発することができる。駆動コマンドは、最も近いカラーブロブに向けてロボットを操縦することができる。一部の実施例において、コントローラは、最も近いカラーブロブをイメージシーケンスのイメージの閾値数で識別する。
一部の実施構成において、コントローラは、各カラーブロブのサイズ、及びイメージセンサに対して各カラーブロブの速度ベクトルを決定する。コントローラは、1又はそれ以上のカラーブロブのサイズ及び速度ベクトルに基づいてロボットを操縦するよう駆動コマンドを発する。コントローラは、最大のサイズ及びロボットに向かう最大の速度ベクトルを有するカラーブロブに向けてロボットを操縦するよう駆動コマンドを発することができる。一部の実施例において、コントローラは、カラーブロブのサイズ及び速度に関する発見的手法を実行して、床表面上のデブリを示さないカラーブロブをフィルタ除去する。
コントローラは、カラースペースにおいて各ピクセルの色について数値表現を割り当てることができる。コントローラは、イメージを9ビットの赤−緑−青のイメージに低減する赤−緑−青のカラースペースにおいて、又はLABカラースペースにおいてイメージピクセルを量子化することができる。
本開示の別の態様は、ロボット本体、駆動システム、コントローラ、清掃システム、及びイメージセンサを含む移動式床清掃ロボットを提供する。ロボット本体は、前方駆動方向を有する。駆動システムは、ロボット本体を支持し、床表面にわたってロボットを操縦するよう構成される。コントローラは、清掃システム、イメージセンサ、及び駆動システムと通信し、制御システムを実行する。ロボット本体は、清掃システムを支持する。制御システムは、互いに通信状態にある制御調停システム及び挙動システムを含む。挙動システムは、清掃挙動部を実行して、イメージセンサから受け取った床表面のイメージのシーケンスに基づいて制御調停システムによるコマンドの実行に影響を及ぼして、汚れた床領域を識別し、該汚れた床領域にわたって清掃システムを操縦する。清掃挙動部は、各イメージをカラーブロブにセグメント化することにより汚れた床領域を識別する。イメージのセグメント化は、イメージのピクセルをカラー量子化すること、対応するピクセルロケーションに基づいてイメージの各色の空間分布を決定すること、及び各イメージの色に対して、当該色の閾空間分布を有するイメージの領域を識別することを含む。次いで、清掃挙動部は、イメージのシーケンスにわたりイメージセンサに対して各カラーブロブのロケーションを追跡する。
本開示の別の態様は、イメージセンサを有する移動式床清掃ロボットを作動させる方法を提供する。本方法は、ロボットを支持する床表面のイメージのシーケンスを受け取るステップを含み、ここで各イメージは、ピクセルのアレイを有する。本方法は更に、イメージのピクセルをカラー量子化し、対応するピクセルロケーションに基づいてイメージの各色の空間分布を決定し、各イメージの色に対して、当該色の閾空間分布を有するイメージの領域を識別することによって、各イメージをカラーブロブにセグメント化するステップを含む。本方法は、イメージのシーケンスにわたりイメージセンサに対して各カラーブロブのロケーションを追跡するステップを含む。
一部の実施例において、ピクセルのカラー量子化は、垂直方向に向けられたイメージの下側部分、及び/又はイメージの中心部分の外に適用される。イメージをカラーブロブにセグメント化するステップは、イメージを領域に分割して、該各領域のピクセルを別個にカラー量子化するステップ、及び/又は各ピクセルを第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行するステップを含むことができる。ビットシフト演算は、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持することができる。
一部の実施例において、イメージセンサは、ロボットの前方駆動方向に沿った視野を有するように構成されたカメラを含む。本方法は、ロボットの前方駆動方向に対して左右方向及び/又は上下方向でカメラをスキャンするステップを含むことができる。
カラーブロブのロケーションを追跡するステップは、イメージセンサに対して各カラーブロブの速度ベクトルを決定するステップと、イメージシーケンスの各イメージについて決定されたカラーブロブロケーションを記録するステップと、を含むことができる。一部の実施例において、本方法は、各カラーブロブのサイズを決定するステップを含む。本方法は、1又はそれ以上のカラーブロブのロケーションに基づいてロボットを操縦する、及び/又は最も近いカラーブロブに向けてロボットを操縦するよう駆動コマンドを発するステップを含むことができる。最も近いカラーブロブは、イメージシーケンスのイメージの閾値数で識別することができる。
一部の実施例において、本方法は、各カラーブロブのサイズを決定するステップと、イメージセンサに対して各カラーブロブの速度ベクトルを決定するステップと、1又はそれ以上のカラーブロブのサイズ及び速度ベクトルに基づいてロボットを操縦するよう駆動コマンドを発するステップと、を含む。駆動コマンドは、最大のサイズ及びロボットに向かう最大の速度ベクトルを有するカラーブロブに向けてロボットを操縦するよう発することができる。本方法は更に、カラーブロブのサイズ及び速度に関する発見的手法を実行して、床表面上のデブリを示さないカラーブロブをフィルタ除去するステップを含むことができる。
一部の実施例において、本方法は、カラースペースにおいて各ピクセルの色について数値表現を割り当てるステップを含む。イメージのピクセルのカラー量子化は、イメージを9ビットの赤−緑−青のイメージに低減する赤−緑−青のカラースペースにおいて、又はLABカラースペースにおいて行うことができる。
本方法は更に、互いに通信状態にある制御調停システムと挙動システムとを有する制御システムを実行するステップを含むことができる。挙動システムは清掃挙動部を実行する。清掃挙動部は、イメージセグメント化に基づいて制御調停システムによるコマンドの実行に影響を及ぼし、ロボットの清掃システムを用いて清掃するために、汚れ床領域に相当するカラーブロブ及び汚れ床領域上を操縦するよう追跡しているカラーブロブを識別する。
本開示の更に別の態様において、非一時的コンピュータ可読記憶媒体上で符号化されたコンピュータプログラム製品は、データ処理装置によって実行されたときに、該データ処理装置に動作工程を実施させる命令を含む。本動作工程は、ピクセルのアレイを各々が有する床表面のイメージのシーケンスを受け取るステップと、各イメージに対して、イメージをカラーブロブにセグメント化するステップを含む。イメージをカラーブロブにセグメント化するステップは、イメージのピクセルをカラー量子化し、対応するピクセルロケーションに基づいてイメージの各色の空間分布を決定するステップを含む。加えて、イメージをセグメント化するステップは、各イメージ色に対して、当該色の閾空間分布を有するイメージの領域を識別するステップを含む。コンピュータプログラム製品はまた、イメージのシーケンスにわたりイメージに対して各カラーブロブのロケーションを追跡するステップを含む。
イメージをカラーブロブにセグメント化するステップは、垂直方向に向けられたイメージの下側部分におけるピクセルのみ、及び/又はイメージの中心部分の外にあるピクセルのみをカラー量子化することができる。一部の実施例において、イメージをカラーブロブにセグメント化するステップは、イメージを領域に分割して、該各領域のピクセルを別個にカラー量子化することを含むことができる。イメージをカラーブロブにセグメント化するステップは、各ピクセルを第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行することを含むことができる。ビットシフト演算は、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持することができる。
カラーブロブのロケーションを追跡することは、イメージセンサに対して各カラーブロブの速度ベクトルを決定し、イメージシーケンスの各イメージについて決定されたカラーブロブロケーションを記録する、ことを含むことができる。一部の実施例において、コンピュータプログラムは、各カラーブロブのサイズを決定するステップを含む。一部の実施構成において、コンピュータプログラムは、1又はそれ以上のカラーブロブのロケーションに基づいてロボットを操縦するよう駆動コマンドを発することを含む。駆動コマンドは、最も近いカラーブロブに向けてロボットを操縦することができ、この最も近いカラーブロブは、イメージシーケンスのイメージの閾値数で識別することとすることができる。
一部の実施例において、動作工程は、各カラーブロブのサイズを決定し、イメージセンサが受け取ったイメージシーケンスを取り込むのに応答して各カラーブロブの速度ベクトルを決定し、1又はそれ以上のカラーブロブのサイズ及び速度ベクトルに基づいてロボットを操縦するよう駆動コマンドを発することを含む。駆動コマンドは、最大のサイズ及びロボットに向かう最大の速度ベクトルを有するカラーブロブに向けてロボットを操縦するよう駆動コマンドを発することとすることができる。一部の実施例において、動作工程は、カラーブロブのサイズ及び速度に関する発見的手法を実行して、床表面上のデブリを示さないカラーブロブをフィルタ除去することを含む。
一部の実施例において、コンピュータプログラム製品は、カラースペースにおいて各ピクセルの色について数値表現を割り当てる。使用されるカラースペースは、赤−緑−青のカラースペース又はLABカラースペースとすることができる。従って、動作工程は、イメージを9ビットの赤−緑−青のイメージに低減する赤−緑−青のカラースペースにおいて、又はLABカラースペースにおいてイメージピクセルを量子化することができる。
本開示の1又はそれ以上の実施構成の詳細は、添付図面及び以下の説明において記載される。他の態様、特徴、及び利点は、本明細書及び図面並びに請求項から明らかになるであろう。
例示的な移動式床清掃ロボットの斜視図である。 図1に示す例示的な移動式床清掃ロボットの側面図である。 図1に示す例示的な移動式床清掃ロボットの底面図である。 例示的な移動式床清掃ロボットの概略図である。 例示的な移動式床清掃ロボット用の例示的なコントローラの概略図である。 床上の汚れを検知する例示的な移動式床清掃ロボットの斜視図である。 移動式床清掃ロボットによって駆動可能な例示的な螺旋清掃パターンの概略図である。 移動式床清掃ロボットによって駆動可能な例示的な平行帯状パターンの概略図である。 前回覆われた床領域において識別されたデブリを吸い込むよう操縦している例示的な移動式床清掃ロボットの概略図である。 移動式床清掃ロボットによって駆動可能な例示的な清掃経路の概略図である。 ロボットが汚れた床領域を位置特定したときに、移動式床清掃ロボットによって駆動可能な例示的な清掃経路の概略図である。 識別された汚れた床領域に基づいて計画された経路に従って移動式床清掃ロボットによって駆動可能な例示的な清掃経路の概略図である。 イメージの拡大部分がイメージのピクセルを示している、移動式床清掃ロボット上のカメラにより取り込まれた例示的なイメージの概略図である。 移動式床清掃ロボットからのイメージを受け取るイメージ解析システムの概略図である。 上側部分と下側部分とに分けられた、移動式床清掃ロボット上のカメラにより取り込まれた例示的なイメージの概略図である。 上側部分と下側部分とに分けられた、移動式床清掃ロボット上のカメラにより取り込まれた例示的なイメージの概略図である。 ロボットが認識されたイメージブロブに接近しているときの、移動式床清掃ロボットにより取り込まれたイメージの進行の概略図である。 ロボットが認識されたイメージブロブに接近しているときの、移動式床清掃ロボットにより取り込まれたイメージの進行の概略図である。 ロボットが認識されたイメージブロブに接近しているときの、移動式床清掃ロボットにより取り込まれたイメージの進行の概略図である。 ロボットを作動させるための動作工程の例示的な構成の概略図である。
種々の図面における同じ参照符号は同じ要素を示している。
移動可能に支持される自律式ロボットは、表面を横断しながら当該表面を清掃することができる。ロボットは、表面上で負圧(例えば、部分真空)を加えることでデブリを攪拌し及び/又は表面からデブリを持ち上げ、次いで、このデブリを表面から集めることによって表面からデブリを除去することができる。
図1〜3を参照すると、一部の実施構成において、ロボット100は、例えば、コントローラ150によって発せられるx、y、及びθ成分を有する駆動コマンドに基づいて、床表面10にわたってロボット100を操縦することができる駆動システム120により支持される本体110を含む。ロボット本体110は、前方部分112と後方部分114とを有する。駆動システム120は、コントローラ150に走行距離計測を提供できる右及び左被駆動ホイールモジュール120a、120bを含む。ホイールモジュール120a、120bは、本体110によって定められる横軸線Xに沿って実質的に対向し、それぞれのホイール124a、124bを駆動する駆動モータ122a、122bをそれぞれ含む。駆動モータ122a、122bは、本体110(例えば、ファスナー又は工具不要接続を介して)に解除可能に接続することができ、駆動モータ122a、122bは、任意選択的に、実質的にそれぞれのホイール124a、124bの上に位置付けられる。ホイールモジュール120a、120bは、シャーシ110に解除可能に取り付けられ、それぞれのバネによって清掃面10と係合するよう付勢することができる。ロボット100は、ロボット本体110の前方部分112を支持するよう配置されたキャスターホイール126を含むことができる。ロボット本体110は、ロボット100の何れかの電気部品に給電するために電力供給源(例えば、バッテリ)102を支持する。
ロボット100は、本体110によって定められる互いに直交する3つの軸線、すなわち、横軸線X、前後軸線Y、及び中心垂直軸線Zに対する移動の種々の組み合わせにより清掃面10にわたって移動することができる。前後軸線Yに沿った前方への駆動方向は、F(以下「前方」と呼ばれる場合もある)で示され、前後軸線Yに沿った後方への駆動方向は、A(以下「後方」と呼ばれる場合もある)で示される。横軸線Xは、ホイールモジュール120a、120bの中心点によって定められる軸線に実質的に沿ってロボット100の右側Rと左側Lとの間に延びる。
本体110の前方部分112は、バンパー130を保持し、該バンパーは、例えば、ホイールモジュール120a、120bが清掃ルーチン中に清掃面10にわたってロボット100を推進させるときに、ロボット100の駆動経路における1又はそれ以上の事象を(例えば、1又はそれ以上のセンサを介して)検出する。ロボット100は、事象に応答してロボット100を操縦(例えば、障害物から離れて)するようホイールモジュール120a、120bを制御することにより、バンパー130によって検出された事象(例えば、障害物、段差、壁)に応答することができる。本明細書では一部のセンサがバンパー上に配置されて記載されているが、これらのセンサは、これに加えて、又は代替として、ロボット100上の様々な異なる位置の何れかに配置することができる。
本体110の上部分に配置されたユーザインタフェース140は、1又はそれ以上のユーザコマンドを受け取り、及び/又はロボット100のステータスを表示する。ユーザインタフェース140は、ロボット100によって保持されたロボットコントローラ150と通信し、ユーザインタフェース140によって受け取られる1又はそれ以上のコマンドが、ロボット100による清掃ルーチンの実行を開始できるようにする。
ロボットコントローラ150(制御システムを実行する)は、壁に追従するような操縦、床を磨くような操縦、又は障害物が検出されたときに移動方向を変えるなどの動作をロボット100にさせる挙動部300(図4)を実行することができる。ロボットコントローラ150は、各ホイールモジュール120a、120bの回転速度及び方向を独立して制御することによって、清掃面10上のあらゆる方向でロボット100を操縦することができる。例えば、ロボットコントローラ150は、ロボット100を前方F、反転(後方)A、右R、及び左L方向で操縦することができる。ロボット100が実質的に前後軸線Yに沿って移動すると、ロボット100は、左右の転回を交互に繰り返して、中心垂直軸線Zの周りで前後に回転(以下、くねり運動と呼ばれる))する。くねり運動により、ロボット100は、清掃動作中にスクラバーとして作動することができる。その上、くねり運動は、ロボットコントローラ150がロボットの静止を検出するのに用いることができる。加えて、又は代替として、ロボットコントローラ150は、ロボット100がコーナー部から抜け出すこと、例えば、障害物から離れることができるように実質的に所定位置で回転するようロボット100を操縦することができる。ロボットコントローラ150は、清掃面10を横断している間に実質的にランダムな(例えば、擬似ランダムな)経路上でロボット100を配向することができる。ロボットコントローラ150は、ロボット100の周りに配置された1又はそれ以上のセンサ(例えば、衝突センサ、近接センサ、壁センサ、静止センサ、及び段差センサ)に対して応答することができる。ロボットコントローラ150は、センサから受け取った信号に応答してホイールモジュール120a、120bの向きを変え、ロボット100が清掃面10を処理している間に障害物及び散乱物を避けるようにすることができる。使用中にロボット100が立ち往生するか又は動けなくなった場合には、ロボットコントローラ150は、一連の脱出挙動を通じて、ロボット100が脱出して正常な清掃動作に戻ることができるようにホイールモジュール120a、120bを配向することができる。
ロボット100は、床表面10を清掃又は処理するための清掃システム160を含むことができる。清掃システム160は、乾燥式清掃システム160a及び/又は湿式清掃システム160bを含むことができる。乾燥式清掃システム160は、横軸線Xに平行に延びて、床表面10に接触するようロボット本体110により回転可能に支持された被駆動ローラブラシ162(例えば、ブリストル及び/又は叩きフラップを備えた)を含むことができる。被駆動ローラブラシ162は、床表面10からデブリを攪拌して、攪拌されたデブリを集塵ビン163に投入又は誘導する。乾燥式清掃システム160はまた、デブリを清掃システム160の清掃帯状領域に移動させるために床表面10に対してある角度の回転軸を有するサイドブラシ164を含むことができる。湿式清掃システム160bは、横軸線Xに沿って延びて表面10上に清掃液を分配する流体アプリケータ166を含むことができる。乾燥式清掃システム160a及び/又は湿式清掃システム160bは、床表面10を真空引きする1又はそれ以上のスクイージー真空部168(例えば、空気ポンプを介して部分真空を加える離間した柔軟ブレード)を含むことができる。
図1〜4を参照すると、信頼性があり堅牢な自律移動を達成するために、ロボット100は、複数の異なるタイプのセンサを有するセンサシステム500を含むことができ、これらセンサは、互いに連動して用いて、ロボット100がロボットの環境において行うべき措置に関してインテリジェントに決定することができるほどに十分なロボットの環境の感知をもたらすことができる。センサシステム500は、ロボット本体110によって支持される1又はそれ以上のタイプのセンサを含むことができ、これらセンサは、障害物検出障害物回避(ODOA)センサ、通信センサ、ナビゲーションセンサ、その他を含むことができる。例えば、これらのセンサは、限定ではないが、距離測定センサ、近接センサ、接触センサ、カメラ(例えば、点群ボリュームイメージング、3次元(3D)イメージング、又は深度図センサ、可視光カメラ及び/又は赤外線カメラ)、ソナー、レーダー、LIDAR(ライダー;光検出及び側距、散乱光の特性を測定して遠隔ターゲットの距離及び/又は他の情報を求める光学的リモートセンシングを必要とする可能性がある)、LADAR(レーザ検出及び側距)、その他を含むことができる。一部の実施構成において、センサシステム500は、側距ソナーセンサ、近接段差検出器、接触センサ、レーザスキャナ、及び/又はイメージングソナーを含む。
ロボットプラットフォーム上にセンサを配置することに伴う幾つかの問題がある。第1に、センサは、ロボット100の周りに最大カバレッジ(有効範囲)の関心領域を有するように配置する必要がある。第2に、センサは、ロボット100自体がセンサに対して絶対最小値のオクルージョン(occlusion)を生じるように配置されることが必要となる場合があり、本質的には、センサは、ロボット自体によって「見えなくなる」ように配置することはできない。第3に、センサの配置及び装着は、プラットフォームの工業的設計の残りの部分に対して邪魔にならないようにすべきである。審美的観点から、センサが目立たないように装着されたロボットは、そうでないものに比べてより「魅力的」と見なすことができる。実用上の観点から、センサは、通常のロボット動作を妨げない(障害物と干渉するなど)ように装着されるべきである。
一部の実施構成において、センサシステム500は、ロボット本体110又はバンパー130上に配置された1又はそれ以上のイメージセンサ510を含む。図示の実施例において、イメージセンサ510、510aは、バンパー130の上側部分132上に配置され、前方駆動方向Fに沿って視野512を備えて構成される。視野512は、約45°〜約270°の角度を有することができる。その上、イメージセンサ510は、前方駆動方向Fに対して左右方向及び/又は上下方向でスキャンし、イメージセンサ510の側方及び垂直方向視野512を増大させることができる。加えて、又は代替として、センサシステム500は、バンパー130上に配置されて、ロボット本体110に実質的に垂直な(例えば、半径方向外向きの)視野512を有して構成された、第1、第2及び第3のカメラ510a〜cのような複数のカメラ510を含むことができる。
イメージセンサ510は、可視光及び/又は赤外光、静止画像、及び/又はビデオを取り込むカメラとすることができる。一部の実施例において、イメージセンサ510は、3Dイメージセンサ(例えば、ステレオカメラ、飛行時間型又はスペックル型点群ボリュームイメージングデバイス)とすることができ、3Dイメージセンサは、以下のタイプのデータ、すなわち、(i)深度図、(ii)反射ベースの強度イメージ、及び/又は(iii)標準強度イメージを生成することができる。3Dイメージセンサは、ソースから放射され及びターゲットから反射される光に対してのイメージパターンマッチング、飛行時間及び/又は位相遅延シフトの測定により、このようなデータを取得することができる。
イメージセンサ510としてカメラを使用する際に伴う幾つかの問題がある。1つの主要な問題は、カメラにより取り込まれるイメージを解析するのに必要なメモリ容量である。これらのイメージの解析により、ロボットは、特定の環境においてとるべき動作に関してインテリジェントに決定を下すことができる。解析されたイメージを格納するのに必要とされる空間を低減する1つの方法は、解析の前にイメージサイズを低減することである。圧縮は、メモリ容量の制約に適合させるようにイメージのサイズを低減する。イメージ圧縮は、不可逆又は可逆圧縮とすることができる。不可逆圧縮は、一部のデータを完全に除去することによってイメージのサイズを低減する。不可逆イメージ圧縮の一部の技法には、フラクタル圧縮、カラースペース(色空間)の低減、クロマサブサンプリング、及び変換符号化が挙げられる。不可逆圧縮において、圧縮が実行された後で失われるデータはなく、イメージは、圧縮後にオリジナルデータに再構成することができる。可逆イメージ圧縮の一部の技法には、ランレングスエンコーディング(RLE)、予測符号化、及びエントロピー符号化が挙げられる。
図1及び図4を参照すると、一部の実施構成において、ロボット100は、イメージイメージセンサシステム510から取り込まれたイメージ514及びイメージ514のシーケンス514bを解析するよう構成されたイメージ解析システム400を含む。イメージ解析システム400は、2つの機能を実施する。第1の機能は、イメージ514をセグメント化することであり、これは、イメージ514を量子化して解析のためファイルサイズを低減することを含むことができ、第2の機能は、取り込まれた一連のイメージ514にわたり床表面10の汚れた床領域12として物体22(例えば、汚れ、米粒、デブリ片)又は一群の物体22を識別し追跡することである。イメージ解析システム400は、物体22を識別するために周囲の部分とは異なる何らかの特性を有する部分についてイメージ514を解析することができる。例えば、イメージ解析システム400は、周囲(背景)に対しての色、サイズ、形状、表面テクスチャを比較することによって物体22を識別することができる。イメージ解析システム400は、例えば、30cm/秒で駆動しながら0.5メートル離れた物体22を識別することができる。これにより、ロボット100は、検出した物体22に対する経路を計画して対応し、及び/又は見ている人に分かる挙動又はルーチン(例えば、ロボット100が物体又はデブリ22を検出し、それに応じて応答していることを表示する)を実行するための時間を計測することが可能となる。
センサシステム500は、清掃システム160の経路161内(例えば、清掃ヘッド162とビン163との間)に及び/又はビン163内に配置されたデブリセンサ520(図3)を含むことができる。デブリセンサ520は、光学的ブレークビームセンサ、圧電センサ、又は通過するデブリを検出するための他の何れかのタイプのセンサとすることができる。デブリ検出器に関する詳細及び特徴、並びに本開示と組み合わせ可能な他の特徴は、米国特許出願公開第2008/0047092号において見出すことができ、本特許は、引用により全体が本明細書に組み込まれる。
一部の実施構成において、コントローラ150(例えば、コンピュータプロセッサ)上で実行可能な推論又は制御ソフトウェアは、センサシステム500によって生成された種々のデータ型を用いて実行されるアルゴリズムの組み合わせを使用している。推論ソフトウェアは、センサシステム500から収集されたデータを処理し、ロボット100が例えば障害物と衝突することなく移動できる場所に関するナビゲーション上の決定を行うためのデータを出力する。ロボットの周囲の経時的なイメージングデータを蓄積することによって、推論ソフトウェアは、効果的な方法を検知されたイメージの選択されたセグメントに適用して、イメージセンサ510の測定値を改善させることができる。これは、適切な時間的及び空間的平均化技法を使用することを含むことができる。
バンパー130は、衝突物体との接触を検知するための1又はそれ以上の衝突センサ514(例えば、接触センサ、スイッチ又は赤外近接センサ)を含むことができる。一部の実施例において、バンパー130は、前方駆動方向(例えば、衝突ベクトル)に対して衝突の方向性(例えば、衝突ベクトル)を検知するために右衝突センサ514a及び左衝突センサ514bを含む。
図4を引き続き参照すると、一部の実施構成において、ロボット100は、障害物に衝突せず、又は階段から落ちることなく床表面10を移動することができ、また、清掃のため比較的汚れた床領域12をインテリジェントに認識することを可能にするよう構成されたナビゲーションシステム600を含む。その上、ナビゲーションシステム600は、床表面10にわたり決定性パターン及び擬似ランダムパターンでロボット100を操縦することができる。ナビゲーションシステム600は、ロボットコントローラ150上で格納及び/又は実行される挙動ベースシステムとすることができる。ナビゲーションシステム600は、センサシステム500と通信して、駆動システム120に対して駆動コマンド241を決定し発することができる。
図5を参照すると、一部の実施構成において、コントローラ150(例えば、1つ又は複数のコンピュータプロセッサ上で実行可能な命令を記憶することができる非一時的メモリと通信状態にある1又はそれ以上のコンピュータプロセッサを有するデバイス)は、互いに通信状態にある挙動システム210aと制御調停システム210bとを含む制御システム210を実行する。制御調停システム210bは、ロボットアプリケーション220を制御システム210に対して動的に追加及び削除することを可能にし、各アプリケーション220が他の何れかのアプリケーション220について知る必要もなくロボット100を制御できるようにする。換言すると、制御調停システム210bは、アプリケーション220とロボット100のリソース240との間の簡単な優先制御機構を提供する。
アプリケーション220は、ロボット100のメモリ内に格納され又はロボット100と通信して、(例えば、プロセッサ上で)並行して実行し、ロボット100を同時に制御することができる。アプリケーション220は、挙動システム210aの挙動部300にアクセスすることができる。独立して配備されたアプリケーション220は、ランタイム時に動的に組み合わされ、ロボットリソース240(例えば、駆動システム120及び/又は清掃システム160、106a、160b)を共有する。ランタイム時のアプリケーション220間でのロボットリソース240を動的に共有するための低レベルポリシーが実装される。このポリシーは、どのアプリケーション220が当該アプリケーション220により必要とされるロボットリソース240を制御するかを決定する(例えば、アプリケーション220間の優先順位階層)。アプリケーション220は、動的に開始及び停止し、互いに完全に独立して実行することができる。制御システム210はまた、共に組み合わせて互いに支援することができる複合挙動部300を可能にする。
制御調停システム210bは、制御アービター260と通信する1又はそれ以上のアプリケーション220を含むことができる。制御調停システム210bは、アプリケーション220のための制御調停システム210bに対するインタフェースを提供するコンポーネントを含むことができる。このようなコンポーネントは、認証、分散リソース制御アービター、コマンドバッファリングの複雑さを解消して抽象化及びカプセル化し、アプリケーション220の優先順位付けの協調などを行うことができる。制御アービター260は、あらゆるアプリケーション220からコマンドを受け取り、アプリケーションの優先順位に基づいて単一のコマンドを生成し、これを関連のリソース240に公開する。制御アービター260は、その関連のリソース240から状態フィードバックを受け取り、これをアプリケーション220に送り返すことができる。ロボットリソース240は、1又はそれ以上のハードウェアコントローラを備えた機能モジュール(例えば、アクチュエータ、駆動システム、及びこれらのグループ)のネットワークとすることができる。制御アービター260のコマンドは、特定の動作を実施するリソース240に固有のものである。コントローラ150上で実行可能なダイナミックスモデル230は、現在のロボット100の状態を評価するために、ロボット100の種々の部分の重心(CG)、慣性モーメント、及び慣性の外積を計算するよう構成される。
一部の実施構成において、挙動部300は、センサシステム500のような複数のソースからのセンサフィードバックを先験的限界及び情報を有してロボットの許容動作に関する評価フィードバックに結合する階層的状態完全評価機能を提供するプラグインコンポーネントである。挙動部300は、アプリケーション220にプラグ着脱可能であり(例えば、アプリケーション220の内部又は外部にある)、アプリケーション220又は制御システム210の他の何れかの部分を修正することなく削除及び追加することができる。各挙動部300は、独立したポリシーである。挙動部300をより強力にするために、複数の挙動部300の出力を別の挙動部の入力に取り付けて、複雑な組み合わせ機能を有することができるようにすることができる。挙動部300は、ロボット100の全体的認識の管理可能部分を実施することを目的としている。
図示の実施例において、挙動システム210aは、センサによって感知された障害物に基づいて、ロボット応答動作(例えば、転回、Uターン、障害物前での停止、その他)を決定するための障害物検出/障害物回避(ODOA)挙動部300aを含む。別の挙動部300は、検出した壁に隣接して(例えば、壁に向かって及び壁から離れて駆動するくねりパターンで)駆動するための壁追従挙動部300bを含むことができる。
図6〜8Bを参照すると、床表面10上を操縦している間、ロボット100は、イメージ解析システム400を用いて物体22又は汚れた床領域12(例えば、一群の物体22)を識別して、その駆動経路を変更(例えば、初期駆動経路から進行方向を変える)し、清掃システム160を用いて物体22の上に乗り上げて吸い込むことができる。ロボット100は、識別後に物体22又は汚れた床領域12に向かって駆動することによりイメージ解析システム400を便宜主義的に用いることができる。図6に示した実施例において、ロボット100は、床10の上の物体、並びに一群の物体22及び対応する汚れた床領域12を識別する。ロボット100は、床表面10を清掃するために、あるものに向かって駆動した後、別のものに向かって戻るように決定することができる。
一部の実施例において、ロボット100が表面10を清掃すると、汚れロケーション12を通過するときに汚れ、流体、又はデブリの閾レベル(例えば、目視検査により気付くことができる程の)を有するものとしてこの汚れロケーション12を検出する。スポット清掃挙動部300cは、図7に示すように、検出した汚れロケーション12の周りを螺旋運動パターン710でロボット100を駆動させるようにすることができる。一部の実施例において、スポット清掃挙動部300cは、図8Aに示すように、平行帯状(コーンロー)パターン720にロボット100を追従させるようにする。一部の実施例において、帯状部は、平行ではなく、ロボットが180°で転回するときに重なり合うことができる。パターンは、人が直立型掃除機で清掃する方法と同様の前後移動を含むことができる。各列の端部にて最大360度の転回の間、センサシステム500のカメラ510及び他の何れかのセンサ(例えば、側距センサ)は、ロボット100の周りの環境に関するセンサデータを取得する(例えば、転回時に対応する視野掃引の間)。コントローラ150は、このデータを位置特定、マッピング、経路計画、及び/又は追加のデブリ/物体検出に用いることができる。その上、ロボット100は、スポット清掃挙動部300cを実行するときに、駆動経路から逸脱し(すなわち、コースから進路変更する)て、何れかの認識されたデブリ22に乗り上げた後、駆動経路に戻るか、又は別の挙動部300に従って駆動することができる。
図8Bに示すように、ロボット100は、既に横断した領域に戻って操縦され、前回の通過時に逃したデブリ22を吸い込むことができる。ロボット100は、イメージ解析システム400を用いて、識別された逃した各デブリ22上を通る駆動経路を決定するか、又は例えば、コーンローパターンで駆動することにより当該ロケーションにて再度スポット清掃挙動部300cを実行することができる。
図9A〜9Cを参照すると、一部の実施構成において、ロボット100は、例えば、系統的又は非系統的手法で1又はそれ以上の挙動部300に従って床表面10の周りを駆動する。ロボット100は、図9Aに示すように、デブリ22のどのような先行検出を行うことなく汚れた床領域12のデブリ22に乗り上げて吸い込むことができる。この場合、ロボット100は、他の汚れた床領域を残して一部の汚れた床領域12を清掃している。ロボット100は、駆動/清掃経路700から進路変更して、ロボット100のセンサシステム500を用いて(例えば、1又は複数のイメージセンサ510を用いて)識別された汚れロケーション12に向かってロボット100を操縦させるようにする、汚れ探索挙動部300dを実行することができる。汚れ探索挙動部300d及びスポット清掃挙動部300cは、汚れ探索挙動部300dがロボット100の周りの汚れロケーション12を追跡し、スポット清掃挙動部300cが床表面10を通過するときにロボット100の下の汚れロケーション12を探すようにして作動することができる。
図9Bに示す実施例において、発せられた駆動コマンド152に従って駆動している間、ロボット100は、イメージ解析システム400及びセンサシステム500を用いてデブリ22及び対応する汚れ床領域12を検出することができる。汚れ探索挙動部300dは、ロボット100に駆動/清掃経路700から進路変更させて、識別された汚れ床領域12に向けて操縦し、次いで、駆動/清掃経路700に戻るようにさせることができる。この便宜主義的手法で識別された汚れ床領域12を清掃することにより、ロボット100は、汚れ床領域12のロケーションを記憶しておいて後で通過する際に戻るようにするのとは対照的に、比較的効果的且つ効率的に床10を清掃することができる。ロボット100は、ロケーションのドリフト又はマッピング不良に起因して、正確に同じロケーションには戻らない場合がある。その上、便宜主義的汚れ探索により、ロボット100は、挙動部300の組み合わせを実行しながら、床100のデブリ22を検出して清掃できるようになる。例えば、ロボット100は、コントローラ150上で壁追従挙動部300b及び汚れ探索挙動部300cを実行することができる。ロボット100は、壁追従挙動部300bに従って壁14と平行して駆動(例えば、オフセットした距離だけ壁14に隣接して駆動)しながら、汚れ探索挙動部300cを用いてデブリ片22及び対応する汚れ床領域12を識別することができ、これにより、ロボット100は、一時的に壁14から逸脱して識別された汚れ床領域12を清掃した後、壁追従ルーチンを再開するか、又は別の挙動部300を実行するようにすることができる。
図9Cを参照すると、一部の実施構成において、ロボット100は、イメージ解析システム400を用いて(例えば、スポットにおいて駆動又は回転しながら)複数の汚れた床領域12を認識することができ、汚れ探索挙動部300dは、コントローラ150に経路計画ルーチンを実行させ、各識別された汚れ床領域12に駆動して清掃システム160を用いてデブリ22を吸い込むようにすることができる。その上、コントローラ150(例えば、イメージ解析システム400を介して)は、汚れた床領域12の迅速な通過を実行しながらこの汚れた床領域12のロケーションを追跡(例えば、メモリ内又はメモリのマップ上に床ロケーションを格納)し、次いで、更に清掃を行うために各識別された汚れた床領域12に戻るよう1又はそれ以上の駆動コマンド152を実行することができる。
図10を参照すると、コントローラ150は、1又は複数のイメージセンサ510からのイメージデータを有するセンサ信号を受け取る。デジタルイメージ514は、ピクセル516のアレイから構成される。ピクセル516は一般に、デジタルイメージ514の最小要素と考えられ、カラースペースにおける色の数値表現に関連付けられる。RGBは、最も一般的な色モデルの1つであり、ここでは赤色、緑色、及び青色の光が様々な量で加えられて幅広い異なる色を作り出す。従って、各ピクセル516の色は、3つの値で表現され、各値が赤、緑、及び青座標の1つに相当する。表示できるイメージの色の数は、ピクセル当たりのビット数に依存する。例えば、イメージがピクセル当たりに24ビットである場合には、これは「トゥルーカラー(true color)」イメージであり、224=16,777,216の異なる色を表示することができる。イメージが16ビットである場合には、これは「ハイカラー(high color)」イメージであり、216=65,536色を表示することができる。(8ビットイメージは、28=256色を表示することができ、4ビットイメージは、24=16色を表示することができる)。カラースペースの別の実施例は、LABカラースペースであり、1つが明度Lで、2つが色成分の3つの次元を有する。LABカラースペースは、全て実施可能な色を含み、従って、LABは、RGBよりも広い色範囲を有する。図10は、取り込んだイメージ514と、ピクセル516のアレイを示す取り込んだイメージ514の拡大部分514aを示している。
図11及び12を参照すると、コントローラ150は、1又は複数のイメージセンサ510によって取り込まれた床表面10のイメージのシーケンス514bを受け取ることができる。1又は複数のイメージセンサ510は、毎秒1フレーム〜毎秒30フレームの範囲にわたる一定の時間間隔でイメージのシーケンス514bを取り込むことができる。他の時間間隔も実施可能である。一部の実施例において、イメージセンサ510は、シーンに相当する一連の静止イメージ514を取り込むビデオカメラである。ビデオカメラは、解析に使用されるイメージ514の数を増大させ、従って、イメージ514を解析するのにより多くのメモリ空間を必要とする可能性がある。各イメージ514は、上側部分514uと下側部514lとに分けられる。イメージセンサ510はロボット本体110上に位置するので、取り込まれた大部分のイメージ514は、イメージ514の下側部514lにおいて床表面10を含み、イメージ514の上側部分514uにおいて壁14又は他の関係のない物体を含む。
図4を再度参照すると、一部の実施構成において、イメージ解析システム400は、セグメント化システム410aと追跡システム410bとを含む。イメージ解析システム400は、ロボットコントローラ150の一部、又はイメージセンサ510の一部、或いは別個のシステムとして作動することができる。その上、セグメント化システム410a及び追跡システム410bは、別個のシステムであってもよい。例えば、セグメント化システム410aは、イメージセンサ510の一部とすることができ、追跡システム410bは、ロボットコントローラ150の一部とすることができる。
セグメント化システム410aは、取り込んだイメージ514で使用される色の数を低減するために、イメージ514のピクセル516を解析(例えば、カラー量子化)する。取り込んだビデオのRAWイメージは、一部のイメージ解析アプリケーションにおいて実用できない極めて大きなデータ量を有する。イメージ514に関連するデータを低減する1つの方法は量子化である。量子化は、ある範囲のイメージ値を取り出してこれらの範囲の値を1つの値に変換することにより、イメージデータ値を低減するのに使用されるプロセスである。このプロセスは、解析のため比較的管理可能である、低減されたイメージファイルサイズ(例えば、一定のピクセル数を有するイメージ)を生成する。低減されたイメージファイルサイズは、量子化プロセス後にビデオイメージ情報が失われているので、不可逆と見なされる。従って、圧縮されたイメージの解析に必要なメモリ及びハードウェアが少なくなる。
カラー量子化は、イメージ514を歪めることなくイメージの色の数を低減する類似のプロセスであり、また、イメージ514を記憶し帯域伝送するのに必要とされるイメージファイルサイズを低減するプロセスである。カラー量子化は、一般に、特定の数の色をサポートするディスプレイ用に使用される。カラー量子化は、2563色の色セットをより少ない83の色セットに低減することができる。RGBは、赤色、緑色、及び青色光が様々な量で加えられて幅広い異なる色を作り出すカラーモデルである。ロボット100は、カラー量子化用にRGBカラースペースを用いることができる。ロボット100は、LABのような、より集約的計算を必要とし且つ良好なイメージセグメント化をもたらす他のカラースペースを用いることもできる。コントローラ150は、カラースペースにおける各ピクセル516の色に数値表現を割り当てることができる(例えば、取り込んだイメージ514内のロケーション(5,5)のピクセルは、(213,111,56)の色を有することができ、ここで213は赤を表し、111は緑を表し、56は青を表している)。RGBの色の数値表現が範囲内の最大数である場合、ピクセル516の色は、最も明るい色を表す白色である。RGB表現の数値が全ての色チャンネルでゼロである場合、その色は黒色(例えば、(0,0,0))である。セグメント化システム410aは、赤−緑−青のカラースペースにおいて(イメージ514を9ビットの赤−緑−青のイメージに低減する)、又はLABカラースペースのような他の何らかのカラースペースにおいてイメージピクセル516を量子化することができる。セグメント化システム410aは、イメージ514を6ビット〜12ビットのイメージ514に低減することができる。他の低減も実施可能である。
セグメント化システム410aは、ビットシフト演算を用いてピクセル516を量子化し、各ピクセルを元のカラースペースからより小さなカラースペースに(例えば、2563色の色セット又は24ビットRGBをより小さな83色の色セット又は9ビットRGBに)迅速に変換することができる。ビットシフトは、指定の値を変化させてより速い計算を実施するためにコントローラ150によってサポートされる迅速なプロセスである。一部の実施例において、ビットシフト演算は、各チャンネル(RGB)の3つの最上位ビット(MSB)を保持する。他のビットシフト演算を用いることもできる。一部の実施構成において、コントローラ150がサイズ(例えば、処理能力)に制限がない場合には、量子化段階はビットシフトを必要とせず、除算、乗算及び加算などの計算を実施することができる。ビットシフトにより作られたカラーブロブ23は、プロセッサ上で比較的高速な計算であり、これによりロボット100は、狭い分布に一致する色を探すことによって明示的なカラーブロブ23を識別/見つけ出すことが可能となる。
ピクセル516の色を量子化している間、セグメント化システム410aは、イメージ514内のピクセル516のロケーション517(例えば、(x,y)位置)を用いて、量子化された色の各々の空間分布を計算するのに必要な統計値を更新することができる(図10参照)。従って、セグメント化システム410aは、対応するピクセルロケーション517に基づいてイメージ514の各色の空間分布を決定する。一部の実施構成において、セグメント化段階410aは、標準偏差、値域、平均偏差、又は他の計算を用いて計算された閾空間分布を有する領域の色リストをチェックすることにより、小さなブロブ23を非明示的に見つける。この手法は、エッジのような何らかの細粒イメージ特徴には依存せず、従って、モーションブラー及び照明条件の変動に対して堅牢である。ブロブ23は、同じ色、テクスチャ、及び/又はパターンを有する領域のような、イメージ514の何らかの連結領域とすることができる。
一部の実施構成において、セグメント化段階410aは、空間パターンを明示的に計算する。空間パターンのこのようなアルゴリズムは、このようなアルゴリズムのないものに比べてコストがかかり、より多くの処理及び記憶スペースを必要とする。一部の実施例において、セグメント化システム410aは、最初に取り込んだイメージ514を量子化せずにセグメント化し、従って、空間分布は、イメージ514の元のカラースペースを用いて計算される。図12Aを参照すると、一部の実施構成において、床10の近傍部分に相当することができる取得したイメージ514の下側部514lにおけるピクセル516のみが処理される。コントローラ150は、中心に位置する何れかのブロブ23は、ロボット100の挙動に及ぼす影響が僅かであることを前提として、イメージ514の(水平方向で)中心付近のピクセル516を無視することができる。図12Bを参照すると、コントローラ150は、取得したイメージ514の処理済み部分を矩形領域514rに分けて、同じ色の1つよりも多いブロブ23を見つけることができるようにする。
ロボット100が取得したイメージ514を量子化し、結果として比較的少ない色及びより顕著な特徴のあるブロブ23を有するイメージ514が得られた後、追跡段階を開始する。追跡システム410bは、イメージ514のシーケンス514bにわたってイメージセンサ510に関してカラーブロブ23のロケーション12aを追跡する。カラーブロブ23のロケーション12aの追跡は、イメージセンサ510に関して各カラーブロブ23の速度ベクトルV(t=0及びt=1での連続したイメージ取り込みの間に計算された距離変化/時間変化)を決定するステップと、イメージシーケンス514bの各イメージ514について決定されたカラーブロブロケーション12aを記録するステップとを含むことができる。一部の実施例において、コントローラ150は、各カラーブロブ23のサイズを決定する。追跡システム410bは、移動カメラ510に対するブロブ23の推定速度に基づいて簡単な線形外挿法を用いることができる。外挿法は、既知の値(例えば、ピクセル(x,y)517のロケーション)を用いるプロセスであり、既知の範囲外の値を推定する。外挿法は、既知の範囲外にある推定値が論理的に既知の値に従うことを前提としている。
図13A〜13Cは、床表面10上を操縦している間、又は対応する床表面10を清掃するために汚れたブロブ23に接近している間に、ある時間期間にわたって汚れたブロブ23を追跡しているときの取り込まれたイメージ514を示している。追跡システム410bがある時間期間にわたってブロブ23を追跡することにより、ロボット100は、汚れたブロブ23を清掃するためにこのブロブ23に向かって操縦することができる。
追跡システム410bがブロブ23を追跡するときには、コントローラ150は、1又はそれ以上のブロブ23のロケーション(x,y)に基づいてロボット100を操縦するよう駆動コマンド152を発する。駆動コマンド152は、最も近いカラーブロブ23に向かってロボット100を操縦することができる(例えば、前回の駆動コマンド152から離れて進路変更して、任意選択的に戻りながら)。一部の実施例において、コントローラ150は、イメージシーケンス514bの閾値数のイメージ514において最も近いカラーブロブ23を識別する。一部の実施例において、コントローラ150は、各ブロブ23のサイズ、及びイメージセンサ510に対する各ブロブ23の速度ベクトルVを決定する。コントローラ150は、1又はそれ以上のカラーブロブ23のサイズ及び速度ベクトルVに基づいてロボット100を操縦するよう駆動コマンド152を発する。コントローラ150は、例えば、イメージシーケンス514aにおいて他の何れかのブロブ23に比べて)最大のサイズ及びロボット100に向かう最大の速度ベクトルVを有するカラーブロブ23(に向かってロボット100を操縦するよう駆動コマンド152を発する。一部の実施例において、コントローラ150は、ブロブサイズ及びブロブ速度に関する発見的手法を実行して、床表面10上のデブリ22を示さないブロブ23をフィルタ除去する(図5)。一部の実施構成において、吸い込み可能なデブリ片22は、イメージ514の小部分においておおよそ不均一な色濃度を有する可能性がある。カメラ510の近似較正によって、追跡システム410bがロボット100に対する実際のブロブ23のサイズ及びロケーションを計算できるようになる。デブリ22のサイズ及び速度に関する発見的手法を用いて、起こり得る誤検出を排除する。
デブリ片22が多くの色又は変化するパターンを有するときには、イメージ解析システム400は、デブリ22の認識及び追跡が困難となる場合がある。このような場合、コントローラは、追加の認識挙動部300又はルーチンを実行し、及び/又はセンサシステム500からの追加のセンサデータに依存することができる。例えば、コントローラ150は、ロボット100に認識できない物体に向けて駆動させて、清掃システム160を用いてこれを吸い込むか、これに乗り上げるか、又はこれに衝突して衝突事象を検出させることができる。その上、コントローラ150は、ロボット動作に取り込んだイメージ514を用いる追加の挙動部300又はルーチンを実行することができる。この実施例には、限定ではないが、ナビゲーション、経路計画、障害物検出及び障害物回避、その他が挙げられる。
図14は、イメージセンサ510を有する移動式清掃ロボット100を作動させる方法1400における例示的な工程構成を示す。本方法は、ロボット100を支持する床表面10のイメージ514のシーケンス514aを受け取るステップ1410を含み、ここで各イメージ514はピクセル516のアレイを有する。コントローラ150は、ビデオカメラ又は静止画カメラとすることができる。本方法は更に、イメージ514のピクセル516をカラー量子化(1420a)し、対応するピクセルロケーションに基づいてイメージ514の各色の空間分布を決定(1420b)し、次いで、各イメージの色について当該色の閾空間分布を有するイメージ514の領域を識別(1420c)することにより、各イメージ514をカラーブロブ23にセグメント化するステップ1420を含む。本方法はまた、イメージ514のシーケンス514bにわたりイメージセンサ510に対してカラーブロブ23のロケーション12aを追跡するステップ1430aを含む。
本方法は、周囲背景とは異なる特性(例えば、色、形状、テクスチャ、又はサイズ)を有するイメージ514の部分(例えば、1又はそれ以上のピクセル516)を識別するステップを含むことができる。本方法はまた、イメージ514のシーケンス514bにわたり同じイメージ部分を識別するステップを含むことができる。ロボット100は、清掃システム160により吸い込みのために比較的小さな物体(例えば、米粒)と、障害物検出及び回避のために比較的大きな物体(例えば、靴下又は家具)とを識別することができる。
一部の実施例において、ピクセル516のカラー量子化1420aは、垂直方向に向けられたイメージ514の下側部分514lに、及び/又はイメージ514の中心部分514cの外に適用される。イメージ514をカラーブロブ23にセグメント化するステップ1420は、イメージ514を領域514rに分割して、各領域514rのピクセル516を別個にカラー量子化1420aすることを含むことができる。複数のイメージ領域514rにより、ロボット100は、イメージ514の異なる領域514rにおいて異なるブロブ23を解析することができ、ロボット100が1つよりも多くのブロブ23を追跡することが可能となる。一部の実施例において、本方法1400は、各ピクセル516を第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行するステップを含む。ビットシフト演算は、赤、緑、及び青チャンネルの各々について3つの最上位ビットを保持することができる。
一部の実施例において、イメージセンサ510は、ロボット100の前方駆動方向Fに沿った視野512を有するように構成されたカメラを備える。本方法は、カメラをロボット100の前方駆動方向Fに対して左右又は上下にスキャンするステップを含むことができる。
カラーブロブ23のロケーション12aを追跡するステップ1430aは、イメージセンサ510に対して各カラーブロブ23の速度ベクトルVを決定し、イメージシーケンス514aの各イメージ514について決定したブロブロケーションを記録することを含むことができる。一部の実施例において、本方法は、各カラーブロブ23のサイズを決定することを含む。本方法は、1又はそれ以上のブロブ23のロケーションに基づいてロボット100を操縦する、及び/又は最も近いブロブ23に向けてロボット100を操縦するよう駆動コマンド152を発するステップを含むことができる。最も近いブロブ23は、イメージシーケンス514aの各イメージ514の閾値数で識別することができる。
一部の実施例において、本方法1400は、各ブロブ23のサイズを決定するステップと、イメージセンサ510に対して各ブロブ23の速度ベクトルVを決定するステップと、1又はそれ以上のブロブ23のサイズ及び速度ベクトルVに基づいてロボット100を操縦するよう駆動コマンド152を発するステップと、を含む。駆動コマンド152は、最も大きなサイズ及びロボット100に向かう最大の速度ベクトルVを有するブロブ23に向けてロボット100を操縦するよう発することができる。本方法は更に、ブロブサイズ及びブロブ速度に関する発見的手法を実行するステップを含むことができる。
一部の実施例において、本方法は、カラースペースにおける各ピクセル516の色に対して数値表現を割り当てるステップを含む(例えば、取り込んだイメージ514内のロケーション(5,5)におけるピクセルは、(213,111,56)の色を有することができ、ここで、213は赤を表し、111は緑を表し、56は青を表している)。イメージ514のピクセル516のカラー量子化1420aは、赤−緑−青のカラースペースにおいて(イメージを9ビットの赤−緑−青のイメージに低減する)、又はLABカラースペースにおいて行うことができる。
図6を再度参照すると、本方法1400は更に、互いに通信状態にある制御調停システム210bと挙動システム210aとを有する制御システム210を実行するステップを含むことができる。挙動システム210aは、清掃挙動部300dを実行する。清掃挙動部300dは、イメージセグメント化1420に基づいて制御調停システム210bによるコマンドの実行に影響を及ぼし、ロボット100の清掃システム160を用いて清掃するために、汚れ床領域12に相当するブロブ23、並びに汚れ床領域12上を操縦するよう追跡しているブロブ23を識別する。
本方法は、ロボット100の周りの環境に関する局所的センサ感知を決定するため受け取ったセンサ事象に応答してコントローラ150上でマッピングルーチンを実行するステップを含むことができる。マッピングルーチンは、局所的な感知空間を3つのカテゴリー、障害物、未知域、及び既知の自由域に分類することができる。障害物は、ロボット100の高さより低い地面の上にある観測(すなわち、検知)点、及び地面より低い観測点(例えば、孔、下り段、その他)とすることができる。既知の自由域は、センサシステム500が地面を識別できる領域に相当する。
一部の実施例において、本方法は、ロボットコントローラ150上で制御システム210を実行するステップを含む。制御システム210は、互いに通信状態にある制御調停システム210b及び挙動システム210aを含む。挙動システム210aは、センサシステム500から受け取ったセンサ事象に基づいた制御調停システム210bによるコマンドの実行に影響を及ぼす少なくとも1つの挙動部300を実行する。その上、少なくとも1つの挙動部300は、ロボットセンサシステム500から受け取ったセンサ信号に基づいた制御調停システム210bによるコマンドの実行に影響を及ぼすことができる。
本明細書に記載したシステム及び技術の様々な実施構成は、デジタル電子回路及び/又は光学回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア及び/又はこれらの組み合わせで実現することができる。これらの様々な実施構成は、ストレージシステム、少なくとも1つの入力装置及び少なくとも1つの出力装置との間でデータ及び命令を受信及び送信するように結合された少なくとも1つのプログラマブルプロセッサ(専用又は汎用とすることができる)を含むプログラマブルシステム上で実行可能及び/又は解釈実行可能な1又はそれ以上のコンピュータプログラムにおける実施構成を含むことができる。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション又はコードとしても知られる)は、プログラマブルプロセッサのための機械命令を含み、高レベル手続き型及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ言語/機械語で実装することができる。本明細書で使用される「機械可読媒体」及び「コンピュータ可読媒体」とは、機械命令又はデータをプログラマブルプロセッサに提供するために使用される、あらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置及び/又はデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理デバイス(PLD)を指し、機械可読信号として機械命令を受け取る機械可読媒体を含む。用語「機械可読信号」とは、機械命令及び/又はデータをプログラマブルプロセッサに提供するのに使用されるあらゆる信号を指す。
本明細書に記載した主題及び機能操作の実施構成は、デジタル電子回路又はコンピュータソフトウェア、ファームウェア、又はハードウェアで実施することができ、本明細書に開示された構造及びこれらの等価構造又はこれらの1又はそれ以上の組み合わせを含む。その上、本明細書に記載した主題は、1又はそれ以上のコンピュータプログラム製品、すなわち、コンピュータ可読媒体上に符号化され、データ処理装置によって実行するため又はデータ処理装置の動作を制御するためのコンピュータプログラム命令の1又はそれ以上のモジュールとして実装することができる。コンピュータ可読媒体は、機械可読ストレージデバイス、機械可読ストレージ基板、メモリデバイス、機械可読伝播信号に影響を与える組成物、或いは、これらの1又はそれ以上の組み合わせとすることができる。用語「データ処理装置」、「コンピュータデバイス」、及び「コンピュータプロセッサ」は、データを処理するあらゆる装置、デバイス及び機械を包含し、例えば、プログラマブルプロセッサ、コンピュータ、又はマルチプロセッサ又はコンピュータを含む。装置は、ハードウェアに加えて、対象のコンピュータプログラムに対する実行環境を生成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベースマネジメントシステム、オペレーティングシステム、又はこれらの1又はそれ以上の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成される信号、例えば好適な受信装置に送信する情報を符号化するのに生成される機械生成電気信号、光信号又は電磁信号である。
コンピュータプログラム(アプリケーション、プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト又はコードとしても知られる)は、コンパイル型言語又はインタプリータ型言語を含むあらゆるプログラミング言語の形態で記述することができ、スタンドアロンプログラムとして、或いはモジュール、コンポーネント、サブルーチン又はコンピューティング環境で使用するのに好適な他のユニットとしてを含め、あらゆる形態で配備することができる。コンピュータプログラムは、必ずしもファイルシステムのファイルに対応させる必要はない。プログラムは、他のプログラム又はデータ(例えばマークアップ言語ドキュメントに格納された1又はそれ以上のスクリプト)を保持するファイルの一部に、対象のプログラムに専用の単一ファイルに、又は複数の協調ファイル(例えば、1又はそれ以上のモジュール、サブプログラム又はコードの一部分を格納するファイル)に格納することができる。コンピュータプログラムは、1つのコンピュータ上で、又は1つのサイトに位置するか、又は複数のサイトに分散されて通信ネットワークにより相互接続された複数のコンピュータ上で実行されるように配備することができる。
本明細書に記載したプロセス及び論理フローは、入力データを処理して出力を生成することによって種々の機能を実行するために1又はそれ以上のコンピュータプログラムを実行する1又はそれ以上のプログラマブルプロセッサによって実行することができる。このプロセス及び論理フローはまた、専用の論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)によって実施することができ、装置もまた、そのような専用の論理回路として実装することができる。
コンピュータプログラムの実行に好適なプロセッサは、例えば、汎用及び専用のマイクロプロセッサ、及び何れかの種類のデジタルコンピュータの何らかの1又はそれ以上のプロセッサを含むことができる。一般に、プロセッサは、リードオンリーメモリ又はランダムアクセスメモリ、又はその両方からの命令及びデータを受け取ることになる。コンピュータの必須要素は、命令を実行するプロセッサと、命令及びデータを格納する1又はそれ以上のメモリデバイスである。一般に、コンピュータはまた、データを格納する1又はそれ以上の大容量ストレージデバイス(例えば磁気ディスク、磁気光学ディスク又は光ディスク)を含み、或いは、大容量ストレージデバイスからデータを受信し、又はデータを大容量ストレージデバイスに転送するように動作可能に結合される。しかしながら、コンピュータは、必ずしもこのようなデバイスを有する必要はない。更に、コンピュータは、別のデバイス、例えば、2〜3例を挙げると、移動体電話、携帯情報端末(PDA)、携帯オーディオプレーヤ、グローバル・ポジショニング・システム(GPS)レシーバに組み込むことができる。コンピュータプログラム命令及びデータを格納するのに好適なコンピュータ可読媒体は、あらゆる形態の不揮発性メモリ、メディア及びメモリデバイスを含み、例を挙げれば、例えば、EPROM,EEPROM及びフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスク又はリムーバブルディスクなどの磁気ディスク、磁気光学ディスク、及びCD ROM及びDVD−ROMディスクが挙げられる。プロセッサ及びメモリは、専用論理回路により補完することができ、またこの回路に組み込むこともできる。
ユーザとの対話を提供するために、本開示の1又はそれ以上の態様は、ユーザに対して情報を表示するためのディスプレイデバイス(例えば、CRT(冷陰極管)、LCD(液晶ディスプレイ)モニタ、又はタッチスクリーン)と、任意選択的にユーザがコンピュータに入力を提供できるキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有するコンピュータ上で実施することができる。他の種類のデバイスを用いてもユーザとの対話を提供することができ、例えば、ユーザに提供されるフィードバックは、あらゆる形態のセンサフィードバック(例えば、視覚的フィードバック、聴覚的フィードバック、又は触覚的フィードバック)とすることができ、及びユーザからの入力は、音響、音声、又は触覚入力を含む、あらゆる形態で受け取ることができる。加えて、コンピュータは、ユーザにより使用されるデバイスに文書を送信し、当該デバイスから文書を受け取ることにより、例えば、ウェブブラウザから受け取ったリクエストに応答して、ユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって、ユーザと対話することができる。
本開示の1又はそれ以上の態様は、コンピューティングシステムで実施することができ、該コンピュータシステムは、バックエンドコンポーネント(例えばデータサーバ)を含み、又はミドルウェアコンポーネント(例えばアプリケーションサーバ)を含み、或いは、フロントエンドコンポーネント(例えば、本明細書に記載した主題の実施構成とユーザが対話できるグラフィックユーザインタフェース又はウェブブラウザを有するクライアントコンピュータ)、もしくは1又はそれ以上のこのようなバックエンド、ミドルウェア又はフロントエンドコンポーネントのあらゆる組み合わせを含む。本システムのコンポーネントは、任意の形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互接続することができる。通信ネットワークの実施例には、ローカルエリアネットワーク(「LAN」)及びワイドエリアネットワーク(「WAN」)、相互接続ネットワーク(例えば、インターネット)、及びピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)が挙げられる。
コンピューティングシステムは、クライアント及びサーバを含むことができる。クライアント及びサーバは一般に、互いにリモートであり、通常は通信ネットワークを介して対話する。クライアントとサーバの関係は、互いにクライアント−サーバ関係を有するそれぞれのコンピュータ上で実行されるコンピュータプログラムによって生じる。一部の実施構成において、サーバは、クライアントデバイスにデータ(例えば、HTMLページ)を送信する(例えば、クライアントデバイスと対話するユーザからのユーザにデータを表示するため、及び当該ユーザからのユーザ入力を受け取る目的で)。(ユーザ対話の結果として)クライアントデバイスにて生成されるデータは、クライアントデバイスからサーバにて受け取ることができる。
本明細書は、多くの詳細事項を含むが、これらは、本開示又は請求項に記載された範囲を限定するものと解釈されるべきではなく、むしろ、本開示の特定の実施構成に特有の特徴に関する説明として解釈すべきである。また、別個の複数の実施構成の関連において本明細書で記載される特定の特徴は、単一の実施構成において組み合わせて実施することもできる。逆に、単一の実施構成の関連で記載される様々な特徴は、複数の実施構成において別々に、又は任意の好適な部分的組み合わせで実施することもできる。更に、これらの特徴は、特定の組み合わせで機能するように上記で説明され、更に、最初にそのように請求項に記載されている場合があるが、場合によっては、請求項に記載された組み合わせからの1つ以上の特徴を切り出すことができ、また、請求項に記載された組み合わせは、部分的組み合わせ又は部分的組み合わせの変形形態を対象とすることができる。
同様に、図面において幾つかの工程が特定の順序で示されているが、これは、このような工程が図示の特定の順序で又は順番で実行される必要があること、また所望の結果を得るために例示の全ての工程が実行される必要があることを要求するものと理解すべきではない。特定の状況においては、マルチタスク及び並列処理が有利とすることができる。更に、上記の実施形態における様々なシステムコンポーネントの分離は、全ての実施形態においてこのような分離が必要とされるものと解釈すべきでなく、また、記載したプログラムコンポーネント及びシステムは、単一のソフトウェア製品に統合することができ、又は複数のソフトウェア製品にパッケージングすることもできる。
幾つかの実施構成を説明してきた。それでも尚、本開示の精神及び範囲から逸脱することなく様々な修正を行うことができる点を理解されたい。従って、他の実施構成も添付の請求項の範囲内にある。例えば、請求項に記載した動作は、異なる順序で実行し、それでも尚所望の結果を得ることができる。
100 ロボット
110 (ロボット)本体
120 駆動システム
120a、120b 右及び左被駆動ホイールモジュール
124a、124b ホイール
122a、122b 駆動モータ
126 キャスターホイール
130 バンパー
150 コントローラ
164 サイドブラシ
510 イメージセンサ

Claims (60)

  1. 移動式床清掃ロボット(100)を作動させる方法であって、
    前記ロボット(100)から離れている床表面(10)上の物体(22)のロケーション(12)を識別するステップと、
    前記床表面(10)にわって駆動して、前記物体(22)の識別されたロケーション(12)にて前記床表面(10)を清掃するステップと、
    前記物体(22)が前記床表面(10)上に残っているか否かを判定するステップと、
    前記物体(22)が残っている場合には、前記床表面(10)にわって駆動して、前記物体(22)の識別されたロケーション(12)にて前記床表面(10)を再度清掃するステップと、
    を含む、方法。
  2. 前記物体(22)の識別されたロケーション(12)にて前記床表面(10)を清掃するステップの後、前記物体(22)が前記床表面(10)上に残っているか否かを判定するように操縦するステップを更に含む、請求項1に記載の方法。
  3. 各々がピクセル(516)のアレイを有する、前記床表面(10)のイメージ(514)のシーケンス(514b)を受け取るステップと、
    前記イメージ(514)のピクセル(516)をカラー量子化し、対応するピクセルロケーション(517)に基づいて前記イメージ(514)の各色の空間分布を決定し、前記イメージの色の各々に対して、当該色の閾空間分布を有する前記イメージ(514)の領域を識別することによって、前記イメージ(514)の各々に対して前記イメージ(514)をカラーブロブ(23)にセグメント化するステップと、
    前記イメージのシーケンス(514b)にわたり前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々のロケーション(12a)を追跡するステップと、
    を更に含む、請求項1に記載の方法。
  4. 前記カラーブロブ(23)の追跡されたロケーション(12a)に基づいて、前記物体(22)のロケーション(12)を識別するステップを更に含む、請求項3に記載の方法。
  5. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、垂直方向に向けられた前記イメージ(514)の下側部分(514l)におけるピクセル(516)のみをカラー量子化するステップを含む、請求項3に記載の方法。
  6. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記イメージ(514)の中心部分(514c)の外にあるピクセル(516)のみをカラー量子化するステップを含む、請求項3に記載の方法。
  7. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記イメージ(514)を領域(514r)に分割して、該各領域(514r)のピクセル(516)を別個にカラー量子化するステップを含む、請求項3に記載の方法。
  8. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記ピクセル(516)の各々を第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行するステップを含む、請求項3に記載の方法。
  9. 前記ビットシフト演算が、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持する、請求項8に記載の方法。
  10. 前記カラーブロブ(23)の各々のロケーション(12a)を追跡するステップが、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定するステップと、
    前記イメージシーケンス(514b)の各イメージ(514)について決定されたカラーブロブロケーション(12a)を記録するステップと、
    を含む、請求項3に記載の方法。
  11. 前記カラーブロブ(23)の各々のサイズを決定するステップを更に含む、請求項3に記載の方法。
  12. 1つ又はそれ以上の前記カラーブロブ(23)のロケーション(12a)に基づいて、前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項3に記載の方法。
  13. 最も近い前記カラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項12に記載の方法。
  14. 前記最も近いカラーブロブ(23)が、前記イメージシーケンス(514b)のイメージ(514)の閾値数で識別される、請求項13に記載の方法。
  15. 前記カラーブロブ(23)の各々のサイズを決定するステップと、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定するステップと、
    1つ又はそれ以上の前記カラーブロブ(23)の前記サイズ及び前記速度ベクトル(V)に基づいて、前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップと、
    を更に含む、請求項3に記載の方法。
  16. 最大のサイズ及び前記ロボット(100)に向かう最大の速度ベクトル(V)を有するカラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項15に記載の方法。
  17. 前記カラーブロブのサイズ及び速度に関する発見的手法を実行して、前記床表面(10)上のデブリ(22)を示さないカラーブロブ(23)をフィルタ除去するステップを更に含む、請求項15に記載の方法。
  18. カラースペースにおいて前記ピクセル(516)の各々の色について数値表現を割り当てるステップを更に含む、請求項3に記載の方法。
  19. 赤−緑−青のカラースペースにおいて前記イメージのピクセル(516)をカラー量子化して、前記イメージ(514)を9ビットの赤−緑−青のイメージ(514)に低減するステップを更に含む、請求項18に記載の方法。
  20. 互いに通信状態にある制御調停システム(210b)と挙動システム(210a)とを有する制御システム(210)を実行するステップを更に含み、
    前記挙動システム(210a)は、清掃挙動部(300c、300d)を実行し、
    前記清掃挙動部(300c、300d)は、イメージセグメント化に基づいて前記制御調停システム(210b)によるコマンドの実行に影響を及ぼして、前記ロボット(100)の清掃システム(160)を用いて清掃するために、汚れ床領域(12)に相当するカラーブロブ(23)及び前記汚れ床領域(12)上を操縦するよう追跡しているカラーブロブ(23)を識別する、請求項3に記載の方法。
  21. 移動式床清掃ロボット(100)であって、
    前方駆動方向(F)を定めるロボット本体(110)と、
    前記ロボット本体(110)を支持し、床表面(10)にわたって前記ロボット(100)を操縦するよう構成された駆動システム(120)と、
    前記ロボット本体(110)によって支持される清掃システム(160)と、
    前記ロボット本体(110)上に配置されたイメージセンサ(510)と、
    前記駆動システム(120)及び前記イメージセンサ(510)と通信状態にあるコントローラ(150)と、
    を備え、
    前記コントローラ(150)が、
    各々がピクセル(516)のアレイを有する、前記床表面(10)のイメージ(514)のシーケンス(514b)を受け取り、
    前記イメージ(514)のピクセル(516)をカラー量子化し、対応するピクセルロケーション(517)に基づいて前記イメージ(514)の各色の空間分布を決定し、前記イメージの各々の色に対して、当該色の閾空間分布を有する前記イメージ(514)の領域を識別することによって、前記イメージ(514)の各々に対して前記イメージ(514)をカラーブロブ(23)にセグメント化し、
    前記イメージのシーケンス(514b)にわたり前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々のロケーション(12a)を追跡する、
    ことを特徴とする、移動式床清掃ロボット(100)。
  22. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化することが更に、垂直方向に向けられた前記イメージ(514)の下側部分(514l)におけるピクセル(516)のみをカラー量子化することを含む、請求項21に記載の移動式床清掃ロボット(100)。
  23. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化することが更に、前記イメージ(514)の中心部分(514c)の外にあるピクセル(516)のみをカラー量子化することを含む、請求項21に記載の移動式床清掃ロボット(100)。
  24. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化することが更に、前記イメージ(514)を領域(514r)に分割して、該各領域(514r)のピクセル(516)を別個にカラー量子化することを含む、請求項21に記載の移動式床清掃ロボット(100)。
  25. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化することが更に、前記ピクセル(516)の各々を第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行することを含む、請求項21に記載の移動式床清掃ロボット(100)。
  26. 前記ビットシフト演算が、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持する、請求項25に記載の移動式床清掃ロボット(100)。
  27. 前記イメージセンサ(510)が、前記ロボット(100)の前方駆動方向(F)に沿った視野(512)を有するように配置されたカメラ(510)を含む、請求項21に記載の移動式床清掃ロボット(100)。
  28. 前記カメラ(510)が、前記ロボット(100)の前方駆動方向(F)に対して左右方向及び/又は上下方向でスキャンする、請求項27に記載の移動式床清掃ロボット(100)。
  29. 前記カラーブロブ(23)の各々のロケーション(12a)を追跡することが、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定し、
    前記イメージシーケンス(514b)の各イメージ(514)について決定されたカラーブロブロケーション(12a)を記録する、
    ことを含む、請求項1に記載の移動式床清掃ロボット(100)。
  30. 前記コントローラ(150)が、前記カラーブロブ(23)の各々のサイズを決定する、請求項21に記載の移動式床清掃ロボット(100)。
  31. 前記コントローラ(150)が、1つ又はそれ以上の前記カラーブロブ(23)のロケーション(12a)に基づいて前記ロボット(100)を操縦するよう駆動コマンド(152)を発する、請求項21に記載の移動式床清掃ロボット(100)。
  32. 前記コントローラ(150)が、最も近い前記カラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発する、請求項31に記載の移動式床清掃ロボット(100)。
  33. 前記コントローラ(150)が、前記最も近いカラーブロブ(23)を前記イメージシーケンス(514b)のイメージ(514)の閾値数で識別する、請求項32に記載の移動式床清掃ロボット(100)。
  34. 前記コントローラ(150)が、
    前記カラーブロブ(23)の各々のサイズを決定し、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定し、
    1つ又はそれ以上の前記カラーブロブ(23)の前記サイズ及び前記速度ベクトル(V)に基づいて前記ロボット(100)を操縦するよう駆動コマンド(152)を発する、請求項21に記載の移動式床清掃ロボット(100)。
  35. 前記コントローラ(150)が、最大のサイズ及び前記ロボット(100)に向かう最大の速度ベクトル(V)を有するカラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発する、請求項34に記載の移動式床清掃ロボット(100)。
  36. 前記コントローラ(150)が、前記カラーブロブのサイズ及び速度に関する発見的手法を実行して、前記床表面(10)上のデブリ(22)を示さないカラーブロブ(23)をフィルタ除去する、請求項34に記載の移動式床清掃ロボット(100)。
  37. 前記コントローラ(150)が、カラースペースにおいて前記ピクセル(516)の各々の色について数値表現を割り当てる、請求項21に記載の移動式床清掃ロボット(100)。
  38. 前記コントローラ(150)が、赤−緑−青のカラースペースにおいて前記イメージのピクセル(516)をカラー量子化して、前記イメージ(514)を9ビットの赤−緑−青のイメージ(514)に低減する、請求項37に記載の移動式床清掃ロボット(100)。
  39. 前記コントローラ(150)が、LABカラースペースにおいて前記イメージのピクセル(516)をカラー量子化する、請求項37に記載の移動式床清掃ロボット(100)。
  40. 移動式床清掃ロボット(100)であって、
    前方駆動方向(F)を定めるロボット本体(110)と、
    前記ロボット本体(110)を支持し、床表面(10)にわたって前記ロボット(100)を操縦するよう構成された駆動システム(120)と、
    前記駆動システム(120)と通信状態にあり、制御システム(210)を実行するコントローラ(150)と、
    前記ロボット本体(110)によって支持され、前記コントローラ(150)と通信状態にある清掃システム(160)と、
    前記コントローラ(150)と通信状態にあるイメージセンサ(510)と、
    を備え、
    前記制御システム(210)が、互いに通信状態にある制御調停システム(210b)と挙動システム(210a)とを含み、
    前記挙動システム(210a)が、前記イメージセンサ(510)から受け取った前記床表面(10)のイメージのシーケンス(514b)に基づいて、前記制御調停システム(210b)によるコマンドの実行に影響を及ぼす清掃挙動部(300c、300d)を実行して、汚れ床領域(12)を識別すると共に前記汚れ床領域(12)にわたって前記清掃システム(160)を操縦し、
    前記清掃挙動部(300c、300d)が、
    前記イメージ(514)のピクセル(516)をカラー量子化し、対応するピクセルロケーション(517)に基づいて前記イメージ(514)の各色の空間分布を決定し、前記イメージの各々の色に対して、当該色の閾空間分布を有する前記イメージ(514)の領域を識別することによって、前記イメージ(514)の各々に対して前記イメージ(514)をカラーブロブ(23)にセグメント化し、
    前記イメージのシーケンス(514b)にわたり前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々のロケーション(12a)を追跡する、
    ことによって前記汚れ床領域(12)を識別する、移動式床清掃ロボット(100)。
  41. イメージセンサ(510)を有する移動式床清掃ロボット(100)を作動させる方法(1400)であって、
    前記ロボット(100)を支持する床表面(10)のイメージ(514)が各々ピクセル(516)のアレイを有し、該イメージ(514)のシーケンス(514b)を受け取るステップと、
    前記イメージ(514)のピクセル(516)をカラー量子化し、対応するピクセルロケーション(517)に基づいて前記イメージ(514)の各色の空間分布を決定し、前記イメージの各々の色に対して、当該色の閾空間分布を有する前記イメージ(514)の領域を識別することによって、前記イメージ(514)の各々に対して前記イメージ(514)をカラーブロブ(23)にセグメント化するステップと、
    前記イメージのシーケンス(514b)にわたり前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々のロケーション(12a)を追跡するステップと、
    を含む、方法(1400)。
  42. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、垂直方向に向けられた前記イメージ(514)の下側部分(514l)におけるピクセル(516)のみをカラー量子化するステップを含む、請求項41に記載の方法(1400)。
  43. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記イメージ(514)の中心部分(514c)の外にあるピクセル(516)のみをカラー量子化するステップを含む、請求項41に記載の方法(1400)。
  44. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記イメージ(514)を領域(514r)に分割して、該各領域(514r)のピクセル(516)を別個にカラー量子化するステップを含む、請求項41に記載の方法(1400)。
  45. 前記イメージ(514)を前記カラーブロブ(23)にセグメント化するステップが更に、前記ピクセル(516)の各々を第1の色セットから該第1の色セットよりも小さい第2の色セットに変換するビットシフト演算を実行するステップを含む、請求項41に記載の方法(1400)。
  46. 前記ビットシフト演算が、赤、緑、及び青チャンネルの各々の3つの最上位ビットを保持する、請求項45に記載の方法(1400)。
  47. 前記イメージセンサ(510)が、前記ロボット(100)の前方駆動方向(F)に沿った視野(512)を有するように配置されたカメラ(510)を含む、請求項41に記載の方法(1400)。
  48. 前記ロボット(100)の前方駆動方向(F)に対して左右方向及び/又は上下方向で前記カメラ(510)をスキャンするステップを更に含む、請求項47に記載の方法(1400)。
  49. 前記カラーブロブ(23)の各々のロケーション(12a)を追跡するステップが、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定するステップと、
    前記イメージシーケンス(514b)の各イメージ(514)について決定されたカラーブロブロケーション(12a)を記録するステップと、
    を含む、請求項41に記載の方法(1400)。
  50. 前記カラーブロブ(23)の各々のサイズを決定するステップを更に含む、請求項41に記載の方法(1400)。
  51. 1つ又はそれ以上の前記カラーブロブ(23)のロケーションに基づいて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項41に記載の方法(1400)。
  52. 最も近い前記カラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項51に記載の方法(1400)。
  53. 前記最も近いカラーブロブ(23)が、前記イメージシーケンス(514b)のイメージの閾値数で識別される、請求項52に記載の方法(1400)。
  54. 前記カラーブロブ(23)の各々のサイズを決定するステップと、
    前記イメージセンサ(510)に対して前記カラーブロブ(23)の各々の速度ベクトル(V)を決定するステップと、
    1つ又はそれ以上の前記カラーブロブ(23)の前記サイズ及び前記速度ベクトル(V)に基づいて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップと、
    を更に含む、請求項41に記載の方法(1400)。
  55. 最大のサイズ及び前記ロボット(100)に向かう最大の速度ベクトル(V)を有するカラーブロブ(23)に向けて前記ロボット(100)を操縦するよう駆動コマンド(152)を発するステップを更に含む、請求項54に記載の方法(1400)。
  56. 前記カラーブロブのサイズ及び速度に関する発見的手法を実行して、前記床表面(10)上のデブリ(22)を示さないカラーブロブ(23)をフィルタ除去するステップを更に含む、請求項54に記載の方法(1400)。
  57. カラースペースにおいて前記ピクセル(516)の各々の色について数値表現を割り当てるステップを更に含む、請求項41に記載の方法(1400)。
  58. 赤−緑−青のカラースペースにおいて前記イメージのピクセル(516)をカラー量子化して、前記イメージ(514)を9ビットの赤−緑−青のイメージ(514)に低減するステップを更に含む、請求項57に記載の方法(1400)。
  59. LABカラースペースにおいて前記イメージのピクセル(516)をカラー量子化するステップを更に含む、請求項57に記載の方法(1400)。
  60. 互いに通信状態にある制御調停システム(210b)と挙動システム(210a)とを有する制御システム(210)を実行するステップを更に含み、
    前記挙動システム(210a)は、清掃挙動部(300c、300d)を実行し、
    前記清掃挙動部(300c、300d)は、前記イメージ(514)のセグメント化に基づいて前記制御調停システム(210b)によるコマンド(152)の実行に影響を及ぼして、前記ロボット(100)の清掃システム(160)を用いて清掃するために、汚れ床領域(12)に相当するカラーブロブ(23)及び前記汚れ床領域(12)上を操縦するよう追跡しているカラーブロブ(23)を識別する、請求項41に記載の方法(1400)。
JP2015507269A 2012-11-02 2013-10-17 自律式カバレッジロボット Active JP5844941B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261721912P 2012-11-02 2012-11-02
US61/721,912 2012-11-02
US13/790,867 2013-03-08
US13/790,867 US8972061B2 (en) 2012-11-02 2013-03-08 Autonomous coverage robot
PCT/US2013/065459 WO2014070470A1 (en) 2012-11-02 2013-10-17 Autonomous coverage robot

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015226760A Division JP6137642B2 (ja) 2012-11-02 2015-11-19 自律式カバレッジロボット

Publications (2)

Publication Number Publication Date
JP2015514519A true JP2015514519A (ja) 2015-05-21
JP5844941B2 JP5844941B2 (ja) 2016-01-20

Family

ID=50621227

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2015507269A Active JP5844941B2 (ja) 2012-11-02 2013-10-17 自律式カバレッジロボット
JP2015226760A Active JP6137642B2 (ja) 2012-11-02 2015-11-19 自律式カバレッジロボット
JP2017083568A Active JP6633568B2 (ja) 2012-11-02 2017-04-20 自律式カバレッジロボット

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015226760A Active JP6137642B2 (ja) 2012-11-02 2015-11-19 自律式カバレッジロボット
JP2017083568A Active JP6633568B2 (ja) 2012-11-02 2017-04-20 自律式カバレッジロボット

Country Status (6)

Country Link
US (2) US8972061B2 (ja)
EP (2) EP2838410B1 (ja)
JP (3) JP5844941B2 (ja)
AU (2) AU2016200330C1 (ja)
CA (1) CA2869454A1 (ja)
WO (1) WO2014070470A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019532369A (ja) * 2016-09-14 2019-11-07 アイロボット コーポレイション エリア分類に基づくロボットの構成可能な動作のためのシステム及び方法

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706917B1 (en) * 2004-07-07 2010-04-27 Irobot Corporation Celestial navigation system for an autonomous robot
ES2770548T3 (es) 2010-12-30 2020-07-02 Irobot Corp Monitorización de residuos
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
EP2867611A4 (en) 2012-06-27 2016-12-07 Pentair Water Pool & Spa Inc SWIMMING POOL CLEANER WITH LASER REMOVAL MEASUREMENT SYSTEM AND METHOD THEREFOR
KR102021894B1 (ko) * 2012-10-18 2019-11-04 엘지전자 주식회사 자동 청소기의 제어방법
US10458938B2 (en) * 2013-03-14 2019-10-29 Ecolab Usa Inc. System and method for monitoring of floor conditions
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
KR102071947B1 (ko) * 2013-05-10 2020-01-31 삼성전자주식회사 청소 로봇 및 그 제어방법
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9486713B2 (en) * 2013-08-23 2016-11-08 Evollve, Inc. Robotic activity system using position sensing
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9504367B2 (en) * 2013-11-20 2016-11-29 Samsung Electronics Co., Ltd. Cleaning robot and method for controlling the same
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
KR20150104311A (ko) * 2014-03-05 2015-09-15 엘지전자 주식회사 로봇 청소기 및 그의 제어방법
WO2015169382A1 (de) * 2014-05-08 2015-11-12 Alfred Kärcher Gmbh & Co. Kg Selbstfahrendes und selbstlenkendes bodenreinigungsgerät und verfahren zum reinigen einer bodenfläche
US9939253B2 (en) 2014-05-22 2018-04-10 Brain Corporation Apparatus and methods for distance estimation using multiple image sensors
US10194163B2 (en) 2014-05-22 2019-01-29 Brain Corporation Apparatus and methods for real time estimation of differential motion in live video
DE102014212418A1 (de) * 2014-06-27 2015-12-31 Robert Bosch Gmbh Autonomer Serviceroboter
KR102269953B1 (ko) * 2014-09-15 2021-06-28 삼성전자주식회사 진공청소기, 그의 제어방법 및 컴퓨터 판독가능 기록매체
US10032280B2 (en) * 2014-09-19 2018-07-24 Brain Corporation Apparatus and methods for tracking salient features
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9881349B1 (en) * 2014-10-24 2018-01-30 Gopro, Inc. Apparatus and methods for computerized object identification
JP6729997B2 (ja) * 2014-12-25 2020-07-29 東芝ライフスタイル株式会社 電気掃除機
US9526390B2 (en) 2015-01-20 2016-12-27 Lg Electronics Inc. Robot cleaner
KR102122236B1 (ko) * 2015-01-20 2020-06-26 엘지전자 주식회사 로봇 청소기 및 로봇 청소기의 제어 방법
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
US20180099846A1 (en) 2015-03-06 2018-04-12 Wal-Mart Stores, Inc. Method and apparatus for transporting a plurality of stacked motorized transport units
US9801517B2 (en) 2015-03-06 2017-10-31 Wal-Mart Stores, Inc. Shopping facility assistance object detection systems, devices and methods
WO2016142794A1 (en) 2015-03-06 2016-09-15 Wal-Mart Stores, Inc Item monitoring system and method
US9682483B1 (en) * 2015-03-19 2017-06-20 Amazon Technologies, Inc. Systems and methods for removing debris from warehouse floors
KR102326479B1 (ko) * 2015-04-16 2021-11-16 삼성전자주식회사 청소 로봇 및 그 제어 방법
DE102015109775B3 (de) 2015-06-18 2016-09-22 RobArt GmbH Optischer Triangulationssensor zur Entfernungsmessung
US10197664B2 (en) 2015-07-20 2019-02-05 Brain Corporation Apparatus and methods for detection of objects using broadband signals
KR101772084B1 (ko) * 2015-07-29 2017-08-28 엘지전자 주식회사 이동 로봇 및 그 제어방법
DE102015114883A1 (de) 2015-09-04 2017-03-09 RobArt GmbH Identifizierung und Lokalisierung einer Basisstation eines autonomen mobilen Roboters
FR3043490B1 (fr) * 2015-11-05 2021-09-10 Arcita Paravent de radioprotection
DE102015119501A1 (de) 2015-11-11 2017-05-11 RobArt GmbH Unterteilung von Karten für die Roboternavigation
DE102015119865B4 (de) 2015-11-17 2023-12-21 RobArt GmbH Robotergestützte Bearbeitung einer Oberfläche mittels eines Roboters
KR102457222B1 (ko) * 2015-11-26 2022-10-21 삼성전자주식회사 이동 로봇 및 그 제어 방법
DE102015121666B3 (de) 2015-12-11 2017-05-24 RobArt GmbH Fernsteuerung eines mobilen, autonomen Roboters
DE102016102644A1 (de) 2016-02-15 2017-08-17 RobArt GmbH Verfahren zur Steuerung eines autonomen mobilen Roboters
JP7058067B2 (ja) * 2016-02-16 2022-04-21 東芝ライフスタイル株式会社 自律走行体
KR102588486B1 (ko) * 2016-03-15 2023-10-11 에이비 엘렉트로룩스 로봇 청소 장치 및 로봇 청소 장치에서의 절벽 검출 실시 방법
CA2961938A1 (en) 2016-04-01 2017-10-01 Wal-Mart Stores, Inc. Systems and methods for moving pallets via unmanned motorized unit-guided forklifts
US10241514B2 (en) 2016-05-11 2019-03-26 Brain Corporation Systems and methods for initializing a robot to autonomously travel a trained route
US9987752B2 (en) 2016-06-10 2018-06-05 Brain Corporation Systems and methods for automatic detection of spills
US10282849B2 (en) 2016-06-17 2019-05-07 Brain Corporation Systems and methods for predictive/reconstructive visual object tracker
US10016896B2 (en) 2016-06-30 2018-07-10 Brain Corporation Systems and methods for robotic behavior around moving bodies
KR101903022B1 (ko) * 2016-07-14 2018-10-01 엘지전자 주식회사 로봇 청소기
KR102526083B1 (ko) * 2016-08-30 2023-04-27 엘지전자 주식회사 이동 단말기 및 그의 동작 방법
US10123674B2 (en) * 2016-09-09 2018-11-13 International Business Machines Corporation Cognitive vacuum cleaner with learning and cohort classification
US10383498B2 (en) * 2016-10-05 2019-08-20 Lenovo (Singapore) Pte. Ltd. Systems and methods to command a robotic cleaning device to move to a dirty region of an area
US10732127B2 (en) * 2016-10-26 2020-08-04 Pixart Imaging Inc. Dirtiness level determining system and surface cleaning machine
US10274325B2 (en) 2016-11-01 2019-04-30 Brain Corporation Systems and methods for robotic mapping
US10001780B2 (en) 2016-11-02 2018-06-19 Brain Corporation Systems and methods for dynamic route planning in autonomous navigation
CA3043498A1 (en) * 2016-11-22 2018-05-31 Left Hand Robotics, Inc. Autonomous path treatment systems and methods
US10723018B2 (en) 2016-11-28 2020-07-28 Brain Corporation Systems and methods for remote operating and/or monitoring of a robot
CN106444786B (zh) * 2016-11-29 2019-07-02 北京小米移动软件有限公司 扫地机器人的控制方法及装置和电子设备
EP3333663B1 (en) * 2016-12-07 2021-12-01 Vestel Elektronik Sanayi ve Ticaret A.S. Tracking system and method
KR101907548B1 (ko) * 2016-12-23 2018-10-12 한국과학기술연구원 휴먼 추종을 위한 이동로봇의 주행 및 탐색방법
KR102624560B1 (ko) * 2017-01-31 2024-01-15 엘지전자 주식회사 청소기
US10377040B2 (en) 2017-02-02 2019-08-13 Brain Corporation Systems and methods for assisting a robotic apparatus
US10852730B2 (en) 2017-02-08 2020-12-01 Brain Corporation Systems and methods for robotic mobile platforms
WO2018158248A2 (de) 2017-03-02 2018-09-07 RobArt GmbH Verfahren zur steuerung eines autonomen,mobilen roboters
US10173248B2 (en) * 2017-03-17 2019-01-08 The Boeing Company Acoustic panel cleaning
US10293485B2 (en) 2017-03-30 2019-05-21 Brain Corporation Systems and methods for robotic path planning
DE102017208960A1 (de) 2017-05-29 2018-11-29 BSH Hausgeräte GmbH Staubsauger mit einem motorisch betriebenen Dichtmittel
US20180344116A1 (en) * 2017-06-02 2018-12-06 Irobot Corporation Scheduling and control system for autonomous robots
AU2018203588B2 (en) * 2017-06-05 2019-11-14 Bissell Inc. Autonomous floor cleaning system
CN107203211A (zh) * 2017-06-19 2017-09-26 上海名护机器人有限公司 一种机器人交互运动的方法
US10007269B1 (en) 2017-06-23 2018-06-26 Uber Technologies, Inc. Collision-avoidance system for autonomous-capable vehicle
CN107403156B (zh) * 2017-07-27 2020-10-20 深圳市盛路物联通讯技术有限公司 一种轨道交通的智能监管方法及系统
DE102017118383A1 (de) 2017-08-11 2019-02-14 Vorwerk & Co. Interholding Gmbh Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Reinigungsgerätes
DE102017118382A1 (de) 2017-08-11 2019-02-14 Vorwerk & Co. Interholding Gmbh Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Reinigungsgerätes
DE102017118380A1 (de) * 2017-08-11 2019-02-14 Vorwerk & Co. Interholding Gmbh Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Reinigungsgerätes
DE102017118381A1 (de) * 2017-08-11 2019-02-14 Vorwerk & Co. Interholding Gmbh Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Bodenbearbeitungsgerätes
ES2951842T3 (es) 2017-08-22 2023-10-25 Pentair Water Pool & Spa Inc Sistema de control de limpiador de piscina
CN107807649A (zh) * 2017-11-28 2018-03-16 广东工业大学 一种扫地机器人及其清扫方法、装置
DE102017130954A1 (de) * 2017-12-21 2019-06-27 Enway Gmbh Reinigungsvorrichtung und Verfahren zum Betreiben einer Reinigungsvorrichtung
CN109953700B (zh) * 2017-12-26 2020-09-25 杭州萤石软件有限公司 一种清扫方法及清洁机器人
US10575699B2 (en) * 2018-01-05 2020-03-03 Irobot Corporation System for spot cleaning by a mobile robot
FR3077721B1 (fr) * 2018-02-15 2020-03-06 Mv Robot Procede de commande du fonctionnement d’un robot de traitement de sols, equipement et systeme pour la mise en œuvre de ce procede.
US10761187B2 (en) * 2018-04-11 2020-09-01 Infineon Technologies Ag Liquid detection using millimeter-wave radar sensor
US11687092B2 (en) 2018-04-23 2023-06-27 Sharkninja Operating Llc Techniques for bounding cleaning operations of a robotic surface cleaning device within a region of interest
WO2019216578A1 (en) * 2018-05-11 2019-11-14 Samsung Electronics Co., Ltd. Method and apparatus for executing cleaning operation
US11243540B2 (en) 2018-05-17 2022-02-08 University Of Connecticut System and method for complete coverage of unknown environments
CN108839026B (zh) * 2018-07-19 2021-04-06 浙江工业大学 一种移动机器人视觉伺服跟踪预测控制方法
US11185207B2 (en) * 2018-07-24 2021-11-30 Qualcomm Incorporated Managing cleaning robot behavior
US11432697B2 (en) * 2018-09-06 2022-09-06 Lg Electronics Inc. Robot cleaner and a controlling method for the same
KR102252033B1 (ko) 2018-09-06 2021-05-14 엘지전자 주식회사 이동 로봇 및 그 제어방법
WO2020050494A1 (en) * 2018-09-06 2020-03-12 Lg Electronics Inc. A robot cleaner and a controlling method for the same
US10909374B2 (en) * 2018-09-07 2021-02-02 Intel Corporation Technologies for identifying unrecognizable objects in autonomous systems
US11141863B2 (en) * 2018-10-11 2021-10-12 Pixart Imaging Inc. Cleaning robot capable of detecting 2D depth information and operating method thereof
CN112804924A (zh) * 2018-10-12 2021-05-14 伊莱克斯公司 真空吸尘器
US10796443B2 (en) * 2018-10-17 2020-10-06 Kneron, Inc. Image depth decoder and computing device
CN111562778A (zh) * 2019-01-29 2020-08-21 北京奇虎科技有限公司 一种扫地机器人的清扫方法和扫地机器人
KR20200119387A (ko) * 2019-03-26 2020-10-20 엘지전자 주식회사 로봇 청소기
DE102019204837B4 (de) 2019-04-04 2024-04-18 BSH Hausgeräte GmbH 3D Umfeldabtastung
US11493336B2 (en) 2020-06-22 2022-11-08 Pixart Imaging Inc. Optical navigation device which can determine dirtiness level of cover or fix multi light pattern issue
US11523722B2 (en) * 2019-05-28 2022-12-13 Pixart Imaging Inc. Dirtiness level determining method and electronic device applying the dirtiness level determining method
KR102286132B1 (ko) * 2019-07-31 2021-08-06 엘지전자 주식회사 인공지능 로봇 청소기
KR20210069466A (ko) 2019-12-03 2021-06-11 삼성전자주식회사 오염원을 판단하는 로봇 청소기 및 그 동작 방법
KR102318756B1 (ko) * 2020-01-21 2021-10-29 엘지전자 주식회사 로봇 청소기 및 그의 제어방법
CN111643014A (zh) * 2020-06-08 2020-09-11 深圳市杉川机器人有限公司 智能清洁方法、装置、智能清洁设备和存储介质
CN111568301A (zh) * 2020-06-16 2020-08-25 北京石头世纪科技股份有限公司 安装支架及机器人
US20220108488A1 (en) * 2020-10-07 2022-04-07 Qualcomm Incorporated Angular mode and in-tree quantization in geometry point cloud compression
TWD219796S (zh) 2020-10-15 2022-07-11 大陸商北京石頭世紀科技股份有限公司 清潔機器人

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07234938A (ja) * 1994-02-23 1995-09-05 Matsushita Electron Corp 画像位置・動き検出方法
JPH1153083A (ja) * 1997-04-18 1999-02-26 Digital Equip Corp <Dec> アクティブな公共インターフェイスのための人間の視覚的感知方法及び装置
JP2004148090A (ja) * 2002-10-31 2004-05-27 Samsung Kwangju Electronics Co Ltd ロボット掃除機とそのシステム及び制御方法
US20050192707A1 (en) * 2004-02-27 2005-09-01 Samsung Electronics Co., Ltd. Dust detection method and apparatus for cleaning robot
JP2008524728A (ja) * 2004-12-21 2008-07-10 キヤノン株式会社 デジタル画像をセグメント化する方法及びコンパクトな表現の生成方法
US20080184518A1 (en) * 2004-08-27 2008-08-07 Sharper Image Corporation Robot Cleaner With Improved Vacuum Unit
KR20110127946A (ko) * 2010-05-20 2011-11-28 주식회사 에스원 청소 로봇 및 그 제어 방법
US20120103367A1 (en) * 2009-07-03 2012-05-03 Ecovacs Robotics (Suzhou ) Co., Ltd. Cleaning robot, dirt recognition device thereof and cleaning method of robot

Family Cites Families (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02147846A (ja) * 1988-11-29 1990-06-06 Kubota Ltd 汚れ状態判別装置及びそれを利用する掃除機
US5252951A (en) 1989-04-28 1993-10-12 International Business Machines Corporation Graphical user interface with gesture recognition in a multiapplication environment
JPH06180576A (ja) * 1992-10-14 1994-06-28 Hudson Soft Co Ltd 画像処理装置
US6195357B1 (en) 1996-09-24 2001-02-27 Intervoice Limited Partnership Interactive information transaction processing system with universal telephony gateway capabilities
US5754631A (en) 1996-09-30 1998-05-19 Intervoice Limited Partnership Voice response unit having robot conference capability on ports
US7145898B1 (en) 1996-11-18 2006-12-05 Mci Communications Corporation System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture
US6754181B1 (en) 1996-11-18 2004-06-22 Mci Communications Corporation System and method for a directory service supporting a hybrid communication system architecture
US6909708B1 (en) 1996-11-18 2005-06-21 Mci Communications Corporation System, method and article of manufacture for a communication system architecture including video conferencing
US5999525A (en) 1996-11-18 1999-12-07 Mci Communications Corporation Method for video telephony over a hybrid network
US6335927B1 (en) 1996-11-18 2002-01-01 Mci Communications Corporation System and method for providing requested quality of service in a hybrid network
US6731625B1 (en) 1997-02-10 2004-05-04 Mci Communications Corporation System, method and article of manufacture for a call back architecture in a hybrid network with support for internet telephony
WO1999028800A1 (fr) 1997-11-27 1999-06-10 Solar & Robotics Ameliorations a des robots mobiles et a leur systeme de commande
US6532404B2 (en) 1997-11-27 2003-03-11 Colens Andre Mobile robots and their control system
US6614781B1 (en) 1998-11-20 2003-09-02 Level 3 Communications, Inc. Voice over data telecommunications network architecture
DE19857436A1 (de) 1998-12-12 2000-06-21 Kuka Roboter Gmbh Verfahren zum Behandeln des Spannungsabfalls in der Steuerung eines Roboters und zum Wiederanfahren eines Roboters nach Spannungsabfall
US6842877B2 (en) 1998-12-18 2005-01-11 Tangis Corporation Contextual responses based on automated learning techniques
US6346950B1 (en) 1999-05-20 2002-02-12 Compaq Computer Corporation System and method for display images using anamorphic video
US6781606B2 (en) 1999-05-20 2004-08-24 Hewlett-Packard Development Company, L.P. System and method for displaying images using foveal video
EP1191982B1 (fr) 1999-06-17 2004-06-02 Solar &amp; Robotics S.A. Dispositif automatique de ramassage d'objets
JP4531897B2 (ja) * 1999-12-27 2010-08-25 パナソニック株式会社 人物追跡装置、人物追跡方法及びそのプログラムを記録した記録媒体
US6594844B2 (en) 2000-01-24 2003-07-22 Irobot Corporation Robot obstacle detection system
US8412377B2 (en) 2000-01-24 2013-04-02 Irobot Corporation Obstacle following sensor scheme for a mobile robot
US7155308B2 (en) 2000-01-24 2006-12-26 Irobot Corporation Robot obstacle detection system
JP4068780B2 (ja) 2000-02-24 2008-03-26 富士通株式会社 VoIP通信システムにおける通信状態通知装置,通信状態表示装置,通信状態通知方法及び通信状態通知プログラムを記録した媒体
JP2001266149A (ja) * 2000-03-23 2001-09-28 Alpine Electronics Inc 画像一致判定装置
US6554433B1 (en) 2000-06-30 2003-04-29 Intel Corporation Office workspace having a multi-surface projection and a multi-camera system
US20020083462A1 (en) 2000-12-21 2002-06-27 Arnott Robert J. Apparatus and method for establishing audio and video conferencing
US6883201B2 (en) 2002-01-03 2005-04-26 Irobot Corporation Autonomous floor-cleaning robot
US7571511B2 (en) 2002-01-03 2009-08-11 Irobot Corporation Autonomous floor-cleaning robot
US6690134B1 (en) 2001-01-24 2004-02-10 Irobot Corporation Method and system for robot localization and confinement
US6999431B2 (en) 2001-02-17 2006-02-14 Inter-Tel, Inc. Voice over internet protocol
US20040187457A1 (en) 2001-05-28 2004-09-30 Andre Colens Robotic lawnmower
US7663333B2 (en) 2001-06-12 2010-02-16 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
EP2386924B1 (en) 2001-06-12 2019-05-29 iRobot Corporation Mobile robot
US20030003962A1 (en) 2001-06-29 2003-01-02 Tan Vooi-Kia Automatic sliding machanism for portable electronic product, particularly for a sliding front cover of a mobile phone
US20030095707A1 (en) * 2001-11-19 2003-05-22 Koninklijke Philips Electronics N.V. Computer vision method and system for blob-based analysis using a probabilistic pramework
JP4087104B2 (ja) 2001-11-20 2008-05-21 シャープ株式会社 群ロボットシステム
JP2003179768A (ja) * 2001-12-10 2003-06-27 Pfu Ltd 画像処理装置
US7428216B2 (en) 2002-01-15 2008-09-23 Avaya Inc. Method and apparatus for policy and admission control in packet-based communication systems
US20040204074A1 (en) 2002-05-16 2004-10-14 Nimesh R. Desai Cellular phone speaker console
JP3687632B2 (ja) 2002-06-26 2005-08-24 日産自動車株式会社 薄型電池
US7286474B2 (en) 2002-07-12 2007-10-23 Avaya Technology Corp. Method and apparatus for performing admission control in a communication network
WO2004016400A2 (en) * 2002-08-16 2004-02-26 Evolution Robotics, Inc. Systems and methods for the automated sensing of motion in a mobile robot using visual data
US20040037414A1 (en) 2002-08-23 2004-02-26 Patel Pramodkumar Network feature management
US20040114581A1 (en) 2002-12-16 2004-06-17 Hans Mathieu Claude Voice-over-IP communicator
US7805220B2 (en) * 2003-03-14 2010-09-28 Sharper Image Acquisition Llc Robot vacuum with internal mapping system
US20050010331A1 (en) * 2003-03-14 2005-01-13 Taylor Charles E. Robot vacuum with floor type modes
JP2005044310A (ja) 2003-07-25 2005-02-17 Sony Corp 通話装置及び著作権保護方法、並びに通話システム
US20050057699A1 (en) 2003-09-16 2005-03-17 Bowser Todd S. Remote master control
WO2005032735A2 (en) 2003-09-29 2005-04-14 Electrolux Home Care Products, Ltd. Floor cleaning device
GB0324289D0 (en) 2003-10-17 2003-11-19 Ibm Method and system for integration of instant messaging and teleconferencing via a telephone network
JP2005224265A (ja) * 2004-02-10 2005-08-25 Funai Electric Co Ltd 自走式掃除機
WO2005098729A2 (en) 2004-03-27 2005-10-20 Harvey Koselka Autonomous personal service robot
GB2413394A (en) 2004-04-20 2005-10-26 Sharp Kk Display
US7995611B2 (en) 2004-06-29 2011-08-09 Apsect Software, Inc. Method and apparatus for dynamic VoIP phone protocol selection
KR100600487B1 (ko) * 2004-10-12 2006-07-13 삼성광주전자 주식회사 로봇 청소기의 좌표보정방법 및 이를 이용한 로봇 청소기시스템
US7626569B2 (en) 2004-10-25 2009-12-01 Graphics Properties Holdings, Inc. Movable audio/video communication interface system
EP1677099A1 (en) * 2004-12-30 2006-07-05 Danmarks Tekniske Universitet Method and apparatus for classification of surfaces
JP4243594B2 (ja) * 2005-01-31 2009-03-25 パナソニック電工株式会社 清掃ロボット
US7912192B2 (en) 2005-02-15 2011-03-22 At&T Intellectual Property Ii, L.P. Arrangement for managing voice over IP (VoIP) telephone calls, especially unsolicited or unwanted calls
US7389156B2 (en) 2005-02-18 2008-06-17 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
DE602006014364D1 (de) 2005-02-18 2010-07-01 Irobot Corp Autonomer oberflächenreinigungsroboter für nass- und trockenreinigung
JP2006285403A (ja) * 2005-03-31 2006-10-19 Konica Minolta Holdings Inc 画像処理方法および画像処理装置
EP1941411B1 (en) 2005-09-30 2011-09-14 iRobot Corporation Companion robot for personal interaction
US8605715B2 (en) 2005-11-02 2013-12-10 Panayiotis Thermos System and method for detecting vulnerabilities in voice over IP networks
EP2816434A3 (en) 2005-12-02 2015-01-28 iRobot Corporation Autonomous coverage robot
JP2009518695A (ja) 2005-12-09 2009-05-07 ウェインステイン,マーク デバイス用多重パネル摺動カバー
WO2007071004A1 (en) 2005-12-20 2007-06-28 Bce Inc. Apparatus and method for supporting multiple traffic categories at a single networked device
JP4764172B2 (ja) * 2006-01-13 2011-08-31 財団法人電力中央研究所 画像処理による移動体候補の検出方法及び移動体候補から移動体を検出する移動体検出方法、移動体検出装置及び移動体検出プログラム
EP3031377B1 (en) 2006-05-19 2018-08-01 iRobot Corporation Removing debris from cleaning robots
US20080084991A1 (en) 2006-10-05 2008-04-10 Inventec Multimedia & Telecom Corporation Automatic switch-dialing system and method
JP5056468B2 (ja) * 2007-02-22 2012-10-24 富士通株式会社 巡回ロボット及び巡回ロボットの自律走行方法
US8265793B2 (en) 2007-03-20 2012-09-11 Irobot Corporation Mobile robot for telecommunication
EP2574265B1 (en) 2007-05-09 2015-10-14 iRobot Corporation Compact autonomous coverage robot
US20090002489A1 (en) * 2007-06-29 2009-01-01 Fuji Xerox Co., Ltd. Efficient tracking multiple objects through occlusion
KR101412581B1 (ko) * 2007-12-11 2014-06-26 엘지전자 주식회사 로봇 청소기의 감지 장치
US8214968B2 (en) 2008-01-17 2012-07-10 Bissell Homecare, Inc. Vacuum accessory tool
JP2009261429A (ja) * 2008-04-22 2009-11-12 Hitachi Appliances Inc 自走式掃除機
IL195848A0 (en) * 2008-12-10 2009-09-01 Artivision Technologies Ltd A method and device for processing video frames
US8918209B2 (en) * 2010-05-20 2014-12-23 Irobot Corporation Mobile human interface robot
JP5761989B2 (ja) * 2010-12-21 2015-08-12 キヤノン株式会社 画像認識装置、画像認識方法及びプログラム
US9473809B2 (en) 2011-11-29 2016-10-18 At&T Intellectual Property I, L.P. Method and apparatus for providing personalized content

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07234938A (ja) * 1994-02-23 1995-09-05 Matsushita Electron Corp 画像位置・動き検出方法
JPH1153083A (ja) * 1997-04-18 1999-02-26 Digital Equip Corp <Dec> アクティブな公共インターフェイスのための人間の視覚的感知方法及び装置
JP2004148090A (ja) * 2002-10-31 2004-05-27 Samsung Kwangju Electronics Co Ltd ロボット掃除機とそのシステム及び制御方法
US20050192707A1 (en) * 2004-02-27 2005-09-01 Samsung Electronics Co., Ltd. Dust detection method and apparatus for cleaning robot
US20080184518A1 (en) * 2004-08-27 2008-08-07 Sharper Image Corporation Robot Cleaner With Improved Vacuum Unit
JP2008524728A (ja) * 2004-12-21 2008-07-10 キヤノン株式会社 デジタル画像をセグメント化する方法及びコンパクトな表現の生成方法
US20120103367A1 (en) * 2009-07-03 2012-05-03 Ecovacs Robotics (Suzhou ) Co., Ltd. Cleaning robot, dirt recognition device thereof and cleaning method of robot
KR20110127946A (ko) * 2010-05-20 2011-11-28 주식회사 에스원 청소 로봇 및 그 제어 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019532369A (ja) * 2016-09-14 2019-11-07 アイロボット コーポレイション エリア分類に基づくロボットの構成可能な動作のためのシステム及び方法
US11314260B2 (en) 2016-09-14 2022-04-26 Irobot Corporation Systems and methods for configurable operation of a robot based on area classification
JP7166926B2 (ja) 2016-09-14 2022-11-08 アイロボット・コーポレーション エリア分類に基づくロボットの構成可能な動作のためのシステム及び方法
US11740634B2 (en) 2016-09-14 2023-08-29 Irobot Corporation Systems and methods for configurable operation of a robot based on area classification

Also Published As

Publication number Publication date
AU2013338354A1 (en) 2014-10-16
JP6137642B2 (ja) 2017-05-31
US20140124004A1 (en) 2014-05-08
AU2016200330B2 (en) 2017-07-06
US20150120128A1 (en) 2015-04-30
JP5844941B2 (ja) 2016-01-20
EP2838410A1 (en) 2015-02-25
AU2017228620A1 (en) 2017-10-05
AU2017228620B2 (en) 2019-01-24
JP2017142851A (ja) 2017-08-17
AU2016200330C1 (en) 2018-02-01
EP2838410B1 (en) 2016-09-07
EP3132732B1 (en) 2020-06-03
AU2013338354B2 (en) 2015-12-10
EP3132732A1 (en) 2017-02-22
US8972061B2 (en) 2015-03-03
EP2838410A4 (en) 2015-05-27
US9408515B2 (en) 2016-08-09
JP2016028773A (ja) 2016-03-03
JP6633568B2 (ja) 2020-01-22
AU2016200330A1 (en) 2016-02-11
WO2014070470A1 (en) 2014-05-08
CA2869454A1 (en) 2014-05-08

Similar Documents

Publication Publication Date Title
JP6137642B2 (ja) 自律式カバレッジロボット
US10705535B2 (en) Systems and methods for performing simultaneous localization and mapping using machine vision systems
US20230305573A1 (en) Method for detecting obstacle, self-moving robot, and non-transitory computer readable storage medium
CN106537186B (zh) 用于使用机器视觉系统执行同时定位和映射的系统和方法
US9939529B2 (en) Robot positioning system
US8675060B2 (en) Machine vision based obstacle avoidance system
Palleja et al. Modeling floor-cleaning coverage performances of some domestic mobile robots in a reduced scenario
JP2022540160A (ja) 人工知能を利用した移動ロボット及び移動ロボットの制御方法
CN112034837A (zh) 确定移动机器人工作环境的方法、控制系统及存储介质
KR102581196B1 (ko) 공항 로봇 및 공항 로봇의 동작 방법을 수행하는 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체
JP2023501108A (ja) 自律移動ロボットの制御
AU2015224421B2 (en) Autonomous coverage robot
AU2013338354B9 (en) Autonomous coverage robot
Høilund et al. Improving stereo camera depth measurements and benefiting from intermediate results
US20210191415A1 (en) Area profile map learning for robotic device
AU2023201499A1 (en) Method and apparatus for detecting obstacle, self-moving robot, and storage medium

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141021

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141021

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20141021

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20150330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150401

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20150701

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150929

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: 20151026

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151119

R150 Certificate of patent or registration of utility model

Ref document number: 5844941

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250