(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
以下、実施の形態を図面を参照して説明する。
図1は画像処理装置の構成例を示す図である。画像処理装置1は、乱数列生成部1a、乱数重畳輝度変数生成部1bおよび乱数重畳画像信号生成部1cを有する。
【0013】
乱数列生成部1aは、乱数列を生成する。乱数重畳輝度変数生成部1bは、輝度変数に乱数列を重畳させて、乱数重畳輝度変数を生成する。乱数重畳画像信号生成部1cは、画像信号a1に乱数重畳輝度変数を重畳させて、乱数重畳画像信号a2を生成する。
【0014】
ここで、画像信号a1は、階調段差部分の誤差(
図1では縦線模様となっている)が視認される画像である。このような画像信号a1に対して、上記のように、乱数重畳輝度変数を画像信号に重畳させる処理を行うことで、誤差が視認されない画質が改善された乱数重畳画像信号a2を生成することができる。
【0015】
なお、輝度変数は、元の画像信号の輝度に対して、何倍の輝度を出力できるかを示すパラメータである。1画素の色情報としては、R、G、Bの3原色、またはWを追加したR、G、B、Wの情報などがあるが、1画素の輝度(明度)についても表現する場合には、輝度変数をさらに加えて、これらの情報の組み合わせで1画素を表現する。なお、輝度変数は、伸長係数(stretch factor)またはα値とも呼ばれ、以降では、伸長係数と呼んで説明する。
【0016】
次に本技術が解決すべき主な課題について説明する。画像演算処理過程において、輝度変化が滑らかな画像に対する演算誤差は、擬似輪郭を生じさせてしまう。
【0017】
例えば、上述したように、16ビット階調のグラデーション画像信号を、8ビット階調の画像信号に変換する画像演算処理を行うと、階調段差部分の誤差によって、擬似輪郭が生じてしまう。
【0018】
また、擬似輪郭がたとえ視認できないほど低レベルのものであったとしても、伸長係数が直線的に変動する場合、擬似輪郭の位置がその伸長係数の変動に合わせて移動していく現象(以下、波打ち現象)が発生してしまい、画質劣化が生じることになる。
【0019】
本技術の画像処理装置1では、これらを回避するために、各画素の演算過程において乱数を重畳することで、誤差の発生をばらつかせるグラデーションスムージング処理(誤差拡散処理)を行って、擬似輪郭および波打ち現象を目視できないようにして画質の改善を図るものである。
【0020】
次に画像処理装置1の全体構成について説明する。
図2は画像処理装置の全体構成例を示す図である。画像処理装置1の画像制御系は、画像入力I/F(インタフェース)部101、フレームメモリ102、データ変換部103、伸長係数生成部104、バックライト制御部105、D/Aコンバータ106および出力アンプ107を備える。
【0021】
画像入力I/F部101は、入力画像信号を受信して、受信インタフェース処理を行う。フレームメモリ102は、入力画像信号をフレーム単位で記憶する(AV系の場合は、フレームメモリ102は不要としてよい)。
【0022】
フレームメモリ102から読み出された画像信号であるRGB信号(24ビット)は、データ変換部103および伸長係数生成部104へ送信される。
【0023】
データ変換部103は、ガンマ変換部103aおよび画像演算処理部103bを含む。ガンマ変換部103aは、入力画像信号の輝度(明度)成分を、ディスプレイ側の液晶パネルが有する輝度値(発色特性)に変換する。
【0024】
図3はガンマ特性を示す図である。横軸は入力画像中の輝度値、縦軸は出力画像中の輝度値である。理想はガンマ値「1.0」のy=xの関係だが、ディスプレイには固有のガンマ特性(ガンマ値)があるため、一般的にはy=xにはならない。例えば、Windows(登録商標)標準では、ガンマ値「2.2」に合わされて調整される。
【0025】
通常、ディスプレイのガンマ特性は、中間調が暗くなる傾向にあるので、あらかじめ中間調を明るくした信号を入力し、「入力:出力」のバランスを「1:1」に近づけることで、色情報を正確に再現できるようにする。このようにディスプレイ側のガンマ特性に合わせて、色情報を調整する仕組みをガンマ変換(ガンマ補正)と呼ぶ。
【0026】
図2の説明に戻り、画像演算処理部103bは、後述の乱数重畳処理部110を含む。画像演算処理部103bは、伸長係数生成部104から送信された伸長係数を受信して、画像演算処理を行い、画像演算処理後の画像信号(RGB信号(24ビット))を出力する。
【0027】
D/Aコンバータ106は、画像演算処理部103bから出力されたデジタル画像信号をアナログ画像信号に変換する。出力アンプ107は、アナログ画像信号のレベルを増幅して、後段の液晶パネルへ出力する。
【0028】
伸長係数生成部104は、RGB−HSV変換部104a、ガンマ変換部104bおよび伸長係数算出部104cを含む。RGB−HSV変換部104aは、入力画像のRGB信号をHSV空間の信号に変換する。
【0029】
なお、Hは色相(Hue)、Sは彩度(Saturation・Chroma)、Vは明度(Brightness・Lightness・Value)であり、HSV空間は、これら3つの成分からなる色空間である。
【0030】
ガンマ変換部104bは、HSV空間の画像信号のガンマ変換を行う。伸長係数算出部104cは、ガンマ補正後のHSV空間の画像信号から伸長係数を算出する。伸長係数は、発光量の過不足量に応じて、不足時には画像信号レベルを上げ(振幅伸長)、過度の場合は画像信号レベルを下げる(振幅縮小)ように制御するためのパラメータとなる。
【0031】
バックライト制御部105は、伸長係数に応じて、バックライトの輝度をPWM(Pulse Width Modulation)信号によって制御して、バックライトを出力する。
【0032】
次に画像演算処理部103bに含まれる乱数重畳処理部110について説明する。
図4は乱数重畳処理部の構成例を示す図である。乱数重畳処理部110は、乱数列生成回路10、加算器111および画像出力処理部112を備える。なお、画像出力処理部112は、乗算器112aを含む。
【0033】
ここで、乱数列生成回路10は、
図1に示した乱数列生成部1aの機能を含み、加算器111は、
図1に示した乱数重畳輝度変数生成部1bの機能を含む。また、画像出力処理部112は、
図1に示した乱数重畳画像信号生成部1cの機能を含む。
【0034】
乱数列生成回路10は、乱数列を生成して出力する(乱数列生成回路10の構成および動作については
図6以降で後述する)。加算器111は、伸長係数(12ビット)と乱数(4ビット)との加算処理を行って、乱数重畳伸長係数(16ビット)を生成する。
【0035】
画像出力処理部112内の乗算器112aは、画像信号の逆ガンマ処理を施した逆ガンマ処理データ(16ビット)と、乱数重畳伸長係数(16ビット)とを乗算して、乱数重畳画像信号を生成する。
【0036】
また、画像出力処理部112は、乗算器112aから出力される乱数重畳画像信号を8ビットに丸める丸め処理を行って、画像信号(8ビット)を出力する。
【0037】
ここで、乱数重畳処理により、階調段差部分の誤差による画質劣化を抑制する動作原理について説明する。
図5は乱数重畳処理の概念を説明するための図である。入力階調が16ビットの画像信号を、8ビット階調の画像信号に変換する場合を考える。
【0038】
デコーダ21は、16ビット階調の画像信号b0をデコードして、8ビット階調の画像信号b1−1に変換して出力する。画像信号b1−1には、階調段差が顕著に生じており、画質劣化が生じることになる。
【0039】
これに対し、乱数重畳処理では、まず、階調16ビットの画像信号b0に乱数r0を加算器23により加算して、乱数重畳画像信号b2を生成する。その後、デコーダ22が、乱数重畳画像信号b2を8ビット階調にデコードして、8ビット階調の画像信号b1−2を出力する。
【0040】
画像信号b1−2では、階調変換処理の過程で、乱数r0が重畳されていることにより、階調段差部分の誤差を拡散させることができ(ディザリング(dithering))、1階調の段差が視認しにくくなっている。
【0041】
上記のように、ディザリング手法を応用して、画像信号に乱数(一種のノイズ的データ)を重畳することにより、階調変換時の誤差を周囲のデータに拡散し、擬似輪郭および階調の段差が波打ちとして視認される波打ち現象を解消することができ、階調段差部分の誤差による画質劣化の改善を図ることが可能になる。
【0042】
なお、
図5では、画像信号そのものに乱数を重畳しているため、R、G、Bそれぞれに独立に乱数を重畳させる必要があり、演算規模および回路規模が増大することになる。
【0043】
これに対し、本技術では、乱数列を伸長係数に重畳し、乱数列が重畳された伸長係数を画像信号に重畳する構成としている。これにより、少ない演算規模および回路規模で、上記と同じ効果をあげることが可能になる。
【0044】
次に乱数列生成回路10の構成について説明する。
図6は乱数列生成回路の構成例を示す図である。乱数列生成回路10は、乱数生成器11−1〜11−m、極性信号生成部12、極性選択指示部13、インバータ14、セレクタ15および乱数列出力部16を備える。
【0045】
乱数生成器11−1〜11−mは、乱数生成処理を行って、乱数D1〜Dmをそれぞれ生成して出力する。また、垂直同期信号vs(Vsync)により、乱数生成処理はリセットされる。
【0046】
極性信号生成部12は、極性信号pol(+)を出力する。極性信号生成部12は、垂直同期信号vsにより、極性信号生成処理はリセットされる。極性選択指示部13は、極性選択信号selを出力する。
【0047】
なお、極性選択指示部13は、垂直同期信号vsにもとづき、極性選択信号selのレベルを反転させて出力する。具体的には、
図9で後述するが、垂直同期信号vsにもとづき、2フレーム毎に極性選択信号selのレベルを反転させる。
【0048】
インバータ14は、極性信号pol(+)を反転して、極性信号pol(−)を出力する。セレクタ15は、極性選択信号selにもとづいて、極性信号pol(+)または極性信号pol(−)のいずれかを選択して出力する。
【0049】
乱数列出力部16は、セレクタ15から出力される極性信号polを、乱数生成器11−1〜11−mから出力される乱数列に付加した乱数列を生成して出力する。
【0050】
ここで、乱数列生成回路10で生成される乱数の1、0の並びは、定常的なパターンであるので、生成される乱数は、擬似乱数といえる。
【0051】
具体的には、乱数生成器11−1〜11−mを垂直同期信号vsでリセットしたときには、初期値が内部回路によって与えられ、乱数生成器11−1〜11−mは、その初期値にもとづき同じルールで乱数を生成して出力する。
【0052】
したがって、ある初期値が与えられれば、その初期値にもとづいて生成される乱数列(1、0の並び)は一意に決まることになる。
【0053】
ここで、乱数列を伸長係数に重畳し、乱数列が重畳された伸長係数を画像信号に重畳することにより、上述したように、擬似輪郭および波打ち現象は、視認できなくなることが確認された。しかし、毎フレームに異なる乱数列を伸長係数に重畳すると、画像によっては乱数がちらつきとなり、ちらつき現象が画像上で視認される場合があった。
【0054】
次にちらつき現象を抑制する処理について説明する。
図7はちらつき現象を抑制する処理を説明するための図である。ちらつき現象を抑制するために、フレーム毎に乱数列の固定化を行った。
【0055】
具体的には、複数の乱数生成器に対して、垂直同期信号vsのタイミングでリセットをかけ、フレーム毎に同じ並びの乱数を生成させる。
【0056】
図7の場合、nフレーム目の乱数列、n+1フレーム目の乱数列、n+2フレーム目の乱数列がすべて同じ値の乱数列となっている。
【0057】
このように、同じ乱数列を毎フレーム出力させることで、ちらつき現象が抑制され、ちらつき現象は視認できなくなることが確認された。また、
図7の処理を行った結果、擬似輪郭および波打ち現象も抑制されており、擬似輪郭および波打ち現象も視認できないことに変わりはなかった。
【0058】
しかし、
図7で示したフレーム毎の乱数の固定化処理によって、乱数がFPN(Fitted Pattern Noise:固定パターンノイズ)として画像上に視認される場合があった。
【0059】
次にFPNを抑制する処理について説明する。
図8はFPNを抑制する処理を説明するための図である。重畳する乱数列には各画素で極性を持たせているが、FPNが視認されることを受けて、乱数列の極性を毎フレームで反転させる処理を行うことにした。
【0060】
乱数列r1は、
図8において、1フレーム中、1、4、0、2、5、3、2、7となっている。また、乱数列r1は、垂直同期信号vs毎に、1、4、0、2、5、3、2、7のパターンで、毎フレーム出力される(なお、
図7で示した乱数列の1ライン目だけを示している)。
【0061】
乱数列r1aは、1フレーム毎に乱数列r1の極性を反転させたものである。したがって、nフレーム目は、1、4、0、2、5、3、2、7のパターンとなり、(n+1)フレーム目は、−1、−4、0、−2、−5、−3、−2、−7のパターンとなっている。
【0062】
さらに、乱数信号r1aでは、(n+2)フレーム目は、1、4、0、2、5、3、2、7のパターンとなり、(n+3)フレーム目は、−1、−4、0、−2、−5、−3、−2、−7のパターンとなっている。
【0063】
このように、乱数の絶対値は変化させず、乱数の極性を毎フレーム変化させることで、時間軸上で平均化されて、重畳する乱数成分は±0となる。このような処理を行った結果、乱数重畳成分にもとづくFPNは視認できなくなった。
【0064】
また、
図8の処理を行った結果、擬似輪郭、波打ち現象およびちらつき現象も抑制されており、擬似輪郭、波打ち現象およびちらつき現象も視認できないことに変わりはなかった。
【0065】
しかし、
図8で示したフレーム単位の乱数極性の反転処理によって、フレーム先頭の乱数の極性と、液晶の極性反転駆動のための極性反転信号FRP(Frame Reverse Pulse)とが同一極性となってしまう。
【0066】
すなわち、
図8の場合、nフレーム目のフレーム先頭の乱数極性はプラス、極性反転信号FRPの極性もプラスであり同一極性である。また、(n+1)フレーム目のフレーム先頭の乱数極性はマイナス、極性反転信号FRPの極性もマイナスであり同一極性である。
【0067】
さらに、(n+2)フレーム目のフレーム先頭の乱数極性はプラス、極性反転信号FRPの極性もプラスであり同一極性である。また、(n+3)フレーム目のフレーム先頭の乱数極性はマイナス、極性反転信号FRPの極性もマイナスであり同一極性である。
【0068】
このように、フレーム先頭の乱数の極性と、極性反転信号FRPとが同一極性となり、oddフレームとevenフレームでそれぞれ極性が同期してしまうために、これが液晶画面の焼き付きを招くことが予想された。
【0069】
次に液晶画面の焼き付き現象を抑制する処理について説明する。
図9は焼き付き現象を抑制する処理を説明するための図である。焼き付き現象の懸念を受け、極性反転の周期を2フレームに1回へと、
図8で示したフレーム単位の乱数極性反転の倍の周期に変更する処理を行った。
【0070】
図6の回路構成を参照しながら、
図9の内容について以下説明する。乱数生成器11−1〜11−mそれぞれは、乱数を生成して出力する。乱数列r1は、
図9において、1フレーム中、1、4、0、2、5、3、2、7となっており、垂直同期信号vs毎に、1、4、0、2、5、3、2、7のパターンが、毎フレーム出力される。
【0071】
極性信号生成部12は、極性信号pol(+)を出力する。極性信号pol(+)は、
図9において、1フレーム中、1、0、0、1、0、1、0、1となっており、垂直同期信号vs毎に、1、0、0、1、0、1、0、1のパターンが、毎フレーム出力される。
【0072】
また、インバータ14は、極性信号pol(+)を反転し、インバータ14からは、0、1、1、0、1、0、1、0の極性信号pol(−)が出力される。
【0073】
極性選択指示部13は、極性信号pol(+)および極性信号pol(−)を2フレーム毎に選択するように、極性選択信号selを出力する。
【0074】
例えば、極性信号pol(+)を選択する場合には、極性選択信号selをHレベルとし、極性信号pol(−)を選択する場合には、極性選択信号selをLレベルとする。
【0075】
セレクタ15は、極性選択信号selにもとづき、極性信号pol(+)または極性信号pol(−)のいずれかを選択して出力する。すなわち、極性選択信号selがHレベルの場合は、極性信号pol(+)を選択出力し、極性選択信号selがLレベルの場合は、極性信号pol(−)を選択出力する。
【0076】
したがって、セレクタ15から出力される極性信号polは、nフレーム、(n+1)フレームでは、1、0、0、1、0、1、0、1となっている。また、(n+2)フレーム、(n+3)フレームでは、0、1、1、0、1、0、1、0となっている。
【0077】
乱数列出力部16は、乱数列r1に、極性信号polの極性を付加した乱数列r2を生成して出力する。乱数列r2は、伸長係数に重畳する最終的な乱数列となる。
【0078】
極性信号polが1のときはプラス、0のときはマイナスである。したがって、乱数列r2は、
図9の場合、nフレームと(n+1)フレームでは、1、−4、0、2、−5、3、−2、7となっている。さらに、(n+2)フレームと(n+3)フレームでは、−1、4、0、−2、5、−3、2、−7となっている。このように、2フレーム毎に乱数の極性が反転されている。
【0079】
ここで、フレーム先頭の乱数の極性と、極性反転信号FRPの極性とについて見ると、(n+1)フレーム目のフレーム先頭の乱数の極性はプラスであり、極性反転信号FRPの極性はマイナスとなっている。さらに、(n+2)フレーム目のフレーム先頭の乱数の極性はマイナスであり、極性反転信号FRPの極性はプラスとなっている。
【0080】
図8の段階では、常に、フレーム先頭の乱数の極性と、極性反転信号FRPの極性とが同一極性となっていたが、
図9の処理を行った結果、フレーム先頭の乱数の極性と、極性反転信号FRPとの極性が互いに異なる箇所を生成することができている。
【0081】
上記のような処理を行った結果、焼き付き現象は生じず、エージングでも焼きつきは確認されなかった。なお、
図9の処理を行った結果、擬似輪郭、波打ち現象、ちらつき現象およびFPNもすべて抑制されており、擬似輪郭、波打ち現象、ちらつき現象およびFPNも視認できないことに変わりはなかった。
【0082】
次に画像信号の出力ビット丸め処理について説明する。
図4で示した乱数重畳処理部110内の画像出力処理部112において、逆ガンマ処理データに乱数重畳伸長係数が乗算される。
【0083】
ここで、逆ガンマ処理データをP、伸長係数をα、乱数をNとする。なお、Pは16ビット、αは12ビット、Nは4ビットとすると、乗算式は以下の式(1)で表せる。なお、式(1)中のP×Nが、画像信号に最終的に重畳される乱数量となる。
P×(α+N)=P×α+P×N・・・(1)
【0084】
図10は出力ビットの丸め処理を説明するための図である。上記の内容を模式的に示している。4ビットの乱数が伸長係数に重畳されている乱数重畳伸長係数を、16ビットの逆ガンマ処理データに乗算する。
【0085】
乗算結果は、28ビットの画像データとなるが、画像出力処理部112により、乱数が加味されている0〜19ビットを切り捨て、20ビット〜27ビットまでの8ビットデータを最終画像出力データとする丸め処理が行われる。
【0086】
この8ビット画像データの最下位ビットにはディザリングが発生している。このため、8ビット画像データは、最下位ビットにディザリングがかかったスムーズな画像になっている。
【0087】
以上説明したように、画像処理装置1では、輝度変数に乱数列を重畳させて、乱数重畳輝度変数を生成し、画像信号に乱数重畳輝度変数を重畳させて、乱数重畳画像信号を生成する構成とした。
【0088】
このような乱数重畳によるディザリング効果により、ディスプレイ側の8ビット階調の境界を視認できなくし、擬似輪郭および波打ち現象を抑制して画質向上を図ることが可能になる。さらに、乱数列生成回路10では、毎フレーム同じ並びの乱数列を生成して出力するので、ちらつき現象を抑制することが可能になる。
【0089】
さらにまた、乱数列生成回路10では、乱数列の絶対値は変化させず、乱数列の極性を2フレームに1回反転させる構成としたので、FPNの発生および画面の焼き付き現象を抑制することが可能になる。
【0090】
なお、本技術は以下のような構成も採ることができる。
(1) 乱数列を生成する乱数列生成部と、
輝度変数に前記乱数列を重畳させて、乱数重畳輝度変数を生成する乱数重畳輝度変数生成部と、
画像信号に前記乱数重畳輝度変数を重畳させて、乱数重畳画像信号を生成する乱数重畳画像信号生成部と、
を有する画像処理装置。
(2) 前記乱数列生成部は、前記乱数列の絶対値は変化させず、前記乱数列の極性を2フレームに1回反転させる前記(1)記載の画像処理装置。
(3) 前記乱数列生成部は、毎フレーム同じ並びの前記乱数列を生成して出力する前記(1)または(2)記載の画像処理装置。
(4) 前記乱数重畳画像信号生成部は、前記乱数重畳画像信号を所定のビット数に丸める丸め処理を行って出力する前記(1)〜(3)のいずれかに記載の画像処理装置。
(5) 前記乱数重畳画像信号生成部は、前記乱数重畳画像信号の前記丸め処理を行って、最下位ビットにディザリングがかかった画像出力を行う前記(1)〜(4)のいずれかに記載の画像処理装置。
(6) 画像処理方法において、
乱数列を生成し、
輝度変数に前記乱数列を重畳させて、乱数重畳輝度変数を生成し、
画像信号に前記乱数重畳輝度変数を重畳させて、乱数重畳画像信号を生成する画像処理方法。
(7) 前記乱数列の絶対値は変化させず、前記乱数列の極性を2フレームに1回反転させる前記(6)記載の画像処理方法。
(8) 毎フレーム同じ並びの前記乱数列を生成して出力する前記(6)または(7)記載の画像処理方法。
(9) 前記乱数重畳画像信号を所定のビット数に丸める丸め処理を行って出力する前記(6)〜(8)のいずれかに記載の画像処理方法。
(10) 前記乱数重畳画像信号の前記丸め処理を行って、最下位ビットにディザリングがかかった画像出力を行う前記(6)〜(9)のいずれかに記載の画像処理方法。
【0091】
なお、上述の実施の形態は、実施の形態の要旨を逸脱しない範囲内において種々の変更を加えることができる。
【0092】
さらに、上述の実施の形態は、多数の変形、変更が当業者にとって可能であり、説明した正確な構成および応用例に限定されるものではない。