JP4672821B2 - 補間用のラインバッファを画素のルックアップテーブルとして用いる方法及び装置 - Google Patents
補間用のラインバッファを画素のルックアップテーブルとして用いる方法及び装置 Download PDFInfo
- Publication number
- JP4672821B2 JP4672821B2 JP52579399A JP52579399A JP4672821B2 JP 4672821 B2 JP4672821 B2 JP 4672821B2 JP 52579399 A JP52579399 A JP 52579399A JP 52579399 A JP52579399 A JP 52579399A JP 4672821 B2 JP4672821 B2 JP 4672821B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- line buffer
- buffer memory
- data
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/20—Circuitry for controlling amplitude response
- H04N5/205—Circuitry for controlling amplitude response for correcting amplitude versus frequency characteristic
- H04N5/208—Circuitry for controlling amplitude response for correcting amplitude versus frequency characteristic for compensating for attenuation of high frequency components, e.g. crispening, aperture distortion correction
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Processing (AREA)
Description
本発明は、ビデオグラフィックス、特に画素ルックアップテーブルに関するものである。
背景技術
ディスプレイ装置は典型的なコンピュータビデオグラフィックスシステムにおいてビデオデータを表示するのに用いられている。ディスプレイ装置は代表的には、陰極線管(CRT)又はフラットパネル液晶表示装置(LCD)モニタである。ディスプレイ装置上に表示する画像は、通常ビデオグラフィックスコントローラ(VGC)により発生され、代表的にはVGCによるディスプレイリフレッシュとして既知の処理により1秒当り約75回繰返し描画されている。
図1は、ディスプレイ装置16を駆動するために、パーソナルコンピュータ(PC)内に用いられているビデオグラフィックスシステムのブロック線図である。ディスプレイ装置16上に表示されるビデオ画像は多数の画素から成っている。各画素は、ディスプレイ装置16のあらゆる画素を構成する赤、緑及び青の蛍光体に相当する赤、緑及び青の要素から成っている。各画素は、デジタル値として蓄積された赤、緑及び青の強度を有する。デジタルデータはフレームバッファメモリ12、代表的にはダイナミックランダムアクセスメモリ(DRAM)内に線形ビットマップとして蓄積されている。ビデオグラフィックスコントローラ(VGC)10は、フレームバッファメモリ内のデータを処理することによりビデオ画像を発生させ、ディスプレイコントローラ20はディスプレイリフレッシュを実行する。
デジタルデータは、デジタル-アナログ変換器(DAC)14によりアナログ電圧レベルに変換され、ディスプレイ装置16に伝送される。ディスプレイ装置16はこのアナログ電圧レベルを用いて、3つの電子銃が描画画素に向けて電子を同時に発射するようにする。赤、緑及び青の種々の強度によりディスプレイ装置16上で見うるカラーを生ぜしめる。
殆どのシステムでは、赤、緑及び青の各カラーを表すのに8ビットが用いられる。従って、各画素はフレームバッファメモリ12中の24ビットの情報を必要とする。水平方向に1024個の画素、垂直方向に768個の画素を有する典型的な寸法のPCスクリーンの場合、画像を蓄積するのに必要とするメモリの大きさは、24ビット/画素(bpp)を仮定すると、1024×768×24ビット(総計で2.25メガバイト)である。更に大きいスクリーン寸法を用いると、これに対応してフレームバッファメモリが更に大きくなる。同様に、bpp数を高めたシステムでも、大きなフレームバッファメモリを必要とする。
フレームバッファメモリに蓄積されるビット数を少なくする1つの既知の方法は、ルックアップテーブル(LUT)18を用いることであり、このルックアップテーブルは代表的に、スタティックランダムアクセスメモリ(SRAM)で構成され、VGC10に設けられている。本質的に、LUT18は、フレームバッファメモリ12に蓄積された8ビット値を、LUT18に蓄積された256個の24ビット値をアドレスするインデックスとして用いるようにする。各24ビット値が全24bppカラーを表す。VGC10は、8bppフォーマットでフレームバッファメモリ12内に蓄積されたデータをLUT18への入力として用い、各8ビット入力を24ビットカラー上にマッピングする。
8bppモードでは、256(28)個のカラーを得ることができるが、256個のカラーは24bppカラーとして見ることができる。従って、海景色は256個の異なる全24bppの青の陰影表示でディスプレイ装置16上に表示できるようになり、24bppフォーマットで蓄積された画像と殆ど区別できなくなる。LUT18を用いることにより得られる1つの利点は、モニタ上の各画素に対し、8ビットのみをフレームバッファメモリ12に蓄積すれば足りるということである。従って、フレームバッファメモリ12に蓄積する情報量は3分の1に減少し、フレームバッファメモリ12から流れ出るデータ量は3分の1に減少する。
スペース及び価格上の制約の為に、殆どのVGCは、ビデオ出力画像を発生させるのに1つの8×256LUTを有している。1つの8×256LUTを用いた場合、カラーインデックスを異ならせる必要のある多重画像を同一の画像に含める際に、得られる出力画像が不正確で不所望な結果を生ぜしめるおそれがあるという欠点がある。例えば、LUT18中の256個のカラーの殆どが青の陰影表示に向けられるものとする。これにより、画像データの大部分が水中の海景色を表す際には、画質を正確にすることができる。しかし、黄-赤の潜水艦のようなビデオ画像がこの海景色の上部に重畳されているものとする。LUT18の大部分が青の陰影表示に向けられている為、潜水艦は不正確なカラーで表示される。
他のLUT18を追加することにより、出力画像の精度を改善することができる。しかし、複数のLUTを用いると、VGCの価格が著しく増大するという欠点がある。このような手法を用いる場合の他の欠点は、スペース上の制約の為に、しばしば、他のLUTをVGC10に含めることを不可能にするということである。
発明の概要
ビデオグラフィクスコントローラのハードウエアの条件を高めることなく、正確な出力画像を生ぜしめるようにしたビデオグラフィクスシステムの必要性が生じている。種々の利用可能なカラー情報を含む正確な出力画像を生じるビデオグラフィクスシステムの必要性もある。
上述した及びその他の必要性は、補間用のラインバッファを、垂直方向のスケーリングと、入力カラーデータの出力カラー値へのカラーマッピングとの双方に用いるようにした本発明により満足される。
本発明の1つの観点によれば、画像データを処理するシステムは、第1制御信号及び第2制御信号を出力するように構成した選択装置を有する。このシステムは更に、この選択装置に結合され、前記第1制御信号に基づいて画素データを蓄積し、前記第2制御信号に基づいてカラーデータを蓄積するように構成された第1メモリを有する。このシステムは更に、この第1メモリに結合され、蓄積された画素データを補間し、この補間した画素データを出力するように構成したスケーリング装置を有する。更に、このシステムは、第1メモリに結合され且つ入力画素値を受けるとともに蓄積されたカラー値を出力するディスプレイコントローラを有する。この構成によれば、このシステムが、第1メモリを、画素データの垂直方向の補間のためのラインバッファと、入力画素データを出力カラー値にマッピングするためのLUTとの双方として用いるようにしうる。
本発明の他の観点は、複数のモードで動作するように構成した画像データ処理システムで画像データを処理する方法を提供することにある。この方法は、水平ラインの画素を表す画素データを第1動作モードで第1メモリに書込む工程を有する。この方法は更に、前記画素データを前記第1メモリから、画素データを補間するように構成したスケーリング装置に伝送する工程を有する。この方法は更に、第2動作モードでカラーデータを第1メモリに書込み、これにより、第1メモリを、画素データの垂直方向の補間のためのラインバッファと、入力画素データを出力カラー値にマッピングするためのLUTとの双方として二重に用いるようにする工程を有する。
本発明の他の目的及び利点は、当業者にとって、以下の図面に関する説明から容易に明らかとなるであろう。図面に関し説明する実施例は、本発明を実行する上での最良モードを与えるものである。本発明は、その範囲を逸脱することなく、種々の点で変形させることができる。従って、図面は例示であって、これに限定されるものではない。
【図面の簡単な説明】
図1は、ビデオグラフィックスコントローラを用いたコンピュータシステムを示すブロック線図である。
図2は、ラインバッファを用いたビデオグラフィックスコントローラを示すブロック線図である。
図3は、本発明の一実施例によるビデオグラフィックスコントローラシステムを示すブロック線図である。
図4は、本発明の一実施例を示す流れ図である。
実施例の詳細な説明
ここに開示した実施例は、入力画像を“アップスケーリング”するために水平ラインの画素データを蓄積するのに、ビデオグラフィックスコントローラ(VGC)上のラインバッファを用いる。本発明は又、出力画像の色精度を高めるために、ルックアップテーブル(LUT)としてもラインバッファを用いている。まず最初に、入力画像を垂直方向にアップスケーリングするために用いるラインバッファにつき説明し、次にラインバッファを画素LUTとして用いる場合及び入力画像を垂直方向にアップスケーリングする場合の方法及び装置を説明する。
ラインバッファ
前述したように、典型的なコンピュータディスプレイ装置で正確なビデオ画像を表示するのはしばしば困難を伴う。更に、リアルタイムビデオ画像を表示するのにコンピュータディスプレイ装置を用いることがますます一般的となりつつあり、正確なビデオ画像を表示するのに伴って、複雑性が増している。リアルタイムビデオデータは、テレビジョンチューナ、デジタルカムコーダ、デジタルカメラや、その他のいかなるビデオ入力源からも生ぜしめることができる。図1を参照するに、ビデオデータは一般に、VGC10に直接入力される。その理由は、VGC10が、ビデオデータを表示するのに関連する処理を実行するためである。
到来ビデオデータの流れをリアルタイムで表示するために、データをフレームバッファメモリ12に連続的に書込むことができ、ディスプレイのリフレッシュはディスプレイコントローラ20により実行することができる。これにより、ビデオデータがフレームバッファメモリ12に書込まれた後、1回のスクリーンリフレッシュよりも遅くならずにこのビデオデータをスクリーン上に表示せしめうるようになる。しかし、この手法に伴う問題は、到来ビデオデータの流れがしばしば、ディスプレイ装置16と同じディスプレイリフレッシュレートを有していないということである。ビデオ入力源はしばしば、1秒当り約24〜30フレームのリフレッシュレートを有するのに対し、ディスプレイ装置のリフレッシュレートは1秒当り約75フレームである。フレームバッファ12に連続的に書込みを行い、典型的なリフレッシュを行うことにより、表示されたビデオ画像が、あるフレームの半分と、次のフレームの半分とを含み、これにより引きさけ効果を生ぜしめてしまう。
リアルタイムビデオデータを表示する他の手法は、オフスクリーンメモリとして既知のフレームバッファメモリ12の未使用部分にビデオ入力を蓄積する方法である。オフスクリーンメモリ中のデータは引続き、引きさき効果やその他の視覚上の悪影響を最少にするように、ディスプレイ装置のリフレッシュを実行するのに用いられるフレームバッファメモリの部分に送られる。
しかし、フレームバッファメモリ12中に得られるオフスクリーンメモリの量は無限ではない為、蓄積される情報量は少なくするのが有利である。更に、ビデオ入力源のビデオ画像の解像度は、しばしば、コンピュータスクリーンの解像度(1024×768画素又は1280×1024画素)よりも少ない(通常では320×200画素又は720×480画素である)。従って、得られるディスプレイ装置16の表面全体を用いてビデオ画素を表示したい場合には、ディスプレイ装置16の解像度を減らすか、或いはビデオ画素の解像度を高める必要がある。
一般に、この問題に対する唯一の現実的な解決策は、スクリーンの寸法に適合するようにビデオ画像の解像度を高めることである。この解決策は、VGC10がオフスクリーンフレームバッファメモリ12に蓄積された小さな画像を取出し、この画像をアップスケーリングし(解像度を所望の割合に高め)、この画像をフレームバッファメモリ12に書き戻す“フロントエンド(前置)”処理を用いて行うことができる。他の方法は、ディスプレイコントローラ20が表示されている進行中の画像をアップスケーリングする“バックエンド(後置)”処理手法を用いるものである。この手法は、フレームバッファメモリ12をアクセスする必要性を低減させるという利点を有するとともに、動作用の追加のいかなるメモリも用いない。
このようにして、ディスプレイコントローラ20により、ビデオ源の画像がディスプレイ装置16の全体に適合するようにするのに必要な倍数だけビデオ源の画像をアップスケーリングする。典型的な300×200画素のビデオ入力画像はディスプレイ装置16の全体に表示するのに必要な全ての画素を有していない為、VGC10が追加の画素を発生する。必要とするこれらの画素を発生させる1つの手法は、画素を単に複写してスクリーンの追加の部分を満たすようにすることである。この手法は廉価であるが、濃淡のむらが生じ、画像は一般に許容できないものとなる。
他の手法は、画素間を混合画素で満たす方法である。例えば、データ源画像のライン#0の画素#0と、このデータ源画像のライン#1の画素#0とを考慮する。受け手側の、すなわち、ディスプレイ装置16の画像はこれらの画素を数回再使用し、データ源の画像からの情報の欠落を満たす。受け手側の画素は、2つの画素を部分的に合成し、画素の補間として既知のように結果を互いに加えることにより形成することができる。従って、受け手側の画素はライン#0からの画素でもライン#1からの画素でもなく、これら2つの画素のある合成(例えば、それぞれ、30%及び70%)である。この補間の結果は、より一層自然で、滑らかなアップスケーリングされた画像となる。
スケーリングに用いる補間は水平方向及び垂直方向の双方で生じる。従って、モニタ上で表示される受け手側のあらゆる画素はデータ源の4つの画素から成る。ディスプレイコントローラ20は、一時に1つの水平ラインの画素データに作用する。従って、水平補間を実行するのに必要とする前の水平画素をアクセスすることを容易に行いうる。しかし、垂直補間の場合には、ディスプレイコントローラ20は、2つの異なる水平ラインからの画素を同時に混合する必要がある。このことは、問題である。その理由は、ディスプレイコントローラ20は一時に1つの水平ラインの画素データに作用する為である。この問題を緩和するために、メモリ装置がVGC10で前の水平ラインの画素データを蓄積し、ディスプレイコントローラ20がフレームバッファメモリ12から前のラインの画素データを再取出しする必要がないようにする。このメモリ装置は代表的にSRAMとして構成され、ラインバッファとして知られている。
図2は、ラインバッファ40を含むVGC10のブロック線図である。バックエンドビデオスケーリングを行う現在のVGCは、フレームバッファメモリ12に対するアクセスを最少にするために、少なくとも1つのラインバッファ40を利用する。図2を参照するに、垂直スケーラコントローラ50はビデオ入力の垂直方向のスケーリングを実行する。
ラインバッファ40はビデオ入力源からフレームバッファメモリ12を介してビデオ入力データを受ける。ディスプレイコントローラ20はデータ源のビデオ画像をライン毎に処理し、常に最後に取出した水平ラインをラインバッファ40内に入れる。その理由は、このディスプレイコントローラはフレームバッファメモリ12から新たなラインを取出す為である。これにより、フレームバッファメモリ12から新たなラインを取出したり、再取出ししたりするのと関連する処理時間を節約する。
垂直スケーラコントローラ50は、現在のラインの画素データをラインバッファ40に書込む必要のある時を絶えず注意するとともに書込みアドレスストローブ信号を適切な時間にラインバッファ40に送る論理回路を含んでいる。ラインバッファ40は、前のラインを読出しうる時と同時に現在のラインを書込みうるようにするために、デュアルポートを有している。
垂直スケーラコントローラ50は、現在のラインの画素データを前のラインの画素データで補間する、すなわち、出力画素に用いられた各画素の割合を決定し、補間された画素を出力する。補間された垂直画素は水平方向にスケーリングされた画素と合成され、次にLUT(ルックアップテーブル)18を介して24bpp(ビット/画素)のカラーにマッピングされる。
従来の技術では、ラインバッファは、入力ビデオ画像をアップスケーリングする必要がある場合に、画素を垂直方向で補間するためにのみ用いられている。垂直補間処理を支援するためには、ラインバッファを、水平ライン全体の画素データを蓄積するように構成する必要があり、従って、VGC10上のチップ面積のかなりの量を占める。チップ面積はVGC10上では需要が高い為、アップスケーリング機能のためにチップ面積を用いることは費用が嵩むこととなる。
前述したように、8bppモードを用い、しかもLUT18を用いて画素を24bppのカラーに拡張する場合に、問題が生じる。LUT18を用いた8bppインデックス付モードによれば、24bppのカラーにもかかわらず、256色しか生じない。
ラインバッファ/画素LUT
本発明は、ディスプレイ装置16上に表示される出力画像に対して得られるカラー数を増大させるためにラインバッファを用いる方法及び装置であって、入力画像をアップスケーリングに用いる方法及び装置を提供せんとするにある。
図3は、本発明の一実施例によるビデオグラフィックスシステムの典型的なブロック線図である。前述したように、ビデオ入力データはまず最初にフレームバッファメモリ12に蓄積される。VGC10がビデオ画素データを取出し、このデータを垂直スケーラコントローラ50に入力させる。この垂直スケーラコントローラ50は、前述したように現在のラインの画素データをラインバッファ40に書込む時を制御するように動作する。しかし、図3に示す実施例ではラインバッファ40を他のLUTを蓄積するのにも用いる。
例えば、第1動作モードでは、ラインバッファ40は、画素を垂直方向で補間するのに用いられる典型的なラインバッファ40として動作する。上述したように、この動作には、現在のラインの画素データを蓄積する処理が含まれている為、垂直スケーラコントローラ50は垂直補間のためのデータをアクセスしうる。しかし、第2動作モードでは、ラインバッファ40はLUTとして動作する。この場合、VGC10はディスプレイ装置16上に表示する全24bppカラーの他のテーブルを含む。
ビデオグラフィックスシステムは、図3に示すように、マルチプレクサ60、70及び80に第1入力を与える選択装置90を有する。この第1モードでは、マルチプレクサ60、70及び80がラインバッファ/LUT40を、画素データを補間するのに用いられる典型的なラインバッファとして動作せしめうる。しかし、選択装置90がマルチプレクサ60、70及び80に第2入力を与えると、ラインバッファ/LUT40はLUTとして動作する。この第2モードでは、全24bppカラーがLUT18に書込まれるのと同様に、全24bppカラーがラインバッファ40に書込まれる。典型的な実施例では、CPU22が周辺素子相互接続(PCI)バス32を通る選択装置90及び信号マルチプレクサ60、70及び80として動作する。CPU22は、システムメモリ20内に蓄積された命令に応じて動作する。或いはまた、選択装置90を、PCIバス32を介してVGC10と通信するいかなるPCIホスト装置とすることもできる。例えば、この選択装置90をネットワークコントローラ30とすることができる。
典型的な実施例では、選択装置90が“高”レベル信号をマルチプレクサ60、70及び80に供給し、ラインバッファ/LUT40が典型的なラインバッファとして動作するようにする。マルチプレクサ60、70及び80は“高”レベル信号を受け、フレームバッファメモリ12からラインバッファ/LUT40にデータを書込んだり、このラインバッファ/LUT40からデータを読出したりする。垂直スケーラコントローラ50は、画素を垂直方向に補間するためにデータをラインバッファ40に書込んだり、ラインバッファ40から読出したりするのを制御する。
しかし、前記選択装置90が“低”レベル信号をマルチプレクサ60、70及び80に供給する場合には、これらマルチプレクサ60、70及び80はカラーデータをラインバッファ/LUT40に伝送するよう動作する。このカラーデータは、LUT18に書込まれるのと同様にしてラインバッファ40に書込まれる。すなわち、CPU22又は他の何れかのPCIホスト装置が、所望の256個の24bppのインデックス付カラーをシステムメモリからマルチプレクサ80を介してラインバッファ/LUT40に書込む。この場合、ディスプレイコントローラ20が、8bppを含む入力画像を受けると、8ビット値がマルチプレクサ70を介して、LUTとして動作するラインバッファ/LUT40に伝送される。ディスプレイコントローラ20はこの8ビット値を24bppのカラー値にマッピングし、出力値を、ディスプレイ装置16が用いるアナログ値に変換するためのDAC(デジタル−アナログ変換器)14に伝送する。
図4は、ラインバッファ/LUT40をラインバッファとLUTとの双方として用いる典型的なシナリオを示すフローチャートである。前述したように、本発明のビデオグラフィックス装置を制御するのに、いかなるPCIホスト装置をも、又は他のいかなる制御装置をも用いることができる。以下に詳細に説明する実施例は、CPU22が制御装置であるものと仮定している。
ステップ200では、CPU22がVGC10の動作モードを選択する。このCPU22は、画像のアップスケーリングが必要であるかどうかに基づいて動作モードを決定する。説明の目的のために、CPU22が、ステップ200で画像のアップスケーリングが必要でないことを決定するものとする。CPU22はステップ202でマルチプレクサ60、70及び80に、それぞれのマルチプレクサに対し“低”レベルの入力を選択させる制御信号を送る。
次に、ステップ204で、CPU22が256個の24bppのカラー値をマルチプレクサ80を介してラインバッファ/LUT40に書込む。この24bppのカラー値は種々のファクタに基づいてCPU22によって決定される。例えば、CPU22は、殆ど青色の陰影表示に供せられた256個の24bppの値を、LUT18に予め蓄積しておくことができる。従って、CPU22は、殆ど黄-赤(又は他のいかなるカラー)の陰影表示に供せられた256個の24bppのカラーをラインバッファ/LUT40に書込むことができる。このようにして、CPU20がディスプレイ装置16上で得られる出力カラーの個数を増大させる。
ステップ206では、ディスプレイコントローラ20が8bppモードで蓄積されたビデオ画素データをフレームバッファメモリ12から受ける。このディスプレイコントローラ20は読出しアドレス信号をマルチプレクサ70に送り、現在の画素に対する8ビット値を出力の24ビットカラーにマッピングする。読出しアドレス信号は画素の水平の流れ中の現在の画素値である。ステップ208では、ラインバッファ/LUT40が入力の8bpp画素値に基づく適切な24bpp値をDAC14への、及び次のディスプレイ装置16への入力に対して出力する。
ステップ200〜208に対する上述した説明では、CPU22が、ビデオアップスケーリングは必要でないということを決定しているものと仮定している。ステップ208後に、CPU22は、垂直アップスケーリングが必要であるということを決定するものと仮定する。ステップ210で、CPU22がマルチプレクサ60、70及び80に、それぞれのマルチプレクサに対し“高”レベル信号を選択させる制御信号を送ることを決定する。
次に、垂直スケーラコントローラ50はフレームバッファメモリ12からビデオ画素データを受けるように動作する。この垂直スケーラコントローラ50はステップ212で、書込みアドレスストローブ信号をマルチプレクサ60に送り、現在の水平ラインの画素データをラインバッファ/LUT40に書込む。
垂直スケーラコントローラ50はビデオ画像データの2ラインの補間を行うため、この垂直スケーラコントローラ50はステップ214で、読出しアドレス信号をマルチプレクサ70を介してラインバッファ/LUT40に送る。この読出しアドレス信号は、垂直スケーラコントローラ50が補間している現在の水平画素を表し、垂直スケーラコントローラ50はラインバッファ/LUT40に蓄積された前のラインのデータから適切な水平画素のデータを読出す。この垂直スケーラコントローラ50はステップ216で、補間された画素データを読出してアップスケーリングされた出力画像を生ぜしめる。このようにして、VGC10は、垂直アップスケーリングが必要である時にラインバッファ/LUT40を利用し、垂直アップスケーリングが必要でない時にもこのラインバッファ/LUT40をLUTとして利用する。ラインバッファ/LUT40のこの利用により、VGC10におけるメモリの要求を高めることなく、ディスプレイに対して得られるカラーの個数を増大させる。
例えば、前述したように特定の画像の殆どが水中の海景色であるものと仮定する。この状態では、LUTの殆どを青色の種々の陰影表示に供することができる。しかし、黄-赤の潜水艦がこの海景色に重畳されている場合には、LUT18は黄-赤の陰影表示を表す24bppのカラーを含まない。しかし、PCIホスト装置が、ラインバッファ/LUT40に蓄積された256個の24ビットのカラーの殆どを黄及び赤の種々の陰影表示に供するシステムを制御するものと仮定する。この場合、PCIホスト装置は、潜水艦のための8bppの入力カラーを24bppの出力カラーにマッピングするようラインバッファ/LUT40を選択する。或いはまた、VGC10上の論理回路を用いて、24bppの出力カラーを出力するように適切なLUTを選択することができる。このようにして、殆ど青色の陰影表示を表す1つのみのLUT18を用いる場合よりも、ラインバッファ/LUT40を用いて黄-赤の潜水艦を有する海景色の画像をより一層正確に表すことができる。
カラー値をラインバッファ/LUT40内に蓄積するのに用いるPCIホスト装置(代表的な実施例ではCPU22)は、いかなる個数の所望のカラーからも選択を行うことができ、これらのカラー値をVGC10によって用いるためにラインバッファ/LUT40内に蓄積することができる。しかし、ラインバッファ/LUT40内に蓄積された実際のカラー値は、出力画像の所望の全体の精度を含む種々のファクタに依存する。
代表的な実施例では、ラインバッファ40の大きさは768ディープ(deep)×24ビット幅である。この場合、ラインバッファ/LUT40を3つのLUTに区分けしてディスプレイ装置16上での表示に得られるカラーの個数を更に増大させることができる。しかし、得られる追加のLUTの個数はラインバッファ40の大きさに依存する。更に、VGC10でのスペース上の制約の為にLUT18がVGC10上の他の素子と共存しえないようにする場合には、VGC10をLUTのみとして作用するラインバッファ/LUT40に対して用いることができる。
更に、制御用のPCIホスト装置を用いることにより、受けた画像データの種々の部分に対してどのLUTを用いるかを制御することができる。VGC10内の又は外部の制御装置からの論理信号により、入力画素データを全24bppカラーにマッピングするのに複数のLUTのうちどのLUTを用いるかを選択しうる。更に、代表的な実施例では、8bppを蓄積するフレームバッファメモリ12及び8×256LUTを有するシステムを仮定しているが、本発明の概念を逸脱することなく、画素当りのビット数を他のいかなる個数にもした他のいかなるビデオ処理システムをも用いることができる。
上述したところでは、画素を補間して画像をアップスケーリングするラインバッファと、ディスプレイ装置上での表示のために得られる出力カラーの個数を増大させるルックアップテーブルとを用いる方法及び装置を説明した。前述したように、前記ディスプレイ装置はCRT、LCDディスプレイ又はその他のディスプレイ装置のようないかなる種類のディスプレイ装置にもすることができる。本発明には、ハードウエアの条件を高めることなく、本発明によるシステムがより一層正確な出力データを生ぜしめるという利点がある。本発明の他の利点は、システムによる処理を殆ど追加することなく、ディスプレイのために得られる可能なカラーの個数が増大するということである。本発明の更に他の利点は、本発明のシステムをそれ専門のハードウエアを用いることなく容易に構成しうるということである。
上述したところでは、本発明の数種類のみの好適実施例を示し、説明したが、前述したように本発明は種々の他の組合せや環境に用いることができ、ここで説明した本発明の概念の範囲内で種々に変更又は変形しうることに注意すべきである。
Claims (13)
- 画像データを処理するシステムにおいて、このシステムが、
第1制御信号及び第2制御信号を出力するように構成した選択装置と、
この選択装置に結合され、かつ、前記第1制御信号によって選択された第1動作モードにおいて画素データを蓄積し、かつ、前記第2制御信号により選択された第2動作モードにおいてカラールックアップテーブルメモリとして動作するように構成されたラインバッファメモリと、
このラインバッファメモリに結合され、前記第1動作モードにおいて前記ラインバッファメモリに蓄積された前記画素データを補間し、この補間した画素データを出力するように構成したスケーリング装置と、
前記ラインバッファメモリに結合され、前記第2動作モードにおいて前記ラインバッファメモリ内のカラーデータに基づいて、受けた画素値を出力画素値にマッピングするように構成したディスプレイコントローラと
を具えていることを特徴とするシステム。 - 請求の範囲1に記載のシステムにおいて、このシステムがルックアップテーブルを有し、前記ラインバッファメモリが、前記第2動作モードにおいて、前記ルックアップテーブルに追加して、システムが利用可能なルックアップカラーの個数を増大させるのに用いられるようになっていることを特徴とするシステム。
- 請求の範囲1に記載のシステムにおいて、このシステムが更に、
前記ラインバッファメモリに結合され、入力画素データを蓄積するとともにこの入力画素データを前記第1制御信号に基づいて第1メモリである前記ラインバッファメモリに伝送するように構成した第2メモリであるフレームバッファメモリ
を具えていることを特徴とするシステム。 - 請求の範囲3に記載のシステムにおいて、前記フレームバッファメモリが更に、
水平ラインの画素を表す前記入力画素データを一時に1水平ライン毎前記第1メモリであるラインバッファメモリに伝送するように構成されていることを特徴とするシステム。 - 請求の範囲3に記載のシステムにおいて、前記ディスプレイコントローラが更に、前記フレームバッファメモリから前記画素値を受けるように構成されていることを特徴とするシステム。
- 請求の範囲5に記載のシステムにおいて、前記カラーデータが、ディスプレイ装置上で表示させるために利用可能なカラーテーブルを表していることを特徴とするシステム。
- 請求の範囲1に記載した、画像データを処理するためのシステムにより、画像データを処理する方法において、この方法が、
水平ラインの画素を表す画素データを第1動作モードでラインバッファメモリに書込む工程と、
前記画素データを前記第1メモリであるラインバッファメモリからスケーリング装置に伝送する工程と、
前記ラインバッファメモリを第2動作モードでカラールックアップメモリとして再使用する工程と
を具えていることを特徴とする方法。 - 請求の範囲7に記載の方法において、この方法が更に、
デジタルビデオ源からのデータを表す入力画素データを第2メモリに書込む工程と、
前記第1動作モードで、1つの水平ラインの入力画素データを前記第2メモリから前記ラインバッファメモリに伝送する工程と
を具えていることを特徴とする方法。 - 請求の範囲8に記載の方法において、この方法が更に、前記スケーリング装置によって、
前記第1動作モードで前記ラインバッファメモリから受けた水平ラインの画素データを前の水平ラインの画素データで補間する工程と、
補間した画素値を出力する工程と
を具えていることを特徴とする方法。 - 請求の範囲8に記載の方法において、この方法が更に、
ディスプレイ装置上で表示すべき画素データを表す画素値を前記第2メモリから受ける工程と、
この受けた画素値を、前記第2動作モードで前記ラインバッファメモリに蓄積されたカラーデータに基づいて出力画素値にマッピングする工程と
を具えていることを特徴とする方法。 - ビデオグラフィックスコントローラにおいて、このビデオグラフィックスコントローラが、
ディスプレイ装置に対するディスプレイリフレッシュデータを発生するように構成したディスプレイコントローラと、
第1制御信号により選択された第1動作モードで、水平ラインの画素を表す画素データを蓄積するとともに、第2制御信号により選択された第2動作モードで、前記ディスプレイ装置に表示されるべきカラー情報を表すカラーデータを蓄積するように構成したメモリとを具え、前記ディスプレイコントローラが、前記第2動作モードにおいて、前記メモリ内のカラーデータに基づいて受けた画素値を前記ディスプレイリフレッシュデータの出力カラー値にマッピングすることを特徴とするビデオグラフィックスコントローラ。 - 請求の範囲11に記載のビデオグラフィックスコントローラにおいて、このビデオグラフィックスコントローラが更に、
前記メモリに結合され且つ水平ラインの画素を前の水平ラインの画素で補間するように構成されたスケーリング装置と、
補間された画素値を出力する出力端と
を具えていることを特徴とするビデオグラフィックスコントローラ。 - 請求の範囲11に記載のビデオグラフィックスコントローラにおいて、前記ディスプレイコントローラが更に、他のメモリから画素値を受けるように構成されていることを特徴とするビデオグラフィックスコントローラ。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/968,679 US6140994A (en) | 1997-11-12 | 1997-11-12 | Graphics controller for forming a composite image |
| US08/968,679 | 1997-11-12 | ||
| PCT/IB1998/001652 WO1999024917A2 (en) | 1997-11-12 | 1998-10-19 | Method and apparatus for using interpolation line buffers as pixel look up tables |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001509920A JP2001509920A (ja) | 2001-07-24 |
| JP4672821B2 true JP4672821B2 (ja) | 2011-04-20 |
Family
ID=25514613
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP52579399A Expired - Fee Related JP4672821B2 (ja) | 1997-11-12 | 1998-10-19 | 補間用のラインバッファを画素のルックアップテーブルとして用いる方法及び装置 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US6140994A (ja) |
| EP (1) | EP0951694B1 (ja) |
| JP (1) | JP4672821B2 (ja) |
| KR (1) | KR20000070092A (ja) |
| DE (1) | DE69829163T2 (ja) |
| WO (1) | WO1999024917A2 (ja) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6278438B1 (en) * | 1999-03-08 | 2001-08-21 | Lexmark International, Inc. | Method of displaying digital photograph based bitmaps |
| DE10004743C2 (de) * | 2000-01-28 | 2002-03-28 | Siemens Ag | Verfahren und Einrichtung zum Ansteuern eines Bildschirmgerätes für ein Eisenbahnleitsystem |
| DE10004728C1 (de) * | 2000-01-28 | 2002-06-13 | Siemens Ag | Verfahren und Einrichtung zum Ansteuern eines Bildschirmgerätes für ein Eisenbahnleitsystem |
| US7002561B1 (en) * | 2000-09-28 | 2006-02-21 | Rockwell Automation Technologies, Inc. | Raster engine with programmable hardware blinking |
| US7191402B2 (en) * | 2001-05-10 | 2007-03-13 | Samsung Electronics Co., Ltd. | Method and apparatus for adjusting contrast and sharpness for regions in a display device |
| US6784893B2 (en) * | 2002-01-22 | 2004-08-31 | International Business Machines Corporation | Raster operation unit |
| US7982751B2 (en) * | 2003-07-11 | 2011-07-19 | The University Of North Carolina | Methods and systems for controlling a computer using a video image and for combining the video image with a computer desktop |
| US20060044328A1 (en) * | 2004-08-26 | 2006-03-02 | Rai Barinder S | Overlay control circuit and method |
| US20060109285A1 (en) * | 2004-11-23 | 2006-05-25 | Chan Victor G | Method and apparatus for writing a non-rectangular frame to a display device |
| KR100836534B1 (ko) * | 2006-12-01 | 2008-06-10 | 한국과학기술원 | 저전력 서브 픽셀 보간 블록 구조 |
| US20080192066A1 (en) * | 2007-02-13 | 2008-08-14 | Sharp Laboratories Of America, Inc. | Raster operation table conversion for color spaces |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4799053A (en) * | 1986-04-28 | 1989-01-17 | Texas Instruments Incorporated | Color palette having multiplexed color look up table loading |
| JPH01116690A (ja) * | 1987-10-30 | 1989-05-09 | Fujitsu Ltd | 論理演算回路 |
| US5387945A (en) * | 1988-07-13 | 1995-02-07 | Seiko Epson Corporation | Video multiplexing system for superimposition of scalable video streams upon a background video data stream |
| US4958146A (en) * | 1988-10-14 | 1990-09-18 | Sun Microsystems, Inc. | Multiplexor implementation for raster operations including foreground and background colors |
| DE69217319T2 (de) * | 1991-10-07 | 1997-07-17 | Xerox Corp | Bildeditiersystem und Methode mit verbesserter Farbpaletteneditierung |
| AU668043B2 (en) * | 1993-05-21 | 1996-04-18 | Sega Enterprises, Ltd. | Image processing device and method |
| US5469223A (en) * | 1993-10-13 | 1995-11-21 | Auravision Corporation | Shared line buffer architecture for a video processing circuit |
| US5502462A (en) * | 1993-11-01 | 1996-03-26 | The 3Do Company | Display list management mechanism for real-time control of by-the-line modifiable video display system |
| US5644333A (en) * | 1994-12-12 | 1997-07-01 | Auravision Corporation | Color key detection scheme for multimedia systems |
| KR960024839A (ko) * | 1994-12-29 | 1996-07-20 | 김광호 | 소프트 키보드를 이용한 휴대용 정보 단말기 및 정보 입력방법 |
| JP3838282B2 (ja) * | 1996-06-20 | 2006-10-25 | ブラザー工業株式会社 | 絵作成装置 |
| JPH1188700A (ja) * | 1997-09-04 | 1999-03-30 | Hitachi Ltd | カラー画像信号の符号化方法、復号化方法およびカラー画像処理装置 |
-
1997
- 1997-11-12 US US08/968,679 patent/US6140994A/en not_active Expired - Lifetime
-
1998
- 1998-10-19 DE DE69829163T patent/DE69829163T2/de not_active Expired - Lifetime
- 1998-10-19 WO PCT/IB1998/001652 patent/WO1999024917A2/en not_active Ceased
- 1998-10-19 EP EP98946663A patent/EP0951694B1/en not_active Expired - Lifetime
- 1998-10-19 JP JP52579399A patent/JP4672821B2/ja not_active Expired - Fee Related
- 1998-10-19 KR KR1019997006313A patent/KR20000070092A/ko not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO1999024917A3 (en) | 1999-08-19 |
| WO1999024917A2 (en) | 1999-05-20 |
| KR20000070092A (ko) | 2000-11-25 |
| DE69829163T2 (de) | 2006-02-16 |
| EP0951694A2 (en) | 1999-10-27 |
| EP0951694B1 (en) | 2005-03-02 |
| DE69829163D1 (de) | 2005-04-07 |
| JP2001509920A (ja) | 2001-07-24 |
| US6140994A (en) | 2000-10-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4490797A (en) | Method and apparatus for controlling the display of a computer generated raster graphic system | |
| US5559954A (en) | Method & apparatus for displaying pixels from a multi-format frame buffer | |
| US6788309B1 (en) | Method and apparatus for generating a video overlay | |
| US5821918A (en) | Video processing apparatus, systems and methods | |
| US6172669B1 (en) | Method and apparatus for translation and storage of multiple data formats in a display system | |
| US5473342A (en) | Method and apparatus for on-the-fly multiple display mode switching in high-resolution bitmapped graphics system | |
| US20020056080A1 (en) | Image data comversion processing device and information processing device having the same | |
| JPH08223498A (ja) | ディジタルテレビジョン用グラフィックスサブシステム | |
| US5557302A (en) | Method and apparatus for displaying video data on a computer display | |
| US5663772A (en) | Gray-level image processing with weighting factors to reduce flicker | |
| EP0201210B1 (en) | Video display system | |
| JP4672821B2 (ja) | 補間用のラインバッファを画素のルックアップテーブルとして用いる方法及び装置 | |
| JPH0432593B2 (ja) | ||
| US6587117B1 (en) | Apparatus and method for adaptive transformation of fractional pixel coordinates for calculating color values | |
| US20040222991A1 (en) | Graphics resampling system and method for use thereof | |
| US6606094B1 (en) | Method and apparatus for text image stretching | |
| USH2H (en) | Video display system with increased horizontal resolution | |
| JP2001154653A (ja) | ディジタル画像表示装置 | |
| JP3704999B2 (ja) | 表示装置及び表示方法 | |
| US6252578B1 (en) | Method for reducing flicker when displaying processed digital data on video displays having a low refresh rate | |
| US6529205B2 (en) | Image data display apparatus in which image data are displayed on terminal display unit and NTSC system display unit | |
| JP3292960B2 (ja) | フレーム・バッファに記憶されている画素データをコンピュータ装置の出力表示装置に表示する画素データへ翻訳する回路 | |
| US7348983B1 (en) | Method and apparatus for text image stretching | |
| JPH06337662A (ja) | 文字・画像データ生成装置 | |
| JPH087093A (ja) | 画像表示装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051017 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080407 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081209 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090206 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090316 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090609 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100316 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100615 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110118 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110120 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140128 Year of fee payment: 3 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |