DE19806547A1 - System und Verfahren zur Erzeugung von stereoskopischen Anzeigesignalen von einer Einzelcomputergraphikpipeline - Google Patents
System und Verfahren zur Erzeugung von stereoskopischen Anzeigesignalen von einer EinzelcomputergraphikpipelineInfo
- Publication number
- DE19806547A1 DE19806547A1 DE19806547A DE19806547A DE19806547A1 DE 19806547 A1 DE19806547 A1 DE 19806547A1 DE 19806547 A DE19806547 A DE 19806547A DE 19806547 A DE19806547 A DE 19806547A DE 19806547 A1 DE19806547 A1 DE 19806547A1
- Authority
- DE
- Germany
- Prior art keywords
- video
- window
- frame buffer
- pixel data
- size
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/161—Encoding, multiplexing or demultiplexing different image signal components
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/189—Recording image signals; Reproducing recorded image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/324—Colour aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/15—Processing image signals for colour aspects of image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/167—Synchronising or controlling image signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/286—Image signal generators having separate monoscopic and stereoscopic modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/334—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] using spectral multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/337—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] using polarisation multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/341—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] using temporal multiplexing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/344—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/398—Synchronisation thereof; Control thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Controls And Circuits For Display Device (AREA)
- Processing Or Creating Images (AREA)
- Digital Computer Display Output (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Description
Diese Erfindung bezieht sich allgemein auf Computeranzeige
systeme und insbesondere auf Computeranzeigesysteme, die
Bilder stereoskopisch darstellen.
Stereoskopische Anzeigeverfahren ermöglichen es dem Beobach
ter, eine Tiefe in einem Bild wahrzunehmen. Dieses Resultat
wird durch unabhängiges Darstellen von zwei unterschiedli
chen Ansichten der gleichen Szene erreicht, wobei jeweils
eine Ansicht jedem Auge des Beobachters dargestellt wird.
Wenn die Betrachtungspunkte der zwei Bilder räumlich durch
einen Abstand getrennt werden, der ähnlich zu dem Abstand
zwischen den menschlichen Augen ist, dann ist der Effekt für
den Beobachter eine sehr überzeugende visuelle Erfahrung von
drei Dimensionen.
Verschiedene Arten von stereoskopischen Anzeigeverfahren
wurden verwendet, um diesen Effekt zu erzeugen. Ein bekann
tes Verfahren verwendet eine einzelne Anzeige, mit einer
speziellen Augenbekleidung, die das angezeigte Bild unter
schiedlich für jedes Auge des Beobachters verändert. Bei
spiele einer derartigen Augenbekleidung umfassen Gläser, de
ren Linsen unterschiedliche Farbfilter, unterschiedliche
Polarisationsfilter oder Klappen aufweisen, die abwechselnd
die Sicht des linken und des rechten Auges des Beobachters
synchron mit einem sich ändernden angezeigten Bild versper
ren. Siehe z. B. das U.S. Patent Nr. 5,572,250, erteilt an
Lipton u. a., mit dem Titel "Universal Electronic Stereo
scopic Display". Derartige Gläser führen manchmal, wenn
dieselben in billigen Systemen verwendet werden, unerwünsch
te visuelle Bildfehler, wie z. B. ein Flimmern oder ein Un
scharfmachen, in die Wahrnehmung des Bilds durch den Be
obachter ein.
Ein weiteres bekanntes stereoskopisches Anzeigeverfahren
verwendet getrennte Anzeigen für jedes Auge des Beobachters.
Das letztere Verfahren eliminiert von Natur aus einen großen
Teil des Flimmerns und der Unschärfe, die der speziellen
Augenbekleidung zugeordnet sind, die bei Einzelanzeigesyste
men erforderlich ist. Auf der anderen Seite können Doppel
anzeigesysteme aufgrund der Verdoppelung der Hardware, die
erforderlich ist, um getrennte, jedoch gleichzeitige, linke
und rechte Bilder zu erzeugen, unerschwinglich teuer sein.
Beispielsweise offenbart das U.S. Patent Nr. 5,488,952, er
teilt an Schoolman, mit dem Titel "Stereoscopically Display
Three Dimensional Ultrasound Imaging" ein System, das nicht
nur zwei Anzeigen sondern ferner zwei Anzeigetreiber, zwei
Graphiksteuerungen, zwei Bildcomputer und zwei Bildspeicher
aufweist. Ähnlich offenbart das U.S. Patent Nr. 5,493,595,
ebenso erteilt an Schoolman, ein System mit zwei Anzeigen
und zwei Anzeigeprozessoren. Bei beiden dieser Systeme wer
den Polygondaten unabhängig für das linke und das rechte
Bild erzeugt. Dann werden doppelte linke und rechte Hard
warepipelines (Pipeline = Fließband) getrennt und gleich
zeitig verwendet, um die linken und rechten Polygondaten zu
rastern und anzuzeigen. Folglich erfordern diese Entwürfe
Doppelrahmenpuffer und entsprechend zusätzliche Kosten.
Als weiteres Beispiel offenbart das U.S. Patent Nr.
5,523,886, erteilt an Johnson-Williams u. a., mit dem Titel
"Stereoscopic/Monoscopic Video Display System" ein System
mit zwei getrennt adressierbaren Rahmenpuffern und zwei
Videoformatanzeigen. Einer der zwei Rahmenpuffer enthält
gerasterte Pixeldaten, die dem linken Bild entsprechen. Der
andere Rahmenpuffer enthält gerasterte Pixeldaten, die dem
rechten Bild entsprechen. Ein einzelner Videocodierer wird
verwendet, um die linken und rechten Pixeldaten auf Video
formatsignale zeitmultiplexmäßig in Videoformatsignale umzu
wandeln. Die zwei Anzeigegeräte werden abwechselnd synchron
mit den abwechselnden linken und rechten Signalen, die durch
den Videocodierer ausgegeben werden, aktiviert und deakti
viert. Ein derartiges System trägt nicht nur zu den Kosten
von Doppelrahmenpuffern bei, dasselbe fügt potentiell ferner
ein Flimmern zu dem Bild hinzu, und bewirkt eine Ermüdung
des Betrachters durch Abwechseln des Tastgrads der linken
und der rechten Anzeige. Johnson-Williams schlagen alter
nativ in Spalte 3, Zeilen 24-27 vor, das ein einzelner Rah
menpuffer mit dem gerade beschriebenen System verwendet wer
den kann, "wenn die Videosignalquelle die Daten in dem ein
zelnen (Rahmenpuffer) schnell genug ändern oder austauschen
kann, um eine linke oder rechte Ansicht zu liefern, wenn
dies durch (den Videocodierer) erforderlich ist". Folglich
werden bei dem Einzelrahmenpufferausführungsbeispiel, das
durch Johnson-Williams gelehrt wird, die linke und die rech
te Ansicht in dem Rahmenpuffer abgewechselt. Eine derartige
Lösung würde das potentielle Auffrischen der linken und der
rechten Anzeige um 50% reduzieren, was wiederum potentiell
ein Flimmern und eine Betrachterermüdung bewirkt.
Es wird angenommen, daß ein weiteres Lösungsbeispiel, bei
dem getrennte Rahmenpuffer verwendet werden, um ein linkes
und ein rechtes Bild zu speichern, in zwei Produkten vorge
funden werden kann, die durch die Silicon Graphics, Inc. un
ter den Warenzeichen ONYX und CRIMSON verkauft werden. Wie
derum sind derartige Lösungen in dem Maße teuer, daß die
selben eine doppelte Rahmenpufferhardware für den linken und
den rechten Kanal erfordern.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein
System und ein Verfahren zum Erzeugen von linken und rechten
stereoskopischen Bildern von einem Computergraphiksystem zu
schaffen, die lediglich einen einzelne Rahmenpuffer und eine
einzelne herkömmliche Graphikpipeline verwenden, und die ein
gleichzeitiges und fortlaufendes Betrachten durch beide
Augen ermöglichen, ohne die Darstellung der linken und der
rechten Ansicht abzuwechseln oder die normale Auffrischrate
der Anzeigegeräte zu reduzieren, die diese Ansichten dar
stellen.
Diese Aufgabe wird durch eine Vorrichtung zum Erzeugen eines
linken und eines rechten Videokanals gemäß Anspruch 1 und
ein Verfahren zum Erzeugen eines linken und eines rechten
Videokanals gemäß Anspruch 6 gelöst.
Bei einem Ausführungsbeispiel umfaßt die Erfindung ein Sy
stem zum Erzeugen von einem linken und einem rechten Video
kanal, um ein stereoskopisches Anzeigegerät unter Verwendung
von lediglich einem Rahmenpufferspeicher einer Computergra
phikpipeline zu treiben. Es wird eine Fensterschaltungsan
ordnung zum Definieren eines ersten und eines zweiten Fen
sters innerhalb des Rahmenpufferspeichers vorgesehen. Das
erste und das zweite Fenster speichern Pixeldaten, die einer
linken bzw. einer rechten Ansicht eines stereoskopischen
Bilds entsprechen. Es werden ferner ein erstes und ein zwei
tes Videocodierersystem vorgesehen. Jedes Videocodierersy
stem ist betreibbar, um ein Videoformatsignal als Reaktion
auf ein Pixeldateneingangssignal auszugeben. Ein Stereoaus
gabesystem ist mit dem Rahmenpufferspeicher, der Fenster
schaltungsanordnung und dem ersten und dem zweiten Videoco
dierersystem gekoppelt. Das Stereoausgabesystem ist betreib
bar, um Pixeldaten darzustellen, die aus dem ersten Fenster
innerhalb des Rahmenpufferspeichers zu dem Pixeldateneingang
des ersten Videocodierersystems gelesen werden, und um Pi
xeldaten darzustellen, die aus dem zweiten Fenster innerhalb
des Rahmenpufferspeichers zu dem Pixeldateneingang des zwei
ten Videocodierersystems gelesen werden. Auf diese Art und
Weise stellen die Videoformatsignale, die durch das erste
und das zweite Videocodierersystem ausgegeben werden, den
linken und den rechten Videokanal dar.
Bei einem weiteren Ausführungsbeispiel umfaßt die Erfindung
ein Verfahren zum Erzeugen eines linken und eines rechten
Videokanals, um ein stereoskopisches Anzeigegerät unter Ver
wendung von lediglich einem Rahmenpufferspeicher einer Com
putergraphikpipeline zu treiben. Ein erstes und ein zweites
Fenster werden innerhalb des Rahmenpufferspeichers zugeord
net, und Pixeldaten, die einem linken und einem rechten Bild
entsprechen, werden innerhalb des ersten bzw. des zweiten
Fensters gespeichert. Ferner werden Positions- und Größen-In
formationen innerhalb eines Speicherbauelements gespei
chert. Die Positions- und Größen-Informationen entsprechen
der Position und der Größe des ersten und des zweiten zuge
ordneten Fensters. Sowie Pixeldaten seriell aus dem Rahmen
pufferspeicher gelesen werden, wird ein X-Zählwert und ein
Y-Zählwert aufrecht erhalten, um die Koordinaten der Pixel
zu verfolgen, sowie dieselben aus dem Rahmenpufferspeicher
ausgelesen werden. Der X-Zählwert und der Y-Zählwert für ein
gegebenes Pixel werden mit den gespeicherten Positions- und
Größen-Informationen verglichen. Basierend auf dem Ergebnis
dieses Vergleichs, wird eine Bestimmung vorgenommen, ob das
gegebene Pixel dem ersten Fenster, dem zweiten Fenster oder
keinem der Fenster entspricht. Bei weiteren Ausführungsbei
spielen werden, wenn bestimmt wird, daß das gegebene Pixel
dem ersten Fenster entspricht, Pixeldaten, die dem gegebenen
Pixel entsprechen, zu einem ersten Videocodierer ausgegeben.
Andernfalls werden dann, wenn bestimmt wird, daß das gege
bene Pixel dem zweiten Fenster entspricht, die Pixeldaten,
die dem gegebenen Pixel entsprechen, zu einem zweiten Video
codierer ausgegeben. Wenn bestimmt wird, daß das gegebene
Pixel weder dem ersten noch dem zweiten Fenster entspricht,
dann werden die Pixeldaten, die dem gegebenen Pixel ent
sprechen, weder zu dem ersten noch zu dem zweiten Video
codierer ausgegeben.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend unter Bezugnahme auf die beiliegenden
Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines Computersystems, das mit
einem stereoskopischen Anzeigesystem gemäß einem
bevorzugten Ausführungsbeispiel der Erfindung aus
gerüstet ist;
Fig. 2 ein Blockdiagramm, das eine bevorzugte innere Orga
nisation des Rahmenpuffers von Fig. 1 zeigt;
Fig. 3 ein Blockdiagramm, das die Fensterschaltungsanord
nung von Fig. 1 detaillierter zeigt;
Fig. 4 ein Blockdiagramm, das einen bevorzugten Satz von
Zählern zeigt, die innerhalb des Stereoausgabesy
stems von Fig. 1 positioniert sind;
Fig. 5 ein Blockdiagramm, das eine bevorzugte Schnittstel
le zwischen dem Stereoausgabesystem und den Video
codierern von Fig. 1 zeigt;
Fig. 6 ein Zeitablaufdiagramm, das weiter die Schnittstel
le darstellt, die in Fig. 5 gezeigt ist;
Fig. 7 ein Blockdiagramm, daß einen Zähler "vidout" zeigt,
der innerhalb des Stereoausgabesystems von Fig. 1
positioniert ist;
Fig. 8 ein Zustandsdiagramm, das eine bevorzugte Feldda
tenflußdosierungssteuerungszustandsmaschine dar
stellt, die innerhalb des Stereoausgabesystems von
Fig. 1 positioniert ist;
Fig. 9 ein Zustandsdiagramm, das eine bevorzugte Feldspei
cherschreibsteuerungszustandsmaschine darstellt,
die innerhalb des Stereoausgabesystems von Fig. 1
positioniert ist;
Fig. 10 ein Zustandsdiagramm, das bevorzugte Videoausgabe
aktivierungssteuerungszustandsmaschinen darstellt,
die innerhalb des Stereoausgabesystems von Fig. 1
positioniert sind; und
Fig. 11 ein Logikdiagramm, das darstellt, wie Signale
WE_N[0] und WE_N[1] erzeugt werden.
Fig. 1 stellt ein Computersystem dar, das mit einem stereos
kopischen Anzeigesystem gemäß einem bevorzugten Ausführungs
beispiel der Erfindung ausgerüstet ist. Ein Computersystem
10 kann jedes herkömmliche Computersystem, wie z. B. eine
Workstation (= Arbeitsplatzrechner) oder ein Personalcom
puter ("PC"), mit einer CPU (= Central Processing Unit =
Zentrale Verarbeitungseinheit), einem Speicher, einem Plat
tenlaufwerk(en) und Eingabegeräten, wie z. B. einer Tastatur
und einer Maus, sein. Das Computersystem 10 ist mit einem
optionalen Graphikverarbeitungssystem 12 über einen Bus 14
gekoppelt. Bei den meisten Anwendungen der oberen Preis
klasse wird das Graphikverarbeitungssystem 12 vorhanden sein
und wird beispielsweise mindestens einen Geometriebeschleu
niger und vielleicht eine Texturabbildungshardware umfassen.
Bei derartigen Anwendungen schreibt das Computersystem 10
Polygondaten zu dem Graphikverarbeitungssystem 12. Das Gra
phikverarbeitungssystem 12 rastert die Polygondaten und
schreibt die entsprechenden Pixeldaten zu dem Rahmenpuffer
speicher 16. Bei billigeren Anwendungen kann das Compu
tersystem 10 Pixeldaten direkt zu dem Rahmenpufferspeicher
16 schreiben. Bei bevorzugten Ausführungsbeispielen ist der
Rahmenpufferspeicher 16 groß genug, um Daten aufzunehmen,
die einer Auflösung von entweder 1280×1024 Pixeln oder
1600×1200 Pixeln entsprechen, obwohl mehr oder weniger
Speicher verwendet werden kann, um höhere oder niedrigere
Auflösungen zu ermöglichen. Ein Digital-zu-Analog-Wand
ler-Modul 18 ("DAC"-Modul; DAC = Digital-to-Analog-Converter)
liest fortlaufend die Pixeldaten, die in dem Rahmenpuffer
speicher 16 gespeichert sind, und wandelt die Daten in
entsprechende Analogsignale R, G und B um. Die RGB-Signale
werden zusammen mit horizontalen und vertikalen Synchronisa
tionssignalen verwendet, um einen RGB-Monitor 20 auf eine
herkömmliche Art und Weise zu treiben. Zusammen weisen das
Graphikverarbeitungssystem 12, der Rahmenpufferspeicher 16,
der DAC 18 und der RGB-Monitor 20 eine einzelne Computer
graphik-"Pipeline" auf.
Das Computersystem 10 ist ferner mit einer Fensterschal
tungsanordnung 22 und einem Stereoausgabesystem 24 über
einen Bus 14 gekoppelt. Ein Pixeldateneingang 25 des Stereo
ausgabesystems 24 ist über einen Bus 26 gekoppelt, um Pixel
daten zu empfangen, die den Rahmenpufferspeicher auf ihrem
Weg zu dem DAC 18 verlassen. Pixeldatenausgänge 28, 30 des
Stereoausgabesystems 24 sind mit den Pixeldateneingängen 36,
38 eines linken und eines rechten Videocodierers 32, 34, wie
gezeigt, gekoppelt. Der linke und der rechte Videocodierer
32, 34 weisen Videosignalausgänge 40, 42 auf. Ein herkömm
liches stereoskopisches Anzeigegerät 44 enthält vorzugsweise
zwei Videoformatanzeigen 46, 48. Jede der Videoformatanzei
gen 46, 48 ist jeweils mit dem linken und dem rechten Vi
deocodierer 40, 42, wie gezeigt, gekoppelt. Synchronisa
tionssignale verlaufen zwischen dem linken und dem rechten
Videocodierer 32, 34, wie es bei 50 gezeigt ist. Bei einem
bevorzugten Ausführungsbeispiel sind die Fensterschaltungs
anordnung 22, das Stereoausgabesystem 24, und das DAC-Modul
18 innerhalb eines einzelnen Gehäuses für eine integrierte
Schaltung 60 gebildet.
Bei bekannten Systemen, die lediglich einen Rahmenpuffer
aufweisen, würden das Computersystem 10 und das Graphikver
arbeitungssystem 12 den Rahmenpufferspeicher 16 einmal fül
len, um einen Rahmen des linken Bildes zu schreiben. Dieses
linke Bild würde angezeigt werden, und das Computersystem 10
und das Graphikverarbeitungssystem 12 würden dann den Rah
menpufferspeicher 16 wiederum füllen, um einen Rahmen des
rechten Bilds zu schreiben. Nachdem dieser rechte Bildrahmen
angezeigt wurde, würde der Prozeß wiederholt werden. Bei
einem Ausführungsbeispiel der vorliegenden Erfindung füllen
das Computersystem 10 und das Graphikverarbeitungssystem 12
den Rahmenpufferspeicher 16 einmal, um einen Rahmen von so
wohl dem linken als auch dem rechten Bild zu schreiben. Der
Rahmen des linken Bilds wird in ein Fenster 52 des Rahmen
pufferspeichers 16 und der Rahmen des rechten Bilds wird in
ein Fenster 54 des Rahmenpufferspeichers 16 geschrieben. Die
Gesamtinhalte des Rahmenpuffers werden angezeigt, und dann
wird der Prozeß wiederholt: bei dem nächsten Füllen des
Rahmenpufferspeichers 16 wird der nächste Rahmen des linken
Bilds in das Fenster 52 geschrieben, der nächste Rahmen des
rechten Bilds wird in das Fenster 54 geschrieben, usw. Das
Resultat besteht darin, daß sowohl das Fenster 52 als auch
das Fenster 54 auf dem RGB-Monitor 20, wie bei 56 und 58
gezeigt, angezeigt werden. Folglich kann ein Beobachter, der
den Monitor 20 betrachtet, sowohl das linke als auch das
rechte Bild gleichzeitig auf dem gleichen Bildschirm ange
zeigt betrachten.
Sowie die Pixeldaten aus dem Rahmenpufferspeicher 16 zeilen
weise auf eine aufeinanderfolgende Art und Weise zum An
zeigen auf dem RGB-Monitor 20 ausgelesen werden, besteht die
Hauptfunktion des Stereoausgabesystems 24 darin, heraus zu
suchen, welche Pixeldaten in jeder Zeile den zwei Fenstern
52 und 54 entsprechen. Die Pixeldaten, die dem Fenster 52
entsprechen, werden zu dem Pixeldatenausgang 28 gesendet,
während die Pixeldaten, die dem Fenster 54 entsprechen, zu
dem Pixeldatenausgang 30 gesendet werden. Auf diese Art und
Weise, werden die Inhalte des Fensters 52 (das linke Bild)
immer auf der Videoformatanzeige 48 angezeigt, und die In
halte des Fensters 54 (das rechte Bild) werden immer auf der
Videoformatanzeige 46 angezeigt. Folglich wird, obwohl so
wohl das linke als auch das rechte Bild gleichzeitig auf dem
RGB-Monitor 20 angezeigt werden, der Beobachter, der die
stereoskopische Anzeigevorrichtung 44 trägt, das linke Bild
mit dem linken Auge und das rechte Bild mit dem rechten Auge
sehen. Außerdem werden die Auffrischraten für das linke und
das rechte Bild der stereoskopischen Anzeige nicht um 50%
wie bei bekannten Systemen reduziert.
Bei Ausführungsbeispielen der oberen Preisklasse kann ein
Doppelpuffern durch Vorsehen eines zweiten Rahmenpufferspei
chers 17 verwendet werden. Bei einem derartigen Ausführungs
beispiel würden die Fenster 52 und 54 Gegenstückfenster in
dem Rahmenpufferspeicher 17 aufweisen. Während der linke und
der rechte Bildrahmen, die in den Fenstern 52, 54 des Rah
menpufferspeichers 16 enthalten sind, angezeigt werden, wer
den der nächste linke und der nächste rechte Bildrahmen in
die Gegenstückfenster des Rahmenpufferspeichers 17 aufberei
tet. Wenn die Anzeige der Inhalte des Rahmenpufferspeichers
16 abgeschlossen ist, werden die zwei Rahmenpufferspeicher
auf eine herkömmliche Art und Weise ausgetauscht, derart,
daß die Inhalte des Rahmenpufferspeichers 17 angezeigt wer
den können, während dann der nächste linke und der nächste
rechte Bildrahmen in die Fenster 52 und 54 aufbereitet wer
den können usw.
Typischerweise werden bei RGB-Monitoren die Inhalte des Rah
menpufferspeichers 16 aufeinanderfolgend zeilenweise ange
zeigt. Für die meisten Videoformatanzeigegeräte werden je
doch die Zeilen in Zeilensprüngen dargestellt. Mit anderen
Worten werden alle geraden Zeilen angezeigt, und dann werden
alle ungeraden Zeilen angezeigt, und der Prozeß wird wie
derholt. Wenn die Videoformatanzeigen 46, 48 in einer Zei
lensprungbetriebsart arbeiten, besteht eine sekundäre Funk
tion des Stereoausgabesystems 24 darin, die Anzeigezeilen
der Pixeldaten, die dem linken und dem rechten Bild entspre
chen, derart neu anzuordnen, daß dieselben zu den Videoco
dierern 32 und 34 zeilensprungartig (d. h. gerade Zeilen,
dann ungerade Zeilen etc.) anstatt aufeinanderfolgend zuge
führt werden. Ein bevorzugtes Ausführungsbeispiel, bei dem
die Nichtzeilensprung-zu-Zeilensprung-Umwandlung erforder
lich ist, könnte wie folgt arbeiten: bei einem gegebenen er
sten vollständigen Lesen durch das DAC-Modul 18 aller Ab
tastzeilen der Pixeldaten in dem Rahmenpufferspeicher 16
würden lediglich die geraden Zeilen durch das Stereoausgabe
system 24 erfaßt, und die geeigneten Abschnitte dieser Zei
len würden zu den Videocodierern 32, 34 gesendet. Dann wür
den bei dem nächsten vollständigen Lesen durch das DAC-Modul
18 aller Abtastzeilen von Pixeldaten in dem Rahmenpuffer
speicher 16 lediglich ungerade Zeilen durch das Stereoaus
gabesystem 24 erfaßt, und die geeigneten Abschnitte dieser
Zeilen würden zu den Videocodierern 32, 34 gesendet, und
dann würde sich der Prozeß wiederholen. Bei anderen Ausfüh
rungsbeispielen könnten, möglicherweise unter Verwendung
eines schnelleren Punkttakts oder eines anderen Videofor
mats, sowohl die geraden als auch die ungeraden Zeilen für
jede vollständige Abtastung des Rahmenpufferspeichers 16
durch das Stereoausgabesystem 24 erfaßt und zu den Video
codierern 32, 34 ausgegeben werden.
Obwohl die skalierungs- und Anti-Flimmer-Operationen nicht
zum gleichzeitigen Erzeugen von linken und rechten Bildern
von einem einzelnen Rahmenpuffer gemäß der vorliegenden Er
findung absolut notwendig sind, würde bei Ausführungsbei
spielen der oberen Preisklasse eine dritte Funktion des Ste
reoausgabesystems 24 darin bestehen, derartige Skalierungs- und
Anti-Flimmer-Operationen an den Pixeldaten durchzufüh
ren, die auf dem stereoskopischen Anzeigegerät 44 angezeigt
werden sollen. Bevorzugte Verfahren und Vorrichtungen zum
Durchführen von derartigen Skalierungs- und Anti-Flimmer-Ope
rationen sowie zum Umwandeln von Nicht-Zeilensprung-Pi
xeldatenzeilen in ein gerades/ungerades Zeilensprungformat
sind detailliert in der ebenfalls anhängenden U.S. Patentan
meldung Seriennummer 08/626,735, eingereicht am 2. April
1996, mit dem Titel "Video Interface System and Method",
beschrieben, deren Patentanmeldung hierin durch Bezugnahme
in ihrer Gesamtheit aufgenommen ist.
Wie in Fig. 2 gezeigt, enthält der Rahmenpufferspeicher 16
n.m Pixel, wobei sich das (0,0) Pixel in der obersten linken
Ecke und das (n,m) Pixel in der untersten rechten Ecke be
findet. Die Position des Fensters 52 kann durch die Koordi
naten des obersten linken Eckpixels W1(x), W1(y) desselben
bestimmt werden. Die Position des Fensters 54 kann durch die
Koordinaten des obersten linken Eckpixels W2(x), W2(y)
desselben bestimmt werden. Die Größe der Fenster 52 und 54
kann durch die Anzahl der Pixel in den Dimensionen x und y
derselben bestimmt werden.
Um die Hauptfunktion des Stereoausgabesystems 24 des Be
stimmens welche Pixeldaten in den Zeilen, die von dem Rah
menpuffer 16 gelesen wurden, dem linken und dem rechten Bild
entsprechen, zu erreichen, sind drei Register in der Fen
sterschaltungsanordnung 22 vorgesehen. Wie in Fig. 3 ge
zeigt, enthält die Fensterschaltungsanordnung 22 ein Regi
ster video_out_position_1 62, ein Register video_out_po
sition_2 64 und ein Register video_out_size 66. Die Soft
ware, die in dem Computersystem 10 ausgeführt wird, schreibt
Daten zu den Registern 62, 64 und 66, um dem Stereoausga
besystem 24 die Größe und die Position der Fenster 52 und 54
zu benennen. Insbesondere würden die Zahlen, die in dem Bit
feld W1_X_POSITION und dem Bitfeld W2_X_POSITION gespeichert
sind, die Spaltenzahl für die am weitesten links liegenden
Pixel in dem Fenster 52 bzw. 54 sein. Ähnlich würden die
Zahlen, die in dem Bitfeld W1_Y_POSITION und dem Bitfeld
W2_Y_POSITION gespeichert sind, die Zeilenzahl für die ober
sten Pixel in dem Fenster 52 bzw. 54 sein. Bei einem bevor
zugten Ausführungsbeispiel weisen sowohl das Fenster 52 als
auch das Fenster 54 die gleiche Größe auf. Folglich ist
lediglich ein Register Video_Out_Size erforderlich. Die
Zahl, die in dem Bitfeld X_Size gespeichert ist, ist die
Anzahl der Pixelspalten in einem Fenster. Die Anzahl, die in
dem Bitfeld Y_SIZE gespeichert ist, ist die Anzahl der Pi
xelzeilen in einem Fenster. Bei anderen Ausführungsbei
spielen können mehrere Register vorgesehen werden, wenn es
wünschenswert wird, die Fenster 52 und 54 unterschiedlich
voneinander abzumessen oder zu proportionieren. Es sei hier
bemerkt, daß vorzugsweise die Größenwerte, die in diesen
Registern plaziert sind, der Größe der Fenster, nachdem
jegliche Skalierungsoperation durchgeführt ist, entspricht.
Die Bits "e" in den zwei Videopositionsregistern sind Akti
vierungsbits (e = enable = aktivieren). Wenn dieselben 0
sind, wird das Stereoausgabesystem 24 keine Pixeldaten zu
den Videocodierern 32, 34 ausgeben. Wenn dieselben l sind,
wird das Stereoausgabesystem 24 aktiviert, um Pixeldaten zu
den Videocodierern 32, 34 auszugeben.
Es sei bemerkt, daß für eine gegebene Wahl der Fenstergröße
lediglich eine Auswahl üblicherweise für die Proportionen
des Fensters geeignet sein wird. Diese Proportionen werden
durch das spezielle Videoformat, wie z. B. NTSC, PAL, SECAM
oder andere, diktiert, die verwendet werden, um die Video
formatanzeigen 46 und 48 zu treiben. Außerdem werden bei
Ausführungsbeispielen, die die x- und y-Skalierung verwen
den, die geeigneten x- und y-Skalierungsfaktoren, die durch
das Stereoausgabesystem 24 beim Formen der Fensterbilder
verwendet werden sollen, so daß dieselben zu den Bildschir
men 46 und 48 passen, ihrerseits durch die Größe und die
Proportionen, die für die Fenster ausgewählt wurden, dik
tiert. Wenn folglich beispielsweise ein Skalierungsfaktor
2 : 1 für x und y verwendet würde, und das NTSC-Format an dem
Ausgang der Videocodierer 32 und 34 erwünscht wäre, kann die
tatsächliche Größe der Fenster 52 und 54 in dem Rahmenpuf
ferspeicher 16 1280×960 Pixel sein, während die x- und
y-Größenwerte (X_SIZE, Y_SIZE), die in dem Register
video_out_size 66 gespeichert sind, X_SIZE = 640 und Y_SIZE
= 480 Pixel sein können.
Fig. 4 zeigt einen bevorzugten Satz von Zählern (= counter =
ctr), die verwendet werden, um das Takten der Pixeldaten zu
verfolgen, sowie dieselben den Rahmenpufferspeicher 16
verlassen und in das DAC-Modul 18 getaktet werden. Für das
Fenster 52 sind ein x-Offset-Zähler 400 (Offset = Versatz),
ein y-Offset-Zähler 402, ein x-Size-Zähler 404 (size =
Größe) und ein y-size-Zähler 406 vorgesehen. Für das Fenster
54 sind ein x-Offset-Zähler 408, ein y-Offset-Zähler 410,
ein x-Size-Zähler 412 und ein y-size-Zähler 414 vorgesehen.
Beim Betrieb wird ein x-Offset-Zähler 400 mit einem Offset
wert (= Versatzwert) geladen, der W1_X_POSITION entspricht;
der y-Offset-Zähler 402 wird mit einem Offsetwert geladen,
der W1_Y_POSITION entspricht, der x-Size-Zähler 404 wird mit
einem Wert geladen, der X_SIZE entspricht, und der
y-Size-Zähler 406 wird mit einem Wert geladen, der Y_SIZE ent
spricht. Ähnlich wird der x-Offset-Zähler 408 mit einem Off
setwert geladen, der W2_X_POSITION entspricht, der y-Off
set-Zähler 410 wird mit einem Offsetwert geladen, der
W2_Y_POSITION entspricht, der x-Size-Zähler 412 wird mit ei
nem Wert geladen, der X_SIZE entspricht, und der y-Size-Zäh
ler 414 wird mit einem Wert geladen, der Y_SIZE entspricht.
Die x-Offset-Zähler werden in einer zeilenweisen Basis neu
eingestellt, und dieselben werden einmal für jedes Pixel,
das aus dem Rahmenpufferspeicher 16 getaktet wird, dekremen
tiert (dekrementieren= decrement = dec). Die y-Offset-Zähler
werden auf einer rahmenweisen Basis neu eingestellt, und
dieselben werden einmal für jede Pixelzeile, die aus dem
Rahmenpufferspeicher 16 getaktet wird, dekrementiert. Jeder
der Zähler ist mit einer Vergleichsfunktion ausgerüstet, wie
es durch die Blöcke angezeigt ist, die Substraktions- und
die Gleichheits-Symbole enthalten, und gibt ein Signal
"done" (= erledigt, fertig) aus, wenn die jeweiligen Zähl
werte erreicht wurden. (In der Zeichnung sind die Ausgangs
signale als Signale "early done" (= früh erledigt, früh fer
tig) für Zeitbetrachtungen gezeigt, und dieselben werden ei
nen Takt, bevor die jeweiligen Zählwerte erreicht werden,
erzeugt.) Wie es im folgenden detaillierter beschrieben
wird, werden die Signale done verwendet, um zu bestimmen, ob
die Pixeldaten, die auf dem Bus 26 vorhanden sind, dem lin
ken Bildfenster 52, dem rechten Bildfenster 54 oder keinem
von beiden entsprechen.
Fig. 5 ist ein Blockdiagramm, das eine bevorzugte Schnitt
stelle zwischen dem Stereoausgabesystem 24 und den Videoco
dierern 32, 34 zeigt. Wie gezeigt ist, enthält jeder der Vi
deocodierer 32, 34 eine Feldspeicherbank 0 und eine Feld
speicherbank 1. Die zwei Feldspeicherbanken in jedem Video
codierer weisen einen FIFO (First-In-First-Out = Zu
erst-hinein-Zuerst-heraus) für Pixeldaten auf, die in den Codie
rer eintreten. Für Zeilensprunganzeigeformate werden gerade
Abtastzeilen zuerst durch das Stereoausgabesystem 24 in die
FIFOs geschrieben, gefolgt durch die ungeraden Zeilen (wie
es im vorhergehenden beschrieben ist). Ein 24-Bit-Datenbus
VO_DATA [23 : 0] ist mit beiden Videocodierern 32, 34 gekop
pelt. Ähnlich sind Schreibtakte WCK[0] und WCK[1] (W = Write
= schreiben) sowie Neueinstelleitungen WRST_N (RST = Reset =
neueinstellen) mit beiden Codierern gekoppelt. Der WCK[0]
ist der Schreibtakt für die Feldspeicherbanken 0, und der
WCK[1] ist der Schreibtakt für die Feldspeicherbanken 1. Die
WRST-N stellt den Schreibzeiger in allen Feldspeichern auf
die erste Position des FIFO neu ein. WE_N[0] ist lediglich
mit dem Videocodierer 34 gekoppelt, während WE_N[1] ledig
lich mit dem Videocodierer 32 gekoppelt ist. Dies sind die
Aktivierungssignale (= enable signals), die die Schreibvor
gänge von Pixeldaten über den Bus VO_DATA in die Feldspei
cher steuern, die den Videocodierern 34 bzw. 32 entsprechen.
Das Signal VO_FIELD zeigt an, welches Feld aktuell durch die
Videocodierer 34, 32 angezeigt wird, und dasselbe wird durch
das Stereoausgabesystem 24 verwendet, um den Zeitablauf der
Pixeldatenschreibvorgänge zu den Videocodierern 34, 32 (um
keine ungeraden Zeilen zu schreiben, während ungerade Zeilen
angezeigt werden, und um keine geraden Zeilen zu schreiben,
während gerade Zeilen angezeigt werden) zu steuern.
Zugunsten der folgenden Erörterung wird auf die Rate, mit
der Pixel aus dem Rahmenpufferspeicher 16 durch das DAC-Mo
dul 18 gelesen werden, als "Punkttakt"-Rate Bezug genommen.
Bei einem Ausführungsbeispiel ist die Rate, mit der Pixel
durch das Stereoausgabesystem 24 zu den Videocodierern 32,
34 gesendet werden (wobei jeweils zu einem Videocodierer ge
schrieben wird), ein Viertel der Punkttaktrate. Gerade Pixel
von jeder Zeile werden zu den Feldspeicherbanken 0 geschrie
ben, während ungerade Pixel zu den Feldspeicherbanken 1 ge
schrieben werden. Dies wird durch Einstellen von WCK[0] und
WCK[1] 180° aus der Phase zueinander (wie in Fig. 6 gezeigt)
und durch Einstellen der Frequenzen derselben, so daß die
selben 1/8 der Punkttaktfrequenz betragen, erreicht. Auf
diese Art und Weise können die Feldspeicherschreibvorgänge
mit dem Punkttakt Schritt halten. Bei Zeilensprungvideofor
maten wird die Ratenungleichheit zwischen dem Punkttakt und
der Pixelausgaberate des Stereoausgabesystems 24 (mit einen
Faktor von 2) durch Erfassen lediglich von geraden oder un
geraden Zeilen für jede Abtastung des Rahmenpufferspeichers
16 (wie es im vorhergehenden beschrieben wurde) weniger pro
blematisch gemacht. Zusätzlich ist, da die Fenster 52 und 54
typischerweise in der Richtung x nicht so lang sind wie der
Rahmenpuffer ist, eine zusätzliche "Aufhol"-Zeit für das
Stereoausgabesystem 24 verfügbar, da das letztere System
lediglich Pixel ausgeben muß, die den Fenstern entsprechen.
Schließlich kann ein Puffer in dem Stereoausgabesystem 24
verwendet werden, um alle verbleibenden Ratenungleich
heitsprobleme aufzulösen. Bei einem Ausführungsbeispiel
wurde ein FIFO-Puffer vorgesehen, der bis zu 1024 Pixel
(wobei jedem derselben 24 Bit Farbinformationen zugeordnet
sind) puffern konnte.
Über die im vorhergehenden beschriebenen Details der
Schnittstelle mit dem Stereoausgabesystem 24 hinausgehend
kann jeder der Videocodierer 32, 34 auf eine herkömmliche
Art und Weise implementiert werden, und derselbe kann bei
spielsweise auf einer gebrauchsfertigen Komponente, wie z. B.
einem SAA7199B Digitalvideocodiererchip, basieren, der
durch Philips Semiconductors, Inc. hergestellt und verkauft
wird. Wie es in Fig. 1 bei dem Bus 50 gezeigt ist, kann be
wirkt werden, daß die SAA7199B-Chips synchron miteinander
unter Verwendung von Slave-Betriebsarts- und Führungssyn
chron-Ausgangssignalen von einem Videocodierer zu den Syn
chroneingängen des anderen Videocodierers arbeiten. Dies ist
dahingehend vorzuziehen, daß dies bewirkt, daß der Auf
frischzyklus in beiden Videoformatanzeigen 46 und 48 mitei
nander synchronisiert wird.
Die Zustandsmaschinen und die Steuerungsblocks innerhalb des
Stereoausgabesystems 24 werden nun im folgenden unter Bezug
nahme auf die Fig. 7-11 detailliert beschrieben.
Der Video-Out-Steuerungsblock (Video-Out = Video-Ausgabe)
weist zwei Zustandsmaschinen auf: eine Felddatenflußdosie
rungssteuerungszustandsmaschine und eine Feldspeicher
schreibsteuerungszustandsmaschine. Der Video-Out-Steuerungs
block verwendet ferner einen Video-Out-Zähler, wie in Fig. 7
gezeigt.
Die Funktion der Felddatenflußdosierungszustandsmaschine besteht
darin, die Ausgabe von geraden oder ungeraden Zeilen von Pi
xeldaten zu den Videocodierern 32, 34 zu steuern. Wenn die
Codierer das ungerade Feld anzeigen, signalisiert die Zu
standsmaschine, daß gerade Zeilen zu den Feldspeichern und
umgekehrt geschrieben werden können. Dieses Datenflußdosie
ren von Datenschreibvorgängen wird durchgeführt, um
"Riß"-Bildfehler in dem angezeigten Bild zu minimieren. Es kann
jede beliebige geeignete Logikvorrichtung verwendet werden,
um die Felddatenflußdosierungssteuerungszustandsmaschine zu
implementieren. Bei einem bevorzugten Ausführungsbeispiel
ist die Felddatenflußdosierungssteuerungszustandsmaschine
gemäß dem Zustandsdiagramm implementiert, das in Fig. 8
gezeigt ist. Anmerkung: Zustandsübergänge für die Zustands
maschine, die in Fig. 8 gezeigt ist, treten an dem Anfang
jedes Rahmens von Daten auf, die von dem Rahmenpufferspei
cher 16 (d. h. bei positiver Flanke (=positive edge =
posedge) von vblank_n) gelesen werden. Zustandsübergänge für
alle anderen Zustandsmaschinen treten synchron mit dem
Punkttakt auf. Signalbeschreibungen für die Signale, die in
dem Zustandsdiagramm gezeigt sind, sind in der folgenden
Tabelle A gezeigt:
Tabelle A
Die Funktion der Feldspeicherschreibsteuerungszustandsmaschine besteht
darin, die Schreibtakte WCK[1 : 0] zu erzeugen, und darin, das
globale Schreibaktivierungssignal WriteEnable_n zu erzeugen,
das mit dem Signal WindowState von dem Video-Out-Aktivie
rungs-Steuerungsblock gesteuert wird, um WE_N[0] und WE_N[1]
zu erzeugen. Jede geeignete Logikvorrichtung kann verwendet
werden, um die Feldspeicherschreibsteuerungszustandsmaschine
zu implementieren. Bei einem bevorzugten Ausführungsbeispiel
ist die Feldspeicherschreibsteuerungszustandsmaschine gemäß
dem Zustandsdiagramm, das in Fig. 9 gezeigt ist, implemen
tiert. Signalbeschreibungen für die in dem Zustandsdiagramm
gezeigten Signale sind in Tabelle B im folgenden gezeigt:
Tabelle B
Die Funktion des Video-Out-Aktierungssteuerungsblocks be
steht darin, die Signale write-enable zu erzeugen, die in
Fig. 5 gezeigt sind. Es kann jede beliebige geeignete Logik
vorrichtung verwendet werden, um den Video-Out-Aktivierungs
steuerungsblock zu implementieren. Bei einem bevorzugten
Ausführungsbeispiel umfaßt derselbe zwei Zustandsmaschinen,
die in Fig. 10 gezeigt sind, und die Logik, die in Fig. 11
gezeigt ist. Signalbeschreibungen für die in dem Zustands
diagramm gezeigten Signale, sind in Tabelle C im folgenden
gezeigt:
Tabelle C
Der Fensterpositionssteuerungsblock erzeugt die Zählersigna
le, die in Fig. 4 gezeigt sind, und ferner steuert derselbe
das Laden und das Dekrementieren der Zähler. Es kann jede
beliebige geeignete Logikvorrichtung verwendet werden, um
den Fensterpositionssteuerungsblock zu implementieren. Bei
einem bevorzugten Ausführungsbeispiel wurde derselbe gemäß
dem folgenden VERILOG-Code implementiert:
Claims (7)
1. Vorrichtung zum Erzeugen eines linken und eines rechten
Videokanals, um ein stereoskopisches Anzeigegerät (44)
unter Verwendung lediglich eines Rahmenpufferspeichers
(16) einer Computergraphikpipeline zu treiben, wobei
die Vorrichtung folgende Merkmale aufweist:
eine Fensterschaltungsanordnung (22) zum Definieren ei nes ersten und eines zweiten Fensters (52, 54) inner halb des Rahmenpufferspeichers (16), wobei das erste und das zweite Fenster (52, 54) zum Speichern von Pi xeldaten dienen, die der linken bzw. der rechten An sicht eines stereoskopischen Bilds entsprechen;
ein erstes und ein zweites Videocodierersystem (32, 34), wobei jedes Videocodiersystem einen Pixeldatenein gang (36, 38) und einen Videosignalausgang (40, 42) aufweist, und jedes Videocodiersystem betreibbar ist, um ein Videoformatsignal an dem Videosignalausgang desselben als Reaktion auf Pixeldaten, die auf den Pi xeldateneingängen desselben vorhanden sind, anzubieten; und
ein Stereoausgabesystem (24), das mit dem Rahmenpuffer speicher (16), der Fensterschaltungsanordnung (22) und dem ersten und dem zweiten Videocodierersystem (32, 34) gekoppelt ist, wobei das Stereoausgabesystem (24) be treibbar ist, um Pixeldaten, die von dem ersten Fenster (52) innerhalb des Rahmenpufferspeichers (16) gelesen wurden, dem Pixeldateneingang (36) des ersten Videoco dierersystems (32) anzubieten, und um Pixeldaten, die von dem zweiten Fenster (54) innerhalb des Rahmenpuf ferspeichers (16) gelesen wurden, dem Pixeldateneingang (38) des zweiten Videocodierersystems (34) anzubieten;
wobei die Videoformatsignale, die an den Videosignal ausgängen (40, 42) des ersten und des zweiten Videoco dierersystems (32, 34) angeboten werden, den linken und den rechten Videokanal aufweisen.
eine Fensterschaltungsanordnung (22) zum Definieren ei nes ersten und eines zweiten Fensters (52, 54) inner halb des Rahmenpufferspeichers (16), wobei das erste und das zweite Fenster (52, 54) zum Speichern von Pi xeldaten dienen, die der linken bzw. der rechten An sicht eines stereoskopischen Bilds entsprechen;
ein erstes und ein zweites Videocodierersystem (32, 34), wobei jedes Videocodiersystem einen Pixeldatenein gang (36, 38) und einen Videosignalausgang (40, 42) aufweist, und jedes Videocodiersystem betreibbar ist, um ein Videoformatsignal an dem Videosignalausgang desselben als Reaktion auf Pixeldaten, die auf den Pi xeldateneingängen desselben vorhanden sind, anzubieten; und
ein Stereoausgabesystem (24), das mit dem Rahmenpuffer speicher (16), der Fensterschaltungsanordnung (22) und dem ersten und dem zweiten Videocodierersystem (32, 34) gekoppelt ist, wobei das Stereoausgabesystem (24) be treibbar ist, um Pixeldaten, die von dem ersten Fenster (52) innerhalb des Rahmenpufferspeichers (16) gelesen wurden, dem Pixeldateneingang (36) des ersten Videoco dierersystems (32) anzubieten, und um Pixeldaten, die von dem zweiten Fenster (54) innerhalb des Rahmenpuf ferspeichers (16) gelesen wurden, dem Pixeldateneingang (38) des zweiten Videocodierersystems (34) anzubieten;
wobei die Videoformatsignale, die an den Videosignal ausgängen (40, 42) des ersten und des zweiten Videoco dierersystems (32, 34) angeboten werden, den linken und den rechten Videokanal aufweisen.
2. Vorrichtung gemäß Anspruch 1, bei der die Fensterschal
tungsanordnung (22) folgende Merkmale aufweist:
ein erstes und ein zweites Videopositionsregister (62, 64) zum Speichern von Daten, die die Position des er sten bzw. des zweiten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16) anzeigen; und
ein Videogrößenregister (66) zum Speichern von Daten, die die Größe des ersten und des zweiten Fensters (52, 54) anzeigen.
ein erstes und ein zweites Videopositionsregister (62, 64) zum Speichern von Daten, die die Position des er sten bzw. des zweiten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16) anzeigen; und
ein Videogrößenregister (66) zum Speichern von Daten, die die Größe des ersten und des zweiten Fensters (52, 54) anzeigen.
3. Vorrichtung gemäß Anspruch 1 oder 2, bei der das Ste
reoausgabesystem mindestens einen Zähler (400, 402,
404, 406, 408, 410, 412, 414) aufweist, der betreibbar
ist, um die Koordinaten X und Y der Pixel zu verfolgen,
sowie dieselben aus dem Rahmenpufferspeicher (16) aus
gelesen werden.
4. Vorrichtung gemäß Anspruch 2 oder 3,
bei der das erste und das zweite Videopositionsregister (62, 64) jeweils betreibbar sind, um einen X-Versatz wert und einen Y-Versatzwert zu speichern, und um die x- und Y-Versatzwerte entsprechend den Koordinaten der obersten linken Ecke des ersten bzw. zweiten Fensters (52, 54) einzustellen; und
bei der das Videogrößenregister (66) betreibbar ist, um einen x-Größenwert und einen Y-Größenwert zu speichern, wobei der X- und der Y-Größenwert der Anzahl von Spal ten und Zeilen in dem ersten und dem zweiten Fenster (52, 54) entsprechen.
bei der das erste und das zweite Videopositionsregister (62, 64) jeweils betreibbar sind, um einen X-Versatz wert und einen Y-Versatzwert zu speichern, und um die x- und Y-Versatzwerte entsprechend den Koordinaten der obersten linken Ecke des ersten bzw. zweiten Fensters (52, 54) einzustellen; und
bei der das Videogrößenregister (66) betreibbar ist, um einen x-Größenwert und einen Y-Größenwert zu speichern, wobei der X- und der Y-Größenwert der Anzahl von Spal ten und Zeilen in dem ersten und dem zweiten Fenster (52, 54) entsprechen.
5. Vorrichtung gemäß Anspruch 4,
bei der das Stereoausgabesystem mindestens einen Zähler (400, 402, 404, 406, 408, 410, 412, 414) aufweist, der betreibbar ist, um die Koordinaten X und Y der Pixel zu verfolgen, sowie dieselben aus dem Rahmenpufferspeicher (16) ausgelesen werden; und
bei der das Stereoausgabesystem ferner betreibbar ist, um den Zustand des mindestens einen Zählers (400, 402, 404, 406, 408, 410, 412, 414) mit den Werten zu ver gleichen, die in dem ersten und dem zweiten Videoposi tionsregister (62, 64) und dem Videogrößenregister (66) gespeichert sind, und um Pixeldaten für die Ausgabe zu dem ersten und dem zweiten Videocodierersystem (32, 34) als Reaktion auf den Vergleich auszugeben.
bei der das Stereoausgabesystem mindestens einen Zähler (400, 402, 404, 406, 408, 410, 412, 414) aufweist, der betreibbar ist, um die Koordinaten X und Y der Pixel zu verfolgen, sowie dieselben aus dem Rahmenpufferspeicher (16) ausgelesen werden; und
bei der das Stereoausgabesystem ferner betreibbar ist, um den Zustand des mindestens einen Zählers (400, 402, 404, 406, 408, 410, 412, 414) mit den Werten zu ver gleichen, die in dem ersten und dem zweiten Videoposi tionsregister (62, 64) und dem Videogrößenregister (66) gespeichert sind, und um Pixeldaten für die Ausgabe zu dem ersten und dem zweiten Videocodierersystem (32, 34) als Reaktion auf den Vergleich auszugeben.
6. Verfahren zum Erzeugen eines linken und eines rechten
Videokanals, um ein stereoskopisches Anzeigegerät (44)
unter Verwendung lediglich eines Rahmenpufferspeichers
(16) einer Computergraphikpipeline zu treiben, wobei
jede Speicherposition zum Speichern von Pixeldaten in
nerhalb des Rahmenpufferspeichers (16) eine Positions
koordinate X und eine Positionskoordinate Y aufweist,
wobei das Verfahren folgende Schritte aufweist:
Zuordnen des ersten und des zweiten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16);
speichern von Positions- und Größen-Informationen (62, 64, 66), wobei die Größeninformationen (66) den Größen des ersten und des zweiten zugeordneten Fensters ent sprechen, und wobei die Positionsinformationen (62, 64) den Positionen des ersten und des zweiten zugeordneten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16) entsprechen;
schreiben von Pixeldaten, die einem linken Bild ent sprechen, in das erste Fenster (52);
Schreiben von Pixeldaten, die einem rechten Bild ent sprechen, in das zweite Fenster (54);
serielles Lesen von Pixeldaten aus dem Rahmenpuffer speicher (16);
Halten eines X-Zählwerts und eines Y-Zählwerts, die den Koordinaten der Pixel entsprechen, sowie dieselben aus dem Rahmenpufferspeicher (16) gelesen werden;
Vergleichen des X-Zählwerts und des Y-Zählwerts für ein gegebenes Pixel mit den Positions- und Größen-Informa tionen (62, 64, 66); und
basierend auf dem Ergebnis des Vergleichsschritts, Be stimmen, ob das gegebene Pixel dem ersten Fenster (52) , dem zweiten Fenster (54) oder weder dem ersten noch dem zweiten Fenster (52, 54) entspricht.
Zuordnen des ersten und des zweiten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16);
speichern von Positions- und Größen-Informationen (62, 64, 66), wobei die Größeninformationen (66) den Größen des ersten und des zweiten zugeordneten Fensters ent sprechen, und wobei die Positionsinformationen (62, 64) den Positionen des ersten und des zweiten zugeordneten Fensters (52, 54) innerhalb des Rahmenpufferspeichers (16) entsprechen;
schreiben von Pixeldaten, die einem linken Bild ent sprechen, in das erste Fenster (52);
Schreiben von Pixeldaten, die einem rechten Bild ent sprechen, in das zweite Fenster (54);
serielles Lesen von Pixeldaten aus dem Rahmenpuffer speicher (16);
Halten eines X-Zählwerts und eines Y-Zählwerts, die den Koordinaten der Pixel entsprechen, sowie dieselben aus dem Rahmenpufferspeicher (16) gelesen werden;
Vergleichen des X-Zählwerts und des Y-Zählwerts für ein gegebenes Pixel mit den Positions- und Größen-Informa tionen (62, 64, 66); und
basierend auf dem Ergebnis des Vergleichsschritts, Be stimmen, ob das gegebene Pixel dem ersten Fenster (52) , dem zweiten Fenster (54) oder weder dem ersten noch dem zweiten Fenster (52, 54) entspricht.
7. Verfahren gemäß Anspruch 6, das ferner folgende Schrit
te aufweist:
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel dem ersten Fenster (52) entspricht, Aus geben von Pixeldaten, die dem gegebenen Pixel entspre chen, zu einem ersten Videocodierer (32); sonst
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel dem zweiten Fenster (54) entspricht, Ausgeben von Pixeldaten, die dem gegebenen Pixel ent sprechen, zu einem zweiten Videocodierer (34); sonst
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel weder dem ersten noch dem zweiten Fen ster (52, 54) entspricht, Nichtausgeben von Pixeldaten, die dem gegebenen Pixel entsprechen, weder zu dem er sten noch zu dem zweiten Videocodierer (32, 34).
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel dem ersten Fenster (52) entspricht, Aus geben von Pixeldaten, die dem gegebenen Pixel entspre chen, zu einem ersten Videocodierer (32); sonst
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel dem zweiten Fenster (54) entspricht, Ausgeben von Pixeldaten, die dem gegebenen Pixel ent sprechen, zu einem zweiten Videocodierer (34); sonst
wenn in dem Bestimmungsschritt bestimmt wird, daß das gegebene Pixel weder dem ersten noch dem zweiten Fen ster (52, 54) entspricht, Nichtausgeben von Pixeldaten, die dem gegebenen Pixel entsprechen, weder zu dem er sten noch zu dem zweiten Videocodierer (32, 34).
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US84635797A | 1997-04-30 | 1997-04-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19806547A1 true DE19806547A1 (de) | 1998-11-05 |
DE19806547C2 DE19806547C2 (de) | 2001-01-25 |
Family
ID=25297680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19806547A Expired - Fee Related DE19806547C2 (de) | 1997-04-30 | 1998-02-17 | System und Verfahren zur Erzeugung von stereoskopischen Anzeigesignalen von einer Einzelcomputergraphikpipeline |
Country Status (3)
Country | Link |
---|---|
JP (1) | JPH117275A (de) |
DE (1) | DE19806547C2 (de) |
GB (1) | GB2324939B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005059842A1 (es) * | 2003-12-19 | 2005-06-30 | Tdvision Corporation S.A. De C.V. | Sistema de videojuegos 3d |
RU2543305C2 (ru) * | 2010-04-21 | 2015-02-27 | Сёнг-До КИМ | Монокулярное устройство для получения фотографированием объемного изображения и 3d-камера |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NO308925B1 (no) | 1999-03-15 | 2000-11-13 | Dimension Technologies As | FremgangsmÕte og apparat for stereoprojeksjon av bilder |
KR20100002032A (ko) * | 2008-06-24 | 2010-01-06 | 삼성전자주식회사 | 영상 생성 방법, 영상 처리 방법, 및 그 장치 |
WO2010095403A1 (ja) * | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | 再生装置、再生方法、プログラム |
WO2012071063A1 (en) * | 2010-11-23 | 2012-05-31 | Circa3D, Llc | Blanking inter-frame transitions of a 3d signal |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5488952A (en) * | 1982-02-24 | 1996-02-06 | Schoolman Scientific Corp. | Stereoscopically display three dimensional ultrasound imaging |
US5493595A (en) * | 1982-02-24 | 1996-02-20 | Schoolman Scientific Corp. | Stereoscopically displayed three dimensional medical imaging |
CA1326082C (en) * | 1989-09-06 | 1994-01-11 | Peter D. Macdonald | Full resolution stereoscopic display |
US5523886A (en) * | 1994-01-04 | 1996-06-04 | Sega Of America, Inc. | Stereoscopic/monoscopic video display system |
US5572250A (en) * | 1994-10-20 | 1996-11-05 | Stereographics Corporation | Universal electronic stereoscopic display |
JPH09139957A (ja) * | 1995-11-14 | 1997-05-27 | Mitsubishi Electric Corp | グラフィック表示装置 |
US5831638A (en) * | 1996-03-08 | 1998-11-03 | International Business Machines Corporation | Graphics display system and method for providing internally timed time-varying properties of display attributes |
-
1998
- 1998-02-17 DE DE19806547A patent/DE19806547C2/de not_active Expired - Fee Related
- 1998-03-23 GB GB9806180A patent/GB2324939B/en not_active Expired - Fee Related
- 1998-04-27 JP JP10116589A patent/JPH117275A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005059842A1 (es) * | 2003-12-19 | 2005-06-30 | Tdvision Corporation S.A. De C.V. | Sistema de videojuegos 3d |
CN100456328C (zh) * | 2003-12-19 | 2009-01-28 | Td视觉有限公司 | 三维视频游戏系统 |
US7666096B2 (en) | 2003-12-19 | 2010-02-23 | Tdvision Corporation S.A. De C.V. | Method for generating the left and right perspectives in a 3D videogame |
US8206218B2 (en) | 2003-12-19 | 2012-06-26 | Tdvision Corporation S.A. De C.V. | 3D videogame system |
RU2543305C2 (ru) * | 2010-04-21 | 2015-02-27 | Сёнг-До КИМ | Монокулярное устройство для получения фотографированием объемного изображения и 3d-камера |
Also Published As
Publication number | Publication date |
---|---|
GB2324939B (en) | 2001-08-22 |
GB2324939A (en) | 1998-11-04 |
JPH117275A (ja) | 1999-01-12 |
GB9806180D0 (en) | 1998-05-20 |
DE19806547C2 (de) | 2001-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10053439B4 (de) | Grafik-Beschleuniger mit Interpolationsfunktion | |
DE19807028C2 (de) | Synchronisation für das Rahmenpufferaustauschen in Multipipeline-Computergraphikanzeigesystemen | |
DE19953595B4 (de) | Verfahren und Vorrichtung zur Verarbeitung dreidimensionaler Bilder | |
DE69838741T2 (de) | Videotaktgenerator mit mehrfacher Abtastung zur Formatumwandlung | |
DE69729916T2 (de) | Dynamische bildgrössenänderung | |
DE69735975T2 (de) | System und Verfahren zur Überlagerung von wahlweise in unterschiedlichen nativen Formaten gespeicherten Bildern | |
DE4332573C2 (de) | Videographiksystem zum Anzeigen von Signalverläufen auf einem Videomonitor | |
DE2835689A1 (de) | Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung | |
WO1997034220A1 (de) | Betrieb mehrerer sichtgeräte an einer bildschirmsteuerung | |
EP1964413A1 (de) | Verfahren und anordnung zum monoskopischen darstellen wenigstens eines bereiches eines bildes auf einer autostereoskopischen anzeigevorrichtung sowie informationswiedergabegerät mit einer solchen anordnung | |
DE2455950A1 (de) | Ultraschallsystem (ultraskop) | |
DE19806547C2 (de) | System und Verfahren zur Erzeugung von stereoskopischen Anzeigesignalen von einer Einzelcomputergraphikpipeline | |
DE4143074A1 (de) | Verfahren und einrichtung zum umformatieren verschachtelter videodaten zur darstellung auf einem computer-ausgabedisplay | |
DE3723590A1 (de) | Einzelbild-zusammensetzschaltung mit farbsuchtabelle | |
DE19620858B4 (de) | Computergraphiksystem mit Pixel-Tiefenhinweisgebung | |
DE19545356A1 (de) | Verfahren und Vorrichtung zur Überlagerung von Stereo-Videobildern | |
DE4327779C1 (de) | Verfahren und Schaltungsanordnung für ein Fernsehgerät zur Verminderung des Flimmerns | |
EP0500147B1 (de) | Verfahren zur Ansteuerung eines Monitors und Monitorsteuerschaltung | |
DE10240313A1 (de) | Bildverarbeitungsvorrichtung mit einem Verarbeitungsvorgang Koordinatenberechung | |
DE10052156A1 (de) | Grafikbeschleuniger und Zeichenverfahren | |
DE2839888A1 (de) | Schaltungsanordnung zum darstellen von symbolen auf dem bildschirm eines sichtgeraetes | |
EP2478705A1 (de) | Verfahren und vorrichtung zum erzeugen von teilansichten und/oder einer raumbildvorlage aus einer 2d-ansicht für eine stereoskopische wiedergabe | |
DE69825125T2 (de) | Verfahren und Vorrichtung zur Bildformatumwandlung | |
DE60032761T2 (de) | Anzeigen von daten auf anzeigevorrichtungen mit niedrigerer auflösung | |
DE202008011541U1 (de) | 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 | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20140902 |