DE102019102484A1 - Verarbeitung von dreidimensionalen Bilddatensätzen - Google Patents

Verarbeitung von dreidimensionalen Bilddatensätzen Download PDF

Info

Publication number
DE102019102484A1
DE102019102484A1 DE102019102484.6A DE102019102484A DE102019102484A1 DE 102019102484 A1 DE102019102484 A1 DE 102019102484A1 DE 102019102484 A DE102019102484 A DE 102019102484A DE 102019102484 A1 DE102019102484 A1 DE 102019102484A1
Authority
DE
Germany
Prior art keywords
tiles
structures
labels
hierarchical
image data
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
DE102019102484.6A
Other languages
English (en)
Inventor
Jens Timo Neumann
Abhilash Srikantha
Christian Wojek
Thomas Korb
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.)
Carl Zeiss SMT GmbH
Original Assignee
Carl Zeiss SMT GmbH
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 Carl Zeiss SMT GmbH filed Critical Carl Zeiss SMT GmbH
Priority to DE102019102484.6A priority Critical patent/DE102019102484A1/de
Priority to KR1020217027289A priority patent/KR20210121154A/ko
Priority to PCT/EP2020/052380 priority patent/WO2020157249A1/de
Publication of DE102019102484A1 publication Critical patent/DE102019102484A1/de
Priority to US17/388,589 priority patent/US20210358101A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/55Clustering; Classification
    • 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
    • G06F18/2155Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the incorporation of unlabelled data, e.g. multiple instance learning [MIL], semi-supervised techniques using expectation-maximisation [EM] or naïve labelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/285Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/0006Industrial image inspection using a design-rule based approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • G06T7/344Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • G06V30/2504Coarse or fine approaches, e.g. resolution of ambiguities or multiscale approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10056Microscopic image
    • G06T2207/10061Microscopic image from scanning electron microscope
    • 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/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • 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/20021Dividing image into blocks, subimages or windows
    • 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
    • G06T2207/30148Semiconductor; IC; Wafer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/24Character recognition characterised by the processing or recognition method
    • G06V30/248Character recognition characterised by the processing or recognition method involving plural approaches, e.g. verification by template match; Resolving confusion among similar patterns, e.g. "O" versus "Q"
    • G06V30/2528Combination of methods, e.g. classifiers, working on the same input data

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)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Abstract

Ein Verfahren umfasst das Erhalten eines dreidimensionalen Bilddatensatzes (100), der Halbleiter-Bauelemente abbildet. Das Verfahren umfasst auch das Anwenden einer hierarchischen Kachelung (201) auf den dreidimensionalen Bilddatensatz (100). Dabei weist die Kachelung (201) mehrere Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf mehreren Hierarchieebenen (251-253) auf. Die Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf unterschiedlichen Hierarchieebenen (251-253) weisen unterschiedliche Voxelgrößen von entsprechenden Voxeln (290) auf.

Description

  • TECHNISCHES GEBIET
  • Verschiedene Beispiele der Erfindung betreffen im Allgemeinen die Verarbeitung von dreidimensionalen Bilddatensätzen. Verschiedene Beispiele der Erfindung betreffen insbesondere das Anwenden einer hierarchischen Kachelung auf dem dreidimensionalen Bilddatensatz.
  • HINTERGRUND
  • Bei der Fertigung von Halbleiter-Bauelementen ist oftmals die Überwachung der Wafer-Prozessierung erforderlich, um Defekte zu erkennen, Ausschuss zu mindern und um Prozesskosten zu senken. Anomalien können identifiziert werden. Metrologie, d. h. die Vermessung von bestimmten geometrischen Eigenschaften von Strukturen der Halbleiter-Bauelemente auf dem Wafer (etwa Breite, Länge oder Durchmesser), wird ermöglicht.
  • Durch größere Wafer-Durchmesser und kleinere Strukturgrößen ist die Anzahl von Strukturen auf einem Wafer (oder aber auch auf einem typischen Chip) besonders groß. Die Verarbeitung von entsprechend hochauflösenden Bilddatensätzen ist deshalb aufwendig und speicherintensiv.
  • Zum Beispiel sind insbesondere dreidimensionale (3-D) Bilddatensätze bekannt, etwa durch Röntgenbildgebung oder eine kombinierte Technik umfassend einen fokussierten Ionenstrahl zur Probenpräparation und gescannte Elektronenmikroskopie (FIB-SEM-Mikroskop). Solche 3-D-Bilddatensätze sind dann besonders groß (d.h. weisen viele Voxel auf) und können mit herkömmlichen Techniken nur besonders zeitintensiv verarbeitet werden.
  • KURZE BESCHREIBUNG DER ERFINDUNG
  • Deshalb besteht ein Bedarf für verbesserte Techniken zur Verarbeitung von 3-D-Bilddatensätzen, insbesondere von 3-D-Bilddatensätzen, welche Halbleiter-Bauelemente abbilden. Insbesondere besteht ein Bedarf für solche Techniken, welche die Verarbeitung von großen 3-D-Bilddatensätzen mit vielen Voxeln ermöglichen.
  • Diese Aufgabe wird von den Merkmalen der unabhängigen Patentansprüche gelöst. Die Merkmale der abhängigen Patentansprüche definieren Ausführungsformen.
  • Ein Verfahren umfasst das Erhalten eines 3-D-Bilddatensatzes. Der 3-D-Bilddatensatz bildet Halbleiter-Bauelemente ab. Das Verfahren umfasst auch das Anwenden einer hierarchischen Kachelung auf den 3-D-Bilddatensatz. Die Kachelung weist mehrere Kacheln auf mehreren Hierarchieebenen auf. Kacheln unterschiedlicher Hierarchieebenen weisen unterschiedliche Voxelgrößen auf.
  • Das Anwenden der hierarchischen Kachelung auf den 3-D Bilddatensatz kann einer Zerlegung des Bilddatensatz in Kacheln auf den mehreren Hierarchieebenen und gemäß der Kachelung entsprechen. Die Kachelung kann also einer Regel zur Zerlegung in die Kacheln entsprechen.
  • Ein Computerprogramm oder ein Computerprogramm-Produkt oder ein computerlesbares Speichermedium umfasst einen Programmcode. Der Programmcode kann von einem Prozessor geladen und ausgeführt werden. Dies bewirkt das Ausführen eines Verfahrens. Das Verfahren umfasst das Erhalten eines 3-D-Bilddatensatzes. Der 3-D-Bilddatensatz bildet Halbleiter-Bauelemente, insbesondere auch Bauelemente innerhalb eines integrierten Schaltkreises, ab. Das Verfahren umfasst auch das Anwenden einer hierarchischen Kachelung auf den 3-D-Bilddatensatz. Die Kachelung weist mehrere Kacheln auf mehreren Hierarchieebenen auf. Kacheln unterschiedlicher Hierarchieebenen weisen unterschiedliche Voxelgrößen auf.
  • Ein Prozessor ist eingerichtet, um Programmcodes aus einem Speicher zu laden und auszuführen. Dies bewirkt das Ausführen eines Verfahrens. Das Verfahren umfasst das Erhalten eines 3-D-Bilddatensatzes. Der 3-D-Bilddatensatz bildet Halbleiter-Bauelemente ab. Das Verfahren umfasst auch das Anwenden einer hierarchischen Kachelung auf den 3-D-Bilddatensatz. Die Kachelung weist mehrere Kacheln auf mehreren Hierarchieebenen auf. Kacheln unterschiedlicher Hierarchieebenen weisen unterschiedliche Voxelgrößen auf.
  • Die oben dargelegten Merkmale und Merkmale, die nachfolgend beschrieben werden, können nicht nur in den entsprechenden explizit dargelegten Kombinationen verwendet werden, sondern auch in weiteren Kombinationen oder isoliert, ohne den Schutzumfang der vorliegenden Erfindung zu verlassen.
  • Figurenliste
    • 1 illustriert schematisch ein System mit einer bildgebenden Einheit und einer Recheneinheit gemäß verschiedenen Beispielen.
    • 2 ist ein Flussdiagramm eines beispielhaften Verfahrens.
    • 3 illustriert das Anwenden einer hierarchischen Kachelung auf einen 3-D-Bilddatensatz gemäß verschiedenen Beispielen.
    • 4 illustriert das Anwenden einer hierarchischen Kachelung auf einen 3-D-Bilddatensatz gemäß verschiedenen Beispielen.
    • 5 illustriert schematisch verschieden Hierarchieebenen der hierarchischen Kachelung gemäß verschiedenen Beispielen.
    • 6 illustriert schematisch verschiedene Aspekte zur Datenverarbeitung gemäß verschieden Beispielen.
    • 7 illustriert schematisch Strukturen in Kacheln auf unterschiedlichen Hierarchieebenen sowie multihierarchische Labels für die Strukturen gemäß verschiedenen Beispielen.
    • 8 ist ein Flussdiagramm eines beispielhaften Verfahrens.
    • 9 ist ein Flussdiagramm eines beispielhaften Verfahrens.
    • 10 ist ein Flussdiagramm eines beispielhaften Verfahrens.
    • 11 ist ein Flussdiagramm eines beispielhaften Verfahrens.
    • 12 ist ein Flussdiagramm eines beispielhaften Verfahrens.
  • DETAILLIERTE BESCHREIBUNG VON AUSFÜHRUNGSFORMEN
  • Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusammenhang mit der folgenden Beschreibung der Ausführungsbeispiele, die im Zusammenhang mit den Zeichnungen näher erläutert werden.
  • Nachfolgend wird die vorliegende Erfindung anhand bevorzugter Ausführungsformen unter Bezugnahme auf die Zeichnungen näher erläutert. In den Figuren bezeichnen gleiche Bezugszeichen gleiche oder ähnliche Elemente. Die Figuren sind schematische Repräsentationen verschiedener Ausführungsformen der Erfindung. In den Figuren dargestellte Elemente sind nicht notwendigerweise maßstabsgetreu dargestellt. Vielmehr sind die verschiedenen in den Figuren dargestellten Elemente derart wiedergegeben, dass ihre Funktion und genereller Zweck dem Fachmann verständlich wird. In den Figuren dargestellte Verbindungen und Kopplungen zwischen funktionellen Einheiten und Elementen können auch als indirekte Verbindung oder Kopplung implementiert werden. Eine Verbindung oder Kopplung kann drahtgebunden oder drahtlos implementiert sein. Funktionale Einheiten können als Hardware, Software oder eine Kombination aus Hardware und Software implementiert werden.
  • Nachfolgend werden Techniken im Zusammenhang mit der Verarbeitung von 3-D-Bilddatensätzen beschrieben. Der 3-D-Bilddatensatz kann eine Erstreckung in alle drei Raumdimensionen aufweisen. Dies bedeutet, dass der 3-D-Bilddatensatz mehrere Voxel aufweisen kann. Ein Voxel kann als das 3-D-Äquivalent eines 2-D-Pixel beschrieben werden. Ein Voxel kann einen bestimmten Kontrast aufweisen, der indikativ für den vom Voxel abgebildeten Raumbereich ist. Ein Voxel hat drei Seiten mit bestimmten Kantenlängen. Z.B. können die Voxel in den verschiedenen hierin beschriebenen Beispielen unterschiedliche Kantenlängen haben, z.B. im Bereich von nm bis mm.
  • Die hierin beschriebenen Techniken können in unterschiedlichen Anwendungsgebieten eingesetzt werden. Als allgemeine Regel können unterschiedliche Typen von Strukturen durch den 3-D-Bilddatensatz abgebildet werden. Beispielsweise wäre es möglich, dass der 3-D-Bilddatensatz organische Proben (zum Beispiel in der Lichtblatt-Mikroskopie, engl. „light-sheet microscopy“), die Anatomie eines Patienten (bei der Computertomographie-Bildgebung oder der Magnetresonanz-Bildgebung), Werkstücke (zerstörungsfreie Röntgenbildgebung etwa bei der Überprüfung von Turbinenblättern etc.), Radarmessungen, oder auch Halbleiter-Bauelemente (etwa FIB-SEM-Bildgebung oder Röntgenbildgebung) abbildet. Nachfolgend wird aus Gründen der Einfachheit vornehmlich Bezug genommen auf 3-D-Bilddatensätze, welche Halbleiter-Bauelemente abbilden. Die entsprechenden Techniken können aber auch auf andere Anwendungsgebiete übertragen werden.
  • Halbleiter-Bauelemente können z.B. aus folgenden Gruppen ausgewählt sein: Speichergruppen; Speicherzellen; Transistoren; Gate; Logikgatter; Vias; Leiterbahnen; usw.
  • Je nach Anwendungsgebiet können unterschiedliche bildgebende Verfahren zum Erfassen des 3-D-Bilddatensatzes eingesetzt werden. Die spezifischen bildgebenden Verfahren - etwa FIB-SEM-Bildgebung bei Halbleiter-Bauelementen - sind im Grundsatz bekannt. Beispiele umfassen zum Beispiel die Hellfeld-Inspektion. Eine SEM-Bildgebung ist möglich. Tunnel-Elektronenmikroskop(TEM)-Lamellen können präpariert und abgebildet werden. Die hierin beschriebenen Techniken können kombiniert werden mit den unterschiedlichen bildgebenden Verfahren.
  • Verschiedene Beispiele beruhen auf der Erkenntnis, dass eine geeignete Strukturierung des 3-D-Bilddatensatzes als Eingabedaten für einen Verarbeitungsalgorithmus die effiziente Verarbeitung des 3-D-Bilddatensatzes fördern kann. Eine geeignete Strukturierung des 3-D-Bilddatensatzes kann auch die logische Verknüpfung von Strukturen des 3-D-Bilddatensatzes ermöglichen. Derart können Defekte besser gefunden und klassifiziert werden.
  • Typische 3-D-Bilddatensätze können zum Beispiel eine Anzahl von 6000 x 6000 x 1000 Voxel aufweisen. Als allgemeine Regel kann die Voxelanzahl im Sinne der vorliegenden Beschreibung die Anzahl von Voxeln in einem abgebildeten 3-D-Volumen (Bildvolumen) beschreiben. Dies bedeutet, dass die Voxelanzahl äquivalent zur Anzahl von Pixeln eines 2-D-Bilds sein kann. Die Anzahl von Voxeln in den verschiedenen Raumrichtungen wird nachfolgend zum Beispiel als (A, B, C) bezeichnet. Dann ist die gesamte Voxelanzahl im Datensatz ABC.
  • Gemäß verschiedener Beispiele wird eine hierarchische Kachelung auf einen 3-D-Bilddatensatz angewendet. Die Kachelung weist mehrere Hierarchieebenen auf. Unterschiedliche Kacheln sind in unterschiedlichen Hierarchieebenen zugewiesen. Kacheln auf unterschiedlichen Hierarchieebenen weisen unterschiedliche Voxelgrößen auf.
  • Die Kachelung kann Assoziierungen zwischen den Kacheln beschreiben. Die Kachelung kann z.B. durch eine Baumstruktur beschrieben werden. Die Baumstruktur kann eine hierarchische Anordnung der Kacheln definieren. Dabei kann eine Kachel einer bestimmten Hierarchieebene mehrere Kacheln auf einer niedrigen Hierarchieebene umfassen; und kann in einer Kachel einer höheren Hierarchieebene beinhaltet sein.
  • Die Kacheln (engl. „bricks“) können 3-D-Teilbereiche eines Bildvolumens (engl. „field of view“) des 3-D-Bilddatensatzes abbilden. Jede Kachel kann eine Anzahl von Voxeln einer bestimmten Größe aufweisen. Die Kacheln könnten unterschiedliche oder gleiche Kantenlängen entlang der drei Raumrichtungen aufweisen.
  • Die Voxelgröße korreliert als allgemeine Regel mit einer Auflösung/Abtastung, mit der Strukturen dargestellt werden können. Die Voxelgröße kann durch die Kantenlänge eines Voxels in den verschiedenen Raumrichtungen beschrieben werden. Typische Kantenlängen liegen z.B. im Bereich von nm bis mm - in Abhängigkeit der jeweiligen Hierarchieebene auf der die entsprechende Kachel ist. Um unterschiedliche Voxelgrößen zu erhalten, kann eine Abwärtswandlung verwendet werden. Zum Beispiel können die Kacheln auf einer oberen Hierarchieebene eine größere Voxelgröße aufweisen, als die Kacheln auf einer unteren Hierarchieebene. Dies bedeutet in anderen Worten, dass die Kacheln auf der unteren Hierarchieebene Strukturen mit größerem Detail bzw. einer höheren Auflösung abbilden können, als die Kacheln auf einer oberen Hierarchieebene. Die Voxelgröße korreliert mit der von einer Kachel sichtbaren bzw. erkennbaren minimalen Strukturgröße.
  • Die Abwärtswandlung (engl. „downsampling“) beschreibt im Allgemeinen das Herabsetzen der Auflösung eines 3-D-Bilddatensatzes. Dies bedeutet, dass die Voxelgröße heraufgesetzt wird, zum Beispiel in dem die Voxel auf ein gröberes Gitter interpoliert werden, nur jeder n-te Voxel beibehalten wird oder eine Mittelung erfolgt.
  • In dem die Hierarchie der Kachelung verwendet wird, kann ein logisches Verknüpfen von Strukturen, die Strukturgrößen aufweisen, die den Voxelgrößen der Kacheln auf den unterschiedlichen Hierarchieebenen entsprechen, effizient ermöglicht werden. Außerdem kann ein effizientes Navigieren durch den 3-D-Bilddatensatz ermöglicht werden. Der Speicherbedarf während des Navigierens im 3-D Bilddatensatz kann limitiert werden: z.B. können jeweils nur relevante Kacheln im Arbeitsspeicher gehalten werden.
  • Beispielsweise können Labels an Strukturen in verschiedenen Kacheln vergeben werden. Als allgemeine Regel bezeichnet ein Label die logische Klassifikation einer Struktur. Unterschiedliche Struktur-Typen können unterschiedliche Labels erhalten. Ein Label kann auch die Position einer Struktur indizieren, zum Beispiel mittels einer Begrenzungs-Box (engl. „bounding box“) oder durch Segmentierung auf Voxel-Ebene. Das bedeutet also allgemein gesprochen, dass ein Label auch benutzt werden kann, um einen positionierten und räumlich abgegrenzten Bereich (z.B. durch eine bounding box mit Mittelpunkts- oder Eckkoordinate oder durch eine Segmentierung mit ihrem Schwerpunkt) zu indizieren.
  • Annotierung bezeichnet den Prozess der Vergabe von Labels an Strukturen. Die Vergabe von Labels an Strukturen kann in den verschiedenen Beispielen manuell, teilautomatisch oder vollautomatisch erfolgen. Die Vergabe von Labels kann zum Beispiel die Vererbung und/oder Propagation von Labels zwischen assoziierten Strukturen beinhalten. Z.B. kann im Rahmen der Annotierung eine Objekterkennung oder im Allgemeinen eine Klassifikation verwendet werden.
  • Objekterkennung bezeichnet typischerweise den automatisierten Prozess der Erkennung von Strukturen und dem Versehen von Labels mit einem geeigneten Objekterkennungsalgorithmus. Auch eine Segmentierung ist im Rahmen der Objekterkennung möglich.
  • Die Klassifikation bezeichnet typischerweise das Bilden von Klassen von vergleichbaren Strukturen. Klassen können durch einen Klassen-Repräsentanten identifiziert werden. Strukturen, die vergleichbar mit dem Repräsentanten sind bzw. im Zusammenhang mit einer vorgegebenen Metrik eine besonders große Ähnlichkeit aufweisen, können der entsprechenden Klasse zugewiesen werden. Andere Strukturen, die keine solche große Ähnlichkeit aufweisen, können der Klasse nicht zugewiesen werden. Durch die Klassifizierung kann das Vergeben von Labels ermöglicht werden. Die Labels können zum Beispiel die Zuordnung zu den verschiedenen Klassen beschreiben.
  • Die Kachelung kann aber nicht nur zur effizienten Vergabe von Labels verwendet werden. Alternativ oder zusätzlich kann auch eine Registrierung des 3-D-Bilddatensatzes an einem Referenzdatensatz ermöglich werden. Die Registrierung bezeichnet typischerweise Entfernen von translatorischen Verschiebungen und/oder Rotationen und/oder Skalierung zwischen zwei Datensätzen. Durch die Registrierung kann eine Zuordnung zwischen Voxeln des ersten Datensatz zu Voxeln des zweiten Datensatzes erhalten werden.
  • 1 illustriert schematisch ein System 90 gemäß verschiedenen Beispielen. Das System 90 umfasst eine bildgebende Einrichtung 91, im Beispiel der 1 ein FIB-SEM-Mikroskop. Dieses kann zum Beispiel Tunnel-Elektronenmikroskop-Lamellen präparieren oder durch „slice and image“ (sequentielles Abtragen von Schichten durch FIB und jeweils erfassen eines SEM-Bilds) einen 3-D-Bilddatensatz 100 eines Probenobjekts erzeugen. Typischerweise könnte das Probenobjekt zum Beispiel ein Wafer oder ein Chip sein.
  • Der 3-D-Bilddatensatz 100 wird dann an eine Recheneinheit 80 übertragen. Die Recheneinheit 80 umfasst eine Kommunikationsschnittstelle 81, um den 3-D-Bilddatensatz 100 zu empfangen. Außerdem umfasst die Recheneinheit 80 auch einen Prozessor 82 und einen Speicher 83. Der Prozessor 82 könnte zum Beispiel eine CPU und/oder eine GPU umfassen. Der Prozessor 82 kann Programmcodes aus dem Speicher 83 laden und ausführen. Dann kann der Prozessor 82 verschiedene hierin beschriebene Verfahren im Zusammenhang mit der Verarbeitung des 3-D-Bilddatensatzes ausführen. Zum Beispiel könnte der Prozessor 82 auf Grundlage des Programmcodes eine hierarchische Kachelung auf den 3-D-Bilddatensatz 100 anwenden.
  • Während 1 ein Szenario illustriert, in dem die Recheneinheit separat von der bildgebenden Einrichtung 91 ausgebildet ist, können diese auch integriert bereitgestellt werden.
  • 2 ist ein Flussdiagramm eines beispielhaften Verfahrens. Das Verfahren gemäß 2 kann von einem Prozessor basierend auf Programmcodes ausgeführt werden. Zum Beispiel könnte das Verfahren gemäß 2 vom Prozessor 82 basierend auf einem Programmcode, der aus dem Speicher 83 geladen wird, ausgeführt werden. In 2 sind optionale Blöcke mit gestrichelten Linien dargestellt.
  • Zunächst erfolgt im optionalen Block 1001 das Erfassen eines 3-D-Bilddatensatzes. Dieser bildet ein Bildvolumen ab. Der 3-D-Bilddatensatz weist eine Anzahl von ABCnativen Voxeln auf.
  • Dann erfolgt im Block 1002 das Erhalten des 3-D-Bilddatensatzes. Block 1002 kann eine Übertragung umfassen (vgl. 1). Block 1002 kann zum Beispiel im Zusammenhang mit einem bestimmten Speicherformat, d. h. einem bestimmten Container bzw. Format von Datenpaketen, in dem der 3-D-Bilddatensatz beinhaltet ist, definiert sein.
  • Dann erfolgt im Block 1003 das Anwenden einer hierarchischen Kachelung auf den 3-D-Bilddatensatz aus Block 1002. Dabei werden durch die Kachelung mehrere Hierarchieebenen definiert. Die im 3-D-Bilddatensatz beinhaltete Information wird dabei im Zusammenhang mit Voxeln strukturiert, welche in Kacheln auf den verschiedenen Hierarchieebenen beinhaltet sind. Die Voxel der verschiedenen Kacheln können von den nativen Voxeln des 3-D-Bilddatensatzes abweichen.
  • Als allgemeine Regel muss das Speicherformat des 3-D-Bilddatensatzes vor und nach der Kachelung nicht notwendigerweise korrelieren mit der hierarchischen Kachelung. Zum Beispiel könnten separate Steuerdaten erstellt werden, welche die hierarchische Kachelung im Zusammenhang mit dem 3-D-Bilddatensatz implementieren.
  • Jede Kachel kann eine bestimmte Voxelanzahl aufweisen. Z.B. können die Kacheln derselben Hierarchieebene dieselbe Voxelanzahl aufweisen.
  • Die Voxel auf einer oberen Hierarchieebene weisen eine längere Kantenlänge auf, als die Voxel auf einer unteren Hierarchieebene. D.h., die Voxelgröße nimmt hin zu oberen Hierarchieebenen zu.
  • Insbesondere kann die Abtastung mit den Strukturen auf den Voxeln der oberen Hierarchieebene wiedergegeben werden, also niedriger sein als die native Auflösung des 3-D-Bilddatensatzes. Dies kann eine Mittelung oder eine andere Technik der Abwärtswandlung von Information in dem 3-D-Bilddatensatz im Rahmen von Block 1002 erforderlich machen, um einen Kontrastwert für die Voxel auf oberen Hierarchieebenen zu erhalten.
  • Nachfolgend werden im Zusammenhang mit den 3, 4 und 5 Details zu Block 1003 beschrieben, d.h. zum Anwenden der Kachelung. Zum Beispiel ist in 3 links der 3-D-Bilddatensatz 100 dargestellt. Dieser weist eine Anzahl von (A, B, C) Voxeln auf (in 3 sind die Voxel nicht eingezeichnet).
  • In 3 ist rechts die Kachelung 201 dargestellt und zwar insbesondere auf der obersten Hierarchieebene 251. Es befinden sich acht Kacheln 211-214 auf der obersten Hierarchieebene der Kachelung 201 (in 3 sind aus Gründen der Einfachheit rechts aber nur vier Kacheln 211-214 dargestellt, wobei in 3 links die acht Kacheln mit gestrichelten Linien dargestellt sind).
  • Die Zerlegung des Bildvolumens des 3-D-Bilddatensatzes 100 in acht Kacheln ist aber nur ein Beispiel. Es könnten auch andere Kantenlängen für die Kacheln 211 - 214 verwendet werden.
  • 3 illustriert Kacheln 211-214 der obersten Hierarchieebene 251. Die Zerlegung kann hin zu niedrigeren Hierarchieebenen fortgesetzt werden: In 4 ist wiederum eine weitere Zerlegung der Kachel 213 aus Hierarchieebene 251 dargestellt. In 4 ist gezeigt, dass eine Kachel 213-1 auf der nächst niedrigeren Hierarchieebene 252 als Teilvolumen des (Teil-)volumens der Kachel 213 definiert ist.
  • In 4 ist auch dargestellt, dass die Kachel 213-1 eine Anzahl von Voxel 290 umfasst. Die Volxelanzahl pro Kachel 213-1 kann von Hierarchieebene zu Hierarchieebene 251, 252 variieren oder kann auch konstant gewählt sein.
  • 5 illustriert Aspekte im Zusammenhang mit der geschachtelten, hierarchischen Struktur der Kachelung 201. 5 illustriert die Baumstruktur der Kachelung 201. In 5 ist gezeigt, wie die Kacheln ausgehend von der oberen Hierarchieebene 251 hin zu den unteren Hierarchieebenen 252, 253 auseinander abgeleitet bzw. als Teilvolumina definiert werden, um die Hierarchie zu definieren. Zum Beispiel ist in 5 dargestellt, dass die Kacheln 213-1 - 214-3 jeweils aus der Kachel 213 abgeleitet werden, d.h. unterschiedliche Teilvolumina des Volumens der Kachel 213 beinhalten. Dies entspricht einer Schachtelung der Kacheln unterschiedlicher H ierarch ieebenen.
  • Solche Techniken beruhen auf der Erkenntnis, dass ein kompletter 3-D-Bilddatensatz 100 mit einer Anzahl von ABC Voxeln 290 (vgl. 3) typischerweise nicht in den Speicher eines Prozessors im Zusammenhang mit der Verarbeitung passt (vgl. 1). Andererseits sind Defekte nur in einem kleinen Teilbereich des Bildvolumens des 3-D-Bilddatensatzes beinhaltet, zum Beispiel bis hin zu wenigen NMP Voxeln, wobei N, M, P jeweils ungefähr 30 oder weniger ist. Zum Untersuchen von Eigenschaften dieser Defekte ist typischerweise nur der entsprechende Bruchteil von Voxeln des gesamten 3-D-Bilddatensatzes benötigt. Ein solcher geringer Bruchteil kann ohne weiteres im Arbeitsspeicher gehalten werden. Zum Beispiel können die Kacheln Teile des gesamten abgebildeten Bereichs des 3-D-Bilddatensatzes beinhalten. Zum Beispiel können die Kacheln zusammen mit ihrer Position im gesamten abgebildeten Volumen gespeichert werden. Die Kacheln können so gespeichert werden, dass die in den Kacheln beinhalteten Voxel individuell verarbeitet werden können.
  • In manchen Beispielen kann es erstrebenswert sein, dass benachbarte Kacheln einen bestimmten Überlappbereich aufweisen (ein solcher Überlappbereich ist in den Beispielen der 3-5 nicht gezeigt). Manche Algorithmen, die im Zusammenhang mit der Verarbeitung eingesetzt werden können, können durch den Überlapp besonders genau operieren. Ein Beispiel wäre ein Glättungsalgorithmus.
  • Nachfolgend wird ein praktisches Beispiel im Zusammenhang mit der Anwendung der hierarchischen Kachelung gegeben. Dieses Beispiel betrifft die Erkennung eines Defekts in einem Transistor-Gate als Halbleiter-Bauelement. Wenn das Gate eine Strukturgröße aufweist, die in eine Kachel mit NMP Voxeln auf einer entsprechenden Hierarchieebene passt, können alle Kacheln der entsprechenden Hierarchieebene im Zusammenhang mit der Erkennung eines Transistor-Gates individuell verarbeitet werden. Zum Beispiel könnte zunächst überprüft werden, ob eine bestimmte Kachel der entsprechenden Hierarchieebene ein Transistor-Gate abbildet. Sofern dies zutrifft, kann dann überprüft werden, ob ein Defekt vorliegt oder nicht. In einem solchen Prozess können die einzelnen Kacheln sequenziell oder parallel verarbeitet werden. Die Parallelisierung kann zum Beispiel auf einer GPU besonders effizient implementiert werden. Ohne eine geeignete Kachelung des Abbildungsvolumens kann es mit limitierten Rechenressourcen sogar unmöglich werden, die Defekte zu erkennen.
  • Das Anwenden der Kachelung auf den 3-D-Bilddatensatz kann ohne Informationsverlust geschehen. Zum Beispiel könnte die Voxelgröße der Voxel 290 in Kacheln 213-2-1 auf der untersten Hierarchieebene 253 (vgl. 5) gleich der nativen Voxelgröße des 3-D-Bilddatensatzes sein. Damit der Kontext von Strukturen, die von einer einzelnen Kachel abgebildet werden, nicht verloren geht, kann der hierarchische Ansatz gemäß 5 verwendet werden (d.h. eine Schachtelung der Kacheln der verschiedenen Hierarchieebenen ineinander). Ohne den hierarchischen Ansatz könnte zum Beispiel nicht festgestellt werden, ob eine Linien-Struktur, die durch eine Kachel auf der untersten Hierarchieebene abgebildet wird, Teil eines Logik-Halbleiter-Bauelements oder Teil eines Speicherbausteins ist. Durch den hierarchischen Ansatz kann aber eine Beziehung zwischen Strukturen in Kacheln auf unterschiedlichen Hierarchieebenen zurückverfolgt werden.
  • Um eine besonders gute Korrespondenz zwischen dem von den Kacheln einer jeweiligen Hierarchieebene abgebildeten Teilbereichen des Messvolumens und physikalisch-technisch relevanter Information im Zusammenhang mit Strukturen zu ermöglichen, kann es als allgemeine Regel möglich sein, dass die Voxelgrößen der Kacheln auf den Hierarchieebenen basierend auf den Strukturgrößen der Halbleiter-Bauelemente bestimmt werden.
  • Alternativ oder zusätzlich wäre es auch möglich, dass die Voxelanzahl der Kacheln auf den Hierarchieebenen basierend auf den Strukturgrößen der Halbleiter-Bauelemente bestimmt wird.
  • Dies wird anhand des folgenden Beispiels erläutert. Zum Beispiel könnte eine hierarchische Kachelung 201 mit drei Hierarchieebenen 251-253 vorliegen. Eine bestimmte Kachel 213-2-1 auf untersten Hierarchieebene 253 identifiziert eine Loch-Struktur. Die Kachel 213-2 auf der mittleren Hierarchieebene 252 (welche die bestimmte Kachel 213-2-1 auf der untersten Hierarchieebene 253 mit der Loch-Struktur beinhaltet) identifiziert wiederum eine Transistor-Zelle. Die Kachel 213 auf der obersten Hierarchieebene 251 (welche die Kacheln 213-2, 213-2-1 auf der mittleren und unteren Hierarchieebene 252, 253 mit Transistor-Zelle und Loch-Struktur beinhaltet) identifiziert eine bestimmte Logikgruppe von Halbleiter-Bauelementen. Das Beispiel beschreibt dabei eine Logiklinie ausgehend von einer kleinen Voxelgröße (für detaillierte Informationen zu Strukturen mit kleinen Strukturgrößen) hin zu einer größeren Voxelgröße (für Kontextinformation zu Strukturen mit großen Strukturgrößen). Es kann auch eine Logiklinie ausgehend von großen Voxelgrößen hin zu kleineren Voxelgrößen verfolgt werden: zum Beispiel könnten zunächst Logikbaugruppen im Abbildungsvolumen in einer Kachel 213 der obersten Hierarchieebene 213 identifiziert werden; dann könnten auf der nächstniedrigen Hierarchieebene 252 sogenannte Vias (als senkrecht zu Halbleiterschichten orientierte leitende Verbindungen zwischen verschiedenen Halbleiterschichten) in einer aus der Kachel 213 abgeleiteten Kachel 213-2 identifiziert werden; schließlich könnten auf der nächstniedrigeren Hierarchieebene 253 die Leiterbahnen der Vias in Bezug auf Fehlstellen oder ihren Überlapp mit Metallschichten in einer weiteren abgeleiteten Kachel 213-2-1 überprüft werden.
  • Die Kachelung 201 gemäß 5 ist ein Beispiel. In den verschiedenen hierin beschriebenen Beispielen sind Abwandlungen und Varianten der Kachelung 201 gemäß 5 denkbar.
  • Zum Beispiel wäre es möglich, dass die Voxelgröße für Kacheln von einer Hierarchieebene zur nächsten Hierarchieebene gemäß unterschiedlichen Faktoren skaliert. Das heißt, dass die Voxelgröße zwischen Kacheln auf unterschiedlichen Hierarchieebenen nichtlinear skalieren kann. Dies kann zum Beispiel vorteilhaft sein, wenn zunächst große Strukturen (zum Beispiel Logikbaugruppen oder Speichersteine) abgebildet werden sollen, nämlich in Kacheln auf einer oberen Hierarchieebene; und dann nur zwei weitere Hierarchieebenen für individuelle Transistor-Zeilen und Speicher-Zeilen sowie geometrische Grundformen wie Linie oder Loch) benötigt werden. In einem solchen Fall skaliert die Voxelgröße von der ersten Hierarchieebene zur zweiten Hierarchieebene besonders stark, zum Beispiel um einen Faktor hundert; während zwischen der zweiten Hierarchieebene und der dritten Hierarchieebene die Voxelgröße nur moderat skaliert, zum Beispiel um einen Faktor zwei. Dies ermöglicht die Anpassung der tatsächlichen Voxelgröße in den Kacheln unterschiedlicher Hierarchieebenen in Abhängigkeit von Strukturgrößen von Strukturen.
  • Es können auch unterschiedliche Kantenlängen für die Kacheln auf unterschiedlichen Hierarchieebenen verwendet werden. Das bedeutet, dass die Kantenlänge von Kacheln auf unterschiedlichen Hierarchieebenen unterschiedlich für unterschiedliche Kanten skaliert. Dadurch können besonders gut Strukturen mit Aspektverhältnissen ungleich 1 abgebildet werden.
  • Die hierein beschriebenen Techniken im Zusammenhang mit der hierarchischen Kachelung 201 beruhen auch auf der Erkenntnis, dass unterschiedliche Halbleiter-Bauelemente auf niedriger Auflösung/höchster Abtastung oftmals dieselben geometrischen Strukturen aufweisen, also etwa geometrische Grundformen wie z.B. Linien, Löcher oder Punkte. Geometrische Grundformen bezeichnen hier also z.B. die elementaren Bausteine, aus denen man Halbleiter Bauelemente aufbaut - diese kommen typischerweise aus sogenannten „design rules“, welche sagen, welche Formen mit einer Lithographie-Maschine gedruckt werden können. Unterschiedlichste Halbleiter-Bauelemente, wie zum Beispiel Transistoren, Kondensatoren, Vias, Gates etc. sind also typischerweise aus einem relativ begrenzten, gemeinsamen Formenschatz von geometrischen Grundformen zusammengesetzt. Die geometrischen Grundformen können also funktionale Gruppen (d.h. aus geometrischen Grundformen zusammengesetzte Gruppen) wie die Halbleiter Bauelemente ausbilden. Diese kleinen Strukturen werden mit besonders hoher Genauigkeit hergestellt. Defekte treten selten auf, wenn der Herstellungsprozess gut definiert ist. Dies kann ausgenutzt werden, um die Größe der gespeicherten Daten zu reduzieren. Zum Beispiel könnten Kacheln auf einer unteren Hierarchieebene, die identische Strukturen abbilden, teilweise verworfen werden. Es ist im Allgemeinen möglich, dass zumindest einige Kacheln auf einer Hierarchieebene in Abhängigkeit von Redundanzen in den abgebildeten Strukturen verworfen werden. Dies kann auch als Wörterbuch-Ansatz bezeichnet werden: so wäre es möglich, dass für jede Struktur lediglich ein repräsentativer Datensatz in Form einer entsprechenden Kachel gespeichert wird und redundante Kacheln verworfen werden. Es ist dann optional möglich, dass Meta-Daten im Zusammenhang mit den verworfenen Kacheln gespeichert werden, also zum Beispiel die Anzahl und/oder Position und/oder Orientierung etc. der entsprechenden Strukturen in den verworfenen Kacheln.
  • Als praktisches Beispiel: ein Bildvolumen des 3-D-Bilddatensatzes umfasst 10.000 Löcher. Ein einzelnes Loch kann zum Beispiel durch eine Kachel einer unteren Hierarchieebene mit NMP Voxeln passender Voxelgröße abgebildet werden. Das gesamte Bildvolumen weist ABC Voxel auf. Dann kann es möglich sein, anstatt das gesamte Bildvolumen mit ABC Voxeln zu speichern und zu verarbeiten, lediglich das Teilvolumen mit NMP Voxeln zu speichern, zum Beispiel zusammen mit Meta-Daten, welche die Positionen der 10.000 Löcher im Bildvolumen indizieren, zum Beispiel in einem 3-D-Koordinatensystem, das etwa mit der Kachelung korreliert. Dies reduziert nicht nur den Speicherbedarf und den Verarbeitungsaufwand drastisch, sondern es ermöglicht es auch, Strukturen ein zweites Mal besonders effizient aufzufinden, örtliche Korrelationen zwischen denselben Strukturen und Strukturen unterschiedlichen Typs auszuwerten, etc.
  • Dabei kann - zum Beispiel je nach Anwendungsgebiet - eine vergleichsweise sensitive oder robuste Definition für Redundanzen verwendet werden. D. h. es können unterschiedliche Definitionen für Gleichartigkeit von Strukturen (was zum Verwerfen von Kacheln führen kann) verwendet werden. Zum Beispiel können derart Strukturen, die eine zu große Abweichung von einem Klassen-Repräsentanten aufweisen, durch Beibehalten der entsprechenden Kachel im gespeicherten Datensatz behalten werden. Derart können Defekte und Anomalien gut aufgefunden werden.
  • Voranstehend wurden verschiedene Techniken im Zusammenhang mit dem Anwenden einer hierarchischen Kachelung 201 auf einen 3-D-Bilddatensatz 100 beschrieben. Diese hierarchische Kachelung 201 ermöglicht eine besonders effiziente Verarbeitung des derart vorbehandelten 3-D-Bilddatensatzes: Wieder Bezug nehmend auf 2: nach dem Anwenden der Kachelung auf den 3-D-Bilddatensatz 100 erfolgt in Block 1004 eine Verarbeitung des 3-D-Bilddatensatzes, unter Verwendung der hierarchischen Kachelung.
  • Diese Verarbeitung kann multihierarchisch erfolgen: D.h. die Verarbeitung kann unter Ausnutzung der hierarchischen Kachelung 201 erfolgen.
  • Als allgemeine Regel können in den verschiedenen hierin beschriebenen Beispielen unterschiedliche Techniken im Zusammenhang mit der Verarbeitung des 3-D-Bilddatensatzes in Block 1004 angewendet werden. Zum Beispiel kann je nach Anwendungsgebiet der hierin beschriebenen Techniken - d. h. insbesondere je nach Informationsgehalt des 3-D-Bilddatensatzes - eine bestimmte Präferenz im Zusammenhang mit Verarbeitungstechniken bestehen. Beispielhafte Techniken im Zusammenhang mit der Verarbeitung des 3-D-Bilddatensatzes sind in 6 beschrieben.
  • 6 illustriert Aspekte im Zusammenhang mit der Verarbeitung eines 3-D-Bilddatensatzes, auf welchen eine hierarchische Kachelung angewendet wurde. Dies bedeutet, dass die verschiedenen Blöcke aus 6 zum Beispiel im Zusammenhang mit dem Block 1004 aus 2 ausgeführt werden könnten.
  • Dabei ist es nicht erforderlich, dass alle in 6 beschriebenen Varianten zur Verarbeitung des 3-D-Bilddatensatzes mit hierarchischer Kachelung angewendet werden. Es könnten nur einzelne der in 6 wiedergegebenen Varianten verwendet werden. Sofern mehrere Varianten zur Verarbeitung des 3-D-Bilddatensatzes mit hierarchischer Kachelung verwendet werden, so kann die Reihenfolge von der in 6 wiedergegebenen Reihenfolge abweichen.
  • In Block 2001 erfolgt das Durchführen einer Annotierung. Im Rahmen der Annotierung werden Labels an Strukturen vergeben.
  • Die Labels können die Strukturen in eine oder mehrere Klassen einer Vielzahl von vorgegebenen Klassen einteilen. Die Labels können also mit unterschiedlichen Struktur-Klassen assoziiert sein. Dies bedeutet, dass eine logische Beschreibung von Strukturen durch die Labels vorgenommen werden kann. Es ist nicht unbedingt erforderlich, dass auch eine Information über die Position und/oder Orientierung entsprechender Strukturen in den Kacheln im Zusammenhang mit den Labels bereitgestellt wird. Dies ist optional. Zum Beispiel wäre es möglich, dass die Labels die Strukturen im Bildraum segmentieren oder mit einer Begrenzungs-Box versehen.
  • Als allgemeine Regel kann das Vergeben der Labels an die Strukturen in Block 2001 automatisch, teilautomatisch oder manuell erfolgen. Z.B. könnte ein Klassifikationsalgorithmus für eine (teil-)automatische Implementierung verwendet werden. Insbesondere könnte ein Objekterkennungsalgorithmus verwendet werden. Dieser kann optional eine Segmentierung der erkannten Strukturen ermöglichen. Während ein Objekterkennungsalgorithmus ohne Segmentierung zum Beispiel eine sogenannte Begrenzungs-Box um die Strukturen legen kann, kann ein Objekterkennungsalgorithmus mit Segmentierung eine besonders feine Abgrenzung der entsprechenden Struktur gegenüber dem Hintergrund auf Voxel-Ebene erfolgen. Deshalb ermöglicht es einem Objekterkennungsalgorithmus mit Segmentierung bestimmte Strukturen besonders genau zu extrahieren.
  • Dabei werden im Allgemeinen die Labels an die Strukturen in den Kacheln auf den mehreren Hierarchieebenen vergeben. Weil die Kacheln auf den unterschiedlichen Hierarchieebenen im Allgemeinen unterschiedliche Größen und auch unterschiedliche Voxelgrößen aufweisen, sind auch die abgebildeten Strukturen von Hierarchieebene zu Hierarchieebene verschieden. Beispielsweise könnten besonders kleine Strukturen, wie Gräben oder Löcher oder andere geometrische Grundformen in den Kacheln auf der untersten Hierarchieebene abgebildet werden; während besonders ausgedehnte oder große Strukturen, etwa ganze Halbleiter-Bauelemente oder sogar Logikgruppen umfassend mehrere Halbleiter-Bauelemente, in denen Kacheln auf der obersten Hierarchieebene abgebildet werden. Entsprechend können auch die Labels von Hierarchieebene zu Hierarchieebene variieren. Zum Beispiel wäre es möglich, dass die Labels der Strukturen in Kacheln auf einer unteren Hierarchieebene aus einer ersten Kandidatenmenge ausgewählt sind, welche geometrische Grundformen (zum Beispiel Löcher, Linien oder Punkte) umfasst. Hingegen können die Labels der Strukturen in Kacheln auf einer oberen Hierarchieebene aus einer zweiten Kandidatenmenge ausgewählt sein, welche die Halbleiter-Bauelemente, eine logische Gruppe mit mehreren Halbleiter-Bauelementen, Leiterbahnen und/oder Lithographie-Marker umfasst. Dies bedeutet, dass die verfügbaren Labels je nach Hierarchieebene angepasst werden können.
  • Block 2002 beschreibt das Durchführen einer Segmentierung. Wie obenstehend schon genannt, kann die Segmentierung auch im Zusammenhang mit dem Vergeben von Labels durchgeführt werden. Z.B. könnte einfache, beispielhafte Segmentierung eine Assoziierung von Voxeln gemäß den Labels „Vordergrund“ und „Hintergrund“ vornehmen. Es ist aber nicht in allen Beispielen erforderlich, dass auch eine Klassifizierung der segmentierten Strukturen im Zusammenhang mit der Segmentierung erfolgt. Zum Beispiel könnten lediglich Bereiche ein und desselben Kontrasts im Rahmen der Segmentierung in Block 2002 bestimmt werden, ohne aber eine Klassifikation vorzunehmen. Auch in einem solchen Beispiel kann es hilfreich sein, wenn die Segmentierung auf Grundlage der hierarchischen Kachelung 201 operiert, d. h. zum Beispiel eine Segmentierung parallel in Kacheln unterschiedlicher Hierarchieebenen 251-253 durchgeführt wird. Derart kann nämlich vermieden werden, dass die Segmentierung durch einen zu großen Detailgrad von Strukturen auf den unterschiedlichen Hierarchieebenen beeinflusst wird. Die Segmentierung kann besonders zügig durchgeführt werden.
  • Segmentierte Strukturen können zum Beispiel im Zusammenhang mit der Metrologie verwendet werden. Zum Beispiel können Geometrie-Parameter bestimmt werden und überprüft werden. Die Segmentierung kann in diesem Zusammenhang zum Beispiel eine Kantenextraktion entlang von Halbleiter-Schichten oder eine Oberflächenextraktion von Halbleiter-Schichten ermöglichen. Dadurch kann eine besonders hohe Auflösung, sogar höher als die native Auflösung des 3-D-Bilddatensatzes, im Zusammenhang mit der Metrologie verwendet werden. Auch ein CAD-Modell könnte extrahiert werden.
  • Block 2003 beschreibt das Durchführen einer Registrierung. Die Registrierung kann bezüglich eines Referenz-Datensatzes erfolgen. Zum Beispiel kann es mittels der Registrierung möglich sein, die Anordnung der Halbleiter-Struktur im 3-D-Bilddatensatz in Bezug auf eine CAD-Maskendatei zu bestimmen.
  • Im Zusammenhang mit der Registrierung werden typischerweise zwei abgebildete Volumen aufeinander registriert, indem diese Volumen miteinander verglichen werden. Grundsätzlich sollte eine möglichst große Auflösung im Zusammenhang mit der Abbildung der Volumina verwendet werden, um eine genaue Registrierung zu ermöglichen. Für 3-D-Bilddatensätze 100, welche Halbleiter-Bauelemente abbilden, ist dies gemäß Referenzimplementierung nicht immer möglich, weil die Datenmenge besonders groß ist. Das Ausschneiden von Teilvolumina aus dem gesamten Bildvolumen ist aufgrund des repetitiven Charakters von Halbleiter-Strukturen auf Wafern jedoch oftmals nicht möglich. Zum Beispiel kann ein Wafer oftmals eine repetitive Anordnung von gleichen Strukturen umfassen, die später unterschiedliche Chips bilden. Deshalb kann die Registrierung in Block 2003, wie nachfolgend im Detail beschrieben, die Kachelung 201 berücksichtigen.
  • Zum Beispiel könnte die Registrierung von Strukturen in den Kacheln auf den mehreren Hierarchieebenen 251-253 erfolgen. Dies bedeutet, dass die Registrierung jeweils für jede der verschiedenen Hierarchieebenen 251-253 durchgeführt werden kann.
  • Zum Beispiel könnte in einem solchen Ansatz die Genauigkeit der Registrierung iterativ verfeinert werden. Die Registrierung könnte zum Beispiel iterativ ausgehend von Kacheln auf einer höheren Hierarchieebene 251 hin zu Kacheln auf einer unteren Hierarchieebene 252, 253 durchgeführt werden. Dies kann bedeuten, dass zunächst eine grobe Registrierung mit den vergleichsweise großen Voxeln der Kacheln auf der obersten Hierarchieebene durchgeführt wird; und dann diese grobe Registrierung nach und nach verfeinert wird, indem die zunehmend kleineren Voxeln der Kacheln auf niedrigeren Hierarchieebenen verwendet werden. Dies kann eine besonders effiziente und zügige Registrierung ermöglichen.
  • In Block 2004 erfolgt die Extraktion von Strukturen. Zum Beispiel können Anomalien von Strukturen erkannt werden, die nicht mit vorgegebenen Referenzstrukturen übereinstimmen. Es wäre dann möglich, dass die entsprechenden Kacheln, die solche Anomalien abbilden, extrahiert werden und dem Benutzer über eine Benutzerschnittstelle dargestellt werden. Der Benutzer kann dann entscheiden, ob eine neue Klasse definiert werden muss oder ob ein Defekt vorliegt.
  • Im Zusammenhang von Block 2004 könnte zum Beispiel auch eine Region von Interesse (engl. „region of interest“) definiert werden. Zum Beispiel könnte ein Benutzer festlegen, dass solche Bereiche des Bildvolumens untersucht werden sollen, in denen dicht gepackte Linien innerhalb von Speicherbausteinen betrachtet werden. Durch die Verwendung der multihierarchischen Kachelung 201 kann Kontextinformation über den Zusammenhang zwischen Linien, die als Strukturen in Kacheln einer niedrigen Hierarchieebene abgebildet werden, und Speicherbausteinen, die als Strukturen in Kacheln einer oberen Hierarchieebene abgebildet werden, zur Identifizierung der Region von Interesse verwendet werden.
  • Im Zusammenhang mit Block 2004 könnte zum Beispiel auch ein CAD-Modell der Halbleiter-Bauelemente erstellt werden, d.h. eine vereinfachte geometrische Repräsentation von extrahierten Strukturen kann auf der jeweiligen assoziierten Position positioniert werden. Zum Beispiel könnte ein Linien-Platzhalter verwendet werden. Zum Beispiel könnte eine Spline-Linie verwendet werden, um den Rand einer segmentierten Struktur zu repräsentieren. Wenn Halbleiter-Bauelemente mit mehreren Schichtebenen vorliegen, kann eine 2-D-Segmentierung jeder einzelnen Schicht erfolgen. Dann können mehrere Ebenen in einer CAD-Modell-Datei erzeugt werden.
  • In Block 2005 kann eine Anomaliedetektion erfolgen. Hier können Abweichungen der abgebildeten Strukturen von vorgegebenen Referenzen erkannt werden. Dazu können z.B. segmentierte Strukturen verwendet werden (vgl. Blöcke 2001 und 2002). Zum Beispiel kann ein Vergleich zwischen den extrahierten Strukturen gegenüber Referenzen erfolgen, um Anomalien zu detektieren. Zum Beispiel kann eine Differenzbildung erfolgen, und Regionen mit großer Differenz können als potentieller Defekt identifiziert werden.
  • Nachfolgend werden weitere Details im Zusammenhang mit den verschiedenen möglichen Verarbeitungsschritten gemäß 6 erläutert. Zunächst wird Bezug genommen auf Techniken im Zusammenhang mit der Vergabe von Labels an die Strukturen, d.h. es werden Details zu Block 2001 beschrieben. Ein entsprechendes Beispiel ist in 7 dargestellt.
  • 7 illustriert Aspekte im Zusammenhang mit der Vergabe von Labels an Strukturen 401-403. Insbesondere illustriert 7 Aspekte im Zusammenhang mit der Vergabe von multihierarchischen Labels.
  • In 7, oben ist ein 2-D-Schnitt durch die Kachel 213 dargestellt. Die Kachel 213 bildet eine Struktur 401 ab. Das Label 151 ist an die Struktur 401 vergeben. Dieses Label beschreibt „TRANSISTORZELLE“.
  • Die Kachel 213 ist auf der Hierarchieebene 251 und umfasst auch die Kachel 213-2-1 auf der Hierarchieebene 253 (vgl. 5). Die Kachel 213-2-1 bildet eine Struktur 402 ab. Das Label 152 ist eine Struktur 402 vergeben. Dieses Label 152 beschreibt „LOCH“.
  • Daraus kann ein multihierarchisches Label 159 abgeleitet werden, welches beschreibt: „TRANSISTORZELLE-LOCH“.
  • In 7, unten ist ein 2-D-Schnitt durch die Kachel 214 dargestellt. Die Kachel 214 bildet eine Struktur 403 ab. Das Label 153 dieser Struktur 403 beschreibt „SPEICHERZELLE“.
  • Die Kachel 214 ist auf der Hierarchieebene 251 umfasst auch die Kachel 214-1-1 auf der Hierarchieebene 253. Die Kachel 214-1-1 bildet die Struktur 402 ab, welche das Label 154 „LOCH“ aufweist. Das Label 154 umfasst im Beispiel der 7 auch eine Begrenzungs-Box 701 (engl. „bounding box“). Aus dem Label 153 und dem Label 154 kann ein multihierarchisches Label 158 „SPEICHERZELLEN-LOCH“ abgeleitet werden.
  • Dies bedeutet, dass für Strukturen 402 in einer Kachel 213-2-1, 214-1-1 einer unteren Hierarchieebene 253 Labels 151, 153 von Strukturen 401, 403 in einer entsprechenden Kachel 213, 214 auf einer oberen Hierarchieebene 251 vererbt werden können. Derart wird das multihierarchische, kombinierte Label 158, 159 erhalten.
  • Solchen Techniken liegt die Erkenntnis zugrunde, dass die Information von unterschiedlichen Hierarchieebenen durch die Kachelung effizient kombiniert werden kann, um derart zusätzliche Information abzuleiten. Während im Beispiel der 7 auf der großen Auflösung in den Kacheln 213, 214 auf der Hierarchieebene 251 Unterschiede zwischen den Strukturen 401, 403 klar erkenntlich sind, sind die Loch-Strukturen 402 auf der Hierarchieebene 253 in den Kacheln 213-2-1, 214-1-1 ohne Kontextinformation nicht unterscheidbar. Dies liegt daran, dass sowohl die Transistorzelle, wie auch die Speicherzelle ein Loch beinhalten, das nur in der feineren Auflösung in den Kacheln 213-2-1 und 214-1-1 auf der Hierarchieebene 253 sichtbar wird. Diese Löcher 402 sind in der groben Auflösung der Kacheln 213, 214 der Hierarchieebene 251 nicht sichtbar. Indem diese Information der Label 151, 153 in den Kacheln 213, 214 mit den Labeln 152, 154 in den Kacheln 213-2-1 und 214-1 - 1 kombiniert wird, kann das multihierarchische Label 158 bzw. 159 bestimmt werden. Dann kann eine Unterscheidung bei der Analyse vorgenommen werden. Dies kann erstrebenswert sein, weil - trotz des gleichartigen Aussehens der Löcher 402 in den Kacheln 213-2-1 und 214-1-1 - diese Löcher 402 unterschiedliche Funktionsweisen im Zusammenhang mit der Transistorzelle bzw. der Speicherzelle aufweisen können. Dies bedeutet, dass zum Beispiel die Toleranz gegenüber Defekten oder Verunreinigungen ganz unterschiedlich sein kann.
  • Die multihierarchischen Label 158-159 können auch die Verarbeitungsfähigkeiten verbessern. Zum Beispiel können Filter-Anfragen gezielt gestellt werden. Z.B. kann es im gesamten Messvolumen ABC möglich sein, die Struktur „SPEICHERZELLEN-LOCH“ mit einer Genauigkeit der kleinsten Voxelgröße zu lokalisieren. Insbesondere könnte man nach Extraktion der Positionen aller „SPEICHERZELLEN-LÖCHER“ Korrelationen zwischen den Positionen untersuchen, ohne die (auf kleinster Kachelhierarchie) gleich aussehenden „TRANSISTORZELLEN-LÖCHER“ mit dabei zu haben.
  • Ein beispielhaftes Vorgehen zum Vergeben der Labels und insbesondere der multihierarchischen Labels ist im Zusammenhang mit 8 beschrieben.
  • 8 ist ein beispielhaftes Flussdiagramm. Zum Beispiel könnte das Verfahren nach 8 im Zusammenhang mit Block 2001 aus 6 ausgeführt werden.
  • In Block 1011 erfolgt zunächst die Auswahl einer aktuellen Hierarchieebene 251-253. Zum Beispiel könnte die oberste, noch nicht bearbeitete Hierarchieebene 251-253 ausgewählt werden (d.h. in der ersten Iteration 1501 die oberste Hierarchieebene der Kachelung 201).
  • Dann erfolgt in Block 1012 das Vergeben von Labels an die in den verschiedenen Kacheln auf der aktuellen Hierarchieebene sichtbaren Strukturen. Zum Beispiel könnten die verschiedenen Kacheln sequenziell oder parallel verarbeitet werden. Das Vergeben der Labels kann manuell erfolgen. Auch eine (teil-)automatische Vergabe von Labels ist denkbar, z.B. unter Verwendung eines Objekterekennungsalgorithm us.
  • Dann werden in Block 1013 die Labels aus den oberen Hierarchieebenen an die in der aktuellen Hierarchieebene annotierten Strukturen vererbt, um die multihierarchischen Label zu erzeugen.
  • Schließlich wird in Block 1014 überprüft, ob noch eine weitere Hierarchieebene zu verarbeiten ist - dann werden gegebenenfalls in einer weiteren Iteration 1501 die Blöcke 1011-1013 erneut ausgeführt.
  • Das Vorgehen gemäß dem Verfahren aus 8 soll nachfolgend kurz in einem Beispiel beschrieben werden: in einer ersten Iteration 1501 wird eine bestimmte Region des Bildvolumens in ein oder mehreren Kacheln der obersten Hierarchieebene als „LOGIKEINHEIT“ annotiert (Block 1012); in einer zweiten Iteration 1501 wird ein Teil dieser als „LOIGIKEINHEIT“ annotierten Strukturen in ein oder mehreren Kacheln der nächstniedrigeren Hierarchieebene als „TRANSISTORZELLE“ annotiert (Block 1012); in der dritten Iteration 1501 wird dann innerhalb der als „TRANSISTORZELLE“ annotierten Strukturen eine Struktur als „LOCH“ annotiert (Block 1012). Diese Loch-Struktur erhält dann das multihierarchische Label „LOCH-TRANSISTORZELLE-LOGIKEINHEIT“, durch Vererbung (Block 1013).
  • Verschiedene Techniken beruhen auf der Erkenntnis, dass es manchmal aufwendig sein kann, alle Strukturen händisch zu annotieren. Deshalb werden im Zusammenhang mit 9 Beispiele beschrieben, die es ermöglichen, die Annotierung teilweise oder vollautomatisch durchzuführen.
  • 9 ist ein beispielhaftes Flussdiagramm. Zum Beispiel könnte das Verfahren nach 9 als Teil von Block 1012 aus 8 durchgeführt werden. 9 illustriert Aspekte im Zusammenhang mit dem Propagieren von Labels zwischen Strukturen, d.h. die automatische Vergabe von Labels an bisher nicht mit Label versehene Strukturen.
  • Das manuelle Annotieren von allen Strukturen innerhalb eines Bildvolumens kann aufwendig sein. Unter der Verwendung von Bildverarbeitungstechniken, beispielsweise Kreuzkorrelation, oder maschinellem Lernen kann eine Propagation von Labels zwischen Strukturen erfolgen. Dies bedeutet, dass es beispielsweise ausreichend ist, wenn lediglich einige Strukturen händisch mit einem Label versehen werden; ein entsprechender Propagationsalgorithmus kann dann alle gleichartigen Strukturen auffinden und automatsch mit entsprechenden Labels versehen. Ein solches Verfahren kann auch im Zusammenhang mit einer multihierarchischen Kachelung angewendet werden: Hier können die Labels aus einer oder einigen Kacheln auf alle übrigen Kacheln derselben Hierarchieebene propagiert werden.
  • Eine solche Technik ist in 9 dargestellt. Die Blöcke aus 9 könnten z.B. als Teil von Block 1012 in 8 durchgeführt werden. In Block 1021 wird zunächst eine manuelle Annotierung von einigen Strukturen in ein oder mehreren Kacheln der jeweils aktiven Hierarchieebene (vergleiche 8: Block 1011) vorgenommen.
  • Dann wird in Block 1021A überprüft, ob die Annotierung abgeschlossen ist. Sofern noch nicht alle Strukturen Labels aufweisen, wird Block 1022 durchgeführt.
  • In Block 1022 wird eine Propagation der Labels durchgeführt, mittels eines Propagationsalgorithmus 1016. Der Propagationsalgorithmus 1016 kann z.B. einen Mustervergleich und/oder einen Objekterkennungsalgorithmus umfassen. Der Propagationsalgorithmus 1016 könnte einen Klassifikator umfassen. Der Propagationsalgorithmus 1016 könnte Techniken des maschinellen Lernens verwenden. Es wäre zum Beispiel möglich, dass der Propagationsalgorithmus 1016 auf Techniken einer Schwellenwert-Segmentierung und unter Erkennung von verbundenen Bereichen operiert. Es können aber auch kompliziertere Techniken, beispielsweise künstliche neuronale Netzwerke mit maschinellem Lernen verwendet werden. Diese künstlichen neuronalen Netzwerke sind besonders robust und können flexibel eingesetzt werden. Zum Beispiel kann das Training von Gewichten der künstlichen neuronalen Netzwerke auf Grundlage eines Trainings-Datensatzes erfolgen.
  • Um eine effiziente und präzise Vergabe von Labels zu ermöglichen, kann eine Rückkopplungsschleife mit mehreren Iterationen 1502 um die Propagation der Annotierung in Block 1022 implementiert werden. Dies ist in 9 im Zusammenhang mit den optionalen Blöcken 1023 und 1024 dargestellt.
  • In Block 1023 wird überprüft, ob die Annotierung auf Grundlage der Propagation in Block 1022 der aktuellen Iteration 1502 eine ausreichende Genauigkeit aufweist. Zum Beispiel wäre es möglich, dass bestimmte propagierte Labels dem Benutzer über eine Benutzerschnittstelle zusammen mit den entsprechenden Strukturen präsentiert werden. Dann könnte der Benutzer spezifizieren, ob die Vergabe von Labels in diesen Fällen passend oder unpassend war.
  • In Abhängigkeit von dem entsprechenden Feedback erfolgt dann in Block 1024 ggf. eine Anpassung des Propagationsalgorithmus. In diesem Zusammenhang wäre es möglich, dass Techniken des maschinellen Lernens eingesetzt werden, zum Beispiel Backpropagation, um Gewichte eines künstlichen neuronalen Netzwerks, das den Propagationsalgorithmus 1016 implementiert, anzupassen. In Abhängigkeit von dem angepassten Propagationsalgorithmus 1016 wird dann die Propagation der Annotierung in einer erneuten Iteration 1502 von Block 1022 durchgeführt.
  • Wenn die Annotierung gemäß dem Check in Bock 1023 ausreichend genau ist, kann die Propagation der Annotierung in einer weiteren Iteration 1052 fortgesetzt werden, jedoch ohne Block 1024 auszuführen.
  • Das Beispiel aus 9 illustriert ein interaktives Online-Training des Objekterkennungsalgorithmus 1016, welches während dem Durchführen der Propagation angewendet wird. In anderen Beispielen wäre aber auch ein Ende-zu-Ende-Training des Propagationsalgorithmus denkbar. Ein entsprechendes Beispiel ist im Zusammenhang mit 10 dargestellt.
  • 10 illustriert ein Flussdiagramm eines beispielhaften Verfahrens. Dabei wird in Block 1051 der 3-D-Bilddatensatz 100 mitsamt angewendeter Kachelung und Labels erhalten. Das bedeutet, dass die in den verschiedenen Kacheln der Kachelung enthaltenen Strukturen bereits mit Labels versehen, z.B. durch Verwendung des Verfahrens nach 9 - also mit Verwendung des Propagationsalgorithmus 1016.
  • Dann kann in Block 1052 und 1053 ein Ende-zu-Ende-Training des Propagationsalgorithmus 1016 erfolgen. Im Beispiel der 10 erfolgt das Ende-zu-Ende-Training also offline, d. h. nach Abschluss der Propagation der Labels.
  • Das bedeutet, dass in Block 1052 ein Vergleich der z.B. mittels des Propagationsalgorithmus 1016 erstellten Labels mit einer Referenz - z.B. einer händischen Verifikation erfolgt. In Block 1053 wird dann der Propagationsalgorithmus basierend auf einer Abweichung aus Block 1052 angepasst. Für die nächste Ausführung der Propagation kann auf den angepassten Propagationsalgorithmus 1016 zurückgegriffen werden.
  • Voranstehend wurden also Techniken beschrieben, um Labels an Strukturen 401-403 zu vergeben. Insbesondere wurden Techniken beschrieben, um multihierarchische Labels 158, 159 an Strukturen in Kacheln auf unterschiedlichen Hierarchieebenen zu vergeben. Aufgrund der großen zu verarbeitenden Datenmenge ist ein hoher Automatisierungsgrad bei der Erstellung der multihierarchischen Labels 158, 159 erstrebenswert. Eine entsprechende Möglichkeit, um die multihierarchischen Labels 158, 159 effizient zu bestimmen, ist im Zusammenhang mit 11 beschrieben.
  • 11 ist ein Flussdiagramm eines beispielhaften Verfahrens. Zum Beispiel könnte das Verfahren nach 11 die Blöcke 1012 und 1013 aus 8 implementieren.
  • 11 illustriert Aspekte im Zusammenhang mit der Bestimmung von Labels 151-154 für Strukturen 401-403 sowie im Zusammenhang mit der Bestimmung von kombinierten, multihierarchischen Labels 158, 159.
  • Im Block 1061 werden die Kacheln auf der obersten Hierarchieebene 251 selektiert. Dann erfolgt in Block 1062 das Bestimmen von Label-Kandidaten für Strukturen in diesen Kacheln auf der Hierarchieebene 251. Dies kann teilautomatisch oder vollautomatisch erfolgen. Zum Beispiel könnte ein Klassifikator verwendet werden. Der Klassifikator kann einen Objekterkennungsalgorithmus umfassen; der entsprechende Objekterkennungsalgorithmus kann bestimmte Wahrscheinlichkeiten für die Klassifikation der Strukturen identifizieren. Zum Beispiel könnte also für eine bestimmte Struktur einer Kachel auf der obersten Hierarchieebene 251 als Ergebnis von Block 1062 erhalten werden: Label „SPEICHER“: 40 %; Label „LOGIKELEMENT“: 60 %. Die Label-Kandidaten „SPEICHER“ und „LOGIKELEMENT“ werden derart erhalten. Optional kann auch eine Propagation von Labels basierend auf einer manuellen Annotation erfolgen. In jedem Fall besteht eine Unsicherheit im Zusammenhang mit der Vergabe der Label-Kandidaten.
  • Die Blöcke 1061 und 1062 werden dann jeweils für jede der Hierarchieebenen 251-253 der Kachelung 201 durchgeführt. In 11 ist dies auch für die unterste Hierarchieebene 253 im Zusammenhang mit Blöcken 1063 und 1064 illustriert.
  • Dann kann eine Fusion der Label-Kandidaten in Block 1065 erfolgen. Diese Fusion kann es einerseits ermöglichen, Unsicherheiten in der Bestimmung der Label-Kandidaten zu verringern: das bedeutet, dass aus der Kontextinformation, die durch den Vergleich der Label-Kandidaten für die Strukturen auf unterschiedlichen Hierarchieebenen erhalten wird, eine besonders zuverlässige Auswahl aus den verschiedenen Label-Kandidaten erfolgen kann.
  • Außerdem kann es in Block 1065 möglich sein, die multihierarchischen Labels zu bestimmen. Dazu kann ein weiterer Klassifikationsalgorithmus angewendet werden. Dieser kann als Eingabe die Label-Kandidaten aus dem Blöcken 1062 und 1064 erhalten. Es könnte z.B. eine Plausibilitätskontrolle erfolgen. Wenn z.B. bekannt ist, dass „SPEICHER“-Strukturen keine „LÖCHER“ beinhalten, dann kann dies bei der Fusion in Block 1065 berücksichtigt werden. Die Vergabe des Labels „LOGIK“ kann präferiert werden gegenüber der Vergabe des Labels „SPEICHER“. Der weitere Klassifikationsalgorithmus kann entsprechend trainiert sein, die Kontextinformation für die Labels für Strukturen in den Kacheln auf unterschiedlichen Hierarchieebenen zu berücksichtigen.
  • Aus 11 ist also zusammenfassend ersichtlich, dass zunächst Label-Kandidaten für Strukturen den assoziierten Kacheln unterschiedliche Hierarchieebenen mit ein oder mehreren ersten Klassifikationsalgorithmen bestimmt werden. Dann kann es möglich sein, die Labels für die Strukturen in den assoziierten Kacheln mit einem zweiten Klassifikationsalgorithmus zu bestimmen, der die Label-Kandidaten als Eingabe erhält.
  • 12 ist ein Flussdiagramm eines beispielhaften Verfahrens. 12 illustriert Aspekte im Zusammenhang mit der Registrierung. Zum Beispiel könnte das Verfahren gemäß 12 im Zusammenhang mit Block 2003 aus 6 ausgeführt werden.
  • Zunächst wird in Block 1070 eine aktuelle Hierarchieebene ausgewählt. Insoweit entspricht Block 1070 also zum Beispiel Block 1011 aus 8.
  • Dann erfolgt in Block 1071 die Registrierung von zwei Kacheln auf der aktuellen Hierarchieebene. Dies bedeutet also, dass eine Kachel mit Voxeln aus dem 3-D-Bilddatensatz mit einer weiteren Kachel mit Voxeln aus einem Referenzdatensatz (zum Beispiel einem CAD-Modell) verglichen wird.
  • Dann wird in Block 1072 das bisherige Registrierungsergebnis 1073 basierend auf der Registrierung aus Block 1071 verfeinert.
  • In Block 1074 wird überprüft, ob noch Kacheln auf einer weiteren Hierarchieebene zu verarbeiten sind. Insofern entspricht Block 1074 Block 1014 aus 8. Ist dies der Fall, so wird eine weitere Iteration 1503 der Blöcke 1070-1072 durchgeführt.
  • Die multihierarchische Registrierung aus 12 bedeutet also, dass auf der obersten Hierarchieebene begonnen (erste Iteration 1503) wird und zwei entsprechende Volumina miteinander registriert werden. Dadurch wird ein entsprechend grobes Registrierungsergebnis erhalten (Block 1073). Dieses Ergebnis der Registrierung dient als Ausgangspunkt für eine Verfeinerung auf der nächstniedrigeren Hierarchieebene in der nächsten Iteration 1503. Indem auf dieser nächsten Hierarchieebene zwei korrespondierende Kacheln (die entsprechende Volumina abbilden) ausgewählt werden, kann dort die Registrierung zuverlässig durchgeführt werden. Die Auswahl der korrespondierenden Kacheln kann auf Grundlage der groben Registrierung auf der obersten Hierarchieebene erfolgen. Dieser Vorgang kann iterativ wiederholt werden, bis die unterste Hierarchieebene erreicht wird.
  • Insbesondere können korrespondierende Kacheln auf den unteren Hierarchieebenen in Abhängigkeit einer Signifikanz der dort abgebildeten Strukturen für die Registrierung ausgewählt werden. Zum Beispiel könnten also solche Kacheln ausgewählt werden, welche Strukturen abbilden, die besonders zuverlässig miteinander registriert werden können. Dies sind zum Beispiel Strukturen mit einem hohen Aspektverhältnis oder Strukturen, die eine signifikante Anisotropie in den drei Raumrichtungen aufweisen. Irreguläre Strukturen können bevorzugt werden. Die Auswahl kann z.B. anhand des Referenzdatensatzes erfolgen. Z.B. könnten solche Kacheln für die Registrierung ausgewählt werden, die ein oder mehrere Lithographie-Marker abbilden.
  • Eine solche Registrierung kann optional auch auf Lithographie-Marker als Strukturen zurückgreifen. Dem liegt die Erkenntnis zugrunde, dass Halbleiter-Strukturen häufig in Schichtebenen gefertigt werden. Zur Ausrichtung von aufeinanderfolgenden Schichtebenen werden Lithographie-Marker verwendet. Solche Techniken sind im Grundsatz bekannt. Die Morphologie von Lithographie-Markern ist typischerweise signifikant verschieden von der Morphologie von Halbleiter-Bauelementen bzw. anderen funktionalen Einheiten. Die Lithographie-Marker können eine starke Anisotropie aufweisen, um die Orientierung bestimmen zu können. Selbst für eine große Anzahl von Lithographie-Marken ist eine solche Registrierung besonders effizient. Selbst wenn die Position individueller Lithographie-Marker zufälligen Variationen ausgesetzt werden kann, kann aufgrund der großen Anzahl von Lithographie-Marken diese Fluktuation heraus gemittelt werden. Derart kann eine besonders präzise Registrierung ermöglicht werden, zum Beispiel im Vergleich zu Referenztechniken, die lediglich einen einzelnen Lithographie-Marker zur Registrierung verwenden.
  • Die Registrierung kann gesondert für zumindest eine Schichtebene der Halbleiter-Bauelemente durchgeführt werden. Dies ermöglicht eine Kombination von 1-D-/2-D-Registrierungstechniken, um eine 3-D-Registrierung zu erhalten. Zum Beispiel könnte erst eine 1-D-Registrierung auf den Schichtstapel der Halbleiter-Bauelemente durchgeführt werden (z.B. anhand eines lateralen Schnitts durch den Schichtstapel). Dies kann die Ebenennormale des Schichtstapels als Registrierungskomponente festlegen. In einem zweiten Schritt können die einzelnen Schichtebenen der Halbleiter-Bauelemente extrahiert werden und miteinander registriert werden, um eine 2-D-Registrierung orthogonal zur Ebenennormale zu ermöglichen.
  • Selbstverständlich können die Merkmale der vorab beschriebenen Ausführungsformen und Aspekte der Erfindung miteinander kombiniert werden. Insbesondere können die Merkmale nicht nur in den beschriebenen Kombinationen, sondern auch in anderen Kombinationen oder für sich genommen verwendet werden, ohne das Gebiet der Erfindung zu verlassen.
  • So wurden z.B. vornehmlich 3-D-Bilddatensätze, die Halbleiter-Bauelemente darstellen beschrieben. Entsprechende Techniken können aber auch auf andere Arten von 3-D-Bilddatensätzen angewendet werden.

Claims (16)

  1. Verfahren, das umfasst: - Erhalten eines dreidimensionalen Bilddatensatzes (100), der Halbleiter-Bauelemente abbildet, - Anwenden einer hierarchischen Kachelung (201) auf den dreidimensionalen Bilddatensatz (100), wobei die Kachelung (201) mehrere Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf mehreren Hierarchieebenen (251-253) aufweist, wobei Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf unterschiedlichen Hierarchieebenen (251-253) unterschiedliche Voxelgrößen von entsprechenden Voxeln (290) aufweisen.
  2. Verfahren nach Anspruch 1, welches weiterhin umfasst: - Bestimmen der Voxelgrößen und/oder der Voxelanzahl der Voxel (290) der Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf den mehreren Hierarchieebenen (251-253) basierend auf Strukturgrößen der Halbleiter-Bauelemente.
  3. Verfahren nach Anspruch 1 oder 2, welches weiterhin umfasst: - Vergeben von Labels (151-154) an Strukturen (401-403) in den Kacheln (211 - 214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf den mehreren Hierarchieebenen (251-253).
  4. Verfahren nach Anspruch 3, wobei die Labels (151-154) der Strukturen (401-403) in Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer unteren Hierarchieebene (253) aus einer ersten Kandidatenmenge ausgewählt sind, welche geometrische Grundformen umfasst, wobei die Labels (151-154) der Strukturen (401-403) in Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer oberen Hierarchieebene (251) aus einer zweiten Kandidatenmenge ausgewählt sind, welche die Halbleiter-Bauelemente, eine Logikgruppe mit mehreren Halbleiter-Bauelementen, Leiterbahnen, und/oder Lithographie-Marker umfasst.
  5. Verfahren nach Anspruch 3 oder 4, wobei das Vergeben der Labels (151-154) umfasst: - für Strukturen (402) in einer Kachel (213-2-1, 214-1-1) auf einer unteren Hierarchieebene (253): Vererben von Labels (151, 153) von ein oder mehr Strukturen (401, 403) in einer mit der Kachel (213-2-1, 214-1-1) auf der unteren Hierarchieebene (253) assoziierten weiteren Kachel (213, 214) auf einer oberen Hierarchieebene (251), um für die Strukturen (402) in der Kachel (213-2-1, 214-1-1) auf in der unteren Hierarchieebene (253) ein multihierarchisches Label (158, 159) zu erhalten.
  6. Verfahren nach einem der Ansprüche 3 bis 5, wobei das Vergeben der Labels (151-154) umfasst: - automatisches oder teil-überwachtes Propagieren von Labels (151-154) zwischen Strukturen (401-403) in Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer gemeinsamen Hierarchieebene (251-253).
  7. Verfahren nach Anspruch 6, wobei das Propagieren auf einem maschinengelernten Propagationsalgorithmus (1016) basiert, wobei das Verfahren weiterhin umfasst: - Ende-zu-Ende-Trainieren des Propagationsalgorithmus (1016) oder iteratives Online-Trainieren des Propagationsalgorithmus (1016).
  8. Verfahren nach einem der Ansprüche 3 bis 7, wobei das Vergeben der Labels (151-154) umfasst: - Bestimmen von Label-Kandidaten für Strukturen (401-403) in assoziierten Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) unterschiedlicher Hierarchieebenen (251-253) mit ein oder mehreren ersten Klassifikationsalgorithmen, und - Bestimmen der Labels (151-154) für die Strukturen (401-403) in den assoziierten Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) mit einem zweiten Klassifikationsalgorithmus, der diese Label-Kandidaten als Eingabe erhält.
  9. Verfahren nach einem der Ansprüche 3 bis 8, wobei die Labels (151-154) die Strukturen (401-403) in ein oder mehrere vorgegebene Klassen klassifizieren und/oder im Bildraum segmentieren und/oder mit einer Rand-Box (701) versehen.
  10. Verfahren nach einem der voranstehenden Ansprüche, welches weiterhin umfasst: - Durchführen einer Anomaliedetektion (2005), um unbekannte Strukturen (401-403) in den Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) unterschiedlicher Hierarchieebenen (251-253) zu erkennen.
  11. Verfahren nach einem der voranstehenden Ansprüche, das weiterhin umfasst: - Durchführen einer Registrierung (2003) von Strukturen (401-403) in den Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf den mehreren Hierarchieebenen (251-253) jeweils mit Referenz-Kacheln der entsprechenden Hierarchieebene.
  12. Verfahren nach Anspruch 11, wobei die Registrierung iterativ ausgehend von Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer höheren Hierarchieebene (251) hin zu Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer unteren Hierarchieebene (252, 253) durchgeführt wird.
  13. Verfahren nach Anspruch 11 oder 12, wobei die Registrierung gesondert für zumindest eine Schichtebene der Halbleiter-Bauelemente durchgeführt wird.
  14. Verfahren nach einem der voranstehenden Ansprüche, welches weiterhin umfasst: - Verwerfen von zumindest einigen Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) auf einer Hierarchieebene (251-253) in Abhängigkeit von Redundanzen in abgebildeten Strukturen (401-403), und optional - Speichern von Meta-Daten der in den verworfenen Kacheln (211-214, 213-1, 213-2, 213-3, 213-2-1, 214-1-1) abgebildeten Strukturen (401-403).
  15. Verfahren nach einem der voranstehenden Ansprüche, wobei die Voxelgröße der Voxel (290) zwischen Kacheln auf unterschiedlichen Hierarchieebenen nicht-linear skaliert.
  16. Verfahren nach einem der voranstehenden Ansprüche, wobei eine Kantenlänge von Kacheln auf unterschiedlichen Hierarchieebenen unterschiedlich für unterschiedliche Kanten skaliert.
DE102019102484.6A 2019-01-31 2019-01-31 Verarbeitung von dreidimensionalen Bilddatensätzen Pending DE102019102484A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102019102484.6A DE102019102484A1 (de) 2019-01-31 2019-01-31 Verarbeitung von dreidimensionalen Bilddatensätzen
KR1020217027289A KR20210121154A (ko) 2019-01-31 2020-01-31 이미지 데이터 세트 처리
PCT/EP2020/052380 WO2020157249A1 (de) 2019-01-31 2020-01-31 Verarbeitung von bilddatensätzen
US17/388,589 US20210358101A1 (en) 2019-01-31 2021-07-29 Processing image data sets

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019102484.6A DE102019102484A1 (de) 2019-01-31 2019-01-31 Verarbeitung von dreidimensionalen Bilddatensätzen

Publications (1)

Publication Number Publication Date
DE102019102484A1 true DE102019102484A1 (de) 2020-08-06

Family

ID=69411449

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019102484.6A Pending DE102019102484A1 (de) 2019-01-31 2019-01-31 Verarbeitung von dreidimensionalen Bilddatensätzen

Country Status (4)

Country Link
US (1) US20210358101A1 (de)
KR (1) KR20210121154A (de)
DE (1) DE102019102484A1 (de)
WO (1) WO2020157249A1 (de)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220230321A1 (en) * 2021-01-15 2022-07-21 Adobe Inc. Generating class-agnostic object masks in digital images
US11631234B2 (en) 2019-07-22 2023-04-18 Adobe, Inc. Automatically detecting user-requested objects in images
US11681919B2 (en) 2020-03-12 2023-06-20 Adobe Inc. Automatically selecting query objects in digital images
US11797847B2 (en) 2019-07-22 2023-10-24 Adobe Inc. Selecting instances of detected objects in images utilizing object detection models
US11886494B2 (en) 2020-02-25 2024-01-30 Adobe Inc. Utilizing natural language processing automatically select objects in images
US11972569B2 (en) 2021-01-26 2024-04-30 Adobe Inc. Segmenting objects in digital images utilizing a multi-object segmentation model framework
US12020414B2 (en) 2019-07-22 2024-06-25 Adobe Inc. Utilizing deep neural networks to automatically select instances of detected objects in images

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111801708B (zh) 2017-12-22 2022-04-29 奇跃公司 使用光线投射和实时深度进行遮挡渲染的方法
EP3961557A1 (de) * 2020-08-26 2022-03-02 Siemens Aktiengesellschaft Qualitätsinspektionsverfahren und anordnung für eine qualitätsinspektion
US20220207256A1 (en) * 2020-12-30 2022-06-30 Fei Company Charged particle microscope systems and clustering processes for high dynamic range sample analysis

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010023580A1 (en) * 2008-08-29 2010-03-04 Koninklijke Philips Electronics, N.V. Dynamic transfer of three-dimensional image data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070262988A1 (en) * 2006-05-09 2007-11-15 Pixar Animation Studios Method and apparatus for using voxel mip maps and brick maps as geometric primitives in image rendering process
US8126255B2 (en) * 2007-09-20 2012-02-28 Kla-Tencor Corp. Systems and methods for creating persistent data for a wafer and for using persistent data for inspection-related functions
US8497861B2 (en) * 2008-05-30 2013-07-30 Siemens Aktiengesellschaft Method for direct volumetric rendering of deformable bricked volumes
US8885978B2 (en) * 2010-07-05 2014-11-11 Apple Inc. Operating a device to capture high dynamic range images
US9430824B2 (en) * 2013-05-14 2016-08-30 Kla-Tencor Corporation Machine learning method and apparatus for inspecting reticles
US10504761B2 (en) * 2017-02-08 2019-12-10 Semiconductor Technologies & Instruments Pte. Ltd. Method system for generating 3D composite images of objects and determining object properties based thereon
KR20190073756A (ko) * 2017-12-19 2019-06-27 삼성전자주식회사 반도체 결함 분류 장치, 반도체의 결함을 분류하는 방법, 그리고 반도체 결함 분류 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010023580A1 (en) * 2008-08-29 2010-03-04 Koninklijke Philips Electronics, N.V. Dynamic transfer of three-dimensional image data

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CERRI, R. [et al.]: Hierarchical multi-label classification using local neural networks. In: Journal of Computer and System Sciences, Vol. 80, 2014, No. 1, S. 39-56, DOI: 10.1016/j.jcss.2013.03.007 *
SHANKAR, N. G.; ZHONG, Z. W.; RAVI, N.: Classification of Defects on Semiconductor Wafers using Priority Rules. In: Defects and Diffusion Forum, Vol. 230-232, 2004, S. 135-148, DOI: 10.4028/www.scientific.net/DDF.230-232.135 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11631234B2 (en) 2019-07-22 2023-04-18 Adobe, Inc. Automatically detecting user-requested objects in images
US11797847B2 (en) 2019-07-22 2023-10-24 Adobe Inc. Selecting instances of detected objects in images utilizing object detection models
US12020414B2 (en) 2019-07-22 2024-06-25 Adobe Inc. Utilizing deep neural networks to automatically select instances of detected objects in images
US11886494B2 (en) 2020-02-25 2024-01-30 Adobe Inc. Utilizing natural language processing automatically select objects in images
US11681919B2 (en) 2020-03-12 2023-06-20 Adobe Inc. Automatically selecting query objects in digital images
US20220230321A1 (en) * 2021-01-15 2022-07-21 Adobe Inc. Generating class-agnostic object masks in digital images
US11587234B2 (en) * 2021-01-15 2023-02-21 Adobe Inc. Generating class-agnostic object masks in digital images
US20230136913A1 (en) * 2021-01-15 2023-05-04 Adobe Inc. Generating object masks of object parts utlizing deep learning
US11900611B2 (en) * 2021-01-15 2024-02-13 Adobe Inc. Generating object masks of object parts utlizing deep learning
US11972569B2 (en) 2021-01-26 2024-04-30 Adobe Inc. Segmenting objects in digital images utilizing a multi-object segmentation model framework

Also Published As

Publication number Publication date
WO2020157249A1 (de) 2020-08-06
US20210358101A1 (en) 2021-11-18
KR20210121154A (ko) 2021-10-07

Similar Documents

Publication Publication Date Title
DE102019102484A1 (de) Verarbeitung von dreidimensionalen Bilddatensätzen
DE102012107287B4 (de) Computergestütztes Verfahren und Vorrichtung zum Identifizieren von Fehlern in einem Material
DE112015004721B4 (de) Defektdetektion unter verwendung von strukturinformation
DE10317917B4 (de) System und Verfahren zum Umgrenzen und Klassifizieren von Regionen innerhalb einer graphischen Abbildung
DE10000364B4 (de) Merkmalbasierende Feststellung von Fehlern
EP0014857B1 (de) Verfahren zum automatischen Markieren von Zellen und zur Bestimmung der Merkmale von Zellen aus zytologischen Abstrichpräparaten
DE10157958B4 (de) Bildverarbeitungsverfahren und-vorrichtung
DE112016002090T5 (de) Verfahren und system zur defektklassifizierung
DE102009036474A1 (de) Bilddaten-Kompressionsverfahren, Mustermodell-Positionierungsverfahren bei Bildverarbeitung, Bildverarbeitungsvorrichtung, Bildverarbeitungsprogramm und computerlesbares Aufzeichnungsmedium
DE19613615A1 (de) Vorrichtung und Verfahren zum Analysieren eines Fehlers in einem Halbleiterwafer
DE112021000600T5 (de) Fortschrittlicher inline part average test
DE102021101704A1 (de) Bilderzeugungssystem
DE102017116853A1 (de) System und Verfahren zur automatischen Auswahl von 3D-Ausrichtungsalgorithmen in einem Sehsystem
DE112012004809T5 (de) Kantenverfolgung mit Hysterese-Schwellenwertbildung
DE102019103503A1 (de) Fehlerreduktion bei Bildern, die mit geladenen Teilchen erzeugt wurden, mithilfe von Machine-Learning-basierten Verfahren
DE102019133685A1 (de) Informationsverarbeitungssystem und -verfahren
DE102019121285A1 (de) Systeme und Verfahren zur Lokalisierung systematischer Fehler mittels physical failure analysis (PFA)
DE102021203251B3 (de) Digitale Pathologie unter Verwendung eines künstlichen neuronalen Netzes
DE102020123979A1 (de) Defekterkennung für Halbleiterstrukturen auf einem Wafer
DE102020211900A1 (de) Ladungsträgerstrahlvorrichtung
EP2642749B1 (de) Vorrichtung und Verfahren zur Optimierung der Bestimmung von Aufnahmebereichen
DE112021002696T5 (de) Verfahren und apparate zum extrahieren von profilen aus dreidimensionalen bildern
DE102019131434A1 (de) Computerimplementiertes Verfahren zur Segmentierung von Messdaten aus einer Messung eines Objekts
DE112020001511T5 (de) Schichtausrichtung für kurzachsige herz-mr-bildaufnahme-schichtstapel
DE102018111972A1 (de) Verfahren zur Bestimmung von Registrationsfehlern auf einer Photomaske für die Halbleiterlithographie

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication