JP7460633B2 - コンピュータビジョンを使用する複合視覚検査タスクの連携学習のためのシステムと方法 - Google Patents

コンピュータビジョンを使用する複合視覚検査タスクの連携学習のためのシステムと方法 Download PDF

Info

Publication number
JP7460633B2
JP7460633B2 JP2021535943A JP2021535943A JP7460633B2 JP 7460633 B2 JP7460633 B2 JP 7460633B2 JP 2021535943 A JP2021535943 A JP 2021535943A JP 2021535943 A JP2021535943 A JP 2021535943A JP 7460633 B2 JP7460633 B2 JP 7460633B2
Authority
JP
Japan
Prior art keywords
classifier
classifiers
camera
cameras
classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021535943A
Other languages
English (en)
Other versions
JP2022515768A (ja
Inventor
ダル ムットー カルロ
ペルッチ フランチェスコ
オー アレクサンダー
ヘイズ ロバート
Original Assignee
パックサイズ リミティド ライアビリティ カンパニー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パックサイズ リミティド ライアビリティ カンパニー filed Critical パックサイズ リミティド ライアビリティ カンパニー
Publication of JP2022515768A publication Critical patent/JP2022515768A/ja
Application granted granted Critical
Publication of JP7460633B2 publication Critical patent/JP7460633B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • 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/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • G06V10/765Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/80Recognising image objects characterised by unique random patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Databases & Information Systems (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Description

[関連出願へのクロス・リファレンス]
本出願は、2018年12月19日に米国特許商標庁において出願された米国仮特許出願第62/782,163号の利益を主張し、その開示全体は、ここにおいて参照により組み込まれる。
本発明の実施形態の態様は、視覚検査タスクを自動化するためのコンピュータビジョン技術の使用を含む、視覚対象物検査の分野に関する。
視覚情報からの複合検査タスクは、製造および物流総合管理においては非常に一般的である。複合検査タスクは、多数(2つ以上)の単純検査タスクから構成されており、単純検査タスクは幾つかの論理で組み合わされる。例えば、製造環境において、製造された対象物を品質監視または品質制御のために検査するときは、対象物の幾つかの異なる特性を測定することができ、結果としての測定値は、対象物が全体として品質標準を満たしているかどうかを決定するためにそれらの品質標準と比較できる。例えば、靴製造の場合においては、特別な製造された靴を容認するか却下するかについての全体的な決定は、縫い目の一様性、縫い目の位置、ロゴや他のデザイン要素の整列、材質における欠陥(例えば穴および裂け目)などのような、靴の外部から見える態様を考慮する単純検査タスクの組み合わせに依存することができる。靴が品質制御をパスするか不合格となるかの複合的且つ全体的な決定は、靴がすべての単純検査タスクをパスすることを要求することなどのような、基盤となる単純検査タスクの組み合わせに依存する。
一般的には、そのような複合検査タスクは、人間の検査員により手動で行われ、検査員は製造された対象物を、特別な手順に従って評価する。
本発明の実施形態の態様は、対象物の視覚検査を自動的に実行し、検査結果を自動的に計算するためのシステムと方法に関する。
本発明の1つの実施形態によれば、自動視覚検査を実行するための方法は、複数のカメラを含んでいる走査システムを使用して、対象物の視覚情報を取り込むことと、プロセッサとメモリを含んでいるコンピューティングシステムにより、1つ又は複数の特徴抽出器を使用して、視覚情報から1つ又は複数の特徴マップを抽出することと、コンピューティングシステムにより、対象物の分類を計算するために、1つ又は複数の特徴マップを、それぞれが、対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、対象物の分類を計算するために、単純分類子の出力を組み合わせるように構成されている1つ又は複数の論理演算子を含んでいる複合分類子に供給することにより、対象物を分類することと、コンピューティングシステムにより、対象物の分類を、自動視覚検査の結果として出力することを含んでいる。
1つ又は複数の特徴抽出器は、1つ又は複数の畳み込みニューラルネットワークを含むことができる。
複数の単純分類子は、1つ又は複数のニューラルネットワークを含むことができる。
複数の単純分類子は、1つ又は複数のサポートベクトルマシンを含むことができ、少なくとも1つの論理演算は、1つ又は複数のニューラルネットワークの出力と、1つ又は複数のサポートベクトルマシンの出力を組み合わせるように構成できる。
複数の単純分類子は、回帰モデルを含むことができる。
複数の単純分類子は、テキスト検出を実行するように構成されている、ラベルに基づく分類子を含むことができる。
複数の単純分類子のそれぞれの単純分類子は、連携して訓練されている複数の閾値パラメータの対応する閾値パラメータにより構成できる。
閾値パラメータは、単純分類子を構成するために、複数の閾値パラメータのセットを選択するためにパラメータ空間をサンプリングすることと、複数の閾値パラメータのセットのそれぞれの閾値パラメータのセットに対して、真陽性率(True Positive rate(TPr))と偽陽性率(False Positive rate(FPr))を、閾値パラメータのセットに基づいて単純分類子を構成することにより、複合分類子を構成し、構成された複合分類子にデータの検証セットを供給することにより、構成に対するTPrとFPrを計算することにより計算することと、構成パラメータのセットのそれぞれのセットに対して、TPrとFPrに従って、構成パラメータの最も良好な実行セットを含んでいるパレートフロント(Pateto front)(パレート最適(効率性)結果のセット)を識別することと、ドメインに従うルールセットに従って、パレートフロントから構成パラメータのセットを選択することにより連携して訓練できる。
視覚情報は、カラー画像、グレースケール画像、または深度マップを含むことができる。
視覚情報は、少なくとも1つの深度マップを含むことができる。
少なくとも1つの深度マップは、複数のカメラの深度カメラシステムにより撮像できる。
深度カメラシステムは、飛行時間型(time-of-flight)深度カメラと、構造化光深度カメラと、少なくとも2台のカラーカメラを含んでいるステレオ深度カメラ、少なくとも2台のカラーカメラとカラープロジェクタを含んでいるステレオ深度カメラ、少なくとも2台の赤外線カメラを含んでいるステレオ深度カメラ、または少なくとも2台の赤外線カメラ、赤外線プロジェクタ、およびカラーカメラを含んでいるステレオ深度カメラを含むことができる。
複数の単純分類子は、深度マップの数学的モデル化に基づく分類子を含むことができる。
1つ又は複数の特徴マップの特徴マップは、複数の単純分類子の少なくとも2つへの入力として提供できる。
対象物の分類は、複数の対象物のカテゴリの中の1つのカテゴリの識別を含むことができる。
対象物の分類は、視覚情報に基づく、対象物の1つ又は複数の特質の識別を含むことができる。
本発明の1つの実施形態によれば、視覚検査システムは、プロセッサとメモリを含んでおり、プロセッサは、上記の方法のステップを実行するように構成されている。
本発明の1つの実施形態によれば、コンピュータプログラムは、コンピュータにより実行されると、コンピュータに上記の方法のステップを実行させる命令を含んでいる。
本発明の1つの実施形態によれば、視覚検査システムは、複数のカメラを含んでいるスキャナシステムと、コンピュータネットワーク上でスキャナシステムに接続されているコンピューティングシステムを含んでおり、コンピューティングシステムは、プロセッサと、命令を格納しているメモリを含んでおり、命令は、プロセッサにより実行されると、プロセッサに、対象物の視覚情報を取り込むようにスキャナシステムを制御させ、1つ又は複数の特徴抽出器を使用して、視覚情報から1つ又は複数の特徴マップを抽出させ、コンピューティングシステムにより、対象物の分類を計算するために、1つ又は複数の特徴マップを、それぞれが、対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、対象物の分類を計算するために、単純分類子の出力を組み合わせるように構成されている1つ又は複数の論理演算子を含んでいる複合分類子に供給することにより、対象物を分類させ、コンピューティングシステムにより、対象物の分類を、対象物の自動視覚検査の結果として出力させる。
視覚検査システムは、段落[0007]~[0021]の上記の方法のステップを実行するように構成できる。
スキャナシステムは、少なくとも1台のカラーカメラを含むことができる。
スキャナシステムは、少なくとも1台の深度カメラを含むことができる。
視覚検査システムは更に、表示装置を含んでいるユーザ装置を含むことができ、ユーザ装置は、対象物の分類と、複数の単純分類子の少なくとも1つの単純分類子により計算された、対象物の少なくとも1つの特性を表示するように構成されている。
コンピューティングシステムは、分類に従って、対象物の動きの方向を変えるために搬送器システムを制御するように構成できる。
特許または出願ファイルは、カラーで作成された少なくとも1つの図面を含んでいる。カラー図面を有しているこの特許または特許出願の刊行物のコピーは、要求および必要な費用の支払いにより米国特許商標庁から提供される。
付随する図面は、明細書と共に、本発明の例としての実施形態を示しており、記述と共に、本発明の原理を説明する役割を果たしている。
本発明の1つの実施形態に係る、対象物を自動的に走査および検査するためのシステムの模式ブロックを示す図である。 本発明の1つの実施形態に係る、対象物を走査し、検査結果を表示するための方法のフローチャートを示す図である。 本発明の1つの実施形態に係る、深度カメラシステムのブロックを示す図である。 アクティブステレオおよび少なくとも1台のカラーカメラを含む深度カメラにより取得される深度マップとカラー画像を含んでいるフレームのシーケンスの例を示す図である。 三次元点群モデルの例の二次元ビューを示す図である。 1台以上の深度カメラを使用して撮像された三次元メッシュモデルの例の二次元ビューを示す図である。 本発明の1つの実施形態に係る、搬送器のベルト上の対象物を走査するように構成されている走査システムの模式図である。 静止対象物(例えば、テーブル上の静止対象物)を走査するように構成されている、本発明の1つの実施形態に係る走査システムの模式図である。 本発明の1つの実施形態に係る、2つの部分を有している搬送器のベルト上を移動している対象物(一足の靴として示されている)の模式図であり、2つの部分の第1部分は、対象物を第1方向に沿って移動し、第2部分は、対象物を、第1方向と直交する第2方向に沿って移動する。 本発明の1つの実施形態に係る、目標対象物の画像を撮像し、目標対象物に対する記述子を生成するためのプロセスを例示している模式ブロック図である。 本発明の1つの実施形態に係る解析システムのブロックを示す図である。 本発明の1つの実施形態に係る、解析システムを使用して対象物の三次元モデルを解析することにより検査タスクを実行するための方法のフローチャートを示す図である。 靴の縫い目を検査する複合検査タスクの例としての決定ツリーを示す図である。 所与のパレットはNSP(Non Stackable Pallet:積み重ね不可パレット)かどうかを決定するための、本発明の1つの実施形態に係る複合分類子の模式図である。 本開示の1つの実施形態に係る、複合分類子の単純分類子の閾値の構成に対するFRrとTPr値のパーレントフロントの視覚表現を示す図である。 本発明の1つの実施形態に係る、複合分類子を訓練するための方法のフローチャートを示す図である。
下記の詳細な記述においては、本発明のある例としての実施形態のみが例として示され記述される。当業者であれば認識するように、発明は多くの異なる形状で具現化でき、ここにおいて記述される実施形態に制限されるとは解釈されるべきではない。明細書を通して、類似の参照番号は類似の要素を示している。
本発明の実施形態の態様は、視覚情報に基づく複合検査タスクを実行することに向けられている。視覚情報は、視覚取得システム(例えば、1つ又は複数のカメラ)を使用して取得でき、そのようなシステムにより収集された情報は、単純決定の組み合わせにより特徴付けられる検査タスクを解決するために処理される。
より詳細には、本発明の実施形態の態様は、視覚情報を取得し、複合視覚検査タスクを解決するために取得された視覚情報を処理するための自動システムと方法に関する。本発明の実施形態の幾つかの態様は、複合視覚検査タスクを解決するために視覚情報を処理することを連携して学習するように、機械学習システムを自動的に訓練するための機械学習技術のためのシステムと方法に向けられている。
ここにおいて使用されているように、「複合検査タスク」という用語は、複数(2つ以上)の単純検査タスクの組み合わせである検査タスクのことを指し示すために使用され、ここにおいて単純検査タスクは、幾つかの論理(例えば、ブールまたはバイナリ論理、演算、ファジー、...)(例えば、Klir,G.,& Yuan,B.(1995).Fuzzy Sets and fuzzy logic(ファジーセットとファジー論理)(Vol.4).New Jersey:Prentice Hall.参照)で組み合わされている。「視覚検査タスク」という用語は、ここにおいては、視覚情報を使用して評価される検査タスクを指し示すために使用され、複合視覚検査タスクは、視覚情報を使用して評価される複合タスクを指し示すことができる。ここにおいて使用されているように、「単純検査タスク」という用語は、人間が一貫性を持って、および高い信頼性を有して客観的且つ明確に評価できる検査タスク(例えば、曖昧さのほとんどない、またはまったくない検査タスク)を指し示すために使用されている。加えて、そのような「単純検査タスク」はまた「単純分類子」により評価または実行でき、ここにおいては、入力の予期される範囲において、入力の1つの特性を高精度且つ強固に記述する分類を出力するために、単純検査タスクを実行できる訓練された機械学習アルゴリズムを指し示すために使用されている。多数の単純分類子を、複合検査タスクを自動的に実行または評価するための「複合分類子」を作成するために論理演算子と組み合わせることができる。
1つの例は、製造された靴における縫い目の品質の検査である。そのような例としての検査タスクの出力は、パス(PASS)値または失敗(FAIL)値であり、それは、縫い目の品質が容認できるか否かに依存し得る。そのようなタスクを実行する1つの方法は、靴のメーカーまたはブランド(1)、靴のモデル(2)、靴の色(3)、そして靴のサイズ(4)を特定し、そのようなパラメータ(造り、モデル、色、およびサイズ)を有するアイテムの予期される外観を検索し、縫い目の予期される外観を、視覚情報(5)からの実際の撮像された外観と比較することである。複合タスクのこの例は5つの単純タスクを含んでおり、それらは、製造された靴における縫い目の品質を検査する複合タスクに対するソリューションを得るために連携して解決される。靴ひもの穴の品質を検査することや、靴の甲革の表面の品質を検査することなどのような、追加的な検査タスクを追加することもできる。他の例としては、複合タスクは更に、解析されている対象物のカテゴリを識別することも含むことができ、それは、実質的に異種の環境の場合に有益であり得る。例えば、異種の製造ライン、または物流総合管理設備は、靴、ブーツ、スポーツ用品、衣類、食物、飲料などのような異なるタイプの品物の広い範囲を処理できる。
複合検査タスクの他の例は、物流総合管理の分野における積み重ね不可パレット荷物(NSP)の複合検査タスクである。この場合、パレットに載せられた荷物は、その荷物がパレット上にあり(1)、下記の条件、つまり、(2)荷物の上部は安定していない、(3)荷物の外部にそれはNSPであると特定する標識またはラベルがある、または(4)荷物の中身は壊れ易い(例えば、テレビ)の少なくとも1つが満たされればNSPと呼ばれる。この複合タスクは4つの単純タスクを含んでおり、それらは、靴の例と同様に、複合タスクに対するソリューションを得るために連携して解決される。
これら2つの上記の例から推論できるように、複合検査タスクは、物流総合管理と製造分野の両者において非常に一般的である。
従来は、人間のオペレータに、そのような複合検査タスクに対するソリューションを決定する業務が課せられていたが、複合検査タスクに対するソリューションの自動計算のためのシステムと方法は、コストを削減すると共に、一貫性および信頼性を向上できる。
上記に注記したように、本発明の幾つかの実施形態は、コンピュータビジョン技術を視覚情報に適用することにより視覚検査タスクを実行することに関連し、ここにおいて視覚情報は、画像(例えば、二次元画像)、ビデオ(例えば、二次元画像のシーケンス)、または、三次元モデル(例えば、二次元画像から撮像または再構成される)などのような、より複合的な表現を含むことができる。
「視覚取得システム」という用語は、ここにおいては、視覚情報を取得するために使用されるシステムを指し示すために使用され、視覚取得システムは、1台以上のカメラ、照明システム、処理構成要素、および幾つかの入出力(I/O)構成要素を含むことができる。
本発明の幾つかの実施形態によれば、視覚情報が取得されると、視覚情報は、取得された視覚情報に基づいて複合検査タスクを評価するように訓練されている訓練済み機械学習モジュールを含むことができる解析エージェントにより自動的に処理される。解析エージェントはまた、複合検査タスクを実行するために、幾つかの手作業による(例えば、人間によりプログラムされる)発見的方法も使用できる。
複合タスク検査システム
図1Aは、本発明の1つの実施形態に係る、対象物を自動的に走査および検査するためのシステムの模式ブロック図である。図1Bは、本発明の1つの実施形態に係る、対象物を走査し、検査結果を表示するための方法のフローチャートである。
図1Aと1Bにおいて示されているように、1つの実施形態によれば、検査システム1は、三次元スキャナまたは走査システム99を含んでおり、それは、動作520において、走査システム99により取り込まれた対象物10の画像を取り込むように構成されている。解析システム300は、動作530において、取り込まれた視覚情報に基づいて対象物10を検査する。視覚情報は、走査システムにより取り込まれた画像(例えば、モノクロまたはグレースケール、カラー、および深度マップ画像)を含むことができ、また、走査システム99による対象物の取り込まれた画像に基づいて、三次元モデル生成モジュール200により生成された三次元モデルも含むことができる。
そして、解析システム300により生成された解析結果は、動作540においてユーザ装置400に出力できる。本発明の幾つかの実施形態においては、ユーザ装置400はプロセッサ410とメモリ430を含んでおり、メモリ430は、プロセッサ410を、対象物のアイデンティティや、解析結果または検査結果(例えば、対象物は複合検査タスクをパスしたかまたは失敗したか)などのような、走査された特別な対象物に関する情報(例えば、リスト)を維持するように制御する命令を格納している。ユーザ装置400はまた、対象物10は検査をパスしたかどうかを含む解析結果や、パスしなかった場合に、失敗の性質についての情報などのような情報をユーザに表示できる表示装置450を制御するためにも使用できる。
本発明の幾つかの実施形態においては、解析結果は、動作540において、環境における機械を制御するために出力される。例えば、製造環境において実現される幾つかの実施形態においては、特別な対象物が解析エージェント300により検査されて、欠陥があると検出されると、出力は、製造環境内の搬送器システムまたは他のアクチュエータを、その欠陥アイテムを製造された品物の流れから除去する(例えば、その欠陥アイテムの向きを変えるように方向変更器を操作する)ように制御するために使用される。
視覚取得システム
本発明の実施形態の態様は、下記に制限されないが、解析されるアイテムが、それらの表面の色(または「テクスチャ」)と、対象物のサイズを含む幾何学的形状(同じアイテムまたは品物の異なる個体間にはあるばらつきがあり得るが)により特徴付けることができる状況に良好に適合している。本発明の多くの実施形態においては、情報のこのタイプの色と形状は、異なるアイテムの識別(例えば、同じ製造ラインにおいて存在し得る靴の異なるモードを識別すること)、および対象物の分類(例えば、検査を「パスした」、または「失敗した」、または、「積み重ね不可荷物」または「積み重ね可能荷物」などのような)を自動化するために使用できる。自動化された対象物識別システムの1つの構成要素は、幾何学的形状と色情報を取得できる三次元走査システムである。通常の品物の体積測定に関する性質のため、幾つかの実施形態においては、三次元走査が、異なる有利な視点における多数の三次元スキャナ100からの情報を集積することにより実行される。従って、走査システム99は、1台以上の三次元スキャナまたは深度カメラ100を含むことができる。
本発明の実施形態の幾つかの態様は、対象物自身についての幾何学(形状)および/または色情報を収集することに関し、それは、対象物に関する多数の異なる有利な視点(姿勢)から可能である。対象物のこれらのビューを収集することは、基盤となっている対象物の包括的な検査を実行するためのデータを提供できる。対象物のビューを撮像するこの手順は、三次元走査または三次元モデル化と称されることもあり、それぞれが1台以上の深度カメラを含むことができる1台以上の三次元スキャナを含むことができる三次元モデル化システムを使用して効果的に達成できる。
三次元スキャナは、シーンの三次元モデルを、画像の1つ又は複数のストリームの形状における視覚情報から取得できるシステムである。1つの実施形態においては、三次元スキャナは対象物についての色情報を取得する1台以上のカラーカメラを含むことができる1台以上の深度カメラと、対象物についての幾何学的形状情報を取り込むための赤外線構造化光照明機と連携して使用できる1台以上の赤外線(IR)カメラを含んでいる。2台のIRカメラと1台のIR構造化光照明機がある特別なケースは、アクティブステレオを呼ばれており、重なった視野を有する多数の深度カメラからの同時走査を可能にする。カラーおよび赤外線カメラは同期され、幾何学的に較正され、これらのカメラが、幾何学的整列を提供できる、カラー画像と深度マップから構成されるフレームのシーケンスを撮像することを可能にする。2台のIRカメラと、1台のIR構造化光照明機と、1台以上のカラーカメラを含んでいる深度カメラの1つの例は、2017年6月6日に米国特許商標庁により発行された米国特許第9,674,504号の「DEPTH PERCEPTIVE TRINOCULAR CAMERA SYSTEM(深度知覚三眼顕微鏡カメラシステム)」に記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
本発明の幾つかの実施形態においては、「深度カメラ」としても知られている距離カメラ100は、重なる視野を有している少なくとも2台の標準二次元カメラを含んでいる。より詳細には、これらの二次元カメラはそれぞれ、相補型金属酸化膜半導体(CMOS)イメージセンサ、または電荷結合素子(CCD)イメージセンサなどのようなデジタルイメージセンサ、および光をイメージセンサ上に焦点を合わせるように構成されている光学システム(例えば、1つ又は複数のレンズ)を含むことができる。二次元カメラの光学システムの光軸は、わずかに異なる視点からであるが、2台のカメラが実質的に同じシーンの画像を取得するように実質的に平行であってよい。従って、視差により、カメラからより遠いシーンの部分は、2台のカメラで撮像された画像においては実質的に同じ場所に現れ、カメラにより近いシーンの部分は、異なる場所に現れる。
幾何学的に較正された深度カメラを使用すると、基準座標系(例えば、その原点を深度カメラの位置に有する座標系)に関して、対象物の表面上のすべての見える点の三次元位置を識別することが可能である。そのため、距離カメラ100により撮像された距離画像または深度画像は、三次元点の「クラウド(群)」として表現でき、対象物の表面の部分を(深度カメラの視野内の他の表面と共に)記述するために使用できる。
図2は、本発明の1つの実施形態に係るステレオ深度カメラシステムのブロック図である。図2において示されている深度カメラシステム100は、第1カメラ102、第2カメラ104、投影源106(または、照明源またはアクティブ投影システム)、およびホストプロセッサ108とメモリ110を含んでおり、ホストプロセッサは、例えば、グラフィックス処理ユニット(GPU)、より汎用的なプロセッサ(CPU)、適切に構成されたフィールドプログラマブルゲートアレイ(FPGA)、または特定用途向け集積回路(ASIC)であってよい。第1カメラ102と第2カメラ104は、それらの相対的位置と向きが実質的に固定されるように、例えばフレーム上に強固に取り付けることができる。第1カメラ102と第2カメラ104は、共に「深度カメラ」と称することができる。第1カメラ102と第2カメラ104は、対応するイメージセンサ102aと104aを含んでおり、対応する画像信号プロセッサ(ISP)102bと104bもまた含むことができる。種々の構成要素は、システムバス112上で互いに通信できる。深度カメラシステム100は、他の装置と通信するためのネットワークアダプタ116、深度カメラ100の加速度を検出(例えば、向きを決定するために、重力の方向を検出)するためのジャイロスコープなどのような慣性測定ユニット(IMU)118、および深度カメラシステム100により収集且つ処理されたデータを格納するためのNANDフラッシュメモリなどのような持続性メモリ120などのような追加的構成要素を含むことができる。IMU118は、多くの現代のスマートフォンにおいて一般的に見出されるタイプのものであってよい。画像撮像システムはまた、ユニバーサルシリアルバス(USB)インタフェースコントローラなどのような他の通信構成要素も含むことができる。
図2において示されているブロック図は、深度カメラ100を、ホストプロセッサ108、メモリ110、ネットワークアダプタ116、IMU118、および持続性メモリ120に結合されている2台のカメラ102と104を含んでいるように示しているが、本発明の実施形態はそれに制限されない。例えば、図6において示されている3台の深度カメラ100(下記に、より詳細に記述される)がそれぞれ、カメラ102と104、投影源106、および通信構成要素(例えば、USB接続部またはネットワークアダプタ116)を単に含むことができ、3台の深度カメラ100のカメラ102と104により撮像された二次元画像の処理は、それぞれの通信構成要素またはネットワークアダプタ116を使用して深度カメラ100と通信状態にある共有プロセッサまたは共有されているプロセッサの集合体により実行できる。
幾つかの実施形態においては、カメラ102と104のイメージセンサ102aと104aは、RGB-IRイメージセンサである。可視光(例えば、赤-緑-青、またはRGB)と不可視光(例えば、赤外線またはIR)情報を検出できるイメージセンサは、例えば、電荷結合素子(CCD)または相補型金属酸化膜半導体(CMOS)センサであってよい。一般的に、従来のRGBカメラセンサは、50%の緑、25%の赤、そして25%の青の「ベイヤレイアウト」または「GRBGレイアウト」で配置されている画素を含んでいる。帯域通過フィルタ(または「マイクロフィルタ」)が、ベイヤレイアウトに従って、緑、赤、および青の波長のそれぞれに対して、個々のフォトダイオードの前方(例えば、フォトダイオードと、カメラと関連付けられている光学機器との間)に置かれる。一般的には、従来のRGBカメラセンサはまた、電磁スペクトルのIR部分における信号を更に遮断する赤外線(IR)フィルタまたはIRカットオフフィルタ(例えば、レンズの一部として、または、イメージセンサチップ全体上のコーティングとして形成される)も含んでいる。
RGB-IRセンサは、従来のRGBセンサに実質的に類似しているが、異なるカラーフィルタを含むことができる。例えば、RGB-IRセンサにおいては、4つのフォトダイオードのすべてのグループにおける緑フィルタの1つは、赤外線画素が可視光画素の中に混入されている、25%の緑、25%の赤、25%の青、そして25%の赤外線であるレイアウトを作成するために、IR帯域通過フィルタ(またはマイクロフィルタ)と置き換えられている。加えて、IRカットオフフィルタをRGB-IRセンサから省略することができ、IRカットオフフィルタを、赤、緑、および青の光を検出する画素上のみに位置させることができ、またはIRフィルタを、特別な波長区間(例えば、840~860nm)における光と共に、可視光を通過させるように設計できる。電磁スペクトル(例えば、赤、青、緑、および赤外線の光)の多数の部分、または帯域、またはスペクトル帯域における光を捕捉できるイメージセンサは、ここにおいては、「マルチチャネルイメージセンサ」と称する。
本発明の幾つかの実施形態においては、イメージセンサ102aと104aは、従来の可視光センサである。本発明の幾つかの実施形態においては、システムは、1台以上の可視光カメラ(例えば、RGBカメラ)を含んでおり、それとは別個に、1台以上の不可視光カメラ(例えば、赤外線カメラであって、IR帯域通過フィルタが画素全体上にわたり位置している)を含んでいる。本発明の他の実施形態においては、イメージセンサ102aと104aは赤外線(IR)光センサである。
深度カメラ100がカラーイメージセンサ(例えば、RGBセンサまたはRGB-IRセンサ)を含んでいる幾つかの実施形態においては、深度カメラ100により収集されたカラー画像データは、カラーカメラ150により取り込まれたカラー画像データを補完できる。加えて、深度カメラ100がカラーイメージセンサ(例えば、RGBセンサまたはRGB-IRセンサ)を含んでいる幾つかの実施形態においては、カラーカメラ150をシステムから省略できる。
一般的に言えば、ステレオ深度カメラシステムは、互いに間隔を空けて配置され、剛性フレームなどのような共有構造体に強固に搭載されている少なくとも2台のカメラを含んでいる。カメラは実質的に同じ方向(例えば、カメラの光軸は実質的に平行であってよい)を向いており、重なる視野を有している。これらの個々のカメラは、例えば、光をイメージセンサに向ける、またはそこに焦点を合わせるように構成されている光学システム(例えば、1つ又は複数のレンズを含んでいる)を有する相補型金属酸化膜半導体(CMOS)または電荷結合素子(CCD)イメージセンサを使用して実現できる。光学システムは、例えば、光学システムが「広角レンズ」または「望遠レンズ」またはその間のレンズとして実現されているかどうかに基づいて、カメラの視野を決定できる。
下記の検討においては、深度カメラシステムの画像取得システムは、「マスタ」カメラと1台以上の「スレーブ」カメラと称することができる少なくとも2台のカメラを有していると称することができる。一般的に言えば、推定された深度または視差マップはマスタカメラの視点から計算されるが、何れのカメラもマスタカメラとして使用できる。ここにおいて使用されているように、マスタ/スレーブ、左/右、上方/下方、第1/第2、およびCAM1/CAM2などのような用語は、注記しない限り、交換可能に使用される。言い換えれば、何れのカメラもマスタまたはスレーブカメラであることができ、右側のカメラに関してその左側にあるカメラに対する考察はまた、対称性により、他の方向においても適用できる。加えて、下記に提示される考察は、種々の数のカメラに対して有効であるが、便宜上、それらは、2台のカメラを含んでいるシステムの環境において一般的に記述される。例えば、深度カメラシステムは、3台のカメラを含むことができる。そのようなシステムにおいては、カメラの内の2台は不可視光(赤外線)カメラであってよく、3番目のカメラは可視光カメラ(例えば、赤/青/緑のカラーカメラ)であってよい。3台のカメラはすべて互いに対して光学的に位置合わせ(例えば、較正)できる。3台のカメラを含む深度カメラシステムの1つの例は、2016年5月5日に米国特許商標庁において出願された米国特許出願第15/147,879号の「Depth Perceptive Trinocular Camera System(深度知覚三眼顕微鏡カメラシステム)」において記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
カメラにより画像が取得されたシーンにおける特徴の深度を検出するために、深度カメラシステムは、カメラにより撮像された画像にそれぞれにおける特徴の画素位置を決定する。2つの画像における特徴間の距離は視差と称され、それは対象物の距離または深度と反比例関係にある。(これは、対象物を一度に片目で見るときに、対象物がどのくらい「シフト」するかを比較するときの現象であり、シフトの大きさは、対象物がそれを見る人の目からどのくらい遠くにあるかに依存し、より近い対象物はより大きくシフトし、より遠い対象物はより小さくシフトし、遠くにある対象物は、検出可能なシフトがほとんどないかまったくない)。視差を使用して深度を計算するための技術は、例えば、R.Szeliski.の「Computer Vison:Algorithms and Applications(コンピュータビジョン:アルゴリズムと適用)」,Springer,2010pp.467(以下参照)において記述されている。
マスタとスレーブカメラとの間の視差の大きさは、カメラの画素解像度、カメラ間の距離、およびカメラの視野などのような深度カメラシステムの物理特性に依存する。従って、精度の良い深度測定値を生成するために、深度カメラシステム(または深度知覚深度カメラシステム)は、これらの物理特性に基づいて較正される。
幾つかの深度カメラシステムにおいては、カメラを、カメラのイメージセンサの画素の水平方向の列が実質的に平行になるように配置できる。画像修正技術を、カメラのレンズの形状およびカメラの向きのばらつきによる画像の歪みを吸収するために使用できる。
より詳細には、カメラ較正情報は、等価カメラシステムのエピポーラ線が、修正された画像の走査線と整列するように入力画像を修正するための情報を提供できる。そのような場合においては、シーンにおける三次元点は、マスタおよびスレーブ画像における同じ走査線指標上に投影される。uとuを、マスタおよびスレーブ等価カメラそれぞれにおける同じ三次元点pの画像の走査線上の座標とし、各カメラにおいては、これらの座標は、主要点(光軸と焦点面が交差する点)に中心が置かれた軸システムを指し示しており、水平軸は、修正された画像の走査線に平行であるとする。差u-uは視差と呼ばれ、dで示され、それは、修正されたカメラに関する三次元点の直交距離(つまり、点の、何れかのカメラの光軸上への直交投影の長さ)に反比例する。
ステレオアルゴリズムは、視差のこの特質を利用する。これらのアルゴリズムは、左および右側のビューにおいて検出された点(または特徴)をマッチングすることにより三次元再構成を達成し、それは、視差を推定することと等価である。ブロックマッチング(BM)は、通常使用されるステレオアルゴリズムである。マスタカメラ画像における画素が与えられると、アルゴリズムは、この画素を、スレーブカメラ画像における任意の他の画素とマッチングさせるためのコストを計算する。このコスト関数は、マスタ画像における画素とスレーブ画像における画素を取り囲む小さなウィンドウ内の画像の内容間の非類似性として定義される。点における最適視差は、最終的には最小マッチングコストの引数として推定される。この手順は、普通は、ウィナー・テイクス・オール(Winner-Takes-All(WTA))として対処される。これらの技術は、例えば、R.Szeliski.の「Computer Vison:Algorithms and Applications(コンピュータビジョン:アルゴリズムと適用)」,Springer,2010.おいてより詳細に記述されている。BMのようなステレオアルゴリズムは、外観の類似性に依存しているので、スレーブ画像における2つ以上の画素が同じ局所的外観を有していると、これらの画素はすべてマスタ画像における同じ画素に類似する可能性があり、不明瞭な視差推定という結果になるので、視差の計算は難しくなる。これが起こり得る典型的な状況は、平坦な壁などのような、一定の明るさを有するシーンを視覚化するときである。
その開示の全体が、ここにおいて参照により組み込まれる、2016年7月12日に発行された米国特許第9,392,262号の「System and Method for 3-D Reconstruction Using Multiple Multi-Channel Cameras(多数のマルチチャネルカメラを使用する三次元再構築のためのシステムと方法)」に記述されているような、小さな三次元詳細を捕捉できるブロックマッチングアルゴリズムの性能を向上または最適化するために設計されているパターンを投影することにより追加的照明を提供する方法が存在する。他のアプローチは、シーンに対してテクスチャを提供し、特には、そうでなければ同じに見えるシーンの部分を明確にすることによりテクスチャのない領域の深度推定を向上するために単に使用されるパターンを投影する。
本発明の実施形態に係る投影源106は、可視光(例えば、人間および/または他の動物に見えるスペクトル内の光)または不可視光(例えば、赤外線光)を、カメラ102と104によりその画像が取得されるシーンに向けて出射するように構成できる。言い換えると、投影源は、カメラ102と104の光軸と実質的に平行な光軸を有することができ、カメラ102と104の視野の方向に光を出射するように構成できる。幾つかの実施形態においては、投影源106は、多数の別個の照明機を含むことができ、それぞれは、他の照明機(または複数の照明機)の光軸(または複数の光軸)から間隔をおいて配置され、およびカメラ102と104の光軸から間隔をおいて配置されている光軸を有している。
可視光投影源は、被写体の目の中に入り込んで、不快感を与えるように照らす可能性があり、または、シーンにパターンを追加することにより被写体の体験に望ましくない影響を与える可能性があるが、不可視光は、被写体の見る能力に干渉することはないので、不可視光投影源は、被写体が人間である状況(テレビ会議などのような)に対しては、より良好に適切であり得る。不可視光投影源を含んでいるシステムの例は、例えば、2015年6月30日に米国特許商標庁において出願された米国特許出願第14/788,078号の「System and Methods for Multi-Channel Imaging Based on Multiple Expose Settigs(多数の露光環境に基づくマルチチャネル画像取得のためのシステムと方法)」に記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
アクティブ投影源はまた、例えば、時間の経過と共に変化しないパターンである静的パターン、および、例えば、時間の経過と共に変化するパターンである動的パターンを投影するものとして分類できる。両者の場合においては、パターンの1つの態様は、投影されたパターンの照明レベルである。これは、深度カメラシステムの深度ダイナミックレンジに影響を与え得るので適切であり得る。例えば、光学的照明が高いレベルの場合、深度測定を遠くの対象物に対して実行でき(例えば、距離の二乗に反比例する係数で、対象物までの距離に対して光学的照明が減少していくことを克服して)、および明るい周囲の光の条件において実行できる。しかし、高い光学的照明レベルは、クローズアップされたシーンの部分の飽和を引き起こし得る。一方、低い光学的照明レベルは、近くの対象物の測定を可能にできるが、遠くの対象物に対しては測定を可能にできない。
本発明の実施形態は、ステレオ深度カメラシステムに関してここにおいて記述されているが、本発明の実施形態は、それに制限されず、構造化光カメラ、飛行時間型カメラ、およびライダーカメラなどのような他の深度カメラシステムと共に使用することもできる。
カメラの選択により、三次元モデルを生成するために、異なる技術を使用できる。例えば、Dense Tracking and Mapping in Real Time(DTAM)(リアルタイムの稠密追尾と環境地図作成)は、走査のためにカラーキューを使用し、Simultaneous Localization and Mapping(SLAM)(自己位置推定と環境地図作成の同時実行)は、三次元モデルを生成するために深度データ(または、深度とカラーデータの組み合わせ)を使用する。
図3は、アクティブステレオと少なくとも1台のカラーカメラを含んでいる深度カメラにより取得された深度マップとカラー画像を含んでいるフレームのシーケンスの例である。図3において示されているように、上段の列は、テーブル上のブーツの4つのカラー画像を示しており、一方、下段の列は、カラー画像に対応する(例えば、カラー画像と同時に、またはほぼ同時に撮像された)深度マップを示している。下段の列において示されているように、深度カメラにより近いシーンの部分は黄色で示されており、より遠くのシーンの部分は青で示されている。従って、ブーツとテーブルは全体的に黄色で示されており、一方、背景において立っている人間を含む背景は青の色合いで示されている。注目対象物は、閾値よりも大きな深度を有する画素を除去する(例えば、図3の下段の列において示されている画像における青い画素を除去する)ことにより、そして、残っているモデルの底部の平坦表面も除去することにより背景から分離できる。
種々の角度で撮像された深度画像(例えば、図3の異なる列)は、iterative closest point(ICP)(反復最近接点)やstructure from motion(SfM)(運動からの構造復元)などのような技術により、対象物の三次元モデルを生成するために組み合わせることができる。三次元モデルは、点群(例えば、x、y、およびz座標を有する三次元点の集合)および/またはメッシュ(例えば、三角形の集合)として表現できる。
図4Aは、三次元点群モデルの例の二次元ビューであり、図4Bは、1台以上の深度カメラを使用して撮像した三次元メッシュモデルの例の二次元ビューである。走査のためのシステムと方法の例は、例えば、2016年12月16日に米国特許商標庁において出願された米国特許出願第15/382,210号の「3D SCANNING APPARATUS INCLUDING SCANNING SENSOR DETACHABLE FROM SCREEN(画面から取り外し可能な走査センサを含む三次元走査装置)」、2017年2月28日に米国特許商標庁において出願された米国特許出願第15/445,735号の「ASSISTED SCANNING(支援された走査)」、および2017年6月22日に米国特許商標庁において出願された米国特許出願第15/630,715号の「SYSTEM AND METHODS FOR A COMPLETE 3D OBJECT SCAN(完全な三次元対象物走査のためのシステムと方法)」に記述されており、それらの開示の全体は、ここにおいて参照により組み込まれる
対象物の全三次元モデル(例えば、対象物のほぼすべての表面が遮蔽されていないモデル)を撮像するためには、走査されている対象物の表面上のすべての位置が、フレームの少なくとも1つで囲まれるように、そのようなフレームを異なる有利な視点の全体から取得する必要がある。幾つかの状況においては、対象物の底部の表面の画像を撮像することは実行不可であり得るので(例えば、搬送器のベルトなどのような支持体上にある対象物の表面)、従って、それに制限されることはないが、「全三次元モデル」という用語は、対象物の底部の表面が撮像されない状況も含むと仮定される。そのような情報を、視点の全体から取り込むことは、一般的には三次元モデル化システムのボトルネックであり、製造ライン上の搬送器のベルト上で移動している対象物の場合は特にそうである。そのような大量のデータを単一のスキャナから収集することは、一般的には、相対的に長い時間と、搬送器のベルトの動きを考慮するために、スキャナを移動可能な、動いている構成要素の利用が要求される。従って、本発明の幾つかの実施形態は、図5A、5B、および6において示されているように、多数の深度カメラ(または、多数の三次元スキャナ)からのデータを収集することに関する。
図5Aは、本発明の1つの実施形態に係る、搬送器のベルト上の対象物を走査するように構成されている走査システム99の模式図である。図5Bは、静止している対象物(例えば、テーブル上の静止物)を走査するように構成されている、本発明の1つの実施形態に係る走査システムの模式図である。
図5A、5B、および6において示されているように、走査システム99は、多数の深度カメラ100を含むことができる。深度カメラ100のそれぞれは製造時に較正されており、それ自身の(二次元)カメラセンサの固有パラメータの推定値と、スキャナ内の付帯的なパラメータ(例えば、図2のイメージセンサ102aと104aなどのようなすべてのセンサ間の、および単一の深度カメラ100のすべてのセンサ間の回転と平行移動)の推定値を得る。標準的なマルチカメラ較正手順の概観は、Zanuttigh,P.らによるTime-of-Flight and Structured Light Depth Camera(飛行時間型および構造化光深度カメラ).2016,Springerにおいて見出すことができる。
カメラの配置の1つの例として、図6は、本発明の1つの実施形態に係る、2つの部分を有する搬送器のベルト12上を移動する対象物10(一足の靴として示されている)の模式図であり、搬送器のベルト12の第1部分は対象物10を第1方向に沿って移動し、第2部分は対象物10を、第1方向とは直交する第2方向に沿って移動する。対象物10が搬送器のベルト12の第1部分12aに沿って移動するときに、第1カメラ100aは、上方から対象物10の上部表面の画像を取得し、一方、第2および第3カメラ100bと100cは、対象物10の側部の画像を取得する。この配置においては、対象物10の端部の画像を取得することは、カメラを搬送器のベルトの動きの方向に沿っておく必要があり、そのため対象物10の動きを妨害し得るので困難である可能性がある。そのため、対象物10は、搬送器のベルト12の第2部分12bに移動でき、移動後はそこにおいて、対象物10の端部が、搬送器のベルト12の第2部分12bの側部に位置しているカメラ100dと100eから見えるようになる。そのため、図6は、対象物10の見える表面全体をカバーすることを可能にするカメラの配置の例を示している。
幾つかの実施形態においては、深度カメラ100の付帯的なパラメータ(例えば、相対的な姿勢)は、他の較正ステップにおいて推定され、そのステップにおいては、較正目標(例えば、白黒の二次元チェッカーボードなどのような、識別可能且つ正確に検出可能な特徴を有する既知のサイズの対象物)が、三次元モデル化システムを構成するスキャナのそれぞれの間の相対的な回転と平行移動を検出するために、すべての深度カメラにより取得される。従って、付帯的パラメータは、対象物の撮像された三次元モデルを生成するように深度マップを融合するために、異なる深度カメラにより撮像された別個の深度マップ(例えば、三次元点群)に加えられ得る変形を計算または推定するために使用できる。
三次元走査のためのシステムと方法の例は、2018年1月9日に米国特許商標庁において出願された米国特許出願第15/866、217号の「SYSTEMS AND METHODS FOR DEFECT DETECTION(欠陥検出のためのシステムと方法)」と、2018年5月8日に米国特許商標庁において出願された米国特許出願第15/974、595号の「SYSTEMS AND METHODS FOR INS(登録商標)PECTION AND DEFECT DETECTION USING 3-D SCANNING(三次元走査を使用する検査および欠陥検出のためのシステムと方法)」においてより詳細に記述されており、それらの開示の全体は、ここにおいて参照により組み込まれる。
三次元モデルの生成
深度画像が、異なる姿勢(例えば、目標対象物10に関して異なる位置)で深度カメラ100により撮像されると、別個の深度画像(点群として表わされている)14を融合点群220に融合する、三次元モデル生成モジュール200の点群融合モジュール210(図7参照)により単一の深度カメラにより取得され得る、目標対象物10の表面のより大きな部分の形状に関するデータを取得することが可能である。例えば、対象物の反対側の表面(例えば、図7において示されているブーツの中央面と側面)の両者を取得でき、一方、単一姿勢の単一カメラは、一度に目標対象物の1つの面の深度画像を取得できるのみである。多数の深度画像は、単一の深度カメラを多数の異なる姿勢となるように動かすことにより、または、異なる場所に位置している多数の深度カメラを使用することにより撮像できる。深度画像(または点群)を融合することは追加的な計算を必要とし、特別な整列測定基準を最適化(例えば、最小化)することにより深度カメラの相対的姿勢を自動的に計算できる、Iterative Closest Point(ICP)(反復最近接点)技術(例えば、Besl,Paul J.,およびNeil D.McKay.の「Method for registration of 3-D shapes(三次元形状の位置合わせのための方法」.Robotics-DL tentative.International Society for Optics and Photonics,1992.参照)などのような技術を使用して達成できる。ICPプロセスは、カメラの近似初期相対姿勢を提供することにより加速化でき、それは、カメラが「位置合わせされている」場合(例えば、カメラの姿勢が既知であり、その姿勢が較正ステップとランタイム動作との間で変化しないとういう意味でほぼ固定されている場合)は利用可能である。対象物の見える表面のほぼすべてを撮像するためのシステムと方法は、例えば、2018年1月9日に米国特許商標庁において出願された米国特許出願第15/866,217号の「Systems and Methods for Defect Detection(欠陥検出のためのシステムと方法)」に記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
多数の整列された個々の点群(個々の深度画像)を融合することにより得ることができる点群は、エラーのある測定値(例えば、測定ノイズ)による「外れ値」点を除去するために、または、背景の対象物に対応する表面などのような、関心のない構造物を(例えば、特別な閾値深度よりも大きな深度を有する点を除去することにより)除去するために、および対象物が位置している表面(または「基平面」)を(例えば、点の最も底部の平面を検出することにより)除去するために処理できる。
幾つかの実施形態においては、システムは更に、クエリ(検索が要求されている)対象物のテクスチャ(色)データ16を取り込むように構成されている複数のカラーカメラ150を含んでいる。上記に注記したように、本発明の幾つかの実施形態においては、深度カメラは、深度カメラ100が、別個のカラーカメラ150を使用する代わりに、カラーデータ166を提供するように、赤外線データとカラーカメラデータの両者を取り込むRBG-IRセンサを使用できる。テクスチャデータは、対象物の物理形状において存在しない、または明白でない、対象物の表面上の色、濃淡、およびパターンを含むことができる。幾つかの状況においては、目標対象物の材料は光を反射する(例えば、光沢のある)材料である可能性がある。結果として、テクスチャ情報は、光のギラツキの存在のために失われる可能性があり、取り込まれた色情報は、シーン内の光源の反射などのような人工物を含む可能性がある。そのため、本発明の実施形態の幾つかの態様は、表面の実際の色データを取り込むために、光のギラツキを除去することに向けられている。幾つかの実施形態においては、これは、目標対象物の表面の同じ部分(または「パッチ(小さな箇所)」)の画像を多数の姿勢で取得することにより達成され、光のギラツキは、これらの姿勢の中の幾つかの少ない数の姿勢から見えるだけである。結果として、このパッチの実際の色は、カラーカメラのそれぞれに対してこのパッチと関連付けられているカラーベクトルを計算し、カラーベクトルの中で最小の大きさを有するカラーベクトルを計算することにより決定できる。この技術は、2017年8月15日に米国特許商標庁において出願された米国特許出願第15/679、075号の「System and Method for Three-Dimensional Scanning and for Capturinga Bidirctional Reflectance Distribution Function(三次元走査および双方向反射率分布関数を得るためのシステムと方法)」においてより詳細に記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
幾つかの実施形態においては、点群は、三次元モデルを生成するために組み合わされる。図7は、本発明の1つの実施形態に係る、目標対象物の画像を撮像し、目標対象物に対する記述子を生成するためのプロセスを例示している模式ブロック図である。例えば、別個の点群14は、融合された点群220を生成するために、点群融合モジュール210により融合される(例えば、点群を整列し融合するためにICPを使用することにより、また、ノイズを削減し、点群三次元モデルのサイズを管理するために、重要でない、または擬似の点を除去することにより)。幾つかの実施形態においては、メッシュ生成モジュール230は、ドロネー三角形分割(Delaunay triangulation)およびアルファシェイプなどのような技術と、MeshLab(例えば、P.Cignoni,M.Callieri,M.Corsini,M.Dellepiane,F.Ganovelli,G.Ranzuglia MeshLab:an Open-Source Mesh Processing Tool(オープンソースメッシュ処理ツール),Sixth Eurographics Italian Chapter Conference,pages 129-136,2008.参照)などのようなソフトウェアツールを使用して、融合された点群から三次元メッシュ240を計算する。三次元モデル(三次元点群モデル220または三次元メッシュモデル240)は、種々の点における対象物の表面に色についての、カラーカメラ150からの色情報16と組み合わせることができ、この色情報は、テクスチャマップ(例えば、モデルの表面の色についての情報)として三次元点群または三次元メッシュモデルに適用できる。
解析エージェント
図1Aのブロック図に戻って参照すると、本発明の幾つかの実施形態においては、1台以上の三次元スキャナ100により取得された三次元モデルは、対象物自身についての1つ又は複数の特質を推定または計算するために、動作530において、入力データ(例えば、三次元モデルであり、幾つかの例においては、取得されたフレームのサブセット)を解析する、解析エージェントまたは検査システム300に供給できる。対象物の特質の例としては、例えば、対象物は壊れ易いかどうか、対象物は危険な物質を含んでいるように見えるかどうかなどが含まれる。
一般的には、複合検査タスクは決定ツリーの形状において表現でき、決定ツリーにおいては、決定はバイナリかK値である。このことは、単純検査タスクは一般的には、バイナリ数(例えば、ゼロまたは1またはバイナリ分類子)、または、Kの異なるクラス(例えば、サイズKの整数のセットにおける整数またはK値分類子)の中の決定、または、実数(例えば、[0,1]の区間における実数または浮動小数点値)の何れかである出力を生成するという事実に基づいている。第1の場合においては、単純検査タスクは、バイナリ分類タスクまたは決定タスクと言われ、第2の場合においては、単純検査タスクは、Kクラスの分類タスクであると言われ、第3の場合においては、単純検査タスクは、回帰タスクであると言われ、「回帰」という用語は、ここにおいては、出力が実数である数学的モデル化タスクに対する総称として非公式に使用されている。そのような「回帰」タスクの他の例としては、パラメトリック機能マッピング、機能的マッピング、およびファフィー論理が含まれる。
図8は、本発明の1つの実施形態に係る解析システムのブロック図である。図9は、本発明の1つの実施形態に係る解析システムを使用して、対象物の三次元モデルを解析することにより検査タスクを実行するための方法のフローチャートである。解析システム300は、コンピュータシステムを使用して実現でき、コンピュータシステムはプロセッサとメモリを含むことができ、メモリは、プロセッサに、本発明の実施形態に係る方法の種々の部分を実行させる命令を格納している。
本発明の実施形態の種々のコンピュータ計算部分は、コンピュータシステムにより実行される特定目的のコンピュータ命令により実現できる。コンピュータシステムは、1つ又は複数の中央演算処理装置(CPU)、1つ又は複数のグラフィックス処理ユニット(GPU)、1つ又は複数のフィールドプログラマブルゲートアレイ(FPGA)、1つ又は複数のデジタル信号プロセッサ(DSP)、および/または、ニューロモルフィックプロセッサなどのような1つ又は複数の特定用途向け集積回路(ASIC)、および「テンソル処理ユニット」(TPU)、ベクトルプロセッサなどのようなニューラルネットワークを実現するように構成されている他の処理ユニットを含む、1つ又は複数のプロセッサを含むことができる。コンピュータシステムはまた、三次元走査システム、データ格納システム(例えば、データベース)、表示装置、および他のコンピュータシステムなどのような他の装置にデータを送信し、それらの装置からデータを受信するための通信装置(例えば、ネットワークアダプタ、シリアルまたはパラレルデータバスアダプタ、グラフィックスアダプタ)などのような周辺機器も含むことができる。コンピュータ計算は、多数の別個のコンピュータシステムにわたり分散でき、そのうちの幾つかは、クエリ対象物の走査に対して局所的(例えば、現場において、および深度とカラーカメラに直接接続されて、または、ローカルエリアネットワーク(LAN)上で深度およびカラーカメラに接続されて)であることができ、そのうちの幾つかは、遠く離れていてもよい(例えば、インターネットなどのようなワイドエリアネットワークを通して、深度およびカラーカメラに接続されている、現場から離れている、「クラウド」に基づくコンピュータ計算リソース)。
本発明の幾つかの実施形態においては、処理はカメラにおいて(例えば、スキャナ100の1つ又は複数のプロセッサとメモリにおいて)実行され、対象物解析結果(例えば、対象物分類)は、スキャナ100により計算できる。本発明の幾つかの実施形態においては、異なるスキャナの個々の出力(例えば、異なる視覚情報)は、全体の対象物分類を計算するために一緒に組み合わせることができ、一緒に解析できる。本発明の幾つかの実施形態においては、カメラのグループは、グループの異なるスキャナ100により撮像された画像に基づいて、解析結果を計算するために、1つ又は複数の局所プロセッサを共有できる。本発明の幾つかの実施形態においては、データ解析を局所的に実行することにより、ネットワークを介して送信されるデータ量が削減され(例えば、解析結果を送信することは、一般的には、深度マップまたは三次元モデルを送信するよりも帯域幅の負荷は少ない)、それにより、十分な帯域幅を提供するために機器をネットワークで繋ぐことにおいて大きな投資を必要とすることなく、環境を通して、より多数のカメラを分布することを可能にする。コンピュータ計算を局所処理装置と遠隔(または「オフライン」)処理装置との間で分布させるための幾つかの考察とシステムは、例えば、2017年11月6日に米国特許商標庁において出願された米国特許出願第15/805,107号の「SYSTEM AND METHOD FOR PORTABLE ACTIVE 3D SCANNING(携帯型アクティブ三次元走査のためのシステムと方法)」において記述されており、その開示の全体は、ここにおいて参照により組み込まれる。
便宜上、目標対象物の撮像された画像に基づいて、目標対象物を検査するために特定目的の動作を実行するための特別なコンピュータ命令を使用して構成されているコンピュータシステムは、ここにおいては、検査エージェントまたは検査システムの一部として称される。
図8において示されているように、解析システム300は、特徴抽出器310、データ検索モジュール330、および三次元モデル解析モジュール350を含むことができる。動作910において、特徴抽出器310は、入力された三次元モデルから対象物特徴マップを生成し、データ検索モジュール330は、動作930において、対象物特徴マップに基づいて、対象物に対応するメタデータを検索する(例えば、データベースから)。三次元モデル解析モジュール350は、動作950において、入力された三次元モデルを解析(例えば、対象物特徴マップを解析)し、解析データを生成するために、検索されたデータを使用する。
図10は、靴の縫い目を検査する複合検査タスクの例としての決定ツリー1000を示したものである。本発明の種々の実施形態によれば、解析システム300は、図10において示されている例としての決定ツリー1000などのような決定ツリーを、対象物に対して複合検査タスクを実行するためのプロセスの一部として実現できる。本開示の幾つかの実施形態においては、解析システムは、図8において示されている明確な別個のモジュールとステージの幾つかまたはすべての代わりに、そして、図9のフローチャートにおいて示されている動作の幾つかまたはすべての代わりに、図10において示されている決定ツリーと類似する決定ツリーを実現する。
図10において示されているように、所与の入力1002(例えば、検査対象の特別な靴の視覚情報)に対して、例としての決定ツリー1000の第1タスク1010は、靴の造りを識別することに関連している(例えば、K個の異なる造りの間のK値分類子)。造りのそれぞれは、対応する製造会社により生産された種々のモデルと関連付けることができる。従って、第2タスク1020は、特別なモデル(例えば、他のK値分類子)を識別することに関連し、第3タスク1030は、靴の色(例えば、他のK値分類子)を識別することに関連し、それに、第4タスク1040における靴のサイズを識別する(例えば、他のK値分類子、または有効靴サイズへの離散化を伴う回帰タスク)ことが続く、第5タスク1050において、下記により詳細に記述されるように、靴の容認できる縫い目の特性についてロードされた(例えば、データベースから)情報に基づいて、縫い目は容認できるかどうかを決定するために種々のステップからの情報が使用される。
図10において示されているように、複合検査タスクの最終出力1052は、複合タスク1000自身を構成するすべての単純検査タスク1010、1020、1030、1040、および1050の連携関数であり、従って、単に個々のタスク1010、1020、1030、1040、および1050を最適化することにより得ることができる非最適構成のリスクに陥ることなく、複合タスク1000に対する最適ソリューションを得るための目標で、すべてのそのような単純タスク1010、1020、1030、1040、および1050の連携学習を実行することは望ましい。
一般性を失うことなく、且つ便宜上、下記の検討は、解析を、各単純タスクがバイナリ分類子であり、複合タスクの出力もまたバイナリ決定である場合に焦点を絞る。しかし、本開示の実施形態はそれに制限されない。(例えば、K値分類子は常にK個のバイナリ分類子の組み合わせとして表現できる)。バイナリ分類子の出力はPOSITIVE(検査対象の特徴が存在する)(以降、「陽性」と記述する)またはNEGATIVE(検査対象の特徴が存在しない)(以降、「陰性」と記述する)の何れかであり得る(あいにくこの用語は、検査対象の特徴が、実際は、欠陥の存在である欠陥検査タスクの場合は若干曖昧である。従って、この場合は、陽性結果は欠陥の存在の信号であり、陰性結果は、欠陥が存在しないことの信号である)。
バイナリ分類子の訓練は、通常は、教師有りの形式で実行され、つまり、テストの結果のグラウンドトゥルース値(例えば、人間の検査員により生成されたラベル)を入手可能なデータセット(訓練セット)が、推論または予測をどのように実行するかを学習するように分類子を訓練するために使用される。テストの結果のグラウンドトゥルース値を入手可能なデータを含む、ラベルが付けられたデータの互いに素のセット(テストセットと呼ばれる)が、訓練された分類子の性能を特徴付けるために使用される。
テストデータにおけるサンプルは、グラウンドトゥルース値と分類子の推定が共に特徴は存在するということで意見が一致した場合は、真陽性(True Positive(TP))と言われ、グラウンドトゥルース値と分類子の推定が共に特徴は存在しないということで意見が一致した場合は、真陰性(True Negative(TN))と言われ、分類子は特徴が存在すると推定したが、特徴は実際には存在しない場合は、偽陽性(False Positive(FP))と言われ、分類子は特徴が存在しないと推定したが、特徴は実際には存在する場合は、偽陰性(False Negative(FN))と言われる。
従って、下記の量を定義できる。真陽性率(TRr)は、テストセットにおける、TPの数と陽性の数との間の比であり、偽陽性率(FRr)は、テストセットにおける、FPの数と陰性の数との間の比である。理想的な分類子は、TPr=1とFPr=0で特徴付けられる。
バイナリ分類子の性能は、受信者操作特性(Receiver Operating Characteristic:ROC)曲線(例えば、Schlegl,T.,Seebock,P.,Waldstein,S.M.,Schmidt-Erfurth,U.,& Langs,G.(2017,June).Unsupervised anomaly detection with generative adversarial networks to guide marker discovery(製造会社発見に導くための敵対的生成ネットワークによる教師なし異常検出).In International Conference on Information Processing in Medical Imaging(pp.146-157).Springer,Cham.参照)により効果的に解析できる。ROC曲線のx軸はFPrに対応し、y軸はTPrに対応している。ROC曲線の曲線下面積(Area Under the Curve(AUC)of a ROC curve)は、分類子の品質の指標として使用できる。AUCが1に近ければ近いほど、分類子の品質は高い。
バイナリ分類子は、一般的には、TPrとFPr値により特徴付けられている(従って、ROC曲線は、そのような(FRr,TPr)点である(0,0)と(1,1)を結合することにより構成される)が、ROCに対して上述したものに類似する曲線を得るために、分類子のパラメータを変える(例えば、回帰子(regressor)の出力に対する閾値を変える)ことにより異なる(TPr,FPr)対を得ることが可能な分類子の同系統群もある。
ニューラルネットワークに基づく単純分類子
ニューラルネットワークは、単純分類子の1つの同系統群を構成する。ニューラルネットワークアーキテクチャは、バイナリ分類子として訓練されることに良好に適している。この場合、所与の入力サンプルに対して、ニューラルネットワークは、2つのクラス(x,x)のそれぞれのスコアを計算するように訓練されており、そして、ニューラルネットワークの最後の層は、最も大きいスコアのクラスを選択することによりバイナリ出力を推定する。この動作は、(TPr,FPr)対の異なる値を得るために修正できる。特に、xとxの間の最も大きな値を取る代わりに、スコアを正規化することができ、正規化されたスコアy,yを得ることができる。1つのアプローチは、
→y=(x-min(x,x))/(x +x
→y=(x-min(x,x))/(x +x
のように、出力が非負であり、それらの絶対値の合計が1となるようにマッピングを実行することである。そのようなアプローチでは、2つのスコアの1つのみが考慮され、閾値が適用される(例えば、x>th)。閾値の異なる値を選択することにより、ROC曲線を形成する異なる(TPr,FPr)対を得ることができる。
同じ特質を提供するニューラルネットワークの注目すべきサブ同系統群は、Deep Neural Networks(DNNs)(ディープニューラルネットワーク(例えば、Goodfellow,I.,Bengio,Y.,Courville,A.,& Bengio,Y.(2016).Deep learning(ディープラーニング)(Vol. 1).Cambridge: MIT Press.参照)、Convolutional Neural Networks for image classifications(CNNs)(画像分類のための畳み込みニューラルネットワーク)(例えば、Simonyan,K.,& Zisserman,A.(2014).Very deep convolutional networks for large-scale image recognition(大規模画像認識のための深層畳み込みネットワーク).arXiv preprint arXiv:1409.1556.参照)、Multi-View Convolutional Neural Networks for 3D model classification (MVCNNs)(三次元モデル分類のためのマルチビュー畳み込みニューラルネットワーク)(例えば、Su, H.,Maji,S.,Kalogerakis,E.,& Learned-Miller,E.(2015).Multi-view convolutional neural networks for 3d shape recognition(三次元形状認識のためのマルチビュー畳み込みニューラルネットワーク).In Proceedings of the IEEE international conference on computer vision(pp. 945-953).参照)、およびSupport Vector Machines(SVMs)(サポートベクトルマシン)である。
本開示の実施形態の幾つかの態様は、画像分類のために訓練されたCNNの転送学習の使用に関する。(例えば、Chatfield,K.,Simonyan,K.,Vedaldi,A.,& Zisserman,A.(2014).Return of the devil in the details: Delving deep into convolutional nets.(細部に宿る悪魔の帰還:畳み込みネットを深く掘り下げる).arXiv preprint arXiv:1405.3531.参照)。そのような状況においては、分類子に対する入力は、1つ又は複数の画像(例えば、カラー画像、グレースケール画像、および深度マップ)を含むことができ、CNNは、入力画像のそれぞれに適用され、中間表現(特徴空間における特徴ベクトルまたは特徴マップ)が、CNNの最後から2番目の層を評価することにより画像から抽出され、訓練セットにおける特徴ベクトルは、バイナリ分類を実行するために、サポートベクトルマシン(SVM)(または他の分類子)を訓練するために使用される。
単純分類子の幾つかのタイプにより共有される1つの態様は、多数の異なる分類子が、特徴ベクトルまたは特徴マップを計算するために使用されるCNNの一部を共有できるということである。この共有可能なCNNは、それが典型的には、幾つかの畳み込みおよび完全に接続された層により構成されているので、一般的には、大きなメモリとコンピュータ計算のための占有面積で特徴付けられている。従って、そのような計算を共有することにより、要求される訓練サンプルの量を削減し、要求される計算リソースを減少することが可能である。従って、共有可能なCNNを訓練することにより達成された学習は、他の単純タスクに「転送される」または「転送可能」である。そのため、図8において示されているように、本開示の実施形態の幾つかの態様は、種々の異なる単純分類子への入力として供給される対象物の特徴マップを抽出する、共有特徴抽出器310(例えば、共有CNNを含んでいる)の使用に関する。
特徴抽出器310の一部として使用できるCNNの例としては、MobileNetV2(例えば、Sandler,Markらによる「MobileNetV2:Inverted residuals and linear bottlenecks(逆残差と線形ボトルネック)」.Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018.参照)、MobileNetV3(例えば、Howard、Andrewらによる「Searching for MobileNetV3(MobileNetV3の検索).」arXiv preprint arXiv:1905.02244(2019)参照)、MnasNet(例えば、Tan、Mingxingらによる「MnasNet:Platform-aware neural architecture search for mobile(モバイルのプラットフォームを考慮したニューラルアーキテクチャ検索)」.Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2019参照)、およびXception(例えば、Chollet,Francois.「Xception:Deep learning with depthwise separable convolutions(深度方向に分離可能な畳み込みによるディープラーニング).」Proceedings of the IEEE conference on computer vision and pattern recognition.2017参照)がある。
欠陥解析を実行するためのニューラルネットワークであって、本発明の実施形態における単純分類子として使用できるニューラルネットワークの使用の追加的な例は、例えば、US 2018/0211373として、2018年7月26日に発行された米国特許出願第15/866、217号、US 2018/0322623として、2018年11月8日に発行された米国特許出願第15/974、595号、およびUS 2019/0108396として、2019年4月11日に発行された米国特許出願第16/158、280号に記述されており、それらの開示の全体は、ここにおいて参照により組み込まれる。
画像および深度マップ処理に基づく単純分類子
単純分類子の他の例としてのクラスは、画像処理、統計学、および数学的モデル化を含む技術を使用して、カラーカメラによる取得された画像と、深度カメラにより取得された深度マップを処理することに基づいている。この場合に使用できる共通の技術には、背景/前景分離(例えば、Kim,K.,Chalidabhongse,T.H.,Harwood,D.,& Davis,L.(2005).Real-time foreground-background segmentation using codebook model(コードブックモデルを使用するリアルタイム前景/背景分離).Real-time imaging,11(3),172-185.参照)、クラスタリングとグルーピング(例えば、Duda,R.O.,Hart,P.E.,& Stork,D.G.(2012).Pattern classification(パターン分類).John Wiley & Sons.参照)、接続された構成要素解析(例えば、Bradski,G.,& Kaehler,A.(2008).Learning OpenCV: Computer vision with the OpenCV library(OpenCの学習:OpenCVライブラリによるコンピュータビジョン),「O’Reilly Media、Inc.」.参照)、頑強な統計(例えば、Huber,P.J.(2011).Robust statistics(頑強な統計).In International Encyclopedia of Statistical Science(pp.1248-1251).Springer、Berlin、Heidelberg.参照)、および三次元幾何学的処理が含まれる。
これらの画像処理技術は、一般的には、0と1の間の実数を出力すると考えることができ(または、0から1の範囲に正規化されたそれらの出力を有することができ)、1により近い値は、入力における特徴の存在を示し、0により近い値は、入力において特徴が存在しないことを示す。そして、実数値出力は、例えば、それが0または1により近いかに基づいて、バイナリ値(例えば、0または1)にマップすることができる(他の実施形態においては、例えば、0と1との間の閾値が設定または学習されて、それにより、閾値よりも大きな値は1として扱われ、閾値未満の値は0として扱われる)。この[0,1]へのマッピングは、典型的には、下記により詳細に記述されるように、複合分類子を連携して訓練することを支援するが、本発明の実施形態は、それに制限されない。出力値は、閾値に関してチェックでき、この閾値を変えることにより、ニューラルネットワークに基づく分類子の場合に類似して、異なる(TPr,FPr)対を得ることが可能である。
ラベルに基づく単純分類子
単純分類子の他の例としてのクラスは、テキスト(例えば、Smith,R.(2007,September).An overview of the Tesseract OCR engine(TesseractOCRエンジンの概観).In Document Analysis and Recognition,2007.ICDAR 2007.Ninth International Conference on(Vol.2,pp.629-633).IEEE.参照)、アイコン(例えば、Redmon,J.,Divvala,S.,Girshick,R.,& Farhadi,A.(2016).You only look once(一度見るだけ):Unified, real-time object detection(統合されたリアルタイム対象物検出).In Proceedings of the IEEE conference on computer vision and pattern recognition(pp.779-788).参照)、およびコード(例えば、バーコード、QRコード(登録商標))(例えば、Gallo,O.,Manduchi,R.,& Rafii,A.(2011).CC-RANSAC:Fitting planes in the presence of multiple surfaces in range data(範囲データにおける多数の表面の存在のもとでの平面の適合).Pattern Recognition Letters,32(3),403-410.参照)を含む、ラベルのあるタイプの存在に基づいている。これらの分類子の出力は、一般的には、取得される情報の目的指向の性質を考慮すると、より高い推論レベルにある。従って、これらの分類子の出力は、一般的には、ある仕様(例えば、テキスト全体は取得された画像において検出される)を伴うバイナリ検出(例えば、「積み重ねない」または「積み重ね不可荷物」を示すテキストの存在を検出すること)の形式である。分類子のこのタイプに係る技術は、下記に制限されないが、注意モデル(例えば、Xiao,T.,Xu,Y.,Yang,K.,Zhang,J.,Peng,Y.,& Zhang,Z.(2015).The application of two-level attention models in deep convolutional neural network for fine-grained image classification(きめの細かい画像分類のためのディープ畳み込みニューラルネットワークにおける2レベル注意モデルの適用).In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition(pp.842-850).参照)、画像におけるテキスト識別および認識(例えば、上述したSmith,R.,参照)、および長短期メモリ(LSTM)モデル(例えば、Goodfellow,I.,Bengio,Y.,Courville,A.,& Bengio,Y.(2016).Deep learning(ディープラーニング)(Vol. 1).Cambridge:MIT press.参照)を含んでいる。
複合分類子
図10に関して上記に検討したように、複合検査タスクは、単純検査タスクに分解できる。そのため、本発明の実施形態の態様に係る複合分類子は、上述したような単純分類子(例えば、1つ又は複数のニューラルネットワークに基づく分類子、画像および深度マッププロセッサに基づく分類子、および/またはラベルに基づく分類子)の組み合わせであり、複合分類子は、対象物の三次元モデル、および/または、対象物の二次元画像(例えば、モノクロまたはグレースケール画像、カラー画像、および/または深度マップ)などのような、特別な入力に対する複合検査タスクの結果に関する予測または推論を計算できる。
単純分類子はより容易に訓練でき、解析を別個の決定ステップ(例えば、図10において示されている決定ツリーなどのような決定ツリーにより表現されるような決定ステップ)に分解することなく、入力から直接に複合検査結果を計算するために単一分類子を訓練すること比べて、単純分類子間の相互依存性および冗長性は、より強固且つ容易に訓練される複合分類子(例えば、最適複合分類子)という結果になるので、複合分類子は、複合検査タスクを、対応する単純分類子により実現される単純決定に分解することから恩恵を受ける。
上記に検討したように、複数の異なる単純分類子は、ブール論理、演算、ファジー論理などのような種々の論理演算を使用して組み合わせることができる。例えば、所与のパレットが積み重ね不可パレット(NSP)かどうかの評価は、ブール論理と組み合わされている単純分類タスクの例である。図11は、所与のパレットがNSPかどうかを決定するための、本発明の1つの実施形態に係る複合分類子の模式図である。上記に検討したように、パレットが積み重ね不可パレットであるかどうかを決定することは、(1)荷物がパレット上にあるかどうか、および、下記の(2)荷物の上部は安定していない、(3)それはNSPであると特定する標識またはラベルが荷物の外側にある、または、(4)荷物の中身は壊れ易い(例えば、テレビ)の条件の少なくとも1つが満たされるかどうかを決定することを含んでいる。これは、(1)AND((2)OR(3)OR(4))として表現できる。
従って、図11において示されているように、本発明の1つの実施形態に係る複合分類子1100は、4つの単純分類子(1110、1120、1130、および1140)を含んでおり、それらは、ブール出力(例えば、真/偽)を生成し、これらのブール値は、入力がNSPを示しているか否かについての決定を計算するために、ブール論理(1150と1160)を使用して組み合わされる。上記に注記したように、入力は、1台以上のカメラにより撮像された1つ又は複数の画像を含むことができ、および/または、1つ又は複数の入力画像から計算された特徴マップを含むことができる。入力画像は、モノクロまたはグレースケール、カラー、および/または深度画像であってよく、特徴抽出器310(CNNを含むことができる)は、入力画像に基づいて特徴マップを計算できる。
上記の検討を続けると、第1単純分類子1110は、入力画像はパレット上にあるか否かについて決定するように構成または訓練されている。第1単純分類子1110は、ニューラルネットワークを、パレット上にある荷物と、パレット上にない荷物の代表的画像(例えば、倉庫環境において撮像された画像)を含む、ラベル付き訓練データに従って訓練することにより、その所与の入力(画像および/または特徴マップ)がパレット上に積み重ねられている荷物を示しているか否かを決定するように訓練できる。ニューラルネットワークの場合、訓練は、例えば、誤差逆伝播法アルゴリズムを使用して実行できる。従って、第1単純分類子1110は、所与の入力が、パレット上の1つ又は複数の荷物を示している、またはそれに対応しているときは真を出力し、そうでないときは偽を出力するように訓練できる。
第2単純分類子1120もほぼ同じ方法で訓練できる。例えば、第2単純分類子1120は、荷物の上部が安定している状況と、荷物の上部が不安定な状況を示す画像から計算された入力された特徴マップを、対応する「安定」および「不安定」ラベルと共に有する訓練データのセットに基づいて訓練されたそれ自身のニューラルネットワークを含むことができる。
第3単純分類子1130は、荷物に、それはNSPであることを示す文言のラベルが付けられているかどうかを決定するために、上記で検討したラベルに基づく分類を適用できる。例えば、特徴マップは、テキストを含んでいる入力画像の部分(例えば、バウンディングボックス)を識別するために使用でき、光学式文字認識(OCR)アルゴリズムを、走査システム99により撮像されたカラー画像の対応する部分において示されているテキストを認識するために適用できる。そして、認識されたテキストは、「積み重ねないこと」および「積み重ね不可」および/または他の文言においてなどのような、NSPが荷物上で示される種々の標準的方法に対して照合できる。そして、第3単純分類子1130は、そのようなラベルが検出されると真を出力でき、そのようなラベルが検出されない場合は偽を出力できる。
第4単純分類子1140もまた、中身は壊れ易いことを示す、荷物上のテキストまたはアイコンの存在を検出するために、ラベルに基づく分類を適用できる。加えて、幾つかの実施形態においては、第4単純分類子1140は、現在の荷物は壊れ易いかどうかを決定するために、動作930においてデータベース(例えば、出荷目録および追尾データベース)から以前に検索された情報を使用できる。従って、第4単純分類子1140は、現在の荷物が壊れ易いか否かについての決定を出力できる。
上記に検討したように、該パレットはNSPかどうかを決定することは、(1)AND((2)OR(3)OR(4))の形式を取る。従って、ブールOR演算1150は、第2、第3、および第4単純分類子1120、1130、および1140の出力のブールORを計算する。第1単純分類子1110の出力と、ブールOR演算1150の出力は、パレットはNSPであるか否かについての最終決定を計算するために、AND演算1160に供給される。
図11は、ブール演算を使用するバイナリ分類子の組み合わせを示しているが、本発明の実施形態はそれに制限されない。例えば、単純分類子の出力がK値のときは、特別な出力は、取るべき決定ツリーの特別な分岐を選択でき(靴の造りおよびモデルに基づく、図10の決定ツリーの場合など)、決定ツリーの異なる分岐は、異なる訓練されたモデルと関連付けることができる。他の例として、単純構成要素が回帰子のときは、単純回帰子の実数値の出力は、演算的に組み合わせる(例えば、合計、平均、積、商などのような、標準数学関数の結果を計算する)ことができ、他の出力と組み合わせることができる出力を計算するために、活性化関数(例えば、ソフトマックス、ReLUなど)で処理させることもできる。
加えて、実施形態は、アイテム(例えば、靴またはパレット)の特別なタイプまたはカテゴリの視覚検査を実行するための複合分類子に関して記述されているが、本発明の実施形態は、それらに制限されない。例えば、本発明の幾つかの実施形態においては、複合分類子は更に、解析されている対象物のカテゴリを識別でき、識別されたカテゴリは、対象物の既知のカテゴリの集合体からであってよい。これは、種類の異なる品物の状況の場合に有益であり得る。例えば、異種の製造ラインまたは物流総合管理設備は、靴、ブーツ、スポーツ用品、衣類、食物、飲料などのような、異なるタイプの品物の広い範囲を処理できる。幾つかの実施形態においては、対象物のカテゴリの識別を、それ自身のユーザに出力且つ表示できる。幾つかの実施形態においては、対象物のカテゴリの識別は更に、関連付けられているカテゴリに従って、対象物の更なる複合解析を実行するために、複合分類子の決定ツリー内で使用できる。例えば、靴であるアイテム(スポーツ用品の1つではなく)を検出することは、図10において示されている決定ツリーなどのように、決定ツリーの分岐に追従するという結果になるか、または、靴についての複合検査タスクを実行することと関連付けられている決定ツリーを活性化するという結果になる。
本発明の幾つかの実施形態は、対象物が品質検査をパスするか失敗するかどうか、および、パレットは積む重ね不可か否かなどのような、対象物に対応する分類を計算することに関して検討されている。本発明の実施形態の幾つかの態様は、視覚情報に基づいて、対象物の1つ又は複数の特質を識別且つ計算することに関連している。これらの特質は、対象物は壊れ易い(例えば、対象物が、ガラスなどのような、既知の壊すことができる材料で構成されている可能性がある)か否か、または、液体を含んでいる、または危険な材料を保持している可能性のある対象物の検出を含むことができる。検出される特別な特質に基づいて、本発明の種々の実施形態は、特質を検出するために複合分類子を使用できる。例えば、物流総合管理の場合、荷物の中身の壊れ易さの検出は、中身は壊れ易いと特定する、対象物上のテキストを検出する(例えば、「壊れ易い」、「ガラス」、「ガラス製品」、「実験室用機器」などのような語句を検出する)ことに基づいて真の値を出力する単純分類子と、コンテナの中身を決定するために、対象物と関連付けられている出荷目録をデータベースから検索して、目録の中のキーワードを、壊れ易いと知られている材料のリストと照合する他の単純分類子を使用することを含むことができる。同様に、コンテナは危険な材料を保持しているかどうかを検出することは、毒、電離放射、生物災害、発がん性物資、「ファイヤダイアモンド」(NFPA 704)などに対するアイコンなどのように、危険性を示す、荷物の外部上のラベルを識別することを含むことができる。「ファイヤダイアモンド」の場合、赤、青、および黄色の正方形に位置している個々の数値は、対象物において含まれている材料の危険性の性質を更に識別するために使用できる。
複合分類子の連携訓練
上記に検討したように、幾つかの実施形態においては、複合分類子はバイナリ出力によっても特徴付けることができ、従って、その性能は、ROC曲線により測定および最適化できる。特定タスクに対する(TPr,FPr)対に関しての各単純分類子の性能は、複合分類子の訓練(または、複合分類子性能の最適化)のための自由変数を構成する閾値により決められる。
従って、本発明の1つ実施形態によれば、N個の単純分類子を含んでいる複合分類子の訓練は、N個の自由変数、つまり、N個の単純分類子に対する閾値に関する(TPr,FPr)対に関しての性能の最適化として組み立てることができる。
閾値の所与の構成に対して、単一の(TPr,FPr)対は、複合分類子自身を定義する集積論理を適用することにより、単純分類子のそれぞれの結果を集積することで得られる。それぞれの単純分類子の各閾値の値を独立して変えることにより、(TPr,FPr)結果のセットが得られる。
一般的に、探究された構成の大半は、幾つかの形状においては非最適であり、または、同じ(またはより大きい)TPrおよび同じ(またはより低い)FPrにより特徴付けられる(TPr,FPr)対がある。非最適対は関心の対象外なので破棄される。
最適またはより良好な実行閾値は、パレートフロント(またはフロンティア)(例えば、Kim,I.Y.,& de Weck,O.L.(2005).Adaptive weighted-sum method for bi-objective optimization(二対象物最適化のための適応加重合計法):Pareto front generation.Structural and multidisciplinary optimization,29(2),149-158.参照),つまり、同じまたはより低いFPrを伴う、同じまたはより高いTPrを有している他の対がない(TPr,FPr)対のセットとして公式化できる。
図12は、本開示の1つの実施形態に係る、複合分類子の単純分類子の閾値の構成に対するFPrとTPr値のパレートフロントの視覚表現である。図12において示されているように、パレートフロントは円で示され、十字は非最適点、破棄すべき点に対応し、三角は理論的最適値である。
図13は、本発明の1つの実施形態に係る、複合分類子を訓練するための方法1300のフローチャートである。プロセッサと、複合検査タスクのためのラベルが付けられた訓練データを格納するメモリを有するコンピュータシステムなどのような訓練システムは、複合分類子の単純分類子のそれぞれと関連付けられている閾値を調整することにより、複合分類子を訓練するために使用される。図13を参照すると、動作1310において、訓練システムは、閾値パラメータのC個の異なる構成またはセットを得るために、単純分類子のそれぞれに対する閾値をサンプリングする(例えば、ランダムに選択する)。動作1330において、訓練システムは、C個の単純分類子閾値構成のそれぞれに対して、複合分類子の(TPr,FPr)対を計算する。(TPr,FPr)対は、閾値のセットにより構成されているような複合分類子を、ラベルの付けられたデータの検証セット(例えば、訓練データセットとテストデータセットの両者と互いに素のデータのセット)に適用し、その検証セットのTPrとFPr値を測定することにより、閾値の各セットに対して計算できる。動作1350において、訓練システムは、C個の異なる(TPr,FPr)対からパレートフロントを計算する。
従って、結果としてのパレートフロントは、複合システム全体としての(TPr,FPr)値に従う、「最良の実行」または「最適」モデルの集合体を識別する。動作1370において、訓練システムは、構成を、構成されたシステムによる使用のために、パレートフロントにおける点から選択するためのルールを適用する。幾つかの実施形態においては、パレートフロント上の点の特別な1つを選択するために使用される特別なルールは、ドメイン特有であってよく(例えば、システムが適用されるドメインにおける異なるタイプのエラーの容認性に従って)、ユーザにより特定されたルールまたは発見的方法に基づいて選択できる。例えば、1つの問題は、最大容認可能なFPrは0.1より小さく、最小TPrは、0.9であることを要求する可能性がある。幾つかの実施形態においては、FPとTPの「コスト」を考慮するより複合的なモデルが使用され、構成のセットの中から、FPエラーまたはTPエラーを引き起こす経済またはビジネスに関連するコストに基づいて、パレートフロントに対する単純分類子閾値を選択できる。
本発明の実施形態の幾つかの態様は、例えば、匂配に基づく最適化方法(例えば、Nocedal,J.,& Wright,S.J.(2006).Nonlinear Equations(非線形方程式)(pp.270-302).Springer New York.参照)、分岐および限定法(例えば、Lawler,E.L.,& Wood,D.E.(1966).Branch-and-bound methods(分岐および限定法):A survey.Operations research,14(4),699-719.参照)、統計的サンプリング法(例えば、Hastings,W.K.(1970).Monte Carlo sampling methods using Markov chains and their applications(マルコフ鎖を使用するモンテカルロサンプリング法およびそれらの適用).参照)、および単純分類子の部分的最適化を使用して、単純分類子に対する閾値構成を計算するための種々の代替としての技術に関する。
推論における複合分類子の使用
そして、結果としての構成された複合検査タスク分類子または複合分類子は、欠陥解析を実行するための製造設備などのような適切な状況、または、倉庫を通過する品物および荷物の解析を実行するための物流総合管理倉庫において展開できる。
上記に注記したように、本発明の実施形態は、プロセッサとメモリを含んでいる解析システム300において実現でき、解析システム300は、走査システム99により取り込まれた視覚情報に基づいて(例えば、画像および/または3次元モデルに基づいて)複合分類タスクを実行するように構成されている。加えて、解析システム
図1Aと1Bに戻って参照すると、動作540において、解析システム300は、対象物の複合検査の結果を出力する。これらの結果は、対象物の最終分類(例えば、靴の縫い目は容認可能かどうかについての決定、または、アイテムはNSPであるか否かについての決定)を含むことができる。
図1Aにおいて示されている実施形態においては、結果は、ユーザ装置400に提供され、検査結果(例えば、靴の縫い目が品質標準をパスすることに失敗)をユーザ装置400の表示装置450上に表示するために使用できる。本発明の幾つかの実施形態によれば、ユーザ装置400はまた、縫い目の予期される適切な外観の検索された例と共に、靴の検出された造り、モデル、色、およびサイズなどのような解析についての追加的情報も表示できる。これにより、ユーザ装置400を使用する人間のオペレータは、決定ツリーにおける種々の単純分類子の出力もまたディスプレイに示されるので、複合分類子が分類に到達したプロセスを理解することが可能になる。
他の例として、積み重ねないパレットの場合、ユーザ装置400は、複合分類子がその最終判断をしたときに、単純分類子によりなされた個々の別個の決定をユーザが理解できるように、個々の単純分類子1110、1120、1130、1140の出力を表示できる。これにより、システムがエラーを起こしたときに、システムによりなされた決定をユーザが覆すことが可能になる。例えば、パレットは、それを検出不可にする通常の色で塗られ、または着色される可能性があり、または、荷物上のテキストの幾つかが、積み重ね不可として誤って認識されたので、システムは、荷物はパレット上にないと誤って決定する可能性がある。
対照的に、単一且つ単独の分類子に基づいて(例えば、別個の分類子または回帰子の分類または回帰出力を結合するために論理的出力を適用することなく)分類を実行するように訓練されている比較対象の機械学習システムは、分類に対する基盤となる理由を不明確にする可能性があり、ユーザまたはオペレータが、システムは、ユーザが検出していない態様を検出したのかどうか、またはシステムは分類エラーを起こしたのかどうかを決定することが困難になる。
更に、上記に注記したように、本発明の実施形態の態様は、多数の異なる訓練された機械学習モデルが、共有されている畳み込みニューラルネットワークにより計算された入力特徴マップなどのような、入力特徴の共通のセットを共有することを可能にするために、転送学習を適用する。未処理入力データ(例えば、走査システム99により撮像された画像)からの特徴マップまたは特徴ベクトルの計算をこのように共有することは、複合検査タスクを実行する処理必要条件を削減し、それにより、システムの電力消費および/または待時間を削減する。
そのため、本発明の実施形態の態様は、単純視覚分類タスクの結果を組み合わせるために論理的および/または数学的演算を適用することを含む複合視覚検査タスクを自動的に実行するためのシステムと方法を提供する。本発明の実施形態は、向上された計算効率を可能にし、モデルの結果の説明可能性を向上し、それにより、自動視覚検査システムによりなされたエラーをユーザが識別且つ覆す能力を向上する。
本発明は、ある例としての実施形態と関連して記述されてきたが、発明は開示された実施形態に制限されず、それとは反対に、付随する請求項の精神および範囲内に含まれる種々の修正および等価装置、およびその等価物をカバーすることが意図されているということは理解されるべきである。本発明の態様の一部を以下記載する。
[態様1]
自動視覚検査を実行するための方法であって、
複数のカメラを備えている走査システムを使用して、対象物の視覚情報を取り込むことと、
プロセッサとメモリを備えているコンピューティングシステムにより、1つ又は複数の特徴抽出器を使用して、前記視覚情報から1つ又は複数の特徴マップを抽出することと、
前記コンピューティングシステムにより、前記対象物の分類を計算するために、前記1つ又は複数の特徴マップを、それぞれが、前記対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、前記対象物の前記分類を計算するために、前記単純分類子の前記出力を組み合わせるように構成されている1つ又は複数の論理演算子を備えている複合分類子に供給することにより、前記対象物を分類することと
前記コンピューティングシステムにより、前記対象物の前記分類を、前記自動視覚検査の結果として出力することを備える方法。
[態様2]
前記1つ又は複数の特徴抽出器は、1つ又は複数の畳み込みニューラルネットワークを備える態様1に記載の方法。
[態様3]
前記複数の単純分類子は、1つ又は複数のニューラルネットワークを備える態様1に記載の方法。
[態様4]
前記複数の単純分類子は、1つ又は複数のサポートベクトルマシンを備えており、
少なくとも1つの論理演算は、前記ニューラルネットワークの出力と前記サポートベクトルマシンの出力を組み合わせるように構成されている態様3に記載の方法。
[態様5]
前記複数の単純分類子は、1つ又は複数の回帰モデルを備える態様1に記載の方法。
[態様6]
前記複数の単純分類子は、テキスト検出を実行するように構成されている、1つ又は複数のラベルに基づく分類子を備える態様1に記載の方法。
[態様7]
前記複数の単純分類子のそれぞれの単純分類子は、連携して訓練されている複数の閾値パラメータの対応する閾値パラメータにより構成されている態様1に記載の方法。
[態様8]
前記閾値パラメータは、
前記単純分類子を構成するために、複数の閾値パラメータのセットを選択するためにパラメータ空間をサンプリングすることと、
前記複数の閾値パラメータのセットのそれぞれの閾値パラメータのセットに対して、真陽性率(TPr)と偽陽性率(FPr)を、
前記閾値パラメータのセットに基づいて前記単純分類子を構成することにより、前記複合分類子を構成し、
前記構成された複合分類子にデータの検証セットを供給することにより、前記構成に対する前記TPrと前記FPrを計算することにより計算することと、
前記構成パラメータのセットのそれぞれのセットに対して、前記TPrとFPrに従って、構成パラメータの最も良好な実行セットを備えているパレートフロントを識別することと、
ドメインに従うルールセットに従って、前記パレートフロントから構成パラメータのセットを選択することにより連携して訓練される態様7の方法。
[態様9]
前記視覚情報は、カラー画像、グレースケール画像、または深度マップを備える態様1の方法。
[態様10]
前記視覚情報は、少なくとも1つの深度マップを備えており、
前記少なくとも1つの深度マップは、前記複数のカメラの深度カメラシステムにより撮像される態様9の方法。
[態様11]
前記深度カメラシステムは、
飛行時間型深度カメラと、
構造化光深度カメラと、
少なくとも2台のカラーカメラを備えているステレオ深度カメラ、
少なくとも2台のカラーカメラとカラープロジェクタを備えているステレオ深度カメラ、
少なくとも2台の赤外線カメラを備えているステレオ深度カメラ、または
少なくとも2台の赤外線カメラ、赤外線プロジェクタ、およびカラーカメラを備えているステレオ深度カメラを備える態様10の方法。
[態様12]
前記複数の単純分類子は、前記深度マップの数学的モデル化に基づく分類子を備える態様10の方法。
[態様13]
前記1つ又は複数の特徴マップの特徴マップは、前記複数の単純分類子の少なくとも2つへの入力として提供される態様1の方法。
[態様14]
前記対象物の前記分類は、複数の対象物のカテゴリの中の1つのカテゴリの識別を備える態様1の方法。
[態様15]
前記対象物の前記分類は、前記視覚情報に基づく、前記対象物の1つ又は複数の特質の識別を備える態様1の方法。
[態様16]
視覚検査システムであって、
複数のカメラを備えているスキャナシステムと、
コンピュータネットワーク上で前記スキャナシステムに接続されているコンピューティングシステムを備えており、前記コンピューティングシステムは、プロセッサと、命令を格納しているメモリを備えており、前記命令は、前記プロセッサにより実行されると、前記プロセッサに、
対象物の視覚情報を取り込むように前記スキャナシステムを制御させ、
1つ又は複数の特徴抽出器を使用して、前記視覚情報から1つ又は複数の特徴マップを抽出させ、
前記コンピューティングシステムにより、前記対象物の分類を計算するために、前記1つ又は複数の特徴マップを、それぞれが、前記対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、前記対象物の前記分類を計算するために、前記単純分類子の前記出力を組み合わせるように構成されている1つ又は複数の論理演算子を備えている複合分類子に供給することにより、前記対象物を分類させ、
前記コンピューティングシステムにより、前記対象物の前記分類を、前記対象物の自動視覚検査の結果として出力させる視覚検査システム。
[態様17]
前記プロセッサは更に、態様2から15の何れかの前記方法の前記ステップを実行するように構成されている態様16に記載の視覚検査システム。
[態様18]
前記スキャナシステムは、少なくとも1台のカラーカメラを備える態様16または17に記載の視覚検査システム。
[態様19]
前記スキャナシステムは、少なくとも1台の深度カメラを備える態様16または17に記載の視覚検査システム。
[態様20]
表示装置を備えているユーザ装置を更に備え、前記ユーザ装置は、
前記対象物の前記分類と、
前記複数の単純分類子の少なくとも1つの単純分類子により計算された、前記対象物の少なくとも1つの特性を表示するように構成されている態様16から19の何れか一項に記載の視覚検査システム。
[態様21]
前記コンピューティングシステムは、前記分類に従って、前記対象物の動きの方向を変えるために搬送器システムを制御するように構成されている態様16から20の何れか一項に記載の視覚検査システム。
[態様22]
プロセッサとメモリを備えている視覚検査システムであって、
前記プロセッサは、態様1から15の何れか一項に記載の前記方法の前記ステップを実行するように構成されている視覚検査システム。
[態様23]
命令を備えているコンピュータプログラムであって、前記プログラムは、コンピュータにより実行されると、前記コンピュータに、態様1から15の何れか一項に記載の前記方法の前記ステップを実行させるコンピュータプログラム。

Claims (22)

  1. 自動視覚検査を実行するための方法であって、
    複数のカメラを備えている走査システムを使用して、対象物の視覚情報を取り込むことと、
    プロセッサとメモリを備えているコンピューティングシステムにより、1つ又は複数の特徴抽出器を使用して、前記視覚情報から1つ又は複数の特徴マップを抽出することと、
    前記コンピューティングシステムにより、前記対象物の分類を計算するために、前記1つ又は複数の特徴マップを、それぞれが、前記対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、前記対象物の前記分類を計算するために、前記単純分類子の前記出力を組み合わせるように構成されている1つ又は複数の論理演算子を備えている複合分類子に供給することにより、前記対象物を分類することと
    前記コンピューティングシステムにより、前記対象物の前記分類を、前記自動視覚検査の結果として出力することを備え
    前記複数の単純分類子のそれぞれの単純分類子は、連携して訓練されている複数の閾値パラメータの対応する閾値パラメータにより構成されている方法。
  2. 前記1つ又は複数の特徴抽出器は、1つ又は複数の畳み込みニューラルネットワークを備える請求項1に記載の方法。
  3. 前記複数の単純分類子は、1つ又は複数のニューラルネットワークを備える請求項1に記載の方法。
  4. 前記複数の単純分類子は、1つ又は複数のサポートベクトルマシンを備えており、
    少なくとも1つの論理演算は、前記ニューラルネットワークの出力と前記サポートベクトルマシンの出力を組み合わせるように構成されている請求項3に記載の方法。
  5. 前記複数の単純分類子は、1つ又は複数の回帰モデルを備える請求項1に記載の方法。
  6. 前記複数の単純分類子は、テキスト検出を実行するように構成されている、1つ又は複数のラベルに基づく分類子を備える請求項1に記載の方法。
  7. 前記閾値パラメータは、
    前記単純分類子を構成するために、複数の閾値パラメータのセットを選択するためにパラメータ空間をサンプリングすることと、
    前記複数の閾値パラメータのセットのそれぞれの閾値パラメータのセットに対して、真陽性率(TPr)と偽陽性率(FPr)を、
    前記閾値パラメータのセットに基づいて前記単純分類子を構成することにより、前記複合分類子を構成し、
    前記構成された複合分類子にデータの検証セットを供給することにより、前記構成に対する前記TPrと前記FPrを計算することにより計算することと、
    成パラメータのセットのそれぞれのセットに対して、前記TPrとFPrに従って、構成パラメータの最も良好な実行セットを備えているパレートフロントを識別することと、
    ドメインに従うルールセットに従って、前記パレートフロントから構成パラメータのセットを選択することにより連携して訓練される請求項の方法。
  8. 前記視覚情報は、カラー画像、グレースケール画像、または深度マップを備える請求項1の方法。
  9. 前記視覚情報は、少なくとも1つの深度マップを備えており、
    前記少なくとも1つの深度マップは、前記複数のカメラの深度カメラシステムにより撮像される請求項の方法。
  10. 前記深度カメラシステムは、
    飛行時間型深度カメラと、
    構造化光深度カメラと、
    少なくとも2台のカラーカメラを備えているステレオ深度カメラ、
    少なくとも2台のカラーカメラとカラープロジェクタを備えているステレオ深度カメラ、
    少なくとも2台の赤外線カメラを備えているステレオ深度カメラ、または
    少なくとも2台の赤外線カメラ、赤外線プロジェクタ、およびカラーカメラを備えているステレオ深度カメラを備える請求項の方法。
  11. 前記複数の単純分類子は、前記深度マップの数学的モデル化に基づく分類子を備える請求項の方法。
  12. 前記1つ又は複数の特徴マップの特徴マップは、前記複数の単純分類子の少なくとも2つへの入力として提供される請求項1の方法。
  13. 前記対象物の前記分類は、複数の対象物のカテゴリの中の1つのカテゴリの識別を備える請求項1の方法。
  14. 前記対象物の前記分類は、前記視覚情報に基づく、前記対象物の1つ又は複数の特質の識別を備える請求項1の方法。
  15. 視覚検査システムであって、
    複数のカメラを備えているスキャナシステムと、
    コンピュータネットワーク上で前記スキャナシステムに接続されているコンピューティングシステムを備えており、前記コンピューティングシステムは、プロセッサと、命令を格納しているメモリを備えており、前記命令は、前記プロセッサにより実行されると、前記プロセッサに、
    対象物の視覚情報を取り込むように前記スキャナシステムを制御させ、
    1つ又は複数の特徴抽出器を使用して、前記視覚情報から1つ又は複数の特徴マップを抽出させ、
    前記コンピューティングシステムにより、前記対象物の分類を計算するために、前記1つ又は複数の特徴マップを、それぞれが、前記対象物の特性を表現する出力を計算するように構成されている複数の単純分類子と、前記対象物の前記分類を計算するために、前記単純分類子の前記出力を組み合わせるように構成されている1つ又は複数の論理演算子を備えている複合分類子に供給することにより、前記対象物を分類させ、
    前記コンピューティングシステムにより、前記対象物の前記分類を、前記対象物の自動視覚検査の結果として出力させ
    前記複数の単純分類子のそれぞれの単純分類子は、連携して訓練されている複数の閾値パラメータの対応する閾値パラメータにより構成されている視覚検査システム。
  16. 前記プロセッサは更に、請求項2から14の何れかの前記方法の前記ステップを実行するように構成されている請求項15に記載の視覚検査システム。
  17. 前記スキャナシステムは、少なくとも1台のカラーカメラを備える請求項15または16に記載の視覚検査システム。
  18. 前記スキャナシステムは、少なくとも1台の深度カメラを備える請求項15または16に記載の視覚検査システム。
  19. 表示装置を備えているユーザ装置を更に備え、前記ユーザ装置は、
    前記対象物の前記分類と、
    前記複数の単純分類子の少なくとも1つの単純分類子により計算された、前記対象物の少なくとも1つの特性を表示するように構成されている請求項15から18の何れか一項に記載の視覚検査システム。
  20. 前記コンピューティングシステムは、前記分類に従って、前記対象物の動きの方向を変えるために搬送器システムを制御するように構成されている請求項15から19の何れか一項に記載の視覚検査システム。
  21. プロセッサとメモリを備えている視覚検査システムであって、
    前記プロセッサは、請求項1から14の何れか一項に記載の前記方法の前記ステップを実行するように構成されている視覚検査システム。
  22. 命令を備えているコンピュータプログラムであって、前記プログラムは、コンピュータにより実行されると、前記コンピュータに、請求項1から14の何れか一項に記載の前記方法の前記ステップを実行させるコンピュータプログラム。
JP2021535943A 2018-12-19 2019-12-19 コンピュータビジョンを使用する複合視覚検査タスクの連携学習のためのシステムと方法 Active JP7460633B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862782163P 2018-12-19 2018-12-19
US62/782,163 2018-12-19
PCT/US2019/067606 WO2020132322A1 (en) 2018-12-19 2019-12-19 Systems and methods for joint learning of complex visual inspection tasks using computer vision

Publications (2)

Publication Number Publication Date
JP2022515768A JP2022515768A (ja) 2022-02-22
JP7460633B2 true JP7460633B2 (ja) 2024-04-02

Family

ID=71102913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021535943A Active JP7460633B2 (ja) 2018-12-19 2019-12-19 コンピュータビジョンを使用する複合視覚検査タスクの連携学習のためのシステムと方法

Country Status (5)

Country Link
US (2) US11508050B2 (ja)
EP (1) EP3899784A4 (ja)
JP (1) JP7460633B2 (ja)
CN (1) CN113454638A (ja)
WO (1) WO2020132322A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10051344B2 (en) * 2016-09-27 2018-08-14 Clarifai, Inc. Prediction model training via live stream concept association
WO2020132322A1 (en) 2018-12-19 2020-06-25 Aquifi, Inc. Systems and methods for joint learning of complex visual inspection tasks using computer vision
US20220270360A1 (en) * 2019-08-20 2022-08-25 Technology Innovation Momentum Fund (Israel) Limited Partnership Method and apparatus for authentication of a three-dimensional object
CN111582152A (zh) * 2020-05-07 2020-08-25 微特技术有限公司 一种识别图像中复杂事件的方法及***
FR3113729B3 (fr) * 2020-09-02 2022-08-12 Alysee Services Unité de contrôle polyvalente et déplaçable
CN112381898B (zh) * 2020-12-07 2024-03-01 苏州律点信息科技有限公司 一种影像特征的提取方法、装置、存储介质及电子设备
US20220198731A1 (en) * 2020-12-23 2022-06-23 Facebook Technologies, Llc Pixel-aligned volumetric avatars
DE102021200568A1 (de) * 2021-01-22 2022-07-28 Robert Bosch Gesellschaft mit beschränkter Haftung Computerimplementiertes verfahren zur analyse der relevanz visueller parameter zum trainieren eines computer-vision -modells
TWI806004B (zh) * 2021-02-09 2023-06-21 麗臺科技股份有限公司 自動化視覺檢測的ai流程管理系統及方法
KR102669483B1 (ko) * 2021-04-28 2024-05-27 부산대학교 산학협력단 단안 이미지를 이용한 뎁스 맵 생성 장치 및 방법
CN113706621B (zh) * 2021-10-29 2022-02-22 上海景吾智能科技有限公司 基于带标记图像的标志点定位及姿态获取方法和***
CN115424207B (zh) * 2022-09-05 2023-04-14 南京星云软件科技有限公司 自适应监控***及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080247609A1 (en) 2007-04-06 2008-10-09 Rogerio Feris Rule-based combination of a hierarchy of classifiers for occlusion detection
JP2016530592A (ja) 2013-06-07 2016-09-29 ゼットティーイー コーポレイション 視覚識別を実現する方法、装置及びシステム
JP2016221264A (ja) 2015-05-27 2016-12-28 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッドSiemens Medical Solutions USA,Inc. 知識ベース超音波画像強調
US20170323376A1 (en) 2016-05-09 2017-11-09 Grabango Co. System and method for computer vision driven applications within an environment
WO2018129201A1 (en) 2017-01-04 2018-07-12 Aquifi, Inc. Systems and methods for shape-based object retrieval

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU6816998A (en) * 1997-03-24 1998-10-20 Queen's University At Kingston Coincidence detection method, products and apparatus
US7047169B2 (en) * 2001-01-18 2006-05-16 The Board Of Trustees Of The University Of Illinois Method for optimizing a solution set
US7499588B2 (en) * 2004-05-20 2009-03-03 Microsoft Corporation Low resolution OCR for camera acquired documents
US7570816B2 (en) * 2005-03-31 2009-08-04 Microsoft Corporation Systems and methods for detecting text
US7809192B2 (en) * 2005-05-09 2010-10-05 Like.Com System and method for recognizing objects from images and identifying relevancy amongst images and information
US7529403B2 (en) * 2005-12-06 2009-05-05 Mitsubishi Electric Research Laboratories, Inc. Weighted ensemble boosting method for classifier combination and feature selection
US7836000B2 (en) * 2007-12-10 2010-11-16 Yahoo! Inc. System and method for training a multi-class support vector machine to select a common subset of features for classifying objects
US8331666B2 (en) * 2008-03-03 2012-12-11 Csr Technology Inc. Automatic red eye artifact reduction for images
US20100014584A1 (en) * 2008-07-17 2010-01-21 Meir Feder Methods circuits and systems for transmission and reconstruction of a video block
EP2182451A1 (en) * 2008-10-29 2010-05-05 Nederlandse Organisatie voor toegepast- natuurwetenschappelijk onderzoek TNO Electronic document classification apparatus
JP5301310B2 (ja) * 2009-02-17 2013-09-25 株式会社日立製作所 異常検知方法及び異常検知システム
US8213700B2 (en) * 2009-03-31 2012-07-03 Icad, Inc. Systems and methods for identifying suspicious anomalies using information from a plurality of images of an anatomical colon under study
US8582871B2 (en) * 2009-10-06 2013-11-12 Wright State University Methods and logic for autonomous generation of ensemble classifiers, and systems incorporating ensemble classifiers
US9037523B2 (en) * 2011-04-07 2015-05-19 Honeywell International Inc. Multiple two-state classifier output fusion system and method
US9092692B2 (en) * 2012-09-13 2015-07-28 Los Alamos National Security, Llc Object detection approach using generative sparse, hierarchical networks with top-down and lateral connections for combining texture/color detection and shape/contour detection
US10101786B2 (en) * 2014-12-22 2018-10-16 Intel Corporation Holistic global performance and power management
CN104657748A (zh) * 2015-02-06 2015-05-27 中国石油大学(华东) 一种基于卷积神经网络的车型识别方法
US10193696B2 (en) * 2015-06-02 2019-01-29 ALTR Solutions, Inc. Using a tree structure to segment and distribute records across one or more decentralized, acylic graphs of cryptographic hash pointers
JP7001593B2 (ja) * 2015-08-11 2022-01-19 コグノア, インコーポレイテッド 人工知能およびユーザ入力を用いて発達進度を判定するための方法および装置
US10037456B2 (en) * 2015-09-04 2018-07-31 The Friedland Group, Inc. Automated methods and systems for identifying and assigning attributes to human-face-containing subimages of input images
US11263545B2 (en) * 2016-06-30 2022-03-01 Microsoft Technology Licensing, Llc Control of cyber-physical systems under uncertainty
US10296603B2 (en) * 2016-08-12 2019-05-21 Aquifi, Inc. Systems and methods for automatically generating metadata for media documents
US10055882B2 (en) * 2016-08-15 2018-08-21 Aquifi, Inc. System and method for three-dimensional scanning and for capturing a bidirectional reflectance distribution function
US10204448B2 (en) * 2016-11-04 2019-02-12 Aquifi, Inc. System and method for portable active 3D scanning
CN106650725B (zh) * 2016-11-29 2020-06-26 华南理工大学 基于全卷积神经网络的候选文本框生成和文本检测方法
US10726244B2 (en) * 2016-12-07 2020-07-28 Samsung Electronics Co., Ltd. Method and apparatus detecting a target
WO2018136262A1 (en) * 2017-01-20 2018-07-26 Aquifi, Inc. Systems and methods for defect detection
US10392689B2 (en) 2017-02-23 2019-08-27 Guardian Glass, LLC Heat treatable coated article having zirconium nitride and ITO based IR reflecting layers
WO2018208791A1 (en) * 2017-05-08 2018-11-15 Aquifi, Inc. Systems and methods for inspection and defect detection using 3-d scanning
CN107392129A (zh) * 2017-07-13 2017-11-24 浙江捷尚视觉科技股份有限公司 基于Softmax的人脸检索方法和***
CN107704886A (zh) * 2017-10-20 2018-02-16 北京工业大学 一种基于深度卷积神经网络的医疗图像分级***和方法
US20210081491A1 (en) * 2018-01-31 2021-03-18 Nec Corporation Information processing apparatus, control method, and program
US10922626B2 (en) * 2018-03-09 2021-02-16 Qualcomm Incorporated Conditional branch in machine learning object detection
WO2019183868A1 (en) * 2018-03-29 2019-10-03 Intel Corporation Methods, systems, articles of manufacture and apparatus to improve resource utilization for binary tree structures
US11373063B2 (en) * 2018-12-10 2022-06-28 International Business Machines Corporation System and method for staged ensemble classification
WO2020132322A1 (en) 2018-12-19 2020-06-25 Aquifi, Inc. Systems and methods for joint learning of complex visual inspection tasks using computer vision

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080247609A1 (en) 2007-04-06 2008-10-09 Rogerio Feris Rule-based combination of a hierarchy of classifiers for occlusion detection
JP2016530592A (ja) 2013-06-07 2016-09-29 ゼットティーイー コーポレイション 視覚識別を実現する方法、装置及びシステム
JP2016221264A (ja) 2015-05-27 2016-12-28 シーメンス メディカル ソリューションズ ユーエスエー インコーポレイテッドSiemens Medical Solutions USA,Inc. 知識ベース超音波画像強調
US20170323376A1 (en) 2016-05-09 2017-11-09 Grabango Co. System and method for computer vision driven applications within an environment
WO2018129201A1 (en) 2017-01-04 2018-07-12 Aquifi, Inc. Systems and methods for shape-based object retrieval

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Rodrigo Santa Cruz, 外3名,"Neural Algebra of Classifiers",2018 IEEE Winter Conference on Applications of Computer Vision (WACV),IEEE,2018年03月12日

Also Published As

Publication number Publication date
US11508050B2 (en) 2022-11-22
JP2022515768A (ja) 2022-02-22
EP3899784A4 (en) 2022-10-19
US20200372625A1 (en) 2020-11-26
CN113454638A (zh) 2021-09-28
WO2020132322A1 (en) 2020-06-25
US20230177400A1 (en) 2023-06-08
US11868863B2 (en) 2024-01-09
EP3899784A1 (en) 2021-10-27

Similar Documents

Publication Publication Date Title
JP7460633B2 (ja) コンピュータビジョンを使用する複合視覚検査タスクの連携学習のためのシステムと方法
US10691979B2 (en) Systems and methods for shape-based object retrieval
US20190096135A1 (en) Systems and methods for visual inspection based on augmented reality
JP7458405B2 (ja) 部分的視覚情報に基づく対象物寸法付けのためのシステムと方法
WO2018208791A1 (en) Systems and methods for inspection and defect detection using 3-d scanning
CA3115898C (en) Systems and methods for object identification
US20180211373A1 (en) Systems and methods for defect detection
US11720766B2 (en) Systems and methods for text and barcode reading under perspective distortion
JP7329143B2 (ja) 偏光キューを用いた透明な物体のセグメンテーションのためのシステム及び方法
US10558844B2 (en) Lightweight 3D vision camera with intelligent segmentation engine for machine vision and auto identification
US20220410381A1 (en) Systems and methods for picking objects using 3-d geometry and segmentation
Zhang et al. Stud pose detection based on photometric stereo and lightweight YOLOv4
Zeng et al. Enabling efficient deep convolutional neural network-based sensor fusion for autonomous driving
WO2022235483A1 (en) Systems and methods for using computer vision to pick up small objects
JP2023516032A (ja) ジェスチャ認識
CN116168387A (zh) 用于物体检测的***和方法
Yimyam et al. 3D reconstruction and feature extraction for agricultural produce grading
WO2022272166A1 (en) Systems and methods for generating and using visual datasets for training computer vision models
Gheta et al. Fusion of combined stereo and spectral series for obtaining 3D information
Bi et al. Spatial position recognition method of semi-transparent and flexible workpieces: A machine vision based on red light assisted
Belhaoua et al. Illumination control in view of dynamic (re) planning of 3D reconstruction tasks
Grundmann Scene analysis for service robots
CN117980964A (zh) 用于确定预定的运输物品是否布置在监控区域内的方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20220826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20220826

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240131

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240321

R150 Certificate of patent or registration of utility model

Ref document number: 7460633

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150