-
Diese
vorliegende Erfindung bezieht sich allgemein auf Bildverarbeitung
und insbesondere auf ein tomografisches System und Verfahren zum
Verarbeiten von Bilddaten, die durch eine radiografische Abbildungstechnik,
z.B. Kegelstrahltomografie, erfasst werden, um aus denselben Querschnittsbilddaten
zu rekonstruieren, wobei ein derartiges Verarbeiten mehrere Tiefenschichten
eines abgebildeten Objekts parallel rekonstruiert.
-
Die
Technik des Rekonstruierens eines Querschnittsbildes eines Objekts
aus mehreren Projektionen wird im Groben als Tomographie bezeichnet.
Wenn eine derartige Rekonstruktion eines Querschnittsbildes mit Hilfe
einer prozessorbasierten Vorrichtung (oder eines „Computers") durchgeführt wird,
wird die Technik im Groben als Computertomographie (oder computerisierte
Tomographie) (CT) bezeichnet. Bei einer typischen beispielhaften
Anwendung projiziert eine Strahlungsquelle eine Strahlung der Röntgen-Wellenlänge durch
ein Objekt auf ein elektronisches Sensorarray (bzw. „Detektor"-Array). Durch Liefern
einer relativen Bewegung zwischen einem oder mehreren des Objekts,
der Quelle und des Sensorarrays werden mehrere Ansichten erhalten.
Ein Bild einer Scheibe bzw. eines Schnittes durch das Objekt oder
ein dreidimensionales Bild („3D-Bild") des Objekts kann
anschließend
durch eine Verwendung von entsprechenden mathematischen Transformierten
der mehreren Ansichten angenähert
werden. Das heißt,
dass Querschnittsbilder eines Objekts rekonstruiert werden können, und
bei bestimmten Anwendungen können
derartige Querschnittsbilder kombiniert werden, um ein vollständiges 3D-Bild
des Objekts zu erzeugen.
-
Die
vielleicht bekannteste praktische Anwendung der Tomographie ist
der Scanner der medizinischen Computertomographie (CT-Scanner, auch
als computergestützte
Tomographie oder computerisierte axiale Tomographie (CAT) bezeichnet).
Beispielsweise wird eine Querschnittsbildrekonstruktion aus radiographischen (z.
B. Röntgenstrahlen-)
Bildern üblicherweise
bei medizinischen Anwendungen verwendet, um ein Querschnittsbild
(und/oder eine 3D-Ansicht) des menschlichen Körpers oder eines Teils des
menschlichen Körpers aus
Röntgenstrahlenbildern
zu erzeugen. Bei diesen Anwendungen ist die Geschwindigkeit der
Rekonstruktion der Querschnittsbilder traditionell nicht sehr wichtig.
Während
sich jedoch medizinische Prozeduren weiterentwickeln, beginnen bestimmte
medizinische Anwendungen, eine schnelle Rekonstruktion von Querschnittsbildern
zu wünschen.
Beispielsweise wird bei medizinischen Verfahren, z. B. bei vielen
elektrophysiologischen Herzverfahren, bei Periphergefäßverfahren,
bei der perkutanten transluminalen Katheterangioplastik-Verfahren (PTCA-Verfahren),
bei urologischen Verfahren und bei orthopädischen Verfahren, eine Echtzeit-Röntgenstrahlenabbildung zunehmend
erwünscht.
-
Tomographie
ist auch bei einer automatisierten Prüfung von industriellen Produkten
von Interesse. Beispielsweise wird bereits eine Rekonstruktion von
Querschnittsbildern aus radiographischen (z. B. Röntgenstrahlen-)
Bildern bei Qualitätskontrollprüfsystemen
zum Prüfen
eines Erzeugnisses, z. B. von elektronischen Vorrichtungen (z. B.
Anordnungen gedruckter Schaltungsplatinen), verwendet. Das heißt, dass
Tomographie bei einem automatisierten Prüfsystem verwendet werden kann,
um Bilder einer oder mehrerer Ebenen (die hierin als „Tiefenschichten" oder „Querschnitte" bezeichnet werden
können)
eines zu studierenden Objekts zu rekonstruieren, um die Qualität des Objekts
(oder eines Teils desselben) zu bewerten. Beispielsweise kann eine
Anordnung gedruckter Schaltungsplatinen (oder eines anderen zu studierenden
Objekts) verschiedene Tiefenschichten aufweisen, die für eine Prüfung von
Interesse sind. Als relativ einfa ches Beispiel kann eine Anordnung
von doppelseitigen gedruckten Schaltungsplatinen auf beiden Seiten
der Platine Lötverbindungen umfassen.
Somit kann jede Seite der Schaltungsplatinenanordnung, auf der die
Lötverbindungen
angeordnet sind, eine separate Tiefenschicht der Platine aufweisen.
Ferner kann die Schaltungsplatinenanordnung Oberflächenmontagevorrichtungen
(z. B. ein Kugelrasterarray aus Lötmaterial) auf seinen beiden
Seiten aufweisen, was zu weiteren Tiefenschichten der Platine führt, die
von Interesse sein können.
-
Das
Prüfobjekt
kann aus diversen unterschiedlichen Blickwinkeln abgebildet werden
(z. B. durch ein Belichten mit Röntgenstrahlen
bei diversen unterschiedlichen Winkeln), was zu radiographischen
Bildern des Objekts führt,
und derartige radiographische Bilder können verarbeitet werden, um
ein Bild einer Tiefenschicht (oder „Scheibe") des Objekts zu rekonstruieren. Das
heißt,
dass Röntgenstrahlen
von einer Röntgenstrahlenquelle
unter diversen unterschiedlichen Blickwinkeln auf ein Prüfobjekt
angewendet werden können,
und Detektoren, die auf der Seite des Objekts gegenüber der
Röntgenstrahlenquelle
angeordnet sind, können
die Röntgenstrahlen
empfangen und die Röntgenstrahlendurchlässigkeit
bzw. den Röntgenstrahlentransmissionsgrad
des Objekts messen. Derartige Meßinformationen können durch
die radiographische Abbildungseinrichtung als digitale Informationen
(z. B. Daten, die „Pixel" des Objekts darstellen)
ausgegeben werden. Derartige Daten eines radiographischen Bildes
(Pixel) können
in eine Bildrekonstruktionsvorrichtung eingegeben werden, die die
Informationen verwendet, um Querschnittsbilder des Prüfobjekts
zu rekonstruieren. Danach können
die sich ergebenden Querschnittsbilder bei manchen Prüfsystemen
Schicht um Schicht angezeigt werden, und/oder derartige Querschnittsbilder
können
verwendet werden, um eine vollständige
3D-Visualisierung des Prüfobjekts
zu rekonstruieren.
-
Automatisierte
Prüfsysteme,
die eine Rekonstruktion von Querschnittsbildern eines Prüfobjekts
aus radiographischen (z. B. Röntgenstrahlen-)
Bildern, die für
ein derartiges Objekt erfasst wurden, liefern, sind bisher nicht
in der Lage, eine Qualitätsanalyse
schnell genug zu liefern, um mit Fertigungsstraßen einer hohen Schlagzahl
Schritt zu halten. Aufgrund der Kosten, Geschwindigkeit und/oder
der Mechanik, die erforderlich ist, um mehrere radiographische Bilder
(z. B. Bilder bei diversen unterschiedlichen Winkeln) zu erhalten
und mehrere Querschnittsbilder zu berechnen, eignen sich viele der
traditionellen Lösungsansätze in bezug
auf Tomographie (z. B. diejenigen, die traditionell für medizinische
Anwendungen verwendet werden, die keine schnelle Rekonstruktion
erfordern) nicht für
eine Herstellungsumgebung. Beispielsweise bewegt sich eine Montagestraße für gedruckte
Schaltungsplatinen allgemein sehr schnell. Beispielsweise können gedruckte Schaltungsplatinen
auf einer Fertigungsstraße
nur Sekunden voneinander beabstandet sein, und um bei einer Produktionsumgebung
ein automatisiertes Röntgenstrahlenprüfsystem
zu implementieren, muss ein derartiges Prüfsystem sehr schnell sein.
Im Idealfall erfolgt der Prüfvorgang
in Echtzeit, als Bestandteil eines Rückkopplungssteuerungssystems
für den
Herstellungsprozess. Bei manchen Produktionsumgebungen besteht ein
Bedarf, die Integrität
von Zehntausenden von Lötverbindungen
innerhalb einer Minute oder weniger zu überprüfen. In der Regel schränken derzeitige
automatisierte Röntgenstrahlprüfsysteme
die Geschwindigkeit, bei der eine Fertigungsstraße arbeiten kann, ein, und
somit werden automatisierte Röntgenstrahlenprüfsysteme
derzeit hauptsächlich
zum Prüfen
relativ spezialisierter, teurer Platinen verwendet, die üblicherweise
in relativ geringen Mengen hergestellt werden und bei denen die
Geschwindigkeit der Produktionsstraße nicht so wichtig ist. Selbstverständlich würden automatisierte
Röntgenstrahlprüfsysteme
tendenziell öfter
verwendet werden, wenn sie schnell genug arbeiten könnten, um
mit Fertigungsstraßen
eines hohen Durchsatzes Schritt zu halten.
-
Bei
der Röntgenstrahlenabsorptionstomographie
können
eine Anzahl von Abbildungstechniken auf eine Rekonstruktion von
Querschnittsscheiben angewandt werden. Eine Abbildungstechnik ist
als Laminografie bekannt. Bei der Laminografie werden die Röntgenstrahlenquelle
und das Detektorarray auf gezielte Weise relativ zu dem zu betrachtenden
Objekt bewegt, so dass Abschnitte eines Objekts, die sich außerhalb
einer ausgewählten
Fokusebene befinden, an dem Detektorarray zu einem verschwommenen
Bild führen
(siehe z. B. U.S.-Patent Nr. 4,926,452). Fokusebenenbilder werden
in einem analogen Mittelwertsbildungsprozess rekonstruiert. Ein
Beispiel eines Laminografiesystems, das für eine Elektronikprüfung verwendet
werden kann, ist in der U.S.-Patentschrift Nr. 6,201,850 mit dem
Titel „ENHANCED
THICKNESS CALIBRATION AND SHADING CORRECTION FOR AUTOMATIC X-RAY
INSPECTION" näher beschrieben.
-
Eine
weitere Abbildungstechnik ist als Tomosynthese bekannt. Tomosynthese
ist eine Annäherung
an die Laminografie, bei der mehrere Projektionen (oder Ansichten)
erfasst und kombiniert werden. Mit zunehmender Anzahl von Ansichten
nähert
sich das resultierende kombinierte Bild allgemein dem an, das unter
Verwendung einer Laminografie mit derselben Geometrie erhalten wird.
Ein Merkmal, das die Tomosynthese von der oben beschriebenen laminographischen
Technik unterscheidet, besteht darin, dass Tomosynthese-Röntgenstrahlenbilder, die aus
verschiedenen Richtungen (unterschiedlichen Blickwinkeln) erhalten
werden, manipuliert werden können
(z. B. können
sie mit unterschiedlichen Raumverschiebungen überlappt werden, und ihre Helligkeit
kann gemittelt werden), um eine Vielzahl von Querschnitten zu erzeugen.
Mit anderen Worten kann ein Satz von Röntgenstrahlenbildern verwendet
werden, um mehrere Querschnitte eines Prüfobjekts (z. B. Querschnitte
des Objekts bei unterschiedlichen Höhen) zu erhalten. Die Tomosynthese
kann als analoges Verfahren durchgeführt werden, beispielsweise
indem Lagen eines belichteten Films übereinandergelegt werden. Statt
dessen kann die Tomosynthese auch als digitales Verfahren durchgeführt werden.
Bei der digitalen Tomosynthese werden die einzelnen Ansichten in
Pixel unterteilt und über
eine Computersoftware digitalisiert und kombiniert.
-
Die
dreidimensionale (3D-) Computertomographie weist das Potential einer
genaueren Bildrekonstruktion auf als die Laminografie oder Tomosynthese,
was jedoch auf Kosten der Geschwindigkeit geht (Berechnungszeit).
Die dreidimensionale Computertomographie erfordert üblicherweise
viele Projektionen und ist rechentechnisch aufwendig. Ein Lösungsansatz
bezüglich
einer computergestützten
3D-Tomographie besteht darin, eine Röntgenstrahlenquelle, die einen
kegelförmigen
3D-Strahlenausgang aufweist, auf einer Seite eines zu betrachtenden
Objekts zu positionieren und ein zweidimensionales (2D-) Array von
Detektoren (z. B. ladungsgekoppelte Vorrichtungen („CCDs" – charged-coupled devices)
auf der gegenüberliegenden
Seite des zu betrachtenden Objekts zu positionieren und die Quelle/das
Array relativ zu dem Objekt synchron zu bewegen. Es gibt viele mögliche Bewegungspfade.
Zum Zweck einer vollständigen
Rekonstruktion eines willkürlichen
Objekts muss der Bewegungspfad das Objekt umrunden. Beispielsweise
kann die Quelle um das zu betrachtende Objekt herumbewegt werden,
oder die Quelle kann an einem spiralförmigen Pfad oder an einem anderen
Pfad entlang einem Zylinder, der das zu betrachtende Objekt umgibt,
bewegt werden. Dieser Lösungsansatz,
der als Kegelstrahltomographie bezeichnet wird, ist in vielen Fällen für ein Rekonstruieren
von 3D-Bildern bevorzugt und ist aufgrund der sich ergebenden Bildqualität potentiell
für eine
Analyse (z. B. für eine
Analyse einer elektronischen Anordnung) bevorzugt.
-
Ein
theoretischer mathematischer Lösungsansatz
bezüglich
eines Rekonstruierens eines Objekts aus seinen Projektionen wurde
1917 von J. Radon entwickelt, und die grundlegenden Transformierten
werden nun als Radon-Transformierte bezeichnet. In jüngerer Zeit
schlugen Forscher verschiedene Verfahren für eine Kegelstrahlrekonstruktion
vor. Siehe beispielsweise:
- A. K. Louis und F. Natterer, „Mathematical
Problems of Computerized Tomography", Proceedings of the IEEE, Bd. 71, Nr.
3, S. 379 – 389
(März 1983);
- R. M. Lewitt, „Reconstruction
Algorithms: Transform Methods",
Proceedings of the IEEE, Bd. 71, Nr. 3, S. 390 – 408 (März 1983);
- Y. Censor, „Finite
Series-Expansion Reconstruction Methods", Proceedings of the IEEE, Bd. 71, Nr.
3, S. 409 – 419
(März 1983);
- B. D. Smith, „Cone-beam
tomography: recent advances and a tutorial review", Optical Engineering,
Bd. 29, Nr. 5, S. 524 – 534
(Mai 1990); und
- C. Jacobson, „Fourier
Methods in 3D-Reconstruction from Cone-Beam Data", Dissertation, Dissertation Nr. 427,
Department of Electrical Engineering, Linkoping University, Linkoping,
Schweden (1996).
-
Im
allgemein beinhaltet jedes der obigen Verfahren verschiedene Kompromisse
zwischen z. B. Bildqualität
(Annäherungen,
Rauschen, Unschärfe
und Artefakte) und Rechenzeit und der Schwierigkeit, die benötigten Ansichten
zu erhalten.
-
Die
Kegelstrahlverfahren führen üblicherweise
zu einem Satz von planaren Bildern. In der Regel wird eine Art rechteckiges
Detektorarray verwendet, das einen Satz von Pixeln erfasst, die
statt entlang einer einzigen Linie auf einer Ebene zugewiesen sind.
Vor der Entwicklung der Kegelstrahlverfahren erfassten Abbildungstechniken,
z. B. die hinreichend bekannten Fächerstrahlverfahren, lediglich
eindimensionale („1D"-) Projektionen.
Bei den Kegelstrahlverfahren, die ein Detektorarray verwenden, werden
2D-Bilder erfasst. Die 2D-Bilder, die erfasst werden, sind mit denen
vergleichbar, die durch Digitalkameras erfasst werden, wobei eine
Matrix von Pixeln für
ein abgebildetes Objekt erfasst wird. Die erfassten 2D-Bilder können anschließend verarbeitet
werden, um sie zu kombinieren (z. B. unter Verwendung einer Rückprojektionstechnik),
um das zu prüfende
3D-Objekt (oder einen Teil desselben) zu rekonstruieren.
-
Tomographische
Techniken, z. B. Tomosynthese oder 3D-Computertomographie, erfordern in der
Regel viele 2D-Bildprojektionen
(bei vielen unterschiedlichen Blickwinkeln) und sind bezüglich eines
Rekonstruierens von 3D-Bildern
aus den 2D-Bilddaten in der Regel rechentechnisch aufwendig. Demgemäß kann bei einem
Tomographiesystem eine unerwünscht
große
Menge an Datenspeicherkapazität
zum Speichern der großen
Menge an erfassten 2D-Bilddaten (Pixel) erforderlich sein, und die
Effizienz des Verarbeitens der 2D-Bilddaten zum Rekonstruieren der
3D-Bilddaten wird zu einem Problem.
-
Die
meisten radiographischen Abbildungssysteme, die traditionell für eine Prüfung verwendet
werden, sind analoge Geräte,
z. B. die für
die oben beschriebenen Laminografietechniken verwendeten. Ohne bedeutende
Aufrüstungen
dieser analogen Abbildungssysteme ist es unwahrscheinlich, dass
sie die Bildverarbeitungsgeschwindigkeit, die für Produktionsumgebungen eines
hohen Durchsatzes erwünscht
sind, erreichen können.
Dementsprechend fängt
man damit an, bei Prüfsystemen
Abbildungssysteme auf Digitalbasis zu verwenden, beispielsweise
das oben beschriebene Kegelstrahltomographiesystem. Abbildungssysteme
auf Digitalbasis erzeugen in der Regel eine enorme Menge an Bilddaten,
die verwaltet und verarbeitet werden muss, um eine Rekonstruktion
von Querschnittsbildern durchzuführen.
Demgemäß besteht
ein Wunsch nach einer kosteneffizienten Technik, die in der Lage
ist, die Bilddaten auf effiziente Weise auf der Grundla ge eines
derartigen Abbildungssystems auf Digitalbasis zu verarbeiten.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, Verfahren, einen
Rekonstruktionsprozessor sowie ein System mit verbesserten Charakteristika
zu schaffen.
-
Diese
Aufgabe wird durch Verfahren gemäß Anspruch
1 oder 11, durch einen Rekonstruktionsprozessor gemäß Anspruch
16 sowie durch ein System gemäß Anspruch
22 gelöst.
-
Die
vorliegende Erfindung bezieht sich auf ein System und Verfahren,
die eine parallele Bildrekonstruktion von mehreren Tiefenschichten
eines Prüfobjekts
ermöglichen.
Insbesondere sind ein System und Verfahren vorgesehen, bei denen
Bilddaten (Pixel) für
ein Objekt (z.B. eine Region desselben) erfasst werden und diese
Bilddaten verarbeitet werden, um Querschnittsbilddaten für mehrere
Tiefenschichten des Objekts parallel zu rekonstruieren.
-
Gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung ist ein Verfahren zum Rekonstruieren von
Querschnittsbildern eines Objekts von radiografischen Bildern des
Objekts vorgesehen. Das Verfahren umfasst ein Empfangen von Pixeln
eines radiografischen Bildes eines Objekts an einem Bildrekonstruktionsprozessor,
der wirksam ist, um die empfangenen Pixel zu verarbeiten, um Querschnittsbilder
des Objekts zu rekonstruieren, wobei die Verarbeitung durch den
Bildrekonstruktionsprozessor unabhängig von der Reihenfolge ist,
in der die Pixel empfangen werden. Das Verfahren umfasst ferner,
dass, für
zumindest ein erstes empfangenes Pixel, der Bildrekonstruktionsprozessor
eine Mehrzahl von Voxeln bestimmt, zu denen zumindest ein erstes
empfangenes Pixel beiträgt,
und dass der Bildrekonstruktionsprozessor einen Beitrag zumindest
eines ersten Pixels auf die Mehrzahl von Voxeln parallel anwendet.
-
Gemäß einem
weiteren Ausführungsbeispiel
der vorliegenden Erfindung ist ein Verfahren zum Rekonstruieren
von Querschnittsbildern eines Objekts von radiografischen Bildern
des Objekts vorgesehen, das ein Empfangen zumindest eines Pixels
eines radiografischen Bildes eines Objekts an einem Bildrekonstruktionsprozessor
umfasst. Das Verfahren umfasst ferner ein Empfangen von zugeordneten
Positionsdaten für
das zumindest eine Pixel an dem Bildrekonstruktionsprozessor. Das
Verfahren umfasst ferner, dass der Bildrekonstruktionsprozessor
auf der Basis zumindest eines Teils der empfangenen Positionsdaten
ein erstes Voxel einer ersten Schicht des Objekts bestimmt, zu dem
das zumindest eine Pixel beiträgt,
und dass der Bildrekonstruktionsprozessor zumindest teilweise auf
der Basis der empfangenen Positionsdaten ein zweites Voxel einer zweiten
Schicht des Objekts bestimmt, zu dem zumindest ein Pixel beiträgt. Das
Verfahren umfasst ferner, dass der Bildrekonstruktionsprozessor
den jeweiligen Beitrag zumindest eines Pixels auf das erste Voxel
und das zweite Voxel parallel anwendet.
-
Gemäß einem
weiteren Ausführungsbeispiel
der vorliegenden Erfindung weist ein Rekonstruktionsprozessor zumindest
ein Eingangstor zum Empfangen von Pixeln eines radiografischen Bildes
eines Objekts auf. Der Rekonstruktionsprozessor weist ferner zumindest
ein Eingangstor zum Empfangen von Positionsdaten, die einem empfangenen
Pixel zugeordnet sind, auf. Der Rekonstruktionsprozessor weist ferner
eine Bildverarbeitungslogik auf, die wirksam ist, um zumindest teilweise
auf der Basis der empfangenen Positionsdaten eines empfangenen Pixels
ein erstes Voxel einer ersten Schicht des Objekts und ein zweites
Voxel einer zweiten Schicht des Objekts, zu denen das empfangene
Pixel beiträgt,
zu bestimmen, wobei die Bildverarbeitungslogik wirksam ist, um den
jeweiligen Beitrag des empfangenen Pixels zu dem ersten Voxel und
dem zweiten Voxel parallel anzuwenden.
-
Gemäß einem
weiteren Ausführungsbeispiel
der vorliegenden Erfindung ist ein System zum Rekonstruieren von
Querschnittsbildern eines Objekts von radiografischen Bildern des
Objekts vorgesehen. Das System umfasst eine Einrichtung zum Erfassen
von Pixeln eines Objekts, wobei die Einrichtung zum Erfassen eine nicht
zusammenhängende
Sensoranordnung aufweist. Das System umfasst ferner eine Einrichtung
_ zum Verarbeiten eines durch die Erfassungseinrichtung erfassten
Pixels, um mehrere Schichten des Objekts parallel zu rekonstruieren.
-
Im
Vorstehenden wurden die Merkmale und technischen Vorteile der vorliegenden
Erfindung grob umrissen, damit die folgende ausführliche Beschreibung der Erfindung
besser verständlich
wird. Im folgenden werden zusätzliche
Merkmale und Vorteile der Erfindung beschrieben, die den Gegenstand
der Patentansprüche
der Erfindung bilden. Fachleute sollten erkennen, dass das offenbarte
Konzept und spezifische Ausführungsbeispiel
ohne weiteres als Grundlage zum Modifizieren oder Entwerfen anderer
Strukturen zum Ausführen
derselben Zwecke der vorliegenden Erfindung verwendet werden kann.
Fachleute sollten ferner erkennen, dass derartige äquivalente
Konstruktionen nicht von der Wesensart und dem Schutzumfang der
Erfindung, wie sie bzw. er in den beigefügten Patentansprüchen dargelegt
ist, abweichen. Die neuartigen Merkmale, die als für die Erfindung
charakteristisch gehalten werden, sowohl in bezug auf ihre Organisation
als auch auf ihre Funktionsweise, werden zusammen mit weiteren Zielen
und Vorteilen aus der folgenden Beschreibung besser verständlich,
wenn sie in Verbindung mit den beigefügten Figuren betrachtet werden.
Es wird jedoch ausdrücklich
betont, dass jede der Figuren lediglich zu Veranschaulichungs- und
Beschreibungszwecken geliefert wird und keine Definition der Grenzen
der vorliegenden Erfindung darstellen soll.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1A und 1B eine schematische Darstellung einer
beispielhaften Geometrie eines digitalen Tomosynthesesystems, die
bei Ausführungsbeispielen
der vorliegenden Erfindung verwendet werden kann;
-
2A ein kubisches Objekt,
das in 125 (5 × 5 × 5) kubische
Volumenelemente bzw. Voxel identischer Größe unterteilt wurde;
-
2B zwei Querschnittsschichten
von Voxeln für
das Objekt der 2A;
-
2C ein exemplarisches radiografisches
Abbildungssystem, das zum Erfassen radiografischer Bilder eines
Objekts verwendet werden kann, die zum Rekonstruieren von Querschnittsbildern
gemäß Ausführungsbeispielen
der vorliegenden Erfindung verarbeitet werden können;
-
3A bis 3D beispielhafte Querschnittsbilder,
die anhand eines 3D-Rekonstruktionsprozesses für ein Musterobjekt erzeugt
werden können;
-
4 eine exemplarische Anordnung
gedruckter Schaltungsplatinen, die gemäß Ausführungsbeispielen der vorliegenden
Erfindung geprüft
werden können;
-
5 ein beispielhaftes Blockdiagramm
auf hoher Ebene einer bevorzugten Implementierung einer Rekonstruktionsprozessoreinheit
eines Ausführungsbeispiels
der vorliegenden Erfindung;
-
6 ein Blockdiagramm einer
exemplarischen Implementierung des Rekonstruktionsprozessors der 5 in mehr Einzelheiten;
-
7 eine exemplarische Übersicht
einer Prüfsystemkonfiguration,
bei der Ausführungsbeispiele
der vorliegenden Erfindung implementiert sein können;
-
8 eine exemplarische Systemkonfiguration,
in der zwei Rekonstruktionsprozessoren zum Hochskalieren der Anzahl
von verwendeten Rekonstruktionsspeichern enthalten sind;
-
9 eine exemplarische Systemkonfiguration,
in der zwei Rekonstruktionsprozessoren und zwei Eingangspixelbusse
zum Hochskalieren der Anzahl von verwendeten Pixeleingangsbussen
enthalten sind; und
-
10A–10C beispielhafte,
nicht zusammenhängende
Sensoranordnungen, die zum Erfassen von Bilddaten (Pixeln), die
durch den Rekonstruktionsprozessor bestimmter Ausführungsbeispiele
der vorliegenden Erfindung verarbeitet werden sollen, implementiert
sein können.
-
Verschiedene
Ausführungsbeispiele
der vorliegenden Erfindung ermöglichen
eine effiziente Verarbeitung von radiografischen Bildern eines zu
studierenden Objekts zum Rekonstruieren von Querschnittsbildern eines
derartigen Objekts. Vorzugsweise ist eine Bildrekonstruktionsvorrichtung
(z.B. ein „Rekonstruktionsprozessor") vorgesehen, die
beispielsweise in einem automatisierten Prüfsystem zum Prüfen von
Produkten (z.B. Schaltungsplatinen), die auf einem Montageband hergestellt
werden, zur Qualitätskontrolle
derartiger Produkte implementiert sein kann. Bestimmte Ausführungsbeispiele
der vorliegenden Erfindung ermöglichen
eine ausreichend schnelle Rekonstruktion von Querschnittsbildern
eines Prüfobjekts,
so dass ein automatisiertes Prüfsystem,
bei dem die Bildrekonstruktionsvorrichtung implementiert ist, in
der Lage ist, mit Hochgeschwindigkeits-Fertigungsstraßen Schritt
zu halten. Wie nachstehend näher
beschrieben wird, ermöglichen
Ausführungsbeispiele
der vorliegenden Erfindung eine parallele Rekonstruktion von Bildern
von mehreren Tiefenschichten eines Objekts. Wenn beispielsweise
ein Pixel eines radiografischen Bildes in der Bildrekonstruktionsvorrichtung
gemäß zumindest
einem Ausführungsbeispiel
der vorliegenden Erfindung empfangen wird, bestimmt diese Bildrekonstruktionsvorrichtung
zumindest ein Voxel für
jede einer Mehrzahl von verschiedenen Tiefenschichten, zu dem das
empfangene Pixel beiträgt,
und wendet diesen Beitrag des Pixels parallel an jede der Mehrzahl
von verschiedenen Tiefenschichten an.
-
Gemäß Ausführungsbeispielen
der vorliegenden Erfindung, die nachstehend näher beschrieben werden, können radiografische
Bilder (z.B. Röntgenstrahlenbilder)
eines Prüfobjekts
durch ein radiografisches Abbildungssystem erfasst werden, und derartige
radiografische Bilder werden verarbeitet, um Querschnittsbilder des
Objekts zu rekonstruieren. Vorzugsweise wird ein radiografisches
Abbildungssystem auf Digitalbasis, z.B. ein Kegelstrahltomografie-Abbildungssystem,
verwendet, um radiografische Bilder eines Prüfobjekts zu erfassen, wobei
ein derartiges radiografisches Abbildungssystem auf Digitalbasis
Bilder in digitaler Form (d.h. „Pixel") ausgibt. Allgemein rekonstruiert die
digitale Tomosynthese rechnerisch einen Querschnitt eines 3D-Bildes ausgehend
von mehreren Übertragungsbildern,
die aus verschiedenen Winkeln aufgenommen wurden. Ausführungsbeispiele
der vorliegenden Erfindung werden vorzugsweise in einem digitalen
Tomosynthesesystem implementiert, um Voxel eines Objekts ausgehend
von den erfassten radiografischen Bildern (Pixeln) auf effiziente
Weise zu rekonstruieren (z.B. um Querschnittsbilder zu erzeugen).
-
Bei
Ausführungsbeispielen
der vorliegenden Erfindung werden die erfassten radiografischen
Bilder eines Objekts in eine Bildrekonstruktionsvorrichtung eingegeben,
um ausgehend von diesen radiografischen Bildern eine Mehrzahl von
Querschnittsbildern des Prüfobjekts
zu rekonstruieren. wie nachstehend ausführlicher beschrieben wird,
rekonstruiert eine derartige Bildrekonstruktionsvorrichtung die
Mehrzahl _ von Querschnittsbildern (die mehreren Tiefenschichten
des Objekts entsprechen) vorzugsweise parallel, wodurch die Querschnittsbilder
auf effiziente Weise rekonstruiert werden. Insbesondere verarbeitet
die Bildrekonstruktionsvorrichtung bei einem bevorzugten Ausführungsbeispiel,
wenn jedes Pixel eines erfassten radiografischen Bildes durch die
Bildrekonstruktionsvorrichtung empfangen wird, dieses Pixel für mehrere
Tiefenschichten (oder „Querschnitte") des Objekts parallel.
Beispielsweise bestimmt die Bildrekonstruktionsvorrichtung für ein empfangenes
Pixel vorzugsweise parallel den Beitrag, den dieses Pixel zu jeder
von mehreren Schichten des Prüfobjekts
leistet. Somit werden mehrere Querschnitte insofern parallel rekonstruiert,
als ein Beitrag eines Pixels zu jedem dieser mehreren Querschnitte
parallel auf die mehreren Querschnitte angewendet wird. Bei bestimmten
Anwendungen kann die Mehrzahl von rekonstruierten Querschnittsbildern
verwendet werden, um ein vollständiges
3D-Bild des Prüfobjekts
(oder zumindest eines Teils des Objekts) zu konstruieren.
-
Ein
paralleles Verarbeiten jedes Pixels für mehrere Tiefenschichten gemäß Ausführungsbeispielen
der vorliegenden Erfindung liefert mehrere Vorteile. Erstens ermöglicht es
eine effizientere Rekonstruktion von Querschnittsbildern eines Prüfobjekts.
Im Gegensatz zu einer Verwendung von empfangenen Pixeln, um zuerst
eine erste Schicht zu konstruieren und dann später diese Pixel erneut zu erfassen
und/oder erneut zu verwenden, um eine zweite Schicht zu rekonstruieren,
kann ein empfangenes Pixel parallel auf mehrere Schichten angewendet
werden, wodurch das Erfordernis, dieses Pixel für die mehreren Schichten seriell
erneut zu er fassen und/oder erneut zu verarbeiten, entfällt. Wie
nachstehend beschrieben wird, ermöglichen beispielsweise bestimmte
Ausführungsbeispiele,
dass die Rekonstruktion in Echtzeit durchgeführt wird. Ferner kann die Parallelverarbeitungstechnik
von Ausführungsbeispielen
der vorliegenden Erfindung die Menge an Bilddaten, die für den Rekonstruktionsprozess
gespeichert werden muss, verringern. Beim Verwenden eines radiografischen
Systems auf Digitalbasis besteht in der Regel ein Hauptanliegen
darin, wie mit der riesigen Menge an Bilddaten, die erfasst werden,
umgegangen werden soll. Parallelverarbeitungstechniken von Ausführungsbeispielen
der vorliegenden Erfindung können
die Bilddatenmenge, die während
des Rekonstruktionsprozesses gespeichert wird, verringern, da, wenn
ein Pixel empfangen wird, sein Beitrag zu mehreren Schichten parallel bestimmt
werden kann, und danach das Pixel nicht zurückbehalten werden muss (wie
dies der Fall wäre,
wenn es für
eine spätere
Rekonstruktion bestimmter Schichten benötigt würde).
-
Ferner
liefert ein bevorzugtes Ausführungsbeispiel
der vorliegenden Erfindung eine Bildrekonstruktionsvorrichtung,
die insofern generisch ist, als sie mit beliebigen diversen unterschiedlichen
radiografischen Abbildungssystemkonfigurationen verwendet werden
kann, und/oder als beliebige diverse unterschiedliche Bildverarbeitungstechniken
zum Verarbeiten empfangener Bildpixel, um Querschnittsbilder zu
rekonstruieren, in derselben implementiert sein können. Diverse
unterschiedliche Konfigurationen eines radiografischen Abbildungssystems
zum Abbilden eines Prüfobjekts
sind bekannt. Als Beispiele sind diverse unterschiedliche Abtastwege
(oder Schrittmuster) zum Abbilden eines Prüfobjekts bekannt, und diverse
unterschiedliche Anordnungen von Detektorarrays sind bekannt. Eine
parallele Rekonstruktion mehrerer Tiefenschichten wird für verschiedene
implementierte Rekonstruktionsprozesse (z.B. Rückprojektion oder Verschieben-Und-Hinzufügen-Algorithmus)
ermöglicht.
Das heißt,
dass eine derartige parallele Rekonstruktion nicht von einem spezifischen
Rekonstruktionsprozess oder einer spezifischen Abbildungssystemkonfiguration
abhängig
ist, sondern statt dessen kann jegliche r) von vielen verschiedenen
tomosynthetischen Rekonstruktionsprozessen und Abbildungssystemkonfigurationen
verwendet werden.
-
Die
wünschenswerteste
Konfiguration eines radiografischen Abbildungssystems (z.B. der
wünschenswerteste
Abtastweg und/oder die wünschenswerteste
Detektorarrayanordnung) kann für
verschiedene Arten von geprüften
Objekten variieren (z.B. von einem Typ einer geprüften Schaltungsplatine
zu einem anderen). Ein bevorzugtes Ausführungsbeispiel der vorliegenden
Erfindung liefert eine Bildrekonstruktionsvorrichtung, die wirksam
ist, um für
jegliche von diversen unterschiedlichen radiografischen Abbildungssystemkonfigurationen
eine effiziente Bildrekonstruktion (z.B. unter Verwendung einer
parallelen Rekonstruktion von mehreren Querschnitten) zu liefern.
Somit ist die Funktion der Bildrekonstruktionsvorrichtung eines
bevorzugten Ausführungsbeispiels
nicht von einer bestimmten radiografischen Abbildungssystemkonfiguration
(z.B. einem jeweiligen Abtastweg, einer jeweiligen Detektorarrayanordnung
usw.) abhängig,
um eine parallele Rekonstruktion mehrerer Querschnitte zu liefern.
Vielmehr ist, wie nachstehend näher
beschrieben wird, die Bildrekonstruktionsvorrichtung bei einem bevorzugten
Ausführungsbeispiel
wirksam, um willkürliche
Pixel (d.h. Pixel in einer beliebigen Reihenfolge) von einem radiografischen
Abbildungssystem zu empfangen, die Voxel jedes einer Mehrzahl von
Querschnitten, zu denen ein empfangenes Pixel beiträgt, zu bestimmen
und den jeweiligen Beitrag eines derartigen Pixels auf jedes der
bestimmten Voxel anzuwenden. Somit ist der parallele Rekonstruktionsprozess
eines bevorzugten Ausführungsbeispiels
nicht von einer spezifischen Reihenfolge abhängig, in der Pixel von einem
radiografischen Abbildungssystem empfangen werden, sondern kann
statt dessen für
beliebige diverse unterschiedliche radiografische Abbildungsprozesse
(z.B. jegliche diverse unterschiedliche Abtastwege) durchgeführt werden.
Dementsprechend muss das radiografische Abbildungssystem nicht auf eine bestimmte
Weise konfiguriert sein, um eine parallele Verarbeitung durch die
Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
zu ermöglichen,
sondern statt dessen können
beliebige diverser unterschiedlicher radiografischer Abbildungssystemkonfigurationen,
die digitale Bilddaten (Pixel) für
ein Prüfobjekt ausgeben,
in Verbindung mit der Bildrekonstruktionsvorrichtung verwendet werden.
Die Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
ist ausreichend flexibel, um eine parallele Verarbeitung für beliebige
diverser unterschiedlicher radiografischer Abbildungssystemkonfigurationen
durchzuführen.
-
Ferner
können
bei der Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
beliebige diverser unterschiedlicher Bildverarbeitungstechniken
zum Rekonstruieren von Querschnittsbildern implementiert sein. Beispielsweise
sind in der Technik diverse Rückprojektions-
und andere tomosynthetische Bildverarbeitungstechniken bekannt,
und jegliche einer Mehrzahl von unterschiedlichen Typen von Bildverarbeitungstechniken
können
an der Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
implementiert sein. Ein bevorzugtes Ausführungsbeispiel ist beispielsweise
wirksam, um ein Pixel (z.B. ein willkürliches Pixel, wie oben erwähnt) von
einem radiografischen Abbildungssystem zu empfangen, die Voxel jedes
einer Mehrzahl von Querschnitten, zu denen das empfangene Pixel
beiträgt,
zu bestimmen und eine gewünschte
Bildverarbeitungstechnik (z.B. eine Rückprojektions- oder Verschieben-Und-Hinzufügen-Technik usw.)
zu verwenden, um den jeweiligen Beitrag eines derartigen Pixels
auf jedes der bestimmten Voxel anzuwenden. Somit ist der parallele
Rekonstruktionsprozess eines bevorzugten Ausführungsbeispiels nicht von einer
spezifischen Bildverarbeitungstechnik abhängig, die zum Durchführen der
Rekonstruktion verwendet wird, sondern kann statt dessen unter Verwendung
beliebiger einer Mehrzahl unterschiedlicher Typen von Rekonstruktionsprozessen
(z.B. unterschiedlicher Typen von Rückprojektionstechniken, Verschieben-Und-Hinzufügen-Techniken
usw.) durchgeführt
werden. Somit liefern Ausführungsbeispiele
der vorliegenden Erfindung eine allgemeine Lösung, die beliebige diverser
unterschiedlicher Typen von Bildverarbeitungstechniken implementieren
kann (z.B. beliebige von diversen unterschiedlichen Rekonstruktionstechniken
auf Rückprojektionsbasis,
wie z.B. eine beliebige auf Rückprojektion
basierte Rekonstruktionstechnik, die bei den Rückprojektion-Blöcken 604A und 604B,
die nachfolgend in Verbindung mit 6 beschrieben
werden, wirksam ist).
-
Angesichts
des Vorstehenden liefert ein bevorzugtes Ausführungsbeispiel der vorliegenden
Erfindung eine generische Bildrekonstruktionsvorrichtung, die bei
vielen unterschiedlichen radiografischen Abbildungssystemkonfigurationen
und bei vielen unterschiedlichen Bildrekonstruktionstechniken (z.B.
diversen unterschiedlichen tomosynthetischen Rekonstruktionstechniken)
wirksam ist, was mehrere Vorteile liefert. Erstens können zum
Prüfen
unterschiedlicher Objekttypen unterschiedliche radiografische Abbildungssystemkonfigurationen
gewünscht
werden (z.B. können
unterschiedliche Abtastwege, unterschiedliche Detektoranordnungen
usw. gewünscht
werden), und ein bevorzugtes Ausführungsbeispiel befähigt die
Bildrekonstruktionsvorrichtung, bei vielen unterschiedlichen radiografischen
Abbildungssystemkonfigurationen, die zum Prüfen eines gegebenen Objekttyps
gewünscht
sein mögen,
ohne weiteres verwendet zu werden. Ein weiterer Vorteil besteht
darin, dass unterschiedliche radiografische Abbildungssystemkonfigurationen
gewünscht
werden können,
um die Kosten des Abbildungssystems zu verringern oder um die Leistungsfähigkeit
des Abbildungssystems zu erhöhen.
Somit kann das radiografische Abbildungssystem für eine gegebene Anwendung (z.B.
zum Abbilden eines bestimmten Objekttyps, zum Verringern der Kosten
oder zum Erhöhen
der Leistungsfähigkeit) auf
optimale Weise konfiguriert werden, und die Bildrekonstruktionsvorrichtung
eines bevorzugten Ausführungsbeispiels
ist ohne weiteres in der Lage, bei vielen radiografischen Abbildungssystemkonfigurationen,
die even tuell gewünscht
werden, verwendet zu werden. Wie nachstehend ausführlicher
beschrieben wird, ist ein bevorzugtes Ausführungsbeispiel der Bildrekonstruktionsvorrichtung
skalierbar und kann somit ohne weiteres bezüglich beliebiger unterschiedlicher
Skalen einer Bildverarbeitung angepasst werden. Falls ein radiografisches
Abbildungssystem beispielsweise konfiguriert ist, um eine Mehrzahl
von Pixeln _ parallel auszugeben, ist die Bildrekonstruktionsvorrichtung
eines bevorzugten Ausführungsbeispiels
skalierbar, um in der Lage zu sein, eine derartige Mehrzahl von
Pixeln zu empfangen und parallel zu verarbeiten. Ferner sind Ausführungsbeispiele
der vorliegenden Erfindung skalierbar, um zu ermöglichen, dass eine beliebige
Anzahl von Tiefenschichten parallel rekonstruiert wird. Ein weiterer
Vorteil eines Ausführungsbeispiels
der vorliegenden Erfindung ist seine Fähigkeit, unterschiedliche tomosynthetische
Rekonstruktionstechniken zu verwenden, was eine Feinabstimmung des
rekonstruierten Bildes ermöglicht,
um dem Anwendungsbereich genau zu entsprechen. Unterschiedliche
Rekonstruktionstechniken erzeugen Bilder mit unterschiedlichen Charakteristika
oder Artefakten. Fachleute werden diverse andere Vorteile einer
derartigen generischen Bildrekonstruktionsvorrichtung erkennen.
-
Wie
oben beschrieben wurde, wird eine Bildverarbeitung von Objekten,
z.B. Lötverbindungen,
bei automatisierten Prüfsystemen
zur Qualitätskontrolle
verwendet. Beispielsweise kann eine Lötverbindung auf einer gedruckten
Schaltungsplatine abgebildet werden (z.B. durch ein radiografisches
Abbildungssystem), und ein derartiges Bild kann durch ein automatisiertes
Prüfsystem
verarbeitet werden, um diverse Parameter, z.B. Länge, Breite, Krümmung, relative
Opazität
und ähnliche
Werte der Lötverbindung,
zu bestimmen. Die diversen für
die Lötverbindung
bestimmten Parameter können
dann durch das automatisierte Prüfsystem
ausgewertet werden, um zu bestimmen, ob die Lötverbindung eine akzeptable
Qualität
aufweist.
-
Beispielsweise
kann die Dicke eines Lötmaterials
(das in der Regel eine Kombination aus Blei und Zinn ist) seitens
eines automatisierten Prüfsystems
durch eine Analyse eines Röntgenstrahlenbildes
bzw. von Röntgenstrahlenbildern
des Lötmaterials
geprüft
werden. Bei einem Röntgenstrahlenbild
eines Lötmaterials besteht
eine Beziehung zwischen den Intensitäten, die das Röntgenstrahlenbild
und die Dicke des Lötmaterials,
das das Röntgenstrahlenbild
bildet, umfassen. In der Regel nimmt die Bildintensität von Werten,
die helleren Grauschattierungen (Weiß) entsprechen, auf Werte,
die dunkleren Grauschattierungen (Schwarz) entsprechen, zu, wenn
die Dicke des Lötmaterials
zunimmt. Das heißt,
dass das Bild eines dünnen
Lötmittelabschnitts
eine Graustufe aufweist, die geringer ist als die Graustufe des
Bildes eines dickeren Lötmittelabschnitts.
Das Bild des dünnen
Abschnitts scheint eine hellere Grauschattierung aufzuweisen als
das Bild des dickeren Abschnitts. Diese Konvention wird üblicherweise
bei der elektronischen Bilddarstellung von Röntgenstrahlenbildern verwendet,
es kann jedoch auch die umgekehrte Konvention verwendet werden,
d.h. bei der das Bild eines dünnen
Lötmittelabschnitts
eine Graustufe aufweist, die stärker
ist als die Graustufe des Bildes eines dickeren Lötmittelabschnitts.
Die letztgenannte Konvention wird traditionell bei der Filmradiografie
verwendet, bei der die Röntgenstrahlenbilder
auf Röntgenfilm
aufgezeichnet werden. Beide Konventionen können bei Ausführungsbeispielen
der vorliegenden Erfindung implementiert sein.
-
Ausführungsbeispiele
der vorliegenden Erfindung werden vorzugsweise in einem digitalen
3D-Tomografiesystem implementiert. In der Technik sind verschiedene
digitale 3D-Tomografieabbildungssysteme
hinreichend bekannt, von denen viele in Verbindung mit Ausführungsbeispielen
der vorliegenden Erfindung verwendet werden können, und somit werden beispielhafte
Abbildungssysteme hierin nur kurz beschrieben, um die Aufmerksamkeit
nicht von dem erfindungsgemäßen System
und Verfahren zum Rekonstruieren von 3D-Bilddaten (Voxel) für ein Prüfobjekt
abzulenken. Exemplarische 3D- Tomografiesysteme,
die zur Verwendung bei industriellen Prüfsystemen vorgeschlagen wurden
und bei denen Ausführungsbeispiele
der vorliegenden Erfindung implementiert sein können, umfassen diejenigen,
die in der US-Patentschrift
Nr. 6,002,739 mit dem Titel „COMPUTED
TOMOGRAPHY WITH ITERATIVE RECONSTRUCTION OF THIN CROSS-SECTIONAL PLANES" und in der US-Patentschrift
Nr. 6,178,223 mit dem Titel „IMAGE
RECONSTRUCTION METHOD AND APPARATUS", deren Offenbarungen in ihrer Gesamtheit
durch Bezugnahme in das vorliegende Dokument aufgenommen sind, offenbart
sind. Selbstverständlich
können
diverse andere digitale 3D-Tomografiesystemkonfigurationen,
die derzeit bekannt sind oder in Zukunft entwickelt werden, verwendet
werden, und Ausführungsbeispiele
der vorliegenden Erfindung können
bei derartigen Systemen implementiert werden, um die Effizienz des
3D-Rekonstruktionsprozesses derselben zu verbessern. Ausführungsbeispiele
der vorliegenden Erfindung können
in Verbindung mit jeglicher radiografischen Abbildungseinrichtung
verwendet werden, die in der Lage ist, Bilddaten (Pixel) eines Prüfobjekts
zu erfassen. Insbesondere, wie nachstehend näher beschrieben wird, können Ausführungsbeispiele
der vorliegenden Erfindung in Verbindung mit einer derartigen radiografischen
Abbildungseinrichtung verwendet werden, um 3D-Bilddaten (Voxel)
für das
Prüfobjekt
auf effiziente Weise ausgehend von den erfassten Pixeldaten zu rekonstruieren.
-
1A – 1B zeigen
eine schematische Darstellung einer beispielhaften Geometrie eines
digitalen Tomosynthesesystems, die bei Ausführungsbeispielen der vorliegenden
Erfindung verwendet werden kann. Im einzelnen zeigen 1A – 1B ein
beispielhaftes Kegelstrahltomographiesystem. Eine Röntgenstrahlenquelle 20 emittiert
Röntgenstrahlen
auf ein Objekt 10 (z. B. eine Schaltungsplatinenanordnung),
die sich in der Prüfung
befindet, und die Röntgenstrahlen,
die das Objekt 10 durchdringen, werden durch ein Array
von Sensoren (oder Detektoren) 30 erfasst. Um mehrere Ansichten
einer Region eines Objekts 10 zu erhalten (z. B. zum Rekon struieren
von Querschnittsbildern dieser Region), kann bzw. können entweder
die Röntgenstrahlenquelle 20,
das Objekt 10 und/oder das Sensorarray 30 effektiv
bewegt werden. Beispielsweise zeigt 1A ein
Beispiel einer Region 10A des Objekts 10,
die bei einem ersten Blickwinkel abgebildet wird, und 1B zeigt ein Beispiel einer
derartigen Region 10A des Objekts 10,
die bei eine zweiten Blickwinkel abgebildet wird. Wie oben beschrieben
wurde, können
Bilddaten aus mehreren Ansichten einer Region verarbeitet werden
(z. B. mit Rückprojektions-
oder Verschieben-und-Hinzufügen-Algorithmen), um
Querschnittsbilder der Region zu rekonstruieren.
-
Bei
dieser beispielhaften Implementierung kann die Röntgenstrahlenquelle 20 eine
Elektronenstrahlenquelle umfassen, die eine (nicht gezeigte) Leistungsversorgung
zum Betreiben der Röntgenstrahlenquelle 20 bei
einem gewünschten
Spannungspegel, um Röntgenstrahlen
zu erzeugen, aufweist. Ein Elektronenstrahl 40, der durch
eine Geladene-Teilchen-Kanone
in der Röntgenstrahlenquelle 20 erzeugt
wird, wird über
die Quelle einer Zielanordnung 22 (die eine geerdete Anode
sein kann) in einem vorbestimmten Muster (z. B. einem Abtast- oder
Schrittgebungsmuster) abgelenkt. Die Röntgenstrahlenquelle 20 umfaßt einen
Mechanismus zum Steuern der Bewegung des Elektronenstrahls 40 über die
Zielanordnung 22, z. B. ein Ablenkjoch 21 unter der
Steuerung eines Elektronenstrahlbildgenerators (nicht gezeigt).
Ein durch die beispielhafte Geometrie der Röntgenstrahlenquelle 20 gelieferter
Vorteil besteht darin, dass sie ermöglicht, dass Röntgenstrahlen
von mehreren Winkeln auf ein Objekt 10 projiziert werden,
ohne dass eine physische Umpositionierung der Röntgenstrahlenquelle 20 erforderlich
ist. Beispielsweise können
Röntgenstrahlen 41 erzeugt
werden, indem die Oberfläche
einer Röntgenstrahlenröhre mit
einem Elektronenstrahl 40 bombardiert wird, und indem der
Elektronenstrahl 40 elektronisch abgelenkt wird, kann die
Röntgenstrahlenquelle 20 effektiv
bewegt werden. Somit bewegen sich die Röntgenstrahlen 20 und/oder
das Sensorarray 30 e ventuell gar nicht (sondern können statt dessen
in ihrer Position feststehend sein), und statt dessen kann der Effekt
ihrer Bewegung durch andere Techniken erzielt werden, z. B. durch
Ablenken des Elektronenstrahls 40 der Röntgenstrahlröhre (z.
B. um eine Abbildung des Objekts 10 bei diversen unterschiedlichen
Blickwinkeln zu erzielen).
-
In
den 1A – 1B ist die Zielanordnung 22 entworfen,
um Röntgenstrahlen
zu emittieren, die bei 1A einen
divergierenden Strahl 41 bilden und bei 1B einen divergierenden Strahl 42 bilden,
die das Sensorarray 30 (aus verschiedenen Blickwinkeln)
jeweils direkt unterbrechen. Im Betrieb kann der Elektronenstrahl 40 zuerst
an einer Position 50 an der Zielanordnung 22 verweilen,
wie in 1A gezeigt ist.
Wenn der Elektronenstrahl 40 die Zielanordnung 22 an
der Position 50 trifft, wird ein divergierender Röntgenstrahl 41 emittiert.
Der Elektronenstrahl 40 kann dann an die Position 51 an
der Zielanordnung 22 gelenkt werden, wie in 1B gezeigt ist. Wenn der
Elektronenstrahl 40 die Zielanordnung 22 an der
Position 51 trifft, wird ein divergierender Röntgenstrahl 42 emittiert,
der ermöglicht,
dass Bilddaten bei einem anderen Blickwinkel als dem der 1A durch das Sensorarray 30 erfasst
werden. Bei bestimmten Ausführungsbeispielen
kann ein Kollimatorgitter implementiert sein, um, wie beispielsweise
in der U.S.-Patentschrift
Nr. 6,178,223 beschrieben ist, in Umgebungen, in denen ein Begrenzen
der Belichtung des Objekts 10 (oder anderer vorliegender
Objekte) auf Röntgenstrahlen
wünschenswert
ist (z. B. wenn das Objekt 10 ein Mensch ist, wie bei medizinischen
Anwendungen), die Röntgenstrahlen 41 und 42 zu
lenken.
-
Bei
bestehenden radiographischen Abbildungssystemen kann das Sensorarray 30 eine
Mehrzahl von in einem Array angeordneten diskreten Detektoren (die
hierin als „Detektorelemente" bezeichnet sind)
umfassen. Jedes Detektorelement umfaßt eine Oberfläche, die
einen Erfassungsbereich zum Erfassen von Röntgenstrahlen aufweist, wie
in der Technik hinreichend bekannt ist. Jedes Detektorelement kann
in der Lage sein, die Menge an Röntgenstrahlen,
die es treffen, unabhängig
zu messen. Wenn ein Objekt 10 zwischen der Röntgenstrahlenquelle 20 und
dem Sensorarray 30 angeordnet ist, gelangen manche der
Röntgenstrahlen
in dem Röntgenstrahlenbündel 41 (der 1A) durch einen Abschnitt
des Objekts 10, und wenn sie nicht gestreut oder absorbiert
werden, treffen sie die Detektorelemente, die das Sensorarray 30 bilden.
Die Röntgenstrahlen, die
jegliches einzelne Detektorelement treffen, umfassen einen Teil
des Röntgenstrahlenbündels 41,
der hierin als Röntgenstrahlenbündel-Teilpfad bezeichnet
wird.
-
Jedes
Detektorelement kann Komponenten zum Messen der Menge an Röntgenstrahlenphotonen,
die das Detektorelement treffen, und zum Ausgeben eines Signals,
das für
diese Messung repräsentativ
ist, aufweisen. Alternativ dazu kann jedes Detektorelement Komponenten
zum Erzeugen eines elektrischen Signals umfassen, das allgemein
proportional zu der Gesamtenergie der Röntgenstrahlen ist, die das
Detektorelement treffen. Die Größe der erzeugten
elektrischen Signale entspricht der Flussintensität der Röntgenstrahlen
von dem jeweiligen Röntgenstrahlenbündel-Teilpfad
des Röntgenstrahlenbündels 41.
Jedes Detektorelement kann ein Pixel erzeugen, das den durch dasselbe
erfassten Röntgenstrahlen
entspricht. Eine Verwendung eines Sensorarrays 30, das
die Röntgenstrahlen,
die jedes Detektorelement treffen, unabhängig misst, führt zu der Erzeugung
von Röntgenstrahlendurchlässigkeitsinformationen,
die zu dem Röntgenstrahlenfluss,
der entlang bestimmter Röntgenstrahlenbündel-Teilpfade durch das
Objekt 10 gelangt, proportional sind. Die sich ergebenden
Intensitätsdaten
können
verwendet oder manipuliert werden, um eine Darstellung des Objekts 10 zu erzeugen.
-
Selbstverständlich können bei
Ausführungsbeispielen
der vorliegenden Erfindung verschiedene andere Konfigurationen eines
digitalen radiographischen Abbildungssystems imple mentiert sein,
das wirksam ist, um digitale, radiographische Bilder eines Objekts 10 zu
erfassen, einschließlich,
jedoch nicht ausschließlich, der
in der U.S.-Patentschrift Nr. 6,178,223 offenbarten. Während in
Verbindung mit einem bevorzugten Ausführungsbeispiel der vorliegenden
Erfindung ein radiographisches Kegelstrahlabbildungssystem, z. B.
das der 1A – 1B, verwendet wird, sollte
man erkennen, dass die vorliegende Erfindung nicht auf eine spezifische Konfiguration
eines digitalen radiographischen Abbildungssystems beschränkt ist.
Vielmehr kann jegliche Konfiguration eines digitalen radiographischen
Abbildungssystems wirksam, um digitale, radiographische Bilddaten
(Pixel) eines Objekts 10, die derzeit bekannt ist oder
in Zukunft entwickelt wird, bei Ausführungsbeispielen der vorliegenden
Erfindung implementiert sein. Das heißt, dass verschiedene derzeit
bekannte oder in Zukunft zu entwickelnde Konfigurationen zum Erfassen
von digitalen, radiographischen Bildern eines Objekts 10 in Verbindung
mit der nachstehend beschriebenen Bildrekonstruktionsvorrichtung
verwendet werden, um ausgehend von den radiografischen Bildern auf
effiziente Weise Querschnittsbilder des Objekts 10 (oder
Regionen desselben) zu rekonstruieren. Wie nachstehend beschrieben
wird, ist ferner ein bevorzugtes Ausführungsbeispiel einer Bildrekonstruktionsvorrichtung
ohne weiteres bei vielen unterschiedlichen Konfigurationen eines
radiografischen Abbildungssystems wirksam.
-
Die
herkömmliche
digitale 3D-Tomographie bewirkt eine Annäherung an ein Objekt durch
diskrete Volumenelemente, die als Voxel bezeichnet werden. „Voxel" (oder „Volumenpixel") sind auf dem Gebiet
der Bildverarbeitung hinreichend bekannt und werden bei der 3D-Abbildung üblicherweise
verwendet. Im allgemeinen ist ein Voxel der kleinste unterscheidbare
kästchenförmige Teil
eines dreidimensionalen Bildes. „Voxelisierung" ist ein hinreichend
bekanntes Verfahren, bei dem einem Bild zusätzliche Tiefe verliehen wird,
indem ein Satz von Querschnittsbildern verwendet wird, der als volumetrischer
Datensatz bekannt ist.
-
Zum
Zweck eines besseren Verständnisses
bestimmter Prinzipien, die üblicherweise
bei der 3D-Tomographie verwendet werden und die bei bestimmten Ausführungsbeispielen
der vorliegenden Erfindung, die nachstehend beschrieben werden,
verwendet werden können,
werden Aspekte herkömmlicher
Bildverarbeitungstechniken in Verbindung mit den 2A – 2C beschrieben. Ebenso wie
Ausführungsbeispiele
der vorliegenden Erfindung nicht auf die in Verbindung mit 1A – 1B beschriebene
beispielhafte radiographische Abbildungssystemkonfiguration beschränkt sind,
sollen Ausführungsbeispiele
der vorliegenden Erfindung in keinster Weise durch die in Verbindung
mit 2A – 2C beschriebenen allgemeinen
Bildverarbeitungsprinzipien eingeschränkt werden. Vielmehr werden
Bildverarbeitungsprinzipien, z. B. die Verwendung von Voxeln, in
Verbindung mit 2A – 2C kurz beschrieben, um das
Verständnis
des Lesers insofern zu fördern,
als Prinzipien, wie sie hierin beschrieben werden, bei Ausführungsbeispielen
der vorliegenden Erfindung verwendet werden.
-
2A veranschaulicht ein kubisches
Objekt 50, das in 125 (5 × 5 × 5) kubische Voxel einer identischen
Größe unterteilt
wurde. Zum Zweck einer dreidimensionalen Abbildung des Objekts 50 wird
die Dichte (oder der Absorptionskoeffizient bzw. die Materialdicke)
jedes der 125 Voxel aus den Daten rekonstruiert, die in mehreren
Ansichten des Objekts 50 dargestellt sind, wie durch ein
Array von Sensoren, z. B. das Array 30 in 1A – 1B, erfasst.
-
Bei
vielen Anwendungen ist ein vollständiges 3D-Bild nicht notwendig.
Für eine
Prüfung
einer Anordnung von doppelseitigen gedruckten Schaltungsplatinen
können
beispielsweise wenige Bildebenen oder „Querschnitte" ausreichend sein,
um die Qualität
der Lötverbindungen
zu bestimmen. 2B zeigt
zwei Schichten von Voxeln für
das Objekt 50 der 2A.
-
Unter
Bezugnahme auf 2C ist
ein beispielhaftes radiographisches Abbildungssystem 200 gezeigt, beispielsweise
dasjenige, das in der U.S.-Patentschrift Nr. 6,178,223 ausführlicher
beschrieben ist, das zum Erfassen von radiographischen Bildern des
Objekts 10 verwendet werden kann. Bei dieser beispielhaften
Konfiguration eines radiographischen Abbildungssystems umfaßt die Quelle 20 ein
Kollimatorgitter 212, das in der Lage ist, eine Mehrzahl
von Röntgenstrahlenbündeln (die
eine Mehrzahl von Röntgenstrahlenbündel-Teilpfaden umfassen
können,
wie nachfolgend beschrieben wird) bei diversen unterschiedlichen
Winkeln auf ein Objekt 10 zu richten. Das heißt, dass
ein Röntgenstrahlenbündel zunächst bei
einem ersten Winkel auf das Objekt 10 gerichtet wird und
dass anschließend
ein Röntgenstrahlenbündel bei
einem zweiten Winkel auf das Objekt 10 gerichtet wird usw.,
um bei einer Mehrzahl von unterschiedlichen Blickwinkeln Bilddaten
für das
Objekt 10 zu erhalten. Wenn das Kollimatorgitter 212 bei
dem beispielhaften System 200 der 2C verwendet wird, um Röntgenstrahlenbündel bei
diversen unterschiedlichen Winkeln auf das Objekt 10 zu
richten, um ausreichende Daten zu erfassen, um verschiedene Tiefenschichten
des Objekts 10 zu rekonstruieren, sollte man erkennen, dass
bei anderen Konfigurationen diverse derzeit bekannte oder in Zukunft
zu entdeckende Techniken zum gleichzeitigen oder seriellen Erzeugen
von Röntgenstrahlenbündeln, die
bei diversen unterschiedlichen Winkeln auf das Objekt 10 gerichtet
werden, verwendet werden können.
-
Wie
in diesem Beispiel gezeigt ist, sind ein erster Röntgenstrahlenbündel-Teilpfad 201 und
ein zweiter Röntgenstrahlenbündel-Teilpfad 205 zwei
von vielen Röntgenstrahlenbündel-Teilpfaden,
die von einer ersten Apertur 210 des Kollimatorgitters 212 ausstrahlen.
Zu Übersichtlichkeits- und Erläuterungszwecken
sind die übrigen
Röntgenstrahlenbündel-Teilpfade
nicht gezeigt. Manche der Röntgenstrahlen,
die sich entlang des ersten Röntgenstrahlenbündel-Teilpfads 201 und
des zweiten Röntgenstrahlenbündel-Teilpfads 205 bewegen, gelangen
durch das Objekt 10 und treffen die Detek toren 225 bzw. 227 des
Multidetektorarrays 30. Man wird erkennen, dass die Informationen,
die durch Röntgenstrahlen,
die sich entlang des ersten Röntgenstrahlenbündel-Teilpfads 201 bewegen,
an den Detektor 225 geliefert werden, keinem einzigen Punkt
in dem Objekt 10 entsprechend; vielmehr bildet der Pfad
des ersten Röntgenstrahlenbündel-Teilpfads 201,
während
er durch das Objekt 10 gelangt, ein Volumen, das eine erste
Scheibe (oder einen „Querschnitt" oder eine „Tiefenschicht") 230, eine
zweite Scheibe 235 und eine dritte Scheibe 240 schneidet.
Insbesondere erzeugen Röntgenstrahlen,
die sich an einem ersten Röntgenstrahlenbündel-Teilpfad 201 entlangbewegen,
ein Volumen, das vollständig
oder teilweise mit einem ersten Voxel 245 (der Tiefenschicht 230),
einem zweiten Voxel 250 (der Tiefenschicht 235)
und einem dritten Voxel 255 (der Tiefenschicht 240)
zusammenfällt.
-
Die
durch den Detektor 225 von dem Röntgenstrahlenbündel-Teilpfad 201 erhaltenen
Informationen können
zu einer Rekonstruktion des ersten Voxels 245 in einem
rekonstruierten Querschnittsbild, das der Tiefenschicht 230 entspricht,
zu einer Rekonstruktion des zweiten Voxels 250 in einem
rekonstruierten Querschnittsbild, das der Tiefenschicht 235 entspricht,
und zu einer Rekonstruktion des dritten Voxels 255 in einem rekonstruierten
Querschnittsbild, das der Tiefenschicht 240 entspricht,
beitragen.
-
Bezüglich des
zweiten Röntgenstrahlenbündel-Teilpfads 205 können die
durch den Detektor 227 gelieferten Informationen zu einer
Rekonstruktion eines vierten Voxels 260 in einem rekonstruierten
Querschnittsbild, das der Tiefenschicht 230 entspricht,
zu einer Rekonstruktion eines fünften
Voxels 265 in einem rekonstruierten Querschnittsbild, das
der Tiefenschicht 235 entspricht, und zu einer Rekonstruktion
eines sechsten Voxels 270 in einem rekonstruierten Querschnittsbild,
das der Tiefenschicht 240 entspricht, beitragen.
-
Ein
dritter Röntgenstrahlenbündel-Teilpfad 275 und
ein vierter Röntgenstrahlenbündel-Teilpfad 280 sind
zwei von vielen Röntgenstrahlenbündel-Teilpfaden,
die von einer zweiten Apertur 285 ausstrahlen. Die verbleibenden
Röntgenstrahlenbündel-Teilpfade,
die von der zweiten Apertur 285 ausstrahlen, sind für die Zwecke
der Übersichtlichkeit
und Erläuterung
nicht gezeigt. Manche der Röntgenstrahlen,
die sich entlang des Röntgenstrahlenbündel-Teilpfads 275 und
des Röntgenstrahlenbündel-Teilpfads 280 bewegen,
gelangen durch das Objekt 10 und treffen die Detektoren 290 bzw. 291.
Wie oben bei den Teilpfaden 201 und 205 beschrieben
wurde, entsprechen die Intensitätsinformationen,
die dem Detektor 290 durch Röntgenstrahlen geliefert werden,
die sich entlang des dritten Röntgenstrahlenbündel-Teilpfads 275 bewegen,
keinem einzigen Punkt in dem Objekt 10; vielmehr sind die
Intensitätsinformationen
eine Ansammlung von Informationen für ein Volumen, das alle Ebenen/Scheiben
zwischen dem Kollimatorgitter 212 der Quelle 20 und
dem Sensorarray 30, einschließlich der Ebenen/Scheiben,
die das Voxel 270 enthalten, schneidet. Desgleichen entsprechen
die Intensitätsinformationen,
die dem Detektor 291 durch Röntgenstrahlen geliefert werden,
die sich entlang des Röntgenstrahlenbündel-Teilpfads 280 bewegen,
keinem einzigen Punkt in dem Objekt 10; vielmehr sind die Intensitätsinformationen
eine Anhäufung
von Informationen für
ein Volumen, das alle Ebenen/Scheiben zwischen dem Kollimatorgitter 212 der
Quelle 20 und dem Sensorarray 30, einschließlich der
Ebenen/Scheiben, die die Voxel 276, 277 und 278 umfassen,
schneidet.
-
Pixeldaten,
die der durch den Sensor 30 erfassten Intensität entsprechen,
werden vorzugsweise durch das radiographische Abbildungssystem 200 an
eine Bildrekonstruktionsvorrichtung ausgegeben, die wirksam ist,
um die Pixeldaten zum Rekonstruieren von Querschnittsbildern des
Objekts zu verarbeiten. Bei bestimmten Ausführungsbeispielen verarbeitet
die Bildrekonstruktionsvorrichtung die empfangenen Pixeldaten beispielsweise
durch Kombinieren oder Summieren der In tensität für ein Voxel von allen Detektoren,
die Röntgenstrahlen
erfassen, die sich entlang Röntgenstrahlenbündel-Teilpfaden bewegen,
die vollständig
oder teilweise mit diesem bestimmten Voxel zusammenfallen und diesem
Voxel zu Rekonstruktionszwecken zugewiesen wurden. Beispielsweise
können
Intensitätsdaten,
die durch den Detektor 227 von dem Röntgenstrahlenbündel-Teilpfad 205 in
einem durch denselben ausgegebenen ersten Pixel gesammelt werden,
und Intensitätsdaten,
die durch den Detektor 290 von dem Röntgenstrahlenbündel-Teilpfad 275 in
einem durch denselben ausgegebenen zweiten Pixel gesammelt werden,
beim Rekonstruieren des sechsten Voxels 270 verwendet werden
(da beide Röntgenstrahlenbündel-Teilpfade 205 und 275 das
sechste Voxel 270 schneiden).
-
Die
radiographische Abbildungsgeometrie und -vorrichtung, die unter
Bezugnahme auf 1A – 1B und 2C beschrieben wurden, sind typisch für diejenigen,
die in Verbindung mit Ausführungsbeispielen
der vorliegenden Erfindung verwendet werden können. Jedoch sind spezifische
Einzelheiten dieser Systeme für
die Praxis der vorliegenden Erfindung, die sich mit einem Handhaben
von radiographischen Bilddaten eines Objekts zur Rekonstruktion
von Querschnittsbildern des Objekts aus denselben befaßt, nicht
kritisch. Beispielsweise können
die spezifischen Einzelheiten der Röntgenstrahlenquelle, des Detektors
bzw. der Detektoren, des Positionierungsmechanismus bzw. der Positionierungsmechanismen
zum Positionieren des zu prüfenden Objekts,
des Steuersystems (z. B. des Computers) zum Steuern des Betriebs
des Abbildungssystems usw. von System zu System beträchtlich
variieren. Ausführungsbeispiele
der vorliegenden Erfindung sind auf viele unterschiedliche Typen
von radiografischen Abbildungssystemen anwendbar, die wirksam sind,
um digitale radiografische Bilder mehrerer Tiefenschichten eines
Objekts (z.B. einer Schaltungsplatine) zu erfassen, und Ausführungsbeispiele
der vorliegenden Erfindung verwenden derartige digitale radiografische
Bilder, um Querschnittsbilder, die den mehreren Tiefenschichten
des Objekts entsprechen, auf die nachstehend beschriebene Weise
zu rekonstruieren.
-
3A – 3D zeigen
beispielhafte Querschnittsbilder, die anhand eines Rekonstruktionsprozesses
für ein
Musterobjekt 10 erzeugt werden können. Zu Veranschaulichungszwecken
weist das in 3A gezeigte Objekt 10 Testmuster
in Form eines Pfeils 81, eines Kreises 82 und
eines Kreuzes 83 auf, die in drei verschiedenen Ebenen
(oder Tiefenschichten) 60a, 60b bzw. 60c in
dem Objekt 10 eingebettet sind.
-
3B zeigt ein probeweises
Querschnittsbild (oder eine probeweise „Tomographie") der Tiefenschicht 60a des
Objekts 10, die durch ein Ausführungsbeispiel eine Bildrekonstruktionsvorrichtung
von Ausführungsbeispielen
der vorliegenden Erfindung rekonstruiert werden kann. Das Bild 100 des
Pfeils 81 ist scharf eingestellt, während die Bilder anderer Merkmale
in dem Objekt 10, z. B. der Kreis 82 und das Kreuz 83,
eine unscharfe Region 102 bilden können, die das Pfeilbild 100 nicht
stark undeutlich macht. Vorzugsweise wird die unscharfe Region 102 und/oder
ihre Auswirkungen auf das Pfeilbild 100 bei dem Rekonstruktionsprozess
minimiert, um ein qualitativ hochwertiges Bild des Querschnitts
zu liefern. Verschiedene Techniken, die auf dem Gebiet der Bildverarbeitung
bekannt sind, können
zum Verringern/Beseitigen der unscharfen Region 102 und/oder
ihrer Auswirkungen auf das Pfeilbild 100 des Querschnittsbildes
verwendet werden.
-
Desgleichen
zeigt 3C ein probeweises
Querschnittsbild (oder eine probeweise „Tomographie") der Tiefenschicht 60b des
Objekts 10, die durch ein Ausführungsbeispiel einer Bildrekonstruktionsvorrichtung der
vorliegenden Erfindung rekonstruiert werden kann. Das Bild 110 des
Kreises 82 ist scharf eingestellt, während die Bilder anderer Merkmale
in dem Objekt 10, z. B. der Pfeil 81 und das Kreuz 83,
eine unscharfe Region 112 bilden können, die das Kreisbild 110 nicht
stark undeutlich macht. Wiederum können diverse auf dem Gebiet
der Bildverarbeitung bekannte Techniken verwendet werden, um die
unscharfe Region 112 und/oder ihre Auswirkungen auf das
Kreisbild 110 des Querschnittsbildes zu verringern/beseitigen.
-
3D zeigt ein probeweises
Querschnittsbild (oder eine probeweise „Tomographie") der Tiefenschicht 60c des
Objekts 10, die durch ein Ausführungsbeispiel einer Bildrekonstruktionsvorrichtung
der vorliegenden Erfindung rekonstruiert werden kann. Das Bild 120 des
Kreuzes 83 ist scharf eingestellt, während die Bilder anderer Merkmale
in dem Objekt 10, z. B. der Pfeil 81 und der Kreis 82,
eine unscharfe Region 122 bilden können, die das Kreuzbild 120 nicht
stark undeutlich macht. Wiederum können diverse auf dem Gebiet der
Bildverarbeitung bekannte Techniken verwendet werden, um die unscharfe
Region 122 und/oder ihre Auswirkungen auf das Kreuzbild 120 des
Querschnittsbildes zu verringern/beseitigen.
-
Obwohl
die 3A – 3D ein beispielhaftes Objekt 10 zeigen,
das Tiefenschichten 60a, 60b und 60c aufweist,
die als Querschnittsbilder rekonstruiert werden können, sollte
man erkennen, dass das Objekt 10 als generisches Beispiel
gedacht ist, um das Konzept des Rekonstruierens diverser Tiefenschichten
eines Objekts als Querschnittsbilder zu veranschaulichen. In der
Praxis können
diverse andere Typen von Objekten, die eine beliebige Anzahl von
Tiefenschichten aufweisen, geprüft
werden, und eine beliebige Anzahl ihrer Tiefenschichten kann als
Querschnittsbilder rekonstruiert werden. Beispielsweise kann ein
bevorzugtes Ausführungsbeispiel
mit einem automatisierten Prüfsystem
zum Prüfen
von Lötverbindungen
auf einer Anordnung gedruckter Schaltungsplatinen implementiert
sein. 4 zeigt eine beispielhafte
Anordnung einer gedruckten Schaltungsplatine, bei der diverse Tiefenschichten
durch eine Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
der vorliegenden Erfindung als Querschnittsbilder rekonstruiert
sein können,
um die Anordnung der gedruckten Schaltungsplatine zu prüfen.
-
Somit
liefert 4 ein konkretes
Beispiel eines Objekts, das gemäß Ausführungsbeispielen
der vorliegenden Erfindung geprüft
werden kann. Selbstverständlich
können
Ausführungsbeispiele
der vorliegenden Erfindung bezüglich
ihrer Anwendung nicht allein auf ein Rekonstruieren von Querschnittsbildern
einer Schaltungsplatine beschränkt
sein, sondern können
statt dessen bei vielen anderen Anwendungen verwendet werden, bei
denen eine Rekonstruktion von Querschnittsbildern ausgehend von
erfassten radiografischen Bilddaten (Pixeln) erwünscht ist, einschließlich, ohne
Einschränkung,
einer Prüfung
von verschiedenen anderen Typen von Produkten in einer Herstellungsumgebung
für eine
Qualitätssicherung,
Verwendung bei automatisierten Prüfsystemen zum Prüfen von
Objekten bezüglich
in denselben enthaltener Schmuggelware (z.B. bei Sicherheitssystemen
zum Prüfen
von Passagiergepäck
in einem Flughafen oder einer anderen Transporteinrichtung) und/oder
Verwendung bei verschiedenen medizinischen Anwendungen. Fachleute
werden diverse andere Anwendungen der Bildrekonstruktionsvorrichtung
von Ausführungsbeispielen
der vorliegenden Erfindung erkennen.
-
In 4 weist eine doppelseitige
gedruckte Schaltungsplatine 400 mehrere Komponenten auf,
die an jede von zwei Außenflächen angelötet sind.
Die Komponenten 402 und 404 sind an einer ersten
Oberfläche angebracht.
Die Komponente 408 ist an einer zweiten Oberfläche angebracht,
die der ersten Oberfläche
gegenüberliegt.
Die Komponente 406 ist eine Durchgangslochkomponente, die
an der zweiten Oberfläche
angebracht ist, jedoch mit Anschlussleitungen, die beide Oberflächen der
Platine 400 durchlaufen. In der Regel sind die elektrischen
Verbindungen, die die Komponenten 402, 404, 406 und 408 mit
der Platine 400 koppeln, aus einem Lötmaterial gebildet. Jedoch
sind diverse andere Techniken zum Herstellen der elektrischen Verbindungen
in der Technik hinreichend bekannt, und obwohl beispielhafte Ausführungs beispiele
der vorliegenden Erfindung hierin in Bezug auf Lötverbindungen beschrieben werden,
sollte man verstehen, dass unter Verwendung von Ausführungsbeispielen
der Erfindung auch andere Arten von elektrischen Verbindungen geprüft werden
können,
einschließlich,
aber nicht ausschließlich,
Verbindungen aus leitfähigem
Epoxy, mechanischer, Wolfram- und eutektischer Verbindungen.
-
Bei
diesem Beispiel weist die Komponente 402 ein Kugelrasterarray
(BGA – ball-grid
array) von Lötverbindungen
auf. Die Komponente 404 veranschaulicht eine Knickflügel-Oberflächenanbringungsvorrichtung. Die
Komponente 408 ist eine J-Anschlussleitungs-Oberflächenanbringungsvorrichtung.
Eine Ebene (bzw. Tiefenschicht), die durch die gestrichelte Linie 410 gezeigt
ist, gelangt, knapp neben der ersten Oberfläche der Schaltungsplatine 400,
durch die Anschlussleitungen und Lötkegel der Komponenten 402, 404 und 406.
Eine weitere Ebene (bzw. Tiefenschicht), die durch die gestrichelte
Linie 412 gezeigt ist, gelangt, knapp neben der zweiten
Oberfläche
der Schaltungsplatine 400, durch die Anschlussleitungen
und Lötkegel
der Komponenten 406 und 408. Man sollte sich darüber im klaren
sein, dass, obwohl bei diesem Beispiel zwei beispielhafte Tiefenschichten
(410 und 412) spezifiziert sind, bei anderen Beispielen
eine beliebige Anzahl von Tiefenschichten der Schaltungsplatine 400 untersucht
werden kann. Obwohl bei diesem Beispiel verschiedene Arten von Lötverbindungen
(z.B. Oberflächenanbringungen
und in der Platine vorliegende Verbindungen) als in einer gemeinsamen
Tiefenschicht enthalten gezeigt sind, z.B. die verschiedenen Verbindungen
der Komponenten 402, 404 und 406, die
in die Tiefenschicht 410 fallen, sollte man sich außerdem darüber im klaren
sein, dass bei manchen Implementierungen verschiedene Arten von
Lötverbindungen
tatsächlich
in unterschiedliche Tiefenschichten der Schaltungsplatine fallen
könne (was
die Anzahl von Tiefenschichten, die durch ein Prüfsystem verarbeitet werden,
erhöhen
kann). Der Einfachheit und der übersichtlichen
Veranschaulichung halber ist bei diesem Beispiel lediglich eine
Tie fenschicht gezeigt, die jeder Seite der Schaltungsplatine 400 entspricht,
bei einer tatsächlichen
Anwendung kann jedoch auf jeder Seite der Schaltungsplatine 400 eine
Mehrzahl von Tiefenschichten von Interesse sein. Während es
bei bestimmten Anwendungen nützlich
sein kann, ein 3D-Bild jeder Lötverbindung
zu haben, liefern die Bildebenen 410 und 412 im
allgemeinen ausreichende Informationen, um zu bestimmen, dass jede
Komponentenanschlussleitung vorliegt, und/oder liefern diese nützliche
Informationen für
eine Prüfung
der verschiedenen Lötverbindungen
(z.B. Prüfung
der Qualität
derartiger Lötverbindungen).
-
Gemäß verschiedenen
Ausführungsbeispielen
der vorliegenden Erfindung können
durch ein radiografisches Abbildungssystem radiografische Bilddaten
(Pixel) eines Prüfobjekts
(z.B. der Schaltungsplatine 400), bzw. die oben beschriebenen,
erfasst und in eine Bildrekonstruktionsvorrichtung eingegeben werden.
Die Bildrekonstruktionsvorrichtung verarbeitet die erfassten radiografischen
Bilddaten, um 3D-Bilddaten (Voxel-Bilddaten) des Objekts, z.B. die
beispielhaften Querschnittsbilder, die oben in Verbindung mit den 3A – 3D beschrieben
wurden, zu konstruieren. Wie nachfolgend ausführlicher beschrieben wird,
rekonstruiert eine derartige Bildrekonstruktion vorzugsweise mehrere
Querschnittsbilder (die jeweils einer anderen Tiefenschicht des
Objekts entsprechen) parallel, wodurch die Querschnittsbilder auf
effiziente Weise rekonstruiert werden. Während bei einem bevorzugten
Ausführungsbeispiel
im einzelnen jedes Pixel eines digitalen radiografischen Bildes
durch die Bildrekonstruktionsvorrichtung empfangen wird, verarbeitet
die Bildrekonstruktionsvorrichtung ein derartiges Pixel für mehrere
Tiefenschichten des Objekts parallel. Beispielsweise bestimmt die
Bildrekonstruktionsvorrichtung für
ein empfangenes Pixel vorzugsweise zumindest ein Voxel einer Mehrzahl
von verschiedenen Querschnittsbildern (die jeweils einer anderen
Tiefenschicht des Objekts entsprechen), zu dem das empfangene Pixel
beiträgt,
und wendet diesen Beitrag des Pixels an jedes Voxel der Mehrzahl
von verschiedenen Querschnittsbildern parallel an.
-
Nachdem
die Querschnittsbilder der Lötverbindungen
der Platine 400 (oder anderer Abschnitte eines Prüfobjekts)
erzeugt wurden, können
sie bei bestimmten Implementierungen durch das automatisierte Prüfsystem
automatisch ausgewertet werden, um ihre Qualität und physischen Charakteristika,
beispielsweise einschließlich
der Lötdicke,
zu bestimmen. Das heißt,
dass die Bildrekonstruktionsvorrichtung von Ausführungsbeispielen der vorliegenden
Erfindung Querschnittsbilddaten für ein Prüfobjekt rekonstruieren kann,
und dass die rekonstruierten Querschnittsbilddaten durch ein automatisiertes
Prüfsystem
und/oder durch einen Benutzer des Systems ausgewertet werden können, um
eine Qualitätskontrollanalyse
des zu studierenden Objekts (z.B. von Lötverbindungen) durchzuführen. Auf
der Basis der Auswertung durch das Prüfsystem kann ein Bericht über die
Qualität
der Lötverbindung
und über
die physischen Charakteristika und/oder die rekonstruierten Querschnittsbilder
der Lötverbindungen
dem Benutzer vorgelegt werden.
-
Es
versteht sich, dass der Begriff „Bild" (oder „Bilddaten") nicht auf Formate beschränkt ist,
die visuell betrachtet werden können,
sondern auch digitale Darstellungen umfassen kann, die durch den
Computer erfasst, gespeichert und analysiert werden können. Somit
ist der Begriff „Bild" (oder „Bilddaten") gemäß seiner Verwendung
hierin nicht auf ein betrachtbares Bild beschränkt, sondern soll auch Computerdaten
umfassen, die das Bild darstellen und/oder die durch einen Computer
zum Anzeigen eines betrachtbaren Bildes verarbeitet werden können. Bei
bestimmten Ausführungsbeispielen
können
die rekonstruierten Querschnittsbilder beispielsweise zusätzlich zu
oder statt einer automatisierten Prüfung durch den Computer einem
Benutzer zum Zweck einer Prüfung
durch diesen Benutzer angezeigt werden. Bei anderen Ausführungsbeispielen
werden die rekonstruierten Querschnittsbilder eventuell nicht einem
Benutzer ange zeigt, sondern statt dessen können die Bilddaten, die diese
rekonstruierten Querschnittsbilder darstellen, zur Qualitätskontrolle
autonom durch den Computer analysiert werden.
-
Ausführungsbeispiele
der vorliegenden Erfindung können
als Kombination von Hardware und Firmware (oder Schaltungsanordnung)
implementiert sein, die als Eingabe digitale radiografische (z.B.
für Röntgenstrahlen
durchlässige)
Daten (Pixel) für
zumindest einen Abschnitt eines Objekts empfängt und 3D-Bilddaten (Voxel)
rekonstruiert, um Querschnittsbilddaten zu erzeugen, die mehreren
Tiefenschichten innerhalb zumindest eines Abschnitts des Objekts
entsprechen. Ein bevorzugtes Ausführungsbeispiel umfasst eine
Hardwarearchitektur, die eine Prozessoreinheit wie z.B. ein feldprogrammierbares
Gatterarray (FPGA – Field
Programmable Gate Array) oder eine anwendungsspezifische integrierte
Schaltung (ASIC – Application
Specific Integrated Circuit) zusammen mit mehreren unabhängig adressierbaren
Speichern, die hierin als „Rekonstruktionsspeicher" bezeichnet werden
können,
umfasst. Jeder unabhängig
adressierbare Speicher wird verwendet, um rekonstruierte 3D-Bilddaten
(Voxel), die einer bestimmten Tiefenschicht des Objekts entsprechen,
zu speichern. Beispielsweise kann ein erster Speicher zum Speichern
von Voxeln verwendet werden, die einer ersten Tiefenschicht eines
Prüfobjekts
(z.B. der Tiefenschicht 60a des in 3A gezeigten Objekts 10) entsprechen,
und ein zweiter Speicher kann zum Speichern von Voxeln verwendet
werden, die einer zweiten Tiefenschicht des Objekts (z.B. der Tiefenschicht 60b des
in 3A gezeigten Objekts 10)
entsprechen.
-
Während des
3D-Bildrekonstruktionsprozesses eines bevorzugten Ausführungsbeispiels
empfängt der
Rekonstruktionsprozessor ein Pixel eines radiografischen Bildes
des Prüfobjekts.
Wie Fachleute erkennen werden, kann das empfangene Pixel zu der
Rekonstruktion von mehreren Schichten des Prüfobjekts beitragen. Wie bei 2C oben beschrieben wurde,
kann das Pixel beispielsweise Informationen umfas sen, die für eine Mehrzahl
von verschiedenen Tiefenschichten des Objekts erfasst wurden. Das
heißt,
dass das empfangene Pixel zu Voxeln einer Mehrzahl von unterschiedlichen
Querschnittsbildern, die gerade rekonstruiert werden, beitragen
kann. Es können
Grenzbedingungen festgelegt werden, und das Pixel kann zu einem
Voxel beitragen, das „außerhalb
der Grenzen" liegt
(z.B. außerhalb
des derzeit verarbeiteten Sichtfeldes), im allgemeinen trägt jedoch
jedes empfangene Pixel zu einer Mehrzahl der (z.B. zu allen) Tiefenschichten,
die gerade rekonstruiert werden, bei. Bei einem bevorzugten Ausführungsbeispiel
verarbeitet der Rekonstruktionsprozessor das Pixel, um die Voxel
von mehreren unterschiedlichen Tiefenschichten, zu denen das empfangene
Pixel beiträgt,
zu identifizieren, und er legt den Beitrag dieses Pixels an diese
Voxel parallel an.
-
Beispielsweise
kann ein erstes Voxel zum Rekonstruieren einer ersten Tiefenschicht
des Objekts, das in einem ersten Speicher gespeichert ist und zu
dem das empfangene Pixel beiträgt,
durch den Rekonstruktionsprozessor identifiziert und wiedergewonnen
werden, und ein zweites Voxel zum Rekonstruieren einer zweiten Tiefenschicht
des Objekts, das in einem zweiten Speicher gespeichert ist und zu
dem das empfangene Pixel beiträgt,
kann durch den Rekonstruktionsprozessor identifiziert und wiedergewonnen
werden. Das heißt, dass
der Rekonstruktionsprozessor die Voxel von mehreren Tiefenschichten,
zu denen das empfangene Pixel beiträgt, identifizieren kann, und
der Rekonstruktionsprozessor gewinnt diese Voxel aus dem Speicher
wieder. Der Prozessor legt das empfangene Pixel anschließend an
diese Voxel an (d.h. legt den Beitrag, den das Pixel zu jedem der
Voxel liefert, an) und schreibt anschließend die modifizierten Voxel
(die nun den Beitrag des empfangenen Pixels aufweisen) in ihre jeweiligen
Speicher zurück.
Das Pixel kann auf diverse unterschiedliche Arten und Weisen auf
Voxel angewendet werden, wie auf dem Gebiet der Bildverarbeitung
für eine
3D-Rekonstruktion hinreichend bekannt ist. Beispielsweise kann der
Beitrag des Pixels mit einem Voxel summiert werden. Als weiteres
Beispiel kann das empfangene Pixel mit dem Voxel verglichen werden,
und das für
ein Voxel empfangene Pixel mit einer maximalen und/oder minimalen
Intensität
kann in dem Voxel gespeichert werden. Verschiedene andere derzeit
bekannte oder in Zukunft zu entwickelnde Techniken zum Rekonstruieren
von Voxeln von/aus empfangenen Pixeln können in Ausführungsbeispielen
der vorliegenden Erfindung implementiert sein.
-
Bei
einem bevorzugten Ausführungsbeispiel
werden Voxel zunehmend in dem Maße konstruiert, wie Pixel durch
den Rekonstruktionsprozessor empfangen werden, wobei ein Voxel,
zu dem das empfangene Pixel beiträgt, von dem Speicher wiedergewonnen
wird, der Beitrag des Pixels auf das Voxel angewendet wird und das
sich ergebende, aktualisierte Voxel in seine Speicheradresse zurück geschrieben
wird. Wie nachstehend näher
beschrieben wird, ermöglichen
Ausführungsbeispiele
der vorliegenden Erfindung ein Verarbeiten eines Pixels zum parallelen
Rekonstruieren mehrerer Tiefenschichten eines Objekts. Man sollte
erkennen, dass die Rekonstruktionsspeicher während des 3D-Rekonstruktionsprozesses
Teilrekonstruktionsdaten (d.h. Daten, die weiter modifiziert werden
können,
während
mehr Pixel durch den Rekonstruktionsprozessor empfangen werden)
enthalten. Das heißt,
dass die Voxel während
des Rekonstruktionsprozesses in dem Maße zunehmend konstruiert werden,
wie Pixel empfangen werden, und somit erst dann vollständig sind,
wenn alle Pixel, die zu dem Voxel beitragen, empfangen und verarbeitet
wurden.
-
Bei
einem bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung implementiert der Rekonstruktionsprozessor
gleichzeitige Verarbeitungspipelines für jeden Rekonstruktionsspeicher,
und auf die Rekonstruktionsspeicher wird durch den Rekonstruktionsprozessor
parallel zugegriffen, und dieselben werden parallel durch den Rekonstruktionsprozessor
aktualisiert. Die Pipelinestufen eines Ausführungsbeispiels werden anhand
von 6 nachstehend grob
beschrieben. Vorzugsweise rekonstruiert die Verarbeitungspi peline
eine Tiefenschicht (d.h. ein Querschnittsbild einer Tiefenschicht)
eines Objekts unter Verwendung eines Algorithmus, der auf einer
Rückprojektionsrekonstruktionstechnik
(einschließlich
der „Verschieben-Und-Hinzufügen"-Rekonstruktionstechnik) beruht. Derartige
Rückprojektionsrekonstruktionstechniken
(einschließlich
der „Verschieben-Und-Hinzufügen"-Rekonstruktionstechnik)
sind in der Technik der Bildverarbeitung hinreichend bekannt und
werden deshalb hierin nicht ausführlicher
beschrieben. Bei alternativen Ausführungsbeispielen kann selbstverständlich jegliche
andere geeignete derzeit bekannte oder zu einem späteren Zeitpunkt
zu entwickelnde tomosynthetische Rekonstruktionstechnik zum Verarbeiten
von empfangenen Pixeln, um ein Querschnittsbild einer Tiefenschicht
eines Objekts zu rekonstruieren, implementiert werden.
-
Unter
Bezugnahme auf 5 ist
ein Blockdiagramm auf hoher Ebene für eine bevorzugte Implementierung
einer Rekonstruktionsprozessoreinheit 501, die in einem
Prüfsystem 500 implementiert
ist, gezeigt. Bei diesem Beispiel ist der Rekonstruktionsprozessor 501 so
implementiert, dass er zwei Rekonstruktionsspeicher, M1 und M2,
aufweist, die jeweils einer anderen Tiefenschicht eines Prüfobjekts
entsprechen. Jedoch muss die Anzahl von Rekonstruktionsspeichern
nicht auf zwei beschränkt
sein, sondern kann bei alternativen Implementierungen eine beliebige
Anzahl von Speichern umfassen, die nur Hardware- und physischen
Einschränkungen unterworfen
ist, z.B. Speicheradresseinschränkungen,
die auf die Anzahl von Anschlussstiften zurückzuführen sind, die an dem FPGA-implementierenden
Rekonstruktionsprozessor 501 verfügbar sind, wobei der Rekonstruktionsprozessor 501 in
diesem Fall implementiert sein kann, um eine solche erwünschte Anzahl
von Speichern für
eine parallele Verarbeitung auf ähnliche
Weise, wie sie hierin nachstehend für zwei Speicher beschrieben
wird, zu nutzen. Bei den meisten Prüfsystemen liegt die Anzahl
von Rekonstruktionsspeichern üblicherweise
in der Tat bei mehr als zwei (da die Anzahl von verarbeiteten Tiefenschichten üblicherweise
mehr als zwei beträgt),
zum Zweck der konzeptionellen Veranschaulichung von Ausführungsbeispielen
der vorliegenden Erfindung, die auf eine beliebige Anzahl von Rekonstruktionsspeichern
erweitert und angewandt werden kann, sind hier jedoch zwei Speicher
gezeigt. Bei bestimmten Implementierungen könnte die Anzahl von implementierten
Speichern geringer sein als die Anzahl von rekonstruierten Tiefenschichten,
und die _ Speicher können
für eine
Mehrzahl von verschiedenen Tiefenschichten wieder verwendet werden.
Jedoch würde dies
die Berechnung verlangsamen und ein Speichern der empfangenen Bildeingangsdaten
(Pixel) zur Verwendung beim Rekonstruieren der zusätzlichen
Tiefenschichten erfordern. Somit ist es zum Zweck einer optimalen
Effizienz am stärksten
bevorzugt, einen Speicher zu haben, der für jede Tiefenschicht implementiert
ist.
-
Ein
beispielhaftes Hardwareziel für
die hierin beschriebene Parallelrekonstruktionstechnik ist die von Annapolis
Micro-Systems erhältliche
FIREBIRDTM PCI Processor Card. Die FIREBIRDTM-Karte beherbergt ein FPGA (in dem ein
Rekonstruktionsprozessor 501 implementiert sein kann) und
fünf unabhängige Speicherbänke (die
zum Implementieren von Rekonstruktionsspeichern verwendet werden
können).
-
Bei
dem Beispiel der 5 umfasst
das Prüfsystem 500 ein
radiografisches Abbildungssystem 502, das beispielsweise
ein tomografisches Kegelstrahlabbildungssystem wie z.B. das oben
bei 1A–1B beschriebene sein kann.
Das radiografische Abbildungssystem 502 ist ein Abbildungssystem
auf digitaler Basis, das radiografische Bilder eines Objekts 10 (z.B.
einer Schaltungsplatine) in digitaler Form (z.B. ähnlich wie
eine digitale Kamera) erfasst. Eine Steuerung 503 ist vorzugsweise
kommunikativ mit der Abbildungseinrichtung 502 gekoppelt,
um Positionsdaten, z.B. Pixelpositions- und Röntgenstrahlenfleckpositionsdaten,
zu erfassen. Je nach der Konfiguration des Abbildungssystems könnten manche
der Positionsdaten feststehend sein. Beispielsweise könnten die
Positionen von Pixeln, die an ortsfesten Sensoren ange bracht sind,
während
eines Kalibrierungsvorgangs bestimmt werden, der vielleicht wöchentlich
oder weniger häufig
durchgeführt
wird. Wenn sich die Bildsensoren bewegen, können die Pixelpositionen durch
eine Kombination von Positionserfassungs- und Kalibrierungsdaten
bestimmt werden. Die Röntgenstrahlenfleckposition
kann auf ähnliche
Weise bestimmt werden.
-
Der
Rekonstruktionsprozessor 501 ist kommunikativ mit dem radiografischen
Abbildungssystem 502 und der Steuerung 503 gekoppelt,
so dass er radiografische Bilddaten (Pixel) von der Abbildungseinrichtung 502 und
Positionsdaten (z.B. Pixelpositions- und Röntgenstrahlenfleckpositionsdaten,
die nachstehend näher beschrieben
werden) von der Steuerung 503 empfangen kann. Man sollte
beachten, dass die Pixelbilddaten bei bestimmten Implementierungen über die
Steuerung 503 von der Abbildungseinrichtung 502 an
den Rekonstruktionsprozessor 501 kommuniziert werden können. Bei
derartigen Implementierungen kann die Steuerung 503 eine
Schnittstellenbildung mit der Abbildungseinrichtungselektronik und
ein mögliches
Puffern von Daten (je nach dem Entwicklungsgrad der Abbildungseinrichtung 502)
handhaben, und die Steuerung 503 kann Korrekturen auf die
Pixeldaten, z.B. Festmusterrauschkorrektur, Flachfeldanordnung (flat
fielding) und geometrische Kalibrierung, anwenden.
-
Der
Rekonstruktionsprozessor 501 ist ferner mit einer Datenspeicherung
(oder einem „Speicher") 504, die
zum Speichern von rekonstruierten Querschnittsbilddaten verwendet
wird, kommunikativ gekoppelt. Vorzugsweise umfasst die Datenspeicherung 504 die
hierin beschriebenen Rekonstruktionsspeicher. Die Datenspeicherung 504 kann
eine beliebige geeignete derzeit bekannte oder später zu entdeckende
Datenspeicherungsvorrichtung zum Speichern von rekonstruierten Querschnittsbilddaten
umfassen, beispielsweise einschließlich Direktzugriffsspeicher
(RAM), Plattenlaufwerken, Floppy-Disks, optischer Platten (z.B.
Compact-Discs (CDs) und digitaler Video-Discs (DVDs)) und anderer
Daten speicherungsvorrichtungen. Die Datenspeicherung 504 kann
in den Rekonstruktionsprozessor 501 integriert sein (z.B.
auf dem Chip befindlicher Speicher), oder sie kann außerhalb
desselben vorliegen.
-
Der
Rekonstruktionsprozessor 501 ist vorzugsweise als Bestandteil
einer größeren Prozessoreinheit, z.B.
eines FPGA oder einer ASIC, implementiert. Der enthaltende Prozessor
kann sowohl eine spezifische als auch eine unspezifische Verarbeitung
durchführen.
Obwohl dies zum Implementieren von Ausführungsbeispielen der vorliegenden
Erfindung nicht erforderlich ist, wird, zum Zweck einer leichteren
nachfolgenden Beschreibung eines bevorzugten Ausführungsbeispiels,
angenommen, dass die Rekonstruktionsprozessoreinheit 501 synchron
ist und dass sie einen globalen Takt aufweist. Eine beispielhafte
Taktgeschwindigkeit, die für eine
FPGA-Implementierung
implementiert sein kann, beträgt
100 Megahertz (MHz), obwohl jegliche andere geeignete Taktgeschwindigkeit
ebenfalls in den Schutzumfang der vorliegenden Erfindung fallen
soll. Vorzugsweise ist die implementierte Taktgeschwindigkeit ausreichend
schnell, um den Rekonstruktionsprozessor zu befähigen, eine „Echtzeit"-Verarbeitung für ein gegebenes
Prüfsystem,
bei dem er implementiert ist, zu erzielen, wie nachstehend näher beschrieben
wird. Das heißt,
dass lediglich ein geringer, feststehender (oder konstanter) Zeitraum
(beispielsweise zwei Taktzyklen) erforderlich ist, um jedes Pixel
zu verarbeiten und um einen gewichteten Wert zu allen der gleichzeitig
rekonstruierten Tiefenschichten (bzw. „z-Schichten") beizutragen. Im einzelnen
kann der Rekonstruktionsprozessor gemäß einem Ausführungsbeispiel
ein Pixel bei einer Durchschnittsrate von einem Pixel alle zwei
Taktzyklen in seine Verarbeitungspipelines aufnehmen. Somit können sich
zu jeglichem gegebenen Zeitpunkt in jeder Pipeline mehrere Pixel
befinden, die sich in verschiedenen Verarbeitungsstufen befinden.
Es dauert einen geringen, feststehenden Zeitraum (z.B. zwanzig Taktzyklen),
um in den Pipelines vollständig
verarbeitet zu werden.
-
Ein
herkömmlicher
Speicher weist üblicherweise
ein bidirektionales Datentor auf. Um die Erläuterung zu vereinfachen, sei
angenommen, dass die bidirektionalen Speicherdatentore eines bevorzugten
Ausführungsbeispiels
durch eine enthaltende Prozessoreinheit (z.B. ein FPGA) in Eingangs-
und Ausgangstore aufgeteilt werden. Im allgemeinen handhabt die
enthaltende Prozessoreinheit Einzelheiten einer Speicherschnittstellenbildung
auf eine in der Technik wohlbekannte Art und Weise. Zu Veranschaulichungszwecken
sei angenommen, dass der Speicher ein ZBT-SRAM (ZBT-SRAM = Zero-Bus
Turnaround Static RAM, Null-Bus-Umkehrung-Statischer-RAM) ist und
dass er bei derselben oder einer vergleichbaren Geschwindigkeit
getaktet ist wie der globale Takt des Prozessors. Ausführungsbeispiele
der vorliegenden Erfindung sollen jedoch nicht auf ZBT-SRAM-Speicherkonfigurationen
beschränkt
sein, sondern statt dessen können
diverse andere Speicherkonfigurationen auf in der Technik bekannte
Weisen implementiert werden, um die Datenspeicherung für den Rekonstruktionsprozessor 501,
wie er hierin beschrieben ist, zu erzielen.
-
Bei
dem Beispiel der 5 umfasst
der Rekonstruktionsprozessor 501 die folgenden Eingangstore: Pixel,
Pixelposition, Röntgenstrahlenfleckposition,
M1 z, M2 z, Daten gültig,
Zurücksetzen,
M1 Daten ein und M2 Daten ein. Ferner umfasst der Rekonstruktionsprozessor 501 die
folgenden Ausgangstore M1-Adresse, M1 Daten aus, M1-Schreibfreigabe,
M2-Adresse, M2 Daten aus und M2-Schreibfreigabe. Eine kurze Beschreibung
der Eingangs- und Ausgangstore findet sich nachstehend in Tabelle
1 bzw. 2.
-
-
-
Das
Eingangstor „Pixel" des Rekonstruktionsprozessors 501 empfängt Pixel
eines radiografischen Bildes (z.B. eines Röntgenstrahlenbildes), das durch
die Abbildungseinrichtung 502 erfasst wurde. Beispielsweise
können
Pixel eines derartigen radiografischen Bildes bei einer bestimmten
Frequenz (z.B. 20 Millionen Pixel pro Sekunde, 25 Millionen Pixel
pro Sekunde, 50 Millionen Pixel pro Sekunde oder 100 Millionen Pixel
pro Sekunde, als Beispiele) an dem Pixel-Tor empfangen werden. Während die
Pixel bei bestimmten Ausführungsbeispielen
eventuell nicht einzeln von der Abbildungseinrichtung 502 empfangen
werden (sondern statt dessen eventuell als Gruppe oder Paket von
Pixeln empfangen werden), sei angenommen, um die Erläuterung
dieses Ausführungsbeispiels
zu vereinfachen, dass Pixel einzeln bei einer relativ hohen Frequenz
empfangen werden. Das Eingangs tor „Pixelpositionsdaten" empfängt X-,
Y- und Z-Koordinaten,
die dem empfangenen Pixel zugeordnet sind. Derartige Pixelpositionsdaten
können
beispielsweise von der Steuerung 503 empfangen werden.
Desgleichen empfängt
das Eingangstor „Röntgenstrahlenfleckposition" X-, Y- und Z-Koordinaten des Röntgenstrahlenflecks
der Abbildungseinrichtung 502. Im einzelnen identifizieren
Röntgenstrahlenfleckpositionsdaten
die Position, von der das Röntgenstrahlenbündel, das
dieses Pixel erzeugte, stammte (z.B. die Position der Röntgenstrahlenquelle 20 der 1A-1B). Derartige Röntgenstrahlenfleckpositionsdaten
können beispielsweise
von der Steuerung 503 empfangen werden.
-
Das
Eingangstor „M1
z" empfängt eine
Identifizierung der Z-Koordinate
der in den Speicher M1 geschriebenen Rekonstruktionsschicht, und
das Eingangstor „M2
z" empfängt eine
Identifizierung der Z-Koordinate der in den Speicher M2 geschriebenen
Rekonstruktionsschicht. M1 z und M2 z können von einem PC (oder einer
anderen Rechenvorrichtung) empfangen werden, der bzw. die Querschnitte
analysiert, oder sie können
von einer von der Steuerung 503 zurückgegebenen Plattformposition
berechnet werden. Man sollte beachten, dass sich M1 z und M2 z für verschiedene
Regionen eines Objekts (z.B. einer Schaltungsplatine), das gerade
abgebildet wird, verändern
können.
Beispielsweise kann M1 auf eine bestimmte Tiefenschicht für eine gegebene
interessierende Region festgelegt sein, und wenn sich die interessierende
Region ändert
(wobei an diesem Punkt eine „Rücksetzung" stattfinden würde, wie
nachfolgend beschrieben wird), kann sich M1 z ändern, und ein neuer Satz von
rekonstruierten 3D-Bilddaten (Voxeln) kann für diese neue interessierende Region
berechnet werden. Das Eingangstor „Zurücksetzen" kann ein Signal empfangen, das Zurücksetzen des
Rekonstruktionsprozessors 501 auszulösen, was ein Löschen (z.B.
Auf-Null-Setzen)
der Speicher 504, die die rekonstruierten Querschnittsbilddaten
speichern, umfassen kann. Das heißt, dass, nachdem ein Rücksetzsignal
(z.B. eine 1) an dem Rücksetzungseingangstor
empfangen wird, der Zustand des Rekon struktionsprozessors vorzugsweise
initialisiert wird und die relevanten Abschnitte der Rekonstruktionsspeicher
gelöscht werden.
Man sollte sich darüber
im klaren sein, dass die Rekonstruktionsspeicher bei bestimmten
Implementierungen nicht explizit gelöscht werden müssen, sondern
dass ihre Daten statt dessen bei dem ersten Schreibvorgang nach
einer Zurücksetzung überschrieben
werden können
(somit kann der Speicher effektiv gelöscht werden, ohne explizit
gelöscht
zu werden).
-
Das
Eingangstor „M1
Daten ein" empfängt ein
Voxel von dem durch die M1-Adresse spezifizierten Rekonstruktionsspeicher
M1, und das Eingangstor „M2
Daten ein" empfängt ein
Voxel von dem durch die M2-Adresse spezifizierten Rekonstruktionsspeicher
M2. Wie nachstehend näher
beschrieben wird, verwendet der Rekonstruktionsprozessor 501 bei
einem bevorzugten Ausführungsbeispiel
die Pixelpositions-, Röntgenstrahlenfleckpositions-
und M1 z- und M2 z-Informationen,
um die Voxel zu bestimmen, zu denen das empfangene Pixel beitragen
wird, und gewinnt anschließend
diese Voxel über
die Tore M1 Daten ein bzw. M2 Daten ein von den Rekonstruktionsspeichern
M1 bzw. M2 wieder. Das heißt,
dass der Rekonstruktionsprozessor die empfangenen Pixelpositions-,
Röntgenstrahlenfleckpositions-
und M1 z- und M2 z-Daten verwendet, um die X- und Y-Koordinaten
eines Voxels für
eine in M1 gespeicherte erste Tiefenschicht zu berechnen und um
die X- und Y-Koordinaten eines Voxels für eine in M2 gespeicherte zweite
Tiefenschicht, zu denen das empfangene Pixel beitragen wird, zu
berechnen. Nachdem bestimmt wurde, zu welchen Voxeln das empfangene
Pixel beitragen wird, kann der Rekonstruktionsprozessor die M1-Adresse und die M2-Adresse
dieser Voxel ausgeben (siehe die Ausgaben des beispielhaften Rekonstruktionsprozessors 501),
und auf diese M1-Adresse und M2-Adresse kann zugegriffen werden,
um ihre entsprechenden Voxeldaten über die Tore M1 Daten ein bzw. M2
Daten ein wiederzugewinnen.
-
Während des
Rekonstruktionsprozesses werden teilweise (bzw. unvollständige) 3D-Rekonstruktionsdaten
(Voxel) in den Rekonstruktionsspeichern M1 und M2 gespeichert, und
während
Pixel empfangen werden, werden die entsprechenden Voxel, zu denen
diese Pixel beitragen, wiedergewonnen und mit dem Beitrag dieser
Pixel aktualisiert. Danach werden die aktualisierten Voxel in ihre
jeweiligen Speicheradressen zurück geschrieben.
Somit legt der Rekonstruktionsprozessor, nachdem die Voxeldaten über die
Tore M1 Daten ein und M2 Daten ein empfangen wurden, den Beitrag
des empfangenen Pixels parallel an jedes der Voxel an (unter Verwendung
eines Bildverarbeitungsalgorithmus wie z.B. eines Verschieben-Und-Hinzufügen-Algorithmus oder
eines anderen auf Rückprojektion
beruhenden Algorithmus) und gibt die sich ergebenden Voxel als M1 Daten
aus bzw. M2 Daten aus aus. Im einzelnen wird das aktualisierte Voxel
(auf das der Beitrag des empfangenen Pixels angewendet ist) des
Speicherplatzes „M1-Adresse" wieder an eine solche
M1-Adresse ausgeschrieben, und das aktualisierte Voxel des Speicherplatzes „M2-Adresse" wird wieder an eine
solche M2-Adresse ausgeschrieben.
-
Die
Ausgangstore „M1-Schreibfreigabe" (bzw. „M1 write
enable") und „M2-Schreibfreigabe" (bzw. „M2 write
enable") geben ein
Signal aus, ihre jeweiligen Rekonstruktionsspeicher zu steuern.
Das heißt,
dass die Tore M1-Schreibfreigabe
und M2-Schreibfreigabe ein Signal ausgeben, um anzugeben, ob an
ihren jeweiligen Speichern eine Lese- oder eine Schreiboperation durchzuführen ist.
Falls beispielsweise ein Lesesignal (z.B. eine 0) durch M1-Schreibfreigabe ausgegeben
wird, wird für
die M1-Adresse ein Lesevorgang durchgeführt, und die Voxeldaten dieser
M1-Adresse werden
bei dem Tor M1 Daten ein als Eingang an den Prozessor 501 zurückgegeben.
Falls dagegen ein Schreibsignal (z.B. eine 1) durch M1-Schreibfreigabe
ausgegeben wird, wird ein Schreibvorgang von M1 Daten aus an die
M1-Adresse durchgeführt.
-
Die
Eingangstore „Pixel", „Pixelposition", „Röntgenstrahlenfleckposition", „M1 z" und „M2 z" werden als gültig betrachtet,
wenn die Eingabe in das Tor „Daten
gültig" angibt, dass derartige
Eingaben gültig
sind (z.B. wenn die Eingabe in das Tor „Daten gültig" 1 beträgt). Beispielsweise kann die
Ausgabe von Pixeldaten aus der Abbildungseinrichtung 502 eventuell
manchmal unterbrochen werden, was bewirkt, dass an dem Eingangstor „Pixel" keine gültigen Pixeldaten
empfangen werden. Beispielsweise wird das geprüfte Objekt (z.B. eine Schaltungsplatine)
eventuell in der Abbildungseinrichtung 502 bewegt (z.B.
neu positioniert), wobei während
dieses Vorgangs eventuell keine gültigen Daten in eines oder
mehrere der Eingangstore des Prozessors 501 eingegeben
werden. Andere Gründe
für „Daten
gültig", die angeben, ob
gültige
Daten an den Eingangstoren verfügbar
sind, bestehen darin, dass die Abbildungseinrichtung eine andere
Datenrate als der Prozessor 510 aufweisen kann oder dass
aufgrund dessen, dass der Bildsensor zum Zweck einer Belichtung
die Datenübertragung
anhält
und die Datenübertragung
zum Zweck eines Auslesens wieder aufnimmt, Bursts von Bildsensordaten
vorliegen könnten.
-
Wenn
die Eingaben durch das Tor „Daten
gültig" als gültig angegeben
werden, werden sie vorzugsweise in einem FIFO-Speicher (FIFO = first-in, first-out;
zuerst rein, zuerst raus) gespeichert, der ein Bestandteil des Rekonstruktionsprozessors 501 ist,
wie in Verbindung mit 6 nachstehend
näher beschrieben
wird. Bei der beispielhaften Implementierung der 5 führt
der Rekonstruktionsprozessor 501 für jedes gültige empfangene Eingangspixel
sowohl einen Lese- als auch einen Schreibvorgang aus den Rekonstruktionsspeichern
durch, was bewirkt, dass für
jedes gültige
Eingangspixel zwei globale Taktzyklen verbraucht werden. Das heißt, dass,
nachdem ein Pixel durch den Rekonstruktionsprozessor 501 empfangen
wird, er die Voxeldaten, zu denen das, Pixel beitragen wird, wiedergewinnt
(liest) (in dem Beispiel der 5 als „M1 Daten
ein" und „M2 Daten
ein"), und nachdem
der Beitrag des empfangenen Pixels auf diese wiedergewonnenen Voxel
angewendet wird, werden die sich ergebenden Voxel wieder in ihre
entsprechende Speicheradresse ausgeschrieben. Somit ist die maximale
Rate von gültigen
Eingangspixeln vorzugsweise so implementiert, dass sie nicht mehr
als die halbe globale Taktgeschwindigkeit beträgt, um zu gewährleisten,
dass der FIFO-Speicher nicht überläuft. Der
Allgemeingültigkeit
halber sei angenommen, dass die Eingangsabtastwerte (Pixel, Pixelposition,
Röntgenstrahlenfleckposition,
M1 z und M2 z), die einem einzelnen, feststehenden Sichtfeld zugeordnet
sind, in einer willkürlichen
Reihenfolge ankommen können.
-
6 zeigt ein ausführlicheres
Blockdiagramm einer beispielhaften Implementierung des Rekonstruktionsprozessors 501.
Bei dieser beispielhaften Implementierung umfasst der Prozessor 501 einen
FIFO- und SYNC-Block 601 sowie parallele Rekonstruktionspipelines 602 und 603.
Somit veranschaulicht dieses beispielhafte Blockdiagramm, dass die
zwei Rekonstruktionsspeicher M1 und M2 parallel aktualisiert werden.
Die M1-Pipeline 602 umfasst einen Rückprojektion-Block 604A und
einen Zu-Speicher-Hinzufügen-Block 605A, und
die M2-Pipeline 603 umfasst einen Rückprojektion2-Block 604B und
Zu-Speicher2-Hinzufügen-Block 605B.
Rückprojektion 604A und
Zu-Speicher-Hinzufügen 605A verarbeiten
ein empfangenes Pixel für
den Speicher M1, wohingegen Rückprojektion2 604B und
Zu-Speicher2-Hinzufügen 605B gleichzeitig
dasselbe Pixel für
den Speicher M2 verarbeiten (jedoch unter Verwendung eines anderen
Z-Parameters). Rückprojektion2 604B und
Zu-Speicher2-Hinzufügen 605B sind
(Hardware-)Kopien von Rückprojektion 604A und
Zu-Speicher-Hinzufügen 605A.
Eine bevorzugte Implementierung verwendet eine pipelineartige Architektur,
beispielsweise die oben kurz beschriebene, um eine maximale Busnutzung
für die
Rekonstruktionsspeicher zu erhalten.
-
Als
Beispiel für
Pipelinestufen, die bei einem Ausführungsbeispiel der vorliegenden
Erfindung implementiert sein können,
werden in einer ersten Pipe-Stufe Eingaben „Pixel", „Pixelposition", „Röntgenstrahlenfleckposition", M1 z und M2 z in
FIFO und Sync 601 empfangen und werden in der nächsten Pipe-Stufe
anschließend
an Rückprojektion 604A und
Rückprojektion2 604B ausgegeben.
Ansprechend auf das Signal „Daten
bereit" bestimmen
Rückprojektion 604A und
Rückprojektion2 604B das
Voxel ihrer jeweiligen Tiefenschichten, zu dem das empfangene Pixel
beiträgt,
und geben diese „Adresse" an Zu-Speicher-Hinzufügen 605A und
Zu-Speicher2-Hinzufügen 605B aus.
In der nächsten
Pipe-Stufe lesen Zu-Speicher-Hinzufügen 605A und
Zu-Speicher2-Hinzufügen 605B die
bestimmten Voxel (als M1 Daten ein bzw. M2 Daten ein) ein, und in
der letzten Pipe-Stufe legen Zu-Speicher-Hinzufügen 605A und Zu-Speicher2-Hinzufügen 605B den Beitrag
des empfangenen Pixels an das wiedergewonnene Voxel an und schreiben
das sich ergebende Voxel wieder in seine Speicheradresse (M1-Adresse
bzw. M2-Adresse). Man sollte erkennen, dass diese grobkörnigen Pipelinestufen
unter Verwendung von feiner gekörnten
Pipelinestufen implementiert werden könnten.
-
FIFO
und Sync 601 speichert gültige Eingangsdaten für die empfangenen
Eingaben Pixel, Pixelposition, Röntgenstrahlenfleckposition,
M1 z und M2 z. Wenn das FIFO Daten enthält, werden die aktuellen FIFO-Daten
ausgegeben und über
zwei Taktzyklen zwischengespeichert. Man erinnere sich, dass, wie
oben beschrieben wurde, ein bevorzugtes Ausführungsbeispiel zwei Taktzyklen
verwendet, um Voxel mit einem empfangenen Pixel zu aktualisieren
(einen Taktzyklus, um die entsprechenden Voxel, zu denen das empfangene
Pixel beiträgt,
aus dem Speicher zu lesen, und einen zweiten Taktzyklus, um die
aktualisierten Voxel, auf die der Beitrag des Pixels angewendet
wurde, wieder in den Speicher zurück zu schreiben). Das Ausgangstor „Daten
bereit" wird für den ersten
Taktzyklus hoch und für
den zweiten Taktzyklus niedrig. Falls gewünscht, könnte der FIFO- und Sync-Block 601 die
Blockausgaben auch mit einem „ungeraden" oder „geraden" Taktzyklus synchronisieren.
-
Nach
der entsprechenden Synchronisationsverzögerung gibt der FIFO- und Sync-Block 601 das
bzw. die empfangene Pixel, Pixelposition und Röntgenstrahlenfleckposition
an Rückprojektion 604A und Rückprojektion2 604B,
als „Pixel
aus", „Pixelposition
aus" und „Röntgenstrahlenfleck
aus" gezeigt, jeweils
von dem FIFO- und Sync-Block 601 aus. Ferner gibt der FIFO-
und Sync-Block 601 M1 z an Rückprojektion 604A aus
und gibt M2 z an Rückprojektion2 604B aus.
Ferner gibt der FIFO- und Sync-Block 601 ein Signal „Daten bereit" an Rückprojektion 604A und
Rückprojektion 604B aus,
um anzugeben, wann die oben beschriebenen Daten neu und gültig sind.
-
Rückprojektion 604A bestimmt
die Rekonstruktionsspeicheradresse des Speichers M1, die aktualisiert wird,
und den gewichteten Pixelwert, der zu dem aktuellen Inhalt dieser
Speicheradresse hinzugefügt
wird. Das heißt,
dass Rückprojektion 604A die
X- und Y-Koordinaten des Voxels an der „z-Position" (die dem durch den FIFO- und Sync-Block 601 empfangenen „M1 z" entspricht) bestimmt,
die durch das Röntgenstrahlenbündel, das
von der X-, Y- und Z-Koordinate „Röntgenstrahlenfleckposition" zu der X-, Y- und
Z-Koordinate „Pixelposition" wandert, geschnitten
wird. Somit verwendet Rückprojektion 604A die
empfangenen Positionsdaten (Pixelposition, Röntgenstrahlenfleckposition
und z-Position),
um ein Voxel in dem M1-Speicher zu bestimmen, zu dem das empfangene
Pixel beiträgt.
Falls an dieser „z-Position" zwei oder mehr Voxel
geschnitten werden, dann wird ein einzelnes ausgewählt (beispielsweise
das der Pixelposition „nächstgelegene"). Die Speicheradresse,
die dem ausgewählten
Voxel des Speichers M1 entspricht, wird dann bestimmt, und diese
Adresse wird durch Rückprojektion 604A ausgegeben.
Obwohl die Erfindung eine Verwendung anderer Algorithmen für eine Voxeladressberechnung
nicht von vornherein ausschließt,
wird bei einer bevorzugten Implementierung ein Rückprojektionsrekonstruktionsverfahren
verwendet. Falls Rückprojektion 604A ein
Voxel auswählt,
das nicht in dem Rekonstruktionsspeicher dargestellt ist, wird eine feststehende
außerhalb
der Grenzen liegende Adresse erzeugt. Bei bestimmten Ausführungsbeispielen
kann der Rückprojektion-Block 604A ein
gewichtetes Pixel ausgeben, das dem Umfang des Sich-Schneidens des
Voxels und des Röntgenstrahlenbündels entspricht.
Bei anderen Ausführungsbeispielen
können
bei dem Rekonstruktionsprozess jedoch alle empfangenen Pixel gleichermaßen gewichtet
werden. Die Ausgaben von Rückprojektion 604A werden
synchronisiert, so dass, falls das Signal „Daten-bereit-durch" bei dem Taktzyklus
t hoch geht, gültige
Werte von „Adresse" und „gewichtetes
Pixel" für die Taktzyklen
t und t+1 gehalten werden. Bei einem bevorzugten Ausführungsbeispiel wird
dieses Signal „Daten-bereit-durch" somit zu Synchronisationszwecken
verwendet. Beispielsweise können Verzögerungen
(Register) zwischen „Daten
bereit" und „Daten-bereit-durch" innerhalb von Rückprojektion 604A eingefügt werden,
so dass Daten-bereit-durch
mit den Ausgaben synchronisiert wird. Rückprojektion2 604B funktioniert
auf ähnliche
Weise, wie sie oben für
Rückprojektion 604A beschrieben
wurde, jedoch unter Verwendung der M2 z-Position, um ein Voxel in
dem M2-Speicher zu bestimmen, zu dem das empfangene Pixel beiträgt.
-
Der
Zu-Speicher-Hinzufügen-Block 605A liest
den aktuellen Inhalt der durch Rückprojektion 604A ausgegebenen „Speicheradresse", legt den Beitrag
von „gewichtetes
Pixel" an den Lesewert
an und schreibt die Summe wieder in die „Speicheradresse" zurück. Je nach
dem implementierten Bildverarbeitungsalgorithmus kann der Beitrag
von „gewichtetes
Pixel" auf eine
von mehreren verschiedenen Arten auf ein Voxel angewendet werden,
z.B. Addieren des Wertes des Pixels zu dem Voxel oder Anwenden des
maximalen Wertes eines für
das Voxel gelesenen Pixels auf dieses Voxel. Somit gewinnt Zu-Speicher-Hinzufügen 605A das
Voxel des Speichers M1, zu dem das Pixel gemäß der Feststellung durch Rückprojektion 604A beiträgt, wieder,
und Zu-Speicher-Hinzufügen 605A legt
dann den Beitrag des empfangenen Pixels an dieses wiedergewonnene Voxel
an und schreibt das sich ergebende Voxel wieder in seine Speicheradresse
zurück.
Zu-Speicher- Hinzufügen2 605B funktioniert
auf ähnliche
Weise, wie sie oben für
Zu-Speicher-Hinzufügen 605A beschrieben
wurde, jedoch unter Verwendung des durch Rückprojektion2 604B bestimmten
Voxels des Speichers M2.
-
Da
die in den Rekonstruktionsprozessor 601 eingegebenen Abtastwerte
(Pixel) bei dieser beispielhaften Implementierung willkürlich sind,
sind die durch Zu-Speicher-Hinzufügen 605A aktualisierten
Speicheradressen willkürlich.
Das heißt,
dass bei dieser beispielhaften Implementierung Voxel auf willkürliche Weise
rekonstruiert werden. Somit lässt
man beim Handhaben von verschachtelten Lesevorgängen und Schreibvorgängen Sorgfalt
walten, um die Möglichkeit
zu vermeiden, dass eine aktuelle Speicheraktualisierungsoperation von
einer Speicheradresse liest, die noch nicht durch eine vorherige
Speicheraktualisierung geschrieben wurde. Der ZBT-SRAM oder ein
NoBL-SRAM (NoBL SRAM = No Bus Latency SRAM, Kein-Bus-Latenz-SRAM) ermöglicht verschachtelte
Lese- und Schreibvorgänge ohne
Bus-Tot-Zyklen. Mit anderen Worten können ZBT-SRAMs zum Zweck einer
hundertprozentigen Buseffizienz jeden Taktzyklus lesen oder schreiben.
Um eine potentielle Datenverfälschung
bei dieser beispielhaften Implementierung zu vermeiden, ist es wichtig, dass
der aktualisierte Wert nach dem Lesevorgang bei dem nächsten Taktzyklus
geschrieben wird. Da die Aktualisierung eines Voxels mit einer Hardware-Hinzufügen-Operation
durchgeführt
werden kann (wobei der Beitrag des empfangenen Pixels zu dem wiedergewonnenen
Voxel von M1 hinzugefügt
wird), kann das Ein-Zyklus-Zeitgebungserfordernis
bei einer derartigen Implementierung erfüllt werden. Zu-Speicher-Hinzufügen 605A wird
vorzugsweise auf diese Weise implementiert.
-
Bei
vielen Implementierungen können
die Erfordernisse, die sich auf verschachtelte Speicherlese- und Schreibvorgänge beziehen,
gelockert werden. Üblicherweise
sind die Speicherzugriffe nicht willkürlich, sondern folgen statt
dessen einem vorbestimmten Muster oder sind auf andere Weise mehr
oder weniger regelmäßig. Ausführungsbeispiele
der vorlie genden Erfindung ermöglichen
eine Implementierung jeglichen beliebigen Musters, was je nach Art
des Prüfobjekts
variieren kann. Das heißt,
das der Rekonstruktionsprozessor 501 flexibel genug ist,
um den Empfang eines beliebigen willkürlichen Musters von Pixeln
zu ermöglichen,
und allgemein ist das zu verwendende spezifische Muster vorbestimmt.
Falls zum Erfassen und/oder Kommunizieren von Pixeln eines Objekts
an den Rekonstruktionsprozessor bestimmte Mustertypen verwendet
werden sollen, können
manche der Entwurfsüberlegungen
des Rekonstruktionsprozessors gelockert werden. Beispielsweise kann
unter Verwendung eines vorbestimmten Musters von aufeinander folgenden
Speicherzugriffen, die die Möglichkeit
einer Datenverfälschung
eliminieren, ein Verschieben-Und-Hinzufügen-Rekonstruktionsalgorithmus
(oder ein anderer auf Rückprojektion
beruhender Rekonstruktionsalgorithmus) implementiert sein. Das heißt, dass
zum Erfassen von radiografischen Bildern und zum Kommunizieren von
Pixeln derselben an den Rekonstruktionsprozessor 501 ein
vorbestimmtes Muster verwendet werden kann, derart, dass keine Datenverfälschung
auftritt. Somit kann der Rekonstruktionsprozessor 501 in
Fällen,
bei denen Speicherzugriffe nicht willkürlich sind, mit einer hohen
Speicherbusnutzung implementiert sein, die nicht die oben erwähnten spezialisierten
Speicher- und Zeitgebungsanforderungen aufweist. Demgemäß kann der
Rekonstruktionsprozessor 501 bei bestimmten Ausführungsbeispielen
zur Verwendung mit jeglichen einer Mehrzahl von verschiedenen vorbestimmten
Mustern von empfangenden Pixeln konfiguriert sein (z.B. Mustern,
die nicht zwei aufeinander folgende Pixel, die zu denselben Voxeln
beitragen, in den Rekonstruktionsprozessor eingeben). Ein bevorzugtes
Ausführungsbeispiel,
wie es hierin beschrieben ist, ist konfiguriert, um in der Lage
zu sein, jegliches willkürliche
Muster von Pixeln von einem radiografischen Abbildungssystem zu
empfangen und die Pixel auf die hierin beschriebene Weise effizient
zu verarbeiten, was eine hohe Flexibilität und Anwendbarkeit bei vielen
verschiedenen Arten von Konfigurationen von radiografischen Abbildungssystemen
liefert.
-
Ferner
sollte man erkennen, dass an der oben beschriebenen beispielhaften
Implementierung verschiedene andere Modifizierungen durchgeführt werden
können.
Beispielsweise können
statt des oder zusätzlich
zu dem ZBT-SRAM zum Speichern von rekonstruierten Bilddaten (Voxeln)
herkömmlichere
Speicher wie z.B. SDRAM, DDR SDRAM und/oder QDR SDRAM verwendet
werden. Obwohl die oben beschriebene beispielhafte Implementierung
eine Schreiboperation für
ein modifiziertes Voxel in einem Taktzyklus durchführt, der
unmittelbar auf den Taktzyklus folgt, in dem das Voxel gelesen wurde,
kann bei bestimmten anderen Implementierungen zusätzlich die
Schreiboperation einer Speicheraktualisierung viele Taktzyklen nach
der Leseoperation stattfinden (z.B. bei einer Implementierung unter
Verwendung eines vorbestimmten Musters von aufeinander folgenden
Speicherzugriffen statt willkürlicher
Speicherzugriffe, oder falls eine zusätzliche Hardwareverarbeitung
mögliche
Datenverfälschungsprobleme
berücksichtigt).
Ein weiteres relativ einfaches Verfahren zum Vermeiden einer Datenverfälschung
besteht darin, einen Prozessortakt zu verwenden, der relativ zu
dem Speichertakt langsamer ist (so dass für jedes Pixel mehrere Speicherzyklen
vorliegen).
-
Während die
beispielhafte Implementierung der 6 ferner
zu jeglichem Zeitpunkt jeweils immer nur ein Pixel empfängt (z.B.
ein Pixel alle zwei Taktzyklen des Rekonstruktionsprozessors), können verschiedene andere
Implementierungen ermöglichen,
dass mehrere Pixel in einem einzigen Taktzyklus empfangen werden. Ferner
kann bei bestimmten Implementierungen (z.B. Implementierungen auf
der Basis von Verschieben-Und-Hinzufügen) eine Mehrzahl von Pixeln
parallel auf eine Mehrzahl von Voxeln angewendet werden. Zusätzlich können bestimmte
Implementierungen Speicherburstoperationen verwenden, um die Speicherbusnutzung
zu erhöhen.
Wie in der Technik hinreichend bekannt ist, gilt, bei einem Speicherdatenblatt:
die Burstlänge
bestimmt die maximale Anzahl von Spaltenpositionen, auf die für einen
gegebenen LESEN- oder SCHREIBEN-Befehl zugegriffen werden kann.
Burstlängen
von 1, 2, 4 oder 8 Positionen stehen sowohl für die sequentiellen als auch
die verschachtelten Bursttypen zur Verfügung, und ein Vollseitenburst
steht für
den sequentiellen Typ zur Verfügung,
um Beispiele zu nennen. Der Vollseitenburst wird in Verbindung mit
dem Befehl BURST BEENDEN verwendet, um willkürliche Burstlängen zu
erzeugen. Bestimmte Implementierungen können eine ausgefeiltere Speicherschnittstellenbildung
umfassen, beispielsweise einschließlich von Firmware-Cachespeichermechanismen.
-
7 zeigt eine beispielhafte Übersicht über eine
Prüfsystemkonfiguration 700,
bei der Ausführungsbeispiele
der vorliegenden Erfindung implementiert sein können. Wie gezeigt ist, umfasst
das Prüfsystem 700 eine
Röntgenstrahlen-Abbildungseinrichtung 502,
eine Festmusterrauschkorrektureinheit 701, eine geometrische
Kalibrierungseinheit 702, einen Rekonstruktionsprozessor 501 und
Rekonstruktionsspeicher 504. Bei typischen Prüfsystemen
müssen
die durch die Abbildungseinrichtung 502 ausgegebenen Bilddaten
möglicherweise
kalibriert werden. Demgemäß können die
Festmusterrauschkorrektureinheit 701 und die geometrische Kalibrierungseinheit 702 zum
Kalibrieren der Bilddaten, bevor sie durch den Rekonstruktionsprozessor 501 verarbeitet
werden, enthalten sein. Beispielsweise umfassen Abbildungseinrichtungen
auf Digitalbasis üblicherweise
mehrere Analog-/Digitalwandler
(A-/D-Wandler), denen jeweils ein anderer Gewinn zugeordnet ist. Dementsprechend
führt die
Festmusterrauschkorrektureinheit 701 eine Gewinnanpassung
für die
verschiedenen A-/D-Wandler in der Abbildungseinrichtung 502 durch.
Ferner können
aufgrund von Herstellungsfehlern des Bildsensors bestimmte Pixel
in den Bilddaten fehlen, und ihre Werte müssen interpoliert werden. Somit kann
die Festmusterrauschkorrektureinheit 701 durch in der Technik
bekannte Verfahren die fehlenden Pixel erfassen und ihre Werte interpolieren.
Die geometrische Kalibrierungseinheit 702 führt eine
Anpassung bezüglich
der Helligkeit durch, da die Helligkeit mit zunehmender Entfernung
der Pixel von der Röntgenstrahlenquelle abnimmt.
Die Festmusterrauschkorrektureinheit 701 und die geometrische
Kalibrierung 702 können
als separate Vorrichtungen implementiert sein oder können in
demselben FPGA enthalten sein, in dem der Rekonstruktionsprozessor 501 implementiert
ist, um Beispiele zu nennen.
-
Man
sollte erkennen, dass Ausführungsbeispiele
der Erfindung skalierbar sind. Im einzelnen sind sie in zwei Richtungen
skalierbar. Beispielsweise können
Ausführungsbeispiele
des hierin beschriebenen Rekonstruktionsprozessors innerhalb eines
Prüfsystems
dupliziert werden, um die Anzahl von Z-Schicht-Rekonstruktionsspeichern
zu erhöhen. 8 zeigt eine beispielhafte
Konfiguration 900, bei der die Anzahl von Rekonstruktionsspeichern
durch Aufnahme von zwei Rekonstruktionsprozessoren 501A und 501B um
einen Faktor von zwei erhöht
ist. Der Rekonstruktionsprozessor 501A kann auf die bei
den obigen Beispielen beschriebene Weise implementiert sein, wobei
er Pixel- und Positionsdaten 801 empfangen und diese Pixel-
und Positionsdaten verwenden kann, um mehrere Tiefenschichten parallel
zu rekonstruieren. Die rekonstruierten Bilddaten (Voxel) des Rekonstruktionsprozessors 501A werden
in den Rekonstruktionsspeichern 504A gespeichert. Bei diesem
Beispiel umfassen die Rekonstruktionsspeicher 504A die
Speicher M1A, M2A,
M3A und M4A, wobei
jeder zum Speichern von rekonstruierten Bilddaten, die einer bestimmten
Tiefenschicht des Prüfobjekts
zugeordnet sind, dient. Zusätzlich
ist auch ein zweiter Rekonstruktionsprozessor 501B implementiert,
der ebenfalls Pixel- und Positionsdaten 801 empfangen kann
und diese Pixel- und
Positionsdaten verwenden kann, um mehrere Tiefenschichten parallel
zu rekonstruieren. Die rekonstruierten Bilddaten (Voxel) des Rekonstruktionsprozessors 501B werden
in Rekonstruktionsspeichern 504B gespeichert. Bei diesem
Beispiel umfassen die Rekonstruktionsspeicher 504B die
Speicher M1B, M2B,
M3B und M4B, wobei
jeder zum Speichern von rekonstruierten Bilddaten, die einer bestimmten
Tiefenschicht des Prüfobjekts
zugeordnet sind, dient. Somit wird die Gesamtanzahl von Rekonstruktionsspeichern
durch Hinzu fügen
des zweiten Rekonstruktionsprozessors 501B verdoppelt.
Man sollte erkennen, dass die Rekonstruktionsprozessoren 501A und 501B parallel
laufen können,
so dass die Leistungsfähigkeit
mit der Anzahl von Rekonstruktionsprozessoren linear zunimmt.
-
Die
Anzahl von Pixel- und Positionseingangsbussen kann ebenfalls erhöht werden,
wenn man annimmt, dass die Pixel- und
Positionseingaben alle demselben Sichtfeld zugeordnet sind. 9 zeigt eine beispielhafte
Konfiguration 900, bei der die Anzahl von verwendeten Pixel-
und Positionseingangsbussen durch Aufnahme von zwei Pixel- und Positionseingangsbussen 901 und 902 um
einen Faktor von zwei erhöht
wird. Bei dem in 9 gezeigten
Beispiel wird für
jeden Pixel- und Positionsbus ein separater Rekonstruktionsprozessor
verwendet. Im einzelnen ist der Rekonstruktionsprozessor 501A mit
dem Pixel- und Positionsbus 901 gekoppelt, und der Rekonstruktionsprozessor 501B ist
mit dem Pixel- und
Positionsbus 902 gekoppelt. Bei diesem Beispiel sind die
Rekonstruktionsspeicher 504A mit dem Rekonstruktionsprozessor 501A gekoppelt
und umfassen die Speicher M1A, M2A, M3A und M4A, die jeweils zum Speichern von rekonstruierten
Bilddaten, die einer bestimmten Tiefenschicht des Prüfobjekts
zugeordnet sind, dienen. Ferner sind die Rekonstruktionsspeicher 504B mit
dem Rekonstruktionsprozessor 501B gekoppelt und umfassen
die Speicher M1B, M2B,
M3B und M4B, die
jeweils zum Speichern von rekonstruierten Bilddaten, die einer bestimmten
Tiefenschicht des Prüfobjekts
zugeordnet sind, dienen. Bei diesem Beispiel speichern die Speicher
M1A und M1B rekonstruierte
Bilddaten für
eine gemeinsame Z-Schicht, wie auch die Speicher M2A und
M2B, die Speicher M3A und
M3B sowie die Speicher M4A und
M4B.
-
Bei
dieser Konfiguration speichern die Rekonstruktionsspeicher 504A die
Zurückprojizierten
Summen von dem Pixelbus 901, und die Rekonstruktionsspeicher 504B speichern
die Zurückprojizierten
Summen von dem Pixelbus 902. Nachdem alle Pixel für ein Sichtfeld
durch die Rekonstruktionsprozessoren 501A und 501B verarbeitet
wurden, werden die Rekonstruktionsspeicher 504A und 504B summiert,
um das abschließende Rekonstruktionsbild
zu erhalten. Das heißt,
dass die Rekonstruktionsspeicher M1A und
M1B summiert werden (oder auf andere Weise
verarbeitet werden, z.B. durch Identifizieren des Maximalwerts und
durch Anwenden dieses Maximalwerts auf das Voxel), um ein rekonstruiertes
Bild für
eine erste Tiefenschicht zu erzeugen, dass die Speicher M2A und M2B summiert
(oder gemäß einem
Rekonstruktionsalgorithmus auf andere Weise verarbeitet) werden,
um ein rekonstruiertes Bild für
eine zweite Tiefenschicht zu erzeugen, dass die Speicher M3A und M3B summiert
(oder auf andere Weise verarbeitet) werden, um ein rekonstruiertes
Bild für
eine dritte Tiefenschicht zu erzeugen, und dass die Speicher M4A und M4B summiert
(oder auf andere Weise verarbeitet) werden, um ein rekonstruiertes
Bild für
eine vierte Tiefenschicht zu erzeugen. Man sollte erkennen, dass
die Rekonstruktionsprozessoren 501A und 501B parallel
laufen, so dass die Leistungsfähigkeit
mit der Anzahl von Rekonstruktionsprozessoren linear zunimmt, mit
Ausnahme eines geringen Zusatzaufwandes für das Summieren (oder anderweitige
Verarbeiten) der Speicherpaare der Rekonstruktionsprozessoren.
-
Hinsichtlich
des Vorstehenden liefern Ausführungsbeispiele
der vorliegenden Erfindung mehrere Vorteile gegenüber bekannten
Bildverarbeitungstechniken. Erstens ermöglichen Ausführungsbeispiele
der vorliegenden Erfindung eine gleichzeitige Rekonstruktion mehrerer
gesonderter Tiefenschichten (oder „Z-Schichten") eines Prüfobjekts.
In Fällen,
bei denen mehrere Tiefenschichten für eine Analyse erforderlich
sind, verbessert eine derartige gleichzeitige Rekonstruktion die
Leistungsfähigkeit.
-
Ausführungsbeispiele
der vorliegenden Erfindung können
die Systemkosten verringern, indem sie eine Präzisionspositionierungs- oder
Bereichsfindungshardware unnötig
machen.
-
Beispielsweise
könnte
ein Satz von Tiefenschichten in der ungefähren Region parallel rekonstruiert werden,
und die gewünschte
Tiefenschicht könnte
algorithmisch bestimmt werden. Beispielsweise könnte ein Autofokus- oder Korrelationsalgorithmus
verwendet werden, um die gewünschte
Schicht aus dem Satz von rekonstruierten Schichten zu bestimmen.
Somit können
Ausführungsbeispiele
der vorliegenden Erfindung zu einer kostengünstigen Implementierung zum
Finden und Prüfen
einer bestimmten Tiefenschicht eines Objekts beitragen. Beispielsweise
bei der Prüfung
von gedruckten Schaltungsplatinen muss üblicherweise für jedes Sichtfeld
eine geringe Anzahl von bestimmten Tiefenschichten geprüft werden. Übliche Prüfschichten
sind Lötverbindungen
auf der Oberfläche
der Platine, und die Oberseite und Unterseite von Kugelrasterarrays,
um Beispiele zu nennen. Ein Verfahren, das üblicherweise zum Erhalten einer
einzelnen fokussierten Rekonstruktion verwendet wird, besteht darin,
eine teure Präzisionspositionierungshardware
zu verwenden, um die gewünschte
Tiefenschicht bei einer bekannten Höhe zu platzieren. Jedoch können Ausführungsbeispiele
der vorliegenden Erfindung verwendet werden, um mehrere gut gewählte Tiefenschichten
parallel zu rekonstruieren und die eine, die der gewünschten
Tiefenschicht oder einer Referenzschicht, beispielsweise der Oberseite
der PC-Platine, am besten entspricht, algorithmisch zu bestimmen
und somit die erforderliche Positionierungshardware zu eliminieren
(oder deren Komplexität
zu verringern).
-
Bestimmte
Ausführungsbeispiele
der vorliegenden Erfindung verarbeiten Eingangspixel in Echtzeit
für Pixelabtastraten,
die geringer als die oder gleich der halben globalen Taktrate des
Rekonstruktionsprozessors sind. In diesem Sinne bedeutet ein Verarbeiten
der Eingangspixel in „Echtzeit", dass ein empfangenes
Pixel in einem feststehenden, konstanten Zeitraum (z.B. zwei Taktzyklen)
zum parallelen Anwenden des Beitrag dieses Pixels auf Voxel einer
Mehrzahl von verschiedenen Tiefenschichten verarbeitet wird. Bei
einem Ausführungsbeispiel
kann beispielsweise für
jeden zweiten auf einander folgenden globalen Taktzyklen ein Pixel
aus dem FIFO in die Berechnungspipeline gelesen werden, und mehrere
Rekonstruktionsspeicheraktualisierungen treten entsprechend einem
vorherigen Pixel gleichzeitig auf. Somit besteht eine relativ geringe
feststehende Latenz von dem Zeitpunkt, zu dem ein Pixel aus dem
FIFO gelesen wird, bis zu dem Zeitpunkt, zu dem die Rekonstruktionsspeicheraktualisierung,
die diesem Pixel entspricht, abgeschlossen ist. Wie oben erwähnt wurde,
kann der Rekonstruktionsprozessor bei bestimmten Ausführungsbeispielen
ein Pixel bei einer Rate von einem Pixel alle zwei Taktzyklen in
seine Verarbeitungspipelines aufnehmen, und jedes Pixel braucht
eine geringe festgelegte Zeit (z.B. zwanzig Taktzyklen), um in der
Pipeline vollständig
verarbeitet zu werden. Eine Echtzeit-Rekonstruktion ist ein deutlicher Vorteil,
der bei vielen Anwendungen kritisch ist. Insbesondere hängt die
praktische Anwendbarkeit von automatisierten Röntgenstrahlenprüfsystemen
bei vielen Umgebungen, z.B. Produktionsumgebungen, vom Durchsatz
ab.
-
Ein
weiterer Vorteil von Ausführungsbeispielen
der vorliegenden Erfindung besteht darin, dass eine generische (oder
flexible) Bildrekonstruktionsvorrichtung vorgesehen ist, die bei
einer jeglichen von diversen verschiedenen Konfigurationen eines
radiografischen Abbildungssystems verwendet werden kann und/oder
in der eine beliebige von diversen unterschiedlichen Bildverarbeitungstechniken
zum Verarbeiten von empfangenen Bildpixeln, um Querschnittsbilder
zu rekonstruieren, implementiert sein kann. Ein bevorzugtes Ausführungsbeispiel
der vorliegenden Erfindung liefert eine Bildrekonstruktionsvorrichtung,
die wirksam ist, um eine effiziente Bildrekonstruktion (z.B. unter
Verwendung einer parallelen Rekonstruktion mehrerer Querschnitte) für jegliche
von diversen unterschiedlichen Konfigurationen eines radiografischen
Abbildungssystems zu liefern. Somit ist die Operation der Bildrekonstruktionsvorrichtung
eines bevorzugten Ausführungsbeispiels
nicht von einer bestimmten Konfiguration eines radiografischen Abbildungssystems
(z.B. einem bestimmten Abtastweg oder Schrittmuster, einer bestimmten
Detektorarrayanordnung usw.) abhängig,
um eine parallele Rekonstruktion mehrerer Querschnitte zu liefern.
Bei einem bevorzugten Ausführungsbeispiel
ist die Bildrekonstruktionsvorrichtung vielmehr wirksam, um willkürliche Pixel
(d.h. Pixel in einer beliebigen Reihenfolge) von einem radiografischen
Abbildungssystem zu empfangen, die Voxel jedes einer Mehrzahl von
Querschnitten, zu denen ein empfangenes Pixel beiträgt, zu bestimmen,
und den jeweiligen Beitrag dieses Pixels auf jedes der bestimmten
Voxel anzuwenden. Demgemäß muss das
radiografische Abbildungssystem nicht auf eine bestimmte Weise konfiguriert
sein, um ein paralleles Verarbeiten durch die Bildrekonstruktionsvorrichtung
eines bevorzugten Ausführungsbeispiels
zu ermöglichen,
sondern statt dessen können
in Verbindung mit der Bildrekonstruktionsvorrichtung beliebige einer
Mehrzahl von verschiedenen Konfigurationen eines radiografischen
Abbildungssystems verwendet werden, die digitale Bilddaten (Pixel)
für ein
Prüfobjekt
ausgeben.
-
Beispielsweise
ermöglichen
bestimmte Ausführungsbeispiele
eine parallele Rekonstruktion von Tiefenschichten für ein Abbildungssystem,
das einen unregelmäßigen Sensor
und/oder eine unregelmäßige Reihenfolge
zum Erfassen von Pixeln umfasst. Als Beispiel eines unregelmäßigen Sensors,
der implementiert sein kann, kann ein Sensor nicht-zusammenhängend sein.
Beispielsweise sind beispielhafte Konfigurationen von nicht-zusammenhängenden
Sensoren in den 10A-10C gezeigt. 10A zeigt einen ersten nicht-zusammenhängenden
Sensor 30A, der ein Array von Sensoren umfasst, die in
einer Kreuzstruktur mit einem darin befindlichen Loch (bzw. einem
Nicht-Vorliegen von Sensoren) 1001 angeordnet sind. 10B zeigt einen weiteren
nicht-zusammenhängenden
Sensor 30B, der ein Array von Sensoren umfasst, die in
einem rechteckigen Muster mit darin befindlichen Löchern (bzw.
einem Nicht-Vorliegen von Sensoren) 1002 und 1003 angeordnet
sind. Ein weiteres Beispiel besteht darin, mehrere nicht-zusammenhängende Liniensensoren
zu verwenden, wie bei der Sensoranordnung 30c in 10C, um Sensorkosten zu
minimieren und durch ein Bewegen des Objekts Ansichten aus vielen
Winkeln zu erhalten; Eingangskoordinaten für ein Ausführungsbeispiel der vorliegenden
Erfindung können
mathematisch verschoben werden, um die Objektbewegung zu berücksichtigen.
Diverse andere Anordnungen von nicht-zusammenhängenden Sensoren können bei
einem Abbildungssystem verwendet werden, und die Rekonstruktionsprozessoren
von Ausführungsbeispielen
der vorliegenden Erfindung (z.B. des Ausführungsbeispiels der 6) sind mit derartigen Anordnungen
von nicht-zusammenhängenden
Sensoren betreibbar, um auf die oben beschriebene Weise mehrere
Tiefenschichten parallel zu rekonstruieren. Eine derartige nicht-zusammenhängende Sensoranordnung
kann bei bestimmten Anwendungen, z.B. beim Abbilden bestimmter Objekte,
wünschenswert
sein.
-
Ferner
können
bei der Bildrekonstruktionsvorrichtung eines bevorzugten Ausführungsbeispiels
beliebige von diversen unterschiedlichen Bildverarbeitungstechniken
zum Rekonstruieren von Querschnittsbildern implementiert sein. Beispielsweise
sind in der Technik diverse Rückprojektions-
und andere Bildverarbeitungstechniken bekannt, und bei der Bildrekonstruktionsvorrichtung
eines bevorzugten Ausführungsbeispiels
können
beliebige einer Mehrzahl von unterschiedlichen Typen von Bildverarbeitungstechniken
implementiert sein. Beispielsweise können beliebige Bildverarbeitungstechniken
(z.B. Technik auf Rückprojektionsbasis,
einschließlich
Verschieben-Und-Hinzufügen-Techniken),
die in dem Rückprojektion-Block 604A des
Beispiels der 6 zum
Empfangen der in diesen Rückprojektion-Block 604A eingegebenen
Informationen wirksam sind und zum Verwenden dieser Informationen
dazu, den Beitrag eines Pixels auf ein Voxel einer Tiefenschicht
anzuwenden, verwendet werden. Somit ist die parallele Rekonstruktion
mehrerer Tiefenschichten nicht ausschließlich auf einen spezifischen
Rekonstruktionsalgorithmus beschränkt, sondern ermöglicht statt
dessen, dass beliebige von diversen unterschiedlichen Rekonstruktionsal gorithmen
verwendet werden (z.B. kann ein Rekonstruktionsalgorithmus, der
speziell für
eine bestimmte Anwendung ausgelegt ist, selektiv verwendet werden).
-
Ein
weiterer Vorteil von Ausführungsbeispielen
der vorliegenden Erfindung besteht darin, dass sie skalierbar sind.
Durch Erhöhen
der Anzahl von implementierten Rekonstruktionsprozessoren kann beispielsweise die
Gesamtanzahl von Rekonstruktionsspeichern erhöht werden (wie oben bei 8 beschrieben wurde). Ferner
ist die Anzahl von Eingangspixelbussen skalierbar (wie oben bei 9 beschrieben wurde).
-
Angesichts
des Vorstehenden sollte man erkennen, dass Ausführungsbeispiele der vorliegenden
Erfindung eines oder mehrere (z.B. alle) der folgenden Merkmale
liefern können:
1) Pixel können
durch das radiografische Abbildungssystem in einer willkürlichen
Reihenfolge erfasst werden; 2) es können beliebige von diversen
unterschiedlichen Rekonstruktionsverfahren (z.B. diverse unterschiedliche
auf Rückprojektion
beruhende Algorithmen) implementiert sein; 3) unregelmäßige (z.B.
nicht-zusammenhängende)
Detektoranordnungen können
bei dem radiografischen Abbildungssystem implementiert sein; und
4) sehr große
radiografische Bilder können
durch das radiografische Abbildungssystem erfasst und durch den
Rekonstruktionsprozessor verarbeitet werden (z.B. kann der Detektor
in einem radiografischen Abbildungssystem in der Lage sein, eine
sehr große
Matrix von Pixeln zu erfassen). Zusätzlich zu den oben aufgezählten Merkmalen
ermöglichen Ausführungsbeispiele
der vorliegenden Erfindung, dass ein Pixel derart verarbeitet wird,
dass sein Beitrag auf mehrere Tiefenschichten (z.B. beim Rekonstruieren
von Voxeln der mehreren Tiefenschichten) eines Objekts parallel
angewendet wird.
-
Obwohl
die vorliegende Erfindung und ihre Vorteile oben ausführlich beschrieben
wurden, sollte man sich darüber
im klaren sein, dass daran diverse Änderungen, Ersetzungen und Modifizierungen
durchgeführt werden
können,
ohne von der Wesensart und dem Schutzumfang der Erfindung, wie sie
durch die beigefügten Patentansprüche definiert
ist, abzuweichen. Überdies
soll der Schutzumfang der vorliegenden Anmeldung nicht auf die bestimmten
Ausführungsbeispiele
des bzw. der in der Spezifikation beschriebenen Prozesses, Maschine,
Herstellung, Materialzusammensetzung, Einrichtungen, Verfahren und
Schritte beschränkt
sein. Wie Fachleute aus der Offenbarung der vorliegenden Erfindung
ohne weiteres entnehmen können,
können derzeit
existierende oder in Zukunft zu entwickelnde Prozesse, Maschinen,
Herstellung, Materialzusammensetzungen, Einrichtungen, Verfahren
oder Schritte, die im wesentlichen dieselbe Funktion erfüllen oder
im wesentlichen dasselbe Ergebnis erzielen wie die oben beschriebenen
entsprechenden Ausführungsbeispiele,
gemäß der vorliegenden
Erfindung verwendet werden. Demgemäß sollen die beigefügten Patentansprüche in ihrem
Schutzumfang derartige Prozesse, Maschinen, Herstellung, Materialzusammensetzungen,
Einrichtungen, Verfahren oder Schritte umfassen.