BESCHREIBUNG
Mikroskopbildverarbeitungsverfahren,
Computer, Computerprogramm und Datenträger
Die Erfindung betrifft ein Mikroskopbildverarbeitungsverfahren zur Ausführung auf einem Computer, der einen Arbeitsspei- eher mit einer vorgegebenen verfügbaren Speicherkapazität und einen Massenspeicher, der eine höhere Zugriffszeit aufweist als der Arbeitsspeicher, umfasst, zur Verarbeitung eines digitalen Mikroskopbilds, das aus Pixeln besteht, n-dimensional. ist mit n > 1, aus zumindest zwei Teilbildern besteht und ei- ne Größe aufweist, die die verfügbare Speicherkapazität des Arbeitsspeichers übersteigt, durch Anwenden einer Rechenoperation auf zumindest einen Teil des Mikroskopbilds.
Derartige Verfahren werden bei der Verarbeitung von digitalen Mikroskopbildern eingesetzt, die mit Hilfe einer Digitalkame- ra eines Mikroskops gewonnen werden. Ein Beispiel ist ein Mikroskopbild einer Gewebeprobe, die mit einem Mikroskop in einer Vergrößerung aufgenommen wurde, die so groß gewählt ist, dass mehrere Teilbilder notwendig sind, um ein Mikroskopbild der gesamten Gewebeprobe in der gewünschten Vergrößerung zu erhalten. Auf dieses in Teilbildern vorliegende digitale Mikroskopbild, ein so genanntes Mosaik-Bild, soll eine Rechenoperation, wie beispielsweise das Ermitteln der mittleren Helligkeit, insbesondere in einer Vielzahl von Teilbereichen, angewendet werden.
In der US 4 673 988 Al ist ein Verfahren zum Erstellen eines solchen elektronischen Mosaik-Bilds mit einem Mikroskop beschrieben. Das Mosaik-Bild weist eine hohe Auflösung in einem
breiten Bildfeld auf. Zur Aufnahme des Mosaik-Bilds umfasst das Mikroskop neben einer ersten Kamera ein Bildaufnahmemit- tel. Die Probe, von der das Mosaik-Bild aufzunehmen ist, wird unter Kontrolle durch das Bildaufnahmemittel in einem Raster bewegt und an vorab berechneten Positionen werden einzelne Teilbilder aufgenommen, die anschließend zu einem Mikroskopbild zusammengesetzt werden. Dadurch wird erreicht, dass sich die einzelnen Teilbilder nicht überschneiden.
Bei bekannten Verfahren zur Verarbeitung eines digitalen Mikroskopbilds wird das gesamte Mikroskopbild in den Arbeitsspeicher des Computers geladen und dann von einem Prozessor des Computers verarbeitet. Da das gesamte Mikroskopbild aber zu groß ist, um als Ganzes in den gegebenenfalls virtuellen Arbeitsspeicher des Computers geladen werden zu können, wird das Mikroskopbild teilweise wieder auf den Massenspeicher ausgelagert. Ein solches Verfahren wird Umlagerung oder Auslagerung genannt (engl, swapping bzw. paging) . Damit die Rechenoperation durchgeführt werden kann, müssen die Bildteile vorher wieder in den Arbeitsspeicher geladen werden.
Nachteilig an solchen Verfahren ist, dass das Auslagern allein vom Betriebssystem des Computers gesteuert wird, was dazu führen kann, dass Bilddaten im Arbeitsspeicher gehalten werden, die gezielt ausgelagert werden könnten. Da der Massenspeicher eine höhere Zugriffszeit als der Arbeitsspeicher aufweist und ein um- oder Auslagern zeitintensiv ist, verlangsamt das die Verarbeitung des Mikroskopbilds, was nachteilig ist.
Des Weiteren kann ein Mikroskopbild so groß sein, dass der Adressraum des Prozessors nicht ausreicht, um das Mikroskopbild in den Arbeitsspeicher zu laden, so dass das Mikroskop-
bild selbst durch Um- oder Auslagern durch das Betriebssystem nicht im Arbeitsspeicher gehalten werden kann.
Wenn das Mikroskopbild so groß ist, dass es nicht vollständig im Arbeitsspeicher gehalten werden kann, werden die Teilbilder bei bekannten Verfahren einzeln verarbeitet. Dies hat zur Folge, dass entweder die Information über die benachbarten Teilbilder nicht berücksichtigt wird, so dass Ungenauigkeiten am Rand auftreten, oder dass zur Lösung dieses Problems der Ungenauigkeiten spezielle Algorithmen erarbeitet werden müssen. Oft werden diese Ungenauigkeiten einfach akzeptiert. Es müssen dann gesonderte Algorithmen zur Lösung der Genauigkeitsprobleme am Rand gefunden werden.
Es ist daher die Aufgabe der vorliegenden Erfindung, ein Verfahren zum Betreiben eines Computers zur Verarbeitung eines digitalen Mikroskopbilds vorzuschlagen, dass das Zusammenwirken der Komponenten des Computers so verbessert, dass es eine erhöhte Geschwindigkeit beim Anwenden einer Rechenoperation auf das digitale Mikroskopbild erlaubt.
Die Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren mit den Merkmalen von Anspruch 1. Gemäß einem zweiten Aspekt löst die Erfindung das Problem durch einen Computer, der ei- nen digitalen Massenspeicher und einen digitalen Arbeitsspeicher umfasst, wobei der Computer dadurch gekennzeichnet ist, das er zum Ausführen eines erfindungsgemäßen Verfahrens eingerichtet ist . Gemäß einem dritten Aspekt löst die Erfindung die Aufgabe durch einen Datenträger, der Softwarecode um- fasst, der in einen digitalen Arbeitsspeicher eines Computers ladbar ist und ein erfindungsgemäßes Verfahren kodiert.
Vorteilhaft an einem erfindungsgemäßen Verfahren ist, dass Mikroskopbilder bearbeitbar werden, die so groß sind, dass
sie den Adressraum des Prozessors übersteigen. Für solche Mikroskopbilder ermöglicht die Erfindung überhaupt erst den Einsatz des Computers zur Bearbeitung des Mikroskopbilds. Vorteilhaft ist zudem, dass durch die Erfindung das Zusammen- wirken der Elemente des Computers so gesteuert wird, dass große Mikroskopbilder deutlich schneller verarbeitet werden können. Vorteilhaft ist auch, dass eine erhöhte Genauigkeit an den Rändern von interessierenden Gebieten des Mikroskopbilds erreichbar ist.
Ein digitales Mikroskopbild besteht aus einer Vielzahl von Pixel (Bildelementen) , die indiziert sind, das heißt, dass sie mehrere Indices aufweisen. Die Anzahl der Indices, die notwendig sind, um ein Pixel eineindeutig zu beschreiben, ist die Dimension n des Mikroskopbildes.
Die Gesamtheit aller Pixel, die in allen bis auf einen Index übereinstimmt, wird im Folgenden eine Zeile des Mikroskopbilds genannt. Bei zweidimensionalen Mikroskopbildern werden vertikal dargestellte Zeilen als Spalten bezeichnet.
Im Rahmen der folgenden Beschreibung wird unter der Größe von Mikroskopbildern und Teilbildern deren Größen in Byte verstanden. Die Größe des Mikroskopbilds übersteigt die Spei- cherkapazität des Arbeitsspeichers insbesondere dann, wenn das Mikroskopbild nur unter zumindest teilweisem Um- oder Auslagern in den Arbeitsspeicher geladen werden kann oder den Adressraum des Prozessors übersteigt.
Unter einem Arbeitsspeicher wird insbesondere ein flüchtiger digitaler Speicher mit wahlfreiem Zugriff (Random Access Memory, RAM) verstanden. Unter einem Massenspeicher werden beispielsweise nicht-flüchtige Speicher wie Nur-Lese-Speicher
(Read OnIy Memory, ROM) , Festplatten, Flash-Speicher oder magneto-optische Speicher verstanden.
Die Teilbilder sind insbesondere einfach zusammenhängende Pi- xelbereiche des digitalen Mikroskopbilds, wobei „einfach zusammenhängend" entsprechend dem Gebrauch in der Mathematik verstanden wird: „zusammenhängend" heißt, dass für je zwei Pixel des Teilbilds stets ein sie verbindender Weg ausschließlich über jeweils einander benachbarte Pixel des Teil- bilds gefunden werden kann. „Einfach zusammenhängend" bedeutet, dass das Teilbild keine „Löcher" aufweist, dass also das Teilbild insbesondere einen Rand aufweist und alle Pixel innerhalb des Rands zum Teilbild gehören.
Es ist möglich, dass die Teilbilder einander überlappen.
Teilbilder entstehen beispielsweise dann, wenn ein Objekt an verschiedenen Stellen mit einer Kamera eines Mikroskops aufgenommen wird, indem zwischen zwei Aufnahmen das Objekt relativ zur Kamera bewegt wird, zum Beispiel dadurch, dass das Objekt auf einem Scanningtisch bewegt wird. Die Positionen der Teilbilder relativ zueinander sind dann in absoluten Raum-Koordinaten bekannt. In einem alternativen Verfahren werden die Teilbilder so aufgenommen, dass sie einander nicht überlappen. In einem weiteren alternativen Verfahren werden die Teilbilder so aufgenommen, dass die Anzahl der Pixel eines Teilbilds, in denen es sich mit einem anderen Teilbild überlappt, kleiner ist als 15% der Gesamtzahl an Pixel.
Das Verfahren ist besonders geeignet, wenn die Rechenoperati- on nicht nur auf einen Teil des Mikroskopbilds, sondern auf das gesamte Mikroskopbild angewendet werden soll. In diesem Fall sind besonders viele Pixel in die Rechenoperation einzu- beziehen, so dass sich ein besonders großer Zeitvorteil bei der Bearbeitung ergibt.
Wenn es sich um ein zweidimensionales Mikroskopbild handelt, so sind die Teilbilder bevorzugt rechteckig. Derartige Teilbilder lassen sich besonders einfach verarbeiten.
Im Rahmen dieser Beschreibung soll insbesondere nur dann eine Rechenoperation vorliegen, wenn sich aufgrund der Rechenoperation ein Zahlenwert ändert. Die Identitätsoperation wird nicht als Rechenoperation betrachtet.
Das Bereitstellen des Mikroskopbilds im Massenspeicher geschieht bevorzugt dadurch, dass eine Verstelleinheit des Mikroskops, beispielsweise ein Scanningtisch, zur Aufnahme der Mikroskopbilder in einem vorgegebenen Raster bewegt wird, an jeder Rasterposition mit einer Kamera des Mikroskops ein
Teilbild einer an der Verstelleinheit angebrachten Probe aufgenommen wird und die Teilbilder im Massenspeicher des Computers bereitgestellt werden. Die von der Kamera aufgenommenen Teilbilder werden beispielsweise über eine Datenverbindung auf ein Festplattenlaufwerk des Computers geladen. Der Massenspeicher muss dem Computer jedoch nicht räumlich zugeordnet sein. Es ist auch möglich, dass das Mikroskopbild im Massenspeicher eines anderen Rechners vorhanden ist, auf den der Computer Zugriff hat.
Ein Bildausschnitt wird im Rahmen der vorliegenden Beschreibung durch eine Menge an Pixeln charakterisiert, die vorbestimmte Koordinaten aufweisen. Das heißt, dass entweder die einzelnen Indices der Pixel des Mikroskopbilds in vorbestimm- ten Intervallen liegen oder aber die Pixel innerhalb eines in absoluten Raum- bzw. Zeit-Koordinaten angegebenen Intervalls liegen. Die Bildausschnitte sind bevorzugt einfach zusammenhängende Pixelbereiche. Der Begriff „einfach zusammenhängend" ist vorstehend erläutert worden.
Wenn es sich bei dem Mikroskopbild um ein zweidimensionales Mikroskopbild handelt, kann ein Bildausschnitt beispielsweise ein Rechteck sein. Handelt es sich um ein dreidimensionales Mikroskopbild kann ein Bildausschnitt beispielsweise ein Quader sein. Rechteckige bzw. quaderförmige Bildausschnitte sind vorteilhafterweise besonders einfach bearbeitbar.
Die Bildausschnitte werden automatisch festgelegt. Auf Krite- rien bei der Auswahl von Bildausschnitten wird weiter unten eingegangen.
Beim Bestimmen aller Pixel, die in einem der Bildausschnitte und in mindestens einem der Teilbilder liegen, so dass ein gefüllter Bildausschnitt besteht, wird in dem Fall, dass ein Pixel in mehreren Teilbildern liegt, das Pixel eines Teilbilds ausgewählt. Beispielsweise wird das Pixel verwendet, das in dem Teilbild liegt, das als letztes bearbeitet wird, indem schon gefüllte Pixel im Bildausschnitt überschrieben werden. Alternativ wird aus allen Pixeln, die im Bildausschnitt und in einem der Teilbilder liegen, der Mittelwert errechnet. Der gefüllte Bildausschnitt, das heißt die Menge aller Pixel der Teilbilder, die die vorgegebenen Koordinaten des Bildausschnitts aufweisen, ist danach in dem Arbeitsspei- eher bereitgestellt.
Bevorzugt wird mindestens einer der Bildausschnitte - bevorzugt aber werden alle Bildausschnitte - maximal so groß gewählt, dass dann, wenn der gefüllte Bildausschnitt in den Ar- beitsspeicher geladen ist, ein wahlfreier Zugriff auf den Bildausschnitt im Arbeitsspeicher möglich ist. Das heißt, dass der gefüllte Bildausschnitt vollständig, d.h. ohne Um- oder Auslagern auf den Massenspeicher, in Arbeitsspeicher abgelegt werden kann. So wird eine besonders schnelle Bildbear-
beitung erreicht. Besonders bevorzugt wird der Bildausschnitt so gewählt, dass auch das Anwenden der Rechenoperation auf diesen Bildausschnitt und das Ablegen des Bildausschnittergebnisses im Arbeitsspeicher ohne ein Um- oder Auslagern auf den Massenspeicher möglich ist. So wird die Geschwindigkeit des Verfahrens weiter erhöht.
Um eine besonders gute Auslastung des Arbeitsspeichers zu erreichen, wird bevorzugt mindestens einer der Bildausschnitte - bevorzugt aber werden alle Bildausschnitte - mindestens so groß gewählt, dass der bzw. jeder Bildausschnitt mehr als 30% der bei Beginn des Verfahrens verfügbaren Speicherkapazität des Arbeitsspeichers einnimmt. Ein solcher Bildausschnitt ist beispielsweise größer als 500 Megabyte.
In einem bevorzugten Verfahren weist jeder der Bildausschnitte einen Rand mit einer Breite von mindestens einem Pixel, beispielsweise 2 oder 3 Pixel auf. Der Rand ist ein Bereich eines Bildausschnitts, der mit anderen Bildausschnitten über- läppt. In alternativen Verfahren kann der Rand auch eine
Breite von bis zu 256 Pixeln oder mehr aufweisen. Durch das Vorsehen eines Rands definierter Breite ist es möglich, Nachbarschaftsoperationen mit einer höheren Genauigkeit durchzuführen. Nachbarschaftsoperationen sind beispielsweise Faltun- gen und morphologische Operationen. Vorzugsweise ist die Ausdehnung des um den Rand verminderten Bildausschnitts wesentlich größer als der Rand selbst, beispielsweise um einen Faktor 4.
In einem alternativen Verfahren ist das Zerlegen des Mikro- skopbilds in mindestens zwei Bildausschnitte ein Partitionie- ren des Mikroskopbilds. Unter einem Partitionieren wird ein Zerlegen in disjunkte Teile verstanden, die insgesamt das gesamte Mikroskopbild ergeben. Nach dem Partitionieren ist also
jedes Pixel des Mikroskopbilds und jedes Teilbilds genau einem Bildausschnitt zugeordnet.
In manchen Fällen sind nur Teile des Mikroskopbilds, nämlich ein Gebiet oder mehrere Gebiete, für eine Auswertung relevant. Ein bevorzugtes Verfahren umfasst daher zunächst den Schritt (a) des Bereitsteilens des Mikroskopbilds im Massenspeicher. Anschließend wird in einem Schritt (a2) mindestens ein Gebiet erfasst, nämlich ein Gebiet Gi oder Gebiete Gp mit p = l, ... NG. In einem Schritt (b) erfolgt ein Zerlegen des Mikroskopbilds in mindestens zwei Bildausschnitte, die in den Arbeitspeicher ladbar sind und eine Dimension m haben, wobei m ≤ n gilt. Danach folgt in einem Schritt (c) für einen Bildausschnitt ein Bestimmen aller Pixel, die in dem Bildaus- schnitt und in mindestens einem der Teilbilder liegen, so dass ein gefüllter Bildausschnitt entsteht. Dem Bestimmen muss allerdings keine aktive Rechenoperation zugrunde liegen. Es ist ausreichend, dass nach Schritt (c) die Pixel festgestellt sind, die den gefüllten Bildausschnitt bilden.
Es folgt ein Schritt (c2) : für den gefüllten Bildausschnitt Bilden einer aus Pixel bestehenden Schnittmenge mit dem mindestens einen Gebiet. Wenn mehrere Gebiete existieren ist diese Schnittmenge die Gesamtheit aller Pixel, die sowohl in dem gefüllten Bildausschnitt, also auch in mindestens einem der Gebiete liegt.
Anschließend folgt im Schritt (d) ein Bereitstellen des gefüllten Bildausschnitts und/oder der Schnittmenge im Arbeits- Speicher. Sofern der gefüllte Bildausschnitt bzw. die
Schnittmenge bereits im Arbeitsspeicher bereitgestellt ist, ist dieser Schritt ohne weiteres Zutun abgearbeitet.
Es folgt der Schritt (e) Anwenden der Rechenoperation auf die Pixel der Schnittmenge, so dass ein Bildausschnittergebnis entsteht. Anschließend werden in einem Schritt (f) die Schritte (c) , (c2), (d) und (e) für alle Bildausschnitte wie- derholt und in einem Schritt (g) alle Bildausschnittergebnisse zu einem Gesamtergebnis zusammengefügt.
In einem alternativen Verfahren erfolgt das Erfassen des mindestens einen Gebiets in einem späteren Schritt, beispiels- weise vor Schritt (d) .
In einem weiteren alternativen Verfahren wird die Rechenoperation dann, wenn mehr als ein Gebiet vorliegt, einzeln auf die jeweiligen Schnittmengen der Gebiete mit dem Bildaus- schnitt angewendet, so dass für jeden Bildausschnitt mehr als ein Bildausschnittergebnis entsteht.
Bei einem Gebiet handelt es sich bevorzugt um einen einfach zusammenhängenden Pixelbereich des digitalen Mikroskopbilds, wobei „einfach zusammenhängend" wie vorstehend beschrieben zu verstehen ist.
Das Erfassen des mindestens einen Gebiets kann beispielsweise ein Einlesen nach einem Dialog mit dem Anwender sein. Dazu wird es dem Anwender beispielsweise durch eine graphische Benutzeroberfläche ermöglicht, aus dem Mikroskopbild ein Gebiet auszuwählen.
In einem bevorzugten Verfahren findet das Erfassen des min- destens einen Gebiets vor dem Festlegen der Bildausschnitte statt. Es ergeben sich dann statt der in Anspruch 1 genannten Schritte die folgenden Schritte: (a) Bereitstellen des Mikroskopbilds im Massenspeicher, (a2) Erfassen von mindestens einem Gebiet, (b) Zerlegen des mindestens einen Gebiets in min-
destens zwei Bildausschnitte, die in den Arbeitsspeicher ladbar sind und eine Dimension m haben, wobei m ≤ n gilt, (c) für einen Bildausschnitt Bestimmen aller Pixel, die in dem Bildausschnitt und in mindestens einem der Teilbilder liegen, so dass ein gefüllter Bildausschnitt entsteht, (d) Bereitstellen des gefüllten Bildausschnitts im Arbeitsspeicher bzw. Laden des gefüllten Bildausschnitts in den Arbeitsspeicher, (e) Anwenden der Rechenoperation auf die im gefüllten Bildausschnitt liegenden Pixel, so dass ein Bildausschnittergeb- nis entsteht, (f) Wiederholen der Schritte (c) , (d) und (e) für alle Bildausschnitte und (g) Zusammenfügen aller Bildausschnittergebnisse zu einem Gesamtergebnis für das Gebiet. Vorteilhaft an diesem Verfahren ist, dass nur diejenigen Pixel zur Anwendung der Rechenoperation in den Arbeitsspeicher geladen werden müssen, die in dem interessierenden Gebiet liegen, was die Geschwindigkeit des Verfahrens erhöht. Bei Mikroskopbildern, die den Adressraum des Prozessors des Computers übersteigen können zudem Gebiete des Mikroskopbilds bearbeitet werden, sofern die Gebiete hinreichend klein sind, um vom Prozessor adressiert zu werden.
Bevorzugt ist n = 3, das heißt, dass sich bei dem digitalen Mikroskopbild um ein dreidimensionales Mikroskopbild handelt. Ein Beispiel für derartige dreidimensionale Mikroskopbilder sind Schichtaufnahmen, die mit einem Mikroskop durchgeführt worden sind. Ein weiteres Beispiel sind Zeitfolgen von Mikroskopbildern, wobei die dritte Dimension die Zeit ist. In einem alternativen Verfahren handelt es sich um zweidimensionale Mikroskopbilder, so dass n = 2 ist.
Besonders einfach sind Bildausschnitte zu verarbeiten, die rechteckig sind. Rechteckig heißt dabei quaderförmig bezüglich eines n-dimensionalen Quaders . Für n = 3 heißt dies quaderförmig im engeren Sinne, für n = 2 heißt das rechteckig.
In einem bevorzugten Verfahren ist mindestens einer der Bildausschnitte eine ganze Zeile des Mikroskopbilds.
Bei der anzuwendenden Rechenoperation kann es sich um eine Punktoperation, eine Nachbarschaftsoperation, eine Bildtransformation und/oder eine Fouriertransformation handeln. Insbesondere kann es sich bei der Rechenoperation um die Berechnung eines Messwerts handeln. Messwerte sind beispielsweise die Summe der Grauwerte, die Summe der Quadrate der Grauwer- te, das Minimum und das Maximum der Grauwerte, die Textur und die Fläche über dem Gebiet .
Vorteilhaft ist dabei, wenn jedem Ergebnis der Anwendung der Rechenoperation auf die Schnittmenge des Bildausschnitts mit dem Gebiet ein Identifikationsparameter des Gebiets zu zugewiesen wird. Das ermöglicht es, das Gesamtergebnis besonders einfach zu berechnen.
Im folgenden wird das Verfahren anhand der beigefügten Zeich- nungen erläutert. Dabei zeigt
Figur 1 eine schematische Darstellung eines Computers,
Figur 2 eine schematische Darstellung eines zweidimensiona- len Mikroskopbilds,
Figur 3a eine schematische Darstellung eines zweidimensionalen Mikroskopbilds, das vier Teilbilder aufweist und in neun Bildausschnitte zerlegt ist,
Figur 3b einen gefüllten Bildausschnitt, der aus dem ersten Bildausschnitt des Mikroskopbilds nach Figur 3a entsteht,
Figur 3c den gefüllten Bildausschnitt, der aus dem zweiten Bildausschnitt des Mikroskopbilds nach Figur 3a entsteht, und
Figur 4 eine weitere schematische Darstellung eines "Mikroskopbilds, das aus vier Teilbildern besteht und in fünf Bildausschnitte zerlegt ist, die ganze Zeilen des Mikroskopbilds umfassen, und es zeigen die
Figuren 5 und 6 zeigen Flussdiagrairane von erfindungsgemäßen Verfahren.
Figur 1 zeigt schematisch einen Computer 10, der neben einem Bildschirm 12 einen Prozessor 14 aufweist, der mit einem Ar- beitsspeicher 16 und einem Massenspeicher 18 verbunden ist. Der Arbeitsspeicher 16 weist eine maximale Speicherkapazität auf. Beim Betrieb des Computers 10 wird ein Teil der maximalen Speicherkapazität beispielsweise für Prozesse eines Betriebsystems des Computers 10 benötigt, so dass beim Betrieb des Computers 10 der Arbeitsspeicher 16 eine verfügbare Speicherkapazität aufweist, die kleiner ist als dessen maximale Speicherkapazität. Die verfügbare Speicherkapazität des Arbeitsspeichers 16 steht für die Ausführung eines erfindungsgemäßen Verfahrens zur Verfügung.
Der Arbeitsspeicher 18 weist eine deutlich höhere, beispielsweise die fünfzigfache, Speicherkapazität auf als der Arbeitsspeicher. Über ein nicht eingezeichnetes Netzwerkkabel kann der Computer 10 mit einem Netzwerk verbunden werden, um auf Massenspeicher anderer Computer zugreifen zu können. Über eine Datenverbindung 15 kann der Computer 10 mit einer Kamera 17 eines Mikroskops 19 verbunden werden. Das Mikroskop und der Computer 10 bilden dann ein Mikroskopiersystem.
Zur Aufnahme eines Mikroskopbilds sendet der Computer 10 über ein Datenkabel 21 einen Steuerimpuls an einen Schrittmotor 22, der daraufhin eine Verstelleinheit 23 bewegt. An der Verstelleinheit 23 ist eine Probe 24 angebracht, die sich auf- grund dessen relativ zu der Kamera 17 bewegt. Ist eine voreingestellte Position erreicht, so sendet der Computer 10 einen Steuerimpuls an die Kamera 17, die daraufhin ein Teilbild der Probe 24 aufnimmt. Anschließend wird eine weitere voreingestellte Position angefahren und ein weiteres Teilbild auf- genommen. Diese Prozedur wird so lange durchgeführt bis eine vorgegebene Anzahl an Teilbildern mit vorgegebenen Koordinaten relativ zueinander oder relativ zu der Probe 24 angefahren und jeweils Teilbilder aufgenommen worden sind. Die aufgenommenen Teilbilder werden über das Datenkabel 21 an den Computer übertragen und dort auf dem Massenspeicher 18 gespeichert .
Figur 2 zeigt schematisch Pixel Pi,j eines Mikroskopbilds 20. Die Pixel sind in a Zeilen, die horizontal verlaufen, und b Zeilen, die vertikal verlaufen und daher auch als Spalten bezeichnet werden, angeordnet. Jedes Pixel Pi,j kann durch die Angabe von einem ersten Index i (Zeilennummer) und einem zweiten Index j (Spaltennummer) eindeutig festgelegt werden. Das Mikroskopbild 20 hat daher die Dimension n=2.
Figur 3a zeigt schematisch ein Mikroskopbild 20, das aus vier Teilbildern TBi, mit 1=1, 2, 3, 4 besteht, also aus den vier Teilbildern TBi, TB2, TB3 und TB4, die mit durchgezogenen Be- randungen gezeichnet sind. Auch in Figur 3a kann jedes Pixel Pi,j durch Angabe von Zeile und Spalte, das heißt erstem Index i und zweitem Index j, eindeutig festgelegt werden. Das Mikroskopbild 20 weist eine Größe auf, die die verfügbare Speicherkapazität des Arbeitsspeichers 16 übersteigt.
Zum Durchführen des erfindungsgemäßen Verfahrens wird das Mikroskopbild 20 zunächst im Massenspeicher 18 bereitgestellt. Im vorliegenden Fall geschieht das dadurch, dass die Teilbilder des Mikroskopbilds 20 durch die Kamera 17 des Mik- roskops 19 aufgenommen und über die Datenverbindung 15 auf ein Festplattenlaufwerk als Massenspeicher 18 geladen werden.
Anschließend wird das Mikroskopbild in neun Bildausschnitte BAi, BA2, BA3, ... BA9 zerlegt, deren Grenzen in Figur 3a ge- strichelt gezeichnet sind. Die Bildausschnitte BAk sind dabei so gewählt, dass die gewünschte Rechenoperation durchführbar ist. Soll beispielsweise eine zeilenbasierte Rechenoperation auf dem Mikroskopbild durchgeführt werden, so werden die Bildausschnitte so gewählt, dass sie ganze Zeilen umfassen, z.B. eine Zeile.
Die in Figur 3a eingezeichneten Bildausschnitte BAk sind dis- junkt und die Vereinigung aller Bildausschnitte BA* umfasst alle Pixel des Mikroskopbilds 20, so dass es sich um eine Partitionierung des Mikroskopbilds 20 durch die Bildausschnitte BAk handelt .
Es werden nun zunächst alle Pixel bestimmt, die in einem der Bildausschnitte, beispielsweise im ersten Bildausschnitt BAi, und in mindestens einem der Teilbilder TBi bis TB4 liegen. Im in Figur 3a gezeigten Beispiel existieren Pixel aus dem ersten Teilbild TBi und aus dem zweiten Teilbild TB2, die im Bildausschnitt BAx liegen. Es liegt hingegen kein Pixel aus den Teilbildern TB3 und TB4 im Bildausschnitt BAi. Die Pixel, die im Bildausschnitt BAi und in einem der Teilbilder liegen, sind schematisch in Figur 3b gezeigt. Diese Pixel bilden einen ersten gefüllten Bildausschnitt und werden in den Arbeitsspeicher 16 geladen. Die in Figur 3a schraffiert eingezeichneten Pixel liegen sowohl im ersten Teilbild TBi, als
auch im zweiten Teilbild TB2- Es wird jeweils eines der Pixel ausgewählt, im vorliegenden Fall ist es das Pixel des ersten Teilbilds TBi. Der gefüllte Bildausschnitt umfasst daher nicht alle Pixel des zweiten Teilbilds TB2, obwohl das zweite Teilbild TB2 vom ersten Bildausschnitt BA1 umschlossen ist.
Auf die im ersten gefüllten Bildausschnitt BAi liegenden Pixel wird die Rechenoperation angewandt, so dass ein erstes Bildausschnittergebnis entsteht. Anschließend wird der Schritt des Bestimmens aller Pixel, die in einem der Bildausschnitte und in mindestens einem der Teilbilder liegen, für einen nächsten Bildausschnitt wiederholt, beispielsweise für den zweiten Bildausschnitt BA2. Die Pixel, die in dem Bildausschnitt BA2 und in mindestens einem der Teilbilder liegen, sind in Figur 3c gezeigt und bilden einen zweiten gefüllten Bildausschnitt . Dieser zweite gefüllte Bildausschnitt wird wiederum im Arbeitsspeicher 16 bereitgestellt. Anschließend wird die Rechenoperation auf die im zweiten gefüllten Bildausschnitt liegenden Pixel angewandt, so dass ein zweites Bildausschnittergebnis entsteht.
Diese Schritte werden für alle verbleibenden Bildausschnitte BA3 bis BAg wiederholt und die jeweiligen Bildausschnittergebnisse werden anschließend zu einem Gesamtergebnis für das gesamte Mikroskopbild 20 zusammengefügt.
Es ist anzumerken, dass es kein Pixel Pi,j gibt, das in dem Bildausschnitt BA7 und in einem der Teilbilder liegt. Es e- xistiert daher kein gefüllter Bildausschnitt für den Bildaus- schnitt BA7 und bei der Anwendung der Rechenoperation auf diese leere Pixelmenge entsteht kein Ergebnis. Das Gesamt¬ ergebnis wird also nicht beeinflusst.
Figur 4 zeigt das Mikroskopbild 20, bei dem Bildausschnitte BAi bis BA5 so gewählt sind, dass sie ganze Zeilen des Mikroskopbilds umfassen. Das Verfahren wird auch bei den so gewählten Bildausschnitten wie oben beschrieben durchgeführt. Die in Figur 4 gezeigte Zerlegung wird verwendet, wenn eine zeilenbasierte Rechenoperation auf das Mikroskopbild 20 angewendet werden soll.
Figur 5 zeigt ein Flussdiagramm eines erfindungsgemäßen Ver- fahrens, wie es oben im Zusammenhang mit den Figuren 3a bis 3c beschrieben wurde. Zunächst wird das Mikroskopbild, das aus NTB Teilbildern besteht, im Massenspeicher bereitgestellt. Anschließend wird das Mikroskopbild in NBA Bildausschnitte zerlegt bzw. partitioniert . In einer inneren Schlei- fe werden für einen festen Bildausschnitt BAk die Schnittmengen mit dem Teilbild TBi gebildet. Es werden alle 1=1, 2, ... NTB durchlaufen, das heißt, dass die Schnittmengen des Bildausschnitts BAk mit allen Teilbildern TBi berechnet werden.
Sind alle Teilbilder TBi durchlaufen, so wird die Vereinigungsmenge aller dieser Schnittmengen gebildet. In dieser Vereinigungsmenge sind alle Pixel enthalten, die sowohl im Bildausschnitt BAk, als auch in einem der Teilbilder TBi enthalten sind. Ist ein Pixel in mehreren Teilbildern vorhanden, so wird lediglich das Pixel eines Teilbilds verwendet. Alternativ wird aus den mehrfach vorhandenen Pixel ein Mittelwert errechnet. Anschließend wird die Rechenoperation auf diese Vereinigungsmenge angewendet, so das ein Bildausschnittergebnis Eκ entsteht.
In einer äußeren Schleife werden alle Bildausschnitte BAk durchlaufen. Der Index k läuft dabei von 1 bis NBA. Sind alle Bildausschnitte BAk durchlaufen, so werden die einzelnen
Bildausschnittergebnisse Ek zu einem Gesamtergebnis E für das Bild zusammengefügt.
Ein Flussdiagramm eines weiteren erfindungsgemäßen Verfahrens ist in Figur 6 gezeigt. In einem ersten Schritt (a) wird das Mikroskopbild 20, das aus NTB Teilbildern besteht, im Massenspeicher bereitgestellt. In einem weiteren Schritt (a2) wird mindestens ein Gebiet Gp erfasst. Das geschieht beispielsweise dadurch, dass von einem Benutzer des Computers ein Gebiet über eine graphische Benutzerschnittstelle eingegeben wird, zum Beispiel mittels einer Maus. Insgesamt werden NG Gebiete erfasst .
In einem nachfolgenden Schritt (b) wird das Mikroskopbild 20 in NBA Bildausschnitte BAk zerlegt oder partitioniert . In einer ersten inneren Schleife wird für einen festen Bildausschnitt BAk, beispielsweise den ersten Bildausschnitt BAi, die Schnittmenge des 1-ten Teilbilds TBi mit diesem Bildaus- schnitt BAK gebildet. Nachdem diese innere Schleife durchlaufen ist, werden in einem nicht eingezeichneten Schritt doppelt vorhandene Pixel entfernt, wie es oben für Figur 5 beschrieben ist. Es wird so die Schnittmenge des k-ten Bildausschnitts BAk mit allen Teilbildern erhalten, das heißt die Gesamtheit aller Pixel, die sowohl im k-ten Bildausschnitt, als auch in mindestens einem der Teilbilder liegt. Diese Schnittmenge ist der gefüllte Bildausschnitt . Für den ersten Bildausschnitt BAi ist der gefüllte Bildausschnitt schematisch in Figur 3b gezeigt.
In einer nachfolgenden inneren Schleife werden für den gefüllten k-ten Bildausschnitt BAk, hier also für BAi, jeweils die Schnittmengen mit den Gebieten Gp gebildet und auf die Schnittmengen wird die Rechenoperation angewendet! In Figur
3b sind schematisch zwei Gebiete Gi und G2 eingezeichnet. Die Pixel in den beiden Schnittmengen von Gi und G2 mit dem gefüllten Bildausschnitt des Bildausschnitts BAi sind schraffiert eingezeichnet.
Auf diese schraffiert eingezeichneten Pixel wird die Rechenoperation angewendet. Es entsteht ein Schnittmengenergebnis Ek,p . Der Index p für das Gebiet fungiert dabei als Identifikationsparameter. In einem nachfolgenden Schritt werden die Schnittmengenergebnisse Ek,p zu einem Bildausschnittergebnis Ek zusammengefügt. Die Bildausschnittergebnisse Ek werden danach zu einem Gesamtergebnis für das Bild zusammen- gefasst. Alternativ werden die Schnittmengenergebnisse Ek(P zu Gebietsergebnissen Ep zusammengefasst .