DE10052481C2 - Verfahren zur Synthetisierung von Farbdaten zur Durchführung in einer zentralen Verarbeitungseinheit, Gerät, Datenspeichermedium, Computerprogrammprodukt sowie Computersysteme - Google Patents

Verfahren zur Synthetisierung von Farbdaten zur Durchführung in einer zentralen Verarbeitungseinheit, Gerät, Datenspeichermedium, Computerprogrammprodukt sowie Computersysteme

Info

Publication number
DE10052481C2
DE10052481C2 DE2000152481 DE10052481A DE10052481C2 DE 10052481 C2 DE10052481 C2 DE 10052481C2 DE 2000152481 DE2000152481 DE 2000152481 DE 10052481 A DE10052481 A DE 10052481A DE 10052481 C2 DE10052481 C2 DE 10052481C2
Authority
DE
Germany
Prior art keywords
color data
line
data
image
predetermined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE2000152481
Other languages
English (en)
Other versions
DE10052481A1 (de
Inventor
Yoshihito Iwanaga
Shizuka Matsuda
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.)
Namco Ltd
Original Assignee
Namco 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
Application filed by Namco Ltd filed Critical Namco Ltd
Publication of DE10052481A1 publication Critical patent/DE10052481A1/de
Application granted granted Critical
Publication of DE10052481C2 publication Critical patent/DE10052481C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0224Details of interlacing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0247Flicker reduction other than flicker reduction circuits used for single beam cathode-ray tubes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)
  • Picture Signal Circuits (AREA)
  • Processing Of Color Television Signals (AREA)
  • Television Systems (AREA)

Description

Diese Erfindung betrifft ein Verfahren gemäß dem Oberbegriff des Patentanspruchs 1, ein Gerät gemäß dem Oberbegriff des Patentanspruchs 18, ein Datenspeichermedium, ein Computerprogrammprodukt sowie Computersysteme.
Ein solches Verfahren ist aus der US-A-5,742,349 bekannt. Diese Schrift offenbart ein Videographiksubsystem mit vertikaler Filterung und Abtastratenumwandlung. Verschiedene Grundfunktionen müssen implementiert werden, um NTSC- oder PAL- Signale aus den Daten für eine VGA-Anzeige zu erzeugen. Es müssen (1) NTSC- Zeitsignale erzeugt und eine Unterabtastung durchgeführt werden. (2) muss das Flimmern durch vertikale Filterung reduziert werden, und schließlich muss (3) die RGB-Information in zusammengesetzte NTSC- oder S-Videoformate codiert werden. Die Anzeige eines ganzen Graphikbildschirms wird dadurch erreicht, dass eine NTSC-Pixelrate verwendet wird, die geringfügig höher als die Hälfte der Abtastrate eines VGA-Bildschirms ist. Dies führt zu einer geringfügigen horizontalen Unterabtastung. Im wesentlichen wird die Anzahl von Pixeln in einer horizontalen Zeile vergrößert, so dass die informationstragenden Pixel einen kleineren Teil der ganzen Zeile darstellen.
Flimmern macht sich besonders bei der Anzeige von sich abwechselnden dunklen und hellen horizontalen Linien und langen horizontalen Kanten in einem stationären Bild bemerkbar. Das einfachste Glättungsverfahren zur Reduzierung von Flimmern besteht gemäß der US-A-5,742,349 darin, dass der Durchschnitt jeder Farbkomponente (rot, grün, blau) eines ersten Pixels und des nicht angezeigten, direkt darüberliegenden Pixels berechnet und an der Position des ersten Pixels angezeigt wird. Ferner ist offenbart, dass die Farbwerte eines ersten Pixels und der Pixel direkt über und unter dem ersten Pixel in einem Verhältnis 2 : 1 : 1 gewichtet werden. Die Farbwerte werden an der Position des ersten Pixels angezeigt. Die Flimmerreduktion kann durch vertikale Filterung entweder der Analog- oder der Digital-Signale erreicht werden, die die RGB-Werte darstellen.
Die US-A-5,663,772 offenbart ein Verfahren zur Verarbeitung eines Graustufenbildes zur Flimmerreduktion. Hierdurch wird die Helligkeitsänderung in vertikaler Richtung reduziert, was zu einer Reduktion des Flimmerns bei einem Zeilensprungsanzeigesystem führt. Der Filtervorgang wird bezüglich jedes Pixels in einer Punktmatrix durchgeführt. Hierfür werden die Daten jedes Pixels mit den Daten der in vertikaler Richtung benachbarten Pixel verknüpft, wobei Graustufendaten entstehen, die in einem Bildspeicher abgelegt werden. Beim Anzeigen können die Graustufendaten in einen vorbestimmten Satz von Farben umgewandelt werden, die aus einer Vordergrund-, einer Hintergrund- und einer Zwischenfarbe bestehen.
Auch die US-A-5,510,843 ist auf Flimmerreduktion und Größenanpassung für einen Videokontroller mit einem Zeilensprung Videoausgang gerichtet. In einer ersten Ausführungsform adressiert eine Sequenzsteuerung einen Videospeicher, um Daten von benachbarten Abtastlinien auszulesen. Die Pixeldaten werden gemultiplext und in RGB-Daten umgewandelt und in einen oberen und unteren Puffer als obere und untere Pixeldaten gespeichert. Die oberen und unteren Pixeldaten werden dann gewichtet, um Hybridpixelfarbdaten für ein gerades oder ungerades Teilbild zu erzeugen. Durch Reduzieren des relativen Kontrasts zwischen geraden und ungeraden Zeilen wird das Flimmern reduziert. In einer zweiten Ausführungsform wird die vertikale Auflösung reduziert, um die Daten von sechs Eingabezeilen auf fünf Ausgabezeilen umrechnen. Um Flimmern im Ausgabebild zu reduzieren, können benachbarte Zeilen gewichtet werden, um den relativen Kontrast zu reduzieren.
Das NTSC-System - eines der Videosysteme für Fernsehen - tastet während der ersten 1/60 Sekunde die ungeraden Zeilen zum Anzeigen des ungeraden Teilbildes und während der nächsten 1/60 Sekunde die geraden Zeilen zum Anzeigen des geraden Teilbildes ab. Ein Vollbild entsteht durch das abwechselnde Anzeigen der beiden Teilbilder. Je größer dabei die Helligkeitsdifferenz zwischen jedem Bild einer ungeraden Zeile in dem ungeraden Teilbild und jedem benachbarten Bild einer geraden Zeile in dem geraden Teilbild ist, desto mehr Flimmern wird im Vollbild erzeugt.
Wenn zum Beispiel eine weiße Querlinie mit der Breite von einem Pixel angezeigt wird, kann der Fall eintreten, dass eine weiße Linie in einer ungeraden Zeile des ungeraden Teilbilds vorhanden ist, während keine weiße Linie in der benachbarten geraden Zeile des geraden Teilbilds vorhanden ist. Weil die weiße Linie in diesem Fall alle 1/60 Sekunden flimmert, ist das Vollbild anstrengend anzuschauen.
Im folgenden wird ein besonderes Beispiel mit Bezug auf die Zeichnungen wie folgt erläutert. Bei den in den Zeichnungen gezeigten Bildern ist die Pixelgröße der einfacheren und verständlicheren Darstellung halber vergrößert und vereinfacht.
In Fig. 2 ist ein Vollbild gezeigt, in dem das chinesische Zeichen "bi" in weißer Farbe vor einem schwarzen Hintergrund angezeigt wird. Fig. 21A zeigt das Bild des ungeraden Teilbilds, und Fig. 21B zeigt das Bild des geraden Teilbilds, die zusammen das Vollbild von Fig. 2 bilden. Das chinesische Zeichen "bi" wird durch das kontinuierliche Anzeigen des ungeraden Teilbildes und des geraden Teilbildes angezeigt. Wenn die Helligkeitsdifferenz zwischen einer ungeraden Zeile und einer benachbarten geraden Zeile groß ist, wird ein Flimmern des Vollbildes verursacht. Fig. 22 zeigt eine Helligkeitsdifferenz zwischen der ungeraden Zeile und der benachbarten geraden Zeile in dem in Fig. 2 gezeigten Vollbild. In Fig. 22 werden die Bereiche, wo die Farbe von Weiß zu Schwarz oder von Schwarz zu Weiß zwischen der ungeraden Zeile und der benachbarten geraden Zeile wechselt, grau dargestellt. Im den grauen Teilen wird ein Flimmern verursacht.
Das oben genannte Flimmern tritt bei Anzeige eines Standbilds des chinesischen Zeichens "bi" in allen Vollbildern auf. Die vorstehenden Erläuterungen nehmen zwar auf ein Standbild Bezug. Das Flimmern kann jedoch auch bei einem Bewegtbild verursacht werden.
Weiterhin sind Geräte zum Erzeugen oder Ausgeben von auf einem Zeilensprunganzeigegerät angezeigten Bildern, wie etwa ein Videogerät, ein Personalcomputer, ein Heimspielgerät und ähnliches bekannt.
Bei derartigen Geräten ist Hardware vorgesehen, um das vorstehend erläuterte Flimmern zu reduzieren, wodurch die Anzahl der Bauteile sowie die Kosten erhöht und Ausfälle verursacht werden können.
Wenn es bei dem Personalcomputer oder dem Heimspielgerät zum Erzeugen von anzuzeigenden Bildern möglich ist, das Flimmern bei Bedarf mittels einer Steuerung der zu erzeugenden Bilder durch Software zu reduzieren, müssen die Bauelemente des Geräts nicht modifiziert werden, was sehr bequem und nützlich ist.
Wenn jedoch das Flimmern durch Software reduziert wird, kann die Verarbeitungszeit zu einem Problem werden. Bei einem NTSC-System ist es erforderlich, ein Teilbild innerhalb von 1/60 Sekunde zu erzeugen. Es ist also erforderlich, zusätzlich zu der eigentlichen Funktion der Bilderzeugung pro 1/60 Sekunde das Teilbild zu erzeugen. Deshalb muss die Software einen raffinierten Algorithmus und Aufbau aufweisen, damit die Software ein Teilbild innerhalb von kurzer Zeit erzeugen kann.
Es ist die Aufgabe der Erfindung, ein Verfahren, ein Gerät, ein Datenspeichermedium, ein Computerprogrammprodukt sowie ein Computersystem anzugeben, um ein Verfahren zur Flimmerreduktion an die Erfordernisse von Videospielen oder Spielprogrammen anzupassen. Diese Aufgabe wird durch die Lehre der Ansprüche 1, 18, 21, 22 sowie 24 gelöst.
In Übereinstimmung mit einem Aspekt der vorliegenden Erfindung umfasst ein Computerprogramm eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Synthetisieren von Farbdaten einer ungeraden Zeile und von Farbdaten einer geraden Zeile in einem Vollbild mit einem vorbestimmten Verhältnis, um ein Teilbild für eine Zeilensprunganzeige zu erzeugen.
Ein Vollbild kann sich aus zwei Teilbildern zusammensetzen. Beim NTSC-System zum Beispiel wird jedes der zwei Teilbilder des Vollbildes alternativ alle 1/60 Sekunden, d. h. in Übereinstimmung mit dem Zeitintervall zum Erzeugen jedes Teilbildes aufgefrischt.
Weiterhin ist die Größe des Vollbildes nicht auf die Größe des Bildschirms der Zeilensprunganzeige zum Anzeigen der auf der Basis des Vollbilds erzeugten Teilbilder beschränkt. Zum Beispiel unterscheidet sich die Größe des Vollbildes im NTSC-System von der Größe des Vollbildes im PAL-System unabhängig von der Größe des Bildschirms zum Anzeigen der auf der Basis jedes Vollbildes erzeugten Teilbilder. Wenn die vertikale Länge des Vollbildes sich von derjenigen des Bildschirms unterscheidet, müssen die unteren und oberen Teile des Vollbildes nicht verarbeitet werden, um jedes Teilbild durch das Computerprogramm der vorliegenden Erfindung zu erzeugen.
In Übereinstimmung mit dem oben genannten Computerprogramm wird das Teilbild durch das Synthetisieren der ungeraden Zeile und der geraden Zeile in dem Vollbild erzeugt, so dass die Helligkeitsdifferenz zwischen der ungeraden Zeile und der geraden Zeile auf dem Bildschirm des Anzeigegeräts aufgehellt und das Flimmern effektiv reduziert werden kann. Weitere Möglichkeiten zum Reduzieren des Flimmerns können mittels Software durch das Computerprogramm der vorliegenden Erfindung erreicht werden. Um das Flimmern zu reduzieren, ist es also nicht erforderlich, eine exklusive Teilbild- Erzeugungseinrichtung in einem Personalcomputer oder einer Spielvorrichtung vorzusehen, wobei der im Personalcomputer oder in der Spielvorrichtung enthaltene Prozessor verwendet werden kann.
Das vorbestimmte Verhältnis zum Synthetisieren der Farbdaten kann geändert werden. Wenn zum Beispiel das zu erzeugende Teilbild ein Bild eines ungeraden Teilbilds ist, ist das Farbdatenverhältnis der ungeraden Linie gegenüber der geraden Linie größer, und wenn das Teilbild ein Bild eines geraden Teilbilds ist, ist das Farbdatenverhältnis der geraden Line größer. Das Verhältnis zum Synthetisieren der jeweiligen Farbdaten kann geändert werden. Um weiterhin eine einfache und schnelle Verarbeitung beim Synthetisieren der Farbdaten vorzusehen, können die Farbdaten mit einem gleichen Verhältnis synthetisiert werden. Insbesondere wenn zwei Daten unter Verwendung einer Bitverschiebungsoperation und einer zusätzlichen Operation synthetisiert werden, können die Daten einfach und schnell durch Software verarbeitet werden.
Die folgende Beschreibung gilt für das folgende Computerprogramm der vorliegenden Erfindung wie für dieses Computerprogramm. Die Datenquantität des Teilbildes entspricht der Hälfte des Vollbildes. Das heißt, das Teilbild weist die halbe Längsgröße eines Vollbildes auf, so dass die Datenquantität des Teilbildes der halben Datenquantität des Vollbildes entspricht. Daraus resultiert, dass die Kapazität des für die Anzeige des Teilbildes auf dem Anzeigegerät verwendeten Anzeigespeichers der Hälfte des zum Speichern der Farbdaten des Vollbildes verwendeten Speichers entspricht, weil die Kapazität ausreicht, um die Farbdaten des Teilbildes zu speichern.
In Übereinstimmung mit einem anderen Aspekt der vorliegenden Erfindung, umfasst ein Computerprogramm eine Programmcodeeinrichtung zum Durchführen des folgenden Schrittes: Synthetisieren der Farbdaten einer Zielzeile und der Farbdaten einer dazu benachbarten Zeile im Vollbild mit einem vorbestimmten Verhältnis, um synthetische Farbdaten zum Erzeugen eines Teilbildes für eine Zeilensprunganzeige auf der Basis der synthetischen Farbdaten zu erzeugen.
Die folgende Beschreibung gilt für das folgende Computerprogramm der vorliegenden Erfindung wie für dieses Computerprogramm. Wenn das zu erzeugende Teilbild ein Bild eines ungeraden Teilbilds ist, ist die Zielzeile eine ungerade Zeile im Vollbild, während wenn das zu erzeugende Teilbild ein Bild eines geraden Teilbilds ist, ist die Zielzeile eine gerade Zeile des Vollbildes.
In Übereinstimmung mit dem oben beschriebenen Computerprogramm werden die Farbdaten der Zielzeile und der dazu benachbarten Zeile derart synthetisiert, dass wenn zum Beispiel die Zielzeile eine Zeile umfasst, ein Teilbild für ein reduziertes Flimmern einfach erzeugt werden kann, indem die Operation zum Synthetisieren der Farbdaten kontinuierlich unter Änderung der Zielzeile ausgeführt wird.
Weiterhin werden die Farbdaten der Zielzeile und der dazu benachbarten Zeile derart synthetisiert, das ein Bild für die benachbarte Zeile der Zielzeile erzeugt werden kann.
Vorzugsweise umfasst ein Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen der folgenden Schritte: Synthetisieren der Farbdaten der Zielzeile und der Farbdaten einer oben benachbarten Zeile im Vollbild mit einem ersten vorbestimmten Verhältnis, um erste synthetische Farbdaten zu erzeugen; Synthetisieren der Farbdaten der Zielzeile und der Farbdaten der unten benachbarten Zeile im Vollbild mit einem zweiten vorbestimmten Verhältnis, um zweite synthetische Farbdaten zu erzeugen; und Synthetisieren der ersten synthetischen Farbdaten und der zweiten synthetischen Farbdaten mit einem dritten vorbestimmten Verhältnis, um synthetische Farbdaten zu erzeugen und um ein Teilbild für eine Zeilensprunganzeige auf der Basis der synthetischen Farbdaten zu erzeugen.
Unter oben und unten benachbarten Zeilen sind die Zeilen zu verstehen, die jeweils direkt oberhalb und unterhalb der Zielzeile angezeigt werden. Unter ersten und zweiten synthetischen Farbdaten sind Farbdaten zu verstehen, die jeweils aus dem Synthetisieren der Farbdaten der Zielzeile und der Farbdaten der oben und unten benachbarten Zeilen resultieren. Weiterhin werden das erste, zweite und dritte vorbestimmte Verhältnis individuell bestimmt, so dass sie sich alle unterscheiden können, wobei allerdings auch wenigstens zwei gleich sein können.
In Übereinstimmung mit dem oben beschriebenen Computerprogramm können die oben und unten benachbarten Zeilen der Zielzeile betrachtet werden. Weiterhin wird in jedem Schritt eine Synthetisierung aus der Zielzeile und der oben und unten benachbarten Zeile vorgenommen, so dass die Verarbeitung einfach und schnell durchgeführt werden kann. Es ist also wie oben beschrieben möglich, die Syntheseverarbeitung von zwei Farbdaten einfach und schnell auszuführen, wobei die Verarbeitung der vorliegenden Erfindung aus einer Kombination von einfachen Operationen besteht.
Es ist dementsprechend möglich, eine schnelle Operation in Übereinstimmung mit dem Hardwareaufbau jedes Geräts zu realisieren, wobei zum Beispiel ein Prozessor, der eine Pipelineverarbeitung durchführen kann (praktisch jeder Prozessor kann eine Pipelineverarbeitung durchführen) oder eine exklusive Schaltung zum Synthetisieren von zwei Bilddaten umfasst (zum Beispiel eine bilineare Schaltung), zum Ausführen des Computerprogramms der vorliegenden Erfindung verwendet wird. Daraus resultiert, dass die zum Erzeugen der Teilbilder erforderliche Zeit reduziert werden kann.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Computerprogramm eine Programmcodeeinrichtung zum Ausführen von: einem ersten Verarbeitungsschritt zum Synthetisieren von Farbdaten einer Zielzeile und von Farbdaten einer oben benachbarten Zeile in einem Vollbild mit einem gleichen Verhältnis durch das Ausführen einer vorbestimmten Pixelinterpolationsverarbeitung, um erste synthetische Farbdaten zu erzeugen (zum Beispiel die Schritte S1 bis S8 von Fig. 15; eine der Synthesen in Stufe 1 von Fig. 1B); und einem zweiten Verarbeitungsschritt zum Synthetisieren von Farbdaten der Zielzeile und von Farbdaten einer unten benachbarten Zeile im Vollbild mit einem gleichen Verhältnis durch das Ausführen der vorbestimmten Pixelinterpolationsverarbeitung, um zweite synthetische Farbdaten zu erzeugen, und zum Synthetisieren der ersten synthetischen Farbdaten und der zweiten synthetischen Farbdaten durch das Ausführen einer transluzenten Syntheseverarbeitung (zum Beispiel einem Alpha-Blending), um ein Teilbild für ein Zeilensprunganzeige zu erzeugen (zum Beispiel die Schritte S9 bis S15 von Fig. 15; die andere Synthese in Stufe 1 und die Synthese in Stufe 2 von Fig. 1B).
Die vorbestimmte Pixelinterpolationsverarbeitung umfasst eine bilineare Filterverarbeitung, eine trilineare Filterverarbeitung usw. die jeweils bekannte Entwicklungen sind. Unter Ausführen der vorbestimmten Pixelinterpolationsverarbeitung ist zum Beispiel zu verstehen, dass die Vorrichtung eine Schaltung in Hardware zum Ausführen der vorbestimmten Pixelinterpolationsverarbeitung umfasst und verwendet und dass die Vorrichtung einen Verarbeitungsprozess in Software (zum Beispiel eine Subroutine) umfasst und verwendet.
In Übereinstimmung mit diesem Computerprogramm können die oben und unten benachbarten Zeilen der Zielzeile betrachtet werden. Weiterhin wird die Zielzeile in zwei Verarbeitungsschritten synthetisiert und wird die Zielzeile in jedem Schritt aus der oben und unten benachbarten Zeile synthetisiert, so dass die Zielzeile einfach und schnell verarbeitet werden kann.
Wenn weiterhin das Computerprogramm der vorliegenden Erfindung die Pixelinterpolationsverarbeitung und die transluzente Syntheseverarbeitung (beides sind bekannte Entwicklungen) zum Synthetisieren der Farbdaten umfasst, kann der weitere Effekt einer Ausführung des vorliegenden Computerprogramms in einem Gerät durch eine Schaltung erhalten werden. Dadurch kann die für die Erzeugung des Teilbildes erforderliche Zeit verkürzt werden.
Weiterhin ist eine Speicherkapazität ausreichend, um die Daten des Teilbildes zu speichern. Das heißt, die aus der Synthese im ersten Verarbeitungsschritt resultierenden Farbdaten werden mit den aus der Synthese im zweiten Verarbeitungsschritt resultierenden Farbdaten synthetisiert, so dass es nicht erforderlich ist, die Ergebnisse im ersten Verarbeitungsschritt und im zweiten Verarbeitungsschritt einzeln zu speichern.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen der folgenden Schritte: Ausführen einer bilinearen Filterverarbeitung zum Abtasten von vier Punkten in der vorbestimmten Pixelinterpolationsverarbeitung; und Synthetisieren der Farbdaten der Zielzeile und der Farbdaten der oben und unten benachbarten Zeilen durch das kontinuierliche Ausführen der bilinearen Filterverarbeitung, nachdem die Abtastpositionen jeweils in dem ersten und zweiten Verarbeitungsschritt um ein halbes Pixel horizontal verschoben wurden.
Es wird allgemein eine bilineare Filterverarbeitung in einer Bilderzeugungsvorrichtung verwendet, so dass in vielen Fällen die Bilderzeugungsvorrichtung eine bilineare Filterverarbeitung in der Form einer Schaltung vorgesehen werden kann. In diesem Fall ist die vorliegende Erfindung wie bereits weiter oben erwähnt besonders effektiv.
Während weiterhin allgemein vier Punkte in der bilinearen Filterverarbeitung abgetastet werden, werden die Farbdaten von Pixeln horizontal gemischt, wenn eine bilineare Filterverarbeitung zum Abtasten von vier Punkten einfach so durchgeführt wird. Deshalb wird die vorliegende Verarbeitung ausgeführt, nachdem die Abtastposition horizontal um ein halbes Pixel verschoben wurde, damit die Abtastgröße keine horizontale Mischung der Farbdaten der Pixel verursacht.
Durch das horizontale Verschieben der Abtastposition um ein halbes Pixel kann der Fall auftreten, dass wenn das linke oder rechte Endpixel der Zielzeile synthetisiert wird, die Zielpixel des Prozesses der bilinearen Filterverarbeitung nicht existieren.
Dementsprechend umfasst das Computerprogramm vorzugsweise weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Synthetisieren der Farbdaten eines linken oder rechten Endpixels in der Zielzeile und der Farbdaten der linken oder rechten Endpixel der oben oder unten benachbarten Zeile jeweils durch das gefaltete Ausführen einer bilinearen Filterverarbeitung.
Vorzugsweise ist das vorbestimmte Verhältnis oder wenigstens das erste, zweite und dritte vorbestimmte Verhältnis in Übereinstimmung mit einer Anzahl von Zielzeilen für die Synthese auf dem Vollbild gleich.
In Übereinstimmung mit diesem Computerprogramm können die Bilddaten ohne Rücksicht auf das Verhältnis synthetisiert werden. Es ist dementsprechend möglich, eine schnelle Verarbeitung zu realisieren.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Synthetisieren der Farbdaten pro Verarbeitungseinheit als rechteckige Pixelgruppe mit einer Pixelanzahl, die sich durch das Teilen von jeweils der Anzahl von Längspixeln und der Anzahl von Querpixeln in dem Vollbild durch eine vorbestimmte ganze Zahl ergibt.
In Übereinstimmung mit diesem Computerprogramm können die Farbdaten pro Verarbeitungseinheit in Übereinstimmung mit dem Hardwareaufbau wie etwa einem Zwischenspeicher oder Seitenspeicher synthetisiert werden. Dadurch kann die zum Erzeugen des Teilbildes erforderliche Verarbeitungszeit verkürzt werden.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Ausführen einer transluzenten Syntheseverarbeitung (zum Beispiel einer Alpha-Blending-Synthese) zum Synthetisieren der Farbdaten.
Wenn in Übereinstimmung mit diesem Computerprogramm zum Beispiel die im Speicher gespeicherten Bilddaten (Farbdaten) für ein Teilbild und andere nicht im Speicher gespeicherte Bilddaten (Farbdaten) für ein anderes Bild synthetisiert werden, ist die Kapazität des Speichers zum Speichern der Bilddaten von einem Teilbild ausreichend, um die Bilddaten und die anderen Bilddaten zu synthetisieren. Das heißt, dass die erforderliche Speicherkapazität zum Synthetisieren jedes Teilbildes die Bilddaten für ein Teilbild speichern kann. Es ist folglich möglich, das Computerprogramm der vorliegenden Erfindung auf einer Vorrichtung mit beschränkter Speicherkapazität auszuführen.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Ausführen einer vorbestimmten Pixelinterpolationsverarbeitung (zum Beispiel einer bilinearen Filterverarbeitung) zum Synthetisieren der Farbdaten.
In Übereinstimmung mit diesem Computerprogramm kann die Bilderzeugungsvorrichtung in vielen Fällen die Pixelinterpolationsverarbeitung in der Form einer bestehenden Funktion ausführen, so dass das Teilbild mit einer höheren Geschwindigkeit durch die Pixelinterpolationsverarbeitung erzeugt werden kann.
Vorzugweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Erzeugen des Teilbildes als einem in der Längsrichtung komprimierten Vollbild.
Unter Komprimieren in der Längsrichtung ist hier eine Reduktion der Quantität der Längsbilddaten und eine Reduktion der Größe der Längsdaten des Vollbildes durch das Synthetisieren der Farbdaten wie oben beschrieben zu verstehen.
Vorzugsweise weist das Vollbild die Größe eines Bildschirms der Zeilensprunganzeige zum Anzeigen des Teilbilds auf oder ist größer als der Bildschirm.
Dementsprechend ist das Vollbild nicht darauf beschränkt, dass es im wesentlichen dieselbe Größe aufweist wie die Zeilensprunganzeige zum Anzeigen des Teilbilds. Zum Beispiel kann das Vollbild ein seitlich langes Bild wie etwa für einen Film sein.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen der folgenden Schritte: nicht Synthetisieren der Farbdaten einer oberen oder unteren Endzeile und der Farbdaten einer anderen Zeile im Vollbild; oder gefaltetes Synthetisieren der Farbdaten der oberen oder unteren Endzeile in dem Vollbild (d. h. unter kontinuierlicher Verwendung der oberen oder unteren Endzeile).
Wenn dementsprechend zwei Zeilen synthetisiert werden, kann eine Unstimmigkeit in der Verarbeitung verhindert werden, wenn nämlich die Zielzeile für die Synthetisierung der oberen oder unteren Endzeile in dem Vollbild nicht besteht.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Korrigieren der Farbdaten des Teilbild zu helleren Werten.
Es ist dementsprechend möglich, die Farbdaten des Teilbilds heller zu korrigieren, weil dieses durch die Synthetisierung der Farbdaten notwendigerweise dunkler geworden ist. Folglich kann die Helligkeit der Farbdaten des Teilbildes auf demselben Wert gehalten werden wie das Originalbild.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Ändern des Korrekturwerts für die Helligkeit der Farbdaten des Teilbilds.
Dementsprechend kann in einem Einrichtungsfenster oder ähnlichem einfach der gewünschte Wert für die Helligkeitskorrektur geändert werden. Weiterhin kann insbesondere als Verfahren zum Realisieren der Korrektur der Helligkeit zum Beispiel ein Verfahren zum Multiplizieren von RGB-Werten für die Farbwerte mit vorbestimmten Koeffizienten vorgesehen werden.
Dabei kann jedoch der Fall auftreten, dass ein Überlauf an Farbdaten durch die RGB-Werte verursacht wird.
Dementsprechend umfasst das Computerprogramm vorzugsweise weiterhin eine Programmcodeeinrichtung zum Durchführen der folgenden Schritte: Multiplizieren der Farbdaten des Teilbildes mit einem vorbestimmten Koeffizienten zum Korrigieren der Helligkeit; und Korrigieren der Helligkeit der Farbdaten des Teilbildes nach der Synthetisierung der Farbdaten von Zeilen des Vollbildes, wenn wenigstens ein Teil der Farbdaten des Vollbildes einen vorbestimmten Schwellwert überschreitet.
Folglich wird der Schwellwert mit Rücksicht auf die Farbdaten und den Koeffizienten bestimmt. Dadurch kann verhindert werden, dass ein Problem wie ein Überlauf und eine durch das Multiplizieren der Farbdaten mit dem vorbestimmten Koeffizienten verursachte Rundung auftritt.
Vorzugsweise ändert sich die Zielzeile der Synthese in Übereinstimmung damit, ob ein ungerades Teilbild oder ein gerades Teilbild erzeugt wird.
Wenn dementsprechend zum Beispiel das ungerade Teilbild erzeugt wird, werden die ungerade Zeile und die unten benachbarte Zeile des Vollbildes synthetisiert, während wenn das gerade Teilbild erzeugt wird, werden die gerade Zeile und die unten benachbarte Zeile des Vollbildes synthetisiert (wenn die gerade Zeile und die obere benachbarte Zeile synthetisiert werden, um das gerade Feld zu erzeugen, ist das Ergebnis der Synthese aus der geraden Zeile und der oben benachbarten Zeile gleich demjenigen der Synthese aus der ungeraden Zeile und der unten benachbarten Zeile). Folglich kann der Auflösungsfaktor in der vertikalen Richtung sowie derjenige des Originalbildes beibehalten werden.
Wenn insbesondere davon ausgegangen wird, dass der Auflösungsfaktor in der vertikalen Richtung sinkt, wenn das Bild des ungeraden Teilbildes gleich dem geraden Teilbild in einem Standbild (einem Vollbild) ist, sind die vorstehenden Erläuterungen verständlich.
Vorzugsweise setzt sich das Vollbild aus Bilddaten für einen vollständigen Bildschirm für die Zeilensprunganzeige pro Zeitperiode zum Anzeigen eines Teilbildes zusammen.
Dabei ist unter der Zeitperiode zum Anzeigen eines Teilbildes das Zeitintervall zum Anzeigen eines Teilbildes zu verstehen. Bei dem NTSC-System ist zum Beispiel 1/60 Sekunde zum Anzeigen eines Teilbildes vorgesehen. Diese Bedeutung gilt für die gesamten vorliegenden Erläuterungen.
Dementsprechend wechselt das Vollbild für jedes Teilbild. Es ist also effektiv, das Computerprogramm der vorliegenden Erfindung auf ein Anzeigegerät mit einem geringen Auffrischungsverhältnis oder ein Anzeigegerät mit einem kurzen Nachleuchten anzuwenden, bei dem das Flimmern stärker auftritt.
Vorzugsweise umfasst das Computerprogramm eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Aktivieren/Deaktivieren der Erzeugung des Teilbildes.
Es ist dementsprechend möglich, dass ein Benutzer die Erzeugung des Teilbildes in einem Einrichtungsfenster aktiviert oder deaktiviert oder dass die Erzeugung des Teilbildes automatisch in Übereinstimmung mit jedem Teilbild aktiviert oder deaktiviert wird (in Übereinstimmung mit einer internen Verarbeitung).
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung, umfasst ein in einem Speichermedium enthaltenes Computerprogramm eine Programmcodeeinrichtung zum Durchführen aller oben beschriebenen Schritte, wenn das Computerprogramm auf einem Computer ausgeführt wird.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Computerprogramm auf einem Übertragungsmedium eine Programmcodeeinrichtung zum Durchführen aller oben beschriebenen Schritte, wenn das Computerprogramm auf einem Computer ausgeführt wird.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Computerprogramm auf einer Trägerwelle eine Programmcodeeinrichtung zum Durchführen aller oben beschriebenen Schritte, wenn das Computerprogramm auf einem Computer ausgeführt wird.
Wenn das oben beschriebene Computerprogramm zum Erzeugen des Bildes durch Hardware zum Erzeugen des Bildes ausgeführt werden kann, kann der Effekt der vorliegenden Erfindung am effektivsten vorgesehen werden.
Das heißt, dass das Computerprogramm weiterhin eine Programmcodeeinrichtung umfasst, wenn das Computerprogramm auf einem Heimspielgerät-Computer ausgeführt wird, wobei die Programmcodeeinrichtung folgende Schritte durchführt: Ausführen eines vorbestimmten Spiels; Erzeugen eines Spielbildes des vorbestimmten Spiels, das sich aus einem Teilbild mit reduziertem Flimmern zusammensetzt.
Dabei kann der Computer nicht nur ein allgemein verwendeter Computer oder ähnliches sondern auch ein anderes Gerät, in dem ein Computer integriert ist. So kann der Computer beispielsweise ein Heimspielgerät sein.
Vorzugsweise umfasst das Computerprogramm weiterhin eine Programmcodeeinrichtung zum Durchführen des folgenden Schritts: Aktivieren und Deaktivieren der Erzeugung des Spielbildes, das sich aus dem Teilbild mit reduziertem Flimmern zusammensetzt, in Übereinstimmung mit dem Fortschritt des vorbestimmten Spiels.
Es ist dementsprechend zum Beispiel möglich, die Erzeugung des Teilbildes mit reduziertem Flimmern in der Spielstufe zu deaktivieren, wenn das gesamte Spielbild dunkel ist.
Dabei ist unter dem Fortschritt des Spiels der Spielfortschritt in Übereinstimmung mit der Änderung der Spielstufe (zum Beispiel einer Spielstufe mit einem Kampf des Hauptcharakters) oder der Entwicklung des Charakters zu verstehen.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Computerprogrammprodukt eine Programmcodeeinrichtung, die auf einem computerlesbaren Medium gespeichert ist, um alle oben beschriebenen Schritte des Computerprogramms auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
Vorzugsweise umfasst das Computerprogrammprodukt weiterhin eine Programmcodeeinrichtung, wenn das Computerprogramm auf einem Heimspielgerät-Computer ausgeführt wird, wobei die Programmcodeeinrichtung folgende Schritte ausführt: Ausführen eines vorbestimmten Spiels; und Erzeugen eines Spielbildes des vorbestimmten Bildes, das sich aus einem Teilbild mit reduziertem Flimmern zusammensetzt.
Vorzugsweise umfasst das Computerprogrammprodukt weiterhin einen Programmcode zum Durchführen des folgenden Schritts: Aktivieren/Deaktivieren der Erzeugung des Spielbildes, das sich aus dem Teilbild mit reduziertem Flimmern zusammensetzt, in Übereinstimmung mit dem Fortschritt des vorbestimmten Spiels.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung, umfasst eine Bilderzeugungsvorrichtung eine auf einem computerlesbaren Medium gespeicherte Programmcodeeinrichtung zum Durchführen aller oben beschriebenen Schritte, wenn die Bilderzeugungsvorrichtung auf einem Computer ausgeführt wird.
Vorzugsweise umfasst die Bilderzeugungseinrichtung weiterhin eine Programmcodeeinrichtung, wenn die Bilderzeugungsvorrichtung auf dem Heimspielgerät als Computer ausgeführt wird, wobei die Programmcodeeinrichtung folgende Schritte ausführt: Ausführen eines vorbestimmten Spielprogramms; und Erzeugen eines Spielbildes des vorbestimmten Spielprogramms, das sich aus einem Teilbild mit reduziertem Flimmern zusammensetzt.
Dementsprechend kann in Übereinstimmung mit der Bilderzeugungsvorrichtung zum Ausführen des Computerprogramms ein Effekt des Computerprogramms vorgesehen werden, ohne dass dazu die Bilderzeugungsvorrichtung modifiziert werden muss.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Computersystem einen vorbestimmten Server und ein vorbestimmtes Terminal, die miteinander über eine vorbestimmte elektrische Kommunikationsleitung verbunden sind, wobei der vorbestimmte Server umfasst: eine auf einem computerlesbaren Medium gespeicherte Programmcodeeinrichtung zum Durchführen aller oben beschriebenen Schritte des Computerprogramms, wenn der vorbestimmte Server auf einem Computer ausgeführt wird; und eine Einrichtung zum Senden des Computerprogramms zu dem vorbestimmten Terminal; wobei weiterhin das vorbestimmte Terminal umfasst: eine Einrichtung zum Empfangen des Computerprogramms von dem vorbestimmten Server; und eine Einrichtung zum Erzeugen eines Teilbildes mit reduziertem Flimmern durch das Ausführen des Computerprogramms.
Es ist dementsprechend möglich, das Computerprogramm von dem vorbestimmten Server zu dem vorbestimmten Terminal herunterzuladen. Es ist folglich möglich, dass das vorbestimmte Terminal das Computerprogramm ausführt.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst das Computersystem einen vorbestimmten Server und ein vorbestimmtes Zeilensprunganzeigegerät, die miteinander über eine elektrische Kommunikationsleitung verbunden sind, wobei der vorbestimmte Server umfasst: eine Programmcodeeinrichtung, die auf einem computerlesbaren Medium gespeichert ist, um alle oben beschriebenen Schritte des Computerprogramms auszuführen, wenn der vorbestimmte Server auf einem Computer ausgeführt wird; eine Einrichtung zum Erzeugen eines Teilbildes mit reduziertem Flimmern durch das Ausführen des Computerprogramms; und eine Einrichtung zum Senden des Teilbildes zu dem vorbestimmten Zeilensprunganzeigegerät; wobei weiterhin das vorbestimmte Zeilensprunganzeigegerät umfasst: eine Einrichtung zum Empfangen des Teilbildes von dem vorbestimmten Server; und eine Einrichtung zum Anzeigen des Teilbildes.
Dementsprechend kann der vorbestimmte Server das durch das Computerprogramm erzeugte Bild zu dem vorbestimmten Zeilensprunganzeigegerät senden.
In Übereinstimmung mit einem weiteren Aspekt der vorliegenden Erfindung umfasst ein Bilderzeugungsverfahren alle oben beschriebenen Schritte.
Die vorliegende Erfindung wird durch die folgende ausführliche Beschreibung mit Bezug auf die beigefügten Zeichnungen verdeutlicht, die nur beispielhaft aufzufassen sind und die vorliegende Erfindung in keiner Weise einschränken.
Fig. 1A und Fig. 1B sind Ansichten, die das Prinzip der vorliegenden Erfindung erläutern.
Fig. 2 ist eine Ansicht, die ein Vollbild zeigt, in dem das chinesische Zeichen "bi" in weißer Farbe vor einem schwarzen Hintergrund dargestellt ist.
Fig. 3A und Fig. 3B sind Ansichten, welche die Beziehungen der Zeichnungen zwischen den Teilbildern und einem Vollbild zeigen, auf die die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbilds angewendet wird.
Fig. 4A und 4B sind Ansichten, die ein Beispiel eines Bildes zeigen, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 5A und 5B sind Ansichten, die ein Beispiel eines Bildes zeigen, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 6A und 6B sind Ansichten, die ein Beispiel eines Bildes zeigen, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 7A und 7B sind Ansichten, die ein Beispiel eines Bildes zeigen, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 8A und 8B sind Ansichten, die ein Beispiel eines Bildes zeigen, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 9 ist eine Ansicht, die ein Beispiel eines Bildes zeigt, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 10A und 10B sind Ansichten, die eine Helligkeitsdifferenz vor und nach dem Anwenden der vorliegenden Erfindung darstellen.
Fig. 11 ist eine Ansicht, die ein Beispiel eines Bildes zeigt, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 12 ist eine Ansicht eines Beispiels eines Heimspielgeräts in Übereinstimmung mit der Ausführungsform der vorliegenden Erfindung.
Fig. 13 ist ein Diagramm, das ein Beispiel eines Funktionsblocks des Heimspielgeräts in Übereinstimmung mit der Ausführungsform der vorliegenden Erfindung zeigt.
Fig. 14A ist eine schematische Ansicht, die eine Speicherstruktur der Vollbild-Speichereinheit 282 zeigt, und Fig. 14B ist eine schematische Ansicht, die eine Speicherstruktur der Teilbild-Speichereinheit 284 zeigt.
Fig. 15 ist ein Flussdiagramm einer Teilbild- Erzeugungsverarbeitung.
Fig. 16 ist ein Flussdiagramm einer Zeilensyntheseverarbeitung.
Fig. 17 ist ein Diagramm, das ein Beispiel eines Hardwareaufbaus zum Realisieren der Ausführungsform der vorliegenden Erfindung zeigt.
Fig. 18A und Fig. 18B sind Ansichten, die verschiedene Ausführungsformen zeigen, auf welche die vorliegende Erfindung angewendet wird.
Fig. 19A und 19B sind Ansichten, die eine Operation in einer bilinearen Filterschaltung zum Abtasten von vier Punkten darstellen.
Fig. 20A und Fig. 20B sind Ansichten, die verschiedene Ausführungsformen mit jeweils anderen Verarbeitungseinheiten zeigen.
Fig. 21A und 21B sind Ansichten, die das Teilbild vor dem Anwenden der vorliegenden Erfindung auf das in Fig. 2 gezeigte Vollbild zeigen.
Fig. 22 ist eine Ansicht, die das Flimmern vor dem Anwenden der vorliegenden Erfindung auf das in Fig. 2 gezeigte Vollbild darstellt.
Im folgenden wird eine Ausführungsform der vorliegenden Erfindung ausführlich mit Bezug auf die Figuren erläutert.
In der Ausführungsform der vorliegenden Erfindung wird der Fall einer Anwendung einer Anzeigeeinrichtung auf das Fernsehen im NTSC-System und einer Bilderzeugungsvorrichtung auf ein Heimspielgerät erläutert, wobei jedoch zu beachten ist, dass die vorliegende Erfindung nicht auf diese Ausführungsform beschränkt ist.
Weiterhin ist in der Ausführungsform der vorliegenden Erfindung ein Vollbild ein Bild für den vollständigen Bildschirm des Anzeigegeräts, wobei jedoch zu beachten ist, dass das Bild eine Größe aufweisen kann, die größer ist als der vollständige Bildschirm des Anzeigegeräts.
Weiterhin ist in den Erläuterungen ein Teilbild ein Teilbild in einem Zeilensprungabtastsystem und entspricht entweder den ungeraden oder geraden Zeilen auf dem Bildschirm des Anzeigegeräts. Weiterhin wird das Teilbild der ungeraden Zeilen als ungerades Teilbild und wird das Teilbild der geraden Zeilen als gerades Teilbild bezeichnet. Jedes einzelne Teilbild in dem ungeraden oder geraden Teilbild wird jeweils als ungerades oder gerades Teilbild bezeichnet.
Weiterhin kann das Heimspielgerät in der Ausführungsform wie ein Heimspielgerät gemäß einer bekannten Entwicklung alle 1/60 Sekunden ein Vollbild erzeugen.
Zuerst wird im folgenden das Prinzip der vorliegenden Erfindung erläutert.
Die Bilddaten in dem Vollbild und in dem Teilbild umfassen RGB-Werte pro Pixel. Um das Bild mit 16777 tausend Farben in sogenannter Vollfarbe darzustellen, müssen die RGB-Werte pro Pixel 8-Bit-Daten sein, wie sich aus der folgenden Gleichung ergibt:
28(R) × 28(G) × 28(B) = 16.777.216
Für einen Allgemeincomputer ist es möglich, zwei numerische Werte einfach zu mitteln. Das heißt, zwei numerische Werte können mit weniger Operationsschritten (es gibt viele Fälle, in denen der Schritt als Zustand auf einer Ebene der Maschinensprache bezeichnet wird) gemittelt werden, indem eine Bitverschiebungsoperation und eine zusätzliche Operation kombiniert werden. Weiterhin ist es allgemein üblich, dass der Computer auf jeweils einer Basiseinheit von 8 Bit operiert. Deshalb sieht ein für einen Computer vorzuziehender Datentyp jeweils 8 Bit für jeden der RGB-Werte vor.
Fig. 1A ist eine Ansicht, die drei benachbarte Zeilen A, B und C in einem Vollbild zeigt. Im folgenden wird der Fall betrachtet, dass die vorliegende Erfindung auf ein Bild der Zeile B angewendet wird, die eine Zeile des Teilbildes ist.
Fig. 1B ist eine Ansicht, die einen Operationsprozess in Übereinstimmung mit der Ausführungsform der vorliegenden Erfindung zeigt.
In der Ausführungsform der vorliegenden Erfindung, wird ein Bild in den zwei Schritten von Stufe 1 und Stufe 2 synthetisiert.
Zuerst werden in Stufe 1 die Bilddaten einer Zeile, die das Ziel einer Synthetisierung ist (Zielzeile), und einer Zeile direkt über der Zielzeile (obere Zeile) für die Synthetisierung gemittelt, und werden die Bilddaten der Zielzeile und die Bilddaten einer Zeile direkt unter der Zielzeile (untere Zeile) für die Synthetisierung gemittelt. In Fig. 1B wird durch die Synthetisierung der Zeile B und der Zeile A eine synthetische Zeile BU erzeugt. Weiterhin wird durch die Synthetisierung der Zeile B und C eine synthetische Zeile BL erzeugt.
In der Verarbeitung in Stufe 1 werden die Zielzeile und die oben oder unten benachbarte Zeile synthetisiert, werden die obere oder untere benachbarte Zeile nicht synthetisiert und wird eine Zeile zwei Zeilen über oder unter der Zielzeile synthetisiert. Dadurch wird die Helligkeitsdifferenz zwischen benachbarten Zeilen aufgehellt, so dass das Flimmern nur durch die Verarbeitung in Stufe 1 ausreichend reduziert werden kann.
In Übereinstimmung mit einer Vorrichtung, auf die die vorliegende Erfindung angewendet wird, kann aus Gründen der Verarbeitungszeit die Erzeugung eines Teilbildes in dem Schritt von Stufe 1 beendet sein und kann insbesondere die Zielzeile mit entweder der oben oder unten benachbarten Zeile synthetisiert werden. In der Ausführungsform der vorliegenden Erfindung werden die Bilddaten jedoch in einem weiteren Schritt synthetisiert.
Das heißt, dass in Stufe 2 Bilddaten von zwei in Stufe 1 erzeugten synthetischen Zeilen weiter miteinander gemittelt werden, um synthetisiert zu werden. In Fig. 1B werden die synthetische Zeile BU und die synthetische Zeile BL synthetisiert, so dass eine synthetische Zeile B' erzeugt wird. Die synthetische Zeile B' wird auf dem Anzeigegerät angezeigt.
Wie oben beschrieben werden die Zielzeile und die oben benachbarte Zeile synthetisiert und werden die Zielzeile und die unten benachbarte Zeile synthetisiert, wodurch die Helligkeitsdifferenzen zwischen der Zielzeile und der oben benachbarten Zeile und zwischen der Zielzeile und der unten benachbarten Zeile aufgehellt werden können. Folglich kann das Flimmern effektiv reduziert werden.
Weiterhin werden bei der synthetischen Zeile B' nach dem Synthetisieren der synthetischen Zeile BU und der synthetischen Zeile BL noch 50% der Bilddaten (der Farbdaten) der Originalzeile B (25% der Zeile A und 25% der Zeile C) beibehalten. Es ist also möglich, das Bild mit einem ursprünglichen Auflösungsfaktor anzuzeigen.
Es ist also deutlich, dass die Synthese der Zeilen eine Mittelung der RGB-Werte für jedes Pixel in der Zeile bedeutet.
In Übereinstimmung mit dem oben beschriebenen Operationsprozess ist eine dreimalige Operation erforderlich (zweimal in Stufe 1 und einmal in Stufe 2), um eine Zielzeile zu synthetisieren. Dabei verwendet jedoch jede Operation denselben Operationsausdruck für die "Synthese" (obwohl in der tatsächlichen Implementierung jede Operation einen anderen Operationsausdruck ausführt, sind sie aufgrund der bilinearen Filterverarbeitung oder der Alpha-Blending-Verarbeitung konzeptuell gleich). Weiterhin verarbeiten die Operationen jeden der RGB-Werte der Pixel in allen Zeilen des Teilbilds auf gleiche Weise. Obwohl vorgegeben ist, dass das Operationsergebnis der Stufe 1 in Stufe 2 verwendet wird, kann jede Operation auch unabhängig ausgeführt werden.
Es ist deshalb möglich, dass ein Prozessor, der zum Ausführen einer parallelen Verarbeitung in der Form einer Pipeline-Verarbeitung fähig ist (beinahe jeder mit Hochgeschwindigkeit arbeitende Prozessor für etwa ein Heimspielgerät ist zu einer parallelen Verarbeitung in der Lage) mit hoher Geschwindigkeit operiert. Weiterhin kann eine Vorrichtung eine Vielzahl von Prozessoren umfassen, um einfach parallel zueinander zu arbeiten.
Während weiterhin in der tatsächlichen Implementierung eine Schleifenoperation kontinuierlich ausgeführt wird, sind die Daten unabhängig von jeder Schleifenoperation, so dass in geeigneter Weise für die parallele Verarbeitung operiert werden kann.
Die Helligkeit des gesamten Bildschirms oder des Anzeigeobjekts kann geändert werden, indem die vorliegende Erfindung angewendet werden kann, obwohl sie von dem auf dem gesamten Bildschirm anzuzeigenden Bild oder dem Objekt abhängt. Im folgenden wird ein spezifisches Beispiel erläutert. Jeder RGB-Wert wird mit einem Wert zwischen 0 und 255 (28 = 256) bestimmt, um eine Farbe anzugeben. Zum Beispiel wird der RGB-Wert für Weiß durch R = 255, G = 255 und B = 255 angegeben, während der RGB-Wert für Schwarz durch R = 0, G = 0 und B = 0 angegeben wird. Dementsprechend wird der RGB-Wert der durchschnittlichen Farbe zwischen Schwarz und Weiß mit R = 128, G = 128 und B = 128 angegeben.
Wie durch den numerischen Wert angegeben, wird bei Anwendung der vorliegenden Erfindung die Farbe des Objekts (genauer die Farbe des Umrissteils des Objekts) mit der Farbe des Hintergrunds gemischt usw. Deshalb wird der helle Teil des Objekts dunkel, so dass das gesamte Bild dunkler ist als das Original. Wenn also Farben synthetisiert werden, muss die Helligkeit korrigiert werden. Die RGB-Werte sind jedoch numerische Werte, und je höher die RGB-Werte sind, desto heller sind die Farben mit den RGB-Werten, so dass die Helligkeit einfach korrigiert werden kann, indem die RGB-Werte mit einem Koeffizienten größer 1 multipliziert werden.
Zweitens wird im folgenden ein Beispielbild erläutert, auf das die vorliegende Erfindung angewendet wird.
Fig. 2 ist eine Ansicht, die ein Vollbild zeigt, in dem das chinesische Zeichen "bi" in Weiß vor einem schwarzen Hintergrund dargestellt wird. Die Pixel des in den Zeichnungen dargestellten Bildes werden der einfacheren und verständlicheren Darstellung halber vergrößert.
Fig. 3 ist eine Ansicht, welche die Beziehungen der Zeichnungen zwischen dem Teilbild und dem Vollbild (Fig. 4 bis 9 und Fig. 11) angibt, auf das die vorliegende Erfindung auf der Basis des in Fig. 2 gezeigten Vollbildes angewendet wird.
Fig. 4A und 5A zeigen die Ergebnisbilder der Synthese in Stufe 1 auf dem in Fig. 2 gezeigten Vollbild. Fig. 4A zeigt das aus der Zielzeile und der oben benachbarten Zeile synthetisierte Bild, und Fig. 5A zeigt das aus der Zielzeile und der unten benachbarten Zeile synthetisierte Bild.
Fig. 4B und 5B zeigen die Ergebnisbilder der Helligkeitskorrektur der zwei in Fig. 4A und 5A gezeigten Bilder. Der Koeffizient für die Helligkeitskorrektur zum Multiplizieren mit den RGB-Werten ist 1,07.
Fig. 6A und 7A zeigen die Ergebnisbilder der Synthese in Stufe 1 auf dem geraden Teilbild des in Fig. 2 gezeigten Vollbilds. Fig. 6A zeigt das aus der Zielzeile und der oben benachbarten Zeile synthetisierte Bild, und Fig. 7A zeigt das aus der Zielzeile und der unten benachbarten Zeile synthetisierte Bild.
Fig. 6B und 7B zeigen die Ergebnisbilder der Helligkeitskorrektur der zwei in Fig. 6A und 7A gezeigten Bilder.
Fig. 8A zeigt das Ergebnisbild, das in Stufe 2 auf der Basis der in Fig. 4B und 5B gezeigten Bilder synthetisiert wurde. Fig. 8B zeigt das Ergebnisbild, das in Stufe 2 auf der Basis der in Fig. 6B und 7B gezeigten Bilder synthetisiert wurde.
Das Bild des ungeraden Teilbildes (Fig. 8A) und das Bild des geraden Teilbildes (Fig. 8B), die aus der Bildsynthese in Stufe 2 resultieren, werden auf dem Anzeigebildschirm angezeigt. Fig. 9 zeigt ein Vollbild, das sich aus zwei Teilbildern zusammensetzt. Im Vergleich zu dem in Fig. 2 gezeigten Originalbild wird deutlich, das die Helligkeitsdifferenz zwischen benachbarten Zeilen aufgehellt wird.
Für die in Fig. 21A und 21B gezeigten Teilbildern, die nicht in Übereinstimmung mit der vorliegenden Erfindung verarbeitet wurden, wird die Helligkeitsdifferenz zwischen benachbarten Zeilen in Fig. 10A durch Farbe dargestellt. Für das in Fig. 8A und 8B gezeigte Teilbild, das in Übereinstimmung mit der vorliegenden Erfindung verarbeitet wurde, wird die Helligkeitsdifferenz zwischen benachbarten Zeilen in Fig. 10B durch Farbe dargestellt.
Je größer die Helligkeitsdifferenz zwischen benachbarten Zeilen ist, desto näher liegt kommt das Bild an die Farbe Weiß heran, und je kleiner die Helligkeitsdifferenz ist, desto näher kommt das Bild an die Farbe Schwarz heran (siehe Fig. 10A und 10B).
Dabei ist zu beachten, dass vor dem Anwenden der vorliegenden Verarbeitung auf das Bild, die Helligkeitsdifferenz groß ist und ein starkes Flimmern verursacht wird. Weiterhin ist zu beachten, dass durch das Anwenden der vorliegenden Verarbeitung auf das Bild, die Helligkeitsdifferenz extrem klein wird und das Flimmern effektiv reduziert wird.
Fig. 11 zeigt das Bild nach der Verarbeitung in Stufe 1, d. h. das Bild, das durch das in Fig. 4B gezeigte ungerade Teilbild und das in Fig. 6B gezeigte gerade Teilbild angezeigt wird. Wenn man das in Fig. 11 gezeigte Bild mit dem Originalbild vergleicht, wird deutlich, dass die Helligkeitsdifferenz zwischen benachbarten Zeilen in Stufe 1 aufgehellt wird.
Fig. 9 zeigt das Bild nach der Verarbeitung in Stufe 2. Wenn man das in Fig. 9 gezeigte Bild mit dem in Fig. 11 gezeigten Bild vergleicht, wird deutlich, dass ein Bild mit demselben Auflösungsfaktor wie das Originalbild durch die Verarbeitung des Bildes in sowohl Stufe 1 wie Stufe 2 gebildet werden kann.
Im folgenden soll erläutert werden, ob bei Anwendung der vorliegenden Erfindung eine andere Farbe als im Original angezeigt wird, d. h. ob zum Beispiel eine violette Zeile angezeigt wird, wenn eine rote Zeile mit einer benachbarten blauen Zeile synthetisiert wird.
Das Intervall zwischen den auf dem Anzeigebildschirm benachbarten Zeilen ist jedoch extrem klein. Wenn weiterhin eine rote Zeile und eine benachbarte blaue Zeile auf einem Zeilensprunganzeigegerät alternierend angezeigt werden, ist ohnehin aufgrund des Nachleuchtens im Nachbild eine violette Zeile zu sehen. Weil dementsprechend eine Änderung der Farbe auf dem Anzeigebildschirm für das bloße Auge nicht sichtbar ist, wird durch die vorliegende Erfindung kein Problem verursacht.
Fig. 12 zeigt ein Beispiel eines Heimspielgerätes in Übereinstimmung mit der Ausführungsform der vorliegenden Erfindung.
In Fig. 12 steuert ein Spieler beim Ansehen eines auf der Anzeige 1200 angezeigten Spielbildes die Spielsteuereinrichtungen 1202 und 1204, um das in der Heimspielgerät-Haupteinheit ausgeführte Spiel zu spielen. In diesem Fall sind die erforderlichen Daten zum Spielen des Spiels, d. h. das Spielprogramm usw., auf einer CD-ROM 1206, einer IC-Karte 1208, einer Speicherkarte 1212 oder ähnlichem gespeichert, d. h. auf einem Speichermedium, das in der Haupteinheit eingesetzt und aus derselben entfernt werden kann.
Fig. 13 ist ein Diagramm, das einen beispielhaften Funktionsblock eines Heimspielgeräts als Bilderzeugungsvorrichtung zeigt. Der Funktionsblock umfasst eine Operationssteuereinheit 10, eine Verarbeitungseinheit 20, eine Anzeigeeinheit 30 und eine Speichereinheit 40.
In die Operationssteuereinheit 10 werden durch einen Spieler Operationssteuerdaten eingegeben, wobei die Funktion derselben durch eine Hardware einschließlich eines Hebels, einer Taste usw. realisiert werden kann. Wenn die Taste oder ähnliches gedrückt wird, wird ein Operationssteuersignal aus der Operationssteuereinheit 10 an die Verarbeitungseinheit 20 ausgegeben. Das Operationsglied entspricht den Spielsteuereinrichtungen 1202 und 1204 usw., wie in Fig. 12 gezeigt.
Die Verarbeitungseinheit 20 umfasst eine Spieloperationseinheit 22, eine Bilderzeugungseinheit 24, eine Teilbild-Erzeugungseinheit 26 und eine Bilddaten- Temporärspeichereinheit 28. Die Bilddaten- Temporärspeichereinheit 28 umfasst einen Funktionsblock zum Speichern von Daten, so dass die Bilddaten- Temporärspeichereinheit 28 zur Speichereinheit 40 gehört. Weil jedoch die Bilddaten-Temporärspeichereinheit 28 eng mit der Bilderzeugungseinheit 24 und der Teilbild-Erzeugungseinheit 26 zusammenarbeitet, wird die Bilddaten-Temporärspeichereinheit in der Zeichnung und in den Erläuterungen als der Verarbeitungseinheit 20 zugehörig beschrieben.
Die Funktion der Verarbeitungseinheit 20 wird durch Hardware wie etwa eine CPU (CISC, RISC), DSP, ASIC (Gate Array), einen Speicher (ROM, RAM) oder ähnliches realisiert. Die Funktion der Bilddaten-Temporärspeichereinheit 28 wird durch Hardware wie etwa eine RAM, VRAM oder ähnliches realisiert.
Die Spieloperationseinheit 22 führt eine Verarbeitung zum Anordnen von Objekten einschließlich von Zeichen in einem Objektraum (Spielraum), eine Verarbeitung zum Steuern von Bewegungen von Zeichen auf der durch den Computer gesteuerten Seite, sowie eine Verarbeitung zum Einstellen einer virtuellen Kamera als Perspektivpunkt im Spielraum, Objektraum oder ähnlichem auf der Basis des Operationssteuerungssignals und des Spielprogramms 42, der Objektdaten 44 oder ähnlichem duch, die in der Speichereinheit 40 gespeichert sind.
Die Bilderzeugungseinheit 24 führt eine Verarbeitung zum Erzeugen eines Bildes aus der Perspektive der virtuellen Kamera in dem Objektraum durch, die durch die Spieloperationseinheit 22 eingestellt wurde. Weiterhin ist das durch die Spielerzeugungseinheit 24 erzeugte Bild ein alle 1/60 Sekunden (durch ein Teilbild des NTSC-Systems) aufgefrischtes Vollbild. Weiterhin wird das erzeugte Vollbild in einer Vollbild-Speichereinheit 282 der Bilddaten- Temporärspeichereinheit 28 gespeichert.
Die Bilddaten-Temporärspeichereinheit 28 umfasst eine Vollbild-Speichereinheit 282 und eine Teilbild-Speichereinheit 284. Fig. 14A ist eine Ansicht, die eine schematische Speicherstruktur der Vollbild-Speichereinheit 282 zeigt. Fig. 14B ist eine Ansicht, die eine schematische Speicherstruktur der Teilbild-Speichereinheit 284 zeigt.
Die Vollbild-Speichereinheit 282 speichert ein Vollbild in der Form von Bilddaten für den gesamten Bildschirm der Anzeigeeinheit 30. Die Teilbild-Speichereinheit 284 speichert ein Teilbild, das alle 1/60 Sekunden auf der Anzeigeeinheit 30 anzuzeigen ist. Die Vollbild-Speichereinheit 282 weist eine Kapazität von 24 (= 8 + 8 + 8) Bit pro Pixel zum Speichern der RGB- Werte für jedes Pixel auf. Die Teilbild-Speichereinheit 284 weist eine Kapazität von 24 (= 8 + 8 + 8) Bit pro Pixel zum Speichern der RGB-Werte für jedes Pixel auf. Die Speicherkapazität zum Speichern des Teilbildes entspricht also der Hälfte der Speicherkapazität zum Speichern des Vollbildes.
Die Alpha-Blending-Synthese ist eine allgemein durch die Bilderzeugungsvorrichtung verwendete Verarbeitung und wird insbesondere bei einer transluzenten Synthese von Bilddaten zu anderen Bilddaten verwendet. Unter Verwendung dieser Verarbeitung kann das Bild in den zwei Stufen mit weniger Speicherkapazität und mit höherer Geschwindigkeit synthetisiert werden.
Das heißt, dass zuerst die Bilddaten einer Zeile BU, die das Ergebnis der Synthese aus der Zeile A und der Zeile B in Fig. 1B sind, im Speicher der Teilbild-Speichereinheit 284 gespeichert werden. Dann werden die Bilddaten der Zeile BL, die das Ergebnis der Synthese aus der Zeile B und der Zeile C sind, sowie die Bilddaten der Zeile BU, die in der Teilbild- Speichereinheit 284 gespeichert sind, durch eine Alpha- Blending-Synthese synthetisiert. Deshalb ist kein Raum (Speicher) zum temporären Speichern der Bilddaten der Zeile BL erforderlich, so dass die Bilddaten der Zeile B' direkt erzeugt werden können.
Die Teilbild-Erzeugungseinheit 26 führt eine Teilbild- Erzeugungsverarbeitung (Fig. 15) und eine Zeilensyntheseverarbeitung (Fig. 16) in Übereinstimmung mit einem Teilbild-Erzeugungsprogramm 46 durch, das in der Speichereinheit 40 gespeichert wird. Dadurch erzeugt die Teilbild-Erzeugungseinheit 26 ein Teilbild aus dem in der Vollbildeinheit 282 gespeicherten Vollbild. Das heißt, die Teilbild-Erzeugungseinheit 26 synthetisiert die Bilddaten in den zwei Stufen wie weiter oben beschrieben. Weiterhin realisiert die Teilbilderzeugungseinheit 26 eine Synthetisierung mit einer hohen Geschwindigkeit unter Verwendung der Alpha-Blending-Synthese als Teil der Syntheseverarbeitung der Bilddaten.
Das Teilbild wird nach dem Speichern in der Teilbild- Speichereinheit 282 auf der Anzeigeeinheit 30 angezeigt.
Fig. 15 ist ein Flussdiagramm, das eine Teilbilderzeugungsverarbeitung gemäß einem Verarbeitungsalgorithmus des Teilbild-Erzeugungsprogramms 46 zeigt. Fig. 16 ist ein Flussdiagramm, das eine Zeilensyntheseverarbeitung gemäß einem Verarbeitungsalgorithmus des Zeilensyntheseprogramms 462 in der Form einer Subroutine des Teilbild-Erzeugungsprogramms 46 zeigt.
Das Teilbild-Erzeugungsprogramm und das Zeilensyntheseprogramm werden kontinuierlich alle 1/60 Sekunden ausgeführt. Deshalb ist in Fig. 15 und in Fig. 16 nur die Verarbeitung zum Erzeugen von einem einzigen Teilbild dargestellt.
Zuerst werden im folgenden einige Konstanten erläutert, die durch die zwei Programme verwendet werden. Zu den Konstanten gehört Ymin, die die Minimalanzahl der Abtastzeilen auf der Anzeigeeinheit 30 angibt, und Ymax, die die Maximalanzahl der Abtastzeilen auf der Anzeigeeinheit 30 angibt. Auf der Anzeigeeinheit 30 sind also Abtastzeilen zwischen Ymin und Ymax vorhanden. Das Vollbild setzt sich aus den Bildern von der Abtastzeile Ymin bis zur Abtastzeile Ymax zusammen.
Zweitens wird im folgenden die Teilbild- Erzeugungsverarbeitung erläutert.
Wenn in Fig. 15 die Teilbild-Erzeugungsverarbeitung gestartet wird, setzt die Teilbild-Erzeugungseinheit 26 "1" für die Variable f, wenn das zu erzeugende Teilbild ein ungerades Teilbild ist, während die Teilbild-Erzeugungseinheit 26 eine "0" für die Variable f setzt, wenn das Teilbild ein gerades Teilbild ist (Schritt S1). Um eine Synthese der Zielzeile und der oben benachbarten Zeile durch die Zeilensyntheseverarbeitung vorzunehmen, setzt die Teilbild- Erzeugungseinheit 26 eine "1" für die Variable D (Schritt S2). Danach speichert die Teilbild-Erzeugungseinheit 26 den Wert der Konstante Ymin in Variable y (Schritt S3).
Die Teilbild-Erzeugungseinheit 26 speichert einen Gesamtwert der doppelten Werte der Variable y und den Wert der Variable f in der Variable Y (Schritt S4). Danach führt die Teilbild-Erzeugungseinheit 26 die Zeilensyntheseverarbeitung als Subroutine dieser Teilbild-Erzeugungsverarbeitung durch (Schritt S5).
Im folgenden wird die Zeilensyntheseverarbeitung im Detail erläutert. Die grundsätzliche Funktion dieser Verarbeitung besteht darin, eine Synthese einer Zeile mit dem Wert der Variable Y (nachfolgend wird diese Zeile als Y-Zeile bezeichnet) und einer oben oder unten benachbarten Zeile durchzuführen.
Die Teilbild-Erzeugungseinheit 26 setzt die synthetischen Bilddaten der Y-Zeile, die aus der Zeilensyntheseverarbeitung in Schritt S5 resultieren, an einer Position der Teilbild- Speichereinheit 282, die der Zeile der Variable y entsprechen (nachfolgend wird diese Zeile als y-Zeile bezeichnet) (Schritt S6). Danach inkrementiert die Teilbild-Erzeugungseinheit 26 den Wert der Variable y um "1" (Schritt S7) und führt die Verarbeitung von Schritt S4 bis S7 kontinuierlich durch, bis der Wert der Variable y den halben Wert der Konstante Ymax überschreitet (Schritt S8).
Nach der Verarbeitung von Schritt S8, setzt die Teilbilderzeugungseinheit 26 "-1" für die Variable D, um durch die Zeilensyntheseverarbeitung eine Synthese aus der Zielzeile und der unten benachbarten Zeile durchzuführen. Danach speichert die Teilbild-Erzeugungseinheit 26 den Wert der Konstante Ymin in der Variable y (Schritt S10).
Die Teilbild-Erzeugungseinheit 26 addiert den doppelten Wert der Variable y zu dem Wert der Variable f, subtrahiert "1" und speichert den Wert in der Variable y (Schritt 11). Die Teilbild-Erzeugungseinheit 26 führt die Zeilensyntheseverarbeitung aus (Schritt 12).
Als Ergebnis der Zeilensyntheseverarbeitung in Schritt S12 aktualisiert die Teilbild-Erzeugungseinheit 26 die in der Teilbild-Speichereinheit 282 gespeicherten Bilddaten der y- Zeile durch eine Alpha-Blending-Synthese aus den synthetischen Bilddaten der Y-Zeile, die in Schritt S12 synthetisiert wurden, und den Bilddaten der y-Zeile, die in der Teilbild- Speichereinheit 282 gespeichert sind (Schritt S13).
Die Teilbild-Erzeugungseinheit 26 inkrementiert den Wert der Variable y um "1" (Schritt S14). Die Teilbild- Erzeugungseinheit 26 führt die Verarbeitung von Schritt S11 bis Schritt S14 kontinuierlich durch, bis der Wert der Variable y den halben Wert der Konstante Ymax überschreitet (Schritt S15). Wenn die Teilbild-Erzeugungseinheit 26 entscheidet, dass der Wert der Variable y den halben Wert der Konstante Ymax überschreitet, beendet die Teilbild- Erzeugungseinheit 26 die Teilbild-Erzeugungsverarbeitung.
Als nächstes wird im folgenden die Zeilensyntheseverarbeitung erläutert.
Wenn in Fig. 16 die Zeilensyntheseverarbeitung gestartet wird, speichert die Teilbild-Erzeugungseinheit 26 die in der Vollbild-Speichereinheit 282 gespeicherten Bilddaten der Y- Zeile in den Variablen (Rc, Gc, Bc) (Schritt A1). Wenn der Wert der Variable D gleich "1" ist (Schritt A2), entscheidet die Teilbild-Erzeugungseinheit 26, ob der Gesamtwert der Variable Y und der Wert der Variable D die Konstante Ymax überschreitet (Schritt A3).
Wenn entschieden wird, dass der Gesamtwert die Konstante Ymax überschreitet, speichert die Teilbild-Erzeugungseinheit 26 die Bilddaten einer Zeile mit dem Wert der Konstante Ymax (nachfolgend wird die Zeile als Ymax bezeichnet) in den Variablen (R1, G1, B1) (Schritt A4). Wenn entschieden wird, dass der Gesamtwert die Konstante Ymax nicht überschreitet, speichert die Teilbild-Erzeugungseinheit 26 die Bilddaten der Zeile mit dem Gesamtwert der Variable Y und dem Wert der Variable D in den Variablen (R1, G1, B1) (Schritt A5).
Wenn in Schritt A2 der Wert der Variablen D gleich "-1" ist, entscheidet die Teilbild-Erzeugungseinheit 26, ob der Gesamtwert der Variable Y und der Wert der Variable D kleiner ist als die Konstante Ymin (Schritt A6).
Wenn entschieden wird, dass der Gesamtwert nicht kleiner als die Konstante Ymin ist, speichert die Teilbild- Erzeugungseinheit 26 die Bilddaten einer Zeile mit dem Gesamtwert der Variable Y und dem Wert der Variable D in den Variablen (R1, G1, B1) (Schritt A5). Wenn entschieden wird, dass der Gesamtwert kleiner ist als die Konstante Ymin, speichert die Teilbilderzeugungseinheit 26 die Bilddaten einer Zeile mit dem Wert der Konstante Ymin (nachfolgend wird die Zeile als Ymin bezeichnet) in den Variablen (R1, G1, B1) (Schritt A7).
Nach der Verarbeitung in Schritt A4, A5 oder A7 addiert die Teilbild-Erzeugungseinheit 26 die Variablen (Rc, Gc, Bc), die mit dem Wert γ multipliziert wurden, zu den Variablen (R1, G1, B1), die mit dem Wert der Variable δ multipliziert wurden. Und weiterhin multipliziert die Teilbild-Erzeugungseinheit 26 den Wert mit dem Wert der Variable ε und speichert das Ergebnis der Multiplikation in den Variablen (R', G', B'), um die Zeilensyntheseverarbeitung zu beenden (Schritt A8).
In den Erläuterungen der Zeilensyntheseverarbeitung werden die Bilddaten (RGB-Werte) jeder Zeile jeweils kollektiv in der Variable gespeichert, um die Darstellung zu vereinfachen, wobei die Verarbeitung in der praktischen Implementierung jedoch auf jedem Pixel der Zeile ausgeführt wird.
Um weiterhin eine Änderung des Verhältnisses der Synthese zu ermöglichen, wird die Zeilensyntheseverarbeitung unter Verwendung der Variablen γ und δ ausgedrückt. Das heißt, wenn zum Beispiel die Bilder mit einem durchschnittlichen Verhältnis synthetisiert werden, können die Variablen γ und δ "0,5" speichern. Um weiterhin eine Synthetisierung aus den Bildern mit durchschnittlichem Verhältnis in hoher Geschwindigkeit vorzusehen, kann die Verarbeitung in Schritt S8 unter Verwendung der Bit-Verschiebungsoperation und nicht unter Verwendung der Variablen γ und δ durchgeführt werden.
Weiterhin gibt die Variable ε einen Koeffizienten zum Korrigieren der Helligkeit wieder. Um zum Beispiel die Helligkeit um 10 Prozent heller zu korrigieren, kann die Verarbeitung durchgeführt werden, indem "1,1" in der Variablen ε gespeichert wird.
In den Erläuterungen ist das Zeilensyntheseprogramm 462 eine Subroutine des Teilbild-Erzeugungsprogramms 46, wobei es jedoch natürlich auch ein unabhängiges Programm sein kann.
Wie in Fig. 15, Fig. 16 und den vorstehenden Erläuterungen beschrieben, umfasst die vorliegende Teilbild- Erzeugungsverarbeitung viele Schleifen (zum Beispiel die Operation von Schritt S4 bis Schritt S8). Die Daten sind jedoch zwischen den Operationsschleifen in keiner Weise voneinander abhängig, so dass die Daten gleichzeitig parallel verarbeitet werden können. Die Operation für jedes Pixel tritt sehr häufig auf, wobei die Operationen für jedes Pixel jedoch voneinander unabhängig sind, so dass mit einer hohen Geschwindigkeit operiert werden kann.
Die Speichereinheit 40 speichert das Spielprogramm 42 als ein Programm sowie das Teilbild-Erzeugungsprogramm 46, das auszulesen und durch die Teilbild-Erzeugungseinheit 26 zu verarbeiten ist. Das Zeilensyntheseprogramm 462 ist in den Zeichnungen als Subroutine des Teilbild-Erzeugungsprogramm gezeigt, wobei das Zeilensyntheseprogramm 462 jedoch auch separat zum Teilbild-Erzeugungsprogramm 46 vorgesehen sein kann.
Weiterhin speichert die Speichereinheit 40 die Objektdaten 44 als Objekte einschließlich von Zeichen und Daten für die Lichtquelle, die virtuelle Kamera usw. Dabei kann die Speichereinheit 40 die Funktion durch Hardware wie etwa eine CD-ROM, eine Spielkassette, eine IC-Karte, MO, FD, DVD, eine Festplatte, einen Speicher usw. realisieren. Wie oben beschrieben, führt die Verarbeitungseinheit 20 verschiedene Verarbeitungen auf der Basis des Programms und der aus der Speichereinheit 40 ausgelesenen Daten aus.
Eine beispielhafte Hardwarezusammensetzung, welche die Ausführungsform der vorliegenden Erfindung realisieren kann, wird im folgenden mit Bezug auf Fig. 17 erläutert. Die in Fig. 17 gezeigte Vorrichtung umfasst eine CPU 1000, einen ROM 1002, einen RAM 1004, ein Datenspeichermedium 1006, eine Klangerzeugungs-IC 1008, eine Bilderzeugungs-IC 1010 sowie I/O-Ports 1012 und 1014, die über einen Systembus 1016 miteinander verbunden sind, über den die einzelnen Einheiten Daten ein- und ausgeben können. Die Bilderzeugungs-IC 1010 ist mit einem Anzeigegerät 1018 verbunden, die Klangerzeugungs-IC 1008 ist mit einem Lautsprecher 1020 verbunden, der I/O-Port 1012 ist mit einem Steuergerät verbunden und der I/O-Port 1014 ist mit einem Kommunikationsgerät 1024 verbunden.
Das Datenspeichermedium speichert im wesentlichen ein Programm, Bilddaten zum Anzeigen eines Objekts sowie Klangdaten, Spieldaten usw.
Zum Beispiel werden für ein Heimspielgerät eine CD-ROM, eine Spielkassette, eine DVD usw. als Datenspeichermedium verwendet, um das Spielprogramm usw. zu speichern, während eine Speicherkarte usw. als Datenspeichermedium zum Speichern der Spieldaten verwendet wird. Weiterhin werden in Übereinstimmung mit einem kommerziellen Spielgerät als Speicher ein ROM usw. und als Datenspeichermedium eine Festplatte verwendet. In diesem Fall funktioniert der ROM 1002 als Datenspeichermedium 1006.
Das Steuergerät 1022 entspricht einer Spielsteuereinrichtung, einem Steuerbedienfeld usw., um das Entscheidungsergebnis eines Spielers in Übereinstimmung mit dem Fortschritt des Spiels in die Vorrichtungseinheit einzugeben. Das Steuergerät 1022 entspricht den Spielsteuereinrichtungen 1201 bis 1204 in Fig. 12.
Die CPU 1000 steuert die gesamte Vorrichtung und verarbeitet jeden Datentyp in Übereinstimmung mit einem auf dem Datenspeichermedium 1006 gespeicherten Programm, einem im ROM 1002 gespeicherten Systemprogramm (Initialdaten der gesamten Vorrichtung usw.), einem von dem Steuergerät 1022 eingegebenen Signal usw. Der RAM 1004 ist eine Speichereinheit für die Verwendung als Operationsbereich der CPU 1000 usw. und entspricht der in Fig. 13 gezeigten Bilddaten- Temporärspeichereinheit 28. Weiterhin speichert der RAM 1004 die vorbestimmten Daten des Datenspeichermediums 1006 und des ROMs 1002, das Operationsergebnis der CPU 1000 oder ähnliches.
Eine derartige Vorrichtung umfasst die Klangerzeugungs-IC 1008 und die Bilderzeugungs-IC 1010, um entsprechende Spielklänge und -bilder auszugeben.
Die Klangerzeugungs-IC 1008 ist eine integrierte Schaltung zum Erzeugen von Spielklängen wie einem Klangeffekt, einer Hintergrundmusik oder ähnlichem auf der Basis der im Datenspeichermedium 1006 oder ROM 1002 gespeicherten Daten.
Der durch die Klangerzeugugns-IC 1008 erzeugte Spielklang wird durch den Lautsprecher 1020 ausgegeben.
Die Bilderzeugungs-IC 1010 ist eine integrierte Schaltung zum Erzeugen von Pixeldaten für die Anzeige auf dem Anzeigegerät 1018 auf der Basis der aus dem RAM 1004, dem ROM 1002, dem Datenspeichermedium 1006 oder ähnlichem gesendeten Bilddaten. Der in Fig. 13 gezeigte Funktionsblock für die Bilderzeugungs-IC gehört zu der Bilderzeugungseinheit 24 und der Teilbild-Erzeugungseinheit 26, wobei es jedoch auch möglich ist, die Funktion des Funktionsblocks durch die CPU 1000 zu realisieren.
Das Anzeigegerät 1018 kann durch einen CRT-, LCD- oder TV- Bildschirm, eine Plasmaanzeige, einen Projektor oder ähnliches realisiert werden.
Das Kommunikationsgerät 1024 kommuniziert verschiedene Daten für die Verwendung im Spielgerät zwischen dem Spielgerät und anderen Einheiten. Das Kommunikationsgerät 1024 wird verwendet, um die vorbestimmten Daten in Übereinstimmung mit dem Spielprogramm zu/von einem anderen verbundenen Spielgerät zu senden/zu empfangen oder die Daten des Spielprogramms oder ähnliches über die Kommunikationsleitung zu senden/zu empfangen.
Verschiedene Typen von Prozessen wie das Spiel, die Teilbilderzeugungsverarbeitung, die Zeilensyntheseverarbeitung usw. werden durch das Datenspeichermedium 1006 realisiert, um das Programm usw. zum Ausführen der Prozesse zu speichern und die CPU 1000, die Bilderzeugungs-IC 1010, die Klangerzeugungs- IC 1008 usw. in Übereinstimmung mit dem Programm zu betreiben.
Fig. 18A zeigt ein Beispiel für die Anwendung der vorliegenden Erfindung auf ein kommerzielles Spielgerät. Ein Spieler spielt ein Spiel, indem er einen Hebel 1102, eine Taste 1104 usw. betätigt, während er ein auf der Anzeige 1100 angezeigtes Spiel anschaut. Auf einer Systemplatte (Leiterplatte) 1106 in dem kommerziellen Spielgerät sind verschiedene Prozessoren, verschiedene Speicher usw. vorgesehen. Weiterhin sind Daten (Programme und Daten) zum Ausführen der verschiedenen Teile der vorliegenden Erfindung wie etwa einer Teilbild-Erzeugungsverarbeitung usw. in einem Speicher 1108 gespeichert, der als Speichermedium auf der Systemplatte 1106 vorgesehen ist (diese Daten werden nachfolgend als Speicherdaten bezeichnet).
Fig. 18B zeigt ein Beispiel für die Anwendung der vorliegenden Erfindung auf ein System mit einer Hostvorrichtung 1300 und Terminals 1304-1 bis 1304-n, die über ein Netzwerk 1302 (das Netzwerk kann ein kleinräumiges Netzwerk wie ein LAN oder ein großräumiges Netzwerk wie das Internet sein und auf drahtlosen oder drahtgebundenen Verbindungsschaltungen aufbauen) mit der Hostvorrichtung 1300 verbunden sind. In diesem Fall sind die oben genannten Speicherdaten in einem Datenspeichermedium 1306 wie etwa einer Magnetplatte, einem Magnetband, einem Speicher oder einer ähnlichen Einrichtung gespeichert, die durch die Hostvorrichtung 1300 gesteuert werden kann. Wenn die Terminals 1304-1 bis 1304-n das Spielbild und den Spielklang im Standalone-Betrieb erzeugen können, sendet die Hostvorrichtung 1300 die oben genannten Speicherdaten, die das Spielprogramm zum Erzeugen des Spielbilds und des Spielklangs umfassen, an die Terminals 1304-1 bis 1304-n.
Die Hostvorrichtung 1300 kann ein Spielbild und einen Spielklang erzeugen, indem sie die Teilbild- Erzeugungsverarbeitung usw. auf der Basis der oben genannten auf dem Datenspeichermedium gespeicherten Speicherdaten ausführt und die Terminals 1304-1 bis 1304-n das Spielbild auf den Terminals anzeigen lässt, indem sie das Spielbild und den Spielklang an die Terminals sendet. In diesem Fall erzeugt die Hostvorrichtung 1300 das Teilbild (Spielbild) und sendet es an die Terminals 1304-1 bis 1304-n ohne durch die Terminals gesteuert zu werden, wobei die Hostvorrichtung 1300 jedoch auch das Teilbild (Spielbild) in Übereinstimmung mit Eingaben von jedem der Terminals 1304-1 bis 1304-n erzeugen und senden kann. Wenn das Teilbild (Spielbild) von der Hostvorrichtung 1300 an jedes Terminal geschickt wird, wird vorzugsweise eine Leitungsverbindung mit einer hohen Geschwindigkeit wie etwa ADSL verwendet.
Bei dem in Fig. 18B gezeigten Aufbau können sich die Hostvorrichtung (Server) und die Terminals verschiedene Einheiten der vorliegenden Erfindung teilen, so dass dieselben individuell ausführt werden. Weiterhin können die Speicherdaten zum Ausführen jedes Teils der vorliegenden Erfindung auf die Hostvorrichtung (Server) und die Terminals verteilt sein, so dass dieselben individuell gespeichert werden.
Das mit dem Netzwerk verbundene Terminal kann ein Heimspielgerät wie in Fig. 12 oder ein kommerzielles Heimspielgerät sein. Weiterhin kann der in Fig. 18B gezeigte Aufbau realisiert werden, indem ein kommerzielles Spielgerät als Hostvorrichtung und einige Heimspielgeräte als Terminals verwendet werden.
Die vorliegende Erfindung wurde mit Bezug auf die oben beschriebene Ausführungsform erläutert, wobei jedoch zu beachten ist, dass die vorliegende Erfindung keineswegs auf die beschriebene Ausführungsform beschränkt ist, sondern dass verschiedene Änderungen und Modifikationen vorgesehen werden können, ohne dass dadurch der Erfindungsumfang verlassen wird.
Während zum Beispiel das Heimspielgerät in der beschriebenen Ausführungsform das Teilbild nach der Erzeugung des Vollbildes erzeugt, kann das Heimspielgerät das Vollbild auch direkt erzeugen. Um also wie in Fig. 1 gezeigt eine Synthetisierung aus den Bilddaten für die Zeile B vorzunehmen, sind die Bilddaten für die Zeile A und die Bilddaten für die Zeile B erforderlich, während ansonsten keine Bilddaten von anderen Zeilen erforderlich sind. Es ist deshalb möglich, eine Synthetisierung aus den Bilddaten für die Zeile B unmittelbar nach dem Erzeugen der Bilddaten aus den Zeilen A bis C vorzunehmen. Es ist dementsprechend nicht erforderlich, die Speicherkapazität für die Vollbild-Speichereinheit 282 vorzubereiten, während es jedoch erforderlich ist, die Speicherkapazität für die Teilbild-Speichereinheit 284 vorzubereiten, was für ein Gerät mit einer eingeschränkten Speicherkapazität effektiv ist.
Weiterhin wurde in der vorstehenden Beschreibung die Operation zum Korrigieren der Helligkeit auf dem Syntheseergebnis von Stufe 1 wie zum Beispiel in Fig. 3 ausgeführt. Die Operation zum Korrigieren der Helligkeit kann jedoch auch auf dem Syntheseergebnis von Stufe 2 ausgeführt werden. Ein Überlauf und ein Unterlauf können aufgrund der Obergrenze von jedem der RGB-Werte auftreten (die Obergrenze beträgt in der vorliegenden Ausführungsform "255"), so dass die Stufe, in der die Operation zum Korrigieren der Helligkeit ausgeführt wird, bei Bedarf geändert werden kann.
Während weiterhin die Ausführungsform der vorliegenden Erfindung mit Bezug auf ein Standbild mit groben Pixeln wie in Fig. 2 erläutert wurde, kann die vorliegende Erfindung natürlich auch auf ein Bewegtbild mit kleineren Pixeln angewendet werden. Die vorliegende Erfindung ist beim Reduzieren des Flimmerns bei Bewegtbildern sogar noch effektiver als bei einem Standbild.
Während in der Ausführungsform der vorliegenden Erfindung alle Verarbeitungen durch Software ausgeführt wurden, kann ein Teil aller Verarbeitungen durch Hardware ausgeführt werden. Zum Beispiel umfasst eine Vorrichtung zum Erzeugen eines Bildes gewöhnlich einen Mechanismus zum Ausführen einer Pixelinterpolationsverarbeitung. Eine Verarbeitung kann unter Verwendung eines Mechanismus zum Ausführen der Pixelinterpolationsverarbeitung mit einer höheren Geschwindigkeit durchgeführt werden.
Insbesondere wird zum Beispiel der Fall erläutert, dass die Vorrichtung eine bilineare Filterschaltung zum Abtasten von vier Punkten in der Pixelinterpolationsverarbeitung umfasst. Wenn wie in Fig. 19A gezeigt die Farbdaten des Interpolationspunktes x innerhalb der vier Pixel A, B, C und D (es können auch vier Texel verwendet werden) berechnet werden, wird die folgende Operation in einer bilinearen Schaltung ausgeführt. x = (1 - α) × (1 - β) × A + α × (1 - β) × B + (1 - α) × β × C + α × β × D
wobei A, B, C und D jeweils Farbdaten für jedes Pixel wiedergeben.
Dabei ist problematisch, dass die Farbdaten für rechte und linke Pixel durch das Abtasten von vier Punkten synthetisiert werden. Das heißt, dass es bei Anwendung der vorliegenden Erfindung erforderlich ist, aus Farbdaten von nur den oberen und unteren Pixeln ohne Synthetisierung der rechten und linken Pixel zu synthetisieren.
Deshalb verwendet die Vorrichtung nach dem horizontalen Verschieben der Pixelpositionen um 0,5 Pixel eine bilineare Filterschaltung. Das heißt, dass wie in Fig. 19B gezeigt, als Ergebnis der horizontalen Positionsverschiebung der Pixel um 0,5 Pixel die durch die bilineare Filterschaltung abzutastenden Pixel zu den Pixeln A (100%), B (0%), C (100%) und D (0%) geändert werden. In diesem Fall kann eine Synthetisierung aus nur den Farbdaten für die oberen und unteren Pixel ohne Synthetisierung aus den Farbdaten für die rechten und linken Pixel vorgenommen werden. Wenn weiterhin gleichmäßig aus den Farbdaten der Pixel synthetisiert wird, ist der Interpolationspunkt X im Zentrum der vier abzutastenden Punkte. Weiterhin kann in Schritt A5 der in Fig. 16 gezeigten Zeilensyntheseverarbeitung die Farbdatensyntheseverarbeitung unter Verwendung der bilinearen Filterschaltung auf das Abtasten von vier Punkten angewendet werden.
Wenn weiterhin die Verarbeitung sowie die bilineare Filterschaltung in der Form vorn Software realisiert wird, kann einen Anwendung wie oben beschrieben vorgenommen werden.
In der Ausführungsform der vorliegenden Erfindung wird die Synthese des Bildes (der Farbdaten) für jeweils die Einheit von einer Zeile ausgeführt, um alle Pixel in der nächsten Zeile zu synthetisieren, nachdem alle Pixel in der ersten Zeile synthetisiert wurden. Die Bildsynthese muss jedoch nicht für jeweils die Einheit einer Zeile ausgeführt werden.
Zum Beispiel kann die oben beschriebene Bildsyntheseverarbeitung auf dem Vollbild in der vertikalen Richtung für jeweils eine Verarbeitungseinheit von 24 Pixel mal 16 ausgeführt werden. Weiterhin kann die oben beschriebene Bildsyntheseverarbeitung wie in Fig. 20B gezeigt auf dem Vollbild in der horizontalen Richtung ausgeführt werden. Obwohl die Größe der Verarbeitungseinheit von zum Beispiel der Hardware abhängt, kann die Größe in Übereinstimmung mit der Kapazität des Zwischen- oder Seitenspeichers entschieden werden.
Die Verarbeitung der vorliegenden Erfindung wird in der. Form eines Programms (Software) realisiert, so dass das Anwendungsfeld der vorliegenden Erfindung einfach erweitert werden kann, indem die Verarbeitung wie folgt ausgeführt wird.
Es kann ein Einrichtungsfenster angezeigt werden, in dem ein Benutzer freiwillig auswählen und ändern kann, ob die Teilbild-Erzeugungsverarbeitung der vorliegenden Erfindung ausgeführt werden soll und ob und bis zu welchem Grad die Helligkeit korrigiert werden soll. Weiterhin kann das Teilbild in Übereinstimmung mit dem Inhalt des Einrichtungsfensters erzeugt werden.
Es kann auch automatisch in Übereinstimmung mit der Helligkeit des gesamten Vollbildes entschieden werden, ob ein Teilbild erzeugt wird. Wenn die Vorrichtung zum Ausführen des Programms (der Software) der vorliegenden Erfindung ein Spielgerät ist, kann in Übereinstimmung damit, ob die Zeit zum Erzeugen eines Spielbildschirminhalts von einem Vollbild ausreicht, automatisch entschieden werden, ob durch die vorliegende Erfindung ein Teilbild erzeugt wird.
Im folgenden wird der Haupteffekt der vorliegenden Erfindung zusammengefasst.
Die Helligkeitsdifferenz zwischen zwei benachbarten Zeilen auf dem Bildschirm des Anzeigegeräts kann aufgehellt werden und das Flimmern kann effektiv reduziert werden. Außerdem kann die vorliegende Erfindung durch Software realisiert werden, so dass es zum Beispiel nicht erforderlich ist, eine exklusive Teilbild-Erzeugungseinrichtung in einem Personalcomputer oder einer Spieleinrichtung zu integrieren. Folglich kann der im Personalcomputer oder im Spielgerät enthaltene Prozessor verwendet werden. Obwohl die Operation für die Bildsynthese in Stufe 2 auf die Verwendung des Operationsergebnisses in Stufe 1 beschränkt ist, kann auf allen Daten individuell operiert werden. Folglich kann auf allen Daten mit hoher Geschwindigkeit operiert werden.

Claims (25)

1. Verfahren zur Synthetisierung von Farbdaten zur Durchführung in einer zentralen Verarbeitungseinheit (1000), die mit einer Speichereinrichtung (1004, 1002) und einem Anzeigegerät (1018) verbunden ist, mit dem Schritt:
Synthetisieren von Farbdaten in einer Zielzeile (B) und von Farbdaten in einer der Zielzeile benachbarten Zeile (A, C) in einem Vollbild mit einem vorbestimmten Verhältnis, um synthetische Farbdaten zu erzeugen, um ein Teilbild für eine Zeilensprunganzeige auf der Basis der synthetisierten Farbdaten zu erzeugen,
dadurch gekennzeichnet, dass
das Synthetisieren der Farbdaten pro Verarbeitungsteilfläche erfolgt, die eine rechteckige Pixelgruppe ist, deren Höhe sich aus der Zeilenzahl des Vollbildes geteilt durch eine erste ganze Zahl ergibt, wobei die erste ganze Zahl kleiner als die Zeilenzahl ist, und deren Breite sich aus der Zahl der Pixel pro Zeile geteilt durch eine zweite ganze Zahl ergibt, die kleiner als die Zahl der Pixel pro Zeile ist.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Schritt des Synthetisierens die folgenden Unterschritte umfasst:
Erzeugen erster synthetisierter Farbdaten (BU) aus den Farbdaten der Zielzeile (B) und von Farbdaten einer oben zur Zielzeile (B) benachbarten Zeile (A) in dem Vollbild mit einem ersten vorbestimmten Verhältnis,
Erzeugen zweiter synthetisierter Farbdaten (BL) aus den Farbdaten der Zielzeile (B) und von Farbdaten einer zur Zielzeile unten benachbarten Zeile (C) in dem Vollbild mit einem zweiten vorbestimmten Verhältnis,
Erzeugen dritter synthetisierter Farbdaten (B') aus den ersten synthetisierten Farbdaten (BU) und den zweiten synthetisierten Farbdaten (BL) mit einem dritten vorbestimmten Verhältnis, um ein Teilbild zur Anzeige auf dem Anzeigegerät (1018) zu berechnen.
3. Verfahren nach einem der Ansprüche 1 oder 2, das den weiteren Schritt umfasst:
Ausführen einer transluzenten Syntheseverarbeitung (S9-S15) zum Synthetisieren der Farbdaten.
4. Verfahren nach Anspruch 2, wobei die Farbdaten der Zielzeile und die der oben zur Zielzeile benachbarten Zeile bei der Erzeugung der ersten synthetisierten Farbdaten das gleiche Gewicht erhalten und die Farbdaten der Zielzeile und die der unten zur Zielzeile benachbarten Zeile (C) bei der Erzeugung der zweiten synthetisierten Farbdaten das gleiche Gewicht erhalten.
5. Verfahren nach Anspruch 4, gekennzeichnet durch folgende Schritte:
Ausführen einer bilinearen Filterverarbeitung zum Abtasten von vier Punkten (Fig. 19: A, B, C, D) für eine vorbestimmte Pixelinterpolationsverarbeitung, und
Synthetisieren der Farbdaten der Zielzeile und der Farbdaten der oben und unten benachbarten Zeile durch das kontinuierliche Ausführen einer bilinearen Filterverarbeitung nach dem horizontalen Verschieben der Abtastpositionen um ein halbes Pixel jeweils beim Erzeugen der ersten synthetisierten Farbdaten sowie der zweiten und dritten synthetisierten Farbdaten.
6. Verfahren nach Anspruch 5, weiterhin gekennzeichnet durch den folgenden Schritt:
Synthetisieren von Farbdaten eines linken oder rechten Endpixels in der Zielzeile und von Farbdaten des linken oder rechten Endpixels der oben oder unten benachbarten Zeile jeweils durch das gefaltete Ausführen einer bilinearen Filterverarbeitung.
7. Verfahren nach wenigstens einem der Ansprüche 1 bis 6, gekennzeichnet durch den folgenden Schritt:
Erzeugen des Teilbilds, das einem in der Längsrichtung komprimierten Vollbild entspricht.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Vollbild die Größe eines Bildschirms der Zeilensprunganzeige zum Anzeigen des Teilbildes aufweist oder größer als der Bildschirm ist.
9. Verfahren nach einem der Ansprüche 1 bis 8, gekennzeichnet durch einen der folgenden Schritte:
Ausnehmen einer oberen oder unteren Endzeile im Vollbild von der Synthetisierung der Farbdaten, oder
gefaltetes Synthetisieren von Farbdaten der oben oder unten benachbarten Zeile im Vollbild.
10. Verfahren nach einem der Ansprüche 1 bis 9, gekennzeichnet durch den folgenden Schritt:
Aufhellen der Farbdaten des Teilbildes.
11. Verfahren nach Anspruch 10, gekennzeichnet durch folgenden Schritt:
Ändern einer Stufe zum Korrigieren der Helligkeit der Farbdaten des Teilbildes.
12. Verfahren nach Anspruch 10 oder 11, gekennzeichnet durch die folgenden Schritte:
Multiplizieren der Farbdaten des Teilbildes mit einem vorbestimmten Koeffizienten, um die Helligkeit derselben zu korrigieren, und
Korrigieren der Helligkeit der Farbdaten des Teilbildes nach dem Synthetisieren der Farbdaten von Zeilen des Vollbildes, wenn wenigstens ein Teil der Farbdaten des Vollbildes einen vorbestimmten Schwellwert überschreitet.
13. Verfahren nach einem der Ansprüche 1 bis 12, dadurch gekennzeichnet, dass die Zielzeile der Synthese sich in Übereinstimmung damit ändert, ob ein ungerades Teilbild oder ein gerades Teilbild erzeugt wird.
14. Verfahren nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, dass sich das Vollbild aus Bilddaten für einen vollständigen Bildschirm der Zeilensprunganzeige pro Zeit zum Anzeigen der Teilbilder zusammensetzt.
15. Verfahren nach einem der Ansprüche 1 bis 14, gekennzeichnet durch den folgenden Schritt:
Aktivieren/Deaktivieren der Erzeugung des Teilbildes.
16. Verfahren nach einem der Ansprüche 1 bis 15, gekennzeichnet durch die folgenden Schritte:
Ausführen eines vorbestimmten Spiels, und
Erzeugen eines Spielbildes des vorbestimmten Spiels, das sich aus einem Teilbild mit reduziertem Flimmern zusammensetzt.
17. Verfahren nach Anspruch 16, gekennzeichnet durch den folgenden Schritt:
Aktivieren/Deaktivieren der Erzeugung des Spielbilds, das sich aus dem Teilbild mit reduziertem Flimmern zusammensetzt, in Übereinstimmung mit dem Fortschritt des vorbestimmten Spiels.
18. Gerät mit einer zentralen Verarbeitungseinheit (1000),
einer Speichereinheit (1002, 1004),
einem Anzeigegerät (1018), und
einer Kommunikationseinheit (1016), die die zentrale Verarbeitungseinheit (1000), die Speichereinheit (1004) sowie das Anzeigegerät (1018) verbindet,
dadurch gekennzeichnet, dass
die zentrale Verarbeitungseinheit die in einem der Ansprüche 1 bis 17 definierten Verfahrens-Schritte ausführt.
19. Gerät nach Anspruch 18, dadurch gekennzeichnet, dass es ferner eine Einrichtung zum Lesen eines Datenspeichermediums (1006) umfasst.
20. Gerät nach Anspruch 18 oder 19, dadurch gekennzeichnet, dass es sich bei dem Gerät um ein Spielgerät handelt.
21. Datenspeichermedium, das mit einem Gerät nach einem der Ansprüche 18 bis 20 verbindbar ist und dem Gerät in dem Datenspeichermedium gespeicherte Daten in der Weise liefern kann, dass die gelieferten Daten das Gerät veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 17 durchzuführen.
22. Computerprogrammprodukt mit auf einem computerlesbaren Medium gespeicherten Daten zum Durchführen aller Schritte des Verfahrens in Übereinstimmung mit wenigstens einem der Ansprüche 1 bis 17, wenn das Computerprogrammprodukt auf einem Gerät nach einem Verfahren gemäß den Ansprüche 18 bis 20 ausgeführt wird.
23. Computerprogrammprodukt nach Anspruch 22, weiterhin gekennzeichnet durch Daten, die die zentrale Verarbeitungseinheit veranlassen, folgende Schritte auszuführen, wenn das Computerprogrammprodukt auf einem Heimspielgerät ausgeführt wird:
Ausführen eines vorbestimmten Spiels, und
Erzeugen eines Spielbildes des vorbestimmten Spiels, das sich aus einem Teilbild mit reduziertem Flimmern zusammensetzt.
24. Computersystem mit einem vorbestimmten Server (1300) und einem vorbestimmten Terminal (1304-1 bis 1304-n), die miteinander über eine vorbestimmte elektrische Kommunikationsleitung (1302) verbunden sind,
wobei der vorbestimmte Server umfasst: auf einem computerlesbaren Medium (1306) gespeicherte Daten zum Durchführen von allen Schritten des Verfahrens nach einem der Ansprüche 1 bis 17 und eine Einrichtung zum Senden der Daten an das vorbestimmte Terminal, und
wobei das vorbestimmte Terminal umfasst: eine Einrichtung zum Empfangen des Computerprogramms von dem vorbestimmten Server, und eine Einrichtung zum Erzeugen des Teilbildes mit reduziertem Flimmern durch das Ausführen des Verfahrens nach einem der Ansprüche 1 bis 17.
25. Computersystem mit einem vorbestimmten Server (1300) und einem vorbestimmten Zeilensprunganzeigegerät, die miteinander über eine vorbestimmte elektrische Kommunikationsleitung (1302) verbunden sind,
wobei der vorbestimmte Server umfasst: auf einem computerlesbaren Medium (1306) gespeicherte Daten zum Durchführen des Verfahrens nach einem der Ansprüche 1 bis 17 und eine Einrichtung zum Senden des durch obiges Verfahren erzeugten Teilbildes an das vorbestimmte Zeilensprunganzeigegerät, und
wobei das vorbestimmte Zeilensprunganzeigegerät umfasst: eine Einrichtung zum Empfangen des Teilbildes von dem vorbestimmten Server, und eine Einrichtung zum Anzeigen des Teilbildes.
DE2000152481 2000-07-19 2000-10-23 Verfahren zur Synthetisierung von Farbdaten zur Durchführung in einer zentralen Verarbeitungseinheit, Gerät, Datenspeichermedium, Computerprogrammprodukt sowie Computersysteme Expired - Fee Related DE10052481C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000219810A JP2002044486A (ja) 2000-07-19 2000-07-19 情報記憶媒体、画像生成装置、画像生成システム、画像生成方法、及び画像生成プログラム

Publications (2)

Publication Number Publication Date
DE10052481A1 DE10052481A1 (de) 2002-01-31
DE10052481C2 true DE10052481C2 (de) 2003-06-05

Family

ID=18714524

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2000152481 Expired - Fee Related DE10052481C2 (de) 2000-07-19 2000-10-23 Verfahren zur Synthetisierung von Farbdaten zur Durchführung in einer zentralen Verarbeitungseinheit, Gerät, Datenspeichermedium, Computerprogrammprodukt sowie Computersysteme

Country Status (7)

Country Link
JP (1) JP2002044486A (de)
CA (1) CA2322250A1 (de)
DE (1) DE10052481C2 (de)
ES (1) ES2172430A1 (de)
FR (1) FR2812159B1 (de)
GB (1) GB2365298B (de)
IT (1) ITMI20002389A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738902A (zh) * 2020-03-12 2020-10-02 超威半导体(上海)有限公司 基于双线性滤波图像层次的大卷积核实时近似拟合方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5510843A (en) * 1994-09-30 1996-04-23 Cirrus Logic, Inc. Flicker reduction and size adjustment for video controller with interlaced video output
US5663772A (en) * 1994-03-29 1997-09-02 Matsushita Electric Industrial Co., Ltd. Gray-level image processing with weighting factors to reduce flicker
US5742349A (en) * 1996-05-07 1998-04-21 Chrontel, Inc. Memory efficient video graphics subsystem with vertical filtering and scan rate conversion

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3953668A (en) * 1975-05-27 1976-04-27 Bell Telephone Laboratories, Incorporated Method and arrangement for eliminating flicker in interlaced ordered dither images
NL7900324A (nl) * 1979-01-16 1980-07-18 Philips Nv Rasterinterpolatieschakeling.
US4454506A (en) * 1981-09-04 1984-06-12 Bell Telephone Laboratories, Incorporated Method and circuitry for reducing flicker in symbol displays
JPH07296146A (ja) * 1994-04-25 1995-11-10 Nippon Telegr & Teleph Corp <Ntt> 画像表示方法
JP2832927B2 (ja) * 1994-10-31 1998-12-09 日本ビクター株式会社 走査線補間装置及び走査線補間用動きベクトル検出装置
AU7435696A (en) * 1995-10-13 1997-04-30 Apple Computer, Inc. Method and apparatus for video scaling and convolution for displaying computer graphics on a conventional television monitor
AU8171998A (en) * 1997-06-26 1999-01-19 Charles Schwab & Co., Inc. System and method for automatically providing financial services to a user usingspeech signals
US5963262A (en) * 1997-06-30 1999-10-05 Cirrus Logic, Inc. System and method for scaling images and reducing flicker in interlaced television images converted from non-interlaced computer graphics data
US6130723A (en) * 1998-01-15 2000-10-10 Innovision Corporation Method and system for improving image quality on an interlaced video display
JP4628524B2 (ja) * 2000-06-29 2011-02-09 三菱電機株式会社 画像合成処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5663772A (en) * 1994-03-29 1997-09-02 Matsushita Electric Industrial Co., Ltd. Gray-level image processing with weighting factors to reduce flicker
US5510843A (en) * 1994-09-30 1996-04-23 Cirrus Logic, Inc. Flicker reduction and size adjustment for video controller with interlaced video output
US5742349A (en) * 1996-05-07 1998-04-21 Chrontel, Inc. Memory efficient video graphics subsystem with vertical filtering and scan rate conversion

Also Published As

Publication number Publication date
ITMI20002389A1 (it) 2002-05-06
GB2365298A (en) 2002-02-13
CA2322250A1 (en) 2002-01-19
DE10052481A1 (de) 2002-01-31
GB2365298B (en) 2002-06-26
JP2002044486A (ja) 2002-02-08
ES2172430A1 (es) 2002-09-16
FR2812159A1 (fr) 2002-01-25
FR2812159B1 (fr) 2008-09-26
GB0024469D0 (en) 2000-11-22

Similar Documents

Publication Publication Date Title
DE68928744T2 (de) Verfahren zum senkrechten Filtern bei rasterabgetasteten Anzeigevorrichtungen
DE60226034T2 (de) Verfahren und vorrichtung zur kompensation von einbrenneffekten bei anzeigevorrichtungen
DE69708270T2 (de) Videobildmischung in einem heimkommunikationsterminal
DE69937327T2 (de) Benutzerschnittstelle zum Auslösen einer endgültigen Abtastung mittels Verschiebung und Ablagerung
DE68926317T2 (de) Bilderzeugungsgerät
DE60100645T2 (de) Anzeigegerät zur Erzeugung von zwischenliegenden Graustufen und Verfahren zur Verarbeitung von Bildsignalen
DE69532016T2 (de) Bildverarbeitungsgerät und -verfahren
DE69839039T2 (de) Vorrichtung und verfahren zur skalierung und flickerreduktion mit dynamischer koeffizientengewichtung
DE69611347T2 (de) Anzeigevorrichtung mit einer Vielzahl von Schirmen
DE60017600T2 (de) Digitales bilderzeugungsverfahren
DE69417476T2 (de) Fernsehgerät fähig zum Vergrössern und Verkleinern des Bildes
DE4332573C2 (de) Videographiksystem zum Anzeigen von Signalverläufen auf einem Videomonitor
DE60033779T2 (de) Bildanzeigegerät und verfahren und bildentwicklungsvorrichtung und verfahren
DE69823593T2 (de) Fehlerdiffusion für Farbhalbtonrasterung mit Verringerung der lokalen Helligkeitsänderung
DE69330397T2 (de) Bildverarbeitungsgerät
DE69622961T2 (de) Verfahren und Vorrichtung zur Darstellung von Zeichen
DE69419546T2 (de) Farbanzeigevorrichtung mit Plasmaanzeigetafel
DE69424451T2 (de) Halbtonzitteroptimierungstechniken
DE19920812A1 (de) Einrichtung zum Erzeugen einer interpolierten Videozeile
DE10335497B4 (de) Anzeigesystem und Verfahren zum Eliminieren eines Nachleuchtbildes in dem Anzeigesystem
DE3751035T2 (de) Videosignalverarbeitungssysteme.
DE4143074A1 (de) Verfahren und einrichtung zum umformatieren verschachtelter videodaten zur darstellung auf einem computer-ausgabedisplay
DE19818018B4 (de) Benutzerschnittstelle zum Auswählen der Empfindlichkeit eines Scanners
EP2017784A2 (de) Verfahren zur Bearbeitung einer Bildfolge mit aufeinanderfolgenden Videobildern zur Verbesserung der räumlichen Auflösung
DE10315442A1 (de) Verfahren und Schaltung zur Skalierung von Rasterbildern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8304 Grant after examination procedure
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20140501