(58)【調査した分野】(Int.Cl.,DB名)
前記画像データ信号は前記表示システムに提供され、前記表示システムは、少なくとも部分的に前記空間サンプリング・フィルタの第1のセットを適用して定義された画像を含む画素を有する表示領域上に、対応する画像を表示することを特徴とする請求項1記載の空間サンプリング・フィルタを選択的に提供する方法。
前記空間サンプリング・フィルタの前記第1のセット及び前記第2のセットを選択的に適用することは、前記画像データ信号によって定義される画像を前記表示システムに表示する前に行われることを特徴とする請求項1記載の空間サンプリング・フィルタを選択的に提供する方法。
【背景技術】
【0002】
(背景)
本出願はグラフィックス・データ・フォーマットを1つの形から別の形に変換することに関するもので、特にRGB(赤、緑、青)グラフィックスを、ディスプレイに用いる改善された色画素配置に変換することに関するものである。
【0003】
平面パネル・ディスプレイ用のカラー単一平面画像マトリクスの現在の技術は、従来技術の
図1に示す垂直ストライプによるRGB3色または単色を用いる。このシステムは、3色を分離して各色に等しい空間周波数重みを置くというフォン・ベゾルド(Von Bezold)色混合効果(後で説明する)を利用する。しかし、かかるパネルは人の視覚とうまく調和しない。
グラフィック表示技術は従来技術のパネルの画質を改善するように開発されてきた。Benzschawel他の米国特許第5,341,153号は大きなサイズの画像を小さなサイズに縮小する方法を教示している。これを行うため、Benzschawel他は現在この分野で「副画素表示(sub−pixel rendering)」と呼ばれる技術を用いて画質を改善する方法を教示している。その後、Hill他は米国特許第6,188,385号において、全く同じ副画素表示技術を用いて、テキストの仮想画像を一度に1文字ずつ縮小することによりテキストの質を改善する方法を教示している。
【0004】
上に述べた従来技術は人の視覚の働きに十分な注意を払っていない。従来技術により画像をディスプレイ装置で再構築すると、人の視覚とうまく調和しない。
かかるディスプレイのために画像をサンプリングして(または、生成して)記憶するのに用いられるほとんどのモデルはRGB画素(すなわち、3色画素)である。ここで、赤と緑と青の値は直交する等しい空間分解能格子上にありまた一致する。この画像フォーマットを用いることにより生じる1つの結果は、間隔を空けた一致しない色エミッタを持つ実画像再構築パネルにも人の視覚にもこれがうまく調和しないことである。このため、画像内に冗長なまたは無駄な情報が含まれる。
【0005】
Martinez−Uriegas他は米国特許第5,398,066号で、またPeters他は米国特許第5,541,653号で、画像をRGB画素フォーマットから、B
ayerが米国特許第3,971,065号でカメラの画像装置用の色フィルタ配列用として教示したものとほとんど同じフォーマットに変換して記録する方法を教示している。Martinez−Uriegas他のフォーマットの利点は、人の視覚と同じ空間サンプリング周波数で個々の色成分データを捕らえて記憶することである。しかし第1の欠点は、Martinez−Uriegas他のフォーマットは実際のカラー・ディスプレイ・パネルとあまり調和しないことである。このため、Martinez−Uriegas他は画像をRGB画素フォーマットに変換して戻す方法も開示している。Martinez−Uriegas他のフォーマットの別の欠点は、色成分の1つ(この場合は赤)が規則的にサンプリングされないことである。配列内に欠けたサンプルがあるので、表示したときに画像の再構築の精度が低下する。
【0006】
全色の知覚はコーンと呼ばれる3色受容体神経細胞の種類により目の中に作られる。3種類は光の異なる波長(すなわち、長波長(赤)と中間波長(緑)と短波長(青))を感じる。3つの波長の相対的密度は互いに大幅に異なる。赤受容体の数は緑受容体よりやや多い。青受容体の数は赤または緑受容体に比べて非常に少ない。色受容体の他に、単色の夜間視覚に寄与するロッドと呼ばれる比較的波長に関係ない受容体がある。
【0007】
人の視覚システムは目が検出する情報を複数の知覚チャンネル(すなわち、輝度とクロマナンス(chromanance)と動き)で処理する。画像システム設計者にとって動きはフリッカしきい値としてだけ重要である。輝度チャンネルは赤と緑の受容体からの入力だけをとる。これは「色盲」である。これは縁のコントラストを増強するようにして情報を処理する。クロマナンス・チャンネルは縁コントラスト増強を有しない。輝度チャンネルは全ての赤と緑の受容体を用いて増強するので、輝度チャンネルの分解能はクロマナンス・チャンネルより数倍高い。青受容体の輝度知覚への寄与は無視してよい。したがって、青の分解能を1オクターブ下げたために生じる誤差は、あったとしてもほとんどの人は知覚できない。これはゼロックスとNASA アーメス研究センタの実験(R. Martin, J. Gille, J. Larimer の「投影ディスプレイにおける低い青画素数の検出性(Detectability of Reduced Blue Pixel Count in Projection Displays)」、SIDダイジェスト、1993年、に示されている。
【0008】
色の知覚は「同化」またはフォン・ベゾルド色混合効果と呼ばれるプロセスに影響を受ける。これにより、ディスプレイの別々の色画素(または副画素、またはエミッタ)を混合色として知覚することができる。この混合効果は視野内の所定の角距離にわたって起こる。青受容体の数が比較的少ないので、この混合は赤または緑よりも青のときに大きな角度にわたって起こる。この距離は青で約0.25°、赤または緑で約0.12°である。304.8mm(12インチ)の視距離では、0.25°はディスプレイ上の1,270μ(50ミル)に対応する。したがって、青副画素のピッチがこの混合ピッチの半分(625μ)より小さい場合は、色は画質を損なわずに混合する。
最も簡単な実施の形態では、副画素表示は輝度チャンネルが知覚する画素とほぼ等しい明度の副画素を用いることにより行う。これにより、結合された副画素を「真の」画素の一部として用いるのではなく、副画素はサンプリングされた画像再構築点として機能することができる。副画素表示を用いることにより空間サンプリングが増加し、位相誤差が減少する。
【0009】
画像の色を無視した場合は、各副画素はそれぞれが等しい単色画素であるかのように機能する。しかし色はほとんど常に重要なので(そうでなければカラー・ディスプレイを用いる必要はない)、各位置での所定の画像の色バランスが重要である。したがって、副画素表示アルゴリズムは、表示する画像の輝度成分内の高い空間周波数情報が色副画素に折り返されて(alias with)色誤差を生じることのないようにして色バランスを保
持しなければならない。Benzschawel他が米国特許第5,341,153号で、またHill他が米国特許第6,188,385号でとった方法は普通のアンチエイリアシング法と同じで、高分解能仮想画像の別々の各色要素にディスプレースト・デシメーション・フィルタ(displaced decimation filters)を適用する。
副画素の配置が副画素表示に最適であれば、副画素表示は位相誤差を小さくする空間アドレス可能性と、両軸の変調伝達関数(MTF)の高い空間周波数分解能とを共に増加させる。
【発明を実施するための形態】
【0017】
以下の図面において、同じ要素には同じ番号を用いる。当業者が理解するように、本発明の以下の説明は単なる例であって、制限するものではない。本発明の他の実施の形態は当業者が容易に考えることができる。
現実世界の画像は捕らえられてメモリ装置内に記憶される。記憶された画像は或る公知のデータ配列で作成されたものである。記憶された画像は、色ディスプレイの分解能を改善する配列を用いてディスプレイ装置上に表示することができる。この配列は少なくとも青エミッタ(すなわち、副画素)と、赤エミッタと、緑エミッタとを有する複数の3色画素を含み、照らされると混合して他の全ての色を作り、人の目に与える。
エミッタ毎に値を決定するには、まずフィルタ核の形をとる変換式を作らなければならない。フィルタ核は、元のデータ集合のサンプル領域と目的のディスプレイのサンプル領域との相対的な領域の重なりを決定することにより生成する。重なり比はフィルタ核の配列内で用いられる係数値を決定する。
【0018】
記憶された画像をディスプレイ装置上に表示するため、各3色画素内の再構築点を決定する。各再構築点の中心は、記憶された画像を再構築するのに用いられるサンプル点の源でもある。同様に、画像データの集合のサンプル点を決定する。各再構築点はエミッタの中心(例えば、赤エミッタの中心)にある。再構築点をエミッタの中心に置くには、境界線の格子を再構築点の中心から等距離に形成してサンプル領域を作る(サンプル点が中心にある)。形成される格子はタイル張りパターンを作る。タイル張りパターンに用いられる形状は、正方形、長方形、三角形、六角形、八角形、菱形、千鳥正方形、千鳥長方形、千鳥三角形、千鳥菱形、ペンローズ・タイル、斜方形、ねじれ斜方形などと、これらの形状の少なくとも1つを含む組み合わせであるが、これらに限られるわけではない。
【0019】
画像データと目的のディスプレイの両方についてサンプル点とサンプル領域とを決定した後でこの2つを重ねる。重ねることにより副領域が作成され、出力サンプル領域は複数の入力サンプル領域と部分的に重なる。入力と出力との領域比は観察または計算により決定し、フィルタ核内の係数として記憶する。この値を用いて出力値に対して入力値に重みをつけて、エミッタ毎に正しい値を決定する。
十分高いスケーリング比を用いると、ここに開示する副画素配列および表示法は、情報のアドレス可能性と再構築された画像の変調伝達関数(MTF)から見て従来の技術のディスプレイより優れた画質を与える。
【0020】
図1はディスプレイ装置の単一平面配列内の3色画素の従来技術のRGBストライプ配置を示し、従来技術の
図2は
図1の従来技術のRGBストライプ配置の実質的な副画素表示サンプリング点を示す。従来技術の
図3,4,5は
図1の従来技術のRGBストライプ配置におけるサンプリング点の色平面毎の実質的な副画素表示サンプリング領域を示す。
図1−5については後で説明する。
【0021】
図6は1つの実施の形態に係る複数の3色画素の配置20を示す。3色画素21は正方形であってX,Y座標システムの原点に配置され、1個の青エミッタ22と、2個の赤エミッタ24と、2個の緑エミッタ26とを含む。青エミッタ22は、第1、第2、第3、第
4象限に延びる座標システムの中心に、X軸に垂直に配置される。赤エミッタ24は、青エミッタが占めていない第2および第4象限に配置される。緑エミッタ26は、青エミッタが占めていない第1および第3象限に配置される。青エミッタ22は長方形で、各辺は座標システムのX軸とY軸に沿って並び、赤エミッタ24と緑エミッタ26の対向する対は一般に正方形である。
【0022】
配列はパネル全体に繰り返されて、望ましいマトリクス分解能を持つ装置を形成する。繰り返す3色画素は「チェッカ盤」を形成し、赤エミッタ24と緑エミッタ26は交替に並び、青エミッタ22は装置全体に均一に分布するが分解能は赤エミッタ24と緑エミッタ26の半分である。青エミッタの列は1つおきに千鳥配列である。すなわち、エミッタ28で表されているようにその長さの半分だけシフトしている。このようにするため、また縁効果のため、縁の青エミッタは半分のサイズの青エミッタ28である。
図7は
図6と
図27の配置の実質的な副画素表示サンプリング点の配置29を示し、
図8と
図9とは
図6と
図27の配置の青色平面サンプリング点23についての、別の実質的な副画素表示サンプリング領域123,124の配置30,31を示す。
図7,8,9については後で説明する。
【0023】
図10は、3色画素39の配置38の別の実施の形態の例を示す。3色画素39は正方形内の1個の青エミッタ32と、2個の赤エミッタ34と、2個の緑エミッタ36とから成る。3色画素39は正方形であり、X,Y座標システムの原点にある。青エミッタ32は正方形の原点の中心にあり、X,Y座標システムの第1、第2、第3、第4象限に延びる。1対の赤エミッタ34は対向する象限(すなわち、第2象限と第4象限)内に配置され、1対の緑エミッタ36は対向する象限(すなわち、第1象限と第3象限)内に配置され、どちらも青エミッタ32が占めていない象限の部分を占める。
図10に示すように、青エミッタ32は菱形であり、その頂点は座標システムのX軸とY軸に並ぶ。赤エミッタ34と緑エミッタ36の対向する対は一般に正方形で、切り欠かれて内側に面する頂点は青エミッタ32の各辺に平行な縁を形成する。
【0024】
配列はパネル全体に繰り返されて望ましいマトリクス分解能を持つ装置を形成する。繰り返す3色画素は「チェッカ盤」を形成し、赤エミッタ34と緑エミッタ36は交替に並び、青エミッタ32は装置全体に均一に分布するが分解能は赤エミッタ34と緑エミッタ36の半分である。赤エミッタ34aと34bについては後で説明する。
この3色画素配列の1つの利点はカラー・ディスプレイの分解能が改善されることである。その理由は、赤エミッタと緑エミッタだけが輝度チャンネルで高い分解能の知覚に大きく寄与するからである。したがって、青エミッタの数を減らしていくつかを赤エミッタと緑エミッタに置き換えると、人の視覚と一層密接に調和して分解能が向上する。
赤エミッタと緑エミッタとを垂直軸で半分に分割して空間アドレス可能性を高めることは、従来技術の垂直単色ストライプより優れている。赤エミッタと緑エミッタとが交替する「チェッカ盤」により空間周波数分解能を水平軸方向にも垂直軸方向にも高めることができる。
【0025】
第1のデータ・フォーマットの画像を第2のデータ・フォーマットのディスプレイ上に再構築するには、各エミッタの幾何学的中心の再構築点を分離してサンプリング格子を作ることによりサンプル領域を定義する必要がある。
図11は
図10の3色画素の配置38についての実質的な再構築点の配置40を示す。再構築点(例えば、
図11の33,35,37)は3色画素39内のエミッタ(例えば、それぞれ
図10の32,34,36)の幾何学的位置の中心にある。赤再構築点35と緑再構築点37とはディスプレイ全体に赤と緑の「チェッカ盤」配列を形成する。青再構築点33は装置全体に均一に分布するが、分解能は赤再構築点35と緑再構築点37の半分である。副画素表示ではこれらの色再構築点をサンプリング点として処理し、これを用いて、別々に処理される色平面毎に実質的な
サンプリング領域を構築する。
図12は実質的な青サンプリング点46(
図11の青再構築点33に対応する)と、
図11の再構築配列についての青色平面42のサンプリング領域44とを示す。再構築点の正方形格子では、最小境界線は正方形格子である。
【0026】
図13は、
図11の赤再構築点35と
図7の赤再構築点25とに対応する実質的な赤サンプリング点51と、赤色平面48の実質的なサンプリング領域50,52,53,54を示す。サンプリング点51はディスプレイ境界に対して45°の正方形格子配列を形成する。したがってサンプリング格子の中心の配列内では、サンプリング領域は正方形格子を形成する。正方形格子がディスプレイの境界と部分的に重なるところでは「縁効果」があるので、同じ面積になるようにまた各サンプルの境界線が最小になるように形状を調整する(例えば、54)。サンプル領域を調べると、サンプル領域50はサンプル領域52と同じ面積を有するが、サンプル領域54はやや面積が大きく、隅のサンプル領域53はやや小さいことが分かる。このために誤差が生じる。すなわち、サンプル領域53内の変化するデータは過大に表され、サンプル領域54内の変化するデータは過小に表される。しかし数百万というエミッタを持つディスプレイでは誤差は極めて小さく、画像の隅で消える。
【0027】
図14は、
図11の緑再構築点37と
図7の緑再構築点27とに対応する実質的な緑サンプリング点57と、緑色平面60の実質的なサンプリング領域55,56,58,59を示す。
図14を調べると
図13と本質的に同じであって同じサンプル領域関係を有するが、180°回転していることが分かる。
エミッタとその得られたサンプル点および領域とのかかる配列は、グラフィックス・ソフトウエアが直接用いて高画質を生成し、グラフィックス要素またはベクトルを変換して色サンプル平面をずらし、従来技術のサンプリング方式とサンプリング点および領域とを結合するのが最もよい。携帯用電子機器、ラップトップ・コンピュータ、デスクトップ・コンピュータ、テレビジョン/ビデオ・システムなどの完全なグラフィックス・ディスプレイ・システムは、平面パネル・ディスプレイとこれらのデータ・フォーマットとを用いるとよい結果が得られる。用いられるディスプレイの種類は、液晶ディスプレイ、減法(subtractive)ディスプレイ、プラズマ・パネル・ディスプレイ、エレクトロルミネセンス(EL)ディスプレイ、電気泳動ディスプレイ、フィールド・エミッタ・ディスプレイ、ディスクリート・発光ダイオード・ディスプレイ、有機発光ダイオード(OLED)ディスプレイ、プロジェクタ、ブラウン管(CRT)ディスプレイなどと、少なくとも1つのこれらのディスプレイで構成する組合わせとを含むが、これらに限られるわけではない。しかし、インストール済みのグラフィックスやグラフィックス・ソフトウエアの多くは、元来CRTを使用することを基本としてレガシー(legacy)・データ・サンプル・フォーマットを再構築ディスプレイとして用いる。
【0028】
図15は、赤、緑、青の値が等しい空間分解能格子上にありまた一致している、従来技術の画素データ・フォーマット70についてサンプル点74とその実質的なサンプル領域72との配列を示す。従来技術のディスプレイ・システムでは、単に
図1に示す種類の従来技術のRGBストライプ・パネル上の各色平面からのデータを用いて、このデータの形を平面パネル・ディスプレイ上に再構築している。
図1では各色の副画素の分解能はサンプル点と同じであって、行内の3つの副画素を単一の結合され混合された多色画素を構成するものとして処理し、各色の副画素の実際の再構築点の位置は無視した。この技術では、これをディスプレイの「固有モード」と呼ぶことが多い。これは副画素の、特に赤と緑の位置情報を無駄にする。
【0029】
対照的に、本出願は入力RGBデータを互いに重なる3平面として処理する。RGBフォーマットからのデータを変換するには各平面を別々に処理する。元の従来技術のフォーマットからの情報を本出願の一層効率的な副画素配置上に表示するには、リサンプリングに
よるデータ・フォーマットの変換が必要である。各サンプル点の出力が入力データの重み関数であるようにしてデータをリサンプリングする。各データ・サンプルの空間周波数に依存して、各出力サンプル点の重み関数は同じこともあり、異なることもある。これについては後で説明する。
【0030】
図16は、
図15のサンプル点を
図11の副画素表示済みサンプル点33、35、37の上に重ねた配置76を示す。ここで、
図15のサンプル点74は
図11の赤(赤再構築点35)と緑(緑再構築点37)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する。
図17は
図15のサンプル点74とその実質的なサンプル領域72とを
図12の青色平面サンプリング点46の上に重ねた配置78を示す。ここで、
図15のサンプル点74は
図11の赤(赤再構築点35)と緑(緑再構築点37)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する。
図17については後で更に説明する。
【0031】
図18は
図15のサンプル点74とその実質的なサンプル領域72とを
図13の赤色平面サンプリング点35と赤サンプリング領域50,52,53,54の上に重ねた配列80を示す。ここで、
図15のサンプル点74は
図11の赤(赤再構築点35)と緑(緑再構築点37)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する。正方形サンプル領域52である内部の配列は一致する元のサンプル点74とそのサンプル領域82とを完全にカバーし、また延長して、サンプル領域52内にある周囲の各サンプル領域84の1/4をカバーする。アルゴリズムを決定するため、入力サンプル領域72の上の出力サンプル領域50,52,53,54のカバレージの分数すなわち部分的重なりを記録し、次にその対応するサンプル点74の値を掛けて出力サンプル領域35に適用する。
図18で、中心の(すなわち一致する)入力サンプル領域84が埋める正方形サンプル領域52の面積は正方形サンプル領域52の半分である。したがって、対応するサンプル点74の値に1/2(すなわち、0.5)を掛ける。調べてみると、周囲の一致しない各入力領域84が埋める正方形サンプル領域52の面積はそれぞれ1/8(すなわち、0.125)である。したがって、対応する4つの入力サンプル点74の値に1/8(すなわち、0.125)を掛ける。次にこれらの値を前の値(例えば、0.5を掛けた値)に加えて、所定のサンプル点35の最終出力値を得る。
【0032】
縁のサンプル点35とその5辺を有するサンプル領域50では、一致する入力サンプル領域82は上に述べた場合と同様に完全にカバーされるが、3つの周囲の入力サンプル領域84,86,92は部分的に重なる。部分的に重なる入力サンプル領域84は出力サンプル領域50の1/8を表す。縁に沿う隣接入力サンプル領域86と92とはそれぞれ出力領域の3/16(すなわち、0.1875)を表す。前と同様に、部分的に重なるサンプル領域72からの入力値74の重み付き値を加えると、サンプル点35の値が得られる。
【0033】
隅と隅「付近」は同じように扱う。隅53と隅「付近」54がカバーする画像の面積は中心領域52および縁領域50とは異なるので、入力サンプル領域86,88,90,92,94,96,98の重みは前に述べた入力サンプル領域82,84,86,92に比例して異なる。より小さな隅の出力サンプル領域53では、一致する入力サンプル領域94は出力サンプル領域53の4/7(すなわち、約0.5714)をカバーする。隣接する入力サンプル領域96は出力サンプル領域53の3/14(すなわち、約0.2143)カバーする。隅「付近」のサンプル領域54では、一致する入力サンプル領域90は出力サンプル領域54の8/17(すなわち、約0.4706)をカバーする。内側の隣接するサンプル領域98は出力サンプル領域54の2/17(すなわち、約0.1176)をカバーする。縁側の隣接する入力サンプル領域92は出力サンプル領域54の3/17(すなわち、約0.1765)をカバーする。隅の入力サンプル領域88は出力サンプル領域54の4/17(すなわち、約0.2353)をカバーする。前のように、部分的に重
なるサンプル領域72からの入力値74の重み付き値を加えるとサンプル点35の値が得られる。
緑色平面のリサンプリングの計算は同様にして行うが、出力サンプル配列は180°回転する。
【0034】
繰り返して述べると、赤サンプル点35と緑サンプル点37の値Voutの計算は次のよう
に行う。
【0036】
ただし、V
inはC
xR
yでの副画素の色だけのクロマナンス値、C
xは赤副画素34と緑副
画素36の第x列、R
yは赤副画素34と緑副画素36の第y行を表す。したがってC
xR
yはディスプレイ・パネルの第x列、第y行の赤副画素34と緑副画素36のエミッタを
表す。従来と同様に左上隅から数える。
【0037】
重要なことは、各数式内の係数重みを合計すると1になるということである。全画像変換を計算する式は17あるが、対称なので係数は4組だけである。これにより、実現する際の複雑さが減少する。
前に述べたように、
図17は
図15のサンプル点74とその実質的なサンプリング領域72とを
図12の青色平面サンプリング点46の上に重ねた配列78を示す。ここで、
図15のサンプル点74は
図11の赤(赤再構築点35)と緑(緑再構築点37)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する。
図12の青サンプル点46により、青サンプル領域44は観察により決定することができる。この場合、青サンプル領域44は青リサンプル領域になる。これは元のデータ・サンプル点74の周囲の青の値の単なる算術平均であり、リサンプル画像のサンプル点46の値として計算される。
【0038】
サンプル点46の青出力値Voutは次のようにして計算する。
【0039】
【数2】
ただし、Vinは周囲の入力サンプル点74の青クロマナンス値、Cxはサンプル点74の
第x列、Ryはサンプル点74の第y行を表し、従来と同様に左上隅から数える。
赤と緑の副画素の対当たりに青副画素は1つだけなので、青副画素計算ではxとyの数は奇数でなければならない。この場合も、係数重みの合計は1である。
【0040】
赤サンプル点35の中心領域の数式の係数に重みをつけ(これは作成されるほとんどの画像に影響を与える)中心リサンプル領域52に適用するプロセスは2進シフト割り算である。すなわち、0.5は1ビットの「右」シフトであり、0.25は2ビットの「右」シフトであり、0.125は3ビットの「右」シフトである。したがって、アルゴリズムは非常に簡単で速く、単なるシフト割り算と加算だけである。精度と速度を最大にするため、周囲の画素の加算を最初に行い、次に3ビットの右シフトを1度行い、次に1ビット・シフトした中心値を加える。しかし、縁と隅の赤と緑のサンプル領域についての後者の数式は一層複雑な乗算を含む。小型のディスプレイ(例えば、全画素数が少ないディスプレイ)では、ディスプレイの画質を高めるために一層複雑な数式が必要であろう。大型の画像またはディスプレイでは、縁や隅での小さな誤差はほとんど問題にならないので簡単化してよい。簡単化するには赤と緑の平面の第1の数式を縁と隅とに適用し、画像の縁の「欠けた」入力データ・サンプル点については、入力サンプル点74は一致する入力サンプル点74に等しいとする。または、「欠けた」値は黒に設定する。このアルゴリズムはソフトウエアや、ファームウエアや、ハードウエア内に容易に実現することができる。
【0041】
重要なことは、クロマナンス値を線形加法にすることである。すなわち、副画素表示はガンマ訂正の前に行わなければならない。上のアルゴリズムの出力はガンマ訂正表に与えてよい。副画素表示の前にガンマ訂正を行うと、予期しないクロマナンス誤差が起こることがある。
図19図と
図20とは、
図15のサンプル点74とその実質的なサンプル領域72とを
図8と
図9との青色平面サンプリング点23の上に重ねた2つの別の配列100と102とを示す。ここで、
図15のサンプル点74は
図7の赤と緑の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する。
図8は、
図6のエミッタの配置において
図7に示す青色平面サンプリング点23の最小境界線を有する実質的な副画素表示サンプリング領域123を示す。
【0042】
係数を計算する方法は上に述べたように行う。
図19の各入力サンプル領域72が部分的に重なる、出力サンプル領域123の比例的重なりを計算して、変換式内の係数すなわちフィルタ核として用いる。次の変換式でこれらの係数にサンプル値74を掛ける。
【0043】
【数3】
当業者はかかる計算を高速で行う方法を見出すことができる。例えば、係数0.015625は6ビットの右シフトと同じである。
図15のサンプル点74が
図7の赤(赤再構築
点25)と緑(緑再構築点27)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する場合は、この最小境界条件領域により計算負荷が増えると共にデータは6つのサンプル点74に広がる。
【0044】
図9に示す別の実質的な出力サンプル領域124の配置31は複数の応用または場合に用いられる。例えば、
図15のサンプル点74が
図7の赤(赤再構築点25)と緑(緑再構築点27)の「チェッカ盤」配列と同じ空間分解能格子上にありまた一致する場合は、または入力サンプル領域74と出力サンプル領域との関係が
図20に示すような場合は、計算はより簡単である。偶数列では、青出力サンプル点23を計算する式は
図17について上に展開した式と同じである。奇数列では
図20についての計算は次の通りである。
【0045】
【数4】
通常通り、
図19と
図20とについての上の計算は中心サンプル領域124の一般的な場合について行う。上に述べたように、縁での計算はスクリーンの縁から離れたサンプル点74の値についての変換式すなわち仮定を修正する必要がある。
【0046】
図21は、従来技術の画素データ・フォーマットについてのサンプル点122とその実質的なサンプル領域120を示す。
図21は等しい空間分解能格子上にありまた一致する赤、緑、青の値を示すが、画像サイズが
図15に示した画像サイズとは異なる。
図22は、
図21のサンプル点122とその実質的なサンプル領域120とを
図13の赤色平面サンプリング領域50,52,53,54の上に重ねた配列106を示す。
図21のサンプル点122は
図7または
図11のそれぞれの赤(赤再構築点25,35)と緑(緑再構築点27,37)の「チェッカ盤」配列と同じ空間分解能格子上になくまた一致しない。
【0047】
図22のこの配置では、出力サンプル35毎の1つの簡単化された変換式を計算することはできない。しかし、カバーされる比例面積に基づいて各計算を行うのに用いる方法を一般化することは可能であり、また実際的でもある。入力と出力の画像の任意の所定の比について、特にこの分野で標準として共通のものについて、画像変換がセルの繰返しパターンになるような最小倍数がある場合は、これは正しい。入力と出力の配列が一致する上に示した例のように、対称性により複雑さは更に減少する。組み合わせると、繰り返す3色サンプル点122と対称性により、固有の係数の集合の数は更に扱いやすいレベルまで減る。
【0048】
例えば、「VGA」(ビデオ・グラフィックス・アダプタの略であるが、現在では単に640x480を意味する)と呼ばれる市販の標準ディスプレイ色画像フォーマットは640列と480行を有する。このフォーマットは
図10に示す配置のパネル上に表示するにはリサンプルするかまたはスケーリングする必要がある。
図10の配置は、向かい合った400の赤副画素34と400の緑副画素36(向かい合って全部で800の副画素)と、下に全部で600の副画素34と36とを有する。これにより、入力画素と出力副画素との比は4対5になる。各赤副画素34と各緑副画素36の伝達方程式は
図22の入力サンプル領域120の部分的なカバレージからサンプル出力領域52により計算することができる。この手続きは
図18の伝達方程式の展開と同じであるが、伝達方程式が1つの出力サンプル点35毎に異なるように見える点が異なる。幸い、全てのこれらの伝達方程式
の計算を進めると或るパターンが現れる。同じ5つの伝達方程式が行の間で何度も繰り返され、また別のパターンの5つの方程式が各列で繰り返される。その結果、画素と副画素との比が4:5であるこの場合は、数式の特有の集合は5x5すなわち25に過ぎない。これにより、特有の計算は25の係数集合に減少する。かかる係数には対称性の別のパターンも見られるので、係数集合の全数はわずか6つの特有の集合にまで減少する。同じ手続きを行うと、
図6の配置20についても同じ係数集合が得られる。
【0049】
上に述べた幾何学的方法を用いて係数を計算する方法の例を以下に説明する。
図32は上の例からとった1つの5x5の繰返しセル202について、640x480のVGAフォーマット画像から全部で800x600の赤と緑の副画素を持つPenTileマトリクスへの変換を示す。実線206を境界とする各正方形の副画素204は、係数の集合を計算すべき赤と緑の副画素の位置を示す。対称でない場合は、25の係数の集合を計算する必要がある。
図32については後で更に詳細に述べる。
【0050】
図33は係数の対称性を示す。この分野で用いられるフィルタ核の普通のマトリクス形式で係数を書き下ろす場合は、副画素216のフィルタ核は副画素218の核を左から右に裏返したミラー画像であろう。これは対称線220の右側の全ての副画素について当てはまり、それぞれは対向する副画素のフィルタ核のミラー画像であるフィルタ核を有する。更に、副画素222は副画素218のフィルタ核を上から下に裏返したミラー画像であるフィルタ核を有する。これも対称線224の下の全ての他の副画素について当てはまり、それぞれは対向する副画素のフィルタ核のミラー画像である。最後に、副画素226のフィルタ核は、副画素228のフィルタを対角線に関して裏返したミラー画像である。これは対称線230の右上の全ての副画素について当てはまり、そのフィルタは対角の対向する副画素のフィルタの対角ミラー画像である。最後に、対角線上のフィルタ核は内部で対角的に対称であり、対称線230の対角の対向側に同じ係数値を持つ。フィルタ核内の全てのかかる対称性を示すために、フィルタ核の完全集合の例を後で示す。計算する必要のあるフィルタは陰影をつけた副画素218,228,232,234,236,238だけである。この場合、繰返しセルのサイズは5で、必要なフィルタの最小数はわずか6つである。残りのフィルタは6つの計算されたフィルタを種々の軸に対して裏返すことにより決定することができる。繰返しセル・サイズが奇数の場合、フィルタの最小数を決定する式は次の通りである。
【0051】
【数5】
ただし、Pは繰返しセルの奇数の幅と高さ、Nfiltsは必要なフィルタの最小数である。
【0052】
図34は繰返しセル・サイズが偶数の場合の例を示す。計算する必要があるフィルタは陰影をつけた副画素240,242,244だけである。この場合は繰返しセル・サイズは4で、計算しなければならないフィルタは3つだけである。繰返しセル・サイズが偶数の場合は、フィルタの最小数を決定する一般式は次の通りである。
【0053】
【数6】
ただし、Pは繰返しセルの偶数の幅と高さ、Nevenは必要なフィルタの最小数である。
【0054】
図32に戻って、中心の副画素204の表示境界(rendering boundary)208は、4つの元の画素サンプル領域212と部分的に重なる領域210を囲む。これらの部分的に重なる領域はそれぞれ等しく、その係数を合計すると1にならなければならないので、それぞれは1/4すなわち0.25である。これらは
図33の副画素238の係数であり、この場合の2x2のフィルタ核は次の通りである。
【0056】
図33の副画素218の係数を
図35に展開する。この副画素218は、周囲の5つの入力画素サンプル領域248と部分的に重なる表示領域246(rendering area)で制限される。この副画素は繰返しセルの左上の隅にあるが、計算の都合上、縁を通る別の繰返しセルが必ずあり、追加のサンプル領域248が部分的に重なると仮定する。かかる計算は一般的な場合について行い、ディスプレイの縁は上に述べた別の方法で処理する。表示領域246はサンプル領域248の3つと水平に、また3つと垂直に交差するので、全ての係数を保持するには3x3のフィルタ核が必要である。係数は前に述べたように計算する。表示領域246でカバーされる各入力サンプル領域の面積を測定し、次に表示領域246の全面積で割る。表示領域246は左上、右上、左下、右下のサンプル領域248とは全く重ならないので、その係数はゼロである。表示領域246は表示領域246の全面積の1/8だけ中心上と中央左のサンプル領域248と重なるので、その係数は1/8である。表示領域246は中心サンプル領域248と最大比率(すなわち、11/16)で重なる。最後に、表示領域246は中央右および中心下のサンプル領域248と最小の1/32だけ重なる。これらを整理すると、次の係数フィルタ核が得られる。
【0058】
その表示領域250が5つのサンプル領域252と部分的に重なる
図33からの副画素232を
図36に示す。前と同様に、各サンプル領域252と部分的に重なる表示領域250の面積の部分を計算し、表示領域250の面積で割る。この場合は、全ての係数を保持するのに必要なフィルタ核は3x2だけであるが、一貫性を保つために3x3を用いる。
図36のフィルタ核は次の通りである。
【0060】
その表示領域254がサンプル領域256と部分的に重なる
図33からの副画素234を
図37に示す。この場合の係数計算の結果は次の通りである。
【0061】
【表4】
その表示領域258がサンプル領域260と部分的に重なる
図33からの副画素228を
図38に示す。この場合の係数計算の結果は次の通りである。
【0063】
最後に、その表示領域262がサンプル領域264と部分的に重なる
図33からの副画素236を
図39に示す。この場合の係数計算の結果は次の通りである。
【0064】
【表6】
これで、画素と副画素との比が4:5である例に必要な全ての最小数の計算を終わる。残りの25の係数集合は、
図33に述べた種々の軸で上記の6つのフィルタ核を裏返すことにより構築することができる。
【0065】
スケーリングの目的から、フィルタ核を合計すると必ず1にならなければならない。さもなければ出力画像の明度に影響する。これは上の6つのフィルタ核全てに当てはまる。しかし、核をこの形式で実際に用いた場合は係数値は全て分数を持つので、浮動小数点演算が必要である。この分野では、全ての係数に或る値を掛けて、全てを整数に変換するのが普通である。これにより、整数演算を用いて入力サンプル値にフィルタ核係数を掛けることができる。後で全体を同じ値で割ればよい。上記のフィルタ核を調べると、全ての係数に掛ける値として64が適当である。これにより、
図35からの副画素218として次のフィルタ核が得られる。
【0067】
計算を容易にするために、この場合の全ての他のフィルタ核を同様に修正して整数に変換することができる。除数が2の累乗のときは特に都合がよい(この場合はそうである)。2の累乗で割るのは、結果を右にシフトすることによりソフトウエアまたはハードウエアで迅速に行うことができる。この場合、右に6ビットシフトすると64で割ることになる。
【0068】
対照的に、XGA(拡張グラフィックス・アダプタの略であるが、現在は単に1024x768を意味する)と呼ばれる市販の標準ディスプレイ・カラー画像フォーマットは1024列と768行とを有する。このフォーマットをスケーリングして、1600x1200の赤エミッタ34と緑エミッタ36(これに加えて800x600の青エミッタ32)とを有する
図10の配置38上に表示することができる。この構成のスケーリングすなわちリサンプリング比は16対25で、625の特有の係数の集合が得られる。係数の対称性を用いてこの数をより妥当な91の集合に減らす。しかしフィルタの数がこのように小さくても、上に述べたように手で行うのは面倒である。手で行う代わりに、コンピュータ・プログラム(機械読取り可能な媒体)は機械(例えば、コンピュータ)を用いてこのタスクを自動化し、係数の集合を迅速に作ることができる。実際には、このプログラムを一度用いて任意の所定の比についてフィルタ核の表を生成する。次にこの表をスケーリング/表示のソフトウエアが用いるか、またはスケーリングと副画素表示とを行うハードウエアのROM(読取り専用メモリ)に焼き付ける。
【0069】
フィルタ生成プログラムが行う第1のステップは繰返しセルのスケーリング比とサイズとを計算することである。これを行うには入力画素の数と出力副画素の数とをそのGCD(最大公約数)で割る。これは、小さな二重入れ子ループで行ってもよい。外側のループは2つの数を一連の素数に対してテストする。このループは、2つの画素数の小さい方の平方根と同じ大きさの素数をテストするまで続けなければならない。一般的なスクリーン・サイズで行う場合は、41より大きな素数に対してテストする必要はないはずである。逆に、このアルゴリズムは予め「オフライン」でフィルタ核を生成することを目的としているので、外側のループは2から或る法外に大きな数、素数、非素数までの全ての数について単に走らせてよい。CPUは必要以上のテストを行うことになるのでこれはCPU時間の無駄であるが、コードは入力と出力のスクリーン・サイズの特定の組合わせについて一度走らせるだけでよい。
【0070】
内側のループは2つの画素数を現行の素数に対してテストする。両方の数がこの素数で割り切れる場合は両方をこの素数で割る。内側のループは2つの数の一方がこの素数で割り切れなくなるまで続ける。外側のループが終わると、残りの小さな数はGCDで実質的に
割られている。2つの数は2つの画素数の「スケール比」である。いくつかの代表的な値を示すと、
320:640 は 1:2 になり、
384:480 は 4:5 になり、
512:640 は 4:5 になり、
480:768 は 5:8 になり、
640:1024は 5:8 になる。
【0071】
これらの比を画素対副画素比、またはP:S比と呼ぶ。ただし、Pは比の入力画素分子であり、Sは比の副画素分母である。繰返しセルの横と縦に必要なフィルタ核の数はこの比のSである。必要な核の総数は水平と垂直のS値の積である。ほとんど全ての普通のVGA方式のスクリーン・サイズでは、水平と垂直の繰返しパターン・サイズは同じであり、必要なフィルタの数はS
2である。上の表から、1024x768のPenTileマト
リクスにスケーリングされる640x480画像のP:S比は5:8であり、8x8すなわち64の異なるフィルタ核を必要とする(対称性は考慮に入れていない)。
【0072】
理論的な環境では、加えて1になる分数値がフィルタ核に用いられる。上に述べたように、実際にはフィルタ核を整数値として計算しておいて、後で除数を掛けて全体が1になるように正規化することが多い。初めに重み値をできるだけ正確に計算し、十分大きな座標システムで表示領域を計算して全ての計算が整数でできるようにすることが重要である。経験によると、画像のスケーリングの場合に用いる正しい座標システムは、1つの繰返しセルにおいて入力画素のサイズが出力副画素の数に等しいものであって、これにより1つの繰返しセルにおいて出力画素のサイズは入力画素の数に等しくなる。これは良い考えではなく、うまくいかないように思われる。例えば、512入力画素を4:5のP:S比で640にスケーリングする場合、入力画素をグラフ用紙の上に5x5の正方形でプロットし、その上に出力画素を4x4の正方形でプロットすることができる。これは両方の画素を描きしかも全ての数を整数に保つことができる最小スケールである。この座標システムでは、出力副画素の上を中心とする菱形の表示領域の面積は常に出力画素の面積の2倍、すなわち2*P
2に等しい。これはフィルタ重み値の分母として用いることのできる最小
整数値である。
【0073】
残念ながら菱形は複数の入力画素にまたがるので、三角形に細分してよい。三角形の面積は幅に高さを掛けて2で割るが、これによりまた非整数になることがある。面積を2度計算すればこの問題が解決されるので、プログラムは面積に2を掛ける。これで、最小の有用な整数フィルタ分母は4*P2になる。
【0074】
次に、各フィルタ核の大きさを決める必要がある。前に手で計算した例では、フィルタ核には2x2や、3x2や、3x3のものがあった。入力と出力の画素の相対的サイズと菱形の表示領域が互いに交差する形とで、必要な最大フィルタ核サイズを決定する。入力画素(例えば、100:201、または1:3)毎に2つを超える出力副画素にまたがる原始画素からの画像をスケーリングするとき、2x2フィルタ核が可能になる。これにより、実現するのに必要なハードウエアが少なくなる。更に、画像の質は従来技術のスケーリングより良くなる。なぜなら、得られる画像は空間周波数をできるだけ良く保存し、多くの平面パネル・ディスプレイの鋭い縁で表される、暗示目標画素の「四角度(square−ness)」を捕らえるからである。かかる空間周波数は、この技術で公知のナイキスト限界を逃れて見掛けの分解能を改善するためにフォントとアイコンの設計者により用いられる。従来技術のスケーリング・アルゴリズムは、スケーリングされた空間周波数を内挿によりナイキスト限界に制限するか、または鋭さは保つが好ましくない位相誤差を生じる。
【0075】
スケールダウンするとき、入力画素の方が出力副画素より数が多い。1:1より大きい任意の倍率(例えば、101:100または2:1)でフィルタ・サイズは4x4以上になる。これを実現するために、ハードウエア・メーカを説得してより多くのライン・バッファを追加することは困難である。しかし1:1と1:2との範囲内に留まることは、核サイズを一定の3x3フィルタにできるという利点を有する。幸い、ハードウエアで実現すべき多くの場合はこの範囲内に収まり、単に3x3の核を生成するプログラムを書くことは妥当である。上述の手で行う例のような特殊な場合には、フィルタ核の中には3x3より小さいものがある。別の特殊な場合には、理論上はフィルタが3x3になるはずであっても、全てのフィルタが2x2に収まることがある。しかし、一般的な場合について核を計算する方が容易であり、また固定の核サイズでハードウエアを実現する方が容易である。
【0076】
最後に、今や核フィルタの重み値の計算は、繰返しセル内の各特有の(非対称の)位置で出力菱形と交差する3x3の入力画素の面積(の2倍)を計算することに過ぎない。これはこの分野で公知の非常に簡単な「表示」タスクである。フィルタ核毎に3x3の、すなわち9つの係数を計算する。各係数を計算するため、菱形の表示領域のベクトル記述を生成する。この形状を入力画素領域の縁に対してクリップする。この分野で公知の多角形クリッピング・アルゴリズムを用いる。最後に、クリップされた多角形の面積(の2倍)を計算する。得られる面積はフィルタ核の対応するセルの係数である。このプログラムからの出力の例を以下に示す。
原始画素分解能は1024、
目的副画素分解能は1280、
スケーリング比は4:5、
フィルタ数は全て256で割る、
必要最小フィルタ(対称性あり)は6、
ここで生成されるフィルタの数(対称性なし)は25。
【0078】
上の出力の例では、対称性を考慮に入れずに、この場合に必要な25のフィルタ核を全て
計算する。これにより、係数を調べて、これらの繰返しセル内のフィルタ核内に水平、垂直、対角の対称性があることを目で確認することができる。前と同様に、画像の縁と隅は独自に処理してよい。または、「欠けた」入力データ・サンプルを他の平均か、最大の単一寄与データか、黒の値で埋めて近似してよい。この技術で公知のように、各係数の集合をフィルタ核で用いる。位置と対称性のオペレータを追跡することは、ソフトウエアまたはハードウエアの設計者がこの技術で公知のモジュロ計算法を用いて行うタスクである。係数を生成するタスクは、この技術で公知の方法を用いて、出力サンプル点35に対応するサンプル毎に、入力サンプル領域120が出力サンプル領域52に比例的に重なる面積を計算するという簡単なことである。
【0079】
図23は、
図21のサンプル点122とその実質的なサンプル領域120とを
図12の青色平面サンプリング領域44の上に重ねた配列108を示す。ここで、
図21のサンプル点122は
図11の赤と緑の「チェッカ盤」配列と同じ空間分解能格子上になくまた一致しない。変換式の計算を行う方法は前に述べたように進行する。まず、3色画素の繰返し配列のサイズを決定し、次に特有の係数の最小数を決定した後、対応する出力サンプル点46毎に入力サンプル領域120を出力サンプル領域44に比例的に重ねることによりこれらの係数の値を決定する。これらの各値を変換式に与える。繰返し3色画素の配列と得られる係数の数は赤と緑の平面について決定される数と同じである。
【0080】
図24は、
図21のサンプル点とその実質的なサンプル領域とを
図8の青色平面サンプリング領域123の上に重ねた配列110を示す。ここで、
図21のサンプル点122は
図11の赤(赤再構築点35)と緑(緑再構築点37)の「チェッカ盤」配列と同じ空間分解能格子上になくまた一致しない。変換式計算を行う方法は前に述べたように進行する。まず、3色画素の繰返し配列のサイズを決定する。次に特有の係数の最小数を決定した後、対応する出力サンプル点23毎に入力サンプル領域120を出力サンプル領域123に比例的に重ねることによりこれらの係数の値を決定する。これらの各値を変換式に与える。
【0081】
これまではCRTのRGBフォーマットを調べた。従来技術のRGB平面パネル・ディスプレイ配置10は、従来技術の
図1と同様に3色画素8内に配列された赤4と、緑6と、青2のエミッタを有する。この配列に従ってフォーマットされた画像を
図6または
図10に示す3色画素上に投影するには再構築点を決定しなければならない。赤と緑と青の再構築点の位置を従来技術の
図2の配置12で示す。赤と緑と青の再構築点は互いに一致せず、水平方向に変位している。Benzschawl他が米国特許第5,341,153号に、また後でHill他が米国特許第6,188,385号に開示した従来技術では、これらの位置は、赤色平面14について従来技術の
図3に、青色平面16について従来技術の
図4に、緑色平面18について従来技術の
図5に示すようなサンプル領域を持つサンプル点3,5,7として用いられる。
【0082】
変換式の計算はここに開示した方法により
図3,4,5に示す従来技術の配置から行うことができる。上に説明した方法を用いるには、選択された従来技術の配置の出力サンプル点毎に、変換式の係数すなわちフィルタ核を計算する。
図25は
図3の赤色平面の実質的なサンプル領域125を
図13の赤色平面サンプリング領域52上に重ねたものを示す。ここで、
図25の赤エミッタ35の配置は
図6と
図10の配置と同じ画素レベル(繰返しユニット)分解能を有する。変換式の計算を行う方法は上に述べたように進行する。まず、3色画素の繰返し配列のサイズを決定する。次に、対称性を考慮して特有の係数の最小数(この場合は2)を決定した後、対応する出力サンプル点35毎に入力サンプル領域125を出力サンプル領域52に比例的に重ねることによりこれらの係数の値を決定する。これらの各値を変換式に与える。
図4に示すように、緑色平面のリサンプリングの計算は同様にして行うが、出力サンプル配列は180°回転し、緑入力サンプル領域127はず
れている。
図26は、従来技術の
図4の青色平面の実質的なサンプル領域127を
図8の青色平面サンプリング領域123の上に重ねたもの示す。
【0083】
図40は
図32の赤と緑の例に対応する青の例を示す。
図40のサンプル領域266は、赤と緑の例の場合の菱形とは異なり正方形である。元の画素境界272の数は同じであるが、青出力画素境界274の数は少ない。係数は前と同じようにして計算する。表示領域266でカバーされる各入力サンプル領域268の面積を測定し、表示領域266の全面積で割る。この例では、青サンプリング領域266は4つの元の画素領域268と等しく部分的に重なり、1/4という4つの係数を持つ2x2のフィルタ核が得られる。
図40では、8つの他の青出力画素領域270と元の画素領域268との幾何学的交差が見られる。得られたフィルタの対称関係が、各出力画素領域270内の元の画素境界274の対称的配置内に見られる。
【0084】
より複雑な場合は、コンピュータ・プログラムを用いて青フィルタ核を生成する。このプログラムは赤と緑のフィルタ核を生成するプログラムと非常に似ている。
図11の青副画素のサンプル点33は赤と緑のサンプル点35,37の2倍離れており、青表示領域は2倍広そうである。しかし赤と緑の表示領域は菱形なので、サンプル点の間隔は2倍広い。このため赤と緑と青の表示領域の幅と高さは同じになり、いくつかの便利な数が得られる。すなわち、青のフィルタ核のサイズは赤と緑のフィルタ核のサイズと同じである。また、青の繰返しセル・サイズは赤と緑の繰返しセル・サイズと一般に同じである。青副画素のサンプル点33は2倍離れているので、P:S(画素対副画素)比は2倍である。例えば、赤の場合の比2:3は、青の場合は4:3になる。しかし、繰返しセル・サイズを決定しかつ2倍になっても変わらないのは、この比の中の数Sである。しかし分母が2で割り切れる場合は、更に最適化することができる。その場合、青の2つの数を追加の2の累乗で割ることができる。例えば、赤と緑のP:S比が3:4の場合は青の比は6:4で、これは簡単化して3:2にすることができる。これは、かかる(偶数の)場合は青の繰返しセル・サイズを半分にすることが可能であり、また必要なフィルタ核の総数は赤と緑の総数の1/4になることを意味する。逆に、アルゴリズムまたはハードウエア設計を簡単にするために、青の繰返しセル・サイズを赤と緑の繰返しセル・サイズとを等しくしておくことが可能である。得られたフィルタ核の集合は写し(実際は4つの写し)を有するが、赤と緑のフィルタ核の集合と同じように機能する。
【0085】
したがって、赤と緑のフィルタ核プログラムを用いて青フィルタ核を生成するのに必要な唯一の変更は、P:S比の分子を2倍し、表示領域を菱形ではなく正方形に変えることであった。
次に、
図6の配置20と
図9の青サンプル領域124とを考える。これは前の例と同じで、青サンプル領域124は正方形である。しかし、その1つおきの列が高さの半分だけ千鳥に上下しているので計算は複雑である。一見したところ、繰返しセル・サイズが水平方向に2倍であるように見える。しかし正しいフィルタ核を作るために以下の手続きが発見された。すなわち、
1) 上に述べたように、青サンプル点が千鳥でないかのようにフィルタ核の繰返しセル集合を生成する。繰返しセルのフィルタの表の列と行とに、ゼロから始まり、繰返しセル・サイズから1を引いた値で終わる数を付ける。
2) 出力画像内の偶数列では、繰返しセル内のフィルタはそれ自体で正しい。出力Y座標の繰返しセル・サイズ内のモジュロはフィルタ核のどの行を用いるかを選択し、X座標の繰返しセル・サイズ内のモジュロは1つの列を選択して、Yで選択された行内のどのフィルタを用いるかを知らせる。
3) 奇数の出力列では、Y座標から1を引いた後にそのモジュロ(繰返しセル・サイズ内の)をとる。X座標は偶数列と同様に扱う。これにより、
図9の千鳥の場合に正しいフィルタ核を取り出すことができる。
【0086】
場合によっては、モジュロ計算を前以て行い、フィルタ核の表を予め千鳥にしてよい。残念ながら、これは偶数列を持つ繰返しセルの場合にだけ有効である。繰返しセルが奇数列を有する場合は、モジュロ演算は、半分の時間は偶数列を、他の半分の時間は奇数列を選択する。したがって、どの列を千鳥にするかの計算は、事前にではなく、表を用いるときに行わなければならない。
【0087】
最後に、
図6の配置20と
図8の青サンプリング領域123とを考える。これは六角形のサンプル領域という余分な複雑さを持つ以前の場合と同じである。かかる六角形に関する第1のステップは、それを正しく描く方法か、またはコンピュータ・プログラム内にそのベクトル・リストを生成する方法である。最も正確にするためには、かかる六角形は最小面積の六角形でなければならないが、それは正六角形ではない。
図41に示すようにこれを幾何学的に証明するのは容易である。
図8のかかる六角形のサンプリング領域123は正方形のサンプリング領域276より各辺が1/8だけ広い。また六角形のサンプリング領域123の頂辺と底辺は正方形のサンプリング領域276の頂辺と底辺より各端が1/8だけ狭い。最後に、六角形のサンプリング領域123と正方形のサンプリング領域276とは高さが等しい。
【0088】
かかる六角形のサンプリング領域123のフィルタ核は、赤と緑については菱形で、または青については正方形で、上に述べた幾何学的方法と同じ方法で生成することができる。表示領域は単に六角形であり、かかる六角形が周囲の入力画素と部分的に重なる面積を測定する。残念ながら、やや広い六角形のサンプリング領域123を用いるとき、スケーリング比が1:1と1:2との間に留まる場合でもフィルタ核のサイズはしばしば3x3フィルタを超える。分析によると、スケーリング比が1:1と4:5との間の場合は核サイズは4x3である。スケーリング比が4:5と1:2との間ではフィルタ核サイズは3x3に収まる(六角形のサンプリング領域123の高さは正方形のサンプリング領域276の高さと同じなので、フィルタ核の垂直のサイズは同じである)。
【0089】
より広いフィルタ核のハードウエアを設計することは、より高いフィルタ核を処理するハードウエアを構築するほど難しくないので、ハードウエア・ベースの副画素表示/スケーリングのシステムに4x3のフィルタを要求するのは不当でない。しかし別の解決方法が可能である。スケーリング比が1:1と4:5との間のとき、
図9の正方形のサンプリング領域124を用いると3x3のフィルタが得られる。スケーリング比が4:5と1:2との間のとき、
図8の一層正確な六角形のサンプリング領域123が用いられ、やはり3x3のフィルタが必要である。このようにすれば、ハードウエアを構築するのが簡単で費用がかからない。ハードウエアは1つのサイズのフィルタ核についてだけ構築すればよく、変わるのはかかるフィルタを構築するのに用いるアルゴリズムだけである。
【0090】
図9の正方形のサンプリング領域と同様に、
図8の六角形のサンプリング領域の列は1つおきに千鳥配置である。分析によると、
図9に関して上に述べたフィルタ核の選択と同じ方法が
図8の六角形のサンプリング領域でも有効である。基本的に、これは六角形が千鳥配置でないとして(実は常にそうであるが)フィルタ核の係数を計算してよいことを意味する。これにより計算が容易になり、フィルタ核の表が2倍の大きさになることが避けられ。
【0091】
図32から
図39までの菱形の表示領域の場合は、計算を容易にするために全ての領域を整数にするように設計された座標システムで面積を計算した。このため全面積とフィルタ核とが大きくなり、使用中に大きな数で割る必要が生じることがある。場合によってはこのためにフィルタ核が2の累乗でなくなり、ハードウエア設計がより難しくなった。
図41の場合、六角形の表示領域123の幅が広くなると、全てを整数にするためにフィルタ
核の係数に更に大きな数を掛ける必要が生じる。かかる全ての場合に、フィルタ核の係数の除数のサイズを制限する方法を見つけるのがよい。ハードウエアの設計を容易にするには、2の累乗になる除数を選べると都合がよい。例えば、全てのフィルタ核が256で割れるように設計すると、この割り算は右に8ビット・シフトすることにより行うことができる。256を選ぶことにより全てのフィルタ核の係数も確かに8ビット値になり、標準の「バイト幅」の読取り専用メモリ(ROM)に適合する。したがって、望ましい除数を持つフィルタ核を生成するために次の手続きを用いる。好ましい除数は256なので、これを以下の手続きで用いる。
【0092】
1) 浮動小数点演算を用いてフィルタ係数の面積を計算する。この演算は予めオフラインで行うので、得られる表を用いるハードウエアのコストは増えない。
2) 各係数を表示領域の既知の全面積で割り、次に256を掛ける。全ての演算を浮動小数点で行う場合は、これでフィルタ合計は256になるが、整数の表を作るには更にステップが必要である。
3) 2進探索を行って、整数に変換したときに全フィルタの和が256になる丸め点(0.0と1.0との間)を見つける。2進探索はこの分野で公知の普通のアルゴリズムである。この探索が成功した場合は、これで終わる。2進探索は収束しないことがある。これはループが過大な回数続いているかどうか調べれば検出することができる。
4) 2進探索が失敗した場合は、フィルタ核内の適当に大きな係数を見つけ、小さな数を加減してフィルタの和を強制的に256にする。
5) フィルタが256という1つの値を持つ特殊な場合かどうか調べる。この値は8ビット・バイトの表に適合しない。この表の可能な最大数は255である。この特殊な場合には、前記1つの値を255(256−1)にセットし、周囲の係数の1つに1を加えてフィルタの和がやはり256になるようにする。
【0093】
図31は、スケーリング比が反対側の2出力副画素毎に1入力画素という特殊な場合に
図11の出力サンプル配置40を
図15の入力サンプル配置70の上に重ねたものを示す。この構成200では、元のデータが表示された副画素でなかったとき、3色画素39内の赤エミッタ35の対は、代表的な再構築点33が3色画素39の中心にある結合したものとして処理する。同様に、3色画素39内の緑エミッタ37の対は、3色画素39の中心にある1つの再構築点33として処理する。青エミッタ33はすでに中心にある。したがって、RGBデータ・フォーマットのサンプル点を再構築したかのように、全ての3色平面が中心にあるかのように、5つのエミッタを処理することができる。これは副画素のこの配置の「固有モード」と考えてよい。
【0094】
副画素表示済み画像を、副画素の異なる配置を持つ別の副画素ディスプレイ上に副画素表示を介してリサンプリングすることにより、元の画素の改善された画質の多くが保持される。1つの実施の形態では、この副画素表示済み画像からここに開示された配置への変換を生成することが望ましい。
図1,2,3,4,5,25,26において、目的のディスプレイ配置の
図25に示す出力サンプル点35毎に、変換フィルタの係数を
図3の右に変位した赤入力サンプル5に関して計算することにより、上に述べた方法は機能する。目的のディスプレイ配置の出力サンプル点毎に、変換フィルタの係数を
図4の変位した青入力サンプル7に関して計算することにより、青エミッタを上に述べたように処理する。
図5に示す緑色平面の場合は入力データはすでに副画素表示済みであり、緑データはまだ中心にあるので、非副画素表示の場合(non−sub−pixel rendered
case)から変える必要はない。
【0095】
副画素表示済みテキストを用いる応用が、非副画素表示のグラフィックスおよび写真と共に含まれるときは、副画素表示を検出して上に述べた別の空間サンプリング・フィルタを動作させるが、これも上に述べたように、非副画素表示の領域では通常の(そのスケーリ
ング比の)空間サンプリング・フィルタに戻すのがよい。かかる検出器を作るには、副画素表示済みテキストはどのように見えるか、その検出可能な機能は何か、非副画素表示の画像との違いは何かをまず理解しなければならない。まず、白黒の副画素表示済みフォントの、縁(edges)の画素は局所的に中間色(color neutral)ではない。すなわち、R≠G である。しかし複数の画素にわたると中間色である。すなわち,R≒G である。非副画素表示の画像またはテキストでは、かかる2つの条件が一緒に起こることはない。したがって、検出器を用いて複数の画素にわたって局所的に R≠G か R≒G かをテストする。
【0096】
RGBストライプ・パネル上の副画素表示は水平軸に沿って行毎に一次元なので、テストは一次元である。かかるテストの1つを次に示す。
もし
R
x≠G
x かつもし
R
x-2+R
x-1+R
x+R
x+1+R
x+2≒G
x-2+G
x-1+G
x+G
x+1+G
x+2
またはもし
R
x-1+R
x+R
x+1+R
x+2≒G
x-2+G
x-1+G
x+G
x+1
ならば、副画素表示入力に代替の空間フィルタを適用し、
さもなければ、正規の空間フィルタを適用する。
【0097】
テキストがカラーの場合は、赤と緑の成分の間に R
x=aG
xの形の関係がある。ただし、「a」は定数である。白黒のテキストでは、「a」の値は1である。テストを拡張して、白黒テキストだけでなくカラー・テキストも検出することができる。
もし
R
x≠aG
x かつもし
R
x-2+R
x-1+R
x+R
x+1+R
x+2≒a(G
x-2+G
x-1+G
x+G
x+1+G
x+2)
またはもし
R
x-1+R
x+R
x+1+
Rx+2≒a(G
x-2+G
x-1+G
x+G
x+1)
ならば、副画素表示入力に代替の空間フィルタを適用し、
さもなければ、正規の空間フィルタを適用する。
R
xとG
xとは「x」画素列座標での赤と緑の成分の値を表す。
【0098】
R≒G に十分近いかどうかを判定するしきい値テストがある。その値が最も良い結果によるように調整してよい。期間の長さ、テストのスパンは最も良い結果によるように調整してよいが、一般に上の形に従う。
図27は、別の実施の形態に係るディスプレイ装置のための、3平面内の配列内の3色画素の配置を示す。
図28は
図27の装置の配列内の青エミッタ画素の配置を示す。
図29は
図27の装置の配列内の緑エミッタ画素の配置を示す。
図30は
図27の装置の配列内の赤エミッタ画素の配置を示す。この配置とレイアウトは、それぞれの画素を結合してスクリーン上に投影する3つのパネル(赤と緑と青の原色毎に1つ)を用いるプロジェクタ・ベースのディスプレイに有用である。エミッタの配置と形状は、
図6に示す配置のサンプル領域である
図8,13,14の配置と形状によく調和する。したがって、ここに開示した
図6の配置のグラフィックス生成と、変換式の計算と、データ・フォーマットは、
図27の3パネル配置でも機能する。
【0099】
約2:3以上のスケーリング比では、副画素のPenTile
TMマトリクス配置のための副画素表示済みリサンプルデータ集合は、得られた画素を表すのにより効率的である。記憶および/または送信を行う画像をPenTile
TMディスプレイ上に表示し、かつスケーリング比が2:3以上の場合は、記憶装置空間および/または帯域幅を節約するためにリサンプリングを行った後に記憶および/または送信を行うのがよい。リサンプルされたかかる画像を「予備表示された(prerendered)」と呼ぶ。このように、この
予備表示は実質的に無損失の圧縮アルゴリズムとして機能する。
本発明の利点は、ほとんど全ての記憶された画像をとり、任意の実際的な色副画素配置上に表示することができることである。
【0100】
本発明について例示の実施の形態を参照して説明したが、当業者が理解するように、本発明の範囲から逸れることなく種々の変更を行ってよく、また同等物でその要素を代用してよい。また、この教示の真の範囲から逸れることなく、特定の状態または材料を教示に適応するように多くの変更を行ってよい。したがって本発明は、本発明を実行する最良の方法として開示された特定の実施の形態に制限されるものではなく、本発明は特許請求の範囲内に入る全ての実施の形態を含むものである。