JP2022087042A - 異常物を除去するための方法、システム、コンピュータ・プログラム、及びコンピュータ可読ストレージ媒体 - Google Patents

異常物を除去するための方法、システム、コンピュータ・プログラム、及びコンピュータ可読ストレージ媒体 Download PDF

Info

Publication number
JP2022087042A
JP2022087042A JP2021189185A JP2021189185A JP2022087042A JP 2022087042 A JP2022087042 A JP 2022087042A JP 2021189185 A JP2021189185 A JP 2021189185A JP 2021189185 A JP2021189185 A JP 2021189185A JP 2022087042 A JP2022087042 A JP 2022087042A
Authority
JP
Japan
Prior art keywords
anomaly
area
bounding box
picking
points
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
JP2021189185A
Other languages
English (en)
Inventor
ジエン・シュイ
Jian Xu
グオチアーン・ホゥ
Guo Qiang Hu
ユエンユエン・ディーン
Yuan Yuan Ding
ファン・リー
Fan Li
ジンフオン・リー
Jinfeng Li
ジュイン・ジュウ
Jun Zhu
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2022087042A publication Critical patent/JP2022087042A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D46/00Picking of fruits, vegetables, hops, or the like; Devices for shaking trees or shrubs
    • A01D46/30Robotic devices for individually picking crops
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • G06V20/188Vegetation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B07SEPARATING SOLIDS FROM SOLIDS; SORTING
    • B07CPOSTAL SORTING; SORTING INDIVIDUAL ARTICLES, OR BULK MATERIAL FIT TO BE SORTED PIECE-MEAL, e.g. BY PICKING
    • B07C5/00Sorting according to a characteristic or feature of the articles or material being sorted, e.g. by control effected by devices which detect or measure such characteristic or feature; Sorting by manually actuated devices, e.g. switches
    • B07C5/34Sorting according to other particular properties
    • B07C5/342Sorting according to other particular properties according to optical properties, e.g. colour
    • B07C5/3422Sorting according to other particular properties according to optical properties, e.g. colour using video scanning devices, e.g. TV-cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • 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/0006Industrial image inspection using a design-rule based approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B07SEPARATING SOLIDS FROM SOLIDS; SORTING
    • B07CPOSTAL SORTING; SORTING INDIVIDUAL ARTICLES, OR BULK MATERIAL FIT TO BE SORTED PIECE-MEAL, e.g. BY PICKING
    • B07C2501/00Sorting according to a characteristic or feature of the articles or material to be sorted
    • B07C2501/0063Using robots
    • 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/30128Food products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/68Food, e.g. fruit or vegetables

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Robotics (AREA)
  • Environmental Sciences (AREA)
  • Medical Informatics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Image Analysis (AREA)

Abstract

【課題】 材料の集団から異常物を除去するための技術を提供する。【解決手段】 プロセッサは、複数の物体を有する材料の集団の画像を受け取ることができる。プロセッサは、複数の物体から異常物を識別することができる。プロセッサは、異常物に対するバウンディングボックスを生成することができる。プロセッサは、1つ又は複数のピッキングポイントを異常物上に生成することができる。1つ又は複数のピッキングポイントは、異常物の少なくとも1つの均衡点上に構成することができる。プロセッサは、1つ又は複数のピッキングポイントを介して、材料の集団から異常物を除去することができる。【選択図】 図2

Description

本開示は、一般に、材料の選別の分野に関し、より具体的には、材料の集団から不規則な材料を除去することに関する。
多くの産業では、製品の製造中に原材料を選別する必要がある。様々な選別方法が存在するが、そうした方法は、除去する必要がある不規則形状材料のすべてを除去することができない場合が多い。すべての不規則形状材料を除去できない場合、最終製品の価値が下がることがあり、最終的には、不規則形状材料が装置に引っかかったときに装置の故障につながることがある。
本発明は、材料の集団から異常物を除去するための技術を提供することを課題とする。
本開示の実施形態は、材料の集団から異常物を除去するための方法、コンピュータ・プログラム製品、及びシステムを含む。プロセッサは、複数の物体を有する材料の集団の画像を受け取ることができる。プロセッサは、複数の物体から異常物を識別することができる。プロセッサは、異常物に対するバウンディングボックスを生成することができる。プロセッサは、1つ又は複数のピッキングポイントを異常物上に生成することができる。1つ又は複数のピッキングポイントは、異常物の少なくとも1つの均衡点(balance point)上に構成することができる。プロセッサは、1つ又は複数のピッキングポイントに基づいて、材料の集団から異常物を除去することができる。
上記の概要は、図示された各実施形態又は本開示のすべての実装を説明することを意図したものではない。
本開示に含まれる図面は、本明細書に組み込まれ、本明細書の一部を構成する。これらの図面は、本開示の実施形態を示し、説明とともに、本開示の原理を説明する役割を果たす。図面は、特定の実施形態を例示するものに過ぎず、本開示を限定するものではない。
本開示の実施形態による、材料の集団の例示的な実施形態を示す。 本開示の実施形態による、ピッキングポイント・システムによって構成された1つ又は複数の画像の例示的な実施形態を示す。 本開示の実施形態による、ピッキングポイント生成の例示的な実施形態を示す。 本開示の実施形態による、材料の集団から異常物を除去する方法のフローチャートを示す。 本開示の実施形態によるクラウド・コンピューティング環境を示す。 本開示の実施形態による抽象化モデル層を示す。 本開示の実施形態による、本明細書に記載される方法、ツール、及びモジュールの1つ又は複数、並びに任意の関連機能を実装する際に用いることができる、例示的なコンピュータ・システムの高レベルブロック図を示す。
本明細書に記載される実施形態は、様々な変更及び代替形態に合わせて修正可能であるが、その具体的な内容は、図面に例として示されており、詳細に説明されるであろう。しかしながら、記載された特定の実施形態は、限定的な意味で捉えられるべきではないことを理解すべきである。それどころか、本開示の精神と範囲内に入るすべての修正、均等物、及び代替をカバーすることが意図される。
本開示の態様は、一般に、材料から異常物を除去することの分野に関し、より詳細には、異常物に関連付けられるピッキングポイントを識別して、適切な除去を可能にすることに関する。本開示は、必ずしもそのような用途に限定されるものではないが、本開示の様々な態様は、この文脈を用いた様々な例の議論を通じて理解することができる。
従来の除去システムでは、様々なタイプの材料(例えば、茶葉及び生薬成分)から不純物を除去するために、ロボット手段(ロボットアームなど)を用いる場合が多い。これらの従来のシステムでは、不純物を目視によって識別し、バウンディングボックスとセグメンテーション計算との組合せを用いて、ピッキングポイントを識別することができる。これらの方法では、不純物(例えば、異常物(anomaly)又は望ましくない材料)上に位置していないピッキングポイントが生成されるか、又はピッキングポイントが不純物の遠位部分の上に位置する場合が多い。不純物上に位置していないピッキングポイントが生成された場合、そのピッキングポイントは失敗である。状況によっては、そうしたピッキングポイントの失敗は、不純物又は異常物の独特の形状、及び不純物の除去の際にピッキングポイントが成功となる場所を正しく推定できないことに起因する。不純物/異常物が除去されない場合、望ましくない材料が、1つ又は複数の不純物/異常物を有する望ましくない消費者製品をもたらす結果となることがある。したがって、より正確に、成功したピッキングポイントを定める方法が必要である。
実施形態において、ピッキングポイント・システムは、材料内のある物体が不純物又は異常物であるかどうか識別するように構成することができる。不純物/異常物が識別されると、ピッキングポイント・システムは、物体(例えば、不純物/異常物)のバウンディングボックスを検出し、バウンディングボックスの全体サイズを判定することができる。バウンディングボックスのサイズが閾値面積より小さい実施形態では、ピッキングポイント・システムは、ピッキングポイントを(例えば、バウンディングボックスの中心に)生成し、不純物/異常物を除去するようにロボット手段を構成することができる。バウンディングボックスのサイズが閾値サイズを上回る実施形態では、ピッキングポイント・システムは、不純物/異常物のセグメンテーションを(例えば、教師なしセグメンテーションを用いて)定めるように構成することができる。
不純物/異常物のセグメンテーションが点によって表される実施形態では、ピッキングポイント・システムは、得られた点を集めて1つ又は複数の連結領域にすることができる(例えば、DBSCANなどの統計的手法を用いて)。不純物/異常物のセグメンテーションが別の形状(例えば、多角形)によって表される実施形態では、描かれた各形状を1つの連結領域に構成することができる。これらの実施形態において、ピッキングポイント・システムは、機械学習原理(例えば、k-セントロイド・クラスタリング)を用いて、ピッキングポイントの数を計算するように構成することができる。
本明細書で論じられる実施形態は、様々な実施で用いることができる。例えば、1つの例示的な実施形態は、消費用に茶葉を加工するときに不純物(例えば、異常物)を除去することを含むことができる。多くの場所で、茶樹は畑で栽培され、茶樹から茶葉が収穫される。様々な努力(例えば、フィルタリング)にもかかわらず、多くの場合、不純物(例えば、茶葉以外の何らかの望ましくない植物性物質)もしくは異物(例えば、石及び繊維)又はその両方が茶葉と一緒に収集されることがある。そのため、茶葉をさらに加工できるようするためには、加工の前に、茶葉に含まれる不純物もしくは異物又はその両方を除去する必要がある。多くの場合、仮にそうした不純物もしくは異物(例えば、異常物)又はその両方が収集された材料から除去されなければ、そうした異常物は、不純物又は異常物が加工装置に影響を与える場合に粗悪な製品又は生産の遅延を生じさせかねない。例えば、茶葉の中に石又は針金片が混入しており、かつ、そうした物質が適時に除去されない場合には、結果的に石又は針金が破損するか又は茶の加工装置に詰まってしまう可能性がある。そのため、こうした異常物(例えば、不純物及び異物)を正確に検出する方法が必要とされる。
ここで図に目を向けると、添付図面において同様の参照番号が同様の部品を示すのに用いられていることに留意すると、図1Aは、本開示の実施形態による、ピッキングポイント・システム100と、異常物104A、104B、及び1つ又は複数の材料106で構成される材料の集団102との例示的な実施形態を示す。ピッキングポイント・システム100を用いて1つ又は複数のピッキングポイントを生成し、材料の集団102から1つ又は複数の異常物(例えば、異常物104A、及び異常物104B)を除去することができる。図1Aは、1つの実施のみの例示を提供し、異なる実施形態を実施することができる環境に関して、いかなる制限も含意しない。描かれた環境に対する多くの変更は、特許請求の範囲に記載された発明の範囲を逸脱することなく、当業者によって行うことができる。
実施形態において、ピッキングポイント・システム100は、1つ又は複数のピッキングポイントを生成することによって、材料の集団102から1つ又は複数の異常物(例えば、異常物104A及び異常物104B)を除去するように構成することができる。実施形態において、ピッキングポイントとは、ロボットアームなどのロボット手段が1つ又は複数の異常物(例えば、異常物104A及び異常物104B)をピッキングする(摘まみ上げる)こと(pick)、把持すること(grasp)、払い落とすこと(swat away)などを行う、特定の定められた位置のことを指すものとすることができる。このように、ピッキングポイント・システム100は、異常物上に位置する1つ又は複数のピッキングポイントを生成するように構成することができる。材料の集団102は、有機材料(例えば、茶葉及び他の植物材料)、無機材料(例えば、金属成分)、又はそれらの任意の組合せなど、任意のタイプ又は量の材料を含むことができる。さらに、材料の集団102は、2種以上の材料タイプを有することができる。
例えば、材料の集団102は、特定の最終製品に含めることができる茶葉及び様々な生薬などの成分の組合せを含むことができる。そうした構成要素は、材料の集団102内で様々なサイズ及び形状であってもよい。材料の集団102はまた、1つ又は複数の異常物(例えば、異常物104A及び異常物104B)を含む場合がある。
本明細書で論じられるように、異常物とは、ピッキングポイント・システム100による除去のために識別される任意の物体を指すことができる。幾つかの実施形態において、異常物は、他の材料(例えば、ごみ材料)と共に収集された望ましい物体であってもよい。例えば、材料の集団102は、1つのタイプの材料であるがサイズが異なるもので構成されてもよい。この例では、ピッキングポイント・システム100は、特定のサイズの材料を異常物として識別し、その材料を他の場所で用いるために材料の集団102からピッキングする又は除去するように構成することができる。このような実施形態により、ピッキングポイント・システム100は、材料の集団102内の各材料片を取り除くことなく、材料の集団102を選別し、関心のある物体又は異常物を識別することができる。他の実施形態において、異常物(例えば、異常物104A及び異常物104B)は、材料の集団102から除去されるべき望ましくない物体(例えば、不純物もしくは異物又はその両方)を指すものとすることができる。
図1Aに示された例示的な実施形態に戻ると、材料の集団102は、異常物104A及び異常物104B、並びに1つ又は複数の材料106を含むがこれらに限定されない複数の物体を含むことができる。1つ又は複数の材料106は、同様のサイズ又は多様なサイズとすることができ、また、任意の数の異なる材料を含むことができる。本明細書で想定される異常物104A及び104Bは、任意の種類の形状又は構成を有することができる。図1Aに示すように、異常物104Aは、一様な形状を有さない物体であってもよい。異常物104Aは、様々な特性を有する任意の種類の材料とすることができる。例えば、異常物104Aは、展性、脆性、又は繊維状であってもよい。従来のピッキングポイント・システムを用いると、結果として、失敗したピッキングポイントが生成され、異常物104Aが材料の集団102から除去されないことがある。異常物104Bは、より一様な形状を有し、一般に小さい領域を有する異常物を代表する。材料106は、図1Aでは葉状の材料として描かれているが、このような描写は、材料106と異常物104A及び104Bとの間の明確な区別を提供するためだけのものであり、したがって限定的なものと見なすべきではない。
図1Bは、本開示の実施形態によるピッキングポイント・システム100の例示的な実施形態を示す。ピッキングポイント・システム100は、1つ又は複数のピッキングポイントを生成/識別し、材料の集団102から1つ又は複数の異常物(例えば、異常物104A、及び異常物104B)を除去することができる。実施形態において、ピッキングポイント・システム100は、図1Aで参照されるような、材料の集団102の1つ又は複数の画像108をキャプチャするもしくは受け取る、又はキャプチャしかつ受け取るように構成することができる。図1Bは、1つの実施のみの例示を提供し、異なる実施形態を実施することができる環境に関して、いかなる制限も含意しない。
実施形態において、1つ又は複数の画像108は、材料の集団102についての情報をキャプチャするように構成された任意のタイプの撮像装置を用いて生成することができる。幾つかの実施形態では、従来の画像認識カメラを用いることができるが、他の実施形態では、他の撮像技術を用いることができ、又は、従来の画像認識方法と組み合わせることができる。例えば、幾つかの実施形態において、材料の集団102は、不透明度(opacity)が低い又はほとんどない、材料と異常物とが混ざり合った厚い層とすることができる。このような実施形態において、従来の画像認識カメラを用いてキャプチャされた1つ又は複数の画像108では、ピッキングポイント・システム100が、複数の物体に関連付けられる必要なパラメータ(例えば、異常物104A、異常物104B、及び材料106のバウンディングボックスもしくはセグメンテーション又はその両方)を定めることを可能にすることができない場合がある。結果として、二次的な撮像方法を用いることができる。そうした二次的な撮像方法の1つは、赤外線撮像を含むことができるが、これに限定されない。実施形態において、特に材料の集団102に重なり合った材料の層がある場合、赤外線撮像は、ピッキングポイント・システム100が、入り組んだ材料の層間を区別し、1つ又は複数の異常物(例えば、異常物104A及び104B)のパラメータを定めることができる、1つ又は複数の画像108を生成することを可能にすることができる。
実施形態において、ピッキングポイント・システム100は、材料の集団102の1つ又は複数の画像108を用いて、1つ又は複数の異常物(例えば、異常物104A及び異常物104B)が材料の集団102内に存在するかどうか識別するように構成することができる。実施形態において、ピッキングポイント・システム100は、1つ又は複数の画像108に対してセグメンテーション解析法を用いて、1つ又は複数の異常物が材料の集団102内に存在するかどうか識別するように構成される。これらの実施形態において、ピッキングポイント・システム100は、材料の集団102の1つ又は複数の画像108のパッチ及び特徴抽出を実行するように構成することができる。
抽出された特徴を用いて、実施形態において、ピッキングポイント・システム100は、様々な統計的解析(例えば、主成分分析(PCA)及びk-meansクラスタリング)を実行するように構成することができる。実施形態において、ピッキングポイント・システム100は、結果として得られた情報が、材料の集団102の1つ又は複数の画像108内の正常な物体/材料(例えば、材料106)及び/又は異常な物体/材料(例えば、異常物104A-104B)を表しているかどうか判定することができる。実施形態において、このような判定は、得られた情報をコーパス又は辞書と比較することを可能にする機械学習機能を用いて実行することができる。これらの実施形態において、コーパス又は辞書は、以前に異常物104又は材料106として識別されたものに関連付けられたデータを有する履歴リポジトリ、もしくは、材料106と異常物104A及び/又は異常物104Bとの間を区別する態様を識別するために用いることができる提供されたデータ(例えば、管理者によって提供されたデータ)のデータベース、又はその両方を含むことができる。
図1Cは、本開示の実施形態による、1つ又は複数の異常物(例えば、異常物104A及び異常物104B)の各々に対してバウンディングボックス110A及び110Bを生成するように構成されたピッキングポイント・システム100の例示的な実施形態を示す。
実施形態において、ピッキングポイント・システム100は、識別された各異常物に対してバウンディングボックスを生成し、閾値面積を定めるように構成することができる。図1Bに示すように、ピッキングポイント・システム100は、異常物104Aの周りにバウンディングボックス110Aを生成して、異常物104Bの周りにバウンディングボックス110Bを生成することができる。幾つかの実施形態において、バウンディングボックス110A及び110Bは、各異常物104A及び104Bの全体を包含するように構成することができる。異常物104Aに関連付けられる総面積と異常物104Bに関連付けられる総面積とを比較すると、総面積は顕著には異ならないかもしれない。しかしながら、バウンディングボックス110Aに関連付けられる面積とバウンディングボックス110Bに関連付けられる面積とを比較すると、異常物104Aの構成及び広がりのため、顕著な違いがある。
実施形態において、識別された各異常物(例えば、104A及び104B)に対するバウンディングボックスが生成されると、ピッキングポイント・システム100は、識別された各異常物に関連付けられたバウンディングボックスの面積を閾値面積と比較することができる。幾つかの実施形態において、閾値面積は、異常物のタイプに応じて異なるように構成することができるが、他の実施形態においては、識別された各異常物に対して1つの閾値面積を用いることができる。実施形態において、特定の異常物のバウンディングボックスの面積が閾値面積の面積を下回る場合、ピッキングポイント・システム100は、その特定の異常物のバウンディングボックスの中心にピッキングポイントを生成するように構成することができる。
実施形態において、閾値面積は、以下の要因を含むがこれらに限定されない様々な要因に依存することができる。(i)材料の集団102内の材料のタイプ及び以前に識別された異常物(例えば、閾値面積は、材料の集団102内で見いだされる物体/材料の平均サイズに応じて大きくする/小さくすることができる)、(ii)除去手段に関連する誤差の可能性(例えば、閾値面積を定める際に、ロボット手段に関連するパーセント誤差を考慮することができる)、(iii)異常物がバウンディングボックスの中心に位置していることの指標となる特定量の面積を定めること、又は(iv)それらの任意の組合せ。
さらに、幾つかの実施形態において、閾値面積は、機械学習の原理に基づいて経時的に設定することができ、バウンディングボックスのサイズがその閾値面積よりも小さい場合にバウンディングボックスの中心にあるピッキングポイントが成功となることを正確に予測できるサイズの閾値面積であることを保証するようになっている。識別された各異常物に対して1つの閾値面積が用いられる実施形態では、閾値面積は小さい面積であることが多い。これらの実施形態において、異常物のバウンディングボックスが閾値面積よりも小さい面積を有すると判定することで、ピッキングポイント・システム100が、ピッキングポイントをバウンディングボックスの中心に生成することができ、そのピッキングポイントが異常物上にあることが保証される。
図1Cに戻ると、ピッキングポイント・システム100は、異常物104Bのバウンディングボックス110Bの面積を閾値面積と比較し、バウンディングボックス110Bが、定められた閾値面積よりも小さい面積を有すると判定した。したがって、ピッキングポイント・システム100は、異常物104Bの中心にピッキングポイント112を生成することができる。実施形態において、バウンディングボックスの面積が閾値面積を下回ることの結果として生成されるピッキングポイントは、異常物上に位置するのみならず、異常物の重心(barycenter)又は均衡点(balancing point)に生成されることが多い。ピッキングポイント112を重心又は均衡点に生成することで、異常物104Bの重量が除去の際に均等に分散されることを保証することができる。異常物104Bの重量を均等に又はほぼ均等に分散させることで、異常物104の大部分又は全体が材料の集団102から除去されることを保証することができる。ピッキングポイントが異常物の均衡点以外の位置に生成された場合、そうした位置決めは異常物の構造に応力を生じさせ、その結果、異常物が破損する可能性がある。除去プロセス中に異常物が破損すると、除去はより困難になり、ピッキングポイント・システム100に関連した効率が低下する。
実施形態において、特定の異常物のバウンディングボックスの面積が閾値面積の面積よりも大きい場合、ピッキングポイント・システム100は、(図1Cにおいて110A内の小さい破線のボックスで描かれているように)1つ又は複数のピッキングポイントを異常物上に生成するように構成することができる。これらの実施形態において、ピッキングポイント・システム100は、1つ又は複数の画像108の1つ又は複数のセグメンテーション解析を計算することによって、1つ又は複数のピッキングポイントを異常物上に生成することができる。幾つかの実施形態では、異常物検出中に行われたセグメンテーション解析を、異常物上にピッキングポイントを生成するために再利用することができるが、他の実施形態では、ピッキングポイントを生成するために二次的セグメンテーション解析を行うことができる。
実施形態において、セグメンテーション解析は、異常物の位置パラメータを識別する関連付けられたセグメントの形で、情報を提供することができる。実施形態において、セグメンテーション解析は、異常物の1つ又は複数のセグメントが点で構成されることを含むことができる。これらの実施形態において、ピッキングポイント・システム100は、点を観察し、点のクラスタが存在するかどうか判定することができる。ピッキングポイント・システム100は、点のクラスタを連結領域として分類/識別するように構成することができる。
実施形態において、セグメンテーション解析は、1つ又は複数の多角形で構成される異常物の1つ又は複数のセグメントを含むことができる。1つ又は複数のセグメントが1つ又は複数の多角形を含む実施形態において、ピッキングポイント・システム100は、1つ又は複数の多角形の各々が(110A内の/110Aの小さい破線のボックスの各々のような)連結領域であることを分類/識別するように構成することができる。幾つかの実施形態では、各多角形が連結領域であるが、他の実施形態では、2以上の多角形を1つの連結領域として識別することができる。実施形態において、セグメンテーション解析は、点又は多角形のいずれかで構成することができ、幾つかの実施形態においては、点及び多角形の両方で構成することができる。
異常物104Aのバウンディングボックス110Aの面積が閾値面積よりも大きいことの結果として、ピッキングポイント・システム100は、異常物104Aに対してセグメンテーション解析を実行し、異常物104A上のどこに1つ又は複数の連結領域を識別すべきかを定めるように構成することができる。図1Cで提示される例示的な実施形態において、異常物104Aに関連付けられた連結領域は、異常物104Aの上に位置する様々な小さい破線のボックスで表される。実施形態において、ピッキングポイント・システム100は、1つ又は複数のピッキングポイントを、識別された各連結領域において識別された異常物上に生成することができる。幾つかの実施形態において、生成されるピッキングポイントは1つだけであるが、他の実施形態においては、ピッキングポイント・システム100は、異常物を除去するのに必要な任意の数のピッキングポイントを計算することができる。実施形態において、1つ又は複数のピッキングポイントを、異常物104Aの構造的完全性が除去プロセスを通して維持されることを保証するように生成することができる。例えば、ピッキングポイント・システム100は、ピッキングポイントを生成する際に、異常物104Aの様々な均衡の中心を考慮して、異常物104Aの重量が均等に分散されることを保証することができる。
実施形態において、ピッキングポイント・システム100は、1つ又は複数の画像108から見いだされた、生成された1つ又は複数のピッキングポイントを介して、材料の集団102から異常物を除去するように構成することができる。ピッキングポイント・システム100は、除去に際して様々なタイプの除去手段を構成することができる。幾つかの実施形態において、除去手段(例えば、任意の種類のロボット手段)は、ある特定の異常物に対して生成された1つ又は複数のピッキングポイントの各々を同時にピッキングする又は把持するように構成することができる。除去手段は、1つ又は複数の異常物を除去することができる任意のタイプの機械的装置を含むことができるが、多くの実施形態において、異常物は、生成されたピッキングポイントにおいて1つ又は複数の異常物を除去するようにピッキングポイント・システム100によって構成されたロボット手段(例えば、ロボットアーム)を介して除去される。
ここで図2を参照すると、本開示の実施形態による、異常物のピッキングポイントを生成するための例示的な方法200を示すフローチャートである。幾つかの実施形態において、方法200は、異常物を識別し、材料の集団から異常物を正確かつ完全に除去することを可能にするピッキングポイントを生成するために用いることができる。
幾つかの実施形態において、方法200は、プロセッサが、複数の物体/材料を有する材料の集団の画像を受け取るオペレーション202で開始する。方法200は、オペレーション204に進む。オペレーション204において、プロセッサは、複数の物体から異常物を識別する。方法200は、オペレーション206に進む。オペレーション206において、プロセッサは、異常物に対するバウンディングボックスを生成する。方法200は、オペレーション208に進む。オペレーション208において、プロセッサは、1つ又は複数のピッキングポイントを異常物上に生成する。方法200は、オペレーション210に進む。オペレーション210において、プロセッサは、異常物上の1つ又は複数のピッキングポイントを介して、材料の集団から異常物を除去する。幾つかの実施形態において、図2に示されるように、オペレーション210の後、方法200は終了することができる。
後述する幾つかの実施形態において、簡潔にするために描かれなかった方法200の1つ又は複数のオペレーションがあり、オペレーション/ステップはプロセッサによってさらに実行される。
したがって、実施形態において、プロセッサは、バウンディングボックスの面積を閾値面積と比較することができる。実施形態において、バウンディングボックスの面積を閾値面積と比較することに応答して、プロセッサは、バウンディングボックスの面積が閾値面積を下回ると判定することがある。これらの実施形態において、プロセッサは、1つ又は複数のピッキングポイントをバウンディングボックスの中心に生成することができる。
実施形態において、バウンディングボックスの面積を閾値と比較することに応答して、プロセッサは、バウンディングボックスの面積が閾値面積を上回ると判定することがある。実施形態において、プロセッサは、異常物の1つ又は複数のセグメンテーションを計算し、1つ又は複数のセグメンテーションを解析することができる。実施形態において、1つ又は複数のセグメンテーションを解析することに応答して、プロセッサは、1つ又は複数のセグメンテーションが点で構成されていることを識別することができる。これらの実施形態において、プロセッサは、点のクラスタが連結領域であるかどうか判定することもできる。
実施形態において、1つ又は複数のセグメンテーションを解析することに応答して、プロセッサは、1つ又は複数のセグメンテーションが1つ又は複数の多角形で構成されていることを識別し、1つ又は複数の多角形の各々が連結領域であると判定することができる。実施形態において、プロセッサは、1つ又は複数のピッキングポイントを異常物上に生成する間に、異常物上の1つ又は複数の連結領域を識別し、1つ又は複数の連結領域に対して1つ又は複数のピッキングポイントの数を計算することができる。実施形態において、プロセッサは、1つ又は複数のピッキングポイントを介して材料の集団から異常物を除去する間に、ロボット手段によって1つ又は複数のピッキングポイントにおいて同時にピッキングする又は把持することができる。
本開示はクラウド・コンピューティングについての詳細な説明を含むが、本明細書に記載される教示の実施は、クラウド・コンピューティング環境に限定されないことを理解されたい。むしろ、本開示の実施形態は、現在既知の又は後で開発されることになる他のあらゆるタイプのコンピューティング環境とともに実施することができる。
クラウド・コンピューティングは、最小限の管理労力又はサービス・プロバイダとの対話で迅速にプロビジョニング及び解放することができる構成可能なコンピューティング・リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス)の共有プールへの、便利なオンデマンドのネットワークアクセスを可能にするためのサービス配信のモデルである。このクラウドモデルは、少なくとも5つの特徴、少なくとも3つのサービスモデル、及び少なくとも4つのデプロイメント・モデルを含むことができる。
特徴は、以下の通りである。
オンデマンド・セルフ・サービス:クラウド・コンシューマは、必要に応じて、サーバ時間及びネットワーク・ストレージ等のコンピューティング機能を、人間がサービスのプロバイダと対話する必要なく自動的に、一方的にプロビジョニングすることができる。
広範なネットワークアクセス:機能は、ネットワーク上で利用可能であり、異種のシン又はシック・クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、及びPDA)による使用を促進する標準的な機構を通じてアクセスされる。
リソースのプール化:プロバイダのコンピューティング・リソースは、マルチテナント・モデルを用いて複数のコンシューマにサービスを提供するためにプールされ、異なる物理及び仮想リソースが要求に応じて動的に割り当て及び再割り当される。コンシューマは、一般に、提供されるリソースの正確な位置についての制御又は知識を持たないという点で位置とは独立しているといえるが、より抽象化レベルの高い位置(例えば、国、州、又はデータセンタ)を特定できる場合がある。
迅速な弾力性:機能は、迅速かつ弾力的に、幾つかの場合自動的に、プロビジョニングして素早くスケールアウトし、迅速に解放して素早くスケールインすることができる。コンシューマにとって、プロビジョニングに利用可能な機能は、多くの場合、無制限であるように見え、いつでもどんな量でも購入できる。
計測されるサービス:クラウド・システムは、サービスのタイプ(例えば、ストレージ、処理、帯域幅、及びアクティブなユーザアカウント)に適した何らかの抽象化レベルでの計量機能を用いることによって、リソースの使用を自動的に制御及び最適化する。リソース使用を監視し、制御し、報告して、利用されるサービスのプロバイダとコンシューマの両方に対して透明性をもたらすことができる。
サービスモデルは以下の通りである。
Software as a Service(SaaS):コンシューマに提供される機能は、クラウド・インフラストラクチャ上で動作しているプロバイダのアプリケーションを使用することである。これらのアプリケーションは、ウェブ・ブラウザ(例えば、ウェブ・ベースの電子メール)などのシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。コンシューマは、限定されたユーザ固有のアプリケーション構成設定を想定される例外として、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーション機能をも含めて、基礎をなすクラウド・インフラストラクチャを管理又は制御しない。
Platform as a Service(PaaS):コンシューマに提供される機能は、プロバイダによってサポートされるプログラミング言語及びツールを用いて生成された、コンシューマが生成した又は取得したアプリケーションを、クラウド・インフラストラクチャ上にデプロイすることである。コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージなどの基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、デプロイされたアプリケーション、及び場合によってはアプリケーションホスティング環境構成に対する制御を有する。
Infrastructure as a Service(IaaS):コンシューマに提供される機能は、コンシューマが、オペレーティング・システム及びアプリケーションを含み得る任意のソフトウェアをデプロイ及び動作させることができる、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティング・リソースをプロビジョニンングすることである。コンシューマは、基礎をなすクラウド・インフラストラクチャを管理又は制御しないが、オペレーティング・システム、ストレージ、デプロイされたアプリケーションに対する制御、及び場合によってはネットワーク・コンポーネント(例えば、ホストのファイアウォール)選択に対する限定された制御を有する。
デプロイメント・モデルは以下の通りである。
プライベート・クラウド:クラウド・インフラストラクチャは、ある組織のためだけに運営される。このクラウド・インフラストラクチャは、その組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
コミュニティ・クラウド:クラウド・インフラストラクチャは、幾つかの組織によって共有され、共通の関心事項(例えば、ミッション、セキュリティ要件、ポリシー、及びコンプライアンス上の考慮事項)を有する特定のコミュニティをサポートする。このクラウド・インフラストラクチャは、それら組織又は第三者によって管理することができ、オンプレミス又はオフプレミスに存在することができる。
パブリック・クラウド:クラウド・インフラストラクチャは、一般公衆又は大規模な業界グループに利用可能であり、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:クラウド・インフラストラクチャは、固有のエンティティのままであるが、データ及びアプリケーションのポータビリティを可能にする標準化技術又は専用技術(例えば、クラウド間の負荷分散のためのクラウドバースティング)によって互いに結び付けられた2つ以上のクラウド(プライベート、コミュニティ、又はパブリック)の混成である。
クラウド・コンピューティング環境は、サービス指向であり、ステートレス性、低結合性、モジュール性、及びセマンティック相互運用性に焦点を置く。クラウド・コンピューティングの中心は、相互接続されたノードのネットワークを含むインフラストラクチャである。
ここで図3Aを参照すると、例示的なクラウド・コンピューティング環境310が描かれている。図示のように、クラウド・コンピューティング環境310は、例えば、携帯情報端末(PDA)又は携帯電話300A、デスクトップコンピュータ300B、ラップトップ・コンピュータ300C、もしくは車載コンピュータ・システム300N又はそれらの組合せなどのような、クラウド・コンシューマによって用いられるローカル・コンピューティング・デバイスと通信することができる、1つ又は複数のクラウド・コンピューティング・ノード300を含む。ノード300は、互いに通信することができる。これらのノードを物理的又は仮想的にグループ化して(図示せず)、上述のようなプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、もしくはハイブリッド・クラウド、又はこれらの組合せなど、1つ又は複数のネットワークにすることができる。このことは、クラウド・コンピューティング環境310が、クラウド・コンシューマがローカル・コンピューティング・デバイス上にリソースを保持する必要のない、infrastructure as a service、platform as a service、もしくはsoftware as a service又はそれらの組合せを提供することを可能にする。図3Aに示されるコンピューティング・デバイス300A~Nのタイプは単に例示であることを意図しており、コンピューティング・ノード300及びクラウド・コンピューティング環境310は、あらゆるタイプのネットワーク上でもしくはネットワーク・アドレス指定可能な接続(例えば、ウェブ・ブラウザを用いる)上で又はその両方で、あらゆるタイプのコンピュータ化されたデバイスと通信できることを理解されたい。
ここで図3Bを参照すると、クラウド・コンピューティング環境310(図3A)によって提供される機能抽象化層のセットが示される。図3Bに示されるコンポーネント、層、及び機能は単に例示であることを意図し、本開示の実施形態はそれらに限定されないことを予め理解されたい。図示されるように、以下の層及び対応する機能が提供される。
ハードウェア及びソフトウェア層315は、ハードウェア及びソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例には、メインフレーム302、RISC(Reduced Instruction Set Computer(縮小命令セットコンピュータ))アーキテクチャ・ベースのサーバ304、サーバ306、ブレード・サーバ308、ストレージデバイス311、並びにネットワーク及びネットワーク・コンポーネント312が含まれる。幾つかの実施形態において、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア314及びデータベース・ソフトウェア316を含む。
仮想化層320は、仮想エンティティの以下の例、すなわち、仮想サーバ322、仮想ストレージ324、仮想プライベート・ネットワークを含む仮想ネットワーク326、仮想アプリケーション及びオペレーティング・システム328、並びに仮想クライアント330を提供することができる抽象化層を提供する。
一例において、管理層340は、以下で説明される機能を提供することができる。リソース・プロビジョニング342は、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング・リソース及び他のリソースの動的な調達を提供する。計量及び価格決定344は、クラウド・コンピューティング環境内でリソースが利用されたときのコスト追跡と、これらのリソースの消費に対する課金又は請求とを提供する。一例において、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウド・コンシューマ及びタスクについての識別情報の検証と、データ及び他のリソースに対する保護とを提供する。ユーザ・ポータル346は、コンシューマ及びシステム管理者に対してクラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理348は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの割り当て及び管理を提供する。サービス・レベル・アグリーメント(Service Level Agreement、SLA)の計画及び履行350は、SLAに従って将来的な必要性が予測されるクラウド・コンピューティング・リソースの事前配置及び調達を提供する。
ワークロード層360は、クラウド・コンピューティング環境を利用することができる機能の例を提供する。この層から提供することができるワークロード及び機能の例として、マッピング及びナビゲーション362、ソフトウェア開発及びライフサイクル管理364、仮想教室教育配信366、データ分析処理368、トランザクション処理370、及びピッキングポイント生成372が挙げられる。
図4は、本発明の実施形態による、本明細書に記載される方法、ツール、及びモジュール、並びに任意の関連機能の1つ又は複数を実施する際に用いることができる、例示的なコンピュータ・システム401の高レベルブロック図である(例えば、コンピュータの1つ又は複数のプロセッサ回路又はコンピュータプロセッサを用いる)。幾つかの実施形態において、コンピュータ・システム401の主コンポーネントは、1つ又は複数のプロセッサ402と、メモリサブシステム404と、端末インターフェース412と、ストレージ・インターフェース416と、I/O(入力/出力)デバイス・インターフェース414と、ネットワーク・インターフェース418とを含むことができ、これらのすべては、メモリバス403と、I/Oバス408と、I/Oバスインターフェースユニット410とを介したコンポーネント間通信のために、直接的又は間接的に通信可能に結合することができる。
コンピュータ・システム401は、1つ又は複数の汎用プログラム可能中央処理装置(CPU)402A、402B、402C、及び402Dを含むことができ、本明細書では一般的にCPU402と呼ばれる。幾つかの実施形態において、コンピュータ・システム401は、比較的大規模なシステムに典型的な複数のプロセッサを含むことができるが、他の実施形態においては、コンピュータ・システム401は、代替的に単一のCPUシステムであってもよい。各CPU402は、メモリサブシステム404に格納された命令を実行することができ、1つ又は複数のレベルのオンボードキャッシュを含むことができる。
システム・メモリ404は、ランダム・アクセス・メモリ(RAM)422又はキャッシュ・メモリ424など、揮発性メモリの形態のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム401は、他の取外し可能/取外し不能、揮発性/不揮発性のコンピュータ・システム・ストレージ媒体をさらに含むことができる。単なる例として、「ハード・ドライブ」などの取外し不能の不揮発性磁気媒体との間の読み出し及び書き込みのために、ストレージ・システム426を設けることができる。図示されていないが、取外し可能な不揮発性磁気ディスク(例えば、「フロッピー・ディスク」)との間の読み出し及び書き込みのための磁気ディスク・ドライブ、又は、CD-ROM、DVD-ROM又は他の光媒体などの取外し可能な不揮発性光ディスクとの間の読み出し及び書き込みのための光ディスク・ドライブを設けることができる。さらに、メモリ404は、フラッシュメモリ、例えば、フラッシュメモリスティックドライブ又はフラッシュドライブを含むことができる。メモリデバイスは、1つ又は複数のデータ媒体インターフェースによってメモリバス403に接続することができる。メモリ404は、種々の実施形態の機能を実行するように構成されたプログラムモジュールのセット(例えば、少なくとも1つ)を有する少なくとも1つのプログラム製品を含むことができる。
各々が少なくとも1つのプログラムモジュール430のセットを有する1つ又は複数のプログラム/ユーティリティ428を、メモリ404に格納することができる。プログラム/ユーティリティ428は、ハイパーバイザ(仮想マシンモニタとも呼ばれる)と、1つ又は複数のオペレーティング/システムと、1つ又は複数のアプリケーションプログラムと、他のプログラムモジュールと、プログラムデータとを含むことができる。オペレーティング・システム、1つ又は複数のアプリケーションプログラム、他のプログラムモジュール、及びプログラムデータ、又はそれらの何らかの組合せの各々は、ネットワーク環境の実装を含むことができる。プログラム428もしくはプログラムモジュール430又はその両方は、一般に、様々な実施形態の機能又は方法論を実行する。
メモリバス403は、CPU402と、メモリサブシステム404と、I/Oバスインターフェース410との間の直接的な通信経路を提供する単一のバス構造として図4に示されているが、メモリバス403は、幾つかの実施形態において、複数の異なるバス又は通信経路を含むことができ、これらは、階層型のポイントツーポイントリンク、スター又はウェブ構成、多重階層型バス、並列及び冗長経路、又はいずれかの他の適切なタイプの構成など、様々な形態のいずれかで配置することができる。さらに、I/Oバスインターフェース410及びI/Oバス408は、単一のそれぞれのユニットとして示されているが、コンピュータ・システム401は、幾つかの実施形態において、複数のI/Oバスインターフェースユニット410、複数のI/Oバス408、又はその両方を含むことができる。さらに、複数のI/Oインターフェースユニットが示されおり、これらは、I/Oバス408を様々なI/Oデバイスに延びる様々な通信経路から分離するものであるが、他の実施形態においては、I/Oデバイスの一部又はすべてを、1つ又は複数のシステムI/Oバスに直接接続することができる。
幾つかの実施形態において、コンピュータ・システム401は、マルチユーザのメインフレーム・コンピュータ・システム、シングルユーザ・システム、又は直接的なユーザインターフェースをほとんど又は全く有さないが、他のコンピュータ・システム(クライアント)からの要求を受け取るサーバーコンピュータ又は同様のデバイスとすることができる。さらに、幾つかの実施形態において、コンピュータ・システム401は、デスクトップコンピュータ、ポータブルコンピュータ、ラップトップ又はノートブックコンピュータ、タブレットコンピュータ、ポケットコンピュータ、電話機、スマートフォン、ネットワークスイッチもしくはルータ、又はいずれかの他の適切なタイプの電子デバイスとして実装することができる。
図4は、例示的なコンピュータ・システム401の代表的な主コンポーネントを描くことを意図していることに留意されたい。しかしながら、幾つかの実施形態において、個々のコンポーネントは、図4に示されているものよりも複雑度が高い又は低いものであってもよく、図4に示されているもの以外の又はそれに加えてコンポーネントが存在してもよく、そのようなコンポーネントの数、タイプ、及び構成は異なっていてもよい。
本明細書においてより詳細に論じられているとおり、本明細書に記載される方法の幾つかの実施形態のオペレーションの幾つか又はすべては、代替的な順序で実行されてもよく、又はまったく実行されなくてもよく、さらに、複数のオペレーションが同時に行われてもよく、又はより大きいプロセスの内部部分として行われてもよいことが想定される。
本発明は、集積のあらゆる可能な技術的詳細レベルにおける、システム、方法、もしくはコンピュータ・プログラム製品又はその組合せとすることができる。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有する1つ又は複数のコンピュータ可読ストレージ媒体を含むことができる。
コンピュータ可読ストレージ媒体は、命令実行デバイスによる使用のための命令を保持及び格納できる有形デバイスとすることができる。コンピュータ可読ストレージ媒体は、例えば、これらに限定されるものではないが、電子ストレージデバイス、磁気ストレージデバイス、光学ストレージデバイス、電磁気ストレージデバイス、半導体ストレージデバイス、又は上記のいずれかの適切な組合せとすることができる。コンピュータ可読ストレージ媒体のより具体的な例の非網羅的なリストは、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラム可能読み出し専用メモリ(EPROM又はフラッシュメモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、パンチカードもしくは命令がそこに記録された溝内の隆起構造のような機械式コード化デバイス、及び上記のいずれかの適切な組合せを含む。本明細書で使用される場合、コンピュータ可読ストレージ媒体は、電波、又は他の自由に伝搬する電磁波、導波管もしくは他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通る光パルス)、又はワイヤを通って送られる電気信号などの、一時的信号自体として解釈すべきではない。
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング/処理デバイスにダウンロードすることも、又は、例えばインターネット、ローカル・エリア・ネットワーク、広域ネットワーク、もしくは無線ネットワーク又はその組合せなどのネットワークを介して外部コンピュータ又は外部ストレージデバイスにダウンロードすることもできる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、もしくはエッジサーバ、又はそれらの組合せを含むことができる。各コンピューティング/処理デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受け取り、そのコンピュータ可読プログラム命令をそれぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体内に格納するために転送する。
本発明のオペレーションを実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、又は、Smalltalk、C++などのオブジェクト指向プログラミング言語、及び、「C」プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含む1つもしくは複数のプログラミング言語の任意の組合せで記述されたソース・コードもしくはオブジェクトコードのいずれかとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で実行される場合もあり、一部がユーザのコンピュータ上で独立型ソフトウェア・パッケージとして実行される場合もあり、一部がユーザのコンピュータ上で実行され、一部が遠隔コンピュータ上で実行される場合もあり、又は完全に遠隔コンピュータもしくはサーバ上で実行される場合もある。後者のシナリオにおいては、遠隔コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくは広域ネットワーク(WAN)を含むいずれかのタイプのネットワークを通じてユーザのコンピュータに接続される場合もあり、又は外部コンピュータへの接続が行われる場合もある(例えば、インターネットサービスプロバイダを用いたインターネットを通じて)。幾つかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又はプログラム可能論理アレイ(PLA)を含む電子回路は、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別化することにより、コンピュータ可読プログラム命令を実行することができる。
本発明の態様は、本明細書において、本開示の実施形態による方法、装置(システム)及びコンピュータ・プログラム製品のフローチャート図もしくはブロック図又はその両方を参照して説明される。フローチャート図もしくはブロック図又はその両方の各ブロック、並びにフローチャート図もしくはブロック図又はその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実装することができることが理解されるであろう。
これらのコンピュータ可読プログラム命令を、コンピュータ、又は他のプログラム可能データ処理装置のプロセッサに与えてマシンを製造し、それにより、コンピュータ又は他のプログラム可能データ処理装置のプロセッサによって実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロック内で指定された機能/動作を実施するための手段を作り出すようにすることができる。これらのコンピュータ・プログラム命令を、コンピュータ、プログラム可能データ処理装置、もしくは他のデバイス又はそれらの組合せを特定の方式で機能させるように指示することができるコンピュータ可読ストレージ媒体内に格納し、それにより、その中に格納された命令を有するコンピュータ可読媒体が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作の態様を実施する命令を含む製品を含むようにすることもできる。
コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上にロードして、一連のオペレーションステップをコンピュータ、他のプログラム可能データ処理装置、又は他のデバイス上で行わせてコンピュータ実施のプロセスを生成し、それにより、コンピュータ、他のプログラム可能装置又は他のデバイス上で実行される命令が、フローチャートもしくはブロック図又はその両方の1つ又は複数のブロックにおいて指定された機能/動作を実施するようにすることもできる。
図面内のフローチャート及びブロック図は、本発明の種々の実施形態による、システム、方法、及びコンピュータ・プログラム製品の可能な実装の、アーキテクチャ、機能及びオペレーションを示す。この点に関して、フローチャート又はブロック図内の各ブロックは、指定された論理機能を実装するための1つ又は複数の実行可能命令を含む、モジュール、セグメント、又は命令の一部を表すことができる。幾つかの代替的な実装において、ブロック内に示される機能は、図に記される順序とは異なる順序で行われることがある。例えば、連続して示される2つのブロックは、関与する機能に応じて、実際には、1つのステップとして遂行され、同時に実行され、実質的に同時に実行され、部分的に又は完全に時間的に重なる様式で行われることもあり、又はこれらのブロックはときとして逆順で実行されることもある。ブロック図もしくはフローチャート図又はその両方の各ブロック、及びブロック図もしくはフローチャート図又はその両方におけるブロックの組合せは、指定された機能又は動作を実行する専用ハードウェア・ベースのシステムによって実装することもでき、又は専用ハードウェアとコンピュータ命令との組合せを実行することもできることに留意されたい。
本開示の種々の実施形態の説明は、例証の目的で提示したものであるが、網羅的であることも、又は開示した実施形態に限定することも意図しない。当業者には、説明した実施形態の範囲及び趣旨から逸脱することなく、多くの修正及び変形が明らかであろう。本明細書で用いられる用語は、実施形態の原理、実際の適用、又は市場で見いだされる技術に優る技術的改善を最も良く説明するように、又は、当業者が本明細書で開示される実施形態を理解することを可能にするように、選択されたものである。
本発明を具体的な実施形態に基づいて説明してきたが、その変更及び修正が当業者には明らかであることが予想される。したがって、以下の特許請求の範囲は、本開示の真の趣旨及び範囲内に入るすべてのそうした変更及び修正をカバーすると解釈されることが意図される。

Claims (20)

  1. 材料の集団内の異常物を除去するための方法であって、
    プロセッサによって、複数の物体を有する前記材料の集団の画像を受け取ることと、
    前記複数の物体から前記異常物を識別することと、
    前記異常物に対するバウンディングボックスを生成することと、
    1つ又は複数のピッキングポイントを前記異常物上に生成することであって、前記1つ又は複数のピッキングポイントが前記異常物の少なくとも1つの均衡点上に構成される、生成することと、
    前記1つ又は複数のピッキングポイントに基づいて、前記材料の集団から前記異常物を除去することと
    を含む方法。
  2. 前記異常物に対する前記バウンディングボックスを生成することが、
    前記バウンディングボックスの面積を閾値面積と比較すること
    をさらに含む、請求項1に記載の方法。
  3. 前記バウンディングボックスの前記面積を前記閾値面積と比較することに応答して、
    前記バウンディングボックスの前記面積が閾値面積を下回ると判定することと、
    前記1つ又は複数のピッキングポイントを前記バウンディングボックスの中心に生成することと
    をさらに含む、請求項2に記載の方法。
  4. 前記バウンディングボックスの前記面積を前記閾値面積と比較することに応答して、
    前記バウンディングボックスの前記面積が閾値面積を上回ると判定すること
    をさらに含む、請求項2に記載の方法。
  5. 前記1つ又は複数のピッキングポイントを前記異常物上に生成することが、
    前記異常物の1つ又は複数のセグメンテーションを計算することと、
    前記1つ又は複数のセグメンテーションを解析することと
    をさらに含む、請求項4に記載の方法。
  6. 前記1つ又は複数のセグメンテーションを解析することに応答して、
    前記1つ又は複数のセグメンテーションが点で構成されていると識別することと、
    点のクラスタが連結領域であると判定することと
    をさらに含む、請求項5に記載の方法。
  7. 前記1つ又は複数のセグメンテーションを解析することに応答して、
    前記1つ又は複数のセグメンテーションが1つ又は複数の多角形で構成されていると識別することと、
    前記1つ又は複数の多角形の各々が連結領域であると判定することと
    をさらに含む、請求項5に記載の方法。
  8. 前記1つ又は複数のピッキングポイントを前記異常物上に生成することが、
    前記異常物上の1つ又は複数の連結領域を識別することと、
    前記1つ又は複数の連結領域に対して前記1つ又は複数のピッキングポイントの数を計算することと、
    をさらに含む、請求項1に記載の方法。
  9. 前記1つ又は複数のピッキングポイントに基づいて、前記材料の集団から前記異常物を除去することが、
    前記1つ又は複数のピッキングポイントにおいて、ロボット手段を介して前記異常物を収集すること
    をさらに含む、請求項8に記載の方法。
  10. 材料の集団内の異常物を除去するためのシステムであって、
    メモリと、
    前記メモリと通信するプロセッサとを含み、前記プロセッサが、
    複数の物体を有する前記材料の集団の画像を受け取ることと、
    前記複数の物体から前記異常物を識別することと、
    前記異常物に対するバウンディングボックスを生成することと、
    1つ又は複数のピッキングポイントを前記異常物上に生成することであって、前記1つ又は複数のピッキングポイントが前記異常物の少なくとも1つの均衡点上に構成される、生成することと、
    前記1つ又は複数のピッキングポイントに基づいて、前記材料の集団から前記異常物を除去することと
    を含むオペレーションを実行するように構成される、
    システム。
  11. 前記異常物に対する前記バウンディングボックスを生成することが、
    前記バウンディングボックスの面積を閾値面積と比較すること
    をさらに含む、請求項10に記載のシステム。
  12. 前記バウンディングボックスの前記面積を前記閾値面積と比較することに応答して、前記オペレーションが、
    前記バウンディングボックスの前記面積が閾値面積を下回ると判定することと、
    前記1つ又は複数のピッキングポイントを前記バウンディングボックスの中心に生成することと
    をさらに含む、請求項11に記載のシステム。
  13. 前記バウンディングボックスの前記面積を前記閾値面積と比較することに応答して、前記オペレーションが、
    前記バウンディングボックスの前記面積が閾値面積を上回ると判定すること
    をさらに含む、請求項11に記載のシステム。
  14. 前記1つ又は複数のピッキングポイントを前記異常物上に生成することが、
    前記異常物の1つ又は複数のセグメンテーションを計算することと、
    前記1つ又は複数のセグメンテーションを解析することと
    をさらに含む、請求項13に記載のシステム。
  15. 前記1つ又は複数のセグメンテーションを解析することに応答して、前記オペレーションが、
    前記1つ又は複数のセグメンテーションがポイントで構成されると識別することと、
    点のクラスタが連結領域だと判定することと
    をさらに含む、請求項14に記載のシステム。
  16. 前記1つ又は複数のセグメンテーションを解析することに応答して、前記オペレーションが、
    前記1つ又は複数のセグメンテーションが1つ又は複数の多角形で構成されていると識別することと、
    前記1つ又は複数の多角形の各々が連結領域であると判定することと
    をさらに含む、請求項14に記載のシステム。
  17. 前記1つ又は複数のピッキングポイントを前記異常物上に生成することが、
    前記異常物上の1つ又は複数の連結領域を識別することと、
    前記1つ又は複数の連結領域に対して前記1つ又は複数のピッキングポイントの数を計算することと、
    をさらに含む、請求項10に記載のシステム。
  18. 前記1つ又は複数のピッキングポイントに基づいて、前記材料の集団から前記異常物を除去することが、
    前記1つ又は複数のピッキングポイントにおいて、ロボット手段を介して前記異常物を収集すること
    をさらに含む、請求項17に記載のシステム。
  19. 材料の集団内の異常物を除去するためのコンピュータ・プログラムであって、プロセッサによって実行可能なプログラム命令を含み、前記プログラム命令は、前記プロセッサに、請求項1から請求項9までのいずれかに記載の方法を行わせる、コンピュータ・プログラム。
  20. 請求項19に記載のコンピュータ・プログラムを格納した、コンピュータ可読ストレージ媒体。
JP2021189185A 2020-11-30 2021-11-22 異常物を除去するための方法、システム、コンピュータ・プログラム、及びコンピュータ可読ストレージ媒体 Pending JP2022087042A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/106,597 US20220167558A1 (en) 2020-11-30 2020-11-30 Locating picking points of anomalies
US17/106,597 2020-11-30

Publications (1)

Publication Number Publication Date
JP2022087042A true JP2022087042A (ja) 2022-06-09

Family

ID=81586257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021189185A Pending JP2022087042A (ja) 2020-11-30 2021-11-22 異常物を除去するための方法、システム、コンピュータ・プログラム、及びコンピュータ可読ストレージ媒体

Country Status (4)

Country Link
US (1) US20220167558A1 (ja)
JP (1) JP2022087042A (ja)
DE (1) DE102021128867A1 (ja)
GB (1) GB2602553B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113099847B (zh) * 2021-05-25 2022-03-08 广东技术师范大学 一种基于果实三维参数预测模型的果实采摘方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111844101B (zh) * 2020-07-31 2022-09-06 中国科学技术大学 一种多指灵巧手分拣规划方法

Also Published As

Publication number Publication date
GB2602553A (en) 2022-07-06
GB2602553B (en) 2023-03-08
DE102021128867A1 (de) 2022-06-02
US20220167558A1 (en) 2022-06-02

Similar Documents

Publication Publication Date Title
US10198562B2 (en) Detecting and tracking virtual containers
US20170063722A1 (en) Managing a shared pool of configurable computing resources which has a set of containers
US9690553B1 (en) Identifying software dependency relationships
US10834183B2 (en) Managing idle and active servers in cloud data centers
US9836298B2 (en) Deployment rule system
Varghese et al. Cloud benchmarking for performance
US10025671B2 (en) Smart virtual machine snapshotting
CN107508722A (zh) 一种业务监控方法和装置
US11321121B2 (en) Smart reduce task scheduler
US20170373999A1 (en) Familiarity-based involvement on an online group conversation
US11960578B2 (en) Correspondence of external operations to containers and mutation events
US9979616B2 (en) Event-driven framework for filtering and processing network flows
US10628230B2 (en) Software based collection of performance metrics for allocation adjustment of virtual resources
US11721099B2 (en) Cloud based active commissioning system for video analytics
JP2022087042A (ja) 異常物を除去するための方法、システム、コンピュータ・プログラム、及びコンピュータ可読ストレージ媒体
US11586480B2 (en) Edge computing workload balancing
US20170373946A1 (en) Topology graph of a network infrastructure and selected services status on selected hubs and nodes
US20180004629A1 (en) Run time smf/rmf statistical formula methodology for generating enhanced workload data points for customer profiling visualization
US20190073280A1 (en) Stopping central processing units for data collection based on event categories of events
US20220038546A1 (en) Passive identification of service ports in containers
US20230040767A1 (en) Automatic capture of user interface screenshots for software product documentation
US10719500B2 (en) Method for capturing evolving data
JP2023545638A (ja) コンテナ化されたソフトウェアの発見と特定
Xue et al. Critical analysis of ecm applications in the clouds: A case study
CN110096504A (zh) 流式事件特征匹配方法及装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211224

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20220518

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240516