-
Bei
digitalen radiographischen Einrichtungen können nicht-funktionierende
Pixel des digitalen Detektors, und insbesondere Gruppen nicht-funktionierender
Pixel, auf den dargestellten Bildern Flächen mit anormalem Grau-Wert
erzeugen, die heller oder dunkler erscheinen als umliegende Pixel,
und zu einer Ablenkung des Benutzers führen. Deshalb ist es wichtig,
in der Lage zu sein, alle nicht-funktionierenden Pixel zu identifizieren
und die korrespondierenden Grau-Werte in den dargestellten Bildern
zu korrigieren.
-
Eine
derartige Identifikation und Korrektur durchzuführen ist insbesondere in digitalen
Echtzeit-Radiographie-Anwendungen schwierig. Die Verarbeitung großformatiger
digitaler Detektor-Daten zur Erzeugung von Bildern in Echtzeit mit
30 Millionen Pixel pro Sekunde ist Rechenzeit-aufwendig. Dementsprechend
muss die Identifikation der nicht-funktionierenden Pixel und die
nachfolgende Korrektur der durch diese erzeugten anormalen digitalen
Daten unter einer effizienten Verwendung der begrenzten Prozessor-
und Speicher-Ressourcen durchgeführt
werden. Gegenwärtige
Verfahren zur Anwendung der Korrektur nicht-funktionierender Pixel
führen
zu erheblichn Prozessorzeiten, die die Geschwindigkeit des Systems
begrenzen, und/oder resultieren auf Grund unzureichender Identifikations- und Korrektur-Algorithmen
in einer Verschlechterung der Bildqualität. Es wird angestrebt, derartige
Identifikationen und Korrekturen schneller als in den herkömmlichen Systemen
durchzuführen.
Zusätzlich
sollte man fähig sein
die Pixel präziser
als nicht-funktionierend zu identifizieren.
-
Ein
Verfahren und ein System nach dem Stand der Technik zur Korrektur
fehlerhafter Pixel ist in der WO-A-01 27688 beschrieben.
-
Die
vorliegende Erfindung betrifft die von den Erfindern identifizierten
Probleme und organisiert die nichtfunktionierenden Pixel und die
funktionierenden Pixel zur Korrektur der nicht-funktionierenden
Pixel in einer Art, die den Cache-Speicher des Prozessors effizient nutzt
und falsche Programmsprung-Vorhersagen reduziert. Die vorliegende
Erfindung schafft ebenfalls ein Verfahren zur präzisen Identifikation nicht-funktionierender
Pixel.
-
Die
vorliegende Erfindung schafft insbesondere ein Verfahren und ein
Software-Produkt zur Echtzeitkorrektur von anormalen Daten aus nicht-funktionierenden
Detektor-Pixeln in der digitalen Radiographie, wobei das Verfahren
aufweist: Empfangen einer Liste nicht-funktionierender Pixel; Ermitteln,
welche der benachbarten Pixel benötigt werden, um die nichtfunktionierenden
Pixel zu korrigieren; Organisieren der benachbarten funktionierenden
Pixel und entsprechender nichtfunktionierender Pixel in mehrere
Gruppen einer Anzahl von Pixeln, die zur Durchführung einer Korrektur verwendet
werden; und Durchführen
von Korrekturen an nicht-funktionierenden Pixeln innerhalb einer
der mehreren Gruppen, und nachfolgend Durchführen von einer Korrektur der
nicht-funktionierenden Pixel innerhalb einer anderen der mehreren
Gruppen.
-
Andere
Merkmale und Vorteile der vorliegenden Erfindung werden für den Fachmann
aus der nachfolgenden detaillierten Beschreibung offensichtlich.
Es sollte jedoch verstanden werden, dass die detaillierte Beschreibung
und die spezifischen Beispiele, die bevorzugten Ausführungsformen
der vorliegenden Erfindung betreffen, nur zum Zwecke der Illustration
und nicht als Beschränkung
aufgeführt sind.
-
Die
Erfindung wird jetzt mit Bezug auf die Zeichnung an Hand eines Beispiels
genauer beschrieben, wobei die einzige Figur von dieser ein Verfahren
zur Echzeit-Korrektur von nicht-funktionierenden Pixeln gemäß einem
bevorzugten Ausführungsbeispiel
der vorliegenden Erfindung darstellt.
-
Die
Erfindung wird nachfolgend mit Bezug auf die Zeichnung beschrieben.
Die Zeichnung zeigt bestimmte Einzelheiten einer spezifischen Ausführungsform,
die das Verfahren der vorliegenden Erfindung verwirklicht. Jedoch
sollte die Beschreibung der Erfindung an Hand der Zeichnung nicht
dahingehend ausgelegt werden, dass der Erfindung Beschränkungen
auferlegt werden, die in der Zeichnung vorhanden sein können. Die
vorliegende Erfindung betrifft Verfahren und Software auf jedem
Computer-lesbaren Medium zum Ausführen von deren Abläufen. Die Ausführungsformen
der vorliegenden Erfindung können
unter Verwendung eines existierenden Computer-Prozessors implementiert
werden, oder durch einen Spezialzweck-Computer-Prozessor, der für diesen
oder einen anderen Zweck eingebaut wurde, oder durch ein fest verdrahtetes
System.
-
Auf 1 bezogen,
stellt Schritt 100 den Anfangsschritt in dem Verfahren
der Echtzeit-Korrektur nichtfunktionierender Pixel in der digitalen
Radiographie gemäß einer
bevorzugten Ausführungsform
der Erfindung dar. In der bevorzugten Ausführungsform dieses Verfahrens
wird in diesem Schritt eine binäre Karte
der funktionierenden und nichtfunktionierenden Pixel empfangen und
diese binäre
Karte in eine Liste von Positionen (Zeile, Spalte) nicht-funktionierender Pixel
konvertiert. In dieser Ausführungsform
der Erfindung ist nicht relevant, in welcher genauen Art und Weise
die Karte erzeugt wird. Während
jedes Verfahren verwendet werden kann, um die Liste, die in Schritt 100 empfangen
wird, zu erzeugen, wird ein bevorzugtes Verfahren hierin später beschrieben.
-
Als
Nächstes
ermittelt der Prozessor in Schritt 110, der eine Liste
der in einem Bild nicht-funktionierenden Pixel empfangen hat, die
benachbarten funktionierenden Pixel, die gebraucht werden, um die
nicht-funktionierenden Pixel zu korrigieren. Bei dieser Ermittelung
bestimmt die Position der nicht-funktionierenden Pixel welche benachbarten
Pixel geprüft
werden, um zu ermitteln, welche der derartigen benachbarten Pixel
verwendet werden, um die nicht-funktionierenden Pixel zu korrigieren. Der
Vorzug wird den Pixeln gegeben, die dem nicht-funktionierenden Pixel
auf der linken und der rechten Seite benachbart sind, gefolgt von
denen, die oberhalb und unterhalb des nicht-funktionierenden Pixels
angeordnet sind, gefolgt von solchen, die diagonal zu dem nicht-funktionierenden
Pixel angeordnet sind, gefolgt von solchen, die mehr als ein Pixel entfernt
von dem nicht-funktionierenden Pixel angeordnet sind. Die physikalische
Basis für
diese Bevorzugung hängt
von dem Design des digitalen Röntgen-Sensors
ab; somit setzen „links,
rechts, aufwärts,
abwärts" eine spezifische
Detektororientierung voraus. In der bevorzugten Ausführungsform
der Erfindung, spezifiziert man die Korrektur-Strategie als eine
Folge von Tabellen. Die Programmroutine, die die Korrektur-Strategie auswählt, iteriert
diese Tabellen bis sie eine Strategie findet, die jeden nicht-funktionierenden
Pixel korrigiert. Nur solche benachbarten Pixel, die funktionieren
und sich nicht selbst korrigiert worden sind, werden in Betracht
gezogen.
-
Die
ausgewählten,
benachbarten Pixel werden gewichtet und zusammengefasst, um den nicht-funktionierenden
Pixel zu korrigieren und im Wesentlichen zu interpolieren. Die Wichtung
ist bezogen auf die Distanz des ausgewählten, benachbarten Pixels
zu dem nicht-funktionierenden Pixel, der korrigiert wird. Es kann
mehr als ein benachbarter Pixel als nützlich befunden werden, um
den nicht-funktionierenden Pixel zu korrigieren. Zum Beispiel, wenn beide
der Pixel zur Linken und der Pixel zur Rechten des nicht-funktionierenden
Pixels brauchbare Nachbarn sind, werden auf der Basis der gegenwärtigen Detektor-Architektur und der
Korrektur-Strategie beide verwendet, um den nicht-funktionierenden
Pixel zu korrigieren. Das Ergebnis ist, dass für alle oder nahezu alle der
nicht-funktionierenden Pixel in der in Schritt 100 bereitgestellten
Liste, die korrespondierenden benachbarten Pixel bestimmt werden,
die verwendet werden können,
um die nicht-funktionierenden Pixel zu korrigieren.
-
Als
Nächstes
wird in Schritt 120 die Liste der nichtfunktionierenden
Pixel und der korrespondierenden funktionierenden Pixel in eine
oder mehrere Gruppen unterteilt gemäß der Anzahl der benachbarten
Pixel, die verwendet werden, um einen nicht-funktionierenden Pixel
zu korrigieren. Beispielsweise werden alle nicht-funktionierenden
Pixel, die nur einen benachbarten Pixel zur Verwendung beider Korrektur
verlangen, zusammen gruppiert. Ähnlich sind
alle nicht-funktionierenden Pixel, die zwei benachbarte funktionierende
Pixel zur Korrektur verlangen, zusammen gruppiert. Wie hierin diskutiert
wird, wird diese Gruppierung während
der Korrektur eine bessere Vorhersage der Sprungvorhersage erlauben.
Außerdem
können
mehrere Gruppen unter bestimmten Bedingungen zusammengefasst werden, um
die Anforderungen an die Speicherbandbreite zu reduzieren. Zum Beispiel
kann die Gruppe, die nur ein benachbartes Pixel erwartet, mit der
Gruppe, die zwei benachbarte Pixel erwartet, kombiniert werden, indem
der eine Pixel dupliziert wird, sodass zwei benachbarte Pixel zur
Korrektur jedes nichtfunktionierenden Pixels geschaffen werden,
ohne das Ergebnis zu ändern.
Diese zwei Gruppen, die kombiniert wurden, werden zu weniger Speicherzugriffs-Operationen
während
der Korrektur führen,
und können
ebenso die Anzahl der Cache-Verfehlungen reduzieren.
-
Wenn
die Gruppen einmal organisiert sind, wird in Schritt 130 eine
Korrektur der nicht-funktionierenden Pixel von jeder dieser Gruppen
durchgeführt. Das
bedeutet, es wird eine Korrektur der nicht-funktionierenden Pixel
innerhalb einer ersten Gruppe durchgeführt, und dann wird eine ähnliche
Korrektur für
die nicht-funktionierenden Pixel einer nachfolgenden Gruppe durchgeführt. Dieser
Prozess wird wiederholt bis alle Gruppen von nicht-funktionierenden Pixeln
korrigiert sind. Dies macht eine Verzweigungs-Vorhersage wahrscheinlicher,
da ähnliche
Arten von Abläufen
zusammen gruppiert werden. Die Korrektur selbst kann durch eine
beliebige Zahl der dem Fachmann bekannten Verfahren durchgeführt werden.
In der bevorzugten Ausführungsform
wird die Korrektur des nicht-funktionierenden Pixels unter Anwendung
einer linearen Kombination der funktionierenden benachbarten Pixel
ausgeführt,
die in Schritt 110 ermittelt werden.
-
Man
beachte, dass die Schritte 100, 110 und 120 nur
auf das erste oder ein einzelnes Bild einer Bildsequenz angewendet
werden müssen.
Bis die Bilddetektor-Vorrichtung rekalibriert wird, kann die bereits
ermittelte Liste der nichtfunktionierenden Pixel zusammen mit der
Liste funktionierender benachbarter Pixel für jedes aufeinander folgende
Bild verwendet werden. Es ändern
sich nicht die Positionen dieser Pixel son dern nur die Daten, die
in den Pixeln enthalten sind. Schritt 130 hingegen wäre für jedes dieser
Bilder in einer Sequenz anzuwenden.
-
Das
oben beschriebene Verfahren zur Korrektur von nichtfunktionierenden
Pixeln in Echtzeit schafft eine genauere Programmsprung-Vorhersage und
weniger falsche Programmsprung-Vorhersagen. Der
Prozessor verwendet Programmsprung-Vorhersage-Techniken, um seine Pipeline
effizient zu verwenden, und um die Verarbeitungsgeschwindigkeit zu
erhöhen.
Wenn aus den Befehlen Muster erkannt werden können, kann der Prozessor die
Richtung eines Programmsprungs vorhersagen und kann in der Lage
sein den nächsten
Befehl zu beginnen, um diesen in die Pipeline zu stellen, auch wenn
ein vorheriger oder gegenwärtiger
Befehl noch unterwegs ist. Wenn jedoch die Vorhersage nicht korrekt
ist, tritt ein signifikanter Verlust in der Verarbeitungszeit auf,
da bis zu hundert „in
flight"-Befehle
gestrichen werden müssen.
Dementsprechend ist bei der vorliegenden Erfindung ein Vermeiden
derartiger falscher Sprung-Vorhersagen für die Verbesserung der gesamten
Verarbeitungszeit wichtig, und unterstützt somit die Echtzeit-Korrektur
von nicht-funktionierenden Pixeln in der digitalen Radiaographie.
-
Darüber hinaus
wird, wie oben erwähnt,
die Anzahl der Befehle, die in Echtzeit verwendet werden müssen, durch
Vorberechnen der Liste der Positionen sowohl für nichtfunktionierende Pixel
als auch die erforderlichen benachbarten funktionierenden Pixel
verringert. Zusätzlich
wird die Anzahl von Durchläufen
durch die Bilddaten in dem Speicher reduziert, indem die Gruppen
zusammengeführt
werden, die eine unterschiedliche Anzahl von funktionierenden benachbarten
Pixeln zur Korrektur der nicht-funktionierenden Pixel benötigen.
-
Gemäß der vorliegenden
Erfindung können Prefetching-Möglichkeiten
erkannt werden, indem die Liste der nichtfunktionierenden Pixel
gescannt und während
der Korrektur anderer nicht-funktionierender Pixel begonnen wird,
die notwendigen Daten der benachbarten Pixel in den Prozessor-Cache-Speicher
zu laden. Ebenso können
die nicht-funktionierenden Pixel nach der Speicheradresse sortiert
und dann im Wesentlichen in derselben Reihenfolge anstelle einer
Zufallsreihenfolge derart korrigiert werden, dass die erforderliche
Information für
die Korrektur jedes nachfolgenden Pixels wahrscheinlich bereits
in den Cache-Speicher geladen wurde. In einer weiteren Ausführungsform
der Erfindung ist die Liste der nichtfunktionierenden Pixel geteilt
und wird von mehreren Prozessoren behandelt, um weiterhin Echtzeit-Korrekturen
von nichtfunktionierenden Pixeln zu ermöglichen. In einer weiteren Ausführungsform
der Erfindung, können
die Bildkorrektur-Ergebnisse offline simuliert werden, da die Schritte 110, 120 und 130 nur
einmal für
eine vorgegebene Bildsequenz durchgeführt werden müssen. Die
Simulation kann vorhersagen, ob die Kombination von zwei oder mehr
Gruppen von Pixeln die Verarbeitungszeit verringern wird. Die Simulation
kann ebenfalls die beste Strategie für die Aufteilung der Pixel-Korrektur-Aufgaben
auf verschiedene Prozessoren vorhersagen und die Vorteile des Vorladens
von Daten aus dem Langzeitspeicherarchiev einschätzen.
-
In
einer weiteren Ausführungsform
der Erfindung ist ein Verfahren für die digitale Radiographie zur
Herstellung einer genauen Echtzeit-Karte der nicht-funktionierenden
Pixel in einem Detektor-Panel geschaffen und wird hiermit beschrieben.
Das Verfahren wird verwendet, um eine Liste von nichtfunktionierenden
Pixeln von einem Bild-Detektor zu erzeugen, und kann auf das vorher
beschriebene Verfahren in Schritt 100 von 1 angewendet
werden. Gemäß diesem
Verfahren wird ei ne erste Liste der nicht-funktionierenden Pixel
unter Verwendung eines Verfahrens mit einem langen oder ausgedehnten
Expositions-Modus für
das Detektor-Panel ermittelt. Dann wird eine zweite Liste der nicht-funtionierenden Pixel
für dasselben
Detektor-Panel unter Verwendung eines Echtzeit-Modus ermittelt.
-
Sowohl
der Modus der ausgedehnten Exposition als auch der Echtzeit-Modus
sind dem Fachmann entsprechend des statischen und dynamischen Modus
der digitalen Radiographie bekannt. Die Erfinder haben herausgefunden,
dass eine Liste nicht-funtionierender
Pixel, die unter Verwendung des Modus der ausgedehnten Bestrahlung
alleine oder des Echtzeit-Modus alleine erzeugt wurde, nicht alle
Anomalien der dynamischen Bilder identifiziert. Die Erfinder haben
ferner gemäß der vorliegenden Erfindung
identifiziert, dass eine Kombination der Karten nicht-funktionierender
Pixel, die unter Verwendung jeder der Modi erzeugt wurden, im Ergebnis eine
vermischte Liste von nicht-funktionierenden Pixel hat, die zur Verwendung
bei der Korrektur in dem Echtzeit-Modus genauer sein würde.
-
Dementsprechend
werden in der vorliegenden Erfindung, sobald die erste Liste der
nicht-funktionierenden Pixel, die unter Verwendung des Modus der
ausgedehnten Bestrahlung ermittelt wurde, gefunden ist, und eine
zweite Liste der nichtfunktionierenden Pixel, die unter Verwendung
eines Echtzeit-Modus
ermittelt wurde, gefunden ist, diese beiden Listen verschmolzen,
um eine vereinigte Liste von nicht-funktionierenden Pixeln für das Detektor-Panel
zur Verwendung im Echtzeit-Modus zu erzeugen. Die Vereinigung weist
bevorzugt einen logischen OR-Befehl auf, so dass, wenn ein Pixel
in einem der beiden Verfahren als nicht-funktionierend identifiziert
ist, er ebenfalls in der vereinigten Liste der nicht-funktionierenden
Pixel als nicht-funktionierend identifiziert ist.
-
Die
Karte der nicht-funktionierenden Pixel in dem Modus der ausgedehnten
Exposition wird durch die Analyse der Detektor-Daten ermittelt,
die bei verschiedenen Röntgenintensitäten erfasst
sind. Die Karte wird verwendet, um eine Liste der nicht-funtionierenden
Pixel zu erstellen, die unter Verwendung des oben beschriebenen
Modus der ausgedehnten Exposition erfasst wurden. In dem Modus der
ausgedehnten Exposition werden die Bedingungen der Röntgenstrahlen
derart zwischen niedriger und hoher Intensität variiert, dass die Niveaus
der Pixel den dynamischen Bereich des Detektors umfassen.
-
Die
zweite Liste der nicht-funktionierenden Pixel, das ist die Liste,
die unter Verwendung des Echtzeit-Modus erzeugt wurde, wird unter
Verwendung von Bedingen für
die Röntgenstrahlen
aufgenommen, die Bilder mit niedrigen, mittleren und hohen Intensitäts-Settings
erzeugen, wobei aber jede dieser Einstellungen in einen niedrigeren
Bereich fällt,
als diejenigen, die in dem Modus der ausgedehnten Bestrahlung verwendet
wurden. Es kann jede Anzahl der Intensitäts-Einstellungen verwendet werden,
aber in der bevorzugten Ausführungsform werden
drei Niveaus verwendet. Das Vereinigen dieser zwei Listen identifiziert
eine höhere
Anzahl von nicht-funktionierender Pixeln als jede der zwei Listen alleine,
für die
diese größere Anzahl
beobachtet wird bei einem nicht korrekten Ablauf während der
dynamischen Bildgebung.
-
Wie
oben bemerkt, enthalten die Ausführungsformen
im Umfang der vorliegenden Erfindung Software-Produkte, zu denen
Computer-lesbare Medien gehören,
die darauf gespeicherte Computer-ausführbare Befehle oder Datenstrukturen
tragen. Derartige Computer-lesbare Medien können jedes verfügbare Medium
sein, auf das von einem Allzweck-Computer oder einem Spezial- Zweck-Computer zugegriffen
werden kann. Beispielsweise gehören zu
derartigen Computer-lesbaren Medien: RAM, ROM, EPROM, EEPROM, CD-ROM
oder andere optische Platten-Speicher, magnetische Platten-Speicher
oder andere magnetische Speichereinrichtungen, oder jedes andere
Medium, das verwendet werden kann, um den gewünschten Programm-Code zu transportieren
oder in einer Form von Computer-ausführbaren Befehlen oder Datenstrukturen
zu speichern, und auf die von einem Allzweck-Computer oder einem
Spezial-Zweck-Computer zugegriffen werden kann. Wenn Information übertragen
oder über
ein Netzwerk oder andere Kommunikationsverbindungen (entweder fest
verdrahtet, drahtlos oder eine Kombination von fest verdrahtet oder
drahtlos) einem Computer zur Verfügung gestellt wird, betrachtet
der Computer die Verbindung als Computer-lesbares Medium. Somit
ist jede derartige Verbindung als Computer-lesbares Medium bezeichnet. Kombinationen
der obigen sind ebenfalls im Umfang der Computerlesbaren Medien
enthalten. Computer-ausführbare
Befehle weisen beispielsweise Befehle und Daten auf, die einen allgemeinen
Computer oder einen für
spezielle Zwecke bestimmten Computer veranlassen eine bestimmte
Funktion oder eine Gruppe von Funktionen auszuführen.
-
Die
Erfindung ist im allgemeinen Zusammenhang eines Verfahrensschrittes
beschrieben, der in einer Ausführungsform
durch ein Software-Produkt implementiert werden kann, das Computerausführbare Befehle
enthält,
wie ein Programm-Code, der durch den Computer in vernetzten Umgebungen
ausgeführt
wird. Allgemein, enthalten Programm-Module Programmroutinen, Programme,
Objekte, Komponenten, Datenstrukturen, usw., die spezielle Aufgaben
ausführen
oder spezielle abstrakte Datentypen implementieren. Computer-ausführbare Befehle,
zugeordnete Datenstrukturen und Programm-Module stellen Beispiele
für den
Programm-Code zum Ausführen
von Schritten der Verfahren dar, die hierin offenbart sind. Die
besondere Sequenz derartiger ausführbarer Befehle oder zugeordneten
Datenstrukturen stellen Beispiele für zugeordnete Handlungen zum
Implementieren der Funktionen dar, die in derartigen Schritten beschrieben
sind.
-
Ein
Beispiel-System zum Implementieren des gesamten Systems oder von
Teilen der Erfindung könnte
eine für
einen allgemeinen Zweck geschaffene Computereinrichtung aufweisen,
die eine Prozessoreinheit, einen Systemspeicher und einen Systembus
enthält,
der verschiedene Systemkomponenten einschließlich des Systemspeichers und
der Prozessoreinheit verbindet. Der Systemspeicher kann einen Read-Only-Speicher
(ROM) und einen Random-Access-Speicher (RAM) enthalten. Der Computer
kann ebenso ein magnetisches Festplattenlaufwerk zum Lesen und Beschreiben
einer Magnetwechselplatte und ein optisches Plattenlaufwerk zum
Lesen und Beschreiben von optischen Wechselplatten, wie einer CD-ROM
oder andere optischer Medien, enthalten. Die Laufwerke und ihre
zugeordneten Computer-lesbaren Medien erbringen eine nicht flüchtige Speicherung
von Computerausführbaren
Befehlen, Datenstrukturen, Programm-Modulen und anderen Daten für den Computer.