Nothing Special   »   [go: up one dir, main page]

JP2021039795A - 自動物体検出機構を備えたロボットシステム、および、その動作方法 - Google Patents

自動物体検出機構を備えたロボットシステム、および、その動作方法 Download PDF

Info

Publication number
JP2021039795A
JP2021039795A JP2020204672A JP2020204672A JP2021039795A JP 2021039795 A JP2021039795 A JP 2021039795A JP 2020204672 A JP2020204672 A JP 2020204672A JP 2020204672 A JP2020204672 A JP 2020204672A JP 2021039795 A JP2021039795 A JP 2021039795A
Authority
JP
Japan
Prior art keywords
mvr
robot system
image data
exposed
end effector
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
JP2020204672A
Other languages
English (en)
Other versions
JP7352260B2 (ja
JP2021039795A5 (ja
Inventor
ニコラエフ デアンコウ,ロセン
Nikolaev Diankov Rosen
ニコラエフ デアンコウ,ロセン
イスラム,ラッセル
Islam Russell
イエ,シュータオ
Xutao Ye
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.)
Mujin Inc
Original Assignee
Mujin Inc
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 Mujin Inc filed Critical Mujin Inc
Publication of JP2021039795A publication Critical patent/JP2021039795A/ja
Publication of JP2021039795A5 publication Critical patent/JP2021039795A5/ja
Priority to JP2023145484A priority Critical patent/JP7555081B2/ja
Application granted granted Critical
Publication of JP7352260B2 publication Critical patent/JP7352260B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G63/00Transferring or trans-shipping at storage areas, railway yards or harbours or in opening mining cuts; Marshalling yard installations
    • B65G63/002Transferring or trans-shipping at storage areas, railway yards or harbours or in opening mining cuts; Marshalling yard installations for articles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G61/00Use of pick-up or transfer devices or of manipulators for stacking or de-stacking articles not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65BMACHINES, APPARATUS OR DEVICES FOR, OR METHODS OF, PACKAGING ARTICLES OR MATERIALS; UNPACKING
    • B65B43/00Forming, feeding, opening or setting-up containers or receptacles in association with packaging
    • B65B43/42Feeding or positioning bags, boxes, or cartons in the distended, opened, or set-up state; Feeding preformed rigid containers, e.g. tins, capsules, glass tubes, glasses, to the packaging position; Locating containers or receptacles at the filling position; Supporting containers or receptacles during the filling operation
    • B65B43/46Feeding or positioning bags, boxes, or cartons in the distended, opened, or set-up state; Feeding preformed rigid containers, e.g. tins, capsules, glass tubes, glasses, to the packaging position; Locating containers or receptacles at the filling position; Supporting containers or receptacles during the filling operation using grippers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • B65G47/91Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers
    • B65G47/915Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers provided with drive systems with rotary movements only
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • B65G47/91Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers
    • B65G47/917Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers control arrangements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G59/00De-stacking of articles
    • B65G59/02De-stacking from the top of the stack
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40931Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of geometry
    • G05B19/40935Selection of predetermined shapes and defining the dimensions with parameter input
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • 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/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • 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/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2201/00Indexing codes relating to handling devices, e.g. conveyors, characterised by the type of product or load being conveyed or handled
    • B65G2201/02Articles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/04Detection means
    • B65G2203/041Camera
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G2814/00Indexing codes relating to loading or unloading articles or bulk materials
    • B65G2814/03Loading or unloading means
    • B65G2814/0301General arrangements
    • B65G2814/0308Destacking devices
    • B65G2814/031Removing from the top
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40006Placing, palletize, un palletize, paper roll placing, box stacking
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40607Fixed camera to observe workspace, object, workpiece, global
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • 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/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/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection
    • 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/30108Industrial image inspection
    • 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/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Robotics (AREA)
  • Economics (AREA)
  • Quality & Reliability (AREA)
  • Geometry (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)
  • De-Stacking Of Articles (AREA)
  • Stacking Of Articles And Auxiliary Devices (AREA)
  • Specific Conveyance Elements (AREA)
  • Image Processing (AREA)
  • Control Of Conveyors (AREA)

Abstract

【課題】自動物体検出/登録機構を備えたロボットシステムを提供する。
【解決手段】認識されていない物体を登録するようにロボットシステムを動作させるためのシステムおよび方法を開示する。ロボットシステムは、スタート位置にある認識されていない物体を表す第1の画像データを使用して、最初の最小実行可能領域(MVR)を導出し、認識されていない物体を最初に移動させるための動作を実施してよい。ロボットシステムは、最初の移動動作後の認識されていない物体を表す第2の画像データを分析して、最初のMVRの精度を表す条件を検出してよい。ロボットシステムは、最初のMVRと、そのMVRの検出した条件に基づいた調整とを登録してよい。
【選択図】図15

Description

関連出願の相互参照
本出願は、2018年10月30日出願の米国仮特許出願番号第62/752,756号の利益を主張し、さらに、2019年5月24日出願の米国仮特許出願番号第62/852,963号の利益を主張し、参照によりその両方の全体を本明細書に組み込む。本出願は、2019年3月1日出願の米国特許出願番号第16/290,741号であり、現在、米国特許番号10,369,701と、2019年8月13日出願の米国特許出願番号第16/539,790号にも関連し、参照によりその両方の全体を本明細書に組み込む。
本技術は、一般的に、ロボットシステムを対象とし、より具体的には、物体を検出するシステム、プロセス、および、技術を対象とする。
パッケージは、目的地への出荷のためにパレットに載せられ、目的地で、パレットから降ろされることが多い。パッケージは、人間作業者によってパレットから降ろされる場合もあり、これは、費用が高くなり得るし、怪我をする危険もある。産業環境においては、パレットから降ろす動作は、パッケージを把持し、持ち上げ、運搬し、解放点まで運ぶロボットアーム等の産業用ロボットによって行われることが多い。また、撮像装置を採用して、パレットに積まれたパッケージのスタックの画像を撮影してよい。システムは、画像を処理して、登録データソースに記憶された登録画像と撮影画像を比較すること等によって、パッケージがロボットアームによって効率的に取り扱われることを保証してよい。
パッケージの撮影画像が、登録画像に一致する場合がある。結果として、撮影された物体の物理的特性(例えば、パッケージの寸法、重さ、および/または、質量中心の測定値)が分かり得る。物理的特性の正確な識別に失敗すると、様々な望ましくない結果につながり得る。例えば、このような失敗は停止の原因となることがあり、停止すると、パッケージを手動で登録することが必要となる場合がある。また、このような失敗は、特に、パッケージが比較的重いおよび/または傾いている場合、パッケージの取り扱いを誤ることにつながり得る。
物体検出機構を備えたロボットシステムが動作し得る環境の例を示す図である。 本技術の1つまたは複数の実施形態による、ロボットシステムを示すブロック図である。 本技術の1つまたは複数の実施形態による、ロボットシステムの図である。 本技術の1つまたは複数の実施形態による、ロボットシステムによって処理される物体のスタックの例の図である。 本技術の1つまたは複数の実施形態による、スタックの例の上面の図である。 本技術の1つまたは複数の実施形態による、上面に対応するセンサデータの図である。 Aは、本技術の1つまたは複数の実施形態による、最初の動作セットの後の上面に対応するセンサデータの図であり、Bは、図5Aに示すセンサデータの部分5Bの図である。 本技術の1つまたは複数の実施形態による、最初の持ち上げ操作の後の物体の図である。 Aは、本技術の1つまたは複数の実施形態による、比較データの図であり、Bは、本技術の1つまたは複数の実施形態による、更新されたデータの図である。 Aは、本技術の1つまたは複数の実施形態による、直接登録状態の上面図データの図であり、Bは、本技術の1つまたは複数の実施形態による、直接登録状態の側面の図である。 Aは、本技術の1つまたは複数の実施形態による、予測された状態の上面図データの図であり、Bは、本技術の1つまたは複数の実施形態による、予測された状態の側面の図であり、Cは、本技術の1つまたは複数の実施形態による、予測された状態の比較データの図である。 Aは、本技術の1つまたは複数の実施形態による、予期せぬ状態の上面図データの図であり、Bは、本技術の1つまたは複数の実施形態による、予期せぬ状態の側面の図であり、Cは、本技術の1つまたは複数の実施形態による、予期せぬ状態の比較データの図である。 Aは、本技術の1つまたは複数の実施形態による、変形した物体の状態の側面の一部分の図であり、Bは、本技術の1つまたは複数の実施形態による、比較データの一部分の図である。 本技術の1つまたは複数の実施形態による、かんだ状態の側面の部分の図である。 本技術の1つまたは複数の実施形態による、蓋が開いた状態の側面の部分の図である。 本技術の1つまたは複数の実施形態による、中間画像データの一部分の図である。 本技術の1つまたは複数の実施形態による、図1のロボットシステムを動作させる方法の流れ図である。 本技術の1つまたは複数の実施形態による、最初の操作を実施した後の画像および/またはMVRを処理する流れ図の例である。
自動物体検出/登録機構を備えたロボットシステムのためのシステムおよび方法を本明細書に記載する。ある実施形態に従って構成されたロボットシステム(例えば、1つまたは複数の指定されたタスクを実行するデバイスを統合したシステム)は、自律的/自動的に(例えば、人間オペレータによる入力が殆どまたは全く無く)以前は知られていなかった、または、認識されていなかった物体(例えば、パッケージ、箱、ケース等)を検出、登録することによって、使用性と柔軟性を向上させる。
物体が認識されたか否かを判断するために、ロボットシステムは、スタート位置の物体に関するデータ(例えば、物体の露出面の1つまたは複数の画像)を取得し、既知のまたは予測される物体の登録データと比較できる。ロボットシステムは、比較されたデータ(例えば、比較された画像の一部分)が、その中に表される対応する物体の1つに関して、登録データ(例えば、登録された表面画像の1つ)と一致する時、1つまたは複数の認識/登録された物体がスタート位置にあることを検出できる。ロボットシステムは、登録データと一致する部分を取り除くことに基づいて、画像データの1つまたは複数の一致しない部分(例えば、既知のまたは予測された物体の登録データと一致しない画像の部分)を決定できる。ロボットシステムは、説明のつかない領域は1つまたは複数の認識されていない物体を含むと判断できる。
以下に詳細に記載するように、ロボットシステムは、1つまたは複数の推定値に従って、認識されていない物体を操作し、認識されていない物体に関する追加の情報(例えば、表面画像、および/または、物理的寸法)を決定できる。例えば、ロボットシステムは、他の物体/表面とは離れた、または、隣り合わない認識されていない物体の露出した辺、および/または、露出した外側の角部を識別できる。1つまたは複数の実施形態において、ロボットシステムは、対象のスタックの角部に位置する、および/または、共通の層に位置する他の物体と比べて突き出た認識されていない物体(例えば、互いから閾値範囲内の高さを有する露出した表面を有する物体)の露出した辺、および/または、露出した外側の角部を識別できる。露出した辺、および/または、露出した外側の角部に基づいて、ロボットシステムは、露出した表面の最小実行可能領域(MVR)を導出できる。MVRは、それぞれ、対応する物体に接触し、持ち上げるのに必要なエリア、および/または、認識されていない物体のうちの1つの物体の表面の推定値を表すことができる。ロボットシステムは、MVRに基づいて、認識されていない物体を把持し、最初の持ち上げを行うことによって、(例えば、垂直および/または水平に)以前は不明であった辺を、隣り合う物体/表面と分けることができる。
最初の持ち上げの後、ロボットシステムは、比較データ(例えば、最初の持ち上げの後、認識されていない物体を表すセンサデータ)を取得、処理して、認識されていない物体に関する新しい情報を識別できる。例えば、ロボットシステムは、比較データを処理して、認識されていない物体に関して、新しく発見された(例えば、以前は不確かだった)辺および/または角部、関連する測定値(例えば、物体の寸法)、更新された画像/デプスマップ、または、これらの組み合わせを識別できる。ロボットシステムは、新しい情報をマスタデータに記憶して、以前は認識されなかった物体を自律的/自動的に登録(「自動登録」)できる。従って、ロボットシステムは、自動登録データを使用して、同じ種類の物体を識別、処理、および/または、操作できる。
データを登録する時、ロボットシステムは、MVRを更新し、そのMVRを、それぞれ、1つの認識されていない物体の表面を表すものとして記憶できる。ロボットシステムは、最初の(例えば、最初の持ち上げの前の)画像データから識別された部分のクロッピングに基づいて、および/または、比較データ(例えば、最初の持ち上げ後に撮られた画像)の処理結果に従って、複数の画像データの部分を組み合わせることに基づいて、MVRを更新できる。従って、ロボットシステムは、更新されたデータを生成、登録できる。処理結果のある例は、遮蔽推定値、および/または、辺の長さを含む。遮蔽推定値を用いて、ロボットシステムは、1つまたは複数の物体を持ち上げる/移動させることによって変更された、ロボットユニットの一部、および/または、画像データの一部等、物体以外の構造を描く画像データの部分を決定できる。辺の長さを用いて、ロボットシステムは、(例えば、物体の重み、把持位置と質量中心(CoM)との間の分離、および/または、把持された表面への他の変化が原因の)物体の変形、および/または、他の隣接する物体の移動を補償できる。
従って、ロボットシステムは、以前は認識されなかった物体に関する様々なデータを取得し、そのデータを使用して、対応する登録データを自律的に生成し、且つ、マスタデータを更新できる。生成された登録データは、対応する物体の表面画像、寸法(物体の高さを含む)、および/または、他の物理的特性を含み得る。従って、ロボットシステムは、自律的に(例えば、人間オペレータの入力無く)、物体を登録し、登録したデータを使用して、同じ種類の物体のその後のインスタンスを認識、処理できる。
さらに、自律登録を使用して、ロボットシステムは、認識されていない物体を、オペレータの助けを借りずに、処理(例えば、移動、梱包、開梱等)できる。従って、ロボットシステムの全体としての動作は、物体が認識されていない物体である時でさえ、中断なく継続できる。また、MVR処理は、各物体の表面を推定する精度を向上させ、これは、個々の物体の検出と、検出した認識されていない物体の表面画像の取得の精度を向上させる。
以下の記載において、本開示の技術の完全な理解を提供するために、多くの特定の詳細を記載する。他の実施形態においては、本明細書に含まれる技術は、これらの特定の詳細が無くても実践できる。他の例においては、特定の機能またはルーチン等の周知の特徴は、本開示を不必要に曖昧にしないように、詳細には記載しない。本明細書において、「ある実施形態」「一実施形態」等の言及は、記載している特定の特徴、構造、材料、または、特性が、本開示の少なくとも1つの実施形態に含まれることを意味する。従って、本明細書におけるこのような句の出現は、全て同じ実施形態を必ずしも指してはいない。他方、このような言及は、必ずしも互いに排他的なものではない。さらに、特定の特徴、構造、材料、または、特性は、1つまたは複数の実施形態において、任意の適切な方法で組み合わせることができる。図に示す様々な実施形態は、説明のための表現に過ぎず、必ずしも、縮尺通りに描いてはいないことは理解されたい。
ロボットシステムおよびサブシステムに関連付けられることが多いが、開示の技術の幾つかの重要な態様を不必要に曖昧にし得る構造またはプロセスを記載する周知の幾つかの詳細は、明確にするために、以下には記載していない。さらに、以下の開示は、本技術の異なる態様の幾つかの実施形態を記載するが、幾つかの他の実施形態は、この項に記載するのとは異なる構成または構成要素を有し得る。従って、開示の技術は、追加の要素を有する、または、以下に記載の要素の幾つかを含まない他の実施形態を有し得る。
以下に記載の本開示の多くの実施形態または態様は、プログラム可能なコンピュータまたはプロセッサによって実行されるルーチンを含む、コンピュータまたはプロセッサで実行可能な命令の形を取り得る。以下に示し、記載する以外のコンピュータまたはプロセッサシステムで開示の技術を実践できることを当業者は認識されよう。本明細書に記載の技術は、以下に記載のコンピュータ実行可能命令の1つまたは複数を実行するように詳細にプログラム、構成、または、構築された専用コンピュータまたはデータプロセッサで実現できる。従って、本明細書で一般的に使用される「コンピュータ」および「プロセッサ」という用語は、任意のデータプロセッサを指し、(パームトップコンピュータ、ウェアラブルコンピュータ、セルラーフォン、モバイルフォン、マルチプロセッサシステム、プロセッサベースもしくはプログラム可能家電製品、ネットワークコンピュータ、ミニコンピュータ等を含む)インターネット家電およびハンドヘルドデバイスを含み得る。これらのコンピュータおよびプロセッサが取り扱う情報は、液晶ディスプレイ(LCD)を含む任意の適切な表示媒体に提示できる。コンピュータまたはプロセッサで実行可能なタスクを実行するための命令は、ハードウェア、ファームウェア、または、ハードウェアおよびファームウェアの組み合わせを含む、任意の適切なコンピュータ可読媒体に記憶できる。命令は、例えば、フラッシュドライブおよび/または他の適切な媒体を含む任意の適切なメモリデバイスに含まれてよい。
「結合された」および「接続された」という用語、並びに、これらの派生語は、構成要素間の構造的関係を記載するために本明細書では使用されてよい。これらの用語は、互いに同意語と意図されていないことを理解されたい。むしろ、特定の実施形態において、「接続された」を使用して、2つ以上の要素が互いに直接接触していることを示すことができる。文脈においてそうでないことが明らかでない限り、「結合された」という用語を使用して、2つ以上の要素が、互いに直接的または間接的に(要素と要素の間に他の介在する要素がある)接触していること、(例えば、信号送信/受信、または、関数呼び出し等の因果関係においてのように)2つ以上の要素が互いに協力または相互作用すること、または、その両方を示すことができる。
好適な環境
図1は、物体検出機構を備えたロボットシステム100が動作し得る環境の例である。ロボットシステム100は、1つまたは複数のタスクを実行するように構成された1つまたは複数のユニット(例えば、ロボット)を含むことができる、および/または、それらと通信できる。梱包機構の態様は、様々なユニットによって実践または実施できる。
図1に示す例に関しては、ロボットシステム100は、倉庫または分配/出荷拠点において、荷降ろしユニット102、移動ユニット104(例えば、パレットに載せるロボット、および/または、ピースピッキングロボット)、運搬ユニット106、積み込みユニット108、または、これらの組み合わせを含み得る。ロボットシステム100の各ユニットは、1つまたは複数のタスクを実行するように構成できる。タスクは、トラックまたはバンから物体を降ろし、物体を倉庫に保管する、または、保管場所から物体を降ろし、出荷の準備をする等、目的を達成する動作を行うように順次、組み合わせることができる。他の例に関しては、タスクは、目的の場所(例えば、パレットの上、および/または、大箱/ケージ/箱/ケース内)に物体を載置することを含み得る。以下に記載のように、ロボットシステムは、物体を載置するおよび/または積み重ねるための計画(例えば、置き場所/向き、物体を移動させる順番、および/または、対応する動作計画)を導出できる。各ユニットは、タスクを実行するために導出された計画の1つまたは複数に従って、(例えば、ユニットの1つまたは複数の構成要素を動作させることによって)一連のアクションを実行するように構成されてよい。
ある実施形態においては、タスクはスタート位置114からタスク位置116への対象物体112(例えば、実行するタスクに対応するパッケージ、箱、ケース、ケージ、パレット等の1つ)の操作(例えば、移動および/または向きの変更)を含み得る。例えば、荷降ろしユニット102(例えば、デバンニングロボット)は、運搬装置(例えば、トラック)内の位置から、コンベヤベルト上の位置に対象物体112を移動するように構成されてよい。また、移動ユニット104は、1つの位置(例えば、コンベヤベルト、パレット、または、大箱)から他の位置(例えば、パレット、大箱等)に対象物体112を移動するように構成されてよい。他の例に関しては、移動ユニット104(例えば、パレットに載せるロボット)は、対象物体112を元の位置(例えば、パレット、ピックアップエリア、および/または、コンベヤ)から目的パレットに移動するように構成されてよい。動作を完了する時、運搬ユニット106は、移動ユニット104に関連付けられたエリアから、積み込みユニット108に関連付けられたエリアに対象物体112を移動でき、積み込みユニット108は、移動ユニット104から保管場所(例えば、棚上の位置)に(例えば、対象物体112を載せたパレットを動かすことによって)対象物体112を移動できる。このタスクおよびそれに関連する動作に関する詳細を以下に記載する。
説明目的で、ロボットシステム100を、出荷センタの文脈で記載するが、ロボットシステム100は、製造、アセンブリ、梱包、ヘルスケア、および/または、他の種類の自動化等、他の環境において/他の目的のために、タスクを実行するように構成されてよいことは理解されたい。ロボットシステム100は、図1に示されていない、マニピュレータ、サービスロボット、モジュール式ロボット等、他のユニットを含み得ることも理解されたい。例えば、ある実施形態においては、ロボットシステム100は、ケージカートまたはパレットからコンベヤまたは他のパレットに物体を移動するデパレタイズユニット、1つのコンテナから別のコンテナに物体を移動するコンテナ切替ユニット、物体を梱包する梱包ユニット、物体の1つまたは複数の特性に従って物体をグループにする仕分けユニット、物体の1つまたは複数の特性に従って物体を異なるように操作(例えば、仕分け、グループ化、および/または、移動)するピースピッキングユニット、または、これらの組み合わせを含み得る。
ロボットシステム100は、動き(例えば、回転変位および/または並進変位)のためにジョイントで接続された物理的または構造的な部材(例えば、ロボットマニピュレータアーム)を含み得る。構造部材およびジョイントは、ロボットシステム100の使用/動作に応じて、1つまたは複数のタスク(例えば、把持、回転、溶接等)を実行するように構成されたエンドエフェクタ(例えば、把持部)を操作するように構成された運動連鎖を形成できる。ロボットシステム100は、対応するジョイントを中心に、または、対応するジョイントで、構造部材を駆動または操作(例えば、変位、および/または、向き変更)するように構成された駆動装置(例えば、モータ、アクチュエータ、ワイヤ、人工筋肉、電気活性ポリマー等)を含み得る。ある実施形態においては、ロボットシステム100は、対応するユニット/シャシを場所から場所へと運搬するように構成された運搬モータを含み得る。
ロボットシステム100は、構造部材を操作するため、および/または、ロボットユニットを運搬するため等、タスクの実施に使用される情報を取得するように構成されたセンサを含み得る。センサは、ロボットシステム100の1つまたは複数の物理的特性(例えば、ロボットシステムの1つまたは複数の構造部材/ジョイントの状況、状態、および/または、位置)および/または周囲環境の1つまたは複数の物理的特性を検出または測定するように構成されたデバイスを含み得る。センサの幾つかの例は、加速度計、ジャイロスコープ、力センサ、ひずみゲージ、触覚センサ、トルクセンサ、位置エンコーダ等を含み得る。
ある実施形態においては、例えば、センサは、周囲環境を検出するように構成された1つまたは複数の撮像装置(例えば、視覚および/または赤外線カメラ、2Dおよび/または3Dイメージングカメラ、ライダまたはレーダ等の距離測定装置等)を含み得る。撮像装置は、(例えば、自動検査、ロボット誘導、または、他のロボット用途のために)機械/コンピュータビジョンを介して処理され得る、デジタル画像および/または点群等、検出された環境の表現を生成し得る。以下にさらに詳細に記載するように、ロボットシステム100は、デジタル画像および/または点群を処理して、対象物体112、スタート位置114、タスク位置116、対象物体112の姿勢、スタート位置114および/または姿勢に関する信頼基準、または、これらの組み合わせを識別できる。
対象物体112を操作するために、ロボットシステム100は、指定エリア(例えば、トラック内またはコンベヤベルト等のピックアップ位置)の画像を撮影、分析して、対象物体112と対象物体112のスタート位置114とを識別できる。同様に、ロボットシステム100は、別の指定エリア(例えば、コンベヤ上に物体を載置するための投下位置、コンテナ内の物体を置く位置、または、積み重ねるためのパレット上の位置)の画像を撮影、分析して、タスク位置116を識別できる。例えば、撮像装置は、ピックアップエリアの画像を生成するように構成された1つまたは複数のカメラ、および/または、タスクエリア(例えば、投下エリア)の画像を生成するように構成された1つまたは複数のカメラを含み得る。撮影画像に基づいて、以下に記載のように、ロボットシステム100は、スタート位置114、タスク位置116、関連する姿勢、梱包/載置計画、運搬/梱包順序、および/または、他の処理結果を判断できる。
ある実施形態においては、例えば、センサは、構造部材(例えば、ロボットアームおよび/またはエンドエフェクタ)、および/または、ロボットシステム100の対応するジョイントの位置を検出するように構成された位置センサ(例えば、位置エンコーダ、ポテンショメータ等)を含み得る。ロボットシステム100は、タスク実行中に、位置センサを使用して、構造部材および/またはジョイントの位置および/または向きを追跡できる。
好適なシステム
図2は、本技術の1つまたは複数の実施形態による、ロボットシステム100を示すブロック図である。ある実施形態においては、例えば、ロボットシステム100(例えば、上記のユニットおよび/またはロボットの1つまたは複数において)1つまたは複数のプロセッサ202、1つまたは複数の記憶装置204、1つまたは複数の通信装置206、1つまたは複数の入出力装置208、1つまたは複数の駆動装置212、1つまたは複数の運搬モータ214、1つまたは複数のセンサ216、または、これらの組み合わせ等、電子/電気デバイスを含み得る。様々なデバイスは、有線接続および/または無線接続を介して互いに結合されてよい。例えば、ロボットシステム100は、システムバス、ペリフェラルコンポーネントインターコネクト(PCI:Peripheral Component Interconnect)バスもしくはPCIエクスプレスバス、ハイパートランスポート(HyperTransport)もしくはインダストリスタンダートアーキテクチャ(ISA:industry standard architecture)バス、小型コンピュータシステムインタフェース(SCSI)バス、ユニバーサルシリアルバス(USB)、IIC(I2C)バス、または、電気電子技術者協会(IEEE:Institute of Electrical and Electronics Engineers)規格1394バス(「ファイヤワイヤ」とも言われる)等のバスを含み得る。また、例えば、ロボットシステム100は、ブリッジ、アダプタ、プロセッサ、または、デバイス間に有線接続を提供するための他の信号に関連するデバイスを含み得る。無線接続は、例えば、セルラー通信プロトコル(例えば、3G、4G、LTE、5G等)、無線ローカルエリアネットワーク(LAN)プロトコル(例えば、ワイヤレスフィデリティ(WIFI))、ピアツーピアもしくはデバイスツーデバイス通信プロトコル(例えば、ブルートゥース(登録商標)、近距離無線通信(NFC)等)、インターネットオブシングズ(IoT)プロトコル(例えば、NB−IoT、LTE−M等)、および/または、他の無線通信プロトコルに基づいてよい。
プロセッサ202は、記憶装置204(例えば、コンピュータメモリ)に記憶された命令(例えば、ソフトウェア命令)を実行するように構成されたデータプロセッサ(例えば、中央処理装置(CPU)、専用コンピュータ、および/または、オンボードサーバ)を含み得る。ある実施形態においては、プロセッサ202は、図2に示された他の電子/電気デバイス、および/または、図1に示されたロボットユニットに動作可能に結合された別個の/スタンドアロンコントローラに含まれてよい。プロセッサ202は、プログラム命令を実施して、他のデバイスを制御/他のデバイスとインタフェースすることによって、ロボットシステム100に、アクション、タスク、および/または、動作を実行させることができる。
記憶装置204は、プログラム命令(例えば、ソフトウェア)を記憶した非一時的コンピュータ可読媒体を含み得る。記憶装置204の幾つかの例は、揮発性メモリ(例えば、キャッシュおよび/またはランダムアクセスメモリ(RAM))、および/または、不揮発性メモリ(例えば、フラッシュメモリ、および/または、磁気ディスクドライブ)を含み得る。記憶装置204の他の例は、ポータブルメモリドライブ、および/または、クラウドストレージデバイスを含み得る。
ある実施形態においては、記憶装置204を使用して、処理結果、および/または、所定のデータ/閾値をさらに記憶し、それらにアクセスできる。例えば、記憶装置204は、ロボットシステム100によって操作され得る物体(例えば、箱、ケース、および/または、製品)の記載を含むマスタデータ252を記憶できる。1つまたは複数の実施形態において、マスタデータ252は、このような各物体の登録データ254を含み得る。登録データ254は、ロボットシステム100によって操作されることが予測される物体の、寸法、形状(例えば、異なる姿勢の物体を認識するための、可能な姿勢のテンプレート、および/または、コンピュータによって生成されたモデル)、カラースキーム、画像、ID情報(例えば、バーコード、クイックレスポンス(QR)コード、ロゴ等、および/または、これらの予測される位置)、予測重量、他の物理的/視覚的特性、または、これらの組み合わせを含み得る。ある実施形態においては、マスタデータ252は、質量中心(CoM)の位置、または、各物体に対するCoMの位置の推定、1つまたは複数のアクション/操作に対応する予測されるセンサ測定値(例えば、力、トルク、圧力、および/または、接触の測定値)、または、これらの組み合わせ等、物体の操作に関連する情報を含み得る。
通信装置206は、ネットワークを介して外部装置またはリモート装置と通信するように構成された回路を含み得る。例えば、通信装置206は、受信器、送信器、変調器/復調器(モデム)、信号検出器、信号エンコーダ/デコーダ、コネクタポート、ネットワークカード等を含み得る。通信装置206は、1つまたは複数の通信プロトコル(例えば、インターネットプロトコル(IP)、無線通信プロトコル等)に従って、電気信号を送信、受信、および/または、処理するように構成されてよい。ある実施形態においては、ロボットシステム100は、通信装置206を使用して、ロボットシステム100のユニット間で情報を交換できる、および/または、(例えば、報告、データ収集、分析、および/または、トラブルシューティングの目的で)ロボットシステム100の外部にあるシステムまたはデバイスと情報を交換できる。
入出力装置208は、人間オペレータに情報を通信するように、および/または、人間オペレータから情報を受信するように構成されたユーザインタフェース装置を含み得る。例えば、入出力装置208は、人間オペレータに情報を通信するためのディスプレイ210、および/または、他の出力装置(例えば、スピーカ、触覚回路、または、触覚フィードバック装置等)を含み得る。また、入出力装置208は、キーボード、マウス、タッチスクリーン、マイクロフォン、ユーザインタフェース(UI)センサ(例えば、動作コマンドを受信するためのカメラ)、ウェアラブル入力装置等、制御装置または受信装置も含み得る。ある実施形態においては、ロボットシステム100は、アクション、タスク、動作、または、これらの組み合わせを実行する時、入出力装置208を使用して、人間オペレータと対話できる。
ロボットシステム100は、動き(例えば、回転変位および/または並進変位)のためにジョイントに接続された物理的または構造的な部材(例えば、ロボットマニピュレータアーム)を含み得る。構造部材およびジョイントは、ロボットシステム100の使用/動作に応じて、1つまたは複数のタスク(例えば、把持、回転、溶接等)を実行するように構成されたエンドエフェクタ(例えば、把持部)を操作するように構成された運動連鎖を形成できる。ロボットシステム100は、対応するジョイントを中心に、または、対応するジョイントで構造部材を駆動または操作(例えば、変位、および/または、向き変更)するように構成された駆動装置212(例えば、モータ、アクチュエータ、ワイヤ、人工筋肉、電気活性ポリマー等)を含み得る。ある実施形態においては、ロボットシステム100は、対応するユニット/シャシを場所から場所へと運搬するように構成された運搬モータ214を含み得る。
ロボットシステム100は、構造部材を操作するため、および/または、ロボットユニットを運搬するため等、タスクの実施に使用される情報を取得するように構成されたセンサ216を含み得る。センサ216は、ロボットシステム100の1つまたは複数の物理的特性(例えば、ロボットシステムの1つまたは複数の構造部材/ジョイントの状況、状態、および/または、位置)、および/または、周囲環境の1つまたは複数の物理的特性を検出または測定するように構成されたデバイスを含み得る。センサ216の幾つかの例は、加速度計、ジャイロスコープ、力センサ、ひずみゲージ、触覚センサ、トルクセンサ、位置エンコーダ等を含み得る。
ある実施形態においては、例えば、センサ216は、周囲環境を検出するように構成された1つまたは複数の撮像装置222(例えば、視覚カメラ、および/または、赤外線カメラ、2Dおよび/または3Dイメージングカメラ、ライダまたはレーダ等の距離測定装置等)を含み得る。撮像装置222は、(例えば、自動検査、ロボット誘導、または、他のロボット用途のために)機械/コンピュータビジョンを介して処理され得る、デジタル画像および/または点群等、検出された環境の表現を生成し得る。以下にさらに詳細に記載するように、ロボットシステム100は、(例えば、プロセッサ202を介して)デジタル画像および/または点群を処理して、図1の対象物体112、図1のスタート位置114、図1のタスク位置116、対象物体112の姿勢、スタート位置114および/または姿勢に関する信頼基準、または、これらの組み合わせを識別できる。
対象物体112を操作するために、ロボットシステム100は、(例えば、上記の様々な回路/デバイスを介して)、指定エリア(例えば、トラック内またはコンベヤベルト等のピックアップ位置)の画像を撮影、分析して、対象物体112と対象物体112のスタート位置114とを識別できる。同様に、ロボットシステム100は、別の指定エリア(例えば、コンベヤ上に物体を載置するための投下位置、コンテナ内の物体を置く位置、または、積み重ねるためのパレット上の位置)の画像を撮影、分析して、タスク位置116を識別できる。例えば、撮像装置222は、ピックアップエリアの画像を生成するように構成された1つまたは複数のカメラ、および/または、タスクエリア(例えば、投下エリア)の画像を生成するように構成された1つまたは複数のカメラを含み得る。撮影画像に基づいて、以下に記載のように、ロボットシステム100は、スタート位置114、タスク位置116、関連する姿勢、梱包/載置計画、運搬/梱包順序、および/または、他の処理結果を判断できる。
ある実施形態においては、例えば、センサ216は、構造部材(例えば、ロボットアームおよび/またはエンドエフェクタ)、および/または、ロボットシステム100の対応するジョイントの位置を検出するように構成された位置センサ224(例えば、位置エンコーダ、ポテンショメータ等)を含み得る。ロボットシステム100は、タスク実行中に、位置センサ224を使用して、構造部材および/またはジョイントの位置および/または向きを追跡できる。
物体移動と登録の例
図3は、本技術の1つまたは複数の実施形態による、図1のロボットシステム100の図である。ロボットシステム100は、エンドエフェクタ304(例えば、把持部)を含むロボットアーム302(例えば、図1の移動ユニット104の例)を含み得る。ロボットアーム302は、図1のスタート位置114と図1のタスク位置116との間で対象物体112を移動するように構成されてよい。図3に示すように、スタート位置114は、対象スタック310(例えば、物体のグループ)を載せたパレット308を有し得る。ロボットアーム302のタスク位置116は、コンベヤ306(例えば、図1の運搬ユニット106の例)の載置位置(例えば、開始/放出点)であってよい。例えば、ロボットアーム302は、対象スタック310から物体を掴み取るように、且つ、物体を他の目的地/タスクに運搬するためにコンベヤ306に載せるように構成されてよい。
ロボットシステム100は、ロボットアーム302を用いた移動動作を行う時、図2のセンサ216の1つまたは複数を使用できる。ある実施形態においては、ロボットシステム100は、第1の画像センサ312および/または第2の画像センサ314を含み得る。第1の画像センサ312は、スタート位置114を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。第2の画像センサ314は、タスク位置116を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。例えば、第1の画像センサ312は、スタート位置114の上でスタート位置114の方を向く既知の位置に配置された1つまたは複数の上面センサ312a(例えば、カメラおよび/またはデプスセンサ)を含み得る。上面センサ312aは、対象スタック310の上面図等、スタート位置114の1つまたは複数の上面図に対応する画像データを生成できる。任意選択で、第1の画像センサ312は、スタート位置114の横方向隣で、スタート位置114の方を向く既知の位置、および/または、その真上の空間に配置された1つまたは複数の側面センサ312b(例えば、カメラおよび/またはデプスセンサ)をさらに含み得る。側面センサ312bは、対象スタック310の側面図/プロファイル図等、スタート位置114の1つまたは複数の側面図/プロファイル図に対応する画像データを生成する。また、第2の画像センサ314は、タスク位置116の上部/横でタスク位置116の方を向く1つまたは複数の既知の位置、または関連する空間に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。従って、第2の画像センサ314は、タスク位置116から閾距離に、または、閾距離内にある対象物体112の1つまたは複数の上面図および/または任意選択で側面図に対応する画像データを生成できる。
ロボットシステム100は、第1の画像センサ312を使用して、スタート位置にある物体を識別できる。以下に詳細に記載するように、ロボットシステム100は、第1の画像センサ312からの画像データを分析して、スタート位置/その周囲の各物体の存在、および/または、その物体の位置を識別できる。ロボットシステム100は、さらに、画像データを分析して、その物体が、以前に登録された物体(例えば、図2の登録データ254、および/または、図2のマスタデータ252の他の態様に対応する物体)に一致するか否かを判断できる。ロボットシステム100は、画像データを使用して、最小実行可能領域(MVR)を導出する等によって、各物体の表面(例えば、上部水平面および/または周囲の垂直面)を推定できる。ロボットシステム100は、MVRを使用して、(例えば、認識されていない物体を表現する登録データ254の新しいインスタンスに関して、MVR、および/または、その処理結果を記憶することによって)認識されていない物体を登録できる。更新された登録データを使用して、認識されていない物体のその後のインスタンスを認識できる。
ロボットシステム100は、第1の画像センサ312および/または第2の画像センサ314からの画像データを使用して、スタート位置114からタスク位置116に物体を移動する等のためのタスクを行うことができる。従って、ロボットシステム100は、画像データを使用して、タスクを行うための1つまたは複数の動作計画を導出、実施できる。ロボットシステム100は、移動中、さらに、第2の画像センサ314からの画像データを使用して、動作計画の調整もしくは動作計画からの逸脱を行ってよい、および/または、物体に関する追加データを取得できる。
物体認識
本技術の1つまたは複数の実施形態に従って、図4Aは、図1のロボットシステム100によって処理される物体のスタックの例(例えば、図3の対象スタック310)の図であり、図4Bは、スタックの例の上面の図(例えば、対象スタック310の実際の上面図410)であり、図4Cは、上面に対応するセンサデータ(例えば、上面図データ420)の図である。図4A、4B、および4Cを一緒に参照すると、上面図データ420は、実際の上面図410を描写または表現する1つまたは複数の視覚画像、および/または、1つまたは複数の3Dデプスマップを含み得る。
ロボットシステム100は、対象スタック310の上に配置された図3の第1の画像センサ312からの画像データ(例えば、上面図データ420)を様々な目的で使用できる。ロボットシステム100は、上面図データ420を分析して、物体の境界に対応し得る辺を識別できる。例えば、ロボットシステム100は、深度測定値および/または画像特性(例えば、異なる色、線形パターン、影、鮮明さの相違等)に基づいて、画像データで表現された辺および/または連続した表面を識別できる。また、ロボットシステム100は、深度測定値の差等に基づいて、露出した辺422(例えば、ほぼ同じ高さの他の物体/表面と水平に接触していない物体の上面の辺)を識別できる。
対象スタック310は、図2のマスタデータ252に登録された物体、および/または、マスタデータ252に登録されていない予期せぬ物体を含み得る。従って、ロボットシステム100は、物体表面416に対応する画像データを使用して、対象スタック310内にある物体を認識または識別できる。ある実施形態においては、ロボットシステム100は、画像データ、または、画像データの1つまたは複数の部分を、マスタデータ252(例えば、物体表面416に対応するマスタデータ252内の図2の様々な登録データ254)と比較して、対象スタック310内の物体を認識できる。例えば、ロボットシステム100は、上面図データ420の一部が登録データ254の物体表面416の1つまたは複数の画像/特徴に一致する時、対象スタック310内の既知の/認識された物体(例えば、認識された物体412)を識別できる。実際の上面図410の残りの部分(例えば、登録データ254と一致しない部分)は、認識されていない物体414に対応する一致しない部分430であってよい。認識されていない物体414の実際の辺は、画像データで検出可能な場合も可能でない場合もあり、図4Cに破線を用いて示される。
画像データの一致に基づいて、ロボットシステム100は、上面図データ420内で認識された物体412の位置を突き止めることができ、これは、さらに、(例えば、ピクセル位置を座標系にマッピングするプレキャリブレーション表および/または方程式を介して)対象スタック310の実世界の位置に変換できる。さらに、ロボットシステム100は、認識された物体412の露出していない辺の位置を、一致に基づいて推定できる。例えば、ロボットシステム100は、認識された物体412の寸法をマスタデータ252から取得できる。ロボットシステム100は、認識された物体412の露出した辺422から既知の寸法によって分けられる画像データの部分を測定できる。マッピングに従って、ロボットシステム100は、認識された物体412の1つまたは複数の登録に基づいた辺424を決定できる、および/または、上記のように、登録に基づいた辺424を実世界の位置に同様にマッピングできる。
ある実施形態においては、ロボットシステム100は、画像データに表現された対象スタック310の露出した外側角部426を識別できる。例えば、ロボットシステム100は、異なる向きを有する(例えば、異なる角度で延びる)露出した辺422の2つ以上の間の交点/接合点に基づいて、露出した外側角部426を識別できる。1つまたは複数の実施形態において、露出した辺422が、閾値範囲約90度等、所定の範囲内の角度を形成する時、ロボットシステム100は、露出した外側角部426を識別できる。以下に詳細に記載するように、ロボットシステム100は、露出した外側角部426と対応する露出した辺422を使用して、認識されていない物体414を処理および/または操作できる。
説明例のように、ロボットシステム100は、上面図データ420(例えば、3Dデプスマップ)を分析して、層/表面を識別する等によって、セグメンテーションを行うことができる。ロボットシステム100は、(例えば、平らな表面に関して)互いに閾値範囲内の深度測定値を有する横方向に隣り合う位置のグループ化として、層を識別できる。ロボットシステム100は、さらに、1つまたは複数の水平方向の線形パターン/傾斜に従う深度測定値を有する横方向に隣り合う位置のグループ化として、角度のある表面を識別できる。ロボットシステム100は、また、上面図データ420を分析して、3Dの辺/角部を識別できる。例えば、ロボットシステム100は、層/表面の周囲の境界を3Dの辺として識別でき、3Dの辺の間の接合点を3Dの角部として識別できる。また、ロボットシステム100は、色、明るさの変化、および/または、変化に関連付けられた視覚的パターンを検出することに基づいて、辺/角部を識別できる。ある実施形態においては、ロボットシステム100は、ソーベルフィルタを使用して、辺/角部を識別できる。識別された層、表面、辺、および/または、角部を使用して、ロボットシステム100は、上面図データ420に表現され得る各物体の存在位置および/または境界を推定できる。ある実施形態においては、ロボットシステム100は、表面の推定値を導出、検証すること、検証された/登録された/確かな物体表面を取り除くこと、および/または、推定された物体を操作することに基づいて、上面図データ420を繰り返し、処理できる。
認識されていない物体の処理
ある実施形態においては、ロボットシステム100は、対象スタック310内の物体の認識ステータスおよび/または相対的位置に従って、物体を処理(例えば、検出、および/または、移動)できる。例えば、ロボットシステム100は、認識された物体を最初に掴み取り、移動し、次に、センサ(例えば、図3の第1の画像センサ312)から別の画像データセットを生成できる。図5Aは、本技術の1つまたは複数の実施形態による、最初の動作セット(例えば、認識された物体412を掴むこと、および、移動すること)の後の上面に対応するセンサデータ501の図である。図5Aの網掛部分は、図4B、4Cに示された認識された物体412の2つを取り除いた後の深度測定値の変化に対応する。
ロボットシステム100が、画像データにおいて認識された物体412を検出しない時、ロボットシステム100は、図4Aの認識されていない物体414の位置を突き止めるために、任意の露出した外側角部426、および/または、露出した辺422を識別できる。例えば、ロボットシステム100は、上記と同様に、センサデータ501を処理して、露出した外側角部426および/または露出した辺422を識別できる。従って、ロボットシステム100は、認識された物体412を取り除いた後に露出された任意の角部/辺をさらに識別し、および/または、その位置を突き止めることができる。ある実施形態においては、ロボットシステム100は、対応する閾値に従って、図4Bの露出した辺422の2つ以上の間の交点/接合点として、露出した内側角部502をさらに識別できる。例えば、ロボットシステム100は、対応する連続した表面に対して180度を超える露出した辺422の2つ以上の間の接合点として、露出した内側角部502を識別できる。ある実施形態においては、ロボットシステム100は、露出した辺422が約270度の閾値範囲内にある角度を形成する時、露出した内側角部502を識別できる。
ある実施形態においては、認識された物体412が何も残っていない時、ロボットシステム100は、露出した角部および/または露出した辺に基づいて、(例えば、認識されていない物体414のうちから)対象スタック310の登録対象506を識別できる。例えば、ロボットシステム100は、露出した外側角部426に関連付けられたセンサデータ501の領域と、対応する認識されていない物体414とを選択できる。言い換えると、認識された物体412を処理した後、ロボットシステム100は、対象スタック310の露出した外側角部426を形成/構成する認識されていない物体414を処理できる。センサデータ501の対応する部分を分析することに基づいて、ロボットシステム100は、認識されていない物体414を把持し、把持した物体を持ち上げ、および/または、水平に移動し、および/または、登録のために把持した物体を撮影できる。さらに、把持した物体を撮影した後、ロボットシステム100は、把持した物体を目的地(例えば、図3のコンベヤ306)に移動できる。
センサデータ分析をさらに記載するために、図5Bは、本技術の1つまたは複数の実施形態による、図5Aのセンサデータ501の部分5Bの詳細な図である。ロボットシステム100は、MVR512に従ってセンサデータ501を分析して、把持位置520を決定できる。MVR512は、物体と接触、把持、および/または、持ち上げるのに必要な最小サイズのエリアを表し得る。言い換えると、MVR512は、1つの物体の表面(例えば、上面)の推定値を表し得る。例えば、MVR512は、エンドエフェクタ304(例えば、把持部の吸引カップ)が占めるエリア、または、取付面積を囲む追加の/緩衝領域を有するより大きいエリア等、図3のエンドエフェクタ304の取付面積に関連付けられてよい。ある実施形態においては、MVR512は、最小および/または最大の候補サイズに対応してよく、最小および/または最大の候補サイズは、対象スタック310の物体の最小/最大の可能なインスタンスの物理的寸法(例えば、長さ、幅、高さ、直径、外周等)に対応し得る。言い換えると、対象スタック310内には、最小候補サイズより小さい寸法を有する物体、最大候補サイズより大きい寸法を有する物体は無い。最小/最大候補サイズは、所定の値(すなわち、対象スタック310を処理する前に与えられた値)であってよい。
ある実施形態においては、ロボットシステム100は、対応する表面(例えば、互いから閾値範囲内にある高さ/深度の値を有するエリア)の上の露出した辺422から延びる2つ以上の交差する線に基づいて、MVR512を導出できる。例えば、ロボットシステム100は、露出した外側角部426の周囲の露出した辺422から延びる垂直な線に基づいて、MVR512を導出できる。線は、露出した外側角部426からの分離距離に対応する露出した辺422上の部分(例えば、点)から延ばされてよい。分離距離は、所定の値、および/または、1つまたは複数の処理結果に従って計算された値(例えば、推定した辺524もしくは対応する信頼値、および/または、対応する物体の推定される識別もしくは対応する信頼値)であってよい。従って、ロボットシステム100は、延長された線と露出した辺422とによって画定されるエリアとしてMVR512を導出できる。
他の実施形態においては、ロボットシステム100は、露出した辺422に沿って移動でき、露出した辺の周囲(例えば、所定距離内)の領域を分析できる。分析に基づいて、ロボットシステム100は、露出した辺422の周囲の他の2D/3Dの辺を識別できる。ロボットシステム100は、識別した辺をテストすることに基づいて、識別した辺を推定した辺524と決定できる。例えば、ロボットシステム100は、識別した辺が分析された露出した辺422と交わる時、および/または、補完的な露出した辺422と平行である時、推定した辺524を決定できる。
ある実施形態においては、ロボットシステム100は、MVR512を用いて、把持位置520を導出できる。把持位置520は、最初の操作のためにエンドエフェクタ304の真下にくる、および/または、エンドエフェクタ304に接触する物体/スタック上のエリアに対応し得る。言い換えると、ロボットシステム100は、次の操作(例えば、持ち上げプロセス、水平移動プロセス、および/または、登録のためのデータ収集プロセス)のために、把持位置520の上に把持部を置いて、対応する物体を把持できる。ロボットシステム100は、MVR512の中心部分を占める把持位置520を導出してよい。また、ロボットシステム100は、露出した辺422のうちの1つまたは複数と整列、当接する、および/または、露出した外側角部426のうちの1つと整列する把持位置520(例えば、エンドエフェクタ304の取付面積)を導出してよい。ロボットシステム100は、推定した辺524または他の処理結果に関連付けられた信頼レベルが、所定の閾値未満になる時、中心をはずれた把持位置を導出する場合がある。
ロボットシステム100は、導出した把持位置520を使用して、図3のロボットアーム302とエンドエフェクタ304とを操作できる。ロボットシステム100は、把持位置520でスタックの角部にある物体(例えば、登録対象506)を把持できる。ある実施形態においては、ロボットシステム100は、以前は露出していなかった辺を明瞭に区別するために、把持した物体を持ち上げ、および/または、水平に移動させることができる。例えば、ロボットシステム100は、辺を正確に区別するために物体を持ち上げ、および/または、物体を所定の距離だけ水平に移動させることができる。また、例えば、ロボットシステム100は、エンドエフェクタの高さの変化および/または傾きを監視および/または分析しながら、物体を持ち上げ、および/または水平に移動させることができ、それによって、露出した辺422の反対側の追加の辺が認識可能になる。ロボットシステム100は、最初の持ち上げ中、および/または、最初の持ち上げ後、データを取得、処理して、認識されていない物体414をさらに記載することができる。
認識されていない物体の登録データの収集
図6は、本技術の1つまたは複数の実施形態による、最初の持ち上げ操作の後の物体の図である。ある実施形態においては、ロボットシステム100は、外部の物体(例えば、把持した物体)、および/または、その物体の動きによって図3のロボットアーム302にかかる力を測定するように構成された1つまたは複数のセンサを含み得る。例えば、ロボットシステム100は、エンドエフェクタ304に取り付けられた、および/または、エンドエフェクタ304と一体になった力センサ、トルクセンサ、または、これらの組み合わせ(例えば、力トルク(FT)センサ602)を含み得る。従って、ロボットシステム100は、図5の把持位置520で把持された把持物体(例えば、登録対象506と判断された図4の認識されていない物体414の1つ)を持ち上げながら、下向きの力の測定値604、および/または、トルク測定値606を測定できる。
ある実施形態においては、ロボットシステム100は、下向きの力の測定値604を使用して、登録対象506の重さを決定できる。ある実施形態においては、ロボットシステム100は、下向きの力の測定値604および/またはトルク測定値606を使用して、登録対象506の推定トルク‐アームベクトル608および/または推定質量中心(CoM)610を計算できる。推定トルク‐アームベクトル608は、FTセンサ602によって提供された測定ベクトルの和に一致し得る。ロボットシステム100は、推定トルク‐アームベクトル608、トルク測定値606、および/または、下向きの力の測定値604を入力として使用する所定のプロセスおよび/または方程式に従って、推定CoM610を計算できる。
ある実施形態においては、ロボットシステム100は、最初の持ち上げ操作を行うためのフィードバック信号として、センサ測定値を使用できる。例えば、ロボットシステム100は、下向きの力の測定値604および/またはトルク測定値606が安定する(例えば、ある測定期間にわたって測定値が閾値範囲内にある)まで、最初の持ち上げ操作を行うことができる。従って、ロボットシステム100は、把持した物体が下にある物体または構造から離れて持ち上げられ(すなわち、もはや支持されておらず)、ロボットアーム302だけによって支持されるようになった時を判断できる。ロボットシステム100は、最初の持ち上げ操作の停止、および/または、把持した物体に関する追加データ(例えば、寸法、重さ、CoM、および/または、表面画像)取得のトリガとして、安定の判断を使用できる。
把持した物体(例えば、図4Bの認識されていない物体414)に関して取得したデータをさらに記載するために、本技術の1つまたは複数の実施形態に従って、図7Aは、比較データ702の図であり、図7Bは、更新されたデータ740の図である。上記のように、ロボットシステム100は、図5BのMVR512に基づいて、認識されていない物体414を把持できる。把持に基づいて、ロボットシステム100は、把持した物体を(例えば、最初の持ち上げ操作を介して)持ち上げ、および/または、水平に移動して、隣の当接している物体/表面から把持した物体を分離できる。ロボットシステム100は、把持した物体を持ち上げ、および/または、水平に移動した後、比較データ702(例えば、視覚画像、デプスマップ、点群等の2D/3D測定データ)を取得できる。ある実施形態においては、比較データ702は、図3の第1の画像センサ312等、図2のセンサ216の1つまたは複数を介して取得できる。
ロボットシステム100は、最初のセンサデータ(例えば、図4Cの上面図データ420、および/または、物体の持ち上げ前に取得した図5Aのセンサデータ501)、および/または、比較データ702に基づいて、認識されていない物体414の更新された画像(例えば、更新されたデータ740)をさらに生成できる。ある実施形態においては、ロボットシステム100は、最初の持ち上げ操作の前後の画像データを組み合わせることに基づいて、更新されたデータ740を生成できる。例えば、ロボットシステム100は、上面図データ420、および/または、MVR512および/または把持位置520に対応するセンサデータ501から、クロップされた部分734を導出できる。ロボットシステム100は、MVR512および/または把持位置520を最初のセンサデータにマッピングして、画素情報および/または深度測定値を対応するエリアにコピーすることに基づいて、クロップされた部分734を導出できる。ロボットシステム100は、クロップされた部分734を比較データ702の上に重ね合わせることに基づいて、更新されたデータ740を生成できる。更新されたデータ740に対するクロップされた部分734の位置は、露出した外側角部426と露出した辺422とを基準として用いることによって決定できる。従って、ロボットシステム100は、クロップされた部分734を使用して、図3のロボットアーム302および/または図3のエンドエフェクタ304を描く比較データ702内のエリアをカバーできる。
ある実施形態においては、ロボットシステム100は、比較データ702に基づいて、持ち上げた物体の寸法を識別または導出できる。ロボットシステム100は、その寸法を使用して、最初のセンサデータから対応する部分をクロップしてよい。ロボットシステム100は、新しく発見された境界が最初の持ち上げ前にあった場所に対応する最初のセンサデータからのクロップされた部分として、更新されたデータ740を生成できる。
ある実施形態においては、ロボットシステム100は、覆われていない部分732を比較データ702から導出できる。覆われていない部分732は、エンドエフェクタ304および/またはロボットアーム302によって覆われていない認識されていない物体414の上面に対応し得る。ロボットシステム100は、エンドエフェクタ304および/またはロボットアーム302の1つまたは複数の所定のパターンを使用して、覆われていない部分732を導出できる。例えば、ロボットシステム100は、所定の視覚的/画素パターンに一致する比較データ702の部分を認識、除去することに基づいて、覆われていない部分732を導出できる。ロボットシステム100は、覆われていない部分732をクロップされた部分734と組み合わせて、更新されたデータ740を生成できる。
ロボットシステム100は、比較データ702および/または更新されたデータ740を処理して、把持した物体の1つまたは複数の物理的特性に関する情報を取得できる。例えば、ロボットシステム100は、発見された辺722、発見された角部726、辺の長さの測定値728、および/または、角部の角度の測定値730を含む、物体の輪郭/形状の比較データ702を処理できる。ロボットシステム100は、上述した1つまたは複数の辺検出スキームを使用して、対応する露出した辺422の反対側の発見された辺722を決定できる。MVR512に従った導出および把持に基づいて認識されていない物体414を上昇させることによって、持ち上げた物体の上面と周囲の物体/表面との間に高さの差ができる。高さの差を使用して、発見された辺722を明瞭に決定できる。ロボットシステム100は、露出した辺422から延びる辺を検索することに基づいて、発見された辺722を決定できる。ある実施形態においては、ロボットシステム100は、長方形の上面を有する長方形の箱/パッケージ等に関して、露出した辺422からほぼ直角に延びる辺を決定することに基づいて、発見された辺722を決定できる。
ロボットシステム100は、異なる向きを有する発見された辺722の2つ以上が交差する接合点として、発見された角部726を決定することができる。ある実施形態においては、ロボットシステム100は、所定の関数または方程式等に従って、発見された角部726の角度(例えば、角部の角度の測定値730)を決定できる。
発見された辺722を決定することに基づいて、ロボットシステム100は、発見された辺722および/または露出した辺422の辺の長さの測定値728(例えば、物体の寸法)を計算できる。ロボットシステム100は、撮影画像(例えば、比較データ702および/またはセンサデータ501)の辺の長さを決定することと、画像内のその長さを1つまたは複数の所定のマッピング関数/方程式等に従って実世界の長さに変換することとに基づいて、辺の長さの測定値728を計算できる。
ある実施形態においては、ロボットシステム100は、比較データ702に基づいて、辺の長さの測定値728を決定でき、辺の長さの測定値728を使用して、持ち上げられた認識されていない物体の表面(例えば、上面)を描く画像として、更新されたデータ740を生成できる。例えば、上面図データ420および/またはセンサデータ501の一部分をクロップする時、ロボットシステム100は、MVR512の1つまたは複数の境界を越えて、対応する辺の長さの測定値728まで延びることができる。露出した辺/角部に従って幾つかの物体を持ち上げる時、ロボットアーム302は、露出した角部がロボットの土台の反対側に位置する時等、比較データ702において、持ち上げた物体の一部を遮蔽することになり得る。従って、ロボットシステム100は、露出した角部/辺、および/または、辺の長さの測定値728と比べて、遮蔽された領域を判断し、上面図データ420および/またはセンサデータ501から対応する部分をクロップできる。上記のように、ロボットシステム100は、露出した角部/辺、および/または、辺の長さの測定値728を基準として用いて、クロップされた部分を重ね合わせて、遮蔽された領域に置き換えることができる。ロボットシステム100は、最初の画像(例えば、持ち上げ前に取得した第1の画像)からクロップした部分を比較データ702の遮蔽された部分に重ね合わせたまたは置き換えた複合画像として、更新されたデータ740を生成できる。
上記処理結果の1つまたは複数に基づいて、ロボットシステム100は、対応する物体(例えば、認識されていない物体414)の登録データ254を生成できる。例えば、ロボットシステム100が、対象スタック310、または、その一部分(例えば、最上層)が、1つまたは複数の認識されていない物体414を含むと判断すると、ロボットシステム100は、上記のように、認識されていない物体414のうちの1つを登録対象506として選択し、登録対象506を操作し、および/または、登録対象506に関するデータを取得できる。さらに、ロボットシステム100は、所定のプロトコル/フォーマットに従って、登録対象506に関して、登録データ254の新しいインスタンス(例えば、図2のマスタデータ252に新しいエントリまたは記録)を作成できる。従って、ロボットシステム100は、取得したデータを登録データ254の新しいインスタンスに記憶できる。例えば、ロボットシステム100は、登録対象506に関して、辺の長さの測定値728を水平寸法として、角部の角度の測定値730もしくはその派生値を水平方向の形状として、更新されたデータ740を表面画像として、または、これらの組み合わせを記憶できる。
比較データ702と最初のデータとに基づいて更新されたデータ740は、物体認識を向上させる。登録対象506を持ち上げた後に取得された比較データ702を、更新されたデータ740を生成するベースとして用いることは、物体の辺の正確な決定につながる。物体の辺の決定の精度が向上することは、さらに、表面画像と、上記様々な測定値の決定の精度を向上させる。取得したデータおよび表面画像の精度が向上すると、さらに、対応する登録データ254に基づいて、その後に同じ種類の物体を認識する可能性を向上させる。ある実施形態においては、比較データ702を取得、処理することは、最初のデータのみを処理すること、または、スタックの状態を処理することよりも測定値および表面画像の精度を向上させる。最初の持ち上げ、および/または、水平方向の移動は、登録対象506の周囲の物体の邪魔をしたり、その物体を動かしたりする場合があるので、最初の持ち上げおよび/または水平方向の移動の後、残りのスタックの代わりに、登録対象506を直接、分析することは、精度を向上させる。
物体検出および登録のシナリオの例
図8Aは、上面図データ(例えば、図3の上面センサ312a等、図3の第1の画像センサ312からの上面図データ420)の図であり、図8Bは、(任意選択で、図3の側面センサ312b等、側面図データとして表され得る)側面図800の図である。両図とも、本技術の1つまたは複数の実施形態による直接登録状態であってよい、側面図データは、本発明の実施には必須ではなく、任意選択であってよい。側面図データ800は、図8Aの方向8Bによる対象スタック310を表し得る。図8Aおよび図8Bを一緒に参照すると、ロボットシステム100は、上面図データ420と、任意選択で、側面図データ800とを分析して、対象スタック310に関連付けられた直接登録状態を識別、処理できる。
直接登録状態は、他の周囲の物体/表面と十分に分離される物体認識に関連付けられてよい。ある実施形態においては、直接登録状態は、分離閾値812に基づいてよい。分離閾値812は、隣り合う辺の間の閾距離に対応し得る。言い換えると、分離閾値812は、ある物体またはその推定値(例えば、図5BのMVR512)を囲む領域であり、その物体とは異なる(例えば、異なる視覚的特性、および/または、異なる深度測定値)である領域を識別するための要件に対応し得る。説明的な例として、ロボットシステム100は、対応するMVRを囲む領域の分析に基づいて、「1」というラベルの付いた物体を検出できる。物体は、分離閾値812を超える距離だけ、物体「3」および「4」から水平方向に分離されている。
また、説明的な例として、ロボットシステム100は、同様に、分離閾値812に基づいて「2」というラベルの付いた物体を検出できる。隣り合う物体(例えば、物体2および3)が、両物体の上面間に閾値を超える高さの差814を有する時、ロボットシステム100は、物体の表面は同じ高さではないと判断できる。従って、物体2を囲む部分は、開いていると考えられてよい。よって、囲む部分は、分離閾値812を満たしてよく、ロボットシステム100は、上記と同様に、物体2を検出できる。
ある実施形態においては、ロボットシステム100は、さらに、他の処理結果に従って、MVRを分析、分類できる。例えば、ロボットシステム100は、MVRに含まれた、または、MVRに関連付けられた、開いた/3Dの角部の数に基づいて、確実または不確実として、MVRを分類し得る。説明的な例として、ロボットシステム100は、3つ以上の開いた角部を含む、または、それらに関連付けられたMVRを、確実なMVRと判断できる。ロボットシステム100は、1つまたは2つの開いた角部を含む、または、それらに関連付けられたMVRを不確実なMVRと判断できる。従って、ロボットシステム100は、物体3に関連付けられたMVRを、物体3に含まれた3つの露出した/3Dの角部に従って、確実なMVRとして分類できる。
ロボットシステム100は、MVR寸法/サイズを、所定の閾値(例えば、最小閾値および/または最大閾値)と比較する等によって、MVRを検証できる。ロボットシステム100は、所定の閾値を満たすMVRを検証できる。直接登録状態の1つまたは複数を満たす検証されたMVRに関して、ロボットシステム100は、(例えば、物体が適格MVRに対応する位置に存在すると判断/結論付けること等によって)物体を検出できる。さらに、ロボットシステム100は、検出した物体を直接、登録できる。例えば、ロボットシステム100は、検出した認識されていない物体に関して、図2の登録データ254のインスタンスを作成し、対応する適格MVRをそこに記憶できる。ロボットシステム100は、MVRに対してさらに調整/検証/テストすることなく、MVRを記憶することに基づいて、物体を直接、登録できる。
図9A〜図9Cは、登録対象506の最初の動き(例えば、最初の持ち上げ)に続く予測した状態の様々な態様を示す。本技術の1つまたは複数の実施形態による予測した状態に関して、図9Aは、上面図データ(例えば、上面図データ420)の図であり、図9Bは、(任意選択で、側面図データ900として表される)対象スタックの側面図の例であり、図9Cは、比較データ702の図である。
図9A〜図9Cを一緒に参照すると、予測した状態は、登録対象506に関して導出されたMVRが、登録対象506の表面と、その境界とに正確に一致する時に対応し得る。最初の動きに関して、ロボットシステム100は、ロボットアーム302および/またはエンドエフェクタ304を動作させて、登録対象506(例えば、物体「1」)のMVR512の中央部分にある把持位置520に従って、登録対象506を把持してよい。ロボットシステム100は、最初の持ち上げ高さ904だけ、登録対象506を持ち上げることによって、登録対象506の上面をその最初の深度測定値/高さから、同じ量だけ移動させてよい。従って、ロボットシステム100は、登録対象506の上面と、周囲の以前は当接していた表面との間の垂直方向の分離を引き起こし得る。
ロボットシステム100は、最初の動きの後、比較データ702を取得し得る。比較データ702は、一致しない部分430によって囲まれた上面の表現を含み得る。比較データ702は、センサと物体(複数可)との間にロボットアーム302および/またはエンドエフェクタ304を描く遮蔽された領域912をさらに含み得る。最初の持ち上げは、また、センサと、以前は見えていた物体の部分との間に、登録対象506が移動/持ち上げられることによって引き起こされた持ち上げによる遮蔽を作り出す場合がある。従って、比較データ702は、最初の画像データ(例えば、上面図データ420)に描かれていた持ち上げによる遮蔽部分914(例えば、登録対象506に以前は隣接/当接していた部分)を描いていない場合がある。図9Cに示す例に関しては、第1の画像センサ312が対象スタック310の中心部分の上に位置する時、持ち上げによる遮蔽部分914は、登録対象506の右側になり得る。
ロボットシステム100は、上記のように、比較データ702を分析して、層、辺、および/または、角部を識別できる。比較データ702を分析する時、ロボットシステム100は、層/辺の識別のために、遮蔽された領域912および/または持ち上げによる遮蔽部分914を取り除くこと、または、無視すること等によって、様々な遮蔽を考慮できる。ロボットシステム100は、ロボットアーム302および/またはエンドエフェクタ304の実世界の位置/姿勢を追跡または導出できるので、ロボットシステム100は、比較データ702の時点で、このような位置/姿勢を決定できる。ロボットシステム100は、実世界の姿勢を使用して、比較データ702の対応する部分にマッピング、決定できる。結果として生じる部分は、遮蔽された領域912であってよく、遮蔽された領域912は、分析(例えば、辺検出)から取り除かれるとして、マスクされてよい、または、フラグを付けられてよい。
ある実施形態においては、ロボットシステム100は、比較データ702の一部分を分析領域922(例えば、図7Bの覆われていない部分732、または、その一部分)として、画定/指定するために使用される分析境界916を導出してよい。例えば、ロボットシステム100は、図7Aの露出した辺422および/または発見された辺722に対して、各分析境界916を導出できる。各分析境界916は、露出した辺422および/または発見された辺722の1つに対して平行な向きであってよく、エンドエフェクタ304の横方向の周囲の位置(例えば、最も近い補完される辺422または722に近い部分/点)と一致または交差してよい。ロボットシステム100は、分析境界916と、対応する辺422/722との間の画像の部分を分析領域922として導出できる。分析領域922は、プラットフォーム(例えば、パレット308)の周囲の端部および/または対象スタック310の周囲の端部(例えば、一致しない部分430を画定する対応する露出した辺422)まで等、1つまたは複数の既知のまたは導出された位置まで外側に延びてよい。結果として生じる分析領域922は、それぞれ、遮蔽された領域とは別の(例えば、を除く)第2の画像データの一部を表し得る。従って、ロボットシステム100は、辺、寸法等を識別する等のために、分析領域922を処理してよく、遮蔽された領域をマスク/無視してよい。
ロボットシステム100は、分析境界916がロボットアーム302の既知の位置/姿勢を含むマスクされた領域924を画定するように、ロボットアーム302の既知の位置/姿勢に従って分析境界916をさらに導出できる。例えば、ロボットシステム100は、ロボットアーム302が、動作計画および/またはロボットユニット(例えば、土台)と登録対象506との相対的位置に基づいて、MVRの特定の角部を通って延びて登録対象506にアクセスすることを判断できる。ロボットシステム100は、マスクされた領域924を分析境界916によって区切られた領域として決定でき、特定の角部を含む。マスクされた領域924は、遮蔽された領域に一致し得る。従って、ロボットシステム100は、辺の識別および/または長さの測定等、一定のプロセスに対しては、マスクされた領域924を無視してよい、または、処理しなくてよい。
ロボットシステム100は、分析領域922を処理し、マスクされた領域924を無視して、発見された辺722を識別できる。言い換えると、ロボットアーム302および/またはエンドエフェクタ304の既知の位置/姿勢に従って、ロボットシステム100は、比較データ702の露出した辺422と一致する比較的小さいストリップを、分析領域922として識別、処理できる。結果として生じる分析領域922は、遮蔽されない可能性が高いので、ロボットシステム100は、(例えば、層検出、ソーベルフィルタ等を介して)上記のように、分析領域922を処理して、発見された辺722を識別できる。分析された領域において発見された辺722を識別した後、ロボットシステム100は、テンプレートの形状(例えば、長方形)に従って、分析領域922を超える発見された辺722を追跡および/または外挿してよい。ロボットシステム100は、発見された辺722がMVR512の図5の推定した辺524と一致する時、予測した状態と判断できる。言い換えると、ロボットシステム100は、発見された辺722が図4Bの露出した辺422に対して推定した辺524と同じ位置(例えば、分離距離および/または向き)にある時、予測した状態と判断できる。
ロボットシステム100は、最初の持ち上げによって引き起こされ得る位置/寸法の変化を調整できる。調整後、ロボットシステム100は、上記のように、発見された辺722に基づいて、更新されたデータ740を生成できる。予測した状態に関して、ロボットシステム100は、MVR512、または、MVR512内の画像データの一部を、更新されたデータ740(例えば、登録対象506の表面を表すもの)として使用できる。従って、ロボットシステム100は、上記のように、登録対象506を検出、登録できる。ある実施形態においては、ロボットシステム100は、(例えば、既知の持ち上げ高さ、センサ位置に対する辺の位置、対応する角度等に基づいて)持ち上げによる遮蔽部分914を識別し、それに従って、更新されたデータ740を調整できる。
図10A〜図10Cは、登録対象506の最初の動き(例えば、最初の持ち上げ)の後の予期せぬ状態の様々な態様を示す。本技術の1つまたは複数の実施形態による予測した状態に関する、図10Aは、上面図データ(例えば、上面図データ420)の図であり、図10Bは、(任意選択で、側面図データ1000として表される)物体スタック310の側面図であり、図10Cは、比較データ702の図である。
図10A〜図10Cを一緒に参照すると、ロボットシステム100は、登録対象506の上面と、周りの以前は当接していた表面との間を、上記のように垂直に分離し得る。予期せぬ状態は、登録対象506の導出したMVRが、最初の動きの後、登録対象506の表面とその境界に一致しない場合に対応し得る。
説明のための例として、ロボットシステム100は、対象スタック310の最上層を形成する5つの推定物体に対応する5つのMVRを導出してよい。ロボットシステム100は、「1」とラベル付けされた推定物体に対応する登録対象506を選択、操作(例えば、把持、最初の持ち上げ)を行うことができる。しかしながら、物体推定に誤りがある時、導出されたMVRは、表面の一部のみに対応する場合がある、または、他の物体推定の誤りに関して2つ以上の物体の表面に対応する場合がある。
導出されたMVR512が、図10Bに示す実際の物体全体をカバーしない時、最初の持ち上げは、比較データ702の予期せぬ部分1002の移動(例えば、深度測定値の変化)を起こし得る。予期せぬ部分1002は、1つまたは複数の予測された辺の位置1004(例えば、図5Bの推定した辺524に対応する位置)を含むおよび/または超える比較データ702の部分等の、MVR512の外側の部分に対応し得る。従って、ロボットシステム100が、上記のように、比較データ702を分析する(例えば、層分離、辺/角部の識別等)時、識別された表面は、MVR512より大きいエリアに対応し、予期せぬ部分1002を占める場合がある。
ロボットシステム100は、比較データ702において発見された辺722、および/または、新しく露出した辺422の長さを測定することによって、図7Aの辺の長さの測定値728を生成してよい。ロボットシステム100は、測定された長さがMVR512の寸法と一致しない時、予期せぬ状態を検出し得る。例えば、第2の画像データ(例えば、図7Aの比較データ702)の1つまたは複数の部分および/または露出した辺が、最初のMVRの対応する部分に一致しない時、最初のMVRを評価することは、予期せぬ状態を検出することを含む。
ある実施形態においては、ロボットシステム100は、予測した辺の位置1004を超えて延びる辺の部分の補償長さ1006をさらに計算できる。ロボットシステム100は、上記のように、物体の移動/持ち上げによって引き起こされる描かれた物体のサイズ/長さの変化を考慮するために測定された長さを調整できる。調整された長さ(例えば、実世界の長さ)に基づいて、ロボットシステム100は、MVR512を調整し、図7Bの更新されたデータ740を生成できる。図10Cに示した例に関して、ロボットシステム100は、平行な露出された辺から離れる水平方向(例えば、左)に沿って、調整された補償長さ1006だけMVR512を延ばすことによって更新されたデータ740を生成できる。
予期せぬ状態を検出することに基づいて、ロボットシステム100は、登録対象506を下げて、解放/投下し、更新されたMVR512に従って、物体を再把持してよい。ロボットシステム100は、解放/投下後、物体の任意のシフトを考慮した更新された画像(例えば、上面図データの新しいインスタンス)を取得してよい。更新された画像に基づいて、ロボットシステム100は、辺の長さの測定値728に従って、MVR512を再導出できる。再導出されたMVR512を使用して、ロボットシステム100は、更新されたMVRの中心部分の上等、把持位置を再決定できる。ある実施形態においては、補償長さ1006が閾値長さを超える時、図6の下向きの力の測定値604が閾値重量を超える時、および/または、図6の推定トルク‐アームベクトル608が所定の限度を超える時、再把持プロセスがトリガされてよい。
図11A〜図11Bは、登録対象506の最初の動き(例えば、最初の持ち上げ)の後の別の予期せぬ状態の様々な態様を示す。本技術の1つまたは複数の実施形態による変形した物体の状態に関する、図11Aは、(図3の側面センサ312bからの図7Aの比較データ702のインスタンス等、任意選択で側面図データ1102として表すことができる)登録対象506の側面の一部の図であり、図11Bは、上面図データ1104(例えば、図3の上面センサ312aからの比較データ702のインスタンス)の一部の図である。
図11A〜図11Bを一緒に参照すると、ロボットシステム100は、上記のように、登録対象506の上面と、周囲の以前は当接していた表面との間を垂直に分離できる。物体推定は、図10A〜図10Cに関して上述したように、誤りがある場合があり、図5の把持位置520は、図5Aの登録対象506にとって最適でない場合がある。あるインスタンスにおいては、物体は、準最適な把持位置を考慮して、その重量、柔軟性、もしくは、構造的剛性の欠如、または、これらの組み合わせが原因で変形し得る。図11Aに示す例に関しては、登録対象506は、下方に曲がることがある。
ロボットシステム100は、(例えば、任意選択の側面図データ1102として)比較データ702を分析することに基づいて、変形した物体の状態を検出できる。例えば、予期せぬ状態を検出することは、露出した辺を所定の形状パターンと比較することに基づいて、変形した物体の状態を検出することを含み得る。具体的な例として、ロボットシステム100は、露出した辺の形状、および/または、辺の傾斜の変化/ずれのパターンを識別することに基づいて、変形した物体の状態を検出できる。
変形した物体の状態を検出することに基づいて、ロボットシステム100は、異なるプロセスを実施して、図7Aの辺の長さの測定値728を生成してよい。ある実施形態においては、ロボットシステム100は、上記の1つまたは複数のプロセス例から生じる図9Cの分析領域922をセグメント化することによって、変形した表面/辺に関連付けられた長さを推定できる。例えば、ロボットシステム100は、分析領域922をセグメント化して、対応する分析領域922に関連付けられた露出した辺422と平行な/一致する分析ストリップ1112を形成できる。ロボットシステム100は、所定の幅に従って分析ストリップ1112を決定でき、分析ストリップ1112は、分析領域922の端部の方に外側に延びてよい。ロボットシステム100は、さらに、各分析ストリップ1112を分割して、分析区分1114を形成できる。分析区分1114の境界は、対応する分析領域922に関連付けられた露出した辺422に対して垂直であってよく、所定の水平距離だけ間隔をおいてよい。
ロボットシステム100は、各分析区分1114の区分長1116(例えば、隣り合う境界間の直線距離)を計算できる。ロボットシステム100は、各分析ストリップ1112の区分長1116を足して、および/または、分析ストリップ1112の合計の長さを平均して、計算された物体寸法1118を導出してよい。従って、ロボットシステム100は、変形した辺/表面の長さ(例えば、弧長1120)の推定値として、計算された物体寸法1118を導出できる。
図12は、本技術の1つまたは複数の実施形態による、かんだ状態の(図3の側面センサ312bからの図7Aの比較データ702のインスタンス等、側面図データ1200として任意選択で表すことができる)登録対象506の側面の部分の図である。かんだ状態は、登録対象506の隣の物体1202、または、その一部も、登録対象506の最初の動き(例えば、最初の持ち上げ)によって移動されたさらなる予期せぬ状態に対応し得る。例えば、隣の物体1202の周囲の部分または突き出た部分が、登録対象506の一部に接触し、登録対象506の一部によって支持され得る。従って、隣の物体1202の支持されている部分は、最初の持ち上げ中、登録対象506が上昇すると、上昇し得る。
かんだ状態に関して、ロボットシステム100は、比較データ702(例えば、上面図および/または側面図)が図5BのMVR512の外側の変化(例えば、変化した深度測定値)を含むと、上記のように予期せぬ状態を検出し得る。ロボットシステム100は、予期せぬ状態を検出後、比較データ702をさらに調べてよい。例えば、ロボットシステム100は、物体分離部分1204および/または接触点1206を検索できる。物体分離部分1204は、水平の隣り合う位置の色、明るさ、深度測定値等の差等、画像データの連続した/パターンになった部分(例えば、表面)間の変化に対応し得る。比較データ702が、図3のエンドエフェクタ304の周囲/下の、物体分離部分1204に横方向で当接した表面(例えば、横向きの、または、把持された表面)を含み、それが、さらに、横方向で他の表面(例えば、角度のある表面、または、凹面)と当接する時、ロボットシステム100は、かんだ状態を検出できる。ロボットシステム100は、対応する線形パターンまたは凹型パターンに従って、横方向に隣り合う位置で変化する画像値(例えば、深度測定値)を有する辺および/または水平位置を識別することに基づいて、角度のある表面または凹面を識別してよい。
あるいは、または、さらに、ロボットシステム100は、1つまたは複数の接触点1206を識別することによって、かんだ状態を検出できる。接触点1206は、隣の物体1202が下にある1つまたは複数の物体と接触している所を表し得る。例えば、登録対象506が、対象スタック310の最上層の周囲の部分にある時、側面図は、隣の物体1202の登録対象506から遠い方の傾斜した周囲の辺を示す/表す。また、側面図は、1つまたは複数の横向きの表面の上に傾斜した底辺を描いてよい。ロボットシステム100は、傾斜した周囲の辺および/または傾斜した底辺が、その下の1つまたは横向きの表面に接触する画像データの部分/位置として接触点1206を識別できる。
かんだ状態を検出することに基づいて、ロボットシステム100は、エンドエフェクタ304の真下および/またはエンドエフェクタ304を囲む辺/表面を処理し、他の部分を無視/マスクできる。言い換えると、ロボットシステム100は、エンドエフェクタ304が把持する表面を分析し、物体分離部分1204、および/または、隣の物体1202の上面/角度のある表面を、MVR512に対応しない一致しない部分430として、分類できる。予期せぬ状態は、MVR512の誤りを直接、示さない場合もある。従って、ロボットシステム100は、上記のように、登録対象506の図7Aの辺の長さの測定値728を取得し、MVR512を評価し、表面画像(例えば、図7Bの更新されたデータ740)を取得し、物体を検出し、および/または、物体を登録できる。
かんだ状態に関しては、登録対象506を移動させることによって、隣の物体1202の姿勢の変化1208を起こす場合がある。言い換えると、タスク実施等のために登録対象506を動かすと、隣の物体1202を、最初の画像(例えば、図4Cの第1の上面図データ420)とは異なる位置/向きで停止させる場合がある。従って、ロボットシステム100は、姿勢の変化1208を撮影、考慮した新しい画像データを取得してよい。
ある実施形態においては、ロボットシステム100は、最初の持ち上げの一部として、登録対象506の水平方向のシフトおよび/または回転運動を実施できる。所定のコマンド/設定に従って、登録対象506を最初の持ち上げ高さ904に持ち上げている間、または、持ち上げた後、水平方向のシフトおよび/または回転運動が、ロボットアーム302および/またはエンドエフェクタ304によって実行されてよい。水平方向のシフトおよび/または回転運動を含む最初の持ち上げは、かんだ状態の発生を低減して、システム全体の効率およびリソース消費(例えば、処理時間、メモリ等のコンピュータリソース)をさらに改善させることができる。
図13は、本技術の1つまたは複数の実施形態による、蓋が開いた状態の登録対象の(図3の側面センサ312bからの図7Aの比較データ702のインスタンス等、側面図データ1300として任意選択で表すことができる)側面図を示す。蓋が開いた状態は、物体表面の誤った推定と、登録対象506の構造的不具合/変化とによって一般に起こる別の予期せぬ状態に対応し得る。例えば、ロボットシステム100は、物体(例えば、箱)の上部の蓋の1つを占める図5BのMVR512を最初に導出できる。蓋が開いた状態は、ロボットシステム100が、最初に導出されたMVR512に従って、物体を把持、持ち上げた、把持した蓋の接着機構(例えば、テープまたは接着剤)が取れた時に、生じ得る。結果として、把持した蓋は、エンドエフェクタ304に固定されたままになり、物体の他の部分は、下になる、および/または、エンドエフェクタ304から離れるように/下方に回転される。
蓋が開いた状態に関して、比較データ702(例えば、上面図および/または側面図)が、図5BのMVR512の外側の変化(例えば、変化した深度測定値)を含む時、ロボットシステム100は、上記のように、予期せぬ状態を検出し得る。ロボットシステム100は、予期せぬ状態を検出した後、比較データ702をさらに調べてよい。例えば、ロボットシステム100は、上記のように、物体分離部分1204および/または接触点1206を検索してよい。ロボットシステム100は、蓋が開いた状態を、物体分離部分1204の水平方向の構成要素に基づいて、上記のかんだ状態と区別できる。ロボットシステム100は、物体分離部分1204の水平方向の構成要素(例えば、x軸方向長さおよび/またはy軸方向長さ)を1つまたは複数の閾値と比較して、蓋が開いた状態を検出できる。
ロボットシステム100は、登録対象506の1つまたは複数の角度のある部分(例えば、第1の角度のある部分1306および/または第2の角度のある部分1308)を識別、テストすることに基づいて、蓋が開いた状態をさらに検出できる。第1の角度のある部分1306は、登録対象506の上面、または、対応する辺に対応し得る。第2の角度のある部分1308は、登録対象506の底面または対応する辺に対応し得る。角度のある部分が、直線および/または凹んだ線もしくは表面等の1つまたは複数の所定のパターンに従って連続している時、ロボットシステム100は、蓋が開いた状態を検出できる。また、上面または関連する辺が、登録対象506の最初の深度902より上の部分と、最初の深度902より下の他の/反対の部分を有する時、ロボットシステム100は、蓋が開いた状態を検出してよい。ある実施形態においては、把持した蓋と角度を成し、把持した蓋に接続され、且つ、把持した蓋から離れる方向に延びる周囲の辺/表面の1つを識別することに基づいて、ロボットシステム100は、蓋が開いた状態を検出できる。
蓋が開いた状態を検出することに基づいて、ロボットシステム100は、予期せぬ状態に従って、物体の実際の長さを計算できる。例えば、ロボットシステム100は、把持した表面の把持した長さ1302(例えば、寸法)を測定できる。ロボットシステム100は、角度のある部分(例えば、第1の角度のある部分/辺1306、および/または、第2の角度のある部分/辺1308)に対応する長さ(例えば、図7の辺の長さの測定値728)をさらに測定できる。ロボットシステム100は、また、角度のある部分を使用して、物体の投下される部分(例えば、第1の角度のある部分1306)と把持した蓋および/またはエンドエフェクタ304との間の開放角1304を測定できる。ロボットシステム100は、開放角1304に従って、把持した長さ1302を角度のある部分の1つまたは複数にマッピングし、マッピングされた角度のある部分の残りの区分に関して残りの長さ1310を計算できる。かんだ状態とは異なり、蓋が開いた状態は、MVR512の誤りを直接、示し得る。従って、ロボットシステム100は、角度のある部分の把持した長さ1302、残りの長さ1310、開放角1304、および/または、辺の長さの測定値728を使用して、MVR512を調整し、および/または、更新されたデータ740を生成できる。ロボットシステム100は、調整したMVRに基づいて、登録対象506を下げ、解放/投下し、および/または、再把持できる。例えば、ロボットシステム100は、図5の把持位置520を更新して、2つの蓋を占めるまたは2つの蓋にわたるように延びてよい。
図14は、本技術の1つまたは複数の実施形態による、(例えば、図3の上面センサ312aから出力された)中間画像データ1400の一部の図である。ロボットシステム100は、5Bの把持位置520の上に図3のエンドエフェクタ304を配置する(位置コマンドおよび/または設定等のコマンドを生成/送信することによって)動作を実施した後、中間画像データ1400を上面センサ312aから取得できる。
ロボットシステム100は、中間画像データ1400を分析して、その中の付属品遮蔽部分1402を検出/識別できる。付属品遮蔽部分1402は、図3のエンドエフェクタ304および/またはロボットアーム302の付属の構成要素(例えば、ケーブル、ワイヤ、コンジット、および/または、他の付属品)がセンサと登録対象506の間にある中間画像データ1400の部分を表してよい。言い換えると、付属品遮蔽部分1402は、エンドエフェクタ304および/またはエンドエフェクタ304に取り付けられたロボットアーム302に関連付けられた追跡されていない付属品に対応する所定のパターンを描く中間画像データ1400の部分/位置を表し得る。例えば、ロボットシステム100が、エンドエフェクタ304および/またはロボットアーム302の構造的構成要素の位置を追跡し得る間、ロボットシステム100は、同様の精度で付属の構成要素を追跡することはできない場合がある。従って、ロボットシステム100は、中間画像データ1400を分析して、付属の構成要素を表す所定のパターンに一致する任意の辺または表面を識別してよい。例えば、ロボットシステム100は、所定の幅/形状を有し、エンドエフェクタ304および/またはロボットアーム302の追跡された位置に(例えば、同じ高さで、および/または、横方向に重なって)取り付けられた連続した表面を識別できる。ロボットシステム100は、連続した表面を識別することに基づいて、付属品遮蔽部分1402を検出できる。
ある実施形態においては、ロボットシステム100は、付属品遮蔽部分1402を検出することに基づいて、エンドエフェクタ304を(例えば、所定の位置に動かし、その後、再配置することによって)把持位置520の上に再配置する動作を実施できる。ロボットシステム100は、中間画像データ1400に付属品遮蔽部分1402が無くなる(すなわち、含まれなくなる)まで、エンドエフェクタ304の(再)配置と、中間画像データ1400の取得とを繰り返すことができる。ある実施形態においては、付属品遮蔽部分1402の決定された位置が、(例えば、図4Cの露出した辺422および/または図5Bの推定した辺524から閾距離内)の図11の分析区分1114の予測位置と横方向に重なる時、ロボットシステム100は、再配置を実施できる。従って、ロボットシステム100は、図7Aの比較データ702(例えば、最初の移動後、取得された画像)に、付属品遮蔽部分1402が生じるのを防ぐ可能性を増加させることができる。
図15は、本技術の1つまたは複数の実施形態による、図1のロボットシステムを動作させる方法1500の流れ図である。方法1500は、MVRを導出、検証し、それに従って、未知の物体(例えば、図4Bの認識されていない物体414)を登録するためであってよい。ある実施形態においては、方法1500は、認識されていない物体414を図1のスタート位置114(例えば、図3の対象スタック310)から図1のタスク位置116(例えば、図3のコンベヤ306)に移動させる間に、または、移動させる一部として、認識されていない物体414を登録することを含み得る。方法1500は、図2の記憶装置204の1つまたは複数に記憶された命令を図2のプロセッサ202の1つまたは複数を用いて実行することに基づいて、実施されてよい。従って、1つまたは複数のプロセッサ202は、1つまたは複数のユニット(例えば、図3のロボットアーム302、図3のエンドエフェクタ304、図2のセンサ216等)、および/または、それらの構成要素を制御する動作を(コマンド、設定、および/または、計画を、例えば、生成/送信することによって)実施してよい。
ブロック1502において、ロボットシステム100は、最初のソースデータ(例えば、第1の画像データ)を取得できる。ロボットシステム100は、2D/3D画像データを含む第1の画像データを、図3の上面センサ312aから、および/または、任意選択で、図3の側面センサ312bから受信できる。取得された第1の画像データは、スタート位置114の1つまたは複数の物体(例えば、図4Bの認識された物体412、および/または、図4Bの認識されていない物体414)を描写または表現できる。
ブロック1504において、ロボットシステム100は、最初のソースデータで一致しない部分を識別できる。ある実施形態においては、ロボットシステム100は、登録された物体の検出に基づいて、最初のソースデータで一致しない部分を識別できる。例えば、ロボットシステム100は、第1の画像データを分析することに基づいて、スタート位置114の登録された物体を検出できる。具体的な例として、ロボットシステム100は、第1の画像データまたは第1の画像データの一部を図2のマスタデータ252と比較できる。マスタデータ252は、図2の対応する登録データ254の登録された物体の既知の表面を表す画像、または、画像に対応するデータを含み得る。従って、ロボットシステム100は、第1の画像データの一部が、図2の登録データ254の画像と一致する時、認識された物体412を検出できる。ロボットシステム100は、第1の画像データの残りの部分を、認識されていない物体414の1つまたは複数を表す図4Bの一致しない部分430として、識別できる。
ブロック1506において、ロボットシステム100は、最初のMVR(複数可)を導出し、および/または、対応する把持位置(複数可)を決定できる。ロボットシステム100は、第1の画像データの表面セグメントおよび/または辺を識別し、識別した表面セグメント/辺/角部を使用して、上記のように、最初のMVRの1つまたは複数(例えば、図5BのMVR512)を導出できる。最初のMVRは、それぞれ、1つの認識されていない物体の1つの表面の最初の推定値を表すことができる。ある実施形態においては、ロボットシステム100は、下記のブロック1506〜1524に対応するプロセスの各繰り返しに対して、1つの最初のMVRを導出できる。他の実施形態においては、ロボットシステム100は、最初のMVRの全ての利用可能なインスタンスを導出し、下記のブロック1510〜1524に対応するプロセスを繰り返すことができる。
ロボットシステム100は、最初のMVRを使用して、最初の把持位置(例えば、図5Bの把持位置520)を導出できる。例えば、ロボットシステム100は、最初の把持位置を最初のMVRの中央部分として導出できる。
決定ブロック1508において、ロボットシステム100は、最初のMVRを分析して、直接登録状態が存在するか否かを検出できる。直接登録状態が存在する時、ロボットシステム100は、最初のMVRを最終的なMVRと決定できる。このような状態において、ロボットシステム100は、ブロック1526に関して以下に記載するように、最初のMVRを用いて(すなわち、最初のMVRに何の調整も行わずに)新しい登録データを作成することによって、物体を直接、登録できる。直接登録状態が検出される時、ロボットシステム100は、(例えば、ブロック1512〜1522に対応するプロセスを実施することなく)タスクを実施、完了できる。
最初のMVRを分析するために、ロボットシステム100は、上記のように、比較画像データ(例えば、第2の画像データ)にも描かれた表面の推定された境界を表す第1の画像データに描かれた露出した辺(例えば、図4Cの露出した辺422)を識別できる。ロボットシステム100は、上記のように、露出した角部(例えば、露出した辺の対が交わる図4Cの露出した外側角部426)をさらに識別できる。
ロボットシステム100は、最初のMVRのサイズおよび/または形状を検証することによって、直接登録状態を検出してよい。ロボットシステム100は、コンピュータビジョンプロセスを用いて、最初のMVRの寸法および/または形状を決定できる。形状が(例えば、人間オペレータおよび/または物体のサプライヤから)ロボットシステム100に与えられた予測した物体の形状と一致する時、ロボットシステム100は、最初のMVRを検証できる。また、ロボットシステム100は、最初のMVRを、その寸法が(例えば、人間オペレータおよび/または物体のサプライヤから)ロボットシステム100に与えられた最小物体寸法より大きく、最大物体寸法より小さい時、検証できる。
検証したMVRに関して、ロボットシステム100は、(例えば、図8Aの分離閾値812に従って)推定した表面の周囲の隣り合う位置が、異なる画像特性を有する時、直接登録状態を検出してよい。例えば、ロボットシステム100は、隣り合う位置の3D深度測定値が、少なくとも推定した表面未満の閾距離に位置する時、直接登録状態を検出できる。ロボットシステム100は、また、検証したMVRが、閾値(例えば、2)を超える露出した角部の数を含む、または、用いて導出される時、直接登録状態を検出してよい。
直接登録状態が最初のMVRに存在しない時、ロボットシステム100は、MVRを検証する動作/プロセスを実施できる。ブロック1510において、ロボットシステム100は、中間画像データを用いて、明瞭な手法を確立することができる。例えば、ロボットシステム100は、最初のMVR内の最初の把持位置の上にエンドエフェクタ304を配置する位置決め計画(例えば、動作計画)を生成できる。ロボットシステム100は、位置決め計画、および/または、位置決め計画に対応するコマンド/設定をロボットアーム302に通信でき、ロボットアーム302は、それに従って、コマンド、設定、および/または、位置決め計画を実行して、エンドエフェクタ304を配置してよい。次に、ロボットシステム100は、対応するコマンドを送信する等によって、図3の第1の画像センサ312(例えば、上面センサ312a)を動作させて、中間画像(例えば、図14の中間画像データ1400)を取得できる。ロボットシステム100は、中間画像データを分析して、その中の図14の付属品遮蔽部分1402を識別できる。付属品遮蔽部分1402のいずれかが識別される場合、ロボットシステム100は、最初の把持位置から離れた1つまたは複数の位置にエンドエフェクタ304を動かし、その後、エンドエフェクタ304を把持位置の上に再配置する調整計画(例えば、所定の動作計画)を生成、実施できる。ロボットシステム100は、エンドエフェクタ304の位置の周りの部分等、付属品遮蔽部分1402が中間画像データで識別されなくなるまで、上記分析および調整を反復して繰り返してよい。例えば、調整計画は、付属品遮蔽部分1402の識別に基づいて生成されてよく、ここで、調整計画は、把持位置520から1つまたは複数の位置にエンドエフェクタ304を取り除き、その後、エンドエフェクタ304を把持位置520の上に再配置するためであってよい。
ブロック1512において、ロボットシステム100は、登録対象(例えば、図4Bの一致しない部分430に表された認識されていない物体414の1つ等、登録対象506)を最初に移動することができる。ロボットシステム100は、所定の方向、所定の距離、および/または、操作のセットに従って、登録対象506を最初に持ち上げる動作、および/または、横方向に移動する動作を実施できる。例えば、ロボットシステム100は、所定の計画、または、対応するコマンド/設定のセットをロボットアーム302および/またはエンドエフェクタ304に送信して、動作を実施できる。従って、エンドエフェクタ304は、把持位置で、登録対象506に接触、把持することができ、ロボットアーム302は、図9Bの最初の持ち上げ高さ904に従って、エンドエフェクタ304を上昇させることができる。
ある実施形態においては、ロボットシステム100は、ブロック1514に示すように、登録対象(例えば、認識されていない物体414)を最初に移動する一部としてクリアリング動作を実施してよい。例えば、把持した登録対象506を持ち上げながら、および/または、持ち上げた後、ロボットシステム100は、エンドエフェクタ304を横方向に移動する動作、および/または、垂直軸を中心にエンドエフェクタ304を回転させる動作を実施できる。クリアリング動作は、上記のかんだ状態の発生を低減する。
ブロック1516において、ロボットシステム100は、登録対象の最初の移動の後、比較画像(例えば、図7Aの比較データ702等の第2の画像データ)を取得できる。例えば、ロボットシステム100は、最初の移動動作後、登録対象506の1つまたは複数の描写を撮影するように第1の画像センサ312に命令することができる。第1の画像センサ312は、結果として生じる第2の画像データをコンピュータビジョン分析のために1つまたは複数のプロセッサ202に送信できる。上記のように、第2の画像データは、2Dおよび/または3Dの描写、上面描写、および/または、側面描写、または、これらの組み合わせを含み得る。
ブロック1518において、ロボットシステム100は、第2の画像データおよび/または最初のMVRを処理できる。ロボットシステム100は、露出した辺等、辺を識別し、その形状/長さを決定し、および/または、辺を所定のパターンと比較することによって、第2の画像データを分析できる。例えば、ロボットシステム100は、第2の画像データの露出した辺の1つに関して、辺の長さの測定値728を決定できる。従って、ロボットシステム100は、最初のMVRに関連付けられた精度を表す状態を検出できる。ロボットシステム100は、検出された状態に従って、最初のMVRを評価できる。評価に基づいて、ロボットシステム100は、最終的なMVRを生成できる。最終的なMVRは、1つまたは複数の状態に関して最初のMVRであってよい。言い換えると、ロボットシステム100は、予測した状態に基づいて、最初のMVRを最終的なMVRと決定することによって、最終的なMVRを生成できる。他の条件に関しては、最終的なMVRは、最初のMVRから一部分を除いて生じる、または、第1の画像データからの追加の部分を含むように最初のMVRの境界を延ばすことから生じる、調整したMVR(例えば、図7Bの更新されたデータ740)であってよい。第2の画像データおよび/または最初のMVRの処理に関する詳細を以下に記載する。
決定ブロック1520において、ロボットシステム100は、第2の画像の処理結果に基づいて、再把持状態が存在するか否かを検出できる。ロボットシステム100は、最初のMVRを評価することに少なくとも部分的に基づいて、再把持状態を検出できる。例えば、ロボットシステム100は、予測した状態(すなわち、エンドエフェクタ304が、最初のMVRの正確な導出に従って、中心にある)の検出後、再把持状態が存在しないことを検出してよい。また、ロボットシステム100は、かんだ状態の把持した表面、および/または、変形した物体の状態に関する図11の計算された物体寸法1118を評価することに基づいて、再把持状態が存在しないことを検出し得る。
ロボットシステム100は、第2の画像データの1つまたは複数の辺の長さが、所定の限度だけ、最初のMVRの対応する寸法を超える時、再把持状態を検出し得る。言い換えると、持ち上げた物体が最初のMVRより十分に大きい表面を有する時、ロボットシステム100は、登録対象506を再把持できる。ある実施形態においては、ロボットシステム100は、さらに、図6の下向きの力の測定値604、および/または、推定トルク‐アームベクトル608を取得し、所定の限度/条件と比較して、再把持状態を取得できる。
ブロック1522において、再把持状態が検出されると、ロボットシステム100は、登録対象506を再把持する動作を実施してよい。ロボットシステム100は、調整したMVRに基づいて、更新された把持位置(例えば、把持位置520の追加のインスタンス)を導出できる。例えば、ロボットシステム100は、調整したMVRの中心部分を含む更新された把持位置を導出できる。従って、ロボットシステム100は、最初の持ち上げ動作を(例えば、クリアリング動作無しに)逆にして、エンドエフェクタ304を下げ、横方向に移動させること等によって、登録対象506を元の位置に再配置する動作を実施できる。元の位置に戻った後、ロボットシステム100は、登録対象506を解放するようにエンドエフェクタ304に命じることができる。ロボットシステム100は、現在位置から更新された把持位置の上にエンドエフェクタ304を動かし、下げ/登録対象506に接触させ、その後、登録対象506を把持する再把持計画を導出できる。ロボットシステム100は、再把持計画の動作を実施して、再把持動作を完了できる。ロボットシステム100は、再把持状態が検出されない時、再把持動作をスキップできる。
ブロック1524において、ロボットシステム100は、登録対象に関連付けられたタスクを実施できる。例えば、ロボットシステム100は、図1のスタート位置114からタスク位置116に登録対象506を移動することによって、タスクを実施できる。ロボットシステム100は、タスクを行う動作計画を導出し、その後、タスク動作計画に対応する動作を実施できる。ロボットシステム100は、タスク動作計画、および/または、関連するコマンド/設定を1つまたは複数のロボットユニット(例えば、ロボットアーム302および/またはエンドエフェクタ304)に送信して、動作を実施できる。ロボットユニットは、受信した計画/コマンド/設定を実行して、タスクを行うことができる。
ブロック1526において、ロボットシステム100は、移動された物体を登録できる。ある実施形態においては、ロボットシステム100は、タスクを実施しながら(例えば、並行して)、移動された物体を登録できる。例えば、ロボットシステム100は、登録対象506の新しい記録を表す登録データ254(例えば、新しい登録データ)の新しいインスタンスを作成できる。ロボットシステム100は、新しい登録データを含む、登録データ254の一部として、最終的なMVR、および/または、関連する処理結果(例えば、寸法および/または画像)を記憶できる。
ロボットシステム100は、上記様々な動作中、実世界の構成要素の位置(例えば、ロボットアーム302、エンドエフェクタ304、および/または、それらの一部の位置/姿勢)を追跡できる。実世界の構成要素の位置の例は、上記のように、認識されていない物体414を把持するエンドエフェクタ304と、エンドエフェクタ304に動作可能に結合されたロボットアーム302との現在の姿勢と、実施中のロボットアーム302の位置決めの記述を含んでよい。実世界の構成要素の位置を追跡することは、例えば、最初の移動のための動作を実施中、および/または、タスクを行うための動作を実施中、追跡することを含み得る。従って、ロボットシステム100は、様々な画像(例えば、第1の画像データ、第2の画像データ等)を取得する時にエンドエフェクタ304および/またはロボットアーム302の位置/姿勢を決定できる。例えば、ロボットシステム100は、追跡した位置を使用して、下記のように画像を処理できる。
図16は、本技術の1つまたは複数の実施形態による、最初の操作を実施した後の画像および/またはMVRを処理する流れ図の例である。図16は、図15のブロック1518に関して記載したプロセスの詳細な例を示す。
ブロック1602において、ロボットシステム100は、第2の画像データ(例えば、図7Aの比較データ702)の層および/または辺を識別できる。ロボットシステム100は、2D画像、3D画像、側面描写、上面描写、または、これらの組み合わせを処理して、上記のように、辺(例えば、露出した辺422)を決定できる。ロボットシステム100は、互いに閾値範囲内に描かれた値(例えば、深度測定値、明るさ、色等)を有し、および/または、所定のパターン(例えば、線形の傾斜、または、凹型の曲線)に従う処理された画像の横方向に隣り合う位置のセットとして、各層を決定できる。層は、検出された辺によって区切られてよい。言い換えると、識別した辺は、第2の画像データに描かれた1つまたは複数の表面の推定された境界を表してよい。ロボットシステム100は、識別した辺の図7Aの辺の長さの測定値728を決定してよい。
ある実施形態においては、ロボットシステム100は、エンドエフェクタおよび/または最初の持ち上げ動作の追跡した位置と比較した辺の位置/向きに従って、辺を分類できる。例えば、ロボットシステム100は、最初の持ち上げ動作に一致する平行移動に基づいて、第1の画像データの図4Cの露出した辺422に対応する辺を認識できる。また、ロボットシステム100は、第1の画像データから描写、識別されないことのある図7Aの発見された辺722を識別できる。ある実施形態においては、ロボットシステム100は、追跡されたエンドエフェクタ位置から所定の距離内(例えば、すぐ下および横方向に外側に延びた)線形パターンを有する把持した表面をさらに識別できる。
層/辺を識別する時、ロボットシステム100は、図9Cの遮蔽された領域912を除く特定の領域を決定、分析できる。ブロック1632において、ロボットシステム100は、第2の画像データの分析領域(例えば、図9Cの分析領域922)を決定できる。例えば、ロボットシステム100は、ロボットアーム302および/またはエンドエフェクタ304の追跡した位置をマッピングして、遮蔽された領域912の位置を決定または推定できる。ロボットシステム100は、追跡した位置を比較して、ロボットアーム302および/またはエンドエフェクタ304によって遮蔽されていない(例えば、その下で横方向に重なっていない)明瞭な辺/角部を識別できる。ロボットシステム100は、追跡された構成要素の位置から横方向の閾距離の外側にある明瞭な辺/角部も識別できる。一実施態様においては、ロボットシステム100は、第2の画像データの露出した辺のうちから明瞭な辺を識別できる。例えば、明瞭な辺を識別することは、第2の画像データの露出した辺422が追跡された構成要素の位置から横方向の閾距離の外側にあると決定することを含み得る。
上記のように、ロボットシステム100は、明瞭な辺に従って、図9Cの分析境界916を導出することによって分析領域922を決定できる。分析領域922は、一方の側を明瞭な辺によって区切られ、反対側を分析境界916によって区切られた第2の画像データの部分に対応し得る。ロボットシステム100は、対応する明瞭な辺に平行な分析境界を導出できる。ロボットシステム100は、追跡された構成要素の位置、および/または、対応する明瞭な辺からの所定の分離に従って、分析境界916を導出できる。ある実施形態においては、ロボットシステム100は、互いに直交し、明瞭な辺の対が交差する明瞭な角部から延びる分析境界916の対を導出できる。ロボットシステム100は、分析境界916によって区切られた、分析領域922の外側の第2の画像データのエリアを図9Cのマスクされた領域924と判断できる。ロボットシステム100は、辺の識別、長さの決定等のために、マスクされた領域924を無視し、分析領域922を処理してよい。
ブロック1634において、ロボットシステム100は、分析領域922内の辺を識別できる。分析領域922を処理する例として、ロボットシステム100は、分析領域の第1の辺から開始し、明瞭な辺に沿って繰り返し移動して、分析領域922で角をなして明瞭な辺と交差する補完的な辺を識別できる。ロボットシステム100は、交差する辺を、表面を区切る/画定するとして識別できる。ロボットシステム100は、第1の辺と、識別された補完的な辺との間の距離として、明瞭な辺の長さの測定値を決定できる。
ブロック1604において、ロボットシステム100は、最初の移動の前後に取得された画像を比較できる。言い換えると、ロボットシステム100は、第1の画像データと第2の画像データ、および/または、それらの処理結果を比較できる。例えば、ロボットシステム100は、分析領域922の視覚画像パターンを最初のMVR(例えば、図5BのMVR512)の対応する部分と比較できる。また、ロボットシステム100は、明瞭な辺の長さの測定値728を最初のMVRの寸法と比較できる。2組の長さを比較する時、ロボットシステム100は、所定のプロセス/方程式を使用して、最初の移動によって引き起こされたサイズの変化を補償できる。例えば、ロボットシステム100は、辺の長さの測定値728を、第1の画像データの物体の高さにマッピングできる。また、ロボットシステム100は、決定された長さの全てを実世界の距離にマッピングできる。
ロボットシステム100は、比較に少なくとも部分的に基づいて、最初のMVRの精度を表す状態を検出できる。言い換えると、ロボットシステム100は、第2の画像データの露出した辺に基づいて、最初のMVRを評価してよい。
決定ブロック1606において、ロボットシステム100は、予測した状態が存在するか否かを決定できる。ロボットシステム100は、上記のように、第2の画像データの1つまたは複数の部分および/または露出した辺が対応する部分に一致する(例えば、一致する視覚的外見、および/または、一致する寸法)時、予測した状態を検出できる。予測した状態が検出される時、図15の方法1500は、上記のように、図15のブロック1524に進み、タスクを実施/物体を登録できる。予測した状態が検出されない時、ロボットシステム100は、第2の画像データの1つまたは複数の部分および/または露出した辺が最初のMVRの対応する部分に一致しないことによる、予期せぬ状態を検出できる。
予期せぬ状態を検出することに基づいて、ロボットシステム100は、露出した辺の組の間の図12の物体分離部分1204を検索/識別してよい。例えば、ロボットシステム100は、他の辺/表面が識別されるまで、分析領域922の補完的な辺を越えて移動できる。識別した辺の間にあり、辺、および、辺に関連する表面と比較して、不連続な画像値を有する描かれた位置の組として、ロボットシステム100は、物体分離部分1204を識別できる。ある状況においては、物体分離部分1204は、2つの表面が異なる高さで互いに当接する幅の無い辺であってよい。他の状況においては、物体分離部分1204は、2つの表面間の横方向の分離に対応してよい。ロボットシステム100は、物体分離部分1204を使用して、異なる種類の予期せぬ状態を検出してよい。
決定ブロック1608において、ロボットシステム100は、かんだ状態が存在するか否かを判断できる。ロボットシステム100は、露出した辺および/または把持した表面を、所定の形状パターンおよび/または1つまたは複数の対応する規則と比較することに基づいて、かんだ状態を検出できる。例えば、ロボットシステム100は、把持した表面が線形/横の傾斜から外れている時、かんだ状態を検出できる。ロボットシステム100は、さらに、把持した表面の隣の/に当接する物体分離部分1204、および/または、物体分離部分1204の横方向の分離構成要素を識別することに基づいて、かんだ状態を検出できる。ロボットシステム100は、把持した表面の反対側の物体分離部分1204の隣の/に当接する他の表面(例えば、角度のある面、または、凹面)を識別することに基づいて、かんだ状態をさらに検出できる。言い換えると、ロボットシステム100は、把持した表面の辺(例えば、第1の辺)が、処理された画像で他の識別された表面の辺(例えば、第2の辺)と決定された把持部の位置との間にあり、物体分離部分1204が、2つの辺の間にある、または、2つの辺と一致する時、かんだ状態を検出できる。
ある実施形態においては、ロボットシステム100は、任意選択で第2の画像データの3D側面図描写等で、把持した辺と、把持した辺の真下の底辺とを識別できる。ロボットシステム100は、把持した辺の下で、且つ、物体分離部分1204を横方向に超える他の底辺を検索できる。ロボットシステム100は、第2の底辺に従い、さらに、第2の底辺がその下に位置する他の辺と交差する図12の接触点1206を検索できる。第2の底辺は、図12の隣の物体1202に対応してよい。従って、ロボットシステム100は、(1)接触点1206が存在する時、および/または、(2)把持した辺と第2の底辺とが横方向に重ならない時、かんだ状態を検出できる。重ならない辺同士は、さらに、異なる傾斜を有する2つの別個の底辺を識別することに対応し得る。
かんだ状態が検出される時、ブロック1610に示すように、ロボットシステム100は、(例えば、物体分離部分1204、および、それを超える)把持した表面の外側の部分をマスクしてよい。ロボットシステム100は、決定ブロック1612に示すように、比較プロセスを繰り返して、最初のMVRが把持した表面に一致するか否かを判断できる。ロボットシステム100は、ブロック1606に関して記載したのと同様に、第2の画像データのマスクされていない部分を最初のMVRと比較してよい。マスクされていない部分が上記のように最初のMVRと一致する時、方法1500は、ブロック1524および1526に関して前述したプロセスに進んで、タスクを行い、物体を登録できる。マスクされていない部分が、最初のMVRと一致しない時、方法は、ブロック1620に進み、対象物体の寸法が最初のMVRと一致しないと結論付けることができる。ロボットシステム100は、そうすると、MVRを調整できる、これについて、以下にさらに詳細に記載する。
そうでない場合(例えば、かんだ状態が検出されない時)、ロボットシステム100は、決定ブロック1614等で示したように、変形した物体の状態が存在するか否かを判断できる。ロボットシステム100は、上記のように、変形した物体の状態を検出できる。例えば、ロボットシステム100は、露出した辺が線形形状パターンから外れる、および/または、凹型/凸型パターンに一致する時、変形した物体の状態を検出できる。また、任意選択で、ロボットシステム100は、3D側面図描写において、底辺が、連続したままで、追跡したエンドエフェクタ位置から離れるように上方/下方に曲がっている時、変形した物体の状態を検出できる。
変形した物体の状態が検出される時、ロボットシステム100は、ブロック1618等に示すように、変形した辺の長さを計算できる。ロボットシステム100は、上記のように、図11Aの計算された物体寸法1118を決定してよい。例えば、ロボットシステム100は、変形した辺を選択し、選択した辺に平行な/と一致する第2の画像データ(例えば、3D上面図描写)の図11Bの分析ストリップ1112の1つまたは複数を導出できる。ロボットシステム100は、各分析ストリップ1112内に対応する分析位置(例えば、図11Bの分析区分1114の辺)をさらに導出できる。分析位置は、選択された露出した辺と平行な方向に沿って一定の距離だけ分離された3D点群で描写された(例えば、x−y座標対によって規定される)位置であってよい。分析位置の深度測定値を用いて、ロボットシステム100は、分析位置に対応する3D位置の隣り合う対の間の直線距離に対応する図11Aの区分長1116を計算できる。ロボットシステム100は、区分長1116(例えば、その合計)に基づいて、計算された物体寸法1118を導出できる。例えば、計算された物体寸法1118は、認識されていない物体を平らな表面に置いた時の辺(すなわち、上面の辺)の直線距離を表し得る。複数の分析ストリップ1112が利用できる時、ロボットシステム100は、分析ストリップ1112の合計の長さの平均として、計算された物体寸法1118を導出してよい。
決定ブロック1612において、ロボットシステム100は、計算された物体寸法1118を使用して、変形した把持した表面が最初のMVRに一致するか否かをチェックできる。例えば、ロボットシステム100は、計算された物体寸法1118(例えば、第2の画像データからの辺の長さの測定値)を最初のMVRの対応する寸法と比較できる。把持した表面の変形していない寸法および/または計算された物体寸法1118が、最初のMVRの対応する寸法に一致する時、方法1500は、上記のように、ブロック1524および1526のプロセスに進むことができる。そうでない場合、方法1500は、ブロック1620に関して以下に記載するプロセスに進むことができる。
決定ブロック1616において、ロボットシステム100は、蓋が開いた状態が存在するか否かを判断できる。ロボットシステム100は、上記のように、蓋が開いた状態を検出できる。例えば、ロボットシステム100は、把持した辺と底辺との間の他の辺が図13の開放角1304で、把持した辺と交差する時、蓋が開いた状態を検出できる。また、ロボットシステム100は、3D側面図描写で、底辺が、把持した辺と平行でない時、開放角1304で延びる時、および/または、把持した辺の横の端部を超えて延びる時、蓋が開いた状態を検出できる。さらに、ロボットシステム100は、決定された把持部の位置、底辺(すなわち、第2の辺)、および/または、2つの辺の間の追加の辺(すなわち、第1の辺)に従って、把持した辺を所定の形状パターンと比較することに基づいて、蓋が開いた状態を検出できる。例えば、蓋が開いた状態を検出することは、第2の辺と決定された把持部の位置との間にあり、第2の辺と開放角を形成する第1の辺を識別することと、第1の辺および第2の辺を所定の形状パターンと比較することを含み得る。さらに、ロボットシステム100は、追跡された把持部位置を超えて延びる部分が推定トルク‐アームベクトル608の方向に一致しない時等、図13の物体分離部分1204に横方向に不連続な部分が存在しないことを識別することに基づいて、および/または、図6の推定トルク‐アームベクトル608に従って、蓋が開いた状態を検出できる。
蓋が開いた状態が検出される時、ロボットシステム100は、ブロック1618等に示される、外挿された辺の長さを計算できる。ロボットシステム100は、上記のように、対象物体の全長に対応する計算した物体寸法を決定してよい。例えば、ロボットシステム100は、把持した辺(例えば、第1の辺)の図13の把持した長さ1302を決定できる。ロボットシステム100は、さらに、開放角1304に従って、図13の残りの長さ1310を測定できる。残りの長さ1310は、把持した辺、または、そのマッピングを超えて延びる角度のある辺(例えば、第1の辺と開放角を形成する第2の辺)の一部分の長さを表し得る。ロボットシステム100は、把持した長さ1302と残りの長さ1310とに従って、計算した物体寸法を決定できる。ある実施形態においては、ロボットシステム100は、把持した辺と底辺との間にある追加の辺に対応する辺の長さの測定値728に基づいて、計算した物体寸法を決定または検証できる。
ある実施形態においては、ロボットシステム100は、計算した物体寸法を使用して一致を決定できる。他の実施形態においては、方法1500は、ブロック1622に対応するプロセスに進むことができるが、このプロセスについては以下に詳細に記載する。ロボットシステム100が、特定の状態(例えば、かんだ状態、変形した物体の状態、および/または、蓋が開いた状態)を検出しない時、ロボットシステム100は、予期せぬ状態は、実際の物体と最初のMVRの間のサイズの不一致によって引き起こされたと判断して/結論付けてよい。
ブロック1622において、ロボットシステム100は、上記分析結果(すなわち、予測した状態および/または予期せぬ状態を検出すること)に従って、最終的なMVR(例えば、図7Bの更新されたデータ720)を生成すること等によって、MVRを調整できる。例えば、ロボットシステム100は、最初のMVRを調整して、その一部を取り除くこと、または、その隣に追加の部分を追加することによって、最終的なMVRを生成できる。ロボットシステム100は、第2の画像データの1つまたは複数の部分および/または露出した辺に従って、第1の画像データを使用することによって、最初のMVRを調整してよい。ロボットシステム100は、最初のMVRと、最初のMVRに隣り合う第1の画像データの追加の部分とを含む最終的なMVRを生成してよい。ロボットシステム100は、最終的なMVRを、その中の取り除いた部分を含まずに生成してよい。ロボットシステム100は、寸法が不一致の状態(例えば、辺の長さの測定値728が最初のMVRの対応する寸法に一致しない時)の辺の長さの測定値728、かんだ状態の把持した長さ1302、蓋が開いた状態の計算した物体寸法もしくは残りの長さ1310、および、第1の辺の長さ、および/または、変形した物体の状態の計算された物体寸法1118に従って、最初のMVRを調整してよい。
第1の画像データと第2の画像データの比較に基づいて、上記のように様々な状態を検出するロボットシステム100は、物体の検出、登録の精度を向上させる。検出された状態を通して、ロボットシステム100は、登録対象506の最初のMVRと実際の描写との不一致の原因/根拠を識別できる。従って、ロボットシステム100は、登録対象506を正確に表すように最初のMVRを調整できる。さらに、図9Cの分析領域922、図11Bの分析ストリップ1112、および/または、図11Bの分析区分1114を使用して辺を分析するロボットシステム100は、処理効率を向上させる。上記様々な態様は、コンピュータビジョン機構(例えば、図9Cの遮蔽された領域912を完全に識別/位置を突き止めるのに必要な画像分析ルーチン)を実施するのに必要なリソースを低減または取り除く近似を提供できる。
ある実施形態においては、ロボットシステムを動作させる方法は、スタート位置にある認識されていない物体の1つまたは複数の表面を表す第1の画像データを取得することと、最初の最小実行可能領域(MVR)であって、認識されていない物体の表面のうちの1つの最初の推定値を表す最初のMVRを、第1の画像データに基づいて、導出することと、所定の方向および所定の距離に従って、認識されていない物体を最初に移動させるための動作を実施することと、最初の移動の後、認識されていない物体を表す第2の画像データを取得することと、第2の画像データに描かれた露出した辺であって、第2の画像データに描かれた表面の推定される境界を表す露出した辺を識別することと、第2の画像データの露出した辺に基づいて、最初のMVRを評価することと、MVRを評価することに基づいて、最終的なMVRを生成することと、最初の移動の後、認識されていない物体に関するタスクを行うための動作を実施することと、タスクを実施しながら、新しい登録データであって、認識されていない物体の新しい記録を表し、且つ、最終的なMVRを含む新しい登録データを作成することを含んでよい。最初のMVRを評価することは、第2の画像データの露出した辺のうちの明瞭な辺であって、認識されていない物体の移動に使用された1つまたは複数のロボット構成要素によって遮蔽されていない物体の辺を表す明瞭な辺を識別することと、分析領域であって、遮蔽された領域とは別の第2の画像データの部分を表す分析領域を、明瞭な辺に基づいて決定することと、分析領域の補完的な辺であって、明瞭な辺と角度をなして交差する補完的な辺を識別することと、明瞭な辺および補完的な辺との長さの測定値を決定することと、第2の画像データからの辺の長さの測定値を最初のMVRの寸法と比較することとを含んでよい。方法は、最初の移動のための動作の実施に基づいて、且つ、タスクを行うための動作の実施に基づいて、実世界の構成要素の位置を追跡することをさらに含んでよく、ここで、実世界の構成要素の位置は、認識されていない物体を把持するエンドエフェクタと、エンドエフェクタに動作可能に結合されたロボットアームとの現在の姿勢と、実施中のロボットアームの位置決めを記載し、明瞭な辺を識別することは、第2の画像データの露出した辺は、追跡された構成要素の位置から閾距離の外側にあると判断することを含んでよい。
ある実施形態においては、最初のMVRを評価することは、第2の画像データの1つまたは複数の部分および/または露出した辺が最初のMVRの対応する部分に一致する時、予測した状態を検出することを含んでよく、最終的なMVRを生成することは、予測した状態に基づいて、最初のMVRを最終的なMVRとして決定することを含んでよい。最初のMVRを評価することは、第2の画像データの1つまたは複数の部分および/または露出した辺が最初のMVRの対応する部分と一致しない場合、予期せぬ状態を検出することを含んでよく、最終的なMVRを生成することは、第2の画像データの1つまたは複数の部分および/または露出した辺に従って、第1の画像データを使用して、最初のMVRを調整することを含んでよい。最初のMVRを評価することは、第2の画像データの露出した辺のうちの1つの辺の長さの測定値を決定することをさらに含んでよく、最終的なMVRを生成することは、辺の長さの測定値が最初のMVRの対応する寸法に一致しない時、辺の長さの測定値に従って、最初のMVRを調整することを含む。
あるいは、または、追加で、最初のMVRを評価することは、露出した辺を所定の形状パターンと比較することに基づいて、変形した物体の状態を含む予期せぬ状態を検出することと、変形した物体の状態を検出することに基づいて、計算した物体寸法を決定することを含んでよく、計算した物体寸法を決定することは、所定の形状パターンとの比較に基づいて、露出した辺の1つを選択することと、選択された露出した辺に一致する第2の画像データであって、その中に描かれた位置の深度測定値を有する三次元(3D)点群である第2の画像データで分析ストリップを導出することと、分析ストリップ内の分析位置であって、選択された露出した辺に平行な方向に沿って一定の距離だけ離れた3D点群で描かれた位置である分析位置を導出することと、区分長であって、それぞれ、分析位置に対応する隣り合う3D位置の対の間の直線距離を表す区分長を、分析位置に関連付けられた深度測定値に基づいて、計算することと、計算した物体寸法であって、平らな表面に置かれた時の認識されていない物体の辺の直線距離の推定値を表す計算した物体寸法を、区分長に基づいて、導出することと、を含んでよく、最終的なMVRを生成することは、計算した物体寸法に従って、最初のMVRを調整することを含んでよい。最初のMVRを評価することは、露出した辺を所定の形状パターンと比較することと、第1の辺と第2の辺の間の物体分離部分を識別することであって、第1の辺は、第2の辺と決定された把持部の位置との間にある、物体分離部分を識別することとに基づいて、かんだ状態を含む予期せぬ状態を検出することと、かんだ状態が検出された時、第1の辺の長さの測定値を決定することと、辺の長さの測定値に従って、最初のMVRを第2のMVRの1つまたは複数の部分と比較することを含んでよい。最初のMVRを評価することは、また、第1の辺と第2の辺を識別することであって、第1の辺は、第2の辺と決定された把持部の位置との間にあり、第2の辺と開放角を形成する、第1の辺と第2の辺を識別することと、第1の辺と第2の辺とを所定の形状パターンと比較することとに基づいて、蓋が開いた状態を含む予測した状態を検出することと、蓋が開いた状態を検出することに基づいて、計算した物体寸法を決定することとを含んでよく、計算した物体寸法を決定することは、第1の辺の長さを決定することと、第2の辺の第1の辺を超えて延びる部分を表す残りの長さを測定することと、を含んでよく、最終的なMVRを生成することは、残りの長さと第1の辺の長さとに従って、最初のMVRを調整することを含んでよい。ある実施形態においては、認識されていない物体を最初に移動させるための動作を実施することは、最初のMVR内の把持位置の上部にエンドエフェクタを配置する位置決め計画を生成することと、位置決めのコマンドを生成した後、中間画像データを取得することと、中間画像データの付属品遮蔽部分であって、エンドエフェクタおよび/またはエンドエフェクタに取り付けられたロボットアームに関連付けられた追跡されていない付属品に対応する所定のパターンを描く中間画像データの部分を表す付属品遮蔽部分を識別することと、調整計画であって、エンドエフェクタを、把持位置から離れた1つまたは複数の位置にエンドエフェクタを取り除き、次に、把持位置の上にエンドエフェクタを再配置する調整計画を、付属品遮蔽部分の識別に基づいて生成することと、を含んでよい。
ある実施形態においては、ロボットシステムは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに接続された、少なくとも1つのメモリデバイスとを含んでよく、メモリデバイスは、スタート位置にある認識されていない物体を表す第1の画像データを取得することと、最初の最小実行可能領域(MVR)であって、認識されていない物体の表面の最初の推定値を表す最初のMVRを、第1の画像データに基づいて導出することと、最初の移動の後、認識されていない物体を表す第2の画像データを取得することと、第2の画像データに基づいて最初のMVRを評価することと、認識されていない物体の新しい記録を表す新しい登録データであって、最初のMVRまたはその導出を含む新しい登録データを、評価に従って作成することのための、プロセッサによって実行可能な命令を記憶する。最初のMVRを評価することは、第2の画像データに描かれた露出した辺であって、第2の画像データに描かれた表面の推定された境界を表す露出した辺を識別することと、露出した辺の長さの測定値を決定することと、辺の長さの測定値が最初のMVRの寸法に一致しない時、調整したMVRであって、辺の長さの測定値に従って、画像データを用いて導出される調整したMVRを導出することとに基づいてよい。新しい登録データは、辺の長さの測定値が最初のMVRの寸法に一致しない時、調整したMVRを含むように作成されてよい。最初のMVRを評価することは、第1の画像データに描かれた露出した辺であって、第2の画像データに描かれた表面の推定された境界を表す露出した辺を識別することと、露出した辺の対が交差する露出した角部を識別することと、露出した角部の数が所定の閾値を超える時、直接登録状態を検出することとに基づき、新しい登録データは、直接登録状態を検出することに基づいて、最初のMVRを含むように作成されてよい。さらに、命令は、上記のように、少なくとも1つのプロセッサを介して、方法の1つまたは複数の態様を実施するためであってよい。
ある実施形態においては、有形非一時的コンピュータ可読媒体は、プロセッサ命令を記憶してよく、プロセッサ命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに方法を行わせる。方法は、スタート位置にある認識されていない物体を表す第1の画像データを取得することと、最初の最小実行可能領域(MVR)であって、認識されていない物体の表面の最初の推定値を表す最初のMVRを第1の画像データに基づいて導出することと、所定の方向および所定の距離に従って認識されていない物体を最初に移動させる動作を実施することと、最初の移動動作の後、認識されていない物体を表す第2の画像データを取得することと、第2の画像データに基づいて最初のMVRを評価することと、認識されていない物体の新しい記録を表す新しい登録データであって、最初のMVRまたはその導出を含む新しい登録データを、評価に従って作成することと、を含んでよい。認識されていない物体を最初に移動させる動作を実施することは、エンドエフェクタを所定の高さに持ち上げながら、または、持ち上げた後、エンドエフェクタを横方向に移動させる動作、および/または、エンドエフェクタを垂直軸を中心に回転させる動作とを実施することを含んでよい。命令は、実施されると、最初のMVRを評価することに少なくとも部分的に基づいて、再把持状態を検出することと、再把持状態を検出することに基づいて、認識されていない物体を再把持する動作を実施することとをさらに含む方法を行ってよい。1つまたは複数の実施形態において、最初のMVRを評価することは、第2の画像データに描かれた露出した辺の長さの測定値を決定することを含んでよく、再把持状態を検出することは、辺の長さの測定値が最初のMVRの寸法を所定の限度だけ超える時、再把持状態を検出することを含んでよく、方法は、最初のMVRの中央部分を含む最初の把持位置であって、最初の持ち上げ動作に対応する最初の把持位置を導出することと、辺の長さの測定値が最初のMVRの寸法を超える時、調整したMVRを導出することと、調整したMVRの中央部分を含む調整した把持位置であって、再把持動作に対応する調整した把持位置を導出することと、をさらに含んでよい。さらに、プロセッサ命令は、上記1つまたは複数の実施形態に記載した方法の1つまたは複数の態様を実施するためであってよい。
結論
開示の技術の実施例の上記の詳細な説明は、網羅的なものではなく、また、開示の技術を上記特定の形態に制限することを意図してはいない。開示の技術の具体的な例を説明の目的で上述したが、当業者であれば認識するように、様々な同等の修正が、開示の技術の範囲内で可能である。例えば、プロセスまたはブロックを所与の順序で提示したが、代替の実施態様は、異なる順序で、ステップを有するルーチンを行ってよい、または、ブロックを有するシステムを採用してよい、また、一部のプロセスもしくはブロックは、削除、移動、追加、さらに分割、組み合わせ、および/または、修正されて、代替またはサブコンビネーションを提供してよい。これらのプロセスまたはブロックは、それぞれ、様々な異なる方法で実施されてよい。また、プロセスまたはブロックは、順次行われるとして示されている場合があるが、これらのプロセスまたはブロックは、代わりに、並行に実行もしくは実施されてよい、または、異なる時に行われてよい。さらに、本明細書に記載する具体的な数はいずれも、例に過ぎず、代替実施態様は、異なる値または範囲を採用してよい。
これらの変更および他の変更は、上記発明を実施するための形態を考慮して、開示の技術に対して行われてよい。発明を実施するための形態が、開示の技術と、企図したベストモードとの一定の例を記載したが、開示の技術は、上記記載で本文にどんなに詳細に書かれていても、多くの方法で実践できる。システムの詳細は、特定の実施態様で大きく変わり得るが、それでも、本明細書に開示の技術に含まれる。上記のように、開示の技術の一定の特徴または態様を記載する時に使用される特定の用語は、その用語が、その用語が関連付けられた開示の技術のいずれの具体的な特性、特徴、または、態様に制限されるとして本明細書で再定義されていることを示唆しているととらえるべきではない。従って、発明は、添付の請求項によって以外は制限されない。一般に、以下の請求項で使用される用語は、上記発明を実施するための形態の項が明示的にその用語を定義していない限り、開示の技術を明細書に開示の具体的な例に制限するとみなすべきではない。
発明の一定の態様を一定の請求項の形で以下に記載するが、出願者は、発明の様々な態様を任意の数の請求項の形態で企図する。従って、出願者は、本出願または継続出願のいずれにおいても、本出願を提出後、追加の請求項を追求する権利を保持して、このような追加の請求項の形を追求する。

Claims (20)

  1. ロボットシステムを動作させる方法であって、
    スタート位置にある認識されていない物体の1つまたは複数の表面を表す第1の画像データを取得することと、
    前記認識されていない物体の前記表面のうちの1つの最初の推定値を表す最初の最小実行可能領域(MVR)を、前記第1の画像データに基づいて、導出することと、
    所定の方向および所定の距離に従って、前記認識されていない物体を最初に移動させるための動作を実施することと、
    前記最初の移動の後、前記認識されていない物体を表す第2の画像データを取得することと、
    前記第2の画像データに描かれており、且つ、前記第2の画像データに描かれた前記表面の推定された境界を表す露出した辺を識別することと、
    前記第2の画像データの前記露出した辺に基づいて、前記最初のMVRを評価することと、
    前記最初のMVRを評価することに基づいて、最終的なMVRを生成することと、
    前記最初の移動の後、前記認識されていない物体に関するタスクを行うための動作を実施することと、
    前記タスクを実施しながら、前記認識されていない物体の新しい記録を表し、且つ、前記最終的なMVRを含む新しい登録データを作成することと、
    を含む、前記方法。
  2. 前記最初のMVRを評価することは、
    前記第2の画像データの前記露出した辺のうち、前記認識されていない物体の移動に使用される1つまたは複数のロボット構成要素によって遮蔽されない物体の辺を表す明瞭な辺を識別することと、
    遮蔽された領域とは別の前記第2の画像データの一部を表す分析領域を、前記明瞭な辺に基づいて、決定することと、
    前記明瞭な辺と角度をなして交差する前記分析領域の補完的な辺を識別することと、
    前記明瞭な辺および前記補完的な辺の長さの測定値を決定することと、
    前記第2の画像データからの前記辺の長さの測定値を前記最初のMVRの寸法と比較することと、
    を含む、請求項1に記載の方法。
  3. 前記最初の移動のための前記動作の実施に基づいて、且つ、前記タスクを行うための前記動作の実施に基づいて、前記認識されていない物体を把持するエンドエフェクタと、前記エンドエフェクタに動作可能に結合されたロボットアームとの現在の姿勢と、前記実施中の前記ロボットアームの位置決めを記述する実世界の構成要素の位置を追跡することをさらに含み、
    前記明瞭な辺を識別することは、前記第2の画像データの前記露出した辺が前記追跡された構成要素の位置から閾距離の外側であると判断することを含む、
    請求項2に記載の方法。
  4. 前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分に一致する時、予測した状態を検出することを含み、
    前記最終的なMVRを生成することは、前記予測した状態に基づいて、前記最初のMVRを前記最終的なMVRとして決定することを含む、
    請求項1に記載の方法。
  5. 前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分に一致しない時、予期せぬ状態を検出することを含み、
    前記最終的なMVRを生成することは、前記第2の画像データの前記1つまたは複数の部分および/または前記露出した辺に従って、前記第1の画像データを用いて、前記最初のMVRを調整することを含む、
    請求項1に記載の方法。
  6. 前記最初のMVRを評価することは、前記第2の画像データの前記露出した辺のうちの1つの辺の長さの測定値を決定することを含み、
    前記最終的なMVRを生成することは、前記辺の長さの測定値が、前記最初のMVRの対応する寸法に一致しない時、前記辺の長さの測定値に従って、前記最初のMVRを調整することを含む、
    請求項5に記載の方法。
  7. 前記最初のMVRを評価することは、
    前記露出した辺を所定の形状パターンと比較することに基づいて、変形した物体の状態を含む前記予期せぬ状態を検出することと、
    前記変形した物体の状態を検出することに基づいて、計算した物体寸法を決定することであって、 前記所定の形状パターンとの前記比較に基づいて、前記露出した辺のうちの1つを選択することと、
    前記選択された露出した辺と一致する前記第2の画像データであって、その中に描かれた位置の深度測定値を有する三次元の(3D)点群である前記第2の画像データで、分析ストリップを導出することと、
    前記分析ストリップ内の位置であり、且つ、前記選択された露出した辺と平行な方向に沿って一定の距離だけ離れた前記3D点群で描かれた位置である分析位置を導出することと、
    それぞれ、前記分析位置に対応する隣り合う3D位置の対の間の直線距離を表す区分長を、前記分析位置に関連付けられた深度測定値に基づいて計算することと、
    平らな表面に置いた時の前記認識されていない物体の辺の直線距離の推定値を表す計算した物体寸法を、前記区分長に基づいて、導出することと、
    を含む、前記計算した物体寸法を決定することと、
    を含み、
    前記最終的なMVRを生成することは、前記計算した物体寸法に従って、前記最初のMVRを調整することを含む、
    請求項5に記載の方法。
  8. 前記最初のMVRを評価することは、
    かんだ状態を含む前記予期せぬ状態を、
    前記露出した辺を所定の形状パターンと比較することと、
    第1の辺と第2の辺の間の物体分離部分であって、前記第1の辺は、前記第2の辺と、決定された把持部位置との間にある、前記物体分離部分を識別することと、
    に基づいて、検出することと、
    前記かんだ状態が検出される時、前記第1の辺の長さの測定値を決定することと、
    前記辺の長さの測定値に従って、前記最初のMVRを、前記第2のMVRの1つまたは複数の部分と比較することと、
    を含む、請求項5に記載の方法。
  9. 前記最初のMVRを評価することは、
    蓋が開いた状態を含む前記予測した状態を、
    第1の辺と第2の辺を識別することであって、前記第1の辺は、前記第2の辺と決定された把持部の位置との間にあり、前記第2の辺と開放角を成す、前記第1の辺と前記第2の辺を識別することと、
    前記第1の辺と前記第2の辺とを所定の形状パターンと比較することとに基づいて、
    検出することと、
    前記蓋が開いた状態を検出することに基づいて、計算した物体寸法を決定することであって、
    前記第1の辺の長さを決定することと、
    前記第2の辺の前記第1の辺を超えて延びる部分を表す残りの長さを測定することと、
    を含む、前記計算した物体寸法を決定することと、
    を含み、
    前記最終的なMVRを生成することは、前記残りの長さと前記第1の辺の前記長さとに従って、前記最初のMVRを調整することを含む、
    請求項5に記載の方法。
  10. 前記認識されていない物体を最初に移動させるための前記動作を実施することは、
    前記最初のMVR内の把持位置の上にエンドエフェクタを配置する位置決め計画を生成することと、
    前記位置決めのコマンドを生成した後、中間画像データを取得することと、
    前記エンドエフェクタ、および/または、前記エンドエフェクタに取り付けられたロボットアームに関連付けられた追跡されていない付属品に対応する所定のパターンを描く中間画像データの部分を表す付属品遮蔽部分を識別することと、
    前記エンドエフェクタを、前記把持位置から離れた1つまたは複数の位置に取り除き、次に、前記エンドエフェクタを前記把持位置の上に再配置するための調整計画を、前記付属品遮蔽部分の前記識別に基づいて生成することと、
    を含む、請求項1に記載の方法。
  11. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに接続された少なくとも1つのメモリデバイスとを含むロボットシステムであって、前記メモリデバイスは、
    スタート位置にある認識されていない物体の1つまたは複数の表面を表す第1の画像データを取得することと、
    最初の最小実行可能領域(MVR)であって、前記認識されていない物体の前記表面のうちの1つの最初の推定値を表す前記最初のMVRを、前記第1の画像データに基づいて導出することと、
    所定の方向および所定の距離に従って前記認識されていない物体を最初に移動させる動作を実施することと、
    前記最初の移動の後、前記認識されていない物体を表す第2の画像データを取得することと、
    前記第2の画像データに描かれており、且つ、前記第2の画像データに描かれた前記表面の推定された境界を表す露出した辺を識別することと、
    前記第2の画像データの前記露出した辺に基づいて、前記最初のMVRを評価すること
    前記最初のMVRを評価することに基づいて、最終的なMVRを生成することと、
    前記最初の移動の後、前記認識されていない物体のタスクを行うための動作を実施することと、
    前記タスクを実施しながら、前記認識されていない物体に関する新しい記録を表し、且つ、前記最終的なMVRを含む新しい登録データを作成することと、
    のために、前記プロセッサによって実行可能な命令を記憶する、
    ロボットシステム。
  12. 前記少なくとも1つのメモリデバイスは、
    前記第2の画像データの前記露出した辺のうち、前記認識されていない物体を移動させるために使用される1つまたは複数のロボット構成要素によって遮蔽されていない物体の辺を表す明瞭な辺を識別することと、
    遮蔽された領域とは別の前記第2の画像データの部分を表す分析領域を、前記明瞭な辺に基づいて決定することと、
    前記明瞭な辺と角度をなして交差する前記分析領域の補完的な辺を識別することと、
    前記明瞭な辺および前記補完的な辺の長さの測定値を決定することと、
    前記第2の画像データからの前記辺の長さの測定値を前記最初のMVRの寸法と比較すること、
    の命令を含む、
    請求項11に記載のロボットシステム。
  13. 前記少なくとも1つのメモリデバイスは、前記最初のMVRを評価すること、および、前記最終的なMVRを生成することのための命令を含み、
    前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分と一致する時、予測した状態を検出することを含み、
    前記最終的なMVRを生成することは、前記予測した状態に基づいて、前記最初のMVRを前記最終的なMVRとして決定することを含む、
    請求項11に記載のロボットシステム。
  14. 前記少なくとも1つのメモリデバイスは、前記最初のMVRを評価すること、および、前記最終的なMVRを生成することのための命令を含み、
    前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分に一致しない時、予期せぬ状態を検出することを含み、
    前記最終的なMVRを生成することは、前記第2の画像データの前記1つまたは複数の部分および/または前記露出した辺に従って、前記第1の画像データを使用して前記最初のMVRを調整することを含む、
    請求項11に記載のロボットシステム。
  15. 前記少なくとも1つのメモリデバイスは、
    前記最初のMVR内の把持位置の上にエンドエフェクタを配置する位置決め計画を生成することと、
    前記位置決めのコマンドを生成後、中間画像データを取得することと、
    前記エンドエフェクタおよび/または前記エンドエフェクタに取り付けられたロボットアームに関連付けられた追跡されていない付属品に対応する所定のパターンを描く中間画像データの部分を表す付属品遮蔽部分を識別することと、
    前記エンドエフェクタを前記把持位置から離れた1つまたは複数の位置に取り除いて、次に、前記エンドエフェクタを前記把持位置の上に再配置する調整計画を、前記付属品遮蔽部分の前記識別に基づいて生成することと、
    のための命令を含む、
    請求項11に記載のロボットシステム。
  16. プロセッサ命令を記憶した有形非一時的コンピュータ読取可能な記憶媒体であって、前記プロセッサ命令は、1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、方法を行わせ、前記方法は、
    スタート位置にある認識されていない物体の1つまたは複数の表面を表す第1の画像データを取得することと、
    前記認識されていない物体の前記表面のうちの1つの最初の推定値を表す最初の最小実行可能領域(MVR)を、前記第1の画像データに基づいて導出することと、
    所定の方向および所定の距離に従って、前記認識されていない物体を最初に移動させるための動作を実施することと、
    前記最初の移動の後、前記認識されていない物体を表す第2の画像データを取得することと、
    前記第2の画像データに描かれており、且つ、前記第2の画像データに描かれた前記表面の推定された境界を表す露出した辺を識別することと、
    前記第2の画像データの前記露出した辺に基づいて、前記最初のMVRを評価すること、
    前記最初のMVRを評価することに基づいて、最終的なMVRを生成することと、
    前記最初の移動の後、前記認識されていない物体のタスクを行うための動作を実施することと、
    前記タスクを実施しながら、前記認識されていない物体の新しい記録を表し、且つ、前記最終的なMVRを含む新しい登録データを作成することと、
    を含む、
    前記有形非一時的コンピュータ読取可能な記憶媒体。
  17. 前記方法は、
    前記第2の画像データの前記露出した辺のうち、前記認識されていない物体を移動するのに使用される1つまたは複数のロボット構成要素によって遮蔽されていない物体の辺を表す明瞭な辺を識別することと、
    遮蔽された領域とは別の前記第2の画像データの部分を表す分析領域を、前記明瞭な辺に基づいて決定することと、
    前記明瞭な辺と角度をなして交差する前記分析領域の補完的な辺を識別することと、
    前記明瞭な辺および前記補完的な辺の長さの測定値を決定することと、
    前記第2の画像データからの前記辺の長さの測定値を前記最初のMVRの寸法と比較することと、
    をさらに含む、前記方法を行わせるプロセッサ命令を有する請求項16に記載の有形非一時的コンピュータ読取可能な記憶媒体。
  18. 前記方法は、前記最初のMVRを評価することと、前記最終的なMVRを生成することをさらに含み、
    前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分に一致する時、予測した状態を検出することと、
    前記最終的なMVRを生成することは、前記予測した状態に基づいて、前記最初のMVRを前記最終的なMVRとして決定することを含む、
    プロセッサ命令に前記方法を行わせる請求項16に記載の有形非一時的コンピュータ読取可能な記憶媒体。
  19. 前記方法は、前記最初のMVRを評価することと、前記最終的なMVRを生成することとをさらに含み、
    前記最初のMVRを評価することは、前記第2の画像データの1つまたは複数の部分および/または前記露出した辺が前記最初のMVRの対応する部分に一致しない時、予期せぬ状態を検出することを含み、
    前記最終的なMVRを生成することは、前記第2の画像データの前記1つまたは複数の部分および/または前記露出した辺に従って、前記第1の画像データを使用して、前記最初のMVRを調整することを含む、
    プロセッサ命令に前記方法を行わせる請求項16に記載の有形非一時的コンピュータ読取可能な記憶媒体。
  20. 前記方法は、
    前記最初のMVR内の把持位置の上にエンドエフェクタを配置する位置決め計画を生成することと、
    前記位置決めのコマンドを生成後、中間画像データを取得することと、
    前記エンドエフェクタおよび/または前記エンドエフェクタに取り付けられたロボットアームに関連付けられた追跡されていない付属品に対応する所定のパターンを描く中間画像データの部分を表す付属品遮蔽部分を識別することと、
    前記エンドエフェクタを、前記把持位置から離れた1つまたは複数の位置に取り除き、次に、前記エンドエフェクタを前記把持位置の上に再配置する調整計画を、前記付属品遮蔽部分の前記識別に基づいて生成することと、
    をさらに含む、プロセッサ命令に前記方法を行わせる請求項16に記載の有形非一時的コンピュータ読取可能な記憶媒体。
JP2020204672A 2018-10-30 2020-12-10 自動物体検出機構を備えたロボットシステム、および、その動作方法 Active JP7352260B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023145484A JP7555081B2 (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862752756P 2018-10-30 2018-10-30
US62/752,756 2018-10-30
US201962852963P 2019-05-24 2019-05-24
US62/852,963 2019-05-24
JP2020501166A JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020501166A Division JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023145484A Division JP7555081B2 (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法

Publications (3)

Publication Number Publication Date
JP2021039795A true JP2021039795A (ja) 2021-03-11
JP2021039795A5 JP2021039795A5 (ja) 2022-12-05
JP7352260B2 JP7352260B2 (ja) 2023-09-28

Family

ID=70327497

Family Applications (15)

Application Number Title Priority Date Filing Date
JP2019133517A Active JP6704154B2 (ja) 2018-10-30 2019-07-19 自動パッケージ登録システム、デバイス、および方法
JP2020516651A Active JP6822719B2 (ja) 2018-10-30 2019-10-29 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2020515142A Active JP6822718B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020514759A Active JP6820044B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020514750A Active JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020501166A Active JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020072681A Active JP7411932B2 (ja) 2018-10-30 2020-04-15 自動パッケージ登録システム、デバイス、および方法
JP2020204672A Active JP7352260B2 (ja) 2018-10-30 2020-12-10 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020212616A Active JP7571951B2 (ja) 2018-10-30 2020-12-22 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020213054A Pending JP2021051797A (ja) 2018-10-30 2020-12-23 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020216162A Active JP7466150B2 (ja) 2018-10-30 2020-12-25 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020216438A Active JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A Active JP7548516B2 (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Active JP7555081B2 (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2023212474A Pending JP2024023692A (ja) 2018-10-30 2023-12-15 自動パッケージ登録システム、デバイス、および方法

Family Applications Before (7)

Application Number Title Priority Date Filing Date
JP2019133517A Active JP6704154B2 (ja) 2018-10-30 2019-07-19 自動パッケージ登録システム、デバイス、および方法
JP2020516651A Active JP6822719B2 (ja) 2018-10-30 2019-10-29 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2020515142A Active JP6822718B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020514759A Active JP6820044B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020514750A Active JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020501166A Active JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020072681A Active JP7411932B2 (ja) 2018-10-30 2020-04-15 自動パッケージ登録システム、デバイス、および方法

Family Applications After (7)

Application Number Title Priority Date Filing Date
JP2020212616A Active JP7571951B2 (ja) 2018-10-30 2020-12-22 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020213054A Pending JP2021051797A (ja) 2018-10-30 2020-12-23 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020216162A Active JP7466150B2 (ja) 2018-10-30 2020-12-25 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020216438A Active JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A Active JP7548516B2 (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Active JP7555081B2 (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2023212474A Pending JP2024023692A (ja) 2018-10-30 2023-12-15 自動パッケージ登録システム、デバイス、および方法

Country Status (6)

Country Link
US (12) US10703584B2 (ja)
JP (15) JP6704154B2 (ja)
KR (3) KR20240042157A (ja)
CN (11) CN111113492A (ja)
DE (6) DE112019000125B4 (ja)
WO (6) WO2020091846A1 (ja)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9393686B1 (en) * 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
CN110893999A (zh) * 2018-09-12 2020-03-20 泰科电子(上海)有限公司 图像采集系统和图像采集方法
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
DE112019000125B4 (de) 2018-10-30 2021-07-01 Mujin, Inc. Systeme, vorrichtungen und verfahren zur automatisierten verpackungsregistrierung
US11224951B2 (en) * 2018-12-21 2022-01-18 The Boeing Company Method and apparatus for single-sided clamp-up
US10549928B1 (en) 2019-02-22 2020-02-04 Dexterity, Inc. Robotic multi-item type palletizing and depalletizing
US11741566B2 (en) * 2019-02-22 2023-08-29 Dexterity, Inc. Multicamera image processing
US11046519B2 (en) 2019-02-25 2021-06-29 Rehrig Pacific Company Delivery system
EP3702985A1 (en) * 2019-02-28 2020-09-02 Accenture Global Solutions Limited Augmented reality enabled cargo loading optimization
US11023763B2 (en) * 2019-03-19 2021-06-01 Boston Dynamics, Inc. Detecting boxes
US11069073B2 (en) * 2019-07-23 2021-07-20 Advanced New Technologies Co., Ltd. On-shelf commodity detection method and system
US11389965B2 (en) * 2019-07-26 2022-07-19 Mujin, Inc. Post-detection refinement based on edges and multi-dimensional corners
US10906188B1 (en) 2019-10-25 2021-02-02 Dexterity, Inc. Singulation of arbitrary mixed items
SG10201913056VA (en) * 2019-12-23 2021-04-29 Sensetime Int Pte Ltd Method and apparatus for obtaining sample images, and electronic device
US11040836B1 (en) * 2020-01-24 2021-06-22 Becton Dickinson Rowa Germany Gmbh Device and method for separating piece goods
US11951636B1 (en) * 2020-01-28 2024-04-09 Embodied Intelligence Inc. Methods of collecting data through test interactions
US11403764B2 (en) * 2020-02-14 2022-08-02 Mujin, Inc. Method and computing system for processing candidate edges
US11443449B2 (en) * 2020-02-26 2022-09-13 Zebra Technologies Corporation Three-dimensional (3D) imaging systems and methods for virtual grading of package walls in commercial trailer loading
CA3115442A1 (en) 2020-04-20 2021-10-20 Rehrig Pacific Company Camera enabled portal
CN113658205B (zh) * 2020-06-04 2022-08-12 牧今科技 用于执行或促进物理边缘检测的方法和计算系统
CN114096331A (zh) * 2020-06-04 2022-02-25 牧今科技 用于执行或促进物理边缘检测的方法和计算系统
US12062182B2 (en) 2020-06-04 2024-08-13 Mujin, Inc. Method and computing system for performing or facilitating physical edge detection
AT524101A1 (de) * 2020-07-27 2022-02-15 Tgw Logistics Group Gmbh System und Verfahren zur Erfassung einer Warenanzahl in einem Ladungsträger
JP7467268B2 (ja) 2020-07-30 2024-04-15 グローリー株式会社 計数装置、計数システム、計数方法、およびプログラム
JP7395451B2 (ja) * 2020-09-16 2023-12-11 株式会社東芝 ハンドリング装置、処理装置、コントローラ及びプログラム
CN112157671A (zh) * 2020-09-24 2021-01-01 中国标准化研究院 一种用于电子商务产品质量抽检的包裹取料机械手及方法
CN111928790B (zh) * 2020-10-16 2020-12-29 成都裕鸢航空零部件制造有限公司 一种基于互联网的航空零部件厚度计量装置及计量方法
CN112276956B (zh) * 2020-10-30 2022-05-17 北京市商汤科技开发有限公司 一种物品配送方法、装置、设备以及存储介质
JP7466435B2 (ja) * 2020-11-24 2024-04-12 川崎重工業株式会社 ロボット及び物品寸法取得方法
CN113058238B (zh) * 2020-12-05 2021-12-17 林周容 篮球内胎自动贴片系统及方法
CN112936243A (zh) * 2021-01-22 2021-06-11 广东电网有限责任公司广州供电局 基于二维码扫描的开关柜型号识别和定位装置
DE102021104773B3 (de) 2021-02-26 2022-03-17 IGZ Ingenieurgesellschaft für logistische Informationssysteme mbH Kommissionierroboter mit optimierter trajektorie und verfahren zum steuern eines kommissionierroboters
WO2022190102A1 (en) * 2021-03-10 2022-09-15 Aquabot Ltd. System and method for identifying or acquiring data corresponding to a handled item
DE102021202340A1 (de) 2021-03-10 2022-09-15 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum steuern eines roboters zum aufnehmen und inspizieren eines objekts und robotersteuereinrichtung
US20220289502A1 (en) * 2021-03-15 2022-09-15 Dexterity, Inc. Adaptive robotic singulation system
US12129132B2 (en) 2021-03-15 2024-10-29 Dexterity, Inc. Singulation of arbitrary mixed items
EP4313504A1 (en) * 2021-03-26 2024-02-07 Boston Dynamics, Inc. Dynamic mass estimation methods for an integrated mobile manipulator robot
JP2022157884A (ja) * 2021-03-31 2022-10-14 セイコーエプソン株式会社 ロボットの制御方法、ロボットシステムおよびロボット制御プログラム
CN113510697B (zh) * 2021-04-23 2023-02-14 知守科技(杭州)有限公司 机械手定位方法、装置、系统、电子装置和存储介质
US20220362936A1 (en) * 2021-05-14 2022-11-17 Intelligrated Headquarters, Llc Object height detection for palletizing and depalletizing operations
CN115643800A (zh) * 2021-05-18 2023-01-24 牧今科技 用于物体大小测量的机器人系统
US12053890B2 (en) * 2021-06-03 2024-08-06 Intrinsic Innovation Llc Robotic workspace introspection via force feedback
US20230027984A1 (en) 2021-07-21 2023-01-26 Mujin, Inc. Robotic system with depth-based processing mechanism and methods for operating the same
US20230041343A1 (en) 2021-08-09 2023-02-09 Mujin, Inc. Robotic system with image-based sizing mechanism and methods for operating the same
JP6964917B1 (ja) * 2021-08-10 2021-11-10 リンクウィズ株式会社 計測システム、計測方法、プログラム
WO2023023369A2 (en) * 2021-08-19 2023-02-23 Rehrig Pacific Company Pallet wrapper and imaging system
US11823440B2 (en) 2021-08-19 2023-11-21 Rehrig Pacific Company Imaging system with unsupervised learning
US20230070495A1 (en) * 2021-09-07 2023-03-09 Mujin, Inc. Robotic gripper assemblies for openable object(s) and methods for picking objects
AT525383A1 (de) * 2021-09-07 2023-03-15 Knapp Ag System zur Vereinzelung und Identifizierung von Artikeln
WO2023054539A1 (ja) * 2021-09-28 2023-04-06 京セラ株式会社 情報処理装置、ロボットコントローラ、情報処理システム、及び情報処理方法
IT202100025490A1 (it) * 2021-10-07 2023-04-07 Bosso S R L Magazzino automatico
US20230115849A1 (en) * 2021-10-11 2023-04-13 Mazor Robotics Ltd. Systems and methods for defining object geometry using robotic arms
CN115246547B (zh) * 2021-10-21 2023-09-12 梅卡曼德(北京)机器人科技有限公司 垛型续码方法、装置、计算设备及计算机存储介质
US12030191B2 (en) * 2021-10-28 2024-07-09 Ubkang (Qingdao) Technology Co., Ltd. Vision-guided picking and placing method, mobile robot and computer-readable storage medium
CA3181434A1 (en) 2021-11-01 2023-05-01 Rehrig Pacific Company Delivery system
AT525778B1 (de) * 2021-11-09 2023-11-15 Tgw Logistics Group Gmbh Verfahren und Vorrichtung zum Entnehmen eines Ladeguts von einem Stapel
EP4429984A1 (en) * 2021-11-10 2024-09-18 Labo, Inc. Automated product unloading, handling, and distribution
CN113816137A (zh) * 2021-11-19 2021-12-21 佛山隆深机器人有限公司 一种基于机械臂的箱体分拣运输装置及控制方法
CN114161426B (zh) * 2021-12-29 2024-02-06 海澜智云科技有限公司 一种工业机器人的控制系统
CN116681758A (zh) * 2022-02-23 2023-09-01 北京百度网讯科技有限公司 车辆的姿态估计方法、装置、电子设备及存储介质
US11717974B1 (en) * 2022-06-10 2023-08-08 Sanctuary Cognitive Systems Corporation Haptic photogrammetry in robots and methods for operating the same
KR102486009B1 (ko) * 2022-06-23 2023-01-10 주식회사 대한엔지니어링 로봇팔을 이용한 디팔레타이징 자동화 시스템 및 방법
CN115009845B (zh) * 2022-08-04 2022-10-25 江苏安纳金机械有限公司 一种新型翘板机及其方法
KR102491429B1 (ko) * 2022-08-24 2023-01-27 주식회사 한성시스코 인공지능을 이용한 다수의 직육면체 블록들의 적층 구조에서의 각 블록의 인식 및 로딩 시스템, 및 그 방법
DE102022121538A1 (de) 2022-08-25 2024-03-07 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Ablegen eines Objekts vermittels eines Roboters
JP7488311B2 (ja) 2022-10-27 2024-05-21 アリー ロジスティック プロパティ カンパニー,リミテッド 物流作業を実行するための施設及び方法
WO2024115532A1 (de) * 2022-11-30 2024-06-06 Voith Patent Gmbh Vorrichtung und anordnung und verfahren zum umsetzen von ballen
WO2024125921A1 (de) * 2022-12-13 2024-06-20 Kuka Deutschland Gmbh Greifen mit verpackungsmaterial
WO2024136993A1 (en) * 2022-12-20 2024-06-27 Liberty Reach Inc. Method and system for decanting a plurality of items supported on a transport structure at one time with a picking tool for placement into a transport container
KR102521819B1 (ko) * 2023-01-26 2023-04-17 주식회사 브릴스 파렛타이징 시스템
WO2024176359A1 (ja) * 2023-02-21 2024-08-29 ファナック株式会社 位置補正装置、ロボットシステムおよび位置補正プログラム
US20240316779A1 (en) * 2023-03-20 2024-09-26 Mujin, Inc. Robotic system with object handling mechanism for loading and unloading of cargo carriers
DE102023111746A1 (de) 2023-05-05 2024-11-07 Bayerische Motoren Werke Aktiengesellschaft Handhabungsvorrichtung für einen Transport von Objekten
CN117369349B (zh) * 2023-12-08 2024-02-23 如特数字科技(苏州)有限公司 一种远程监测智能机器人的管理系统
CN117532644B (zh) * 2023-12-26 2024-04-12 广东亚数智能科技股份有限公司 一种三维视觉引导机械手抓取装置及其控制方法
CN118220850B (zh) * 2024-05-21 2024-07-19 杭州灵智科技数字化装备有限公司 拆垛方法、装置、计算机设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246589A (ja) * 2012-05-24 2013-12-09 Sharp Corp 空間情報生成装置、空間情報利用システム、空間情報生成方法、制御プログラム、および、記録媒体

Family Cites Families (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4907169A (en) 1987-09-30 1990-03-06 International Technical Associates Adaptive tracking vision and guidance system
JP2894449B2 (ja) * 1989-04-07 1999-05-24 株式会社ダイフク カメラ使用の自動移載装置
JP2687030B2 (ja) 1990-02-09 1997-12-08 株式会社ダイフク ロボット使用の自動移載装置
JPH03277739A (ja) 1990-03-28 1991-12-09 Nippon Steel Corp プレス成形時の耐バリ性の優れた高r値複合鋼板およびその製造方法
US5290454A (en) 1992-11-12 1994-03-01 Pump And Paper Research Institute Of Canada Process for removal of suspended solids from pulp and paper mill effluents
JPH06171760A (ja) 1992-12-02 1994-06-21 Mitsubishi Electric Corp デパレタイズ方法
JPH0753054A (ja) 1993-08-10 1995-02-28 Mitsubishi Electric Corp 自動荷卸し装置
JP3063487B2 (ja) 1993-09-27 2000-07-12 村田機械株式会社 パレタイズパターン認識装置
JPH07291450A (ja) * 1994-04-26 1995-11-07 Kawasaki Heavy Ind Ltd インテリジェントパレタイズシステム
JP3516067B2 (ja) * 1994-04-26 2004-04-05 川崎重工業株式会社 デパレタイズ用画像作成方法および画像作成装置
IT1275664B1 (it) 1994-11-16 1997-10-17 Consorzio Telerobot Sistema per il controlllo e guida automatica di un gruppo elevatore a forche
JP3277739B2 (ja) 1995-01-27 2002-04-22 三菱電機株式会社 産業用ロボット
JPH09251544A (ja) * 1996-03-14 1997-09-22 Toshiba Corp ワークエッジ検出画像処理装置
JP2921496B2 (ja) 1996-07-15 1999-07-19 三菱電機株式会社 画像処理装置および物体移載装置
US5908283A (en) 1996-11-26 1999-06-01 United Parcel Service Of Americia, Inc. Method and apparatus for palletizing packages of random size and weight
US6272230B1 (en) 1998-02-11 2001-08-07 Analogic Corporation Apparatus and method for optimizing detection of objects in computed tomography data
JPH11333770A (ja) * 1998-03-20 1999-12-07 Kobe Steel Ltd 積荷位置姿勢認識装置
JPH10323491A (ja) 1998-07-06 1998-12-08 Hitachi Ltd 脱水洗濯機
SE513174C2 (sv) 1998-10-22 2000-07-24 Abb Ab Förfarande för hantering av containrar samt anordning för utförande av förfarandet
JP3525896B2 (ja) 1999-03-19 2004-05-10 松下電工株式会社 3次元物体認識方法および同方法を使用したビンピッキングシステム
JP2001058723A (ja) 1999-08-20 2001-03-06 Amada Co Ltd 板材加工機における製品搬出方法及びその装置
JP2001072247A (ja) * 1999-09-06 2001-03-21 Murata Mach Ltd 搬送システム
JP3596434B2 (ja) * 2000-06-30 2004-12-02 株式会社ダイフク 物品位置認識装置
JP3849514B2 (ja) * 2001-12-10 2006-11-22 株式会社ダイフク 物品位置認識装置
JP2003237943A (ja) * 2002-02-12 2003-08-27 Rengo Co Ltd 段ボールケース束のデパレタイジング装置
US7085622B2 (en) 2002-04-19 2006-08-01 Applied Material, Inc. Vision system
JP3768174B2 (ja) 2002-07-24 2006-04-19 ファナック株式会社 ワーク取出し装置
WO2004085121A1 (ja) * 2003-03-27 2004-10-07 Sony Corporation ロボット装置及びロボット装置の制御方法
DE10317855A1 (de) 2003-04-16 2004-11-18 Rkb Reparatur- Und Karosseriebau Gmbh Verfahren und Einrichtung zum Verteilen von Paketen o. dgl. Beförderungsgütern
GB0405014D0 (en) 2004-03-05 2004-04-07 Qinetiq Ltd Movement control system
JP2005333824A (ja) * 2004-05-24 2005-12-08 Olympus Corp 検体導入装置および培養処理装置
KR100657915B1 (ko) 2004-11-26 2006-12-14 삼성전자주식회사 코너 검출 방법 및 코너 검출 장치
JP2006300929A (ja) * 2005-03-22 2006-11-02 Jfe Engineering Kk 物体の3次元位置認識装置およびデパレタイズシステム
JP2007097057A (ja) 2005-09-30 2007-04-12 Brother Ind Ltd サーバ装置、機器情報提供方法、プログラム、ネットワークシステム、及び、機器共用化方法
JP4087874B2 (ja) * 2006-02-01 2008-05-21 ファナック株式会社 ワーク取り出し装置
JP4911341B2 (ja) * 2006-03-24 2012-04-04 株式会社ダイフク 物品移載装置
WO2009014677A1 (en) 2007-07-23 2009-01-29 Abb Inc. Robotic palletizing system
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
KR101003654B1 (ko) 2008-08-27 2010-12-23 삼성전기주식회사 반도체 패키지용 트랜스포머
US8489232B2 (en) 2008-09-30 2013-07-16 Amazon Technologies, Inc. Systems and methods for receiving shipment parcels
US8571298B2 (en) * 2008-12-23 2013-10-29 Datalogic ADC, Inc. Method and apparatus for identifying and tallying objects
DE102009011300B4 (de) * 2009-03-02 2022-08-11 Kuka Roboter Gmbh Beladung von Lademitteln mit Paketen mittels Manipulator
JP5429614B2 (ja) 2009-04-16 2014-02-26 株式会社Ihi 箱状ワーク認識装置および方法
US8508590B2 (en) 2010-03-02 2013-08-13 Crown Equipment Limited Method and apparatus for simulating a physical environment to facilitate vehicle operation and task completion
US8538577B2 (en) 2010-03-05 2013-09-17 Crown Equipment Limited Method and apparatus for sensing object load engagement, transportation and disengagement by automated vehicles
FI20105732A0 (fi) 2010-06-24 2010-06-24 Zenrobotics Oy Menetelmä fyysisten kappaleiden valitsemiseksi robottijärjestelmässä
US9796540B1 (en) 2010-06-30 2017-10-24 Thiele Technologies System and method for robotic palletization of packages susceptible to package-to-package dimensional creep
DE112011103794B4 (de) * 2010-11-17 2019-01-24 Mitsubishi Electric Corporation Aufnehmervorrichtung für Werkstücke
US10474858B2 (en) 2011-08-30 2019-11-12 Digimarc Corporation Methods of identifying barcoded items by evaluating multiple identification hypotheses, based on data from sensors including inventory sensors and ceiling-mounted cameras
US9367770B2 (en) 2011-08-30 2016-06-14 Digimarc Corporation Methods and arrangements for identifying objects
US9129277B2 (en) * 2011-08-30 2015-09-08 Digimarc Corporation Methods and arrangements for identifying objects
US9067744B2 (en) 2011-10-17 2015-06-30 Kabushiki Kaisha Yaskawa Denki Robot system, robot, and sorted article manufacturing method
JP5510841B2 (ja) 2011-12-22 2014-06-04 株式会社安川電機 ロボットシステム及び仕分け済み物品の製造方法
CN202717371U (zh) 2011-11-18 2013-02-06 上海沃迪自动化装备股份有限公司 多功能机器人码垛系统
US20170003113A1 (en) * 2011-12-06 2017-01-05 Hexagon Technology Center Gmbh Coordinate measuring machine having a camera
JP2013145525A (ja) * 2012-01-16 2013-07-25 Fuji Electric Co Ltd 物品取り出し判定装置、物品取り出し判定システム、物品取り出しシステム、物品取り出し判定プログラムおよび物品取り出し判定方法
CN202539084U (zh) * 2012-03-01 2012-11-21 成都三茁科技有限公司 多位扫描识别系统
JP5469216B2 (ja) 2012-07-31 2014-04-16 ファナック株式会社 バラ積みされた物品をロボットで取出す装置
US9393686B1 (en) 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
JP6255706B2 (ja) * 2013-04-22 2018-01-10 富士通株式会社 表示制御装置、表示制御方法、表示制御プログラムおよび情報提供システム
US9314924B1 (en) * 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
JP5945968B2 (ja) * 2013-09-03 2016-07-05 株式会社安川電機 ロボットハンド、ロボットシステム、及び物品のデパレタイズ方法
JP5897532B2 (ja) 2013-11-05 2016-03-30 ファナック株式会社 三次元空間に置かれた物品をロボットで取出す装置及び方法
CA3114789C (en) 2014-01-22 2021-12-07 Symbotic Canada Ulc Vision-assisted robotized depalletizer
CN103822594A (zh) 2014-02-28 2014-05-28 华南理工大学 一种基于激光传感器和机器人的工件扫描成像方法
KR102081139B1 (ko) 2014-03-12 2020-02-25 한국전자통신연구원 물체 피킹 시스템, 물체 검출 장치 및 그 방법
JP5829306B2 (ja) * 2014-05-12 2015-12-09 ファナック株式会社 レンジセンサの配置位置評価装置
US9205558B1 (en) 2014-07-16 2015-12-08 Google Inc. Multiple suction cup control
US9272417B2 (en) 2014-07-16 2016-03-01 Google Inc. Real-time determination of object metrics for trajectory planning
US9327406B1 (en) * 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
JP6486114B2 (ja) 2015-01-16 2019-03-20 株式会社東芝 荷役装置
US9486921B1 (en) 2015-03-26 2016-11-08 Google Inc. Methods and systems for distributing remote assistance to facilitate robotic object manipulation
US20160302521A1 (en) 2015-04-16 2016-10-20 Brian George Rennex Substantial energy return shoe with optimal low-impact springs and tuned gear change
JP6461712B2 (ja) 2015-05-28 2019-01-30 株式会社東芝 荷役装置及びその動作方法
US9875427B2 (en) * 2015-07-28 2018-01-23 GM Global Technology Operations LLC Method for object localization and pose estimation for an object of interest
US20170057148A1 (en) 2015-08-27 2017-03-02 Imflux Inc Plastic article forming apparatuses and methods for controlling melt flow
US11010816B2 (en) 2015-08-27 2021-05-18 Imflux Inc Methods of selecting thermoplastic materials for use with plastic article forming apparatuses that control melt flow
JP6466297B2 (ja) * 2015-09-14 2019-02-06 株式会社東芝 対象物検出装置、方法及びデパレタイズ自動化装置並びに梱包箱
JP6711591B2 (ja) 2015-11-06 2020-06-17 キヤノン株式会社 ロボット制御装置およびロボット制御方法
JP6710622B2 (ja) * 2015-11-13 2020-06-17 株式会社東芝 搬送装置および搬送方法
EP4088889A1 (en) 2015-11-13 2022-11-16 Berkshire Grey Operating Company, Inc. Sortation systems and methods for providing sortation of a variety of objects
US10370201B2 (en) * 2015-11-13 2019-08-06 Kabushiki Kaisha Toshiba Transporting apparatus and transporting method
JP6298035B2 (ja) * 2015-12-17 2018-03-20 ファナック株式会社 モデル生成装置、位置姿勢算出装置、およびハンドリングロボット装置
US10124489B2 (en) 2016-02-26 2018-11-13 Kinema Systems Inc. Locating, separating, and picking boxes with a sensor-guided robot
JP6690300B2 (ja) * 2016-02-26 2020-04-28 村田機械株式会社 スタッカクレーン
CN105817430B (zh) 2016-03-29 2017-12-29 常熟理工学院 基于机器视觉的产品检测方法
CN106063998B (zh) 2016-04-13 2018-03-06 段炼 一种单罐内转动mvr系统
US10596700B2 (en) * 2016-09-16 2020-03-24 Carbon Robotics, Inc. System and calibration, registration, and training methods
US20180198983A1 (en) * 2017-01-06 2018-07-12 Olympus Corporation Image pickup apparatus, image pickup system, image pickup method, image pickup program, and display apparatus for image pickup
JP6479264B2 (ja) * 2017-01-13 2019-03-06 三菱電機株式会社 協働ロボットシステム、及びその制御方法
JP6495355B2 (ja) 2017-02-15 2019-04-03 昭 宮田 給液装置
JP2018144155A (ja) * 2017-03-03 2018-09-20 株式会社キーエンス ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
CN106886165A (zh) * 2017-03-10 2017-06-23 深圳市唯特视科技有限公司 一种基于模拟器的机械手抓取和操纵方法
DE112017007398B4 (de) 2017-04-04 2021-11-18 Mujin, Inc. Steuervorrichtung, Greifsystem, Verteilersystem, Programm und Steuerverfahren
US10328578B2 (en) 2017-04-21 2019-06-25 X Development Llc Methods and systems for detecting, recognizing, and localizing pallets
JP6904106B2 (ja) 2017-06-27 2021-07-14 村田機械株式会社 ピッキングシステム
JP2019063984A (ja) 2017-10-02 2019-04-25 キヤノン株式会社 情報処理装置、方法及びロボットシステム
US10471597B1 (en) * 2017-11-01 2019-11-12 Amazon Technologies, Inc. Adaptive perception for industrial robotic systems
US10346987B1 (en) 2017-12-29 2019-07-09 Datalogic Usa, Inc. Locating objects on surfaces
JP6489243B2 (ja) * 2018-01-17 2019-03-27 セイコーエプソン株式会社 物体認識装置、物体認識方法、物体認識プログラム、ロボットシステム及びロボット
JP7065632B2 (ja) 2018-02-13 2022-05-12 Kyoto Robotics株式会社 箱状物ピッキング装置及びその方法
JP2018158439A (ja) * 2018-03-15 2018-10-11 株式会社東芝 物体ハンドリング装置、制御装置、および較正方法
CN110737399B (zh) 2018-07-20 2023-09-05 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品
JP7467041B2 (ja) * 2018-09-27 2024-04-15 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
DE112019000125B4 (de) 2018-10-30 2021-07-01 Mujin, Inc. Systeme, vorrichtungen und verfahren zur automatisierten verpackungsregistrierung
US11023763B2 (en) 2019-03-19 2021-06-01 Boston Dynamics, Inc. Detecting boxes
US10614340B1 (en) 2019-09-23 2020-04-07 Mujin, Inc. Method and computing system for object identification
US10625952B1 (en) 2019-10-18 2020-04-21 Grey Orange Pte. Ltd. Induction station for conveying packages in storage facility
US11020854B2 (en) * 2019-11-05 2021-06-01 Mujin, Inc. Robotic system with wall-based packing mechanism and methods of operating same
US11423610B2 (en) 2019-11-26 2022-08-23 Applied Research Associates, Inc. Large-scale environment-modeling with geometric optimization
US11798273B2 (en) 2021-03-12 2023-10-24 Lawrence Livermore National Security, Llc Model-based image change quantification
US20230041343A1 (en) 2021-08-09 2023-02-09 Mujin, Inc. Robotic system with image-based sizing mechanism and methods for operating the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013246589A (ja) * 2012-05-24 2013-12-09 Sharp Corp 空間情報生成装置、空間情報利用システム、空間情報生成方法、制御プログラム、および、記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
佐治 禎基 MOTOKI SAJI: "移動のある物体を認識・管理するオフィスロボットの構築 A Robot System to Recognize and Manage Unfixab", 電子情報通信学会技術研究報告 VOL.99 NO.719 IEICE TECHNICAL REPORT, vol. 第99巻, JPN6023034445, JP, ISSN: 0005134958 *

Also Published As

Publication number Publication date
DE112019000172T5 (de) 2020-07-16
US11797926B2 (en) 2023-10-24
JP7352260B2 (ja) 2023-09-28
US20200134828A1 (en) 2020-04-30
JP2021050100A (ja) 2021-04-01
CN111861306B (zh) 2021-06-15
US11189033B2 (en) 2021-11-30
US20220051411A1 (en) 2022-02-17
US20200134830A1 (en) 2020-04-30
JP7466150B2 (ja) 2024-04-12
DE112019000127T5 (de) 2020-06-18
JP7571951B2 (ja) 2024-10-23
US11636605B2 (en) 2023-04-25
WO2020092433A1 (en) 2020-05-07
JP2021503374A (ja) 2021-02-12
CN111776762A (zh) 2020-10-16
US11501445B2 (en) 2022-11-15
US20230008540A1 (en) 2023-01-12
JP6822719B2 (ja) 2021-01-27
US11062457B2 (en) 2021-07-13
WO2020092447A1 (en) 2020-05-07
DE112019000247T5 (de) 2020-09-03
CN111601761A (zh) 2020-08-28
CN111776759B (zh) 2021-07-23
DE112019000177T5 (de) 2020-09-03
US20220076425A1 (en) 2022-03-10
JP2023174652A (ja) 2023-12-08
WO2020091846A1 (en) 2020-05-07
CN111861305A (zh) 2020-10-30
JP6822718B1 (ja) 2021-01-27
US10703584B2 (en) 2020-07-07
DE112019000217B4 (de) 2023-09-14
JP7340203B2 (ja) 2023-09-07
CN111629868A (zh) 2020-09-04
CN111633633A (zh) 2020-09-08
KR102650492B1 (ko) 2024-03-22
JP2021051797A (ja) 2021-04-01
CN111633633B (zh) 2021-05-07
US20200130961A1 (en) 2020-04-30
CN111566028A (zh) 2020-08-21
JP2021062978A (ja) 2021-04-22
CN111776759A (zh) 2020-10-16
JP2023160842A (ja) 2023-11-02
US11961042B2 (en) 2024-04-16
JP6704154B2 (ja) 2020-06-03
DE112019000217T5 (de) 2020-08-06
WO2020092452A1 (en) 2020-05-07
KR20210087065A (ko) 2021-07-09
US11176674B2 (en) 2021-11-16
KR20240042157A (ko) 2024-04-01
JP6820634B2 (ja) 2021-01-27
CN111113492A (zh) 2020-05-08
US20200130962A1 (en) 2020-04-30
JP7411932B2 (ja) 2024-01-12
CN111491878A (zh) 2020-08-04
JP2024023692A (ja) 2024-02-21
KR102650494B1 (ko) 2024-03-22
US20210304416A1 (en) 2021-09-30
CN111566027A (zh) 2020-08-21
KR20210096615A (ko) 2021-08-05
US20200294244A1 (en) 2020-09-17
CN111861305B (zh) 2021-08-03
JP7548516B2 (ja) 2024-09-10
JP6813229B1 (ja) 2021-01-13
JP2020069636A (ja) 2020-05-07
US11288810B2 (en) 2022-03-29
DE112019000125T5 (de) 2020-07-02
JP2020537775A (ja) 2020-12-24
CN111861306A (zh) 2020-10-30
JP6820044B1 (ja) 2021-01-27
DE112019000125B4 (de) 2021-07-01
US12002007B2 (en) 2024-06-04
JP2021054660A (ja) 2021-04-08
JP2021501102A (ja) 2021-01-14
JP7555081B2 (ja) 2024-09-24
US20200130963A1 (en) 2020-04-30
JP2020110918A (ja) 2020-07-27
JP2021507857A (ja) 2021-02-25
US20240078512A1 (en) 2024-03-07
WO2020092428A1 (en) 2020-05-07
CN111776762B (zh) 2021-07-23
WO2020092442A1 (en) 2020-05-07
JP2021505980A (ja) 2021-02-18
US20240020637A1 (en) 2024-01-18

Similar Documents

Publication Publication Date Title
JP6813229B1 (ja) 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP7349094B2 (ja) ピースロス管理メカニズムを有するロボットシステム
US10576631B1 (en) Robotic system with enhanced scanning mechanism
US11772267B2 (en) Robotic system control method and controller
JP2021022383A (ja) エッジ及び多次元コーナーに基づく検出後の精緻化

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221027

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221125

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230822

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230907

R150 Certificate of patent or registration of utility model

Ref document number: 7352260

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150