(57)【特許請求の範囲】
【請求項１】
乱数列を生成する乱数生成部と、
入力画像データを構成する任意の数の上位ビット及び下位ビットのうち、前記下位ビットに対応付けられた閾値と前記乱数列を構成する乱数値を比較する比較器と、
前記比較器による比較結果に基づいて、前記入力画像データの前記上位ビットの値を変化させる演算器と、
を備え、
前記乱数列は、非一様乱数列であり、
前記閾値は、前記下位ビットの値に対して非線形的に変化するように設定され、且つ前記閾値が前記下位ビットの値に対して線形的に変化するように設定される場合に比べて前記演算器による前記上位ビットの値の変化後の階調の線形性が高まるように設定される、
情報処理装置。
【請求項２】
前記演算器は、前記上位ビットに１又は複数ビットを加算又は減算するように構成される、請求項１に記載の情報処理装置。
【請求項３】
前記演算器は、前記加算又は減算された前記上位ビットで表されるデータを出力画像データとして出力するように構成される、請求項２に記載の情報処理装置。
【請求項４】
前記乱数列は、所定の周波数の低周波成分及び前記低周波成分より高い周波数の高周波成分を含む一様波形から前記低周波成分を低減した波形に対応する乱数列であり、
前記一様波形は、一様乱数列で表される波形である、請求項１〜請求項３のいずれか１項に記載の情報処理装置。
【請求項５】
前記乱数列に対応する波形のパワースペクトルは、高周波側に偏った強度分布を有する、請求項１〜請求項４のいずれか１項に記載の情報処理装置。
【請求項６】
前記閾値は、前記乱数列を構成する乱数値のヒストグラムに基づいて決定される、請求項１〜請求項５のいずれか１項に記載の情報処理装置。
【請求項７】
前記閾値は、前記乱数列を構成する乱数値の累積確率分布に基づいて決定される、請求項１〜請求項６のいずれか１項に記載の情報処理装置。
【請求項８】
前記閾値は、前記累積確率分布で表される関数の逆関数に基づいて決定される、請求項７に記載の情報処理装置。
【請求項９】
前記演算器による演算は、前記入力画像データを構成する１フレーム毎に実行される、請求項１〜請求項８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記下位ビットと前記閾値は、ＬＵＴ又は数式により対応付けられる、請求項１〜請求項９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記乱数列は、所定の周波数の低周波成分及び前記低周波成分より高い周波数の高周波成分を含む一様波形からコントラスト感度関数が所定値より大きい周波数成分を低減した波形に対応する乱数列であり、
前記一様波形は、一様乱数列で表される波形である、請求項１〜請求項１０のいずれか１項に記載の情報処理装置。
【請求項１２】
請求項１〜請求項１１のいずれか１項に記載の情報処理装置を備える画像表示装置。
【請求項１３】
コンピュータを、
乱数列を生成する乱数生成部、
入力画像データを構成する任意の数の上位ビット及び下位ビットのうち、前記下位ビットに対応付けられた閾値と前記乱数列を構成する乱数値を比較する比較器、
前記比較器による比較結果に基づいて、前記入力画像データの前記上位ビットの値を変化させる演算器、
として機能させ、
前記乱数列は、非一様乱数列であり、
前記閾値は、前記下位ビットの値に対して非線形的に変化するように設定され、且つ前記閾値が前記下位ビットの値に対して線形的に変化するように設定される場合に比べて前記演算器による前記上位ビットの値の変化後の階調の線形性が高まるように設定される、
情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表現可能な階調を擬似的に向上させることが可能な情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
画像表示装置の駆動可能な階調深度より深い階調深度の入力画像データに対してフレーム変調を施すことにより、表現可能な階調を擬似的に向上させる技術として、時系列的に切り替えられるフレーム毎に各画素の階調を制御する、いわゆるフレームレートコントロール（以下、ＦＲＣ）技術が提案されている。【０００３】
特許文献１には、入力画像データのビット数よりも少ないビット数からなる出力データに基づいて画像表示装置に画像を表示する技術であり、ビット精度の拡張を行う際に、周期性を有する状態遷移を利用して入力画像データの上位ビットを調整することにより、擬似的に入力画像データと同等の階調を有する出力画像データを生成する画像表示方法が開示されている。【０００４】
特許文献１に開示される画像表示方法を適用し、例えば１２ビットの入力画像データのうち、下位の４ビットを精度拡張に用い、上位８ビットを調整する場合のアルゴリズムについて、図１を用いて説明する。【０００５】
削減する下位の４ビットで表現可能な１６個の状態毎に、図１に示される周期性を持った状態遷移を定義する。ここで、Ａ〜Ｈは状態記号と呼ばれ、「１」のときに上位の８ビットのうちの８ビット目に対して輝度を加算することを表す。【０００６】
ここで、図１では、説明のため、下位の４ビットが取り得る１６個の状態毎に、状態ＩＤとして１〜１６を付与している。また、ステート数とは、状態記号の数のことであり、輝度の加算の周期（フレーム数）を表す。【０００７】
例えば、入力画像データが「１０１１１０１００１００」の１２ビットで表現される場合には、上位ビット「１０１１１０１０」と下位ビット「０１００」に分けたうえで、下位ビット「０１００」に対応する状態を特定する。図１の例では、状態ＩＤが５にあたり、状態記号がＤとＨのときに、上位ビット「１０１１１０１０」に１ビット加算することを表す。【０００８】
つまり、入力画像データの１フレーム目が状態記号Ａに対応する場合、１〜３フレーム目（状態記号Ａ〜Ｃに対応）においては、上位ビット「１０１１１０１０」をそのまま出力データとして出力する。一方、４フレーム目では、状態記号Ｄが１であるので、上位ビット「１０１１１０１０」に１ビット加算し、「１０１１１０１１」を出力データとして出力する。【０００９】
５〜７フレーム目（状態記号Ｅ〜Ｇに対応）についても、１〜３フレームと同様に、上位ビット「１０１１１０１０」をそのまま出力データとして出力する。そして、８フレーム目（状態記号Ｈに対応）では、４フレーム目と同様に、上位ビット「１０１１１０１０」に１ビット加算し、「１０１１１０１１」を出力データとして出力する。【００１０】
このように、下位ビットが「０１００」である場合には、８フレーム中２フレームにおいて上位ビットに１ビットを加算することにより、中間階調を表現することが可能となる。つまり、全フレームにおいて上位ビットに拡張ビットを加算上位ビットに拡張ビットを加算した場合の階調を１とすると、状態ＩＤが５の場合には、８フレームに２回の頻度で、上位ビットに１ビット加算するので、人間の目に感じる残像により、擬似的に２／８階調、つまり、０．２５階調を表現することができる。【００１１】
なお、図１の例では、状態記号を８つ用いた例であるので、理想階調（状態ＩＤとの間で線形性を有する階調であり、状態ＩＤが１増えるごとに１／１６階調ずつ増加する階調）と中間階調（図１の例で実際に表現できる擬似階調）との間には乖離がある。例えば、状態ＩＤが２の場合には、理想階調を表現するためには、１６フレームに１回の頻度で上位ビットに拡張ビットを加算する必要があるが、ステート数が最大で８つであるので、理想階調を表現することができない。【００１２】
ここで、ステート数を８，７，６，５と異ならせているのは、中間階調をなるべく線形にするため、つまり、理想階調に近づけるためである。つまり、ステート数を適宜設定することにより、できるだけ中間階調が１／１６ずつ増加するように調整している。例えば、状態ＩＤが３の場合、理想階調は０．１２５（＝２／１６）である。このため、ステート数を８とし、８フレームに１回の頻度で上位ビットに１ビット加算することにより、中間階調として０．１２５（＝１／８）を実現している。また、状態ＩＤが１４の場合、理想階調は０．８１２５（＝１３／１６）である。このため、ステート数を５とし、５フレームに４回の頻度で上位ビットに１ビット加算することにより、中間階調として０．８（＝４／５）を実現している。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２０００−２３１３６８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
特許文献１に開示される画像表示方法では、中間階調を表現するために、周期性を有する状態遷移を用いている。このため、周期的に上位ビットが加算されることになり、人間の目からはちらつきとして視認されてしまう。これは、周期的な輝度の増加は目立つためである。【００１５】
そこで、かかる周期性に起因する問題を解消するために、例えばホワイトノイズを構成する一様乱数列を用い、乱数列を構成する乱数値が所定の閾値を下回る（又は上回る）場合に上位ビットに拡張ビットを加算することにより、輝度が増加するタイミングをランダムにする技術が提案されている。しかし、かかる技術にも課題が存在する。【００１６】
かかる課題について、図２を用いて説明する。図２（ａ）は複数の高周波成分と低周波成分の合成波（乱数列）、図２（ｂ）は分解された低周波成分、図２（ｃ）は分解された高周波成分を表す。また、説明のため、図２の例では高周波成分及び低周波成分がそれぞれ１つの場合を表す。【００１７】
乱数列を波形とみなすと、フーリエ変換により複数の高周波成分と低周波成分に分解することができる。しかし、図２に示されるように、低周波成分の影響により、閾値を下回る、つまり、上位ビットに拡張ビットを加算するための条件が成立する時間（斜線部）が長くなる。このため、上位ビットに拡張ビットを加算するタイミングがランダムになったとしても、かかる加算を連続して実行したり、かかる加算をしばらく実行しなかったりする事態が生じてしまう。これにより、やはり人間の目からはちらつきとして視認されてしまう。【００１８】
本発明はこのような事情に鑑みてなされたものであり、ちらつきを低減しつつ、擬似的に解像度を向上させることが可能な情報処理装置及びプログラムを提供するものである。
【課題を解決するための手段】
【００１９】
本発明によれば、乱数列を生成する乱数生成部と、入力画像データを構成する任意の数の上位ビット及び下位ビットのうち、前記下位ビットに対応付けられた閾値と前記乱数列を構成する乱数値を比較する比較器と、前記比較器による比較結果に基づいて、前記入力画像データの前記上位ビットの値を変化させる演算器と、を備え、前記閾値は、前記下位ビットの値に対して非線形的に変化するように設定され、且つ前記閾値が前記下位ビットの値に対して線形的に変化するように設定される場合に比べて前記加算後の階調の線形性が高まるように設定される、情報処理装置が提供される。【００２０】
本発明によれば、乱数列を生成し、かかる乱数列を構成する乱数値と、入力画像データを構成する下位ビットに対応付けられた閾値と比較する。そして、かかる比較結果に基づいて、入力画像データの上位ビットの値を変化させる。このように、乱数列を用いて所定の処理を実行することにより、上述の図２の例が有する課題を解決することができる。さらに、かかる閾値は、下位ビットの値に対して非線形的に変化するように設定され、且つ閾値が下位ビットの値に対して線形的に変化するように設定される場合に比べて加算後の階調の線形性が高まるように設定されるため、上述した図１の例における理想階調に極めて近い中間階調を実現することが可能となる。【００２１】
以下、本発明の種々の実施形態を例示する。以下に示す実施形態は互いに組み合わせ可能である。
好ましくは、前記演算器は、前記上位ビットに１又は複数ビットを加算又は減算するように構成される。
好ましくは、前記演算器は、前記加算又は減算された前記上位ビットで表されるデータを出力画像データとして出力するように構成される。
好ましくは、前記乱数列は、所定の周波数の低周波成分及び前記低周波成分より高い周波数の高周波成分を含む一様波形から前記低周波成分を低減した波形に対応する乱数列であり、前記一様波形は、一様乱数列で表される波形である。
好ましくは、前記乱数に対応する波形のパワースペクトルは、高周波側に偏った強度分布を有する。
好ましくは、前記閾値は、前記乱数列を構成する乱数値のヒストグラムに基づいて決定される。
好ましくは、前記閾値は、前記乱数列を構成する乱数値の累積確率分布に基づいて決定される。
好ましくは、前記閾値は、前記累積確率分布で表される関数の逆関数に基づいて決定される。
好ましくは、前記演算器による演算は、前記入力画像データを構成する１フレーム毎に実行される。
好ましくは、前記下位ビットと前記閾値は、ＬＵＴ又は数式により対応付けられる。
好ましくは、前記乱数列は、所定の周波数の低周波成分及び前記低周波成分より高い周波数の高周波成分を含む一様波形からコントラスト感度関数が所定値より大きい周波数成分を低減した波形に対応する乱数列であり、前記一様波形は、一様乱数列で表される波形である。
好ましくは、上記いずれかの情報処理装置を備える画像表示装置が提供される。
好ましくは、コンピュータを、乱数列を生成する乱数生成部、入力画像データを構成する任意の数の上位ビット及び下位ビットのうち、前記下位ビットに対応付けられた閾値と前記乱数列を構成する乱数値を比較する比較器、前記比較器による比較結果に基づいて、前記入力画像データの前記上位ビットの値を変化させる演算器、として機能させ、前記閾値は、前記下位ビットの値に対して非線形的に変化するように設定され、且つ前記閾値が前記下位ビットの値に対して線形的に変化するように設定される場合に比べてフレーム変調後の階調の線形性が高まるように設定される、情報処理プログラムが提供される。
【図面の簡単な説明】
【００２２】
【図１】従来のＦＲＣについて説明するための図であり、特許文献１に開示される画像表示方法を適用し、１２ビットの入力画像データのうち、下位の４ビットを精度拡張に用い、上位８ビットを調整する場合のアルゴリズムについて説明するための図である。
【図２】従来のＦＲＣについて説明するための図であり、例えばホワイトノイズを構成する一様乱数列を用い、乱数列を構成する乱数値が所定の閾値を下回る場合に上位ビットに拡張ビットを加算することにより、輝度が増加するタイミングをランダムにする技術について説明するための図である。ここで、図２（ａ）は複数の高周波成分と低周波成分の合成波（乱数列）、図２（ｂ）は分解された低周波成分、図２（ｃ）は分解された高周波成分を表す。また、説明のため、図２の例では高周波成分及び低周波成分がそれぞれ１つの場合を表す。
【図３】図３（ａ）は本発明の一実施形態に係る情報処理装置１０の機能ブロック図、図３（ｂ）は入力データ、図３（ｃ）及び図３（ｄ）は出力データを表す概念図である。
【図４】本発明の一実施形態に係る情報処理装置１０における、下位ビットの状態と、下位ビットが表す値である下位ビット値の対応関係について説明するための図である。本実施形態では、下位ビットが取り得る１６個の状態毎に、下位ビット値が１／１６ずつ線形に増加する。
【図５】一様乱数列から非一様乱数列を生成するアルゴリズムの一例について説明するための概念図である。図中の円は、画像表示装置の表示面における各ピクセルを表す。
【図６】図５の例において、一様乱数列を構成する乱数値の差分を計算し、かかる差分のヒストグラムを求める過程を説明するための図である。
【図７】図７（ａ）は図６の例における計算結果、図７（ｂ）は図７（ａ）を可視化したヒストグラム、図７（ｃ）は実際の実験において得られたヒストグラムを表す図である。
【図８】図８（ａ）は一様乱数列のパワースペクトルの例、図８（ｂ）は非一様乱数列のパワースペクトルの例を表す図である。
【図９】図９（ａ）は、図７（ｃ）のヒストグラムから生成される累積確率分布、図９（ｂ）は図９（ａ）に示される累積確率分布で表される関数の逆関数に基づいて決定された閾値ＬＵＴ、図９（ｃ）は入力画像データに含まれる下位ビット値と上位ビットへの加算確率の関係を表す図である。図９（ｃ）に示されるように、本発明の一実施形態に係る情報処理装置１０を適用することにより、加算後の階調の線形性が高まる。
【図１０】画像表示装置の表示パネルとＡＳＩＣの両方でＦＲＣを実行する場合における干渉の例を説明するための概念図である。
【図１１】図１１（ａ）は図９（ａ）と同様の累積確率分布、図１１（ｂ）は従来のＦＲＣにおける閾値ＬＵＴ、図１１（ｃ）は下位ビット値と上位ビットへの加算確率の関係を表す図である。
【発明を実施するための形態】
【００２３】
以下、図面を用いて本発明の実施形態について説明する。以下に示す実施形態中で示した各種特徴事項は、互いに組み合わせ可能である。
【００２４】
以下、図１〜図９を用いて、本発明の一実施形態に係る情報処理装置１０について説明する。
【００２５】
＜情報処理装置１０＞
図３は、本発明の一実施形態に係る情報処理装置１０について説明するための図である。図３（ａ）は本発明の一実施形態に係る情報処理装置１０の機能ブロック図、図３（ｂ）は入力画像データ（以下、入力データ）、図３（ｃ）及び図３（ｄ）は出力画像データ（以下、出力データ）を表す概念図である。
【００２６】
情報処理装置１０は、乱数生成器１、フィルタ２、閾値ＬＵＴ３、比較器４、加算器５を備える。また、本実施形態では、乱数生成器１及びフィルタ２により非一様乱数生成器６が構成される。ここで、加算器５は、入力データを構成する上位ビット及び下位ビットのうち、上位ビットの値を変化させる演算器の一例である。ここで、上位ビットの値を変化させるとは、上位ビットに１又は複数ビットを加算又は減算することを意味する。また、本実施形態では、これら各要素によりフレーム変調部７が構成される。そして、フレーム変調部７によりＦＲＣが実行される。
【００２７】
これらは、ソフトウェアによって実現してもよく、ハードウェアによって実現してもよい。ソフトウェアによって実現する場合、ＣＰＵがプログラムを実行することによって各種機能を実現することができる。プログラムは、内蔵の記憶部に格納しているものであってもよく、コンピュータ読み取り可能な非一時的な記録媒体に格納しているものであってもよい。また、外部の記憶部に格納されたプログラムを読み出し、いわゆるクラウドコンピューティングにより実現してもよい。ハードウェアによって実現する場合、ＡＳＩＣ、ＦＰＧＡ、又はＤＲＰなどの種々の回路によって実現することができる。
【００２８】
図３（ａ）に示されるように、情報処理装置１０には、入力データが入力される。ここで、本実施形態では、入力データが１２ビットの例について説明する。また、図３（ｂ）に示されるように、１２ビットのうち、上位８のビットを上位ビット、下位の４ビットを下位ビットとする。つまり、本実施形態に係る情報処理装置１０は、１２ビットの入力データのうち、下位の４ビットを削減するとともに、下位の４ビットの状態に基づいて上位の８ビットを調整するものである。
【００２９】
ここで、本実施形態では、図４に示されるように、下位ビットの状態毎に、下位ビットが表す値である下位ビット値が設定される。本実施形態では、下位ビットは４ビットであるので、「００００」〜「１１１１」までの１６個の状態を取り得る。そして、下位ビットの状態が１つ変化するごとに、下位ビット値が１／１６ずつ変化するように対応付ける。かかる対応関係は、図示しない記憶部に記憶される。なお、下位ビット値の意義については後述する。
【００３０】
乱数生成器１は、例えばホワイトノイズを構成する一様な乱数列を生成するものである。本実施形態では、０〜１までの値を一様乱数列として生成する。そして、一様乱数列を構成する乱数値（図中の一様乱数値）をフィルタ２に出力する。
【００３１】
フィルタ２は、０〜１までの範囲において、分布が一様でない非一様乱数列を生成するためのものである。具体的には、フィルタ２は、乱数生成器１が発生させる一様波形から、低周波成分を低減した波形に対応する乱数列を生成するためのものである。ここで、一様波形とは、所定の周波数の低周波成分及び低周波成分より高い周波数の高周波成分を含む波形を意味する。これにより、分布が一様でない非一様乱数列を生成する。つまり、乱数生成器１及びフィルタ２により非一様乱数生成器６が構成される。以下、非一様乱数列の生成アルゴリズムについて説明する。
【００３２】
＜非一様乱数列＞
図５は、一様乱数列から非一様乱数列を生成するアルゴリズムの一例について説明するための概念図である。図中の円は、画像表示装置の表示面における各ピクセルを表す。また、（ｘ，ｙ）は各ピクセルの位置を特定する座標を表す。図５の例では、ｘ方向にｎ個のピクセルが、ｙ方向にｍ個のピクセルが存在する。また、手前の画像は時刻ｔにおけるフレームを、奥の画像は時刻ｔ−１におけるフレームを表す。
【００３３】
ここで、乱数生成器１が時刻ｔにおけるフレームの座標（ｘ，ｙ）で特定されるピクセルに対して出力した乱数値（一様乱数値）をＲ（ｘ，ｙ，ｔ）（０〜１の範囲）とすると、フィルタ２は、「Ｒ（ｘ，ｙ，ｔ）−Ｒ（ｘ，ｙ，ｔ−１）」で得られる値に所定の補正を実施することにより得られる値「Ｎ（ｘ，ｙ，ｔ）（０〜１の範囲）」を乱数値（非一様乱数値）として出力する。これについて、図６及び図７を用いて説明する。
【００３４】
図６は、Ｒ（ｘ，ｙ，ｔ）が取り得る値を最上行にとり、Ｒ（ｘ，ｙ，ｔ−１）が取り得る値を最左列にとり、これらの値が交差する箇所の差分「Ｒ（ｘ，ｙ，ｔ）−Ｒ（ｘ，ｙ，ｔ−１）」を記載した表である。
【００３５】
かかる差分毎に、頻度をまとめたものが図７（ａ）である。図６及び図７（ａ）に示されるように、差分（「Ｒ（ｘ，ｙ，ｔ）−Ｒ（ｘ，ｙ，ｔ−１）」に相当）は、「−１〜＋１」までの範囲となっている。そこで、かかる範囲を「０〜１」にするために、所定の補正を実行する。具体的には、各差分に対して、一律に「０．５」を乗じ、その後「０．５」を加算する。
【００３６】
所定の補正がなされた各差分を、補正後差分とすると、補正後差分は、図７（ａ）に示されるように、「０〜１」の範囲となる。また、補正後差分毎の頻度は、図７（ｂ）に示されるように、０．５をピークとしたヒストグラムとなっている。本実施形態では、かかる補正後差分を非一様乱数値として用いる。なお、実際の実験において得られたヒストグラムを図７（ｃ）に示す。図７（ｃ）の例では、乱数値の発生回数は１０万回である。
【００３７】
ここで、かかるヒストグラムは、図８（ｂ）に示すパワースペクトルを有する。図８（ｂ）に示されるように、かかるパワースペクトルは、高周波側に偏った強度分布を有する。これは、いわゆるブルーノイズといわれるものに相当する。一方、乱数生成器１が生成する一様乱数列のパワースペクトルは、図８（ａ）に示されるような形状となる。一様乱数列では、パワースペクトルは全周波数で一様に分布している。これは、いわゆるホワイトノイズに相当する。
【００３８】
このように、乱数生成器１及びフィルタ２が協働し、乱数生成器１が発生させる一様乱数列で表される波形であって、所定の周波数の低周波成分及び低周波成分より高い周波数の高周波成分を含む波形（ホワイトノイズ）から、低周波成分を除去した波形に対応する乱数列（ブルーノイズ）を生成する。したがって、本実施形態では、乱数生成器１及びフィルタ２が非一様乱数生成器６として機能する。
【００３９】
なお、上述した方法では、少なくとも時刻ｔにおけるフレームと時刻ｔ−１におけるフレームに関する情報をメモリに記憶しておく必要がある。かかる差分の計算は、入力データが１フレーム入力される度に実行してもよい。また、メモリに十分な余裕がある場合、例えば数万フレーム分の非一様乱数列を予め計算し、メモリに記憶しておいてもよい。この場合、入力データが１フレーム入力される度に、予め記憶した非一様乱数列から１フレーム分の乱数値を出力すればよい。もしくは、再現性のある乱数生成器を２基（ａ、ｂ）用意し、１ピクセル毎に、乱数生成器（ａ）では時刻ｔの乱数Ｒ（ｘ，ｙ，ｔ）を発生させ、また乱数生成器（ｂ）には乱数生成器（ａ）の時刻ｔ−１時点の内部状態を与えておく等の方法で乱数Ｒ（ｘ，ｙ，ｔ−１）を同時に再現させることで、メモリの代わりとしてもよい。
【００４０】
さらに、かかる方法に代えて、乱数生成器１が生成した一様乱数列に対し、低周波成分を遮断する任意のハイパスフィルタを適用し、非一様乱数列を生成してもよい。
【００４１】
次に、図３に戻り、閾値ＬＵＴ３、比較器４及び加算器５について説明する。
【００４２】
閾値ＬＵＴ３は、入力データの下位ビットが表す下位ビット値（図４参照）に対応する閾値を格納したＬＵＴである。入力データが入力されると、下位ビットを抽出し、対応する下位ビット値を取得する。そして、取得した下位ビット値に対応する閾値を比較器４に出力する。
【００４３】
比較器４は、フィルタ２から出力された非一様乱数値と、閾値ＬＵＴ３から出力された閾値と、を比較する。そして、所定の条件を満たすか否かを判断する。本実施形態では、非一様乱数値が閾値を下回る場合に、所定の条件が満たされたと判断する。比較器４は、非一様乱数値が閾値を下回る場合に１を、そうでない場合に０を加算器５に出力する。
【００４４】
加算器５は、比較器から出力されたビットを上位ビットに加算する。そして、加算された上位ビットで表されるデータを出力データとして出力する。
【００４５】
具体的には、図３（ｂ）に示される入力データが入力された場合であって、比較器４による比較の結果、非一様乱数値が閾値を下回る場合には、上位ビットに１ビット加算する（図３（ｃ））。そして、かかるデータを出力データとして出力する。一方、非一様乱数値が閾値を上回る場合には、加算器５は加算処理を実行せず、入力データの上位ビットをそのまま出力データとして出力する。
【００４６】
ここで、入力データが図３（ｂ）に表される状態の場合、下位ビット「０１００」に対応する下位ビット値は「０．２５」となる（図４参照）。したがって、４フレームに１回（１／４＝０．２５）の確率で加算器５による加算が実行されるのが理想的である。これは、閾値ＬＵＴ３を適切に生成することにより実現される。
【００４７】
以下、図９を用いて閾値ＬＵＴ３の生成方法について説明する。
【００４８】
＜閾値ＬＵＴ３の生成＞
図９（ａ）は、フィルタ２から出力された乱数値が、図７（ｃ）に示されるヒストグラムから生成される累積確率分布である。例えば、乱数値が０．３を下回る確率は、図７（ｃ）に示されるヒストグラムの値が０．３を下回る部分の面積（＝図７（ｃ）中の破線Ｄより左側の領域における略三角形の面積）に等しい。本実施形態では、ヒストグラムの値が１を下回る部分の面積、つまり、ヒストグラムで表される略三角形の全面積を１として計算する。
【００４９】
図９（ａ）に示されるように、本実施形態では、ヒストグラムの値が０．３を下回る部分の面積が０．２５であり、ヒストグラムの値が０．５５を下回る部分の面積が０．７５である。かかる計算を、ヒストグラムの値を０〜１の範囲で変化させながら計算した結果が図９（ａ）である。換言すると、図９（ａ）は、横軸が乱数値、縦軸が確率に相当し、例えばフィルタ２が出力する乱数値が０．３を下回る確率が０．２５、乱数値が０．５を下回る確率が０．５、乱数値が０．５５を下回る確率が０．７５であることを表す。
【００５０】
ここで、図９（ａ）に示される確率分布は非線形であり、かかる確率分布で表される乱数値に基づいて上位ビットに拡張ビットを加算する場合、加算後の上位ビットが表す階調値が線形に変化しない。
【００５１】
これについて、図１１を用いて説明する。図１１（ａ）は図９（ａ）と同様の累積確率分布、図１１（ｂ）は従来のＦＲＣにおける閾値ＬＵＴ、図１１（ｃ）は下位ビット値と上位ビットへの加算確率の関係を表す図である。
【００５２】
例えば、下位ビット値が０．３のときには、０．３（＝３／１０）の確率で付加ビットを加算することが好ましい。しかし、図１１（ｂ）に示されるように、下ビット値が０．３のときの閾値をそのまま０．３とした場合、乱数値が０．３を下回る確率は、図１１（ａ）より「０．２５」となる。つまり、下位ビット値が０．３の場合には、０．２５（＝１／４）の確率で付加ビットが加算される結果となる。したがって、図１１（ｃ）に示されるように、加算後の上位ビットが表す階調値が線形に変化しない。
【００５３】
そこで、加算後の上位ビットが表す階調値の線形性を高めるために、図９（ｂ）で示される閾値ＬＵＴ３を利用する。閾値ＬＵＴ３は、以下の方法で生成される。
【００５４】
例えば、入力データの下位ビットが「０１００」、つまり下位ビット値が「０．２５」である場合、４フレームに１回の確率で上位ビットに拡張ビットを加算することが求められる。このため、下位ビット値が「０．２５」のときに、「乱数値＜閾値」となる確率を０．２５（＝１／４）とするために、図９（ａ）に示される累積確率分布を参照する。図９（ａ）における確率が０．２５となるのは、乱数値が０．３を下回る場合である。したがって、下位ビット値「０．２５」に対応する閾値を「０．３」とすることにより、下位ビット値が「０．２５」のときに「乱数値＜閾値」となる確率が０．２５となる。
【００５５】
また、下位ビットが「１１００」、つまり下位ビット値が「０．７５」である場合、４フレームに３回の確率で上位ビットに拡張ビットを加算することが求められる。このため、下位ビット値が「０．７５」のときに、「乱数値＜閾値」となる確率を０．７５（＝３／４）とするために、図９（ａ）に示される累積確率分布を参照する。図９（ａ）における確率が０．７５となるのは、乱数値が０．５５を下回る場合である。したがって、下位ビット値「０．７５」に対応する閾値を「０．５５」とすることにより、下位ビット値が「０．７５」のときに「乱数値＜閾値」となる確率が０．７５となる。
【００５６】
このように、図９（ａ）に示される累積確率分布を参照し、下位ビット値に対応する閾値を決定する。つまり、ある下位ビット値に対応する閾値は、かかる下位ビット値と同じ値の確率に対応する乱数値を決定することにより定められる。これは、図９（ａ）に示される累積確率分布で表される関数の逆関数を求めることに相当する。
【００５７】
このように、図９（ａ）に示される累積確率分布で表される関数の逆関数を求め、かかる逆関数を図９（ｂ）に示される閾値ＬＵＴ３として利用する。
【００５８】
つまり、本実施形態では、閾値は、非一様乱数列を構成する乱数値のヒストグラムに基づいて決定される。また、閾値は、非一様乱数列を構成する乱数値の累積確率分布に基づいて決定される。さらに、閾値は、累積確率分布で表される関数の逆関数に基づいて決定される。
【００５９】
ここで、本実施形態では、閾値を乱数値がヒストグラムに含まれる所定の値を下回るときの累積確率分布に基づいて決定しているが、これに限定されない。例えば、乱数値がヒストグラムに含まれる所定の値以下となる確率、乱数値がヒストグラムに含まれる所定の値を上回る確率、乱数値がヒストグラムに含まれる所定の値以上となる確率に基づいて決定してもよい。乱数値がヒストグラムに含まれる所定の値以上となる確率又は上回る確率を採用する場合、図９（ａ）及び図９（ｂ）におけるグラフは、それぞれ上下反転したものとなる。
【００６０】
また、閾値ＬＵＴ３に代えて、下位ビット値と閾値との対応関係を表す数式を用いてもよい。この場合、かかる数式は図示しない記憶部に記憶され、加算処理を実行する度に数式に基づいて閾値が計算される。
【００６１】
図９（ｃ）は、かかる閾値ＬＵＴ３を用いた場合における、下位ビット値と上位ビットへの加算確率の関係を表す図である。図９（ｃ）に示されるように、本発明の一実施形態に係る情報処理装置１０を適用することにより、加算後の階調の線形性が高まる。例えば、下位ビットが「０１００」、つまり下位ビット値が「０．２５（＝４／１６）」である場合、上位ビットへの加算確率は０．２５（＝４／１６）となっている。また、下位ビットが「１０００」、つまり下位ビット値が「０．５（＝８／１６）」である場合、上位ビットへの加算確率は０．５（＝８／１６）となっている。また、下位ビットが「１１００」、つまり下位ビット値が「０．７５（＝１２／１６）」である場合、上位ビットへの加算確率は０．７５（＝１２／１６）となっている。さらに、下位ビットが「１１１１」、つまり下位ビット値が「０．９３７５（＝１５／１６）」である場合、上位ビットへの加算確率は０．９３７５（＝１５／１６）となっている。このように、下位ビットの取り得る１６個の状態に応じて、加算後の階調を線形にすることが可能となる。
【００６２】
以上説明したように、本発明の一実施形態に係る情報処理装置１０は、非一様乱数列を生成する非一様乱数生成器６と、入力画像データを構成する任意の数の上位ビット及び下位ビットのうち、下位ビットに対応付けられた閾値と非一様乱数列を構成する乱数値を比較する比較器４と、比較器４による比較結果に基づいて、入力画像データの上位ビットの値を変化させる演算器（加算器５）と、を備える。ここで、本実施形態では、演算器として加算器５を利用し、上位ビットに１ビットを加算する構成としている。また、閾値は、下位ビットの値に対して非線形的に変化するように設定され（図９（ｂ）参照）、且つ前記閾値が前記下位ビットの値に対して線形的に変化するように設定される場合に比べて加算後の階調の線形性が高まる（図９（ｃ）参照）ように設定される。さらに、演算器（加算器５）は、加算された上位ビットで表されるデータを出力画像データとして出力するように構成される。
【００６３】
そして、かかる処理を、１フレーム毎に実行する。さらに、１フレームに含まれるピクセル毎に実行する。
【００６４】
このような構成により、上位ビットへの加算タイミングを乱数列によりランダムにしつつ、累積確率分布を用いて設定した閾値を利用することにより、加算後の階調の線形性を高めることが可能となる。これにより、非周期的に上位ビットへの加算が可能となるので、周期的に加算する従来のＦＲＣと比較して、ちらつきを低減しつつ、擬似的に解像度を向上させることが可能となる。
【００６５】
＜応用例＞
以下、図１０を用いて、情報処理装置１０の応用例について説明する。
【００６６】
図１０は、画像表示装置の表示パネルと、画像表示装置に組み込まれるＡＳＩＣの両方で従来のＦＲＣを実行する場合における干渉の例を説明するための図である。例えば、１２ビットの入力データをＡＳＩＣにおけるＦＲＣにより８ビットの擬似階調で表現し、表示パネルにおけるＦＲＣで８ビットの擬似階調を６ビットの擬似階調で表現する場合などが考えられる。
【００６７】
図１０において、上段が入力データのフレーム数、中段が表示パネルにおける上位ビットへの加算タイミング、下段がＡＳＩＣにおける上位ビットへの加算タイミングを表す。ここで、図１０の例では、２，８，１４，２０フレーム目において、表示パネルにおける上位ビットへの加算が実行される。つまり、表示パネルにおけるＦＲＣは、６フレームに１回の頻度で周期的に上位ビットに拡張ビットを加算する。
【００６８】
一方、ＡＳＩＣについては、２，５，８，１１，１４，１７，２０フレーム目において、上位ビットへの加算が実行される。つまり、ＡＳＩＣにおけるＦＲＣは、３フレームに１回の頻度で周期的に上位ビットに拡張ビットを加算する。
【００６９】
ここで、かかる周期性のため、図中の楕円で示した２，８，１４，２０フレーム目において、表示パネルとＡＳＩＣが同時に上位ビットに拡張ビットを加算することにより、互いの信号が干渉し、表示パネルに表示される画像のちらつきや縞模様のうねり等の不具合が生じてしまう。
【００７０】
一方、本発明の一実施形態に係る情報処理装置１０を利用して、表示パネル及びＡＳＩＣの両方でＦＲＣを実行した場合には、かかる干渉の頻度が低減する。つまり、表示パネル及びＡＳＩＣにおける上位ビットへの加算タイミングは、それぞれ乱数値に基づいてランダムに決定されるため、図１０のような周期的な干渉が生じないためである。
【００７１】
次に、本発明の一実施形態に係る情報処理装置１０を利用して、コントラスト感度関数（ＣＳＦ）を低減する例について説明する。
【００７２】
コントラスト感度関数（ＣＳＦ）は、人間の視覚特性を官能評価した関数である。これは、様々な空間周波数の波を表示した画像を被検者に提示し、その波が見えなくなる点のデータから、人間の視覚の空間周波数による感度をモデル化したものである。
【００７３】
一様乱数列で表される波形であって、所定の周波数の低周波成分及び低周波成分より高い周波数の高周波成分を含む波形から、フィルタ２により低周波成分を除去する構成に代えて、ＣＳＦが高い周波数成分を低減するようにフィルタ２を設計すれば、拡張ビットによる模様（又はちらつき）を人間にとって見えづらくすることが可能となる。
【００７４】
＜その他＞
以上、種々の実施形態について説明したが、本発明に係る情報処理装置１０はこれらに限定されない。
【００７５】
例えば、上位ビットに１ビット加算することに代えて、２ビット加算してもよい。この場合、１ビット加算する場合における加算確率の１／２の確率で加算すればよい。また、必要に応じて、さらに多くのビットを加算してもよい。
【００７６】
さらに、上位ビットに１ビット加算するのに代えて、上位ビットを１ビット減算する構成としてもよい。例えば、１／１６の確率で１ビット加算するのに代えて、１／１６又は１５／１６の確率で１ビット減算する構成としてもよい。
【００７７】
また、非一様乱数生成器６として単一の乱数生成器を用いることもできる。また、入力データ及び出力データとして、１２ビット及び８ビット以外の任意のビット数を採用することもできる。さらに、図３に示されるように、乱数発生器１が発生させた一様乱数を、フィルタ２を介して非一様乱数として出力する構成は、あくまで一例である。具体的な乱数の発生手法は特に限定されず、図７（ｂ）に示されるようなヒストグラムを有するものを利用することにより、情報処理装置１０として機能する。
【００７８】
また、情報処理装置１０は、ＰＣ、サーバ又はコンピュータもしくは画像表示装置に接続するセットトップボックスとして提供することができる。また、情報処理装置１０を備える画像表示装置として提供することもできる。さらに、情報処理装置１０の機能を実装したコンピュータ読み取り可能な非一時的な記録媒体として提供することもできる。また、情報処理装置１０の機能を実現するプログラムを、インターネット等を介して配信することもできる。
【００７９】
さらに、情報処理装置１０を構成する各部は、同じ筐体に含まれてもよく、複数の筐体に分散配置されてもよい。
【符号の説明】
【００８０】
１：乱数生成器
２：フィルタ
３：閾値ＬＵＴ
４：比較器
５：加算器
６：非一様乱数生成器
７：フレーム変調部
１０：情報処理装置
【図１】
0006616020.tif 000002
【図２】
0006616020.tif 000003
【図３】
0006616020.tif 000004
【図４】
0006616020.tif 000005
【図５】
0006616020.tif 000006
【図６】
0006616020.tif 000007
【図７】
0006616020.tif 000008
【図８】
0006616020.tif 000009
【図９】
0006616020.tif 000010
【図１０】
0006616020.tif 000011
【図１１】
0006616020.tif 000012