DE112019001959T5 - Segmentieren unregelmässiger formen in bildern unter verwendung von tiefem bereichswachstum - Google Patents
Segmentieren unregelmässiger formen in bildern unter verwendung von tiefem bereichswachstum Download PDFInfo
- Publication number
- DE112019001959T5 DE112019001959T5 DE112019001959.7T DE112019001959T DE112019001959T5 DE 112019001959 T5 DE112019001959 T5 DE 112019001959T5 DE 112019001959 T DE112019001959 T DE 112019001959T DE 112019001959 T5 DE112019001959 T5 DE 112019001959T5
- Authority
- DE
- Germany
- Prior art keywords
- node
- image
- value
- nodes
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000001788 irregular Effects 0.000 title description 8
- 238000013528 artificial neural network Methods 0.000 claims abstract description 64
- 230000015654 memory Effects 0.000 claims abstract description 20
- 238000000034 method Methods 0.000 claims description 50
- 230000006870 function Effects 0.000 claims description 30
- 230000009467 reduction Effects 0.000 claims description 4
- 239000010410 layer Substances 0.000 description 54
- 238000013527 convolutional neural network Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 5
- 206010028980 Neoplasm Diseases 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 210000004072 lung Anatomy 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 230000003902 lesion Effects 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
Abstract
Description
- GEBIET
- Hierin beschriebene Ausführungsformen beziehen sich auf ein Segmentieren von Bildern wie biomedizinischen Bildern und insbesondere auf ein Segmentieren von Bildern unter Verwendung eines einem neuronalen Netzwerks, das die Datenweitergabe zeitlich und räumlich gattersteuert (gating data propagation).
- KURZDARSTELLUNG
- Hierin beschriebene Ausführungsformen beziehen sich auf eine neue Art von neuronaler Netzwerkeinheit, die Grundgedanken kombiniert, die in rekurrenten neuronalen Netzwerken (RNN) und neuronalen Faltungsetzwerken (convolutional neural networks, CNNs) verwendet werden. Ein RNN empfängt eine Eingabefolge und liest und verarbeitet jeweils ein Element der Folge. Während das RNN jedes Element in der Folge verarbeitet, ändert das RNN sein Wissen über die Folge, die im internen Zustand des RNN gespeichert ist. Ein RNN verwendet den internen Zustand ganz oder teilweise, um entweder eine zweite Folge auszugeben oder eine einzelne Vorhersage zu machen, nachdem es die gesamte Eingabefolge gelesen hat. Ein Beispiel eines RNN ist ein neuronales Netzwerk mit langem Kurzzeitgedächtnis (long short-term memory, LSTM), das eine oder mehrere LSTM-Zellen enthält. Jede LSTM-Zelle speichert vorherige Zustände für die Zelle, die anderen Komponenten des neuronalen LSTM-Netzwerks bereitgestellt werden können. Jede LSTM-Zelle enthält ein Eingabegatter, ein Vergessensgatter und ein Ausgabegatter. Das LSTM wurde eingeführt, um ein Problem beim RNN-Training im Hinblick auf verschwindende Gradienten zu lösen.
- Ein CNN wendet Filter (Kernel) auf eine Eingabe (zum Beispiel ein Bild) an, um eine Vorhersage über die Eingabe zu machen. In einem Beispiel besteht die Vorhersage darin, zu welchem Satz von Kategorien das Bild gehört. Filter entsprechen Merkmalen, die im Eingabebild gefunden werden können. Wenn zum Beispiel ein Bild in ein CNN eingegeben wird, werden die Filter auf Blöcke von benachbarten Pixeln in dem Eingabebild angewendet, um ein Zwischenbild zu erzeugen, das anzeigt, wie stark jedes Merkmal an jeder Position in dem Bild dargestellt ist. Der Inhalt eines Merkmals wird durch die Gewichtungen des dem Merkmal zugehörigen Filters angezeigt. Die Gewichtungen multiplizieren die in jedem Block benachbarter Pixel enthaltenen Pixel. Wenn es sich bei der Eingabe in das CNN zum Beispiel um eine handgeschriebene Ziffer handelt, klassifiziert das CNN die handgeschriebene Ziffer als einer von mehreren Kategorien zugehörig (in diesem Fall sind die Kategorien die Zahlen 1 bis 9). Die Klassifikation der handgeschriebenen Ziffer durch das CNN beruht auf den Merkmalen des Bildes, die das CNN als der Ziffer zugehörig ermittelt hat, und darauf, wie stark diese Merkmale darauf hinweisen, dass die handgeschriebene Ziffer eine der Zahlen 1 bis 9 ist.
- Hierin beschriebene Ausführungsformen beziehen sich auf ein Segmentieren von biomedizinischen Bildern. Beim Segmentieren von biomedizinischen Bildern werden Grenzen von Objekten in Bildern, insbesondere in medizinischen Bildern, identifiziert. Zuvor wurde zum Identifizieren von Objekten in Bildern Bereichswachstum verwendet. Beim Bereichswachstum wird ein Startpixel (seed pixel) an einer beliebigen Stelle in einem Objekt von Interesse platziert. Sobald es im Bild platziert ist, wird das Startpixel wiederholt auf benachbarte Pixel mit ähnlicher Intensität und Helligkeit ausgebreitet. Das Ausbreiten des Pixels endet, wenn eine Grenze des Objekts erreicht wird. Beim Bereichswachstum kann eine Grenze durch ein Abfallen unter einen Schwellenwert für Intensität oder Helligkeit definiert werden.
- Ein Problem beim Bereichswachstum besteht darin, dass selbst eine minimale Verbindung mit einem benachbarten hellen Pixel in einem medizinischen Bild dazu führen kann, dass sich der Bereich außerhalb des Objekts von Interesse ausbreitet. Wenn wie zum Beispiel in
1 gezeigt zwei helle Gewebebereiche (ein Gewebebereich befindet sich in der Lunge und ein Gewebebereich befindet sich außerhalb der Lunge) durch ein kleines, helles Gewebefragment miteinander verbunden sind, stellt das Bereichswachstum die beiden hellen Gewebebereiche fälschlicherweise als zur gleichen Masse oder zum gleichen Objekt gehörend dar. Auf Bereichswachstum wird daher oft zugunsten entwickelterer Verfahren wie Ebeneneinstellung, Conditional Random Fields (CRFs), aktive Konturen und Graphenschnitte verzichtet. - CNNs schließen aus, dass die Nachbarschaft von Pixeln Vorrang hat. CNNs identifizieren vielmehr Objekte, die eine Regelmäßigkeit haben. Bei einem Objekt mit Regelmäßigkeit kann das CNN so trainiert werden, dass es das Objekt als einen Objekttyp klassifiziert. CNNs sind jedoch unter Umständen nicht in der Lage, Formen genau zu erkennen und zu segmentieren, die wie Tumormassen, Läsionen und Ähnliches nicht regelmäßig sind. CNNs können daher oft die Grenzen von unregelmäßigen Formen in medizinischen Bildern nicht präzise ermitteln, z.B. Formen, die sich in Geometrie, Intensität und Ähnlichem unterscheiden.
- Hierin beschriebene Ausführungsformen stellen daher eine technische Lösung für die vorstehend beschriebenen Probleme als Reaktion auf vorherige Lösungen bereit, um die Grenzen von unregelmäßig geformten Objekten von Interesse zu identifizieren. Hierin beschriebene Ausführungsformen enthalten insbesondere die räumliche Verbindung eines CNN mit zeitlicher Gattersteuerung, wie dies in RNN verwendet wird, um ein intelligenteres Verfahren zum Segmentieren unregelmäßiger Strukturen in Bildern bereitzustellen. Hierin beschriebene Ausführungsformen stellen insbesondere eine neue Art von Einheit bereit, um Pixel in einem Bild auf Grundlage der vorherigen internen Zustände und der aktuellen Werte der Knoten zu klassifizieren, die Pixel neben dem klassifizierten Pixel darstellen. Diese neue Art von Einheit wird hier als gattergesteuerte (gated) räumlich-zeitliche Einheit bezeichnet, bei der es sich um eine gattergesteuerte rekurrente Einheit (gated recurrent unit) mit räumlicher Bewusstheit handelt, die normalerweise einem CNN zugehörig ist. Bei jedem Zeitschritt zum Beispiel entscheidet jeder Knoten, ob er seinen internen Zustand mit dem Wert seines vorherigen internen Zustands oder dem internen Zustand eines seiner Nachbarknoten aktualisiert.
- Die hierin beschriebenen Verfahren und Systeme stellen somit ein neuronales Netzwerk bereit, das Informationen zeitlich und räumlich weitergibt. Im Vergleich zum bloßen zeitlichen Gattersteuern des Informationsflusses ermöglicht das zeitliche und räumliche Gattersteuern einer rekurrenten Einheit, Entscheidungen über einen internen Zustand eines Pixels auf Grundlage der internen Zustände und Werte der umgebenden Pixel in dem Bild zu treffen. In einigen Ausführungsformen kann das neuronale Netzwerk darüber hinaus Informationen zwischen Bildauflösungen sowohl zeitlich als auch räumlich weitergeben.
- Wie nachstehend ausführlicher beschrieben, verwenden hierin beschriebene Ausführungsformen maschinelles Lernen, um einen Algorithmus zu lernen. Insbesondere führt das Netzwerk Aktualisierungen durch, bis die den internen Zuständen zugehörigen Werte konvergieren. Ein Netzwerk mit einem einzigen Durchgang dagegen lernt eine Funktion. Wie vorstehend beschrieben, stellen Ausführungsformen hierin eine gattergesteuerte räumlich-zeitliche Einheit bereit, die steuert, wie viele Informationen sich von einem Pixel zum anderen ausbreiten. Wie nachstehend ausführlicher beschrieben, wird in einigen Ausführungsformen ein Bild in das System eingegeben, und das System erzeugt eine Bildpyramide mit einer Mehrzahl von Schichten. Jede Schicht der Bildpyramide enthält eine andere Anzahl von Variablen, die das Eingabebild darstellen. Die Basis der Pyramide enthält eine große Anzahl von Werten, die das Bild darstellen (mit anderen Worten, die Basisschicht stellt das Bild mit hoher Auflösung dar). In jeder aufeinanderfolgenden Ebene der Pyramide werden immer weniger Werte verwendet, um das Bild darzustellen (mit anderen Worten, jede aufeinanderfolgende Schicht stellt das Bild mit einer geringeren Auflösung als die unmittelbar vorhergehende Schicht dar). Die Bildpyramide ermöglicht es, dass Informationen von einem Teil des Bildes zu einer geringeren Auflösung weitergegeben und anschließend zurück zu einer höheren Auflösung in einem anderen Teil des Bildes weitergegeben werden, und zwar mit weniger Iterationen wie wenn das System keine Bildpyramide verwenden würde. Dies ist vorteilhaft, wenn zum Beispiel ein Bild mit Tausenden von Pixeln in das System eingegeben wird. Eine solche Eingabe könnte es erforderlich machen, dass das System Tausende von Iterationen durchführt, bevor es eine Vorhersage erzeugt. Das System führt Faltungen unter Verwendung eines internen Zustands des Systems von einem vorherigen Zeitschritt und den Darstellungen des Bildes in der Bildpyramide durch. Die Ergebnisse der Faltungsschichten werden von der gattergesteuerten räumlich-zeitlichen Einheit verwendet, um Werte zu ermitteln, die in einen aktuellen internen Zustand eines Knotens im Netzwerk aufgenommen werden. Iterationen werden in der gattergesteuerten räumlich-zeitlichen Einheit durchgeführt, bis die internen Zustände der Knoten im Netzwerk konvergieren. Wenn die internen Zustände der Knoten im System konvergieren, wird eine Wahrscheinlichkeit berechnet, dass jedes Pixel zu einem Objekt von Interesse gehört. Hierin beschriebene Ausführungsformen stellen insbesondere ein Netzwerk zum Segmentieren unregelmäßiger Strukturen in medizinischen Bildern bereit, das intelligent in Bezug auf den Datenfluss über das Gitter ist und andere Faktoren wie Homogenität lernt, um zu ermitteln, wie das Pixel ausgebreitet werden soll. Diese Ausführungsformen können jedoch in anderen Bereichen als dem Segmentieren von medizinischer Bildgebung angewendet werden, darunter zum Beispiel bei der Wettervorhersage, Öl- und Gasmodellierung und Ähnlichem.
- Eine Ausführungsform stellt beispielsweise ein Verfahren zum Identifizieren eines Objekts von Interesse in einem medizinischen Bild bereit. Das Verfahren umfasst ein Initialisieren von internen Zuständen von Knoten in einem räumlichen Gitter. Jeder Knoten in dem räumlichen Gitter entspricht einem Pixel des medizinischen Bildes und ist mit mindestens einem Knoten verbunden, der ein Nachbarpixel des medizinischen Bildes darstellt. Das Verfahren umfasst ferner ein iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks. Bei jeder Iteration aktualisiert jeder Knoten seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration und einem neuen Wert des Knotens besteht. Das Verfahren enthält ferner ein Identifizieren von Objekten von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters.
- Eine andere Ausführungsform stellt ferner ein Verfahren zum Identifizieren eines Objekts von Interesse in einem medizinischen Bild bereit. Das von dieser Ausführungsform bereitgestellte Verfahren enthält jedoch ein Erzeugen einer Bildpyramide für das medizinische Bild. Die erzeugte Bildpyramide enthält eine Mehrzahl von Schichten, wobei jede Schicht eine Mehrzahl von Werten enthält und wobei jeder Wert einen Block von einem oder mehreren Pixeln in dem medizinischen Bild darstellt. Jede aufeinanderfolgende Schicht in der Bildpyramide enthält weniger Werte als die unmittelbar vorhergehende Schicht. Das Verfahren umfasst ferner für jede Schicht der Bildpyramide ein Initialisieren interner Zustände von Knoten eines räumlichen Gitters. Jeder Knoten in dem räumlichen Gitter stellt einen Block von einem oder mehreren Pixeln in dem medizinischen Bild dar und ist mit mindestens einem Knoten verbunden, der einen Nachbarblock von einem oder mehreren Pixeln in dem medizinischen Bild darstellt. Das Verfahren umfasst ferner für jede Schicht der Bildpyramide ein iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks. Bei jeder Iteration aktualisiert jeder Knoten seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration und einem neuen Wert des Knotens besteht. Das Verfahren enthält ferner ein Identifizieren des Objekts von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen.
- Eine Ausführungsform stellt ein System zum Ermitteln eines Bereichs von Interesse in einem Bild bereit. Das System umfasst einen Speicher und einen elektronischen Prozessor. Der in dem System enthaltene elektronische Prozessor ist mit dem Speicher verbunden und so konfiguriert, dass er interne Zustände von Knoten eines räumlichen Gitters initialisiert. Jeder Knoten des räumlichen Gitters entspricht einem Pixel des Bildes und ist mit mindestens einem Knoten verbunden, der ein Nachbarpixel des Bildes darstellt. Der elektronische Prozessor ist des Weiteren so konfiguriert, dass er die internen Zustände jedes Knotens in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks iterativ aktualisiert und den Bereich von Interesse in dem Bild auf Grundlage der internen Zustände der Knoten bei einer Konvergenz des räumlichen Gitters identifiziert.
- Eine weitere Ausführungsform stellt darüber hinaus ein System zum Ermitteln eines Bereichs von Interesse in einem Bild bereit. Ähnlich wie das System der vorstehend beschriebenen Ausführungsform enthält das in dieser Ausführungsform beschriebene System ebenfalls einen Speicher und einen elektronischen Prozessor, der mit dem Speicher verbunden ist. Der elektronische Speicher des in dieser Ausführungsform bereitgestellten Systems ist jedoch so konfiguriert, dass er eine Bildpyramide für das Bild erzeugt. Die Bildpyramide enthält eine Mehrzahl von Schichten. Für jede Schicht der Bildpyramide ist der elektronische Prozessor so konfiguriert, dass er interne Zustände von Knoten eines räumlichen Gitters initialisiert und die internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks iterativ aktualisiert. Jeder Knoten in dem räumlichen Gitter stellt einen Block von einem oder mehreren Pixeln in dem Bild dar und ist mit mindestens einem Knoten verbunden, der einen Nachbarblock von einem oder mehreren Pixeln in dem Bild darstellt. Der elektronische Prozessor ist ferner so konfiguriert, dass er den Bereich von Interesse in dem Bild auf Grundlage der internen Zustände der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten identifiziert, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen.
- Eine Ausführungsform stellt ein nichtflüchtiges, durch einen Computer lesbares Medium bereit, das Anweisungen enthält, die von einem elektronischen Prozessor ausgeführt werden können, um einen Satz von Funktionen durchzuführen. Der Satz von Funktionen umfasst ein Initialisieren von internen Zuständen von Knoten in einem räumlichen Gitter. Jeder Knoten stellt ein Pixel eines Bildes dar und ist mit mindestens einem Nachbarpixel des Bildes verbunden. Der Satz von Funktionen umfasst ferner ein iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks. Bei jeder Iteration aktualisiert jeder Knoten seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht. Der Satz von Funktionen enthält ferner ein Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters.
- Eine andere Ausführungsform stellt ferner ein nichtflüchtiges, durch einen Computer lesbares Medium bereit, das Anweisungen enthält, die von einem elektronischen Prozessor ausgeführt werden können, um einen Satz von Funktionen durchzuführen. Im Gegensatz zu dem Satz von Funktionen in der vorstehend beschriebenen Ausführungsform enthält der Satz von Funktionen, die von dem elektronischen Prozessor dieser Ausführungsform durchgeführt werden, ein Erzeugen einer Bildpyramide für ein Bild. Die erzeugte Bildpyramide enthält eine Mehrzahl von Schichten, wobei jede Schicht eine Mehrzahl von Werten enthält und wobei jeder Wert einen Block von einem oder mehreren Pixeln in dem Bild darstellt. Jede aufeinanderfolgende Schicht in der Bildpyramide enthält weniger Werte als eine unmittelbar vorhergehende Schicht. Der Satz von Funktionen umfasst ferner für jede Schicht der Bildpyramide ein Initialisieren interner Zustände von Knoten eines räumlichen Gitters. Jeder Knoten der Bildpyramide stellt einen Block von einem oder mehreren Pixeln in dem Bild dar und ist mit mindestens einem Knoten verbunden, der einen Nachbarblock von einem oder mehreren Pixeln im Bild darstellt. Der Satz von Funktionen umfasst ferner für jede Schicht der Bildpyramide ein iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks. Bei jeder Iteration aktualisiert jeder Knoten seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht. Der Satz Funktionen enthält ferner ein Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen.
- Figurenliste
-
-
1 veranschaulicht ein medizinisches Bild, bei dem Bereichswachstum angewendet wurde, um ein Objekt von Interesse zu identifizieren. -
2 veranschaulicht ein System zum Ermitteln eines Bereichs von Interesse in einem Bild. -
3 veranschaulicht ein in dem System von2 enthaltenes neuronales Netzwerk. -
4 veranschaulicht ein Beispiel für eine Eingabe in einen Knoten in einer gattergesteuerten räumlich-zeitlichen Einheit. -
5 veranschaulicht ein Beispiel für ein medizinisches Bild, das das neuronale Netzwerk von4 als Eingabe empfängt. -
6 veranschaulicht ein Beispiel für einen Bereich von Interesse, den das neuronale Netzwerk von4 in dem medizinischen Bild von5 erkennt. - AUSFÜHRLICHE BESCHREIBUNG
- Eine oder mehrere Ausführungsformen werden in der nachstehenden Beschreibung und den beigefügten Zeichnungen beschrieben und veranschaulicht. Diese Ausführungsformen sind nicht auf die hierin bereitgestellten, spezifischen Einzelheiten beschränkt und können auf vielfältige Weise geändert werden. Darüber hinaus kann es noch andere Ausführungsformen geben, die hierin nicht beschrieben sind. Die hierin als von einer Komponente durchgeführt beschriebene Funktionalität kann ferner von mehreren Komponenten auf verteilte Art und Weise durchgeführt werden. Ebenso kann eine von mehreren Komponenten durchgeführte Funktionalität zusammengefasst und von einer einzigen Komponente durchgeführt werden. In ähnlicher Weise kann eine Komponente, die als eine bestimmte Funktionalität durchführend beschrieben wird, auch eine zusätzliche, hierin nicht beschriebene Funktionalität durchführen. Darüber hinaus ist eine Einheit oder Struktur, die auf eine bestimmte Weise „konfiguriert“ ist, mindestens auf diese Weise konfiguriert, kann aber auch auf eine Weise konfiguriert sein, die nicht aufgeführt ist. Des Weiteren können einige hierin beschriebene Ausführungsformen einen oder mehrere elektronische Prozessoren enthalten, die so konfiguriert sind, dass sie die beschriebene Funktionalität durch Ausführen von Anweisungen durchführen, die auf einem nichtflüchtigen, durch einen Computer lesbaren Medium gespeichert sind. In ähnlicher Weise können hierin beschriebene Ausführungsformen als nichtflüchtiges, durch einen Computer lesbares Medium implementiert sein, das Anweisungen speichert, die von einem oder mehreren elektronischen Prozessoren ausgeführt werden können, um die beschriebene Funktionalität durchzuführen. Wie in der vorliegenden Anmeldung verwendet, weist ein „nichtflüchtiges, durch einen Computer lesbares Medium“ alle durch einen Computer lesbare Medien auf, besteht jedoch nicht aus einem flüchtigen, sich ausbreitenden Signal. Ein nichtflüchtiges, durch einen Computer lesbares Speichermedium kann daher beispielsweise eine Festplatte, einen CD-ROM, eine optische Speichereinheit, eine magnetische Speichereinheit, einen ROM (Nur-Lese-Speicher), einen RAM (Direktzugriffsspeicher), Registerspeicher, einen Prozessorzwischenspeicher oder eine Kombination daraus umfassen.
- Darüber hinaus dient die hierin verwendete Phraseologie und Terminologie dem Zweck der Beschreibung und sollte nicht als einschränkend betrachtet werden. Die Verwendung hierin von „umfassen“, „enthalten“, „aufweisen“, „haben“ und Variationen davon soll die nachstehend aufgeführten Punkte und deren Äquivalente sowie zusätzliche Punkte umfassen. Die Begriffe „verbunden“ und „gekoppelt“ werden allgemein verwendet und umfassen sowohl direkte als auch indirekte Verbindungen und Kopplungen. Darüber hinaus sind „verbunden“ und „gekoppelt“ nicht auf physische oder mechanische Verbindungen oder Kopplungen beschränkt und können elektrische Verbindungen oder Kopplungen, ob direkt oder indirekt, einschließen. Elektronische Datenübertragungen oder Mitteilungen können darüber hinaus mit drahtgebundenen Verbindungen, drahtlosen Verbindungen oder einer Kombination daraus durchgeführt werden und können direkt oder über eine oder mehrere Zwischeneinheiten über verschiedene Arten von Netzwerken, Datenübertragungskanäle und Verbindungen übertragen werden. Darüber hinaus dürfen Beziehungsbegriffe wie „erste/erster“ und „zweite/zweiter“, „oben“ und „unten“ und dergleichen hierin nur verwendet werden, um eine Entität oder Aktion von einer anderen Entität oder Aktion zu unterscheiden, ohne dass eine solche Beziehung oder Reihenfolge zwischen solchen Entitäten oder Aktionen unbedingt erforderlich ist oder impliziert wird.
- Wie vorstehend beschrieben, zielt die biomedizinische Bildsegmentierung darauf ab, Pixel in einem Bild zu identifizieren, die ein Objekt von Interesse darstellen, wodurch verschiedene Berechnungen und Datenverarbeitungen für das Objekt durchgeführt werden können (z.B. Volumenberechnung und Ähnliches). Viele Techniken zum Durchführen von Bildsegmentierung beruhen jedoch auf der Identifizierung einheitlicher Formen und Zusammenhänge. Wie vorstehend beschrieben, zeichnen sich CNNs zum Beispiel beim Erkennen von Formen und Objekten in Bildern aus, für deren Erkennen die CNNs trainiert wurden, CNNs haben jedoch Probleme damit, unregelmäßige Formen in Bildern zu erkennen. Techniken, die sich auf das Identifizieren von einheitlichen Formen und Zusammenhänge stützen, können daher beim Identifizieren unregelmäßiger Objekte wie Tumormassen, Läsionen und Ähnlichem ineffektiv sein.
- Andere Techniken stützen sich auf Pixelausbreitung, um die Grenzen eines Objekts von Interesse in einem Bild zu ermitteln. Wie vorstehend beschrieben, beruht Bereichswachstum nicht auf Regelmäßigkeit, sondern ein Startpixel wird auf benachbarte Pixel ausgebreitet, bis Grenzen identifiziert sind. Die Form eines Objekts von Interesse wirkt sich daher nicht auf die Leistung des Bereichswachstums aus. Wenn ein Objekt keine genau definierte Grenze hat (z.B. wenn das Objekt mit benachbartem hellem Gewebe auch nur durch eine kleine Verbindung verbunden ist), kann Bereichswachstum jedoch wie in
1 gezeigt ein Objekt außerhalb seiner eigentlichen Grenze auf ungeeignete Weise wachsen lassen. - Um die Unzulänglichkeiten der vorstehend beschriebenen Techniken zu beheben, kombinieren hierin beschriebene Ausführungsformen die Vorteile von CNNs und RNN in einer räumlich-zeitlichen Einheit, um das Erkennen der unregelmäßigen Objekte in Bildern zu verbessern. Wie nachstehend ausführlicher beschrieben, verwenden hierin beschriebene Ausführungsformen insbesondere räumlich gattergesteuerte Weitergabe. Beim Gattersteuern erzeugt ein Teil eines Netzwerks einen neuen Zustand für das System (auf Grundlage seines vorherigen Zustands und neu empfangener Informationen), und ein separater Teil des Netzwerks gattersteuert diesen neuen Zustand und entscheidet, ob der neue Zustand verwendet und zeitlich vorwärts weitergegeben wird. Wie hierin beschrieben, werden die unmittelbar vorhergehenden Zustände eines Pixels und die nächsten Nachbarn des Pixels gattergesteuert und verwendet, um den internen Zustand des Pixels in einem aktuellen Zeitschritt zu ermitteln. Die hierin beschriebenen Systeme und Verfahren geben daher Werte sowohl räumlich als auch zeitlich weiter. Darüber hinaus ermöglicht das Erzeugen der vorstehend beschriebenen Bildpyramide die Weitergabe von Werten über verschiedene Bildauflösungen.
-
2 veranschaulicht ein System200 zum Implementieren eines neuronalen Netzwerks. Bei neuronalen Netzwerken handelt es sich um Modelle des maschinellen Lernens, die eine oder mehrere Schichten von nichtlinearen Einheiten verwenden, um eine Ausgabe für eine empfangene Eingabe vorherzusagen. Einige neuronale Netzwerke enthalten neben einer Eingabeschicht und einer Ausgabeschicht eine oder mehrere verborgene Schichten. Die Ausgabe jeder verborgenen Schicht wird als Eingabe für die nächste Schicht im Netzwerk (die nächste verborgene Schicht oder die Ausgabeschicht) verwendet. Jede Schicht des Netzwerks erzeugt eine Ausgabe von einer empfangenen Eingabe entsprechend aktuellen Werten eines jeweiligen Satzes von Parametern. - Wie in
2 veranschaulicht, enthält das System200 eine Datenverarbeitungseinheit202 , die einen elektronischen Prozessor204 und einen Speicher206 enthält. Der elektronische Prozessor204 und der Speicher206 tauschen drahtlos, über drahtgebundene Datenübertragungskanäle oder Busse oder einer Kombination daraus Daten aus. Die Datenverarbeitungseinheit202 kann noch weitere Komponenten als die in2 veranschaulichten Komponenten in verschiedenen Konfigurationen enthalten. In einigen Ausführungsformen enthält die Datenverarbeitungseinheit202 zum Beispiel mehrere elektronische Prozessoren, mehrere Speichermodule oder eine Kombination daraus. In einigen Ausführungsformen enthält die Datenverarbeitungseinheit202 eine oder mehrere Eingabe/Ausgabe-Schnittstellen, die es der Datenverarbeitungseinheit202 ermöglichen, mit Netzwerken, Peripherieeinheiten und Ähnlichem Daten auszutauschen. - Es versteht sich, dass die hierin beschriebene Funktionalität, wie sie von der Datenverarbeitungseinheit
202 durchgeführt wird, von einer Mehrzahl von Datenverarbeitungseinheiten verteilt durchgeführt werden kann, die sich an verschiedenen geografischen Orten befinden. Die hierin beschriebene Funktionalität, wie sie von der Datenverarbeitungseinheit202 durchgeführt wird, kann zum Beispiel von einer Mehrzahl von Datenverarbeitungseinheiten202 durchgeführt werden, die in einer Cloud-Computing-Umgebung enthalten sind. Bei dem elektronischen Prozessor204 kann es sich um einen Mikroprozessor, eine anwendungsspezifische integrierte Schaltung (application-specific integrated circuit, ASIC) und Ähnliches handeln. Der elektronische Prozessor204 ist im Allgemeinen so konfiguriert, dass er Software-Anweisungen ausführt, um einen Satz von Funktionen durchzuführen, darunter die hierin beschriebenen Funktionen. Der Speicher206 enthält ein nichtflüchtiges, durch einen Computer lesbares Medium und speichert Daten, darunter Anweisungen, die von dem elektronischen Prozessor204 ausgeführt werden können. Wie zum Beispiel in2 veranschaulicht, speichert der Speicher206 ein neuronales Netzwerk208 , das ein Computerprogramm enthält, das von dem elektronischen Prozessor204 ausgeführt wird. -
3 veranschaulicht eine visuelle Darstellung eines Beispiels für das neuronale Netzwerk208 , das der elektronische Prozessor204 ausführt, um die hierin beschriebenen Verfahren durchzuführen. Wie in3 veranschaulicht, stellt das neuronale Netzwerk208 , wenn es von dem elektronischen Prozessor204 ausgeführt wird, ein maschinelles Lernsystem bereit, das eine Eingabe empfängt und eine Ausgabe305 erzeugt. Die Eingabe enthält beispielsweise ein Bild (ein Eingabebild300 ), z.B. ein biomedizinisches Bild, oder eine andere Art von mehrdimensionalen Daten, und die Ausgabe305 enthält auf ähnliche Weise ein Bild oder eine andere Art von mehrdimensionalen Daten. - Wie in
3 gezeigt, wird das Eingabebild300 in eine erste Schicht310 des neuronalen Netzwerks208 eingegeben. Es versteht sich, dass die erste Schicht310 zwar als eine einzelne Schicht dargestellt ist, dies jedoch nur zur Veranschaulichung dient, und die erste Schicht310 eine beliebige Anzahl von Schichten enthalten kann. In der ersten Schicht310 kann das neuronale Netzwerk208 eine Mehrzahl von Faltungen bei Werten durchführen, die die Helligkeit jedes Pixels darstellen. In anderen Ausführungsformen kann das neuronale Netzwerk208 eine Mehrzahl von Faltungen in der ersten Schicht310 durchführen, um wie nachstehend beschrieben eine Bildpyramide315 von dem Eingabebild300 (I0) zu erzeugen. - Bei der Bildpyramide
315 handelt es sich um eine Folge von Tensoren (I1 - Il), die von dem Eingabebild300 gefaltet werden. Der für l = 1 erzeugte Tensor hat die gleichen räumlichen Dimensionen wie das Eingabebild300 (I0), die Tensoren halbieren sich jedoch bei jeder nachfolgenden Faltung/Verringerung. Tensoren für jeden Wert von l haben daher eine andere Auflösung, wobei der Tensor I1 die höchste Auflösung hat und der Tensor Il die geringste Auflösung. Die folgenden Gleichungen veranschaulichen den Prozess zum Erzeugen der Bildpyramide315 , der in der ersten Schicht310 durchgeführt wird. - Der Operator * stellt eine Faltungsoperation dar. Die Gleichung A * B stellt zum Beispiel eine Faltung zwischen einer Eingabe B und einem Kernel A dar.
- I0 ist eine Variable, die das Originaleingabebild
300 darstellt. I0 hat die Dimensionen N0 × N0 × 1. Mit anderen Worten, das Eingabebild300 hat N0 Zeilen, N0 Spalten und (da das Eingabebild300 in dieser beispielhaften Ausführungsform ein Graufstufenbild ist) einen Kanal. - Il ist eine Variable, die eine Zwischenform von Bilddaten (einen Tensor) darstellt, die erzeugt wird, nachdem eine oder mehrere Reduzierungen bei dem Eingabebild
300 (I0) erzeugt wurden. Wenn l > 1, gilt, hat Il wie vorstehend beschrieben eine geringere Auflösung als das Eingabebild300 . I0). Il hat die Dimensionen Nl × Nl × C, wobei Nl = 2-(l-1) N0 ist und C die Anzahl der Kanäle darstellt. -
-
-
- Auch hier stellt der Operator * eine Faltungsoperation dar, und Il ist eine Variable, die eine Zwischenform von Bilddaten (einen Tensor) darstellt, die erzeugt wird, nachdem eine oder mehrere Reduzierungen bei dem Eingabebild
300 (I0) durchgeführt wurden. - [A, B] ist eine Verknüpfungsoperation zwischen Tensoren, z.B. den Tensoren A und B. Eine bei zwei Tensoren durchgeführte Verknüpfungsoperation verbindet die in jedem der Tensoren enthaltenen Kanäle. Wenn der Tensor A zum Beispiel die Dimensionen M x M x C1 hat und der Tensor B die Dimensionen M x M x C2 hat, hat die Ausgabe von [A,B] die Dimensionen M x M x (Cx + C2).
-
322 , der einen internen Zustand für jeden Knoten in dem räumlichen Gitter mit einer Auflösung l und in einem Zeitschritt t speichert. Wie vorstehend beschrieben, wird der interne Zustand jedes Knotens in dem räumlichen Gitter in jedem Zeitschritt aktualisiert. Der Tensor322 hat die Dimensionen Nl x Nl × CH. Daher gibt es CH Variablen, die jeden Block von einem oder mehreren Pixeln des Bildes mit einer Auflösung l beschreiben. -
-
-
- Wie vorstehend beschrieben, stellt der Operator * auch hier eine Faltungsoperation dar, und [A, B] ist eine Verknüpfungsoperation zwischen Tensoren, z.B. den Tensoren A und B.
-
-
-
300 mit einer höheren Auflösung (Il-1) darstellt (eine Schicht der Bildpyramide unmittelbar unter der aktuellen Schicht der Bildpyramide), und ein Upsampling der Ergebnisse300 mit einer geringeren Auflösung (Il+1) darstellt (eine Schicht der Bildpyramide unmittelbar über der aktuellen Schicht der Bildpyramide). Gleichung (5) enthält auch ein Verknüpfen der Ergebnisse des Upsampling mit den Ergebnissen des Downsampling (Abtastratenverringerung) und mit den Ergebnissen des Berechnens von Gleichung (4) von einem Tensor, der das Eingabebild300 mit einer Auflösung Il darstellt (führt eine zweite Verknüpfung durch). Die Gleichung faltet die Ergebnisse der Verknüpfung mit dem Kernel - In der ersten Iteration des neuronalen Netzwerks
208 wird der interne Zustand für jeden Knoten, der in einem räumlichen Gitter einer gattergesteuerten räumlich-zeitlichen Einheit330 enthalten ist, nur mit der Ausgabe von der dritten Schicht325 initialisiert. Jeder Knoten enthält einen Vektor von Werten, die den internen Zustand des Knotens darstellen, und Werte, die in der Bildpyramide von der Helligkeit eines Blocks von einem oder mehreren Pixeln abgeleitet werden, die an diesem Knoten zentriert sind. In jeder aufeinanderfolgenden Iteration wird der interne Zustand jedes Knotens von der vorherigen Iteration über den Tensor322 320 des neuronalen Netzwerks208 eingegeben. Der vorstehend beschriebene Prozess wird anschließend mit Beginn der zweiten Schicht320 wiederholt. - Wie vorstehend beschrieben, enthält das neuronale Netzwerk
208 die gattergesteuerte räumlich-zeitliche Einheit330 mit einer Mehrzahl von Knoten, die in einem räumlichen Gitter angeordnet sind. Jeder Knoten in diesem Gitter entspricht einem Pixel in dem Eingabebild300 . Die gattergesteuerte räumlich-zeitliche Einheit330 führt in jedem von mehreren Zeitschritten eine Datenverarbeitung durch. In jedem Zeitschritt empfängt die gattergesteuerte räumlich-zeitliche Einheit330 eine Mehrzahl von Werten. Auf Grundlage der empfangenen Werte und der Werte, die den internen Zustand jedes Knotens darstellen, der im vorherigen Zeitschritt gattergesteuert wurde, legt die gattergesteuerte räumlich-zeitliche Einheit330 fest, wie der interne Zustand jedes Knotens im aktuellen Zeitschritt aktualisiert wird. Wie nachstehend noch ausführlicher beschrieben wird, legt die gattergesteuerte räumlich-zeitliche Einheit330 fest, wie der interne Zustand jedes Knotens aktualisiert wird, indem sie für jeden Knoten im Gitter entscheidet, ob der interne Zustand des Knotens von einem vorherigen Zeitschritt beibehalten wird, der interne Zustand des Knotens auf einen Wert eingestellt wird, der den internen Zustand des Nachbarknotens von einem vorherigen Zeitschritt darstellt, oder ein neuer interner Zustand für den Knoten erzeugt wird. - Die folgende Gleichung ist ein Beispiel für eine Berechnung, die verwendet wird, um den internen Zustand
330 im aktuellen Zeitschritt zu ermitteln und ist zum einfacheren Verständnis über sieben Zeilen (mit der Kennzeichnung I bis VII) verteilt. - σ(A) stellt die Anwendung der Sigmoidfunktion 1/(1 + e-a) elementweise auf jedes Element a des Tensors A dar. Die Sigmoidfunktion kann auch als „Quetschungsfunktion“ (squashing function) bezeichnet werden. Die Sigmoidfunktion nimmt einen beliebigen Eingabewert von +∞ bis -∞ und quetscht den Eingabewert zu einem Ausgabewert von 0 bis 1.
- Tanh ist ebenfalls eine Quetschungsfunktion. Sie nimmt auch einen beliebigen Eingabewert von +∞ bis -∞, die tanh-Funktion quetscht den Eingabewert jedoch zu einem Ausgabewert von -1 bis 1.
- Der Operator ⊙ stellt eine Hadamard-Produktoperation dar. Wenn beispielsweise die Gleichung ⊙ gegeben ist, wird eine Hadamard-Produktoperation zwischen Eingabe B und Eingabe A durchgeführt. Das Hadamard-Produkt ist eine elementweise Multiplikation jedes Elementpaares von zwei Eingaben gleicher Größe.
-
326 der in der dritten Schicht325 mit einer Auflösung l und im Zeitschritt t durchgeführten Berechnung enthält. -
322 , der einen internen Zustand für jeden Knoten in dem räumlichen Gitter mit einer Auflösung l und in einem Zeitschritt t speichert. Wie vorstehend beschrieben, wird der interne Zustand in jedem Zeitschritt dynamisch aktualisiert. Der Tensor hat die Dimensionen Nl × Nl × CH. Daher gibt es CH Variablen, die jeden Knoten mit einer Auflösung l beschreiben. - SΔx,Δy ist ein Faltungsoperator mit räumlicher Verschiebung. Er hat keine erlernbaren Parameter. SΔx,Δy ermöglicht es, Informationen von den internen Zuständen der nächsten Nachbarknoten beim Ermitteln des aktuellen internen Zustands eines Knotens zu berücksichtigen.
- Um zur vorstehenden Gleichung zurückzukehren: die Ergebnisse
326 , die im Tensor -
4 veranschaulicht die Verbindungen zwischen einem Knoten400 , dessen interner Zustand in einer aktuellen Iteration ermittelt wird, und Knoten mit internen Zuständen, die in einer vorherigen Iteration ermittelt wurden. Jeder Knoten ist mit Knoten verbunden, deren interne Zustände bei einer unmittelbar vorhergehenden Iteration der gattergesteuerten räumlich-zeitlichen Einheit330 berechnet wurden. Jeder Knoten ist insbesondere mit einem Knoten verbunden, der seinen eigenen internen Zustand in der unmittelbar vorhergehenden Iteration der gattergesteuerten räumlich-zeitlichen Einheit330 darstellt, sowie mit Knoten, die interne Zustände ihrer Nachbarknoten in der unmittelbar vorhergehenden Iteration der gattergesteuerten räumlich-zeitlichen Einheit330 darstellen. In4 handelt es sich bei Knoten in der Gruppe405 um Knoten, die jeweils internen Zuständen zugehörig sind, die in einer unmittelbar vorhergehenden Iteration des neuronalen Netzwerks208 ermittelt werden. Bei Knoten in der Gruppe410 handelt es sich um Knoten, die internen Zuständen zugehörig sind, die in der aktuellen Iteration des neuronalen Netzwerks208 ermittelt werden. Wie vorstehend beschrieben, entspricht jeder Knoten einem Pixel (oder einem Block von einem oder mehreren Pixeln) im Eingabebild300 . Jeder Nachbarknoten eines Knotens stellt ein Pixel (oder einen Block von einem oder mehreren Pixeln) dar, das sich neben dem Pixel (oder dem Block von einem oder mehreren Pixeln) befindet, das von dem Knoten dargestellt wird. Wenn ein Knoten400 zum Beispiel ein Pixel in dem Bild an den Koordinaten (i,j) darstellt, wird der Knoten400 , der das Pixel an (i,j) darstellt, mit einem Knoten415 verbunden, der ein Pixel an den Koordinaten (i - 1,j) (unmittelbar links von dem Pixel an (i, j)) darstellt, mit einem Knoten420 , der ein Pixel an den Koordinaten (i + 1, j) (unmittelbar rechts von dem Pixel an (i, j)), mit einem Knoten425 , der ein Pixel an den Koordinaten (i,j + 1) (unmittelbar über dem Pixel an (i, j)) und mit einem Knoten430 , der ein Pixel an den Koordinaten (i,j - 1) (unmittelbar unter dem Pixel an (i, j)) darstellt. Jeder der vorstehenden Knoten, der als mit dem Knoten400 verbunden beschrieben wird, der das Pixel (i,j) darstellt, ist der Nachbarknoten des Knotens400 . Die gattergesteuerte räumlich-zeitliche Einheit330 legt daher fest, ob der interne Zustand des Knotens400 auf den internen Zustand einer der Knoten in der Gruppe405 eingestellt wird. - Wenn die internen Zustände der Knoten in dem räumlichen Gitter der gattergesteuerten räumlich-zeitlichen Einheit
330 konvergieren (Änderung geringer als ein zuvor festgelegter Umfang), werden die internen Zustände der Knoten, die das Eingabebild300 mit der höchsten Auflösung darstellen, an eine letzte Schicht335 des neuronalen Netzwerks208 ausgegeben. Die letzte Schicht335 verwendet einen in dem internen Zustand jedes Knotens enthaltenen Wert, um die Wahrscheinlichkeit zu berechnen (zum Beispiel einen Wert zwischen Null und Eins), dass das Pixel, das dieser Knoten darstellt, zu dem Objekt von Interesse in dem Eingabebild300 gehört. Die folgende Gleichung beschreibt die Operation, die in der letzten Schicht335 durchgeführt wird, um die Wahrscheinlichkeit zu ermitteln, dass jedes Pixel ein Teil eines Objekts von Interesse ist: - Yt ist eine Variable, die die Ausgabe
305 des neuronalen Netzwerks208 in einem Zeitschritt t darstellt und die Dimensionen N0 × N0 × 1 hat (dieselben Dimensionen wie die Eingabe). -
- Zusammenfassend wendet Gleichung (7) eine letzte Faltung mit
300 liegt. Wenn der von der Sigmoidfunktion für ein einzelnes Pixel erzeugte Wert zum Beispiel 5 ist, besteht eine Wahrscheinlichkeit von fünfzig Prozent (50 %), dass sich das Pixel in dem Objekt von Interesse befindet. - Das neuronale Netzwerk
208 kann die erzeuge Ausgabe305 (die berechneten Wahrscheinlichkeiten für jeden Knoten) in einem Ausgabedatendepot (z.B. dem Speicher206 ) speichern oder die erzeugte Ausgabe305 zur Nutzung oder Inanspruchnahme bereitstellen, indem die Ausgabe305 beispielsweise einem Benutzer auf einer Anzeigeeinheit angezeigt wird. Unabhängig davon vergleicht der elektronische Prozessor204 für jedes Pixel die Wahrscheinlichkeit, dass das Pixel in einem Objekt von Interesse enthalten ist, mit einem zuvor festgelegten Schwellenwert. Wenn die Wahrscheinlichkeit, dass ein Pixel ein Teil eines Objekts von Interesse ist, über einem zuvor festgelegten Schwellenwert liegt, stellt der elektronische Prozessor204 fest, dass das Pixel ein Teil des Objekts von Interesse ist. - Es versteht sich, dass die Gleichungen (4 bis 6) in einigen Ausführungsformen in dem vorstehend beschriebenen neuronalen Netzwerk
208 für jede Darstellungsebene des Eingabebildes300 (I1 - Il) durchgeführt werden, das in der Bildpyramide315 enthalten ist. Es versteht sich ferner, dass das neuronale Netzwerk208 vorstehend zwar so beschrieben wird, dass es Werte zeitlich, räumlich und auflösungsbezogen weitergibt, das neuronale Netzwerk208 jedoch so geändert werden kann, dass es nur Werte zeitlich und räumlich weitergibt. - Es versteht sich darüber hinaus, dass die Werte der zum Ermitteln des internen Zustands jedes Knotens bei jeder Iteration verwendeten Gatter entweder Null oder Eins sein müssen, jedoch einen beliebigen Wert zwischen 0 oder 1 haben können (siehe Gleichung (6) oben). Der aktualisierte interne Zustand eines Knotens kann daher in einigen Ausführungsformen eine Mischung (oder mathematischer ausgedrückt eine lineare Kombination) von zwei oder mehr der vorstehend beschriebenen Optionen sein (ein Wert des Knotens von einer vorherigen Iteration, Werte von einem oder mehreren Nachbarknoten von einer vorherigen Iteration und ein neuer Wert des Knotens).
-
5 und6 stellen ein Beispiel einer praktischen Anwendung des neuronalen Netzwerks bereit.5 veranschaulicht ein Beispiel für ein medizinisches Bild500 , das das neuronale Netzwerk208 als Eingabe empfangen kann. Das Objekt von Interesse in dem Bild500 ist ein Tumor505 in einem linken Lungenflügel510 .6 veranschaulicht den Bereich des medizinischen Bildes500 , den das neuronale Netzwerk208 als ein Objekt von Interesse (den Tumor505 ) identifiziert. Anders als bei der Verwendung des Bereichswachstums (siehe1 ) gehen die Grenzen des Objekts von Interesse nicht über den linken Lungenflügel510 hinaus. - Hierin beschriebene Ausführungsformen stellen somit ein neutrales Netzwerk bereit, das eine räumlich-zeitliche Einheit enthält. Bei der räumlich-zeitlichen Einheit handelt es sich um ein räumlich erweitertes Gitter von Knoten. Jeder Knoten entspricht zum Beispiel einem Pixel in einem Bild. Das neuronale Netzwerk ermittelt einen internen Anfangszustand für jeden Knoten und aktualisiert den internen Zustand für jeden Knoten iterativ, um immer wieder einen neuen internen Zustand zu erzeugen, indem Werte zeitlich, räumlich oder beides weitergegeben und neue Werte berechnet werden, um den internen Zustand für jeden Knoten darzustellen. Hierin beschriebene Ausführungsformen berücksichtigen daher im Vergleich zu anderen Arten von RNN wie Netzwerken mit langem Kurzzeitgedächtnis (LSTM) und Netzwerken mit gattergesteuerter rekurrenter Einheit (gated recurrent unit, GRU), die auf eindimensionalen Buchstaben- oder Wortfolgen iterieren, bei der Aktualisierung des internen Zustands jedes Knotens die Entscheidungen von Nachbarknoten. Hierin beschriebene Ausführungsformen werden insbesondere sowohl auf räumliche als auch auf zeitliche Dimensionen angewendet. Obwohl die zeitliche Dimension nur vorwärts iteriert, ermöglicht es die räumliche Gattersteuerung daher, dass sich räumliche Informationen über das räumliche Gitter so lange wie nötig hin und her ausbreiten, da neue Schlussfolgerungen in einem Teil des Bildes ermittelt und an andere Teile des Bildes weitergegeben werden, um die Entscheidungsfindung in diesen Teilen zu beeinflussen. In einigen hierin beschriebenen Ausführungsformen können Werte in dem neuronalen Netzwerk
208 zusätzlich zwischen verschiedenen Auflösungen des Bildes weitergegeben werden. - Die hierin beschriebenen Ausführungsformen sind geschlossen. Das hierin beschriebene neuronale Netzwerk
208 erhält insbesondere alle Informationen über die Außenwelt als erste Eingabe (das Bild, das verarbeitet werden muss), und ab diesem Punkt entwickelt sich das neuronale Netzwerk208 im Laufe der Zeit nur entsprechend seinem eigenen internen Zustand und seinen eigenen Regeln, ohne weitere Informationen von außen aufzunehmen. Die Iteration wird daher bis zur Konvergenz fortgesetzt, wenn sich der interne Zustand nicht mehr ändert. Dadurch wird das neuronale Netzwerk208 eher zu einem Algorithmus als zu einer Funktion. Im Gegensatz dazu erhalten RNN in jedem Zeitschritt einen neuen Teil des Problems (z.B. ein Wort), sodass die Iteration nur so lange fortgesetzt wird, wie neue Informationen verfügbar sind. - In den folgenden Ansprüchen sind verschiedene Merkmale und Vorteile einiger Ausführungsformen dargelegt.
Claims (46)
- Verfahren zum Identifizieren eines Objekts von Interesse in einem medizinischen Bild, wobei das Verfahren aufweist: Initialisieren interner Zustände von Knoten eines räumlichen Gitters, wobei jeder Knoten einem Pixel des medizinischen Bildes entspricht und mit mindestens einem Knoten verbunden ist, der ein Nachbarpixel des medizinischen Bildes darstellt; iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks, wobei jeder Knoten bei jeder Iteration seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration und einem neuen Wert des Knotens besteht; und Identifizieren des Objekts von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters.
- Verfahren nach
Anspruch 1 , wobei das iterative Aktualisieren der internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks ein Aktualisieren eines Wertes in einem Vektor von Werten enthält, die den internen Zuständen der Knoten zugehörig sind. - Verfahren nach
Anspruch 2 , wobei die Werte in dem Vektor von Werten einen Wert enthalten, der die Helligkeit des Pixels darstellt, das dem Knoten entspricht, sowie einen Wert, der den internen Zustand des Knotens darstellt. - Verfahren nach
Anspruch 1 , wobei für jede Iteration eine Faltung durchgeführt wird, die vorherige interne Zustände der Knoten einbeziehen. - Verfahren nach
Anspruch 1 , wobei das Verfahren weiterhin in einer ersten Iteration ein Durchführen von Faltungen bei jedem Wert umfasst, der eine Helligkeit jedes Pixels darstellt. - Verfahren nach
Anspruch 1 , wobei das Identifizieren eines Objekts von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters ein Verwenden einer letzten Schicht des neuronalen Netzwerks umfasst, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem Objekt von Interesse auf Grundlage eines Wertes enthalten ist, der in einem Vektor von Werten enthalten ist, die jedem Pixel zugehörig sind; und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt. - Verfahren nach
Anspruch 1 , wobei jeder Knoten seinen internen Zustand unter Anwenden einer Quetschungsfunktion auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von einer vorherigen Iteration und einem neuen Wert des Knotens besteht. - Verfahren nach
Anspruch 1 , wobei der Nachbarknoten aus einer Gruppe ausgewählt wird, die aus einem Knoten besteht, der ein Pixel darstellt, das sich unmittelbar über, unmittelbar unter, rechts und links von einem Pixel befindet, das von dem Knoten dargestellt wird. - Verfahren nach
Anspruch 1 , wobei das Verfahren weiterhin ein Erzeugen einer Bildpyramide mit einer Mehrzahl von Schichten aufweist, wobei jede aufeinanderfolgende Schicht das medizinische Bild mit weniger Werten darstellt. - Verfahren nach
Anspruch 9 , wobei das Verfahren weiterhin ein Verknüpfen von Werten von einer Mehrzahl von Schichten der Bildpyramide in jeder Iteration aufweist. - System zum Ermitteln eines Bereichs von Interesse in einem Bild, wobei das System aufweist: einen Speicher; und einen elektronischen Prozessor, der mit dem Speicher verbunden und so konfiguriert ist, dass er interne Zustände von Knoten eines räumlichen Gitters initialisiert, wobei jeder Knoten einem Pixel des Bildes entspricht und mit mindestens einem Knoten verbunden ist, der ein Nachbarpixel des Bildes darstellt, die internen Zustände jedes Knotens in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe iterativ unter Verwendung eines neuronalen Netzwerks aktualisiert; und den Bereich von Interesse in dem Bild auf Grundlage der internen Zustände der Knoten bei einer Konvergenz des räumlichen Gitters identifiziert.
- System nach
Anspruch 11 , wobei der elektronische Prozessor so konfiguriert ist, dass er die internen Zustände der Knoten aktualisiert, indem der interne Zustand bei jeder Iteration auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert wird, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht. - System nach
Anspruch 11 , wobei der elektronische Prozessor so konfiguriert ist, dass er die internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks iterativ aktualisiert, indem ein Wert in einem Vektor von Werten aktualisiert wird, die den internen Zuständen der Knoten zugehörig sind. - System nach
Anspruch 13 , wobei die Werte in dem Vektor von Werten einen Wert enthalten, der die Helligkeit eines Pixels darstellt, das dem Knoten entspricht, sowie einen Wert, der den internen Zustand des Knotens darstellt. - System nach
Anspruch 11 , wobei der elektronische Prozessor weiterhin so konfiguriert ist, dass er in jeder Iteration eine Faltung durchführt, die vorherige interne Zustände der Knoten einbezieht. - System nach
Anspruch 11 , wobei der elektronische Prozessor weiterhin so konfiguriert ist, dass er in der ersten Iteration Faltungen bei jedem Wert durchführt, der eine Helligkeit von jedem Pixel darstellt. - System nach
Anspruch 11 , wobei der elektronische Prozessor so konfiguriert ist, dass er ein Objekt von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters identifiziert, indem er eine letzte Schicht des neuronalen Netzwerks verwendet, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem Objekt von Interesse auf Grundlage des jedem Pixel zugehörigen Vektors enthalten ist, und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt. - System nach
Anspruch 12 , wobei der elektronische Prozessor so konfiguriert ist, dass er den internen Zustand unter Anwenden einer Quetschungsfunktion auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht. - System nach
Anspruch 12 , wobei der Nachbarknoten aus einer Gruppe ausgewählt wird, die aus einem Knoten besteht, der ein Pixel darstellt, das sich unmittelbar über, unmittelbar unter, rechts und links von dem Pixel befindet, das von dem Knoten dargestellt wird. - Nichtflüchtiges, durch einen Computer lesbares Medium, das Anweisungen speichert, die, wenn sie von einem elektronischen Prozessor ausgeführt werden, einen Satz von Funktionen durchführen, wobei der Satz von Funktionen aufweist: Initialisieren von internen Zuständen von Knoten eines räumlichen Gitters, wobei jeder Knoten ein Pixel eines Bildes darstellt und mit mindestens einem Nachbarpixel des Bildes verbunden ist; iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks, wobei jeder Knoten bei jeder Iteration seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht; und Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters.
- Nichtflüchtiges, durch einen Computer lesbares Medium nach
Anspruch 20 , wobei das iterative Aktualisieren der internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks ein Aktualisieren eines Wertes in einem Vektor von Werten enthält, die den internen Zuständen der Knoten zugehörig sind. - Nichtflüchtiges, durch einen Computer lesbares Medium nach
Anspruch 20 , wobei das Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters ein Verwenden einer letzten Schicht in dem neuronalen Netzwerk umfasst, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem Objekt von Interesse auf Grundlage des jedem Pixel zugehörigen Vektors enthalten ist; und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt. - Verfahren zum Identifizieren eines Objekts von Interesse in einem medizinischen Bild, wobei das Verfahren aufweist: Erzeugen einer Bildpyramide für das medizinisches Bild, wobei die Bildpyramide eine Mehrzahl von Schichten enthält, wobei jede Schicht eine Mehrzahl von Werten enthält, wobei jeder Wert einen Block von einem oder mehreren Pixeln in dem medizinischen Bild darstellt und wobei jede aufeinanderfolgende Schicht weniger Werte als eine unmittelbar vorhergehende Schicht enthält; für jede Schicht der Bildpyramide Initialisieren von internen Zuständen von Knoten eines räumlichen Gitters, wobei jeder Knoten in dem räumlichen Gitter einen Block von einem oder mehreren Pixeln in dem medizinischen Bild darstellt und mit mindestens einem Knoten verbunden ist, der einen Nachbarblock von einem oder mehreren Pixeln in dem medizinischen Bild darstellt; und iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks, wobei jeder Knoten bei jeder Iteration seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration und einem neuen Wert des Knotens besteht; und Identifizieren des Objekts von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen.
- Verfahren nach
Anspruch 23 , wobei das iterative Aktualisieren der internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks ein Aktualisieren eines Wertes in einem Vektor von Werten enthält, die den internen Zuständen der Knoten zugehörig sind. - Verfahren nach
Anspruch 23 , wobei das Verfahren weiterhin aufweist: bei jeder Iteration für jede Schicht der Bildpyramide ein Durchführen einer ersten Faltung, die eine erste Verknüpfung vorheriger interner Zustände der Knoten, die die in einer Schicht der Bildpyramide enthaltenen Werte darstellen, und der in der Schicht der Bildpyramide enthaltenen Werte umfasst, und Speichern von Ergebnissen des Durchführens der ersten Faltung. - Verfahren nach
Anspruch 25 , wobei das Verfahren weiterhin bei jeder Iteration für jede Schicht der Bildpyramide ein Durchführen einer zweiten Faltung aufweist, die eine zweite Verknüpfung von Ergebnissen des Durchführens der ersten Faltung für eine aktuelle Schicht der Bildpyramide, eine Schicht der Bildpyramide unmittelbar über der aktuellen Schicht der Bildpyramide und eine Schicht der Bildpyramide unmittelbar unter der aktuellen Schicht der Bildpyramide umfasst. - Verfahren nach
Anspruch 23 , wobei das Erzeugen der Bildpyramide ein Durchführen von Faltungen bei jedem Wert enthält, der eine Helligkeit jedes Blocks von einem oder mehreren Pixeln in dem medizinischen Bild darstellt, wobei jede Faltung, die eine Verringerung von Dimensionen von Eingabedaten eines medizinischen Bildes umfasst, Werte erzeugt, die verwendet werden, um das medizinische Bild in einer nächsten Schicht der Bildpyramide darzustellen. - Verfahren nach
Anspruch 23 , wobei jeder Wert, der das medizinische Bild in der ersten Schicht der Bildpyramide darstellt, einem Pixel in dem medizinischen Bild entspricht. - Verfahren nach
Anspruch 28 , wobei das Identifizieren des Objekts von Interesse in dem medizinischen Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen, ein Verwenden einer letzten Schicht des neuronalen Netzwerks umfasst, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem medizinischen Bild in dem Objekt von Interesse auf Grundlage eines Wertes enthalten ist, der in jedem Vektor der Werte enthalten ist, die einem Knoten zugehörig sind, der die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellt; und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt. - Verfahren nach
Anspruch 26 , wobei jeder Knoten seinen internen Zustand auf Grundlage mindestens eines ausgewählten Wertes aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration und einem neuen Wert der Knoten besteht, wobei dies ein Verwenden einer Quetschungsfunktion und der Ergebnisse des Durchführens der zweiten Faltung umfasst. - Verfahren nach
Anspruch 23 , wobei der Nachbarknoten aus einer Gruppe ausgewählt wird, die aus einem Knoten besteht, der einen Block von einem oder mehreren Pixeln darstellt, der sich unmittelbar über, unmittelbar unter, rechts und links von einem Block mit einem oder mehreren Pixeln befindet, der von dem Knoten dargestellt wird. - Verfahren nach
Anspruch 23 , wobei das Darstellen des medizinischen Bildes mit weniger Werten ein medizinisches Bild mit einer geringeren Auflösung erzeugt. - System zum Ermitteln eines Bereichs von Interesse in einem Bild, wobei das System aufweist: einen Speicher; und einen elektronischen Prozessor, der mit dem Speicher verbunden und so konfiguriert ist, dass er eine Bildpyramide für das Bild erzeugt, wobei die Bildpyramide eine Mehrzahl von Schichten enthält, für jede Schicht der Bildpyramide interne Zustände von Knoten eines räumlichen Gitters initialisiert, wobei jeder Knoten einen Block von einem oder mehreren Pixeln in dem Bild darstellt und mit mindestens einem Knoten verbunden ist, der einen Nachbarblock von einem oder mehreren Pixeln in dem Bild darstellt, und die internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks iterativ aktualisiert; und den Bereich von Interesse in dem Bild auf Grundlage der internen Zustände der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten identifiziert, die in einer ersten Schicht der Bildpyramide enthaltene Werte darstellen.
- System nach
Anspruch 33 , wobei jede aufeinanderfolgende Schicht der Mehrzahl von in der Bildpyramide enthaltenen Schichten das Bild mit einer geringeren Auflösung als ein Bild darstellt, das in einer unmittelbar vorhergehenden Schicht der Bildpyramide dargestellt wird. - System nach
Anspruch 34 , wobei der elektronische Prozessor so konfiguriert ist, dass er das Bild mit einer geringeren Auflösung darstellt, indem er das Bild mit weniger Werten darstellt. - System nach
Anspruch 33 , wobei der elektronische Prozessor so konfiguriert ist, dass er die internen Zustände der Knoten aktualisiert, indem er bei jeder Iteration für jeden Knoten entscheidet, ob ein Wert des Knotens von einer vorherigen Iteration beibehalten, ein Wert des Knotens auf einen Wert eines Nachbarknotens von einer vorherigen Iteration eingestellt oder ein neuer Wert des Knotens eingestellt wird. - System nach
Anspruch 33 , wobei der elektronische Prozessor so konfiguriert ist, dass er die internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks iterativ aktualisiert, indem er einen Wert in einem Vektor von Werten aktualisiert, die den internen Zuständen der Knoten zugehörig sind. - System nach
Anspruch 35 , wobei der elektronische Prozessor so konfiguriert ist, dass er bei jeder Iteration für jede Schicht der Bildpyramide eine erste Faltung durchführt, die eine erste Verknüpfung vorheriger interner Zustände der Knoten, die die in der Schicht der Bildpyramide enthaltenen Werte darstellen, und der in der Schicht der Bildpyramide enthaltenen Werte umfasst, und die Ergebnisse des Durchführens der ersten Faltung speichert. - System nach
Anspruch 38 , wobei der elektronische Prozessor so konfiguriert ist, dass er bei jeder Iteration für jede Schicht der Bildpyramide eine zweite Faltung durchführt, die eine zweite Verknüpfung von Ergebnissen des Durchführens der ersten Faltung für eine aktuelle Schicht der Bildpyramide, eine Schicht der Bildpyramide unmittelbar über der aktuellen Schicht der Bildpyramide und eine Schicht der Bildpyramide unmittelbar unter der aktuellen Schicht der Bildpyramide umfasst. - System nach
Anspruch 34 , wobei der elektronische Prozessor weiterhin so konfiguriert ist, dass er in der ersten Iteration Faltungen bei jedem Wert durchführt, der eine Helligkeit jedes Blocks von einem oder mehreren Pixeln in dem Bild darstellt, wobei jede Faltung, die eine Verringerung von Dimensionen der Eingabebilddaten umfasst, Werte erzeugt, die verwendet werden, um das Bild in einer nächsten Schicht der Bildpyramide darzustellen. - System nach
Anspruch 33 , wobei der elektronische Prozessor so konfiguriert ist, dass er ein Objekt von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten identifiziert, die in einer ersten Schicht der Bildpyramide enthaltene Werte darstellen, indem eine letzte Schicht des neuronalen Netzwerks verwendet wird, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem Bild in dem Objekt von Interesse auf Grundlage jedes Vektors enthalten ist, der einem Knoten zugehörig ist, der die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellt, und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt. - System nach
Anspruch 39 , wobei der elektronische Prozessor so konfiguriert ist, dass er den internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht, indem er eine Quetschungsfunktion und Ergebnisse des Durchführens der zweiten Faltung verwendet. - System nach
Anspruch 36 , wobei der Nachbarknoten aus einer Gruppe ausgewählt wird, die aus einem Knoten besteht, der einen Block von einem oder mehreren Pixeln in dem Bild darstellt, der sich unmittelbar über, unmittelbar unter, rechts und links von dem Block von einem oder mehreren Pixeln in dem Bild befindet, der von dem Knoten dargestellt wird. - Nichtflüchtiges, durch einen Computer lesbares Medium, das Anweisungen speichert, die, wenn sie von einem elektronischen Prozessor ausgeführt werden, einen Satz von Funktionen durchführen, wobei der Satz von Funktionen aufweist: Erzeugen einer Bildpyramide für ein Bild, wobei die Bildpyramide eine Mehrzahl von Schichten enthält, wobei jede Schicht eine Mehrzahl von Werten enthält, wobei jeder Wert einen Block von einem oder mehreren Pixeln in dem Bild darstellt und wobei jede aufeinanderfolgende Schicht weniger Werte als eine unmittelbar vorhergehende Schicht enthält; für jede Schicht der Bildpyramide; Initialisieren der internen Zustände von Knoten in einem räumlichen Gitter, wobei jeder Knoten einen Block von einem oder mehreren Pixeln in dem Bild darstellt und mit mindestens einem Knoten verbunden ist, der einen Nachbarblock von einem oder mehreren Pixeln in dem Bild darstellt; und iteratives Aktualisieren der internen Zustände der Knoten in dem räumlichen Gitter mit räumlich gattergesteuerter Weitergabe unter Verwendung eines neuronalen Netzwerks, wobei jeder Knoten bei jeder Iteration seinen internen Zustand auf Grundlage von mindestens einem ausgewählten Wert aus der Gruppe aktualisiert, die aus einem Wert des Knotens von einer vorherigen Iteration, einem Wert eines Nachbarknotens von der vorherigen Iteration oder einem neuen Wert des Knotens besteht; und Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters, das Knoten aufweist, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen.
- Nichtflüchtiges, durch einen Computer lesbares Medium nach
Anspruch 44 , wobei das iterative Aktualisieren der internen Zustände der Knoten unter Verwendung eines neuronalen Netzwerks ein Aktualisieren eines Wertes in einem Vektor von Werten enthält, die den internen Zuständen der Knoten zugehörig sind. - Nichtflüchtiges, durch einen Computer lesbares Medium nach
Anspruch 44 , wobei das Identifizieren eines Objekts von Interesse in dem Bild auf Grundlage der Werte der Knoten bei einer Konvergenz des räumlichen Gitters mit Knoten, die die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellen, ein Verwenden einer letzten Schicht in dem neuronalen Netzwerk umfasst, um eine Wahrscheinlichkeit zu berechnen, dass jedes Pixel in dem Bild in dem Objekt von Interesse auf Grundlage des Vektors enthalten ist, der einem Knoten zugehörig ist, der die in einer ersten Schicht der Bildpyramide enthaltenen Werte darstellt; und Ermitteln für jedes Pixel, ob die berechnete Wahrscheinlichkeit über einem zuvor festgelegten Schwellenwert liegt.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/014,801 US10643092B2 (en) | 2018-06-21 | 2018-06-21 | Segmenting irregular shapes in images using deep region growing with an image pyramid |
US16/014,785 | 2018-06-21 | ||
US16/014,801 | 2018-06-21 | ||
US16/014,785 US10776923B2 (en) | 2018-06-21 | 2018-06-21 | Segmenting irregular shapes in images using deep region growing |
PCT/IB2019/053923 WO2019243910A1 (en) | 2018-06-21 | 2019-05-13 | Segmenting irregular shapes in images using deep region growing |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112019001959T5 true DE112019001959T5 (de) | 2021-01-21 |
Family
ID=68983773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112019001959.7T Pending DE112019001959T5 (de) | 2018-06-21 | 2019-05-13 | Segmentieren unregelmässiger formen in bildern unter verwendung von tiefem bereichswachstum |
Country Status (5)
Country | Link |
---|---|
JP (1) | JP2021527859A (de) |
CN (1) | CN112189217A (de) |
DE (1) | DE112019001959T5 (de) |
GB (1) | GB2589478B (de) |
WO (1) | WO2019243910A1 (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116546340B (zh) * | 2023-07-05 | 2023-09-19 | 华中师范大学 | 一种高速cmos像素探测器 |
CN116894841B (zh) * | 2023-09-08 | 2023-11-28 | 山东天鼎舟工业科技有限公司 | 一种变速箱合金壳体质量视觉检测方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103236058B (zh) * | 2013-04-25 | 2016-04-13 | 内蒙古科技大学 | 获取四维心脏图像感兴趣体积的方法 |
US9972093B2 (en) * | 2015-03-30 | 2018-05-15 | Siemens Healthcare Gmbh | Automated region of interest detection using machine learning and extended Hough transform |
US10319374B2 (en) * | 2015-11-25 | 2019-06-11 | Baidu USA, LLC | Deployed end-to-end speech recognition |
US10402700B2 (en) * | 2016-01-25 | 2019-09-03 | Deepmind Technologies Limited | Generating images using neural networks |
US9767557B1 (en) * | 2016-06-23 | 2017-09-19 | Siemens Healthcare Gmbh | Method and system for vascular disease detection using recurrent neural networks |
US10417788B2 (en) * | 2016-09-21 | 2019-09-17 | Realize, Inc. | Anomaly detection in volumetric medical images using sequential convolutional and recurrent neural networks |
CN107832807B (zh) * | 2017-12-07 | 2020-08-07 | 上海联影医疗科技有限公司 | 一种图像处理方法和系统 |
-
2019
- 2019-05-13 DE DE112019001959.7T patent/DE112019001959T5/de active Pending
- 2019-05-13 WO PCT/IB2019/053923 patent/WO2019243910A1/en active Application Filing
- 2019-05-13 GB GB2019774.5A patent/GB2589478B/en active Active
- 2019-05-13 JP JP2020556276A patent/JP2021527859A/ja active Pending
- 2019-05-13 CN CN201980033048.3A patent/CN112189217A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2019243910A1 (en) | 2019-12-26 |
CN112189217A (zh) | 2021-01-05 |
JP2021527859A (ja) | 2021-10-14 |
GB202019774D0 (en) | 2021-01-27 |
GB2589478B (en) | 2022-05-25 |
GB2589478A (en) | 2021-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3689049T2 (de) | Selbstanpassender Prozessor. | |
DE102018111905A1 (de) | Domänenspezifische Sprache zur Erzeugung rekurrenter neuronaler Netzarchitekturen | |
DE69324207T2 (de) | Bildgruppierungsvorrichtung | |
DE69222707T2 (de) | Zeichenverdünnung mit Verwendung des Auftrittsverhaltens von lokal unabhängigen kompetitiven Prozessen | |
DE68928612T2 (de) | Verfahren zur bestimmung der inferenzregel sowie inferenzmotor | |
DE102018129424A1 (de) | System und verfahren zum lernen der struktur von tiefen neuronalen netzwerken | |
DE68928484T2 (de) | Verfahren zum erkennen von bildstrukturen | |
DE112017002799T5 (de) | Verfahren und system zum generieren multimodaler digitaler bilder | |
DE112016001796T5 (de) | Feinkörnige bildklassifizierung durch erforschen von etiketten von einem bipartiten graphen | |
DE69330021T2 (de) | Verbessertes System zur Mustererkennung für Sonar und andere Anwendungen | |
DE102019214402A1 (de) | Verfahren und vorrichtung zum verarbeiten von daten mittels eines neuronalen konvolutionsnetzwerks | |
DE112020004471T5 (de) | Folgerungsvorrichtung, Trainingsvorrichtung, Folgerungsverfahren und Trainingsverfahren | |
DE112019001959T5 (de) | Segmentieren unregelmässiger formen in bildern unter verwendung von tiefem bereichswachstum | |
DE69517249T2 (de) | Anordnung zur segmentierung eines diskreten datensatzes | |
DE102006044595B4 (de) | Bildverarbeitungsvorrichtung zur Segmentierung anhand von Konturpunkten | |
EP1154369A2 (de) | Verfahren zur zyklischen, interaktiven Bildanalyse sowie Computersystem und Computerprogramm zur Ausführung des Verfahrens | |
DE102023125635A1 (de) | Bild- und objekt-inpainting mit diffusionsmodellen | |
DE112011101938T5 (de) | Bildinterpolationsverfahren mit Entscheidungsmix | |
DE202023103073U1 (de) | Ein System zur Segmentierung synthetischer Bilder unter Verwendung einer Glühwürmchen-Technik auf Basis des Absorptionskoeffizienten | |
DE102022131760A1 (de) | Modellgenerierungsverfahren, modellgenerierungsprogramm, modellgenerierungsvorrichtung und datenverarbeitungsvorrichtung | |
DE69328596T2 (de) | Optimierung eines Neuralnetzwerks mit Vorwärtskopplung | |
DE112022002063T5 (de) | Modul und verfahren zur assoziation von objektverfolgungsdaten | |
DE102021114350A1 (de) | Verfahren und Vorrichtung zur faltungsfreien Bildverarbeitung | |
DE112020006088T5 (de) | Computerimplementiertes verfahren zum umwandeln eines eingangsbildes in ein ausgangsbild basierend auf einem referenzbild | |
DE112020001625T5 (de) | Bildsuchsystem und Bildsuchverfahren |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06K0009600000 Ipc: G06V0030200000 |
|
R081 | Change of applicant/patentee |
Owner name: MERATIVE US L.P. (N.D.GES.D.STAATES DELAWARE),, US Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, N.Y., US Owner name: GUERBET, FR Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION, ARMONK, N.Y., US |
|
R082 | Change of representative |
Representative=s name: MEISSNER BOLTE PATENTANWAELTE RECHTSANWAELTE P, DE |
|
R081 | Change of applicant/patentee |
Owner name: GUERBET, FR Free format text: FORMER OWNER: MERATIVE US L.P. (N.D.GES.D.STAATES DELAWARE), ANN ARBOR, MI, US |