JP2023061387A - 合成データ及び機械学習を使用した欠陥検出 - Google Patents

合成データ及び機械学習を使用した欠陥検出 Download PDF

Info

Publication number
JP2023061387A
JP2023061387A JP2022166772A JP2022166772A JP2023061387A JP 2023061387 A JP2023061387 A JP 2023061387A JP 2022166772 A JP2022166772 A JP 2022166772A JP 2022166772 A JP2022166772 A JP 2022166772A JP 2023061387 A JP2023061387 A JP 2023061387A
Authority
JP
Japan
Prior art keywords
quality control
pixels
control models
image
package
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
JP2022166772A
Other languages
English (en)
Inventor
エドワード・アール・カーニック
Edward R Kernick
ピーター・セレッタ
Cerreta Peter
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.)
Johnson and Johnson Vision Care Inc
Original Assignee
Johnson and Johnson Vision Care Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Johnson and Johnson Vision Care Inc filed Critical Johnson and Johnson Vision Care Inc
Publication of JP2023061387A publication Critical patent/JP2023061387A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/95Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
    • G01N21/958Inspecting transparent materials or objects, e.g. windscreens
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8854Grading and classifying of flaws
    • G01N2021/8858Flaw counting
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8883Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges involving the calculation of gauges, generating models
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8887Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges based on image processing techniques
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/95Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
    • G01N21/958Inspecting transparent materials or objects, e.g. windscreens
    • G01N2021/9583Lenses
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N2201/00Features of devices classified in G01N21/00
    • G01N2201/12Circuits of general importance; Signal processing
    • G01N2201/129Using chemometrical methods
    • G01N2201/1296Using chemometrical methods using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Chemical & Material Sciences (AREA)
  • Pathology (AREA)
  • Mathematical Physics (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Computing Systems (AREA)
  • Immunology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Image Analysis (AREA)
  • Eyeglasses (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)

Abstract

【課題】コンタクトレンズパッケージの品質管理のための方法を提供すること。【解決手段】コンタクトレンズパッケージの品質管理のための方法は、物理的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の画像を含む第1のデータセットを受信することと、デジタル的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の画像を含む第2のデータセットを受信することと、検証済みの1つ以上の品質管理モデルを決定するために、第1及び第2のデータセットについてモデルを試験及び訓練することと、コンタクトレンズのパッケージの画像データをキャプチャすることと、検証済みの1つ以上の品質管理モデルに基づいて、画像データを分析することと、分析に基づいて、少なくともパッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を含む。【選択図】図6

Description

コンタクトレンズの品質管理は、検査及び検出の技術に依存し得る。しかしながら、改善が必要とされている。
本開示は、コンタクトレンズパッケージの品質管理のためのシステム及び方法を記載する。方法は、第1のデータセット及び第2のデータセットを受信することを含む。第1のデータセットは、物理的に埋め込まれた異物が中に配置されたコンタクトレンズパッケージの複数の画像を含む。第2のデータセットは、デジタル的に埋め込まれた異物を有するコンタクトレンズパッケージの複数の画像を含む。方法は、1つ以上の品質管理モデルを、第1のデータセット及び第2のデータセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、異物の存在を検出するように構成されている。1つ以上のモデルが訓練された後、モデルは、第1のデータセット及び第2のデータセットの少なくともサブセットについて試験されてもよい。品質管理モデルの訓練及び試験は、所定の性能閾値が満たされ得るまで繰り返されてもよい。この閾値が満たされると、品質管理モデルは検証済みモデルとなる。方法は、コンタクトレンズパッケージの画像をキャプチャすることと、検証済みの1つ以上のモデルに基づいてその画像を分析することとを更に含む。この分析に基づいて、方法は、パッケージの合格又は不合格状態を示す品質管理メトリックを出力する。
本開示は、コンタクトレンズパッケージの品質管理のためのシステムを記載する。システムは、コンタクトレンズパッケージの画像データをキャプチャするためのセンサを備える。システムは、センサと通信し、第1のデータセット及び第2のデータセットを受信するように構成されたコンピューティングデバイスを更に備える。第1のデータセットは、物理的に埋め込まれた異物を有するコンタクトレンズパッケージの複数の画像を含む。第2のデータセットは、デジタル的に埋め込まれた異物を有するコンタクトレンズパッケージの複数の画像を含む。コンピューティングデバイスは、品質管理モデルを更に含んでもよい。品質管理モデルは、第1のデータセット及び第2のデータセットの少なくとも訓練サブセットについて訓練されてもよい。1つ以上の品質管理モデルは、異物の存在を検出するように構成されている。1つ以上のモデルが訓練された後、モデルは、第1のデータセット及び第2のデータセットの少なくともサブセットについて試験されてもよい。品質管理モデルの訓練及び試験は、所定の性能閾値が満たされ得るまで繰り返されてもよい。この閾値が満たされた後、品質管理モデルは検証済みモデルとなる。システムは、センサによってコンタクトレンズパッケージの画像をキャプチャすることと、検証済みの1つ以上のモデルに基づいてその画像を分析することとを更に含む。この分析に基づいて、システムは、パッケージの合格又は不合格状態を示す品質管理メトリックを出力する。システムは、センサの視野内にパッケージを移動させるように構成された搬送機構を更に備えてもよい。
本開示は、コンタクトレンズパッケージの品質管理のための方法を記載する。方法は、第1のデータセット及び第2のデータセットを受信することを含む。第1のデータセットは、物理的に埋め込まれた欠陥が中に配置されたコンタクトレンズパッケージの複数の画像を含む。第2のデータセットは、デジタル的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の画像を含む。方法は、1つ以上の品質管理モデルを、第1のデータセット及び第2のデータセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、欠陥の存在を検出するように構成されている。1つ以上のモデルが訓練された後、モデルは、第1のデータセット及び第2のデータセットの少なくともサブセットについて試験されてもよい。品質管理モデルの訓練及び試験は、所定の性能閾値が満たされるまで繰り返されてもよい。この閾値が満たされると、品質管理モデルは検証済みモデルとなる。方法は、コンタクトレンズパッケージの画像をキャプチャすることと、検証済みの1つ以上のモデルに基づいてその画像を分析することとを更に含む。この分析に基づいて、方法は、パッケージの合格又は不合格状態を示す品質管理メトリックを出力する。欠陥は、異物、エッジ欠陥、又は穴のうちの1つ以上を含むことができる。
本開示は、コンタクトレンズパッケージの品質管理のためのシステムを記載する。システムは、コンタクトレンズパッケージの画像データをキャプチャするためのセンサを備える。システムは、センサと通信し、第1のデータセット及び第2のデータセットを受信するように構成されたコンピューティングデバイスを更に備える。第1のデータセットは、物理的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の画像を含む。第2のデータセットは、デジタル的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の画像を含む。コンピューティングデバイスは、品質管理モデルを更に含んでもよい。品質管理モデルは、第1のデータセット及び第2のデータセットの少なくとも訓練サブセットについて訓練されてもよい。1つ以上の品質管理モデルは、欠陥の存在を検出するように構成されている。1つ以上のモデルが訓練された後、モデルは、第1のデータセット及び第2のデータセットの少なくともサブセットについて試験されてもよい。品質管理モデルの訓練及び試験は、所定の性能閾値が満たされ得るまで繰り返されてもよい。この閾値が満たされると、品質管理モデルは検証済みモデルとなる。システムは、センサによってコンタクトレンズパッケージの画像をキャプチャすることと、検証済みの1つ以上のモデルに基づいてその画像を分析することとを更に含む。この分析に基づいて、システムは、パッケージの合格又は不合格状態を示す品質管理メトリックを出力する。システムは、センサの視野内にパッケージを移動させるように構成された搬送機構を更に備えてもよい。欠陥は、異物、エッジ欠陥、又は穴のうちの1つ以上を含むことができる。
本開示は、コンタクトレンズパッケージの品質管理のための方法を記載する。方法は、データセットを生成することを含む。データセットは、デジタル的に埋め込まれた異物を有するコンタクトレンズパッケージの複数の拡張画像を含む。複数の拡張画像内のデジタル的に埋め込まれた異物は、他の埋め込まれた異物とは異なる特性を有する。これらの特性は、異物の形態、サイズ、場所、不透明度、及び量を含む。方法は、1つ以上の品質管理モデルを、データセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、異物の存在を検出するように構成されている。方法は、訓練された1つ以上の品質管理モデルを、データセットの少なくとも検証サブセットについて試験することを更に含む。方法は、コンタクトレンズパッケージの画像データをキャプチャすることを更に含む。方法は、訓練及び試験された1つ以上の品質管理モデルに基づいて、画像データを分析することと、分析に基づいて、少なくともパッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を更に含む。
本開示は、コンタクトレンズパッケージの品質管理のためのシステムを記載する。システムは、コンタクトレンズパッケージの画像データをキャプチャするためのセンサを備える。システムは、センサと通信し、画像データを受信し、1つ以上の品質管理モデルに基づいて画像データを分析するように構成されたコンピューティングデバイスを更に備える。システムは、データセットを生成することを更に含む。データセットは、デジタル的に埋め込まれた異物を有するコンタクトレンズパッケージの複数の拡張画像を含む。複数の拡張画像内のデジタル的に埋め込まれた異物は、他の埋め込まれた異物とは異なる特性を有する。これらの特性は、異物の形態、サイズ、場所、不透明度、及び量を含む。システムは、1つ以上の品質管理モデルを、データセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、異物の存在を検出するように構成されている。システムは、訓練された1つ以上の品質管理モデルを、データセットの少なくとも検証サブセットについて試験することを更に含む。システムは、品質管理モデルのうちの1つ以上に基づいて、画像データを分析することと、分析に基づいて、少なくともパッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を更に含む。
本開示は、コンタクトレンズパッケージの品質管理のための方法を記載する。方法は、データセットを生成することを含む。データセットは、デジタル的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の拡張画像を含む。複数の拡張画像内のデジタル的に埋め込まれた欠陥は、他の埋め込まれた欠陥とは異なる特性を有する。これらの特性は、欠陥の形態、サイズ、場所、不透明度、及び量を含む。方法は、1つ以上の品質管理モデルを、データセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、欠陥の存在を検出するように構成されている。方法は、訓練された1つ以上の品質管理モデルを、データセットの少なくとも検証サブセットについて試験することを更に含む。方法は、コンタクトレンズパッケージの画像データをキャプチャすることを更に含む。方法は、訓練及び試験された1つ以上の品質管理モデルに基づいて、画像データを分析することと、分析に基づいて、少なくともパッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を更に含む。欠陥は、異物、エッジ欠陥、及び穴を含むことができる。
本開示は、コンタクトレンズパッケージの品質管理のためのシステムを記載する。システムは、コンタクトレンズパッケージの画像データをキャプチャするためのセンサを備える。システムは、センサと通信し、画像データを受信し、1つ以上の品質管理モデルに基づいて画像データを分析するように構成されたコンピューティングデバイスを更に備える。コンピューティングデバイスは、生成されたデータセットに対して更に動作する。データセットは、デジタル的に埋め込まれた欠陥を有するコンタクトレンズパッケージの複数の拡張画像を含む。複数の拡張画像内のデジタル的に埋め込まれた欠陥は、他の埋め込まれた欠陥とは異なる特性を有する。これらの特性は、欠陥の形態、サイズ、場所、不透明度、及び量を含む。システムは、1つ以上の品質管理モデルを、データセットの少なくとも訓練サブセットについて訓練することを更に含む。1つ以上の品質管理モデルは、異物の存在を検出するように構成されている。システムは、訓練された1つ以上の品質管理モデルを、データセットの少なくとも検証サブセットについて試験することを更に含む。システムは、品質管理モデルのうちの1つ以上に基づいて、画像データを分析することと、分析に基づいて、少なくともパッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を更に含む。欠陥は、異物、エッジ欠陥、及び穴を含むことができる。
本開示の上記の特徴が詳細に理解され得るように、上記で簡潔に要約された本開示のより具体的な説明は、実施形態を参照することによって得ることができ、そのいくつかは添付の図面に示されている。ただし、添付図面は、本開示の典型的な実施形態のみを図示しており、本発明は、他の同様に有効な実施形態を認めることができることに留意されたい。
例示的な畳み込みニューラルネットワーク(convolutional neural network、CNN)を示す図である。 図1のCNNの断面を示す図である。 図1のCNNの断面を示す図である。 深層学習モデルを示す図である。 深層学習モデルを示す図である。 拡張画像を有するモデルの訓練、試験、及び検証を示す図である。 モデルの交差検証を示す図である。 方法の流れを示す図である。 システムを示す図である。 方法の流れを示す図である。 方法の流れを示す図である。 画像の解像度を示す図である。 1つの異物片を低解像度及び高解像度で示す図である。 レンズパッケージに物理的に埋め込まれた異物を示す図である。 レンズパッケージにデジタル的に埋め込まれた異物を示す図である。 異物を有する画像の拡張を示す図である。 異物を有する画像の拡張を示す図である。 速度を計算する例示的な関数としてのCNN精度を示す図である。
本発明の実施形態の他の特徴は、以下の発明を実施するための形態から明らかとなるであろう。
本開示は、レンズ及びレンズパッケージにおける異物、穴、及びエッジ欠陥の検出のための機械学習アルゴリズムの訓練における合成データ、ハイブリッドデータ、又は拡張データの使用に関する。レンズパッケージは、異物がパッケージに侵入しないようにするために品質管理を必要とする。パッケージはまた、パッケージ又はレンズの穴、並びにレンズのエッジ欠陥を識別するための検査を必要とする。異物は、レンズを損傷したり、レンズを汚染したりする可能性があり、これらは両方とも、顧客のニーズを満たす上で不利益である。パッケージは、パッケージが密封される前後を含むプロセスの任意の段階で検査することができる。
以下の詳細な説明では、その一部をなし、本発明を実施することができる特定の実施形態を例示として示す添付の図面を参照する。本発明の範囲から逸脱することなく、他の実施形態を利用することができ、また構造上の変更を行うことができることを理解されたい。本教示の趣旨及び範囲から逸脱することなく、実施形態に電気的、機械的、論理的、及び構造的変更を加えることができる。したがって、以下の詳細な説明は限定的な意味で解釈されるべきではなく、本開示の範囲は添付の特許請求の範囲及びそれらの等価物によって定義される。
異物の検出/封入を利用して、顧客に出荷されるコンタクトレンズ又はパッケージにおける異物又は欠陥の量を減らすことができる。肉眼で見える異物(gross foreign matter、GFM)は、約647マイクロメートル(約1000分の25インチ(25ミル))よりも大きい少なくとも1つの寸法を有するものとして識別される。約は、±10%以内、又は±5%以内を意味する。
図1~図3cは、畳み込みニューラルネットワーク画像分類システムの一例を示す。図1は、3色の深度を有する299×299画素のカラー画像が入力されたCNN Inception V3を示す。出力は、深度2048の8×8の分類である。図2は、ネットワークの最初のいくつかの層を示す。このネットワークの最初の3つの層は3つの畳み込み層102を含み、これらに最大プーリング層104が続く。ネットワーク内の様々な段階において、平均プーリング層106が、連結層108と同様に採用されている。このネットワーク内の層のほとんどは畳み込み層102であるが、最初の3つのみが、ラベル付けにおける混乱を避けるためにそのようにラベル付けされている。図3aは、このネットワークの最後のいくつかの層を示す。最後の層は、ほとんどの畳み込み層102(ここでも混乱を避けるために1つの層のみがラベル付けされている)、平均プーリング層106、連結層108、ドロップアウト層110、全結合層112、及びソフトマックス層114を含む。
図3bは、方法がどのように機能するかについてのアンサンブルの概要を示す。画像302が深層学習モデル304に送信される。深層学習モデル304内には、特徴抽出層306、グローバル平均プーリング層308、及び全結合層310(決定層としても知られる)が存在してもよい。深層学習モデルは、アクティブ化312及びFM(foreign matter、異物)スコア318を出力することができる。アクティブ化312は、アーチファクトスコア316を出力することができるアーチファクトモデル314への入力の中にあってもよい。FMスコア318及びアーチファクトスコア316は、アンサンブルモデル320への入力であってもよい。アンサンブルモデル320は、結果324を生成する最終スコア322を出力してもよい。
図3cは、別個のアーチファクトモデル314及びアンサンブルモデル320をなくしたものを示す。深層学習モデル304の終端の再訓練された全結合層310bは、最終スコア322及び結果324が、古い全結合層310、アーチファクトモデル304、及びアンサンブルモデル320と同じになることを可能にする。深層学習モデル304に元々存在していなかったアーチファクトモデル314によって新たな情報が追加されていないため、深層学習モデル304は、元の全結合層310を新たな全結合層310bとして再訓練することができる。再訓練は、最終スコア322及び結果324を直接決定するために構成要素の重みを変更することを含んでもよい。一例では、アーチファクトモデル314及びアンサンブルモデル320を含む以前の方法からの出力を、初期再訓練ステップとして組み込むことができる。機械学習の当業者に周知のように、他の再訓練方法も使用することができる。古い全結合層310は、特徴抽出パラメータのいずれも調整することなく深層学習モデルの決定境界を調整するために、新たな全結合層310bとして再訓練されなければならない。したがって、全結合層310を再訓練することにより、これら他のモデルを有する必要がなくなり、これらの結果が効果的に内部化される。中間計算としてFMスコア318及びアーチファクトスコア316が不要となり、そのため、計算の流れから除去されることに留意されたい。グローバル平均プーリング層308から生じたであろうアクティブ化は、新たな全結合層310bに組み込まれる。したがって、アクティブ化312もまた中間変数となり、別の外部モデルへの送信を必要としない。したがって、最終スコア322は、処理時間を節約し、これら他のモデルの付加的な複雑さを排除する、より直接的で単純な計算によって達成される。
畳み込みニューラルネットワーク(CNN)などの機械学習アルゴリズムは、画像を種々のカテゴリに分類するのに有用であり得る。図1~図4の例に示すように、これらのネットワークは多くの層を含む。設計されたネットワークは、正確な用途に応じて、より多くの又はより少ない特定の層及びより多くの又はより少ない他の層を必要としてもよい。AlexNet及びInception Net V3は、様々な物体(例えば、船、豹、サクランボなど)の画像を入力として受信し、画像が属し得る分類を出力するCNNの例である。一例として、そのような画像を正しく識別又は分類するために、CNNを、既知の分類を有する他の画像を使用して最初に訓練してもよい。レンズパッケージに侵入する異物(又はパッケージにおける他の欠陥)に関する1つの問題は、異物の割合が非常に少ない(例えば、0.4ppm未満)ことである。製造プロセスにおける他の保護手段を前提としてFMは例外的にまれである可能性があることを考えると、FM又は他の欠陥を有する単一のパッケージを取得するだけでも、平均で数百万個のレンズパッケージを必要とする可能性がある。一例として、訓練を目的とするそのような画像の望ましい数は、1000を超える場合がある。導入済みの品質管理画像処理を使用せずに物理的領域からそのような非常に多くの画像を取得した場合、何十億個ものレンズパッケージの製造を必要とする可能性がある。したがって、本開示は、満足のいく試験又は訓練データを得るためにそのような大規模な生産分析を必要とすることなく、1つ以上の欠点に対処することができる。
異物を有する画像を、手動で(人間の識別によって)識別することができる。異物を含むパッケージを作製し又は播種し、識別のためにシステムに供給することもできる。しかしながら、そのような試験は、より多くの人的努力及び時間を必要とし、システムが顧客のために欠陥のない製品を製造する能力を低下させる。手動で作製された欠陥を有するパッケージであっても、導入される欠陥の種類を適切に模倣しない可能性があり、タスクを更に困難にする。この目的のために、合成データ又は拡張データを作成して、現実のFMを有するレンズパッケージの識別又は分類のためのMLモデルの訓練を支援することができる。
図4~図5は、CNNの訓練及び試験を示す。説明の目的で示すように、パッケージの既存の画像データベース402は、良好なパッケージの画像と、FM、エッジ欠陥、穴などを有する不良パッケージの画像とを含む。既存の画像データベース402は、良好なレンズパッケージの画像を、不良レンズパッケージの画像よりも多く含む。既存の画像データベース402から拡張画像404が作成される。これらの拡張画像404を作成するプロセスを、以下及び図12~図16で更に詳細に説明する。既存の画像データベース402及び拡張画像404は、組み合わされてフル画像セット406を形成する。フル画像セット406は、訓練データ408のセット及び試験データ410のセットの2つのデータセットに分割することができる。訓練済みモデル414を作成するために、訓練データ408が未訓練モデル412(例えば、上記のInception V3 CNN)に供給される。訓練済みモデルは、可能な限り多くの画像について既知の正しい結果を得るために、必要に応じて様々な層のモデル重み付けパラメータを調整する。次いで、検証済みモデル416を作成するために、試験データ410が訓練済みモデル414に供給される。検証済みモデル416は、試験データ410の既知の分類と比較するために、試験データ410の分類を生成する。検証済みモデル416が、閾値を満たすか又は閾値を超えるという点で所望の出力を生成する場合は、検証済みモデル416は、生産設定で使用する準備ができている。検証済みモデル416が閾値を満たさない場合は、モデルのハイパーパラメータを変更してもよく、又は検証合格閾値を満たすモデルが見つかるまで別のモデルを選択してもよい。他の技術を用いることもできる。
図5は、試験済みモデルとしても知られている検証済みモデル416を生成するための別の方法である交差検証の概念を示す。交差検証では、フル画像データセット406は、いくつかのグループに分割される。図5に示す例では、フル画像データセット406は、A、B、C、D、及びEとラベル付けされた5つのグループに分割される。交差検証試験の各反復について、グループのうちの1つは訓練データ408である。残りのグループは、試験又は検証データ410である。明確にするために、訓練データ408は、交差検証の各反復でラベル付けされるが、図5では単一セットのみの試験データ410、すなわち反復502Eのみの試験データがラベル付けされる。これらの反復502の各々は、どのグループが訓練データ408であるかに基づいてラベル付けされる。したがって、例えば反復502Aは訓練データ408グループAを有し、反復502Bは訓練データ408グループBを有する。これらの反復の各々は、図中の検証済みモデル520A、520B、520C、520D、及び520Eを生成する。これらのモデルは比較され(530)、FM又は欠陥を有するレンズパッケージのその後の識別に使用されるモデルを作成するために、1つのモデルが選択されるか、又はモデルが統合される(540)。上記のように、検証済みモデル520が選択されるために超えなければならないメトリック又は所定の性能閾値が存在してもよい。
図6は、レンズパッケージ600の品質管理メトリックを出力するための方法を示す。ステップ602で、現実のレンズパッケージの画像が収集されて、第1のデータセットが形成される。ステップ604で、現実のレンズパッケージの画像に欠陥又はFMをデジタル的に埋め込んで画像を作成することにより、第2のデータセットが作成される。したがって、FM、エッジ欠陥、及び穴のあまり一般的でない画像の数を増加させるために、拡張画像が作成される。ステップ606で、モデルは訓練データセット408を使用して訓練される。ステップ608で、モデルは試験又は検証データセット410を使用して検証される。交差検証(図2)も使用することができる。ステップ610で、モデル結果が性能閾値と比較される。モデルが性能閾値を満たさない場合には、ステップ612で、モデルを送り返して調整及び再訓練し(606)、再試験する(608)ことができる。あるいは、既存のモデルのハイパーパラメータを修正し、新たなモデルを訓練してもよい。同様に、この段階で代替モデルを選択してもよい。モデル612を調整し、モデル606を訓練し、モデル608を試験するプロセスを、モデルが性能閾値を満たすまで繰り返してもよい。モデルが性能閾値を満たすと、モデルは検証済みとなる(614)。ステップ616で、パッケージの画像がキャプチャされる。ステップ618で、検証済みモデルは画像を分析する。ステップ620で、品質管理メトリックがモデルから出力される。例えば、モデルの品質管理メトリックが、「合格」又は「異物が検出されない」又は「異物が検出された」ことを含んでもよい。
図7は、生産ラインの一部として統合されたシステムを示している。レンズパッケージ702は、移動方向712に沿ってそれらを移動させるコンベヤベルト704上に載置されてもよい。パッケージがセンサ706の視野内に移動される。センサ706がパッケージ702の画像を撮像する。コンピュータ708は、センサ706から画像を受信するように構成されている。コンピュータ708は、訓練済みモデルを使用して画像を分析するように更に構成されている。次いで、コンピュータ708は、品質管理メトリック710を出力する。レンズパッケージを、品質管理メトリック710によって影響され得る更なる処理のために、センサ706の視野外に移動させてもよい。一例では、特定のパッケージ702の品質管理メトリック出力が「異物あり」である場合、そのパッケージ702を次のステップで分離させてもよい。一例では、特定のパッケージ702の品質管理メトリック出力が「欠陥なし」である場合、そのパッケージ702は、出荷のために生産ラインを進み続けてもよい。
図8は、プロセスフロー800を示す。ステップ802で、拡張画像が生成される。ステップ804で、モデルが訓練される。ステップ806で、モデルが試験される。ステップ808で、モデルは、調整され、再訓練(804)され、再試験(806)されてもよい。この調整、再訓練、及び再試験は、必要に応じて数回行われてもよく、又は新たなモデルが選択され、続いて初期訓練804及び試験806が行われてもよい。ステップ810で、パッケージの画像がキャプチャされる。ステップ812で、画像が分析され、ステップ814で、品質管理メトリックが出力される。
図9は、プロセスフロー900を示す。ステップ902で、拡張画像が生成されてもよい。ステップ904で、モデルが訓練されてもよい。ステップ906で、モデルが試験又は検証されてもよい。ステップ908で、モデルが性能閾値を満たすかどうかが評価されてもよい。モデルが性能閾値を満たさない場合には、モデルはステップ910で調整され、ステップ904の訓練に戻ってもよい。あるいは、新たなモデルが選択されてもよい。あるいは、モデルのハイパーパラメータが修正又は調整されてもよい。調整ステップ、試験ステップ、及び検証ステップは、モデルが性能閾値を満たす前に何度も繰り返すことができる。性能閾値の一例は、95%を超える精度でFM侵入を識別することであってもよい。性能閾値の一例の更なる詳細を、以下で更に説明する。モデルが性能閾値を満たすと、ステップ912で、モデルは検証済み管理モデルになる。ステップ914で、パッケージの画像がキャプチャされる。ステップ916で、画像は、検証済みモデルによって分析される。ステップ918で、検証済みモデルの分析に基づいて品質管理メトリックが出力される。
性能閾値は、受信特性曲線下面積(area under the received characteristic curve、AUC)を含むか、又は受信者動作特性(receiver operating characteristic、ROC)曲線自体であってもよい。ROCは、偽陽性率の関数としての真陽性率のプロットである。AUCは、ROC曲線の積分である。代替的な性能閾値は、特定の割合の真陽性の識別、又は特定の割合の真陰性の識別を必要としてもよい。同様に、他の可能な性能閾値を推測してもよい。別の代替的な閾値は、真陽性(FM又は欠陥が存在する)、真陰性(FM又は欠陥が存在しない)、偽陽性(FM/欠陥が存在すると誤って識別された)、偽陰性(FM/欠陥が存在しないと誤って識別された)の4つの選択肢全てを組み込むことである。より多くの分類がモデル訓練に含まれる(例えば、出力が欠陥又は異物の識別を含み、いずれかが存在するか又は存在しない)場合、性能閾値の他の選択肢も同様に利用可能になる。FMの有無の分類に加えて、より多くの欠陥の識別(例えば、エッジ欠陥対穴)が使用される場合も、同様である。特定の割合(例えば99.9%)を超えるFM真陽性率又は低い偽陰性率(例えば1%未満)を達成するなど、他の性能閾値も使用することができる。別の可能性は、偽陽性率が別の値を上回る場合、真陽性率は特定の値より大きくなければならない(例えば、偽陽性が>0.5の場合、真陽性は>0.95でなければならない)ことである。Brierスコアなどの性能閾値の他の選択肢も使用することができる。
一例では、CNN(既存研究の畳み込みニューラルネットワーク)として、Inception V3が使用される。このCNNは、最大299画素×299画素の入力画像サイズ(かつ3色)である。直径15mmのコンタクトレンズの場合、この解像度は、単一の画素がパッケージ内の約60~70μm幅の領域に対応することを意味する。
図10及び図11は、より低い解像度(299×299画素)及びより高い解像度(1000×1000画素又は2000×2000画素)で撮像された画像を示す。低解像度画像1050が、同じレンズパッケージの高解像度画像1000と比較される。1つの異物片が、低解像度1052及び高解像度1002で示されている。図11では、異物をクローズアップしたものが低解像度1052及び高解像度1002で再び示されている。299画素×299画素のフル画像サイズについて上述したように、低解像度画像1050内の各画素は60~70μmを表す。図11に示すFMは、最大寸法が1200~1400μmの約20画素である。高解像度画像1002は、異物をはるかに詳細に示す。解像度が1000画素×1000画素に増加すると、画素当たりの分解サイズは最大約20μm/画素に改善された。解像度が2000画素×2000画素に増加すると、画素当たりの分解サイズは10μm/画素に改善された。
より高い解像度の画像を解析するためにコンピュータモデルを使用する際に生じる1つのトレードオフは、画像品質が改善されるが、計算(computering)リソースに対する要件も高くなることである。ニューラルネットワーク(又は他のモデル)の重みの数が画素数の二乗として増加する場合、300×300画素(9e4画素)から2000×2000画素(4e6)に増加することは、動作の数が1600倍を超えて増加することを意味する。より大きな画像サイズ(より高い解像度)では、より高速なコンピュータプロセッサが使用されたり、より多くのメモリが追加されたり、コンピュータに他の改善(例えば、並列処理、又はグラフィックス処理ユニットなどの特殊な処理の使用)が実施されたりしない限り、画像を解析する時間が増加する。このトレードオフの一例が図18に示されており、これは、様々なニューラルネットワーク画像分類器のコンピュータ動作回数の関数として、上位10個の精度(10個の画像の正確な分類の%)をプロットしたものである。列挙されたモデルのいくつかは、他のモデルよりも効率的である。
いかなる分類モデルも、入力のサイズと関与するコンピュータリソース、また最適化されるべきパラメータの数と過学習のリスクとは必ずトレードオフする。状況によっては、画像解像度を低下させることでモデル性能を向上させることができるが、他の状況では、これは分類に有用な情報を排除するおそれがある。一般に、CNNがグラフィック処理装置(GPU)を使用する場合はトレードオフが存在するが、これは、画像解像度を高くするとGPUが処理できる最大バッチサイズが小さくなるメモリ制限をGPUが有し得るためである。バッチサイズが大きいほど、損失関数に対する勾配の計算を改善することができる。本出願のために実行された試験(異物、欠陥、又は穴の存在についてレンズパッケージ画像を分類する)では、解像度の向上によってモデル性能が大幅に改善された。
欠陥を模倣するように画像をデジタル的に操作するための多くの方法がある。そのような方法は、部分的なクロッピング及び、クロッピングされた画像をシフト又は回転させることを含む。欠陥の画像を、フレーム内の任意の位置でシフト又は回転させてもよい。例えば、画像を、完全に利用可能な画像領域の50%だけクロッピングし、その後、ブランクの背景又は別の画像に貼り付ける前に、ランダムな数の画素を上下又はランダムなΔx及びランダムなΔyだけシフトさせ、更にランダムな角度Δθだけ回転させてもよい。他の画像は、既知の良好な(欠陥のない、又はFMのない)画像であってもよい。他の画像操作技術は、既知のデータの鏡像を作成すること(水平又は垂直に反転させること)、又は画像を回転なしから任意の回転まで回転させることを含むことができる。この方法はまた、欠陥を局所的に歪めるなどの他の手段によって歪められた領域を含むことができる。一般に、これらの拡張は、幾何学的変換、元の画像内のランダムな消去、及び画像の混合を含むことができる。これらの方法は、ハイブリッド(既知の良好な画像を既知のFMあり画像又は既知の欠陥あり画像と混合した)画像、拡張画像、又は合成画像としても知られ得る。
この方法は、異なる色(場合によって、カラー画像(例えば、RGB、CIEL*a*b*又は他の色空間スキーム)又は異なるグレースケール輝度)を有する画素を、レンズパッケージ内への既知のFM侵入又は穴もしくはエッジ欠陥の既知の存在と同様の形で含めるか又は追加するように、既知の良好な画像を拡張又は編集することを含んでもよい。他の色変換及びフィルタを、データ拡張の一部として使用してもよい。更に他の技術は、ノイズを画僧に追加すること、例えば、ガウスノイズ又はごま塩ノイズなどのノイズを画像内のランダム画素に追加することを含む。更に別の技術は、画像内のコントラストを強調するか、又は画像内の各画素から画像の平均強度を減算することを含んでもよい。
理想的には、得られたモデルは、欠陥の並進、回転、視点、サイズに対して不変であってもよく、照明条件に対して不変であってもよい。この方法を実装する機械は、これらの変数のいくつか(例えば、照明及び配向又は視点)を制御可能であってもよいが、他の変数(欠陥のサイズ、回転、及び位置)は、ユーザの直接制御下にはない。
図14は、レンズパッケージに物理的に埋め込まれたいくつかのFMを示す。レンズパッケージは、レンズ1302を含む。パッケージはまた、レンズの無菌環境を維持するために液体を含んでもよい。この液体は、線1304として画像に現れる場合がある。パッケージ内に収容された液体に気泡1308が存在する場合がある。完全に不透明な異物1306が画像に現れることがある。部分的に不透明な、又は輪郭が描かれた異物が存在する場合もある。更に、小さなドットが画像に現れる場合があるが、それらはサイズ閾値(例えば150μm)を下回る場合があり、したがってFMと見なされない場合がある。
図13は、拡張画像を示す。FMを含まない画像が撮像され、FMと同様の画像が作成されるように画素が変更される。これらの拡張画像は、以前には異物を含んでいなかった撮像画像内に異なる位置又は異なるサイズでデジタル的に埋め込まれた異物1402を含むことができる。
図14及び図15は、拡張データの作成を更に説明する。訓練データを作成するための画像内へのFMの物理的作成の一例を、レンズパッケージ内に様々な種類のFMを配置することによって行った。例えば、余分なレンズ材料、プラスチック、及び他の小さな物品などの物品をパッケージ内に配置し、処理ストリームに供給した。これらのFM播種物の画像を撮像し、手動でFMありとして識別した(例えば、図13を参照)。これにより、FMを識別するためにモデル(例えば、CNN)を訓練するための1回の試験で多数(例えば1000以上)のそのような画像が得られた。新しい画像を含むこれらの既知のFMに基づいて、FMのない既知の画像と共に拡張画像が作成された。これらの画像は、拡張画像(デジタル拡張)又は合成画像、あるいは場合によってはハイブリッド画像と呼ばれる。完全に合成された画像(既知の良好な又は既知の不良な画像を全く使用せずに作成されたもの)もまた、有用な訓練データセットを作成する目的で使用され得る。ハイブリッド画像は、既知の良好な画像を取得し、別の画像の既知のFM部分をコピーし、デジタル写真技術からの標準的な編集ツールを使用して既知のFM部分を画像内に配置することができる。したがって、ハイブリッド画像は、FMを含まない画像の部分とFMを含む画像の部分とをマージすることによって作成され得る。別のハイブリッド画像は、既知の良好な画像を取得し、これに合成FMをデジタル的に追加することを含んでもよい。図15では、左側は、FMを含まない「良好」とラベル付けされた2つの画像である。これらは、レンズ1302と、レンズを保護するための何らかの液体1304とを含む。右側の「拡張」とラベル付けされた画素は、異物の外観を作り出すために修正された(例えば、デジタル的に埋め込まれた)ものである。更なる例を図16に示す。更に、図16では、小さな異物1310が、元の「良好な」画像に既に存在しており、拡張画像に残っている。この小さなFMは、不合格をトリガするのに十分な大きさではない場合がある。したがって、デジタル異物1402がこれらの画像に追加されている。更に、これら又は関連技術を使用して、全ての形状及びサイズのハイブリッド又は合成画像FMを作成することが可能である。画像を直接編集して、既知のFMとサイズ及び形状が類似した(又は類似していない)黒色部分を作成することができる。この技術は、FMを画像にデジタル的に埋め込むと説明することもできる。レンズパッケージ内にFMのこれらの拡張画像を作成することは、実際のFM汚染レンズパッケージを作成するよりもはるかに迅速かつ安価である。作成可能なそのような画像の数もはるかに多い。ある実験的な訓練データセットでは、10,000個を超えるそのようなFMあり画像を作成し、訓練及び試験データセットに含めた。
本システム又は方法では、画像が取得されると、モデルで画像を分析する前に、画像の前処理を行うことができる。画像の前処理は、特定の関心領域を識別すること、コントラストを向上させること、取得された他の画像を加える又は取り去ることなどを含んでもよい。
不合格にされるパッケージの識別のために、畳み込みニューラルネットワーク(convolutional neural network、CNN)が設計又は修正され、実装されてもよい。パッケージは密封されていても密封されていなくてもよく、レンズを含んでいても空であってもよい。パッケージは、レンズを含んでいてもレンズを含んでいなくてもよいことに加えて、液体を含んでいても液体を含んでいなくてもよい。CNN作成のための複数のプラットフォームが存在する。1つの例示的なプラットフォームはMatlabパッケージであるが、Octave & Pythonなどの他のプラットフォームも存在する。元の画像を、CNNに提供するのに適切なサイズとされた関心領域(regions of interest、ROI)のみを含むより小さいサイズにスライスするように、既存のモジュールが修正されてもよい。この場合、これらの画像は、CNNに提供される各ROIが処理に適した数の画素を有するように、パッケージ自体によって規定された、例えば299画素×299画素(モノクロ)の関心領域(ROI)によって画定された。Inception V3のような例示的なCNNは、畳み込み層、最大プーリング層、及び全結合層が混在した合計48層を含むことができる。ネットワークの後の段階では、正規化線形ユニット(rectifying linear unit、ReLU)を使用し、加えて、過学習を回避するために、かなりの数のノードをランダムに除くことができる。例えば、3×3のサイズのフィルタを、1、2、又はそれ以上の数のストライドで使用してもよい。層は、画像の処理を向上させるために画像の縁部及び角部の周りにパッドを使用することができる。同様に、欠陥のないパッケージを欠陥又はFMを含むものとして誤って識別することなく、何らかの欠陥のあるパッケージを識別するより良い結果を達成するために、ネットワークの様々な層(例えば、畳み込み層、最大プーリング層、ソフトマックス層、ドロップアウト層、全結合層など)を変更することができる。
Linux、UNIX(登録商標)、OS/2(登録商標)、及びWindows(登録商標)を含む多くのオペレーティングシステムは、同時に多くのタスクを実行することができ、マルチタスキングオペレーティングシステムと呼ばれる。マルチタスクは、オペレーティングシステムが複数の実行可能ファイルを同時に実行する能力である。各実行可能ファイルはそれ自体のアドレス空間内で実行されており、これは実行可能ファイルがそれらのメモリのいずれも共有する方法を持たないことを意味する。したがって、いかなるプログラムも、システム上で動作している他のプログラムのいずれかの実行を損なうことは不可能である。しかしながら、プログラムは、オペレーティングシステムを介して(又はファイルシステムに記憶されたファイルを読み取ることによって)以外はいかなる情報も交換する方法を有さない。
マルチプロセスコンピューティングは、タスク及びプロセスという用語がしばしば互換可能に使用されるため、マルチタスキングコンピューティングに類似しているが、一部のオペレーティングシステムはこれら2つを区別する。本発明は、いかなる可能な技術的詳細の集積度のシステム、方法、及び/又はコンピュータプログラム製品であってもよく、又はそれらを含んでもよい。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含むことができる。コンピュータ可読記憶媒体は、命令実行装置によって使用される命令を保持及び記憶することができる有形装置とすることができる。
コンピュータ可読記憶媒体は、例えば、電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置、又は前述の任意の好適な組み合わせであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、命令が記録されたパンチカード又は溝内の隆起構造などの機械的に符号化されたデバイス、及び上記の任意の適切な組み合わせを含む。
本明細書で使用するコンピュータ可読記憶媒体とは、電波又は他の自由に伝搬する電磁波、導波管若しくは他の伝送媒体を通って伝搬する電磁波(例えば、光ファイバーケーブルを通過する光パルス)、又は動線を通って伝送される電気信号などの、それ自体が一過性の信号であるものとして解釈されるべきではない。本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれの計算/処理デバイスに、又は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、広域ネットワーク、及び/又は無線ネットワークを介して外部コンピュータ又は外部記憶デバイスに、ダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又はエッジサーバを含むことができる。各コンピューティング/処理デバイスのネットワークアダプタカード又はネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、又はSmalltalk、C++などのオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語などの手続き型プログラミング言語を含む、1つ又は2つ以上のプログラミング言語の任意の組み合わせで記述されたソースコード又はオブジェクトコードのいずれかであってもよい。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロンソフトウェアパッケージとして、部分的にユーザのコンピュータ上で、部分的にリモートコンピュータ上で、又は完全にリモートコンピュータもしくはサーバ上で実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、又は(例えばインターネットサービスプロバイダを利用したインターネットを介して)外部コンピュータ接続されてもよい。
いくつかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別化することによって、コンピュータ可読プログラム命令を実行してもよい。
本発明の態様は、本発明の実施形態による方法、装置(システム)、及びコンピュータプログラム製品の流れ図及び/又はブロック図を参照して本明細書に記載されている。流れ図及び/又はブロック図の各ブロック、並びに流れ図及び/又はブロック図のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装可能であることは理解されるであろう。これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能なデータ処理機器のプロセッサに提供されて、命令がコンピュータ又は他のプログラム可能データ処理機器のプロセッサを介して実行され、流れ図及び/又はブロック図の1つ以上のブロックで指定された機能/動作を実施するための手段を創出することができるように、機械を生成する。
これらのコンピュータ可読プログラム命令はまた、コンピュータ、プログラマブルデータ処理装置、及び/又は他のデバイスを特定の方法で機能させることができるコンピュータ可読記憶媒体に記憶されてもよく、その結果、命令が記憶されたコンピュータ可読記憶媒体は、流れ図及び/又はブロック図の1つ以上のブロックで指定された機能/作用の態様を実装する命令を含む製造物品を含む。このコンピュータ可読プログラムの命令をコンピュータ、他のプログラマブルデータ処理機器、又は他のデバイス上にロードして、一連の操作工程をそのコンピュータ、他のプログラマブル機器、又は他のデバイス上で実施させ、コンピュータ実施プロセスを生成させて、そのコンピュータ、他のプログラマブル機器、又は他のデバイス上で実行される命令が、流れ図及び/又はブロック図のブロックに定められている機能/動作を実施するようにしてもよい。図中の流れ図及びブロック図は、本発明の様々な実施形態によるシステム、方法、及びコンピュータプログラム製品の考えられる実装形態の構造、機能性、及び動作を示すものである。この点に関して、流れ図又はブロック図における各ブロックは、示された論理機能を実施するための1つ以上の実行可能な命令を含むモジュール、セグメント、又は命令の部分を表し得るものである。
いくつかの代替的な実装形態において、ブロックに示される機能は、図に示される順序以外の順序で行われてもよい。例えば、連続して示す2つのブロックは、実際には、関連する機能に応じて、実質的に同時に実行されてもよく、又は逆の順序で実行されてもよい。また留意されたい点として、ブロック図及び/又は流れ図の各ブロック、並びにブロック図及び/又は流れ図のブロックの組み合わせは、特定の機能又は動作を実行する、あるいは、専用のハードウェアとコンピュータ命令との組み合わせを実行する専用のハードウェアベースシステムによって実施されてもよい。本発明の特定の実施形態を記載してきたが、記載した実施形態と同等の他の実施形態があることは当業者に理解されよう。したがって、本発明は、特定の例示された実施形態によって限定されるものではなく、添付の特許請求の範囲によってのみ限定されることを理解されたい。
上記の説明から、本発明は、記載された技術を効率的に実行するためのシステム、コンピュータプログラム製品、及び方法を提供することが分かる。特許請求の範囲における単数形の要素への言及は、明示的に述べられていない限り、「1つのみ」を意味するものではなく、むしろ「1つ以上」を意味するものである。現在知られているか又は後に当業者に知られるようになる上記の例示的な実施形態の要素に対する全ての構造的及び機能的等価物は、本特許請求の範囲に包含されることが意図されている。本明細書の特許請求の範囲の要素は、要素が「のための手段(means for)」又は「のためのステップ(step for)」という語句を使用して明示的に列挙されていない限り、米国特許法第112条第6段落の規定の下で解釈されるべきではない。
本発明の前述の書面による説明は、現在その最良の形態であると考えられるものを作成及び使用することを当業者に可能にするが、当業者は、本明細書の特定の実施形態、方法及び例の代替形態、適応形態、変形形態、組み合わせ、及び等価物の存在を理解し認識するであろう。当業者は、本開示が単に例示的なものであり、本発明の範囲内で様々な修正を行うことができることを理解するであろう。加えて、本教示の特定の特徴がいくつかの実装のうちの1つのみに関して開示されていることがあり得るが、そのような特徴は、任意の所与の機能又は特定の機能のために所望されかつ有利であり得るものとして、他の実装の1つ以上の他の特徴と組み合わされてもよい。更に、用語「含む(including)」、「含む(includes)」、「有する(having)」、「有する(has)」、「有する(with)」、又はこれらの変形が「発明を実施するための形態」及び「特許請求の範囲」のいずれかで使用される限りにおいて、そのような用語は、用語「備える(comprising)」と同様の方法での包含であることが意図される。
本教示の他の実施形態は、本明細書に開示される教示の明細書又は実施を考慮すれば当業者には自明であろう。したがって、本発明は、記載された実施形態、方法、及び実施例によってではなく、本発明の範囲及び精神内の全ての実施形態及び方法によって限定されるべきである。したがって、本発明は、本明細書に示される特定の実施形態に限定されず、以下の特許請求の範囲によってのみ限定される。
〔実施の態様〕
(1) コンタクトレンズパッケージの品質管理のための方法であって、
デジタル的に埋め込まれた異物が中に配置されたコンタクトレンズパッケージの複数の拡張画像を含むデータセットを生成することであって、前記複数の拡張画像のうちの1つ以上に配置された前記デジタル的に埋め込まれた異物は、前記埋め込まれた異物のうちの他のものとは異なる特性を有し、前記特性は、異物の形態、サイズ、位置、不透明度、及び量を含む、生成することと、
1つ以上の品質管理モデルを、前記データセットの少なくとも訓練サブセットについて訓練することであって、前記1つ以上の品質管理モデルは前記異物の存在を検出するように構成されている、訓練することと、
訓練された前記1つ以上の品質管理モデルを、前記データセットの少なくとも検証サブセットについて試験することと、
コンタクトレンズのパッケージの画像データをキャプチャすることと、
訓練及び試験された前記1つ以上の品質管理モデルに基づいて、前記画像データを分析することと、
前記分析することに基づいて、少なくとも前記パッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を含む、方法。
(2) 前記生成することは、デジタルな1つ以上の画像をクロッピングして埋め込むこと、平滑化すること、又はマスキングすることのうちの1つ以上を含む、実施態様1に記載の方法。
(3) 前記生成することは、デジタル埋込物が自然に見えるように前記デジタル埋込物を一体化することを含む、実施態様1に記載の方法。
(4) 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記生成すること、前記訓練すること、又は前記試験することのうちの1つ以上が繰り返される、実施態様1に記載の方法。
(5) 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記デジタル的に埋め込まれた異物の特性が調整され、前記訓練すること及び前記試験することが繰り返される、実施態様1に記載の方法。
(6) 前記1つ以上の品質管理モデルは、畳み込みニューラルネットワークを含む、実施態様1に記載の方法。
(7) 前記1つ以上の品質管理モデルは、少なくとも1つの軸に沿った640マイクロメートル超のサイズを有する肉眼で見える異物の存在を検出するように構成されている、実施態様1に記載の方法。
(8) 前記データセットは、300×300画素超、又は400×400画素超、又は500×500画素超、又は600×600画素超、又は700×700画素超、又は800×800画素超、又は900×900画素超、又は1000×1000画素超の解像度を有する画像を含む、実施態様1に記載の方法。
(9) システムであって、
コンタクトレンズのパッケージの画像データをキャプチャするように構成されたセンサと、
コンピューティングデバイスであって、前記センサと通信し、前記画像データを受信して、
デジタル的に埋め込まれた異物が中に配置されたコンタクトレンズパッケージの複数の拡張画像を含むデータセットを生成することであって、前記複数の拡張画像のうちの1つ以上に配置された前記デジタル的に埋め込まれた異物は、前記埋め込まれた異物のうちの他のものとは異なる特性を有し、前記特性は、異物の形態、サイズ、位置、不透明度、及び量を含む、ことと、
1つ以上の品質管理モデルを、前記データセットの少なくとも訓練サブセットについて訓練することであって、前記1つ以上の品質管理モデルは前記異物の存在を検出するように構成されている、ことと、
訓練された前記1つ以上の品質管理モデルを、前記データセットの少なくとも検証サブセットについて試験することと、
コンタクトレンズのパッケージの画像データをキャプチャすることと、
訓練及び試験された前記1つ以上の品質管理モデルに基づいて、前記画像データを分析することと、
前記分析することに基づいて、少なくとも前記パッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を行うように構成されているコンピューティングデバイスと、を備える、システム。
(10) 前記センサの視野内にコンタクトレンズの前記パッケージを移動させるように構成された搬送機構を更に備える、実施態様9に記載のシステム。
(11) 前記生成することは、デジタルな1つ以上の画像をクロッピングして埋め込むこと、平滑化すること、又はマスキングすることのうちの1つ以上を含む、実施態様9に記載のシステム。
(12) 前記生成することは、デジタル埋込物が自然に見えるように前記デジタル埋込物を一体化することを含む、実施態様9に記載のシステム。
(13) 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記生成すること、前記訓練すること、又は前記試験することのうちの1つ以上が繰り返される、実施態様9に記載のシステム。
(14) 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記デジタル的に埋め込まれた異物の特性が調整され、前記訓練すること及び前記試験することが繰り返される、実施態様9に記載のシステム。
(15) 前記1つ以上の品質管理モデルは、畳み込みニューラルネットワークを含む、実施態様9に記載のシステム。
(16) 前記1つ以上の品質管理モデルは、少なくとも1つの軸に沿った640マイクロメートル超のサイズを有する肉眼で見える異物の存在を検出するように構成されている、実施態様9に記載のシステム。
(17) 前記データセットは、300×300画素超、又は400×400画素超、又は500×500画素超、又は600×600画素超、又は700×700画素超、又は800×800画素超、又は900×900画素超、又は1000×1000画素超の解像度を有する画像を含む、実施態様9に記載のシステム。

Claims (17)

  1. コンタクトレンズパッケージの品質管理のための方法であって、
    デジタル的に埋め込まれた異物が中に配置されたコンタクトレンズパッケージの複数の拡張画像を含むデータセットを生成することであって、前記複数の拡張画像のうちの1つ以上に配置された前記デジタル的に埋め込まれた異物は、前記埋め込まれた異物のうちの他のものとは異なる特性を有し、前記特性は、異物の形態、サイズ、位置、不透明度、及び量を含む、生成することと、
    1つ以上の品質管理モデルを、前記データセットの少なくとも訓練サブセットについて訓練することであって、前記1つ以上の品質管理モデルは前記異物の存在を検出するように構成されている、訓練することと、
    訓練された前記1つ以上の品質管理モデルを、前記データセットの少なくとも検証サブセットについて試験することと、
    コンタクトレンズのパッケージの画像データをキャプチャすることと、
    訓練及び試験された前記1つ以上の品質管理モデルに基づいて、前記画像データを分析することと、
    前記分析することに基づいて、少なくとも前記パッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を含む、方法。
  2. 前記生成することは、デジタルな1つ以上の画像をクロッピングして埋め込むこと、平滑化すること、又はマスキングすることのうちの1つ以上を含む、請求項1に記載の方法。
  3. 前記生成することは、デジタル埋込物が自然に見えるように前記デジタル埋込物を一体化することを含む、請求項1に記載の方法。
  4. 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記生成すること、前記訓練すること、又は前記試験することのうちの1つ以上が繰り返される、請求項1に記載の方法。
  5. 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記デジタル的に埋め込まれた異物の特性が調整され、前記訓練すること及び前記試験することが繰り返される、請求項1に記載の方法。
  6. 前記1つ以上の品質管理モデルは、畳み込みニューラルネットワークを含む、請求項1に記載の方法。
  7. 前記1つ以上の品質管理モデルは、少なくとも1つの軸に沿った640マイクロメートル超のサイズを有する肉眼で見える異物の存在を検出するように構成されている、請求項1に記載の方法。
  8. 前記データセットは、300×300画素超、又は400×400画素超、又は500×500画素超、又は600×600画素超、又は700×700画素超、又は800×800画素超、又は900×900画素超、又は1000×1000画素超の解像度を有する画像を含む、請求項1に記載の方法。
  9. システムであって、
    コンタクトレンズのパッケージの画像データをキャプチャするように構成されたセンサと、
    コンピューティングデバイスであって、前記センサと通信し、前記画像データを受信して、
    デジタル的に埋め込まれた異物が中に配置されたコンタクトレンズパッケージの複数の拡張画像を含むデータセットを生成することであって、前記複数の拡張画像のうちの1つ以上に配置された前記デジタル的に埋め込まれた異物は、前記埋め込まれた異物のうちの他のものとは異なる特性を有し、前記特性は、異物の形態、サイズ、位置、不透明度、及び量を含む、ことと、
    1つ以上の品質管理モデルを、前記データセットの少なくとも訓練サブセットについて訓練することであって、前記1つ以上の品質管理モデルは前記異物の存在を検出するように構成されている、ことと、
    訓練された前記1つ以上の品質管理モデルを、前記データセットの少なくとも検証サブセットについて試験することと、
    コンタクトレンズのパッケージの画像データをキャプチャすることと、
    訓練及び試験された前記1つ以上の品質管理モデルに基づいて、前記画像データを分析することと、
    前記分析することに基づいて、少なくとも前記パッケージの合格又は不合格状態を示す品質管理メトリックを出力させることと、を行うように構成されているコンピューティングデバイスと、を備える、システム。
  10. 前記センサの視野内にコンタクトレンズの前記パッケージを移動させるように構成された搬送機構を更に備える、請求項9に記載のシステム。
  11. 前記生成することは、デジタルな1つ以上の画像をクロッピングして埋め込むこと、平滑化すること、又はマスキングすることのうちの1つ以上を含む、請求項9に記載のシステム。
  12. 前記生成することは、デジタル埋込物が自然に見えるように前記デジタル埋込物を一体化することを含む、請求項9に記載のシステム。
  13. 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記生成すること、前記訓練すること、又は前記試験することのうちの1つ以上が繰り返される、請求項9に記載のシステム。
  14. 前記品質管理モデルのうちの前記1つ以上が所定の性能閾値を満たすまで、前記デジタル的に埋め込まれた異物の特性が調整され、前記訓練すること及び前記試験することが繰り返される、請求項9に記載のシステム。
  15. 前記1つ以上の品質管理モデルは、畳み込みニューラルネットワークを含む、請求項9に記載のシステム。
  16. 前記1つ以上の品質管理モデルは、少なくとも1つの軸に沿った640マイクロメートル超のサイズを有する肉眼で見える異物の存在を検出するように構成されている、請求項9に記載のシステム。
  17. 前記データセットは、300×300画素超、又は400×400画素超、又は500×500画素超、又は600×600画素超、又は700×700画素超、又は800×800画素超、又は900×900画素超、又は1000×1000画素超の解像度を有する画像を含む、請求項9に記載のシステム。
JP2022166772A 2021-10-19 2022-10-18 合成データ及び機械学習を使用した欠陥検出 Pending JP2023061387A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/505,181 2021-10-19
US17/505,181 US20230122214A1 (en) 2021-10-19 2021-10-19 Defect detection using synthetic data and machine learning

Publications (1)

Publication Number Publication Date
JP2023061387A true JP2023061387A (ja) 2023-05-01

Family

ID=83902932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022166772A Pending JP2023061387A (ja) 2021-10-19 2022-10-18 合成データ及び機械学習を使用した欠陥検出

Country Status (5)

Country Link
US (1) US20230122214A1 (ja)
EP (2) EP4170587B1 (ja)
JP (1) JP2023061387A (ja)
KR (1) KR20230055991A (ja)
CN (1) CN116012284A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117095010B (zh) * 2023-10-20 2023-12-19 中诚华隆计算机技术有限公司 一种Chiplet数据通信传输真伪验证方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5578331A (en) * 1994-06-10 1996-11-26 Vision Products, Inc. Automated apparatus for preparing contact lenses for inspection and packaging
US5995213A (en) * 1995-01-17 1999-11-30 Johnson & Johnson Vision Products, Inc. Lens inspection system
US6765661B2 (en) * 2001-03-09 2004-07-20 Novartis Ag Lens inspection
JP2005518537A (ja) * 2002-02-21 2005-06-23 ジョンソン・アンド・ジョンソン・ビジョン・ケア・インコーポレイテッド 光学素子検査方法及び装置
US7990531B2 (en) * 2008-06-05 2011-08-02 Coopervision International Holding Company, Lp Multi-imaging automated inspection methods and systems for wet ophthalmic lenses
BR112013031035B1 (pt) * 2011-06-03 2020-10-06 Johnson & Johnson Vision Care, Inc Método de inspeção de uma lente oftálmica de hidrogel de silicone
US20230065811A1 (en) * 2021-08-10 2023-03-02 Johnson & Johnson Vision Care, Inc. Quality control for sealed lens packages

Also Published As

Publication number Publication date
EP4170587B1 (en) 2024-04-17
EP4170587A1 (en) 2023-04-26
EP4375939A2 (en) 2024-05-29
CN116012284A (zh) 2023-04-25
KR20230055991A (ko) 2023-04-26
US20230122214A1 (en) 2023-04-20

Similar Documents

Publication Publication Date Title
Chen et al. A light-weighted CNN model for wafer structural defect detection
US11450012B2 (en) BBP assisted defect detection flow for SEM images
Nandi et al. Traffic sign detection based on color segmentation of obscure image candidates: a comprehensive study
US11200659B2 (en) Neural network training device, system and method
EP4092632A1 (en) Systems and methods for sample generation for identifying manufacturing defects
Medina et al. Comparison of CNN and MLP classifiers for algae detection in underwater pipelines
CN115272330B (zh) 基于电池表面图像的缺陷检测方法、系统及相关设备
CN116485779B (zh) 自适应晶圆缺陷检测方法、装置、电子设备及存储介质
KR102325347B1 (ko) 머신러닝 기반 결함 분류 장치 및 방법
BR112021014182A2 (pt) Método implementado por computador para gerar uma região de interesse em uma imagem digital de um flanco de um pneu, método para leitura de marcações em relevo e/ou gravadas em um flanco de um pneu, aparelho de processamento de dados, programa de computador, e, meio de armazenamento legível por computador
JP2023061387A (ja) 合成データ及び機械学習を使用した欠陥検出
Ahmed et al. Traffic sign detection and recognition model using support vector machine and histogram of oriented gradient
JP2021143884A (ja) 検査装置、検査方法、プログラム、学習装置、学習方法、および学習済みデータセット
CN117677986A (zh) 采集及检验眼科镜片的图像
Mittel et al. Vision-based crack detection using transfer learning in metal forming processes
KR20230023263A (ko) 딥러닝 기반 하수도 결함 감지 방법 및 그 장치
Cruz-Rojas et al. A novel comparison of image semantic segmentation techniques for detecting dust in photovoltaic panels using machine learning and deep learning
Shirode et al. Car damage detection and assessment using CNN
El-Said Shadow aware license plate recognition system
KR20200010658A (ko) 동일인 인식 방법, 이를 이용하는 컴퓨팅 시스템, 및 프로그램
CN116912144A (zh) 一种基于大律算法与通道注意力机制的数据增强方法
Choodowicz et al. Hybrid algorithm for the detection and recognition of railway signs
Sema et al. Automatic Detection and Classification of Mango Disease Using Convolutional Neural Network and Histogram Oriented Gradients
KR102498322B1 (ko) 딥러닝 기반의 반도체 디바이스 상태 분류를 위한 장치 및 방법
Wang et al. An image edge detection algorithm based on multi-feature fusion