(57)【要約】線形空間における複数の高ビット深度の強度値からなるデジタル画像をトーンマッピングするための方法が開示される。最初に、複数の線形強度値が線形空間から非線形空間にマッピングされる(402)。次いで、複数の高ビット深度の強度値のそれぞれに関して、左側および右側境界間隔値が線形空間において求められる(404)。次いで、ディザースクリーンが線形空間において複数の高ビット深度の強度値上に重ね合わせられる(406)。線形空間における複数の高ビット深度の強度値の１つ１つに関して、現在の高ビット深度の強度値、現在のピクセルに対する左側および右側境界間隔値、及び現在のピクセル上に重ね合わされるディザースクリーンの値に基づいて、境界間隔値の一方が選択される(408)。選択された境界間隔値のそれぞれが、より低いビット深度の非線形空間にマッピングされる(410)。次いで、マッピングされた、選択された境界間隔値がコンピュータ可読媒体に格納される。【選択図】図４
2013500677.tif 000002
【特許請求の範囲】
【請求項１】
高ビット深度の線形デジタル画像をより低いビット深度の非線形デジタル画像へトーンマッピングするための方法であって、前記デジタル画像が、コンピュータ可読媒体に格納された、線形空間における複数の高ビット深度の強度値からなるものにおいて、
前記複数の高ビット深度の強度値を前記線形空間から非線形空間にマッピングし（４０２）、
前記複数の高ビット深度の強度値のそれぞれに関して、前記線形空間において左側および右側境界間隔値を求め（４０４）、
線形空間において前記複数の高ビット深度の強度値上にディザーパターンを重ね合わせ、そのディザーパターンが複数のディザーパターン値からなり（４０６）、
線形空間における前記複数の高ビット深度の強度値の１つ１つに関して、当該１つの高ビット深度の強度値、当該１つの高ビット深度の強度値に対する前記左側および右側境界間隔値、及び当該１つの高ビット深度の強度値上に重ね合わされる前記ディザーパターンの値に基づいて、前記線形空間における前記境界間隔値の一方を選択し（４０８）、
前記選択された境界間隔値のそれぞれを前記より低いビット深度の非線形空間にマッピングし（４１０）、
前記マッピングされた、選択された境界間隔値をコンピュータ可読媒体に格納することを含む、方法。
【請求項２】
前記選択された境界間隔値のそれぞれを前記より低いビット深度の非線形空間にマッピングすることが、ガンマ関数を用いて行われる、請求項１に記載の画像をトーンマッピングするための方法。
【請求項３】
前記左側および右側境界間隔値が、最も近い２つの、より低いビット深度の非線形強度値を表す、請求項１又は２に記載の画像をトーンマッピングするための方法。
【請求項４】
前記非線形空間の前記左側境界間隔値が、（（integerValue（IntensityVal×MaxIV）／MaxIV）に等しく、ここでIntensityValは、非線形空間における前記高ビット深度の強度値であり、MaxIVは、非線形空間における最大の低ビット深度の強度値であり、integerValueは、任意の小数値を切り捨てる関数であり、
前記非線形空間の前記右側境界間隔値が、（（（integerValue（IntensityVal×MaxIV）＋1）／MaxIV）に等しい、請求項３に記載の画像をトーンマッピングするための方法。
【請求項５】
前記線形空間における前記境界間隔値の一方を選択することが、
IntensityN−left＞DitherN×（right−left）が真でない場合に、前記１つの高ビット深度の強度値の前記左側境界間隔値を選択し、ここでIntensityNは、前記線形空間における前記１つの高ビット深度の強度値であり、left及びrightは、前記１つの高ビット深度の強度値に関する前記線形空間における前記左側および右側境界間隔であり、Ditherは前記１つの高ビット深度の強度値上に重ね合わされた、前記線形空間における正規化されたディザー値であり、
IntensityN−left＞DitherN×（right−left）が真である場合に、前記１つの高ビット深度の強度値の前記右側境界間隔値を選択することからなる、請求項１〜４の何れかに記載の画像をトーンマッピングするための方法。
【請求項６】
前記高ビット深度の画像が、以下のビット深度、即ち２４ビットの深さ、１６ビットの深さ、及び１２ビットの深さから選択されたビット深度を有する、請求項１〜５の何れかに記載の画像をトーンマッピングするための方法。
【請求項７】
前記より低いビット深度の画像が、以下のビット深度、即ち１２ビットの深さ、８ビットの深さ、４ビットの深さ及び２ビットの深さから選択されたビット深度を有する、請求項１〜６の何れかに記載の画像をトーンマッピングするための方法。
【請求項８】
少なくとも１つのディスプレイ上に前記最終画像を表示することを更に含む、請求項１〜７の何れかに記載の画像をトーンマッピングするための方法。
【請求項９】
コンピュータ命令を実行するように構成されたプロセッサ（1002）と、
前記プロセッサ（1002）に結合され、コンピュータ可読情報を格納するように構成されたメモリ（1004）と、
前記メモリ（1004）に格納された画像を表す複数の高ビット深度の線形強度値とを含み、
前記プロセッサ（1002）が、前記複数の高ビット深度の強度値を線形空間から非線形空間にマッピングするように構成されており、
前記プロセッサ（1002）が、前記複数の高ビット深度の強度値のそれぞれに関して、前記線形空間において左側および右側境界間隔値を求めるように構成されており、
前記プロセッサ（1002）が、線形空間において前記複数の高ビット深度の強度値上にディザーパターンを重ね合わせるように構成されており、そのディザーパターンが複数のディザーパターン値からなり、
前記プロセッサ（1002）が、線形空間における前記複数の高ビット深度の強度値の１つ１つに関して、前記線形空間における当該１つの高ビット深度の強度値、当該１つの高ビット深度の強度値に対する前記線形空間における左側および右側境界間隔値、及び当該１つの高ビット深度の強度値上に重ね合わされる前記線形空間における前記ディザーパターンの値に基づいて、前記線形空間における前記境界間隔値の一方を選択するように構成されており、
前記プロセッサ（1002）が、前記選択された境界間隔値のそれぞれをより低いビット深度の非線形空間にマッピングするように構成されており、
前記プロセッサ（1002）が、前記マッピングされた、選択された境界間隔値を前記メモリ（1004）に格納するように構成されている、装置。
【請求項１０】
前記選択された境界間隔値のそれぞれが、ガンマ関数を用いて前記線形空間から非線形空間にマッピングされる、請求項９に記載の装置。
【請求項１１】
前記非線形空間の前記左側境界間隔値が、（（integerValue（IntensityVal×MaxIV）／MaxIV）に等しく、ここでIntensityValは、非線形空間における前記高ビット深度の強度値であり、MaxIVは、非線形空間における最大の低ビット深度の強度値であり、integerValueは、任意の小数値を切り捨てる関数であり、
前記右側境界間隔値が、（（（integerValue（IntensityVal×MaxIV）＋1）／MaxIV）に等しい、請求項９又は１０に記載の装置。
【請求項１２】
前記線形空間における前記境界間隔値の一方を選択することが、
IntensityN−left＞DitherN×（right−left）が真でない場合に、前記１つの高ビット深度の強度値の前記左側境界間隔値を選択し、ここでIntensityNは、前記線形空間における前記１つの高ビット深度の強度値であり、left及びrightは、前記１つの高ビット深度の強度値に関する前記線形空間における前記左側および右側境界間隔であり、Ditherは前記１つの高ビット深度の強度値上に重ね合わされた、前記線形空間における正規化されたディザー値であり、
IntensityN−left＞DitherN×（right−left）が真である場合に、前記１つの高ビット深度の強度値の前記右側境界間隔値を選択することからなる、請求項９〜１１の何れかに記載の装置。
【請求項１３】
前記高ビット深度の画像が、以下のビット深度、即ち２４ビットの深さ、１６ビットの深さ、及び１２ビットの深さから選択されたビット深度を有する、請求項９〜１２の何れかに記載の装置。
【請求項１４】
前記より低いビット深度の画像が、以下のビット深度、即ち１２ビットの深さ、８ビットの深さ、４ビットの深さ及び２ビットの深さから選択されたビット深度を有する、請求項９〜１３の何れかに記載の装置。
【請求項１５】
少なくとも１つのディスプレイを更に含み、前記プロセッサが前記少なくとも１つのディスプレイ上に前記最終画像を表示する、請求項９〜１４の何れかに記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
多くのキャプチャ装置、例えばスキャナ又はデジタルカメラは、二次元のピクセルアレイ（画素配列）として画像をキャプチャする。各ピクセルは、所定の色空間（例えば、赤、緑、及び青）の関連した強度値を有する。当該強度値は、各色に対して高いビット深度（例えば、１２又は１６ビットの深さ）を用いてキャプチャされ得る。キャプチャされた強度値は一般に、線形的に間隔があいている。最終画像として保存される場合、又はディスプレイ画面に表示される場合、各色の強度値は、非線形間隔を有するより低いビット深度（例えば、色毎に８ビット）へ変換され得る。色毎に８ビット（３色有する）を有する最終画像は、２４ビットのカラー画像として表され得る。線形の高ビット深度の画像（色毎に１２又は１６ビット）をより低い非線形ビット深度の画像（色毎に８ビット）にマッピングすることは一般に、ガンマ補正トーンマッピングを用いて行われる。
【０００２】
マルチプロジェクタシステムは、混色領域（混色は滑らかに変化しなければならない）におけるコンタリングを防止するために高ビット深度を必要とする場合が多い。これは、黒色のオフセットをデジタル処理で補正する場合に非常に重大な問題になる。その理由は、０から１までの別個のデジタルのジャンプがその範囲において連続値の表現を可能にしないからである。また、ディスプレイシステムにおいて、「混色」又はサブフレームの値は、高い精度（１６ビット）を有する線形空間で計算されて、非線形８ビットにガンマ補正されることが多い。
【０００３】
上述されたように、高ビット深度の線形画像が、より低いビット深度の非線形画像へ変換またはマッピングされる理由がたくさんある。マッピング処理中に、画像の暗い領域のコンタリングが生じる可能性がある。コンタリングは一般に、２つの色または色調間の目に見える段として定義される。
【図面の簡単な説明】
【０００４】
【図１】本発明の例示的な実施形態における画像の小さい部分を表す強度値の二次元配列である。
【図２】線形４ビット画像の強度値を、非線形２ビット画像の強度値へ２．２のガンマ値を用いてマッピングすることを示す表である。
【図３】２．２のガンマ値マッピングを用いて２ビット（４レベル）空間へマッピングされた後の図１からの画像を示す図である。
【図４】本発明の例示的な実施形態において、ガンマ補正とディザリングを組み合わせるための方法を示す流れ図である。
【図５ａ】本発明の例示的な実施形態において、高ビット深度の画像の強度値を示す表である。
【図５ｂ】本発明の例示的な実施形態において、非線形空間および線形空間におけるより低いビット深度の画像の強度値を示す表である。
【図６】本発明の例示的な実施形態におけるディザーパターンである。
【図７】本発明の例示的な実施形態における小さい画像である。
【図８】本発明の例示的な実施形態において、図６のディザーパターンを図７の小さい画像上へ重ね合わせることの結果を列挙する表である。
【図９】本発明の例示的な実施形態における最終画像である。
【図１０】本発明の例示的な実施形態におけるコンピュータシステム１０００のブロック図である。
【０００５】
詳細な説明
図１〜１０及び以下の説明は、本発明の最良の形態を如何にして作成して使用するかを当業者に教示するために、特定の例を表す。発明の原理を教示するために、幾つかの従来の態様は、簡略化または省略されている。当業者ならば、本発明の範囲内に入るこれらの例からの変形形態を理解するであろう。当業者ならば、以下に説明される特徴が様々な方法で組み合わされて、本発明の多数の変形形態を形成できることは理解されるであろう。結果として、本発明は、以下で説明される特定の例だけでなく、特許請求の範囲およびそれらの等価物によっても制限される。
【０００６】
画像を高ビット深度の線形画像からより低いビット深度の非線形画像へマッピングすることは、多くの異なるビット深度レベルを通じて行われ得る。例えば、マッピングは、１６ビット（６５，５３６レベル）から８ビット（２５６レベル）へ、１２ビットから８ビットへ、８ビットから４ビットへ、又は４ビットから２ビットなどへ行われ得る。マッピングにガンマ補正を用いる場合、高ビット深度の画像の各強度値は、最初に０と１との間に正規化される。一実施形態において、各色チャネルは、別個に処理される。正規化は、現在のビット深度の最も大きい可能な強度値で元の強度値を除算することにより行われる。例えば、元の強度値が８ビット画像の５０である（及び強度の範囲が０〜２５５である）場合、正規化値は、５０／２５５、即ち0.196078となる。マッピング関数としてガンマ補正を用いる場合、マッピングされた非線形強度値（０と１との間で正規化された）は式１により与えられる。即ち、
正規化非線形値＝（正規化値）＾（１／ガンマ）    式１。
【０００７】
式１において、正規化非線形強度値は、正規化強度値を（１／ガンマ値）でべき乗することにより与えられる。ガンマ値が２．２の場合、正規化強度値は、（1／2.2）乗、即ち0.4545乗される。元の強度値５０は、0.4812（0.196078＾0.4545＝0.476845）の正規化マッピング値を生じる。非線形空間の最終強度値は、正規化マッピング値とマッピングされる非線形空間の最も高い強度レベルを掛け合わせることにより生成される。例えば、８ビット値が４ビット、即ち１６レベル値（０〜１５の強度範囲を有する）へマッピングされる場合、最終マッピング強度値は、正規化マッピング値に１５を掛け合わせることにより、即ち0.476845×15＝７により与えられる。
【０００８】
図１は、本発明の例示的な実施形態における画像の小さい部分を表す強度値の二次元配列である。図１の画像は、０〜１５の範囲にわたる強度値を有する４ビット画像である。図２は、線形４ビット画像の強度値を、非線形２ビット画像の強度値へ２．２のガンマ値を用いてマッピングすることを示す表である。図３は、２．２のガンマ値マッピングを用いて２ビット（４レベル）空間へマッピングされた後の図１からの画像を示す。図３は、３つの異なるレベル間に目に見えるバンディングを有する可能性がある。
【０００９】
本発明の１つの例示的な実施形態において、より少ないコンタリングを示すことができる画像を生成するために、ディザリングのステップがマッピングのステップと組み合わされる。図４は、本発明の例示的な実施形態において、ガンマ補正とディザリングを組み合わせるための方法を示す流れ図である。図４に示された方法を用いて、高ビット深度の線形画像が、より少ない数の非線形レベルを用いて表され、この場合、より少ない数の非線形レベルが最終画像にわたって空間的に変調される。
【００１０】
図４のステップ４０２において、高ビット深度の線形画像の各強度値は、非線形空間の強度値にマッピングされる。本発明の１つの例示的な実施形態において、マッピングは、ガンマ補正を用いて行われる。本発明の他の例示的な実施形態において、他のマッピングアルゴリズムが使用されてもよい。ステップ４０４において、左側および右側隔たり境界が、非線形空間の各強度値について計算される。ひとたび左側および右側隔たり境界が計算されたならば、それらは線形空間にマッピングされる。
【００１１】
ステップ４０６において、ディザーパターンが、線形空間において元の画像のピクセル（画素）上へ重ね合わされる。ステップ４０８において、各ピクセルの強度値は、元の線形強度値、左側および右側隔たり境界値（線形空間における）、及びそのピクセル位置におけるディザースクリーンの値に基づいて、線形空間における２つの最も近い左側および右側隔たり境界の１つになる。ステップ４１０において、ピクセル位置の非線形ガンマ補正済み強度値が求められる。
【００１２】
以下の例は、本発明の１つの例示的な実施形態を例証することに役立つ。この例において、４ビット、即ち１６レベルの線形画像は、２ビット、即ち４レベルの非線形画像へ変換される。４ビット画像は、０〜１５の範囲にわたる可能な強度値を有する。我々は、この例のために図７に示された画像を使用する。最初のステップは、高ビット深度の線形画像の各強度値を非線形空間の強度値にマッピングすることである。マッピングがガンマ補正関数を用いて行われる場合、線形画像から非線形画像へマッピングするために、式１が使用される。
【００１３】
この例に関して、２．２のガンマ圧縮が使用される。図５ａは、本発明の例示的な実施形態において、高ビット深度の画像の強度値を示す表である。図５ａの最初の列は、４ビット線形空間の正規化強度値を列挙する。図５ａの２番目の列は、非線形空間の正規化強度値を列挙する。列２の各強度値は、２．２のガンマ補正でもって式１を用いて生成された。例えば、強度値２（非線形空間における）のガンマ補正値は、最初に４ビット値を正規化し、次いでその正規化された値を（1／2.2）乗することにより生成され、0.40017（（0.13333）＾（1／2.2）＝0.40017）の値という結果になる。
【００１４】
次のステップは、各高ビット深度の強度値の左側および右側境界間隔を生成することである。左側および右側境界間隔は、現在の非線形強度値に最も近い２つの、より低いビット深度の非線形強度値を表す。式２と式３を用いて、左側および右側境界間隔がそれぞれ計算される。即ち、
左側（Left）＝（（integerValue（IntensityVal×MaxIV）／MaxIV）    式２
右側（Right）＝（（（integerValue（IntensityVal×MaxIV）＋1）／MaxIV）  式３。
【００１５】
ここで、IntensityValは、非線形空間における正規化高ビット深度の強度値であり、MaxIVは、最大の低ビット深度の強度値であり、integerValueは、任意の小数値を切り捨てる関数（即ち、それは、浮動小数点値を整数値に変換する）である。これらの式を理解するために、各部分が説明される。
【００１６】
式１の最初のステップ｛integerValue（IntensityVal×MaxIV）｝は、正規化高ビット深度の強度値を取り、それに最大の量子化低ビット深度の強度値を掛け合わせる。その結果は浮動小数点値から整数へ変換される。これは、正規化高ビット深度の強度値を、より低いビット深度の強度値に変換する。式１の２番目のステップは、最大の低ビット深度の強度値で除算することにより、当該より低いビット深度の値を０と１との間に正規化する。４ビット強度値が６である場合の非線形空間における左側境界間隔の値の計算は、以下に示される。即ち、
左側（Left）＝（（integerValue（0.65935×3））／3）
左側（Left）＝（（integerValue（1.97805））／3）
左側（Left）＝（1／3）
左側（Left）＝0.33333。
【００１７】
次のステップは、左側および右側非線形値を線形空間に変換することである。線形空間と非線形空間との間のマッピングがガンマ補正を用いて行われる場合、線形値は、非線形値をガンマ値でべき乗することにより計算される。図５ｂは、本発明の例示的な実施形態において、非線形空間および線形空間におけるより低いビット深度の画像の強度値を示す表である。図５ｂの最初の列は、非線形空間におけるより低いビット深度の画像の強度値を列挙する。図５ｂの２番目の列は、線形空間におけるより低いビット深度の画像の強度値を列挙する。
【００１８】
次のステップにおいて、ディザーパターンが、線形空間の元の画像のピクセル上に重ね合わされる。このアプリケーションに関して、ディザーパターンは、閾値強度値、他のピクセルに対する伝搬誤差のパターンを有する単一の閾値強度値、又はノイズ付加のパターンを有する単一の閾値などのマトリクスとすることができる。この例に関して、ディザーパターンが図６に示される。誤差拡散またはランダムノイズ注入を含む、任意のタイプのディザーパターンが使用され得る。また、ディザーパターンのサイズは、変化してもよい。図６に示されたディザーパターンは、４×４のベイヤー型（Bayer）ディザーパターンである。ディザーパターンが元の画像の強度値上に重ね合わされる前に、ディザーパターンの強度値が０と１との間の値に正規化される。
【００１９】
次のステップにおいて、各ピクセルにおける強度値が、元の線形強度値、線形空間における左側および右側隔たり境界値、及びそのピクセル位置におけるディザースクリーンの値に基づいて、線形空間における２つの最も近い左側および右側隔たり境界の一方にされる。適正な左側または右側隔たり境界が、式４と式５を用いて選択される。即ち、
CompVal＝IntensityN−left＞DitherN×（right−left）    式４
SelectedVal＝CompVal×right＋（1−CompVal）×left    式５。
【００２０】
ここで、IntensityNは、０と１との間に正規化された現在のピクセルに関する元の高ビット深度の線形強度値であり、left及びrightは、現在の強度値に関する線形空間における左側および右側境界の間隔であり、Ditherは現在のピクセルに関する正規化されたディザー値である。CompValは、式が真でない場合に０に設定され、式が真である場合に１に設定される。SelectedValは、CompValが１である場合にrightの値に等しく、CompValが０である場合にleftの値に等しい。
【００２１】
図７は、本発明の例示的な実施形態における画像の小さい部分である。図８は、本発明の例示的な実施形態において、図６のディザーパターンを図７の小さい画像上へ重ね合わせることの結果を列挙する表である。図８の最初の列は、画像のピクセル位置を列挙する。２番目の列は、各ピクセル位置に対する画像の正規化強度値を列挙する。３番目と４番目の列はそれぞれ、各ピクセル位置に対する、線形空間における左側および右側境界間隔を列挙する。５番目の列は、各ピクセル位置に対する正規化ディザーパターンの値を列挙する。６番目の列は、各ピクセル位置に対する計算されたCompValを列挙する。最後の列は、各ピクセル位置に対するSelectedValを列挙する。
【００２２】
式４と式５を用いて、図８の最後の２つの列を計算する。ピクセル２，０に関するCompValとSelectedValの計算が以下に示される。即ち、
CompVal＝IntensityN−left＞DitherN×（right−left）
CompVal＝0.20000−0.08919＞0.13333×（0.409826−0.08919）
CompVal＝0.11081＞0.13333×0.32064
CompVal＝0.11081＞0.04275は、真であり従って、CompValは１に設定される
SelectedVal＝CompVal×right＋（1−CompVal）×left
SelectedVal＝1×right＋（1−1）×left
SelectedVal＝1×0.409826＋（1−1）×0.08919
SelectedVal＝0.409826。
【００２３】
最後のステップは、線形空間からの選択された値を非線形空間にマッピングすることである。これは、ルックアップテーブルを用いて行われ得る。図５ｂのルックアップテーブルがこの例のために使用される。図９は上記の例からの最終画像である。
【００２４】
ひとたび選択された強度値が、より低いビット深度の非線形空間へマッピングされたならば、画像はコンピュータ可読媒体に保存または格納され得る。コンピュータ可読媒体は、以下のもの、即ちランダムアクセスメモリ、読み出し専用メモリ、ハードドライブ、テープ、光ディスクドライブ、不揮発性ＲＡＭ、及びビデオＲＡＭなどからなることができる。画像は多くの態様で使用されることができ、例えば１つ又は複数のディスプレイで表示され、又は他の記憶装置に転送されるなどされ得る。
【００２５】
上述された方法は、コンピュータシステムで実行され得る。図１０は、本発明の例示的な実施形態におけるコンピュータシステム１０００のブロック図である。コンピュータシステムは、プロセッサ１００２、メモリ装置１００４、記憶装置１００６、ディスプレイ１００８、及びＩ／Ｏ装置１０１０を有する。プロセッサ１００２、メモリ装置１００４、記憶装置１００６、ディスプレイ装置１００８、及びＩ／Ｏ装置１０１０は互いにバス１０１２でもって結合される。プロセッサ１００２は、上述された方法を実施するコンピュータ命令を実行するように構成される。
【図１】
2013500677.tif 000003
【図２】
2013500677.tif 000004
【図３】
2013500677.tif 000005
【図４】
2013500677.tif 000006
【図５ａ】
2013500677.tif 000007
【図５ｂ】
2013500677.tif 000008
【図６】
2013500677.tif 000009
【図７】
2013500677.tif 000010
【図８】
2013500677.tif 000011
【図９】
2013500677.tif 000012
【図１０】
2013500677.tif 000013
【国際調査報告】
2013500677.tif 000014
2013500677.tif 000015
2013500677.tif 000016