-
Hintergrund
-
Technisches Gebiet
-
Die vorliegende Erfindung bezieht sich auf eine Prüfvorrichtung, ein Prüfverfahren, ein Prüfprogramm, eine Lernvorrichtung, ein Lernverfahren und ein Lernprogramm.
-
Stand der Technik
-
Herkömmlicherweise wird eine Aussehensprüfung eines Prüfziels durchgeführt, um die Eignung dieses Prüfziels zu beurteilen.
-
Beispielsweise wird bei einer Aussehensprüfung eines Prüfstifts zum Testen eines Halbleiters ein Bild des Prüfstifts eingefangen und digitalisiert und die digitalisierten Daten werden unter Verwendung vorgegebener Regeln bewertet, um die Eignung des Prüfstifts zu beurteilen.
-
Zu Lösendes Problem
-
Beim Prüfen des Prüfziels besteht jedoch der Wunsch, den Zustand des Prüfziels leicht nachvollziehbar zu machen.
-
Allgemeine Offenbarung
-
Um das obige Problem zu lösen, wird gemäß einem ersten Aspekt der vorliegenden Erfindung eine Prüfvorrichtung bereitgestellt. Die Prüfvorrichtung kann einen Zielbild-Beschaffungsabschnitt umfassen, der ein Zielbild erlangt, das durch Einfangen eines Prüfziels erhalten wurde. Die Prüfvorrichtung kann einen Zielbild-Maskierungsabschnitt umfassen, der einen Teil des Zielbildes maskiert. Die Prüfvorrichtung kann einen Maskierungsbereich-Vorhersageabschnitt umfassen, der ein Bild eines maskierten Bereichs vorhersagt, der im Zielbild maskiert ist. Die Prüfvorrichtung kann einen Nachbildungsbild-Erzeugungsabschnitt umfassen, der unter Verwendung einer Vielzahl von vorhergesagten Bildern, die jeweils für eine Vielzahl von maskierten Bereichen, die den maskierten Bereich enthält, vorhergesagt wurden, ein nachgebildetes Bild erzeugt. Die Prüfvorrichtung kann einen Unterschied-Erfassungsabschnitt umfassen, der einen Unterschied zwischen dem Zielbild und dem nachgebildeten Bild erfasst.
-
Der Unterschied-Erfassungsabschnitt kann das Zielbild mit dem nachgebildeten Bild in jedem vorgegebenen Bereich vergleichen, um ein Unterschiedsmaß in jedem vorgegebenen Bereich zu berechnen.
-
Die Prüfvorrichtung kann ferner einen Beurteilungsabschnitt umfassen, der urteilt, dass das Prüfziel nicht akzeptabel ist, wenn das Unterschiedsmaß einen vorgegebenen Qualitätsstandard nicht erfüllt.
-
Der Beurteilungsabschnitt kann urteilen, dass das Prüfziel nicht akzeptabel ist, wenn ein größtes Unterschiedsmaß aus den Unterschiedsmaßen eines jeden vorgegebenen Bereichs einen vorgegebenen Schwellenwert überschreitet.
-
Wenn der Beurteilungsabschnitt urteilt, dass das Prüfziel nicht akzeptabel ist, kann der Beurteilungsabschnitt eine elektrische Eigenschaft des Prüfziels aus dem Zielbild, das durch Einfangen des Prüfziels, das als nicht akzeptabel beurteilt wurde, erhalten wurde, vorhersagen und bestätigen, dass das Prüfziel nicht akzeptabel ist, wenn die elektrische Eigenschaft einen vorgegebenen Qualitätsstandard nicht erfüllt.
-
Wenn der Beurteilungsabschnitt urteilt, dass das Prüfziel nicht akzeptabel ist, kann der Beurteilungsabschnitt eine elektrische Eigenschaft des Prüfziels aus dem Zielbild, das durch Einfangen des Prüfziels, das als nicht akzeptabel beurteilt wurde, erhalten wurde, vorhersagen und bestätigen, dass das Prüfziel akzeptabel ist, wenn die elektrische Eigenschaft einen vorgegebenen Qualitätsstandard erfüllt.
-
Der Unterschied-Erfassungsabschnitt kann ein Erfassungsabbild ausgeben, in dem sich ein Anzeigeattribut in jedem vorgegebenen Bereich gemäß dem Unterschiedsmaß unterscheidet.
-
Der Unterschied-Erfassungsabschnitt kann das Unterschiedsmaß basierend auf einem euklidischen Abstand zwischen dem Zielbild und dem nachgebildeten Bild berechnen.
-
Der Zielbild-Maskierungsabschnitt kann nacheinander jeweils eine Zelle aus einer Vielzahl von Zellen maskieren, die durch Unterteilen des Zielbilds erhalten werden, und der Nachbildungsbild-Erzeugungsabschnitt kann das nachgebildete Bild unter Verwendung einer Vielzahl von vorhergesagten Bildern vorhersagen, die jeweils für unterschiedliche Zellen erhalten werden.
-
Der Zielbild-Beschaffungsabschnitt kann ein Bild als Zielbild erlangen, das durch Ausführen einer Graustufenumwandlung an einem Bild erhalten wird, das durch Einfangen des Prüfziels erhalten wird.
-
Der Zielbild-Beschaffungsabschnitt kann ein Bild als Zielbild erlangen, das durch Ausführen einer Objekterfassung erhalten wird, um einen Zielbereich einzugrenzen.
-
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Prüfverfahren bereitgestellt. Das Prüfverfahren kann umfassen: Erlangen eines Zielbilds, das durch Einfangen eines Prüfziels erhalten wurde, Maskieren eines Teils des Zielbildes, Vorhersagen eines Bildes eines maskierten Bereichs, der im Zielbild maskiert ist, Erzeugen eines nachgebildeten Bildes unter Verwendung einer Vielzahl von vorhergesagten Bildern, die jeweils für eine Vielzahl von maskierten Bereichen, die den maskierten Bereich enthält, vorhergesagt wurden, und Erfassen eines Unterschieds zwischen dem Zielbild und dem nachgebildeten Bild.
-
Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Prüfprogramm bereitgestellt. Das Prüfprogramm veranlasst bei Ausführung durch einen Computer den Computer, zu funktionieren als: ein Zielbild-Beschaffungsabschnitt, der ein Zielbild erlangt, das durch Einfangen eines Prüfziels erhalten wurde, ein Zielbild-Maskierungsabschnitt, der einen Teil des Zielbildes maskiert, ein Maskierungsbereich-Vorhersageabschnitt, der ein Bild eines maskierten Bereichs vorhersagt, der im Zielbild maskiert ist, ein Nachbildungsbild-Erzeugungsabschnitt, der unter Verwendung einer Vielzahl von vorhergesagten Bildern, die jeweils für eine Vielzahl von maskierten Bereichen, die den maskierten Bereich enthält, vorhergesagt wurden, ein nachgebildetes Bild erzeugt, und ein Unterschied-Erfassungsabschnitt, der einen Unterschied zwischen dem Zielbild und dem nachgebildeten Bild erfasst.
-
Gemäß einem vierten Aspekt der vorliegenden Erfindung wird eine Lernvorrichtung bereitgestellt. Die Lernvorrichtung kann umfassen: einen Trainingsbild-Beschaffungsabschnitt, der ein Trainingsbild erlangt, einen Trainingsbild-Maskierungsabschnitt, der einen Teil des Trainingsbilds maskiert, ein Vorhersagemodell, welches das maskierte Trainingsbild empfängt und ein Modellbild ausgibt, das durch Vorhersagen des Trainingsbilds erhalten wird, und einen Modellaktualisierungsabschnitt, der das Vorhersagemodell basierend auf einem Fehler zwischen dem Trainingsbild und dem Modellbild aktualisiert.
-
Gemäß einem fünften Aspekt der vorliegenden Erfindung wird ein Lernverfahren bereitgestellt. Das Lernverfahren kann umfassen: Erlangen eines Trainingsbilds, Maskieren eines Teils des Trainingsbilds, Eingeben des maskierten Trainingsbilds in ein Vorhersagemodell und Ausgeben eines Modellbilds, das durch Vorhersagen des Trainingsbilds erhalten wird, und Aktualisieren des Vorhersagemodells basierend auf einem Fehler zwischen dem Trainingsbild und dem Modellbild.
-
Gemäß einem sechsten Aspekt der vorliegenden Erfindung wird ein Lernprogramm bereitgestellt. Das Lernprogramm veranlasst bei Ausführung durch einen Computer den Computer, zu funktionieren als: ein Trainingsbild-Beschaffungsabschnitt, der ein Trainingsbild erlangt, ein Trainingsbild-Maskierungsabschnitt, der einen Teil des Trainingsbilds maskiert, ein Vorhersagemodell, welches das maskierte Trainingsbild empfängt und ein Modellbild ausgibt, das durch Vorhersagen des Trainingsbilds erhalten wird, und ein Modellaktualisierungsabschnitt, der das Vorhersagemodell basierend auf einem Fehler zwischen dem Trainingsbild und dem Modellbild aktualisiert.
-
Die Zusammenfassung beschreibt nicht notwendigerweise alle notwendigen Merkmale der Ausführungsbeispiele der vorliegenden Erfindung. Die vorliegende Erfindung kann auch eine Unterkombination der oben beschriebenen Merkmale sein.
-
Figurenliste
-
- 1 zeigt ein Blockschema der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel.
- 2 zeigt ein Beispiel eines Ablaufs zum Prüfen eines Prüfziels mit der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel.
- 3 zeigt ein Beispiel für ein Zielbild 310, maskierte Bilder 320, vorhergesagte Bilder 330 und ein nachgebildetes Bild 340 bei der Prüfung unter Verwendung der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel.
- 4 zeigt beim vorliegenden Ausführungsbeispiel ein Beispiel des Prüfergebnisses in einem Fall, bei dem das Prüfziel akzeptabel ist.
- 5 zeigt ein Beispiel von Prüfergebnissen in einem Fall, bei dem das Prüfziel nicht akzeptabel ist.
- 6 zeigt ein Beispiel eines Blockschemas einer Lernvorrichtung 600 gemäß dem vorliegenden Ausführungsbeispiel.
- 7 zeigt ein Beispiel eines Lernablaufs des Vorhersagemodells 630 durch die Lernvorrichtung 600 gemäß dem vorliegenden Ausführungsbeispiel.
- 8 zeigt ein Beispiel eines Computers 2200, in dem Aspekte der vorliegenden Erfindung ganz oder teilweise verkörpert sein können.
-
Beschreibung exemplarischer Ausführungsbeispiele
-
Im Folgenden werden einige Ausführungsbeispiele der vorliegenden Erfindung beschrieben. Jedoch schränken die folgenden Ausführungsbeispiele die in den Ansprüchen definierte Erfindung nicht ein. Die Ausführungsbeispiele schränken die Erfindung gemäß den Ansprüchen nicht ein und alle Kombinationen der in den Ausführungsbeispielen beschriebenen Merkmale sind nicht notwendigerweise für die durch die Aspekte der Erfindung bereitgestellten Mittel wesentlich.
-
1 zeigt ein Blockschema einer Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel. Die Prüfvorrichtung 100 kann es leicht machen, den Zustand eines Prüfziels nachzuvollziehen, indem sie den Unterschied zwischen einem Bild, das durch Einfangen des tatsächlichen Zustands des Prüfziels erzeugt wurde, und einem Bild, das durch Vorhersagen des Zustands, in dem sich das Prüfziel befinden sollte, erzeugt wurde, erfasst. Im vorliegenden Ausführungsbeispiel wird ein Beispiel beschrieben, bei dem die Prüfvorrichtung 100 einen Sondenstift zum Testen eines Halbleiters als Prüfziel verwendet. Das Prüfziel ist jedoch nicht darauf beschränkt. Die Prüfvorrichtung 100 kann verwendet werden, um ein Bild von Erhebungen einer Halbleitervorrichtung zu analysieren, ein Muster eines Verdrahtungssubstrats zu prüfen oder andere elektronische Komponenten zu prüfen, oder kann verwendet werden, um jede Art von Objekt zu prüfen, das keine elektrische Komponente ist.
-
Die Prüfvorrichtung 100 kann ein Computer wie ein PC (Personal Computer), ein Tablet-Computer, ein Smartphone, eine Arbeitsstation, ein Server-Computer oder ein allgemeiner Benutzercomputer sein, oder kann ein Computersystem sein, in dem eine Vielzahl von Computern verbunden sind. Ein solches Computersystem ist im weiteren Sinne auch ein Computer. Die Prüfvorrichtung 100 kann in einer virtuellen Computerumgebung implementiert sein, die in einem oder mehreren Computern ausgeführt werden kann. Stattdessen kann die Prüfvorrichtung 100 ein spezialisierter Computer sein, der zum Prüfen des Prüfziels ausgelegt ist, oder kann eine spezialisierte Hardware sein, die durch eine spezialisierte Schaltung realisiert wird. Wenn die Prüfvorrichtung 100 eine Verbindung mit dem Internet herstellen kann, kann die Prüfvorrichtung 100 durch Cloud-Computing realisiert werden.
-
Die Prüfvorrichtung 100 beinhaltet einen Zielbild-Beschaffungsabschnitt 110, einen Zielbild-Maskierungsabschnitt 120, einen Maskierungsbereich-Vorhersageabschnitt 130, einen Nachbildungsbild-Erzeugungsabschnitt 140, einen Unterschied-Erfassungsabschnitt 150 und einen Beurteilungsabschnitt 160.
-
Der Zielbild-Beschaffungsabschnitt 110 erlangt ein Zielbild, das durch Einfangen eines Bildes des Prüfziels erhalten wurde. Der Zielbild-Beschaffungsabschnitt 110 kann ein Bild als das Zielbild erlangen, das durch Vorverarbeiten eines eingefangenen Bildes des Prüfziels erhalten wird. In diesem Fall kann der Zielbild-Beschaffungsabschnitt 110 das Zielbild beispielsweise über ein Netzwerk erlangen, das Zielbild über eine Benutzereingabe erlangen oder das Zielbild über eine Speichervorrichtung oder dergleichen erlangen, die beispielsweise Daten speichern kann. Der Zielbild-Beschaffungsabschnitt 110 liefert das erlangte Zielbild an den Zielbild-Maskierungsabschnitt 120 und den Unterschied-Erfassungsabschnitt 150.
-
Der Zielbild-Maskierungsabschnitt 120 maskiert einen Teil des Zielbilds. Der Zielbild-Maskierungsabschnitt 120 versorgt den Maskierungsbereich-Vorhersageabschnitt 130 dann mit einer Vielzahl von maskierten Bildern, die durch Maskieren jeweils unterschiedlicher Teile des Zielbilds erhalten werden.
-
Der Maskierungsbereich-Vorhersageabschnitt 130 sagt ein Bild des maskierten Bereichs vorher, der im Zielbild maskiert wurde. Der Maskierungsbereich-Vorhersageabschnitt 130 liefert dann dem Nachbildungsbild-Erzeugungsabschnitt 140 eine Vielzahl von vorhergesagten Bildern, die jeweils für den maskierten Bereich in der Vielzahl von maskierten Bildern vorhergesagt wurden.
-
Der Nachbildungsbild-Erzeugungsabschnitt 140 erzeugt unter Verwendung der Vielzahl von vorhergesagten Bildern, die jeweils für die Vielzahl von maskierten Bereichen vorhergesagt wurden, ein nachgebildetes Bild. Der Nachbildungsbild-Erzeugungsabschnitt 140 versorgt den Unterschied-Erfassungsabschnitt 150 mit dem erzeugten nachgebildeten Bild.
-
Der Unterschied-Erfassungsabschnitt 150 erfasst den Unterschied zwischen dem Zielbild und dem nachgebildeten Bild. Hier kann der Unterschied-Erfassungsabschnitt 150 das vom Zielbild-Beschaffungsabschnitt 110 gelieferte Zielbild mit dem vom Nachbildungsbild-Erzeugungsabschnitt 140 gelieferten nachgebildeten Bild in jedem vorgegebenen Bereich vergleichen, um beispielsweise ein Unterschiedsmaß in jedem vorgegebenen Bereich zu berechnen. Der Unterschied-Erfassungsabschnitt 150 liefert dann das berechnete Unterschiedsmaß an den Beurteilungsabschnitt 160.
-
Der Beurteilungsabschnitt 160 beurteilt, dass das Prüfziel nicht akzeptabel ist, wenn das Unterschiedsmaß einen vorgegebenen Qualitätsstandard nicht erfüllt. Der Beurteilungsabschnitt 160 gibt das Beurteilungsergebnis an einen anderen Funktionsabschnitt, eine andere Vorrichtung und dergleichen aus. Im Folgenden wird ein Ablauf verwendet, um die Details der Prüfung eines Prüfziels unter Verwendung einer solchen Prüfvorrichtung 100 zu beschreiben.
-
2 zeigt ein Beispiel eines Ablaufs zum Prüfen eines Prüfziels mit der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel. In Schritt 210 erlangt der Zielbild-Beschaffungsabschnitt 110 das Zielbild, das durch Einfangen eines Bildes des Prüfziels erhalten wurde. Beispielsweise erlangt der Zielbild-Beschaffungsabschnitt 110 über ein Netzwerk ein Bild eines Sondenstifts zum Testen eines Halbleiters, das unter Verwendung eines optischen Mikroskops oder dergleichen erhalten wurde.
-
Der Zielbild-Beschaffungsabschnitt 110 wandelt ein Bild, das durch Einfangen des Prüfziels erhalten wurde, in Graustufen um. Das unter Verwendung des optischen Mikroskops oder dergleichen eingefangene Bild des Sondenstifts kann drei Kanäle umfassen, die jeweils den drei Farben R, G und B entsprechen. Vom Gesichtspunkt der Prüfung gemäß dem vorliegenden Ausführungsbeispiel weisen diese drei Kanäle jedoch ungefähr die gleichen Merkmale auf und kein Kanal weist ein Merkmal auf, das im Vergleich zu den anderen Kanälen einzigartig ist. Dementsprechend wandelt der Zielbild-Beschaffungsabschnitt 110 das erlangte Bild in einen einzelnen Kanal um, indem er die Graustufenumwandlung am erlangten Bild durchführt. Auf diese Weise kann der Zielbild-Beschaffungsabschnitt 110 ein Bild als Zielbild erlangen, das durch Ausführen einer Graustufenumwandlung an einem Bild erhalten wurde, das durch Einfangen des Prüfziels erhaltenen wurde. Indem sie die Graustufenumwandlung an dem erlangten Bild so durchführt, dass nur ein einziger Kanal verwendet wird, kann die Prüfvorrichtung 100 die Belastung des Prüfprozesses beim Erlangen des Zielbildes verringern. In einem Fall, bei dem es vorzuziehen ist, mehrere Kanäle zu verwenden, beispielsweise in einem Fall, bei dem die Genauigkeit der Prüfung verbessert werden soll, kann der Zielbild-Beschaffungsabschnitt 110 ein Bild erlangen, das durch Einfangen des Prüfziels wie es ist als Zielbild erhalten wird, ohne die Graustufenumwandlung durchzuführen.
-
Der Zielbild-Beschaffungsabschnitt 110 grenzt ein Bild, das durch Einfangen des Prüfziels erhalten wurde, ein. Zum Beispiel erkennt der Zielbild-Beschaffungsabschnitt 110 die Position und Größe des Sondenstifts in dem Bild unter Verwendung eines Objekterfassungsalgorithmus, wie beispielsweise YOLO (You Only Look Once). Der Zielbild-Beschaffungsabschnitt 110 grenzt den Zielbereich durch Abschneiden des Bildes basierend auf der Position und Größe des erkannten Sondenstifts ein. Auf diese Weise kann der Zielbild-Beschaffungsabschnitt 110 eine Objekterfassung des Prüfziels in einem Bild durchführen, das durch Einfangen des Prüfziels erhalten wird, und das Bild als Zielbild erlangen, in dem der Zielbereich eingegrenzt wurde. Auf diese Weise kann die Prüfvorrichtung 100 beim Erlangen des Zielbildes durch Ausführen einer Objekterfassung des Prüfziels und Eingrenzen des Zielbereichs die Prüfgenauigkeit verbessern und den Prüfprozess beschleunigen. Der Zielbild-Beschaffungsabschnitt 110 erlangt das vorverarbeitete Bild (beispielsweise das Bild, an dem eine Graustufenumwandlung und ein Eingrenzen durchgeführt wurden) als Zielbild und führt dieses Zielbild dem Zielbild-Maskierungsabschnitt 120 und dem Unterschied-Erfassungsabschnitt 150 zu.
-
In Schritt 220 maskiert der Zielbild-Maskierungsabschnitt 120 einen Teil des Zielbilds. Beispielsweise unterteilt der Zielbild-Maskierungsabschnitt 120 das in Schritt 210 erlangte Zielbild in eine Vielzahl von Zellen. Der Zielbild-Maskierungsabschnitt 120 maskiert dann nacheinander jeweils eine Zelle aus der Vielzahl von Zellen, die durch Unterteilen des Zielbilds erhalten wurden. Der Zielbild-Maskierungsabschnitt 120 führt dem Maskierungsbereich-Vorhersageabschnitt 130 die Vielzahl von maskierten Bildern zu, die durch Maskieren eines jeden aus der Vielzahl von Zellen erhalten wurden.
-
In Schritt 230 sagt der Maskierungsbereich-Vorhersageabschnitt 130 ein Bild eines maskierten Bereichs voraus, der im Zielbild maskiert ist. Hier kann der Maskierungsbereich-Vorhersageabschnitt 130 ein angelerntes Modell verwenden, wie etwa ein CNN (Convolution Neural Network), das gelehrt wurde, ein Bild des maskierten Bereichs aus einem anderen Bild vorherzusagen, das unmaskiert ist, wenn das Bild, in dem ein Teilbereich maskiert ist, eingegeben wird, beispielsweise unter Verwendung nur von Trainingsbildern von als akzeptabel bekannten Prüfzielen. Mit anderen Worten, der Maskierungsbereich-Vorhersageabschnitt 130 kann ein angelerntes Modell verwenden, das gelernt hat, den Zustand des maskierten Bereichs vorherzusagen, wenn das Prüfziel akzeptabel ist, unter Verwendung nur von Trainingsbildern von als akzeptabel bekannten Prüfzielen. Als ein Beispiel führt der Maskierungsbereich-Vorhersageabschnitt 130 jedes aus der Vielzahl von maskierten Bildern, die in Schritt 220 erhalten wurden, dem angelernten Modell zu und sagt das Bild des maskierten Bereichs für jedes aus der Vielzahl von Zellen vorher. Das Lernen eines solchen Modells wird weiter unten beschrieben. Die obige Beschreibung ist ein Beispiel, bei dem der Maskierungsbereich-Vorhersageabschnitt 130 ein angelerntes CNN-Modell verwendet, aber das vorliegende Ausführungsbeispiel ist nicht darauf beschränkt. Der Maskierungsbereich-Vorhersageabschnitt 130 kann das Bild des maskierten Bereichs unter Verwendung eines angelernten Modells eines anderen Algorithmus vorhersagen oder kann das Bild des maskierten Bereichs unter Verwendung eines Algorithmus vorhersagen, der sich vom Lernen unterscheidet. Der Maskierungsbereich-Vorhersageabschnitt 130 versorgt den Nachbildungsbild-Erzeugungsabschnitt 140 mit der Vielzahl von vorhergesagten Bildern, die jeweils für die Vielzahl von maskierten Bereichen vorhergesagt wurden.
-
In Schritt 240 erzeugt der Nachbildungsbild-Erzeugungsabschnitt 140 ein nachgebildetes Bild unter Verwendung der Vielzahl von vorhergesagten Bildern, die jeweils für die Vielzahl von maskierten Bereichen vorhergesagt wurden. Beispielsweise erzeugt der Nachbildungsbild-Erzeugungsabschnitt 140 das nachgebildete Bild unter Verwendung der Vielzahl von vorhergesagten Bildern, die jeweils für unterschiedliche Zellen vorhergesagt wurden. Hier kann der Nachbildungsbild-Erzeugungsabschnitt 140 das nachgebildete Bild durch Anordnen der Vielzahl von vorhergesagten Bildern, die jeweils für die Vielzahl von Zellen in Schritt 230 vorhergesagt wurden, beispielsweise an den ursprünglichen Positionen dieser Zellen erzeugen. Der Nachbildungsbild-Erzeugungsabschnitt 140 versorgt den Unterschied-Erfassungsabschnitt 150 mit dem erzeugten nachgebildeten Bild.
-
In Schritt 250 erfasst der Unterschied-Erfassungsabschnitt 150 den Unterschied zwischen dem Zielbild und dem nachgebildeten Bild. Beispielsweise führt der Unterschied-Erfassungsabschnitt 150 einen Vergleich zwischen dem Zielbild, das vom Zielbild-Beschaffungsabschnitt 110 geliefert wird, und dem nachgebildeten Bild, das vom Nachbildungsbild-Erzeugungsabschnitt 140 geliefert wird, in jedem vorgegebenen Bereich (beispielsweise jedem Pixel, jeder Pixelgruppe, jeder Zelle, die beim Maskieren des Zielbildes verwendet werden und dergleichen) aus und berechnet das Unterschiedsmaß in jedem vorgegebenen Bereich. Hier kann der Unterschied-Erfassungsabschnitt 150 das Unterschiedsmaß basierend auf der L2-Norm, d.h. dem euklidischen Abstand zwischen dem Zielbild und dem nachgebildeten Bild, berechnen. Darüber hinaus kann der Unterschied-Erfassungsabschnitt 150 ein Erfassungsabbild ausgeben, in dem sich die Anzeigeattribute (beispielsweise die Farbe, die Konzentration und dergleichen) in jedem vorgegebenen Bereich gemäß dem Unterschiedsmaß unterscheiden. Der Unterschied-Erfassungsabschnitt 150 versorgt dann den Beurteilungsabschnitt 160 mit dem Unterschiedsmaß in jedem vorgegebenen Bereich.
-
In Schritt 260 beurteilt der Beurteilungsabschnitt 160, ob das in Schritt 250 berechnete Unterschiedsmaß kleiner oder gleich einem vorgegebenen Schwellenwert ist. Wenn das Unterschiedsmaß kleiner oder gleich dem vorgegebenen Schwellenwert ist, d.h. wenn das Unterschiedsmaß einen vorgegebenen Qualitätsstandard erfüllt, schreitet der Beurteilungsabschnitt 160 zu Schritt 270 voran, beurteilt, dass das Prüfziel akzeptabel ist, und beendet den Prozess. Wenn andererseits das Unterschiedsmaß den vorgegebenen Schwellenwert überschreitet, d.h. wenn das Unterschiedsmaß den vorgegebenen Qualitätsstandard nicht erfüllt, schreitet der Beurteilungsabschnitt 160 zu Schritt 280 voran, beurteilt, dass das Prüfziel nicht akzeptabel ist, und beendet den Prozess. Hier kann der Beurteilungsabschnitt 160 das Prüfziel als inakzeptabel beurteilen, wenn das größte Unterschiedsmaß unter den Unterschiedsmaßen für jeden vorgegebenen Bereich beispielsweise den vorgegebenen Schwellenwert überschreitet. Der Beurteilungsabschnitt 160 gibt das Beurteilungsergebnis an einen anderen Funktionsabschnitt, eine andere Vorrichtung und dergleichen aus. Der für diese Beurteilung verwendete Schwellenwert kann der minimale Wert oder ein etwas niedrigerer Wert als dieser minimale Wert sein, der erhalten wird, wenn das Unterschiedsmaß durch die Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel unter Verwendung eines Bildes berechnet wird, das durch Einfangen eines Prüfziels erhalten wurde, das als nicht akzeptabel bekannt ist. Darüber hinaus ist in der obigen Beschreibung ein Beispiel gezeigt, bei dem der Beurteilungsabschnitt 160 die Eignung des Prüfziels basierend auf dem größten Unterschiedsmaß unter den Unterschiedsmaßen jedes vorgegebenen Bereichs beurteilt, aber das vorliegende Ausführungsbeispiel ist nicht darauf beschränkt. Der Beurteilungsabschnitt 160 kann die Eignung des Prüfziels basierend auf einem anderen statistischen Wert des Unterschiedsmaßes beurteilen, beispielsweise dem Medianwert, dem Durchschnittswert, der Verteilung oder dergleichen.
-
3 zeigt ein Beispiel für ein Zielbild 310, maskierte Bilder 320, vorhergesagte Bilder 330 und ein nachgebildetes Bild 340 bei der Prüfung unter Verwendung der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel. Der Zielbild-Beschaffungsabschnitt 110 erlangt das Zielbild 310, wie beispielsweise in dieser Zeichnung gezeigt. Der Zielbild-Maskierungsabschnitt 120 unterteilt das Zielbild 310 in eine Vielzahl von Zellen 322 (insgesamt 25 Zellen, wobei [vertikal, horizontal] = [1, 1] bis [5, 5] in der vorliegenden Zeichnung). Der Zielbild-Maskierungsabschnitt 120 maskiert nacheinander jede dieser Zellen 322 unter Verwendung einer Maske 324, um jedes aus der Vielzahl von maskierten Bildern 320 zu erzeugen. Beispielsweise sind das obere, mittlere und untere maskierte Bild 320 in der vorliegenden Zeichnung jeweils Fälle, in denen die Zelle [2, 3], die Zelle [3, 3] und die Zelle [4, 3] maskiert sind. Der Maskierungsbereich-Vorhersageabschnitt 130 sagt das Bild des maskierten Bereichs 332 für jede aus der Vielzahl von Zellen 322 voraus, um jedes aus der Vielzahl von vorhergesagten Bildern 330 zu erzeugen. Der Nachbildungsbild-Erzeugungsabschnitt 140 erzeugt das nachgebildete Bild 340 durch Anordnen der Vielzahl von vorhergesagten Bildern 330, die jeweils für die Vielzahl von Zellen 322 an den ursprünglichen Positionen dieser Zellen 322 vorhergesagt wurden.
-
4 zeigt ein Beispiel des Prüfergebnisses in einem Fall, bei dem das Prüfziel beim vorliegenden Ausführungsbeispiel akzeptabel ist. Wenn das Prüfziel akzeptabel ist, ist das von der Prüfvorrichtung 100 erzeugte nachgebildete Bild 340 ungefähr das gleiche wie das Zielbild 310. Dies liegt daran, dass das nachgebildete Bild 340, das von der Prüfvorrichtung 100 erzeugt wurde, da die Prüfvorrichtung 100 den Zustand unter Verwendung des angelernten Modells, das unter Verwendung nur von Trainingsbildern von Prüfzielen gelernt hat, die als akzeptabel bekannt sind, vorhersagt, den der maskierte Bereich aufweisen sollte, wenn das Prüfziel akzeptabel ist, ein Bild ist, in dem der Zustand nachgebildet wird, in dem sich das Prüfziel befinden sollte, wenn dieses Prüfziel akzeptabel ist. Dementsprechend weisen selbst im Erfassungsabbild 400, in dem sich die Anzeigeattribute jedes vorgegebenen Bereichs gemäß dem Unterschiedsmaß unterscheiden, alle der Bereiche ungefähr die gleichen Anzeigeattribute auf. Darüber hinaus wird in einer Verteilung (unterer Teil der vorliegenden Zeichnung), die durch Zählen der Anzahl von Einheitsbereichen (Zelleneinheitsbereiche in der vorliegenden Zeichnung) jedes Unterschiedsmaßes erhalten wird, die Mehrheit der Zellen mit einem Unterschiedsmaß nahe 0 gezählt, und keine der Zellen wird an Positionen gezählt, an denen das Unterschiedsmaß größer als 1,5 (der Schwellenwert) ist. Hier können die Einheitsbereiche Bereiche wie etwa Pixeleinheiten, Pixelgruppeneinheiten und Zelleneinheiten sein, und die vorliegende Zeichnung zeigt ein Beispiel, bei dem die Einheitsbereiche Zelleneinheitsbereiche sind. Darüber hinaus zeigt eine größere Breite auf der vertikalen Achse eine größere Anzahl gezählter Zellen an. Die Prüfvorrichtung 100 beurteilt auf diese Weise das Prüfziel im Zielbild 310 als akzeptabel, wenn der Unterschied zwischen dem Zielbild 310 und dem nachgebildeten Bild 340 klein ist.
-
5 zeigt ein Beispiel von Prüfergebnissen in einem Fall, in dem das Prüfziel nicht akzeptabel ist. Wenn das Prüfziel nicht akzeptabel ist (wenn das Prüfziel beispielsweise gebrochen ist), unterscheidet sich das von der Prüfvorrichtung 100 erzeugte nachgebildete Bild 340 vom Zielbild 310. In diesem Fall werden Bereiche, in denen sich das Unterschiedsmaß unterscheidet, durch unterschiedliche Attribute im Erfassungsabbild 400 angezeigt. Außerdem werden bei der Verteilung der Unterschiedsmaße viele Zellen an Positionen gezählt, an denen das Unterschiedsmaß groß ist, und mehrere Zellen werden an Positionen gezählt, an denen das Unterschiedsmaß größer als 1,5 ist. Wenn der Unterschied zwischen dem Zielbild 310 und dem nachgebildeten Bild 340 auf diese Weise groß ist, beurteilt die Prüfvorrichtung 100 das Prüfziel im Zielbild 310 als inakzeptabel.
-
Auf diese Weise ist es gemäß der Prüfvorrichtung 100 dem vorliegenden Ausführungsbeispiel möglich, den Zustand des Prüfziels leicht nachzuvollziehen, indem der Unterschied zwischen einem Bild (Zielbild 310), das durch Einfangen des tatsächlichen Zustands der Prüfziel erhalten wurde, und einem Bild (nachgebildetes Bild 340), das durch Vorhersagen und Nachbilden des Zustands, in dem sich das Prüfziel befinden sollte, wenn das Prüfziel akzeptabel ist, erhalten wurde, erfasst wird. Außerdem gibt die Prüfvorrichtung 100 das Erfassungsabbild 400 aus, in dem sich die Anzeigeattribute in jedem Bereich gemäß dem Unterschiedsmaß unterscheiden, und daher ist es möglich, den Ort von Fehlern im Prüfziel leicht nachzuvollziehen. Darüber hinaus gibt die Prüfvorrichtung 100 die Verteilung aus, die durch Zählen der Anzahl von Einheitsbereichen jedes Unterschiedsmaßes erhalten wird, und daher ist es möglich, die Häufigkeit nachzuvollziehen, mit der Bereiche mit unterschiedlichen Unterschiedsmaßen im Bild auftreten.
-
Eine solche Prüfung unter Verwendung der Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel kann beispielsweise während der Herstellung der Sonde und vor dem Versand der Sonde durchgeführt werden oder kann unmittelbar vor oder in Intervallen der tatsächlichen Prüfung einer Halbleitervorrichtung unter Verwendung der Sonde durchgeführt werden. In einem Fall, bei dem eine Sichtprüfung unter Verwendung von Bildern aus mehreren Richtungen nützlich wäre, kann die Prüfvorrichtung 100 außerdem den Zustand des Prüfziels durch Ausführen dieser Prüfung unter Verwendung der Bilder des Prüfziels, die aus mehreren Richtungen aufgenommen wurden, besser erkennen.
-
Die obige Beschreibung verwendet ein Beispiel, bei dem die Prüfvorrichtung 100 die Eignung des Prüfziels nur basierend auf einer Aussehensprüfung unter Verwendung eines Bildes beurteilt, aber das vorliegende Ausführungsbeispiel ist nicht darauf beschränkt. Die Prüfvorrichtung 100 kann die Eignung des Prüfziels basierend sowohl auf einer Aussehensprüfung unter Verwendung eines Bildes als auch auf der Grundlage der elektrischen Eigenschaften beurteilen.
-
Wenn beispielsweise der Beurteilungsabschnitt 160 beurteilt, dass das Prüfziel inakzeptabel ist, werden die elektrischen Eigenschaften des Prüfziels aus dem Zielbild vorhergesagt, das durch Einfangen eines als inakzeptabel beurteilten Prüfziels erhalten wurde, und wenn diese elektrischen Eigenschaften einem vorgegebenen Qualitätsstandard nicht genügen, kann das Prüfziel als inakzeptabel bestätigt werden. Beispielsweise kann der Beurteilungsabschnitt 160 ein angelerntes Modell verwenden, das gelernt hat, die elektrischen Eigenschaften des Prüfziels vorherzusagen, wenn das Zielbild, das durch darin eingegeben wird. Mit anderen Worten, der Beurteilungsabschnitt 160 kann ein angelerntes Modell verwenden, das gelernt hat, die elektrischen Eigenschaften vorherzusagen, beispielsweise den Widerstandswert und dergleichen eines Sondenstifts, wenn das Zielbild, das durch Einfangen des Prüfziels erhalten wurde, darin eingegeben wird. Wenn dann in Schritt S280 von 2 beurteilt wird, dass der Sondenstift inakzeptabel ist, kann der Beurteilungsabschnitt 160 das Zielbild, das durch Einfangen eines Sondenstifts erhalten wurde, der als inakzeptabel beurteilt wurde, in dieses angelernte Modell eingeben, um den Widerstandswert des Sondenstifts vorherzusagen, und kann, wenn der Widerstandswert einen vorgegebenen Qualitätsstandard nicht erfüllt, bestätigen, dass der Prüfstift, der das Prüfziel ist, nicht akzeptabel ist. Die obige Beschreibung zeigt ein Beispiel, bei dem der Beurteilungsabschnitt 160 die elektrischen Eigenschaften des Prüfziels unter Verwendung eines angelernten Modells vorhersagt, aber das vorliegende Ausführungsbeispiel ist nicht darauf beschränkt. Der Beurteilungsabschnitt 160 kann die elektrischen Eigenschaften des Prüfziels aus dem Zielbild unter Verwendung eines vom Lernen verschiedenen Algorithmus vorhersagen.
-
Wenn das Prüfziel als inakzeptabel beurteilt wird, kann der Beurteilungsabschnitt 160 in ähnlicher Weise die elektrischen Eigenschaften des Prüfziels aus dem Zielbild vorhersagen, das durch Einfangen des Prüfziels erhalten wurde, das als inakzeptabel beurteilt wurde, und kann, wenn die elektrischen Eigenschaften den vorgegebenen Qualitätsstandard erfüllen, bestätigen, dass das Prüfziel akzeptabel ist. Wenn beispielsweise in Schritt S280 von 2 beurteilt wird, dass der Prüfstift inakzeptabel ist, kann der Beurteilungsabschnitt 160 das Zielbild, das durch Einfangen des Prüfstifts erhalten wurde, der als inakzeptabel beurteilt wurde, in das angelernte Modell eingeben, um den Widerstandswert des Prüfstifts vorherzusagen, und kann, wenn der Widerstandswert einen vorgegebenen Qualitätsstandard erfüllt, bestätigen, dass der Prüfstift, der das Prüfziel ist, akzeptabel ist.
-
Auf diese Weise kann die Prüfvorrichtung 100 die Eignung des Prüfziels durch Berücksichtigung der elektrischen Eigenschaften zusätzlich zur Aussehensprüfung unter Verwendung eines Bildes genau beurteilen. Selbst wenn beispielsweise ein Prüfziel, welches bei der Aussehensprüfung unter Verwendung eines Bildes aufgrund der Auswirkungen von reflektierten Schatten, Partikeln oder dergleichen während der Bildaufnahme des Prüfziels als inakzeptabel beurteilt wurde, kann es Fälle geben, in denen keine Probleme mit den elektrischen Eigenschaften vorliegen. Daher kann die Prüfvorrichtung 100 die Eignung des Prüfziels durch Kombinieren dieser Aussehensprüfung mit den elektrischen Eigenschaften genauer beurteilen.
-
6 zeigt ein Beispiel eines Blockschemas einer Lernvorrichtung 600 gemäß dem vorliegenden Ausführungsbeispiel. Die Lernvorrichtung 600 bewirkt, dass ein Modell lernt, in der Lage zu sein, einen maskierten Bereich aus einem Bild eines anderen Bereichs, das nicht maskiert ist, vorherzusagen wenn ein Bild, in dem ein Teilbereich maskiert ist, darin eingegeben wird, wobei nur Trainingsbilder von Zielen verwendet werden, die als akzeptabel bekannt sind. Mit anderen Worten bewirkt die Lernvorrichtung 600, dass ein Modell in der Lage ist, den Zustand vorherzusagen, in dem sich ein maskierter Teilbereich befinden sollte, wenn das Prüfziel akzeptabel ist, indem nur Trainingsbilder von als akzeptabel bekannten Zielen verwendet werden. Die Prüfvorrichtung 100 gemäß dem vorliegenden Ausführungsbeispiel kann den maskierten Bereich unter Verwendung eines angelernten Modells vorhersagen, das durch die Lernvorrichtung 600 zum Lernen veranlasst wird, wie beispielsweise in der vorliegenden Zeichnung gezeigt.
-
Die Lernvorrichtung 600 kann ein Computer wie ein PC (Personal Computer), ein Tablet-Computer, ein Smartphone, eine Arbeitsstation, ein Server-Computer oder ein Allzweckcomputer sein, oder kann ein Computersystem sein, in dem eine Vielzahl von Computern verbunden sind. Ein solches Computersystem ist im weiteren Sinne auch ein Computer. Die Lernvorrichtung 600 kann in einer virtuellen Computerumgebung implementiert sein, die in einem oder mehreren Computern ausgeführt werden kann. Stattdessen kann die Lernvorrichtung 600 ein spezialisierter Computer sein, der zum Zweck des Modelllernens ausgelegt ist, oder kann eine spezialisierte Hardware sein, die durch eine spezialisierte Schaltung realisiert wird. Wenn die Lernvorrichtung 600 eine Verbindung mit dem Internet herstellen kann, kann die Lernvorrichtung 600 durch Cloud-Computing realisiert werden.
-
Die Lernvorrichtung 600 enthält einen Trainingsbild-Beschaffungsabschnitt 610, einen Trainingsbild-Maskierungsabschnitt 620, ein Vorhersagemodell 630, einen Fehlerberechnungsabschnitt 640 und einen Modellaktualisierungsabschnitt 650.
-
Der Trainingsbild-Beschaffungsabschnitt 610 erlangt ein Trainingsbild. Beispielsweise kann der Trainingsbild-Beschaffungsabschnitt 610 eine Vielzahl von Bildern, in denen als akzeptabel bekannte Prüfziele eingefangen sind, als Trainingsbilder erlangen. Hier kann der Trainingsbild-Beschaffungsabschnitt 610 zum Beispiel die Trainingsbilder über ein Netzwerk erlangen, die Trainingsbilder über eine Benutzereingabe erlangen oder die Trainingsbilder über eine Speichervorrichtung oder dergleichen erlangen, die Daten speichern kann. Der Trainingsbild-Beschaffungsabschnitt 610 versorgt den Trainingsbild-Maskierungsabschnitt 620 und den Fehlerberechnungsabschnitt 640 mit den erlangten Trainingsbildern.
-
Der Trainingsbild-Maskierungsabschnitt 620 maskiert einen Teil eines Trainingsbilds. Beispielsweise liefert der Trainingsbild-Maskierungsabschnitt 620 dem Vorhersagemodell 630 eine Vielzahl von maskierten Bildern, die durch zufälliges Maskieren der Vielzahl von Bildern erhalten werden, die als Trainingsbilder erlangt wurden.
-
Das Vorhersagemodell 630 empfängt ein Trainingsbild, in dem ein Teilbereich maskiert ist, und gibt ein Modellbild aus, das durch Vorhersage des Trainingsbilds erhalten wurde. Wenn beispielsweise das Trainingsbild, in dem der Bereich maskiert ist, eingegeben wird, sagt das Vorhersagemodell 630 den Zustand voraus, in dem sich der maskierte Teilbereich befinden sollte, wenn das Prüfziel akzeptabel ist, und gibt das durch Vorhersage dieses Trainingsbilds erhaltene Modellbild aus. Hier kann das Vorhersagemodell 630 einen Algorithmus wie beispielsweise CNN verwenden, um den maskierten Bereich vorherzusagen. Die obige Beschreibung zeigt ein Beispiel, bei dem das Vorhersagemodell 630 CNN verwendet, aber das vorliegende Ausführungsbeispiel ist nicht darauf beschränkt. Das Vorhersagemodell 630 kann das Bild des maskierten Bereichs unter Verwendung eines anderen Algorithmus als CNN vorhersagen. Das Vorhersagemodell 630 versorgt den Fehlerberechnungsabschnitt mit dem Ausgabemodellbild.
-
Der Fehlerberechnungsabschnitt 640 berechnet den Fehler zwischen dem Trainingsbild, das vom Trainingsbild-Beschaffungsabschnitt 610 geliefert wird, und dem Modellbild, das vom Vorhersagemodell 630 geliefert wird. Der Fehlerberechnungsabschnitt 640 versorgt den Modellaktualisierungsabschnitt 650 mit dem berechneten Fehler.
-
Der Modellaktualisierungsabschnitt 650 aktualisiert das Vorhersagemodell 630 basierend auf dem Fehler zwischen dem Trainingsbild, das vom Trainingsbild-Beschaffungsabschnitt 610 geliefert wird, und dem Modellbild, das vom Vorhersagemodell 630 geliefert wird. Im Folgenden wird ein Ablauf verwendet, um die Details des Lernens eines Modells unter Verwendung einer solchen Lernvorrichtung 600 zu beschreiben.
-
7 zeigt ein Beispiel eines Ablaufs des Lernens des Vorhersagemodells 630 durch die Lernvorrichtung 600 gemäß dem vorliegenden Ausführungsbeispiel. In Schritt 710 erlangt der Trainingsbild-Beschaffungsabschnitt 610 die Trainingsbilder. Beispielsweise erlangt der Trainingsbild-Beschaffungsabschnitt 610 über ein Netzwerk eine Vielzahl von Bildern, in denen als akzeptabel bekannte Prüfziele eingefangen wurden. Der Trainingsbild-Beschaffungsabschnitt 610 erlangt die Bilder, die durch Vorverarbeiten der erlangten Bilder erhalten wurden, als die Trainingsbilder auf dieselbe Weise wie der Zielbild-Beschaffungsabschnitt 110. Hier kann der Trainingsbild-Beschaffungsabschnitt 610 unter Verwendung eines Konturerkennungsfilters oder dergleichen Bilder fallenlassen, in denen sich der Fokus vom Prüfziel verschoben hat, ohne diese Bilder als Trainingsbilder zu erlangen. Der Trainingsbild-Beschaffungsabschnitt 610 versorgt den Trainingsbild-Maskierungsabschnitt 620 und den Fehlerberechnungsabschnitt 640 mit den erlangten Trainingsbildern.
-
In Schritt 720 maskiert der Trainingsbild-Maskierungsabschnitt 620 Teile der Trainingsbilder. Beispielsweise wählt der Trainingsbild-Maskierungsabschnitt 620 zufällig eine Vielzahl von Bildern aus, die als Trainingsbilder erlangt wurden. Dann maskiert der Trainingsbild-Maskierungsabschnitt 620 zufällig eine Zelle aus einer Vielzahl von Zellen, die durch Unterteilen des Bildbereichs erhalten werden, in jedem der zufällig ausgewählten Bilder. Der Trainingsbild-Maskierungsabschnitt 620 versorgt dann das Vorhersagemodell 630 mit der Vielzahl von maskierten Bildern, die durch zufälliges Maskieren der zufällig ausgewählten Bilder erhalten wurde.
-
In Schritt 730 empfängt das Vorhersagemodell 630 die maskierten Trainingsbilder und gibt ein Modellbild aus, das durch Vorhersagen der Trainingsbilder erhalten wird. Wenn beispielsweise die maskierten Bilder, in denen Teilbereiche zufällig maskiert sind, eingegeben werden, sagt das Vorhersagemodell 630 die Bilder der maskierten Bereiche aus den Bildern anderer Bereiche voraus, die nicht maskiert sind. Das Vorhersagemodell 630 gibt dann das Modellbild aus, indem es die vorhergesagten Bilder in die maskierten Bereiche der Trainingsbilder einbettet. Das Vorhersagemodell 630 führt das Modellbild dem Fehlerberechnungsabschnitt 640 zu.
-
In Schritt 740 berechnet der Fehlerberechnungsabschnitt 640 den Fehler zwischen dem Trainingsbild, das vom Trainingsbild-Beschaffungsabschnitt 610 geliefert wurde, und dem Modellbild, das vom Vorhersagemodell 630 geliefert wurde. Der Fehlerberechnungsabschnitt 640 versorgt den Modellaktualisierungsabschnitt 650 mit dem berechneten Fehler.
-
In Schritt 750 aktualisiert der Modellaktualisierungsabschnitt 650 das Vorhersagemodell 630 basierend auf dem Fehler zwischen dem Trainingsbild, das vom Trainingsbild-Beschaffungsabschnitt 610 geliefert wurde, und dem Modellbild, das vom Vorhersagemodell 630 geliefert wurde. Beispielsweise aktualisiert der Modellaktualisierungsabschnitt 650 Parameter, wie etwa Gewichte, im Vorhersagemodell 630 auf eine solche Art und Weise, dass eine Zielfunktion minimiert wird, die der in Schritt 740 berechnete Fehler ist.
-
In Schritt 760 beurteilt die Lernvorrichtung 600, ob das Training beendet ist. Wenn in Schritt 760 geurteilt wird, dass das Training nicht beendet ist, kehrt die Lernvorrichtung 600 mit der Verarbeitung zu Schritt 710 zurück und wiederholt diese Prozesse. Wenn andererseits in Schritt 760 geurteilt wird, dass das Training beendet ist, beendet die Lernvorrichtung 600 die Verarbeitung. Hier kann die Lernvorrichtung 600 basierend auf Bedingungen, wie beispielsweise der Trainingszeit, der Anzahl der Trainings und der Trainingsgenauigkeit beurteilen, ob das Training beendet ist.
-
Auf diese Weise wird gemäß der Lernvorrichtung 600 des vorliegenden Ausführungsbeispiels das Vorhersagemodell 630 auf eine Art und Weise aktualisiert, dass der Fehler zwischen dem Trainingsbild und dem Modellbild minimiert wird, wobei nur eine Vielzahl von Bildern verwendet wird, in denen die eingefangenen Prüfziele als Trainingsbilder als akzeptabel bekannt sind, und daher kann die Lernvorrichtung 600 das Vorhersagemodell 630 aktualisieren, um das Bild eines Zustands vorhersagen zu können, in dem sich der maskierte Bereich befinden sollte, wenn das Prüfziel akzeptabel ist.
-
Verschiedene Ausführungsbeispiele der vorliegenden Erfindung können unter Bezugnahme auf Ablaufdiagramme und Blockschemata beschrieben werden, deren Blöcke (1) Schritte von Prozessen, in denen Operationen durchgeführt werden, oder (2) Abschnitte von Vorrichtungen, die für die Durchführung von Operationen verantwortlich sind, darstellen können. Bestimmte Schritte und Abschnitte können durch dedizierte Schaltungen, programmierbare Schaltungen, die mit computerlesbaren Anweisungen versorgt werden, die auf computerlesbaren Medien gespeichert sind, und/oder Prozessoren, die mit computerlesbaren Anweisungen versorgt werden, die auf computerlesbaren Medien gespeichert sind, implementiert werden. Dedizierte Schaltungen können digitale und/oder analoge Hardwareschaltungen umfassen und können integrierte Schaltungen (IC) und/oder diskrete Schaltungen umfassen. Programmierbare Schaltungen können rekonfigurierbare Hardwareschaltungen umfassen, die logische UND-, ODER-, XOR-, NAND-, NOR- und andere logische Operationen, Flip-Flops, Register, Speicherelemente usw. umfassen, wie beispielsweise feldprogrammierbare Gate-Arrays (FPGA), programmierbare Logikarrays (PLA) und dergleichen.
-
Das computerlesbare Medium kann eine greifbare Vorrichtung sein, die Anweisungen speichern kann, die von einer geeigneten Vorrichtung ausgeführt werden sollen, und folglich ist ein computerlesbares Medium mit darauf gespeicherten Anweisungen ein Produkt, das Anweisungen enthält, die ausgeführt werden können, um die Mittel zum Ausführen der durch Ablaufdiagramme und Blockschemata bezeichneten Operationen zu schaffen. Beispiele des computerlesbaren Mediums können eine elektronische Speichervorrichtung, eine magnetische Speichervorrichtung, eine optische Speichervorrichtung, ein elektromagnetisches Aufzeichnungsmedium, ein magnetisches Aufzeichnungsmedium, ein optisches Aufzeichnungsmedium, ein elektromagnetisches Aufzeichnungsmedium, ein Halbleiter-Aufzeichnungsmedium und dergleichen sein. Spezifische Beispiele des computerlesbaren Mediums können eine Floppy Disk (eingetragene Marke), eine Diskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein elektrisch löschbarer programmierbarer Festwertspeicher (EEPROM), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-Festwertspeicher (CD-ROM), eine Digital Versatile Disk (DVD), eine Blu-ray-Disk (eingetragene Marke), ein Speicherstick, eine Karte mit integrierter Schaltung oder dergleichen sein.
-
Die computerlesbaren Befehle können Assembler-Befehle, Befehlssatz-Architektur-Befehle (ISA-Befehle), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Zustandseinstellungsdaten oder entweder Quellcode oder Objektcode sein, der in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben ist, einschließlich einer objektorientierten Programmiersprache, wie Smalltalk, JAVA (eingetragenes Warenzeichen), Javascript (eingetragenes Warenzeichen), C++ oder dergleichen und konventionelle prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen.
-
Die computerlesbaren Anweisungen können einem Prozessor oder einer programmierbaren Schaltung eines Universalcomputers, Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine entweder lokal über ein lokales Netzwerk (LAN) oder über ein Weitverkehrsnetz (WAN), wie das Internet, herzustellen, und können ausgeführt werden, um die Mittel zum Durchführen der durch die Ablaufdiagramme und Blockschemata bezeichneten Operationen zu erzeugen. Beispiele des Prozessors umfassen einen Computerprozessor, eine Verarbeitungseinheit, einen Mikroprozessor, einen digitalen Signalprozessor, einen Controller, einen Mikrocontroller und dergleichen.
-
8 zeigt ein Beispiel eines Computers 2200, in dem Aspekte der vorliegenden Erfindung ganz oder teilweise verkörpert sein können. Ein Programm, das im Computer 2200 installiert ist, kann bewirken, dass der Computer 2200 als Vorrichtungen der Ausführungsbeispiele der vorliegenden Erfindung oder eines oder mehrerer Abschnitte davon funktioniert oder Operationen ausführt, die mit Vorrichtungen der Ausführungsbeispiele der vorliegenden Erfindung verbunden sind, und/oder den Computer 2200 veranlassen, Prozesse der Ausführungsbeispiele der vorliegenden Erfindung oder Schritte davon auszuführen. Ein solches Programm kann von der CPU 2212 ausgeführt werden, um den Computer 2200 zu veranlassen, bestimmte Operationen auszuführen, die einigen oder allen der hier beschriebenen Blöcke von Ablaufdiagrammen und Blockschemata zugeordnet sind.
-
Der Computer 2200 gemäß dem vorliegenden Ausführungsbeispiel umfasst eine CPU 2212, einen RAM 2214, einen Grafikcontroller 2216 und eine Anzeigevorrichtung 2218, die gegenseitig durch einen Hostcontroller 2210 verbunden sind. Der Computer 2200 umfasst auch Eingabe-/Ausgabeeinheiten, wie beispielsweise eine Kommunikationsschnittstelle 2222, ein Festplattenlaufwerk 2224, ein DVD-ROM-Laufwerk 2226 und ein IC-Kartenlaufwerk, die über einen Eingabe/Ausgabe-Controller 2220 mit dem Host-Controller 2210 verbunden sind. Der Computer enthält zudem Alt-Eingabe/Ausgabe-Einheiten wie ein ROM 2230 und eine Tastatur 2242, die über einen Eingabe/Ausgabe-Chip 2240 mit dem Eingabe/Ausgabe-Controller 2220 verbunden sind.
-
Die CPU 2212 arbeitet gemäß Programmen, die im ROM 2230 und im RAM 2214 gespeichert sind, wodurch jede Einheit gesteuert wird. Der Grafikcontroller 2216 erhält von der CPU 2212 erzeugte Bilddaten in einem Bildpuffer oder dergleichen, der im RAM 2214 oder in sich selbst bereitgestellt ist, und veranlasst, dass die Bilddaten auf der Anzeigevorrichtung 2218 angezeigt werden.
-
Die Kommunikationsschnittstelle 2222 kommuniziert mit anderen elektronischen Geräten über ein Netzwerk. Das Festplattenlaufwerk 2224 speichert Programme und Daten, die von der CPU 2212 innerhalb des Computers 2200 verwendet werden. Das DVD-ROM-Laufwerk 2226 liest die Programme oder die Daten von der DVD-ROM 2201 und versorgt das Festplattenlaufwerk 2224 mit den Programmen oder den Daten über den RAM 2214. Das IC-Kartenlaufwerk liest Programme und Daten von einer IC-Karte und/oder schreibt Programme und Daten in die IC-Karte.
-
Der ROM 2230 speichert darin ein Bootprogramm oder dergleichen, das vom Computer 2200 bei Aktivierung ausgeführt wird, und/oder ein Programm abhängig von der Hardware des Computers 2200. Der Eingabe-/Ausgabechip 2240 kann auch verschiedene Eingabe /Ausgabeeinheiten über einen parallelen Port, einen seriellen Port, einen Tastaturport, einen Mausport und dergleichen mit dem Eingabe/Ausgabe-Controller 2220 verbinden.
-
Ein Programm wird von computerlesbaren Medien wie der DVD-ROM 2201 oder der IC-Karte bereitgestellt. Das Programm wird von den computerlesbaren Medien gelesen, im Festplattenlaufwerk 2224, RAM 2214 oder ROM 2230 installiert, die auch Beispiele für computerlesbare Medien sind, und von der CPU 2212 ausgeführt. Die in diesen Programmen beschriebene Informationsverarbeitung wird in den Computer 2200 eingelesen, was zu einer Zusammenarbeit zwischen einem Programm und den oben erwähnten verschiedenen Arten von Hardware-Ressourcen führt. Eine Vorrichtung oder ein Verfahren kann durch Realisieren des Betriebs oder der Verarbeitung von Informationen gemäß der Verwendung des Computers 2200 gebildet werden.
-
Wenn beispielsweise eine Kommunikation zwischen dem Computer 2200 und einer externen Vorrichtung durchgeführt wird, kann die CPU 2212 ein Kommunikationsprogramm ausführen, das in den RAM 2214 geladen wurde, um die Kommunikationsverarbeitung basierend auf der im Kommunikationsprogramm beschriebenen Verarbeitung an die Kommunikationsschnittstelle 2222 anzuweisen. Die Kommunikationsschnittstelle 2222 liest unter der Steuerung der CPU 2212 Übertragungsdaten, die in einem Übertragungspufferbereich gespeichert sind, der in einem Aufzeichnungsmedium wie dem RAM 2214, dem Festplattenlaufwerk 2224, dem DVD-ROM 2201 oder der IC-Karte bereitgestellt sind, und überträgt die gelesenen Übertragungsdaten an ein Netzwerk oder schreibt von einem Netzwerk empfangene Empfangsdaten in einen Empfangspufferbereich oder dergleichen, der auf dem Aufzeichnungsmedium bereitgestellt ist.
-
Außerdem kann die CPU 2212 veranlassen, dass die gesamte oder ein notwendiger Teil einer Datei oder einer Datenbank in den RAM 2214 gelesen wird, wobei die Datei oder die Datenbank auf einem externen Aufzeichnungsmedium wie etwa dem Festplattenlaufwerk 2224, dem DVD-ROM-Laufwerk 2226 (DVD-ROM 2201), der IC-Karte usw. gespeichert wurde, und führen verschiedene Verarbeitungsarten an den Daten im RAM 2214 durch. Die CPU 2212 kann dann die verarbeiteten Daten auf das externe Aufzeichnungsmedium zurückschreiben.
-
Verschiedene Arten von Informationen, wie etwa verschiedene Arten von Programmen, Daten, Tabellen und Datenbanken, können im Aufzeichnungsmedium gespeichert werden, um einer Informationsverarbeitung unterzogen zu werden. Die CPU 2212 kann verschiedene Arten von Verarbeitungen an den aus dem RAM 2214 gelesenen Daten durchführen, die verschiedene Arten von Operationen, Verarbeitung von Informationen, Zustandsbeurteilung, bedingte Verzweigung, unbedingte Verzweigung, Suchen/Ersetzen von Informationen usw. umfassen, wie in dieser Offenbarung durchweg beschrieben und durch eine Befehlssequenz von Programmen bezeichnet, und das Ergebnis zurück in den RAM 2214 schreiben. Außerdem kann die CPU 2212 nach Informationen in einer Datei, einer Datenbank usw. auf dem Aufzeichnungsmedium suchen. Wenn beispielsweise eine Vielzahl von Einträgen, von denen jeder einen Attributwert eines ersten Attributs aufweist, das einem Attributwert eines zweiten Attributs zugeordnet ist, auf dem Aufzeichnungsmedium gespeichert sind, kann die CPU 2212 nach einem Eintrag suchen, der aus der Vielzahl von Einträgen der Bedingung entspricht, dessen Attributwert des ersten Attributs ausgewiesen ist, und liest den Attributwert des zweiten Attributs, das in dem Eintrag gespeichert ist, wodurch der Attributwert des zweiten Attributs erhalten wird, das dem ersten Attribut zugeordnet ist, das die vorgegebene Bedingung erfüllt.
-
Die oben erläuterten Programm- oder Softwaremodule können in computerlesbaren Medien auf oder in der Nähe des Computers 2200 gespeichert werden. Außerdem kann ein Aufzeichnungsmedium wie eine Festplatte oder ein RAM, die in einem Serversystem bereitgestellt werden, das mit einem dedizierten Kommunikationsnetzwerk oder dem Internet verbunden ist, als computerlesbares Medium verwendet werden, wodurch dem Computer 2200 das Programm über das Netzwerk bereitgestellt wird.
-
Während die Ausführungsbeispiele der vorliegenden Erfindung beschrieben wurden, ist der technische Umfang der Erfindung nicht auf die oben beschriebenen Ausführungsbeispiele beschränkt. Fachleuten wird klar sein, dass verschiedene Änderungen und Verbesserungen zu den oben beschriebenen Ausführungsbeispiele hinzugefügt werden können. Aus dem Schutzumfang der Ansprüche sollte auch ersichtlich sein, dass die mit solchen Änderungen oder Verbesserungen hinzugefügten Ausführungsbeispiele innerhalb des technischen Schutzumfangs der Erfindung liegen.
-
Die Operationen, Prozeduren, Schritte und Stufen jedes Prozesses, der von einer Vorrichtung, einem System, einem Programm und einem Verfahren ausgeführt wird, die in den Ansprüchen, Ausführungsbeispielen oder Diagrammen gezeigt sind, können in beliebiger Reihenfolge durchgeführt werden, solange die Reihenfolge nicht durch „vor“, „zuvor“ oder dergleichen angegeben ist und solange die Ausgabe eines vorherigen Prozesses nicht in einem späteren Prozess verwendet wird. Auch wenn der Prozessablauf in den Ansprüchen, Ausführungsbeispielen oder Diagrammen mit Begriffen wie „erster“ oder „nächster“ beschrieben wird, bedeutet dies nicht unbedingt, dass der Prozess in dieser Reihenfolge durchgeführt werden muss.
-
Bezugszeichenliste
-
- 100
- Prüfvorrichtung
- 110
- Zielbild-Beschaffungsabschnitt
- 120
- Zielbild-Maskierungsabschnitt
- 130
- Maskierungsbereich-Vorhersageabschnitt
- 140
- Nachbildungsbild-Erzeugungsabschnitt
- 150
- Unterschied-Erfassungsabschnitt
- 160
- Beurteilungsabschnitt
- 600
- Lernvorrichtung
- 610
- Trainingsbild-Beschaffungsabschnitt
- 620
- Trainingsbild-Maskierungsabschnitt
- 630
- Vorhersagemodell
- 640
- Fehlerberechnungsabschnitt
- 650
- Modellaktualisierungsabschnitt
- 2200
- Computer
- 2201
- DVD-ROM
- 2210
- Host-Controller
- 2212
- CPU
- 2214
- RAM
- 2216
- Grafikcontroller
- 2218
- Anzeigevorrichtung
- 2220
- Eingabe-/Ausgabe-Controller
- 2222
- Kommunikationsschnittstelle
- 2224
- Festplattenlaufwerk
- 2226
- DVD-ROM-Laufwerk
- 2230
- ROM
- 2240
- Eingabe-/Ausgabe-Chip
- 2242
- Tastatur