DE60124598T2 - Verfahren und System zur Bestimmung der Orientierung eines Microarrays - Google Patents

Verfahren und System zur Bestimmung der Orientierung eines Microarrays Download PDF

Info

Publication number
DE60124598T2
DE60124598T2 DE60124598T DE60124598T DE60124598T2 DE 60124598 T2 DE60124598 T2 DE 60124598T2 DE 60124598 T DE60124598 T DE 60124598T DE 60124598 T DE60124598 T DE 60124598T DE 60124598 T2 DE60124598 T2 DE 60124598T2
Authority
DE
Germany
Prior art keywords
feature
array
features
pixels
pixel
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.)
Expired - Fee Related
Application number
DE60124598T
Other languages
English (en)
Other versions
DE60124598D1 (de
Inventor
Zohar H. Yakhini
Cynthia Y. Enderwick
Glenda C. Redwood City Delenstarr
Paul K. Wolber
Nicholas M. Sampas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US09/589,046 external-priority patent/US6591196B1/en
Application filed by Agilent Technologies Inc filed Critical Agilent Technologies Inc
Application granted granted Critical
Publication of DE60124598D1 publication Critical patent/DE60124598D1/de
Publication of DE60124598T2 publication Critical patent/DE60124598T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20068Projection on vertical or horizontal image axis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30072Microarray; Biochip, DNA array; Well plate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/04Recognition of patterns in DNA microarrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf die Auswertung der Orientierung eines molekularen Arrays, beispielsweise zum Verarbeiten eines gescannten bzw. abgetasteten Bildes eines molekularen Arrays, um die Regionen des Bildes, die Merkmalen des molekularen Arrays entsprechen, zu indexieren und um Daten aus indexierten Positionen in dem gescannten Bild, die optischen oder radiometrischen Signalen entsprechen, die von Merkmalen des molekularen Arrays herrühren, zu extrahieren.
  • Molekulare Arrays werden verbreitet verwendet und immer wichtigere Werkzeuge für eine schnelle Hybridisierungsanalyse von Probenlösungen gegen Hunderte oder Tausende von präzise geordneten und positionierten Merkmalen, die unterschiedliche Molekültypen innerhalb der molekularen Arrays enthalten. Molekulare Arrays werden normalerweise durch Synthetisieren oder Anbringen einer großen Anzahl molekularer Spezies an ein chemisch vorbereitetes Substrat, wie z. B. Silizium, Glas oder Kunststoff, vorbereitet. Jedes Merkmal oder Element innerhalb des molekularen Arrays ist als eine kleine, regelmäßig geformte Region auf der Oberfläche des Substrats definiert. Die Merkmale sind in einem regelmäßigen Muster angeordnet. Jedes Merkmal innerhalb des molekularen Arrays kann eine unterschiedliche molekulare Spezies enthalten, und die molekularen Spezies innerhalb eines gegebenen Merkmals können von den molekularen Spezies innerhalb der verbleibenden Merkmale des molekularen Arrays abweichen. Bei einem Typ eines Hybridisierungsexperiments wird eine Probelösung, die radioaktiv, fluoreszierend oder chemolumineszent etikettierte Moleküle enthält, an die Oberfläche des molekularen Arrays angebracht. Bestimmte der etikettierten Moleküle in der Probenlösung können sich spezifisch an eine oder mehrere der unterschiedlichen molekularen Spezies binden oder mit denselben hybridisieren, die zusammen das molekulare Array bilden. Nach der Hybridisierung wird die Probenlösung beseitigt durch Waschen der Oberfläche des molekularen Arrays mit einer Pufferlösung, und das molekulare Array wird dann durch radiometrische oder optische Verfahren analysiert, um zu bestimmen, an welche spezifischen Merkmale des molekularen Arrays die etikettierten Moleküle gebunden sind. Somit kann bei einem einzigen Experiment eine Lösung aus etikettierten Molekülen im Hinblick auf das Binden an Hunderte oder Tausende von unterschiedlichen molekularen Spezies geprüft werden, die zusammen das molekulare Array bilden. Molekulare Arrays enthalten allgemein Oligonukleotide oder komplementäre Desoxyribonukleinsäure-Moleküle („cDNA"-Moleküle), an die sich etikettierte Desoxyribonukleinsäure-(„DNA") und Ribonukleinsäure-(„RNA"-)Moleküle über eine sequenzspezifische Hybridisierung binden.
  • Im Allgemeinen erzeugt eine radiometrische oder optische Analyse des molekularen Arrays ein abgetastetes Bild, das aus einer zweidimensionalen Matrix oder einem Gitter aus Pixeln besteht, wobei jedes Pixel einen oder mehrere Intensitätswerte aufweist, die einem oder mehreren Signalen entsprechen. Abgetastete Bilder werden üblicherweise elektronisch erzeugt durch optische oder radiometrische Abtastvorrichtungen bzw. Scanner, und die resultierende zweidimensionale Matrix aus Pixeln wird in einem Computerspeicher oder auf einer nicht-flüchtigen Speichervorrichtung gespeichert. Alternativ können analoge Analyseverfahren, wie z. B. Photographie, verwendet werden, um kontinuierliche Bilder eines molekularen Arrays zu erzeugen, die dann durch eine Abtastvorrichtung digitalisiert werden können und in einem Computerspeicher oder in einer Computerspeichervorrichtung gespeichert werden können.
  • Eisen M: „ScanAlyze – User Manual" Stanford University, 14 July 1999 XP002161841 offenbart die Funktionsweise eines Programms zur Analyse von DNA-Mikroarraybildern. Das ScanAlyze-Programm liefert eine interaktive graphische Umgebung zum Durchführen dieses Prozesses.
  • Die US 5,001,766 beschreibt ein Verfahren und eine Vorrichtung zum Bestimmen eines vorherrschenden Orientierungswinkels eines Bildes bezüglich eines Referenzwinkels. Es wird eine Datei von Bildelementen erzeugt, die das Bild bezüglich des Referenzwinkels zeigt. Die Bildelemente werden auf eine Mehrzahl von zusammenhängenden Segmenten von imaginären Linien in ausgewählten Winkeln über die Datei hinweg projiziert. Jede imaginäre Linie ist senkrecht zu ihrer zugeordneten Projektionsrichtung. Die Anzahl von Bildelementen, die bei jeder Projektion in die Segmente fallen, wird gezählt. Eine Verstärkungsfunktion wird auf die Segmentzählungen jeder Projektion angewendet. Die Projektion, die den größten Wert der Verstärkungsfunktion erzeugt, definiert den Orientierungswinkel des Bildes. Die Position eines Dokumentenscanners oder des Dokuments selbst kann gedreht werden, um den erfassten Versatz zu kompensieren.
  • 1 zeigt eine verallgemeinerte Darstellung eines molekularen Arrays. Scheibenförmige Merkmale des molekularen Arrays, wie z. B. Merkmal 101, sind auf der Oberfläche des molekularen Arrays in Zeilen und Spalten angeordnet, die zusammen eine zweidimensionale Matrix oder ein Gitter bilden. Merkmale bei alternativen Typen von molekularen Arrays können angeordnet sein, um die Oberfläche des molekularen Arrays bei größeren Dichten abzudecken, wie z. B. durch Versetzen der Merkmale in benachbarten Zeilen, um enger gepackte Anordnungen der Merkmale zu erzeugen. Eine radiometrische oder optische Analyse eines molekularen Arrays, nachfolgend zu einem Hybridisierungsexperiment, führt zu einer zweidimensionalen Matrix oder einem Gitter aus Pixeln. 2 stellt das zweidimensionale Gitter aus Pixeln in einem quadratischen Bereich des abgetasteten Bildes dar, das Merkmal 101 aus 1 umfasst. In 2 weisen Pixel Intensitätswerte im Bereich von 0 bis 9 auf. Intensitätswerte aller Pixel ungleich 0 sind in 2 als einzelne Stellen innerhalb des Pixels gezeigt. Die Pixel ungleich 0 dieses abgetasteten Bildes, die das Merkmal 101 aus 1 darstellen, belegen eine ungefähr scheibenförmige Region, die der Form des Merkmals entspricht. Die Pixel in einer Region, die ein Merkmal umgibt, weisen allgemein niedrige oder 0-Intensitätswerte auf, aufgrund einer Abwesenheit von begrenzten signalerzeugenden radioaktiven, fluoreszierenden oder chemolumineszierenden Etikettenmolekülen auf. Hintergrundsignale jedoch, wie z. B. das Hintergrundsignal, das durch das Nicht-Null-Pixel 202 dargestellt ist, können aus einer nicht-spezifischen Bindung von etikettierten Molekülen aufgrund einer Ungenauigkeit bei der Vorbereitung von molekularen Arrays und/oder einer Ungenauigkeit bei der Hybridisierung und dem Waschen von molekularen Arrays entstehen, und können ebenfalls aus einer Ungenauigkeit beim optischen oder radiometrischen Abtasten und durch verschiedene andere Fehlerquellen entstehen, die von dem Analysetyp abhängen können, der zum Erzeugen des abgetasteten Bildes verwendet wird. Ein zusätzliches Hintergrundsignal kann Verunreinigungen in der Oberfläche des molekularen Arrays oder in den Probenlösungen zugeordnet sein, denen das molekulare Array ausgesetzt ist. Zusätzlich dazu können Pixel innerhalb des scheibenförmigen Bildes eines Merkmals, wie z. B. Pixel 204, 0-Werte aufweisen oder können Intensitätswerte außerhalb des Bereichs der erwarteten Intensitätswerte für ein Merkmal aufweisen. Somit können abgetastete Bilder von Merkmalen eines molekularen Arrays häufig Rauschen und Variationen zeigen und können bedeutend von dem idealisierten abgetasteten Bild abweichen, das in 1 gezeigt ist.
  • 3 stellt eine Indexierung von abgetasteten Bildern dar, die aus einem molekularen erzeugt Array sind. Ein Satz aus imaginären horizontalen und vertikalen Gitterlinien, wie z. B. der horizontalen Gitterlinie 301, ist so angeordnet, dass die Schnittpunkte von vertikalen und horizontalen Gitterlinien den Mittelpunkten der Merkmale entsprechen. Die imaginären Gitterlinien richten ein zweidimensionales Indexgitter zum Indexieren der Merkmale ein. Somit kann z. B. Merkmal 302 durch die Indizes (0, 0) spezifiziert sein. Für alternative Anordnungen von Merkmalen, wie z. B. die enger gepackten Anordnungen, die oben erwähnt wurden, kann ein etwas komplizierteres Indexierungssystem verwendet werden. Zum Beispiel können Merkmalspositionen in ungerade indexierten Zeilen, die einen bestimmten Spaltenindex aufweisen, als physisch horizontal versetzt von den Merkmalspositionen verstanden werden, die den selben Spaltenindex in der gerade indexierten Zeile aufweisen. Solche horizontalen Versätze treten z. B. in hexagonalen, engst gepackten Merkmalsarrays auf.
  • Um das abgetastete Bild zu interpretieren, das aus einer optischen oder radiometrischen Analyse eines molekularen Arrays resultiert, muss das abgetastete Bild verarbeitet werden zum: (1) Indexieren der Positionen von Merkmalen innerhalb des abgetasteten Bildes; (2) Extrahieren von Daten aus den Merkmalen und Bestimmen der Größen der Hintergrundsignale; (3) Berechnen, für jedes Signal, von Hintergrund-subtrahierten Größen für jedes Merkmal; (4) Normieren von Signalen, die aus unterschiedlichen Analysetypen erzeugt sind, wie z. B. Farbstoffnormierung von optischen Abtastungen, die bei unterschiedlichen Lichtwellenlängen ausgeführt wird, zum Normieren unterschiedlicher Antwortkurven, die durch Chromophoren bei unterschiedlichen Wellenlängen erzeugt werden; und (5) Bestimmen der Verhältnisse von Hintergrund-subtrahierten und normierten Signalen für jedes Merkmal, während auch ein statistisches Mittel der Variabilität der Verhältnisse oder Konfidenzintervalle bestimmt wird, die auf die Verteilung der Signalverhältnisse über einen mittleren Signalverhältniswert bezogen sind. Diese verschiedenen Schritte beim Verarbeiten von abgetasteten Bildern, die als Ergebnis einer optischen oder radiometrischen Analyse von molekularen Arrays erzeugt werden, bilden zusammen einen Gesamtprozess, der Merkmalsextraktion genannt wird.
  • Die vorliegende Erfindung schafft eine verbesserte Analyse eines molekularen Arrays.
  • Gemäß einem Aspekt der vorliegenden Erfindung wird ein Verfahren gemäß Anspruch 1 zum Auswerten einer Orientierung eines molekularen Arrays geschaffen, das Merkmale aufweist, die in einem Muster angeordnet sind.
  • Gemäß einem anderen Aspekt der vorliegenden Erfindung wird ein System gemäß Anspruch 7 zum Auswerten einer Orientierung eines molekularen Arrays geschaffen, das Merkmale aufweist, die in einem Muster angeordnet sind.
  • Das bevorzugte Ausführungsbeispiel kann eine automatisierte Merkmalsextraktion schaffen, die enorme Zeit- und Kosten-Einsparungen für das Verwenden von molekularen Arrays für eine chemische und biologische Analyse erzeugen kann. Es kann ferner Inkonsistenzen beseitigen, die durch einen Benutzerfehler verursacht werden, und kann die Reproduzierbarkeit und Objektivität einer Merkmalsextraktion bedeutend erhöhen.
  • Bei dem bevorzugten Ausführungsbeispiel wird ein Verfahren geschaffen zum Bewerten einer tatsächlichen Orientierung eines molekularen Arrays, das Merkmale aufweist, die in einem Muster angeordnet sein können (z. B. auf einem geradlinigen Gitter). Bei diesem Verfahren werden ein oder mehrere Bilder des molekularen Arrays erhalten. Solche Bilder können durch Abtasten des molekularen Arrays, um Datensignale zu bestimmen, die aus diskreten Positionen auf einer Oberfläche des molekularen Arrays entstammen. oder durch andere Mittel erzeugt werden. Das Bild umfasst ein Muster von Pixeln, wobei jedes Pixel einen oder mehrere Intensitätswerte aufweist, die einem oder mehreren Signalen entsprechen. Intensitätsprofile werden durch Projektion der Intensitätswerte der Pixel des Bildes berechnet. Dieses tatsächliche Ergebnis wird mit einem erwarteten Ergebnis verglichen, das erhalten werden würde, wenn das Pixelmuster eine vorbestimmte Orientierung auf dem Array hätte (z. B. überlagert über zumindest einem Teil des Arrays). Eine tatsächliche Arrayorientierung kann basierend auf den Ergebnissen des Vergleichs bewertet werden. Wenn z. B. mehr als eine vorbestimmte Differenz (eine „Toleranz") zwischen dem tatsächlichen und dem erwarteten Ergebnis vorliegt, könnte dies als eine Anzeige genommen werden, dass das Array keine erwartete Orientierung in einer Abtastvorrichtung aufweist. Vor dem Versuchen, die Bilddaten weiter zu interpretieren, kann die Orientierung des zweiten Musters an dem Array geändert werden und der Vergleichsschritt wiederholt werden, und dieser Vergleichs- und Zweitmuster-Neuorientierungs-Schritt können bei weiteren Iterationen so oft wie nötig wiederholt werden, bis die tatsächlichen und erwarteten Ergebnisse innerhalb der vorbestimmten Differenz sind (wobei an diesem Punkt die tatsächliche und erwartete Orientierung gleich sein sollten, innerhalb der vorbestimmten Toleranz). Je größer die Punkte auf dem zweiten (Pixel-)Muster, desto größer die Genauigkeit der Orientierungsinformationen, die allgemein aus dem Vergleich erhalten werden können.
  • Bei einer bestimmten Implementierung, bei der die Merkmale des molekularen Arrays auf einem geradlinigen Gitter angeordnet sind, kann das zweite (Pixel-)Muster ein geradliniges Gitter aus Zeilen und Spalten sein, die auf den Zeilen und Spalten des geradlinigen Gitters des Arrays liegen würden, wenn das zweite (Pixel-)Muster und das Array überlagert wären. In diesem Fall dann kann die Berechnung eine Funktion sein, die ausgeführt der Zeilen und Spalten des zweiten (Pixel-)Musters entlang wird (z. B. zum Erhalten von Zeilen- und Spalten-Vektoren). Das tatsächliche Ergebnis kann mit dem erwarteten Ergebnis quantitativ oder nur qualitativ verglichen werden. Zum Beispiel kann der Vergleich in dem Fall von Zeilen- und Spalten-Vektoren ein Vergleich der tatsächlichen Vektorformen mit den erwarteten Vektorformen sein, wenn das zweite (Pixel-)Muster die vorbestimmte Orientierung an dem Array aufweisen würde (wobei die vorbestimmte Orientierung, z. B. Zeilen und Spalten des zweiten (Pixel-)Musters, über Zeilen und Spalten von Merkmalen ausgerichtet sind).
  • Üblicherweise ist die Orientierung, auf die Bezug genommen wird, eine Drehorientierung (d. h. eine Drehorientierung um eine Achse, die normal zu dem Array ist), obwohl die Orientierung eine oder mehrere Positionen im Raum sein könnte (z. B. Seitwärts- oder Auf- und Ab-Verschiebung). Bei jedem Aspekt des Verfahrens können die Rechen- und Vergleichs-Schritte optional durch Ändern der Orientierung des Musters auf dem Bild wiederholt werden, bis eine Übereinstimmung (entweder exakt oder innerhalb einer vorbestimmten Toleranz) zwischen dem tatsächlichen und erwarteten Ergebnis erhalten wird. Der Unterschied zwischen der Orientierung des zweiten Musters auf dem Bild und der vorbestimmten Orientierung auf dem Array, wenn die Übereinstimmung erhalten wird, kann bei dem Bewertungsschritt als ein Mittel zur Orientierung des Arrays verwendet werden. Alternativ (oder auch zusätzlich) kann ein gegebenes tatsächliches Ergebnis mit unterschiedlichen erwarteten Ergebnissen verglichen werden, basierend auf unterschiedlichen vorbestimmten Orientierungen des zweiten Musters auf dem Array, bis die Übereinstimmung erhalten wird. Informationen über die Orientierung des Arrays können dann bei der Extrahierung von Daten aus dem Array verwendet werden.
  • Es wird in der gesamten vorliegenden Anmeldung ebenfalls einleuchten, dass, wo Schritte derart bezeichnet sind, dass sie durch ein Computerprogramm implementiert werden, jegliche solche Schritte auch durch Hardware oder Hardware/Software-Kombinationen implementiert werden können, die die Schritte ausführen können. Ferner ist ein „Bild" in Relation zu einem Array ein Ausdruck, der Daten an der Position der Merkmale umfasst, unabhängig davon, wie solche Daten erhalten wurden (z. B. durch Abtasten mit einem Laserstrahl oder durch andere Mittel). Ferner, wo auch immer auf eine Funktion Bezug genommen wird, kann dies z. B. eine Summierung sein. Auf ähnliche Weise, egal wo auf eine Summierung Bezug genommen wird, können andere geeignete Funktionen als eine einfache Summierung verwendet werden. Zum Beispiel könnte eine gewichtete Summierung an jenen Positionen an dem zweiten Muster verwendet werden, die auf Referenzmarkierungen oder Merkmalen mit erwarteten stärkeren Signalen (wie z. B. Steuermerkmalen) relativ zu anderen Merkmalen überlagert sind, wenn das zweite Muster und Array überlagert sind. Wenn Referenzmarkierungen vorhanden sind, wird darauf hingewiesen, dass dieselben erfasst werden können und eine Orientierung des Arrays (wie z. B. eine Drehorientierung) basierend auf den erfassten Positionen der Referenzmarkierungen bewertet werden kann. Zum Beispiel kann eine ungefähre Anzeige einer Arrayorientierung auf den erfassten Positionen der Referenzmarkierungen basieren, gefolgt von einer weitere Bewertung einer verfeinerten Arrayorientierung unter Verwendung des oben beschriebenen Vergleichs- und Neuorientierungs-Verfahrens, derart, dass weniger Iterationen des Vergleichs- und des zweiten Muster-Neuorientierungs-Verfahrens erforderlich sein können.
  • Ein Ausführungsbeispiel der vorliegenden Erfindung wird nachfolgend beispielhaft Bezug nehmend auf die beiliegenden Zeichnungen beschrieben, in denen:
  • 1 eine verallgemeinerte Darstellung eines molekularen Arrays zeigt.
  • 2 ein zweidimensionales Pixelgitter in einem quadratischen Bereich eines abgetasteten Bildes darstellt.
  • 3 eine Indexierung eines abgetasteten Bildes darstellt, erzeugt aus einem molekularen Array.
  • 4 einen anfänglichen Schritt bei der Bestimmung der Positionen von Eckmerkmalen eines abgetasteten Bildes eines molekularen Arrays darstellt.
  • 5 eine numerische Berechnung eines Abschnitts des Spaltenvektors darstellt, der einem einzelnen Merkmal entspricht.
  • 6A den anfänglichen Spaltenvektor zeigt, berechnet aus einem Pixelgitter.
  • 6B den Spaltenvektor aus 6A nach dem Glätten zeigt.
  • 7 graphisch den anfänglichen Spaltenvektor aus 6A darstellt.
  • 8 graphisch den geglätteten Spaltenvektor aus 6B darstellt.
  • 9 ein Gauss-Filter darstellt, das an einen anfänglichen Spaltenvektor angewendet wird, um einen geglätteten Spaltenvektor zu erzeugen.
  • 10 bis 12 die Effekte der Drehung eines Merkmalskoordinatengitters im Hinblick auf ein Pixelgitter darstellen.
  • 13 eine Rechentechnik zum Drehen eines Merkmalskoordinatengitters im Hinblick auf ein Pixelgitter darstellt, so dass die zwei Gitter ausgerichtet sind.
  • 14 eine Technik darstellt zum Bestimmen von Eckmerkmalspositionen in Pixelkoordinaten.
  • 15 eine Eckmerkmalsschätztechnik darstellt, die besser geeignet für dichtgepackte molekulare Arrays ist.
  • 16 bis 17 ein Verfahren zur Schwellenbestimmung für eine Tropfen-Analyse darstellen.
  • 18 und 19 eine zweite Technik zum Auswählen einer Schwelle für eine Tropfen-Analyse darstellen.
  • 20 das Schwerpunktpixel des größten Blobs bzw.
  • Tupfens bzw. Tropfens darstellt, der in 19 gezeigt ist.
  • 21 ein anfängliches Merkmalskoordinatengitter darstellt, das das abgetastete Bild eines molekularen Arrays überlagert.
  • 22 eine Linear-Regressionsanalyse darstellt.
  • 23A ein kleines 9×12-Molekulararray zeigt.
  • 23B eine starke Matrix zeigt, die dem 9×12-Molekulararray aus 23A entspricht.
  • 24 eine pseudo-inverse starke Matrix zeigt, berechnet aus der starken Matrix, gezeigt in 23B.
  • 25 eine Schwerpunktmatrix zeigt, die die Koordinaten der Schwerpunkte der starken Merkmale der 9×12-Matrix umfasst, die in 23A gezeigt ist.
  • 26 eine Koeffizientenmatrix zeigt, berechnet durch Multiplizieren der Transponierten der Pseudo-Invers-Matrix (24) mit der Schwerpunktmatrix (25).
  • 27A bis 27B die Einpasspositionsmatrix zeigen, die durch Multiplizieren der Transponierten einer Merkmal-Indizes-Matrix mit der Koeffizientenmatrix berechnet wird, gezeigt in 26.
  • 28 eine Technik für eine Außenseiter-Zurückweisung darstellt.
  • 29 die Grünsignalintensitätswerte für ein Merkmal zeigt.
  • 30 die Rotintensitätswerte für ein Merkmal zeigt.
  • 31 eine Anzahl von lokalen Hintergründen darstellt.
  • 32 ein Minimum-Merkmal darstellt.
  • 33 ein Flusssteuerdiagramm ist für die Routine „verfeinere Merkmalskoordinaten".
  • 34 ein Flusssteuerdiagramm der Routine ist „Bitmap vorbereiten".
  • 35 ein Flusssteuerdiagramm für die Routine ist „Äquivalenzen finden".
  • 36 ein Flusssteuerdiagramm ist für die Routine „Äquivalenz einstellen".
  • 37 ein Flusssteuerdiagramm ist für die Routine „Tropfen finden".
  • 38 ein Flusssteuerdiagramm ist für die Routine „Merkmalskoordinaten einstellen".
  • 39 das Flusssteuerdiagramm der Routine „Orientierung einrichten" ist, die eine korrekte Orientierung für ein anfängliches Indexierungsgitter bestimmt, wie oben Bezug nehmend auf 913 erörtert wurde.
  • 40 ein Flusssteuerdiagramm ist für die Routine „Ecken einrichten".
  • 41 ein Flusssteuerdiagramm ist für die Routine „Gitter einrichten".
  • Wenn ein Element so angezeigt ist, dass es „entfernt" von einem anderen ist, wird dies so betrachtet, dass die zwei Elemente zumindest in unterschiedlichen Gebäuden sind und zumindest eine Meile, zehn Meilen oder zumindest einhundert Meilen entfernt sein können. Das „Kommunizieren" von Informationen bezeichnet das Übertragen der Daten, die diese Informationen darstellen, über einen geeigneten Kommunikationskanal (z. B. ein privates oder öffentliches Netz). Das „Weiterleiten" eines Elements bezieht sich auf jegliches Mittel, dieses Element von einer Position zu der nächsten zu befördern, egal ob durch physisches Transportieren des Elements, und umfasst zumindest in dem Fall von Daten das physische Transportieren eines Mediums, das die Daten trägt, oder das Kommunizieren der Daten. Ein Array-„Paket" kann das Array plus ausschließlich ein Substrat sein, auf dem das Array aufgebracht ist, obwohl das Paket andere Merkmale umfassen kann (wie z. B. ein Gehäuse mit einer Kammer). Ein „Satz" oder ein „Teilsatz" kann eines oder mehrere Glieder aufweisen (z. B. ein oder mehrere Merkmale). Die Bezugnahme auf ein einzelnes Element umfasst die Möglichkeit, dass mehrere desselben Elements vorhanden sind.
  • Das beschriebene Verfahren richtet sich auf eine automatisierte Merkmalsextraktion aus gescannten bzw. abgetasteten Bildern von molekularen Arrays. Eine automatisierte Merkmalsextraktion umfasst: (1) eine Bestimmung der ungefähren Positionen der Merkmale z. B. durch Bestimmen der Positionen von Eckmerkmalen innerhalb des abgetasteten Bildes; (2) die Erzeugung eines anfänglichen Koordinatensystems für das abgetastete Bild, z. B. durch Verwenden der Positionen von Eckmerkmalen oder durch alternative Mittel, was die Verwendung einer mechanisch präzisen Positionierung von Merkmalen auf dem molekularen Array und des Molekularen Arrays auf der Erfassungsvorrichtung umfasst, und Verwenden von Justiermarken-Referenzmarkierungen, die in das molekulare Array eingelagert und unabhängig erfasst sind, aber in räumlicher Ausrichtung mit der Erfassung von chemischen Merkmalen, und die Verfeinerung des anfänglichen Koordinatensystems, um ein verfeinertes Koordinatensystem zu erzeugen; (3) die Bestimmung von zuverlässigen Regionen des abgetasteten Bildes, aus denen Signaldaten extrahiert werden sollen; (4) und die Extraktion von Signaldaten aus den Merkmalen und lokalen Hintergrundregionen des abgetasteten Bildes des molekularen Arrays. Jede dieser vier Komponenten einer automatisierten Merkmalsextraktion wird nachfolgend zuerst in vier Teilabschnitten erörtert unter Verwendung von dargestellten Beispielen und mathematischen Ausdrücken. Nach den ersten vier Teilabschnitten wird eine darstellende Implementierung eines automatisierten Merkmalsextraktionssystems in einem fünften Teilabschnitt bereitgestellt. Obwohl die oben aufgelisteten vier Komponenten im Hinblick auf eine kombinierte, umfassende Merkmalsextraktionsimplementierung beschrieben sind, kann jede Komponente auch separat an einzelne Datenextraktions- und Verarbeitungs-Probleme angewendet werden.
  • Es sollte darauf hingewiesen werden, dass der Ausdruck „Signal" in der nachfolgenden Erörterung verwendet wird, um die Daten anzuzeigen, die aus Merkmalen eines molekularen Arrays durch einen bestimmten Analysetyp gesammelt werden. Wenn z. B. Moleküle, die sich an Merkmale binden, mit Chromophoren etikettiert sind und optische Abtastvorgänge bei Rot- und Grün-Lichtwellenlängen verwendet werden, um Daten aus dem molekularen Array zu extrahieren, dann können die Daten, die während der optischen Abtastung bei der Grün-Wellenlänge gesammelt werden, als das Grünsignal betrachtet werden und Daten, die während der optischen Abtastung bei der Rot-Wellenlänge gesammelt werden, können als das Rotsignal betrachtet werden. Signale zusätzlicher Farben können unter Verwendung zusätzlicher Farbstoffsätze gesammelt werden. Die praktische Grenze für die Anzahl von Signaltypen oder Farben, die gesammelt werden können, ist die Anzahl von Emissionsspektren, die unabhängig beobachtet werden können. Unter Verwendung bestehender Techniken können bis zu zwölf Emissionsspektren unabhängig beobachtet werden. Durch Verwenden von Kombinationen von Schmalbandfarbstoffen, wie z. B. Quantenpunkten, können möglicherweise mehr als zwölf Emissionsspektren unabhängig beobachtet werden. Ein anderer Signaltyp kann durch radiometrische Analyse des molekularen Arrays gesammelt werden, für eine lokalisierte Emission von einer Art von Strahlung mit minimalen Energiepegeln zur Erfassung.
  • Der Ausdruck „Signal" wird ebenfalls verwendet, um auf Daten Bezug zu nehmen, die aus einem bestimmten Merkmal unter Verwendung eines bestimmten Analysetyps extrahiert werden. Es wird aus dem Kontext deutlich, in dem der Ausdruck „Signal" nachfolgend verwendet wird, ob sich „Signal" auf einen kumulativen Datensatz bezieht, der aus einem molekularen Array über einen bestimmten Analysetyp gesammelt wird, oder auf Daten, die aus einem bestimmten Merkmal eines molekularen Arrays über einen bestimmten Analysetyp gesammelt werden.
  • Ort der Positionen der Eckmerkmale
  • 4 stellt einen anfänglichen Schritt bei der Bestimmung der Positionen von Eckmerkmalen eines abgetasteten Bildes eines molekularen Arrays dar. Das abgetastete Bild des molekularen Arrays 402 ist in 4 als ein Pixelgitter dargestellt, wobei die Pixel höherer Intensität Merkmalen entsprechen, die als dunkle Kreise dargestellt sind, wie z. B. die scheibenförmige Gruppe aus Pixeln 404, die einem Eckmerkmal entsprechen. Die Intensitätswerte der Pixel werden horizontal projiziert, um einen Zeilenvektor 406 zu bilden, und werden vertikal projiziert, um einen Spaltenvektor 408 zu erzeugen. Der Zeilenvektor 406 ist als ein zweidimensionaler Graph dargestellt, wo der gesamte proji zierte Intensitätswert in der vertikalen Richtung 409 aufgezeichnet ist und die Position jeder Zeile aus Pixeln in der horizontalen Richtung 410 aufgezeichnet ist. Die Projektion der Intensitätswerte der Pixel entlang der Zeilen erzeugt einen wellenartigen Graph 412, bei dem die Spitzen Pixelzeilen entsprechen, die die Mitten der Merkmale umfassen, und die Täler Pixelzeilen zwischen Merkmalen entsprechen. Das Summieren der Intensitätswerte von Pixeln entlang Spalten erzeugt analog den Spaltenvektor 408.
  • 5 stellt eine numerische Berechnung eines Abschnitts des Spaltenvektors dar, der einem einzelnen Merkmal entspricht. Ein Spaltenvektor wird für alle Merkmale berechnet, wie in dem obigen Absatz beschrieben wurde, und enthält eine Anzahl von Spitzen. Der Einfachheit der Darstellung halber jedoch zeigt 5 Pixelintensitätswerte für ein einzelnes Merkmal und das Verfahren zur Spaltenvektorberechnung erzeugt daher eine einzelne Spitze, die dem einzelnen Merkmal entspricht. 5 zeigt ein Gitter aus Pixeln 502, das eine quadratische Region eines abgetasteten Bildes darstellt, das ein einzelnes Merkmal umfasst. Die Intensitätswerte aller Pixel in jeder Spalte des Gitters aus Pixeln 502 werden summiert, und die Summen werden in das lineare Array 504 eingetragen. Zum Beispiel umfasst Spalte 506 vier Pixel ungleich 0 mit Intensitätswerten von 1,1,2 und 1. Somit erzeugt das Summieren aller Intensitätswerte der Pixel in der Spalte 506 die Summe 5 (508 in 5) in dem dritten Element des Arrays 504, das der Spalte 506 entspricht. Es wird darauf hingewiesen, dass in 5 und in allen nachfolgenden Pixeldarstellungen 0-Intensitätswerte nicht ausdrücklich gezeigt sind und Pixel mit einem Intensitätswert von „0" als leere oder ungefüllte Quadrate gezeigt sind, wie z. B. Pixel 510. Es wird auch darauf hingewiesen, dass andere Operationen, wie z. B. ein Mitteln, als eine Alternative zum Summieren von Zeilen und Spalten aus Pixeln ausgeführt werden können, um die Zeilen- und Spalten-Vektoren zu erzeugen.
  • Als Nächstes können die Zeilen- und Spalten-Vektoren (406 und 408 in 4) rechentechnisch geglättet werden, z. B. durch Anwenden eines Gauss-Filters. Der Glättungsprozess ist in 69 unter Verwendung des Beispiels aus 5 dargestellt. Wie bei 5 verwenden die 69 einen Ein-Spitzen-Spaltenvektor, der aus einem einzelnen Merkmal zum Zweck der Einfachheit der Darstellung berechnet ist. Im Allgemeinen wird der Glättungsprozess an Mehr-Spitzen-Zeilen- und -Spalten-Vektoren angewendet, wie z. B. jene, die in 4 dargestellt sind. 6A zeigt den anfänglichen Spaltenvektor, der aus dem Pixelgitter von 5 berechnet ist, wobei die Spaltenpositionen als die linke Spalte von 6A 602 gezeigt sind und die Summe der Intensitäten der Pixel in jeder Spalte in Spalte 604 gezeigt sind. Somit ist in 6A z. B. ersichtlich, dass die Summe der Intensitätswerte der Pixel in Spalte 14 (606 in 6) 169 ist (608 in 6). 6B zeigt den Spaltenvektor aus 6A nach dem Glätten. 7 stellt graphisch den anfänglichen Spaltenvektor aus 6A dar und 8 stellt graphisch den geglätteten Spaltenvektor aus 6B dar. In 7 und 8 stellen die vertikalen Achsen (702 und 802 in 7 bzw. 8) die Summe der Pixelintensitäten in einer Spalte dar, und die horizontalen Achsen (704 und 804 in 7 bzw. 8) stellen die Position der Spalten dar, gemessen in Pixeleinheiten. Beim Vergleichen von 7 mit 8 kann beobachtet werden, dass der Glättungsprozess die gelegentlichen scharfen Spitzen beseitigt oder glättet, wie z. B. Spitzen 706711 in 7.
  • 9 stellt ein Gauss-Filter dar, das an einen anfänglichen Spaltenvektor angewendet wird, um einen geglätteten Spaltenvektor zu erzeugen. Das Gauss-Filter ist eine diskrete Funktion mit Werten für einen Bereich von Pixelpositionen innerhalb eines Spalten- oder Zeilen-Vektors. Der Wert für die Summe von Pixelintensitäten bei Pixelposition 0 (902 in 9) ist 0,5, und der Wert der Gauss-Filterfunktion für Pixelpositionen 1 und –1 (904 und 906 in 9) ist jeweils 0,25. Dieses Gauss-Filter ist mit einem anfänglichen Spaltenvektor oder einem anfänglichen Zeilenvektor zusammengelegt, um einen glatten Spaltenvektor bzw. glatten Zeilenvektor zu erzeugen. Die Zusammenlegungsoperation für diskrete Funktionen umfasst das Überlagern der Mittelposition des Gauss-Filters an jeder Position oder jedem Wert in einem Zeilen- oder Spalten-Vektor und das Berechnen des geglätteten Zeilen- oder Spalten-Vektorwerts für diese Position durch Multiplizieren der Gauss-Filterfunktion mit dem Zeilen- bzw. Spalten-Vektor. Somit wird z. B. der Wert 4,75 (610 in 6B), der der Spaltenposition 2 entspricht (612 in 6B), durch Zentrieren des Gauss-Filters aus 9 über dem Wert erzeugt, der die Summe von Intensitäten für Spalte 2 (508 in 5) des anfänglichen Spaltenvektors (504 in 5) darstellt, und durch Multiplizieren der resultierenden Gauss-Filterfunktion und des anfänglichen Spaltenvektors. Da das Gauss-Filter 0 für alle Pixelpositionen außer –1,0 und 1 ist, erzeugt eine Multiplikation eines Gauss-Filters, zentriert an dem Element 508 des Spaltenvektors aus 5, das nachfolgende Ergebnis: 0,5·5 + 0,25·9 = 4,75. Viele andere Glättungsfiltertechniken können eingesetzt werden, einschließlich der Median-Filtertechnik, die nachfolgend erörtert wird.
  • In bestimmten Fällen können leichte Drehdiskrepanzen zwischen der Orientierung des geradlinigen Pixelgitters und der Orientierung des geradlinigen Koordinatengitters bestehen, das die Mitten von Merkmalen innerhalb des abgetasteten Bildes beschreibt und indexiert. Solche Diskrepanzen können entstehen, wenn die Zeilen und Spalten von Merkmalen des molekularen Arrays im Hinblick auf die horizontale und vertikale Achse der Abtastvorrichtung gedreht werden. 1012 stellen die Effekte der Drehung des Merkmalskoordinatengitters im Hinblick auf das Pixelgitter dar. In 10A sind das Pixelgitter und das Merkmalskoordinatengitter beide ausgerichtet, wodurch ein Spaltenvektor erzeugt wird, gezeigt in 10B, mit scharfen und getrennten Spitzen und Tälern bzw. Wannen. In 11A wird das Pixelgitter leicht entgegen dem Uhrzeigersinn im Hinblick auf das Merkmalsgitter gedreht, wodurch ein Spaltenvektor, gezeigt in 11B, mit relativ flachen Spitzen und Wannen erzeugt wird, da Pixel mit relativ hoher Intensität in jeder Spalte aus Pixeln auftreten. In 12A wird das Pixelgitter leicht im Uhrzeigersinn im Hinblick auf das Merkmalskoordinatengitter gedreht, wodurch ein Spaltenvektor, gezeigt in 12C, mit flachen Spitzen und Wannen erzeugt wird. Somit, um das Merkmalskoordinatengitter korrekt im Hinblick auf das Pixelgitter auszurichten, können Zeilen- und Spalten-Vektoren für einen Bereich von Drehungen des Merkmalsgitters im Hinblick auf das Pixelgitter berechnet werden, und die Drehung, die die Spalten- und Zeilen-Vektoren mit den unterschiedlichsten Spitzen und Wannen erzeugt, kann als die korrekte Orientierung des Merkmalskoordinatengitters im Hinblick auf das Pixelgitter bestimmt werden. Diese Technik muss nur eingesetzt werden, wenn die Drehdiskrepanz für ein geradliniges Array größer als θ ist, was wie folgt berechnet wird: sinθ ≈ 2S/Lwobei:
  • S
    = Beabstandung von Merkmalen in der x-Richtung
    L
    = Länge des molekularen Arrays in der y-Richtung
  • 13 stellt eine Rechentechnik zum Drehen des Merkmalskoordinatengitters im Hinblick auf das Pixelgitter dar. Unter Verwendung des Drehwinkels, der durch das Verfahren bestimmt wird, das in 1012 beschrieben ist, der in 13 durch das Symbol „θ" dargestellt ist, können Positionen innerhalb des abgetasteten Bildes bestimmt werden Bezug nehmend auf ein gedrehtes Pixelgitter durch Multiplizieren der Ursprungskoordinaten jedes Punktes mit einer Drehmatrix, um neue, transformierte Koordinaten für das gedrehte Pixelgitter gemäß der nachfolgenden Matrixgleichung zu erzeugen:
    Figure 00200001
  • Es können jedoch Bereiche innerhalb des neuen Koordinatenraums vorliegen, wie z. B. Bereich 1302, die nicht physischen Regionen innerhalb des abgetasteten Bildes entsprechen, und umgekehrt können Regionen in dem abgetasteten Originalbild vorliegen, wie z. B. Region 1304, die außerhalb des neuen, gedrehten Pixelkoordinatensystems liegen. Wenn der Drehwinkel klein ist, kann die Menge von nicht-überlappenden Regionen, wie z. B. Regionen 1302 und 1304, relativ unbedeutend sein und kann rechentechnisch berücksichtigt werden einfach durch Verringern der Abmessungen, in Pixeln, des gedrehten Koordinatensystems.
  • Bei nicht-geradlinigen Merkmalsanordnungen können ähnliche Techniken angewendet werden, um ein Indexierungsschema im Hinblick auf abgetastete Bilder der Oberfläche eines molekularen Arrays zu orientieren. Wenn z. B. die Merkmale in Kreisen ansteigender Radien von einem Mittelpunkt angeordnet sind, können die Radialvektoren bei verschiedenen Winkeln um ein festgelegtes Mittelmerkmal berechnet werden. Im Allgemeinen kann eine Orientierung, die summierte Intensitätsprofile liefert, die am nächsten idealisierten Intensitätsprofilen entspricht, für ein entsprechendes Indexierungsschema ausgewählt werden.
  • Um eine Eckmerkmalspositionsschätzung zu ermöglichen, können Eckmerkmale von molekularen Arrays hergestellt sein, um eine Steuersubstanz zu enthalten, die ein starkes Signal erzeugt, das als eine „positive Steuerung" bezeichnet wird, sowie eine andere Steuersubstanz, die ein schwaches Signal fast auf Hintergrundpegel erzeugt, das als „eine negative Steuerung" bezeichnet wird. Die geeignete Platzierung von positiver und negativer Steuerung in den Ecken liefert „weiche Justiermarken". Die Platzierung von Informationen für weiche Justiermarken ist in einer Entwurfsdatei gespei chert. Jedes molekulare Array kann einer Entwurfsdatei zugeordnet sein, auf die elektronisch zugegriffen werden kann und die den Sondentyp und Sondensequenzen für jede Merkmalsposition an dem Array kommentiert.
  • Ein alternatives Verfahren zum Bestimmen von Ecken eines Arrays verwendet die Entwurfsdatei, die einem molekularen Array zugeordnet ist, um einen Teilabschnitt des Arrays auszuwählen, an dem die Eckenanalyse ausgeführt werden soll. Zum Beispiel kann ein kleiner Teilabschnitt in der oberen linken Ecke eines molekularen Arrays ausgewählt werden, durch Abfragen der Entwurfsdatei, um eine Region mit einer gewünschten Anzahl von positiven Steuerungen und einer gewünschten Anzahl von negativen Steuerungen zu finden. Dieser Prozess kann dann für die untere rechte Ecke wiederholt werden. Eine Maske kann dann mit diesen zwei Teilabschnitten hergestellt werden, die in der korrekten Distanz voneinander gehalten sind, gemäß Informationen, die in der Entwurfsdatei gespeichert sind. Faltungen können dann in allen Richtungen ausgeführt werden, einschließlich in horizontalen, vertikalen, diagonalen und Dreh-Richtungen, unter Verwendung eines Algorithmus, wie z. B. eines Algorithmus zum Minimieren von kleinsten Quadraten, um den Bereich der Abtastung zu finden, der am besten mit dieser Maske übereinstimmt. Dieses Verfahren kann schneller sein als die oben erörterten Algorithmen, da die oben erörterten Algorithmen Berechnungen an dem gesamten Array ausführen. Zusätzlich dazu kann dieses Verfahren robuster im Hinblick auf große Signalspitzen in den Hintergrundregionen und andere Signalartefakte an dem molekularen Array sein. Wenn ein Bereich mit sehr großem Hintergrund oder einem anderen Arrayartefakt in der anfänglichen Maske vorhanden wäre, könnte eine akzeptable Lösung nicht durch die vorangehend erörterten Algorithmen erzeugt werden. Der gegenwärtige Algorithmus erfasst die Güte der Einpassung und wiederholt sich falls notwendig. Zum Beispiel können immer größere Teilabschnitte iterativ zur Verarbeitung ausgewählt werden, bis eine akzeptable Lösung gefunden ist.
  • Sobald das Pixelgitter und das Merkmalskoordinatengitter ausgerichtet sind, können die Positionen der Eckpixel aus den geglätteten Spalten- und Zeilen-Vektoren geschätzt werden. 14 stellt eine Technik zum Bestimmen von Eckmerkmalspositionen in Pixelkoordinaten dar. Unter der Annahme, dass der Vektor in 14 ein Spaltenvektor ist, kann dann die x-Koordinate 1402 der linken Eckmerkmale aus der Position der ersten Spitze in dem Spaltenvektor geschätzt werden, und die x-Koordinate, in Pixeln, der rechten Eckmerkmale 1404 kann aus der Position der letzten Spitze in dem Spaltenvektor geschätzt werden. Die y-Koordinaten der Eckmerkmale können auf ähnliche Weise aus dem geglätteten Zeilenvektor bestimmt werden.
  • Eine Spitzen-Suche wird unter Verwendung von Statistiken ausgeführt, die aus den geglätteten Zeilen- und Spalten-Vektoren gesammelt werden. Die erste ansteigende und abfallende Flanke werden verwendet, um die erste Spitze zu finden, während die letzte ansteigende und abfallende Flanke verwendet werden, um die letzte Spitze zu finden. Um diese Flanken zu lokalisieren, wird eine geeignete Schwelle verwendet. Diese Schwelle kann unter Verwendung von Statistiken der geglätteten Zeilen- und Spalten-Vektoren eingestellt sein, wie z. B. des Median, d. h. fünfzig Perzentil, oder anderer Perzentilwerte und einiger Mehrfacher der Standardabweichung. Zum Beispiel ist für Arrays mit relativ niedriger Dichte, bei denen der Gesamtbereich der Merkmale geringer ist als der Gesamtbereich des Hintergrunds, der Median eine gute Annäherung der Täler zwischen den Spitzen. Ein geeigneter Schwellenwert in diesem Fall wäre die Summe des Medians und einer Standardabweichung. Für Arrays mit höherer Dichte, bei denen sich das Verhältnis des Gesamtbereichs der Merkmale zu dem Gesamtbereich des Hintergrunds erhöht, kann das dreißigste Perzentil eine geeignetere Schätzung der Täler sein.
  • Zusätzliche Bildverarbeitungstechniken können eingesetzt werden, um verschiedene Probleme beim Finden der Eckmerkmale zu umgehen. Zum Beispiel können anormal helle oder dunkle Bereiche, die in die Abtastung aufgrund chemischer, biologischer oder elektrischer Anomalien eingebracht werden, den Eckenfindungsprozess verzerren. Diese hellen oder dunklen Bereiche können groß oder klein sein, wodurch schwer vorhersehbare Probleme für den Eckenfindealgorithmus erzeugt werden. Um die Auswirkung von Kleinbereichsanomalien zu verringern, kann ein Median-Filter an den Zeilen- und Spalten-Vektoren verwendet werden, mit einem Kernel bzw. Betriebssystemkern, der groß genug dimensioniert ist, um bedeutend große Spitzen zu beseitigen, aber klein genug ist, um zu ermöglichen, dass Spitzen, die Merkmalen entsprechen, verbleiben. Um die Auswirkung von Großbereichsanomalien zu verringern, kann eine Kastenskizzenanalyse oder eine ähnliche statistische Analyse verwendet werden, um anormal hohe oder niedrige Werte auf eine vernünftige Zahl einzustellen. Zum Beispiel können unter Verwendung des Kastenskizzenverfahrens die Grenzen der Whisker der Kastenskizze verwendet werden, um die Werte von Datenpunkten von geglätteten Zeilen- und Spalten-Vektoren zwischen einem Maximal- und Minimal-Wert einzuschränken. Statistiken zur Spitzenfindung können dann basierend auf den Beschränkter-Wert-Datenpunkten neu berechnet werden.
  • Ferner können Informationen über den Entwurf des Arrays in den Eckenfindeschritt integriert werden. Informationen, wie z. B. die Anzahl von Zeilen und Spalten von Merkmalen, die erwartete Merkmalsgröße und die Distanzen zwischen Merkmalen können verwendet werden, um die Eckenfindealgorithmen robuster zu machen. Spitzenfindealgorithmen können iteriert bzw. wiederholt werden, wobei jedes Mal der Schwellenwert verändert wird, bis die gefundenen Ecken die Entwurfsspezifikationen erfüllen. Zusätzlich dazu kann der Spitzenfindealgorithmus gründlicher gemacht werden, um verschiedene Anzahlen von Spitzen zu finden und um Kombinationen zu finden, die mit den Entwurfsinformationen kompatibel sind.
  • Die Technik, die in 14 dargestellt ist, ist besonders geeignet für gedruckte molekulare Arrays, bei denen Merkmale relativ weit voneinander innerhalb des molekularen Arrays beabstandet sind, wie in 1 gezeigt ist. Bei anderen Typen von molekularen Arrays können die Merkmale viel dichter gepackt sein. Bei dicht gepackten Arrays mit plattenförmigen Merkmalen, wobei Merkmale zusammen in einer zweidimensionalen Version des bekannten engsten Packgitters gepackt sind, bei dem Orangen in Verkaufsauslagen gestapelt sind, kann jedes interne Merkmal fast oder tatsächlich sechs am nächsten benachbarte Merkmale berühren. Für solche dicht gepackte molekulare Arrays können Spalten- und Zeilen-Vektoren berechnet werden, wie oben beschrieben wurde, obwohl der Winkel zwischen den Richtungen, entlang denen Pixelintensitätswerte summiert werden, unterschiedlich sein kann zu dem 90°-Winkel in dem geradlinigen Fall. Zum Beispiel können Winkel von 30°, 60°, 120° etc. für hexagonal engst gepackte Arrays verwendet werden.
  • 15 stellt eine Eckenmerkmals-Schätztechnik dar, die für dicht gepackte molekulare Arrays besser geeignet ist, für die Zeilen- und Spalten-Vektoren breitere, weniger unterschiedliche Spitzen und Täler aufweisen. In 15 weist der Zeilenvektor breitere und weniger unterschiedliche Spitzen auf als der Zeilenvektor, der in 14 dargestellt ist. In diesem Fall können die x-Koordinaten von Eckmerkmalen geschätzt werden durch Erfassen der ersten ansteigenden Flanke 1502 und der letzten abfallenden Flanke 1504 des Spaltenvektors, und dann durch Schätzen der Positionen der Mitten der Eckenmerkmale als die Mittelpunkte 15061507 der bekannten Merkmalsgrößen 1508 und 1510, die sich nach rechts von der ersten ansteigenden Flanke und nach links von der letzten abfallenden Flanke erstrecken. Die y-Koordinaten der Eckenmerkmale können auf ähnliche Weise aus einem geglätteten Zeilenvektor bestimmt werden.
  • Sobald die x- und y-Koordinaten, in Pixeleinheiten, der Positionen der Eckenmerkmale aus Zeilen- und Spalten-Vektoren geschätzt sind, wie oben dargestellt ist, können Regionen eines abgetasteten Bildes, die den Eckenmerkmalen entsprechen, weiter analysiert werden, um die geschätzten Positionen der Eckenmerkmale zu verfeinern. Eine Technik zum Verfeinern der Positionen von Merkmalen wird „Tropfen-Analyse" bzw. „Tupfen-Analyse" bzw. „Blob-Analyse" genannt. Eine Tropfen-Analyse weist die Analyse von Pixeln innerhalb einer Region von Interesse auf, die die geschätzte Position eines Merkmals umfasst, um zuerst einen Schwellenpixelintensitätswert zu bestimmen und dann ein binäres Bild zu erzeugen, in dem alle Pixel, die Pixelintensitätswerte größer als der Schwellenwert aufweisen, dem Wert „1" zugewiesen sind, und alle Pixel, die Pixelintensitätswerte in der Region von Interesse geringer als der Schwellenwert aufweisen, dem Wert „0" zugewiesen sind. Die Koordinaten des Schwerpunkts der verbundenen Sammlung von Pixeln am nächsten zu der Mitte der Region von Interesse in dem binären Bild werden dann als die verfeinerten Pixelkoordinaten genommen, die der Mitte des Merkmals entsprechen.
  • 1617 stellen ein Verfahren für eine Schwellenbestimmung dar, die bei der Tropfen-Analyse verwendet wird. 16 stellt eine Innenregion von Interesse dar. In 16 ist ein quadratischer Bereich des abgetasteten Bildes, der an der geschätzten Position eines Merkmals zentriert ist, gezeigt. Ein elliptischer Bereich 1602 mit einer Minimalgröße, die das Merkmal vollständig einschließt, ist innerhalb des Bereichs des abgetasteten Bildes des Merkmals zentriert, gezeigt in 16. Dieser elliptische Bereich wird eine „Innenregion von Interesse" genannt. Eine Schwelle für die Innenregion von Interesse wird bestimmt durch Erzeugen eines Histogramms der verschiedenen Pixelintensitätswerte, die innerhalb der Innenregion von Interesse auftreten. 17 zeigt ein Histogramm aus Pixelintensitätswerten innerhalb der Innenregion von Interesse, die in 16 dargestellt ist. Ein Schwellenpixelintensitätswert wird aus dem Histogramm durch Fortschreiten von der rechtesten Spalte des Histogramms 1702 hin zu der linksten Spalte des Histogramms 1704 bestimmt, bis ein Schwellenpunkt in der Pixelverteilung erreicht ist. Bei dem dargestellten Verfahren ist der Schwellenpunkt vorbestimmt als der dreiunddreißigste Perzentilpunkt. Der Schwellenpunkt kann gemäß Charakteristika der Merkmale und der Arrays optimiert werden, die analysiert werden, die Größe, erfassten Rauschpegel und gemessene Positionierungsfehler umfassen. Der Pixelintensitätswert an diesem Punkt auf der x-Achse des Histogramms wird dann als der Schwellenwert genommen. In dem Fall der Innenregion von Interesse, gezeigt in 16, reichen Pixelintensitätswerte von 0 bis 9, und so weist das Histogramm aus 17 zehn vertikale Spalten auf, die Pixelintensitätswerte 0 bis 9 darstellen. Die Anzahl von Pixeln mit einem gegebenen Intensitätswert ist durch die Höhe der entsprechenden Spalte dargestellt. Der Punkt auf der x-Achse 1704 des Histogramms in 17, an dem 2/3 der Pixel rechts auftreten und 1/3 der Pixel links auftreten, fällt in die Spalte des Histogramms 1706, die einem Pixelintensitätswert von 1 entspricht. Somit wird der Schwellenwert von 1 verwendet, um eine binäre Abbildung für die Innenregion von Interesse aus 16 zu erzeugen.
  • 18 und 19 stellen eine zweite Technik zum Auswählen einer Schwelle für eine Tropfen-Analyse dar. 18 stellt eine äußere Region von Interesse für den selben Bereich des abgetasteten Bildes dar, das in 16 gezeigt ist. Die Außenregion von Interesse ist der maximal dimensionierte, elliptische Bereich, der in den rechteckigen Abschnitt eines abgetasteten Bildes einpasst, überlagert und zentriert auf einem bestimmten Merkmal. Die Median-Pixelintensität für Pixel innerhalb der äußeren Region von Interesse („OuterROI" = outer region of interest), und die Standardabweichung für die Pixelintensitäten der Pixel innerhalb der OuterROI, werden beide für die OuterROI berechnet und eine Schwelle wird ausgewählt durch: Schwelle = Median von OuterROI + (A·Standardabweichung)wobei A ungefähr gleich 1,4 ist. Das Anwenden des obigen Verfahrens zum Berechnen einer Schwelle erzeugt einen Schwellenwert von „9" für die OuterROI, dargestellt in 18. 19 zeigt das binäre Bild, das unter Verwendung einer Schwelle von 9 aus dem rechteckigen Abschnitt des abgetasteten molekularen Array-Bildes erzeugt ist, gezeigt in 18. In 19 sind alle Pixel mit einer Pixelintensität in dem ursprünglichen abgetasteten Bild gleich oder größer als 9 verdunkelt oder ausgefüllt und alle anderen Pixel sind leer. Die verdunkelten Pixel entsprechen Pixeln mit einem Intensitätswert von 9 und die leeren Pixel entsprechen Pixeln mit einem Wert von weniger als 9 in dem binären Bild. Der Durchschnitt oder Mittelwert von Pixelwerten kann anstelle des Median-Pixelwerts in der obigen Gleichung verwendet werden, um alternative Schwellenwerte zu erzeugen.
  • Eine Variation dieses zweiten Verfahrens zum Bestimmen von Schwellen ist das Verwenden von Median-Statistiken, die robuster für Außenseiter-Pixel sind als Statistiken unter Verwendung von Mittel- und Standard-Abweichungen. Ein robusterer Schätzer einer Standardabweichung ist entweder der Inter-Quartil-Bereich („IQR"; inter-quartile range), wobei IQR = (75-tes Perzentil – 25-tes Perzentil), oder die Median-Absolut-Abweichung („MAD"; median absolute deviation) von den Median-Statistik-Metriken, die in ein Standardabweichungsäquivalent umgewandelt werden, durch Teilen durch eine bekannte Konstante (z. B. 1,35 für IQR und 0,675 für MAD). Zum Beispiel kann die Schwelle berechnet werden als: Schwelle = Median von OuterROI + (A·Standard-Abweichungsäquivalent)
  • Ob das binäre Bild gemäß der Technik erzeugt wird, die in 16 und 17 dargestellt ist, oder gemäß der Technik, die in 18 und 19 dargestellt ist, das resultierende binäre Bild wird auf ähnliche Weise verarbeitet, um eine verfeinerte Pixelkoordinatenposition für die Merkmale zu erzeugen. Das binäre Bild wird abgetastet, um Sätze von zusammenhängenden Pixeln mit einem Wert von „1" oder anders ausgedrückt, Tropfen, zu lokalisieren. Tropfen 1902 in 19 ist der Tropfen, der die größte Anzahl von Pixeln in dem binären Bild enthält und ist am nächsten zu der Mitte, wie durch 19 dargestellt ist. Dann wird der Schwerpunkt des Tropfens, der größer ist als die Schwellengröße, am nächsten zu der Mitte des binären Bildes rechentechnisch durch ein Verfahren bestimmt, das in dem abschließenden Teilabschnitt der Anwendung dargestellt ist. 20 stellt das Schwerpunktpixel des Tropfens 1902 aus 19 dar. In 20 ist das Schwerpunktpixel 2002 als ein verdunkeltes Pixel gezeigt. Die Koordinaten des Schwerpunktpixels innerhalb des abgetasteten Bildes werden dann als die verfeinerten Koordinaten für das Merkmal genommen.
  • Berechnung eines Anfangs-Merkmalspositions-Koordinatengitters und Verfeinerung des Merkmalspositions-Koordinatengitters
  • Unter Verwendung der verfeinerten Eckenmerkmalspositionen, die durch die Techniken bestimmt wurden, die in dem vorangehenden Teilabschnitt beschrieben sind, kann ein anfängliches geradliniges Merkmalskoordinatengitter aus den Positionen der Eckenmerkmale und den bekannten Zwischenmerkmalsbeabstandungen des molekularen Arrays geschätzt werden. 21 stellt ein Anfangsmerkmalskoordinatengitter dar, das das abgetastete Bild eines molekularen Arrays überlagert, wo die Einheiten der x-Achse 2102 und die Einheiten der y-Achse 2104 Pixel sind. Wie in 21 ersichtlich ist, sind viele der Merkmale relativ nahe an dem Schnittpunkt von Merkmalskoordinatengitterlinien positioniert, aber entsprechen nicht genau den Schnittpunkten. Somit ist eine Technik zum Verfeinern des anfänglichen Merkmalskoor dinatengitters erforderlich, so dass Merkmale, die in dem abgetasteten Bild beobachtet werden, so eng wie möglich den Schnittpunkten von Merkmalskoordinatengitterlinien entsprechen. Bei dieser und nachfolgenden Erörterungen sei angenommen, dass das molekulare Array optisch sowohl bei Grün- als auch Rot-Wellenlängen abgetastet wird und separate Grün- und Rot-Intensitätswerte für jedes Pixel umfasst. Bei unterschiedlichen Systemen können mehr als zwei Signale während einer Analyse des molekularen Arrays erzeugt werden und bei solchen Systemen werden alle verschiedenen Signale bei den Techniken verwendet, die nachfolgend beschrieben werden.
  • Nach dem Berechnen des anfänglichen Merkmalskoordinatengitters werden die unterschiedlichen Signale für jedes Merkmal verarbeitet, um starke Merkmale auszuwählen und dann das anfängliche Merkmalskoordinatengitter basierend auf den Positionen der starken Merkmale zu verfeinern. Für jedes Merkmal wird eine Tropfen-Analyse ausgeführt, wie oben Bezug nehmend auf 1620 erörtert wurde, um verfeinerte Pixelkoordinaten für die Mitte des Merkmals für jedes Signal zu erzeugen, zusammen mit der Größe des Tropfens, der verwendet wird, um die verfeinerten Koordinaten zu erzeugen. Die Anfangsposition des Merkmals wird aus dem anfänglichen Merkmalskoordinatengitter geschätzt. Wenn basierend auf dem Originalmerkmalskoordinatengitter die verfeinerte Position für das Merkmal weniger als eine konstante Distanz von der geschätzten Merkmalsposition ist, und die Größe des Tropfens, der durch die Tropfen-Analyse bestimmt wird, größer ist als ein Minimalschwellenwert und kleiner als ein Maximalschwellenwert, dann wird das Merkmal als ein starkes Merkmal betrachtet. Ansonsten wird das Merkmal als ein schwaches Merkmal betrachtet. In 21 sind nur die starken Merkmale gezeigt. Wenn ein Merkmal bei mehr als einem Signal stark ist, wie z. B. in dem aktuellen Fall sowohl bei Grün- als auch Rot-Pixelintensitäten, dann die verfeinerte Position des Merkmals als der Mittelpunkt eines Liniensegments berechnet, das die verfeinerten Posi tionen des Merkmals separat basierend auf Rot- und Grün-Signalen verbindet.
  • Sobald die starken Merkmale durch die oben beschriebene Technik ausgewählt sind, werden dann die Positionen der starken Merkmale in einer Lineare-Regression-Analyse eingesetzt, um ein verfeinertes Merkmalskoordinatengitter zu erzeugen. 22 stellt eine Lineare-Regression-Analyse dar. In 22 sind Matrizen als Rechtecke dargestellt, wobei die Abmessungen der Matrizen durch Zahlen und Buchstaben innerhalb der Rechtecke angezeigt sind. In 22 ist der Wert „M" gleich der Gesamtanzahl von Merkmalen innerhalb eines molekularen Arrays, und der Wert „N" ist gleich der Anzahl von starken Merkmalen, die innerhalb des molekularen Arrays gefunden werden. Die Zeilen- und Spalten-Raum-Indizes dieser starken Merkmale sind in einer N×3 starken Matrix 2202 enthalten. Die Indizes von starken Merkmalen sind in zwei Spalten der starken Matrix enthalten. Eine dritte Spalte in der starken Matrix 2202 weist einen Platzhalterwert von „1" auf. Somit enthält die erste Zeile in der starken Matrix 2202 einen ersten Raum-Index für jedes starke Merkmal, die zweite Zeile in der starken Matrix 2202 enthält einen zweiten Raum-Index für jedes starke Merkmal und die dritte Zeile in der starken Matrix 2202 enthält den Wert „1" für jedes starke Merkmal.
  • Eine zweite Matrix, die bei der Lineare-Regression-Analyse eingesetzt wird, ist die pseudo-inverse starke Matrix 2204. Dies ist eine N×3-Matrix. Eine pseudo-inverse Matrix A+ wird hergeleitet aus einer regulären Matrix A, die Reell-Zahl-Elemente über eine Singular-Wert-Zerlegung enthält. Für eine Matrix A ∊ RM×N (M ≥ N) mit Rang (A) = N
    bestehen Matrizen: U ∊ RM×N Σ ∊ RM×N V ∊ RM×N derart, dass: UTU = IN VTV = IN A = UΣVT
  • Hier ist IN die Identitätsmatrix bei RN×N. Die Matrix mit Σ ist eine Diagonalmatrix mit Diagonaleinträgen Ungleich-Null mit abnehmenden Werten von der oberen linken Ecke, Σ(1,1), zu der unteren rechten Ecke, Σ(N,N).
  • Die pseudo-inverse Matrix für A, bezeichnet durch A+, ist gegeben durch A+ = VΣ–1UT ∊ RN×M
  • Die wichtige Eigenschaft von A+ und diejenige, die bei dem Gittereinpassregressionsprozess verwendet wird, ist, dass: A+A = IN
  • Das Referenzbuch „Matrix Computations" von H. Golub und C. F. Van Loan, Johns Hopkins University Press, 1996 (3. Auflage), kann für Details über Anwendung und Eigenschaften der Singularwertzerlegung (SVD; SVD = singular value decomposition) A = UΣVT und die Pseudo-Inverse verwendet werden.
  • Eine dritte Matrix, die bei der Lineare-Regression-Analyse verwendet wird, ist die Schwerpunktmatrix 2202. Dies ist eine N×2-Matrix, bei der jede Zeile den Schwerpunkt eines starken Merkmals enthält, wie durch die Tropfen-Analyse bestimmt wird, in Pixelkoordinaten. Eine vierte Matrix, die bei der Lineare-Regression-Analyse verwendet wird, ist eine Merkmals-Indizes-Matrix 2208. Die Merkmals-Indizes-Matrix ist eine 3×M-Matrix, die die Indizes aller Merkmale in dem molekularen Array enthält, und ist in ihrem Format ähnlich zu der starken Matrix 2202. Wie die starke Matrix enthält die letzte Zeile der Merkmals-Indizes-Matrix 2208 M Elemente des Werts „1".
  • Das Ergebnis der Lineare-Regression-Analyse ist eine Einpasspositionsmatrix 2210. Dies ist eine M×2-Matrix, die die zweidimensionalen Pixelkoordinaten jedes Merkmals in dem molekularen Array enthält, das aus der Lineare-Regression-Analyse resultiert.
  • Die Lineare-Regression-Analyse weist zwei Matrixmultiplikationen auf. Bei der ersten Matrixmultiplikation wird die Transponierte 2212 der pseudo-inversen starken Matrix 2202 mit der Schwerpunktmatrix 2206 multipliziert, um eine 3×2-Koeffizientenmatrix 2214 zu erzeugen. Bei der zweiten Matrixmultiplikation wird die Transponierte 2216 der Merkmalsindizesmatrix 2208 mit der Koeffizientenmatrix 2214 multipliziert, um die Einpasspositionsmatrix 2210 zu erzeugen.
  • Der Gittereinpassprozess verursacht ein zusätzliches Verfahren zum Anwenden einer linearen Regression an alle Positionen für alle starken Merkmale gleichzeitig, um den Satz von Gitterpositionen von starken Merkmalen in ein einheitlich beabstandetes Gitter umzuwandeln, das besser zu den Daten passt und das gute Schätzwerte der Positionen der schwachen Merkmale liefern kann. Die Beziehung zwischen den Positionen X eines einheitlich beabstandeten Satzes von Merkmalen und dem Satz von Indizes J für den selben Satz von Merkmalen ist gegeben durch: X = JCwobei C eine 3×2-Transformationsmatrix ist, die Orientierungsinformationen enthält, die sich auf die Drehung und Verschiebungen des Gitters beziehen. Es sei angenommen, dass X nur die Positionen der N starken Merkmale enthält und J die entsprechenden Indizes darstellt. X ist eine N×2- Matrix, wobei die i-te Zeile die Position des i-ten Merkmals enthält. In der Praxis werden die starken Merkmalspositionen Xmeas basierend auf ihren Schwerpunkten gemessen und diese Positionen weichen leicht von den theoretischen Gitterpositionen X ab. Ferner ist Xmeas nicht einheitlich beabstandet. Um die Transformationsmatrix C zu schätzen, die bei der linearen Regression angewendet werden soll, wird die obige Gleichung neu geschrieben als: Xmeas ≅ JC
  • Eine Näherungslösung der kleinsten Quadrate für C kann erhalten werden durch Anwenden der Pseudo-Inversen von J, wie folgt: C ≅ pinv(J)Xmeas
  • Sobald diese Gleichung für C gelöst ist, kann die Transformation an jeden Merkmalssatz angewendet werden, wie z. B. G, die Indexmatrix für den Satz aller Merkmale in dem Gitter. Dies ergibt H, die Positionen aller einheitlich beabstandeten Positionen aller Merkmale auf dem Gitter: H = GC
  • Ein Beispiel der Lineare-Regression-Analyse wird in 23A27B geliefert. 23A zeigt ein kleines molekulares 9×12 Array. Das molekulare Array 2302 enthält starke Merkmale, gezeigt als hellfarbige Scheiben, wie z. B. das starke Merkmal 2304. 23B zeigt die starke Matrix, die dem molekularen 9×12 Array aus 23A entspricht. Die Indizes aller starken Merkmale sind in der starken Matrix 2308 umfasst. Zum Beispiel sind die Koordinaten des starken Merkmals 2310 bei Position (0, 0) in der ersten Spalte 2312 der starken Matrix 2308 umfasst, und die Koordinaten des starken Merkmals 2304 bei Position (3, 8) sind in Spalte 2314 der starken Matrix 2308 umfasst. Wie oben erklärt wurde, ist eine dritte Platzhalterkoordinate mit dem Wert „1" in der dritten Zeile der starken Matrix 2308 für jedes starke Merkmal umfasst. Es sollte darauf hingewiesen werden, dass, obwohl bei Position (7, 0) 2306 kein starkes Merkmal gezeigt ist, ein Artefakt oder Defekt innerhalb des molekularen Arrays die Erfassung eines starken Merkmals bei Position (7, 0) 2316 verursacht hat.
  • 24 zeigt eine pseudo-inverse starke Matrix, die wie oben beschrieben aus der starken Matrix berechnet ist, gezeigt in 23B. 25 zeigt die Schwerpunktmatrix, die die Pixelkoordinaten der Schwerpunkte der starken Merkmale der 9×12-Matrix umfasst, gezeigt in 23A. 26 zeigt die Koeffizientenmatrix, berechnet durch Multiplizieren der Transponierten der pseudo-inversen Matrix (24) mit der Schwerpunktmatrix (25). 27A27B zeigen die Einpasspositionsmatrix, berechnet durch Multiplizieren der Transponierten der Merkmalsindizesmatrix (für das gegenwärtige Beispiel nicht gezeigt) mit der Koeffizientenmatrix (26). Es wird ferner darauf hingewiesen, dass die zweidimensionalen Koordinaten für jedes gegebene Merkmal, die aus der Lineare-Regression-Analyse resultieren, durch Multiplizieren eines Indexvektors für das Merkmal mit der Koeffizientenmatrix erhalten werden können, gezeigt in 26. Zum Beispiel führt die Multiplikation des Indexvektors (0, 0, 1) mit der Koeffizientenmatrix, gezeigt in 26, zu den Koordinaten (85,880412, 26,859797) in der ersten Zeile 2702 der Einpasspositionsmatrix, gezeigt in 27A–B. Auf ähnliche Weise erzeugt die Multiplikation der Indexvektoren (1, 0, 1) und (0, 1, 1) die Koordinaten in den Zeilen 2704 bzw. 2706 der Einpasspositionsmatrix, gezeigt in 27A. Es wird darauf hingewiesen, dass für sehr große Arrays ein kleinerer Merkmalssatz für die oben beschriebene Lineare-Regression-Analyse ausgewählt werden kann.
  • Bei nachfolgenden Signalextraktions- und Signalvarianz-Berechnungen werden die verfeinerten Positionen der starken Merkmale, die durch Tropfen-Analyse für jedes Signal be stimmt werden, für Berechnungen der starken Merkmale und ihrer entsprechenden lokalen Hintergrundregionen verwendet, wohingegen die eingepassten Positionen, die in der Einpasspositionsmatrix aufgezählt sind, für schwache Merkmale und ihre entsprechenden lokalen Hintergründe verwendet werden. Somit werden die Ergebnisse der Lineare-Regression-Analyse nur an schwache Merkmale und ihre entsprechenden lokalen Hintergründe angewendet.
  • In dem obigen Fall ist das Einpassen des Gitters beschränkt auf das Beibehalten einer Parallelogramm-Symmetrie. Dies ist nützlich bei Implementierungen, bei denen systematische lineare Distanzfehler klein sind, was allgemein für lineare Codierer gilt. Es kann andere Situationen geben, in denen systematische Verzerrungen die parallele Symmetrie brechen können, z. B. Verzerrungen, die aus Bilderzeugungs- bzw. Abbildungs-Optik entstehen, wo das Array leicht aus der Bildebene heraus abgebildet wird. In einigen Fällen kann die Einpassung eine viereckige Symmetrie bewahren, wohingegen in anderen Fällen nicht-lineare Einpassverfahren erforderlich sein können.
  • Das Merkmalsarray kann in eine Anzahl von kleineren Regionen oder Zonen unterteilt werden, und jede Zone kann in ihr eigenes lokales Gitter eingepasst werden. Dies kann verschiedenen Zwecken dienen. Zum Beispiel, wenn bekannterweise systematische Positionierungsfehler in bestimmten Regionen vorliegen, dann kann jede dieser Regionen in ein kleines lokalisiertes Gitter eingepasst bzw. an dasselbe angepasst werden. Dieses Verfahren kann für cDNA-Arrays und ganze Oligonukleotid-Aufbringungsprogramme verwendet werden, wo Sätze von Punkten durch unterschiedliche Nadeln, Stifte, Strahleinrichtungen oder Düsen abgelagert werden. Einige Tintenstrahldüsen feuern bei festen Winkeln relativ zu anderen Düsen ab. Bei anderen Aufbringungstechniken werden Merkmale auf flexible Membrane aufgebracht. Die Membrane können sich lokal erstrecken, wodurch kleine regionale Verzerrungen verursacht werden, wodurch es unmög lich gemacht wird, das gesamte Merkmalsarray durch ein einzelnes Gitter angemessen einzupassen. In diesem Fall kann das Gitter in eine Anzahl von kleineren Gittern unterteilt sein, wobei jedes Gitter zumindest einige starke Merkmale aufweist. Dieser Fall kann besser durch einen Satz von lokalisierten Gittern aus viereckigen Symmetrien adressiert werden. Wenn systematische Fehler vorliegen, die entweder Stiften oder einer Tintenstrahldüse zugeordnet sind, ist es nicht notwendig, dass diese Teilgitter nicht überlappend sind. Tatsächlich können diese unabhängigen Gitter oder Sätze von getrennten Merkmalen einander vollständig überlappen. Die Werte starker Merkmale, die jedem unabhängigen Gitter zugeordnet sind, sind auf „1" gesetzt, und alle anderen Merkmalswerte sind auf „0" gesetzt, und die Gitter können dann unabhängig eingepasst werden.
  • Zurückweisung von Außenseiter-Pixeln und Mehrfarben-Durchgänge
  • Sobald Merkmalspositionen bestimmt sind, egal ob aus einer Tropfen-Analyse für starke Merkmale oder aus einer Lineare-Regression-Analyse für schwache Merkmale, wird dann ein Pixelsatz aus jedem Merkmal für eine Signalextraktion ausgewählt. Die ausgewählten Pixel für ein Merkmal weisen anfänglich jene Pixel auf, die Pixelintensitätswerte für jedes Signal und optional für Verhältnisse aller Signalpaare aufweisen, die in akzeptable Bereiche innerhalb einer ausgewählten Region fallen, die dem Merkmal entspricht. Die Auswahl einer Region für eine anfängliche Pixelauswahl für ein Merkmal kann auf der Basis einer Geometrie getroffen werden, z. B. Auswählen von Pixeln innerhalb eines Ellipsoids einer Größe und Orientierung, die erwartungsgemäß signaltragende Pixel umfasst oder alternativ erreicht werden kann durch eine morphologische Analyse von Merkmalen unter Verwendung von Bildverarbeitungstechniken. Die Auswahl eines Pixelsatzes für eine Signalextraktion für ein Merkmal kann erreicht werden durch Entfernen oder Ignorie ren von Außenseiterpixeln aus dem anfänglichen Pixelsatz innerhalb der ausgewählten Region. Die Entfernung von Außenseiterpixeln aus einem Merkmal tritt durch den nachfolgenden Prozess auf: (1) Erzeugung einer anfänglichen Einlieger-Binärmaske, in der Pixel des Merkmals entsprechende Werte von entweder 1 oder 0 aufweisen, und alle Pixel innerhalb der ausgewählten Region initialisiert werden, um den Wert 1 aufzuweisen, während alle anderen Pixel initialisiert werden, um den Wert 0 aufzuweisen; (2) für jedes Signal, Identifikation jeglicher Außenseiterpixel innerhalb der ausgewählten Region mit Intensitätswerten außerhalb eines akzeptablen Bereichs und Einstellen der entsprechenden Werte für diese Außenseiterpixel auf 0 in der Einlieger-Maske; (3) für jedes mögliche Signalpaar, Identifikation jeglicher Pixel in der ausgewählten Region, für die das Verhältnis der Intensitätswerte für die Signale des Signalpaars außerhalb eines akzeptablen Bereichs fällt und Einstellen der entsprechenden Werte in der Einlieger-Binärmaske auf 0; und (4) Auswahl jener Pixel, deren entsprechende Werte in der Einlieger-Maske den Wert 1 aufweisen, als die Signalextraktionspixel für das Merkmal.
  • 28 stellt die oben beschriebene Technik für eine Außenseiter-Verwerfung dar. In 28 stellt Ebene 2802 die Grün-Signalintensitätswerte für eine Region von Interesse um ein Merkmal dar, Ebene 2804 stellt die Rot-Signalintensitätswerte für die selbe Region von Interesse dar, Ebene 2806 stellt das Verhältnis der Rot- zu Grün-Signalintensitätswerte dar, und Ebene 2808 stellt die Einliegermaske dar, die der Region von Interesse entspricht. Der Prozess der Außenseiterverwerfung kann als ein Prozess zum Einstellen des Werts eines Pixels in der Einliegermaske 2808 auf „1" betrachtet werden, wenn dieses Pixel in akzeptable Bereiche von Intensitätswerten in der Grün-Signalebene 2802 und Rot-Signalebene 2804 sowie in einen akzeptablen Bereich von Werten von Grün- zu Rot-Signal-Verhältnissen in der Grün-zu-Rot-Signal-Verhältnis-Ebene 2806 fällt. Akzeptable Bereiche können auf der Stan dardabweichung der Pixel basieren, die das Merkmal aufweisen. Zum Beispiel kann die Untergrenze eingestellt sein als der Mittelwert des Merkmals minus zwei Standardabweichungen und die Obergrenze kann entsprechend eingestellt sein als der Mittelwert des Merkmals plus zwei Standardabweichungen. In 28 treten die Pixel mit akzeptablen Grün-Signalwerten in den verdunkelten Regionen 28122814 auf, die Pixel mit akzeptablen Rot-Intensitätswerten fallen in die Regionen der Rot-Signalebene 28152817, und Pixel mit akzeptablen Grün-Signal- zu Rot-Signal-Verhältnissen fallen in Regionen 28182820 der Grün-zu-Rot-Signalverhältnis-Ebene 2806. Somit weist z. B. Pixel 2822 den Wert 1 in der Einliegermaske 2808 auf, da es innerhalb akzeptabler Bereiche in der Grün-zu-Rot-Signalverhältnis-Ebene 2806, in der Rot-Signalebene 2804 und in der Grün-Signalebene 2802 auftritt.
  • Ein Iterationsschritt kann hier hinzugefügt werden. Zum Beispiel können nach einer Pixelaußenseiteranalyse alle starken Merkmale wiederum einer Tropfen- bzw. Blob-Analyse unterzogen werden. Dies ist nützlich für Merkmale mit kleinen Signalbereichen, die bedeutend im Hinblick auf die Schwelle sind, aber tatsächlich Artefakte sind. In solchen Fällen kann ein echt schwaches Merkmal als stark etikettiert sein und der Schwerpunkt dieses Merkmals kann inkorrekt positioniert sein oder alternativ kann der Schwerpunkt eines starken Merkmals, das ein Artefakt umfasst, inkorrekt positioniert sein, gezogen aus dem wahren Gitter. Eine nachfolgende Pixelaußenseiteranalyse entfernt einen Großteil der Original-Hoch-Signal-Außenseiterpixel solcher Merkmale, die Artefakten entsprechen. Wenn eine zweite Runde einer Tropfen-Analyse ausgeführt wird, kann ein schwaches Merkmal, das inkorrekt als stark etikettiert ist, keinen Tropfen mehr aufweisen, der groß genug ist gegenüber der Schwelle, um als stark etikettiert zu werden. Das Merkmal wird dann als schwach etikettiert und sein Schwerpunkt wird über die obige Lineare-Regression-Analyse positioniert. In dem Fall von starken Merkmalen mit Artefakten wird eine zweite Runde mit der Tropfen-Analyse wahrscheinlich die entsprechenden Schwerpunkte besser positionieren. Anstatt die zweite Runde der Tropfen-Analyse an allen starken Merkmalen auszuführen, kann die Analyse auf jene starken Merkmale beschränkt werden, die eine Tropfengröße kleiner als eine eingestellte Grenze aufweisen, d. h., auf jene Merkmale, die „grenzwertig" stark sind.
  • Signalextraktion aus Merkmalen und Ausbreitung von Fehlern
  • Für viele Analysetypen ist es wünschenswert, das Verhältnis von hintergrund-subtrahierten und -normierten Signalintensitäten aus der Region jedes Merkmals zu extrahieren, bestimmt gemäß der Technik, die in dem vorangehenden Teilabschnitt beschrieben wurde. In diesem Teilabschnitt ist eine Technik zum Extrahieren von Signalen, Signalverhältnissen und zum Bestimmen von Varianzen dargestellt und beschrieben. In diesem Teilabschnitt sind die Grün-Signalintensitätswerte für ein Merkmal in 29 gezeigt und die Rot-Signalintensitätswerte für das selbe Merkmal sind in 30 gezeigt. Die Grün-Intensitätswerte reichen von 5–99 und die Rot-Intensitätswerte reichen von 1–46. Der mittlere Wert für die Grün-Signalintensitäten für das Merkmal wird wie folgt berechnet: μg = 1N ΣN-1i=0 g1 wobei μg das mittlere Grün-Signal ist, N die Anzahl von Pixeln innerhalb des Merkmals ist und g1 die Grün-Signalintensität des i-ten Pixels ist. Der mittlere Rot-Signal-Intensitätswert μr wird auf ähnliche Weise berechnet. Die Varianz des Grün-Signals für das Merkmal wird wie folgt berechnet: σ2 g = 1N-1 ΣN-1i=0 (gi – μg)
  • Die Varianz für die Rot-Signal-Intensitäten σr 2 wird auf ähnliche Weise berechnet. Die Kovarianz der Rot- und Grün-Signal-Intensitäten für das Merkmal wird wie folgt berechnet: σgr 2 = 1N-1 ΣN-1i=0 (gi – μg)(ri – μr)
  • Die geschätzte Varianz bei dem Durchschnittswert μg wird berechnet als:
    Figure 00400001
    und die geschätzte Varianz des mittleren μr wird auf ähnliche Weise berechnet. Abschließend wird die geschätzte Kovarianz des Durchschnittswerts berechnet als:
    Figure 00400002
  • Die Werte dieser Parameter für die Beispielmerkmale aus 29 und 30 werden nachfolgend bereitgestellt:
    N = 60
    μg = 75,73
    μr = 29,93
    σg 2 = 930,94
    σr 2 = 162,47
    σgr 2 = 323,00
    σμg 2 = 15,51
    σμgr 2 = 5,38
    σμr 2 = 2,71
  • Diese Parameter stellen Rohsignale und Rohsignalstatistiken dar. Fortfahrend mit der weiteren Verarbeitung muss ein Hintergrundpegel von jedem Merkmalssignal subtrahiert werden, aufgrund von Differenzen bei Hintergrundintensitäten innerhalb der verschiedenen Farbkanäle. Es gibt eine Anzahl von unterschiedlichen Verfahren zum Bestimmen der Hintergrundintensität für unterschiedliche Signale. Bei einem ersten Verfahren kann die mittlere Hintergrundintensität für jedes Signal gemessen und durch die Abtasteinrichtung berichtet werden. Bei einem zweiten Verfahren kann eine Pixelpopulation in einer Region um oder in der Nähe von einem Merkmal, bekannt als ein lokaler Hintergrund, gemittelt werden, um eine unterschiedliche Hintergrundmessung für jedes Merkmal zu liefern. Bei einem dritten Verfahren kann der Hintergrund für ein Signal berechnet werden als der Mittelwert einer Sammlung von lokalen Hintergründen. Zum Beispiel können die neun am engsten benachbarten lokalen Hintergründe oder alle lokalen Hintergründe miteinander vereinigt werden, um einen Hintergrundwert zu erhalten. Bei einem vierten Verfahren kann der Hintergrund geschätzt werden als die mittlere Signalintensität eines Minimum-Merkmals oder eines Minimum-Lokal-Hintergrundes in dem molekularen Array. Abschließend kann bei einem fünften Verfahren der Hintergrund als das Mittel von allen oder einem Teilsatz von geeigneten Steuermerkmalen berechnet werden, die in dem molekularen Array umfasst sind. Die geeigneten Steuermerkmale können ein negatives Steuerelement aufweisen, das entworfen ist, um nicht mit jeglichen Ziel-Abtastwert-Molekülen zu hybridisieren, oder ein Lösch-Steuerelement, das entworfen ist, um den Betrag einer nicht-spezifischen Hybridisierung eines entsprechenden Perfekte-Übereinstimmung-Merkmals zu schätzen. Alternative Median-Statistiken und robuste Standardabweichungs-Schätzer können für die Verwendung von mittlerer und standardmäßiger Abweichung bei allen obigen Beispielen von Hintergrundberechnungen und bei nachfolgenden Erörterungen der Fehler ausbreitung eingesetzt werden. 31 stellt eine Anzahl von lokalen Hintergründen dar. In 31 umgeben lokale Hintergründe 31023110 die Merkmale 31123120. 32 stellt ein Minimum-Merkmal dar. In 32 weist das Merkmal 3201 die niedrigste Intensität für ein bestimmtes Signal auf. Somit werden die mittleren Pixelintensitätswerte für dieses Signal von Merkmal 3201 als der Hintergrund für dieses Signal genommen.
  • Alternative, robuste, statistische Metriken können bei den obigen Pixelaußenseiter-, Merkmalsextraktions- und Hintergrundberechnungs-Algorithmen und bei nachfolgenden Erörterungen der Fehlerausbreitung verwendet werden. Beispiele einer Robuste-Position-Metrik ist der Median-Wert oder der getrimmte Mittelwert. Beispiele einer Robuste-Dispersion-Metrik sind die IQR- und MAD-Metriken, die oben in dem Abschnitt der Schwellenbestimmung erörtert wurden. Zwei der Vorteile der Verwendung von robusten Metriken im Gegensatz zu der Verwendung einer Mittel- und Standard-Abweichung sind, dass sie viel weniger durch Außenseiter beeinflusst werden und keine Annahmen über das Wesen der zugrundeliegenden Verteilung von Daten gemacht werden.
  • Die Hintergrund-Mittelwerte und -Varianzen, die jedem lokalen Hintergrund zugeordnet sind, werden in Schreibweise ausgedrückt als μbg,g, μbg,g, σμbg,g 2, σμbg,r 2. Diese Parameter können ähnlich zu der Berechnung der Mittelwerte und Varianzen der Rohsignale berechnet werden, wie oben beschrieben wurde. Wenn jedoch der Hintergrund aus einer Sammlung von lokalen Hintergründen oder einem Teilsatz von Steuermerkmalen geschätzt wird und somit ein Mittel aus Mittelwerten oder ein vereinigtes Mittel darstellt, dann kann die Varianz der Hintergrundmessung ordnungsgemäß wie folgt dargestellt werden, μBG,g und μBG,r stellen das mittlere Hintergrundsignal für das Grün- bzw. Rot-Merkmal dar. μBG,g 2 und μBG,r 2 stellen die geschätzte Varianz für μBG,g bzw. μBG,r dar. Verfahren 3, oben ausgeführt, wird nachfolgend behandelt, wobei das vereinigte Mittel folgendes ist:
    Figure 00430001
    und die Varianz des Mittels der Mittelwerte wie folgt berechnet wird:
    Figure 00430002
    wobei L die Anzahl von lokalen Hintergründen ist, die beim Berechnen des Mittels verwendet werden, z. B. die neun am engsten benachbarten lokalen Hintergründe.
  • Das hintergrund-subtrahierte Grün-Signal μG wird wie folgt berechnet: μG = μg – μBG.g und das hintergrund-subtrahierte Rot-Signal μR wird auf ähnliche Weise berechnet. Die Varianz des hintergrundsubtrahierten Grün-Signals μG 2 wird wie folgt berechnet: σG 2 = σμg 2 + σBG.g und die Varianz von μR wird auf ähnliche Weise berechnet. Die Kovarianz der hintergrund-subtrahierten Grün- und Rot-Signale σ2 GR wird wie folgt berechnet: σGR 2 = σμgr 2
  • Um eine biologische Interpretation und nachgeschaltete Analyse der Daten zu ermöglichen, muss die statistische Signifikanz von Merkmalssignalen bestimmt werden. Ein Problem entsteht z. B., wenn das Rot-Kanalsignal und das Grün-Kanalsignal des selben Merkmals beide nicht von ihrem umliegenden lokalen Hintergrund wahrnehmbar sind, aber das Grün-Kanalsignal trotzdem zwei Mal so hell ist wie das Rot-Kanalsignal. Der Benutzer kann in diesem Fall ein falsches Ergebnis erhalten, das eine zweifache Erhöhung bei dem Ausdruck durch den Grün-Kanal anzeigt, wenn die Verhältnisse mit Daten berechnet werden, die nicht wesentlich unterschiedlich sind im Vergleich zu einem Leerraum, wobei der Leerraum eine der Hintergrundoptionen ist, die oben ausgeführt wurden. Dieses Problem kann durch Ausführen statistischer Signifikanztests an Merkmalsdaten adressiert werden. Ein zweiseitiger T-Test für Studenten wird an der Population von Pixeln ausgeführt, die das Merkmal mit der geeigneten Population aufweisen, die das Hintergrundsignal aufweist. Die Population, die für das Hintergrundsignal verwendet wird, hängt ab von dem Verfahren, das für eine Hintergrundsubtraktion ausgewählt ist. Wie nachfolgend erörtert wird, werden diese Signifikanzinformationen beim Berechnen des log des Verhältnisses von einem Farbkanalsignal zu einem anderen Farbkanalsignal des selben Merkmals verwendet.
  • Wie bei den beispielhaften Merkmalssignalintensitäten aus 29 und 30 ersichtlich ist, kann der Mittelwert für eine Signalintensität für ein bestimmtes Merkmal relativ unterschiedlich von dem Mittelwert für ein unterschiedliches Signal für dasselbe Merkmal sein. Zum Beispiel können die Etikettierung und Photoneneffizienzen von unterschiedlichen Farbstoffen oder Chromophoren unterschiedlich sein. In 29 und 30 gilt μg = 75,73 und μr = 29,93. In diesem Fall, um das Grün- und Rot-Signal der Merkmale für ein molekulares Array zu vergleichen, müssen die Grün- und Rot-Signale für alle Merkmale normiert werden. Signalantwortkurven können während der Normierung eingesetzt werden. Eine lineare Normierungskurve sei bei der nachfolgenden Erörterung angenommen. Unter der Annahme, dass normalerweise Gene nicht unterschiedlich ausgedrückt werden, wird das mittlere log-Verhältnis von Rot- zu Grün- hintergrundsubtrahierten Signalen auf Null gezwungen. Dies wird durch Berechnen eines Farbstoffnormierungsfaktors für jeden Farbkanal, DNFaktorG und DNFaktorR, erreicht. Somit, unter Verwendung von M Merkmalssignalen:
    Figure 00450001
  • Unter Verwendung der Farbstoffnormierungsfaktoren werden dann alle Merkmalssignale normiert. Es seien μRn und μGn die farbstoff-normierten Rot- und Grün-Signale.
  • Somit gilt μGn = DNFaktorG·μG und μRn = DNFaktorR·μR
  • Es seien σGn 2 und σRn 2 die Varianz bei μGn bzw. μRn wobei nachfolgend zu der Standardfehlerausbreitungsgleichung: σGn 2 = DNFaktorG 2·σG 2 σGn 2 = DNFaktorR 2·σR 2
  • Es sei σGRn 2 die ausgebreitete Kovarianz, wo: σGRn 2 = DNFaktorG·DNFaktorR·σGR2
  • Abschließend sei LR der log10 (Rot-zu-Grün-Verhältnis), wobei:
    Figure 00450002
  • Um den Fehler bei diesem Schritt auszubreiten, wird die Standardfehlerausbreitungsgleichung für x = f(u, v) verwendet.
  • Figure 00460001
  • In dem gegenwärtigen Fall sei σLR 2 die Varianz von LR, wobei die Anwendung der obigen Formel folgendes ergibt:
    Figure 00460002
  • Es ist an diesem Punkt wichtig, die Signifikanz der Rot- und Grün-Kanaldaten zu testen. Wenn sich herausstellt, dass beide Farbkanalsignale für ein Merkmal insignifikant unterschiedlich von der Population sind, die den Hintergrund des Merkmals beschreibt, üblicherweise bei einem Signifikanzpegel < 0,01, dann wird das log-Verhältnis log(0/0) eingestellt als log(1), das als 0 definiert ist. Dies vermeidet das fehlerhafte Ergebnis eines Genexpressionspegels der künstlich hoch oder niedrig ist, basierend auf Daten, die im Wesentlichen gleich zu einem Hintergrundpegel betrachtet werden.
  • Implementierung
  • In diesem Teilabschnitt wird eine Reihe von Flusssteuerdiagrammen eingesetzt, um die Implementierung von Routinen für folgende Schritte zu beschreiben: Einrichten der Orientierung eines geradlinigen Gitters zum Indexieren von Merkmalen eines molekularen Arrays, Bestimmen der pixelbasierten Koordinaten der Eckmerkmale eines molekularen Arrays, Einrichten einer anfänglichen Abbildung zwischen Pixelkoor dinaten und dem Indexierungsgitter und Bestimmen von Positionen der Merkmale unter Verwendung der anfänglichen Abbildung. Die Positionen von schwachen Merkmalen können dann gemäß dem Lineare-Regression-Analyse-Verfahren verfeinert werden, das oben beschrieben ist. Die Lineare-Regression-Analyse, nachfolgendes Verwerfen von Außenseiterpixeln und Signalextraktion aus Merkmalen zusammen mit der Ausbreitung von Fehlern kann einfach gemäß den mathematischen Beschreibungen implementiert werden, die in vorangehenden Teilabschnitten bereitgestellt wurden.
  • 3338 liefern eine Reihe von Flusssteuerdiagrammen, die das Verfahren zum Verfeinern von Merkmalskoordinaten durch Tropfen-Analyse beschreiben, die oben Bezug nehmend auf 1620 beschrieben wurde. 33 ist ein Flusssteuerdiagramm für die Routine „verfeinere Merkmalskoordinaten". Diese Routine ist die Routine oberster Ebene zum Implementieren einer Verfeinerung von Merkmalskoordinaten unter Verwendung einer Tropfen-Analyse, wie oben Bezug nehmend auf 1620 erörtert wurde. Bei Schritt 3302 werden die Pixel in einem abgetasteten Bild eines molekularen Arrays innerhalb einer Region von Interesse um Anfangskoordinaten für die Mitte eines Merkmals verarbeitet, um den mittleren Intensitätswert von Pixeln in der Region von Interesse, die Varianz der Intensitätswerte von Pixeln in der Region von Interesse, den mittleren Intensitätswert in der Region von Interesse und als Nebenprodukt die Anzahl von Pixel in der Region von Interesse zu bestimmen. Die letztere Menge kann konstant sein oder kann abhängig von der Position des Merkmals innerhalb des molekularen Arrays und der Orientierung eines Indexierungsgitters leicht variieren, das für das molekulare Array bestimmt ist. Bei Schritt 3303 wird ein Schwellenwert unter Verwendung einer oben beschriebenen Formel gesetzt. In der Für-Schleife, die die Schritte 33043308 enthält, wird eine Abbildung „binmap" mit Elementen, die Pixeln des abgetasteten Bildes des molekularen Arrays entsprechen, initialisiert durch Einstellen jedes Elements der binmap gleich 1, bei Schritt 3307, wenn die Intensität des Pixels, das dem binmap-Element entspricht, größer ist als der Schwellenwert, der bei Schritt 3303 berechnet wurde, und Einstellen des Elementswerts auf 0 bei Schritt 3308, wenn die Intensität des entsprechenden Pixelwerts bei dem abgetasteten Bild des molekularen Arrays kleiner oder gleich dem Schwellenwert ist, wie bei Schritt 3305 bestimmt wird. Als Nächstes wird bei Schritt 3309 die binäre Abbildung „binmap" (binary map) für eine Tropfen-Analyse vorbereitet, über einen Aufruf an die Routine „binmap vorbereiten", nach deren Ausführung die Routine „Äquivalenzen finden" bei Schritt 3310 aufgerufen wird, um alle Tropfen innerhalb der Region von Interesse zu identifizieren, und schließlich bei Schritt 3311 die Routine „Tropfen finden" aufgerufen wird, um einen ausreichend großen, naheliegendsten Tropfen zu der nicht-verfeinerten Mittelposition des Merkmals zu finden, die Merkmalskoordinaten gemäß dem Schwerpunkt für diesen Tropfen zu verfeinern und die Größe des Tropfens in Pixeln zurückzugeben.
  • 34 ist ein Flusssteuerdiagramm der Routine „binmap vorbereiten". Diese Routine analysiert die Abbildung „binmap", initialisiert bei Schritten 33043308 aus 33, um die Werte der Elemente von binmap einzustellen, die anfänglich den Wert „1" aufweisen, auf einen fortlaufenden Satz von Tropfennummern, wobei jeder anfängliche Tropfen einen Satz von zusammenhängenden Pixeln aufweist, die binmap-Elementen mit dem Wert „1" entsprechen. Anders ausgedrückt wird allen Elementen von binmap, die anfänglich den Wert „1" aufweisen, neue Werte zugeordnet, die das Partitionieren von entsprechenden Pixeln in Gruppen von zusammenhängenden Pixeln darstellen. Die Variable „aktuell" wird bei Schritt 3401 auf 1 eingestellt, und wird als der nächste Tropfenwert verwendet, der einer neu gefundenen Gruppe von zusammenhängenden Pixeln zugewiesen wird, die Intensitäten größer als der Schwellenwert haben. Die verbleibenden Schritte 34033410 weisen zwei verschachtelte Für-Schleifen auf, in denen die Variablen „i" und „j" zusammen allen möglichen Indexpaarwerten „(i, j)" für jedes Element in binmap zugewiesen werden. Somit wird beginnend mit Schritt 3404 jedes Element in binmap separat betrachtet. Wenn das Element nicht das erste Element in einer Zeile ist und dem vorangehenden Element in derselben Zeile bereits eine Tropfennummer zugewiesen wurde, dann wird bei Schritt 3405 das aktuell betrachtete Element auf die Tropfennummer des vorangehenden, angrenzenden Elements in der Zeile eingestellt. Wenn, wie bei Schritt 3406 erfasst wird, das Element nicht das erste Element in einer Spalte ist, und dem benachbarten Element, das dem Element in der selben Spalte vorangeht, bereits eine Tropfennummer zugewiesen wurde, dann wird dem aktuell betrachteten Element diese Tropfennummer bei Schritt 3407 zugewiesen. Anderweitig wird bei Schritt 3408 dem aktuell betrachteten Element die nächste Tropfennummer zugewiesen und die Variable „aktuell" wird inkrementiert. Beim Abschluss der Ausführung der Routine „binmap vorbereiten" wird binmap teilweise in Tropfen partitioniert, oder in Äquivalenzklassen, basierend auf einer physischen Nähe von Hochintensitätspixeln innerhalb des abgetasteten Bildes des molekularen Arrays.
  • 35 stellt die Routine „Äquivalenzen finden" dar. Diese Routine wandelt die teilweise partitionierte binmap in eine vollständig partitionierte binmap um. Im Wesentlichen identifiziert die Routine „Äquivalenzen finden" Paare aus zusammenhängenden Tropfen und vereinigt dieselben zu einem einzelnen Tropfen mit einer Tropfenzahl gleich der niedrigsten der Tropfenzahlen der zwei Tropfen des Paares. Zusammenhängende Tropfen können für unregelmäßig geformte Tropfen entstehen, z. B. mit Armen, die durch Elemente des Werts 0 innerhalb der Abbildung „binmap" abgetrennt sind.
  • Bei Schritt 3501 initialisiert die Routine „Äquivalenzen finden" das Array „Äquivalenzen", um monoton ansteigende Werte beginnend bei 0 zu enthalten. Somit enthält Äquivalenzen[0] den Wert „0", Äquivalenzen[1] enthält den Wert „1" etc. Das Array „Äquivalenzen" ist durch Tropfennummern indexiert und enthält für jede Tropfennummer jegliche niedriger nummerierte Tropfennummer, die durch die Routine „Äquivalenzen finden" identifiziert wird, derart, dass sie äquivalent zu dem Tropfen ist. Bei Schritt 3502 setzt die Routine „Äquivalenzen finden" die Variable „num" (number = Zahl) auf den Wert „0". Wenn nach der Ausführung der Für-Schleife, die die Schritte 35033507 aufweist, die Variable „num" immer noch den Wert „0" aufweist, wie bei Schritt 3508 erfasst wird, dann wurden alle Paare von äquivalenten Tropfen identifiziert und analysiert. Die Für-Schleife, die die Schritte 35033507 aufweist, setzt die Indizes „i" und „j" auf alle möglichen Indexpaare „(i, j)" für Elemente in binmap, und die Routine „Äquivalenz einstellen", die nachfolgend Bezug nehmend auf 36 beschrieben wird, wird bei Schritt 3505 für jedes binmap-Element aufgerufen. Sobald alle Äquivalenzen gefunden wurden, dann werden in den verschachtelten Für-Schleifen, die die Schritte 35093516 aufweisen, binmap-Elemente neu zugeordnet, wo nötig, zu ihrem abschließenden Partitionswert. Bei Schritt 3511 wird die Variable „n" zugewiesen, um der aktuelle Wert eines aktuell betrachteten Elements der binmap zu sein. Dann wird bei Schritten 35123513 n iterativ neu zu dem Wert zugewiesen, der in dem Array „Äquivalenz" bei Index n gespeichert ist, bis n gleich dem Wert ist, der in dem Array „Äquivalenzen" bei Index n gespeichert ist, wie bei Schritt 3512 erfasst wird. Abschließend wird bei Schritt 3514 dem binmap-Element der Wert n zugewiesen.
  • 36 ist ein Flusssteuerdiagramm für die Routine „Äquivalenz einstellen", die bei Schritt 3505 von 35 aufgerufen wird. Diese Routine weist einen komplexen Boolschen Ausdruck auf, der erfasst, ob ein binmap-Element benachbart entweder zu einem vorangehenden Element in seiner Zeile oder einem vorangehenden Element in seiner Spalte ist, und wenn dies der Fall ist, eine Äquivalenzbeziehung in dem Array „Äquivalenzen" einstellt, um die Tatsache zu reflektieren, dass die Tropfen, zu denen die zwei betrachteten binmap-Elemente gehören, äquivalent sind. Wenn eine Äquiva lenz erfasst wird, dann wird die Variable „num" inkrementiert, bei Schritt 3610, um eine zusätzliche Iteration der verschachtelten Für-Schleifen zu verursachen, die die Schritte 35033507 aus 35 aufweisen. Genauer gesagt bestimmt die Routine „Äquivalenz einstellen" zuerst bei Schritt 3601, ob der Wert des aktuell betrachteten binmap-Elements größer als 0 ist. Wenn ja, dann bestimmt bei Schritt 3602 die Routine „Äquivalenz einstellen", ob ein vorangehendes binmap-Element in der selben Spalte wie das aktuell betrachtete Element einen unterschiedlichen Wert ungleich 0 aufweist als das aktuell betrachtete Element, und wenn dies der Fall ist, das entsprechende Element in dem Array „Äquivalenzen" einstellt, um die Äquivalenz zwischen den zwei Tropfen zu reflektieren, die die zwei Elemente bei den Schritten 36063605 enthalten. Ansonsten bestimmt bei Schritt 3606 die Routine „Äquivalenz einstellen", ob ein vorangehendes, benachbartes binmap-Element in der selben Zeile wie das aktuell betrachtete binmap-Element einen unterschiedlichen Wert ungleich 0 aufweist als das aktuell betrachtete binmap-Element, und wenn ja, ein Element des Arrays „Äquivalenzen" einstellt, um die Äquivalenz der zwei Tropfen zu reflektieren, zu denen die zwei Elemente bei Schritten 36073609 gehören.
  • 37 ist ein Flusssteuerdiagramm für die Routine „Tropfen finden". Die Routine „Tropfen finden" findet den nächsten Tropfen zu den nicht-verfeinerten Koordinaten der Mitte des Merkmals, der größer ist als eine Schwellengröße, und verfeinert dann die Merkmalskoordinaten, um den Koordinaten des Schwerpunkts des Tropfens zu entsprechen, durch Aufrufen der Routine „Merkmalskoordinaten einstellen" bei Schritt 3709. Zuerst zählt die Routine „Tropfen finden" die Anzahl von Pixeln oder binmap-Elementen in jedem Tropfen und speichert die Zählwerte in dem Array „Gruppen" bei Schritten 37013704. Dann wählt die Routine „Tropfen finden" einen Schwellenwert aus einem der Werte aus, die in dem Array „Gruppen" bei Schritt 3705 gespeichert sind. Die Auswahl des Schwellenwerts kann auf jeglicher Anzahl. von unterschiedlichen Kriterien basieren, wie oben erörtert wurde. Dann wählt bei einer Für-Schleife, die die Schritte 37063707 aufweist, die Routine „Tropfen finden" jedes Element aus binmap aus, beginnend mit dem Element am nächsten zu der Mitte des Merkmals, und schreitet auswärts durch die Region von Interesse in einer Spirale fort, und bestimmt bei Schritt 3707, ob das nächste Element in der Spirale einen Wert aufweist, der die Schwelle überschreitet, die bei Schritt 3705 berechnet wurde. Das erste binmap-Element in der Spirale, das die Schwelle überschreitet, durchbricht die Für-Schleife der Schritte 37063707, was dazu führt, dass die Variable „Tropfen" dem Wert des ersten binmap-Elements zugeordnet wird, der die Für-Schleife bei 3708 durchbricht. Somit ist der Variable „Tropfen" die Zahl des Tropfens zugewiesen, am nächsten zu der nicht-verfeinerten Mittelposition des Merkmals mit mehr als einer Schwellengröße.
  • Die Routine „Merkmalskoordinaten einstellen", die durch die Routine „Tropfen finden" bei Schritt 3709 aufgerufen wird, bestimmt den Schwerpunkt des Tropfens, der durch die Routine „Tropfen finden" bestimmt wird, und setzt die Koordinaten der Mitte des Merkmals auf den Schwerpunkt des Tropfens. Bei Schritt 3801 bestimmt die Routine „Merkmalskoordinaten einstellen", ob der Tropfen, der durch die Aufrufroutine „Tropfen finden" gefunden wird, akzeptabel ist zum Bestimmen einer verfeinerten Position für die Mitte des Merkmals. Wie oben erörtert wurde, hängt diese Bestimmung von der Größe des Tropfens und der Distanz des Tropfens von den nicht-verfeinerten Koordinaten der Mitte des Merkmals ab. Die Routine „Merkmalskoordinaten einstellen" macht die Bestimmung bei Schritt 3801 und setzt, wenn der Tropfen nicht akzeptabel ist, eine Anzeige, um anzuzeigen, dass das Merkmal schwach ist, bei Schritt 3802, und kehrt dann zurück. Anderweitig, bei Schritten 38033806 akkumuliert die Routine „Merkmalskoordinaten einstellen" die x- und y-Koordinaten jedes Elements des Tropfens bei den Variablen „mx" und „my" und berechnet dann bei Schritt 3807 die verfeinerten Koordinaten der Mitte des Merkmals als die Koordinaten des Schwerpunkts des Tropfens. Bei Schritt 3808 setzt die Routine „Merkmalskoordinaten einstellen" eine Anzeige, dass das Merkmal stark ist, und kehrt dann zurück. Sowohl in dem Fall des starken als auch schwachen Merkmals ist der Antwortwert, der durch die Routine „Merkmalskoordinaten einstellen" zurückgegeben wird, die Anzahl von Pixeln oder das binmap-Element in dem Tropfen. Der Wert wird zurück durch die Routine „Tropfen finden" zu der Routine „Merkmalskoordinaten verfeinern" geleitet, von der es zurück zu dem Code geleitet wird, der die Routine „Merkmalskoordinaten finden" aufruft.
  • 39 ist das Flusssteuerdiagramm der Routine „Orientierung einrichten", die eine korrekte Orientierung für ein anfängliches Indexierungsgitter bestimmt, wie oben Bezug nehmend auf 413 erörtert wurde. Bei Schritt 3901 empfängt die Routine „Orientierung einrichten" ein abgetastetes Bild eines digitalisierten molekularen Arrays und setzt die Variable „res" auf 0. In der Für-Schleife, die 39023907 aufweist, berechnet die Routine „Orientierung einrichten" Zeilen- und Spalten-Vektoren, bei Schritt 3903, für jede Winkelorientierung zwischen –5° und 5°, und setzt für jede Winkel-Orientierung bzw. -Ausrichtung die Variable „tmp" auf die Summe der Varianzen der Zeilen- und Spalten-Vektoren bei Schritt 3904. Wenn der Wert von temp größer ist als der Wert von res, wie durch die Routine „Orientierung einrichten" bei Schritt 3905 erfasst wird, dann wird bei Schritt 3906 res der Wert von tmp zugewiesen und die Variable „a" wird als der aktuelle Winkel zugewiesen. Bei Schritt 3908 gibt die Routine „Orientierung einrichten" den Winkel „a" zurück sowie die gespeicherten Zeilen- und Spalten-Vektoren, die bei Schritt 3906 gespeichert wurden.
  • 40 ist ein Flusssteuerdiagramm für die Routine „Ecken einrichten". Diese Routine bestimmt die Positionen der Eckmerkmale, wie oben Bezug nehmend auf 14 und 15 erörtert wurde. Zuerst ruft bei Schritt 4001 die Routine „Ecke einrichten" die Routine „Orientierung einrichten", um eine Gesamtorientierung für ein geradliniges Indexierungsgitter einzustellen. Als Nächstes glättet bei Schritt 4002 die Routine „Ecken einrichten" die Zeilen- und Spalten-Vektoren, die durch die Routine „Orientierung einrichten" zurückgesendet werden, gemäß dem oben Bezug nehmend auf 6A–B bis 9 beschriebenen Verfahren. Bei Schritt 4003 setzt die Routine „Ecken einrichten" die Variablen „low_y", „high_y", „low_x" und high_x" auf die Positionen der linken und rechten Spitze bei dem Zeilenvektor und die Positionen der linken und rechten Spitze bei dem Spaltenvektor. Bei Schritt 4004 setzt die Routine „Ecken einrichten" anfängliche pixelbasierte Koordinaten für die Mitte jedes Merkmals gemäß den vier Variablen, deren Werte bei dem obigen Schritt 4003 gesetzt wurden. Abschließend ruft in der Für-Schleife, die die Schritte 40054007 aufweist, die Routine „Ecken einrichten" die Routine „Merkmalskoordinaten verfeinern" für jedes Eckmerkmal, um die Positionen von jedem der Eckmerkmale zu verfeinern.
  • 41 ist ein Flusssteuerdiagramm für die Routine „Gitter einrichten". Diese Routine richtet ein anfängliches geradliniges Koordinatensystem oder Indexierungssystem für ein abgetastetes molekulares Array basierend auf den definierten Positionen von Merkmalskoordinaten ein, bestimmt als Nächstes die Positionen aller zusätzlichen starken Merkmale und ruft dann bei Schritt 4113 eine Lineare-Regression-Analyse-Routine auf, die eine lineare Regression ausführt, wie oben Bezug nehmend auf 2127B erörtert wurde. Zuerst verwendet bei Schritt 4101 die Routine „Gitter einrichten" die verfeinerten Positionen der Eckmerkmale, ausgegeben durch die Routine „Ecken einrichten", um ein geradliniges Indexierungsgitter für alle Merkmale zu erzeugen. Dieses Indexierungsgitter kann einfach berechnet werden aus dem Orientierungswinkel, der durch die Routine „Orientierung einrichten" festgestellt wird, und durch Teilen der Dimensionen des abgetasteten Bildes des molekularen Arrays, die durch die anfänglichen Positionen der Eckmerkmale bestimmt werden, in gleich große Inkremente gemäß der Zahl von Merkmalen entlang jeder Dimensions- bzw. Abmessungs-Achse. Schritte 41024112 weisen zusammen eine Für-Schleife auf, bei der zwei unterschiedliche Sätze aus Daten oder Signalen verwendet werden, um zu bestimmen, ob jedes Merkmal, abgesehen von den Eckmerkmalen, ein starkes Merkmal ist, für das Koordinaten wie bestimmt verwendet werden können, oder ob das Merkmal ein schwaches Merkmal ist, für das Koordinaten über die Lineare-Regression-Analyse bestimmt werden müssen, die bei Schritt 4113 ausgeführt wird. Bei Schritt 4103 werden die aktuell betrachteten anfänglichen Merkmalskoordinaten gemäß der geradlinigen Indexierung eingestellt, die bei Schritt 4101 bestimmt wird. Dann wird die Routine „Merkmalskoordinaten verfeinern" bei Schritt 4104 im Hinblick auf eines der zwei Datensignale aufgerufen, von dem angenommen wird, dass es in dem vorliegenden Fall das Rot-Signal ist. Wenn, wie durch die Routine „Gitter einrichten" bei Schritt 4105 erfasst wurde, dass das aktuell betrachtete Merkmal stark im Hinblick auf das Rot-Signal ist, dann werden bei Schritt 4106 die verfeinerten Koordinaten basierend auf dem Rot-Signal gespeichert und die Koordinaten des Merkmals werden über einen Aufruf zu der Routine „Merkmalskoordinaten verfeinern" bei Schritt 4107 im Hinblick auf das Grün-Signal verfeinert. Wenn die Verfeinerung, basierend auf dem Grün-Signal, dazu führt, dass das Merkmal als stark klassifiziert wird, wie durch die Routine „Gitter einrichten" bei Schritt 4108 erfasst wird, dann werden die verfeinerten Koordinaten des Merkmals auf den Mittelwert der verfeinerten Koordinaten basierend auf dem Grün-Signal und den gespeicherten Rot-Koordinaten bei Schritt 4109 eingestellt. Anderweitig werden die verfeinerten Koordinaten für das Merkmal bei Schritt 4110 auf die gespeicherten Koordinaten basierend auf dem Rot-Signal eingestellt. Wenn das Merkmal nicht als stark im Hinblick auf die Verfeinerung bezogen auf die Rot-Koordinaten klassifiziert wird, dann wird bei Schritt 4111 die Routine „Merkmalskoordinaten verfeinern" aufgerufen, im Hinblick auf das Grün-Signal. Abschließend, nach der Fertigstellung der Für-Schleife, die die Schritte 41024112 aufweist, wird eine Lineare-Regression-Analyse durchgeführt, bei Schritt 4113, gemäß der mathematischen Methode, die oben beschrieben ist Bezug nehmend auf 2127B.
  • Modifikationen sind für Fachleute auf dem Gebiet offensichtlich. Zum Beispiel ist eine fast unbeschränkte Anzahl von Implementierungen des Merkmalsextraktionsverfahrens unter Verwendung unterschiedlicher Programmiersprachen, Betriebssysteme, Programmierarten und Techniken und unterschiedlicher Abtastvorrichtungen und Abtastvorrichtungsschnittstellen möglich. Wenn mehr als zwei unterschiedliche Typen von Datensignalen verfügbar sind, kann das beschriebene Verfahren ohne weiteres ausgedehnt werden, um die zusätzlichen Datensignale einzulagern, wie in der obigen Erörterung angezeigt ist. Die Merkmalsextraktionsmethode, die oben ausgeführt ist, kann für viele unterschiedliche Typen von molekularen Arrays eingesetzt werden mit vielen unterschiedlichen Größen und Arten von Merkmalen, die auf der Oberfläche des molekularen Arrays in vielen unterschiedlichen regelmäßigen Mustern platziert sind. Das oben ausgeführte Merkmalsextraktionsverfahren ist an fast grenzenlose Zahlen unterschiedlicher Typen von molekularen Arrays im Hinblick auf die molekularen Komponenten der Merkmale und im Hinblick auf Moleküle anwendbar, die während der Experimentierung hybridisiert oder an jene Komponenten gebunden werden. Abhängig von dem Typ der Abtastvorrichtung, die zum Analysieren eines molekularen Arrays verwendet wird, können zusätzliche Schritte und Techniken zu dem oben beschriebenen Merkmalsextraktionsverfahren hinzugefügt werden, um Variationen bei Schnittstellen, Hardwarekomponenten und anderen Parametern zu berücksichtigen.
  • Informationen über das Array-Layout können aus einem Code erhalten werden, der einem Array zugeordnet ist. Die erhaltenen Array-Layout-Informationen können dann durch einen Prozessor in einer Array-Abtasteinrichtung (oder anderswo) verwendet werden, um das zweite Muster aufzubauen. Alternativ kann der Code anderweitig dem Array zugeordnet sein. Der Code kann z. B. ein Strichcode oder ein anderer Code sein, der an dem Array-Substrat oder -Gehäuse befestigt ist oder kann zu einem Array-Benutzer in dem selben Gehäuse geliefert werden wie das Array oder auf andere Weise physisch dem Array zugeordnet sein, wenn es zu dem Benutzer geliefert wird. Genauer gesagt können alle Techniken, die in der mitanhängigen U.S.-Patentanmeldung Seriennummer 09/302,898 mit dem Titel „Polynucleotide Array Fabrication" von Caren u. a. (eingereicht am 30. April 1999) und Seriennummer 09/558,532 mit dem Titel „Array Fabrication with Drop Detection" von Schantz u. a. (eingereicht am 26. April 2000) beschrieben sind, zum Liefern oder Erhalten von Arrayfehlerinformationen alternativ oder zusätzlich zum Liefern (wie z. B. an dem Herstellungsort) oder Erhalten (wie z. B. an dem Endbenutzerort) jeglicher anderer Array-Layout-Informationen (wie z. B. der Zusammensetzung von Merkmalen, wie z. B. Polynucleotid-Sequenzen oder jeglicher anderer Merkmalscharakteristika, wie z. B. Merkmals-Größe oder -Position) und zusätzlich oder alternativ des zweiten Musters oder von Informationen über den Aufbau des zweiten Musters, verwendet werden. Zusätzlich oder alternativ können alle solchen Techniken ebenfalls zum Liefern oder Erhalten genetischer Informationen verwendet werden, die einem Satz aus einem oder mehreren Merkmalen an einem oder mehreren Arrays zugeordnet sind. Zum Beispiel können solche Informationen Informationen über Gene sein, die einem oder mehreren Polynucleotid-Merkmalen an einem Array zugeordnet sind (z. B. eine Identifikation von Genen, die potentiell verantwortlich für ein beobachtetes Signalmuster aus Array-Merkmalen sind). Somit können die Offenbarungen dieser Anmeldungen alternativ oder zusätzlich Bezug nehmend auf „Fehlerinformationen" oder „Fehlerabbildungen" gelesen werden, die ersetzt werden durch eines oder mehrere aus „Array-Layout-Informationen", „zweiten Muster-Informatio nen" oder „genetischen Informationen, die einem Satz aus einem oder mehreren Merkmalen zugeordnet sind".
  • Es wird nun auf Offenbarungen in der europäischen Patentanmeldung Nr. 01304956.4, Veröffentlichungsnummer EP1162572 , wobei die vorliegende Anmeldung eine Teilpatentanmeldung der besagten europäischen Patentanmeldung darstellt, in den U.S.-Patentanmeldungen Nr. 09/589,046 und 09/659,415, deren Priorität die vorliegende Anmeldung beansprucht, und in der Zusammenfassung, die dieser Anmeldung beiliegt, verwiesen, sind durch Bezugnahme in das vorliegende Dokument aufgenommen.

Claims (7)

  1. Ein Verfahren zum Bewerten einer Orientierung eines molekularen Arrays (402) mit Merkmalen, die in einem Muster angeordnet sind, das folgende Schritte aufweist: (a) Empfangen eines Bildes des molekularen Arrays, das durch Abtasten des molekularen Arrays erzeugt wird, um Datensignale zu bestimmen, die aus diskreten Positionen auf einer Oberfläche des molekularen Arrays stammen; wobei das Bild ein Muster aus Pixeln aufweist, wobei jedes Pixel einen oder mehrere Intensitätswerte aufweist, die einem oder mehreren Signalen entsprechen; (b) Berechnen der Intensitätsprofile durch Projizieren der Intensitätswerte der Pixel des Bildes; (c) Vergleichen des Ergebnisses von Schritt (b) mit einem erwarteten Ergebnis, das erhalten werden würde, wenn das Pixelmuster eine vorbestimmte Orientierung auf dem Array aufweisen würde.
  2. Ein Verfahren gemäß Anspruch 1, bei dem: die Merkmale des molekularen Arrays in einem rechteckigen Gitter angeordnet sind und das Pixelmuster ein rechteckiges Gitter aus Zeilen und Spalten aufweist; und Schritt (b) das Berechnen von Zeilen- (406) und Spalten-Vektoren (408) durch Summieren von Pixeln in den Zeilen und Spalten aufweist.
  3. Ein Verfahren gemäß Anspruch 1 oder 2, das, wenn die Ergebnisse des Vergleichs bei Schritt (c) außerhalb einer vorbestimmten Differenz liegen, die Schritte des Änderns der Orientierung des Pixelmusters auf dem Array und des Wiederholens der Schritte (b) und (c) umfasst, bis die Ergebnisse des Vergleichs innerhalb der vorbestimmten Differenz liegen.
  4. Ein Verfahren gemäß Anspruch 1, 2 oder 3, das folgende Schritte aufweist: Erhalten von Informationen auf dem Array-Layout unter Verwendung eines Codes, der dem Array zugeordnet ist, und Erzeugen des Pixelmusters basierend auf den erhaltenen Array-Layout-Informationen.
  5. Ein Verfahren gemäß Anspruch 4, bei dem die Array-Layout-Informationen von einem entfernten Ort erhalten werden.
  6. Ein Verfahren gemäß einem der Ansprüche 1 bis 5, bei dem die Orientierung eine Dreh-Orientierung aufweist.
  7. Ein System zum Bewerten einer Orientierung von Merkmalen eines molekularen Arrays (402), die in einem Muster angeordnet sind, das folgende Merkmale umfasst: (a) eine Einrichtung zum Empfangen eines Bildes des molekularen Arrays, das durch Abtasten des molekularen Arrays erzeugt wird, um Datensignale zu bestimmen, die aus diskreten Positionen auf einer Oberfläche des molekularen Arrays stammen; wobei das Bild ein Muster aus Pixeln aufweist, wobei jedes Pixel einen oder mehrere Intensitätswerte aufweist, die einem oder mehreren Signalen entsprechen; (b) eine Berechnungseinrichtung zum Berechnen der Intensitätsprofile durch Projizieren der Intensitätswerte der Pixel; und (c) eine Vergleichseinrichtung zum Vergleichen des berechneten Ergebnisses mit einem erwarteten Ergebnis, das erhalten werden würde, wenn das Pixelmuster eine vorbestimmte Orientierung auf dem Array aufweisen würde.
DE60124598T 2000-06-06 2001-06-06 Verfahren und System zur Bestimmung der Orientierung eines Microarrays Expired - Fee Related DE60124598T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US659415 1976-02-19
US589046 1996-01-19
US09/589,046 US6591196B1 (en) 2000-06-06 2000-06-06 Method and system for extracting data from surface array deposited features
US09/659,415 US6768820B1 (en) 2000-06-06 2000-09-11 Method and system for extracting data from surface array deposited features

Publications (2)

Publication Number Publication Date
DE60124598D1 DE60124598D1 (de) 2006-12-28
DE60124598T2 true DE60124598T2 (de) 2007-09-06

Family

ID=27080435

Family Applications (2)

Application Number Title Priority Date Filing Date
DE60124598T Expired - Fee Related DE60124598T2 (de) 2000-06-06 2001-06-06 Verfahren und System zur Bestimmung der Orientierung eines Microarrays
DE60117930T Expired - Fee Related DE60117930T2 (de) 2000-06-06 2001-06-06 Verfahren und System zur automatischen Extraktion von Daten aus einem Molekülarray

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE60117930T Expired - Fee Related DE60117930T2 (de) 2000-06-06 2001-06-06 Verfahren und System zur automatischen Extraktion von Daten aus einem Molekülarray

Country Status (3)

Country Link
US (1) US7330606B2 (de)
EP (1) EP1162572B1 (de)
DE (2) DE60124598T2 (de)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5631734A (en) * 1994-02-10 1997-05-20 Affymetrix, Inc. Method and apparatus for detection of fluorescently labeled materials
AU2002254162A1 (en) * 2001-03-08 2002-09-24 Chromavision Medical Systems, Inc. Apparatus and method for labeling rows and columns in an irregular array
US6993172B2 (en) 2001-06-29 2006-01-31 Agilent Technologies, Inc. Method and system for automated outlying feature and outlying feature background detection during processing of data scanned from a molecular array
US7006680B2 (en) * 2002-05-03 2006-02-28 Vialogy Corp. System and method for characterizing microarray output data
US7221785B2 (en) 2002-05-21 2007-05-22 Agilent Technologies, Inc. Method and system for measuring a molecular array background signal from a continuous background region of specified size
DE10256114A1 (de) * 2002-11-29 2004-06-09 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zur Prüfung von Wertdokumenten
EP1450304A1 (de) * 2003-02-21 2004-08-25 City University of Hong Kong Bildverarbeitungs-Gerät und Verfahren
US7269518B2 (en) * 2003-04-30 2007-09-11 Agilent Technologies, Inc. Chemical array reading
US7353116B2 (en) 2003-07-31 2008-04-01 Agilent Technologies, Inc. Chemical array with test dependent signal reading or processing
DE10346636A1 (de) * 2003-10-08 2005-05-12 Giesecke & Devrient Gmbh Vorrichtung und Verfahren zur Prüfung von Wertdokumenten
US7302348B2 (en) 2004-06-02 2007-11-27 Agilent Technologies, Inc. Method and system for quantifying and removing spatial-intensity trends in microarray data
US7315637B2 (en) * 2004-07-16 2008-01-01 Bioarray Solutions Ltd. Image processing and analysis of array data
US9445025B2 (en) 2006-01-27 2016-09-13 Affymetrix, Inc. System, method, and product for imaging probe arrays with small feature sizes
US8055098B2 (en) 2006-01-27 2011-11-08 Affymetrix, Inc. System, method, and product for imaging probe arrays with small feature sizes
US7533313B1 (en) * 2006-03-09 2009-05-12 Advanced Micro Devices, Inc. Method and apparatus for identifying outlier data
JP4241751B2 (ja) * 2006-03-30 2009-03-18 村田機械株式会社 スキャナ制御装置およびスキャナ装置
US8009889B2 (en) 2006-06-27 2011-08-30 Affymetrix, Inc. Feature intensity reconstruction of biological probe array
JP4143101B2 (ja) * 2006-08-10 2008-09-03 アドバンスド・マスク・インスペクション・テクノロジー株式会社 試料検査装置、画像位置合わせ方法、位置ずれ量推定方法及びプログラム
US8077951B2 (en) * 2006-10-12 2011-12-13 Agilent Technologies, Inc. Method and system for dynamic, automated detection of outlying feature and feature background regions during processing of data scanned from a chemical array
WO2008065634A1 (en) * 2006-12-01 2008-06-05 Koninklijke Philips Electronics N.V. Method to automatically decode microarray images
US8446463B2 (en) * 2008-08-22 2013-05-21 Genprime, Inc. Apparatus, method and article to perform assays using assay strips
US8254724B2 (en) * 2008-11-06 2012-08-28 Bausch & Lomb Incorporated Method and apparatus for making and processing aberration measurements
US8774494B2 (en) * 2010-04-30 2014-07-08 Complete Genomics, Inc. Method and system for accurate alignment and registration of array for DNA sequencing
US8571306B2 (en) 2011-08-10 2013-10-29 Qualcomm Incorporated Coding of feature location information
US9477890B2 (en) * 2013-11-06 2016-10-25 International Business Machines Corporation Object detection using limited learned attribute ranges
US10576475B2 (en) 2016-09-15 2020-03-03 Genprime, Inc. Diagnostic assay strip cassette
US10540562B1 (en) * 2016-12-14 2020-01-21 Revenue Management Solutions, Llc System and method for dynamic thresholding for multiple result image cross correlation

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0380659A4 (en) * 1987-10-02 1992-07-15 Kabushiki Kaisha Komatsu Seisakusho Method of recognizing linear pattern
US5001766A (en) * 1988-05-16 1991-03-19 At&T Bell Laboratories Apparatus and method for skew control of document images
US5487115A (en) * 1992-05-14 1996-01-23 United Parcel Service Method and apparatus for determining the fine angular orientation of bar code symbols in two-dimensional CCD images
JP2851023B2 (ja) * 1992-06-29 1999-01-27 株式会社鷹山 Icの傾き検査方法
US5916747A (en) 1995-06-30 1999-06-29 Visible Genetics Inc. Method and apparatus for alignment of signals for use in DNA based-calling
US5837475A (en) 1997-01-30 1998-11-17 Hewlett-Packard Co. Apparatus and method for scanning a chemical array
CA2299325C (en) * 1997-08-07 2008-01-08 Imaging Research, Inc. A digital imaging system for assays in well plates, gels and blots
US6349144B1 (en) 1998-02-07 2002-02-19 Biodiscovery, Inc. Automated DNA array segmentation and analysis
US6754375B1 (en) 1999-07-16 2004-06-22 Packard Bioscience Company Method and system for interactively developing at least one grid pattern and computer-readable storage medium having a program for executing the method
US6362832B1 (en) 1999-09-01 2002-03-26 Packard Bioscience Company Method and system for overlaying at least three microarray images to obtain a multicolor composite image
US6731781B1 (en) * 1999-09-30 2004-05-04 Biodiscovery, Inc. System and method for automatically processing microarrays
US6571005B1 (en) 2000-04-21 2003-05-27 The Regents Of The University Of California Feature extraction and normalization algorithms for high-density oligonucleotide gene expression array data
US6591196B1 (en) * 2000-06-06 2003-07-08 Agilent Technologies Inc. Method and system for extracting data from surface array deposited features
US6498863B1 (en) 2000-09-20 2002-12-24 Media Cybernetics Inc. Method, system, and product for analyzing a digitized image of an array to create an image of a grid overlay
US6993172B2 (en) * 2001-06-29 2006-01-31 Agilent Technologies, Inc. Method and system for automated outlying feature and outlying feature background detection during processing of data scanned from a molecular array

Also Published As

Publication number Publication date
EP1162572A3 (de) 2003-02-05
US7330606B2 (en) 2008-02-12
DE60117930T2 (de) 2006-10-05
US20040264807A1 (en) 2004-12-30
EP1162572A2 (de) 2001-12-12
DE60117930D1 (de) 2006-05-11
DE60124598D1 (de) 2006-12-28
EP1162572B1 (de) 2006-03-15

Similar Documents

Publication Publication Date Title
DE60124598T2 (de) Verfahren und System zur Bestimmung der Orientierung eines Microarrays
EP1494171B1 (de) Verfahren und System zur Bestimmung der Orientierung eines Microarrays
DE69827913T2 (de) Systeme und Verfahren zur Ausrichtung eines abgetasteten Bildes
US7006927B2 (en) Method and system for extracting data from surface array deposited features
Zhang et al. Automated robust crop-row detection in maize fields based on position clustering algorithm and shortest path method
DE69810369T2 (de) Bildwiederauffindungsvorrichtung und -verfahren
DE69620125T2 (de) Gerät zur Bildverarbeitung von Fingerabdrücken
DE19637478B4 (de) Gleichzeitige Ausrichtung mehrerer Bildfragmente
DE60015092T2 (de) Verfahren und vorrichtung zur interpretation von dns-mikroanordnungs-mustern
CN1135500C (zh) 用于分析图象结构的方法和装置
DE60304919T2 (de) Verfahren zur Verhinderung des Signalabschneidens bei Molekülarray-Scannern
EP1769424B1 (de) Bildverarbeitung und analyse der matrixdaten
DE102009036467A1 (de) Mustermodell-Positionierungsverfahren bei Bildverarbeitung, Bildverarbeitungsvorrichtung, Bildverarbeitsprogamm und computerlesbares Aufzeichnungsmedium
DE102004046237A1 (de) Verfahren und System für die gemischte rigide Registrierung von medizinischen 2D/3D-Bildern
DE102009039251A1 (de) Verfahren und Vorrichtung zum Zusammenfügen von mehreren digitalen Einzelbildern zu einem Gesamtbild
KR20080055898A (ko) 이미지 영역들의 자동 선택
DE102013112040B4 (de) System und Verfahren zum Auffinden von sattelpunktartigen Strukturen in einem Bild und Bestimmen von Informationen daraus
DE69327985T2 (de) Bilderkennungsgerät und -verfahren
CN114549600A (zh) 一种荧光图像配准方法
Moradi et al. Automatic locating the centromere on human chromosome pictures
EP2319014B1 (de) Verfahren und vorrichtung zum abbilden von merkmalen auf einem substrat
DE102019105293A1 (de) Schätzung der Bewegung einer Bildposition
DE69033380T2 (de) Verfahren und Einrichtung zum Klassifizieren von Bildelementen in Strahlungsbildern
DE69127139T2 (de) Hierarchische Operationen auf Randattributdaten für Bildbereiche
DE60004080T2 (de) Centroidintegration

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee