DE2725927C2 - - Google Patents

Info

Publication number
DE2725927C2
DE2725927C2 DE2725927A DE2725927A DE2725927C2 DE 2725927 C2 DE2725927 C2 DE 2725927C2 DE 2725927 A DE2725927 A DE 2725927A DE 2725927 A DE2725927 A DE 2725927A DE 2725927 C2 DE2725927 C2 DE 2725927C2
Authority
DE
Germany
Prior art keywords
data
polygon
display
data vectors
vectors
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
Application number
DE2725927A
Other languages
German (de)
Other versions
DE2725927A1 (en
Inventor
Dempster S. Pittsburgh Pa. Us Christenson
Michael F. Sunnyvale Calif. Us Gordon
Roland D. Plymouth Mich. Us Kistler
Frank J. Kriegler
Seymour R. Lampert
Robert E. Marshall
Rowland H. Mclaughlin
Vernon H. Ann Arbor Mich. Us Smith
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.)
ENVIRONMENTAL RESEARCH INSTITUTE OF MICHIGAN ANN ARBOR MICH US
Original Assignee
ENVIRONMENTAL RESEARCH INSTITUTE OF MICHIGAN ANN ARBOR MICH US
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
Application filed by ENVIRONMENTAL RESEARCH INSTITUTE OF MICHIGAN ANN ARBOR MICH US filed Critical ENVIRONMENTAL RESEARCH INSTITUTE OF MICHIGAN ANN ARBOR MICH US
Publication of DE2725927A1 publication Critical patent/DE2725927A1/en
Application granted granted Critical
Publication of DE2725927C2 publication Critical patent/DE2725927C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/40Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Biology (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Description

Die Erfindung betrifft ein System zum Klassifizieren von Datenvektoren aus einer Menge von Datenvektoren, die ein Bild repräsentiert, wobei jeder Datenvektor ein Meßwertspektrum über eine Anzahl verschiedener Wellenlängen aufweist, mit einer Einrichtung zur Bestimmung der Spektralsignaturen von Trainingsproben, die aus bestimmten Teilmengen der Menge von Datenvektoren ausgesondert werden, wobei die Spektralsignaturen aus den zu den Trainingsproben gehörigen Datenvektoren berechnet werden, und einer Einrichtung zum Klassifizieren jedes in der Menge enthaltenen Datenvektors in eine von mehreren Klassen, wobei jede Klasse durch das Meßwertspektrum einer der Trainingsproben definiert ist. The invention relates to a system for classifying Data vectors from a set of data vectors that a Image represents, with each data vector a measured value spectrum over a number of different wavelengths, with a device for determining the spectral signatures of training samples made from certain subsets the set of data vectors are discarded, where the spectral signatures from those belonging to the training samples Data vectors are calculated, and a facility for classifying each data vector contained in the set into one of several classes, with each class going through defines the measurement spectrum of one of the training samples is.

Ein solches System stellt eine wichtige Anwendung der Radiometrie dar. Es basiert auf dem Prinzip, verschiedene Arten von Materie bzw. Gegenständen durch ihr Energiespektrum über einen breiten Wellenlängenbereich zu charakterisieren. Das Energiespektrum eines Gegenstandes kann somit als Spektralsignatur für diesen Gegenstand verwendet werden. Diese Methode hat große Bedeutung für die Identifizierung von Gegenständen aufgrund von Datenmaterial, das von einem komplexen, mehrere Gegenstände umfassenden Bild erhalten worden ist. Dabei ist das Bild aus der Ferne mit einem Detektor abgetastet worden, der auf die emittierte Energie über einen weiten Wellenlängenbereich anspricht. Das komplexe Energiespektrum am Detektorausgang wird nun mit bekannten Spektralsignaturen solcher Gegenstände verglichen, von denen vermutet wird, daß sie sich in dem Bild befinden.Such a system represents an important application of the Radiometry. It is based on the principle of different Types of matter or objects by their energy spectrum to characterize over a wide wavelength range. The energy spectrum of an object can thus can be used as a spectral signature for this object. This method is very important for identification objects based on data provided by get a complex image spanning multiple objects has been. The picture from a distance is included a detector has been scanned which emits on the  Energy over a wide wavelength range. The complex energy spectrum at the detector output is now compared with known spectral signatures of such objects, which is believed to be in the picture are located.

Dieses Verfahren setzt voraus, daß bekannte Spektralsignaturen zur Identifizierung der vermuteten Gegenstände verfügbar sind. Zur Bestimmung der Spektralsignaturen verwendet man Trainingsproben, die eine bestimmte Teilmenge von Abbilddaten der Gesamtmenge der Abbilddaten umfassen, wobei die Teilmenge von Abbilddaten aufgrund einer a-priori-Information, z. B. einer Photographie, des abgetasteten Bildes gewählt wird.This procedure requires known spectral signatures available to identify suspected items are. Used to determine spectral signatures one training samples that a certain subset of Include image data of the total amount of image data, where the subset of image data based on a priori information, e.g. B. a photograph of the scanned image is chosen.

Ein System der obengenannten Art ist aus dem National Aeronautics Administration Report No. NASA Tr-1 32 463 (August 1974) bekannt. Bei diesem System werden Trainingsproben aus der Gesamtmenge der gewonnenen Datenvektoren, wobei jeder Datenvektor das Meßwertspektrum bezüglich einer bestimmten Bildkoordinate aufweist, dadurch ausgesondert, daß ein Operator alle Datenvektoren identifiziert, die dem Bildbereich der jeweiligen Trainingsprobe zukommen. Dabei stellt der Operator für jeden Datenvektor fest, ob er in den jeweiligen Bildbereich fällt oder nicht. Die aufgrund dieser Einzelidentifizierung gewonnenen Datenvektoren werden anschließend zur Bestimmung der Spektralsignatur der Trainingsprobe verwendet. Diese bekannte Aussonderung von Trainingsproben umfaßt eine Vielzahl von Operationschritten, die insgesamt viel Zeit in Anspruch nehmen und zu Fehlerquellen führen können.A system of the type mentioned above is from the National Aeronautics Administration Report No. NASA Tr-1 32 463 (August 1974). With this system, training samples are made the total amount of data vectors obtained, each Data vector the measured value spectrum with respect to a specific Has image coordinate, characterized in that an operator all data vectors identified that the image area the respective training rehearsal. The Operator for each data vector determines whether it is in the respective Image area falls or not. The due to this Individual identification will be obtained data vectors then to determine the spectral signature of the Training sample used. This known separation of Training samples include a variety of surgical steps take a lot of time overall and become sources of error being able to lead.

Der Erfindung liegt die Aufgabe zugrunde, bei dem bekannten System die Identifizierung der zu einer Trainingsprobe gehörenden Datenvektoren zu vereinfachen und zu beschleunigen. The invention has for its object in the known System identification of those belonging to a training sample Simplify and accelerate data vectors.  

Die Aufgabe wird dadurch gelöst, daß das gattungsgemäße System eine Displayeinrichtung zum Anzeigen der Menge von Datenvektoren in einem zweidimensionalen, geordneten Schema, eine mit der Displayeinrichtung zusammenwirkende Operatorsteuereinrichtung zum Beschreiben eines geschlossenen Polygons um bestimmte Teilmengen der Menge von Datenvektoren auf dem Display zur Festlegung einer gewünschten Trainingsprobe, eine Speichereinrichtung zum Speichern der Lage der Polygoneckpunkte, eine Einrichtung zum automatischen, sequentiellen Vergleichen der Lage jedes Datenvektors auf dem Display mit der Lage des Polygons und eine Einrichtung zum Zuführen von Daten nur solcher Datenvektoren, die auf oder innerhalb des Polygons liegen, zu der Einrichtung zur Bestimmung der Spektralsignaturen von den Trainingsproben aufweist.The object is achieved in that the generic System a display device for displaying the amount of Data vectors in a two-dimensional, ordered scheme, one interacting with the display device Operator control device for describing a closed Polygons around certain subsets of the set of data vectors on the display to set a desired one Training sample, a storage device for storing the location the polygon vertices, a device for automatic, sequential comparison of the location of each data vector the display with the location of the polygon and a device for supplying data only to those data vectors which are based on or within the polygon, to the facility for Determination of the spectral signatures from the training samples having.

Aufgrund der erfindungsgemäßen Kombination der obigen Einrichtungen wird ein automatisches Aussondern der Trainingsproben aus der Menge von Datenvektoren und damit ein einfaches, sicheres und schnelles Verfahren erreicht. Jeder Datenvektor weist die Koordinaten eines Bildelementes des abgetasteten Bildes auf. Das zweidimensionale, geordnete Schema, in dem die Menge von Datenvektoren durch die Displayeinrichtung angezeigt wird, entspricht dem Koordinatensystem des abgetasteten Bildes. Das auf dem Display beschriebene geschlossene Polygon bestimmt sich aufgrund einer A-Priori-Information über das abgetastete Bild, gewöhnlich durch eine Photographie. Das Polygon wird dann nach den Umrissen des auf der Photographie dargestellten Gegenstandes festgelegt.Due to the combination of the above devices according to the invention will automatically discard the training samples from the set of data vectors and thus a simple, safe and fast procedure achieved. Everyone Data vector has the coordinates of a picture element of the scanned image. The two-dimensional, orderly Scheme in which the amount of data vectors through the display device is displayed corresponds to the coordinate system of the scanned image. The one described on the display closed polygon is determined based on a priori information about the scanned image, usually through a photograph. The polygon will then according to the outline of the one shown in the photograph Subject set.

Weitere bevorzugte Ausbildungen des erfindungsgemäßen Systems werden durch die Unteransprüche beschrieben.Further preferred embodiments of the invention Systems are described by the subclaims.

Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher beschrieben. In der Zeichnung zeigt An embodiment of the invention is in the drawing shown and is described in more detail below. In the Drawing shows  

Fig. 1 eine schematische Darstellung eines Systems zum Klassifizieren von Datenvektoren, Fig. 1 is a schematic representation of a system for classifying data vectors,

Fig. 2 ein Schaubild der Operator-Steuerbausteine des Systems nach Fig. 1, FIG. 2 shows a diagram of the operator control components of the system according to FIG. 1,

Fig. 3 eine Fließbilddarstellung der Schritte, die zur Berechnung der Spektralsignatur einer Trainingsprobe durchgeführt werden, Fig. 3 is a flow chart representation of the steps that are performed to calculate the spectral signature of a training sample,

Fig. 4 bis 6 Fließbilddarstellungen von Verfahren, die zum Identifizieren der zu einer Trainingsprobe gehörenden, auf einem Display angezeigten Datenvektoren angewendet werden, Fig. 4 to 6 flowchart illustrations of methods, which are belonging to a training sample used for identifying the data displayed on a display vectors,

Fig. 7 ein Schaubild des Schirms eines Kathodenstrahlröhrendisplays von Datenvektoren mit einer Trainingsprobe, und Fig. 7 is a diagram of the screen of a cathode ray tube displays of data vectors with a training sample, and

Fig. 8 eine Fließbilddarstellung der Schritte, die beim Aussondern von Testbereichen von Datenvektoren angewendet werden, um die Genauigkeit von bereits errechneten Spektralsignaturen zu prüfen. Figure to test. 8 is a flow chart showing the steps that are applied during culling test areas of data vectors to improve the accuracy of pre-calculated spectral signatures.

Das System zum Klassifizieren von Datenvektoren weist ein Datenverarbeitungssystem auf, das allgemein mit 10 in Fig. 1 bezeichnet ist. The system for classifying data vectors has a data processing system, generally designated 10 in FIG. 1.

In der Gesamtsicht ist das Datenverarbeitungssystem 10 eine Kombination aus mehreren Untersystemen, die zusammenwirken, um unbearbeitete, nicht klassifizierte Datenvektoren, die ein abgetastetes Bild repräsentieren, in eine klassifizierte Wiedergabe des Bilds an einem Hartkopie-Farb-Ausgang oder an einem anderen geeigneten Displaymedium zu verarbeiten.Overall, data processing system 10 is a combination of multiple subsystems that work together to process raw, unclassified data vectors representing a scanned image into a classified representation of the image at a hard copy color output or other suitable display medium .

Ein zentrales Verarbeitungs-Untersystem (CP), das allgemein mit 12 bezeichnet ist, ist für Überwachungs- und Ausführungssystemaufgaben verantwortlich. Das Verarbeitungs-Untersystem 12 weist einen Allzweck-Digitalcomputer und die erforderlichen peripheren Einrichtungen 22 auf, einschließlich Kern- und Scheibenspeichereinheiten. Ferner gehören zum Verarbeitungs-Untersystem 12 die Interfaces 24, die erforderlich sind, um die peripheren Einrichtungen in Kommunikation mit dem Digitalcomputer zu setzen.A central processing subsystem (CP) , generally designated 12 , is responsible for monitoring and execution system tasks. Processing subsystem 12 includes a general purpose digital computer and the required peripheral devices 22 , including core and disk storage units. The processing subsystem 12 also includes the interfaces 24 that are required to put the peripheral devices in communication with the digital computer.

Die Datenvektoren werden in unbearbeiteter Form in das System durch ein Dateneingabe-Untersystem eingegeben, das allgemein mit 14 bezeichnet ist. Die unbearbeiteten Eingabedaten, die durch die Bezugszahl 26 dargestellt sind, sind üblicherweise auf Magnetband gespeichert, und zwar entweder auf Analogband, hochdichtem Digitalband oder computerkonformem Band. Die Daten erscheinen auf dem Band in einer Folge getrennter Elemente, von denen jedes eine Elementarpartie eines Bildes wiedergibt. Jedes Datenelement hat die Form eines n × 1-Vektors, wobei n die Zahl der benutzten Spektralkanäle wiedergibt. Entsprechend gibt die i-te Position des Vektors die Signalstärke im i-ten Kanal wieder. Eine Eingabeeinheit 28 liest die Daten 26 ein; deren Form hängt von der betreffenden Art des gewählten Eingangsmediums ab. Von der Eingabeeinheit 28 fließen die Daten zu einem Datenwegwähler 30, einer Sonderzweck-Baustein-Einheit, die so konstruiert ist, daß der Datenfluß längs Alterntivwegen geleitet wird, je nach der durchzuführenden Verarbeitungsfunktion. Zum wiederholten Gebrauch wird das Datenmaterial in eine willkürlich zugängliche Speichereinrichtung (Scheibe) 33 durch das Interface 24 eingegeben, es kann aber auch direkt zu einem Vorverarbeiter 38 geleitet werden.The data vectors are input to the system in raw form through a data entry subsystem, generally designated 14 . The raw input data represented by reference numeral 26 is typically stored on magnetic tape, either on analog tape, high-density digital tape, or computer-compliant tape. The data appears on the tape in a series of separate elements, each representing an elementary portion of an image. Each data element is in the form of an n × 1 vector, where n represents the number of spectral channels used. Accordingly, the i- th position of the vector reflects the signal strength in the i- th channel. An input unit 28 reads in the data 26 ; the shape of which depends on the type of input medium selected. The data flows from the input unit 28 to a data path selector 30 , a special purpose building block unit, which is constructed such that the data flow is routed along alternative paths, depending on the processing function to be performed. For repeated use, the data material is entered into an arbitrarily accessible storage device (disk) 33 through the interface 24 , but it can also be passed directly to a preprocessor 38 .

Ein benutzer-interaktives Untersystem, das allgemein mit 16 bezeichnet ist, sorgt für eine Operator-Teilnahme an der Verarbeitungsfolge. Eine solche Teilnahme ist hauptsächlich für das Identifizieren von Trainingsproben und Testbereichen zur Berechnung und zum Testen von Spektralsignaturen wichtig. Das Untersystem 16 weist ein Dreifarben-Kathodenstrahlröhren-(CRT)-Display 32 zur Präsentation von Datenvektoren, einen Bahnkugelzeiger 34 zum Umranden einer Teilmenge der am CRT 32 präsentierten Datenvektoren, und eine alphanumerische Tastatur 36 und ein Einfarben-CRT-Display 37 auf, die zusammen für eine Kommunikation zwischen dem Operator und dem zentralen Verarbeitungs-Untersystem 12 sorgen. Einzelheiten der Vorrichtung und die Arbeitsweise des benutzer-interaktiven Untersystems 16 werden nachstehend noch detailliert beschrieben.A user interactive subsystem, generally designated 16 , provides operator participation in the processing sequence. Such participation is primarily important for identifying training samples and test areas for calculating and testing spectral signatures. Subsystem 16 includes a three-color CRT display 32 for presenting data vectors, a ball ball pointer 34 for framing a subset of the data vectors presented on CRT 32 , and an alphanumeric keyboard 36 and a single-color CRT display 37 together provide communication between the operator and central processing subsystem 12 . Details of the device and operation of the user interactive subsystem 16 will be described in detail below.

Die Datenvektoren werden durch ein Datenverarbeitungs-Pipeline- Untersystem klassifiziert, das allgemein mit 18 bezeichnet ist und das den Vorverarbeiter 38 und einen Klassifizierer 40 aufweist, die beide Sonderzweck-Baustein-Einheiten sind, deren Funktionen im folgenden kurz beschrieben werden.The data vectors are classified by a data processing pipeline subsystem, generally designated 18 , which includes preprocessor 38 and classifier 40 , both of which are special purpose building block units, the functions of which are briefly described below.

Die Funktion des Vorverarbeiters 38 besteht darin, die unbearbeiteten Daten nach einer von mehreren Weisen in Vorbereitung auf die Klassifizierung aufzubereiten. Verschiedene Methoden der Aufbereitung sind unter anderem: Signalaufbereitung zum maßstäblichen Übertragen der unbearbeiteten Daten in einen akzeptablen dynamischen Breich, Korrektur des Abtastwinkelfehlers mit additiven und/oder multiplikativen Operationen, lineare Umformung von Datenvektoren zur Maßreduktion und Verhältniseinstellung von Kanälen. Diese Operationen begünstigen in vielen Fällen die Klassifizierungsgenauigkeit, ohne den Informationsgehalt zu beeinträchtigen.The function of preprocessor 38 is to prepare the raw data in one of several ways in preparation for classification. Different processing methods include: signal processing for the full-scale transfer of the unprocessed data into an acceptable dynamic range, correction of the scanning angle error with additive and / or multiplicative operations, linear transformation of data vectors to reduce the dimensions and ratio setting of channels. In many cases, these operations favor classification accuracy without affecting the information content.

Der Ausgang des Vorverarbeiters 38 fließt direkt zum Eingang des Klassifizierers 40, der die eigentliche Klassifizierung der Daten in Kategorien vornimmt. Der Klassifizierer 40 führt vorzugsweise eine Entscheidungsrechnung größter Wahrscheinlichkeit durch, die von einer Gaußschen Wahrscheinlichkeitsverteilung ausgeht. The output of preprocessor 38 flows directly to the input of classifier 40 , which actually classifies the data into categories. The classifier 40 preferably carries out a decision calculation with the highest probability, which is based on a Gaussian probability distribution.

Die klassifizierten Daten gehen vom System 10 durch ein Datenausgabe- Untersystem, das allgemein mit 20 bezeichnet ist und das einen Drucker 42 zur Herstellung einer Hartkopie-Aufzeichnung der klassifizierten Daten aufweist, wie sie durch die Bezugszahl 44 dargestellt sind.The classified data passes from the system 10 through a data output subsystem, generally designated 20 , which has a printer 42 for making a hard copy record of the classified data, as indicated by reference numeral 44 .

Gemäß der Darstellung in Fig. 2 hat das benutzter-interaktive Untersystem 16 die Spektralsignaturen von Gegenstandsklassen zu bestimmen, von denen angenommen wird, daß sie in der Menge der das Bild repräsentierenden Datenvektoren vorliegen. Die Berechnung der Spektral-Signatur ist notwendigerweise ein mensch-maschinen-interaktiver Vorgang. Im groben Umriß muß der Operator in der Lage sein, von der Speicherung und vom Display Datensätze abzurufen, basierend auf eine ihm zur Verfügung stehenden a-priori-Information, von denen vermutet wird, daß sie Trainingsproben von Gegenstandsklassen enthalten. Er muß zwischen Trainingsprobenbereichen und Nichttrainingsprobenbereichen im Datendisplay unterscheiden. Die in den Trainingsprobenbereichen enthaltenen Datenelemente müssen dann für eine anschließende Spektralanalyse zusammengesetzt werden.As shown in FIG. 2, the interactive subsystem 16 used must determine the spectral signatures of classes of objects that are believed to exist in the set of data vectors representing the image. The calculation of the spectral signature is necessarily a human-machine interactive process. In broad outline, the operator must be able to retrieve records from storage and display based on a priori information available to them that is believed to include training samples of item classes. He must differentiate between training sample areas and non-training sample areas in the data display. The data elements contained in the training sample areas must then be put together for a subsequent spectral analysis.

Um diese Aufgaben zu erleichtern, weist das benutzer-interaktive Untersystem 16 das Dreifarben-CRT-Display 32, den Bahnkugelzeiger 34 und die alphanumerische Tastatur 36 und das Einfarben-CRT-Display 37 auf.In order to facilitate these tasks, the user-interactive subsystem 16 has the three-color CRT display 32 , the track ball pointer 34 and the alphanumeric keyboard 36 and the single-color CRT display 37 .

Das Dreifarben-CRT-Display 32 bildet die Grundeinrichtung zur Präsentation der Datenvektoren. Das Display benutzt eine MOS-Speicherung für die Schirmwiederholung und ermöglicht die Präsentation von 512 mal 512 Elementen auf dem Schirm mit 5 bits (plus einem Überlagerungsbit) pro Bildelement. Jedes Fünf-bit-Element kann in drei Vier-bit-Signale durch Tabellen-Nachschlage-Speicher übersetzt werden. Der Überlagerungskanal wird benutzt, um Punkte als Zeigerpunkte zu bezeichnen oder um Grenzstellen bei der Bezeichnung von Feldern für die Analyse anzuzeigen.The three-color CRT display 32 forms the basic device for presenting the data vectors. The display uses MOS storage for the screen repetition and enables the presentation of 512 by 512 elements on the screen with 5 bits (plus one overlay bit) per picture element. Each five-bit element can be translated into three four-bit signals by table look-up memories. The overlay channel is used to designate points as pointer points or to indicate boundary points when designating fields for analysis.

Die Operatorsteuerung erfolgt durch den Bahnkugelzeiger 34 und die alphanumerische Tastatur 36. Der Bahnkugelzeiger 34 steuert die Position des Zeigerbits am Schirm des CRT-Displays 32. Wenn der Zeigerbit einmal in die gewünschte Position bewegt ist, kann der Operator das dem System signalisieren, indem er den "INTER"-Knopf 35 am Bahnkugelzeiger 34 drückt. Die alphanumerische Tastatur 36 und das Einfarben-CRT-Display 37 ermöglichen eine Zweiwegekommunikation zwischen dem Operator und dem zentralen Verarbeitungs-Untersystem 12.The operator is controlled by the track ball pointer 34 and the alphanumeric keyboard 36 . The track ball pointer 34 controls the position of the pointer bit on the screen of the CRT display 32 . Once the pointer bit has moved to the desired position, the operator can signal this to the system by pressing the "INTER" button 35 on the track ball pointer 34 . The alphanumeric keyboard 36 and the single color CRT display 37 enable two-way communication between the operator and the central processing subsystem 12 .

Eine typische Trainingsfolge in der Errechnung einer Spektralsignatur ist durch Fig. 3 wiedergegeben. Die Folge beginnt mit der Annahme, daß eine Basismenge digitalisierter Abbilddaten im Speicher der willkürlich zugänglichen Speichereinrichtung 33 vorhanden ist. Die Basisdaten sind repräsentativ für ein Bild, das von einem entfernten, sich bewegenden Objekt abgetastet worden ist, allgemein einem Flugkörper oder einem Erdsatelliten. Die aktenkundigen Daten werden in einem zweidimensionalen Format gespeichert, d. h. Abtastzeile um Abtastzeile und Bildelement um Bildelement (pixel), die sich auf Bezugspositionen im abgetasteten Bild beziehen.A typical training sequence in the calculation of a spectral signature is shown in FIG. 3. The sequence begins with the assumption that a basic set of digitized image data is present in the memory of the randomly accessible storage device 33 . The base data is representative of an image that has been scanned from a distant moving object, generally a missile or an earth satellite. The documented data is stored in a two-dimensional format, ie scan line by scan line and picture element by picture element (pixel), which relate to reference positions in the scanned image.

Im Schritt 100 ruft der Operator von der willkürlich zugänglichen Speichereinrichtung 33 ab und präsentiert am CRT-Display 32 einen Satz der Basis der multiplispektralen Abbilddaten, von denen er glaubt, daß sie eine Gegenstandsklasse enthalten. Der Datensatz wird in einer zweidimensionalen geordneten Reihenfolge präsentiert. Die Datensatzwahl ist typischerweise auf eine a-priori-Information über das abgetastete Bild bezogen, z. B. eine Bodenechtphotographie, wie durch die Offline-Registratur 102 dargestellt.In step 100 , the operator retrieves from the randomly accessible storage device 33 and presents on the CRT display 32 a set of the basis of the multipispectral image data which he believes to contain an item class. The data set is presented in a two-dimensional order. The data record selection is typically related to a priori information about the scanned image, e.g. B. Soil photography, as represented by the offline registry 102 .

Im Schritt 104 identifiziert der Operator die Trainingsprobe auf dem Schirm des CRT-Displays 32. Genauer zeichnet der Operator die Trainingsproben-Datenelemente aus dem Rest der Datenelemente auf, indem ein Polygon definiert wird, das die Trainingsprobe darstellt. Beispielsweise stellt das gestrichelte Polygon 50 auf dem Schirm des CRT-Displays 32 in Fig. 7 ein Flugzeug dar. In step 104 , the operator identifies the training sample on the screen of the CRT display 32 . More specifically, the operator records the training sample data items from the rest of the data items by defining a polygon that represents the training sample. For example, the dashed polygon 50 on the screen of the CRT display 32 in FIG. 7 represents an aircraft.

Das Polygon wird durch sequenzielle Festlegung seiner Ecken wie folgt definiert. Der Operator bewegt den Bahnkugelzeiger 34 so, daß die Zeigerspitze 48 über einer Ecke auf dem Schirm des CRT-Displays 32 liegt. Die Identifizierung dieser Ecke wird dem System mitgeteilt, indem der Eingabeknopf 35 am Bahnkugelzeiger 34 gedrückt wird. Die Zeigerspitze 48 wird dann zur nächsten Ecke bewegt, und deren Identifizierung wird in gleicher Weise eingegeben. Diese Folge wird für jede Ecke wiederholt. Wenn die letzte Ecke erreicht und eingegeben worden ist, wird durch Drücken des Eingabeknopfs 35 ohne Bewegung des Zeigers das Polygon geschlossen.The polygon is defined by sequentially defining its corners as follows. The operator moves the track ball pointer 34 so that the pointer tip 48 lies over a corner on the screen of the CRT display 32 . The identification of this corner is communicated to the system by pressing the input button 35 on the track ball pointer 34 . The pointer tip 48 is then moved to the next corner and its identification is entered in the same way. This sequence is repeated for every corner. When the last corner has been reached and entered, pressing the input button 35 closes the polygon without moving the pointer.

Als nächstes ist es, wie durch den Schritt 106 angezeigt, Aufgabe der System-Software, Koordinaten des Datenelements zu identifizieren, das im Polygon enthalten ist. Zu diesem Zweck benutzt das System den Abtastarbeitslauf, der in Fig. 4 bis 6 dargestellt ist.Next, as indicated by step 106, it is the system software's job to identify coordinates of the data element contained in the polygon. To this end, the system uses the scan workflow shown in Figs. 4-6.

Der Hauptarbeitsablauf zum Identifizieren von Datenelementen innerhalb des Polygons ist mit IDENTIFY betitelt und ist in Fließbildform in Fig. 4 gezeigt. Zwei Unterarbeitsabläufe, die von IDENTIFY abgerufen werden, sind mit RECTANGLE und POLYGON CHECK betitelt, und diese sind in Fließbildform in Fig. 5 und 6 gezeigt.The main workflow for identifying data elements within the polygon is titled IDENTIFY and is shown in flow diagram form in FIG. 4. Two sub-workflows retrieved from IDENTIFY are titled RECTANGLE and POLYGON CHECK, and these are shown in flow chart form in FIGS. 5 and 6.

Beim Eingeben von IDENTIFY bei 200 in Fig. 4 wird der Unterarbeitsablauf RECTANGLE sofort im Schritt 202 abgerufen. Die Funktion des Unterarbeitsablaufs RECTANGLE besteht darin, ein Rechteck kleinster Fläche um das Polygon zu umschreiben, wie das durch das strichpunktierte Rechteck 52 um das Polygon 50 in Fig. 7 dargestellt ist. Nur Datenelemente innerhalb dieses Rechtecks werden in einem Schritt analysiert, um die Programmeffizienz zu verbessern.When entering IDENTIFY at 200 in FIG. 4, the sub-workflow RECTANGLE is called up immediately in step 202 . The function of the sub-workflow RECTANGLE is to circumscribe a rectangle of the smallest area around the polygon, as is represented by the dash-dotted rectangle 52 around the polygon 50 in FIG. 7. Only data elements within this rectangle are analyzed in one step to improve program efficiency.

Nach Fig. 5 wird der Unterarbeitsablauf RECTANGLE durch den Schritt 250 eingegeben. Der Arbeitsablauf benutzt mehrere Variable, die wie folgt definiert sind: N = Anzahl der Polygonecken; I = eine Attrappenvariable, die zum Zählen von Wiederholungen benutzt wird, VTXY ist ein N-dimensionaler Vektor, dessen i-tes Element der Y-Koordinatenwert für die i-te Polygonecke ist; VTXX ist ein N -dimensionaler Vektor, dessen i-tes Element der X-Koordinatenwert für die i-te Polygonecke ist; MAXY ist gleich dem größten Element im VTXY-Vektor; MINY ist gleich dem kleinsten Element im VTXY-Vektor; MAXX ist gleich dem größten Element im VTXX-Vektor; MINX ist gleich dem kleinsten Element im VTXY-Vektor.According to Fig. 5 of the sub-workflow RECTANGLE is entered by the step 250. The workflow uses several variables, which are defined as follows: N = number of polygon corners; I = a dummy variable used for counting repetitions, VTXY is an N -dimensional vector, the i -th element of which is the Y- coordinate value for the i -th polygon corner; VtXX is an N -dimensional vector whose i th element is the X coordinate value for the i-th polygon corner; MAXY is the largest element in the VTXY vector; MINY is the smallest element in the VTXY vector; MAXX is the largest element in the VTXX vector; MINX is the smallest element in the VTXY vector.

Im Prinzip ist RECTANGLE ein sich wiederholender Sortierarbeitsablauf, der jede Polygonecke untersucht, um die Extrem-X- und -Y-Koordinaten zu finden. Im Schritt 252 sind verschiedene Variable initialisiert; I ist auf 1 eingestellt, und MAXY, MINY, MAXX und MINX sind alle auf Werte eingestellt, die den Koordinaten der ersten Polygonecke entsprechen.In principle, RECTANGLE is a repetitive sorting workflow that examines each polygon corner to find the extreme X and Y coordinates. Various variables are initialized in step 252 ; I is set to 1 and MAXY, MINY, MAXX and MINX are all set to values that correspond to the coordinates of the first polygon corner.

Das Programm tritt dann in einen sich wiederholenden Sortierkreis, der allgemein bei 274 gezeigt ist. In der Entscheidung 254 wird I mit N verglichen, um zu prüfen, ob der Kreis geschlossen worden ist.The program then enters a repeating sorting cycle, shown generally at 274 . Decision 254 compares I to N to see if the loop has been closed.

Wenn I nicht größer als N ist, wird dem "No"-Zweig der Entscheidung 254 gefolgt. Schritt 256 stuft I um eine Einheit weiter. Das Sortieren beginnt dann.If I is not greater than N , the "No" branch of decision 254 is followed. Step 256 increments I by one unit. Sorting then begins.

Die Entscheidung 258 vergleicht VTXY (I) mit dem laufenden Wert von MAXY. Wenn es größer ist, wird dem "Yes"-Zweig der Entscheidung 258 zum Schritt 260 gefolgt, wo MAXY gleich VTXY (I) eingestellt wird. Wenn es nicht größer ist, wird dem "No"-Zweig der Entscheidung 258 gefolgt, und MAXY bleibt unverändert.Decision 258 compares VTXY (I) to the current value of MAXY. If it is larger, the "yes" branch of decision 258 is followed to step 260 where MAXY is set equal to VTXY (I) . If it is not larger, the "No" branch of decision 258 is followed and MAXY remains unchanged.

Die Entscheidung 262 vergleicht VTXY (I) mit dem laufenden Wert von MINY. Wenn es kleiner ist, wird dem "Yes"-Zweig von Entscheidung 262 zum Schritt 264 gefolgt, wo MINY gleich VTXY (I) eingestellt wird. Wenn es nicht kleiner ist, wird dem "No"-Zweig der Entscheidung 262 gefolgt, und MINY bleibt unverändert.Decision 262 compares VTXY (I) to the current value of MINY. If it is smaller, the "yes" branch is followed from decision 262 to step 264 where MINY is set equal to VTXY (I) . If it is not less, the "No" branch of decision 262 is followed and MINY remains unchanged.

Die Entscheidung 266 vergleicht VTXX (I) mit dem laufenden Wert von MAXX. Wenn es größer ist, wird dem "Yes"-Zweig der Entscheidung 266 zum Schritt 268 gefolgt, wo MAXX gleich VTXX (I) eingestellt wird. Wenn es nicht größer ist, wird dem "No"-Zweig der Entscheidung 266 gefolgt, und MAXX bleibt unverändert.Decision 266 compares VTXX (I) with the current value of MAXX. If it is larger, the "yes" branch of decision 266 is followed to step 268 where MAXX is set equal to VTXX (I) . If it is not larger, the "No" branch of decision 266 is followed and MAXX remains unchanged.

Die Entscheidung 270 vergleicht VTXX (I) mit dem laufenden Wert von MINX. Wenn es kleiner ist, wird dem "Yes"-Zweig der Entscheidung 270 bis zum Schritt 272 gefolgt, wo MINX gleich VTXX (I) eingestellt wird. Wenn es nicht kleiner ist, wird dem "No"-Zweig der Entscheidung 270 zur Wiedereingabe der Entscheidung 254 gefolgt, und MINX bleibt unverändert.Decision 270 compares VTXX (I) to the current value of MINX. If it is smaller, the "yes" branch of decision 270 is followed to step 272 where MINX is set equal to VTXX (I) . If it is not less, the "No" branch of decision 270 is re-entered to decision 254 and MINX remains unchanged.

Wenn I größer als N wird, d. h. wenn alle Polygonecken überprüft worden sind, wird dem "Yes"-Zweig der Entscheidung 254 gefolgt. An diesem Punkt sind die vier Ecken eines Rechtecks, das das Polygon umschreibt, definiert worden. Im Schritt 276 sind vier Variable, die das Rechteck bezüglich der (X, Y-) Koordinaten zweier diagonal gegenüberliegender Ecken kennzeichnen, vorgegebene Werte. Das untere rechte Y wird gleich MAXY eingestellt, das untere rechte Y wird gleich MAXX eingestellt, das obere linke Y wird gleich MINY eingestellt, und das obere linke X wird gleich MINX eingestellt. Im Schritt 278 kehrt das Programm in der Abrufarbeitsablauf INDENTIFY zurück.If I becomes greater than N , that is, if all polygon corners have been checked, the "yes" branch of decision 254 is followed. At this point the four corners of a rectangle that defines the polygon have been defined. In step 276 , four variables that identify the rectangle with respect to the (X, Y) coordinates of two diagonally opposite corners are predetermined values. The lower right Y is set equal to MAXY, the lower right Y is set equal to MAXX, the upper left Y is set equal to MINY, and the upper left X is set equal to MINX. At step 278 , the program returns to the INDENTIFY polling workflow.

Wenn nach Fig. 4 einmal das umschriebene Rechteck identifiziert worden ist, wird jedes Datenelement im Rechteck überprüft, um zu bestimmen, ob es im Polygon enthalten ist. Jedes Datenelement ist durch seine X- und Y-Koordinaten identifiziert; X bezieht sich dabei auf die waagrechte Position, und Y bezieht sich auf die senkrechte Position in der zweidimensionalen geordneten Reihenfolge von Datenelementen.If according to FIG. 4, the circumscribed rectangle has been identified once, each data element is checked in the rectangle to determine whether it is included in the polygon. Each data element is identified by its X and Y coordinates; X refers to the horizontal position, and Y refers to the vertical position in the two-dimensional ordered order of data elements.

Die Prüfung beginnt mit den numerisch niedrigsten X- und Y-Koordinaten im Rechteck, und dabei handelt es sich um die obere linke Ecke des Rechtecks. Entsprechend wird im Schritt 204 Y gleich dem oberen linken Y eingestellt, und im Schritt 206 wird X gleich dem oberen linken X eingestellt. Im Schritt 208 wird der Unterarbeitsablauf POLYGON CHECK abgerufen, um zu bestimmen, ob dieses Datenelement im Polygon enthalten ist.The test begins with the numerically lowest X and Y coordinates in the rectangle, which is the top left corner of the rectangle. Accordingly, Y is set equal to the upper left Y in step 204 , and X is set equal to the upper left X in step 206 . At step 208 , the POLYGON CHECK sub-workflow is retrieved to determine whether this data item is included in the polygon.

Nach Fig. 6 wird POLYGON CHECK im Block 284 eingegeben. Die einzigen neuen Variablen, die in diesen Arbeitsablauf eingeführt werden, sind Attrappenzählvariablen, nämlich COUNT und J, die im Schritt 286 auf 0 bzw. 1 eingestellt werden.According to FIG. 6 POLYGON CHECK is entered in block 284. The only new variables introduced in this workflow are dummy count variables, namely COUNT and J , which are set to 0 and 1 in step 286 .

Das Programm tritt dann in einen sich wiederholenden Prüfarbeitsablauf, allgemein mit 280 bezeichnet, der N Durchgänge erfordert, wobei N gleich der Zahl der Ecken ist. In der Gesamtsicht wird jedes Datenelement zunächst einfach bei 288 getestet, um zu bestimmen, ob es vertikal zwischen den Y-Koordinaten der J-ten und der J+1-ten Ecke liegt, d. h. "neben" der Polygonseite zwischen diesen Ecken liegt. Ein Punkt waagrecht neben einer Ecke wird als nur neben der unteren Seite liegend angenommen, indem strikte und nicht-strickte Ungleichheiten gewählt werden. Wenn ja, bestimmt eine aufwendigere Auswertung bei 290, ob der Punkt links von der Polygonseite oder auf der Polygonseite zwischen der J-ten und der J+1-ten Ecke liegt. Wenn ja, wird die Variable COUNT um eine Einheit bei 292 weitergestuft. Wenn am Ende des sich wiederholenden Kreises Count bei 298 ungerade ist, weiß man, daß das Datenelement links von einer ungeraden Anzahl von Seiten liegt und damit im Polygon enthalten ist, und umgekehrt, wenn COUNT gerade ist.The program then enters a repeating test procedure, generally designated 280 , which requires N passes, where N is the number of corners. In the overall view, each data element is first simply tested at 288 to determine whether it lies vertically between the Y coordinates of the J th and J + 1 th corners, that is to say “next to” the polygon side between these corners. A point horizontally next to a corner is assumed to be just next to the bottom side by choosing strict and non-knit inequalities. If so, a more complex evaluation at 290 determines whether the point is to the left of the polygon side or on the polygon side between the J th and the J + 1 th corner. If so, the variable COUNT is incremented by one at 292 . If Count is odd at 298 at the end of the repeating circle, we know that the data element is to the left of an odd number of pages and is therefore contained in the polygon, and vice versa if COUNT is even.

Im Detail wird der sich wiederholende Prüfarbeitsablauf 280 mit der Entscheidung 288 eingegeben, die fragt, ob der Y-Koordinatenwert des Datenelements zwischen den Werten der Y-Koordinaten der J-ten und der J+1-ten Polygonecke liegt oder den gleichen Wert wie die Ecke mit der größeren Y-Koordinate hat. Wenn nicht, ist es klar, daß das Datenelement nicht waagrecht "neben" der Polygonseite liegt, die dadurch definiert ist, daß deren Endpunkte die J-te und die J+1-te Ecke sind, und dem "No"-Zweig der Entscheidung 288 wird gefolgt. Es ist zu beachten, daß diese gleiche Ungleichheitsprüfung gleichzeitig sichergestellt hat, daß die Polygonseite nicht waagrecht liegt.In detail, the repetitive Prüfarbeitsablauf 280 is input to the decision 288, which asks whether the Y coordinate value th of the data item between the values of the Y coordinates of the J and J + 1-th polygon corner is located or the same value as the Corner with the larger Y coordinate. If not, it is clear that the data item is not "next" of the polygon side is horizontal, which is defined by the fact that the end points of th the J and J + 1-th are corner, and the "No" branch of decision 288 is followed. It should be noted that this same inequality check also ensured that the polygon side was not horizontal.

Wenn der Entscheidung 288 genügt wird, wird dem "Yes"-Zweig zur Entscheidung 290 gefolgt, wo die X- und Y-Koordinatenwerte des Datenelements im Zusammenhang mit denselben beiden Polygonecken überprüft werden, um zu sehen, ob das Datenelement auf der Polygonseite liegt oder sich links davon befindet. Die Differenz zwischen dem X-Koordinatenwert des Datenelements und dem X-Koordinatenwert der J-ten Ecke wird mit der Differenz zwischen dem Y-Koordinatenwert der J-ten Ecke verglichen, in Maßstab gesetzt durch die Umkehrung der Neigung zwischen der J-ten und der J+1-ten Ecke, wobei die mit Vorzeichen versehene waagrechte Verlagerung des Datenelements von der Seite erhalten wird. Wenn der Vergleich zeigt, daß sich das Datenelement strikt rechts von der Seite befindet, wird dem "No"-Zweig der Entscheidung 290 gefolgt. Wenn der Entscheidung 290 genügt wird und dem "Yes"-Zweig gefolgt wird, wird im Schritt 292 COUNT um eine Einheit weitergestuft.If decision 288 is satisfied, the "yes" branch is followed to decision 290 where the data element's X and Y coordinate values are checked against the same two polygon corners to see if the data element is on the polygon side or is to the left of it. The difference between the X coordinate value of the data element and the X coordinate value of the J-th area is compared th area with the difference between the Y coordinate value of J, in scale set by the inverse of the slope between the J th and J + 1-th corner, whereby the signed horizontal displacement of the data element is obtained from the side. If the comparison shows that the data element is strictly to the right of the page, the "No" branch of decision 290 is followed. If decision 290 is satisfied and the "yes" branch is followed, COUNT is incremented by one unit in step 292 .

Im Schritt 294 wird J, der sich wiederholende Kreiszähler, um eine Einheit weitergestuft. Zu beachten ist, daß die "No"-Zweige der Entscheidungen 288 udn 290 beide in den Schritt 294 eingehen, wenn die Bedingungen, die von diesen Entscheidungen verlangt werden, nicht erfüllt werden.In step 294 , J , the repeating circle counter, is incremented by one unit. Note that the "No" branches of decisions 288 and 290 both go to step 294 if the conditions required by those decisions are not met.

In der Entscheidung 296 wird der laufende Werte von J gegen N geprüft, nämlich der Zahl der Ecken. Wenn J nicht größer als N ist, wird dem "No"-Zweige gefolgt, und das Programm kehrt in die Entscheidung 288 zu einer weiteren Wiederholung zurück. Wenn J größer als N ist, wird der sich wiederholende Prüfarbeitsablauf 280 für dieses Datenelement beendet, und dem "Yes"-Zweig wird gefolgt.Decision 296 examines the running values of J against N , namely the number of corners. If J is not greater than N , the "No" branch is followed and the program returns to decision 288 for another iteration. If J is greater than N , the repetitive check workflow 280 for that data item is terminated and the "yes" branch is followed.

In der Entscheidung 298 wird COUNT getestet, um zu bestimmen, ob der COUNT-Wert gerade oder ungerade ist. Wenn der COUNT-Wert ungerade ist, d. h. das Datenelement links von einer ungeraden Zahl von nicht waagrechten Polygonseiten liegt, heißt das, daß das Datenelement im Polygon liegt. In diesem Fall wird dem "Yes"-Zweig der Entscheidung 298 zum Schritt 300 gefolgt, wo diese Tatsache registriert und gespeichert wird. Wenn der COUNT-Wert gerade ist, heißt das, daß das Datenelement sich nicht im Polygon befindet. In diesem Fall wird dem "No"-Zweig der Entscheidung 208 gefolgt, und zwar zum Schritt 302, wo diese Tatsache registriert und gespeichert wird.In decision 298 , COUNT is tested to determine whether the COUNT value is even or odd. If the COUNT value is odd, ie the data element lies to the left of an odd number of non-horizontal polygon sides, this means that the data element lies in the polygon. In this case, the "yes" branch of decision 298 is followed to step 300 where this fact is registered and stored. If the COUNT is even, it means that the data element is not in the polygon. In this case, the "No" branch of decision 208 is followed to step 302 , where this fact is registered and stored.

Beide Schritte 300 und 302 gehen in den Schritt 304 ein, wo die Programmsteuerung zum Abrufarbeitsablauf IDENTIFY zurückkehrt.Both steps 300 and 302 go to step 304 where program control returns to the IDENTIFY fetch workflow.

Wieder auf Fig. 4 bezugnehmend, wird der IDENTIFY-Arbeitsablauf im Schritt 208 wieder eingegeben. Im Schritt 212 wird X um eine Einheit weitergestuft, was graphisch der Bewegung zur nächsten Spaltenposition dieser Reihe von Datenelementen entspricht. In der Entscheidung 214 wird X gegen das untere rechte X getestet, um zu sehen, ob diese Reihe Datenelemente abgeschlossen ist. Wenn nicht, wird dem "No"-Zweig der Entscheidung 214 gefolgt, und die Folge der Schritte 208 bis 212 wird wiederholt, wie das vorstehend beschrieben worden ist. Wenn die Reihe abgeschlossen ist, wird dem "Yes"-Zweig der Entscheidung 214 gefolgt.Referring back to FIG. 4, the IDENTIFY workflow is re-entered in step 208 . In step 212 , X is incremented by one unit, which corresponds graphically to the movement to the next column position of this row of data elements. In decision 214 , X is tested against the lower right X to see if this row of data items is complete. If not, the "No" branch of decision 214 is followed and the sequence of steps 208 through 212 repeated as described above. When the series is complete, the yes branch of decision 214 is followed.

Im Schritt 216 wird Y um eine Einheit weitergestuft, was graphisch dem Vorrücken zur nächstfolgenden Reihe entspricht. In der Entscheidung 218 wird Y gegen das untere rechte Y getestet, um zu bestimmen, ob alle Reihen Datenelemente im umschriebenden Rechteck beendet worden sind.In step 216 , Y is promoted by one unit, which corresponds graphically to the advancement to the next row. In decision 218 , Y is tested against the lower right Y to determine whether all rows of data items in the circumscribing rectangle have ended.

Wenn nicht, wird dem "No"-Zweig der Entscheidung 218 gefolgt, und zwar zur Wiedereingabe des Schritts 206, wo X auf das obere linke X zurückgestellt wird, was graphisch dem Zurückkehren zur ersten Spaltenposition in der Reihe entspricht. Danach werden die Schritte und Entscheidungen 206 bis 218 in der vorstehend beschriebenen Weise wiederholt.If not, the "No" branch of decision 218 is followed, and, although graphically corresponds to the re-entry of step 206, where X is reset to the upper left X to return to the first column position in the series. Thereafter, steps and decisions 206 through 218 are repeated in the manner described above.

Wenn der von der Entscheidung 218 verlangte Zustand erfüllt wird, wird dem "Yes"-Zweig gefolgt. Im Schritt 220 wird der Arbeitsablauf IDENTIFY beendet. If the condition required by decision 218 is met, the "yes" branch is followed. In step 220 , the IDENTIFY workflow ends.

Auf Fig. 3 erneut bezugnehmend, werden im Schritt 108 die Datenelemente, die als zugehörig zur polygonalen Trainingsprobe identifiziert sind, vom Display-Koordinatensystem in das willkürlich zugängliche Ablage- Koordinatensystem umgesetzt. Das kann durch einen Ablageführer erreicht werden, der als eine Nachschlagetabelle fungiert, um Datenelementkoordinaten an der willkürlich zugänglichen Einrichtung zugänglich zu machen.Referring again to FIG. 3, in step 108 the data elements identified as belonging to the polygonal training sample are converted from the display coordinate system to the arbitrarily accessible filing coordinate system. This can be accomplished by a filing guide that acts as a look-up table to make data element coordinates accessible at the arbitrarily accessible facility.

Im Schritt 110 wird die Spektralsignatur für diese Gegenstandsklasse, z. B. in dieser Darstellung ein Flugzeug, errechnet. Bei der Berechnung einer Spektralsignatur entscheidet der Operator zunächst, ob er irgendwelche zusätzlichen Trainingssätze gleicher Art mit aufnehmen will, die gegebenenfalls zur Verfügung stehen. Danach wählt er die für die Berechnungen zu benutzenden Kanäle. Außerdem schreibt er eine zulässige Zahl von Standardabweichungen vom mittleren Datenwert für jeden Kanal vor, um als Kriterium für den Ausschluß ungewollter Datenelemente aus den Berechnungen zu dienen. Mit dieser Information wird eine Spektralsignatur berechnet. Im Schritt 112 wird die Spektralsignatur in einer Ablage gespeichert.In step 110 the spectral signature for this object class, e.g. B. in this representation, an aircraft is calculated. When calculating a spectral signature, the operator first decides whether he wants to include any additional training sets of the same type that may be available. Then he selects the channels to be used for the calculations. It also prescribes a permissible number of standard deviations from the mean data value for each channel in order to serve as a criterion for excluding unwanted data elements from the calculations. A spectral signature is calculated with this information. In step 112 , the spectral signature is stored in a repository.

Die Entscheidung 114 fragt, ob es zusätzliche Klassen gibt, für die Spektralsignaturen zu erhalten sind. Wenn ja, wird das Verfahren der Spektralsignaturbestimmung wiederholt, wenn nicht, ist diese Phase der Gesamtverarbeitungsfolge abgeschlossen, was durch das Ende 116 bezeichnet ist.Decision 114 asks if there are additional classes for which spectral signatures can be obtained. If so, the process of spectral signature determination is repeated, if not, this phase of the overall processing sequence is complete, which is indicated by the end 116 .

Nachdem einmal die Spektralsignaturen der Gegenstandsklassen erhalten worden sind, kann die Basismenge der Datenvektoren klassifiziert und durch das Datenverabeitungssystem 10 präsentiert werden, das im Zusammenhang mit Fig. 1 beschrieben worden ist.Once the spectral signatures of the item classes have been obtained, the base set of data vectors can be classified and presented by the data processing system 10 described in connection with FIG. 1.

Das System zum Klassifizieren von Datenvektoren findet eine weitere Anwendung beim Aussondern von Testbereichen aus einer Basismenge von Abbilddaten. Die Testbereiche unterscheiden sich von den Trainingsproben lediglich in dem Maße, daß sie nach der Berechnung von Spektralsignaturen ausgesondert werden und dazu benutzt werden, die Klassifizierungsgenauigkeit dieser Spektralsignaturen zu testen.The system for classifying data vectors has another application in the rejection of Test areas from a basic set of image data. The test areas differ from the training samples only in that Dimensions that they are discarded after the calculation of spectral signatures and are used to classify this Test spectral signatures.

Fig. 8 gibt die Schritte für das Gesamtprüfvorgehen an. Die ersten vier Schritte, die mit 320, 324, 326 und 328 in Fig. 8 bezeichnet sind, sind direkt parallel zu den Schritten 100, 104, 106 und 108 im Trainingsproben-Aussonderungsprozeß, wie er vorstehend in Verbindung mit Fig. 3 beschrieben worden ist. Deshalb genügt im folgenden eine kurze Darstellung:
Im Schritt 320 präsentiert der Operator auf einem Display eine Teilmenge einer Basismenge von Abbilddaten, von denen er glaubt, basierend auf einer Bodenechtheitsinformation, wie sie durch die Offline-Ablage 322 wiedergegeben ist, daß sie das Testgebiet enthalten, das hier interessiert. Im Schritt 324 benutzt der Operator die oben beschriebene Polygonidentifizierungsmethode, um das Testgebiet gegenüber dem Rest der Displaydaten abzugrenzen. Im Schritt 326 werden die Displaydaten darauf untersucht, ob sie innerhalb oder außerhalb des Polygons liegen. Im Schritt 328 werden die Daten, die innerhalb des Polygons liegen, in die Datengrundkoordinaten zurückübersetzt.
Fig. 8 shows the steps for Gesamtprüfvorgehen indicates. The first four steps, designated 320, 324, 326 and 328 in FIG. 8, are directly parallel to steps 100, 104, 106 and 108 in the training sample screening process as described above in connection with FIG. 3 is. A brief description is therefore sufficient in the following:
At step 320 , the operator presents on a display a subset of a base set of image data that he believes to be based on ground fastness information as represented by offline repository 322 to include the test area of interest. At step 324 , the operator uses the polygon identification method described above to differentiate the test area from the rest of the display data. In step 326 , the display data is examined to determine whether it is inside or outside the polygon. In step 328 , the data that lies within the polygon is translated back into the basic data coordinates.

Nachdem das Testgebiet einmal ausgesondert worden ist, wird es einer Klassifizierung im Schritt 330 unterzogen. Die bekannten Spektralsignaturen, wie sie durch die Offline-Ablage 332 wiedergegeben sind, werden zum Klassifizieren des Testgebiets benutzt. Im Schritt 334 werden die Ergebnisse des Klassifizierungsschritts auf einem Sichtdisplaymedium für eine anschließende Auswertung der Genauigkeit der Spektralsignaturen ausgeworfen. Die Folge endet mit der "STOP"-Instruktion des Schritts 336.Once the test area has been sorted out, it is subjected to a classification in step 330 . The known spectral signatures, as represented by the offline storage 332 , are used to classify the test area. In step 334 , the results of the classification step are ejected on a visual display medium for a subsequent evaluation of the accuracy of the spectral signatures. The sequence ends with the "STOP" instruction of step 336 .

Das System zum Klassifizieren von Datenvektoren kann zum Aussondern von Datenproben aus irgendeiner Klasse von Datenvektoren verwendet werden, die räumlich in einer zweidimensionalen geordneten Reihenfolge wiedergegeben werden können.The system for classifying data vectors can to discard data samples any class of data vectors used spatially in in a two-dimensional order can.

Claims (7)

1. System zum Klassifizieren von Datenvektoren aus einer Menge von Datenvektoren, die ein Bild repräsentiert, wobei jeder Datenvektor ein Meßwertspektrum über eine Anzahl verschiedener Wellenlängen aufweist, mit einer Einrichtung zur Bestimmung der Spektralsignaturen von Trainingsproben, die aus bestimmten Teilmengen der Menge von Datenvektoren ausgesondert werden, wobei die Spektralsignaturen aus den zu den Trainingsproben gehörigen Datenvektoren berechnet werden und einer Einrichtung zum Klassifizieren jedes in der Menge enthaltenen Datenvektors in eine von mehreren Klassen, wobei jede Klasse durch das Meßwertspektrum einer der Trainingsproben definiert ist, gekennzeichnet durch folgende Kombination von Einrichtungen zum automatischen Aussondern der Trainingsproben aus der Menge von Datenvektoren:
  • a) eine Displayeinrichtung (32) zum Anzeigen der Menge von Datenvektoren in einem zweidimensionalen, geordneten Schema,
  • b) eine mit der Displayeinrichtung (32) zusammenwirkende Operationssteuereinrichtung (34 bis 37) zum Beschreiben eines geschlossenen Polygons (50) um bestimmte Teilmengen der Menge von Datenvektoren auf dem Display zur Festlegung einer gewünschten Trainingsprobe,
  • c) eine Speichereinrichtung (33) zum Speichern der Lage der Polygoneckpunkte,
  • d) eine Einrichtung zum automatischen, sequentiellen Vergleichen der Lage jedes Datenvektors auf dem Display mit der Lage des Polygons (50) und
  • e) eine Einrichtung zum Zuführen von Daten nur solcher Datenvektoren, die auf oder innerhalb des Polygons (50) liegen zu der Einrichtung (16) zur Bestimmung der Spektralsignaturen von den Trainingsproben.
1. System for classifying data vectors from a set of data vectors representing an image, each data vector having a measured value spectrum over a number of different wavelengths, with a device for determining the spectral signatures of training samples which are separated out from certain subsets of the set of data vectors , wherein the spectral signatures are calculated from the data vectors belonging to the training samples and a device for classifying each data vector contained in the set into one of several classes, each class being defined by the measured value spectrum of one of the training samples, characterized by the following combination of devices for automatic Separating the training samples from the set of data vectors:
  • a) a display device ( 32 ) for displaying the amount of data vectors in a two-dimensional, ordered scheme,
  • b) an operation control device ( 34 to 37 ) cooperating with the display device ( 32 ) for describing a closed polygon ( 50 ) around certain subsets of the amount of data vectors on the display to determine a desired training sample,
  • c) a storage device ( 33 ) for storing the position of the polygon corner points,
  • d) a device for automatic, sequential comparison of the position of each data vector on the display with the position of the polygon ( 50 ) and
  • e) a device for supplying data only to those data vectors which lie on or within the polygon ( 50 ) to the device ( 16 ) for determining the spectral signatures of the training samples.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Operatorsteuereinrichtung (34 bis 37) eine Einrichtung zur manuellen Steuerung eines Zeigers auf dem Display aufweist, wodurch die Polygoneckpunkte festlegbar sind.2. System according to claim 1, characterized in that the operator control device ( 34 to 37 ) has a device for manual control of a pointer on the display, whereby the polygon corner points can be determined. 3. System nach Anspruch 2, dadurch gekennzeichnet, daß der Zeiger auf dem Display durch manuelle Drehung einer Bahnkugel in die gewünschte Richtung steuerbar ist und die Position des Zeigers auf dem Display mit Hilfe eines mit der Speichereinrichtung (33) gekoppelten elektrischen Signals markierbar ist.3. System according to claim 2, characterized in that the pointer on the display can be controlled by manually rotating a track ball in the desired direction and the position of the pointer on the display can be marked with the aid of an electrical signal coupled to the memory device ( 33 ). 4. System nach Anspruch 3, dadurch gekennzeichnet, daß mit Hilfe der Operatorsteuereinrichtung (34 bis 37) benachbarte Polygoneckpunkte mit einer Linie auf dem Display verbindbar sind, wodurch die Polygonseiten festlegbar sind.4. System according to claim 3, characterized in that with the help of the operator control device ( 34 to 37 ) adjacent polygon corner points can be connected with a line on the display, whereby the polygon sides can be defined. 5. System nach Anspruch 4, dadurch gekennzeichnet, daß mit Hilfe der Einrichtung zum automatischen, sequentiellen Vergleichen der Lage jedes Datenvektors auf dem Display zunächst der betreffende Datenvektor mit der vertikalen Position benachbarter Polygoneckpunkte vergleichbar ist, wodurch bestimmbar ist, ob er dazwischen angeordnet ist, und, wenn ja, weiterhin bestimmbar ist, ob der Datenvektor links von der durch die beiden Polygoneckpunkte definierten Polygonseite liegt, wobei der Datenvektor innerhalb des vom Polygon (50) umrandeten Gebietes angeordnet ist, wenn die Anzahl der Polygonseiten, von denen er links liegt, ungerade ist.5. System according to claim 4, characterized in that with the aid of the device for the automatic, sequential comparison of the position of each data vector on the display, the data vector in question is first comparable with the vertical position of adjacent polygon corner points, whereby it can be determined whether it is arranged between them and, if so, it can also be determined whether the data vector is to the left of the polygon side defined by the two polygon corner points, the data vector being arranged within the area surrounded by the polygon ( 50 ) if the number of polygon sides from which it is to the left is is odd. 6. System nach Anspruch 5, gekennzeichnet durch eine mit der Operatorsteuereinrichtung zusammenwirkende Einrichtung zur Festlegung eines das Polygon (50) eng umschreibenden Rechtecks (52) und eine Einrichtung zur Beschränkung des Vergleichs der auf dem Display angezeigten Datenvektoren auf diejenigen innerhalb des Rechtecks (52).6. System according to claim 5, characterized by a device cooperating with the operator control device for defining a rectangle ( 52 ) which circumscribes the polygon ( 50 ) and a device for restricting the comparison of the data vectors shown on the display to those within the rectangle ( 52 ) . 7. System nach Anspruch 6, dadurch gekennzeichnet, daß die Displayeinrichtung aus einer Farb-Kathodenstrahlröhre besteht.7. System according to claim 6, characterized in that the display device from a Color cathode ray tube exists.
DE19772725927 1976-06-14 1977-06-08 Identification system for data vectors - accepts spectral input data and produces three:dimensional colour picture of object from polygonal corner detection Granted DE2725927A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US69602876A 1976-06-14 1976-06-14

Publications (2)

Publication Number Publication Date
DE2725927A1 DE2725927A1 (en) 1977-12-22
DE2725927C2 true DE2725927C2 (en) 1988-04-28

Family

ID=24795409

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772725927 Granted DE2725927A1 (en) 1976-06-14 1977-06-08 Identification system for data vectors - accepts spectral input data and produces three:dimensional colour picture of object from polygonal corner detection

Country Status (2)

Country Link
CA (1) CA1096504A (en)
DE (1) DE2725927A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19802781A1 (en) * 1998-01-26 1999-07-29 Peter L Prof Dr Andresen Quick identification of valuable objects by digital image analysis

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4566126A (en) * 1982-04-30 1986-01-21 Fuji Electric Company, Ltd. Pattern discriminator

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19802781A1 (en) * 1998-01-26 1999-07-29 Peter L Prof Dr Andresen Quick identification of valuable objects by digital image analysis

Also Published As

Publication number Publication date
CA1096504A (en) 1981-02-24
DE2725927A1 (en) 1977-12-22

Similar Documents

Publication Publication Date Title
DE69326502T2 (en) Device for testing products
DE69131102T2 (en) EXAMINATION CONTROL PROCEDURE FOR IMAGES SHOWED ON A DISPLAY
DE69919464T2 (en) Electronic device for image alignment
DE3689416T2 (en) Pattern feature extraction.
DE69720399T2 (en) Digital composition of a mosaic-like picture
DE2831582C2 (en) Method for identifying a person and device for carrying out the method
DE69419993T2 (en) Method and device for graphical analysis of a log file
DE69330504T2 (en) Bildabspeicherungsverfahren
DE2703158C3 (en) Device for detecting the position of a pattern or character
DE69322095T2 (en) METHOD AND DEVICE FOR IDENTIFYING AN OBJECT BY MEANS OF AN ORDERED SEQUENCE OF LIMIT PIXEL PARAMETERS
DE69130135T2 (en) Image analysis method
DE4317246A1 (en) Method and device for deconvolution of unresolved data
DE69422885T2 (en) Device for segmenting fingerprint images for ten-finger cards
DE102004063769A1 (en) Method for automatically and quantitatively determining the amount of seed or grain of required quality comprises recording the seed and grain using an imaging device and further processing
DE69733965T2 (en) INTELLIGENT HYPERSENSORY PROCESSING SYSTEM
DE102019133685A1 (en) Information processing system and procedures
DE69423607T2 (en) METHOD FOR CLASSIFYING IMAGES WITH OUTPUT IMAGES
DE102021201124A1 (en) TRAINING IMAGE CLASSIFIER NETWORKS
DE69432544T2 (en) Method and device for retrieving dynamic images and for managing images
DE4331317A1 (en) Examination procedure for the evaluation of location-dependent spectra
DE10017551C2 (en) Process for cyclic, interactive image analysis and computer system and computer program for executing the process
DE102005049017B4 (en) Method for segmentation in an n-dimensional feature space and method for classification based on geometric properties of segmented objects in an n-dimensional data space
DE2725927C2 (en)
DE3622222A1 (en) CHARACTER RECOGNITION IN TWO-DIMENSIONAL SIGNALS
DE69711093T2 (en) LEARNING METHOD FOR AN IMAGE ANALYSIS SYSTEM USED FOR ANALYZING AN OBJECT AND USE OF THE METHOD

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06K 9/00

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee