(57)【要約】【課題】輝度の低下を抑制しながら画像の彩度を伸長する。【解決手段】画像処理装置が、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する手段と、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する手段と、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる第２値を彩度伸長後のＲＧＢデータのＧデータの値として算出する手段と、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる第３値を彩度伸長後のＲＧＢデータのＢデータの値として算出する手段とを具備する。【選択図】図９
2015152645.tif 000002
【特許請求の範囲】
【請求項１】
元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する手段と、
前記元のＲＧＢデータのＲデータの値から前記基準値を減じて得られる第１差分と所定の係数との積を前記元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する手段と、
前記元のＲＧＢデータのＧデータの値から前記基準値を減じて得られる第２差分と前記係数との積を前記元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を前記彩度伸長後のＲＧＢデータのＧデータの値として算出する手段と、
前記元のＲＧＢデータのＢデータの値から前記基準値を減じて得られる第３差分と前記係数との積を前記元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を前記彩度伸長後のＲＧＢデータのＢデータの値として算出する手段
とを具備する
画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記基準値が、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度である
画像処理装置。
【請求項３】
請求項１に記載の画像処理装置であって、
前記基準値が、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度と、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの最大値との重み付け平均として算出される
画像処理装置。
【請求項４】
請求項１乃至３のいずれかに記載の画像処理装置であって、
更に、
ユーザによって設定されるレジスタ値に応じて前記係数を生成する手段
を具備する
画像処理装置。
【請求項５】
請求項１乃至４のいずれかに記載の画像処理装置であって、
前記係数が、彩度伸長率から１を減じた値として算出される
画像処理装置。
【請求項６】
請求項１乃至３のいずれかに記載の画像処理装置であって、
更に、
ユーザによって設定されたレジスタ値に応答して彩度伸長率を算出する手段と、
前記係数を、前記彩度伸長率から１を減じた値として算出する手段
とを具備する
画像処理装置。
【請求項７】
請求項１乃至３のいずれかに記載の画像処理装置であって、
更に、
ユーザによって設定されたレジスタ値に応答して第１彩度伸長率ｋを算出する手段と、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの上限値ＲＧＢ＿ＭＡＸと、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最大値Ｖと、前記基準値とから、第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲを下記式（１）：
【数１】
2015152645.tif 000010
に従って算出する手段と（ここで、Ｃは、前記基準値）、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最小値ＭＩＮと、前記基準値の値Ｃとから第２彩度伸長率上限値ｋＭＡＸ＿ＵＮＤＥＲを、下記式（２）
【数２】
2015152645.tif 000011
に従って算出する手段と、
前記第１彩度伸長率ｋ、前記第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲ及び第２彩度伸長率上限値ｋＭＡＸ＿ＵＮＤＥＲの最小値を、第２彩度伸長率として選択する手段
とを具備し、
前記係数は、前記第２彩度伸長率から１を減じた値として算出される
画像処理装置。
【請求項８】
請求項１乃至３のいずれかに記載の画像処理装置であって、
更に、
ユーザによって設定されたレジスタ値に応答して第１彩度伸長率ｋを算出する手段と、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの上限値ＲＧＢ＿ＭＡＸと、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最大値Ｖと、前記基準値とから、第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲを下記式（３）：
【数３】
2015152645.tif 000012
に従って算出する手段と（ここで、Ｃは、前記基準値）、
前記第１彩度伸長率ｋと前記第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲのうちの小さい方の値を、第２彩度伸長率として選択する手段
とを具備し、
前記係数は、前記第２彩度伸長率から１を減じた値として算出される
画像処理装置。
【請求項９】
表示パネルを駆動するために用いられる表示パネルドライバであって、
元のＲＧＢデータに対して彩度伸長処理を行って彩度伸長後のＲＧＢデータを生成する彩度伸長回路と、
前記彩度伸長後のＲＧＢデータに応答して前記表示パネルを駆動する駆動回路部
とを具備し、
前記彩度伸長回路は、
元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する基準値算出回路と、
前記元のＲＧＢデータのＲデータの値から前記基準値を減じて得られる第１差分と所定の係数との積を前記元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を前記彩度伸長後のＲＧＢデータのＲデータの値として算出する第１演算部と、
前記元のＲＧＢデータのＧデータの値から前記基準値を減じて得られる第２差分と前記係数との積を前記元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を前記彩度伸長後のＲＧＢデータのＧデータの値として算出する第２演算部と、
前記元のＲＧＢデータのＢデータの値から前記基準値を減じて得られる第３差分と前記係数との積を前記元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を前記彩度伸長後のＲＧＢデータのＢデータの値として算出する第３演算部
とを具備する
表示パネルドライバ。
【請求項１０】
請求項９に記載の表示パネルドライバであって、
前記基準値が、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度である
表示パネルドライバ。
【請求項１１】
請求項９に記載の表示パネルドライバであって、
前記基準値算出回路は、前記基準値を、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度と、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの最大値との重み付け平均として算出する
表示パネルドライバ。
【請求項１２】
請求項９乃至１１のいずれかに記載の表示パネルドライバであって、
更に、
ユーザによって設定されたレジスタ値に応答して前記係数を生成する係数生成部
を具備する
表示パネルドライバ。
【請求項１３】
請求項９乃至１１のいずれかに記載の表示パネルドライバであって、
更に、
前記係数を、彩度伸長率から１を減じた値として算出する係数生成部
を具備する
表示パネルドライバ。
【請求項１４】
請求項９乃至１１のいずれかに記載の表示パネルドライバであって、
更に、
ユーザによって設定されたレジスタ値に応答して彩度伸長率を算出する彩度伸長率生成部と、
前記係数を、前記彩度伸長率から１を減じた値として算出する減算器
とを具備する
表示パネルドライバ。
【請求項１５】
請求項９乃至１１のいずれかに記載の表示パネルドライバであって、
更に、
ユーザによって設定されたレジスタ値に応答して第１彩度伸長率ｋを算出する彩度伸長率生成部と、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの上限値ＲＧＢ＿ＭＡＸと、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最大値Ｖと、前記基準値とから、第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲを下記式（４）：
【数４】
2015152645.tif 000013
に従って算出する第１上限値算出部と（ここで、Ｃは、前記基準値）、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最小値ＭＩＮと、前記基準値の値Ｃとから第２彩度伸長率上限値ｋＭＡＸ＿ＵＮＤＥＲを、下記式（５）
【数５】
2015152645.tif 000014
に従って算出する第２上限値算出部と、
前記第１彩度伸長率ｋ、前記第１彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲ及び第２彩度伸長率上限値ｋＭＡＸ＿ＵＮＤＥＲの最小値を、第２彩度伸長率として選択する選択部と、
前記係数を、前記彩度伸長率から１を減じた値として算出する減算器
とを具備する
表示パネルドライバ。
【請求項１６】
請求項９乃至１１のいずれかに記載の表示パネルドライバであって、
更に、
ユーザによって設定されたレジスタ値に応答して第１彩度伸長率ｋを算出する彩度伸長率算出部と、
前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの上限値ＲＧＢ＿ＭＡＸと、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最大値Ｖと、前記基準値とから、彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲを下記式（６）：
【数６】
2015152645.tif 000015
に従って算出する上限値算出部と（ここで、Ｃは、前記基準値）、
前記第１彩度伸長率ｋと前記彩度伸長率上限値ｋＭＡＸ＿ＯＶＥＲのうちの小さい方の値を、第２彩度伸長率として選択する選択部と、
前記係数を、前記彩度伸長率から１を減じた値として算出する減算器
とを具備する
表示パネルドライバ。
【請求項１７】
表示パネルと、
前記表示パネルを駆動する表示パネルドライバ
とを具備し、
前記表示パネルドライバが、
元のＲＧＢデータに対して彩度伸長処理を行って彩度伸長後のＲＧＢデータを生成する彩度伸長回路と、
前記彩度伸長後のＲＧＢデータに応答して前記表示パネルを駆動する駆動回路部
とを具備し、
前記彩度伸長回路は、
元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する基準値算出回路と、
前記元のＲＧＢデータのＲデータの値から前記基準値を減じて得られる第１差分と所定の係数との積を前記元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を前記彩度伸長後のＲＧＢデータのＲデータの値として算出する第１演算部と、
前記元のＲＧＢデータのＧデータの値から前記基準値を減じて得られる第２差分と前記係数との積を前記元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を前記彩度伸長後のＲＧＢデータのＧデータの値として算出する第２演算部と、
前記元のＲＧＢデータのＢデータの値から前記基準値を減じて得られる第３差分と前記係数との積を前記元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を前記彩度伸長後のＲＧＢデータのＢデータの値として算出する第３演算部
とを具備する
表示装置。
【請求項１８】
元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成するステップと、
前記元のＲＧＢデータのＲデータの値から前記基準値を減じて得られる第１差分と所定の係数との積を前記元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出するステップと、
前記元のＲＧＢデータのＧデータの値から前記基準値を減じて得られる第２差分と前記係数との積を前記元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を前記彩度伸長後のＲＧＢデータのＧデータの値として算出するステップと、
前記元のＲＧＢデータのＢデータの値から前記基準値を減じて得られる第３差分と前記係数との積を前記元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を前記彩度伸長後のＲＧＢデータのＢデータの値として算出するステップ
とを具備する
画像処理方法。
【請求項１９】
請求項１８に記載の画像処理方法であって、
前記基準値が、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度である
画像処理方法。
【請求項２０】
請求項１８に記載の画像処理方法であって、
前記基準値が、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータから算出される輝度と、前記元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの最大値との重み付け平均として算出される
画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、表示パネルドライバ及び表示装置に関し、特に、表示画像に対応する画像データに対して彩度を伸長するための演算処理を行う画像処理装置及び画像処理方法並びにそれらを用いる表示パネルドライバ及び表示装置に関する。
【背景技術】
【０００２】
色域が比較的に狭い表示装置においては、表示画像に対応する画像データに対して彩度を伸長する（強調する）ための演算処理（以下、「彩度伸長処理」ということがある）を行うことがある。例えば、白色照明をバックライトとして用いる液晶表示装置は、近年のＯＬＥＤ（organic light emitting diode）表示装置と比較すると色域が狭く、色を美しく見せるために色域の拡大が求められることがある。色域を拡大するための一つの手法は、液晶表示パネルの各画素のフィルタの色を濃くすることであるが、この手法では、フィルタによってバックライトの光束が大きく減衰し、同じバックライト光量での画像の明るさが減少してしまう。これに対して、画像データに対して彩度伸長処理を行うことで色域を拡大するという手法を用いれば、このような問題を回避することができる。
【０００３】
携帯端末（モバイルシステム）を含むコンピュータでは、画像データが、各画素の赤、緑、青の階調を示すＲＧＢデータとして与えられることが一般的である。画像データがＲＧＢデータとして与えられるシステムにおいて彩度の強調が要求される場合には、ＲＧＢデータに対して彩度伸長処理を行う必要がある。
【０００４】
ＲＧＢデータに対する彩度伸長処理の一つの手法としては、ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間において彩度を伸長する技術が知られている。ＨＳＶ空間とは、図１に図示されているように、色を、色相（Ｈ：hue)、彩度（Ｓ：saturation）、明度（Ｖ：value)で表す色空間である。図１には、錐体ＨＳＶ色空間が図示されている。
【０００５】
例えば、特許文献１（特開２０１０−７９１１９号公報）は、ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間において彩度を伸長する演算を行う技術の一例を開示している。特許文献１に開示された技術では、ＲＧＢ形式の表示データから、ＨＳＶデータ、即ち、彩度データ（Ｓ）、色相データ（Ｈ）、明度データ（Ｖ）が抽出され、彩度データ（Ｓ）と彩度伸長係数ｋとを乗算して得られる伸長後彩度データ（Ｓ’）が算出される。更に、伸長後彩度データ（Ｓ’）、色相データ（Ｈ）、明度データ（Ｖ）を含むＨＳＶデータがＲＧＢデータに変換され、該ＲＧＢデータが、伸長後表示データとして出力される。即ち、特許文献１では、色相Ｈ及び明度Ｖを保存したまま、彩度Ｓのみを伸長する演算が行われる。
【０００６】
しかしながら、発明者の検討によれば、特許文献１に開示されているような、色相Ｈ及び明度Ｖを保存したまま彩度Ｓのみを伸長する手法では、輝度が低下してしまい、画像が暗くなるという問題が発生する。
【０００７】
なお、特許文献２（特開平６−３３９０１７号公報）は、本発明に関連し得る他の技術として、カラー画像の彩度強調方法及び装置を開示している。特許文献２に開示された彩度強調方法は、カラー画像の各画素のＲ、Ｇ、Ｂ値の最大値をＩとし、Ｉと各Ｒ、Ｇ、Ｂ値との差に強調係数を乗じ、その結果をＩから減算したものを新しいＲ、Ｇ、Ｂ値とすることによって、画像の彩度を強調することを特徴としている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−７９１１９号公報
【特許文献２】特開平６−３３９０１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
したがって、本発明の課題は、輝度の低下を抑制しながら画像の彩度を伸長するための技術を提供することにある。
【００１０】
本発明の他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１１】
本発明の一の観点では、画像処理装置が、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する手段と、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する手段と、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を、彩度伸長後のＲＧＢデータのＧデータの値として算出する手段と、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を、彩度伸長後のＲＧＢデータのＢデータの値として算出する手段とを具備する。
【００１２】
上記の各手段は、ハードウェアによって実現されてもよく、ソフトウェアプログラムによって実現されてもよく、ハードウェアとソフトウェアプログラムの組み合わせによって実現されてもよい。
【００１３】
本発明の他の観点では、当該画像処理装置は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する基準値生成部と、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する第１演算部と、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を、彩度伸長後のＲＧＢデータのＧデータの値として算出する第２演算部と、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を、彩度伸長後のＲＧＢデータのＢデータの値として算出する第３演算部とを具備する。
【００１４】
本発明の更に他の観点では、表示パネルドライバが、元のＲＧＢデータに対して彩度伸長処理を行って彩度伸長後のＲＧＢデータを生成する彩度伸長回路と、彩度伸長後のＲＧＢデータに応答して表示パネルを駆動する駆動回路部とを具備する。彩度伸長回路は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する基準値算出回路と、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する第１演算部と、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を、彩度伸長後のＲＧＢデータのＧデータの値として算出する第２演算部と、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を、彩度伸長後のＲＧＢデータのＢデータの値として算出する第３演算部とを具備する。
【００１５】
本発明の更に他の観点では、表示装置が、表示パネルと、上記の構成の表示パネルドライバとを具備する。
【００１６】
本発明の更に他の観点では、画像処理方法が、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成するステップと、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出するステップと、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を、彩度伸長後のＲＧＢデータのＧデータの値として算出するステップと、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を、彩度伸長後のＲＧＢデータのＢデータの値として算出するステップとを具備する。
【００１７】
本発明の更に他の観点では、プログラムが、演算装置を、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均である値を、基準値として生成する手段と、元のＲＧＢデータのＲデータの値から基準値を減じて得られる第１差分と所定の係数との積を元のＲＧＢデータのＲデータの値に加算して得られる値に一致する第１値を彩度伸長後のＲＧＢデータのＲデータの値として算出する手段と、元のＲＧＢデータのＧデータの値から基準値を減じて得られる第２差分と係数との積を元のＲＧＢデータのＧデータの値に加算して得られる値に一致する第２値を、彩度伸長後のＲＧＢデータのＧデータの値として算出する手段と、元のＲＧＢデータのＢデータの値から基準値を減じて得られる第３差分と係数との積を元のＲＧＢデータのＢデータの値に加算して得られる値に一致する第３値を、彩度伸長後のＲＧＢデータのＢデータの値として算出する手段として動作させる。
【発明の効果】
【００１８】
本発明によれば、輝度の低下を抑制しながら画像の彩度を伸長する技術が提供される。
【図面の簡単な説明】
【００１９】
【図１】ＨＳＶ空間を概念的に説明する図である。
【図２】ＨＳＶ空間において色相及び明度を維持しながら彩度を伸長する手法を示す概念図である。
【図３】ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間で彩度を伸長し、彩度が伸長されたＨＳＶデータをＲＧＢデータに再び変換する彩度伸長処理を示す概念図である。
【図４】図３のＨＳＶ空間上での彩度伸長処理による輝度の低下を説明する概念図である。
【図５】彩度伸長処理により、色が濃くなった部分の画素の輝度が低下し、画像が暗くなる例を示す図である。
【図６】本発明の第１の実施形態において行われる彩度伸長処理を示す概念図である。
【図７】第１の実施形態の彩度伸長処理の技術的思想を示す概念図である。
【図８】第１の実施形態の彩度伸長処理における演算を概念的に示す図である。
【図９】第１の実施形態における彩度伸長回路の構成の例を示す回路図である。
【図１０】デフォルトの色域の頂点と、ユーザ目標色域の頂点とを示す概念図である。
【図１１】第１の実施形態の彩度伸長処理によって得られる画像の例を示す図である。
【図１２】第２の実施形態における彩度伸長回路の構成の例を示す回路図である。
【図１３】第１及び第２の実施形態の彩度伸長処理における、サブピクセルデータのオーバーフローの発生について説明する図である。
【図１４】彩度伸長処理に伴うサブピクセルデータのアンダーフロー及びオーバーフローの発生による色相ズレの例を示す図である。
【図１５】第３の実施形態におけるオーバーフローの発生の防止について説明する図である。
【図１６】第３の実施形態における彩度伸長回路の構成の例を示す回路図である。
【図１７】第３の実施形態における彩度伸長回路の構成の他の例を示す回路図である。
【図１８】本発明の実施形態の彩度伸長回路を備えた液晶ドライバを含む液晶表示装置の構成の例を示すブロック図である。
【図１９】本発明の実施形態の彩度伸長回路を備えた液晶ドライバを含む液晶表示装置の構成の他の例を示すブロック図である。
【発明を実施するための形態】
【００２０】
以下では、本発明の様々な実施形態について説明する。なお、以下の説明において、同一又は対応する構成要素は、同一又は対応する参照符号で参照され得ることに留意されたい。
【００２１】
以下では、本発明の技術的意義の理解を容易にするために、まず、特許文献１に開示されているような、色相Ｈ及び明度Ｖを保存したまま彩度Ｓのみを伸長（強調）する演算及びその問題点について説明する。
【００２２】
図２は、ＨＳＶ空間において彩度を伸長する手法を示す概念図である。ＨＳＶ空間では、彩度Ｓが独立軸として存在するので、彩度に対して所望の演算を行うことで、色相Ｈ及び明度Ｖを保存したまま彩度Ｓを容易に伸長することができる。例えば、元のＨＳＶデータの彩度データ（彩度を示すデータ）の値をＳ、伸長後のＨＳＶデータの彩度データの値をＳ’、彩度伸長率をｋとすれば、下記式（１）によって彩度を伸長することができる：
Ｓ’＝ｋ・Ｓ          ・・・・（１）
ただし、伸長後の彩度データＳ’の最大値は、元のＨＳＶデータの明度データ（明度を示すデータ）の値Ｖに制限される必要がある。即ち、式（１）に従って彩度を伸長するばあいには、ｋ・Ｓが明度データの値Ｖを超えるときには、伸長後の彩度データＳ’が明度データの値Ｖに設定される必要がある。
【００２３】
ＨＳＶ空間は、更に、ＲＧＢ空間と充填領域の互換性があるという特徴も有している。これは、ＲＧＢデータとＨＳＶデータの間では１：１変換が容易に可能であることを意味している。例えば、ＴＶ放送で一般に用いられるＹＣｂＣｒ空間にはＲＧＢ空間に対応しない領域が存在するため、ＹＣｂＣｒデータをＲＧＢデータに変換する場合には、複雑な演算（例えば、クリッピング処理）を行うことが必要になる。一方で、ＲＧＢ空間内の任意の点はＨＳＶ空間内の点に、逆にＨＳＶ空間内の任意の点はＲＧＢ空間内の点に、クリッピング等なしの簡単な演算で変換可能なので、ＲＧＢデータとＨＳＶデータの間の変換は容易である。
【００２４】
ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間において彩度を伸長する技術は、これら２つの利点を有効に生かすものである。図３に図示されているように、ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間で彩度を伸長し、彩度が伸長されたＨＳＶデータをＲＧＢデータに再び変換することで、ＲＧＢ形式の画像データについても、彩度を容易に伸長することができる。このような特性は、特に、低価格での実装が求められる場合、例えば、液晶ドライバに実装する場合に有利である。
【００２５】
ここで、ＲＧＢデータからＨＳＶデータの変換は、例えば、下記式（１−１）〜（１−５）に従って行われる。
【数１】
2015152645.tif 000003
ここで、Ｖは、ＨＳＶデータにおける明度データの値であり、Ｓは、彩度データの値であり、Ｈは、色相データ（色相を示すデータ）の値である。また、Ｒは、ＲＧＢデータにおけるＲデータ（赤色の階調を示すデータ）の値であり、Ｇは、Ｇデータ（緑色の階調を示すデータ）の値であり、Ｂは、Ｂデータ（青色の階調を示すデータ）の値である。また、ＭＡＸは、Ｒ、Ｇ、Ｂのうちの最大値であり、ＭＩＮは、Ｒ、Ｇ、Ｂのうちの最小値である。ここで、式（１−３）〜（１−５）は、Ｒ、Ｇ、ＢのうちＲが最大である場合には式（１−３）に従って色相データＨが算出され、Ｇが最大である場合には式（１−４）に従って色相データＨが算出され、Ｂが最大である場合には式（１−５）に従って色相データＨが算出されることを意味している。
【００２６】
また、ＨＳＶデータからＲＧＢ変換は、例えば、下記式（２−１）〜（２−１１）に従って行われる。
【数２】
2015152645.tif 000004
ここで、ｍｏｄ（ａ，ｂ）は、ａをｂで割った余りを示す関数であり、ｉｎｔ（ｃ）は、ｃを超えない最大の整数を示す関数である。
【００２７】
ＲＧＢデータをＨＳＶデータに変換し、ＨＳＶ空間で彩度を伸長し、彩度が伸長されたＨＳＶデータをＲＧＢデータに再び変換する手法では、明度Ｖ（即ち、式（１−１）のＭＡＸ）を保存しながら、彩度Ｓ（即ち、式（１−２）のＭＡＸ−ＭＩＮ）が増大される。しかしながら、このような手法では、Ｒデータ、Ｇデータ、Ｂデータのうち最大値以外のものは値が小さくなり、画素の輝度が低下してしまう。例えば、図４に図示されているように、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうち、Ｒデータが最大である場合には、彩度伸長後のＲＧＢデータにおいても、Ｒデータはそのままに維持される。しかしながら、Ｇデータ、Ｂデータは、彩度の伸長に伴って小さくなる。これは、彩度を強く伸長させると（即ち、色を強く強調すると）、得られる画像が暗く見えるという問題を生じさせることを意味している。図５は、彩度伸長の結果、色が濃くなった部分（部分Ａ）の画素の輝度が低下し、画像が暗くなる例を示している。
【００２８】
以下に述べられる本発明の実施形態では、彩度の伸長の際に、輝度の低下をなくし、又は、抑制するための技術が提供される。
【００２９】
本発明の実施形態では、彩度伸長処理が、下記のようにして行われる。まず、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂの重み付け平均である値が、基準値Ｃとして生成される。ここで、本明細書において、「重み付け平均」とは、その算出において値Ｒ、Ｇ、Ｂに与えられる重み（weight）が互いに異なるのみならず、値Ｒ、Ｇ、Ｂのうちの２つ又は全てが同一である場合、及び、値Ｒ、Ｇ、Ｂの大小関係によって重み付けが変わる場合をも含む意味であるとして定義されることに留意されたい。
【００３０】
更に、元のＲＧＢデータのＲデータの値Ｒから基準値Ｃを減じて得られる差分ｄＣＲと所定の係数αとの積を元のＲＧＢデータのＲデータの値Ｒに加算して得られる値に一致する第１値が、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’として算出される。ここで、該所定の係数αは、所望の彩度伸長率ｋに依存して決定される値である。一実施形態では、所望の彩度伸長率ｋから１を減じた値が、係数αとして与えられる。
【００３１】
更に、元のＲＧＢデータのＧデータの値Ｇから基準値Ｃを減じて得られる差分ｄＣＧと係数αとの積を元のＲＧＢデータのＧデータの値Ｇに加算して得られる値に一致する第２値が、彩度伸長後のＲＧＢデータのＧデータの値Ｇ’として算出される。
【００３２】
更に、元のＲＧＢデータのＢデータの値Ｂから基準値Ｃを減じて得られる差分ｄＣＢと係数αとの積を元のＲＧＢデータのＢデータの値Ｂに加算して得られる値に一致する第３値が、彩度伸長後のＲＧＢデータのＢデータの値として算出される。
【００３３】
このような彩度伸長処理によれば、（明度Ｖではなく）基準値Ｃを保存しながら彩度が伸長することができる。Ｒデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに対する重みを適切に選んだ場合の重み付け平均として与えられる基準値Ｃは、輝度Ｙに対応する値とすることも可能であるから、基準値Ｃを保存するような演算が行われることで、輝度の低下を抑制することができる。
【００３４】
ここで、「元のＲＧＢデータのＲデータの値Ｒから基準値Ｃを減じて得られる差分ｄＣＲと所定の係数αとの積を元のＲＧＢデータのＲデータの値Ｒに加算して得られる値に一致する第１値」の算出は、様々な方法で実施され得ることに留意されたい。
【００３５】
例えば、上記第１値の算出において、差分ｄＣＲ、差分ｄＣＲと所定の係数αとの積、及び、該積を元のＲＧＢデータのＲデータの値Ｒに加算して得られる値が、それぞれ、実際に算出されてもよい。即ち、
下記式（３−１）、（３−２）
ｄＣＲ＝Ｒ−Ｃ                    ・・・（３−１）
Ｒ’＝Ｒ＋α・ｄＣＲ              ・・・（３−２）
を実際に用いて、第１値、即ち、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を算出してもよい。
【００３６】
ここで、式（３−２）は、
Ｒ’＝Ｒ＋α・（Ｒ−Ｃ）
＝（１＋α）Ｒ−α・Ｃ        ・・・（３−３）
と変形できる。よって、式（３−３）を用いて彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を算出してもよい。
【００３７】
同様に、「元のＲＧＢデータのＧデータの値Ｇから基準値Ｃを減じて得られる差分ｄＣＧと係数αとの積を元のＲＧＢデータのＧデータの値Ｇに加算して得られる値に一致する第２値」の算出も、様々な方法で実施され得ることに留意されたい。
【００３８】
更に、「元のＲＧＢデータのＢデータの値Ｂから基準値Ｃを減じて得られる差分ｄＣＢと係数αとの積を元のＲＧＢデータのＢデータの値Ｂに加算して得られる値に一致する第３値」の算出も、様々な方法で実施され得ることに留意されたい。
【００３９】
一実施形態では、基準値Ｃとして輝度Ｙが用いられてもよい。ここで、輝度Ｙは、Ｒデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂの重み付け平均として与えられる値であることに留意されたい。基準値Ｃとして輝度Ｙが用いられる場合には、輝度Ｙを保存しながら彩度が伸長されることになる。
【００４０】
他の実施形態では、基準値Ｃとして、輝度Ｙと明度Ｖの重み付け平均が用いられる。ここで、輝度Ｙは、Ｒデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂの重み付け平均であり、明度Ｖは、Ｒ、Ｇ、Ｂの最大値であるから、輝度Ｙと明度Ｖの重み付け平均も、Ｒデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂの重み付け平均であることに留意されたい。
【００４１】
本実施形態の彩度伸長処理は、ハードウェアによって行われてもよく、本実施形態の彩度伸長処理を実行するコードを含むソフトウェアプログラムによって行われてもよい。また、本実施形態の彩度伸長処理は、ハードウェアとソフトウェアの組み合わせによって行われてもよい。本実施形態の彩度伸長処理がソフトウェアプログラムによって行われる場合、該ソフトウェアプログラムは、演算装置（コンピュータ）に実行されたときに、該演算装置に上記の彩度伸長処理を実行させてもよい。該ソフトウェアプログラムは、非一時的な記録媒体（non-transitory recording medium）に記録されてもよい。以下では、本発明のより具体的な実施形態について説明する。
【００４２】
（第１の実施形態）
図６は、第１の実施形態において行われる彩度伸長処理を示す概念図である。第１の実施形態における彩度伸長処理では、明度Ｖを保存しながら彩度Ｓを伸長するのではなく、輝度Ｙを保存しながら彩度Ｓが伸長する演算が行われる。言い換えれば、第１の実施形態では、基準値Ｃを保存しながら彩度Ｓを伸長する演算が行われ、且つ、当該演算において、輝度Ｙが基準値Ｃとして用いられる。
【００４３】
図７は、本実施形態の彩度伸長処理の技術的思想を示す概念図である。本実施形態では、彩度伸長処理が行われる際に、明度Ｖを保存する彩度伸長処理と比較してＲデータ、Ｇデータ、Ｂデータのそれぞれに対して輝度Ｙが保存されるように輝度補償が行われ、これにより、輝度Ｙが維持される。より具体的には、下記の演算によって輝度伸長が行われる。なお、図８は、本実施形態の彩度伸長処理における演算を概念的に示す図である。
【００４４】
まず、輝度Ｙが、下記式：
Ｙ＝ａＲ＋ｂＧ＋ｃＢ            ・・・（４−１）
に従って、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均として算出される。ここで、Ｒ、Ｇ、Ｂは、それぞれ、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値である。また、ａ、ｂ、ｃは、それぞれ、Ｒデータ、Ｇデータ、Ｂデータに与えられる重みである。ａ、ｂ、ｃは、いずれも、０より大きく、且つ、下記式：
ａ＋ｂ＋ｃ＝１                  ・・・（４−２）
を成立させる数である。
【００４５】
輝度Ｙの算出に用いられる重みａ、ｂ、ｃは、輝度Ｙの定義に応じてさまざまに変更可能である。例えば、ｓＲＧＢ規格では、輝度Ｙは、
Ｙ＝０．２１２６×Ｒ＋０．７１５２×Ｇ＋０．０７２２×Ｂ
で与えられる。この場合、重みａ、ｂ、ｃが、下記のように決定されていることになる。
ａ＝０．２１２６
ｂ＝０．７１５２
ｃ＝０．０７２２
また、ＹＵＶ表色系では、輝度Ｙは、
Ｙ＝０．２９９×Ｒ＋０．５８７×Ｇ＋０．１１４×Ｂ
で与えられる。この場合、重みａ、ｂ、ｃが、下記のように決定されていることになる。
ａ＝０．２９９
ｂ＝０．５８７
ｃ＝０．１１４
【００４６】
更に、Ｒデータと輝度Ｙの差分ｄＹＲ、Ｇデータと輝度Ｙの差分ｄＹＧ、Ｂデータと輝度Ｙの差分ｄＹＢが算出される。差分ｄＹＲ、ｄＹＧ、ｄＹＢは、下記式（４−３）〜（４−５）で与えられる。
ｄＹＲ＝Ｒ−Ｙ            ・・・（４−３）
ｄＹＧ＝Ｇ−Ｙ            ・・・（４−４）
ｄＹＢ＝Ｂ−Ｙ            ・・・（４−５）
【００４７】
更に、差分ｄＹＲ、ｄＹＧ、ｄＹＢのそれぞれに係数αを乗じることにより、値ｄＹＲ’、ｄＹＧ’、ｄＹＢ’が算出される。値ｄＹＲ’、ｄＹＧ’、ｄＹＢ’は、下記式（４−６）〜（４−８）で与えられる。
ｄＹＲ’＝α・ｄＹＲ            ・・・（４−６）
ｄＹＧ’＝α・ｄＹＧ            ・・・（４−７）
ｄＹＢ‘＝α・ｄＹＢ            ・・・（４−８）
ここで、係数αは、所望の彩度伸長率ｋに依存する値であり、より具体的には、彩度伸長率ｋから１を減じた値である。即ち、
α＝ｋ−１                      ・・・（４−９）
ｋは、通常、１より大きいから、αは、正の数である。
【００４８】
彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’は、それぞれ、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに、補償値ｄＹＲ’、ｄＹＧ’、ｄＹＢ’を加えることで算出される。即ち、
Ｒ’＝Ｒ＋ｄＹＲ’                 ・・・（４−１０）
Ｇ’＝Ｇ＋ｄＹＧ’                ・・・（４−１１）
Ｂ’＝Ｇ＋ｄＹＢ’                ・・・（４−１２）
【００４９】
以上の演算をまとめると、本実施形態では、彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が、下記式に従って算出される。
Ｒ’＝Ｒ＋α（Ｒ−Ｙ）                  ・・・（４−１３）
Ｇ’＝Ｇ＋α（Ｇ−Ｙ）                  ・・・（４−１４）
Ｂ’＝Ｂ＋α（Ｂ−Ｙ）                  ・・・（４−１５）
【００５０】
本実施形態の彩度伸長処理では、式（４−１３）〜（４−１５）に従って彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が算出される。ここで、「式（４−１３）〜（４−１５）に従って」とは、式（４−１３）〜（４−１５）そのものを使用する場合のみならず、式（４−１３）〜（４−１５）と等価な演算を行って算出することをも含む意味である。例えば、式（４−１３）〜（４−１５）は、
Ｒ’＝（１＋α）Ｒ−αＹ                  ・・・（４−１６）
Ｇ’＝（１＋α）Ｇ−αＹ                  ・・・（４−１７）
Ｂ’＝（１＋α）Ｂ−αＹ                  ・・・（４−１８）
又は、
Ｒ’＝ｋＲ−（ｋ−１）Ｙ                  ・・・（４−１９）
Ｇ’＝ｋＧ−（ｋ−１）Ｙ                  ・・・（４−２０）
Ｂ’＝ｋＢ−（ｋ−１）Ｙ                  ・・・（４−２１）
と変形できる。式（４−１６）〜（４−１８）を用いて彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が算出してもよいし、式（４−１９）〜（４−２１）を用いて彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が算出してもよい。
【００５１】
このような演算によれば、彩度伸長後のＲＧＢデータの彩度Ｓ’は、元のＲＧＢデータの彩度Ｓのｋ倍に伸長される。上記のように、ｋは、所望の彩度伸長率であり、通常１より大きい値をとる。例えば、元のＲＧＢデータのＲデータ、Ｇデータ、ＢデータのうちＲデータの値が最大で、Ｂデータの値が最少である場合を考える。この場合、元のＲＧＢデータの彩度Ｓは、
Ｓ＝Ｒ−Ｂ                        ・・・（５−１）
である。一方、彩度伸長後のＲＧＢデータの彩度Ｓ’は、
Ｓ’＝Ｒ’−Ｂ’                              ・・・（５−２）
である。ここで、式（５−２）に式（４−１３）、（４−１５）を代入して整理すると、下記式（５−３）が得られる。
Ｓ’＝Ｒ＋α（Ｒ−Ｙ）−｛Ｂ＋α（Ｂ−Ｙ）｝
＝Ｒ−Ｂ＋α・｛（Ｒ−Ｙ）−（Ｂ−Ｙ）｝
＝Ｒ−Ｂ＋α・（Ｒ−Ｂ）
＝ｋ（Ｒ−Ｂ）                        ・・・（５−３）
【００５２】
式（５−３）と式（５−１）から、
Ｓ’＝ｋＳ                    ・・・（５−４）
が成り立つことが理解される。式（５−４）は、彩度伸長後のＲＧＢデータの彩度Ｓ’が、元のＲＧＢデータの彩度Ｓのｋ倍であることを意味し、これは図３のＨＳＶ色空間内で、彩度Ｓを彩度Ｓ’に伸長するのと同等の彩度伸長処理を輝度を保存しても可能であることを意味している。
【００５３】
ここで、式（４−９）から式（５−４）は、
Ｓ’＝（α＋１）Ｓ                    ・・・（５−５）
とも表される。よって、上記の彩度伸長処理は、元のＲＧＢデータの彩度Ｓのα＋１倍に彩度伸長後のＲＧＢデータの彩度Ｓ’を伸長すると言い換えてもよい。
【００５４】
上記の議論は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちいずれが最大で、いずれが最少であっても成立することは、容易に理解されよう。
【００５５】
その一方で、本実施形態の彩度伸長処理（式（４−１３）〜（４−１５）に従った演算処理）によれば、輝度が維持される。即ち、彩度伸長後のＲＧＢデータから算出される輝度Ｙ’は、元のＲＧＢデータから算出される輝度Ｙと一致する。このことは、下記の議論から理解される。彩度伸長後のＲＧＢデータの輝度Ｙ’は、式（４−１）と同様に、
Ｙ’＝ａＲ’＋ｂＧ’＋ｃＢ’                  ・・・（６−１）
で算出される。
【００５６】
本実施形態では、式（４−１３）〜（４−１５）を式（６−１）に代入することで、下記式が得られる。
Ｙ’＝ａ｛Ｒ＋α（Ｒ−Ｙ）｝＋ｂ｛Ｇ＋α（Ｇ−Ｙ）｝＋ｃ｛Ｂ＋α（Ｂ−Ｙ）｝
＝（ａＲ＋ｂＧ＋ｃＢ）＋α｛ａＲ＋ｂＧ＋ｃＢ−（ａ＋ｂ＋ｃ）Ｙ｝
・・・（６−２）
である。
【００５７】
ここで、式（４−１）から、下記式（６−３）が成立する：
Ｙ’＝Ｙ＋α｛Ｙ−（ａ＋ｂ＋ｃ）Ｙ｝        ・・・（６−３）
更に、式（４−２）が成り立つから、
Ｙ’＝Ｙ                  ・・・（５−４）
が成り立つ。即ち、本実施形態の彩度伸長処理では、輝度Ｙが保存される。
【００５８】
上記のような演算による彩度伸長処理は、ハードウェアによって行われてもよいし、ソフトウェアによって行われてもよい。また、ソフトウェアとハードウェアの組み合わせによって行われてもよい。ただし、式（４−１３）〜（４−１５）から理解されるように、本実施形態の彩度伸長処理は、単純な式で実現可能であるから、専用のハードウェアで実施することに好適である。
【００５９】
図９は、第１の実施形態の彩度伸長処理を実行するハードウェアである彩度伸長回路の構成の一例を示している。本実施形態の彩度伸長回路１０は、輝度算出回路１１、減算器１２Ｒ、１２Ｇ、１２Ｂと、彩度伸長率算出部１３と、減算器１４と、乗算器１５Ｒ、１５Ｇ、１５Ｂと、加算器１６Ｒ、１６Ｇ、１６Ｂとを備えた画像処理装置として構成されている。
【００６０】
輝度算出回路１１は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに基づいて輝度Ｙを算出する。輝度Ｙの算出は、上記の式（４−１）に従って行われる。
【００６１】
減算器１２Ｒは、元のＲＧＢデータのＲデータの値Ｒから輝度Ｙを減じて差分ｄＹＲ（＝Ｒ−Ｙ）を算出する。同様に、減算器１２Ｇは、元のＲＧＢデータのＧデータの値Ｇから輝度Ｙを減じて差分ｄＹＧ（＝Ｇ−Ｙ）を算出し、減算器１２Ｂは、元のＲＧＢデータのＢデータの値Ｂから輝度Ｙを減じて差分ｄＹＢ（＝Ｂ−Ｙ）を算出する。減算器１２Ｒ、１２Ｇ、１２Ｂは、上述の式（４−３）〜（４−５）による演算を実現するハードウェアである。
【００６２】
彩度伸長率算出部１３は、ユーザによって設定されるレジスタ値に基づいて彩度伸長率ｋを算出する。詳細には、彩度伸長率算出部１３は、初期色域頂点座標レジスタ１３ａと、ユーザ目標色域頂点座標レジスタ１３ｂと、彩度伸長率算出回路１３ｃとを備えている。彩度伸長率算出回路１３ｃは、初期色域頂点座標レジスタ１３ａに保持されているレジスタ値と、ユーザ目標色域頂点座標レジスタ１３ｂに保持されているレジスタ値とに基づいて、彩度伸長率ｋを算出する。ここで、ユーザ目標色域頂点座標レジスタ１３ｂに保持されるレジスタ値は、ユーザによる設定が許容される。言い換えれば、彩度伸長率算出回路１３ｃは、ユーザによって設定されるレジスタ値に応じて彩度伸長率ｋを算出する機能を有していることになる。彩度伸長率算出部１３による彩度伸長率ｋの算出については、後に詳細に説明する。
【００６３】
減算器１４は、彩度伸長率算出部１３から与えられる彩度伸長率ｋから１を減じて係数αを算出する。彩度伸長率算出部１３と減算器１４は、全体としては、ユーザによって設定されたレジスタ値に応じて係数αを生成する係数生成部として機能することになる。
【００６４】
乗算器１５Ｒは、減算器１２Ｒによって算出された差分ｄＹＲに係数αを乗じて値ｄＹＲ’を算出する。同様に、乗算器１５Ｇは、減算器１２Ｇによって算出された差分ｄＹＧに係数αを乗じて値ｄＹＧ’を算出する。更に、乗算器１５Ｂは、減算器１２Ｂによって算出された差分ｄＹＢに係数αを乗じて値ｄＹＢ’を算出する。乗算器１５Ｒ、１５Ｇ、１５Ｂは、上述の式（４−６）〜（４−８）による演算を実現するハードウェアである。
【００６５】
加算器１６Ｒは、元のＲＧＢデータのＲデータの値Ｒと、乗算器１５Ｒによって算出された値ｄＹＲ’とを加算して、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を算出する。同様に、加算器１６Ｇは、元のＲＧＢデータのＧデータの値Ｇと、乗算器１５Ｇによって算出された値ｄＹＧ’とを加算して、彩度伸長後のＲＧＢデータのＧデータの値Ｇ’を算出する。更に、加算器１６Ｂは、元のＲＧＢデータのＢデータの値Ｂと、乗算器１５Ｂによって算出された値ｄＹＢ’とを加算して、彩度伸長後のＲＧＢデータのＢデータの値Ｂ’を算出する。
【００６６】
ここで、減算器１２Ｒ、乗算器１５Ｒ、加算器１６Ｒは、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を、減算器１４から与えられる係数αを用いて元のＲＧＢデータのＲデータの値Ｒから算出する演算部（第１演算部）として機能することに留意されたい。同様に、減算器１２Ｇ、乗算器１５Ｇ、加算器１６Ｇは、彩度伸長後のＲＧＢデータのＧデータの値Ｇ’を、減算器１４から与えられる係数αを用いて元のＲＧＢデータのＧデータの値Ｇから算出する演算部（第２演算部）として機能する。また、減算器１２Ｂ、乗算器１５Ｂ、加算器１６Ｂは、彩度伸長後のＲＧＢデータのＢデータの値Ｂ’を、減算器１４から与えられる係数αを用いて元のＲＧＢデータのＢデータの値Ｂから算出する演算部（第３演算部）として機能する。
【００６７】
このような構成の彩度伸長回路１０が、式（４−１３）〜（４−１５）に従って彩度伸長処理を行うことは、容易に理解されよう。
【００６８】
続いて、彩度伸長率算出部１３による彩度伸長率ｋの算出について説明する。上述のように、彩度伸長率算出部１３は、初期色域頂点座標レジスタ１３ａと、ユーザ目標色域頂点座標レジスタ１３ｂと、彩度伸長率算出回路１３ｃとを備えている。初期色域頂点座標レジスタ１３ａは、デフォルトの色域（例えば、彩度伸長回路１０が組み込まれる表示装置の表示画像の本来的な色域）の頂点の座標を示すレジスタ値を格納する。図１０に図示されているように、デフォルトの色域は、３原色（赤色、緑色、青色）にそれぞれに対応する頂点を有する三角形５１で表され、各頂点の座標は、色度座標（ｘ、ｙ）として表現される。
【００６９】
一方、ユーザ目標色域頂点座標レジスタ１３ｂは、ユーザが実現を希望する色域（ユーザ目標色域）の頂点の座標を示すレジスタ値を格納する。ここで、ユーザ目標色域とは、ユーザが、彩度伸長回路１０が組み込まれる表示装置の表示画像において実現を希望する色域である。ユーザ目標色域は、３原色にそれぞれに対応する頂点を有する三角形５２で表され、各頂点の座標は、色度座標（ｘ、ｙ）として表現される。
【００７０】
彩度伸長率算出回路１３ｃは、下記式（７）に従って彩度伸長率ｋを算出する：
【数３】
2015152645.tif 000005
ここで、ＳＤＥＦＡＵＬＴは、デフォルトの色域の面積であり、ＳＵＳＥＲは、ユーザ目標色域の面積である。算出された彩度伸長率ｋは、減算器１４に供給され、差分ｄＹＲ、ｄＹＧ、ｄＹＢに乗じられるべき係数αの算出に用いられる。なお、予め計算した彩度伸長率ｋを直接レジスタ値として設定することや、各画素の色相Ｈ、彩度Ｓ、明度Ｖなどの変数を用いた関数として彩度伸長率ｋを算出することも可能である。
【００７１】
以上に説明されているように、本実施形態の彩度伸長処理及び彩度伸長回路によれば、輝度Ｙを維持しながら彩度を伸長することができる。図１１は、本実施形態の彩度伸長処理による画像処理の結果の例を示す図である。図５に図示されているように、明度Ｖを保存する彩度伸長処理では、各画素の輝度が低下し、画像が暗くなる。一方、図１１に図示されているように、本実施形態の彩度伸長処理では各画素の輝度が維持され、画像が暗くなるという問題を有効に解決することができる。
【００７２】
（第２の実施形態）
第２の実施形態においても、基準値Ｃを保存しながら彩度Ｓを伸長する彩度伸長処理が行われる。ただし、第２の実施形態では、基準値Ｃは、明度Ｖと輝度Ｙの重み付け平均として算出される。即ち、第２の実施形態では、輝度Ｙの代わりに、明度Ｖと輝度Ｙの重み付け平均として算出される基準値Ｃを用いながら第１の実施形態と同様の彩度伸長処理が行われる。
【００７３】
ここで、明度Ｖは、ＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの最大値であり（式（１−１）参照）、輝度Ｙは、Ｒデータ、Ｇデータ、Ｂデータの重み付け平均として算出されるから、基準値Ｃが明度Ｖと輝度Ｙの重み付け平均として算出される場合においても、基準値ＣがＲデータ、Ｇデータ、Ｂデータの重み付け平均となることに留意されたい。以下、第２の実施形態における彩度伸長処理について詳細に説明する。
【００７４】
まず、輝度Ｙが、下記式：
Ｙ＝ａＲ＋ｂＧ＋ｃＢ            ・・・（８−１）
に従って、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値の重み付け平均として算出される。ここで、Ｒ、Ｇ、Ｂは、それぞれ、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値である。また、ａ、ｂ、ｃは、それぞれ、Ｒデータ、Ｇデータ、Ｂデータに与えられる重みであり、
ａ＋ｂ＋ｃ＝１                  ・・・（８−２）
が成り立つ。
【００７５】
更に、明度Ｖが、下記式：
Ｖ＝ｍａｘ（Ｒ，Ｇ，Ｂ）        ・・・（８−３）
に従って算出される。ここで、ｍａｘ（Ｒ，Ｇ，Ｂ）は、Ｒ、Ｇ、Ｂのうちの最大値を示す関数である。
【００７６】
更に、基準値Ｃが、下記式：
Ｃ＝βＹ＋（１−β）Ｖ          ・・・（８−４）
に従って、明度Ｖと輝度Ｙの重み付け平均として算出される。ここで、βは、重み付け係数であり、０より大きく１より小さい数である。式（８−４）は、輝度Ｙに与えられる重みがβであり、明度Ｖに与えられる重みが（１−β）であることを意味しているが、逆でもよい。基準値Ｃは、明度Ｖと輝度Ｙの一方に重みβ、他方に重み（１−β）を与えて算出された明度Ｖと輝度Ｙの重み付け平均として算出される。
【００７７】
なお、式（８−４）において、βを１に設定することで基準値Ｃを輝度Ｙに一致させることができるに留意されたい。この場合には、第１の実施形態の彩度伸長処理と同一の処理が行われることになる。また、βを０に設定することで基準値Ｃを明度Ｖに一致させることができる。この場合には、明度Ｖが保存される彩度伸長処理が行われることになる。
【００７８】
更に、Ｒデータと基準値Ｃの差分ｄＣＲ、Ｇデータと基準値Ｃの差分ｄＣＧ、Ｂデータと基準値Ｃの差分ｄＣＢが算出される。差分ｄＣＲ、ｄＣＧ、ｄＣＢは、下記式（８−５）〜（８−７）で与えられる。
ｄＣＲ＝Ｒ−Ｃ            ・・・（８−５）
ｄＣＧ＝Ｇ−Ｃ            ・・・（８−６）
ｄＣＢ＝Ｂ−Ｃ            ・・・（８−７）
【００７９】
更に、差分ｄＣＲ、ｄＣＧ、ｄＣＢのそれぞれに係数αを乗じることにより、値ｄＣＲ’、ｄＣＧ’、ｄＣＢ’が算出される。値ｄＣＲ’、ｄＣＧ’、ｄＣＢ’は、下記式（８−８）〜（８−１０）で与えられる。
ｄＣＲ’＝α・ｄＣＲ            ・・・（８−８）
ｄＣＧ’＝α・ｄＣＧ            ・・・（８−９）
ｄＣＢ‘＝α・ｄＣＢ            ・・・（８−１０）
上記のように、係数αは、所望の彩度伸長率ｋに依存する値であり、より具体的には、彩度伸長率ｋから１を減じた値である。即ち、
α＝ｋ−１                      ・・・（８−１１）
ｋは、通常、１より大きいから、αは、正の数である。
【００８０】
彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’は、それぞれ、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに、補償値ｄＣＲ’、ｄＣＧ’、ｄＣＢ’を加えることで算出される。即ち、
Ｒ’＝Ｒ＋ｄＣＲ’                 ・・・（８−１２）
Ｇ’＝Ｇ＋ｄＣＧ’                ・・・（８−１３）
Ｂ’＝Ｇ＋ｄＣＢ’                ・・・（８−１４）
【００８１】
以上の演算をまとめると、本実施形態では、彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が、下記式に従って算出される。
Ｒ’＝Ｒ＋α（Ｒ−Ｃ）                  ・・・（８−１５）
Ｇ’＝Ｇ＋α（Ｇ−Ｃ）                  ・・・（８−１６）
Ｂ’＝Ｂ＋α（Ｂ−Ｃ）                  ・・・（８−１７）
【００８２】
本実施形態の彩度伸長処理では、式（８−１５）〜（８−１７）に従って彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’が算出される。ここで、「式（８−１５）〜（８−１７）に従って」とは、式（４−１３）〜（４−１５）そのものを使用する場合のみならず、式（８−１５）〜（８−１７）と等価な演算を行って算出することをも含む意味である。
【００８３】
ここで、式（８−１５）〜式（８−１７）は、第１の実施形態の式（４−１３）〜（４−１５）において、ＹをＣに置き換えたものと同じであることに留意されたい。よって、第２の実施形態においても、彩度伸長後のＲＧＢデータの彩度Ｓ’が、元のＲＧＢデータの彩度Ｓのｋ倍であること、及び、彩度伸長処理において基準値Ｃが保存されることは、当業者には容易に理解されよう。
【００８４】
図１２は、第２の実施形態の彩度伸長処理を実行するハードウェアである彩度伸長回路の構成の一例を示している。第２の実施形態の彩度伸長回路１０Ａは、輝度算出回路１１の代わりに、基準値算出回路２１が設けられている点を除けば、第１の実施形態の彩度伸長回路１０と同一の構成を有している。
【００８５】
基準値算出回路２１は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂから、明度Ｖと輝度Ｙの重み付け平均として基準値Ｃを算出する。詳細には、基準値算出回路２１は、輝度算出回路２２と、明度算出回路２３と、乗算器２４と、減算器２５と、乗算器２６と、加算器２７とを備えている。輝度算出回路２２は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに基づいて輝度Ｙを算出する。輝度Ｙの算出は、上記の式（８−１）に従って行われる。明度算出回路２３は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに基づいて明度Ｖを算出する。明度Ｖは、上記の式（８−３）から理解されるように、Ｒ、Ｇ、Ｂのうちの最大値として算出される。乗算器２４は、重み付け係数βと輝度Ｙの積を算出する。減算器２５は、１から重み付け係数βを減じた差１−βを算出する。乗算器２６は、明度Ｖと（１−β）の積を算出する。加算器２７は、乗算器２４、２６の出力を加算する。このような構成の基準値算出回路２１によれば、式（８−４）に従って基準値Ｃが算出される。
【００８６】
なお、基準値Ｃの算出では、明度Ｖに重みβが与えられ、輝度Ｙに重み（１−β）が与えられてもよい。この場合、乗算器２４に重み（１−β）が入力され（即ち、減算器２５の出力値が入力され）、乗算器２６に重みβが入力される。
【００８７】
減算器１２Ｒは、元のＲＧＢデータのＲデータの値Ｒから基準値Ｃを減じて差分ｄＣＲ（＝Ｒ−Ｃ）を算出する。同様に、減算器１２Ｇは、元のＲＧＢデータのＧデータの値Ｇから基準値Ｃを減じて差分ｄＣＧ（＝Ｇ−Ｃ）を算出し、減算器１２Ｂは、元のＲＧＢデータのＢデータの値Ｂから基準値Ｃを減じて差分ｄＣＢ（＝Ｂ−Ｃ）を算出する。減算器１２Ｒ、１２Ｇ、１２Ｂは、上述の式（８−５）〜（８−７）による演算を実現するハードウェアである。
【００８８】
彩度伸長率算出部１３は、ユーザによって設定されるレジスタ値に基づいて彩度伸長率ｋを算出する。図１２には図示されていないが、第２の実施形態の彩度伸長率算出部１３の構成と動作は、第１の実施形態の彩度伸長率算出部１３と同一であってよい（図９参照）。
【００８９】
減算器１４は、彩度伸長率算出部１３から与えられる彩度伸長率ｋから１を減じて係数αを算出する。彩度伸長率算出部１３と減算器１４は、全体としては、ユーザによって設定されるレジスタ値に応じて係数αを生成する係数生成部として機能することになる。
【００９０】
乗算器１５Ｒは、減算器１２Ｒによって算出された差分ｄＣＲに係数αを乗じて値ｄＣＲ’を算出する。同様に、乗算器１５Ｇは、減算器１２Ｇによって算出された差分ｄＣＧに係数αを乗じて値ｄＣＧ’を算出する。更に、乗算器１５Ｂは、減算器１２Ｂによって算出された差分ｄＣＢに係数αを乗じて値ｄＣＢ’を算出する。乗算器１５Ｒ、１５Ｇ、１５Ｂは、上述の式（８−８）〜（８−１０）による演算を実現するハードウェアである。
【００９１】
加算器１６Ｒは、元のＲＧＢデータのＲデータの値Ｒと、乗算器１５Ｒによって算出された値ｄＣＲ’とを加算して、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を算出する。同様に、加算器１６Ｇは、元のＲＧＢデータのＧデータの値Ｇと、乗算器１５Ｇによって算出された値ｄＣＧ’とを加算して、彩度伸長後のＲＧＢデータのＧデータの値Ｇ’を算出する。更に、加算器１６Ｂは、元のＲＧＢデータのＢデータの値Ｂと、乗算器１５Ｂによって算出された値ｄＣＢ’とを加算して、彩度伸長後のＲＧＢデータのＢデータの値Ｂ’を算出する。
【００９２】
このような構成の彩度伸長回路１０Ａが、式（８−１５）〜（８−１７）に従って彩度伸長処理を行うことは、容易に理解されよう。
【００９３】
図１２の彩度伸長回路１０Ａの一つの利点は、βの値の設定により、明度Ｖを保存する彩度伸長処理、輝度Ｙを保存する彩度伸長処理、及び、それらの混合の彩度伸長処理を自在に実現することができる点にある。βを１に設定すると、基準値Ｃが輝度Ｙに一致する。この場合には、第１の実施形態の彩度伸長処理と同一の処理が行われることになる。また、βを０に設定すると、基準値Ｃが明度Ｖに一致する。この場合には、明度Ｖが保存される彩度伸長処理が行われることになる。
【００９４】
以上に説明されているように、第２の実施形態の彩度伸長処理及び彩度伸長回路によれば、基準値Ｃを維持しながら彩度を伸長することができる。ここで、基準値Ｃは、輝度Ｙと明度Ｖの重み付け平均として算出される値である。また、本実施形態では、輝度Ｙと明度Ｖの重み付け平均の算出に用いられる重み付け係数βを適切に設定することで、明度Ｖを保存する彩度伸長処理、輝度Ｙを保存する彩度伸長処理、及び、それらの混合の彩度伸長処理を自在に実現することができる。
【００９５】
（第３の実施形態）
図１３〜図１５は、第３の実施形態の彩度伸長処理の技術的思想を説明するための図である。第１及び第２の実施形態の彩度伸長処理では、彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値が、下限値ＲＧＢ＿ＭＩＮより小さくなり、又は、上限値ＲＧＢ＿ＭＡＸよりも大きくなってしまう場合がある。ここで下限値ＲＧＢ＿ＭＩＮは、通常は０であり、上限値ＲＧＢ＿ＭＡＸは、Ｒデータ、Ｇデータ、Ｂデータのビット幅に応じて決定される値である。Ｒデータ、Ｇデータ、Ｂデータが、それぞれ、ｎビットデータである場合、下限値ＲＧＢ＿ＭＩＮは０であり、上限値ＲＧＢ＿ＭＡＸは、２ｎ−１である。
【００９６】
図１３を参照して、例えば、Ｒデータ、Ｇデータ、Ｂデータの値が、それぞれ、８ビットで表現される場合について考える。この場合、ＲＧＢデータのＲデータ、Ｇデータ、Ｂデータは、“００００００００”（＝０）から“１１１１１１１１”（＝２５５）までの範囲の値として与えられる。ここで、元のＲＧＢデータのＲデータ、Ｇデータ又はＢデータの値が、下限値ＲＧＢ＿ＭＩＮ（＝０）に近い値である、又は、上限値ＲＧＢ＿ＭＡＸ（＝２５５）に近い値である場合、式（４−１３）〜（４−１５）又は式（８−１５）〜（８−１７）で得られる値が、下限値ＲＧＢ＿ＭＩＮより小さくなり（即ち、アンダーフローが発生し）、又は、上限値ＲＧＢ＿ＭＡＸよりも大きくなってしまう（即ち、オーバーフローが発生する）場合がある。図１３では、元のＲＧＢデータのＲデータの値Ｒが上限値ＲＧＢ＿ＭＡＸに近く、伸長処理後のＲＧＢデータのＲデータの値Ｒ’が上限値ＲＧＢ＿ＭＡＸを超えてしまう場合を図示している。
【００９７】
アンダーフロー又はオーバーフローが発生した場合にとり得る対処の一つは、彩度伸長処理で得られた演算結果を、下限値ＲＧＢ＿ＭＩＮ又は上限値ＲＧＢ＿ＭＡＸにカットする（クリッピングする）ことである。しかしながら、このような対処では、Ｒデータ、Ｇデータ、Ｂデータの差分比で示される色相Ｈが保存されなくなり、色相ズレが生じる。加えて、輝度Ｙ又は基準値Ｃが保存されなくなる。図１４は、アンダーフロー及びオーバーフローの発生による色相ズレの例を示す図である。
【００９８】
このような問題に対処するために、第３の実施形態では、彩度伸長率が、特定の上限値以下に制限され、これにより、アンダーフロー又はオーバーフローの発生が防止される。以下では、ユーザ設定により決定される彩度伸長率（即ち、ユーザの希望に応じた彩度伸長率）をｋ、彩度伸長処理に実際に用いられる彩度伸長率（即ち、制限された彩度伸長率）をｋ’と表記する。
【００９９】
図１５に図示されるように、オーバーフローの発生を防止するためには、上限値ＲＧＢ＿ＭＡＸから明度Ｖ（即ち、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータのうちの最大値）を減じた差ＲＧＢ＿ＭＡＸ−Ｖと、明度Ｖから基準値Ｃを減じた差Ｖ−Ｃとが計算され、差ＲＧＢ＿ＭＡＸ−Ｖ、Ｖ−Ｃに基づいて彩度伸長率が制限される。
【０１００】
より具体的には、オーバーフローの発生を防止するためには、実際に用いられる彩度伸長率ｋ’を、次式（９−１）で決定される第１の上限値ｋＭＡＸ＿ＯＶＥＲ以下に制限すればよい：
【数４】
2015152645.tif 000006
ここで、基準値Ｃとして輝度Ｙが用いられる場合には、第１の上限値ｋＭＡＸ＿ＯＶＥＲは、次式（９−２）により算出されることになる。
【数５】
2015152645.tif 000007
【０１０１】
一方、アンダーフローの発生を防止するためには、実際に用いられる彩度伸長率ｋ’を、次式（９−３）で決定される第２の上限値ｋＭＡＸ＿ＵＮＤＥＲ以下に制限すればよい：
【数６】
2015152645.tif 000008
式（９−３）において、ＭＩＮは、ｘ、ｙ、ｚのうちの最小値である。ここで、基準値Ｃとして輝度Ｙが用いられる場合には、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲは、次式（９−４）により算出されることになる。
【数７】
2015152645.tif 000009
【０１０２】
オーバーフローとアンダーフローの両方を抑制するためには、彩度伸長処理に実際に用いられる彩度伸長率ｋ’を、次式（９−５）で算出すればよい：
ｋ’＝ｍｉｎ（ｋ，ｋＭＡＸ＿ＯＶＥＲ，ｋＭＡＸ＿ＵＮＤＥＲ）        ・・・（９−５）
【０１０３】
また、オーバーフローの発生のみを抑制するためには、彩度伸長処理に実際に用いられる彩度伸長率ｋ’を、次式（９−６）で算出すればよい：
ｋ’＝ｍｉｎ（ｋ，ｋＭＡＸ＿ＯＶＥＲ）        ・・・（９−６）
アンダーフローについては、彩度伸長処理で得られた演算結果を、下限値ＲＧＢ＿ＭＩＮにカットしなくても、色相Ｈに対する影響は小さい。よって、オーバーフローのみの発生を防止するように彩度伸長処理に実際に用いられる彩度伸長率ｋ’を制限しても実用上は十分である。
【０１０４】
図１６は、第３の実施形態の彩度伸長処理を実行するハードウェアである彩度伸長回路の構成の一例を示している。図１６に図示された彩度伸長回路１０Ｂは、第２の実施形態の彩度伸長回路１０Ａと類似した構成を有しているが、オーバーフローとアンダーフローの両方を抑制するように構成されている。より具体的には、彩度伸長回路１０Ｂは、基準値算出回路３１と、明度算出回路３２と、減算器３３、３４と、１／Ｎテーブル３５と、乗算器３６と、最小値選択回路３７と、最小値算出回路３８と、減算器３９と、１／Ｎテーブル４０と、乗算器４１と、最小値選択回路４２とを備えている。
【０１０５】
基準値算出回路３１は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂに基づいて基準値Ｃを算出する。基準値算出回路３１は、第２の実施形態の基準値算出回路２１と同様に、明度Ｖと輝度Ｙの重み付け平均として基準値Ｃを算出するように構成されてもよい。その代わりに、基準値算出回路３１は、輝度Ｙを基準値Ｃとして算出してもよい。
【０１０６】
明度算出回路３２と、減算器３３、３４と、１／Ｎテーブル３５と、乗算器３６とは、第１の上限値ｋＭＡＸ＿ＯＶＥＲを算出する第１上限値算出部を構成している。明度算出回路３２は、明度Ｖ、即ち、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂのうちの最大値を算出する。減算器３３は、上限値ＲＧＢ＿ＭＡＸから明度Ｖを減じた差分ＲＧＢ＿ＭＡＸ−Ｖを算出し、減算器３４は、明度Ｖから基準値Ｃを減じた差分Ｖ−Ｃを算出する。１／Ｎテーブル３５は、入力値と出力値とを、出力値が入力値の逆数となるように対応づけるルックアップテーブルであり、入力値の逆数を出力値として出力する。１／Ｎテーブル３５には、減算器３４から差分Ｖ−Ｃが入力されるから、１／Ｎテーブル３５は、その逆数１／（Ｖ−Ｃ）を出力値として出力することになる。乗算器３６は、１／Ｎテーブル３５の出力値と、減算器３３から出力される差分ＲＧＢ＿ＭＡＸ−Ｖとの積を算出する。乗算器３６の出力値は、式（９−１）に従って算出される第１の上限値ｋＭＡＸ＿ＯＶＥＲである。
【０１０７】
最小値算出回路３８と、減算器３９と、１／Ｎテーブル４０と、乗算器４１と、最小値選択回路４２とは、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲを算出する第２上限値算出部を構成している。最小値算出回路３８は、元のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ、Ｇ、Ｂのうちの最小値ＭＩＮを算出する。減算器３９は、基準値Ｃから最小値ＭＩＮを減じた差分Ｃ−ＭＩＮを算出する。１／Ｎテーブル４０は、入力値と出力値とを、出力値が入力値の逆数となるように対応づけるルックアップテーブルであり、入力値の逆数を出力値として出力する。１／Ｎテーブル４０には、減算器３９から差分Ｃ−ＭＩＮが入力されるから、１／Ｎテーブル４０は、その逆数１／Ｃ−ＭＩＮを出力値として出力することになる。乗算器４１は、１／Ｎテーブル４０の出力値と、最小値算出回路３８から出力される最小値ＭＩＮとの積を算出する。乗算器４１の出力値は、式（９−３）に従って算出される第２の上限値ｋＭＡＸ＿ＵＮＤＥＲである。
【０１０８】
最小値選択回路３７は、彩度伸長率算出部１３から出力される彩度伸長率ｋと乗算器３６から出力される第１の上限値ｋＭＡＸ＿ＯＶＥＲのうちの小さい方の値を出力値として出力する。ここで、彩度伸長率算出部１３は、第１及び第２の実施形態と同様に、ユーザによって設定されるレジスタ値に基づいて彩度伸長率ｋを算出する。図１６には図示されていないが、第２の実施形態の彩度伸長率算出部１３の構成と動作は、第１の実施形態の彩度伸長率算出部１３と同一であってよい（図９参照）。
【０１０９】
また、最小値選択回路４２は、最小値選択回路３７から出力される出力値と、乗算器４１から出力される第２の上限値ｋＭＡＸ＿ＵＮＤＥＲのうちの小さい方の値を、実際に彩度伸長処理に用いられる彩度伸長率ｋ’として出力する。即ち、最小値選択回路３７、４２は、全体としては、彩度伸長率ｋ、第１の上限値ｋＭＡＸ＿ＯＶＥＲ、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲのうちの最小値を、彩度伸長処理に実際に用いられる彩度伸長率ｋ’として選択する選択部として機能する。これにより、彩度伸長率ｋ’は、第１の上限値ｋＭＡＸ＿ＯＶＥＲ、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲよりも小さい値に制限される。彩度伸長率ｋ’は、減算器１４に供給されて係数αの算出に用いられる。本実施形態では、減算器１４が、係数αを彩度伸長率ｋ’から１を減じた値として算出する。即ち、
α＝ｋ’−１            ・・・（９−７）
【０１１０】
彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’は、減算器１４から出力される係数αを用いて算出される。詳細には、減算器１２Ｒは、元のＲＧＢデータのＲデータの値Ｒから基準値Ｃを減じて差分ｄＣＲ（＝Ｒ−Ｃ）を算出する。同様に、減算器１２Ｇは、元のＲＧＢデータのＧデータの値Ｇから基準値Ｃを減じて差分ｄＣＧ（＝Ｇ−Ｃ）を算出し、減算器１２Ｂは、元のＲＧＢデータのＢデータの値Ｂから基準値Ｃを減じて差分ｄＣＢ（＝Ｂ−Ｃ）を算出する。減算器１２Ｒ、１２Ｇ、１２Ｂは、上述の式（８−５）〜（８−７）による演算を実現するハードウェアである。
【０１１１】
また、乗算器１５Ｒは、減算器１２Ｒによって算出された差分ｄＣＲに係数αを乗じて値ｄＣＲ’を算出する。同様に、乗算器１５Ｇは、減算器１２Ｇによって算出された差分ｄＣＧに係数αを乗じて値ｄＣＧ’を算出する。更に、乗算器１５Ｂは、減算器１２Ｂによって算出された差分ｄＣＢに係数αを乗じて値ｄＣＢ’を算出する。乗算器１５Ｒ、１５Ｇ、１５Ｂは、上述の式（８−８）〜（８−１０）による演算を実現するハードウェアである。
【０１１２】
更に、加算器１６Ｒは、元のＲＧＢデータのＲデータの値Ｒと、乗算器１５Ｒによって算出された値ｄＣＲ’とを加算して、彩度伸長後のＲＧＢデータのＲデータの値Ｒ’を算出する。同様に、加算器１６Ｇは、元のＲＧＢデータのＧデータの値Ｇと、乗算器１５Ｇによって算出された値ｄＣＧ’とを加算して、彩度伸長後のＲＧＢデータのＧデータの値Ｇ’を算出する。更に、加算器１６Ｂは、元のＲＧＢデータのＢデータの値Ｂと、乗算器１５Ｂによって算出された値ｄＣＢ’とを加算して、彩度伸長後のＲＧＢデータのＢデータの値Ｂ’を算出する。このような演算によれば、彩度伸長処理において基準値Ｃが維持されることは、上述されているとおりである。
【０１１３】
図１６の構成の彩度伸長回路１０Ｂでは、彩度伸長処理に実際に用いられる彩度伸長率ｋ’が、式（９−１）に従って算出される第１の上限値ｋＭＡＸ＿ＯＶＥＲ及び式（９−３）に従って算出される第２の上限値ｋＭＡＸ＿ＵＮＤＥＲよりも小さい値に制限される。したがって、図１６の構成の彩度伸長回路１０Ｂにおける彩度伸長処理によれば、オーバーフロー及びアンダーフローの発生を抑制することができる。
【０１１４】
図１７は、第３の実施形態の彩度伸長処理を実行する彩度伸長回路の構成の他の例を示している。図１７に図示された彩度伸長回路１０Ｃは、図１６に図示されている彩度伸長回路１０Ｂと類似した構成を有しているが、（アンダーフローの発生を抑制せず）オーバーフローの発生のみを抑制するように構成されている。より具体的には、図１７に図示された彩度伸長回路１０Ｃは、図１６に図示されている彩度伸長回路１０Ｂから、最小値算出回路３８、減算器３９、１／Ｎテーブル４０、乗算器４１及び最小値選択回路４２を除去した構成を有している。上述のように、最小値算出回路３８、減算器３９、１／Ｎテーブル４０及び乗算器４１は、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲを算出する演算部を構成しているから、図１７に図示された彩度伸長回路１０Ｃは、第２の上限値ｋＭＡＸ＿ＵＮＤＥＲを算出する機能を有していない。
【０１１５】
図１７の彩度伸長回路１０Ｃでは、最小値選択回路３７が、彩度伸長率算出部１３から出力される彩度伸長率ｋと乗算器３６から出力される第１の上限値ｋＭＡＸ＿ＯＶＥＲのうちの小さい方の値を、彩度伸長処理に実際に使用される彩度伸長率ｋ’として選択する。減算器１４は、係数αを彩度伸長率ｋ’から１を減じた値として算出する。図１６の彩度伸長回路１０Ｂと同様に、図１７の彩度伸長回路１０Ｃにおいても、彩度伸長後のＲＧＢデータのＲデータ、Ｇデータ、Ｂデータの値Ｒ’、Ｇ’、Ｂ’は、減算器１４から出力される係数αを用いて算出される。
【０１１６】
以上に説明されているように、第３の実施形態の彩度伸長処理及び彩度伸長回路によれば、彩度伸長処理におけるオーバーフロー及び／又はアンダーフローの発生を抑制することができる。
【０１１７】
（彩度伸長回路の実装）
続いて、上述の実施形態の彩度伸長回路の実装の具体的な例について説明する。上述の実施形態の彩度伸長回路（１０、１０Ａ〜１０Ｃ）は、液晶表示装置において液晶表示パネルを駆動する液晶ドライバに集積化されてもよい。上述の実施形態の彩度伸長回路（１０、１０Ａ〜１０Ｃ）は、簡素な構成で彩度伸長処理を行うことができ、このような特徴は、液晶ドライバに使用される場合に特に有効である。図１８は、上述の実施形態の彩度伸長回路を備えた液晶ドライバを含む液晶表示装置１００の構成の一例を示す図である。
【０１１８】
図１８の液晶表示装置１００は、制御プロセッサ１０１と、液晶ドライバ１０２と、液晶表示パネル１０３と、バックライトモジュール１０４とを備えている。制御プロセッサ１０１は、液晶表示パネル１０３に表示すべき画像に対応する画像データと、液晶ドライバ１０２を制御するための制御データとを生成し、液晶ドライバ１０２に転送する。該画像データは、ＲＧＢ形式で生成される。制御プロセッサ１０１としては、例えば、ＣＰＵ（central processing unit）が使用され得る。
【０１１９】
液晶ドライバ１０２は、制御プロセッサ１０１から受け取った画像データと制御データとに応答して、液晶表示パネル１０３のソース線（データ線、信号線とも呼ばれる）とゲート線（ディジット線、走査線とも呼ばれる）とを駆動する。なお、液晶表示パネル１０３にゲート線を駆動するＧＩＰ（gate in panel）回路が組み込まれる場合には、液晶ドライバ１０２は、それ自身が液晶表示パネル１０３のゲート線を駆動するのではなく、ＧＩＰ回路を制御する制御信号をＧＩＰ回路に供給してもよい。
【０１２０】
バックライトモジュール１０４は、バックライトを点灯して液晶表示パネル１０３を照明する。
【０１２１】
上述の実施形態の彩度伸長回路（１０、１０Ａ〜１０Ｃ）は、液晶ドライバ１０２に集積化されている。液晶ドライバ１０２は、更に、システムインターフェース１１１と、グラフィックＲＡＭ（random access memory）１１２と、ソース線駆動回路１１３と、階調電圧生成回路１１４と、液晶駆動レベル発生回路１１５と、コントロールレジスタ１１６と、タイミング発生回路１１７とを備えている。一実施形態では、彩度伸長回路１０（又は、１０Ａ〜１０Ｃ）、システムインターフェース１１１、グラフィックＲＡＭ１１２、ソース線駆動回路１１３、階調電圧生成回路１１４、液晶駆動レベル発生回路１１５、コントロールレジスタ１１６及びタイミング発生回路１１７は、高知の半導体集積回路製造技術により、一の半導体基板にモノリシックに（monolithically）集積化される。
【０１２２】
システムインターフェース１１１は、制御プロセッサ１０１から受け取った画像データを彩度伸長回路１０（又は、１０Ａ〜１０Ｃ）に供給すると共に、制御データにコントロールレジスタ１１６に設定すべきレジスタ値が含まれる場合には、該レジスタ値をコントロールレジスタ１１６にセットする。彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）は、システムインターフェース１１１から受け取った画像データに対し、上述された彩度伸長処理を行い、彩度伸長後の画像データをグラフィックＲＡＭ１１２に格納する。グラフィックＲＡＭ１１２は、彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）から受け取った彩度伸長後の画像データをソース線駆動回路１１３に転送するバッファとして機能する。ソース線駆動回路１１３は、グラフィックＲＡＭ１１２から受け取った彩度伸長後の画像データに応答して液晶表示パネル１０３のソース線を駆動する。階調電圧生成回路１１４は、ソース線駆動回路１１３において使用される階調電圧を生成する。
【０１２３】
液晶駆動レベル発生回路１１５は、液晶表示パネル１０３のゲート線を駆動するゲート信号を生成すると共に、液晶表示パネル１０３の対向電極（共通電極）を共通電位ＶＣＯＭに駆動する。コントロールレジスタ１１６は、システムインターフェース１１１から受け取ったレジスタ値を保持し、液晶ドライバ１０２内の各ブロックに供給する。液晶ドライバ１０２内の各ブロックの動作は、該レジスタ値によって制御される。タイミング発生回路１１７は、液晶ドライバ１０２内の各ブロックの動作タイミングを制御する。
【０１２４】
図１８の構成では、彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）によって生成された彩度伸長後の画像データがグラフィックＲＡＭ１１２に格納されるが、その代わりに、図１９に図示されているように、システムインターフェース１１１からグラフィックＲＡＭ１１２に画像データが転送され、彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）は、グラフィックＲＡＭ１１２から読みだされた画像データに対して彩度伸長処理を行ってもよい。
【０１２５】
彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）において使用される設定値は、コントロールレジスタ１１６に保持されてもよい。例えば、コントロールレジスタ１１６の一部分が、彩度伸長率算出部１３の初期色域頂点座標レジスタ１３ａ、及び、ユーザ目標色域頂点座標レジスタ１３ｂとして用いられてもよい。また、第２の実施形態において、明度Ｖと輝度Ｙの重み付け平均の算出に用いられる重み付け係数βの値が、コントロールレジスタ１１６に保持されてもよい。
【０１２６】
また、上記の実施形態では、彩度伸長率算出部１３によって彩度伸長率ｋが算出されるが、所望の彩度伸長率ｋの値がコントロールレジスタ１１６に設定されてもよい。その代わりに、係数αの値が、コントロールレジスタ１１６に設定されてもよい。
【０１２７】
なお、図１８、図１９の液晶ドライバ１０２の構成では、画像データに対し彩度伸長処理が行われる構成が図示されているが、彩度伸長処理以外の画像処理（例えば、コントラスト強調、ガンマ補正）が行われてもよい。この場合、当該画像処理は、彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）に入力される画像データに対して行われてもよいし、彩度伸長回路１０（又は、１０Ａ、１０Ｂ、１０Ｃ）から出力される彩度伸長後の画像データに対して行われてもよい。
【０１２８】
以上には、本発明者によってなされた発明の実施形態が具体的に説明されているが、本発明は上記の実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは、当業者には容易に理解されよう。
【０１２９】
例えば、図１８、図１９では、上述の実施形態の彩度伸長回路（１０、１０Ａ〜１０Ｃ）が、液晶表示パネル１０３を駆動する液晶ドライバ１０２に集積化されているが、他の表示パネルを駆動する表示パネルドライバに、上述の実施形態の彩度伸長回路（１０、１０Ａ〜１０Ｃ）が集積化されてもよい。
【符号の説明】
【０１３０】
１０、１０Ａ、１０Ｂ、１０Ｃ：彩度伸長回路
１１      ：輝度算出回路
１２Ｒ、１２Ｇ、１２Ｂ：減算器
１３      ：彩度伸長率算出部
１３ａ    ：初期色域頂点座標レジスタ
１３ｂ    ：ユーザ目標色域頂点座標レジスタ
１３ｃ    ：彩度伸長率算出回路
１４      ：減算器
１５Ｒ、１５Ｇ、１５Ｂ：乗算器
１６Ｒ、１６Ｇ、１６Ｂ：加算器
２１      ：基準値算出回路
２２      ：輝度算出回路
２３      ：明度算出回路
２４      ：乗算器
２５      ：減算器
２６      ：乗算器
２７      ：加算器
３１      ：基準値算出回路
３２      ：明度算出回路
３３、３４：減算器
３５      ：１／Ｎテーブル
３６      ：乗算器
３７      ：最小値選択回路
３８      ：最小値算出回路
３９      ：減算器
４０      ：１／Ｎテーブル
４１      ：乗算器
４２      ：最小値選択回路
５１、５２：表示色域を示す三角形
１００    ：液晶表示装置
１０１    ：制御プロセッサ
１０２    ：液晶ドライバ
１０３    ：液晶表示パネル
１０４    ：バックライトモジュール
１１１    ：システムインターフェース
１１２    ：グラフィックＲＡＭ
１１３    ：ソース線駆動回路
１１４    ：階調電圧生成回路
１１５    ：液晶駆動レベル発生回路
１１６    ：コントロールレジスタ
１１７    ：タイミング発生回路
【図１】
2015152645.tif 000016
【図２】
2015152645.tif 000017
【図３】
2015152645.tif 000018
【図４】
2015152645.tif 000019
【図５】
2015152645.tif 000020
【図６】
2015152645.tif 000021
【図７】
2015152645.tif 000022
【図８】
2015152645.tif 000023
【図９】
2015152645.tif 000024
【図１０】
2015152645.tif 000025
【図１１】
2015152645.tif 000026
【図１２】
2015152645.tif 000027
【図１３】
2015152645.tif 000028
【図１４】
2015152645.tif 000029
【図１５】
2015152645.tif 000030
【図１６】
2015152645.tif 000031
【図１７】
2015152645.tif 000032
【図１８】
2015152645.tif 000033
【図１９】
2015152645.tif 000034