JP2021051797A - 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム - Google Patents

自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム Download PDF

Info

Publication number
JP2021051797A
JP2021051797A JP2020213054A JP2020213054A JP2021051797A JP 2021051797 A JP2021051797 A JP 2021051797A JP 2020213054 A JP2020213054 A JP 2020213054A JP 2020213054 A JP2020213054 A JP 2020213054A JP 2021051797 A JP2021051797 A JP 2021051797A
Authority
JP
Japan
Prior art keywords
mvr
image data
robot system
objects
exposed
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.)
Pending
Application number
JP2020213054A
Other languages
English (en)
Other versions
JP2021051797A5 (ja
Inventor
ユ,ジンズ
Jinze Yu
ジェロニモ モレイラ ロドリゲス,ジョセ
Jeronimo Moreira Rodrigues Jose
ジェロニモ モレイラ ロドリゲス,ジョセ
ニコラエフ デアンコウ,ロセン
Nikolaev Diankov Rosen
ニコラエフ デアンコウ,ロセン
ヨウ,シュタオ
Xutao Ye
イズラム,ラッセル
Islam Russell
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 JP2021051797A publication Critical patent/JP2021051797A/ja
Publication of JP2021051797A5 publication Critical patent/JP2021051797A5/ja
Pending legal-status Critical Current

Links

Images

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
    • B65G61/00Use of pick-up or transfer devices or of manipulators for stacking or de-stacking articles not otherwise provided for
    • 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
    • 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
    • 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)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)
  • Image Analysis (AREA)
  • De-Stacking Of Articles (AREA)
  • Image Processing (AREA)
  • Specific Conveyance Elements (AREA)
  • Stacking Of Articles And Auxiliary Devices (AREA)
  • Control Of Conveyors (AREA)

Abstract

【課題】撮影された物体の物理的特性の正確な識別に失敗することに起因して、ロボットシステムが停止したり、パッケージの取り扱いを誤ったりすることを防止する。【解決手段】本開示は、認識されていない、または、登録されていない物体を検出、登録することに関する。最小実行可能範囲(MVR)は、スタート位置の物体を表す画像データを検査することに基づいて導出されてよい。MVRは、画像データに表された1つまたは複数の特徴にしたがって、確かなMVRまたは不確かなMVRであると決定されてよい。MVRを使用して、確か、または、不確かの決定にしたがって、対応する物体を登録してよい。【選択図】図10

Description

関連出願の相互参照
本出願は、2018年10月30日出願の米国仮特許出願番号第62/752,756号の利益を主張し、参照によりその全体が本明細書に組み込まれる。本出願は、2019年5月24日出願の米国仮特許出願番号第62/852,963号の利益をさらに主張し、参照によりその全体が本明細書に組み込まれる。本出願は、2019年3月1日出願の米国特許出願番号第16/290,741号であり、現在、米国特許番号第10,369,701号にも関連し、参照によりその全体が本明細書に組み込まれる。
本出願は、Jinze Yu,Jose Jeronimo Moreira Rodrigues、および、Rose Nikolaev Diankovによる同時出願の米国特許出願「A ROBOTIC SYSTEM WITH AUTOMATED PACKAGE REGISTRATION MECHANISM AND MINIMUM VIABLE REGION DETECTION」に関連する主題を含む。関連出願は、Mujin社に譲渡され、整理番号131837−8003.US40で識別される。その主題は、参照により本明細書に組み込まれる。
本技術は、一般的に、ロボットシステムを対象とし、より具体的には、物体を登録するシステム、プロセス、および、技術を対象とする。
多くの場合、パッケージは、目的地への出荷のためにパレットに配置され(または、「パレタイズされ」)、その後、目的地で、デパレタイズされる。パッケージは、資源集約的になったり、怪我の危険性を高めたりする人間作業者によってデパレタイズされる場合がある。産業環境においては、デパレタイズ作業は、パッケージを把持し、持ち上げ、運搬し、解放点まで運ぶロボットアーム等の産業用ロボットによって行われる。また、撮像装置を利用して、パレットに積まれたパッケージのスタックの画像が撮影される。システムは、画像を処理して、登録データソースに記憶された登録画像と撮影画像を比較する等によって、パッケージがロボットアームによって効率的に取り扱われることが保証されてもよい。
パッケージの撮影画像が、登録画像に一致する場合がある。また、結果として、撮影された物体の物理的特性(例えば、パッケージの寸法、重量、および/または、質量中心の測定値)が未知の場合がある。物理的特性の正確な識別に失敗すると、様々な望ましくない結果につながり得る。例えば、このような失敗は停止の原因となることがあり、停止すると、パッケージを手動で登録することが必要となり得る。また、このような失敗に起因して、特に、パッケージが比較的重いおよび/または傾いている場合、パッケージの取り扱いを誤る結果となり得る。
技術の様々な特徴および特性は、発明を実施するための形態を図面と共に検討すると、当業者には明らかになろう。技術の実施形態を、図面に例として示すが、図面に制限されるものではない。図面中、類似の参照番号は類似の要素を示してよい。
ロボットシステムが動作し得る環境の例を示す。 本技術の1つまたは複数の実施形態による、ロボットシステムを示す。 本技術の1つまたは複数の実施形態による、ロボットシステムが処理する物体のスタックの例を示す。 本技術の1つまたは複数の実施形態による、スタックの例の上面を示す。 本技術の1つまたは複数の実施形態による、上面に対応するセンサデータを示す。 本技術の1つまたは複数の実施形態による、最初の動作セットの後の上面に対応するセンサデータを示す。 本技術の1つまたは複数の実施形態による、図4Aに示されたセンサデータの一部を示す。 本技術のある実施形態による、パレタイズされたパッケージのセットの上面図を示す。 本技術のある実施形態による、露出した外側角部のグラフィック表現を示す。 本技術のある実施形態による、パレタイズされたパッケージのセットのブロック図である。 本技術のある実施形態による、マージされたMVR領域の例を示す。 本技術のある実施形態による、物体認識プロセスのフロー図である。 本技術のある実施形態による、図1のロボットシステムを動作させる方法のブロック図である。 本明細書に記載の少なくとも幾つかの動作を実施できる処理システムの例を示すブロック図である。
図面は、説明のためだけに様々な実施形態を示す。本技術の趣旨を逸脱することなく、代替実施形態を採用してよいことを当業者は認識されよう。したがって、特定の実施形態を図面に示すが、技術は、様々な修正を受け入れてよい。
自動パッケージ登録機構を備えたロボットシステムのためのシステムおよび方法を本明細書に記載する。ある実施形態にしたがって構成されたロボットシステム(例えば、1つまたは複数の指定されたタスクを実行するデバイスを統合したシステム)は、未知の、または、認識されていない物体(例えば、パッケージ、箱、ケース等)を操作し、(例えば、人間オペレータによる入力が殆どまたは全く無しに)自律的/自動的に登録することによって、使用性と柔軟性を向上させる。
物体が認識されたか否かを判断するために、ロボットシステムは、スタート位置の物体に関するデータ(例えば、物体の露出面の1つまたは複数の画像)を取得し、既知のまたは予測される物体の登録データと比較できる。ロボットシステムは、比較されたデータ(例えば、比較された画像の一部)が、物体の1つの登録データ(例えば、登録された表面画像の1つ)と一致する場合に、その物体は認識されていると判断できる。ロボットシステムは、比較されたデータが既知または予測される物体の登録データと一致しない場合に、物体は認識されていないと判断できる。
ロボットシステムは、1つまたは複数の推定にしたがって、認識されていない物体を操作でき、認識されていない物体に関する追加情報(例えば、表面画像および/または物理的寸法)を決定できる。例えば、ロボットシステムは、他の物体とは離れたまたは隣り合わない認識されていない物体の露出した辺(エッジ、縁)および/または露出した外側角部を識別できる。
推定は、対応する認識されていない物体と接触および持ち上げるのに必要な最小限および/または最適なエリアを表す最小実行可能領域(MVR)を生成することを含み得る。各MVRは、1つの認識されていない物体の表面の推定(例えば、表面の周囲の境界)をさらに表すことができる。MVR生成時に、露出した外側角部および露出した辺は、二次元(2D)および/または三次元(3D)の画像データを検査することによって識別されてよい。識別された露出した外側角部および露出した辺に基づいて、最初のMVRが、露出した辺に対向する辺を識別することによって生成されてよい。最初のMVRは、拡大および/または縮小された領域を決定することおよびテストすること等によって、さらに処理されて、検証されたMVRを生成してよい。最初のMVRは、MVR決定の確実性(例えば、最初のMVRの精度を表すステータスまたはレベル)にしたがって処理されてもよい。例えば、ロボットシステムは、最初のMVRが、3つ以上の露出した角部を含む場合、および/または、3つ以上の露出した角部を用いて導出される場合に、最初のMVRを確かなMVR(例えば正確である可能性が高い、検証されたMVRのインスタンス)として識別できる。そうでない場合(例えば、最初のMVRが、2つ以下の露出した角部を含む場合、および/または、2つ以下の露出した角部を用いて導出される場合)、ロボットシステムは、最初のMVRを不確かなMVR(例えば、正確である可能性が低い、検証されたMVRのインスタンス)として識別できる。
ロボットシステムは、検証されたMVRを用いて、検証されたMVR、および/または、検証されたMVRを用いて導出された他の処理結果を記憶すること等によって、認識されていない物体を登録できる。例えば、ロボットシステムは、確かなMVRを用いて、対応する認識されていない物体の登録を開始できる。ロボットシステムは、確かなMVR物体を(例えば、把持して、タスクを行うために移動することによって)さらに操作し、それによって、スタート位置に残っている物体の追加の角部を露出させる可能性を高めることができる。ロボットシステムは、物体を移動した後、検出および分析を繰り返して、新しく露出した角部に基づいて、以前は不確かであったMVRを、確かなMVRとして識別することが増加し得る。
したがって、本明細書に記載した実施形態は、認識されていない物体のMVRを正確に生成する可能性を高める。精度の向上は、移動された物体に関する不正確なデータによって生じるパッケージの落下および/または衝突等のエラーの低減につながり得る。さらに、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つまたは複数の実施形態による、図1のロボットシステム100の図である。ロボットシステム100は、エンドエフェクタ204(例えば、把持部)を含むロボットアーム202(例えば、図1の移動ユニット104のインスタンス)を含み得る。ロボットアーム202は、図1のスタート位置114と図1のタスク位置116との間で対象物体112を移動するように構成されてよい。図2に示すように、スタート位置114は、対象スタック210(例えば、物体のグループ)を載せたパレット208を有し得る。ロボットアーム202のタスク位置116は、コンベヤ206(例えば、図1の運搬ユニット106のインスタンス)の載置位置(例えば、開始/放出点)であってよい。例えば、ロボットアーム202は、対象スタック210から物体を掴み取るように、且つ、物体を他の目的地/タスクに運搬するためにコンベヤ206に載せるように構成されてよい。
ロボットシステム100は、ロボットアーム202を用いた移動動作を行う時、1つまたは複数のセンサを使用できる。ある実施形態においては、ロボットシステム100は、第1の画像センサ212および/または第2の画像センサ214を含み得る。第1の画像センサ212は、スタート位置114を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。第2の画像センサ214は、タスク位置116を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。例えば、第1の画像センサ212は、スタート位置114より上でスタート位置114の方を向く既知の位置に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。第1の画像センサ212は、対象スタック210の上面図等、スタート位置114の1つまたは複数の上面図に対応する画像データ(例えば、3D点群、および/または、視覚もしくは2D画像)を生成できる。以下にさらに詳細に記載するように、ロボットシステム100は、第1の画像センサ212からの画像データを使用して、対象スタック210の認識されていない(例えば、登録されていない)物体の最小実行可能領域(MVR)を導出できる。ロボットシステム100は、認識されていない物体をスタート位置114からタスク位置116に移動させる時等、MVRを使用して、認識されていない物体を(例えば、エンドエフェクタ204を介して)把持し、(例えば、ロボットアーム202を介して)操作できる。また、第2の画像センサ214は、タスク位置116の上/横でタスク位置116の方を向く1つまたは複数の既知の位置、または関連する空間に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。したがって、第2の画像センサ214は、タスク位置116に、または、タスク位置116から閾値距離内にある対象物体112の1つまたは複数の上面図および/または側面図に対応する画像データを生成できる。
物体認識
本技術の1つまたは複数の実施形態にしたがって、図3Aは、図1のロボットシステム100によって処理される物体のスタックの例(例えば、図2の対象スタック210)の図であり、図3Bは、スタックの例の上面の図(例えば、対象スタック210の実際の上面図310)であり、図3Cは、上面に対応するセンサデータ(例えば、上面図データ320)の図である。図3A、3B、および3Cを一緒に参照すると、ロボットシステム100は、前述のように、対象スタック210内の物体を、図1のタスク位置116(例えば、図2のコンベヤ206)等、他の位置に移動させるように構成されてよい。物体の移動に関しては、ロボットシステム100は、対象スタック210の上に配置された図2の第1の画像センサ212からの画像データ(例えば、上面図データ320)を使用できる。例えば、上面図データ320は、実際の上面図310を示すまたは表す1つまたは複数の視覚画像および/または1つまたは複数のデプスマップを含み得る。さらに、ロボットシステム100は、上面図データ320を分析して、物体の境界に対応し得る辺を識別できる。例えば、ロボットシステム100は、深度測定値および/または画像特性の差(例えば、異なる色、線形パターン、影、明瞭さの差等)に基づいて、画像データで表現された辺および/または連続した表面を識別できる。ロボットシステム100は、深度測定値の差等に基づいて等、露出した辺322(例えば、ほぼ同じ高さの他の物体/表面と水平に当接していない物体の上面の辺)を識別できる。
対象スタック210は、予測された、または、以前のプロセスの物体の登録記録を含むマスタデータに登録された物体、および/または、マスタデータに登録されていない予測されていない物体を含んでよい。したがって、ロボットシステム100は、物体表面316の画像データを使用して、対象スタック210内にある物体を認識または識別できる。ある実施形態においては、ロボットシステム100は、画像データ、または、画像データの1つまたは複数の部分を、マスタデータと比較して、対象スタック210内の物体を認識できる。例えば、ロボットシステム100は、上面図データ320の一部が登録データの物体表面316の1つまたは複数の画像に一致する場合に、対象スタック210内の既知の物体(例えば、認識された物体312)を識別できる。実際の上面図310の残りの部分(例えば、登録データと一致しない部分)は、認識されていない物体314に対応し得る。認識されていない物体314の辺は、図3Cに破線を用いて示される。
画像データの一致に基づいて、ロボットシステム100は、対応する画像データ内で認識された物体312の位置を突き止めることができ、この位置は、さらに、(例えば、画素位置を座標系にマッピングするプレキャリブレーション表および/または方程式を介して)対象スタック210の実世界の位置に変換されてよい。さらに、ロボットシステム100は、認識された物体312の露出していない辺の位置を、一致に基づいて推定できる。例えば、ロボットシステム100は、認識された物体312の寸法をマスタデータから取得できる。ロボットシステム100は、認識された物体312の露出した辺322から既知の寸法によって分けられる画像データの部分を測定できる。マッピングにしたがって、ロボットシステム100は、認識された物体312の1つまたは複数の登録に基づいた辺324を決定できる、および/または、上記のように、登録に基づいた辺324を実世界の位置に同様にマッピングできる。
ある実施形態においては、ロボットシステム100は、画像データ(例えば、点群データ)に表現された対象スタック210の露出した外側角部326を識別できる。例えば、ロボットシステム100は、異なる向きを有する(例えば、異なる角度で延びる)露出した辺322(例えば、3Dの辺とも呼ばれる、3D画像データで識別される辺)の2つ以上のセットの間の交点/接合点を検出することに基づいて、露出した外側角部326を識別できる。1つまたは複数の実施形態において、ロボットシステム100は、90度より大きい、および/または、90度未満の閾値角部角度範囲等、所定範囲内にある角度(角度範囲とも呼ばれる)を露出した辺322が形成する場合に、露出した外側角部326を識別できる。以下に詳細に記載するように、ロボットシステム100は、露出した外側角部326と対応する露出した辺322とを使用して、認識されていない物体314を処理および/または操作できる。
認識されていない物体の処理
ある実施形態においては、図1のロボットシステム100は、図2の対象スタック210内の物体の認識ステータスおよび/または相対的位置にしたがって、物体を処理(例えば、識別、および/または、移動)できる。例えば、ロボットシステム100は、認識された物体を最初に掴み、移動し、次に、センサ(例えば、図2の第1の画像センサ212)から別の画像データセットを生成できる。図4Aは、本技術の1つまたは複数の実施形態による、最初の動作セット(例えば、認識された物体312を掴むこと、および、移動すること)の後の上面に対応するセンサデータ401の図である。図4Aの網掛部分は、図3Bおよび図3Cに示された認識された物体312を取り除いた後の深度測定値の変化に対応する。
ロボットシステム100が、画像データ(例えば、2D画像および/または3D点群)の認識された物体312のいずれも識別しない場合に、ロボットシステム100は、図3Aの認識されていない物体314を突き止めるために、画像データを処理して、いずれかの露出した角部326および/または露出した辺322を識別できる。例えば、ロボットシステム100は、上記と同様に、センサデータ401(例えば、3D点群)を処理して、露出した外側角部326および/または露出した辺322を識別できる。したがって、ロボットシステム100は、認識された物体312を取り除いた後に露出された角部/辺をさらに識別し、および/または、突き止めることができる。ある実施形態においては、ロボットシステム100は、対応する閾値にしたがって、露出した辺322の2つ以上の間の交点/接合点として、露出した内側角部402をさらに識別できる。例えば、ロボットシステム100は、対応する連続した表面に対して180度を超える露出した辺322の2つ以上の間の接合点として、露出した内側角部402を識別できる。ある実施形態においては、ロボットシステム100は、露出した辺322が、270度より大きい、および/または、270度未満の閾値角度範囲内にある角度を形成する場合に、露出した内側角部402を識別できる。
ある実施形態においては、認識された物体312が何も残っていない場合に、ロボットシステム100は、露出した角部および/または露出した辺に基づいて、(例えば、認識されていない物体314のうちから)対象スタック210の登録対象406を識別できる。例えば、ロボットシステム100は、プリファレンスのセット、および/または、スコア機構にしたがって、露出した角部/辺を評価できる。ある実施形態においては、ロボットシステム100は、図2のロボットアーム202に最も近い露出した外側角部326を選択するように構成されてよい。ロボットシステム100は、センサデータ401の対応する領域と、選択された露出した外側角部326に関連付けられた対応する認識されていない物体314とを選択できる。換言すると、認識された物体312を処理した後、ロボットシステム100は、対象スタック210の露出した外側角部326を形成/構成する認識されていない物体314を処理できる。センサデータ401の対応する部分を(例えば、MVRを導出することによって)分析することに基づいて、ロボットシステム100は、認識されていない物体314を把持し、把持した物体を持ち上げ、および/または、水平に移動し、および/または、登録のために把持した物体を撮影できる。さらに、把持した物体を撮影した後、ロボットシステム100は、把持した物体を目的地(例えば、図2のコンベヤ206)に移動できる。
センサデータの分析をさらに記載するために、図4Bは、本技術の1つまたは複数の実施形態による、図4Aのセンサデータ401の一部分の詳細な図4Bである。ロボットシステム100は、センサデータ401を分析して、MVR412を導出できる。MVR412は、物体と接触、物体を把持、および/または、物体を持ち上げるのに使用される最小サイズのエリアを表すことができる。また、MVR412は、1つの認識されていない物体の表面および/または周囲の境界の推定を表すことができる。例えば、MVR412は、エンドエフェクタ204の取付面積、または、取付面積を囲む追加の/緩衝領域を有するより大きいエリアに関連付けられてよい。また、例えば、MVR412は、認識されていない物体(例えば、選択された登録対象)の水平方向の境界/辺の推定された位置に関連付けられてよい。ある実施形態においては、MVR412は、最小および/または最大候補サイズに対応してよく、それぞれ、対象スタック210の予測される物体の最小/最大の可能なインスタンスの物理的寸法(例えば、長さ、幅、高さ、直径、外周等)に対応し得る。換言すると、ロボットシステム100は、対象スタック210内には、最小候補サイズより小さい寸法を有する物体も最大候補サイズより大きい寸法を有する物体も無いことを判断できる。最小候補サイズおよび最大候補サイズは、所定の値(すなわち、対象スタック210を処理する前に与えられたまたは既知の値)であってよい。MVR412の導出に関する詳細を以下に記載する。
ロボットシステム100は、MVR412を用いて、把持位置420を決定できる。把持位置420は、最初の操作のためにエンドエフェクタ204の真下にくる、および/または、エンドエフェクタ204に接触する物体/スタック上のエリアに対応し得る。換言すると、ロボットシステム100は、次の操作(例えば、持ち上げプロセス、水平移動プロセス、および/または、登録のためのデータ収集プロセス)のために、把持位置420の上に把持部を置いて、対応する物体を把持できる。ある実施形態においては、ロボットシステム100は、可能な把持位置のセットから把持位置420を選択できる。例えば、ロボットシステム100は、(例えば、ロボットアームが露出した辺322にわたって延び、他の部分に重ならないことを優先して)アームの相対的向きにしたがって、把持位置のセットから選択できる。
ある実施形態においては、ロボットシステム100は、推定された辺424に基づいて、MVR412を導出できる。例えば、ロボットシステム100は、対象スタック210の上層の露出した外側角部326の例(例えば、3D角部)を選択または識別できる。ロボットシステム100は、関連付けられた露出した辺322(例えば、3Dで選択された角部で出会う/を形成する)に沿って、選択された露出した外側角部326から離れるように移動し得る。辺に沿って動きながら、ロボットシステム100は、センサデータ401の3D深度測定値、および/または、2D画像特性(例えば、明るさ、色等)の差に基づいて、推定された辺424を識別できる。ロボットシステム100は、横断された辺と交差する、および/または、横断された辺から閾値分離距離内にある2D/3D画像データの辺または線を識別できる。ロボットシステム100は、推定された辺424を決定する時に、識別された辺をテストできる。ロボットシステム100は、識別された辺の向きを露出した辺322の向きと比較することに基づいて、推定された辺424をテスト/検証してよい。例えば、ロボットシステム100は、識別された辺が露出した辺322の1つと平行である場合に、識別された辺を推定された辺424として検証できる。ある実施形態においては、ロボットシステム100は、テストされた対の辺(例えば、識別された辺と、露出した辺322の横断されないインスタンス)上の2つ以上の対応する点の間の距離が等しいことを検証することに基づいて、平行な向きであることをテストできる。ある実施形態においては、両辺および/またはそれらの延長線が、露出した辺322を横断したインスタンスと、角度80度〜100度の間で交差する場合等、テストされた対の辺および/またはそれらの辺の延長線が、同じ角度で共通の辺と交差する場合に、ロボットシステム100は、平行な向きを識別できる。
したがって、ロボットシステム100は、検出した線(例えば、2Dの辺および/または不完全な辺)および/または推定された辺424と重ならない把持位置420を導出できる。ロボットシステム100は、MVR412の辺と、最も近くの検出した線および/または推定された辺424との間の距離間の比率を釣り合わせることに基づいて、把持位置420を導出できる。ロボットシステム100は、MVR412に基づいた角部で、または、角部の近くで物体を把持するので、ロボットシステム100は、その比率を釣り合わせることに基づいて、任意の1つの特定の方向に沿った最大の潜在的トルクを低減する把持位置420を導出できる。また、ロボットシステム100は、さらに、推定された辺424と一致するまたは、推定された辺424から外に延びるように、MVR412を導出または調整してよい。
ロボットシステム100は、導出した把持位置420を使用して、図2のロボットアーム202とエンドエフェクタ204とを操作できる。ロボットシステム100は、把持位置420でスタックの角部にある物体(例えば、登録対象406)を把持できる。ある実施形態においては、ロボットシステム100は、以前は露出していなかった辺を明瞭に区別するために、把持した物体を持ち上げ、および/または、水平に移動させることができる。例えば、ロボットシステム100は、辺を正確に区別するために、最小距離に対応する所定の高さだけ、物体を持ち上げ、および/または、物体を水平に移動させることができる。また、例えば、ロボットシステム100は、エンドエフェクタの高さの変化および/または傾きを監視および/または分析しながら、物体を持ち上げ、および/または水平に移動させることができ、それによって、露出した辺322の反対側の追加の辺が認識可能になる。ロボットシステム100は、最初の持ち上げ中、および/または、最初の持ち上げ後、データを取得および処理して、認識されていない物体314をさらに記述することができる。
MVR検出の概要
本実施形態は、物体の正確な最小実行可能領域(MVR)を生成することに関連してよい。露出した外側角部および露出した辺は、2Dおよび/または3D画像データ(例えば、点群データ)を検査することによって識別されてよい。識別された露出した外側角部および露出した辺に基づいて、最初のMVRが、露出した辺に対向する辺を識別することによって生成されてよい。ある実施形態においては、ロボットシステム100は、露出した辺に対応する(例えば、に平行な)対向する辺(例えば、図4Bの推定された辺424)を識別することに基づいて、MVRを生成できる。最初のMVRは、露出した外側角部から露出した辺に沿って対向する辺にまで延びてよい。
最初のMVRを決定した後、点群によって規定された最初のMVRから表面または層の端部まで延びる可能なMVR領域(例えば、互いの閾値範囲内の深度測定値を有する横方向に隣り合う位置のセット)が、識別されてよい。物体のマージされたMVRは、最初のMVRと可能なMVRとを含んでよい。検証されたMVRは、マージされたMVRを検査/テストすることによって生成されてよい。検証されたMVRは、認識されていない物体を含む正確な領域を表してよい。検証されたMVRに基づいて、本明細書に記載のロボットシステム100は、物体を登録してよく、物体の把持および/または移動等、物体に関するタスクを行ってよい。
多くの場合、物体の辺(例えば、外側のまたは露出した辺)が、識別され得る。例えば、図2の対象スタック210の周囲に沿って配置された物体の外側の辺(例えば、図3Cの露出した辺322)は、取り囲んでいる物体が無くてよい、および/または、取り囲んでいるいずれの物体からも離れていてよい。したがって、撮像結果(例えば、3D点群)は、外側の辺を表す示された値(例えば、高さ測定値、および/または、色または明るさ等の画像値)の突然の変化を含み得る。しかしながら、多くの場合、他の辺は、見えない場合がある、または、(例えば、閾値信頼値に基づいて)正確に規定するのが困難な場合がある。例えば、箱の表面の設計/画像は、物体で識別された不正確な辺につながる場合がある。したがって、不正確な辺が原因で、2D/3D画像データの部分を正確に分離するのが困難な場合がある。
ロボットシステム100は、画像データ(例えば、点群および/または2D画像)を検査し、1つまたは複数の層を決定することによって、物体の露出した外側角部326および/または露出した辺322を識別してよい。例えば、ロボットシステム100は、撮像結果に基づいて、対象スタック210の物体(複数可)の上層(例えば、図3Bの認識されていない物体314)を識別できる。上層内で、ロボットシステム100は、MVR導出のために、物体および/または表面の一部分(例えば、互いに閾値連続範囲内にある高さの値を有する領域)を選択できる。ロボットシステム100は、表面(例えば、層の1つまたは、その中の一部分)を形成/規定する露出した辺が、表面および/または対応する物体の横方向の/周囲の境界に対応することを推定できる。最初のMVRは、露出した辺に向かい合う対向する辺を識別することによって生成されてよく、ここで、最初のMVRは、露出した外側角部(例えば、露出した辺のセットおよび/または周囲の境界によって形成される交点)から露出した辺に沿って対向する辺まで延びてよい。
ロボットシステム100は、画像データのマーカ(例えば、不完全な辺)に基づいて、最初の推定を拡大および/または縮小することによって、最初のMVRをさらに処理(例えば、調整)できる。調整されたMVRを検査して、把持位置420の決定および/または認識されていない物体の登録に使用される最終的なMVRを決定できる。
図5は、本技術のある実施形態による、パレタイズされたパッケージのセット500(例えば、図2の対象スタック210)の上面図を示す。図5に示すように、第1の物体510は、辺512a〜512dを含み得る。辺は、所与の図(例えば、上面図)から見た物体の境界を表してよい。一定の状況においては、辺512a〜512dの少なくとも一部(例えば、辺512c〜512d)は、閉ざされており、他の隣り合う物体/辺に当接してよい。逆に、辺の一部(例えば、辺512a〜512b)は、開かれており、図3Cの露出した辺322に対応してよい。
第1の箱510は、水平方向に隣り合う物体から離れた、または、水平方向に隣り合う物体が無い1つまたは複数の露出した外側角部514を含み得る。露出した外側角部514は、スタックの図3の露出した外側角部326に対応してよい。以下に記載のように、画像データ(例えば、点群および/または2D画像)を検査して、パッケージの露出した辺および露出した外側角部を識別してよい。
点群のセグメント化
図6は、本技術のある実施形態による、露出した外側角部のグラフィック表現600を示す。図6に示すように、点群(例えば、グラフィック表現600)を処理して、露出した外側角部614(例えば、図3の露出した外側角部326の1つ)を識別してよい。例えば、点群は、図5の第1の物体510、または、その一部の3Dカメラによって生成された上面図に対応し得る。点群は、深度を示す複数の層を有する三次元点群を含んでよい。各層および/または表面は、互いから閾値連続範囲内にある水平方向に隣り合う深度値のセットに対応し得る。例えば、閾値連続範囲は、水平方向の隣り合う位置が、互いから閾値距離(例えば、1センチメートル未満)内、または、傾斜にしたがって閾値距離内にある深度測定値を有することを必要とし得る。また、閾値連続範囲は、基準高さ(例えば、対象スタック310の最も高い/最も近い点)に対して床および/または傾斜を画定できる。閾値連続範囲は、同様に、水平方向の隣り合う位置のセットの連続性を識別するために、2D画像特性(例えば、色および/または明るさ)の限界を画定できる。点群の層の深度は、対応する物体の表面に垂直な方向に沿った分離(例えば、垂直分離)に対応し得る。
したがって、点群を分析、処理して、層を分離し、および/または、開かれた3Dの辺/角部を識別してよい。ある実施形態においては、ロボットシステム100(例えば、ロボットシステム100内の1つまたは複数のプロセッサ)は、1つまたは複数の所定の連続性の規則/閾値にしたがって、点群の深度値をグループ化することに基づいて、層を識別できる。例えば、ロボットシステム100は、深度値が互いの閾値連続範囲内にある場合、および/または、深度値が平坦なまたは連続した表面を表す一定の傾斜にしたがう場合に、水平方向の隣り合う/接続された深度値のセットをグループ化できる。ロボットシステム100は、露出した辺(例えば、図5の露出した辺512aおよび512b)を識別した層の境界として識別できる。換言すると、ロボットシステム100は、適格な深度変化が生じる層/表面の水平方向の周辺位置として、露出した辺512aおよび512bを識別できる。一般的に、対象スタック210の上層を形成する物体/辺の深度測定値は、上層の下の層を形成する物体/辺より小さい(例えば、第1の画像装置312により近い距離を表す)大きさを有してよい。
ある実施形態においては、ロボットシステム100は、2D視覚画像の目に見える線を識別することに基づいて、露出した辺を決定できる。例えば、パレットおよび/または床は、既知の色、明るさ等に対応してよい。したがって、ロボットシステム100は、このような既知のパターンを区切る線を物体(複数可)の露出した辺として識別できる。また、ロボットシステム100は、2D分析を使用して、露出した辺の3D識別を検証できる。
露出した辺に基づいて、ロボットシステム100は、開かれた3D角部(例えば、露出した外側角部514)を識別できる。例えば、ロボットシステム100は、露出した辺に関連付けられた形状/角度を識別できる。ロボットシステム100は、露出した辺(例えば、辺512a〜512b)が閾値角度範囲内の角度(例えば、80度〜100度)で交差する/を形成する点群の位置として露出した外側角部514を決定するように構成されてよい。
説明のための例として、ロボットシステム100は、第1の領域612と隣接する領域616a〜616cとを識別することによって、開かれた3D角部614を識別できる。ロボットシステム100は、スキャンされた領域層の隣り合う水平方向位置のセットが互いから閾値連続範囲内にある深度値を有する場合に、第1の領域612を識別できる。ロボットシステム100は、第1の領域612の深度値から閾値連続範囲の外にある深度値を有する他の水平方向位置として、隣接する領域616a〜616cを識別できる。ある実施形態においては、ロボットシステム100は、深度値が変化して閾値連続範囲の外になる場合、および/または、深度値変化の位置が形状テンプレート(例えば、物体間の直線および/または最小の分離幅)に一致する場合に、第1の領域612の辺、および/または、隣接する領域616a〜616cの始まりを識別できる。より具体的には、隣接する領域616a〜616cは、対象スタック210の表面(すなわち、第1の領域612)の深度値より第1の画像センサ212から離れた距離を表す深度値を有し得る。第1の領域612と隣接する領域616aおよび616cとの間に結果として生じる辺は、露出した辺と対応し得る。ある実施形態においては、開かれた3D角部614を識別することは、第1の領域612がある象限を形成し、隣接する領域616a〜616cが、物体のスタックの外側の位置等の残りの象限および/または空の空間に対応することを検証することを含んでよい。空の空間は、点群ノイズとして考慮されてよい非常に疎な点群を有して検出された空間を示してよい。
他の3D角部が、3D点群を用いて決定されてよい。ある実施形態においては、露出した外側角部は、輪郭形状であってよく、「L」形状の角部は、有効な角部を含まない場合がある。したがって、ロボットシステム100は、要件の1つ(例えば、最小の連続直線長さ)を満たす辺のセグメントを、このような辺のセグメントを所定の長さによって延ばすことに基づいて、識別できる。延ばされた辺のセグメントが、他のセグメントまたは延ばされたセグメントと、ある角度で交差する場合に、ロボットシステム100は、輪郭形状上の点(例えば、交差している辺のセグメント間にある弧の中点)を露出した外側角部として識別できる。
ある実施形態においては、3D角部は、ランク付けされてよい。例えば、(例えば、スタックの上層の角部にある物体の)空の空間に囲まれた3D角部は、他の物体より高くランク付けされてよい。開かれた3D角部614は、第1の領域612のサイズ、第1の領域612の形状に対する開かれた3D角部614の位置、囲んでいる領域間の(例えば、第1の領域612と隣接する領域616aおよび616cとの間の)深度値の差、および/または、第1の領域616aの深度値から閾値連続範囲内の深度値を有する他の領域(例えば、他の表面/物体)と第1の領域612との間の水平方向の距離等、他の要因に基づいて、ランク付けされてよい。
ある実施形態においては、ロボットシステム100は、不完全な辺を識別してよい。不完全な辺は、実際の辺であることも実際の辺でないこともある2Dおよび/または3D分析で識別された辺であってよい。不完全な辺の一部は、他の物体のノイズの存在および/または、撮像装置(例えば、カメラ)の能力/位置のために識別されない場合がある箱の実際の辺/箱と箱の間の隙間に対応してよい。不完全な辺は、表面の絵もしくはマーク、または、一緒にテープで止められた箱のフラップ間の仕切り/継ぎ目等、2D画像分析から検出された物体表面上の視覚的パターンまたはマークであってもよい。逆に、パターンの無い箱は、不完全な辺として識別できる2Dの線を1つも有さない場合がある。ロボットシステム100は、ノイズ分散を超えるが、辺識別のための規則/閾値を完全には満たさないセンサ出力の位置の不完全な辺を識別できる。ある実施形態においては、ロボットシステム100は、3Dセンサ出力を用いて、露出した外側の辺(例えば、第1の領域612の周囲の辺)を識別でき、2Dセンサ出力を用いて、不完全な辺を識別できる。また、ロボットシステム100は、角度閾値範囲内にある角度で他の辺と交差しない2Dまたは3Dの辺として、不完全な辺を識別してよい。不完全な辺に関する詳細を以下に詳しく記載する。
最初のMVRの生成
図7は、本技術のある実施形態による、パレタイズされたパッケージのセットの上面図を示す。図7は、上面図(例えば、図2の対象スタック210の3Dおよび/または2Dセンサ画像)に関連する最初のMVR710をさらに示す。最初のMVR710は、MVRの境界および/または対応する物体の辺の最初の推定を表してよい。換言すると、最初のMVR710は、1つの認識されていない物体の表面の最初の推定を表し得る。ロボットシステム100は、開かれた3D角部および/または露出した辺を使用して、最初のMVR710を導出できる。最初のMVR710を導出することは、点群から識別された層のそれぞれを検査して、物体、辺、角部等を識別することを含んでよい。例えば、ロボットシステム100は、互いから閾値連続範囲内の深度値を有する点群データ(例えば、3Dセンサ出力)の領域(例えば、図6の第1の領域612)として、最初のMVR710を導出できる。換言すると、ロボットシステム100は、連続した表面に対応する十分に一致したまたは線形にパターン化された深度値を有する水平方向の隣り合う位置のグループとして最初のMVRを導出できる。したがって、ロボットシステム100は、露出した外側角部514(例えば、第1の角部714aおよび/または第2の角部714b)と対応する露出した辺とによって少なくとも部分的に区切られるエリアとして最初のMVRを導出できる。例えば、最初のMVR710は、第1の角部714aから露出した辺722および726に沿って対向する辺724および728まで延びてよい。ある実施形態においては、ロボットシステム100は、開かれた3D角部(例えば、第1の角部714a)から開始して、(例えば、開かれた3D角部から離れる方に)露出した辺をたどることによって、最初のMVR710を導出してよい。最初のMVR710は、たどられた露出した辺が他の露出した辺(例えば、対向する辺724および/または728等、たどられていない辺に対向する辺、および/または、たどられていない辺と平行な辺)と交差または直面するまで、延ばされてよい。
ある場合には、最初のMVR710は、様々な理由(例えば、物体間の空間、センサ粒度等)のために、複数の物体の表面に対応してよい。したがって、ロボットシステム100は、導出された最初のMVR710の1つまたは複数の寸法を検証してよい。ロボットシステム100は、MVR710の1つまたは複数の寸法が最小候補サイズより大きく、最大候補サイズより小さいことを検証できる。閾値寸法は、ロボットシステム100にとって受信可能な/予測された物体の最小および/または最大の寸法を表してよい。また、閾値寸法は、把持/接触エリアの最小サイズを表すため等、図2のエンドエフェクタ204の水平方向の取付面積を表してよい。
最初のMVR710の1つまたは複数の寸法が、(例えば、最大寸法を超えることによって、または、最小寸法未満になることによって)、閾値外になると、ロボットシステム100は、不完全な辺712(例えば、1つまたは複数の端部の他の辺に一致しない、または、交差しない2D/3Dの辺)にしたがって、最初のMVR710(例えば、最上層)をさらにセグメント化すること等によって、最初のMVR710を調整できる。換言すると、ロボットシステム100は、不完全な辺712にしたがって最初のMVRを調整/縮小でき、対応する結果をテストできる。ある実施形態においては、ロボットシステム100は、1つまたは複数の端部の露出した辺と交差しない2Dの辺および/または3Dの辺として不完全な辺712を決定できる。また、ロボットシステム100は、露出した辺の1つと平行な2Dおよび/または3Dの辺として、不完全な辺712を決定できる。ある実施形態においては、ロボットシステム100は、不完全な辺712に関連付けられた信頼値を計算できる。信頼値は、不完全な辺712が表面の辺および/または隣り合う物体間の分離に対応する可能性を表してよい。例として、ロボットシステム100は、不完全な辺712の全長、不完全な辺712の形状、および/または、不完全な辺712と不完全な辺712を囲む部分との間の(例えば、深度、色、明るさ等の)差に基づいて、信頼値を計算できる。
以下に詳細に記載するように、ロボットシステム100は、不完全な辺712にしたがって、または、不完全な辺712まで最初のMVR710を縮小することに基づいて、検証されたMVR720を導出してよい。換言すると、ロボットシステム100は、対向する平行な辺724および/または728の代わりに、不完全な辺712の1つまたは複数によって区切られた最初のMVR710内のエリアとして、縮小された候補MVRを識別できる。ロボットシステム100は、不完全な辺712に到達するまで、対応する露出した辺(例えば、それぞれ、対応する露出した辺722、726)の方に対向する平行な辺(例えば、図4Bの推定された辺424等、2Dおよび/または3Dの辺であってよい対向する平行な辺724、728)をたどることによって、最初のMVR710を縮小することができる。換言すると、ロボットシステム100は、最初のMVR710に関連付けられた第2の角部714bを識別し、次に、他の辺(例えば、不完全な辺712等、交差するおよび/または平行な辺)を検索しながら、関連付けられた辺(例えば、対向する平行な辺724および/または728)に沿って第2の角部714から離れるように移動することができる。ロボットシステム100は、上記のように、識別された辺の向きをテストできる。例えば、ロボットシステム100は、横断された辺と識別された辺との間の角度が、閾値角度範囲(例えば、80度から100度、および/または、直角に対応する他の範囲)内にある場合に、識別された辺を検証してよい。また、ロボットシステム100は、識別された、横断されていない露出した辺に沿った対応する点の複数のセット間の距離のセットが互いから閾値範囲内にある場合等に、識別された辺が対応する露出した辺に平行であることを検証してよい。これは、反復的または増分的に行われてよい。MVRをそれ以上縮小できない場合、ロボットシステム100は、結果として生じるエリアを検証されたMVR領域720と結論付けてよい。
ロボットシステム100は、上記のように縮小された寸法を閾値と比較することに基づいて、縮小された候補MVRを検証できる。例えば、ロボットシステム100は、不完全な辺712によって画定された縮小されたエリアが、最小/最大閾値を満たす場合に、縮小された候補MVRを検証されたMVR720として導出できる。また、ロボットシステム100は、不完全な辺712が所定の閾値を超える信頼値に対応する場合に、縮小された候補MVRを検証できる。さらに、ロボットシステム100は、1つまたは複数の方向に閾値距離だけ不完全な辺712を延ばすことができる。例えば、ロボットシステム100は、延ばされた不完全な辺が、他の辺と交差して、閾値角度範囲を満たす角度を形成する場合に、縮小された候補MVRを検証してよい。
最初のMVR710を拡大する例として、図8は、本技術のある実施形態による、マージされたMVR領域の例を示す。ある場合には、複数の隣り合う表面は、基本的に同じ高さを有してよく、表面と表面の間に辺/水平方向の分離を有してよい。説明のための例として、点群で表された物体は、1片のテープで接続された2つの分離された長方形のフラップ/セグメントを有する箱の上面であってよい。上記1つまたは複数の制限のために、ロボットシステム100は、1つのフラップを含み、フラップ/セグメント間のテープまたは分離に対応する辺まで延びるように、最初のMVR710を導出してよい。このような例に関して、ロボットシステム100は、検証されたMVR820の導出時に、追加の領域を導出し、その領域を最初のMVR710とマージ/テストできる。
図8に示すように、追加の妥当なMVR領域812a〜812bは、最初のMVR710に基づいて、決定されてよい。追加の妥当なMVR領域812a〜812bは、最初のMVR710に相関する領域を含んでよい。例えば、ロボットシステム100は、2Dおよび/または3D画像の部分を分析することに基づいて、追加の妥当なMVR領域812a〜812bを決定できる。ロボットシステム100は、一致する視覚的特性(例えば、色、明るさ、および/または、画像パターン)、および/または、最初のMVR710に対して閾値連続範囲内にある一致する深度値を有する位置として、追加の妥当なMVR領域812a〜812bを決定できる。ロボットシステム100は、最初のMVR710と関連付けられていると決定された画像の部分として、候補エリアを導出できる。
説明のための例として、ロボットシステム100は、露出した外側角部714aから離れる方に第1の露出した辺722および第2の露出した辺726(例えば、3D画像データに描かれた辺)をたどることに基づいて、MVR(例えば、最初のMVRおよび拡大されたMVR)を処理できる。ロボットシステム100は、第1の最初の対向する辺822と第2の最初の対向する辺826とを含む対向する辺の最初のセットを識別できる。ロボットシステム100は、第1の露出した辺722が第1の最初の対向する辺822に平行な場合、および/または、第2の露出した辺726が第2の対向する辺826に平行な場合に、対向する辺の最初のセットを検証できる。ロボットシステム100は、検証された対向する辺を使用して、最初のMVR710を導出できる。
ロボットシステム100は、(例えば、露出した外側角部714aから離れる方に)対向する辺の最初のセットを超えて第1の露出した辺722および第2の露出した辺726をたどることに基づいて、追加の妥当なMVR領域812a〜812bをさらに決定できる。ロボットシステム100は、たどられた辺(例えば、第1の露出した辺722および/または第2の露出した辺726)と交差する、または、たどられた辺から閾値分離距離内にある1つまたは複数のさらなる対向する辺(例えば、第1の辺832および/または第2の辺836)を識別できる。ロボットシステム100は、第1の辺832が第1の露出した辺722および/または第1の最初の対向する辺822に平行な場合、および/または、第2の辺836が、第2の露出した辺726および/または第2の最初の対向する辺826に平行な場合等に、さらなる対向する辺を上記と同様に検証できる。
1つまたは複数のさらなる対向する辺が検証されると、ロボットシステム100は、追加の妥当なMVR領域を識別できる。例えば、ロボットシステム100は、第1の最初の対向する辺822と、さらなる対向する辺の第1(例えば、第1の辺832)との間のエリアとして、第1の追加の妥当なMVR領域812aを識別できる。また、ロボットシステム100は、第2の最初の対向する辺826と、さらなる対向する辺の第2(例えば、第2の辺836)との間のエリアとして、第2の追加の妥当なMVR領域812bを識別できる。
ロボットシステム100は、候補エリア(例えば、最初のMVR710と、第1の追加の妥当なMVR領域812aおよび/または第2の追加の妥当なMVR領域812bとの組み合わせ)を検証/テストすることに基づいて、追加の妥当なMVR領域812a〜812bを決定できる。例えば、ロボットシステム100は、候補エリア(例えば、最初のMVR710に関連付けられていると決定された画像の部分)と最初のMVR710との間の分離距離が所定の閾値未満であることを検証できる。ロボットシステム100は、候補エリアの1つまたは複数の寸法を上記の最小/最大寸法閾値と比較することによって、候補エリアをさらにテストできる。ロボットシステム100は、候補エリアが最小閾値(例えば、最小候補サイズの寸法)未満の場合に、候補エリアを追加の妥当なMVR領域812a〜812bとして決定できる。ある実施形態においては、ロボットシステム100は、サイズ比較、分離距離、および/または、候補エリアと最初のMVR710との間の関連性/類似性を使用して、信頼レベルを計算できる。信頼レベルは、候補エリアが最初のMVR710に対応する部分と同じ物体に対応する可能性を表してよい。ロボットシステム100は、信頼レベルを所定の閾値と比較して、候補エリアを、追加の妥当なMVR領域812a〜812bとして分類されるべきか、または、(例えば、別の物体に対応する)最初のMVR710の新しいインスタンスとして分類されるべきかを決定できる。
検証されたMVRの生成
ロボットシステム100は、最初のMVR710と追加の妥当なMVR812a〜812bとを組み合わせることに基づいて、検証されたMVR820を導出できる。したがって、ロボットシステム100は、最初のMVR710を拡大して、他の近くの領域を含めることによって、候補MVRを導出できる。したがって、ロボットシステム100は、登録されていない物体の完全な表面を検証されたMVR820を介して正確に推定する可能性を高めることができる。
ある実施形態においては、ロボットシステム100は、検証されたMVR820と検証されたMVR720(例えば、最初のMVR710を縮小した結果)との両方を導出できる。1つまたは複数の所定のプロセス/方程式にしたがって、ロボットシステム100は、上記の処理パラメータの1つまたは複数を用いて、検証したMVRのそれぞれの信頼値を計算できる。ロボットシステム100は、より大きい信頼値を有する検証したMVRを最終的なMVRとして選択できる。
あるいは、ロボットシステム100は、より小さい候補エリアおよび/またはより大きい候補エリアのテストが不成功な場合に、最初のMVR710を最終的なMVRとして導出できる。例えば、マージされたMVRが最大候補サイズより大きい場合、マージされたMVRは拒絶されてよく、検証されたMVR820は、追加の妥当なMVRのいずれも有さずに、最初のMVR710を含んでよい。また、図7に記載の縮小されたMVRが、最小候補サイズより小さい場合、検証されたMVR710は、最初のMVR710を含んでよい。ある実施形態においては、ロボットシステム100は、まず、最初のMVR710を拡大することによって、大きくなったMVRを導出できる。ロボットシステム100は、次に、上記の拡大されたMVRを反復して縮小して、最終的なMVRを導出できる。ロボットシステム100は、最終的な検証されたMVRを使用して、上記の登録されていない物体を登録および/または操作できる。
最小実行可能領域(MVR)自動登録パイプラインの生成
図9は、本技術のある実施形態による、物体を認識する物体認識プロセス900のフロー図を示す。プロセスは、図1のロボットシステム100で利用可能なおよび/または受信された情報に基づいてよい。例えば、ロボットシステム100は、図2の対象スタック210および/またはその中の物体(例えば、登録された物体および/または認識されていない物体)を表す2Dおよび/または3D画像データを(例えば、図2の第1の画像センサ212を介して)受信/にアクセスしてよい。ロボットシステム100は、図1のパッケージ112の最小可能寸法(最小候補サイズとも呼ばれる)、パッケージ112の最大可能寸法(最大候補サイズとも呼ばれる)、または、それらの組み合わせ等、所定のおよび記憶されたデータにアクセスしてもよい。ロボットシステム100は、受信可能なまたは予測した物体に関する既知のまたは所定のデータ/記述を含むマスタデータ(物体セットとも呼ばれる)にさらにアクセスおよび利用できる。例えば、物体セットは、物体寸法、表面画像/外見、パターン、色等、様々な物体に関連する特性の記述を含み得る。比較する際に、対象スタック210の個々の物体(すなわち、パッケージ112等)の寸法を、ロボットシステム100は、知っていてもいなくてもよい。
物体認識プロセス900は、記述子ベースの検出プロセス(ブロック902)を含んでよい。ある実施形態においては、記述子ベースの検出プロセスは、2D画像データの視覚分析またはコンピュータビジョン分析を含み得る。視覚分析に基づいて、検出推定が物体セットに基づいて生成されてよい(ブロック904)。検出推定は、画像データ(例えば、2D画像データ)の一部分が、物体セットに表された物体に一致、または対応するという仮説を含み得る。例として、ロボットシステム100は、物体セットと2D画像データ間の一致する画像部分/特徴、記述子、および/または、他の外見に関連するデータに基づいて、検出推定を生成できる。
記述子ベースの検出プロセスは、仮説を検証することを含んでよい(ブロック906)。換言すると、ロボットシステム100は、物体セットおよび/または他のセンサデータ(例えば、点群データ等、3D画像データ)の登録された物体の特性に基づいて等、検出推定を検証できる。ロボットシステム100は、他の特徴、ローカルな特徴記述子、および/または、3Dデプスセンサからの3D画像データを検査/照合することによって、仮説を検証できる。例えば、ロボットシステム100は、重要な視覚的特徴(例えば、ロゴ、名前、最大の/最も明るい特徴等)のセットを物体セットと照合することに基づいて、仮説を生成でき、他の残りの視覚的特徴を物体セットと比較することに基づいて、仮説を検証できる。また、ロボットシステム100は、仮説に対応する表面に対応する2D画像データ(すなわち、その境界/辺)の位置を識別することに基づいて、仮説を検証できる。例えば、ロボットシステム100は、2D画像データの識別された部分に対応する関連する2Dの辺の特性(例えば、辺の寸法および位置)を計算できる。ロボットシステム100は、2D画像データの仮定された部分の2Dの辺の位置/長さを3D画像データ(例えば、点群)に表された辺の位置/長さと比較することに基づいて、仮説を検証できる。ロボットシステム100は、仮定されたエリアに対応する3Dの辺の特性(例えば、長さ)が、物体セットに表された仮定された物体の辺の特性と一致する場合に、仮説を検証できる。換言すると、ロボットシステム100は、仮定された部分の対応する3Dの辺の位置/長さ等の追加の態様が、物体セットに表された物体の追加の態様と一致する場合に、2D画像データの仮定された部分が、物体セットに表された物体に一致すると検証できる。
物体登録プロセス900は、点群検出(ブロック908)を含み得る。ある実施形態においては、点群検出プロセスは、3Dデプスセンサからの3D画像データの3D分析を含み得る。点群検出は、点群データを分けて辺および/または個々の層の特徴を識別することを含んでよい(ブロック910)。例えば、ロボットシステム100は、深度測定値にしたがって、点群データを分けることができる。上記のように、ロボットシステム100は、互いから閾値範囲内の深度測定値を有する隣り合う位置のグループを識別できる。したがって、ロボットシステム100は、対象スタック210の層および/または表面に対応するグループを識別できる。ある実施形態においては、ロボットシステム100は、辺/境界、表面の向き、および/または、不連続性を3D画像データから識別できる。ロボットシステム100は、識別された辺/境界、表面の向き、および/または、不連続性を使用して、辺によって区切られ、同じ表面の向きを有し、および/または、不連続の対向する側にある層を識別できる。追加的に、または、代替的に、ロボットシステム100は、2D画像データで識別された辺を使用して、辺を識別、および/または、3Dの辺を認証できる。
検出推定は、測定された寸法に基づいて生成されてよい(ブロック912)。検出推定は、3D画像データの一部分が物体セットに表された物体に一致、または、属するという仮説を含み得る。例えば、ロボットシステム100は、個々の層それぞれの測定された寸法に基づいて、検出推定を生成できる。ロボットシステム100は、層/表面の識別された辺/境界が物体セットに表された1つまたは複数の物体の周囲の辺に対応すると仮定できる。例えば、ロボットシステム100は、上記のように辺の長さを測定または計算する。ロボットシステム100は、物体セットの既知の/登録された物体に対応するまたは一致する画像の部分および/または対象スタック210の対応する領域を含む検出推定を生成できる。
ロボットシステム100は、検出推定を検証してよい(ブロック914)。ロボットシステム100は、仮定されたエリアの他の特性を物体セットの登録された物体の他の特性と比較することによって、仮説を検証できる。例えば、層を形成する辺の測定された寸法が、登録された物体の1つの対応する寸法に一致する場合に、ロボットシステム100は、比較された辺によって区切られた物体が、一致する登録された物体である可能性が高いことを検証できる。代替的に、または、追加的に、ロボットシステム100は、3D画像データの仮定された部分に対応する2D画像データの部分を分析することに基づいて、仮説を検証できる。例えば、ロボットシステム100は、長さ比較のために使用された識別された3Dの辺の点の座標/位置を決定できる。ロボットシステム100は、対象スタック210の2D画像データ内の対応する位置/部分を識別できる。ロボットシステム100は、2D画像データの識別された部分を物体セットに記憶された(表面画像を含み得る)表面の対応する表現と比較することによって、仮説を検証できる。2D画像の識別された部分の2Dの特性(例えば、明るさ、色のパターン等の外見)が、仮定された登録された物体の表面の表現に一致する場合に、ロボットシステム100は、仮説を検証でき、対応する物体が対象スタック210の位置に存在することを検出できる。したがって、ロボットシステム100は、対象スタック210の既知の物体(例えば、図3Bの認識された物体312)を識別できる。
物体認識プロセス900は、空でない物体セットを用いて開始されてよい。ある実施形態においては、物体認識プロセス900は、上記図9に関して記載したように、記述子ベースの検出および/または点群ベースの検出のいずれかを用いて開始してよい。代替的に、または、追加的に、物体認識プロセス900は、他の検出方法も異なる検出方法をマージすることもなく、記述子ベースの検出または点群検出を実施してよい。
図10は、本技術のある実施形態による、図1のロボットシステム100を動作させる方法1000のブロック図である。ロボットシステム100は、方法1000を実施して、図2の第1の画像センサ212によって生成されたおよび/または画像センサ212から受信した2D/3D画像データを処理できる。例えば、ロボットシステム100は、メモリデバイスに記憶されたプロセッサ命令を1つまたは複数のプロセッサを用いて実行することによって、方法1000を実施できる。したがって、1つまたは複数のプロセッサは、本明細書に記載のプロセス(複数可)を実施できる。1つまたは複数のプロセッサは、データを受信、データを分析、結果/コマンド/設定を生成、および/または、コマンド/設定を通信して、1つまたは複数のロボットユニットを動作させることができる。
方法1000は、図2の対象スタック210の既知の/登録された物体(例えば、図3Bの認識された物体312)を認識することを含み得る。方法1000によると、ロボットシステム100は、画像データの未解明の領域に対応する図3Bの認識されていない物体314をさらに処理、登録できる。したがって、方法1000は、図9の物体認識プロセス900を含み得る。
ロボットシステム100は、物体認識プロセス900の後、1つまたは複数の未解明の領域が画像データに残っていることを識別できる(ブロック1002)。ロボットシステム100は、物体セット(例えば、マスタデータ内の登録データ)に表された物体との一致を返信(または、対応)しない(例えば、パレット、カート、コンテナ等の水平方向の境界内の)図1のスタート位置112の画像データの任意の部分として、未解明の領域を識別できる。ロボットシステム100は、未解明の領域(複数可)が図3Bの1つまたは複数の認識されていない物体314に対応すると判断できる。
ロボットシステム100は、未解明の領域(複数可)をテストできる(ブロック1004)。ロボットシステム100は、未解明の領域を、その形状および/またはその寸法にしたがってテストできる。したがって、ロボットシステム100は、画像データ(例えば、2D視覚画像および/または3D点群)の辺を識別できる(ブロック1020)。例えば、ロボットシステム100は、互いから閾値範囲内にある深度測定値を有する隣り合う位置を識別することに基づいて、画像データ(例えば、2D画像および/または3D点群)の未解明の領域(複数可)の層/表面を識別できる。ロボットシステム100は、深度測定値が水平方向の隣り合う位置にわたって閾値範囲の外に逸脱する識別した層の境界として、露出した辺を識別できる。また、ロボットシステム100は、明るさ、色等の変化にしたがって2D画像を分析することに基づいて、辺を識別できる。ある実施形態においては、ロボットシステム100は、ソーベルフィルタを使用して、辺を識別できる。
ロボットシステム100は、未解明の領域(複数可)の識別された辺を所定の形状テンプレートおよび/または長さと比較することによって、未解明の領域をテストできる。例えば、ロボットシステム100は、(すなわち、接続された辺のセットによって画定された)未解明の領域の形状を予測された物体を表す形状テンプレート(例えば、箱、および/または、円筒形状)と比較できる。ロボットシステム100は、未解明の領域の形状をテストするために、形状テンプレートの寸法を調整してよい。追加的に、または、代替的に、ロボットシステム100は、識別された辺(例えば、2Dおよび/または3D画像データに示された辺)の長さを計算し、その長さを所定の最小/最大閾値と比較できる。
形状および/または長さが、所定の閾値/条件を満たす場合に、ロボットシステム100は、上記のようにMVR分析を用いて物体検出を行ってよく、MVRを生成してよい(ブロック1006)。ロボットシステム100は、識別された辺/角部を用いて、最初のMVRを導出してよい(ブロック1022)。例えば、ロボットシステム100は、開かれた角部の1つを選択でき、対応する開かれた辺をたどって、他の適格な2D/3Dの辺(例えば、図4Bの推定された辺424、および/または、図7の対向する平行な辺724、728)を見つけることができる。ロボットシステム100は、開かれた辺と他の適格な辺とが所定の条件/閾値(例えば、最小/最大サイズ要件)を満たす場合に、最初のMVRを導出できる。
ある実施形態においては、ロボットシステム100は、最初のMVRを拡大すること(ブロック1024)によって、および/または、最初のMVRを縮小すること(ブロック1026)によって等、最初のMVRをさらに処理できる。ロボットシステム100は、上記のように図8の追加の妥当なMVR領域812a〜812bを決定することに基づいて、最初のMVRを拡大できる。ロボットシステム100は、異なる角部(例えば、最初に選択した角部と対角線上に向かい合う角部)から開始して辺を見つけることに基づいて、MVR(例えば、最初のMVRおよび/または拡大されたMVR)を縮小できる。例えば、ロボットシステム100は、MVRを縮小するために他の辺(例えば、図7の不完全な辺712、および/または、他の2D/3Dの辺)を考慮できる。
ロボットシステム100は、調整されたおよび/または最初のMVRを検証できる(ブロック1028)。ロボットシステム100は、妥当なMVR領域および/または組み合わせが、所定の条件/閾値(例えば、対応する最小/最大サイズ要件)を満たす場合に、図8の検証されたMVR820を、最初のMVRと妥当なMVR領域との組み合わせとして導出できる。ロボットシステム100は、考慮された辺(複数可)によって区切られたエリアが、所定の条件/閾値(例えば、対応する最小/最大サイズ要件)を満たす場合に、図7の検証されたMVR720を導出できる。考慮された辺が、所定の条件/閾値を満たさない場合に、ロボットシステム100は、最後の有効な結果に基づいて、検証されたMVRを導出できる。例えば、ロボットシステム100は、拡大された結果および縮小された結果がテスト条件に合わない場合に、最初のMVRを検証されたMVRとして設定できる。また、ロボットシステム100は、その後の縮小がテスト条件に合わない場合に、検証されたMVR820を生成できる。ある実施形態においては、ロボットシステム100は、MVRを最初に縮小し、その後、拡大できる。したがって、ロボットシステム100は、その後の拡大がテスト条件に合わない場合に、検証されたMVR720を生成できる。
検証されたMVRは、それぞれ、未解明の領域の認識されていない物体314の1つの表面の推定(例えば、上面)を表すことができる。換言すると、検証されたMVRは、それぞれ、未解明の領域内の1つの物体を表す推定された検出を表すことができる。
ロボットシステム100は、MVRをさらに分析して、MVRが確かか不確かかを決定できる(ブロック1008)。例えば、ロボットシステム100は、MVRに含まれる、および/または、MVRの導出に利用される開かれた角部(例えば、3D角部)の数を決定し、それにしたがって、MVRを分類できる。ロボットシステム100は、関連付けられた開かれた角部の数を所定の閾値と比較することに基づいて、MVRを分類できる/の分類を決定できる。説明のための例として、ロボットシステム100は、2つ以下の開かれた3D角部を含む、または、2つ以下の開かれた3D角部を用いて導出される最初のおよび/または検証されたMVRを、不確かなMVRと決定できる。また、ロボットシステム100は、3つ以上の開かれた3D角部を含む、または、3つ以上の開かれた3D角部用いて導出される最初のおよび/または検証されたMVRを、確かなMVRと決定できる。
ある実施形態においては、ロボットシステム100は、(例えば、ブロック1024〜1028の前に)最初のMVRの確実性を判断できる。最初のMVRが確かなMVRである場合に、ロボットシステム100は、ブロック1024〜1028の上記動作を迂回してよい。ロボットシステム100は、最初のMVRが不確かなMVRである場合に、ブロック1024〜1028の上記プロセスを実施してよい。他の実施形態においては、ロボットシステム100は、処理されたMVRを拡大、縮小、および/または、検証した後、検証されたMVRの確実性を判断できる。
ロボットシステム100は、MVRが確かな場合に、物体セットを更新できる(ブロック1030)。ある実施形態においては、ロボットシステムは、MVRの分類にしたがって、MVRで物体セットを更新できる。例えば、確かなMVRを用いて、ロボットシステム100は、確かなMVRが、それぞれ、1つの検出された物体(例えば、認識されていない物体314の1つのインスタンス)に対応することを決定する/結論付けること等によって、物体を検出してよい。したがって、ロボットシステム100は、確かなMVR(例えば、視覚的画像、および/または、対応する寸法)を物体セットに記憶する等によって、(例えば、MVRをさらに調整、テスト、および/または、検証することなく)確かなMVRを検出および/または直接、登録できる。更新された物体セット(すなわち、確かなMVRで更新された物体セット)を用いて、ロボットシステム100は、フィードバックループによって表されるように、物体認識プロセス900を再度、実施してよい。
MVRが不確かな場合に、ロボットシステム100は、検証されたMVRにしたがってタスクを行ってよい(ブロック1010)。ロボットシステム100は、検証されたMVRを使用して、図4Bの把持位置420を導出できる。例えば、ロボットシステム100は、検証されたMVRの露出した角部と整列したまたは当接した把持位置420を導出できる。また、ロボットシステム100は、検証されたMVRの中間部分に重なる把持位置420を導出できる。把持位置420に基づいて、ロボットシステム100は、図2のロボットアーム202および/または図2のエンドエフェクタ204を動作させて、物体を把持、移動するコマンド、設定、および/または、動作計画を導出できる。タスクに関しては、ロボットシステム100は、図1のタスク位置116に物体を移動できる。また、ロボットシステム100は、移動中、物体を1つまたは複数のセンサに提示する、および/または、1つまたは複数の線/平面に対して物体を配置する等、1つまたは複数の特定の位置に物体をさらに配置できる。
ロボットシステム100は、物体の移動中、物体に関する追加データを取得してよい(ブロック1032)。例えば、ロボットシステム100は、物体を把持し、最初の移動を行う(例えば、所定の距離だけ上昇させる、および/または、水平方向に移動させる)ことができる。ロボットシステム100は、最初の移動後、(例えば、第1の画像センサ212を介して)1つまたは複数の更新された2D/3D画像データを生成できる。把持した物体と周りの物体との間の分離が増加することに基づいて、ロボットシステム100は、更新された2D/3D画像データを分析して、辺、MVR、および/または、物体寸法を再導出できる。また、ロボットシステム100は、1つまたは複数の交差センサ(図示せず)にしたがって、物体の高さを計算できる。ロボットシステム100は、移動される物体の底部が、交差センサ(例えば、光信号の中断を検出するように構成されたセンサ)に関連付けられた横方向に向いた検出線/平面に入る/を出る時、エンドエフェクタ204の高さを決定できる。ロボットシステム100は、エンドエフェクタの高さと、検出線/平面の既知の高さとに基づいて、高さを計算できる。また、ロボットシステム100は、移動中の物体の周囲の画像、識別子の値/位置、重量、および/または、他の物理的記述を取得できる。
ロボットシステム100は、移動された認識されていない物体を登録できる(ブロック1034)。ロボットシステム100は、追加データおよび/または検証されたMVRを、上記のように物体セットに記憶することに基づいて、物体を登録できる。ロボットシステム100は、物体認識プロセス900へのフィードバックループによって示されるように、更新された物体セットを用いて、他の物体をさらに認識できる。
ブロック1010に対応するプロセスを実施する時、ロボットシステム100は、(例えば、物体認識プロセス900から生じる)検出された物体、および/または、新しく登録された検出された物体(例えば、確かなMVR)と共に、不確かなMVRを計画モジュール(図示せず)に返信してよい。計画モジュールは、認識された物体、検出された物体(例えば、確かなMVRに対応する認識されていない物体)、および/または、他の認識されていない物体を操作/移動する動作計画を導出できる。ロボットシステム100は、認識されていない物体の移動中、追加情報(例えば、物体高さ、識別子データ、プロファイル画像等)をさらに取得でき、取得された追加情報を使用して、物体セットの登録データを更新できる。ロボットシステム100は、取得された追加情報を使用して、認識されていない物体を登録でき、および/または、最終的な検証されたMVRを導出できる。
ある実施形態においては、ロボットシステム100は、未解明の領域を処理し、その領域の全ての最初の/検証されたMVRを生成できる。方法1000の反復した実施にしたがって、ロボットシステム100は、未解明の領域を物体セットと比較して、最初に、生成されたMVRのうち、確かなMVRを決定、登録できる。更新された物体セット(例えば、確かなMVR)を用いて、ロボットシステム100は、物体認識プロセス900を再度、実施して、確かなMVRに対応する未解明の領域の物体を検出できる。ロボットシステム100は、未解明の領域内の物体セットの更新に使用される確かなMVRに一致する領域を識別することによって、未解明の領域を更新し、それによって、対応する物体を検出できる。ロボットシステム100は、確かなMVRに対応/一致する部分を未解明の領域から取り除くことによって、未解明の領域を更新することを終えてよい。ロボットシステム100は、結果として生じる未解明の領域が確かなMVRを含まなくなるまで、この反復プロセスを繰り返すことができる。不確かなMVRに関して、ロボットシステム100は、対応する検証されたMVRを未解明の領域から導出/使用して、その領域内の認識されていない物体を操作できる。ロボットシステム100は、上記のように、認識されていない物体を操作しながら、追加情報をさらに取得してよい。ロボットシステム100は、検証されたMVRおよび/または追加情報で物体セットを更新してよく、物体認識プロセス900を続けて、移動された物体に一致する他の物体を認識し、反復プロセスを繰り返してよい。ロボットシステム100は、未解明の領域内の移動された物体の検証されたMVRに一致する領域を識別することによって、未解明の領域を更新し、それによって、対応する物体を検出できる。ロボットシステム100は、移動された物体の検証されたMVRに一致する部分を未解明の領域から取り除くことによって、未解明の領域を更新することを終えてよい。ロボットシステム100は、更新された未解明の領域を処理して、認識されていない物体の次の種類/インスタンスに対応する次のMVRを導出、検証できる。
追加的に、または、代替的に、ロボットシステム100は、認識された物体を決定し、全てのMVRを導出し、次に、物体の移動を計画してよい。他の実施形態においては、ロボットシステム100は、認識された物体、および/または、確かなMVRに対応する物体を最初に移動させることに基づいて、MVRを導出または更新できる。したがって、ロボットシステム100は、認識されていない物体の追加の3Dの辺/角部を露出させる可能性を増加させ得る。追加の3Dの辺/角部を露出させる可能性の増加は、確かなMVRを識別する可能性を増加させることができ、これは、物体と導出したMVRとを検出する精度を向上させることができる。さらに、精度の向上は、処理ステップを減らす/除くことによって、および/または、不正確な物体検出による物体の損失および/または衝突を低減することによって、効率を向上させることができる。
ロボットシステム100は、本明細書に記載した実施形態を使用して、自律的に物体セットをポピュレートできる。換言すると、ロボットシステム100は、登録データを含まない物体セットの空のセットから開始できる。このような条件の下では、ロボットシステム100は、ブロック1002で開始する方法1000を実施し、受信した画像データ全体を未解明の領域として識別できる。登録データが存在しないので、ロボットシステム100は、物体が処理される(例えば、開始位置114からタスク位置116に移動される)と、人間オペレータの入力が殆どまたは全く無く、物体を登録できる。したがって、ロボットシステム100は、物体認識プロセス900を実施することなく、MVRの導出を開始でき、導出されたMVRのサブセット(例えば、確かなMVR)を物体セットに記憶できる。ロボットシステム100は、上記のように方法1000を反復して実施して、物体を登録できる。例えば、ロボットシステム100は、未解明の領域内の対応する部分を物体セットに記憶された導出されたMVRのサブセットと照合することに基づいて、未解明の領域に表された物体の第1のセットを検出できる。ロボットシステム100は、物体の第1のセットの検出にしたがって、未解明の領域から一致する部分を取り除くことによって、未解明の領域を更新することができる。ロボットシステム100は、更新された未解明の領域の他の物体を登録するために、前記更新された未解明の領域を処理して、MVRの新しい/次のセット(例えば、確かなMVRおよび/または他の検証されたMVRの他のセット)を導出できる。
処理システム例
図11は、本明細書に記載の少なくとも一部の動作を実施し得る処理システム1100の例を示すブロック図である。図11に示すように、処理システム1100は、1つまたは複数の中央処理ユニット(「プロセッサ」)1102、メインメモリ1106、不揮発メモリ1110、ネットワークアダプタ1112(例えば、ネットワークインタフェース)、ビデオディスプレイ1118、入力/出力装置1120、制御装置1122(例えば、キーボードおよびポインティングデバイス)、記憶媒体1126を含む駆動ユニット1124、および、信号生成装置1130を含んでよく、これらは、バス1116に通信可能に接続される。バス1116は、適切なブリッジ、アダプタ、もしくは、コントローラによって接続された、任意の1つまたは複数の別個の物理的バス、ポイントツーポイント接続、または、両方を表す抽象化されたものとして示される。バス1116は、よって、例えば、システムバス、ペリフェラルコンポーネントインターコネクト(PCI)バス、または、PCI−エクスプレスバス、ハイパートランスポートまたは業界標準アーキテクチャ(ISA)バス、小型コンピュータシステムインタフェース(SCSI)バス、ユニバーサルシリアルバス(USB)、IIC(I2C)バス、または、「ファイヤワイヤ」とも呼ばれる電気電子技術者協会(IEEE)規格1394バスを含み得る。
様々な実施形態において、処理システム1100は、ユーザデバイスの一部として動作するが、処理システム1100は、(例えば、有線または無線で)ユーザデバイスに接続されてもよい。ネットワーク配置においては、処理システム1100は、クライアント−サーバネットワーク環境において、サーバまたはクライアントマシンとして動作してよく、または、ピアツーピア(または、分散)ネットワーク環境において、ピアマシンとして動作してよい。
処理システム1100は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ、タブレット、ラップトップコンピュータ、パーソナルデジタルアシスタント(PDA)、セルラーフォン、プロセッサ、ウェブ機器、ネットワークルータ、スイッチもしくはブリッジ、コンソール、ハンドヘルドコンソール、ゲーム機、ミュージックプレイヤ、ネットワーク接続された(「スマート」)テレビ、テレビ接続装置、または、処理システム1100が行うべきアクションを特定する命令のセットを(順次、または、他の方法で)実行できる任意のポータブルデバイスもしくはマシンであってよい。
メインメモリ1106、不揮発メモリ1110、および、記憶媒体1126(「機械可読媒体」とも呼ばれる)は、1つの媒体として示されるが、「機械可読媒体」および「記憶媒体」という用語は、1つまたは複数の命令セット1128を記憶する1つの媒体または複数の媒体(例えば、集中型または分散データベース、および/または、関連するキャッシュおよびサーバ)を含むと捉えるべきである。「機械可読媒体」および「記憶媒体」という用語は、コンピュータシステムによる実行のための命令セットを記憶、エンコード、または、伝えることができ、本開示の実施形態の方法論のいずれか1つまたは複数をコンピュータシステムに行わせる任意の媒体を含むと捉えるものとする。
一般的に、開示の実施形態の実施に実行されるルーチンは、オペレーティングシステムもしくは特定のアプリケーションの一部、コンポーネント、プログラム、オブジェクト、モジュール、または、「コンピュータプログラム」と呼ばれる命令のシーケンスとして実施されてよい。コンピュータプログラムは、典型的に、コンピュータの様々なメモリおよび記憶装置に様々な時に設定された1つまたは複数の命令(例えば、命令1104、1108、1128)を含み、命令は、1つまたは複数の処理ユニットまたはプロセッサ1102によって読み取られ、実行されると、処理システム1100に、開示の様々な態様を伴う要素を実行する動作を行わせる。
さらに、完全に機能するコンピュータおよびコンピュータシステムの文脈で実施形態を記載したが、様々な実施形態が、様々な形態でプログラム製品として分散されてよいこと、また、分散を実際に達成するのに使用される特定の種類のマシンまたはコンピュータ可読媒体に関わらず、開示は等しく適用されることを、当業者は理解されよう。例えば、本明細書に記載の技術は、仮想マシンまたはクラウドコンピューティングサービスを用いて実施されてよい。
機械可読記憶媒体、機械可読媒体、または、コンピュータ可読(記憶)媒体のさらなる例は、揮発性および不揮発性のメモリデバイス1110等の記録可能タイプの媒体、フロッピ―および他のリムーバブルディスク、ハードディスクドライブ、光ディスク(例えば、コンパクトディスクリードオンリメモリ(CD ROMS)、デジタル多用途ディスク(DVD))、並びに、デジタル通信リンクおよびアナログ通信リンク等の伝送媒体を含むが、これらに限らない。
ネットワークアダプタ1112は、処理システム1100が、ネットワーク1114のデータを処理システム1100の外部にあるエンティティに、処理システム1100および外部のエンティティがサポートする任意の既知のおよび/または便利な通信プロトコルを通して、仲介するのを可能にする。ネットワークアダプタ1112は、ネットワークアダプタカード、無線ネットワークインタフェースカード、ルータ、アクセスポイント、無線ルータ、スイッチ、マルチレイヤスイッチ、プロトコル変換器、ゲートウェイ、ブリッジ、ブリッジルータ、ハブ、デジタルメディアレシーバ、および/または、リピータのうちの1つまたは複数を含み得る。
ネットワークアダプタ1112は、ファイヤウォールを含んでよく、ファイヤウォールは、ある実施形態においては、コンピュータネットワークのデータにアクセス/プロキシする許可を統治および/または管理し、異なるマシン間および/またはアプリケーション間の変化する信用レベルを追跡する。ファイヤウォールは、例えば、これらの様々なエンティティ間でトラフィックフローとリソース共有とを調節するために、マシンとアプリケーション、マシンとマシン、および/または、アプリケーションとアプリケーションの特定のセットの間に所定のアクセス権のセットを行使することができるハードウェアコンポーネントおよび/またはソフトウェアコンポーネントの任意の組み合わせを有する任意の数のモジュールであってよい。ファイヤウォールは、さらに、例えば、個人、マシン、および/または、アプリケーションによる物体にアクセスおよび動作する権利と、許可権が有効な環境とを含む、許可を詳述するアクセス制御リストを管理してよい、および/または、アクセス制御リストへのアクセスを有してよい。
ある実施形態においては、ロボットシステムを動作させる方法は、1つまたは複数の認識されていない物体を含む対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを受信することと、登録された物体の1つまたは複数の物理的態様を表す物体セットとの比較に基づいて、2Dおよび/または3D画像データの未解明の領域を識別することと、各層が、3D画像データにおいて、互いから閾値範囲内の深度測定値を有する横方向に隣り合う点のセットを含む、2D画像データおよび/または前記3D画像データの前記未解明の領域内の1つまたは複数の層を識別することと、水平方向の隣り合う位置にわたって深度測定値が閾値範囲の外に逸脱する1つまたは複数の層の境界を表す、未解明の領域の露出した辺を識別することと、それぞれ、露出した辺のセット間の接合部に対応する1つまたは複数の露出した角部を、露出した辺に基づいて、識別することと、未解明の領域に表された登録されていない物体の表面の推定を表す最小実行可能領域(MVR)を、識別された露出した辺と露出した角部とに基づいて、導出することと、導出されたMVRに関連付けられた露出した角部の数を決定することと、MVRと露出した角部の数とにしたがって、認識されていない物体を検出することと、認識されていない物体の表現としてMVRおよび/またはMVRの処理結果とを含むように物体セットを更新することに基づいて、認識されていない物体を登録することとを含んでよい。方法は、未解明の領域と更新された物体セットとを比較することと、未解明の領域内の、物体セットの更新に使用されるMVRおよび/またはMVRの処理結果に一致する部分を識別することと、MVRおよび/またはMVRの処理結果に一致する部分にしたがって物体を検出することと、MVRおよび/またはMVRの処理結果に一致する部分を取り除くことによって、未解明の領域を更新することとに基づいて、更新された物体セットにしたがって、未解明の領域を反復的に更新および分析することをさらに含んでよい。物体セットは、最初の反復のための空のセットであってよく、未解明の領域は、最初の反復のために、2D画像データ、3D画像データ、それらの一部、または、それらに組み合わせを含んでよい。最初の反復に関して、認識されていない物体を登録することは、対象スタックにある認識されていない物体を伴うタスクを実施しながら、物体セットを自律的にポピュレートすることを含んでよい。
ある実施形態においては、認識されていない物体を検出することは、露出した角部の数が所定の閾値を超える場合に、認識されていない物体を直接、検出することを含んでよく、認識された物体を登録することは、露出した角部が所定の閾値を超える場合に、MVRを物体セットに直接、記憶することと含んでよい。ある実施形態においては、所定の閾値は2であってよい。
ある実施形態においては、ロボットシステムは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに接続され、プロセッサによって実行可能な命令を記憶した少なくとも1つのメモリデバイスとを含んでよく、命令は、スタート位置の1つまたは複数の認識されていない物体を表す1つまたは複数の画像データを受信する命令と、それぞれ、他の表面または物体と水平方向に隣り合わない露出した辺との間の接合部を表す、1つまたは複数の画像データの1つまたは複数の露出した角部を識別することに基づいて、最小実行可能領域(MVR)を導出する命令と、MVRに関連付けられた露出した角部の数に基づいて、スタート位置の前記認識されていない物体のうちの1つの1つまたは複数の物理的属性を表すMVRおよび/またはMVRの処理結果で、以前、登録された物体の1つまたは複数の物理的態様を表す物体セットを更新する命令と、スタート位置の他の物体を更新された物体セットに基づいて認識する命令とである。少なくとも1つのメモリデバイスは、MVRが露出した角部の3つ以上に関連付けられる場合等、露出した角部の数を所定の閾値と比較することに基づいて、MVRを確かなMVRと決定する命令、および/または、MVRを確かなMVRと決定することに基づいて、MVRをさらに更新も調整もせずに、MVRおよび/またはMVRの処理結果で直接、物体セットを更新する命令を含んでよい。少なくとも1つのメモリデバイスは、物体セットに表された物体との一致を返信しない画像データの未解明の領域を識別する命令と、確かなMVRが未解明の領域内にあり、MVRを、該未解明の領域に基づいて導出する命令と、さらなる物体認識および/または操作のために、確かなMVRに一致する未解明の領域の部分を取り除く命令とをさらに含んでよい。1つまたは複数の実施形態において、少なくとも1つのメモリデバイスは、確かなMVRに対応する認識されていない物体をスタート位置から離れるように移動する動作を実施する命令と、認識されていない物体を移動する動作を実施した後、スタート位置のさらなる認識されていない物体を表し、更新された未解明の領域に表される次のMVRを、更新された未解明の領域に基づいて、導出する命令と、第2のMVRおよび/または第2のMVRの処理結果で物体セットを更新する命令とをさらに含んでよい。
ある実施形態においては、ロボットシステムは、MVRが露出した角部の2つ以下に関連付けられる場合に、MVRを不確かなMVRと決定する命令と、不確かなMVRをさらに分析すること、および/または、スタート位置の認識されていない物体の1つまたは複数を操作することに基づいて、MVRおよび/またはMVRの処理結果で物体セットを更新する命令とを有する少なくとも1つのメモリデバイスを含んでよい。少なくとも1つのメモリデバイスは、画像データを物体セットと比較することに基づいて、1つまたは複数の認識された物体を検出する命令と、物体セットとの一致を返信しない画像データの未解明の領域を識別する命令と、画像データの未解明の領域の1つまたは複数の露出した角部を識別することに基づいて、スタート位置の認識されていない物体のうちの1つの表面の推定を表す、未解明の領域内のMVRを導出する命令とを含んでよい。少なくとも1つのメモリデバイスは、1つまたは複数の認識された物体をスタート位置から離れるように移動する動作を実施する命令と、1つまたは複数の認識された物体を移動させる動作を実施した後、MVRを更新する命令と、更新されたMVRおよび/またはMVRの処理結果で物体セットを更新する命令とをさらに含んでよい。
ある実施形態においては、プロセッサ命令を記憶した有形で非一時的なコンピュータ読み取り可能媒体は、プロセッサ命令が、プロセッサによって実行されると、プロセッサに、それぞれ、他の表面または物体と水平方向に隣り合わない露出した辺との間の接合部を表す、受信した画像データの1つまたは複数の露出した角部を識別することに基づいて、1つまたは複数の最小実行可能領域(MVR)を導出することによって、スタート位置の登録されたおよび/または認識されていない物体を表す1つまたは複数の受信した画像データを反復して分析することと、対応するMVRに関連付けられた露出した角部の数に基づいて、各MVRの分類を決定することと、対応する分類にしたがって、それぞれ、スタート位置の認識されていない物体のうちの1つの1つまたは複数の物理的属性を表すMVRおよび/またはMVRの処理結果で、以前、登録された物体の1つまたは複数の物理的態様を表す物体セットを更新することと、、更新された物体セットを用いて、スタート位置の他の物体を認識することと、を含む方法を実施させる。ある実施形態においては、1つまたは複数の受信した画像データは、両方とも、1つの撮像位置からの対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを含み、方法は、2D画像データを物体セットと比較することに基づいて、検出推定を生成することと、3D画像データに基づいて、検出推定を検証することとをさらに含んでよい。検出推定を生成することは、2D画像データの一部分を物体セットに表された物体の表面画像と照合することに基づいて、検出推定を生成することをさらに含んでよく、検出推定を検証することは、検出推定に対応する3D画像データの部分を識別することと、3D画像データの識別された部分の3Dの辺の長さを計算することと、3Dの辺の長さが、物体セットに表された物体の辺の長さと一致する場合に、検出推定を検証することとに基づいて、検出推定を検証することをさらに含んでよい。
ある実施形態においては、非一時的なコンピュータ読み取り可能媒体は、1つまたは複数の受信した画像データが、両方とも、1つの撮像位置からの対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを含む、方法を含んでよく、方法は、3D画像データを物体セットと比較することに基づいて、検出推定を生成することと、2D画像データに基づいて、検出推定を検証することとをさらに含んでよい。検出推定を生成することは、互いの閾値範囲内に深度測定値を有する水平方向の隣り合う位置のセットを含む、3D画像データ内の層を識別することと、水平方向の隣り合う位置にわたって、深度測定値が閾値範囲の外に逸脱する位置を表す層の辺を識別することと、辺の長さを計算することと、辺の長さを物体セットに表された物体の寸法と照合することとに基づいて、検出推定を生成することを含んでよく、検出推定を検証することは、検出推定に対応する2D画像データの部分を識別することと、2D画像データの識別された部分の2D特性を識別することと、2D特性が物体セットに表された登録された物体のうちの1つの画像の対応する特性と一致する場合に、検出推定を検証することとに基づいて、検出推定を検証することを含んでよい。ある実施形態においては、非一時的なコンピュータ読み取り可能媒体は、1つまたは複数の受信した画像データを分析することに基づいて、空のセットから物体セットを反復的に構築することをさらに含む方法を含んでよく、1つまたは複数の受信した画像データの分析は、物体セットが、いずれの物体の登録データも含まない場合に、1つまたは複数の受信した画像データまたはその一部分を、未解明の領域として識別することと、未解明の領域から1つまたは複数のMVRを導出することと、対応する分類にしたがって、1つまたは複数のMVRの少なくともサブセットを物体セットに記憶することと、受信した画像データの一部分を物体セットに記憶された1つまたは複数のMVRと照合することに基づいて、受信した画像データに表された物体の第1のセットを検出することと、一致した部分を取り除くことによって、未解明の領域を更新することと、受信した画像データに表された物体の第2のセットを登録するために、更新された未解明の領域に基づいて、MVRの新しいセットを導出することとによる。
上記のように、本明細書で紹介した技術は、例えば、ソフトウェアおよび/またはファームウェアを用いてプログラムされたプログラム可能回路(例えば、1つまたは複数のマイクロプロセッサ)で、全て専用の配線で接続された(すなわち、プログラムできない)回路で、または、このような形態の組み合わせで、実施される。専用回路は、例えば、1つまたは複数の特定用途向け集積回路(ASIC)、プログラム可能論理回路(PLD)、フィールドプログラマブルゲートアレイ(FPGA)等の形態であってよい。
上記から、発明の特定の実施形態を説明のために本明細書に記載したが、発明の範囲を逸脱することなく、様々な修正を行ってよいことは理解されよう。したがって、発明は、添付の請求項によって以外は制限されない。

Claims (20)

  1. ロボットシステムを動作させる方法であって、
    1つまたは複数の認識されていない物体を含む対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを受信することと、
    前記2D画像データおよび/または前記3D画像データの未解明の領域を、登録された物体の1つまたは複数の物理的態様を表す物体セットとの比較に基づいて、識別することと、
    各層が前記3D画像データにおいて、互いから閾値範囲内の深度測定値を有する横方向に隣り合う点のセットを含む、前記2D画像データおよび/または前記3D画像データの前記未解明の領域内の1つまたは複数の層を識別することと、
    前記深度測定値が水平方向の隣り合う位置にわたって前記閾値範囲外に逸脱する前記1つまたは複数の層の境界を表す露出した辺を識別することと、
    それぞれ、前記露出した辺のセット間の接合点に対応する1つまたは複数の露出した角部を、前記露出した辺に基づいて、識別することと、
    前記未解明の領域に表された登録されていない物体の表面の推定を表す最小実行可能領域(MVR)を、前記識別された露出した辺および前記露出した角部に基づいて、導出することと、
    前記導出したMVRに関連付けられた前記露出した角部の数を決定することと、
    前記MVRと、前記露出した角部の前記数とにしたがって、認識されていない物体を検出することと、
    前記MVRおよび/または前記MVRの処理結果を、前記認識されていない物体の表現として含むように前記物体セットを更新することに基づいて、前記認識されていない物体を登録することと、
    を含む、前記方法。
  2. 前記未解明の領域を前記更新した物体セットと比較することと、
    前記物体セットの更新に使用された前記MVRおよび/または前記MVRの前記処理結果に一致する前記未解明の領域内の部分を識別することと、
    前記MVRおよび/または前記MVRの前記処理結果に一致する前記部分にしたがって物体を検出することと、
    前記MVRおよび/または前記MVRの前記処理結果に一致する前記部分を取り除くことによって、前記未解明の領域を更新することと、
    に基づいて、前記更新した物体セットにしたがって、前記未解明の領域を反復して更新および分析することをさらに含む、請求項1に記載の方法。
  3. 前記物体セットは、最初の反復のための空のセットであり、
    前記未解明の領域は、前記最初の反復のために、前記2D画像データ、前記3D画像データ、それらの一部、または、それらの組み合わせを含み、
    前記認識されていない物体を登録することは、前記対象スタックにある前記認識されていない物体を伴うタスクを実施しながら、前記物体セットを自律的にポピュレートすることを含む、
    請求項2に記載の方法。
  4. 前記認識されていない物体を検出することは、前記露出した角部の前記数が所定の閾値を超える場合に、前記認識されていない物体を直接、検出することを含み、
    前記認識された物体を登録することは、前記露出した角部が前記所定の閾値を超える場合に、前記MVRを前記物体セットに直接、記憶することを含む、
    請求項1に記載の方法。
  5. 前記所定の閾値は、2である、請求項4に記載の方法。
  6. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに接続され、前記プロセッサによって実行可能な命令を記憶した少なくとも1つのメモリデバイスと、
    を含む、ロボットシステムであって、前記命令は、
    スタート位置の1つまたは複数の認識されていない物体を表す1つまたは複数の画像データを受信する命令と、
    それぞれ、他の表面または物体と水平方向に隣り合わない露出した辺との間の接合部を表す、前記1つまたは複数の画像データの1つまたは複数の露出した角部を識別することに基づいて、最小実行可能領域(MVR)を導出する命令と、
    前記MVRに関連付けられた前記露出した角部の数に基づいて、前記スタート位置の前記認識されていない物体のうちの1つの1つまたは複数の物理的属性を表す前記MVRおよび/または前記MVRの処理結果で、以前、登録された物体の1つまたは複数の物理的態様を表す物体セットを更新する命令と、
    前記スタート位置の他の物体を前記更新した物体セットに基づいて認識する命令と、
    である、前記ロボットシステム。
  7. 前記少なくとも1つのメモリデバイスは、前記露出した角部の前記数を所定の閾値と比較することに基づいて、前記MVRを確かなMVRとして決定する命令を含む、請求項6に記載のロボットシステム。
  8. 前記少なくとも1つのメモリデバイスは、前記MVRが前記露出した角部の3つ以上に関連付けられる場合に、前記MVRを前記確かなMVRとして決定する命令を含む、請求項7に記載のロボットシステム。
  9. 前記少なくとも1つのメモリデバイスは、前記MVRを前記確かなMVRとして前記決定したことに基づいて、前記MVRをさらに更新または調整することなく、前記物体セットを前記MVRおよび/または前記MVRの処理結果で直接、更新する命令を含む、請求項8に記載のロボットシステム。
  10. 前記少なくとも1つのメモリデバイスは、
    前記物体セットに表された物体との一致を返信しない前記画像データの未解明の領域を識別する命令と、
    前記確かなMVRが未解明の領域内にあり、前記MVRを、該未解明の領域に基づいて導出する命令と、
    さらなる物体認識および/または操作のために、前記確かなMVRと一致する前記未解明の領域の部分を取り除く命令と、
    を含む、請求項9に記載のロボットシステム。
  11. 前記少なくとも1つのメモリデバイスは、
    前記確かなMVRに対応する認識されていない物体を、前記スタート位置から離れるように移動する動作を実施する命令と、
    前記認識されていない物体を移動する前記動作を実施した後、前記スタート位置のさらなる認識されていない物体を表し、且つ、更新された未解明の領域に表された次のMVRを、前記更新された未解明の領域に基づいて導出する命令と、
    前記第2のMVRおよび/または前記第2のMVRの処理結果で前記物体セットを更新する命令と、
    を含む、請求項10に記載のロボットシステム。
  12. 前記少なくとも1つのメモリデバイスは、
    前記MVRが前記露出した角部の2つ以下と関連付けられる場合に、前記MVRを不確かなMVRとして決定する命令と、
    前記不確かなMVRをさらに分析すること、および/または、前記スタート位置にある前記認識されていない物体の1つまたは複数を操作することに基づいて、前記MVRおよび/または前記MVRの処理結果で前記物体セットを更新する命令と、
    を含む、請求項6に記載のロボットシステム。
  13. 前記少なくとも1つのメモリデバイスは、
    前記画像データを前記物体セットと比較することに基づいて、1つまたは複数の認識された物体を検出する命令と、
    前記物体セットとの一致を返信しない前記画像データの未解明の領域を識別する命令と、
    前記画像データの前記未解明の領域の前記1つまたは複数の露出した角部を識別することに基づいて、前記未解明の領域内の前記MVRを導出する命令と、
    を含み、
    前記MVRは、前記スタート位置にある前記認識されていない物体のうちの前記1つの表面の推定を表す、
    請求項6に記載のロボットシステム。
  14. 前記少なくとも1つのメモリデバイスは、
    前記1つまたは複数の認識された物体を前記スタート位置から離すように移動する動作を実施する命令と、
    前記1つまたは複数の認識された物体を移動する前記動作を実施した後、前記MVRを更新する命令と、
    前記更新されたMVRおよび/または前記更新されたMVRの処理結果で前記物体セットを更新する命令と、
    を含む、請求項13に記載のロボットシステム。
  15. プロセッサ命令を記憶した有形で非一時的なコンピュータ読み取り可能媒体であって、前記プロセッサ命令は、プロセッサによって実行されると、前記プロセッサに、スタート位置にある登録されたおよび/または認識されていない物体を表す1つまたは複数の受信した画像データを反復して分析することを含む方法を実施させ、
    前記分析は、
    それぞれ、他の表面または物体と水平方向に隣り合わない露出した辺との間の接合部を表す、前記受信した画像データの1つまたは複数の露出した角部を識別することに基づいて、1つまたは複数の最小実行可能領域(MVR)を導出することと、
    前記対応するMVRに関連付けられた前記露出した角部の数に基づいて、前記MVRのそれぞれの分類を決定することと、
    前記対応する分類にしたがって、それぞれ、前記スタート位置にある前記認識されていない物体のうちの1つの1つまたは複数の物理的属性を表す前記MVRおよび/または前記MVRの処理結果で、以前、登録された物体の1つまたは複数の物理的態様を表す物体セットを更新することと、
    前記物体セットを更新することと、
    前記スタート位置にある他の物体を前記更新した物体セットを用いて認識することと、
    による、有形で非一時的なコンピュータ読み取り可能媒体。
  16. 前記1つまたは複数の受信した画像データは、両方とも、1つの撮像位置からの前記対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを含み、
    前記方法は、
    前記2D画像データを前記物体セットと比較することに基づいて、検出推定を生成することと、
    前記検出推定を前記3D画像データに基づいて検証することと、
    をさらに含む、請求項15に記載の非一時的なコンピュータ読み取り可能媒体。
  17. 前記検出推定を生成することは、前記2D画像データの一部分を前記物体セットに表された物体の表面画像と照合することに基づいて、前記検出推定を生成することを含み、
    前記検出推定を検証することは、
    前記検出推定値に対応する前記3D画像データの部分を識別することと、
    前記3D画像データの前記識別された部分の3Dの辺の長さを計算することと、
    前記3Dの辺の前記長さが前記物体セットに表された前記物体の辺の長さと一致する場合に、前記検出推定を検証することと、
    に基づいて、前記検出推定を検証することを含む、
    請求項16に記載の非一時的なコンピュータ読み取り可能媒体非一時的なコンピュータ読み取り可能媒体。
  18. 前記1つまたは複数の受信した画像データは、両方とも、1つの撮像位置からの前記対象スタックを表す二次元(2D)画像データおよび三次元(3D)画像データを含み、
    前記方法は、
    前記3D画像データを前記物体セットと比較することに基づいて、検出推定を生成することと、
    前記2D画像データに基づいて、前記検出推定を検証することと、
    をさらに含む、請求項15に記載の非一時的なコンピュータ読み取り可能媒体。
  19. 前記検出推定を生成することは、
    互いの閾値範囲内の深度測定値を有する水平方向の隣り合う位置のセットを含む、前記3D画像データ内の層を識別することと、
    前記深度測定値が水平方向の隣り合う位置にわたって前記閾値範囲の外に逸脱する位置を表す、前記層の辺を識別することと、
    前記辺の長さを計算することと、
    前記辺の長さを前記物体セットに表された物体の寸法と照合することと、
    に基づいて、前記検出推定を生成することを含み、
    前記検出推定を検証することは、
    前記検出推定に対応する前記2D画像データの部分を識別することと、
    前記2D画像データの前記識別された部分の2D特性を識別することと、
    前記2D特性が前記物体セットに表された前記登録された物体のうちの前記1つの画像の対応する特性に一致する場合に、前記検出推定を検証することと、
    に基づいて、前記検出推定を検証することを含む、
    請求項18に記載の非一時的なコンピュータ読み取り可能媒体。
  20. 前記方法は、前記1つまたは複数の受信した画像データを分析することに基づいて、空のセットから前記物体セットを反復して構築することをさらに含み、前記画像データを分析することは、
    前記物体セットがいずれの物体の登録データも含まない場合に、前記1つまたは複数の受信した画像データまたはその画像データの一部分を未解明の領域として識別することと、
    前記1つまたは複数のMVRを前記未解明の領域から導出することと、
    前記対応する分類にしたがって、前記1つまたは複数のMVRの少なくともサブセットを前記物体セットに記憶することと、
    前記物体セットに記憶された前記1つまたは複数のMVRに一致する前記受信した画像データの部分に基づいて、前記受信した画像データに表された物体の第1のセットを検出することと、
    前記一致した部分を取り除くことによって、前記未解明の領域を更新することと、
    前記受信した画像データに表された物体の第2のセットを登録するために、前記更新された未解明の領域に基づいて、MVRの新しいセットを導出することと、
    による、請求項15に記載の非一時的なコンピュータ読み取り可能媒体。
JP2020213054A 2018-10-30 2020-12-23 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム Pending JP2021051797A (ja)

Applications Claiming Priority (4)

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

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020514750A Division JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム

Publications (2)

Publication Number Publication Date
JP2021051797A true JP2021051797A (ja) 2021-04-01
JP2021051797A5 JP2021051797A5 (ja) 2022-11-29

Family

ID=70327497

Family Applications (15)

Application Number Title Priority Date Filing Date
JP2019133517A Active JP6704154B2 (ja) 2018-10-30 2019-07-19 自動パッケージ登録システム、デバイス、および方法
JP2020515142A Active JP6822718B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020501166A Active JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020516651A Active JP6822719B2 (ja) 2018-10-30 2019-10-29 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2020514750A Active JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020514759A Active JP6820044B1 (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 Pending JP2021050100A (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 Pending JP2023160842A (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Pending JP2023174652A (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2023212474A Pending JP2024023692A (ja) 2018-10-30 2023-12-15 自動パッケージ登録システム、デバイス、および方法

Family Applications Before (9)

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

Family Applications After (5)

Application Number Title Priority Date Filing Date
JP2020216162A Active JP7466150B2 (ja) 2018-10-30 2020-12-25 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020216438A Active JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A Pending JP2023160842A (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Pending JP2023174652A (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) KR102650494B1 (ja)
CN (11) CN111113492A (ja)
DE (6) DE112019000125B4 (ja)
WO (6) WO2020091846A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022177833A (ja) * 2021-05-18 2022-12-01 株式会社Mujin 物体サイズ検出のためのロボットシステム

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9333649B1 (en) * 2013-03-15 2016-05-10 Industrial Perception, Inc. Object pickup strategies for a robotic device
CN110893999A (zh) * 2018-09-12 2020-03-20 泰科电子(上海)有限公司 图像采集***和图像采集方法
KR102650494B1 (ko) 2018-10-30 2024-03-22 무진 아이엔씨 자동화된 패키지 등록 시스템, 디바이스 및 방법
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
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 牧今科技 用于执行或促进物理边缘检测的方法和计算***
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 北京市商汤科技开发有限公司 一种物品配送方法、装置、设备以及存储介质
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
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
WO2022190102A1 (en) * 2021-03-10 2022-09-15 Aquabot Ltd. System and method for identifying or acquiring data corresponding to a handled item
US20220289502A1 (en) * 2021-03-15 2022-09-15 Dexterity, Inc. Adaptive robotic singulation system
CA3214609A1 (en) * 2021-03-26 2022-09-29 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
US20220388171A1 (en) * 2021-06-03 2022-12-08 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
WO2023023366A1 (en) 2021-08-19 2023-02-23 Rehrig Pacific Company Imaging system with unsupervised learning
AT525383A1 (de) * 2021-09-07 2023-03-15 Knapp Ag System zur Vereinzelung und Identifizierung von Artikeln
US20230070495A1 (en) * 2021-09-07 2023-03-09 Mujin, Inc. Robotic gripper assemblies for openable object(s) and methods for picking objects
JPWO2023054539A1 (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
US11783606B2 (en) 2021-11-01 2023-10-10 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
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 アリー ロジスティック プロパティ カンパニー,リミテッド 物流作業を実行するための施設及び方法
DE102023133348A1 (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 주식회사 브릴스 파렛타이징 시스템
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11333770A (ja) * 1998-03-20 1999-12-07 Kobe Steel Ltd 積荷位置姿勢認識装置
JP2013145525A (ja) * 2012-01-16 2013-07-25 Fuji Electric Co Ltd 物品取り出し判定装置、物品取り出し判定システム、物品取り出しシステム、物品取り出し判定プログラムおよび物品取り出し判定方法
JP2018097889A (ja) * 2018-01-17 2018-06-21 セイコーエプソン株式会社 物体認識装置、物体認識方法、物体認識プログラム、ロボットシステム及びロボット

Family Cites Families (108)

* 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 インテリジェントパレタイズシステム
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
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
US6721444B1 (en) 1999-03-19 2004-04-13 Matsushita Electric Works, Ltd. 3-dimensional object recognition method and bin-picking system using the method
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 ファナック株式会社 ワーク取出し装置
US7437214B2 (en) 2003-03-27 2008-10-14 Sony Corporation Robot device and method of controlling the same
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
WO2012066819A1 (ja) * 2010-11-17 2012-05-24 三菱電機株式会社 ワーク取り出し装置
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
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
JP5510841B2 (ja) 2011-12-22 2014-06-04 株式会社安川電機 ロボットシステム及び仕分け済み物品の製造方法
US9067744B2 (en) 2011-10-17 2015-06-30 Kabushiki Kaisha Yaskawa Denki Robot system, robot, and sorted article manufacturing method
CN202717371U (zh) * 2011-11-18 2013-02-06 上海沃迪自动化装备股份有限公司 多功能机器人码垛***
CN202539084U (zh) * 2012-03-01 2012-11-21 成都三茁科技有限公司 多位扫描识别***
JP2013246589A (ja) 2012-05-24 2013-12-09 Sharp Corp 空間情報生成装置、空間情報利用システム、空間情報生成方法、制御プログラム、および、記録媒体
JP5469216B2 (ja) 2012-07-31 2014-04-16 ファナック株式会社 バラ積みされた物品をロボットで取出す装置
US9333649B1 (en) * 2013-03-15 2016-05-10 Industrial Perception, Inc. Object pickup strategies for a robotic device
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 ファナック株式会社 三次元空間に置かれた物品をロボットで取出す装置及び方法
US10343857B2 (en) 2014-01-22 2019-07-09 Symbiotic 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 株式会社東芝 搬送装置および搬送方法
US10370201B2 (en) * 2015-11-13 2019-08-06 Kabushiki Kaisha Toshiba Transporting apparatus and transporting method
CN108349083B (zh) 2015-11-13 2021-09-21 伯克希尔格雷股份有限公司 用于提供各种物体的分拣的分拣***和方法
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***
US10723022B2 (en) * 2016-09-16 2020-07-28 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 深圳市唯特视科技有限公司 一种基于模拟器的机械手抓取和操纵方法
JP6444499B1 (ja) * 2017-04-04 2018-12-26 株式会社Mujin 制御装置、ピッキングシステム、物流システム、プログラム、及び、制御方法
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 村田機械株式会社 ピッキングシステム
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
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 キヤノン株式会社 情報処理装置、情報処理方法及びシステム
KR102650494B1 (ko) 2018-10-30 2024-03-22 무진 아이엔씨 자동화된 패키지 등록 시스템, 디바이스 및 방법
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11333770A (ja) * 1998-03-20 1999-12-07 Kobe Steel Ltd 積荷位置姿勢認識装置
JP2013145525A (ja) * 2012-01-16 2013-07-25 Fuji Electric Co Ltd 物品取り出し判定装置、物品取り出し判定システム、物品取り出しシステム、物品取り出し判定プログラムおよび物品取り出し判定方法
JP2018097889A (ja) * 2018-01-17 2018-06-21 セイコーエプソン株式会社 物体認識装置、物体認識方法、物体認識プログラム、ロボットシステム及びロボット

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
橋本 学、外2名: ""低解像度距離画像と濃淡画像を用いた物体移載ロボット用視覚システムの構築"", 電子情報通信学会論文誌, vol. 84, no. 6, JPN6023034901, 1 June 2001 (2001-06-01), JP, pages 985 - 993, ISSN: 0005136084 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022177833A (ja) * 2021-05-18 2022-12-01 株式会社Mujin 物体サイズ検出のためのロボットシステム
JP7189586B2 (ja) 2021-05-18 2022-12-14 株式会社Mujin 物体サイズ検出のためのロボットシステム

Also Published As

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

Similar Documents

Publication Publication Date Title
JP6820634B2 (ja) 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP6749034B1 (ja) エッジ及び多次元コーナーに基づく検出後の精緻化
JP6704157B1 (ja) 動的パッキング機構を有するロボットシステム
JP2021051721A (ja) 物体識別のための方法および計算システム
CN111783529B (zh) 基于边缘和多维拐角的检测后改善
JP2023052476A (ja) 物体更新機構を備えたロボットシステム及びロボットシステムを操作するための方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201223

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

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230823

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230825

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240517