説明

ピクセルデータを垂直にスケーリングするための方法および装置

【課題】ピクセルデータの垂直なスケーリングに関連して、ラインストアメモリ内に格納する必要のあるピクセルデータの量を減らす。
【解決手段】イメージ処理装置112は、ピクセルのラインを、RGB色空間から、YCbCr色空間に変換するための、RGB色空間からYCbCr色空間へのコンバータモジュール144と、コンバータモジュールに結合された、クロミナンスデシメータモジュール145と、中間表現を格納するように構成された、クロミナンスデシメータモジュール145に結合されたラインストアメモリ170と、中間表現のスケーリング済みバージョンを生成するように構成された、ラインストアメモリ170に結合された垂直スケーラモジュール146とを備える。

【発明の詳細な説明】
【関連出願の相互参照】
【0001】
[0001]本出願は、参照により本明細書に組み込まれた、2004年4月15日出願のW.Youngによる「MINIMALIST COLOR SPACE CONVERTERS FOR OPTIMIZING IMAGE PROCESSING OPERATIONS」という名称の同時係属の米国特許出願第10/825259号、整理番号第NVDA/P000715号の一部継続出願である。
【技術分野】
【0002】
[0002]本発明の諸実施形態は、一般に、ピクセルデータを垂直にスケーリングするための方法および装置に関する。
【背景技術】
【0003】
[0003]垂直スケーラは、一般に、入力ラインの数を出力ビデオ信号内の様々な数の出力ラインに変更するように設計される。垂直スケーラは拡大または縮小のいずれも可能である。ラインは、一般に、ビデオ水平スキャンラインと呼ばれる。特に着信ピクセルデータがライン形式の場合、垂直スケーリングのプロセスは複雑な可能性がある。垂直スケーリングには、通常、ピクセルデータの多くの隣接するライン間での比較および計算が必要である。ラスタライズ化形式での着信ピクセルデータの性質により、次のラインが使用可能になるまで前および現在のラインを格納しておかなければならない。これらのラインは通常、1つまたは複数のランダムアクセスメモリ(RAM)からなるラインストアメモリ内に格納される。各RAMのサイズは、格納されるライン数および各ラインの長さによって決定される。イメージの全幅に対応するあらゆるラインは、垂直スケーリングに備えてラインストアメモリ内に格納する必要がある可能性があるため、ラインストアメモリのサイズが非常に大きくなり、それによって垂直スケーリング操作は費用のかかるプロセスになる可能性がある。
【0004】
[0004]したがって当分野では、ピクセルデータを垂直にスケーリングするための、より費用効果の高い方法および装置が求められている。
【発明の概要】
【0005】
[0005]本発明の様々な諸実施形態の目的は、ピクセルデータの垂直なスケーリングに関連して、ラインストアメモリ内に格納する必要のあるピクセルデータの量を減らすことである。
【0006】
[0006]本発明の様々な諸実施形態は、一般に、ピクセルのラインを、赤、緑、および青(RGB)色空間から、輝度色、青色差、および赤色差(YCbCr)色空間に変換するための、RGB色空間からYCbCr色空間へのコンバータモジュールを含む、イメージ処理装置を対象とする。ピクセルのラインは第1のサンプリングレートを有する。イメージ処理装置は、RGBからYCbCr色空間へのコンバータモジュールに結合された、クロミナンスデシメータモジュールをさらに備える。クロミナンスデシメータモジュールは、第1のサンプリングレートよりも小さい第2のサンプリングレートを有する、ピクセルのラインの中間表現を生成するように構成される。中間表現を表すデータの量は、ピクセルのラインを表すデータの量よりも少ない。イメージ処理装置は、クロミナンスデシメータモジュールに結合されたラインストアメモリをさらに備える。ラインストアメモリは、中間表現を格納するように構成される。イメージ処理装置は、ラインストアメモリに結合された垂直スケーラモジュールをさらに備える。垂直スケーラモジュールは、中間表現のスケーリング済みバージョンを生成するように構成される。
【0007】
[0007]一実施形態では、イメージ処理装置は、垂直スケーラモジュールに結合されたクロミナンスデジメータモジュールをさらに備える。クロミナンスデジメータモジュールは、第2のサンプリングレートを有する中間表現のスケーリング済みバージョンを、第1のサンプリングレートを有するピクセルのラインのスケーリング済みバージョンに変換するように構成される。
【0008】
[0008]他の実施形態では、イメージ処理装置は、クロミナンスデジメータモジュールに結合された、YCbCrからRGB色空間へのコンバータモジュールをさらに備える。YCbCrからRGB色空間へのコンバータモジュールは、ピクセルのラインのスケーリング済みバージョンをYCbCr色空間からRGB色空間に変換するように構成される。
【0009】
[0009]他の実施形態では、RGBからYCbCr色空間へのコンバータモジュールは、ピクセルデータの赤色(R)構成要素の1/4を、ピクセルデータの緑色(G)構成要素の1/2およびピクセルデータの青色(B)構成要素の1/4に加えることによって、ピクセルデータの輝度色構成要素(Y)を決定する。さらにRGBからYCbCr色空間へのコンバータモジュールは、青色(B)構成要素からピクセルデータの輝度色構成要素(Y)を減じ、その結果を2で割ることによって、ピクセルデータの青色差構成要素(Cb)を決定する。さらにRGBからYCbCr色空間へのコンバータモジュールは、ピクセルデータの赤色(R)構成要素からピクセルデータの輝度色構成要素(Y)を減じ、その結果を2で割ることによって、ピクセルデータの赤色差構成要素(Cr)を決定する。
【0010】
[0010]他の実施形態では、YCbCrからRGB色空間へのコンバータモジュールは、輝度色構成要素(Y)を、ピクセルデータの赤色差構成要素(Cr)の2倍に加えることによって、ピクセルデータの赤色(R)構成要素を決定する。さらにYCbCrからRGB色空間へのコンバータモジュールは、ピクセルデータの輝度色構成要素(Y)から、ピクセルデータの赤色差構成要素(Cr)および青色差構成要素(Cb)を減じることによって、ピクセルデータの緑色(G)構成要素を決定する。さらにYCbCrからRGB色空間へのコンバータモジュールは、ピクセルデータの輝度色構成要素(Y)を、ピクセルデータの青色差構成要素(Cb)の2倍に加えることによって、ピクセルデータの青色(B)構成要素を決定する。
【0011】
[0011]本発明の前述の特徴が詳細に理解できるように、上記で簡潔にまとめられた本発明について、その一部が添付の図面に示された諸実施形態を参照しながらより具体的に説明する。しかしながら、添付の図面はこの発明の典型的な諸実施形態のみを示したものであるため、本発明が他の等しく効果的な諸実施形態を認めることができる場合、その範囲を限定するものとみなされないことに留意されたい。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に従ったコンピュータシステムを示す簡略化されたブロック図である。
【図2】本発明の一実施形態に従った、ピクセルデータをRGB空間からYCbCr空間へ変換するための方法を示す流れ図である。
【図3A】本発明の一実施形態に従った、ピクセルデータの輝度色構成要素(Y)を決定するための論理図である。
【図3B】本発明の一実施形態に従った、ピクセルデータの青色差構成要素(Cb)を決定するための論理図である。
【図3C】本発明の一実施形態に従った、ピクセルデータの赤色差構成要素(Cr)を決定するための論理図である。
【図4】本発明の一実施形態に従った、ピクセルデータを垂直にスケーリングするための方法を示す流れ図である。
【図5】本発明の一実施形態に従った、ピクセルデータをYCbCr空間からRGB空間へ変換するための方法を示す流れ図である。
【図6A】本発明の一実施形態に従った、ピクセルデータの赤色構成要素(R)を決定するための論理図である。
【図6B】本発明の一実施形態に従った、ピクセルデータの緑色構成要素(G)を決定するための論理図である。
【図6C】本発明の一実施形態に従った、ピクセルデータの青色構成要素(B)を決定するための論理図である。
【発明を実施するための形態】
【0013】
[0022]図1は、本発明の実施形態に従ったコンピュータシステム100を示す簡略化されたブロック図である。コンピュータシステム100は、システムバス106を介して通信する、中央処理ユニット(CPU)102およびシステム(主)メモリ104を含む。ユーザ入力は、システムバス106に結合された1つまたは複数のユーザ入力デバイス108(たとえばキーボード、マウス)から受け取られる。バス106に結合されたグラフィックス処理ユニット(GPU)112の制御下で動作する、ピクセルベース表示デバイス110(たとえば、従来のCRT、TV、またはLCDベースのモニタ、プロジェクタなど)に、視覚的出力が提供される。1つまたは複数のストレージデバイス128(たとえば、固定または取り外し可能な磁気ディスクドライブ、コンパクトディスク(CD)ドライブ、および/またはDVDドライブ)などの他の構成要素を、システムバス106に結合することもできる。一実施形態では、コンピュータシステム100は赤、緑、および青(RGB)色空間で動作する。本明細書では、RGB色空間で動作するコンピュータシステム100を参照しながら本発明の様々な実施形態について説明するが、本発明は、YCbCrなどの他の色空間で動作するコンピュータシステム100を企図する。
【0014】
[0023]システムメモリ104は、GPU 112によって処理されることになるピクセルデータを生成するためのオペレーティングシステムプログラムなどの、様々なプログラムまたはアプリケーションを格納する。オペレーティングシステムプログラム130の例には、Microsoft Windowsオペレーティングシステムのグラフィカルデバイスインターフェース(GDI)構成要素が含まれる。さらにシステムメモリ104は、GPU 112との通信を可能にするためのグラフィックスドライバプログラムを格納することができる。グラフィックスドライバプログラムは、GPU 112と通信するために、Open GLおよびMicrosoft DirectXなどの1つまたは複数の標準的なアプリケーションプログラムインターフェース(API)を実施することができる。適切なAPI機能コールを呼び出すことにより、オペレーティングシステムプログラムは、グラフィックスドライバプログラムに対して、システムバス106を介してピクセルデータをGPU 112に転送し、GPU 112の様々なレンダリング機能を呼び出すように指示することができる。こうしたピクセルデータは、通常、2進数形式で格納および表現される。データ転送操作は、従来のDMA(ダイレクトメモリアクセス)または他の操作を使用して実行することができる。一実施形態では、システムメモリ104がピクセルデータをRGB色空間に格納することができる。
【0015】
[0024]コンピュータシステム100は、GPU 112と通信するローカルメモリまたはフレームバッファ114をさらに含む。フレームバッファ114は、スキャンアウト制御論理によって読み取られ、イメージとして表示するために表示デバイス110に送られることになる、ピクセルデータを格納する。一実施形態では、フレームバッファ114はピクセルデータをRGB色空間に格納する。フレームバッファ114は、システムメモリ104とは別個に離れて示されているが、統合メモリアーキテクチャなどのいくつかの実施では、フレームバッファ114およびシステムメモリ104は同じ物理メモリデバイスを共用することになる。
【0016】
[0025]GPU 112は、バス106を介して受信されるグラフィックスシステムコマンドを受信および処理するための様々な構成要素を含む。GPU 112は、メモリ管理ユニット120および表示パイプライン130を含む。メモリ管理ユニット120は、フレームバッファ114またはメモリ104からピクセルデータを読み取り、このピクセルデータを順番に配置し、このピクセルデータを処理するために表示パイプライン130に伝送する。
【0017】
[0026]表示パイプライン130は、一般にイメージを処理するために使用される。表示パイプライン130は、ピクセルデータを表示デバイス上に表示するのに好適なピクセルデータに変換するように構成された、様々な処理モジュールを含むことができる。コンピュータシステム100がRGB色空間で動作する実施形態では、表示パイプライン130は、ピクセルデータを赤緑青(RGB)色空間で処理するモジュール142を含むことができる。RGB色空間内で動作する処理モジュールの例には、輝度制御、コントラスト制御、およびガンマ補正が含まれる。
【0018】
[0027]一実施形態では、表示パイプライン130は、ピクセルデータをRGB色空間からYCbCr空間へ変換するように構成された、RGBからYCbCr色空間へのコンバータモジュール144をさらに含む。RGBからYCbCr色空間へのコンバータモジュール144の動作については、図2〜3を参照しながら以下の段落で詳細に説明する。
【0019】
[0028]ピクセルデータがYCbCr色空間に変換されると、ピクセルデータをYCbCr色空間で処理することができる。したがって表示パイプライン130は、クロミナンスデシメータ145、垂直スケーラ146、およびクロミナンスインタポレータ147をさらに含むことができる。クロミナンスデシメータ145は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のサンプリングレートを減らすように構成される。クロミナンスデシメータ145は、クロミナンスダウンサンプラと呼ばれることもある。クロミナンスデシメータ145は、当業者によって一般的に知られる構成要素を含むこともできる。たとえばクロミナンスデシメータ145は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)の帯域幅を減らすように構成された低域フィルタを含むことができる。垂直スケーラ146は、ラインストアメモリ170に格納されたピクセルデータを垂直にスケーリングするように構成される。垂直スケーラ146は、当業者によって一般的に知られる任意の垂直スケーラとすることができる。クロミナンスインタポレータ147は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のサンプリングレートを増加させるように構成される。クロミナンスインタポレータ147は、クロミナンスアップサンプラと呼ばれることもある。クロミナンスインタポレータ147は、当業者によって一般的に知られる構成要素を含むこともできる。たとえばクロミナンスインタポレータ147は、有限インパルス応答(FIR)フィルタを含むことができる。クロミナンスデシメータ145、垂直スケーラ146、およびクロミナンスインタポレータ147について、図4を参照しながら以下の段落でより詳細に説明する。
【0020】
[0029]表示パイプライン130は、垂直スケーラ146と通信するラインストアメモリ170をさらに含むことができる。ラインストアメモリ170は、垂直スケーラ146によって垂直にスケーリングされるように構成されたピクセルデータを格納する。ラインストアメモリ170は、1つまたは複数のランダムアクセスメモリ(RAM)を含むことができる。ラインストアメモリ170は、システムメモリ104およびフレームバッファ114とは別個に離れて示されているが、いくつかの実施では、ラインストアメモリ170、システムメモリ104、およびフレームバッファ114は、同じ物理メモリデバイスを共用することができる。
【0021】
[0030]本発明の一実施形態によれば、表示パイプライン130は、ピクセルデータをYCbCr空間からRGB空間に変換するように構成された、YCbCrからRGB色空間へのコンバータモジュール148をさらに含む。この様式では、YCbCr空間内のピクセルデータの処理が完了すると、ピクセルデータをRGB空間に逆変換することができる。一実施形態では、YCbCrからRGB色空間へのコンバータモジュール148は、ピクセルデータが垂直にスケーリングされると、ピクセルデータをRGB空間に変換する。YCbCrからRGB色空間へのコンバータモジュール148の操作については、図5〜6を参照しながら以下の段落で詳細に説明する。
【0022】
[0031]表示パイプライン130について、1つのRGBからYCbCr色空間へのコンバータモジュール144およびそれに続く1つのYCbCrからRGB色空間へのコンバータモジュール148を含むことを基準として説明してきたが、本発明の様々な実施形態は、YCbCr色空間内で動作するコンピュータシステム内に、1つのYCbCrからRGB色空間へのコンバータモジュール148およびそれに続く1つのRGBからYCbCr色空間へのコンバータモジュール144を有する、表示パイプライン130を企図することができる。本発明の様々な実施形態は、任意数のRGBからYCbCr色空間へのコンバータモジュール144および任意数のYCbCrからRGB色空間へのコンバータモジュール148を有する、表示パイプライン130を企図することもできる。
【0023】
[0032]ピクセルデータがテレビ画面上に表示される実施形態では、表示パイプライン130は、ピクセルデータをYCbCr空間に変換するための、業界標準のRGBからYCbCr色空間へのコンバータモジュール150をさらに含む。業界標準のRGBからYCbCr色空間へのコンバータモジュール150は、ピクセルデータをテレビ画面上に表示するためにデジタルアナログコンバータ(DAC)162に関連して動作する。
【0024】
[0033]ピクセルデータがCRT上に表示される実施形態では、表示パイプライン130は、CRT上に表示される前にピクセルデータをデジタルからアナログへ変換するための、デジタルアナログコンバータ(DAC)161をさらに含む。
【0025】
[0034]コンピュータシステム100は例示的なものであり、変形および修正が可能であることを理解されよう。コンピュータシステム100は、デスクトップコンピュータ、サーバ、ラップトップコンピュータ、パームサイズコンピュータ、タブレットコンピュータ、ゲームコンソール、セットトップボックス、携帯情報端末、テザードインターネット機器、ポータブルゲームシステム、セルラ式/携帯電話、コンピュータベースシミュレータ、などとすることができる。表示デバイス110は、たとえばCRTまたはLCDモニタ、プロジェクタ、プリンタなどの、任意のピクセルベースディスプレイとすることができる。場合によっては、各デバイスがイメージデータの一部を表示する、複数の表示デバイス(たとえばプロジェクタまたはCRTモニタの配列)をサポートすることができる。表示パイプライン130およびGPU 112は、別のチップ上にあるものとすることができる。GPU 112またはいずれかのその構成要素は、適切なソフトウェア、特定用途向け集積回路(ASIC)、他の集積回路技術、またはそれらの任意の組み合わせによってプログラムされた、1つまたは複数のプログラム可能プロセッサを使用して実施することができる。本開示に鑑みて、当業者は、本発明が多種多様なシステム構成で具体化できることを理解されよう。
【0026】
[0035]図2は、本発明の一実施形態に従った、ピクセルデータをRGB空間からYCbCr空間へ変換するための方法200を示す流れ図である。ステップ210で、以下の式
Y=R/4+G/2+B/4 (1)
を使用して、ピクセルデータの輝度色構成要素(Y)が決定され、上式で、Rはピクセルデータの赤色構成要素、Gはピクセルデータの緑色構成要素、およびBはピクセルデータの青色構成要素である。赤色構成要素の色空間係数は1/4すなわち0.25であり、これは、業界標準の色空間コンバータに従った赤色構成要素の色空間係数0.299の近似である。緑色構成要素の色空間係数は1/2すなわち0.5であり、これも、業界標準の色空間コンバータに従った緑色構成要素の色空間係数0.587の近似である。青色構成要素の色空間係数は1/4すなわち0.25であり、これも、業界標準の色空間コンバータに従った青色構成要素の色空間係数0.114の近似である。したがって、式(1)に従って輝度色構成要素(Y)の計算に使用するために選択される色空間係数は、2進数形式である。色空間係数が2進数形式であるため、輝度色構成要素(Y)は2進演算を使用して計算され、乗算の使用を避けることができる。この様式では、ピクセルデータの輝度色構成要素(Y)を相対的により安価な様式で決定することができる。
【0027】
[0036]本発明の一実施形態によれば、ピクセルデータの輝度色構成要素(Y)は、図3Aに示された論理図310に従って決定することができる。したがって、ピクセルデータの輝度色構成要素(Y)は、緑色構成要素を1ビットだけ左にシフトすること(2を掛けることに等しい)、その結果を赤色構成要素および青色構成要素に加えること、ならびに合計全体を2ビットだけ右にシフトすること(4で割ることに等しい)によって、決定される。一実施形態では、論理図310は、合計全体を2ビットだけ右にシフトすることに先立って、数値丸め演算を実行することによって精密化することができる。こうした数値丸めは、2のシフトされたビット数引く1での累乗(すなわち2(s−1)、この式でsはシフト数)に等しい値を、合計全体を右にシフトすることに先立って合計全体に追加することなどの、従来の技法を使用して実行することができる。左シフトおよび右シフト演算は、コストおよび計算リソースの面から負担なしで実施される。したがって、ピクセルデータの輝度色構成要素(Y)は、論理図310に示された左および右のシフト演算を使用する相対的に安価な様式で決定することができる。
【0028】
[0037]ステップ220では、以下の式
Cb=(B−Y)/2 (2)
を使用して、ピクセルデータの青色差構成要素(Cb)が決定され、上式で、Bはピクセルデータの青色構成要素であり、Yはステップ210で決定されたピクセルデータの輝度色構成要素(Y)である。式(1)で使用された色係数と同様に、式(2)で青色差構成要素(Cb)の決定に使用される色空間係数は、業界標準の色空間コンバータに従って青色差構成要素(Cb)の決定に使用される色空間係数の近似である。この様式では、式(2)に従って青色差構成要素(Cb)の決定に使用される色空間係数は、2進数形式で入力することができる。色空間係数が2進数形式であるため、ピクセルデータの青色差構成要素(Cb)は2進演算を使用して計算され、乗算の使用を避けることができる。この様式では、ピクセルデータの青色差構成要素(Cb)を相対的により安価な様式で決定することができる。
【0029】
[0038]本発明の一実施形態によれば、ピクセルデータの青色差構成要素(Cb)は、図3Bに示された論理図320に従って決定することができる。したがって、ピクセルデータの青色差構成要素(Cb)は、ステップ210で決定されたピクセルデータの輝度色構成要素(Y)をピクセルデータの青色構成要素から減じること、および合計を1ビットだけ右にシフトすること(2で割ることに等しい)によって決定される。一実施形態では、合計を1ビットだけ右にシフトするのに先立って、数値丸め演算を実行することができる。前述のように、右シフト演算は負担なしで実施されるため、ピクセルデータの青色差構成要素(Cb)は、論理図320に示された右シフト演算を使用して相対的に安価な様式で決定することができる。
【0030】
[0039]ステップ230では、以下の式
Cr=(R−Y)/2 (3)
を使用して、ピクセルデータの赤色差構成要素(Cr)が決定され、上式で、Rはピクセルデータの赤色構成要素であり、Yはステップ210で決定されたピクセルデータの輝度色構成要素である。ステップ210および220と同様に、式(3)に従って赤色差構成要素(Cr)の決定に使用される色空間係数も、業界標準の色係数の近似であるため、2進数形式で入力することができる。色係数が2進数形式であるため、ピクセルデータの赤色差構成要素(Cr)は2進演算を使用して計算され、乗算の使用を避けることができる。この様式では、ピクセルデータの赤色差構成要素(Cr)を相対的により安価な様式で決定することができる。
【0031】
[0040]本発明の一実施形態によれば、ピクセルデータの赤色差構成要素(Cr)は、図3Cに示された論理図330に従って決定することができる。図3Cを参照すると、ピクセルデータの赤色差構成要素(Cr)は、ピクセルデータの輝度色構成要素(Y)をピクセルデータの赤色構成要素から減じること、およびその結果を1ビットだけ右にシフトすること(2で割ることに等しい)によって決定される。一実施形態では、この結果を1ビットだけ右にシフトするのに先立って、数値丸め演算を実行することができる。前述のように、右シフト演算は負担なしで実施されるため、ピクセルデータの赤色差構成要素(Cr)は、論理図330に示された右シフト演算を使用して相対的に安価な様式で決定することができる。
【0032】
[0041]図4は、本発明の一実施形態に従った、ピクセルデータを垂直にスケーリングするための方法400を示す流れ図である。ステップ410で、クロミナンスデシメータ145は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のサンプリングレートを2分の1だけ減少させる。一実施形態では、クロミナンスデシメータ145は、サンプリングレートを4:4:4サンプリングレートから4:2:2サンプリングレートまで減少させる。この様式では、ピクセルデータを格納するためのメモリ要件が3分の1だけ削減されるため、ラインストアメモリ170のサイズ要件が減少する。ここではサンプリングレートを2分の1だけ減少させたが、本発明の様々な実施形態では、サンプリングレートを任意の因数だけ減少させることができるように企図する。
【0033】
[0042]ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のサンプリングレートが2分の1だけ減少すると、ピクセルデータはラインストアメモリ170に格納される(ステップ420)。ステップ430で、垂直スケーラ146は、ラインストアメモリ170に格納されたピクセルデータを垂直にスケーリングする。ピクセルデータは、当業者によって知られる任意の垂直スケーリング技法によって垂直にスケーリングすることができる。たとえば、有限インパルス応答(FIR)デジメータを使用する格納された前のライン間での補間によって、新しい出力ラインを生成することができる。入力ラインに対する補間位置を変更することにより、新しいイメージは入力イメージとは異なるライン数を有するように形成することができる。
【0034】
[0043]ピクセルデータが垂直にスケーリングされると、クロミナンスインタポレータ147は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のサンプリングレートを2倍だけ増加させる。一実施形態では、クロミナンスインタポレータ147は、サンプリングレートを4:2:2サンプリングレートから4:4:4サンプリングレートへと増加させる。この様式では、クロミナンスインタポレータ147は、ピクセルデータの青色差構成要素(Cb)および赤色差構成要素(Cr)のオリジナルサンプリングレートを復元する。一実施形態では、ラインストアメモリ170のサイズを垂直スケーラ146内のライン数で割ったものがライン長さより小さい場合にのみ、方法400を呼び出すことができるように、方法400をプログラミングすることができる。
【0035】
[0044]方法400に従ってピクセルデータが垂直にスケーリングされると、ピクセルデータをYCbCr空間からRGB空間へと変換することができる。この点で図5は、本発明の一実施形態に従った、ピクセルデータをYCbCr空間からRGB空間へ変換するための方法500を示す流れ図である。ステップ510で、式
R=Y+2Cr (4)
を使用してピクセルデータの赤色構成要素(R)が決定され、上式で、Yはピクセルデータの輝度色構成要素であり、Crはピクセルデータの赤色差構成要素である。図2を参照しながら説明した諸ステップと同様に、式(4)に従って赤色構成要素(R)の決定に使用される色空間係数も、業界標準の色係数の近似であるため、2進数形式で入力することができる。色係数が2進数形式であるため、ピクセルデータの赤色構成要素(R)は2進演算を使用して計算され、乗算の使用を避けることができる。この様式では、ピクセルデータの赤色構成要素(R)を相対的により安価な様式で決定することができる。
【0036】
[0045]本発明の一実施形態によれば、ピクセルデータの赤色構成要素(R)は、図6Aに示された論理図610に従って決定することができる。図6Aを参照すると、ピクセルデータの赤色構成要素(R)は、ピクセルデータの赤色差構成要素(Cr)を1ビットだけ左にシフトすること(2を掛けることに等しい)、およびその結果をピクセルデータの輝度色構成要素(Y)に加えることによって決定される。前述のように、左シフト演算は負担なしで実施されるため、ピクセルデータの赤色構成要素(R)は、論理図610に示された左シフト演算を使用して相対的に安価な様式で決定することができる。
【0037】
[0046]ステップ520では、式
G=Y−Cb−Cr (5)
を使用してピクセルデータの緑色構成要素(G)が決定され、上式で、Yはピクセルデータの輝度色構成要素であり、Cbはピクセルデータの青色差構成要素であり、Crはピクセルデータの赤色差構成要素である。ステップ510と同様に、式(5)に従って緑色構成要素(G)の決定に使用される色空間係数も、業界標準の色係数の近似であるため、2進数形式で入力することができる。色係数が2進数形式であるため、ピクセルデータの緑色構成要素(G)は2進演算を使用して計算され、乗算の使用を避けることができる。この様式では、ピクセルデータの緑色構成要素(G)を相対的に安価な様式で決定することができる。
【0038】
[0047]本発明の一実施形態によれば、ピクセルデータの緑色構成要素(G)は、図6Bに示された論理図620に従って決定することができる。図6Bを参照すると、ピクセルデータの緑色構成要素(G)は、ピクセルデータの青色差構成要素(Cb)をピクセルデータの輝度色構成要素Yから減じること、およびその結果からさらに赤色差構成要素Crを減じることによって決定される。
【0039】
[0048]ステップ530では、式
B=Y+2Cb (6)
を使用してピクセルデータの青色構成要素(B)が決定され、上式で、Yはピクセルデータの輝度色構成要素であり、Cbはピクセルデータの青色差構成要素である。ステップ510および520と同様に、式(6)に従って青色構成要素(B)の決定に使用される色空間係数も2進数形式である。したがって、ピクセルデータの青色構成要素(B)は2進演算を使用して計算され、乗算の使用を避けることが可能であるため、ピクセルデータの青色構成要素(B)は相対的に安価な様式で決定することができる。
【0040】
[0049]本発明の一実施形態によれば、ピクセルデータの青色構成要素(B)は、図6Cに示された論理図630に従って決定することができる。図6Cを参照すると、ピクセルデータの青色構成要素(B)は、ピクセルデータの青色差構成要素Crを1ビットだけ左にシフトすること(2を掛けることに等しい)、およびその結果をピクセルデータの輝度色構成要素Yに加えることによって決定される。前述のように、左シフト演算は負担なしで実施されるため、ピクセルデータの青色構成要素(B)は、論理図630に示された左シフト演算を使用して相対的に安価な様式で決定することができる。
【0041】
[0050]前述の内容は本発明の諸実施形態を対象とするが、本発明の他の諸実施形態はその基本範囲を逸脱することなく考案可能であり、その範囲は添付の特許請求の範囲によって画定される。
【符号の説明】
【0042】
100…コンピュータシステム、102…中央処理ユニット(CPU)、104…メモリ、106…システムバス、108…ユーザ入力デバイス、110…ピクセルベース表示デバイス、112…グラフィックス処理ユニット(GPU)、114…フレームバッファ、120…メモリ管理ユニット、128…ストレージデバイス、130…表示パイプライン、142…ピクセルデータを赤緑青(RGB)色空間で処理するモジュール、144…RGBからYCbCr色空間へのコンバータモジュール、145…クロミナンスデシメータ、146…垂直スケーラ、147…クロミナンスインタポレータ、148…RGB色空間へのコンバータモジュール、150…RGBからYCbCr色空間へのコンバータモジュール、161,162…デジタルアナログコンバータ(DAC)、170…ラインストアメモリ、

【特許請求の範囲】
【請求項1】
ピクセルのラインを、赤、緑、および青(RGB)色空間から、輝度色、青色差、および赤色差(YCbCr)色空間に変換するための、RGB色空間からYCbCr色空間へのコンバータモジュールであって、前記ピクセルのラインは第1のサンプリングレートを有する、前記コンバータモジュールと、
前記RGBからYCbCr色空間へのコンバータモジュールに結合された、クロミナンスデシメータモジュールであって、前記クロミナンスデシメータモジュールが、前記第1のサンプリングレートよりも小さい第2のサンプリングレートを有する前記ピクセルのラインの中間表現を生成するように構成され、前記中間表現を表すデータの量が前記ピクセルのラインを表すデータの量よりも少ない、前記クロミナンスデシメータモジュールと、
前記中間表現を格納するように構成された、前記クロミナンスデシメータモジュールに結合されたラインストアメモリと、
垂直方向への前記中間表現のスケーリング済みバージョンを生成するように構成された、前記ラインストアメモリに結合された垂直スケーラモジュールと、
を備え、
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して前記ピクセルのラインを変換する
イメージ処理装置。
【請求項2】
前記垂直スケーラモジュールに結合されたクロミナンスインタポレータモジュールをさらに備え、前記クロミナンスインタポレータモジュールが、前記第2のサンプリングレートを有する前記中間表現のスケーリング済みバージョンを、前記第1のサンプリングレートを有する前記ピクセルのラインのスケーリング済みバージョンに変換するように構成される、請求項1に記載のイメージ処理装置。
【請求項3】
前記クロミナンスインタポレータモジュールに結合された、YCbCrからRGB色空間へのコンバータモジュールをさらに備え、前記YCbCrからRGB色空間へのコンバータモジュールが、前記ピクセルのラインのスケーリング済みバージョンを前記YCbCr色空間から前記RGB色空間に変換するように構成される、請求項2に記載のイメージ処理装置。
【請求項4】
ピクセルのラインを、赤、緑、および青(RGB)色空間から、輝度色、青色差、および赤色差(YCbCr)色空間に変換するための、RGB色空間からYCbCr色空間へのコンバータモジュールであって、前記ピクセルのラインは第1のサンプリングレートを有する、前記コンバータモジュールと、
前記RGBからYCbCr色空間へのコンバータモジュールに結合された、クロミナンスデシメータモジュールであって、前記クロミナンスデシメータモジュールが、前記第1のサンプリングレートよりも小さい第2のサンプリングレートを有する前記ピクセルのラインの中間表現を生成するように構成され、前記中間表現を表すデータの量が前記ピクセルのラインを表すデータの量よりも少ない、前記クロミナンスデシメータモジュールと、
前記中間表現を格納するように構成された、前記クロミナンスデシメータモジュールに結合されたラインストアメモリと、
垂直方向への前記中間表現のスケーリング済みバージョンを生成するように構成されており、前記ラインストアメモリに結合された垂直スケーラモジュールと、
前記垂直スケーラモジュールに結合されたクロミナンスインタポレータモジュールであって、前記第2のサンプリングレートを有する前記中間表現のスケーリング済みバージョンを、前記第1のサンプリングレートを有する前記ピクセルのラインのスケーリング済みバージョンに変換するように構成された該クロミナンスインタポレータモジュールと、
前記クロミナンスインタポレータモジュールに結合された、YCbCrからRGB色空間へのコンバータモジュールであって、前記YCbCrからRGB色空間へのコンバータモジュールが、前記ピクセルのラインのスケーリング済みバージョンを前記YCbCr色空間から前記RGB色空間に変換するように構成された該YCbCrからRGB色空間へのコンバータモジュールと、
を備え、
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの赤色(R)構成要素の1/4を、前記ピクセルのラインの緑色(G)構成要素の1/2および前記ピクセルのラインの青色(B)構成要素の1/4に加えることによって、前記ピクセルのラインの輝度色構成要素(Y)を決定し、
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記青色(B)構成要素から前記ピクセルのラインの前記輝度色構成要素(Y)を減じること、およびその結果を2で割ることによって、前記ピクセルのラインの青色差構成要素(Cb)を決定し、
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記赤色(R)構成要素から前記ピクセルのラインの前記輝度色構成要素(Y)を減じること、およびその結果を2で割ることによって、前記ピクセルのラインの赤色差構成要素(Cr)を決定し、
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記輝度色構成要素(Y)を、前記ピクセルのラインの前記赤色差構成要素(Cr)の2倍に加えることによって、前記ピクセルのラインの前記赤色(R)構成要素を決定し、
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記輝度色構成要素(Y)から、前記ピクセルのラインの前記赤色差構成要素(Cr)および前記青色差構成要素(Cb)を減じることによって、前記ピクセルのラインの前記緑色(G)構成要素を決定し、
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記輝度色構成要素(Y)を、前記ピクセルのラインの前記青色差構成要素(Cb)の2倍に加えることによって、前記ピクセルのラインの前記青色(B)構成要素を決定する、
イメージ処理装置。
【請求項5】
前記第2のサンプリングレートが前記第1のサンプリングレートの2分の1である、請求項1又は4に記載のイメージ処理装置。
【請求項6】
前記第1のサンプリングレートが4:4:4サンプリングレートであり、前記第2のサンプリングレートが4:2:2サンプリングレートである、請求項1又は4に記載のイメージ処理装置。
【請求項7】
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの赤色(R)構成要素の1/4を、前記ピクセルのラインの緑色(G)構成要素の1/2および前記ピクセルのラインの青色(B)構成要素の1/4に加えることによって、前記ピクセルのラインの輝度色構成要素(Y)を決定する、請求項1に記載のイメージ処理装置。
【請求項8】
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記青色(B)構成要素から前記ピクセルのラインの前記輝度色構成要素(Y)を減じること、およびその結果を2で割ることによって、前記ピクセルのラインの青色差構成要素(Cb)を決定する、請求項1に記載のイメージ処理装置。
【請求項9】
前記RGBからYCbCr色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記赤色(R)構成要素から前記ピクセルのラインの前記輝度色構成要素(Y)を減じること、およびその結果を2で割ることによって、前記ピクセルのラインの赤色差構成要素(Cr)を決定する、請求項1に記載のイメージ処理装置。
【請求項10】
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記輝度色構成要素(Y)を、前記ピクセルのラインの前記赤色差構成要素(Cr)の2倍に加えることによって、前記ピクセルのラインの前記赤色(R)構成要素を決定する、請求項3に記載のイメージ処理装置。
【請求項11】
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記輝度色構成要素(Y)から、前記ピクセルのラインの前記赤色差構成要素(Cr)および前記青色差構成要素(Cb)を減じることによって、前記ピクセルのラインの前記緑色(G)構成要素を決定する、請求項3に記載のイメージ処理装置。
【請求項12】
前記YCbCrからRGB色空間へのコンバータモジュールが、乗算を使用しない2進演算を使用して、前記ピクセルのラインの前記輝度色構成要素(Y)を、前記ピクセルのラインの前記青色差構成要素(Cb)の2倍に加えることによって、前記ピクセルのラインの前記青色(B)構成要素を決定する、請求項3に記載のイメージ処理装置。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6A】
image rotate

【図6B】
image rotate

【図6C】
image rotate


【公開番号】特開2009−282527(P2009−282527A)
【公開日】平成21年12月3日(2009.12.3)
【国際特許分類】
【出願番号】特願2009−137589(P2009−137589)
【出願日】平成21年6月8日(2009.6.8)
【分割の表示】特願2007−510867(P2007−510867)の分割
【原出願日】平成17年4月25日(2005.4.25)
【出願人】(501261300)エヌヴィディア コーポレイション (166)
【Fターム(参考)】