DE3922652C2 - - Google Patents

Info

Publication number
DE3922652C2
DE3922652C2 DE3922652A DE3922652A DE3922652C2 DE 3922652 C2 DE3922652 C2 DE 3922652C2 DE 3922652 A DE3922652 A DE 3922652A DE 3922652 A DE3922652 A DE 3922652A DE 3922652 C2 DE3922652 C2 DE 3922652C2
Authority
DE
Germany
Prior art keywords
image
point
cursor
object point
determination
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 - Lifetime
Application number
DE3922652A
Other languages
English (en)
Other versions
DE3922652A1 (de
Inventor
Tetsuo Tama Tokio/Tokyo Jp Nonami
Kazuo Hachioji Tokio/Tokyo Jp Sonobe
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.)
Olympus Corp
Original Assignee
Olympus Optical Co Ltd
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 JP1038813A external-priority patent/JPH02216404A/ja
Priority claimed from JP1038811A external-priority patent/JP2778725B2/ja
Priority claimed from JP1038812A external-priority patent/JPH02216403A/ja
Application filed by Olympus Optical Co Ltd filed Critical Olympus Optical Co Ltd
Publication of DE3922652A1 publication Critical patent/DE3922652A1/de
Application granted granted Critical
Publication of DE3922652C2 publication Critical patent/DE3922652C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B1/00Instruments for performing medical examinations of the interior of cavities or tubes of the body by visual or photographical inspection, e.g. endoscopes; Illuminating arrangements therefor
    • A61B1/00163Optical arrangements
    • A61B1/00193Optical arrangements adapted for stereoscopic vision
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B1/00Instruments for performing medical examinations of the interior of cavities or tubes of the body by visual or photographical inspection, e.g. endoscopes; Illuminating arrangements therefor
    • A61B1/00163Optical arrangements
    • A61B1/00194Optical arrangements adapted for three-dimensional imaging
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/107Measuring physical dimensions, e.g. size of the entire body or parts thereof
    • A61B5/1076Measuring physical dimensions, e.g. size of the entire body or parts thereof for measuring dimensions inside body cavities, e.g. using catheters
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04812Interaction techniques based on cursor appearance or behaviour, e.g. being affected by the presence of displayed objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/156Mixing image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two two-dimensional [2D] image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from three-dimensional [3D] object models, e.g. computer-generated stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/167Synchronising or controlling image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/189Recording image signals; Reproducing recorded image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/286Image signal generators having separate monoscopic and stereoscopic modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Surgery (AREA)
  • Biomedical Technology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Pathology (AREA)
  • Biophysics (AREA)
  • Human Computer Interaction (AREA)
  • Radiology & Medical Imaging (AREA)
  • Optics & Photonics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Dentistry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Endoscopes (AREA)
  • Instruments For Viewing The Inside Of Hollow Bodies (AREA)

Description

Die Erfindung betrifft eine Vorrichtung zum dreidimensionalen Messen gemäß dem Oberbegriff des Patentanspruches 1.
In letzter Zeit werden in zunehmendem Maße im medizinischen und industriellen Bereich Endoskope verwendet.
So stellt z. B. bei einem mit Hilfe eines gewöhnlichen Endoskops wahrgenommenen Bild der inspizierte Teil im allgemeinen eine Ebene dar, so daß eine Unebenheit kaum erkannt werden kann. Demzufolge wird in der JP-OS 24 215/1989 eine Vorrichtung offenbart, bei der zwei Objektivlinsensysteme im Kopfteil eines Endoskopes angeordnet sind, so daß zwei von diesen beiden Objektivlinsensystemen erhaltene Bilder über einen Bildleiter zu einem Okularteil geleitet werden können, um mit Hilfe eines Binokels ein kubisches Gesichtsfeld zu erhalten. Ferner ist in der JP-OS 46 927/1983 ein Stereoendoskop offenbart, das im Kopfteil mit zwei optischen Abbildungssystemen und zwei Festkörper- Bildaufnahmeeinrichtungen ausgestattet ist.
Obwohl mit einem solchen Endoskop ein kubisches Gesichtsfeld vorgesehen werden kann, besteht jedoch der Nachteil, daß der Abstand zum Bild im Gesichtsfeld nicht gewonnen werden kann.
Eine Technik zur Beseitigung dieses Nachteils ist in der JP-OS 63 432/1988 offenbart. Wie aus Fig. 51(a) ersichtlich, werden zur Bestimmung der Meßobjektpunkte im Raum die Positionen der Meßobjektpunkte in den jeweiligen Bildern mit Hilfe einer Punkteinstelleinrichtung oder dergleichen auf einer Vielzahl von Bildern mit Parallaxen vorgeben, und dadurch gerade Linien im Raum bestimmt, die durch die Abbildungseinrichtungen zum Erzeugen der Bilder und die Meßobjektpunkte laufen. Falls die Positionen der Meßobjektpunkte auf den jeweiligen Bildern mittels einer Vielzahl von Abbildungseinrichtungen vorgegeben werden, die an Stellen mit Parallaxen angeordnet sind, so wird dadurch eine Vielzahl von geraden Linien im Raum bestimmt. Im allgemeinen haben die geraden Linien im Raum nicht immer Schnittpunkte, jedoch sollten diese alle durch die Meßobjektpunkte verlaufen. Werden somit die Positionen exakt bestimmt, so können die Positionen der Meßobjektpunkte für die Abbildungseinrichtungen im Raum als die Schnittpunkte dieser geraden Linien berechnet werden.
Jedoch besteht ein Problem darin, daß bei einem Endoskopbild dem zu messenden Objekt nicht immer ein deutlicher Detailpunkt zugeordnet ist. Falls somit kein deutlicher Detailpunkt vorliegt, wird die Positionsbestimmung der Meßobjektpunkte auf den jeweiligen Bildern aller Wahrscheinlichkeit nach ungenau sein. Demzufolge haben die geraden Linien im Raum, die durch die Meßobjektpunkte laufen, keinen Schnittpunkt, so daß der Abstand nicht gemessen werden kann, wie dies in Fig. 51(b) ersichtlich ist.
Als Mittel zum Bestimmen der Punkte auf den Bildern der entsprechenden Monitore wird z. B. jeweils ein Cursor verwendet, der zu der gewünschten Position hinbewegt wird.
Jedoch besteht ein Problem dahingehend, daß z. B. zum Bewegen jedes Cursors eine separate Maus vorgesehen werden muß, was den Bestimmungsvorgang kompliziert macht.
Ferner tritt ein Problem dahingehend auf, daß, falls auf den Bildern beider Monitore jeweils ein Cursor wiedergegeben wird, es Schwierigkeiten bereitet, zu erkennen, welcher Cursor auf den Bildern der bewegte Cursor ist und auf welchem Bild die Punkte bestimmt werden können.
Obwohl, wie oben beschrieben, die Größe des Gegenstandes bzw. Objektes numerisch bestimmt werden kann, ist es erwünscht, die Größe des Gegenstandes direkt durch Sicht feststellen zu können.
Der Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung zum dreidimensionalen Messen vorzuschlagen, bei der die Bestimmung der jeweiligen Objektpunkte auf einer Vielzahl von Bildern mit Parallaxen zur Spezifizierung der Meßobjektpunkte im Raum einfach und mit hoher Genauigkeit durchführbar ist.
Die Lösung dieser Aufgabe ergibt sich anhand der Merkmale des Patentanspruches 1.
Vorteilhafte Ausgestaltungen des Gegenstands der Erfindung sind in Unteransprüchen angegeben.
Die Erfindung wird nachstehend anhand der Zeichnung näher erläutert. Es zeigen
Fig. 1 bis 5 ein erstes Ausführungsbeispiel, wobei
Fig. 1 den Aufbau einer Meßendoskopvorrichtung anhand eines Blockdiagramms,
Fig. 2 das vordere Teil einer Einrichtung zum Aufnehmen eines kubischen Endoskopbildes,
Fig. 3 ein Bedienungsfeld für eine Cursorinformations- Bestimmungseinrichtung,
Fig. 4 ein Beispiel für Arbeitsbilder und
Fig. 5 ein Verfahren zum Berechnen der Position einer Führungslinie und der Position eines Objektpunktes wiedergibt;
Fig. 6 bis 25 ein zweites Ausführungsbeispiel, wobei
Fig. 6 den schematischen Aufbau anhand eines Blockdiagramms,
Fig. 7 das Kopfteil eines Endoskopeinführteils,
Fig. 8 den Aufbau einer Meßendoskopvorrichtung anhand eines Blockdiagramms,
Fig. 9 den Aufbau eines Host-Computers anhand eines Blockdiagramms,
Fig. 10 ein Verfahren zum Bestimmen einer Führungslinie anhand einer Prinzipdarstellung,
Fig. 11 ein Verfahren zum Bestimmen einer dreidimensionalen Kooridinate anhand einer Prinzipdarstellung,
Fig. 12 ein Verfahren zum Bestimmen eines Indexkreises anhand einer Prinzipdarstellung,
Fig. 13 eine Ansicht zur Erläuterung des Austausches der Position auf dem linken Bild und der Position auf einer Abbildungseinrichtung,
Fig. 14 eine im linken Bild wiedergegebene Führungslinie,
Fig. 15 einen im rechten Bild wiedergegebenen Indexkreis und
Fig. 16 bis 25 Flußdiagramme zur Erläuterung der Funktionsweise dieses Ausführungsbeispiels wiedergibt;
Fig. 26 und 27 Flußdiagramme zur Erläuterung einer ersten Modifikation des zweiten Ausführungsbeispiels;
Fig. 28 und 29 Flußdiagramme zur Erläuterung einer zweiten Modifikation des zweiten Ausführungsbeispiels;
Fig. 30 bis 37 eine dritte Modifikation des zweiten Ausführungsbeispiels;
Fig. 30 eine Prinzipdarstellung einer Verzerrungs- Abbildungsfehlerkorrektion;
Fig. 31 eine im linken Bild wiedergegebene Führungslinie;
Fig. 32 einen im rechten Bild wiedergegebenen Indexkreis;
Fig. 33 bis 37 Flußdiagramme zur Erläuterung der Funktionsweise dieses Ausführungsbeispieles;
Fig. 38 und 39 Flußdiagramme zur Erläuterung der Funktionsweise der vierten Modifikation des zweiten Ausführungsbeispiels;
Fig. 40 ein Flußdiagramm zur Erläuterung der Funktionsweise der fünften Modifikation des zweiten Ausführungsbeispiels;
Fig. 41 ein Flußdiagramm zur Erläuterung der Funktionsweise der sechsten Modifikation des zweiten Ausführungsbeispiels;
Fig. 42 bis 49 das dritte Ausführungsbeispiel, wobei
Fig. 42 den schematischen Aufbau dieses Ausführungsbeispiels,
Fig. 43 den Aufbau einer Meßendoskopvorrichtung anhand eines Blockdiagramms,
Fig. 44 den Aufbau eines Host-Computers anhand eines Blockdiagramms und
Fig. 45 bis 49 Flußdiagramme zur Erläuterung der Funktionsweise dieses Ausführungsbeispiels wiedergeben,
Fig. 50 ein Flußdiagramm zur Erläuterung der Funktionsweise des vierten Ausführungsbeispiels; und
Fig. 51 eine Ansicht, die die Positionsbestimmung eines Meßobjektpunktes bei einer bekannten Meßendoskopvorrichtung verdeutlicht.
In den Fig. 1 bis 5 wird das erste Ausführungsbeispiel der Erfindung dargestellt.
Wie aus Fig. 1 ersichtlich, ist die Meßendoskopvorrichtung mit einer Einrichtung 1 zum Aufnehmen eines kubischen Endoskopbildes ausgestattet, die ein längliches Einführteil 1a aufweist. Wie aus Fig. 2 ersichtlich sind im Kopfteil dieses Einführteils 1a bildformende optische Systeme 21 und 22 vorgesehen. An den Abbildungsstellen dieser optischen Systeme 21 und 22 sind Festkörper-Bildaufnahmeeinrichtungen 23 und 24 z. B. in Form von CCD-Einrichtungen vorgesehen. Das Objekt wird mit Beleuchtungslicht bestrahlt, das von einer in der Zeichnung nicht dargestellten Beleuchtungseinrichtung abgegeben wird. Infolge des vom Objekt reflektierten Lichts werden mit Hilfe der optischen Systeme 21 und 22 Bilder erzeugt, die durch die Festkörper-Bildaufnahmeeinrichtungen 23 und 24 fotoelektrisch umgewandelt und als linkes (L) und rechtes (R) elektrisches Bildsignal ausgegeben werden. Das rechte Bildsignal wird mit Hilfe eines A/D-Wandlers 2R und das linke Bildsignal mit Hilfe eines A/D-Wandlers 2L in eine digitale Form gebracht, woraufhin diese in entsprechende Bildspeicher 5L und 5R abgespeichert werden.
Von der oben erwähnten Einrichtung 1 zum Aufnehmen eines kubischen Endoskopbildes werden Synchronisiersignale zu Einschreibtaktsteuereinrichtungen 3L und 3R gesandt, die Einschreibtaktsteuersignale an Einschreibsteuereinrichtungen 4L und 4R auf der Basis dieser Synchronisiersignale anlegen. Durch diese Steuersignale der Einschreibsteuereinrichtungen 4L und 4R wird das Einschreiben der Bildsignale von den A/D-Wandlern 2L und 2R in die Bildspeicher 5L und 5R gesteuert.
Die Meßendoskopvorrichtung dieses Ausführungsbeispiels ist außerdem mit einer Cursorinformations-Anzeigeeinrichtung 6 als Meßobjektpunkt-Bestimmungseinrichtung zur Anzeige derjenigen Informationen ausgestattet, die sich auf die Position des Cursors im Bild beziehen. Die Information über die Cursorposition wird von dieser Cursorinformations- Anzeigeeinrichtung 6 einer Cursorsteuereinrichtung 7 als Steuereinrichtung und Führungslinien-Wiedergabeeinrichtung zugeführt. Diese Cursorsteuereinrichtung 7 besteht aus einer CPU (Zentraleinheit) mit Rechenfunktion, wobei die Anzeigeposition des Cursors auf dem Bild aus der oben erwähnten Cursorpositionsinformation berechnet wird, wobei die Positionen für die Anzeige der Punkte auf dem Bild, die den Cursor darstellen, in Adressenbestimmungseinrichtungen 8L und 8R aufgenommen werden, wobei die einzuschreibenden Farben in Datenhalteeinrichtungen 9L und 9R aufgenommen sind, und wobei ferner geprüft wird, ob sich der Cursor auf der Führungslinie befindet oder nicht. Die Ausgangsdaten der Adressenbestimmungseinrichtung 8L und der Datenhalteeinrichtung 9L sowie der Adressenbestimmungseinrichtung 8R und der Datenhalteeinrichtung 9R werden in einem Grafikspeicher 11L bzw. 11R gespeichert. Diese Grafikspeicher 11L und 11R stellen Speicher dar, die Cursorbilder auf den linken bzw. rechten Bildern speichern und eine Speicherkapazität von 3 Bits pro Bildelement (Pixel) aufweisen, falls drei Farben für die Cursor vorgesehen sind. Die von diesen Grafikspeichern 11L und 11R gespeicherten Cursorbilder werden erneuert, wenn die aus den Datenhalteeinrichtungen 9L und 9R ausgelesenen Farbdaten in die Koordinatenpositionen der Bilder eingeschrieben werden, die von den Adressenbestimmungseinrichtungen 8L und 8R während der vertikalen Rücklaufzeilendauer oder der horizontalen Rücklaufzeilendauer der Synchronisiersignale der Auslesesteuereinrichtungen 13L und 13R ausgelesen werden.
Auslesesynchronisiersignale von einer Auslesesynchronisiersignal-Erzeugungseinrichtung 12 werden den vorstehend erwähnten Auslesesteuereinrichtungen 13L und 13R zugeführt. Im einzelnen werden Synchronisiersignale zum Synchronisieren und Auslesen von den gleichen Bildpositionen entsprechenden Daten aus den jeweiligen Speichern, wie z. B. aus den oben erwähnten Bildspeichern 5L und 5R und Grafikspeichern 11L und 11R auf der Basis dieser Synchronisiersignale diesen Auslesesteuereinrichtungen 13L und 13R zugeführt. Die aus den Bildspeichern 5L und 5R und den Grafikspeichern 11L und 11R jeweils ausgelesenen Daten werden in entsprechende ODER-Schaltungen 14L und 14R eingegeben.
In der ODER-Schaltung 14L wird eine logische Summe aus dem Datenausgang des Bildspeichers 5L und dem Datenausgang des Grafikspeichers 11L und in der ODER-Schaltung 14R eine logische Summe aus dem Datenausgang des Bildspeichers 5R und dem Datenausgang des Grafikspeichers 11R berechnet. Das Rechenergebnis der ODER-Schaltung 14L wird einem D/A-Wandler 15L und das Rechenergebnis der ODER-Schaltung 14R dem D/A-Wandler 15R zugeführt. Mit Hilfe dieser D/A-Wandler 15L und 15R werden die digitalen Bildsignal in analoge Bildsignale umgewandelt, so daß Bilder auf Bildwiedergabeeinrichtungen 16L und 16R, die als Anzeigeeinrichtungen dienen wiedergegeben werden können.
Die Meßendoskopvorrichtung dieses Ausführungsbeispiels ist ferner mit einer Cursorpositions-Speichereinrichtung 17, die eine Vielzahl von Cursorpositionen in einem kubischen Bild speichert, falls ein Speicher durch die Cursorinformations- Bestimmungseinrichtung 6 angezeigt wird, und einer Abstandsoperationseinrichtung 18 als Abstandsberechnungseinrichtung ausgestattet, die die in dieser Cursorpositions-Speichereinrichtung 17 gespeicherten Cursorpositionen durch Abstandsberechnungshinweis seitens der Cursorinformations-Bestimmungseinrichtung 6 ausliest, die Abstände zwischen den jeweiligen Cursorpositionen berechnet und die Ergebnisse an eine nicht gezeigte Anzeigeeinheit ausgibt.
Nachfolgend wird der tatsächliche Betrieb der Meßendoskopvorrichtung dieses Ausführungsbeispiels erläutert, das den vorstehend erwähnten Aufbau aufzeigt.
Die linken und rechten Bildsignale von der Einrichtung 1 zum Aufnehmen eines kubischen Endoskopbildes werden mittels der A/D-Wandler 2L und 2R entsprechend in eine digitale Form umgewandelt und anschließend in den Bildspeichern 5L und 5R abgespeichert. Die in diesen Bildspeichern 5L und 5R abgespeicherten Bildsignale werden gewöhnlich in Echtzeit ausgelesen, von den ODER-Schaltungen 14L und 14R verarbeitet, indem von dem jeweiligen Bildsignal und dem jeweiligen Ausgangssignal des Grafikspeichers 11L bzw. 11R eine logische Summe gebildet wird, und schließlich mit Hilfe der D/A-Wandler 15L und 15R in Analogsignale umgewandelt. Mit Hilfe dieser analogen Signale werden die entsprechenden Bilder auf der Anzeigeeinrichtung (Bildwiedergabeeinrichtungen 16L und 16R) dargestellt.
Falls das vom Chirurgen zu messende Objekt im Gesichtsfeld liegt, werden zur Vermeidung einer Verzögerung der Positionsbestimmung infolge der Bewegung im lebenden Körper zuerst die von Bildspeichern 5L und 5R zu speichernden Bilder stillgesetzt. Anschließend wird der Cursor mit Hilfe der Cursorinformations-Bestimmungseinrichtung 6 im linken Bild zu der Position des Objektpunktes bewegt, dessen Länge gemessen werden soll. Diese Cursorinformations-Bestimmungseinrichtung 6 weist das in Fig. 3 gezeigte Bedienungsfeld auf. Der Zustand des Bildes der Anzeigeeinrichtung 16 zu diesem Zeitpunkt entspricht etwa dem in Fig. 4(A) gezeigten. Der Cursor kann hierbei durch Betätigen eines Cursorbewegungsschalters bewegt werden, der bei der oben erwähnten Cursorinformations- Bestimmungseinrichtung 6 vorgesehen ist. Als nächstes wird die Position des Objektpunktes gespeichert, indem ein Auswahlkopf auf der Cursorinformations-Bestimmungseinrichtung 6 gedrückt wird. Der so ausgewählte Objektpunkt weist die ausgewählte Position auf, die auf dem in Fig. 4(B) gezeigten Bild dargestellt ist, um die Position zu definieren. Anschließend bestimmt die Cursor-Steuereinrichtung 7 die Position der Führungslinie anhand der Position des spezifizierten Objektes durch ein nachfolgend beschriebenes Verfahren und zeigt diese auf dem rechten Bild an. Der Zusatz des Bildes der Anzeigeeinheit 16 zu diesem Zeitpunkt ist in Fig. 4(C) dargestellt. Daraufhin wählt der Chirurg die Position des Objektpunktes im rechten Bild durch den gleichen Vorgang aus. Zu diesem Zeitpunkt kann nur ein Punkt auf der Führungslinie bestimmt werden.
Die Cursorsteuereinrichtung 7 prüft, ob die Position des ausgewählten Punktes bereits in der berechneten Position der Führungslinie liegt. Falls dies nicht der Fall ist, wird von einer nicht gezeigten Alarmeinrichtung ein Warnton ausgegeben und die Auswahl unwirksam gemacht. Falls andererseits ein Punkt auf der Führungslinie ausgewählt wurde, wird die Position des Objektpunktes im Raum definiert, indem diese durch ein nachfolgend beschriebenes Verfahren berechnet wird. Anschließend wird diese Position abgespeichert. Der Zustand des Bildes der Anzeigeeinheit 16 zu diesem Zeitpunkt ist in der Fig. 4(C) wiedergegeben. Die Position des Punktes zu dem die Länge durch Wiederholen eines derartigen Vorganges gemessen werden soll, wird abgespeichert. Daraufhin werden die Abstände zwischen den jeweils bestimmten Punkten in einer nicht dargestellten Anzeigeeinheit angezeigt, indem ein Längenmeßschalter gedrückt wird. Werden die Koordinaten der beiden Punkte zu diesem Zeitpunkt durch (x₁, y₁, z₁) und (x₂, y₂, z₂) dargestellt, so wird der Abstand d zwischen diesen beiden Punkten durch die folgende Gleichung bestimmt:
d = [(x₁ - x₂)² + (y₁ - y₂)² + (z₁ - z₂)²]1/2.
Ebenso kann der Abstand von der Spitze des Einführteils zu einem gewissen Punkt in gleicher Weise bestimmt werden.
Nachfolgend wird mit Bezug auf Fig. 5 das Verfahren zum Berechnen der Position der Führungslinie und der Position des Objektpunktes erläutert.
Der Vorgang des Bestimmens eines Punktes im Bild entspricht dem Vorgang des Bestimmens der Abbildungsebene des optischen Objektivsystems. Für die Erläuterung wird das Zentrum der Koordinate im Raum in die Mitte der beiden mit Abstand angeordneten Abbildungseinrichtungen gelegt, wobei die x-Achse sowohl durch das Zentrum der rechten Abbildungseinrichtung als auch durch das Zentrum der linken Abbildungseinrichtung verläuft, die z-Achse senkrecht zur Kopffläche der Endoskopvorrichtung und die y-Achse die z-Achse und x-Achse jeweils im rechten Winkel schneidet. Die Parallaxe wird mit d bezeichnet. Das Zentrum der linken Abbildungseinrichtung soll durch LC (-d/2, 0, 0), das Zentrum der rechten Abbildungseinrichtung durch RC (d/2, 0, 0), die Position des Objektpunktes A (xa, ya, za), die Brennweite durch f und die Position des Objektes im bestimmten linken Bild durch LP (x₁, y₁, f) dargestellt sein. Somit wird die durch A und LP laufende gerade Linie wie folgt dargestellt, wobei t ein Parameter ist:
(x , y, z) = (-d/2 - x₁, - y₁, f) t + (-d/2, 0, 0) (t<0)
Anschließend wird der Schnittpunkt der geraden Linie, die durch den Punkt auf dieser geraden Linie und RC verläuft, mit der rechten Abbildungsfläche bestimmt. Wird die Koordinate dieses Schnittpunktes RP durch (xr, yr, -f) dargestellt, so erhält man folgende relative Gleichung:
(xr, yr, -f) = (x₁ + d + d/t, y₁, -f) (t<0)
Demzufolge verläuft die Führungslinie vom linken Ende des Bildes zu dem Punkt (x₁ + d, y₁, -f).
Ist ein Punkt der Führungslinie bestimmt, so wird die Position des Objektpunktes der Schnittpunkt der geraden Linien sein, die durch die folgenden beiden Formeln gegeben sind, wobei t und s Parameter darstellen:
(xa , ya, za) = (-d/2 - x₁, - y₁, f) t + (-d/2, 0, 0), (t<0)
(xa, ya, za) = (d/2 - xr, - yr, f) s + (d/2, 0, 0). (s<0)
Durch Lösen der obigen Formeln ergibt sich:
(xa , ya, za) = (-d/2 - x₁, - y₁, f) t + (-d/2, 0, 0), [t = d/ (xr - x₁ - d)].
Durch Ausführen der oben erwähnten Operation können sowohl die Position der Führungslinie als auch die Position des Objektpunktes berechnet werden.
Wie vorstehend beschrieben wird bei diesem Ausführungsbeispiel nach dem Bestimmen eines Meßobjektpunktes auf einem Bild eine Operation dahingehend durchgeführt, wie eine gerade Linie im Raum, die durch die Abbildungseinrichtung, die das Bild abgebildet hat, und diesen Meßobjektpunkt verläuft, für die andere Abbildungseinrichtung aussehen soll, und die gerade Linie wird als Führungslinie auf dem anderen Bild wiedergegeben. Da andere Punkte als die Punkte auf dieser Führungslinie nicht als Objektpunkte bestimmt werden können, kann die Position des Objektpunktes exakt spezifiziert werden, wodurch der Abstand und die Länge exakt gemessen werden können.
Bei diesem Ausführungsbeispiel ist übrigens für das rechte und linke Bild jeweils ein Anzeigegerät vorgesehen, jedoch kann auch ein einziges Anzeigegerät vorgesehen werden, auf dem sowohl das rechte als auch das linke Bild wiedergegeben werden können.
In den Fig. 6 bis 25 ist das zweite Ausführungsbeispiel dargestellt.
Wie aus Fig. 8 ersichtlich, weist die Meßendoskopeinrichtung dieses Ausführungsbeispiels ein Stereovideobild-Endoskop 101 (das nachfolgend kurz als Endoskop bezeichnet wird), einen Videoprozessor 110R für das rechte Bild und einen Videoprozessor 110R für das linke Bild auf, die die Bildsignale eines rechten Bildes bzw. eines linken Bildes, das von diesem Endoskop 101 abgebildet wird, verarbeiten, einen Teilbildspeicher 112R für das rechte Bild und einen Teilbildspeicher 112L für das linke Bild auf, die entsprechend Bildsignale, wie z. B. RGB-Signale speichern, die von dem Videoprozessor 110R bzw. 110L ausgegeben werden, einen Monitor 130R für das rechte Bild und einen Monitor 130L für das linke Bild, in die Bildsignale wie z. B. z. B. RGB-Signale eingegeben werden, die von dem Teilbildspeicher 112R bzw. 112L ausgegeben wurden und die ein rechtes bzw. linkes Bild wiedergeben, einen Host-Computer 120, der kubische Rechnungen unter Verwendung der in den Teilbildspeichern 112L und 112R gespeicherten Bilder durchführt, eine externe Speichereinrichtung 140 (nachfolgend als externer Speicher bezeichnet), die mit dem Host-Computer 120 in Verbindung steht, und eine Maus 145 auf, die an den Host-Computer 120 angeschlossen ist, die auf den Monitoren 130R und 130L wiedergegebenen Cursor bewegt und den Meßobjektpunkt bestimmt.
Die Videoprozessoren 110R und 110L verarbeiten Signale, die miteinander synchronisiert sind. Auch bei diesem Ausführungsbeispiel weisen die oben erwähnten Teilbildspeicher 112R und 112L eine Vielzahl von Sätzen von entsprechenden R-, G- und B-Speichern auf, wobei die Bilder in einem Satz und die Cursor in dem anderen Satz gespeichert werden. Die Bilder und Cursor können dann auf der Bildfläche eines Monitors durch Addieren der in die jeweiligen Speichersätze eingespeicherten Signale wiedergegeben werden. Der oben erwähnte externe Speicher 140 kann die Bilder in den Teilbildspeichern 112R und 112L speichern, d. h. er kann eine große Anzahl von Bildern als Bilddatei abspeichern.
Der vorstehend erwähnte Host-Computer 120 weist den in Fig. 9 gezeigten Aufbau auf.
Das heißt, der Host-Computer 120 umfaßt eine Zentraleinheit CPU 121, eine Schnittstelle 122R für den rechten Teilbildspeicher, eine Schnittstelle 122L für den linken Teilbildspeicher, einen Hauptspeicher 123, eine Schnittstelle 124 für den externen Speicher 140, eine Schnittstelle 125 für die Maus 145, eine Tastatur 126 und einen Bildschirm 127. Die Schnittstelle 122R für den rechten Teilbildspeicher und die Schnittstelle 122L für den linken Teilbildspeicher stehen mit dem rechten Teilbildspeicher 112R bzw. dem linken Teilbildspeicher 112L in Verbindung, so daß Bilddaten zwischen diesen ausgetauscht werden können. Ferner können die Cursor für die oben erwähnten Teilbildspeicher 112R und 112L über die Schnittstelle 122R bzw. 122L gespeichert werden. Die oben erwähnte Schnittstelle 124 steht mit dem externen Speicher 140 zum Senden und Empfangen von Bilddaten in Verbindung. Die oben erwähnte Mausschnittstelle 125 ist mit dem Anschlußkabel der Maus 145 verbunden.
Der schematische Aufbau dieses Ausführungsbeispiels wird im folgenden mit Bezug auf die Fig. 6 und 7 erläutert.
Wie aus Fig. 7 ersichtlich, ist das Endoskop 101 mit einem länglichen Einführteil 102 ausgestattet, in dessen Kopfteil mehrere, beispielsweise zwei Beobachtungsfenster und ein Beleuchtungsfenster vorgesehen sind. Ein Objektivlinsensystem 103R für das rechte Auge und ein Objektivlinsensystem 103L für das linke Auge sind innerhalb der Beobachtungsfenster an Stellen vorgesehen, die zueinander eine Parallaxe aufweisen. Bildaufnahmeeinrichtungen 104R und 104L, die Festkörper- Bildaufnahmeeinheiten verwenden, sind entsprechend in den Abbildungspositionen der jeweiligen Objektivlinsensysteme 103R und 103L angeordnet. Auf der Innenseite des oben erwähnten Beleuchtungsfensters ist eine Lichtverteilungslinse 105 vorgesehen. Ein aus einem Faserbündel bestehender Lichtleiter 106 steht mit dem rückseitigen Ende dieser Lichtverteilungslinse 105 in Verbindung. Der Lichtleiter 106 ist durch das Einführteil 102 hindurchgeführt und steht mit seinem eintrittsseitigen Ende mit einer nicht dargestellten Lichtquelleneinrichtung in Verbindung. Das von dieser Lichtquelleneinrichtung abgestrahlte Licht wird über den Lichtleiter 106 und die Lichtverteilungslinse 105 auf einen Gegenstand bzw. Objekt gerichtet. Das von diesem Objekt reflektierte Licht erzeugt mit Hilfe der Objektivlinsensysteme 103R und 103L auf den Bildaufnahmeeinrichtungen 104R und 104L ein rechtes bzw. linkes Bild.
Die von den Bildaufnahmeeinrichtungen 104R und 104L abgegebenen Bildsignale werden in entsprechende Videoprozessoren 110R und 110L eingegeben und zu Videosignalen verarbeitet. Die von den Videoprozessoren 110R und 110L ausgegebenen Bildsignale werden mit Hilfe von A/D-Wandlern 111R und 111L in eine digitale Form umgewandelt und anschließend in Bildspeichern, d. h. in den Bildspeichern der jeweiligen Teilbildspeicher 112R und 112L abgespeichert.
Die aus den Teilbildspeichern 112R und 112L ausgelesenen Bildsignale werden nach Durchlauf einer ODER-Schaltung 157L bzw. 157R mit Hilfe von D/A-Wandlern 158R und 158L in Analogsignale umgewandelt und in entsprechende Monitore 130R und 130L eingegeben, auf denen das rechte bzw. das linke Bild wiedergegeben wird.
Ferner sind eine Cursoranzeigeeinrichtung 151R, die einen Cursor im rechten Bild anzeigt, und eine Cursoranzeigeeinrichtung 151L, die einen Cursor im linken Bild anzeigt, vorgesehen. Eine Maus 145 steht mit einer der Cursoranzeigeeinrichtungen 151R und 151L über eine Schalteinrichtung 150 in Verbindung, so daß ein derartiger Vorgang wie z. B. das Bewegen des Cursors für die jeweiligen Bilder ausgeführt werden kann. Die von den Cursoranzeigeeinrichtungen 151R und 151L abgegebenen Cursoranzeigesignale werden in die oben erwähnte ODER- Schaltung 157R bzw. 157L eingegeben, so daß die Cursor den Bildern auf den Monitoren 130R und 130L überlagert werden können. Eine Führungslinien-Anzeigeeinrichtung 153 steht mit der Cursoranzeigeeinrichtung 151R für das rechte Bild so in Verbindung, daß, falls im rechten Bild der Objektpunkt bestimmt wird, der Positionszustand auf dem linken Bild verarbeitet und ein Führungslinienanzeigesignal auf der Basis des Positionszustandes ausgegeben werden kann. Dieses Führungslinienanzeigesignal wird in die ODER-Schaltung 157L so eingegeben, daß die Führungslinie dem Bild auf dem linken Monitor 130L überlagert werden kann.
Eine Objektpunktpositions-Berechnungseinrichtung 154 steht mit den beiden Cursoranzeigeeinrichtungen 151R und 151L so in Verbindung, daß, falls die Objektpunkte in beiden Bildern bestimmt sind, die dreidimensionale Koordinate des Meßobjektpunktes im Raum anhand der Koordinaten der Objektpunkte in den jeweiligen Bildern bestimmt werden kann. Ferner stehen die Objektpunktpositions-Berechnungseinrichtung 154 und die Cursoranzeigeeinrichtung 151R für das rechte Bild mit einer Indexkreis-Anzeigeeinrichtung 155 in Verbindung, die ein Signal zur Anzeige eines Indexkreises als Kriterium für die Größe des Objektes mit Hilfe der dreidimensionalen Koordinate des Meßobjektpunktes und der Positionsinformation des Objektpunktes im rechten Bild ausgibt. Dieses Indexkreis- Anzeigesignal wird in die ODER-Schaltung 157R eingegeben, so daß dieser Indexkreis dem Bild auf dem Monitor 130R überlagert werden kann.
Bei diesem Ausführungsbeispiel werden die oben erwähnte Schalteinrichtung 150, die Cursoranzeigeeinrichtungen 151L und 151R, die Führungslinien-Anzeigeeinrichtung 153, die Objektpunktpositions-Berechnungseinrichtung 154 und die Indexkreis-Anzeigeeinrichtung 155 durch Betreiben des oben erwähnten Host-Computers 120 anhand einer später beschriebenen Prozedur realisiert.
Ehe die detaillierte Funktionsweise und die Wirkung des eine kubische Messung vorsehenden Systems bei diesem Ausführungsbeispiel erläutert wird, wird zuerst der Vorgang der Berechnung der dreidimensionalen Koordinate des bestimmten Meßobjektpunktes und der Vorgang der Anzeige des Indexkreises schematisch veranschaulicht.
Für die Berechnung der dreidimensionalen Koordinate des spezifizierten Meßobjektpunktes wird folgendes ausgeführt:
  • (1) Ein Bild vom Endoskop oder ein Bild aus der Bilddatei wird ausgewählt.
  • (2) Falls ein Bild vom Endoskop ausgewählt wurde, wird dieses sich bewegende Bild für die Zeit der Betrachtung eingefroren (stillgesetzt), um die Bilder in den Teilbildspeichern 112R und 112L festzulegen.
  • (3) Anschließend wird die Bestimmung des ersten Objektpunktes (nachfolgend als Punkt 1 bezeichnet) ausgewählt. Die Vorgänge zum Bestimmen dieses Punktes 1 sind folgende:
    • 1. Falls der Objektpunkt bereits bestimmt ist, werden die Cursor im rechten und linken Bild gelöscht.
    • 2. Ein frei beweglicher Cursor (nachfolgend als beweglicher Cursor bezeichnet) erscheint im rechten Bild zur Bestimmung des Punktes.
    • 3. Die Maus 145 wird betätigt, um den Cursor auf einen Punkt zu bewegen, der bestimmt werden soll.
    • 4. Ist der Punkt unter Verwendung der Maus 145 bestimmt, erscheint ein bestimmter bzw. spezifizierter Cursor im rechten Bild. Diese Bestimmung kann übrigens wiederholt werden.
    • 5. Der bestimmte Punkt wird unter Verwendung der Maus 145 bestätigt.
    • 6. Der sich im rechten Bild bewegende Cursor verschwindet und der bestimmte Cursor bleibt.
    • 7. Im linken Bild wird eine Führungslinie angezeigt.
    • 8. Ein sich bewegender Cursor im linken Bild.
    • 9. Die Maus 145 wird betätigt, um den Cursor auf einen zu bestimmenden Punkt zu bewegen.
    • 10. Wird die Bestimmung unter Verwendung der Maus 145 durchgeführt, so erscheint ein bestimmter bzw. spezifizierter Cursor im linken Bild. Diese Bestimmung kann übrigens wiederholt werden.
    • 11. Der bestimmte Punkt wird unter Verwendung der Maus 145 bestätigt.
    • 12. Der sich im linken Bild bewegende Cursor verschwindet und der bestimmte Cursor bleibt.
    • 13. Die Führungslinie verschwindet.
    • 14. Die dreidimensionale Koordinate des bestimmten Meßobjektpunktes wird berechnet und ausgegeben.
    • 15. Der Abstand von der Endoskopspitze zum Meßobjektpunkt wird berechnet und ausgegeben. Dieser Abstand wird übrigens angezeigt, falls dies erwünscht ist.
    • 16. Gibt es irgendeinen anderen bestimmten Meßobjektpunkt, so wird der Abstand von diesem Punkt ausgegeben. Dieser Abstand wird übrigens angezeigt, falls dies erwünscht ist.
  • (4) Die Bestimmung des Punktes 2 entspricht dem unter (3) erwähnten Vorgang. In gleicher Weise können zwei oder mehr Meßobjektpunkte bestimmt werden.
Falls andererseits ein Indexkreis angezeigt werden soll, so wird folgendes ausgeführt:
  • (5) Der Radius des Indexkreises wird eingegeben.
  • (6) Anschließend wird durch die gleichen Vorgänge, die in (3) 1 bis 16 für die Berechnung der dreidimensionalen Koordinate des oben erwähnten spezifizierten Meßobjektpunktes ausgeführt wurden, ein zum Kreis passender Punkt (nachfolgend als Kreispunkt bezeichnet) bestimmt. Dieser Kreispunkt stellt übrigens einen Meßobjektpunkt dar, der zur Anzeige des Indexkreises bestimmt wird. Der Punkt 1 gemäß (3) 1 bis 16 kann als Kreispunkt neu gelesen werden.
  • (7) Ein Indexkreis als Kriterium der Größe wird auf dem rechten Bild auf der Basis des eingegebenen Radius und der dreidimensionalen Koordinate des Kreispunktes angezeigt.
Die detaillierte Wirkungs- und Funktionsweise der Vorrichtung zum kubischen Messen dieses Ausführungsbeispiels wird im folgenden mit Bezug auf die Fig. 16 bis 25 erläutert.
Als erstes wird die Hauptroutine anhand der Fig. 16 erläutert. Wird der Betrieb des Systems gestartet, so wird beim Schritt S1-1 geprüft, ob das zu messende Bild ein Bild vom Endoskop ist oder nicht. Im verneinenden Fall (nachfolgend wird der verneindende Fall mit "NEIN" und der bejahte Fall mit "JA" bezeichnet) wird dann beim Schritt S 1-2 geprüft, ob das zu messende Bild ein Bild von der Datei ist oder nicht. Im Fall NEIN wird beim Schritt S 1-3 geprüft, ob die Operation enden soll oder nicht. Im Fall JA endet der Prozeß. Falls beim oben erwähnten Schritt S 1-1 festgestellt wird, daß ein Bild vom Endoskop vorliegt (Fall JA), so wird eine Subroutine "record ( )" ausgeführt und der Prozeß kehrt zum Schritt S 1-1 zurück. Diese Subroutine "record ( )" stellt eine Routine zum Einfrieren und Verarbeiten des vom Endoskop stammenden Bildes dar. Wird bei dem oben erwähnten Schritt S 1-2 festgestellt, daß ein Bild von der Datei vorliegt (Fall JA), so wird beim Schritt S 1-5 eine Subroutine "file ( )" ausgeführt und der Prozeß kehrt zum Schritt S 1-1 zurück. Diese Subroutine "file ( )" stellt eine Routine dar, die ein Bild aus dem externen Speicher abruft und verschiedene Prozesse ausführt, die später beschrieben werden. Lautet beim oben erwähnten S 1-3 die Antwort NEIN, so kehrt der Prozeß zum Schritt S 1-1 zurück. Übrigens ist die oben erwähnte Subroutine "record ( )" in Fig. 17 und die oben erwähnten Subroutine "file ( )" in Fig. 19 dargestellt. Die beiden Klammern ( ) nach dem Namen der Routine weisen darauf hin, daß diese Routine eine Subroutine ist. In diese Klammern ( ) kann auch ein Argument eingesetzt werden.
In der Hauptroutine können durch ein Betriebsmittel, wie z. B. eine Tastatur 126 die oben erwähnten Schritte S 1-1 bis S 1-3 wiederholt werden, bis das Bild vom Endoskop oder vom externen Speicher ausgewählt ist oder das Ende des Prozesses wird angezeigt. Übrigens können die Schritte S 1-1 und S 1-2 in beliebiger Reihenfolge durchlaufen werden.
Die oben erwähnte Subroutine "record ( )" wird nachfolgend anhand der Fig. 17 erläutert.
Wird diese Subroutine gestartet, so wird zuerst beim Schritt S 2-1 geprüft, ob das Bild eingefroren werden soll oder nicht. Das heißt, hier wird die Einfrier-Zeitsteuerung vorgenommen. Im Fall NEIN wird geprüft, ob diese Routine endet oder nicht. Im Fall JA endet diese. Falls bei dem obigen Schritt S 2-1 festgestellt wird, daß das Bild eingefroren werden soll (Fall JA), so wird beim Schritt S 2-3 eine Subroutine "freez ( )" ausgeführt und der Prozeß kehrt zum Schritt S 2-1 zurück. Diese Subroutine "freez ( )" stellt eine Routine zum Einfrieren des Bildes des Endoskops und zum Ausführen verschiedener Prozesse dar, die später erläutert werden. Die Subroutine "freez ( )" ist in Fig. 18 erläutert. Bei dem oben erwähnten Schritt S 2-2 kehrt im verneinenden Fall der Prozeß zum Schritt S 2-1 zurück.
Die Subroutine "freez ( )" wird nachfolgend anhand der Fig. 18 erläutert.
Beim Start dieser Routine werden zunächst beim Schritt S 3-1 die jeweiligen rechten und linken Bilder des Endoskops in den Teilbildspeichern eingefroren. Anschließend wird beim Schritt S 3-2 geprüft, ob der Punkt 1 bestimmt werden soll oder nicht. Im Fall NEIN wird beim Schritt S 3-3 geprüft, ob der Punkt 2 bestimmt werden soll oder nicht. Im Fall NEIN wird beim Schritt S 3-4 geprüft, ob ein Kreispunkt bestimmt werden soll oder nicht. Lautet die Antwort beim Schritt S 3-4 NEIN, so wird beim Schritt S 3-5 geprüft, ob der Punkt freigegeben werden soll oder nicht. Im Fall NEIN wird beim Schritt S 3-5 geprüft, ob der Kreispunkt freigegeben werden soll oder nicht. Im Fall NEIN wird beim Schritt S 3-7 geprüft, ob das Bild aufgezeichnet werden soll oder nicht. Lautet beim Schritt S 2-3 die Antwort NEIN, so wird beim Schritt S 3-8 geprüft, ob der Prozeß endet oder nicht. Im Fall JA wird das eingefrorene Bild freigegeben und das direkte Bild des Endoskops wird angezeigt. Anschließend kehren beim Schritt S 3-10 alle Punkte in einen nicht-bestimmten Zustand zurück und der Prozeß endet.
Lautet beim Schritt S 3-2 die Antwort JA, so daß der Punkt 1 bestimmt werden soll, so wird beim Schritt S 3-11 eine Subroutine "point 1 ( )" ausgeführt und der Prozeß kehrt zum Schritt S 3-2 zurück. Diese Subroutine "point 1 ( )" stellt eine Routine dar, die den Punkt 1 im rechten und linken Bild bestimmt, um seine dreidimensionale Koordinate zu erhalten.
Lautet beim obigen Schritt S 3-3 die Antwort JA, soll der Punkt 2 bestimmt werden, so wird beim Schritt S 3-12 eine Subroutine "point 2 ( )" ausgeführt und der Prozeß kehrt zum Schritt S 3-2 zurück. Diese Routine "point 2 ( )" stellt eine Routine dar, die den Punkt 2 im rechten und linken Bild bestimmt, um seine dreidimensionale Koordinate zu erhalten.
Lautet beim obigen Schritt S 3-4 die Antwort JA, d. h., soll der Kreispunkt bestimmt werden, so wird beim Schritt S 3-13 eine Subroutine "pointm ( )" ausgeführt und der Prozeß kehrt zum Schritt S 3-2 zurück. Diese Subroutine "pointm ( )" stellt eine Routine dar, bei der der Kreispunkt im rechten und linken Bild bestimmt, die gleiche Messung wie beim Punkt 1 ausgeführt, die dreidimensionale Koordinate des Kreispunktes erhalten und ein Index (Kreis), dessen Größe sich mit dem Abstand ändert, auf der Basis der dreidimensionalen Koordinate im rechten und linken Bild angezeigt wird.
Lautet beim obigen Schritt S 3-5 die Antwort JA, d. h., soll der Punkt freigegeben werden, so wird beim Schritt S 3-14 der Cursor des bestimmten Punkts gelöscht und der nicht-bestimmte Zustand wieder eingenommen und der Prozeß kehrt zum Schritt S 3-2 zurück.
Lautet beim obigen S 3-6 die Antwort JA, d. h., soll der Kreispunkt freigegeben werden, so wird beim Schritt S 3-15 der Cursor des Kreispunkts und der Kreis gelöscht und der Kreispunkt kehrt in seinen nicht-bestimmten Zustand zurück und der Prozeß kehrt zum Schritt S 3-2 zurück.
Lautet beim obigen Schritt S 3-7 die Antwort JA, d. h., soll das Bild aufgezeichnet werden, so werden beim Schritt S 3-16 die rechten und linken Bilder der Teilbildspeicher im externen Speicher gespeichert, woraufhin der Prozeß zum Schritt S 3-2 zurückkehrt.
Lautet beim obigen Schritt die Antwort NEIN, so kehrt der Prozeß gleichfalls zum Schritt S 3-2 zurück.
Übrigens ist die oben erwähnte Subroutine "point 1 ( )" in Fig. 20 und die Subroutine "pointm ( )" in Fig. 21 dargestellt.
Die Schritte S 3-2 bis S 3-7 können übrigens in beliebiger Reihenfolge angeordnet sein.
Die oben erwähnten Subroutine "file ( )" wird nachfolgend anhand der Fig. 19 erläutert.
Zu Beginn dieser Routine werden zuerst beim Schritt S 4-1 die Dateien mit den rechten und linken bestimmten Bildern vom externen Speicher in die Teilbildspeicher geladen.
Die nächsten Schritte S 4-2 bis S 4-6 sind exakt die gleichen wie die Schritte S 3-2 bis S 3-6 bei der oben erwähnten Subroutine "freez ( )". Das heißt, es wird geprüft, ob der Punkt 1 bestimmt werden soll oder nicht, ob der Punkt 2 bestimmt werden soll oder nicht, ob der Kreispunkt bestimmt werden soll oder nicht, ob der Punkt freigegeben werden soll oder nicht und ob der Kreispunkt freigegeben werden soll oder nicht. Lautet bei den Schritten S 4-2 bis S 4-6 die Antwort JA, so werden die Schritte S 4-11 bis S 4-15, die den Schritten S 3-11 bis S 3-15 bei der obigen Subroutine "freez ( )" entsprechen, ausgeführt und der Prozeß kehrt zum Schritt S 4-2 zurück.
Lautet beim Schritt S 4-6 die Antwort NEIN, so wird beim Schritt S 4-7 geprüft, ob das Bild gewechselt werden soll oder nicht. Lautet die Antwort bei diesem Schritt S 4-7 NEIN, so wird beim Schritt S 4-8 geprüft, ob der Prozeß enden soll oder nicht. Lautet die Antwort beim Schritt S 4-8 JA, so werden beim Schritt S 4-10 alle Punkte in den nicht-bestimmten Zustand zurückgebracht und der Prozeß endet.
Lautet beim obigen Schritt S 4-7 die Antwort JA, so werden beim Schritt S 4-16 die Dateien mit den rechten und linken bestimmten Bildern in die Teilbildspeicher geladen und der Prozeß kehrt zum Schritt S 4-2 zurück.
Lautet beim obigen Schritt S 4-8 die Antwort NEIN, so kehrt der Prozeß gleichfalls zum Schritt S 4-2 zurück.
Die Schritte S 4-2 bis S 4-7 können übrigens in beliebiger Reihenfolge angeordnet sein.
Die oben erwähnte Subroutine "point 1 ( )" wird nachfolgend anhand der Fig. 20 erläutert.
Zu Beginn dieser Routine wird beim Schritt S 5-1 geprüft, ob der Punkt 1 bestimmt ist oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß zum Schritt S 5-4 fort. Falls die Antwort JA lautet, werden die Schritte S 5-2 und S 5-3 ausgeführt, woraufhin dann zum Schritt S 5-4 fortgeschritten wird. Beim vorstehend erwähnten Schritt S 5-2 wird der Cursor des Punktes 1 auf dem jeweiligen rechten und linken Bild gelöscht, woraufhin beim Schritt S 5-3 der Punkt 1 in den nicht-bestimmten Zustand zurückkehrt.
Anschließend wird beim Schritt S 5-4 eine Subroutine "Rmovecur ( )" durchgeführt. Diese Subroutine "Rmovecur ( )" stellt eine Routine zum Bestimmen des Punktes im rechten Bild dar, um die x- und y-Koordinaten (S  Rx 1, S  Ry 1) des bestimmte Punktes zu erhalten. Diese Subroutine "Rmovecur ( )" ist in Fig. 22 dargestellt.
Anschließend wird beim Schritt S 2-5 der Cursor des Punktes 1 in die Position (S  Rx 1, S  Ry 1) im rechten Bild eingeschrieben.
Daraufhin wird beim Schritt S 5-6 eine Subroutine "Lguide ( )" ausgeführt. Diese Subroutine "Lguide ( )" stellt eine Routine zum Ziehen einer Führungslinie auf dem linken Bild auf der Basis der x- und y-Koordinaten (S  Rx 1, S  Ry 1) des im rechten Bild bestimmten Punktes dar und ist in Fig. 23 wiedergegeben.
Anschließend wird beim Schritt S 5-7 eine Subroutine "Lmovecur ( )" durchgeführt, die eine Routine zum Bestimmen des Punktes im linken Bild darstellt, um die x-und y- Koordinaten (S  Lx 1, S  Ry 1) des bestimmten Punktes zu erhalten.
Anschließend wird beim Schritt S 5-8 die Führungslinie gelöscht und beim Schritt S 5-9 der Cursor des Punktes 1 in die Position (S  Lx 1, S  Ly 1) im linken Bild geschrieben.
Anschließend wird beim Schritt S 5-10 eine Subroutine "3dpoint ( )" ausgeführt, indem die x- und y-Koordinaten (S  Rx 1, S  Ry 1, S  Lx 1, S  Ly 1) der in den jeweiligen rechten und linken Bildern bestimmten Punkte zu Argumenten gemacht werden. Diese Subroutine "3dpoint ( )" stellt eine Routine zum Berechnen der dreidimensionalen Koordinaten der den beiden bestimmten Punkten entsprechenden Meßobjektpunkte (Punkt 1) auf der Basis der in den jeweiligen rechten und linken Bildern bestimmten Punkte dar. Die Ergebnisse werden auf (S  x 1, S  y 1) zurückgeführt. Diese Subroutine "3dpoint ( )" ist in Fig. 24 dargestellt.
Als nächstes wird beim Schritt S 5-11 der Abstand zum Punkt 1 unter Verwendung der oben erwähnten dreidimensionalen Koordinate (S  x 1, S  y 1, S  z 1) berechnet.
Anschließend wird beim Schritt S 5-12 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort NEIN, so endet der Prozeß. Lautet die Antwort JA, so wird beim Schritt S 5-13 der Abstand zwischen den Punkten 1 und 2 berechnet und der Prozeß endet.
Somit wird in der Subroutine "point 1 ( )" zuerst im rechten Bild der Punkt 1 bestimmt, wodurch die Führungslinie auf dem linken Bild angezeigt wird, und der Punkt 1 im linken Bild auf der Führungslinie bestimmt. Durch Bestimmen dieses Punktes 1 wird die dreidimensionale Koordinate des Punktes 1 berechnet, und, falls der Punkt 2 bestimmt ist, der Abstand zwischen den Punkten 1 und 2 berechnet. Übrigens können die dreidimensionale Koordinate des oben erwähnten Punktes 1 und der Abstand zwischen den Punkten 1 und 2 angezeigt werden, falls dies erwünscht ist.
Die Subroutine "point 2 ( )" ist übrigens nicht dargestellt. Sie entspricht im Grunde der Subroutine "point 2 ( )", wobei in der Beschreibung (einschließlich der Koordinaten) lediglich die Punkte 1 und 2 zu vertauschen sind.
Nachfolgend wird die oben erwähnte Subroutine "pointm ( )" anhand der Fig. 21 erläutert.
Zu Beginn dieser Routine wird zuerst beim Schritt S 6-0 der Radius rr des Kreises eingegeben. Anschließend wird beim Schritt S 6-1 geprüft, ob der Kreispunkt bestimmt ist oder nicht.
Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 6-4 fort. Lautet die Antwort JA, so werden die Schritte S 6-2 und S 6-3 ausgeführt, woraufhin der Prozeß zum Schritt S 6-4 fortschreitet. Bei dem oben erwähnten Schritt S 6-2 wird der Kreispunkt-Cursor auf den jeweiligen rechten und linken Bildern gelöscht, woraufhin beim Schritt S 6-3 der Kreis gelöscht wird und der Kreispunkt in seinen nicht-bestimmten Zustand zurückkehrt.
Anschließend wird beim Schritt S 6-4 eine Subroutine "Rmovecur ( )" durchgeführt, um die x- und y-Koordinaten (S  Rxm, S  Rym) des im rechten Bild bestimmten Punktes zu erhalten.
Als nächstes wird beim Schritt S 6-5 der Kreispunkt-Cursor in die Position (S  Rxm, S  Rym) im rechten Bild geschrieben.
Nachfolgend wird beim Schritt S 6-6 eine Subroutine "Lguide ( )" durchgeführt und eine Führungslinie auf dem linken Bild auf der Basis der x- und y-Koordinaten (S  Rxm, S  Rym) des im rechten Bild bestimmten Punktes gezogen.
Als nächstes wird beim Schritt S 6-7 eine Subroutine "Lmovecur ( )" ausgeführt, um die x- und y-Koordinaten (S  Lxm, S  Lym) im linken Bild zu erhalten.
Anschließend wird beim Schritt S 6-8 die Führungslinie gelöscht und dann im Schritt S 6-9 der Kreispunkt-Cursor in die Position (S  Lxm, S  Lym) im linken Bild geschrieben.
Als nächstes wird beim Schritt S 6-10 eine Subroutine "3dpoint ( )" ausgeführt, indem die x- und y-Koordinaten (S  Rxm, S  Rym, S  Lxm, S  Lym) der in den jeweiligen rechten und linken Bildern bestimmten Punkte zu Argumenten gemacht, die dreidimensionale Koordinate des Kreispunktes berechnet und die Ergebnisse auf (S  Xm, S  Ym, S  Zm) zurückgeführt werden.
Anschließend wird beim Schritt S 6-11 der Abstand zum Kreispunkt unter Verwendung der oben erwähnten dreidimensionalen Koordinate (S  Xm, S  Ym, S  Zm) berechnet.
Dann wird beim Schritt S 6-12 eine Subroutine "Rgcircle ( )" ausgeführt, woraufhin der Prozeß endet. Diese Subroutine "Rgcircle ( )" dient dem Schreiben eines Kreises als Index um den Meßobjektpunkt (Kreispunkt) auf der Basis der dreidimensionalen Koordinate (S  Xm, S  Ym, S  Zm) des Kreispunktes und des Radius und ist in Fig. 25 dargestellt.
Somit wird in der Subroutine "pointm ( )" zuerst der Kreispunkt im rechten Bild bestimmt, wodurch eine Führungslinie im linken Bild angezeigt wird und der Kreispunkt auf dieser Führungslinie im linken Bild bestimmt. Nach Bestimmung dieses Kreispunktes wird die dreidimensionale Koordinate des Kreispunktes berechnet und ein Indexkreis als Kriterium der Größe auf dem rechten Bild auf der Basis dieser dreidimensionalen Koordinate und des eingegebenen Radius angezeigt.
Die oben erwähnte Subroutine "Rmovecur ( )" wird nachfolgend anhand der Fig. 22 erläutert.
Bei Beginn dieser Routine wird im Schritt S 7-1 zuerst das Objektbild als rechtes Bild bestimmt.
Anschließend wird beim Schritt S 7-2 geprüft, ob dort ein alter, sich bewegender Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 7-5 fort. Landet die Antwort JA, so werden die Schritte S 7-3 und S 7-4 ausgeführt, woraufhin der Prozeß zum Schritt S 7-5 fortschreitet. Lautet die Antwort beim obigen Schritt S 7-2 JA, so wird beim Schritt S 7-3 der alte, sich bewegende Cursor gelöscht und dann beim Schritt S 7-4 die Position eines neuen, sich bewegenden Cursors anstelle der Position des alten, sich bewegenden Cursors gesetzt. Beim oben erwähnten Schritt S 7-5 erhält man die Position des neuen, sich bewegenden Cursors aus der Positionsinformation der als Cursorbewegungseinrichtung dienenden Maus 145. Anschließend wird beim Schritt S 7-6 der neue, sich bewegende Cursor eingeschrieben.
Somit wird bei den Schritten S 7-2 bis S 7-6 ein Löschen und Schreiben in bezug auf den sich bewegenden Cursor ausgeführt, um den beweglichen Cursor zu bewegen.
Anschließend wird beim Schritt S 7-7 geprüft, ob die Taste 1 der Maus 145, die einen Betätigungsschalter darstellt, betätigt wird oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 7-13 fort. Lautet die Antwort JA, so werden die nächsten Schritte S 7-8 bis S 7-12 ausgeführt, woraufhin der Prozeß zum Schritt S 7-13 fortschreitet. Lautet beim obigen Schritt S 7-7 die Antwort JA, so wird zuerst beim Schritt S 7-8 geprüft, ob ein alter Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 7-11 fort. Lautet die Antwort JA, so werden die Schritte S 7-9 und S 7-10 ausgeführt, woraufhin der Prozeß zum Schritt S 7-11 fortschreitet. Lautet beim obigen Schritt S 7-8 die Antwort JA, so wird beim Schritt S 7-9 der alte, bestimmte bzw. spezifizierte Cursor gelöscht und anschließend beim Schritt S 7-10 die Position des neuen, bestimmten Cursors anstelle der Position des alten, bestimmten Cursors gesetzt. Beim obigen Schritt S 7-11 wird die Position des neuen, sich bewegenden Cursors anstelle der Position des neuen, bestimmten Cursors gesetzt. Anschließend wird beim Schritt S 7-12 der neue, bestimmte Cursor eingeschrieben.
Falls bei den Schritten S 7-7 bis S 7-12 die Taste 1 der Maus betätigt wird, wird somit die Position des sich bewegenden Cursors zum bestimmten bzw. spezifizierten Cursor gemacht.
Als nächstes wird beim Schritt S 7-13 geprüft, ob der neue, bestimmte Cursor vorliegt und die Taste 2 der Maus 145, die einen Betätigtungsschalter darstellt, betätigt wird oder nicht. Lautet die Antwort NEIN, so kehrt der Prozeß zum oben erwähnten Schritt S 7-2 zurück. Lautet die Antwort JA, so schreitet der Prozeß zum Schritt S 7-14 fort. Lautet beim obigen Schritt S 7-13 die Antwort NEIN, so kehrt der Prozeß zum Schritt S 7-2 zurück, so daß die Punktbestimmung wiederholt werden kann. Beim obigen Schritt S 7-14 wird der neue, sich bewegende Cursor gelöscht, woraufhin beim Schritt S 7-15 der neue bestimmte Cursor gelöscht wird. Anschließend wird beim Schritt S 7-16 die Position des neuen, bestimmten Cursors zu einer Cursorbetätigungsposition und einem Rückkehrwert zur Ausgangsroutine (wie z. B. der Routine "point 1 ( )" oder "pointm ( )") gemacht.
Somit wird in der Subroutine "Rmovecur ( )" der Punkt im rechten Bild bestimmt.
Übrigens ist die Subroutine "Lmovecur ( )" nicht dargestellt. Sie entspricht jedoch im wesentlichen der oben erwähnten Subroutine "Rmovecur ( )" und verarbeitet anstelle des rechten Bildes das linke Bild.
Die Bestimmung des Punktes im rechten Bild und die Bestimmung des Punktes im linken Bild wird mit Bezug auf die Fig. 6 und 9 erläutert. Die Maus 145, die eine Cursorbewegungseinrichtung darstellt, steht mit der Cursoranzeigeeinrichtung 151R für das rechte Bild (die auch durch die Subroutine Rmovecur ( )" realisiert wird) mit Hilfe der Subroutine "Rmovecur ( )" in Verbindung, die die Schalteinrichtung 150 realisiert. Zu diesem Zeitpunkt wird zuerst ein Cursor zum Bestimmen des Punktes im rechten Bild angezeigt. Ist die Punktbestimmung im rechten Bild gesichert, so wird der Cursor für die Punktbestimmung aus dem rechten Bild gelöscht. Anschließend wird die oben erwähnte Maus 145 von der Cursoranzeigeeinrichtung 151R abgekoppelt und mit Hilfe der Subroutine "Lmovecur ( )", die die Schalteinrichtung 150 realisiert, mit der Cursoranzeigeeinrichtung 151L für das linke Bild (die gleichfalls durch die Subroutine "Lmovecur ( )" realisiert wird) verbunden. Zu diesem Zeitpunkt wird zuerst ein Cursor für die Punktbestimmung im linken Bild angezeigt. Ist die Punktbestimmung im linken Bild gespeichert, so wird der Cursor für die Punktbestimmung aus dem linken Bild gelöscht.
"Die Bestimmung des Objektbildes als rechtes Bild" beim ersten Schritt der Subroutine "Rmovecur ( )" (bei der Subroutine "Lmovecur ( )" gilt das gleiche) entspricht der Schalteinrichtung 150 in Fig. 6. Dieser Vorgang wird anhand der Fig. 9 erläutert. Die Mauspositionsinformation von der Mausschnittstelle 125 wird immer in die CPU 121 eingegeben.
Durch den oben erwähnten Schritt "Bestimmen als rechtes Bild" überträgt die CPU 121 diese Mauspositionsinformation über die Schnittstelle 122R für den rechten Teilbildspeicher in den Teilbildspeicher 112R für das rechte Bild, um den Cursor zu steuern. Durch den Teilbildspeicher 112R für das rechte Bild wird der Cursor dem Bild überlagert.
Die Subroutine "Lmovecur ( )" weist gleichfalls den Schritt "des Bestimmens des Objektibildes als linkes Bild" beim ersten Schritt auf. Wird in diese Subroutine "Lmovecur ( )" eingetreten, so wird die Positionsinformation der Maus 145 zur Schnittstelle 122L für den linken Teilbildspeicher übertragen.
Infolge des Programmablaufs in der CPU 121 wird der Cursor auf dem rechten oder linken Bild mit Hilfe einer einzigen Maus 145 bewegt, die geschaltet wird. Das heißt, die CPU 121 ist mit einer Funktion ausgestattet, mit deren Hilfe die Maus 145 wahlweise mit dem Teilbildspeicher 112R für das rechte Bild oder dem Teilbildspeicher 112L für das linke Bild betrieblich verbunden werden kann. Dieses Schalten wird unter den folgenden Bedingungen durchgeführt.
Beim ersten Schritt der Subroutine "Rmovecur ( )" wird die Maus 145 mit dem Teilbildspeicher 112R für das rechte Bild verbunden und beim Prüfschritt S 7-13 "ob ein neuer, bestimmter Cursor vorliegt und die Taste 2 betätigt wird oder nicht" bewegt sich die Maus 145 längs der Schleife S 7-2 bis S 7-13, bis das Betätigen der Taste 2 bestätigt wird. Wird die Taste 2 bestätigt, endet die Subroutine "Rmovecur ( )", wird der Cursor für den Punkt 1 in die Position (S  Rx 1, S  Ry 1) (im Fall der Subroutine "point 1 ( )") eingeschrieben, die Subroutine "Lguide ( )" ausgeführt und dann (S  Lx 1, S  Ly 1)←"Lmovecur ( )" ausgeführt. Beim ersten Schritt dieser Subroutine "Lmovecur ( )" wird die Maus 145 mit dem Teilbildspeicher 112L für das linke Bild verbunden.
Somit wird durch Betätigen der Taste 2 das Bild, mit der die Maus 145 betrieblich verbunden ist, geschaltet.
Ehe die oben erwähnte Subroutine "Lguide ( )" erläutert wird, wird im folgenden mit Bezug auf die Fig. 10 das Prinzip des Verfahrens zum Bestimmen der Führungslinie erläutert. Übrigens stellt die Führungslinie eine Linie dar, die die Position wiedergibt, in der, falls ein Objektpunkt in einem Bild bestimmt wird, der Objektpunkt auf dem anderen Bild liegen soll.
Werden die x- und y-Koordinaten des bestimmten Punktes auf der rechten Bildaufnahmeeinrichtung zu (cRx, cRy) bestimmt, und zwar aus der räumlichen Lagebeziehung (Ähnlichkeit), so wird die dreidimensionale Koordinate des Meßobjektpunktes durch eine dreidimensionale Koordinate mit dem rechten Auge als Zentrum dargestellt:
(t · cRx, t · cRy, t · F)
wobei t ein Parameter und F die Brennweite des Objektivlinsensystems ist. Diese dreidimensionale Koordinate mit dem rechten Auge als Zentrum stellt eine Koordinate dar, die das Zentrum der rechten Bildaufnahmeeinrichtung als Ursprung hat. Die x-Richtung der dreidimensionalen Koordinate stellt die Richtung dar, die durch das Zentrum der linken und rechten Bildaufnahmeeinrichtung verläuft, die z-Richtung stellt die Richtung dar, die senkrecht zur Kopffläche des Endoskopes verläuft, und die y-Richtung stellt die Richtung dar, die die x-Richtung und die z-Richtung jeweils im rechten Winkel schneidet.
Die dreidimensionale Koordinate des oben erwähnten Meßobjektpunktes wird durch eine dreidimensionale Koordinate mit dem linke Auge als Zentrum wie folgt dargestellt:
(t · cRx + D, t · cRy, t · F)
wobei D eine Parallaxe darstellt.
Wird diese Koordinate durch t dividiert, so daß diese durch die x- und y-Koordinaten auf der linken Bildaufnahmeeinrichtung dargestellt wird, so ergibt sich (cRx+D/t, cRy). Da das äußerste linke Ende der im linken Bild aufgezeigten Führungslinie eine Position darstellt, bei der der Meßobjektpunkt unendlich weit ist, falls t→∞, so ergeben sich die x- und y-Koordinaten (cLx, cLy) am äußersten linken Ende der Führungslinie zu (cLx, cLy)=(cRx, cRy). Nähert man sich dem Meßobjektpunkt an, so wird die x- und y-Koordinate auf der linken Bildaufnahmeeinrichtung größer, während die y-Koordinate sich nicht ändert. Demzufolge wird die Führungslinie eine feste gerade Linie in der y-Koordinate, und zwar vom Punkt (cLx, cLy)=(cRx, cRy) zum äußersten rechten Ende der linken Bildaufnahmeeinrichtung.
Die vorstehende Erläuterung gilt für den Fall, daß der Verzerrungsabbildungsfehler des Objektlinsensystems des Endoskops vernachläßigt wird. Falls somit der Verzerrungsabbildungsfehler nicht korrigiert wird, kann das äußerste linke Ende der Führungslinie unter Verwendung der x- und y-Koordinaten auf dem Bild statt der x- und y-Koordinaten auf der Bildaufnahmeeinrichtung berechnet werden. Die x- und y-Koordinaten am äußersten linken Ende der Führungslinie des linken Bildes entsprechen den x- und y-Koordinaten des auf dem rechten Bild bestimmten Punktes. Das heißt, ergeben sich die x- und y-Koordinaten des auf dem rechten Bild bestimmten Punktes zu (Rx, Ry), so ergeben sich die x- und y-Koordinaten (dLx, dLy) am äußersten rechte Ende der Führungslinie auf dem linken Bild zu:
(dLx, dLZY) = (Rx, Ry).
Die Subroutine "Lguide" ( )", die die Führungslinie unter Verwendung des obigen Prinzips zeichnet, wird nachfolgend anhand der Fig. 23 erläutert.
Bei dieser Routine werden die x- und y-Koordinaten (dLx, dLy) des auf dem rechten Bild bestimmten Punktes, der von der Hauptroutine ("point 1 ( )" oder "pointm ( )") geliefert wird, zu Argumenten gemacht.
Beim Start dieser Routine wird beim Schritt S 8-1 zuerst der Punkt (dLx, dLy) in das linke Bild eingeschrieben.
Anschließend wird beim Schritt S 8-2 dLx um 1 erhöht.
Als nächstes wird beim Schritt S 8-3 geprüft, ob dLx(RSX+SXL) gilt oder nicht. Wie aus Fig. 13(a) ersichtlich, stellt RSX die Bildelementeanzahl in x-Richtung des Teils dar, in dem das Endoskop auf dem linken Bild wiedergegeben wird, und SXL eine x-Koordinate des Bildelementes am äußersten linken Ende des Teils, in dem das Endoskop auf dem linken Bild wiedergegeben wird. Das heißt, beim Schritt S 8-3 wird geprüft, ob dLx das äußerste rechte Ende erreicht hat oder nicht. Falls dLx es nicht erreicht hat, d. h. falls die Antwort JA lautet, kehrt der Prozeß zum oben erwähnten Schritt S 8-1 zurück. Falls jedoch dLx das äußerste rechte Ende erreicht hat, d. h. falls die Antwort beim Schritt S 8-3 JA lautet, endet der Prozeß.
Somit wird die Führungslinie vom gleichen Koordinatenpunkt wie der bestimmte Punkt im rechten Bild zum äußersten rechten Ende des Bildes gezogen. Ein Beispiel für das linke Bild, auf dem die Führungslinie derart gezogen ist, ist in Fig. 14 wiedergegeben.
Diese Subroutine "Lguide ( )" realisiert übrigens die in Fig. 6 dargestellte Führungslinien-Anzeigeeinrichtung 153.
Ehe nun die oben erwähnte Subroutine "3dpoint ( )" beschrieben wird, wird nachfolgend anhand der Fig. 11 und 13 das Prinzip des Verfahrens zum Bestimmen der dreidimensionalen Koordinate des Meßobjektpunktes erläutert.
Die x- und y-Koordinaten des bestimmten Punktes auf der rechten Bildaufnahmeeinrichtung werden durch (cRx, cRy), die x- und y-Koordinaten des bestimmten Punktes auf der linken Bildaufnahmeeinrichtung werden durch (cLx, cLy) und die dreidimensionale Koordinate des Meßobjektpunktes durch (X, Y, Z) dargestellt.
Ausgehend von der räumlichen Lagebeziehung (Ähnlichkeit) wird unter Verwendung eines Parameters t die dreidimensionale, auf den Meßobjektpunkt bezogene Koordinate mit dem rechten Auge als Zentrum dargestellt durch:
X′ = t · cRx,
Y′ = t · cRy,
Z′ = t · F.
Aus der räumlichen Lagebezeichnung (Ähnlichkeit) ergibt sich übrigens der Parameter t zu:
t = D / (cLx - cRx).
Die Umwandlung der obigen dreidimensionalen Koordinate mit dem rechten Auge als Zentrum in eine dreidimensionale Koordinate mit dem Endoskop als Zentrum erfolgt folgendermaßen:
X = X′ + D/2 = t · cRx + D/2,
Y = Y′ = t · cRy,
Z = Z' = t · F.
Übrigens stellt die oben erwähnte dreidimensionale Koordinate mit dem Endoskop als Zentrum eine dreidimensionale Koordinate dar, die als Ursprung den Mittelpunkt zwischen dem Zentrum der rechten Abbildungseinrichtung und dem Zentrum der linken Abbildungseinrichtung hat.
Falls zwei Meßobjektpunkte bestimmt werden, kann auch der Abstand zwischen den beiden Punkten anhand der dreidimensionalen Koordinate dieser beiden Punkte bestimmt werden. Das heißt, sind die dreidimensionalen Koordinaten der beiden Punkte (X₁, Y₁, Z₁) und (X₂, Y₂, Z₂), so ergibt sich der Abstand d zwischen den beiden Punkten anhand der folgenden Formel:
d = [(X₁ - X₂)² + (Y₁ - Y₂)² + (Z₁ - Z₂)²]1/2.
Da die bestimmten Punkte in den Positionen auf dem rechten bzw. dem linken spezifiziert sind, ist es zur Ausführung der oben erwähnten Operation erforderlich, die Positionen auf den Bildern in Positionen auf den Bildaufnahmeeinrichtungen umzuwandeln.
Diese Umwandlung der Positionen auf den Bildern in die Position auf den Bildaufnahmeeinrichtungen wird nachfolgend anhand der Fig. 13 erläutert.
Wie aus den Fig. 13(a) und 13(b) ersichtlich, liegen die Ursprünge der x- und y-Koordinaten des rechten bzw. linken Bildes in den linken oberen Teilen der Bilder und ist die auf die x-Richtung bezogene Bildelementeanzahl des Teils, in dem das Endoskopbild auf dem rechten und linken Bild angezeigt wird mit RSX, die auf die y-Richtung bezogene Bildelementeanzahl mit RSY, die x-Koordinate des Bildelements am äußersten linken Ende des Teils, in dem das Endoskopbild im linken Bild angezeigt wird, mit SXL, die y-Koordinate des Bildelements am obersten Ende mit SYL, die x-Koordinate des Bildelements am äußersten linken Ende des Teils, in dem das Endoskopbild im rechten Bild dargestellt wird, mit SRX und die y-Koordinate des Bildelements am oberen Ende mit SYR bezeichnet.
Wie aus den Fig. 13(c) und (d) ersichtlich, sollen die Ursprünge der x- und y-Koordinaten der rechten und linken Bildaufnahmeeinrichtung die Zentren der Bildaufnahmeeinrichtungen darstellen. Ferner soll die auf die x-Richtung bezogene Länge jeder Bildaufnahmeeinrichtung mit SIZEX und die auf die y-Richtung bezogene Länge mit SIZEY bezeichnet werden.
Ebenso sollen die x- und y-Koordinaten des im linken Bild bestimmten Punktes (Lx, Ly), die x- und y-Koordinaten des in der linken Bildaufnahmeeinrichtung bestimmten Punktes (cLx, cLy) und die x- und y-Koordinaten des in der rechten Bildaufnahmeeinrichtung bestimmten Punktes (cRx, cRy) sein.
Die Beziehung zwischen (Lx, Ly) und (cLx, cLy) wird durch die folgende Formeln wiedergegeben:
cLx + {Lx - (RSX/2 + SXL)} · SIZEX/RSX;
cLy = - 1 · {Ly - (RSY/2 + SYL)}· SIZEY/RSY.
In der gleichen Weise werden die Beziehungen zwischen (Rx, Ry) und (cRx, cRy) durch die folgenden Formeln verdeutlicht:
cRx = {Rx - (RSX/2 + SXR)} · SIZEX/RSX,
cRy = - 1 · {Ry - (RSY/2 + SYR)} · SIZEY/RSY.
Die oben erwähnte Subroutine "3dpoint ( )", die von einer derartigen Koordinatenumwandlung Gebrauch macht, und das Prinzip des Verfahrens zum Bestimmen der dreidimensionalen Koordinate werden anhand der Fig. 24 erläutert.
Bei dieser Routine werden die x- und y-Koordinaten (Rx, Ry) des bestimmten Punktes des rechten Bildes und die x- und y-Koordinaten (Lx, Ly) des bestimmten Punkts des linken Bildes, die von der Hauptroutine ("point 1 ( )" oder "pointm ( )") geliefert werden, zu Argumenten gemacht.
Beim Start dieser Routine wird beim Schritt S 9-1 zuerst {Rx - (RSX/2 + SXR)} · SIZEX/RSX berechnet und dies zu einer x-Koordinate cRx des rechten bestimmten Punktes auf der Bildaufnahmeeinrichtung gemacht.
Anschließend wird beim Schritt S 9-2 der Ausdruck -1 · {Ry- (RSY/2+SYR)} · SIZEY/RSY berechnet und dieser zu einer y-Koordinate cRy des rechten bestimmten Punktes auf der Bildaufnahmeeinrichtung gemacht.
Anschließend wird beim Schritt S 9-3 der Ausdruck {Lx - (RSX/2 + SXL)} · SIZEX/RSX berechnet und dieser zu einer x-Koordinate cLx des bestimmten Punktes auf der Bildaufnahmeeinrichtung gemacht.
Anschließend wird S 9-4 der Ausdruck -1 · {Ly-(RSY/2+SYL)} · SIZEY/RSY berechnet und dieser zu einer y-Koordinate cLy des linken bestimmten Punktes auf der Bildaufnahmeeinrichtung gemacht.
Das heißt, bei den oben erwähnten Schritten S 9-1 bis S 9-4 wird die Position auf dem Bild in eine Position auf der Bildaufnahmeeinrichtung auf der Basis der oben erwähnten Umwandlungsgleichung umgewandelt.
Anschließend wird beim Schritt S 9-5 geprüft, ob cRxcL ist oder nicht. Lautet die Antwort NEIN, d. h., liegt der Fall cRx=cL vor, so ist der Meßobjektpunkt unendlich weit. In diesem Fall endet der Prozeß. Lautet andererseits die Antwort beim Schritt S 9-5 JA, so wird beim Schritt S 9-6 der Ausdruck D/(cLx-cRx) berechnet, um den Parameter t zu bestimmen.
Anschließend wird im Schritt S 9-7 der Ausdruck t · cRx+D/2 zu X, der Ausdruck t · cRY zu Y und der Ausdruck t · F zu Z gemacht, um die dreidimensionale Koordinate des Meßobjektpunktes zu bestimmen.
Anschließend wird beim Schritt S 9-8 die oben erwähnte dreidimensionale Koordinate (X, Y, Z) zu einem Rückkehrwert zur Hauptroutine gemacht, woraufhin der Prozeß endet.
Diese Subroutine "3dpoint ( )" realisiert die Objektpunkt- Berechnungseinrichtung 154 in Fig. 6.
Ehe nun die oben erwähnte Subroutine "Rgcircle ( )" erläutert wird, wird nachfolgend mit Bezug auf Fig. 12 das Prinzip des Verfahrens der Bestimmung des Indexkreises angesprochen.
Falls die dreidimensionale Koordinate des Kreispunktes zu (X 3, Y 3, Z 3) und die dreidimensionale Koordinate des Punktes in dem Koordinatensystem mit dem Kreispunkt als Zentrum zu (lx 3, lUy 3, Z 3) bestimmt wird, ergibt sich die dreidimensionale Koordinate mit dem Endoskop als Zentrum zu (gx 3, gUy 3, Z 3)=(lx 3+X 3, lUy 3+Y 3, Z 3).
Die dreidimensionale Koordinate mit dem Endoskop als Zentrum wird eine dreidimensionale Koordinate mit dem rechten Auge als Zentrum umgewandelt, durch den Parameter t dividiert und in x- und y-Koordinaten (cRx, cRUy) auf der rechten Bildaufnahmeeinrichtung umgewandelt, so daß sich ergibt:
(cRx, cRUy) = ((gx 3 - D/2)/t, gUy 3/t).
Der Parameter t ergibt sich unter Verwendung von Z der dreidimensionalen Koordinate des Kreispunktes zu t=Z 3/F.
Wird der oben erwähnte Punkt P unter der Bedingung bewegt, daß dieser ein Punkt mit einem Abstand rr vom Kreispunkt ist, so wird in Erwiderung dessen ein Indexkreis auf der Bildaufnahmeeinrichtung beschrieben.
Ebenso wird ein Indexkreis auf dem Bild beschrieben, indem die x- und y-Koordinaten auf der oben erwähnten Bildaufnahmeeinrichtung in x- und y-Koordinaten auf dem Bild umgewandelt werden.
Die oben erwähnte Subroutine "Rgcircle ( )", die das oben erwähnte Prinzip verwendet, wird anhand der Fig. 25 nachfolgend erläutert.
Bei dieser Routine werden die dreidimensionale Koordinate (x 3, y 3, z 3) und der Radius rr des Kreises, die von der Hauptroutine ("pointm ( )") geliefert werden, zu Argumenten gemacht.
Beim Start dieser Routine wird beim Schritt S 10-1 zuerst der Ausdruck z 3/F zu einem Parameter t gemacht.
Anschließend wird beim Schritt S 10-2 der Ausdruck -1.0 · rr dem Ausdruck lx 3 und 0 dem Ausdruck ly 3 zugeordnet. Das heißt, die x- und y-Koordinaten haben den Kreispunkt, des Punktes am linken Ende des Indexkreises als Zentrum.
Anschließend wird beim Schritt S 10-3 der Ausdruck x 3+lx 3 zu gx 3 und der Ausdruck y 3+lUy 3 zu gUy 3 gemacht. Das heißt, die Koordinate des Punktes an dem oben erwähnten linken Ende wird zu einer Koordinate mit dem Endoskop als Zentrum umgewandelt.
Nachfolgend wird beim Schritt S 10-4 der Ausdruck (gx 3-D/2)/t zu cRx und der Ausdruck gUy 3/t zu cRUy gemacht. Das heißt, der Punkt an dem oben erwähnten linken Ende wird zu einem Punkt auf der rechten Bildaufnahmeeinrichtung umgewandelt.
Anschließend wird beim Schritt S 10-5 der Ausdruck cRx · RSX/SIZEX+(RSX/2+SXR) berechnet und zu einer x-Koordinate dRx auf dem rechten Bild gemacht.
Anschließend wird beim Schritt S 10-6 der Ausdruck -1 · cRUy · RSY/SIZEY+(RSY/2+SYR) berechnet und dieser zu einer y- Koordinate dUy auf dem rechten Bild gemacht.
Wie mit Bezug auf Fig. 13 erläutert, dienen die oben erwähnten Schritte S 10-5 und S 10-6 der Umwandlung der Position auf der Bildaufnahmeeinrichtung in eine Position auf dem Bild.
Anschließend wird beim Schritt S 10-7 der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben.
Anschließend wird in den Schritten S 10-2 bis S 10-7 der Punkt am linken Ende des Indexkreises in das rechte Bild eingeschrieben.
Nachfolgend wird beim Schritt S 10-8 der Ausdruck lx 3+SIZEX/RSX zu lx 3 gemacht. Das heißt, die x-Koordinate des Punktes auf dem Indexkreis wird nach rechts bewegt.
Anschließend wird beim Schritt S 10-9 der Ausdruck (rr²-lx 3²)1/2 zur y-Koordinate lUy 3 des Punktes auf der Oberseite auf dem Indexkreis gemacht, der dem oben erwähnten Ausdruck lx 3 entspricht, und der Ausdruck -(rr²-lx 3²)1/2 wird zur y-Koordinate lDy 3 des Punktes an der unteren Seite auf dem Indexkreis gemacht, der dem oben erwähnten Ausdruck lx 3 entspricht.
Anschließend wird beim Schritt S 10-10 der Ausdruck x 3+lx 3 zu gx 3, der Ausdruck y 3+lUy 3 zu gUy 3 und der Ausdruck y 3+lDy 3 zu gDy 3 gemacht. D. h. die Koordinaten der beiden Punkte auf dem oben erwähnten Indexkreis werden zu Koordinaten mit dem Endoskop als Zentrum umgewandelt.
Anschließend wird beim Schritt S 10-11 der Ausdruck (gx 3-D/2)/t zu cRx, der Ausdruck gUy 3/t zu cRUy und der Ausdruck gDy 3/t zu cRDy gemacht. D. h. die beiden Punkte auf dem oben erwähnten Indexkreis werden in Punkte auf der rechten Bildaufnahmeeinrichtung umgewandelt.
Anschließend wird beim Schritt S 10-12 der Ausdruck cRx· RSX/SIZEX+(RSX/2+SXR) zu dRx gemacht.
Daraufhin wird beim Schritt S 10-13 der Ausdruck -1 · cRUy · RSY/SIZEY+(RSY/2+SYR) zu RUy gemacht.
Anschließend wird beim Schritt S 10-14 der Ausdruck -1 · cRDy · RSY/SIZEY+(RSY/2+SYR) zu dRDy gemacht.
D. h. bei den oben erwähnten Schritten S 10-12 bis S 10-14 wird die Position auf der Bildaufnahmeeinrichtung in die Position auf dem Bild umgewandelt.
Nachfolgend werden beim Schritt S 10-15 der Punkt (dRx, dRUy) und der Punkt (dRx, dRDy) in das rechte Bild eingeschrieben.
Anschließend wird beim Schritt S 10-16 der Ausdruck lx 3+SIZEX/RSX dem Ausdruck lx 3 zugewiesen. D. h. die x-Koordinate des Punktes auf dem Indexkreis wird nach rechts bewegt.
Anschließend wird beim Schritt S 10-17 geprüft, ob lx 3<rr ist oder nicht. Lautet die Antwort JA, d. h. falls der Punkt auf dem Indexkreis das rechte Ende noch nicht erreicht hat, kehrt der Prozeß zum oben erwähnten Schritt S 10-9 zurück. Lautet die Antwort andererseits NEIN, d. h. falls der Punkt auf dem Indexkreis das rechte Ende erreicht hat, schreitet der Prozeß zum nächsten Schritt S 10-18 fort. Somit werden, bis der Punkt auf dem Indexkreis das rechte Ende erreicht, die beiden Punkte auf dem Indexkreis in das Bild von der linken Seite her eingeschrieben.
Nachfolgend wird bei dem oben erwähnten Schritt S10-18 rr dem Ausdruck lx 3 und 0 dem Ausdruck lUy 3 zugewiesen. D. h. die x- und y-Koordinaten, die den Kreispunkt des Punktes am rechten Ende des Indexkreises als Zentrum haben, werden bestimmt.
Anschließend werden die Schritte S 10-19 bis S 10-23 ausgeführt und der Prozeß endet. Die oben erwähnten Schritte S 10-19 bis S 10-23 entsprechen den oben erwähnten Schritten S 10-3 bis S 10-7. D. h. im Schritt S 10-19 wird die Koordinate des Punktes am rechten Ende in eine Koordinate mit dem Endoskop als Zentrum umgewandelt, im Schritt S 10-20 wird der Punkt am rechten Ende in den Punkt auf der rechten Bildaufnahmeeinrichtung umgewandelt, bei den Schritten S 10-21 und S 10-22 wird die Position auf der Bildaufnahmeeinrichtung in die Position auf dem Bild umgewandelt, und bei dem Schritt S 10-23 wird der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben.
Somit wird in den Schritten S 10-18 bis S 10-23 der Punkt am rechten Ende des Indexkreises in das rechte Bild eingeschrieben.
Ein Beispiel für das rechte Bild, in dem der Indexkreis dargestellt ist, ist in Fig. 15 gezeigt.
Übrigens realisiert diese Subroutine "Rgcircle ( )" die Indexkreis-Anzeigeeinrichtung 155 in Fig. 6.
Wie oben erläutert, wird, wenn der dem Meßobjektpunkt entsprechende Objektpunkt auf dem rechten Bild bestimmt wird, die Positionsbedingung des Objektpunktes im linken Bild berechnet und die Linie, die die Position des Objektpunktes für das linke Bild zeigt, d. h. die Führungslinie aufgezeigt. Wird demzufolge der Objektpunkt im linken Bild auf dieser Führungslinie bestimmt, so kann, selbst dann wenn das zu messende Objekt kein deutliches Detail zeigt, die Position des Objektpunktes exakt bestimmt und somit der Abstand und die Länge exakt gemessen werden.
Auch bei diesem Ausführungsbeispiel wird die Maus 145, die eine Cursorbewegungseinrichtung darstellt, zuerst mit der Cursoranzeigeeinrichtung 151R für das rechte Bild verbunden und zu diesem Zeitpunkt wird der Cursor für die Punktbestimmung im rechten Bild erst angezeigt. Ist im rechten Bild die Punktbestimmung gesichert, wird der sich bewegende Cursor und der Bestimmungscursor für die Punktbestimmung aus dem rechten Bild gelöst, woraufhin die Maus 145 von der Cursoranzeigeeinrichtung 151R abgekoppelt und mit der Cursoranzeigeeinrichtung 151L für das linke Bild mittels der Schalteinrichtung 150 betrieblich verbunden wird. Erst zu diesem Zeitpunkt wird der Cursor für die Punktbestimmung im linken Bild angezeigt. Ist die Punktbestimmung im linken Bild gesichert, so werden der sich bewegende Cursor und der Bestimmungscursor für die Punktbestimmung aus dem linken Bild gelöscht. Somit können durch eine einzige Cursorbewegungseinrichtung (Maus 145) die Bewegung des Cursors sowohl im rechten wie auch im linken Bild und die Punktbestimmung einfach vorgenommen werden. Der Cursor für die Punktbestimmung wird im Bild nur angezeigt, wenn die Cursoranzeigeeinrichtung 151R oder 151L betrieblich mit der Maus 145 verbunden wird. Demzufolge kann mit einem kurzen Blick festgestellt werden, auf welchem Bild der Cursor bewegt wird und ob der Punkt bestimmt werden kann, so daß eine leichte Handhabung gegeben ist.
Auch bei diesem Ausführungsbeispiel kann ein Indexkreis, der einen zweidimensionalen Index mit einer Größe darstellt, die dem Abstand zum Objekt entspricht, auf dem rechten Bild unter Verwendung der Meßergebnisse angezeigt werden. Wird somit dieses mit dem oben erwähnten Indexkreis verglichen, so kann die Größe des Objektes durch Sicht erkannt werden. Ebenso kann durch Vergleich mit diesem zweidimensionalen Index die Beziehung zwischen der vertikalen Größe und der horizontalen Größe des Objekts herausgefunden werden.
Sechs Modifikationen dieses Ausführungsbeispiels werden nachfolgend erläutert.
Die erste Modifikation ist in den Fig. 26 und 27 dargestellt.
Bei dieser Modifikation wird im linken Bild für den Fall, daß andere Punkte als die auf der Führungslinie bestimmt werden, eine Warnung ausgegeben wird, ohne daß die dreidimensionale Koordinate berechnet wird.
Zuerst wird die Subroutine "point 1 ( )" anhand von Fig. 26 erläutert.
Die Schritte S 11-1 bis S 11-7 zu Beginn der Subroutine "point 1 ( )" dieser Modifikation entsprechen genau den Schritten S 5-1 bis S 5-7 der Subroutine "point 1 ( )" bei dem in Fig. 20 dargestellten Ausführungsbeispiel. Bei dieser Modifikation wird nach der Subroutine "Lmovecur ( )" beim Schritt S 11-7 eine Subroutine "checkguide ( )" beim Schritt S 11-8 durchgeführt. Bei dieser Routine werden die Koordinaten (S  Rx 1, S  Ry 1, S  Lx 1, S  Ly 1) der Punkte, die in den entsprechenden Bildern bestimmt sind, zu Argumenten gemacht und geprüft, ob der im linken Bild bestimmte Punkt auf der Führungslinie liegt oder nicht. Falls dieser auf der Führungslinie liegt, wird 1 für flg gesetzt. Falls dieser sich jedoch nicht auf der Führungslinie befindet, wird für flg 0 gesetzt. Die oben erwähnte Subroutine "checkguide ( )" ist in Fig. 27 dargestellt.
Als nächstes wird beim Schritt S 11-9 der Ausdruck flg überprüft. Ist dieser 0, so wird beim Schritt S 11-10 eine Warnung ausgegeben, die darauf hinweist, daß der linke bestimmte Punkt sich nicht auf der Führungslinie befindet, woraufhin der Prozeß zum Schritt S 11-7 zurückkehrt. D. h. der Punkt wird wieder im linken Bild bestimmt. Nimmt andererseits der Ausdruck flg den Wert 1 an, so schreitet der Prozeß zum Schritt S 11-11 fort, bei dem die Führungslinie gelöscht wird.
Anschließend werden die oben erwähnten Schritte S 11-12 bis S 11-16 ausgeführt, woraufhin der Prozeß endet. Übrigens entsprechen die oben erwähnten Schritte S 11-12 bis S 11-16 genau den Schritten S 5-8 bis S 5-13 der Subroutine "point 1 ( )" bei dem in Fig. 20 dargestellten Ausführungsbeispiel.
Die Subroutine "point 2 ( )" ist bei dieser Modifikation übrigens nicht verdeutlicht. Sie entspricht im wesentlichen der Subroutine "point 1 ( )" in Fig. 26, wobei in der Beschreibung (einschließlich der Koordinaten) die Punkte 1 und 2 zu vertauschen sind.
Übrigens kann auch im Fall der Bestimmung des Kreispunktes wie oben bei der Subroutine "point 1 ( )" in Erwägung gezogen werden, eine Warnung in dem Fall auszugeben, bei dem der linke bestimmte Punkt sich nicht auf der Führungslinie befindet. Bei diesem Fall müssen jedoch in der Subroutine "pointm ( )" die gleichen Schritte wie die oben erwähnten Schritte S 11-8 bis S 11-10 hinzugefügt werden.
Nachfolgend wird die oben erwähnte Subroutine "checkguide ( )" anhand der Fig. 27 erläutert.
Bei dieser Routine werden die x- und y-Koordinaten des bestimmten Punkts auf dem rechten Bild und die x- und y- Koordinaten des bestimmten Punkts auf dem linken Bild (Rx, Ry, Lx, Ly), die von der Hauptroutine (point 1" oder "point 2") geliefert werden, zu Argumenten gemacht.
Zu Beginn dieser Routine wird zuerst beim Schritt S 12-1 geprüft, ob Ry=Ly und Rx<LxSXL+RSX ist. D. h. es wird geprüft, ob der linke bestimmte Punkt (Lx, Ly) auf der Führungslinie liegt, die (Rx, Ry) als extremen linken Punkt hat. Lautet die Antwort JA, so wird beim Schritt S 12-2 der Rückkehrwert zur Hauptroutine zu 1 gemacht. Lautet die Antwort hingegen NEIN, so wird beim Schritt S 12-3 der Rückkehrwert zur Hauptroutine zu 0 gemacht, woraufhin der Prozeß endet.
Da somit bei dieser Modifikation der Pun 56439 00070 552 001000280000000200012000285915632800040 0002003922652 00004 56320kt nur auf der Führungslinie bestimmt werden kann, kann der Objektpunkt genau spezifiziert und der Abstand und die Länge exakt gemessen werden.
Die zweite Modifikation ist in Fig. 28 und 29 dargestellt.
Bei dieser Modifikation kann der Cursor sich im linken Bild nur auf der Führungslinie bewegen.
Zuerst wird die Subroutine "Lmovecur ( )" anhand der Fig. 28 erläutert.
Bei der Subroutine "Lmovecur ( )" dieser Modifikation wird zuerst beim Schritt S 13-1 das Objektbild als linkes Bild festgesetzt. Anschließend werden die Schritte S 13-2 bis S 13-4 ausgeführt, die jedoch den Schritten S 7-2 bis S 7-4 bei der in Fig. 22 dargestellten Subroutine "Rmovecur ( )" entsprechen.
Anschließend wird beim Schritt S 13-5 eine Subroutine "Lgetcur ( )" durchgeführt. Bei dieser Routine werden auf der Basis der Koordinate (S  Rx, S  Ry) des im rechten Bild bestimmten Punktes die Position des sich bewegenden Cursors im linken Bild korrigiert, so daß dieser auf der Führungslinie liegt, und die resultierenden x- und y-Koordinaten zur Position des neuen sich bewegenden Cursors gemacht.
Anschließend werden die Schritte S 13-6 bis S 13-16 ausgeführt, woraufhin der Prozeß endet. Hierbei entsprechen die Schritte S 13-6 bis S 13-16 den Schritten S 7-6 bis S 7-16 der in Fig. 22 dargestellten Subroutine "Rmovecur ( )".
Die oben erwähnte Subroutine "Lgetcur ( )" wird nachfolgend anhand der Fig. 29 erläutert.
Bei dieser Routine werden die x- und y-Koordinaten (Rx, Ry) des im rechten Bild bestimmten Punkts, der von der Hauptroutine ("Lmovecur") geliefert wird, zu Argumenten gemacht.
Zu Beginn dieser Routine wird beim Schritt S 14-1 zuerst die Position des Cursors im linken Bild mit Hilfe der Maus 145 erhalten und die x-Koordinate an die Stelle von Lx gesetzt.
Anschließend wird beim Schritt S 14-2 geprüft, ob Lx<Rx ist, d. h. es wird geprüft, ob Lx auf der linken Seite statt am äußersten linken Ende der Führungslinie ist. Lautet die Antwort JA, so wird beim Schritt S 14-3 Rx an die Stelle von Lx gesetzt. D. h. Lx wird zur x-Koordinate am äußersten linken Ende der Führungslinie gemacht und der Prozeß schreitet zum Schritt S 14-6 fort. Lautet andererseits beim obigen Schritt S 14-2 die Antwort NEIN, so wird beim Schritt S 14-4 geprüft, ob SXL+RSX<Lx ist. D. h. es wird geprüft, ob Lx auf der rechten Seite anstatt am äußersten rechten Ende des linken Bildes ist. Lautet die Antwort JA, so wird beim Schritt S 14-5 der Ausdruck SXL+RSX an die Stelle von Lx gesetzt. D. h. Lx wird zur x-Koordinate am äußersten rechten Ende des linken Bildes gemacht, woraufhin der Prozeß zum Schritt S 14-6 fortschreitet. Lautet beim obigen Schritt S 14-4 die Antwort andererseits NEIN, so schreitet der Prozeß direkt zum Schritt S 14-6 fort.
Bei dem oben erwähnten Schritt S 14-6 wird Ry zu Ly gemacht. D. h. Ly wird zur y-Koordinate der Führungslinie gemacht.
Anschließend wird beim Schritt S 14-7 (Lx, Ly) zu einem Rückkehrwert zur Hauptroutine gemacht, wobei (Lx, Ly) einen Punkt auf der Führungslinie darstellt.
Somit wird bei der Modifikation selbst in dem Fall, daß die Maus 145 zweidimensional im linken Bild bewegt wird, nur die Bewegungsinformation in x-Richtung als Cursorbewegungsrichtung verwendet. Falls die Position des Cursors von der Führungslinie abweicht, wird der wiedergegebene Cursor auf die Führungslinie geschoben. Demzufolge kann der Punkt ohne Fehler auf der Führungslinie bestimmt werden.
Die dritte Modifikation wird in den Fig. 30 bis 37 erläutert.
Bei den vorstehend beschriebenen Modifikationen wurde der Verzerrungsabbildungsfehler des Objektivlinsensystems des Endoskops vernachläßigt. Bei diesem Ausführungsbeispiel wird jedoch bei der Anzeige der Führungslinie und des Indexkreises und bei der Bestimmung der dreidimensionalen Koordinate des Objektpunktes der Verzerrungsabbildungsfehler korrigiert, indem dessen Einfluß berücksichtigt wird.
Zuerst wird nun mit Bezug auf Fig. 30 das Prinzip der Verzerrungsabbildungsfehlerkorrektion erläutert.
Wie aus Fig. 30(a) ersichtlich, wird die Position des Punktes durch (cx, cy) repräsentiert, falls der Einfluß des Verzerrungsabbildungsfehlers vor der Korrektion des Verzerrungsabbildungsfehlers auf der Bildaufnahmeeinrichtung empfangen wird, und die Position des Punktes anhand von (dix, diy) dargestellt, falls der Einfluß von Korrektion des Verzerrungsabbildungsfehlers nicht empfangen wird.
Der Verzerrungsabbildungsfehler wird auf der Basis der folgenden relativen Formel korrigiert:
vh = FR,
rh = F tan R,
wobei vh den Abstand zwischen dem Ursprung bzw. dem Koordinatennullpunkt und (cx, cy) und rh den Abstand zwischen dem Koordinatennullpunkt und (dix, diy) darstellt und wobei wie aus Fig. 30(b) ersichtlich, F die Brennweite und R einen Winkel darstellt, der durch eine gerade Linie, die durch das Zentrum der Bildaufnahmeeinrichtung und (dix, diy) verläuft, und die optische Achse gebildet wird.
Demzufolge ergeben sich die Umwandlungsformen wie folgt:
Falls eine Abbildungsfehlerkorrektion in bezug auf die Verzerrung vorgenommen wird, gilt:
vh = (cx² + cy²)1/2,
R = vh/F,
rh = F · tan R,
s =rh/vh,
dix = cx · s,
diy = cy · s.
Im Falle einer inversen Verzerrungsabbildungsfehlerkorrektion gilt:
rh = (dix² + diy²)1/2,
R = tan-1 (rh/F),
vh = F · R,
s = vh/rh,
cx = dix · s,
cy = diy · s.
Die Subroutine "Lguide ( )" wird nachfolgend anhand der Fig. 33 erläutert.
Diese Subroutine "Lguide ( )" stellt eine Routine dar, die die Führungslinie anzeigt. Um darin den Verzerrungsabbildungsfehler zu korrigieren, ist es erforderlich, daß einmal die Koordinaten auf dem Bild in Koordinaten auf der Bildaufnahmeeinrichtung umgewandelt werden, da die Koordinaten auf dem Bild gewöhnlich in ganzen Zahlen und somit nicht mit Dezimalstellen ausgedrückt werden und somit keine exakte Korrektur möglich ist.
Demzufolge werden die Koordinaten in Koordinaten auf der Bildaufnahmeeinrichtung umgewandelt, die durch reelle Zahlen ausgedrückt werden. Anschließend wird der Verzerrungsabbildungsfehler korrigiert. Übrigens erfolgt die Koordinatenumwandlung, wie dies anhand Fig. 13 erläutert wird.
Bei der oben erwähnten Subroutine "Lguide ( )" werden die x- und y-Koordinaten (sdRx, sdRy) des auf dem rechten Bild bestimmten Punkts, der von der Hauptroutine geliefert wird, zu Argumenten gemacht. Beim Start dieser Routine wird zuerst beim Schritt S 15-1 der Ausdruck {sdRx-(RSX/2+SXR)} · SIZEX/RSX berechnet und dieser Ausdruck zu einer x-Koordinate scRx des rechten bestimmten Punkts auf der Bildaufnahmeeinrichtung gemacht.
Anschließend wird beim Schritt S 15-2 der Ausdruck - {sdRy - (RSY/2+SYR)} · SIZEY/RSY berechnet und dieser Ausdruck zu einer y-Koordinate scRy des rechten bestimmten Punkts auf der Bildaufnahmeeinrichtung gemacht.
Anschließend werden beim Schritt S 15-3 die Koordinaten (scRx, scRy) auf der Bildaufnahmeeinrichtung zu Argumenten gemacht und eine Subroutine "distot ( )" durchgeführt. Diese Routine dient der Korrektion des Verzerrungsabbildungsfehlers, um somit x- und y-Koordinaten (sdix, sdiy) zu erhalten, falls kein Einfluß des Verzerrungsabbildungsfehlers auf der rechten Bildaufnahmeeinrichtung empfangen wird. Die oben erwähnte Subroutine "distot ( )" ist in Fig. 36 aufgezeigt.
Anschließend wird beim Schritt S 15-4 (sdix, sdiy) zu Argumenten gemacht und eine Subroutine "invdist ( )" durchgeführt. Diese Routine dient der Korrektion des inversen Verzerrungsabbildungsfehlers, so daß x- und y-Koordinaten (cLx, cLy) am äußersten linken Ende der Führungslinie erhalten werden, falls der Einfluß des Verzerrungsabbildungsfehlers auf der linken Bildaufnahmeeinrichtung empfangen wird. Die oben erwähnte Subroutine "invdist ( )" ist in Fig. 37 dargestellt. Übrigens wird bei dem oben erwähnten Schritt S 15-4 berücksichtigt, daß der rechte bestimmte Punkt, der den Einfluß des Verzerrungsabbildungsfehlers unterliegt, und die Koordinate am äußersten linken Ende der Führungslinie einander gleich sind.
Anschließend wird beim Schritt S 15-5 der Ausdruck cLx · RSX/SIREX+(RSX/2+SXL) zu dL gemacht. D. h. die x- Koordinate auf der linken Bildaufnahmeeinrichtung wird in die x-Koordinate auf dem linken Bild umgewandelt.
Anschließend wird beim Schritt S 15-6 der Ausdruck dLx(RSX+SXL) geprüft. D. h. es wird geprüft, ob dLx das rechte Ende des linken Bildes erreicht hat oder nicht. Lautet die Antwort JA, so werden die nächsten Schritte S 15-7 bis S 15-9 durchgeführt, woraufhin dann der Prozeß zum Schritt S 15-10 fortschreitet. Lautet die Antwort jedoch NEIN, so schreitet der Prozeß direkt zum Schritt S 15-10 fort.
Bei dem oben erwähnten Schritt S 15-7 wird der Ausdruck -1.0 · cLy · RSY/SIZEY+(RSY/2+SYL) zu dLy gemacht.
Anschließend wird beim Schritt S 15-8 (dLx, dLy) in das linke Bild eingeschrieben.
Anschließend wird beim Schritt S 15-9 der Ausdruck sdix+SIZEX/RSX zu sdix gemacht. D. h. die x-Koordinate des Punktes auf der Bildaufnahmeeinrichtung wird um eine Minimaleinheit nach rechts bewegt.
Anschließend wird bei dem oben erwähnten Schritt S 15-10 der Ausdruck dLx(RSX+SXL) überprüft. D. h. es wird geprüft, ob dLx das rechte Ende des linken Bildes erreicht hat oder nicht. Lautet die Antwort JA, so kehrt der Prozeß zu dem oben erwähnten Schritt S 15-4 zurück, und der nächste Punkt auf der Führungslinie wird in das linke Bild eingeschrieben. Lautet die Antwort NEIN, so endet der Prozeß.
Demzufolge wird auf dem linken Bild eine Führungslinie wiedergegeben, die hinsichtlich des Verzerrungsabbildungsfehlers korrigiert ist. Ein Beispiel für das linke Bild, auf der diese Führungslinie wiedergegeben wird, ist in Fig. 31 dargestellt.
Die Subroutine "Rgcircle ( )" wird anhand von Fig. 34 nachfolgend erläutert.
Bei dieser Routine werden die dreidimensionalen Koordinaten (X 3, Y 3, Z 3) und der Radius rr des Kreises, der von der Hauptroutine ("pointm") geliefert wird, zu Argumenten gemacht.
Beim Beginn dieser Routine wird zuerst beim Schritt S 16-1 der Ausdruck Z 3/F zu einem Parameter t gemacht.
Anschließend wird beim Schritt S 16-2 der Ausdruck -1.0 · rr dem Ausdruck lx 3 und 0 dem Ausdruck lUy 3 zugewiesen. D. h. die x- und y-Koordinaten, die den Kreispunkt des Punktes am linken Ende des Indexkreises als Zentrum haben, werden bestimmt.
Anschließend wird beim Schritt S 16-3 der Ausdruck X 3+lx 3 dem Ausdruck gx 3 und Y 3+lUy 3 dem Ausdruck gUy 3 zugewiesen. D. h. die Koordinate des Punktes am oben erwähnten linken Ende wird in die Koordinate mit dem Endoskop als Zentrum umgewandelt.
Anschließend wird beim Schritt S 16-4 der Ausdruck (gx 3-D/2)/t dem Ausdruck diRx und der Ausdruck gUy 3/t dem Ausdruck iRUy zugewiesen. D. h. der Punkt des oben erwähnten linken Endes wird zu x- und y-Koordinaten umgewandelt, falls kein Einfluß des Verzerrungsabbildungsfehlers in der rechten Bildaufnahmeeinrichtung wahrgenommen wird.
Anschließend wird beim Schritt 16-5 der Ausdruck (diRx, diRUy) zu einem Argument gemacht und die Subroutine "invdist" ausgeführt, um die x- und y-Koordinaten (cRx, cRUy) zu erhalten, falls der Einfluß des Verzerrungsabbildungsfehlers auf der rechten Bildaufnahmeeinrichtung empfangen wird.
Anschließend wird beim Schritt S 16-6 der Ausdruck cRx · RSX/SIZEX+(RSX/2+SXR) berechnet und dieser zu einer x- Koordinate auf dem rechten Bild gemacht.
Anschließend wird beim Schritt S 16-7 der Ausdruck -1.0 · cRUy · RSY/SIZEY+(RSY/2+SYR) berechnet und dieser zu einer y- Koordinate dRUy auf dem rechten Bild gemacht.
Die oben erwähnten Schritte S 16-6 und S 16-7 dienen der Umwandlung der Position auf der Bildaufnahmeeinrichtung in eine Position auf dem Bild.
Als nächstes wird beim Schritt S 16-8 der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben.
Somit wird bei den Schritten S 16-2 bis S 16-8 der Punkt auf dem linken Ende des Indexkreises in das rechte Bild eingeschrieben, falls der Einfluß des Verzerrungsabbildungsfehlers empfangen wird.
Anschließend wird beim Schritt S 16-9 der Ausdruck lx 3+SIZEX/RSX dem Ausdruck lx 3 zugewiesen und die x-Koordinate des Punktes auf dem Indexkreis nach rechts bewegt.
Anschließend wird beim Schritt S 16-10 der Ausdruck (rr²-lx 3²)1/2 der y-Koordinate lUy 3 des Punktes auf der Oberseite des Indexkreises zugewiesen, der dem oben erwähnten Ausdruck lx 3 entspricht. Außerdem wird bei diesem Schritt S 16-10 der Ausdruck - (rr²-lx 3²)1/2 der y-Koordinate lDy 3 des Punkts auf der Unterseite des Indexkreises zugewiesen, der dem oben erwähnten Ausdruck lx 3 entspricht.
Anschließend werden beim Schritt S 16-11 der Ausdruck X 3+lx 3 dem Ausdruck gx 3, der Ausdruck Y 3+lUy 3 dem Ausdruck gUy 3 und der Ausdruck Y 3+lDy 3 dem Ausdruck gDy 3 zugewiesen. D. h. die Koordinaten der beiden Punkte auf dem oben erwähnten Indexkreis werden in Koordinaten mit dem Endoskop als Zentrum umgewandelt.
Anschließend werden beim S 16-12 der Ausdruck (gx 3-D/2)/t dem Ausdruck diRx, der Ausdruck gUy 3/t dem Ausdruck diRUy und der Ausdruck gDy 3/t dem Ausdruck diRDy zugewiesen. D. h. die beiden Punkte auf dem oben erwähnten Indexkreis werden die x- und y-Koordinaten umgewandelt, falls an der rechten Bildaufnahmeeinrichtung kein Einfluß des Verzerrungsabbildungsfehlers empfangen bzw. wahrgenommen wird.
Anschließend werden beim Schritt S 16-13 (diRx, diRUy) und (diRx, diRDy) zu Argumenten gemacht und die Subroutine "invdist" jeweils in bezug auf (diRx, diRUy) und (diRx, diRUy) ausgeführt, um die x- und y-Koordinaten (cRUx, cRUy) (cRDx, cRDy) zu erhalten, falls der Einfluß des Verzerrungsabbildungsfehlers auf der rechten Bildaufnahmeeinrichtung empfangen wird.
Anschließend wird beim Schritt S 16-14 der Ausdruck cRUx · RSX/SIZEX+(RSX/2+SXR) dem Ausdruck dRUx zugewiesen.
Anschließend wird beim Schritt S 16-15 der Ausdruck -1 · cRUy · RSY/SIZEY+(RSY/2+SYR) dem Ausdruck dRUy zugewiesen.
Anschließend wird beim Schritt S 16-16 der Ausdruck cRDx · RSX/SIZEX+(RSX/2+SXR) dem Ausdruck dRDx zugewiesen.
Anschließend wird beim Schritt S 16-17 der Ausdruck -1 · cRDy · RSY/SIZEY+(RSY/2+SYR) dem Ausdruck dRDy zugewiesen.
Bei den oben erwähnten S 16-14 bis S 16-17 wird die Position auf der Bildaufnahmeeinrichtung in eine Position auf dem Bild umgewandelt.
Anschließend werden beim Schritt S 16-18 der Punkt (dRUx, dRUy) und der Punkt (dRUx, dRDy) in das rechte Bild eingeschrieben.
Anschließend wird beim Schritt S 16-19 der Ausdruck lx 3+SIZEX/RSX dem Ausdruck lx 3 zugewiesen. D. h. die Koordinate auf dem Indexkreis wird nach rechts bewegt.
Anschließend wird beim Schritt S 16-20 geprüft, ob lx 3<rr ist. Lautet die Antwort JA, d. h. falls der Punkt auf dem Indexkreis das rechte Ende nicht erreicht hat, kehrt der Prozeß zu dem oben erwähnten Schritt S 16-10 zurück. Lautet andererseits die Antwort NEIN, d. h. hat der Punkt auf dem Indexkreis das rechte Ende erreicht, so schreitet der Prozeß zum nächsten Schritt S 16-21 fort. Somit werden, bis der Punkt auf dem Indexkreis das rechte Ende erreicht, die beiden Punkte auf dem Indexkreis in das Bild von der linken Seite her eingeschrieben, falls der Einfluß des Verzerrungsabbildungsfehlers empfangen wird.
Anschließend wird bei dem oben erwähnten Schritt S 16-21 der Ausdruck rr dem Ausdruck lx 3 und 0 dem Ausdruck lUy 3 zugewiesen. D. h. die x- und y-Koordinaten, die den Kreispunkt als Zentrum des Punkts auf dem rechten Ende des Indexkreises haben, werden bestimmt.
Anschließend werden die Schritte S 16-22 bis S 16-27 ausgeführt, woraufhin der Prozeß endet. Die oben erwähnten Schritte S 16-22 bis S 16-27 entsprechen den oben erwähnten Schritten S 16-3 bis S 16-8. D. h. die Koordinate des Punktes am rechten Ende wird in eine Koordinate mit dem Endoskop als Zentrum umgewandelt, wird in den Punkt auf der rechten Bildaufnahmeeinrichtung umgewandelt, wird in die Koordinate umgewandelt, falls der Einfluß des Verzerrungsabbildungsfehlers empfangen wird und wird ferner in die Position auf dem Bild umgewandelt, woraufhin der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben wird.
Somit wird bei den Schritten S 16-21 bis S 16-27 der Punkt am rechten Ende des Indexkreises in das rechte Bild geschrieben.
Der Indexkreis, bei dem der Verzerrungsabbildungsfehler korrigiert ist, wird somit angezeigt. Ein Beispiel des rechten Bildes, bei dem dieser Indexkreis angezeigt wird, ist in Fig. 32 dargestellt.
Die Subroutine "3dpoint ( )" wird nachfolgend anhand der Fig. 35 erläutert.
Bei dieser Routine werden die x- und y-Koordinaten (Rx, Ry) des auf dem rechten Bild bestimmten Punkts und die x- und y- Koordinaten (Lx, Ly) des auf dem linken Bild bestimmten Punkts, die von der Hauptroutine ("point 1" oder "pointm") geliefert werden, werden zu Argumenten gemacht.
Die Schritte S 17-1 bis S 17-4 entsprechen den Schritten S 9-1 bis S 9-4 in der in Fig. 24 gezeigten Subroutine "3point ( )". D. h. die Positionen auf den entsprechenden rechten und linken Bildern werden umgewandelt in Positionen auf den Bildaufnahmeeinrichtungen. Übrigens wurden die Koordinaten auf den Bildaufnahmeeinrichtungen, die hier erhalten werden, von dem Verzerrungsabbildungsfehler beeinflußt.
Als nächstes werden beim Schritt S 17-5 (cRx, cRy) und (cLx, cLy) zu Argumenten gemacht und die Subroutine "distot" in bezug auf (cRx, cRy) bzw. (cLx, cLy) ausgeführt, um die x- und y-Koordinaten (diRx, diRy) bzw. (diLx, diLy) zu erhalten, falls kein Einfluß des Verzerrungsabbildungsfehlers auf die Bildaufnahmeeinrichtung vorliegt.
Anschließend wird beim Schritt S 17-6 geprüft, ob diRxdiLx gilt. Lautet die Antwort NEIN, so ist der Objektpunkt unendlich weit und der Prozeß endet. Lautet andererseits die Antwort JA, so wird beim Schritt S 17-7 der Ausdruck D/(diLx-diRx) berechnet und dieser Ausdruck dem Parameter t zugewiesen.
Anschließend werden beim Schritt S 17-8 der Ausdruck t · diRx+D/2 zu X, der Ausdruck t · diRy zu Y und der Ausdruck t · F zu Z gemacht, um eine dreidimensionale Koordinate zu bestimmen, wobei diese dreidimensionale Koordinate (X, Y, Z) zu einem Rückkehrwert zur Hauptroutine gemacht wird und der Prozeß endet.
Somit wird die dreidimensionale Koordinate des Objektpunkts, bei der der Verzerrungsabbildungsfehler korrigiert ist, bestimmt.
Nachfolgend wird die oben erwähnte Subroutine "distot ( )" mit Bezug auf Fig. 36 erläutert.
Bei dieser Routine wird die Position (cx, cy), die von der Hauptroutine ("Lguide" oder "3dpoint") geliefert wird, zu einem Argument gemacht, falls der Einfluß des Verzerrungsabbildungsfehlers auf der Bildaufnahmeeinrichtung empfangen wird.
Zuerst wird beim Schritt S 18-1 der Ausdruck (cx²+cy²)1/2 dem Ausdruck vh zugewiesen. Anschließend wird beim Schritt S 18-2 der Ausdruck vh/F in rad übergeführt. Anschließend wird beim Schritt S 18-3 der Ausdruck F · tan (rad) zu rh gemacht. Anschließend wird beim Schritt S 18-4 der Ausdruck rh/vh dem Wert s zugewiesen. Daraufhin werden beim Schritt S 18-5 der Ausdruck cx · s dem Ausdruck dix und der Ausdruck cy · s dem Ausdruck diy zugeführt. Die Position (dix, diy) nach der Verzerrungsabbildungsfehlerkorrektion wird zu einem Rückkehrwert zur Hauptroutine gemacht, woraufhin der Prozeß endet. Die oben erwähnten entsprechenden Schritte führen das Umwandlungssystem aus, das anhand der Fig. 3 erläutert wurde.
Die oben erwähnte Subroutine "invdist ( )" wird nachfolgend anhand der Fig. 37 erläutert.
Bei dieser Routine wird die Position (dix, diy), die von der Hauptroutine ("Lguide oder "Rgcircle") geliefert wird, zu einem Argument gemacht, falls auf der Bildaufnahmeeinrichtung kein Einfluß des Verzerrungsabbildungsfehlers vorliegt bzw. empfangen wird.
Zuerst wird beim Schritt S 19-1 der Ausdruck (dix²+diy²)1/2 dem Ausdruck rh zugewiesen. Anschließend wird beim Schritt S 19-2 der Ausdruck tan-1 (rh/F) zu rad gemacht. Daraufhin wird beim Schritt S 19-3 der Ausdruck F · rad dem Ausdruck rh zugewiesen. Als nächstes wird beim Schritt S 19-4 der Ausdruck vh/rh dem Ausdruck s zugewiesen. Anschließend wird beim Schritt S 19-5 der Ausdruck dix · s dem Ausdruck cx und der Ausdruck diy · is dem Ausdruck cy zugewiesen. Die nach dem inversen Verzerrungsabbildungsfehler vorliegende Position (cx, cy) wird korrigiert und einem Rückkehrwert zur Hauptroutine zugewiesen, woraufhin der Prozeß endet. Die oben erwähnten entsprechenden Schritte führen das Umwandlungssystem, das anhand der Fig. 30 erläutert wurde, aus.
Werden somit die Subroutinen "Lguide", "Rgcircle" und "3point" dieser dritten Modifikation an die entsprechenden Stellen der Routinen in Fig. 23, 25 und 24 gesetzt, so kann der Verzerrungsabbildungsfehler korrigiert werden, falls die dreidimensionale Koordinate des Objektpunkts bestimmt wird. Die anderen Routinen entsprechen denen des zweiten Ausführungsbeispiels.
Die vierte Modifikation ist in Fig. 38 und 39 dargestellt.
Bei dem zweiten Ausführungsbeispiel und seinen drei Modifikationen wurde der Fall einer Vielzahl von Sätzen von entsprechenden R-, G- und B-Speichern erläutert. In einem solchen Fall wird der Cursor in RGB-Speicher eingeschrieben, die sich von den RGB-Speichern unterscheiden, in die das Bild eingeschrieben ist, wobei der Cursor später hinzugefügt wird.
Die vierte Modifikation stellt andererseits ein Beispiel für den Fall dar, daß nur ein Satz von RGB-Speichern vorliegt.
Bei diesem Fall wird der Cursor mit dem Bild des Cursorteils, das in dem RGB-Speicher gelöscht ist, in dem das Bild eingeschrieben ist, und wird der Cursor nur eingeschrieben, so geht das Bild des Cursorteils verloren.
Demzufolge wird bei dieser Modifikation vor dem Einschreiben des Cursors das Bild des Cursorteils abgelegt, so daß, falls der Cursor gelöscht wird, das abgelegte Bild zurückkehrt und das Bild des Cursorteils nicht verlorengeht.
Als erstes wird die Subroutine "point 1 ( )" anhand der Fig. 38 erläutert.
Beim Start dieser Routine wird zuerst beim Schritt S 20-1 geprüft, ob der Punkt 1 bestimmt ist oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 20-8 fort. Lautet die Antwort hingegen JA, so werden die Schritte S 20-2 bis S 20-7 ausgeführt, woraufhin dann der Prozeß zum Schritt S 20-8 fortschreitet.
Lautet beim oben erwähnten Schritt S 20-1 die Antwort JA, so wird zuerst beim Schritt S 20-2 das abgelegte bzw. abgesonderte Bild des Punkt1-Cursorteils in dem jeweiligen rechten und linken Bild zurückgeholt. Anschließend wird beim Schritt S 20-3 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-4 der Cursor des Punkts 2 in das jeweilige rechte und linke Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-5 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-5 fort. Beim Schritt S 20-5 wird geprüft, ob der Kreispunkt bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-6 der Kreispunkt in das jeweilige rechte und linke Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-7 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-7 fort. Beim Schritt S 20-7 wird der Punkt 1 in einen nicht-bestimmten Zustand zurückgebracht, woraufhin der Prozeß zu dem oben erwähnten Schritt S 20-8 fortschreitet.
Somit wird, falls der Punkt 1 bestimmt ist, beim Schritt S 20-2 der Punkt1-Cursor gelöscht, wenn das abgesonderte Bild des Punkt1-Cursorteils zurückgeholt ist. Liegt jedoch der Punkt2- Cursor und der Kreispunkt-Cursor in der Nähe des Punkt1- Cursors, so werden beim Löschen des Punkt1-Cursors die anderen Cursor wahrscheinlich ausgestrichen. Demzufolge werden, falls die anderen Punkte bestimmt sind, bei den Schritten S 20-4 und S 20-6 die Cursor der anderen Punkte neu wiedereingeschrieben.
Als nächstes wird beim oben erwähnten Schritt S 20-8 die Subroutine "Rmovecur" durchgeführt, um die x- und y- Koordinate (S  RX 1, S  Ry 1) des im rechten Bild bestimmten Punkts zu erhalten. Die Subroutine "Rmomvecur ( )" bei dieser Modifikation ist in Fig. 39 dargestellt.
Anschließend wird beim Schritt S 20-9 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-10 das abgesonderte Bild des Punkt 2-Cursorteils in das rechte Bild zurückgeholt, worauf der Prozeß zum Schritt S 20-11 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-11 fort. Beim Schritt S 20-11 wird geprüft, ob der Kreispunkt bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-12 das abgesonderte Bild des Kreispunkt-Cursorteils in das rechte Bild zurückgeholt, woraufhin der Prozeß zum Schritt S 20-13 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-13 fort. Beim Schritt S 20-13 wird das Bild des Punkt 1-Cursorteils beim rechten Bild angeordnet. Beim Schritt S 20-14 wird der Punkt 1-Cursor in das rechte Bild eingeschrieben.
Somit wird beim Schritt S 5-13 das Bild des Punkt 1-Cursorteils abgesondert, ehe der Punkt1-Cursor eingeschrieben wird. Befinden sich jedoch die anderen Punkte (wie z. B. der Punkt 2 und der Kreispunkt) in der Nähe des Punkt1-Cursors, so werden die Cursor der anderen Punkte wahrscheinlich mit eingeschlossen, falls das Bild des Punkt1-Cursorteils abgesondert wird. Demzufolge wird in dem Fall, daß die anderen Punkte bestimmt sind, bei den Schritten S 20-10 und S 20-12 die Bilder der Cursorteile der anderen Punkte zurückgeholt.
Anschließend wird beim Schritt S 20-15 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-16 der Punkt2-Cursor in das rechte Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-17 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-17 fort. Beim Schritt S 20-17 wird geprüft, ob der Kreispunkt bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-18 der Kreispunktcursor in das rechte Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-19 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-19 fort.
Wie oben beschrieben, werden die Cursor der anderen Punkte gelöscht, falls das Bild des Punkt 1-Cursorteils abgesondert ist. Demzufolge werden bei den oben erwähnten Schritten S 20-15 bis S 20-18 die Cursor in das rechte Bild neu wiedereingeschrieben.
Anschließend wird beim Schritt S 20-19 die Subroutine "Lguide ( )" durchgeführt und die Führungslinie auf der Basis der Koordinate (S  Rx 1, S  Ry 1) des bestimmten Punkts in das rechte Bild eingeschrieben.
Anschließend wird beim Schritt S 20-20 die Subroutine "Lmovecur ( )" durchgeführt, um die x- und y-Koordinate (S  Lx 1, S  Ly 1) des bestimmten Punkts im linken Bild zu erhalten.
Anschließend wird beim Schritt S 20-21 die Führungslinie gelöscht und anschließend beim Schritt S 20-22 die bestimmten Punkte (S  Rx 1, S  Ry 1, S  Lx 1, S  Ly 1) in den jeweiligen rechten und linken Bildern zu Argumenten gemacht und die Subroutine "3dpoint ( )" ausgeführt, um die dreidimensionale Koordinate (S  x 1, S  y 1, S  z 1) des Punktes 1 zu erhalten.
Als nächstes wird beim Schritt S 20-23 geprüft, ob der Punkt 2 bestimmt ist oder lautet die Antwort JA, so wird beim Schritt S 20-24 das abgesonderte Bild des Punkt2-Cursorteils in das linke Bild zurückgeholt, woraufhin der Prozeß zum Schritt S 20-25 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-25 fort. Beim Schritt S 20-25 wird geprüft, ob der Kreispunkt bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-26 das abgesonderte Bild des Kreispunkt-Cursorteils in das linke Bild zurückgeholt, woraufhin der Prozeß zum Schritt S 20-27 fortschreitet. Lautet die Antwort hingegen NEIN, so schreitet der Prozeß direkt zum Schritt S 20-27. Beim Schritt S 20-27 wird das Bild des Punkt1-Cursorteils im linken Bild abgesondert. Anschließend wird beim Schritt S 20-28 der Punkt 1-Cursorteil in das linke Bild eingeschrieben.
Bei den oben erwähnten Schritten S 20-23 bis S 20-26 werden aus den gleichen Gründen wie bei den Schritten S 20-9 bis S 20-12 für das rechte Bild die Bilder der Cursorteile der anderen Punkte mit Ausnahme des Punktes 1 in das linke Bild zurückgeholt und die Cursor der anderen Punkte gelöscht, ehe der Punkt1-Cursor in das linke Bild eingeschrieben wird.
Anschließend wird beim Schritt S 20-29 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort JA, so wird beim Schritt S 20-30 der Punkt2-Cursor in das linke Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-31 fortschreitet. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 20-31 fort. Beim Schritt S 20-31 wird geprüft, ob der Kreispunkt bestimmt ist oder nicht. Lautet die Antwort NEIN, so wird beim Schritt S 20-32 der Kreispunkt in das linke Bild eingeschrieben, woraufhin der Prozeß zum Schritt S 20-33 fortschreitet. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 20-33 fort.
Bei den oben erwähnten Schritten S 20-29 bis S 20-32 werden aus den gleichen Gründen wie bei den Schritten S 20-15 bis S 20-18 für das rechte Bild die Cursor der anderen Punkte mit Ausnahme des Punktes 1 in das linke Bild neu wiedereingeschrieben.
Nachfolgend wird beim Schritt S 20-33 der Abstand von der Endoskopspitze zum Punkt 1 berechnet.
Anschließend wird beim Schritt S 20-34 geprüft, ob der Punkt 2 bestimmt ist oder nicht. Lautet die Antwort NEIN, so endet der Prozeß. Lautet die Antwort jedoch JA, so wird beim Schritt S 20-35 der Abstand zwischen den Punkten 1 und 2 berechnet, woraufhin der Prozeß endet.
Bei dieser Modifikation ist die Subroutine "point 2 ( )" nicht dargestellt, entspricht jedoch im wesentlichen der Subroutine "point 1 ( )", wobei in deren Beschreibung (einschließlich deren Koordinaten) die Punkte 1 und 2 zu vertauschen sind.
Ebenso wird bei der Subroutine "pointm ( )" in gleicher Weise wie bei der Subroutine "point 1 ( )" ehe der Cursor eingeschrieben wird, das Bild des Cursorteils abgesondert, und, wenn der Cursor gelöscht wird, das abgesonderte Bild zurückgeholt.
Anschließend wird anhand der Fig. 39 die Subroutine "Rmovecur ( )" erläutert.
Beim Start dieser Routine wird beim Schritt S 21-1 zuerst das Objektbild als rechtes Bild spezifiziert.
Anschließend wird beim Schritt S 21-2 geprüft, ob ein neuer, sich bewegender Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-4 fort. Lautet die Antwort jedoch JA, so wird der Schritt S 21-3 ausgeführt, woraufhin dann der Prozeß zum Schritt S 21-4 fortschreitet. Bei dem oben erwähnten Schritt S 21-3 wird die Position des neuen, sich bewegenden Cursors anstelle der Position des alten , sich bewegenden Cursors gesetzt. Anschließend wird bei dem oben erwähnten Schritt S 21-4 die Position des neuen, sich bewegenden Cursors anhand der Positionsinformation der Maus 145 erhalten.
Nachfolgend wird beim Schritt S 21-5 geprüft, ob der bewegliche Cursor bewegt wurde oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-10 fort. Lautet die Antwort JA, so schreitet der Prozeß zum Schritt S 21-6 fort, bei dem geprüft wird, ob der alte, bewegliche Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-8 fort. Lautet die Antwort jedoch JA, so wird der Schritt S 21-7 ausgeführt, woraufhin dann der Prozeß zum Schritt S 21-8 fortschreitet. Bei dem oben erwähnten Schritt S 21-7 wird das abgesonderte Bild des Teils mit dem alten, beweglichen Cursor zurückgeholt.
Anschließend wird bei dem oben erwähnten Schritt S 21-8 das Bild des Teils des neuen, sich bewegenden Cursors abgesondert, woraufhin anschließend beim Schritt S 21-9 der neue, sich bewegende Cursor eingeschrieben wird.
Anschließend wird bei den Schritten S 21-2 bis S 21-9 der sich bewegende Cursor gelöscht und für die Bewegung eingeschrieben. Anschließend wird im Falle des Löschens des Cursors das abgesonderte Bild zurückgeholt und im Falle des Einschreibens des Cursors das Bild abgesondert.
Anschließend wird beim Schritt S 21-10 geprüft, ob die Taste 1 der Maus 145 betätigt wird oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-18 fort. Lautet die Antwort jedoch JA, so werden die nächsten Schritte S 21-11 bis S 21-17 ausgeführt, woraufhin dann der Prozeß zum Schritt S 21-18 fortschreitet. Lautet beim oben erwähnten Schritt S 21-10 die Antwort JA, so wird zuerst beim Schritt S 21-11 geprüft, ob der neue, bestimmte Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-13 fort. Lautet die Antwort JA, so wird der Schritt S 21-12 ausgeführt, woraufhin dann der Prozeß zum Schritt S 21-13 fortschreitet. Bei dem oben erwähnten Schritt S 21-12 wird die Position des neuen, bestimmten Cursors an die Stelle der Position des alten, bestimmten Cursors gesetzt. Anschließend wird bei dem oben erwähnten Schritt S 21-13 die Position des neuen, sich bewegenden Cursors an die Stelle des neuen, bestimmten Cursors gesetzt.
Anschließend wird beim Schritt S 21-14 geprüft, ob der alte, bestimmte Cursor vorliegt oder nicht. Lautet die Antwort NEIN, so schreitet der Prozeß direkt zum Schritt S 21-16 fort. Lautet die Antwort hingegen JA, so wird der Schritt S 21-15 ausgeführt, woraufhin der Prozeß zum Schritt S 21-16 fortschreitet. Bei dem oben erwähnten Schritt S 21-15 wird das abgesonderte Bild des Teils des alten, bestimmten Cursors zurückgeholt.
Beim oben erwähnten Schritt S 21-16 wird als nächstes das Bild des neuen bestimmten Cursorteils abgesondert und dann beim Schritt S 21-17 der neue, bestimmte Cursor eingeschrieben.
Somit wird bei den Schritten S 21-10 bis S 21-17 die Position des sich bewegenden Cursors zu der des bestimmten Cursors gemacht, falls die Taste 1 betätigt wird. In gleicher Weise wie oben beschrieben, wird im Falle des Löschens des Cursors das abgesonderte Bild zurückgeholt und im Falle des Einschreibens des Cursors das Bild abgesondert.
Anschließend wird beim Schritt S 21-18 geprüft, ob der neue, bestimmte Cursor vorliegt oder nicht und die Taste 2 der Maus 145 betätigt wird oder nicht. Lautet die Antwort NEIN, so kehrt der Prozeß zum oben erwähnten Schritt S 21-2 zurück. Lautet die Antwort hingegen JA, so schreitet der Prozeß zum Schritt S 21-19 fort. Bei dem oben erwähnten Schritt S 21-18 kehrt der Prozeß zum Schritt S 21-2 zurück, falls die Antwort NEIN lautet, so daß die Punktbestimmung wiederholt werden kann. Bei dem oben erwähnten Schritt S 21-19 wird das abgesonderte Bild des Teils des neuen, sich bewegenden Cursors zurückgeholt und der neue, sich bewegende Cursor gelöscht, woraufhin dann beim Schritt S 21-20 das abgesonderte Bild des Teils des neuen, bestimmten Cursors zurückgeholt und der neue, bestimmte Cursor gelöscht wird. Anschließend wird beim Schritt S 21-21 die Position des neuen, bestimmten Cursors zur bestimmten Position des Cursors und zu einem Rückkehrwert zur Hauptroutine gemacht, um den Prozeß zu beenden.
Die Subroutine "Lmovecur ( )" bei dieser Modifikation ist übrigens nicht dargestellt. Sie entspricht jedoch im wesentlichen der oben erwähnten Subroutine "Rmovecur ( )" und verarbeitet das linke Bild anstelle des rechten Bildes.
Bei dieser Modifikation geht selbst in dem Fall, daß nur ein einziger Satz von entsprechenden RGB-Speichern vorhanden ist, das Bild des Cursorteils nicht verloren, und der Cursor kann angezeigt werden.
Die fünfte Modifikation ist in Fig. 40 dargestellt.
Bei dieser Modifikation wird im linken Bild die Führungslinie nicht angezeigt. Jedoch wird der Cursor nur längs der Position bewegt, die der Führungslinie entspricht.
Die Subroutine "point 1 ( )" dieser Modifikation wird anhand der Fig. 40 erläutert.
Bei der Subroutine "point 1 ( )" dieser Modifikation sind der Schritt S 5-6, bei dem die Führungslinie gezogen wird, und der Schritt S 5-8, bei dem die Führungslinie gelöscht wird, aus der in Fig. 20 gezeigten Subroutine "point 1 ( )" entfernt. Demzufolge wird im linken Bild die Führungslinie nicht angezeigt.
Die Subroutine "Lmovecur ( )" dieser Modifikation entspricht der in Fig. 28 mit Bezug auf die Modifikation verdeutlichten Subroutine. Ebenso entspricht die Subroutine "Lgetcur ( )" beim Schritt S 13-5, die bei dieser Subroutine "Lmovecur ( )" vorgesehen ist, der in Fig. 29 mit Bezug auf die zweite Modifikation dargestellten Subroutine.
Demzufolge wird bei dieser Modifikation die Führungslinie im linken Bild nicht angezeigt, jedoch bewegt sich der bewegliche Cursor im linken Bild nur in dem Teil, der der Führungslinie entspricht. Demzufolge kann in gleicher Weise wie bei der zweiten Modifikation der Punkt ohne Fehler bestimmt werden.
Übrigens entsprechen die Subroutine "point 2 ( )" und "pointm ( )" der Subroutine "point 1 ( )".
Die sechste Modifikation ist in Fig. 41 dargestellt.
Bei dieser Modifikation werden Führungslinien oberhalb und unterhalb der Position gezogen, in der der Meßobjektpunkt im linken Bild liegen sollte.
Beim zweiten Ausführungsbeispiel, das in Fig. 23 dargestellt ist, wird beim Schritt S 8-1 der Subroutine "Lguide ( )" der Punkt (dLx, dLy) in das linke Bild eingeschrieben. Bei dieser Modifikation werden jedoch, wie aus Fig. 41 ersichtlich, beim Schritt S 8-1 der Subroutine "Lguide ( )" die Punkte (dLx, dLy+1) und (dLx, dLy-1) in das linke Bild eingeschrieben. Der übrige Aufbau entspricht dem des zweiten Ausführungsbeispiels.
Bei dieser Modifikation wird verhindert, daß die Führungslinie das wichtige Bild überdeckt.
Das zweite Ausführungsbeispiel der Erfindung wird in den Fig. 42 bis 49 verdeutlicht.
Bei diesem Ausführungsbeispiel stellt der Monitor eine einzige Einheit dar, bei dem das rechte und linke Bild selektiv angezeigt werden.
Wie in den Fig. 42 und 43 verdeutlicht, ist die Meßendoskopvorrichtung dieses Ausführungsbeispiels mit einer Bildschalteinrichtung 201 ausgestattet, an die Bildsignale, z. B. RGB-Signale, die von dem Teilbildspeicher 112R für das rechte Bild und dem Teilbildspeicher 112L für das linke Bild ausgegeben werden, angelegt werden und die entweder das rechte oder das linke Bildsignal auswählt, so daß das Ausgangsmaterial dieser Bildschalteinrichtung 201 in einen einzigen Monitor 130 eingegeben werden kann. Die oben erwähnte Bildschalteinrichtung 201 wird vom Host-Computer 120 gesteuert.
Wie aus Fig. 44 ersichtlich, ist der oben erwähnte Host- Computer zusätzlich zum Aufbau des in Fig. 9 gezeigten zweiten Ausführungsbeispiels mit einer Bildschalteinrichtungs- Schnittstelle 211 ausgestattet. Diese Bildschalteinrichtungs- Schnittstelle 211 steht mit einer CPU über einen Bus in Verbindung und ist an die oben erwähnte Bildschalteinrichtung 201 angekoppelt. Die vorstehend erwähnte CPU 121 steuert die Bildschalteinrichtung 201 über die Schnittstelle 211.
Die Wirkungsweise dieses Ausführungsbeispiels wird nachfolgend erläutert.
Bei diesem Ausführungsbeispiel wird beim Schreiben eines Cursors, dem Zeichnen einer Führungslinie oder dem Schreiben eines Indexkreises dieser bzw. diese nicht direkt in das Bild eingeschrieben, sondern entweder in den rechten oder linken Teilbildspeicher eingeschrieben, so daß das Bild im rechten oder linken Teilbildspeicher auf dem Monitor angezeigt werden kann, wenn dies erforderlich ist.
Zuerst wird nun die Subroutine "point 1 ( )" dieses Ausführungsbeispiels anhand der Fig. 45 erläutert, während diese mit der Subroutine "point 1 ( )" des in Fig. 20 gezeigten zweiten Ausführungsbeispiels verglichen wird.
Beim Schritt S 5-2 im zweiten Ausführungsbeispiel wird der Punkt1-Cursor in dem jeweiligen rechten und linken Bild gelöscht, wohingegen bei diesem Ausführungsbeispiel der Punkt 1 im rechten und linken Teilbildspeicher gelöscht wird.
Ferner wird zwischen die Schritte S 5-3 und S 5-4 ein Schritt S 5-31 zur Anzeige des Bildes des rechten Teilbildspeichers auf dem Monitor eingefügt.
Während beim Schritt S 5-5 beim zweiten Ausführungsbeispiel der Punkt1-Cursor in das rechte Bild geschrieben wird, wird bei diesem Ausführungsbeispiel der Punkt1-Cursor in den rechten Teilbildspeicher geschrieben.
Ferner wird auch zwischen den Schritt S 5-5 und S 5-6 ein Schritt S 5-51 zur Anzeige des Bildes des linken Teilbildspeichers auf dem Monitor eingefügt.
Während beim Schritt S 5-9 des zweiten Ausführungsbeispiels der Punkt1-Cursor in das linke Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Punkt1-Cursor in den linken Teilbildspeicher eingeschrieben.
Der übrige Ablauf entspricht dem der Subroutine "point 1 ( )" des zweiten Ausführungsbeispiels. In gleicher Weise wie bei der Subroutine "point 1 ( )", die in Fig. 45 dargestellt ist, schreibt die Subroutine "point 2 ( )" den Punkt2-Cursor in den rechten und linken Teilbildspeicher ein.
Die Subroutine "pointm ( )" dieses Ausführungsbeispiels wird nachfolgend anhand der Fig. 46 erläutert, wobei diese mit der Subroutine "pointm ( )" des zweiten Ausführungsbeispiels verglichen wird, die in Fig. 21 dargestellt ist.
Während beim Schritt S 6-2 beim zweiten Ausführungsbeispiel der Kreispunktcursor in dem jeweiligen rechten und linken Bild gelöscht wird, wird bei diesem Ausführungsbeispiel der Kreispunktcursor im rechten und linken Teilbildspeicher gelöscht.
Zwischen die Schritte S 6-3 und S 6-4 ist ein Schritt S 6-31 eingefügt, der das Bild des rechten Teilbildspeichers am Monitor anzeigt.
Während beim Schritt S 6-5 beim zweiten Ausführungsbeispiel der Kreispunktcursor in das rechte Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Kreispunktcursor in den rechten Teilbildspeicher eingeschrieben.
Ferner ist zwischen die Schritte S 6-5 und S 6-6 ein Schritt S 6-51 eingefügt, der das Bild des linken Teilbildspeichers auf dem Monitor anzeigt.
Während beim Schritt S 6-9 des zweiten Ausführungsbeispiels der Kreispunktcursor in das linke Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Kreispunktcursor in den linken Teilbildspeicher eingeschrieben.
Ferner ist zwischen die Schritte S 6-11 und S 6-12 ein Schritt S 6-111 eingefügt, der das Bild des rechten Teilbildspeichers auf dem Monitor anzeigt.
Der übrige Aufbau bzw. Ablauf entspricht dem der Subroutine "pointm ( )" des zweiten Ausführungsbeispiels.
Nachfolgend wird anhand der Fig. 47 die Subroutine "Rmovecur ( )" dieses Ausführungsbeispiels erläutert, wobei diese mit der Subroutine "Rmovecur ( )" des zweiten Ausführungsbeispiels verglichen wird, die in Fig. 22 dargestellt ist.
Während beim Schritt S 7-1 des zweiten Ausführungsbeispiels das Objektbild als rechtes Bild bestimmt wird, wird bei dem Ausführungsbeispiel der Objektteilbildspeicher als rechter Teilbildspeicher bestimmt.
Der übrige Ablauf entspricht dem der Subroutine "Rmovecur ( )" des zweiten Ausführungsbeispiels. Übrigens bestimmt die Subroutine "Lmovecur" in gleicher Weise wie bei der Subroutine "Rmovecur ( )" in Fig. 47 beim ersten Schritt den Objektteilbildspeicher als linken Teilbildspeicher.
Die Subroutine "Lguide ( )" dieses Ausführungsbeispiels wird nachfolgend anhand der Fig. 48 beschrieben, wobei diese mit der Subroutine "Lguide" des zweiten Ausführungsbeispiels verglichen wird, die in Fig. 23 dargestellt ist.
Während beim Schritt S 8-1 beim zweiten Ausführungsbeispiel der Punkt (dLx, dLy) in das linke Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Punkt (dLx, dLy) in den linken Teilbildspeicher eingeschrieben.
Der übrige Ablauf entspricht dem der Subroutine "Lguide ( )" des zweiten Ausführungsbeispiels.
Nachfolgend wird anhand der Fig. 49 die Subroutine "Rgcircle ( )" dieses Ausführungsbeispiels erläutert, wobei diese mit der Subroutine "Rgcircle ( )" des zweiten Ausführungsbeispiels verglichen wird, die in Fig. 25 dargestellt ist.
Während beim Schritt S 10-7 des zweiten Ausführungsbeispiels der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Punkt (dRx, dRUy) in den rechten Teilbildspeicher eingeschrieben.
Während beim Schritt S 10-15 des zweiten Ausführungsbeispiels die Punkte (dRx, dRUy) und (dRx, dRDy) in das rechte Bild eingeschrieben werden, werden bei diesem Ausführungsbeispiel die Punkte (dRx, dRUy) und (dRx, dRDy) in den rechten Teilbildspeicher eingeschrieben.
Während beim Schritt S 10-23 des zweiten Ausführungsbeispiels der Punkt (dRx, dRUy) in das rechte Bild eingeschrieben wird, wird bei diesem Ausführungsbeispiel der Punkt (dRx, dRUy) in den rechten Teilbildspeicher eingeschrieben.
Der übrige Ablauf der Subroutine entspricht dem der Subroutine "Rgcircle ( )" des zweiten Ausführungsbeispiels.
Somit können bei diesem Ausführungsbeispiel die jeweiligen rechten und linken Bilder auf einem Monitor angezeigt und der Objektpunkt bestimmt werden.
Die übrigen Ausgestaltungen, Funktionen und Wirkungen entsprechen denen des zweiten Ausführungsbeispiels.
Das vierte Ausführungsbeispiel der Erfindung ist in Fig. 50 gezeigt.
Wird bei diesem Ausführungsbeispiel der sich bewegende Cursor auf einem Bild dargestellt, so wird die Führungslinie, die dem sich bewegenden Cursor entspricht, auf dem anderen Bild angezeigt, und, falls der oben erwähnte bewegliche Cursor bewegt wird, wird die oben erwähnte Führungslinie ebenso bewegt.
Die Subroutine "Rmovecur ( )" dieses Ausführungsbeispiels wird nachfolgend anhand der Fig. 50 erläutert, während diese mit der Subroutine "Rmovecur ( )" des zweiten Ausführungsbeispiels verglichen wird, die in Fig. 22 dargestellt ist.
Bei diesem Ausführungsbeispiel werden zwischen die Schritte S 7-3 und S 7-4 die nachfolgend beschriebenen drei Schritte eingefügt.
D. h. beim Schritt S 7-3 wird der alte, sich bewegende Cursor gelöscht und anschließend beim Schritt S 7-31 wird das Objektbild als linkes Bild bestimmt. Anschließend wird beim Schritt S 7-32 die in das linke Bild eingeschriebene Führungslinie gelöscht. Daraufhin wird beim Schritt S 7-33 das Objektbild als rechtes Bild bestimmt und der Prozeß schreitet zum Schritt S 7-4.
Beim Schritt S 7-5 wird die Position des neuen, sich bewegenden Cursors als (mx, my) erhalten.
Zwischen die Schritte S 7-6 und S 7-7 werden die nachfolgenden drei Schritte eingefügt.
D. h. beim Schritt S 7-6 wird der neue, sich bewegende Cursor eingeschrieben, anschließend beim Schritt S 7-6 wird das Objektbild als linken Bild bestimmt. Anschließend wird beim Schritt S 7-62 der oben erwähnte Ausdruck (mx, my) zu einem Argument gemacht und die Subroutine "Lguide ( )" durchgeführt. D. h. die Führungslinie, die die Position darstellt, in der der durch den oben erwähnten, sich bewegenden Cursor spezifizierte Punkt im Raum auf der Basis der Position des sich im rechten Bild bewegenden Cursors liegen sollte, wird im linken Bild angezeigt. Anschließend wird beim Schritt S 7-63 das Objektbild als rechtes Bild bestimmt und der Prozeß schreitet zum Schritt S 7-7 fort.
Der Prozeß beim Schritt S 7-7 und nachfolgend entspricht dem des zweiten Ausführungsbeispiels.
Somit werden bei der Subroutine "Rmovecur" dieses Ausführungsbeispiels der Schritt S 7-62, bei dem in das linke Bild die Führungslinie eingeschrieben wird, die dem sich bewegenden Cursor des rechten Bildes entspricht, und der Schritt S 7-32, bei dem die Führungslinie gelöscht wird, die dem alten, sich bewegenden Cursor entspricht, falls der bewegliche Cursor sich bewegt, hinzugefügt. Ehe die oben erwähnte Führungslinie eingeschrieben oder gelöscht wird, wird das Objektbild als linkes Bild bestimmt und nach dem Einschreiben oder Löschen der Führungslinie wird das Objektbild als rechtes Bild bestimmt.
In gleicher Weise wie bei der in Fig. 50 gezeigten Subroutine "Rmovecur ( )" wird übrigens auch bei der Subroutine "Lmovecur ( )" im rechten Bild die Führungslinie angezeigt, die dem sich bewegenden Cursor auf dem linken Bild entspricht.
Wird demzufolge der Objektpunkt im rechten Bild bestimmt, so kann für die entsprechende Position auf dem linken Bild auf die Führungslinie Bezug genommen werden, und wird der Objektpunkt im linken Bild bestimmt, so kann die Position exakt bestimmt werden, indem die Führungslinie auf dem rechten Bild dem bestimmten Punkt auf dem linken Bild überlagert wird.
Wird somit bei diesem Ausführungsbeispiel der Objektpunkt bestimmt, so wird die Führungslinie auf dem Bild der Bestimmungsseite nicht angezeigt, so daß ein wichtiges Bild dadurch nicht überdeckt wird. Jedoch kann in gleicher Weise wie beim zweiten Ausführungsbeispiel die Position des Objektpunktes exakt bestimmt werden.
Die übrigen Ausgestaltungen, Funktionen und Wirkungen entsprechen denen des zweiten Ausführungsbeispiels.
Übrigens ist die vorliegende Erfindung nicht auf die vorstehend erwähnten Ausführungsbeispiele beschränkt, beispielsweise sind die Objektpunkte nicht auf zwei beschränkt, sondern es können drei oder mehr vorliegen. Außerdem können die Cursor, die die jeweiligen Objektpunkte zeigen, durch Farbe oder Form unterschieden werden.
Ebenso können anstelle der Anzeige der Führungslinie nur der Bereich des Bildes nahe dem Teil, der der Führungslinie entspricht, angezeigt werden oder die Farbe des Teils, der der Führungslinie entspricht, kann dünn gemacht werden, so daß der mögliche Bereich für das Vorliegen des Objektpunktes angezeigt werden kann.
Als Objektpunktbestimmungsmittel kann anstelle eines Cursors beispielsweise auch ein Lichtgriffel Verwendung finden.
Ferner kann der Objektpunkt zuerst im rechten oder im linken Bild bestimmt werden.
Ferner kann anstelle der Anordnung der Bildaufnahmeeinrichtung im Kopfteil des Einführteils auch eine Vielzahl von Bildübertragungseinrichtungen, wie z. B. von Faserbündeln, im Einführteil vorgesehen werden, wobei dann die Bildaufnahmeeinrichtungen an den rückseitigen Enden dieser Bildübertragungseinrichtungen angeordnet sind. Ebenso kann nur eine Bildaufnahmeeinrichtung im Kopf des Einführteils vorgesehen werden, wobei dann eine Vielzahl von Bildern mit Parallaxen durch Bewegen der Bildaufnahmeeinrichtung abgebildet wird.
Die jeweiligen rechten und linken Bilder können rechts und links auf einem Monitor angezeigt werden.
Der Index als Kriterium der Größe ist nicht auf einen Kreis beschränkt, sondern kann als Quadrat oder ein Liniensegment mit einer Länge die dem Abstand entspricht, dargestellt werden.

Claims (27)

1. Vorrichtung zum dreidimensionalen Messen, mit
  • - einer Bildaufnahmeeinrichtung (104R, 104L) zur Abbildung einer Vielzahl von Abbildern, die Parallaxen aufweisen,
  • - eine Anzeigeeinrichtung (130) zum Anzeigen der von der Bildaufnahmeeinrichtung erhaltenen Vielzahl von Abbildern auf einer Vielzahl von Bildern,
  • - einer ersten Bestimmungseinrichtung (151L) zum Bestimmen eines ersten Objektpunktes, der einem Meßobjektpunkt im Raum auf einem von der Anzeigeeinrichtung wiedergegebenen ersten Bild unter der Vielzahl von Bildern entspricht,
  • - einer zweiten Bestimmungseinrichtung (151R) zum Bestimmen eines zweiten Objektpunktes, der einem Meßobjektpunkt im Raum auf dem von der Anzeigeeinrichtung wiedergegebenen zweiten Bild unter der Vielzahl von Bildern entspricht, und
  • - einer Operationseinrichtung (154) zur Ausführung einer Meßoperation in bezug auf die dreidimensionale Position des Meßobjektpunktes, der durch den ersten Objektpunkt, der von der ersten Bestimmungseinrichtung bestimmt ist, und dem zweiten Objektpunkt, der durch die zweite Bestimmungseinrichtung bestimmt ist, festgelegt ist,
dadurch gekennzeichnet,
  • - daß eine Objektpunktbestimmungs-Hilfseinrichtung (150, 153) vorgesehen ist, die die Positionsbedingungen für den möglichen Bereich für das Vorliegen des zweiten Objektpunktes auf dem zweiten Bild festlegt.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß eine Führungslinien-Anzeigeeinrichtung (153) zur Anzeige einer Führungslinie vorgesehen ist, die den Positionsbedingungen entspricht.
3. Vorrichtung nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet,
  • - daß die erste Bestimmungseinrichtung eine erste Cursoranzeigeeinrichtung (151L) zum Anzeigen eines ersten Cursors für die Bestimmung des ersten Objektpunktes auf dem ersten Bild aufweist, auf dem das erste Abbild wiedergegeben wird, und
  • - daß die zweite Bestimmungseinrichtung eine zweite Cursoranzeigeeinrichtung (151R) zum Anzeigen eines zweiten Cursors für die Bestimmung des zweiten Objektpunktes auf dem zweiten Bild aufweist, auf dem das zweite Abbild wiedergegeben wird.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet,
  • - daß die erste Bestimmungseinrichtung (151L) und die zweite Bestimmungseinrichtung (151R) einer gemeinsamen Cursorbewegungseinrichtung (145) zum Bewegen des ersten und zweiten Cursors auf den jeweiligen Bildern und zum Bestimmen der jeweiligen Objektpunkte unter Verwendung der jeweiligen Cursor verbunden sind und
  • - daß die Objektpunktbestimmungs-Hilfseinrichtung eine Schalteinrichtung (150) zum betrieblichen Verbinden der Cursorbewegungseinrichtung (145) mit der ersten Cursoranzeigeeinrichtung (151L) vor der Bestimmung des ersten Objektpunktes, zum Lösen der Verbindung zwischen Cursorbewegungseinrichtung (145) und der ersten Cursoranzeigeeinrichtung (151L) nach der Bestimmung des ersten Objektpunktes und zum betrieblichen Verbinden der Cursorbewegungseinrichtung (145) mit der zweiten Cursoranzeigeeinrichtung (151R) aufweist.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet,
  • - daß die Operationseinrichtung eine Objektpunktpositions-Operationseinrichtung (154) zum Ermitteln der dreidimensionalen Position des durch den ersten und zweiten Objektpunkt spezifizierten Meßobjektpunkts aufweist und
  • - daß die Einrichtung zum dreidimensionalen Messen ferner eine Indexanzeigeeinrichtung (155) aufweist, die einen Index mit einer Größe anzeigt, die der von der Objektpunktpositions-Operationseinrichtung bestimmten Position des Meßobjektpunkts nahe dem ersten und/oder zweiten Objektpunkt entspricht.
6. Vorrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Objektpunktbestimmungs-Hilfseinrichtung (150, 153) eine Warneinrichtung aufweist, die prüft, ob der von der zweiten Bestimmungseinrichtung (151R) bestimmte zweite Objektpunkt auf der Führungslinie liegt oder nicht, und eine Warnung ausgibt, falls der zweite Objektpunkt nicht auf der Führungslinie liegt.
7. Vorrichtung nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, daß die Objektpunktbestimmungs-Hilfseinrichtung (150, 153) eine Sperreinrichtung aufweist, die eine Bestimmung des zweiten Objektpunktes durch die zweite Bestimmungseinrichtung (151R) unmöglich macht, falls der zweite Objektpunkt nicht auf der Führungslinie liegt.
8. Vorrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die Sperreinrichtung eine Einrichtung aufweist, mit deren Hilfe der zweite Cursor nur auf der Führungslinie bewegbar ist.
9. Vorrichtung nach einem der Ansprüche 2 bis 8, dadurch gekennzeichnet, daß die Führungslinienanzeigeeinrichtung (153) einen Verzerrungsabbildungsfehler des optischen Systems (21, 22) korrigiert, daß ein Abbild auf der Bildaufnahmeeinrichtung (104R, 104L) erzeugt, falls die Positionsbedingung für die Möglichkeit des Vorliegens des zweiten Objektpunktes bestimmt wird.
10. Vorrichtung nach einem der Ansprüche 2 bis 9, dadurch gekennzeichnet, daß die Führungslinie aus einer Linie besteht, die der Positionsbedingung genügt.
11. Vorrichtung nach einem der Ansprüche 2 bis 9, dadurch gekennzeichnet, daß die Führungslinie aus zwei Linien besteht, die den Bereich angeben, der der Positionsbedingung genügt.
12. Vorrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß die Objektpunktbestimmungs-Hilfseinrichtung (150) eine Sperreinrichtung aufweist, die eine Bestimmung des zweiten Objektpunktes durch die zweite Bestimmungseinrichtung (151R) außerhalb des Bereichs unmöglich macht, der der durch die Operationseinrichtung (154) bestimmten Positionsbedingung genügt.
13. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß die Sperreinrichtung eine Einrichtung aufweist, mit deren Hilfe der zweite Cursor nur in dem Bereich bewegbar ist, der der Positionsbedingung genügt.
14. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Objektpunktbestimmungs-Hilfseinrichtung eine Führungslinien-Anzeigeeinrichtung (153) aufweist, die eine Führungslinie, die der Positionsbedingung des dem zweiten Cursor im ersten Bild entsprechenden Punktes im Raum auf dem ersten Bild genügt, auf der Basis der Positionsinformation des zweiten Cursors auf dem zweiten Bild wiedergibt.
15. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die zweite Cursoranzeigeeinrichtung (151R) den zweiten Cursor auf dem zweiten Bild nur dann anzeigt, wenn diese mittels der Schalteinrichtung (150) mit der Cursorbewegungseinrichtung (145) betrieblich verbunden ist.
16. Vorrichtung nach einem der Ansprüche 5 bis 15, dadurch gekennzeichnet, daß der Index ein zweidimensionaler Index ist.
17. Vorrichtung nach einem der Ansprüche 5 bis 16, dadurch gekennzeichnet, daß der Index ein Kreis ist.
18. Vorrichtung nach einem der Ansprüche 5 bis 17, dadurch gekennzeichnet, daß beim Bestimmen der dreidimensionalen Position des Meßobjektpunktes die Objektpunktbestimmungs- Operationseinrichtung (154) den Verzerrungsabbildungsfehler des optischen Systems (21, 22) korrigiert, das ein Abbild auf der Bildaufnahmeeinrichtung (104R, 104L) erzeugt, und daß beim Wiedergeben der Indices die Indexanzeigeeinrichtung (155) den Verzerrungsabbildungsfehler des optischen Systems (21, 22) korrigiert, das ein Abbild auf der Bildaufnahmeeinrichtung (104R, 104L) erzeugt.
19. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Operationseinrichtung (154) die dreidimensionale Koordinate des Meßobjektpunktes ermittelt.
20. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Operationseinrichtung (154) den Abstand zwischen dem Meßobjektpunkt und der Bildaufnahmeeinrichtung berechnet.
21. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die erste und zweite Bestimmungseinrichtung (145, 151L, 151R) eine Vielzahl von Objektpunkten entsprechend bestimmen können und daß die Operationseinrichtung (154) den Abstand zwischen zwei von einer Vielzahl von Meßobjektpunkten bestimmt, die durch einen Satz einer Vielzahl von Objektpunkten spezifiziert sind.
22. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
  • - daß eine Speichereinrichtung (112L, 122R) zum Speichern der von der Bildaufnahmeeinrichtung (104L, 104R) erhaltenen Abbildern vorgesehen ist,
  • - daß die Anzeigeeinrichtung (130L, 130R) die von der Speichereinrichtung gespeicherte Abbildung als stillgesetztes Abbild wiedergibt und
  • - daß die erste und zweite Bestimmungseinrichtung (145, 151L, 151R) die Objektpunkte auf der von der Anzeigeeinrichtung (130L, 130R) wiedergegebenen stillgesetzten bzw. eingefrorenen Abbildung entsprechend bestimmen.
23. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Anzeigeeinrichtung einen einzigen Monitor (130) sowie eine Schalteinrichtung (201) aufweist, so daß der Monitor (130) wahlweise irgendeines der Vielzahl von Abbildern wiedergibt.
24. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Bildaufnahmeeinrichtung (104R, 104L) eine Vielzahl von Abbildern abbildet, die von einer Abbildungserzeugungseinrichtung (21, 22) erzeugt werden, die im Kopfteil des Einführteils (101) eines Endoskops vorgesehen ist, und eine Vielzahl von Objektabbildern erzeugen kann, die Parallaxen aufweisen.
25. Vorrichtung nach Anspruch 24, dadurch gekennzeichnet, daß die Abbildungserzeugungseinrichtung eine Vielzahl von optischen Systemen (21, 22) aufweist, die an einer Vielzahl von Stellen mit Parallaxen im Kopfteil des Einführteils angeordnet sind.
26. Vorrichtung nach Anspruch 25, dadurch gekennzeichnet, daß die Bildaufnahmeeinrichtung eine Vielzahl von Festkörper-Bildaufnahmeeinrichtungen (104L, 104R) aufweist, die an den jeweiligen Abbildungspositionen der Vielzahl von optischen Systemen (21, 22) im Kopfteil des Einführteils (101) angeordnet sind.
DE3922652A 1988-10-26 1989-07-10 Vorrichtung zum dreidimensionalen messen Granted DE3922652A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP27149388 1988-10-26
JP1038813A JPH02216404A (ja) 1989-02-17 1989-02-17 計測用内視鏡装置
JP1038811A JP2778725B2 (ja) 1988-10-26 1989-02-17 計測用内視鏡装置
JP1038812A JPH02216403A (ja) 1989-02-17 1989-02-17 計測用内視鏡装置

Publications (2)

Publication Number Publication Date
DE3922652A1 DE3922652A1 (de) 1990-05-03
DE3922652C2 true DE3922652C2 (de) 1992-09-10

Family

ID=27460661

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3922652A Granted DE3922652A1 (de) 1988-10-26 1989-07-10 Vorrichtung zum dreidimensionalen messen

Country Status (2)

Country Link
US (1) US4935810A (de)
DE (1) DE3922652A1 (de)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5200838A (en) * 1988-05-27 1993-04-06 The University Of Connecticut Lateral effect imaging system
US5109276A (en) * 1988-05-27 1992-04-28 The University Of Connecticut Multi-dimensional multi-spectral imaging system
US5200819A (en) * 1988-05-27 1993-04-06 The University Of Connecticut Multi-dimensional imaging system for endoscope
JPH0695009B2 (ja) * 1989-06-29 1994-11-24 オリンパス光学工業株式会社 撮像手段による対象部分の検査方法
US5070401A (en) * 1990-04-09 1991-12-03 Welch Allyn, Inc. Video measurement system with automatic calibration and distortion correction
US5153721A (en) * 1990-06-04 1992-10-06 Olympus Optical Co., Ltd. Method and apparatus for measuring an object by correlating displaced and simulated object images
JPH04357927A (ja) 1991-01-14 1992-12-10 Olympus Optical Co Ltd 画像表示装置
JP3217386B2 (ja) * 1991-04-24 2001-10-09 オリンパス光学工業株式会社 診断システム
AU2305792A (en) * 1991-06-26 1993-01-25 John C. Lafeber Dual lens borescope measurement device
US5249056A (en) * 1991-07-16 1993-09-28 Sony Corporation Of America Apparatus for generating video signals from film
JP3347385B2 (ja) * 1992-03-27 2002-11-20 オリンパス光学工業株式会社 内視鏡画像処理装置
US5305121A (en) * 1992-06-08 1994-04-19 Origin Medsystems, Inc. Stereoscopic endoscope system
US5381784A (en) * 1992-09-30 1995-01-17 Adair; Edwin L. Stereoscopic endoscope
US5669871A (en) * 1994-02-21 1997-09-23 Olympus Optical Co., Ltd. Endoscope measurement apparatus for calculating approximate expression of line projected onto object to measure depth of recess or the like
JP3486461B2 (ja) * 1994-06-24 2004-01-13 キヤノン株式会社 画像処理装置及び方法
KR100381348B1 (ko) * 1995-04-17 2003-07-07 산요 덴키 가부시키가이샤 2차원 영상을 3차원 영상으로 변환하는 방법
US6141105A (en) 1995-11-17 2000-10-31 Minolta Co., Ltd. Three-dimensional measuring device and three-dimensional measuring method
US6009189A (en) * 1996-08-16 1999-12-28 Schaack; David F. Apparatus and method for making accurate three-dimensional size measurements of inaccessible objects
JP3771988B2 (ja) * 1997-03-12 2006-05-10 オリンパス株式会社 計測内視鏡装置
DE69823116D1 (de) 1997-08-05 2004-05-19 Canon Kk Bildverarbeitungsverfahren und -gerät
EP0901105A1 (de) 1997-08-05 1999-03-10 Canon Kabushiki Kaisha Bildverarbeitungsvorrichtung
US6647146B1 (en) 1997-08-05 2003-11-11 Canon Kabushiki Kaisha Image processing apparatus
FR2790196A1 (fr) * 1999-02-26 2000-09-01 Charles Baur Dispositif d'observation endoscopique
US6888640B2 (en) 2000-02-04 2005-05-03 Mario J. Spina Body spatial dimension mapper
US7706601B2 (en) * 2003-08-29 2010-04-27 Nec Corporation Object posture estimation/correlation system using weight information
AU2004212605A1 (en) * 2003-09-26 2005-04-14 Nec Australia Pty Ltd Computation of soft bits for a turbo decoder in a communication receiver
US7349083B2 (en) * 2004-07-21 2008-03-25 The Boeing Company Rotary borescopic optical dimensional mapping tool
US9030532B2 (en) * 2004-08-19 2015-05-12 Microsoft Technology Licensing, Llc Stereoscopic image display
US20070087083A1 (en) * 2005-10-18 2007-04-19 Riley William T Tea bag cozy
AU2007253887B2 (en) * 2006-05-17 2013-03-28 Kent Moore Stereovideoscope and method of using the same
US8199186B2 (en) 2009-03-05 2012-06-12 Microsoft Corporation Three-dimensional (3D) imaging based on motionparallax
JP2010244245A (ja) * 2009-04-03 2010-10-28 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP5510700B2 (ja) * 2009-04-03 2014-06-04 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
JP4919122B2 (ja) * 2009-04-03 2012-04-18 ソニー株式会社 情報処理装置、情報処理方法、及び、プログラム
JP2010245761A (ja) * 2009-04-03 2010-10-28 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP5437087B2 (ja) * 2010-01-15 2014-03-12 オリンパス株式会社 内視鏡装置およびプログラム
EP2674099B1 (de) * 2011-08-26 2016-12-14 Olympus Corporation Medizinisches gerätesystem
GB2496903B (en) 2011-11-28 2015-04-15 Rolls Royce Plc An apparatus and a method of inspecting a turbomachine
US9561022B2 (en) 2012-02-27 2017-02-07 Covidien Lp Device and method for optical image correction in metrology systems
WO2013179905A1 (ja) * 2012-05-30 2013-12-05 オリンパスメディカルシステムズ株式会社 医療用3次元観察装置
US10292570B2 (en) * 2016-03-14 2019-05-21 Endochoice, Inc. System and method for guiding and tracking a region of interest using an endoscope
JP6898425B2 (ja) 2017-03-03 2021-07-07 富士フイルム株式会社 計測支援装置、内視鏡システム、及び内視鏡システムのプロセッサ
WO2018180250A1 (ja) 2017-03-28 2018-10-04 富士フイルム株式会社 計測支援装置、内視鏡システム、及びプロセッサ
EP3603477B1 (de) 2017-03-28 2025-08-06 FUJIFILM Corporation Messunterstützungsvorrichtung, endoskopisches system und prozessor

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5836927A (ja) * 1981-08-26 1983-03-04 Shin Kobe Electric Mach Co Ltd 鉛酸化物の製造法
JPH0820230B2 (ja) * 1984-06-08 1996-03-04 オリンパス光学工業株式会社 計測用内視鏡
JPH0646977B2 (ja) * 1984-06-09 1994-06-22 オリンパス光学工業株式会社 計測用内視鏡
US4851901A (en) * 1986-09-03 1989-07-25 Kabushiki Kaisha Toshiba Stereoscopic television apparatus
JPS6363432A (ja) * 1986-09-03 1988-03-19 株式会社東芝 立体テレビジヨン
JPS63294509A (ja) * 1987-05-27 1988-12-01 Olympus Optical Co Ltd 立体視内視鏡装置
JPS6424215A (en) * 1987-07-20 1989-01-26 Olympus Optical Co Stereoscopic endoscope system

Also Published As

Publication number Publication date
US4935810A (en) 1990-06-19
DE3922652A1 (de) 1990-05-03

Similar Documents

Publication Publication Date Title
DE3922652C2 (de)
DE4435426C2 (de) Auf ein Breitwand-Fernsehsystem abgestimmtes Mikroskop-System
DE69519975T2 (de) Medizinisches Beobachtungsinstrument
EP0799434B1 (de) Mikroskop, insbesondere stereomikroskop und verfahren zum überlagern zweier bilder
DE3587169T2 (de) Verfahren zur steuerung einer mikroskopabtasteinrichtung.
DE3818104C2 (de)
DE69022063T2 (de) Lokal angreifendes interaktives system innerhalb einer nichthomogenen struktur.
DE69327390T2 (de) Anordnung zur dreidimensionalen Bildanzeige
EP1333306B1 (de) Stereo-Mikroskopieverfahren und Stereo-Mikroskopiesystem
DE102008028482B4 (de) Optisches Beobachtungsgerät mit Mehrkanal-Dateneinblendung und Verfahren zum Einblenden von elektronischen Einblendbildern in ein optisches Beobachtungsgerät
DE69724963T2 (de) Verfahren und gerät zur ermittlung von standpunkt und blickrichtung bei der erzeugung eines dreidimensionalen bildes
EP2467051A1 (de) Bildverarbeitungssystem mit einer zusätzlichen zusammen mit der bildinformation zu verarbeitenden massstabsinformation
DE102005009437A1 (de) Verfahren und Vorrichtung zum Einblenden von AR-Objekten
DE102008035412A1 (de) Verfahren zur Erstellung einer dentalen 3D-Röntgenaufnahme und Röntgengerät hierfür
EP1658591B1 (de) Verfahren und vorrichtung zur darstellung eines vorbestimmbaren bereichs in mehrdimensionalen datensätzen
EP0741994A1 (de) Verfahren zur Darstellung des Kiefers
DE102004061875A1 (de) Einrichtung zur Diagnoseunterstützung
EP0095660A2 (de) Stereophotogrammetrisches Aufnahme- und Auswerteverfahren
EP2887117A1 (de) Mikroskop und Verfahren zur SPIM Mikroskopie
DE3729521A1 (de) Stereoskopisches fernsehgeraet
DE10243852B4 (de) Mikroskopiesystem und Mikroskopieverfahren
DE69519623T2 (de) Operations-mikroskope
DE102017109021B4 (de) System für das stereoskopische Visualisieren eines Objektbereichs sowie Objektbereich-Visualisierungsverfahren
DE19800765A1 (de) Verfahren zur Erzeugung von Bilddarstellungen sowie System hierfür
DE19840972A1 (de) Stereoskopisches Anzeigesystem

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: FIENER, J., PAT.-ANW., 87719 MINDELHEIM