(57)【要約】  最小露出パラメータ値を用いてピクセルの初期露出値を計算し、以前に計算された露出値及び定数から更なる露出値を計算することによって、ＨＤＲビデオフレーム（１０）のための評価尺度が計算される。露出値は、ＬＤＲ値に変換され、誤差を計算するのに用いられる。次に、ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値について、誤差に基づいて評価尺度が計算される。【選択図】図１
2017500792.tif 000002
【特許請求の範囲】
【請求項１】
ハイダイナミックレンジ（ＨＤＲ）ビデオフレーム（１０）のための評価尺度を決定するための方法であって、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、
最小露出パラメータ値を用いて前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの初期露出値を計算すること（Ｓ１）と、
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）のバージョン（２０）における対応するピクセルの初期露出値を計算すること（Ｓ２）と、
前記最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、
前記露出パラメータ値について、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの以前に計算された露出値に定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの露出値を計算するステップ（Ｓ３）、
前記露出パラメータ値について、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの以前に計算された露出値に前記定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの露出値を計算するステップ（Ｓ４）、
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルのローダイナミックレンジ（ＬＤＲ）値に変換するステップ（Ｓ５）、
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルのＬＤＲ値に変換するステップ（Ｓ６）、及び
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記ＬＤＲ値と、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記ＬＤＲ値との差を表す誤差を計算するステップ（Ｓ７）を実行することと、
を実行することと、
前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値について、前記誤差に基づいて前記評価尺度を計算すること（Ｓ８）と、
を含む、方法。
【請求項２】
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を変換すること（Ｓ５）は、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、０．５の加算及びキャスティング演算を用いて前記ＬＤＲ値に変換することを含む、請求項１に記載の方法。
【請求項３】
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を変換すること（Ｓ６）は、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）において、前記対応するピクセルの前記露出値を、０．５の加算、ｍｉｎ関数及びキャスティング演算を用いて前記ＬＤＲ値に変換すること（Ｓ６）を含む、請求項１又は２に記載の方法。
【請求項４】
前記ＨＤＲビデオフレーム（１０）内の各ピクセルは、赤色成分、青色成分及び緑色成分を含み、前記方法は、
ｃｅｉｌ（γ×ｌｏｇ（０．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて前記最小露出パラメータ値を計算すること（Ｓ１１）であって、ここで、ｃｅｉｌ（ｘ）は、ｘを切り上げ、γはディスプレイガンマを表し、ｃｏｌＭａｘは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記赤色成分、前記緑色成分及び前記青色成分のうちの最も大きな色成分値を表すことと、
ｆｌｏｏｒ（γ×ｌｏｇ（２５４．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて前記最大露出パラメータ値を計算すること（Ｓ１２）であって、ここで、ｆｌｏｏｒ（ｘ）は、ｘを切り下げることと、
を更に含む、請求項１ないし３のいずれか一項に記載の方法。
【請求項５】
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記初期露出値を計算すること（Ｓ１）は、
rOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rOrig))
gOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gOrig))
bOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bOrig))
を計算すること（Ｓ１）を含み、ここで、ｒＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの赤色成分の露出値を表し、ｇＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの緑色成分の露出値を表し、ｂＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの青色成分の露出値を表し、ｔｗｏＴｏＣ＝ｅｘｐ（（ｃＭｉｎ−１）×ｌｏｇ（２．０））であり、ｃＭｉｎは前記最小露出パラメータ値を表し、ｒＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記赤色成分を表し、ｇＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記緑色成分を表し、ｂＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記青色成分を表し、
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記初期露出値を計算すること（Ｓ２）は、
rCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rCopy))
gCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gCopy))
bCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bCopy))
を計算すること（Ｓ２）を含み、ここで、ｒＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの赤色成分の露出値を表し、ｇＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの緑色成分の露出値を表し、ｂＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの青色成分の露出値を表し、ｒＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記赤色成分を表し、ｇＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記緑色成分を表し、ｂＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記青色成分を表す、請求項４に記載の方法。
【請求項６】
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を計算すること（Ｓ３）は、前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、
rOrigProcessed×=factor
gOrigProcessed×=factor
bOrigProcessed×=factor
を計算すること（Ｓ３）を含み、ここで、ｆａｃｔｏｒ＝ｅｘｐ（（１．０／γ）×ｌｏｇ（２．０））であり、
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を計算すること（Ｓ４）は、前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、
rCopyProcessed×=factor
gCopyProcessed×=factor
bCopyProcessed×=factor
を計算すること（Ｓ４）を含む、請求項５に記載の方法。
【請求項７】
前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を変換すること（Ｓ５）は、
LDRorigR=(int)(rOrigProcessed+0.5)
LDRorigG=(int)(gOrigProcessed+0.5)
LDRorigB=(int)(bOrigProcessed+0.5)
を計算すること（Ｓ５）を含み、ここで、ＬＤＲｏｒｉｇＲは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＧは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＢは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの青色成分のＬＤＲ値を表し、（ｉｎｔ）はキャスティング演算を表し、
前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を変換すること（Ｓ６）は、
LDRcopyR=(int)dMin(rCopyProcessed+0.5,255.5)
LDRcopyG=(int)dMin(gCopyProcessed+0.5,255.5)
LDRcopyB=(int)dMin(bCopyProcessed+0.5,255.5)
を計算すること（Ｓ６）を含み、ここで、ＬＤＲｃｏｐｙＲは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＧは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＢは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの青色成分のＬＤＲ値を表し、ｄＭｉｎ（ｘ，ｙ）は、（ｘ＞ｙ）の場合、ｙを返し、そうでない場合、ｘを返すように実装されるｍｉｎ関数を表す、請求項６に記載の方法。
【請求項８】
前記誤差を計算すること（Ｓ７）は、前記誤差を、
(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyB)
として計算すること（Ｓ７）を含む、請求項７に記載の方法。
【請求項９】
前記誤差を計算すること（Ｓ７）は、前記誤差を、
wR×(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+wG×(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+wB×(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyB)
として計算すること（Ｓ７）を含み、ｗＲ、ｗＧ、ｗＢは重みである、請求項７に記載の方法。
【請求項１０】
前記評価尺度を計算すること（Ｓ８）は、
平均二乗誤差を、前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値のための平均誤差として計算すること（Ｓ１３）と、
前記平均二乗誤差に基づいて前記評価尺度を計算すること（Ｓ１４）と、
を含む、請求項１ないし９のいずれか一項に記載の方法。
【請求項１１】
前記評価尺度を計算すること（Ｓ１４）は、前記評価尺度を、前記平均二乗誤差のピーク信号対雑音比として、
10×log((255×255)/MSE)/log(10)
として計算すること（Ｓ１４）を含み、ＭＳＥは前記平均二乗誤差を表す、請求項１０に記載の方法。
【請求項１２】
ハイダイナミックレンジ（ＨＤＲ）ビデオフレーム（１０）を符号化する方法であって、前記方法は、
前記ＨＤＲビデオフレーム（１０）の少なくとも一部分の複数の圧縮されたバージョンを取得するために、複数の圧縮モードに従って前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分を圧縮すること（Ｓ２０）と、
前記複数の圧縮モードの圧縮モードごとに、請求項１〜１１のいずれか一項に従って前記ＨＤＲビデオフレーム（１０）のそれぞれの評価尺度を決定すること（Ｓ２１）と、
複数の評価尺度に基づいて、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の圧縮されたバージョンを、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の符号化された表現として選択すること（Ｓ２２）と、
を含む、方法。
【請求項１３】
ハイダイナミックレンジ（ＨＤＲ）ビデオフレーム（１０）の評価尺度を決定するためのエンコーダ（１００、１１０、１２０）であって、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、最小露出パラメータ値を用いて前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの初期露出値を計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）のバージョン（２０）における対応するピクセルの初期露出値を計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの以前に計算された露出値に定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの露出値を計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの以前に計算された露出値に前記定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの露出値を計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルのローダイナミックレンジ（ＬＤＲ）値に変換するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルのＬＤＲ値に変換するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記ＬＤＲ値と、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記ＬＤＲ値との差を表す誤差を計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値について、前記誤差に基づいて前記評価尺度を計算するように設定される、エンコーダ。
【請求項１４】
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、０．５の加算及びキャスティング演算を用いて前記ＬＤＲ値に変換するように設定される、請求項１３に記載のエンコーダ。
【請求項１５】
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）において、前記対応するピクセルの前記露出値を、０．５の加算、ｍｉｎ関数及びキャスティング演算を用いて前記ＬＤＲ値に変換するように設定される、請求項１３又は１４に記載のエンコーダ。
【請求項１６】
前記ＨＤＲビデオフレーム（１０）内の各ピクセルは、赤色成分、青色成分及び緑色成分を含み、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、ｃｅｉｌ（γ×ｌｏｇ（０．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて前記最小露出パラメータ値を計算するように設定され、ここで、ｃｅｉｌ（ｘ）は、ｘを切り上げ、γはディスプレイガンマを表し、ｃｏｌＭａｘは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記赤色成分、前記緑色成分及び前記青色成分のうちの最も大きな色成分値を表し、
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、ｆｌｏｏｒ（γ×ｌｏｇ（２５４．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて前記最大露出パラメータ値を計算するように設定され、ここで、ｆｌｏｏｒ（ｘ）は、ｘを切り下げる、請求項１３ないし１５のいずれか一項に記載のエンコーダ。
【請求項１７】
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、
rOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rOrig))
gOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gOrig))
bOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bOrig))
rCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rCopy))
gCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gCopy))
bCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bCopy))
を計算するように設定され、ここで、ｒＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの赤色成分の露出値を表し、ｇＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの緑色成分の露出値を表し、ｂＯｒｉｇＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの青色成分の露出値を表し、ｔｗｏＴｏＣ＝ｅｘｐ（（ｃＭｉｎ−１）×ｌｏｇ（２．０））であり、ｃＭｉｎは前記最小露出パラメータ値を表し、ｒＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記赤色成分を表し、ｇＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記緑色成分を表し、ｂＯｒｉｇは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記青色成分を表し、ｒＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの赤色成分の露出値を表し、ｇＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの緑色成分の露出値を表し、ｂＣｏｐｙＰｒｏｃｅｓｓｅｄは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの青色成分の露出値を表し、ｒＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記赤色成分を表し、ｇＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記緑色成分を表し、ｂＣｏｐｙは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記青色成分を表す、請求項１６に記載のエンコーダ。
【請求項１８】
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、
rOrigProcessed×=factor
gOrigProcessed×=factor
bOrigProcessed×=factor
rCopyProcessed×=factor
gCopyProcessed×=factor
bCopyProcessed×=factor
を計算するように設定され、ｆａｃｔｏｒ＝ｅｘｐ（（１．０／γ）×ｌｏｇ（２．０））である、請求項１７に記載のエンコーダ。
【請求項１９】
前記エンコーダ（１００、１１０、１２０）は、前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、
LDRorigR=(int)(rOrigProcessed+0.5)
LDRorigG=(int)(gOrigProcessed+0.5)
LDRorigB=(int)(bOrigProcessed+0.5)
LDRcopyR=(int)dMin(rCopyProcessed+0.5,255.5)
LDRcopyG=(int)dMin(gCopyProcessed+0.5,255.5)
LDRcopyB=(int)dMin(bCopyProcessed+0.5,255.5)
を計算するように設定され、ここで、ＬＤＲｏｒｉｇＲは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＧは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＢは前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの青色成分のＬＤＲ値を表し、（ｉｎｔ）はキャスティング演算を表し、ＬＤＲｃｏｐｙＲは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＧは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＢは、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの青色成分のＬＤＲ値を表し、ｄＭｉｎ（ｘ，ｙ）は、（ｘ＞ｙ）の場合、ｙを返し、そうでない場合、ｘを返すように実装されるｍｉｎ関数を表す、請求項１８に記載のエンコーダ。
【請求項２０】
前記エンコーダ（１００、１１０、１２０）は、前記誤差を、
(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyB)
として計算するように設定される、請求項１９に記載のエンコーダ。
【請求項２１】
前記エンコーダ（１００、１１０、１２０）は、前記誤差を、
wR×(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+wG×(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+wB×(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyb)
として計算するように設定され、ｗＲ，ｗＧ，ｗＢは重みである、請求項１９に記載のエンコーダ。
【請求項２２】
前記エンコーダ（１００、１１０、１２０）は、平均二乗誤差を、前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値についての平均誤差として計算するように設定され、
前記エンコーダ（１００、１１０、１２０）は、前記平均二乗誤差に基づいて前記評価尺度を計算するように設定される、請求項１３ないし２１のいずれか一項に記載のエンコーダ。
【請求項２３】
前記エンコーダ（１００、１１０、１２０）は、前記評価尺度を、前記平均二乗誤差のピーク信号対雑音比として、
10×log((255×255)/MSE)/log(10)
として計算するように設定され、ＭＳＥは前記平均二乗誤差を表す、請求項２２に記載のエンコーダ。
【請求項２４】
プロセッサ（１１１）と、
前記プロセッサ（１１１）によって実行可能な命令を含むメモリ（１１２）と、
を備え、前記プロセッサ（１１１）は、
前記初期露出値を計算し、
前記露出値を計算し、
前記露出値を前記ＬＤＲ値に変換し、
前記誤差を計算し、
前記評価尺度を計算する、
ように動作可能である、請求項１３ないし２３のいずれか一項に記載のエンコーダ。
【請求項２５】
ハイダイナミックレンジ（ＨＤＲ）ビデオフレーム（１０）のための評価尺度を決定するためのエンコーダ（１３０）であって、前記エンコーダ（１３０）は、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、ｉ）最小露出パラメータ値を用いて前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの初期露出値を計算し、ｉｉ）前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）のバージョン（２０）における対応するピクセルの初期露出値を計算するための初期露出値計算機（１３１）と、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また、前記最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ｉ）前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの以前に計算された露出値に定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの露出値を計算し、ｉｉ）前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの以前に計算された露出値に前記定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの露出値を計算するための露出値計算機（１３２）と、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また、前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、ｉ）前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルのローダイナミックレンジ（ＬＤＲ）値に変換し、ｉｉ）前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルのＬＤＲ値に変換するための露出値変換器（１３３）と、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また、前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記ＬＤＲ値と、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記ＬＤＲ値との差を表す誤差を計算するための誤差計算機（１３４）と、
前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値について、前記誤差に基づいて前記評価尺度を計算するための評価尺度計算機（１３５）と、
を備える、エンコーダ。
【請求項２６】
ハイダイナミックレンジ（ＨＤＲ）ビデオフレーム符号化デバイス（１４０）であって、
請求項１３〜２５のいずれか一項に記載のエンコーダ（１００、１１０、１２０、１３０）であって、前記ＨＤＲビデオフレーム（１０）の少なくとも一部分の複数の圧縮されたバージョンを取得するために、複数の圧縮モードに従って前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分を圧縮し、前記複数の圧縮モードの圧縮モードごとに、前記ＨＤＲビデオフレーム（１０）のそれぞれの評価尺度を決定するように設定される、エンコーダと、
前記複数の評価尺度に基づいて、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の圧縮されたバージョンを、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の符号化された表現として選択するように設定される選択器（１４１）と、
を備える、ＨＤＲビデオフレーム符号化デバイス。
【請求項２７】
前記選択器（１４１）は、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の前記符号化された表現として、前記ＨＤＲビデオフレーム（１０）の前記少なくとも一部分の前記複数の圧縮されたバージョンの中から、最高の評価尺度を有する前記ＨＤＲビデオフレーム（１０）の圧縮されたバージョンを選択するように設定される、請求項２６に記載のＨＤＲビデオフレーム符号化デバイス。
【請求項２８】
命令を含むコンピュータプログラム（２４０）であって、前記命令は、プロセッサ（２１０）によって実行されると、前記プロセッサ（２１０）に、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、最小露出パラメータ値を用いて前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの初期露出値を計算させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）のバージョン（２０）における対応するピクセルの初期露出値を計算させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの以前に計算された露出値に定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの露出値を計算させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの以前に計算された露出値に定数を乗算したものから、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの露出値を計算させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルのローダイナミックレンジ（ＬＤＲ）値に変換させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記露出値を、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルのＬＤＲ値に変換させ、
前記ＨＤＲビデオフレーム（１０）内のピクセルごとに、また前記最小露出パラメータ値から開始して前記最大露出パラメータ値までの露出パラメータ値ごとに、前記ＨＤＲビデオフレーム（１０）内の前記ピクセルの前記ＬＤＲ値と、前記ＨＤＲビデオフレーム（１０）の圧縮に続いて取得される前記ＨＤＲビデオフレーム（１０）の前記バージョン（２０）における前記対応するピクセルの前記ＬＤＲ値との差を表す誤差を計算させ、
前記ＨＤＲビデオフレーム（１０）内の全てのピクセル及び全ての露出パラメータ値について、前記誤差に基づいて前記評価尺度を計算させる、コンピュータプログラム。
【請求項２９】
請求項２８に記載のコンピュータプログラム（２４０）を備えるキャリア（２５０）であって、前記キャリア（２５０）は、電子信号、光信号、電磁信号、磁気信号、電気信号、無線信号、マイクロ波信号又はコンピュータ可読ストレージ媒体のうちの１つである、キャリア。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、包括的には、ハイダイナミックレンジ（ＨＤＲ）ビデオフレームのための評価尺度に関し、特に、ＨＤＲビデオフレーム及びビデオの符号化及び圧縮に関連して用いることができるような評価尺度に関する。
【背景技術】
【０００２】
標準ダイナミックレンジ（ＳＤＲ）ビデオとしても知られる、通常のローダイナミックレンジ（ＬＤＲ）ビデオの分野において、ピーク信号対雑音比（ＰＳＮＲ）が、損失の多い圧縮コーデックの再構成の品質を表す客観的評価尺度として長い間用いられてきた。完全な尺度ではないが、ＰＳＮＲはＳＤＲビデオについて十分その目的を果たしてきた。
【０００３】
ハイダイナミックレンジ／広色域（ＨＤＲ／ＷＧＣ）における動画エキスパートグループ（ＭＰＥＧ）アドホックグループにおいて、調査のうちの１つは、ＨＤＲビデオのための客観的評価尺度を得ることを目指している。理由は、ＰＳＮＲが、ＨＤＲビデオの場合に、ＬＤＲビデオの場合よりも機能がはるかに不良であるためである。したがって、ＨＤＲビデオのために適合された代替的な評価尺度が提案されてきた。
【０００４】
ＨＤＲビデオは、ＬＤＲビデオで可能であるよりも大きなダイナミックレンジの明度を生じる。ＨＤＲビデオの特徴は、人間の眼に、視覚系を通じて日常生活において馴染みの深い輝度範囲に類似した輝度範囲を提示することである。
【０００５】
ＨＤＲビデオの２つの主要なタイプは、複数のＬＤＲカメラ又はＳＤＲカメラを統合した結果得られるコンピュータレンダリング及びビデオである。ＨＤＲビデオは、オーバーサンプリング式バイナリ画像センサのような特殊な画像センサを用いて入手することもできる。ＬＤＲビデオは通常、赤、緑、青（ＲＧＢ）色空間を用いるとき、色成分又はチャネルあたり８ビット、すなわち２４ビットパーピクセル（ｂｐｐ）によって表される。ＨＤＲビデオは、これに応じて、色成分あたり１６ビット浮動小数点数を用いて表すことができ、結果として、ＲＧＢ色空間を用いるとき、４８ｂｐｐとなる。
【０００６】
静止ＨＤＲ画像に対しては、評価尺度としてマルチ露出ＰＳＮＲ（ｍＰＳＮＲ）が提案されている［１］。しかしながら、この評価尺度は、シャッター速度値が手動で選択されるので、ＨＤＲビデオには適用可能でない。
【０００７】
このため、評価尺度の分野における改善、特に、ＨＤＲビデオのために用いられるそのような評価尺度が依然として必要とされている。
【発明の概要】
【０００８】
包括的な目標は、ＨＤＲビデオフレームに適した評価尺度を提供することである。
【０００９】
詳細な目標は、そのような評価尺度を決定するための改善されたかつ／又は高速な解決策を提供することである。
【００１０】
これらの目標及び他の目標は、本明細書に開示されるような実施形態によって達成される。
【００１１】
実施形態の一態様は、ハイダイナミックレンジ（ＨＤＲ）ビデオフレームのための評価尺度を決定する方法に関する。本方法は、ＨＤＲビデオフレーム内のピクセルごとに、最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算することを含む。本方法はまた、ＨＤＲビデオフレーム内のピクセルごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算することを含む。本方法は、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算することを更に含む。本方法は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算することを更に含む。本方法は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのローダイナミックレンジ（ＬＤＲ）値に変換することを更に含む。また、本方法は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換することを含む。本方法は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算することを更に含む。本方法は、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出値について、誤差に基づいて評価尺度を計算することを更に含む。
【００１２】
実施形態の別の態様は、ＨＤＲビデオフレームの評価尺度を決定するためのエンコーダに関する。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算するように設定される。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算するように設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算するように更に設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算するように更に設定される。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値に変換するように設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換するように更に設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算するように更に設定される。また、エンコーダは、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算するように設定される。
【００１３】
実施形態の関連する態様が、ＨＤＲビデオフレームのための評価尺度を決定するためのエンコーダを定義する。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、ｉ）最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算するための初期露出値計算機を備える。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ｉ）ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算するための露出値計算機を備える。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また、露出パラメータ値ごとに、ｉ）ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値に変換し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換するための露出値変換器を更に備える。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また、露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算するための誤差計算機を更に備える。また、エンコーダは、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算するための評価尺度計算機を備える。
【００１４】
実施形態の更なる態様は、命令を含むコンピュータプログラムに関する。これらの命令は、プロセッサによって実行されると、プロセッサに、ＨＤＲビデオフレーム内のピクセルごとに、最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算させる。また、プロセッサは、ＨＤＲビデオフレーム内のピクセルごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算させられる。プロセッサは更に、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算させられる。プロセッサは更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算させられる。また、プロセッサは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのローダイナミックレンジ（ＬＤＲ）値に変換させられる。プロセッサは更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換させられる。プロセッサは更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算させられる。また、プロセッサは、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算させられる。
【００１５】
実施形態の関連する態様は、上記で定義したコンピュータプログラムを備えるキャリアを定義する。キャリアは、電子信号、光信号、電磁信号、磁気信号、電気信号、無線信号、マイクロ波信号又はコンピュータ可読ストレージ媒体のうちの１つである。
【００１６】
本実施形態は、ＨＤＲビデオフレームのために適合された評価尺度を提供する。この評価尺度は、改善された高速な実施により計算することができる。したがって、評価尺度はＨＤＲビデオの符号化及び圧縮中に用いることができる。
【００１７】
実施形態は、その更なる目標及び利点と共に、添付の図面と併せて以下の説明を参照することによって最も良好に理解することができる。
【図面の簡単な説明】
【００１８】
【図１】一実施形態による、評価尺度を決定するための方法を示すフローチャートである。
【図２】元のＨＤＲビデオフレーム及びＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョン（再構成されたＨＤＲビデオフレーム）のＬＤＲバージョンの作成を概略的に示す。
【図３】図１に示す方法の追加のオプションのステップを示すフローチャートである。
【図４】一実施形態による、様々な露出パラメータ値の誤差重みの分布を示す図である。
【図５】図１における評価尺度の計算の一実施形態を示すフローチャートである。
【図６】一実施形態による、ＨＤＲビデオフレームを符号化する方法を示すフローチャートである。
【図７】一実施形態によるエンコーダの概略ブロック図である。
【図８】別の実施形態によるエンコーダの概略ブロック図である。
【図９】更なる実施形態によるエンコーダの概略ブロック図である。
【図１０】一実施形態によるユーザ機器の概略ブロック図である。
【図１１】更に別の実施形態によるエンコーダの概略ブロック図である。
【図１２】一実施形態によるＨＤＲビデオフレーム符号化デバイスの概略ブロック図である。
【図１３】実施形態のクラウドベースの実施態様の概略ブロック図である。
【発明を実施するための形態】
【００１９】
図面全体を通じて、同じ参照符号は、類似した要素又は対応する要素のために用いられる。
【００２０】
本実施形態は、包括的にはＨＤＲビデオのための評価尺度に関し、特に、ＨＤＲビデオの符号化及び圧縮に関連して用いることができるような評価尺度に関する。
【００２１】
したがって、実施形態の評価尺度は、例えば、様々な符号化モード又は圧縮モードを互いに比較し、これによって、当該技術分野においてＨＤＲのビデオ画像若しくはＨＤＲビデオピクチャとも呼ばれるＨＤＲビデオフレーム、又はＨＤＲビデオフレームの少なくとも一部分を圧縮するのに最も適した符号化モード又は圧縮モードを選択するために、符号化及び圧縮に関連して用いることができる。したがって、実施形態の評価尺度によって表されるような、最良の結果をもたらす符号化モード又は圧縮モードは、ＨＤＲビデオフレーム又は少なくともその一部分を符号化又は圧縮するときに用いられるように選択される。
【００２２】
本明細書に記載されるように評価尺度が決定されるＨＤＲビデオフレームは、好ましくはＨＤＲビデオのフレーム、画像又はピクチャである。ＨＤＲビデオは通常、ＬＤＲ又はＳＤＲビデオの場合に可能であるよりも大きなダイナミックレンジの明度を有する。目的は、人間の眼に、視覚系を通じて日常生活において馴染みのある輝度範囲により類似した輝度範囲を提示することである。人間の眼は、環境内に偏在する広い動的変化に対し絶えず調整を行う。脳は、この情報を継続的に解釈し、これによってほとんどの人が広範にわたる光条件で見ることができる。
【００２３】
ＨＤＲビデオの２つの主要なタイプは、複数のＬＤＲカメラ又はＳＤＲカメラを統合した結果得られるコンピュータレンダリング及びビデオである。ＨＤＲビデオは、オーバーサンプリング式バイナリ画像センサのような特殊な画像センサを用いて入手することもできる。
【００２４】
グラフィック内で、ＬＤＲビデオ又はＳＤＲビデオは通常、赤、緑、青（ＲＧＢ）色空間を用いるとき、色成分あたり８ビット、すなわち２４ビットパーピクセル（ｂｐｐ）によって表される。これに応じて、ＨＤＲビデオは、色成分あたり１６ビット浮動小数点数を用いて表すことができ、結果として、ＲＧＢ色空間を用いるとき、４８ｂｐｐとなる。
【００２５】
ＨＤＲビデオ内の個々のＨＤＲビデオフレームについて適切な符号化モード又は圧縮モードを選択するために、ＨＤＲビデオの符号化に関連して評価尺度を用いることができる。
【００２６】
図１は、ハイダイナミックレンジ（ＨＤＲ）ビデオフレームのための評価尺度を決定するための方法を示すフローチャートである。本方法は、符号化又は圧縮されることになるＨＤＲビデオフレーム内又はＨＤＲビデオフレームの少なくとも一部分におけるピクセルごとにステップＳ１〜Ｓ７を実行することを含む。これについては図１の線Ｌ１によって概略的に表されている。ステップＳ１は、最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算することを含む。ステップＳ２は、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算することを含む。ステップＳ１及びステップＳ２は、任意の順序で又は少なくとも部分的に並列に行うことができる。後続のステップＳ３〜Ｓ６は、最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに実行される。これについては図１の線Ｌ２によって概略的に示されている。ステップＳ３は、露出パラメータ値について、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算することを含む。ステップＳ４は、露出パラメータ値について、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算することを含む。ステップＳ５は、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのローダイナミックレンジ（ＬＤＲ）値に変換することを含む。ステップＳ６は、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換することを含む。ステップＳ３〜Ｓ６は、ステップＳ５がステップＳ３の後に実行され、ステップＳ６がステップＳ４の後に実行されている限り、任意の順序で又は少なくとも部分的に並列に実行することができる。後続のステップＳ７は、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算することを含む。次のステップＳ８は、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出値について、誤差に基づいて評価尺度を計算することを含む。
【００２７】
図２は、元のＨＤＲビデオフレーム１０と、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０との間の関係を概略的に示す。このため、元のＨＤＲビデオフレーム１０は、圧縮モード又は符号化モードに従って圧縮又は符号化され、圧縮されたＨＤＲビデオフレーム又は符号化されたＨＤＲビデオフレームが得られる。次に、圧縮された又は符号化されたＨＤＲビデオフレームは、本明細書において再構成されたＨＤＲビデオフレーム２０とも呼ばれるＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０を取得するために、解凍又は復号される。
【００２８】
通常、圧縮又は符号化プロセスは損失を伴い、圧縮又は符号化されたＨＤＲビデオフレームが、元のＨＤＲビデオフレーム１０のフレームコンテンツ、すなわち、ピクセル又はサンプル値を表すための不正確な近似であることを暗に意味する。したがって、圧縮又は符号化されたＨＤＲビデオフレームの解凍又は復号によって取得される再構成されたＨＤＲビデオフレーム２０は、圧縮−解凍／符号化−復号手順を通じて処理された元のＨＤＲビデオフレーム１０のバージョン又は表現である。異なる圧縮モード及び符号化モードの結果として、解凍又は復号後、異なる圧縮ＨＤＲビデオフレーム及び異なる再構成されたＨＤＲビデオフレーム２０が得られる。したがって、評価尺度は、「最良の」圧縮モード又は符号化モード、したがって、元のＨＤＲビデオフレーム１０のための「最良の」圧縮又は符号化されたＨＤＲビデオフレームを選択するために用いることができる。
【００２９】
図２に示すように、図１のステップＳ５及びＳ６において、複数のＬＤＲバージョン又はいわゆるトーンマッピングされたバージョン１１、２１が、元のＨＤＲビデオフレーム１０と、再構成されたＨＤＲビデオフレーム２０との双方について作成される。これは、所与の元のＨＤＲビデオフレーム１０について、元のＨＤＲビデオフレーム１０の複数のＬＤＲバージョン１１が得られることを意味する。これに対応して、再構成されたＨＤＲビデオフレーム２０について、再構成されたＨＤＲビデオフレーム２０の複数のＬＤＲバージョン２１が取得される。それぞれのそのようなＬＤＲバージョン１１、２１は、最小露出パラメータ値から最大露出パラメータ値にまで及ぶ露出パラメータ値ごとに生成される。したがって、最小露出パラメータ値から最大露出パラメータ値までの露出パラメータ値の範囲又は組がＮ≧２個の露出パラメータ値からなる場合、ステップＳ５及びＳ６において元のＨＤＲビデオフレーム１０のＮ個のＬＤＲバージョン１１及び再構成されたＨＤＲビデオフレーム２０のＮ個のＬＤＲバージョン２１が作成され、図１のステップＳ７においてＮ個の誤差が計算される。
【００３０】
ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルは、好ましくは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０内において、現在のピクセルがＨＤＲビデオフレーム１０において占めるのと同じピクセル位置を占める。このため、現在のピクセルがＨＤＲビデオフレーム１０内のピクセル位置（ｘ，ｙ）を占める場合、対応するピクセルは、再構成されたＨＤＲビデオフレーム２０、すなわち、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０におけるピクセル位置（ｘ，ｙ）を占める。
【００３１】
本実施形態は、ＨＤＲビデオ及びＨＤＲビデオフレームに適切でありかつこれらに適合された評価尺度の計算を大幅に単純化し、高速化する。これは、ステップＳ１及びＳ２において最小露出パラメータ値を用いて、ピクセル及び対応するピクセルの初期露出値を計算することによって可能である。次に、ピクセル及び対応するピクセルの露出値は、ピクセル及び対応するピクセルの以前に計算された露出値に定数を乗算したものの関数として、段階的に計算される。以前に計算された露出値とは、好ましくは、露出パラメータに対して直前の露出パラメータ値である。このため、ステップＳ３及びＳ４における段階的計算は、最小露出パラメータ値（ｃｍｉｎ）から最大露出パラメータ値（ｃｍａｘ）まで、露出パラメータ値の組又は範囲にわたって行われる。
【００３２】
一実施形態では、ステップＳ１及びＳ２における計算は、好ましくは、ｃｍｉｎ−１に等しい露出パラメータ値ｃを用いて実行される。これはひいては、ステップＳ３〜Ｓ７のループがｃ∈［ｃｍｉｎ，ｃｍａｘ］にわたって行われることを意味する。次に、好ましくは、所与の露出パラメータ値ｃについてステップＳ３において計算されるような、ＨＤＲビデオフレーム１０内のピクセル位置（ｘ，ｙ）におけるピクセルの露出パラメータ値が、ｃ∈［ｃｍｉｎ，ｃｍａｘ］について、Ｒｐｃ（ｘ，ｙ）＝Ｒｐｃ−１（ｘ，ｙ）×定数に基づいて計算される。
【００３３】
ピクセル及び対応するピクセルの露出値を計算するこの手順は、ＨＤＲビデオフレーム１０及び再構成されたＨＤＲビデオフレーム２０の複数のＬＤＲバージョン１１、２１を、トーンマッピング関数を用いて以下のように直接計算することと比較して、はるかに計算効率が良い：
RLDRC(x,y)=clamp(0,255,round(255*(2c*RHDR(x,y))(1/γ)))
GLDRC(x,y)=clamp(0,255,round(255*(2c*GHDR(x,y))(1/γ)))
BLDRC(x,y)=clamp(0,255,round(255*(2c*BHDR(x,y))(1/γ)))
ここで、三つ組（ＲＬＤＲＣ（ｘ，ｙ），ＧＬＤＲＣ（ｘ，ｙ），ＢＬＤＲＣ（ｘ，ｙ））は、露出パラメータ値ｃのためのＨＤＲビデオフレーム１０内のピクセル位置におけるピクセルのＬＤＲバージョンを表し、三つ組（ＲＨＤＲ（ｘ，ｙ），ＧＨＤＲ（ｘ，ｙ），ＢＨＤＲ（ｘ，ｙ））は、ピクセルの元のピクセル値、すなわち、ピクセルの元のＨＤＲ値を表す。
【００３４】
したがって、実施形態は、計算コストが高い冪関数と比較して、単一の乗算を用いて以前の露出値から露出値を計算することによる、計算的にはるかに効率的な露出値計算技法を提供する。
【００３５】
以下において、図１に示す方法ステップの様々な実施の実施形態をより詳細に説明する。
【００３６】
一実施形態において、図１のステップＳ５は、ＨＤＲビデオフレーム内のピクセルの露出値を、０．５の加算及びキャスティング演算を用いてＬＤＲ値に変換することを含む。
【００３７】
一実施形態において、図１のステップＳ６は、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおいて、対応するピクセルの露出値を、０．５の加算、ｍｉｎ関数及びキャスティング演算を用いてＬＤＲ値に変換することを含む。
【００３８】
当該技術分野においてキャスト演算、タイプ変換又は型強制とも呼ばれるキャスティング演算は、通常、１つのデータタイプのエンティティを別のデータタイプに変更することを伴う。そのようなキャスティング演算の例は、浮動小数点数を整数に変更すること、すなわち、数を、浮動小数点表現から整数表現に変更することである。
【００３９】
これは、ＬＤＲ値への露出値の変換を、計算効率の良い演算を用いて行うことができることを意味する。したがって、冪演算も対数演算も必要とされず、ＬＤＲ値を計算するのに用いられる上述したトーンマッピング関数と比較して、条件文の数が最小限になる。
【００４０】
このため、これらの実施形態では、ＬＤＲ値の計算は、ピクセル及び対応するピクセルについて２ステップで行われる。第１のステップにおいて、露出値が計算され、次に、これらが上記で開示したようにＬＤＲ値に変換される。そのような手法により、入力ＨＤＲ値からＬＤＲ値を計算するための単一の計算ステップを用いることと比較して、評価尺度の計算が大幅に高速化する。
【００４１】
一実施形態では、ＨＤＲビデオフレーム１０内の各ピクセルは、赤色成分、青色成分及び緑色成分を含む。このため、この実施形態では、ＨＤＲビデオフレーム１０内のピクセル、したがって、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０、すなわち再構成されたＨＤＲビデオフレーム２０におけるピクセルは、ＲＧＢ色の観点のそれぞれのピクセル値を有する。しかしながら、これは単に、実施形態の説明のための例とみなされるべきである。一般的に、ＨＤＲビデオフレーム１０内の各ピクセル及び再構成されたＨＤＲビデオフレーム２０における各対応するピクセルは、色の三つ組、すなわち３つの色成分の観点のピクセル値を含む。一般的な実施形態において、これらの色成分は、第１の色成分、第２の色成分及び第３の色成分として表され得る。色成分は、ＨＤＲビデオフレームの符号化及び復号中に従来から用いられている様々な色形式又は色空間において表すことができる。そのような色形式の、限定ではなく説明のための例は、赤、緑、青（ＲＧＢ）並びに輝度及びクロミナンス、すなわち、１つの輝度成分及び２つのクロミナンス成分を含む。以下において、ＲＧＢを色空間として用いて実施形態を更に説明及び例示する。しかしながら、実施形態は、ＲＧＢ色成分を、輝度成分及び２つのクロミナンス成分、例えば、輝度、クロミナンス青及びクロミナンス赤（ＹＣｂＣｒ）；輝度、クロミナンス緑及びクロミナンス橙（ＹＣｇＣｏ）、ＹＵＶ、Ｌａｂ、ＸＹＺ等の別の色空間に従う色成分と置き換えることも含む。
【００４２】
図３は、図１に示す方法の追加のオプションのステップを示すフローチャートである。ステップＳ１１は、ｃｅｉｌ（γ×ｌｏｇ（０．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて最小露出パラメータ値を計算することを含む。ｃｅｉｌ（ｘ）は、ｘを切り上げる演算であり、γはディスプレイガンマを表し、ｃｏｌＭａｘは、ＨＤＲビデオフレーム１０内のピクセルの赤色成分、緑色成分及び青色成分のうちの最も大きな色成分値を表す。ステップＳ１２は、ｆｌｏｏｒ（γ×ｌｏｇ（２５４．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて最大露出パラメータ値を計算することを含む。ｆｌｏｏｒ（ｘ）は、ｘを切り下げる演算である。ステップＳ１１及びＳ１２は、任意の順序で、又は少なくとも部分的に並列に実行することができる。
【００４３】
このため、ＨＤＲビデオフレーム内の現在のピクセルの最大色成分に基づいて、ステップＳ１１及びＳ１２において最小露出パラメータ値及び最大露出パラメータ値が計算される。このため、本方法の一実施形態では、図３に示すような追加のステップＳ１０を含む。このステップＳ１０は、ＨＤＲビデオフレーム１０内のピクセルの赤色成分、緑色成分及び青色成分の最大色成分を特定することを含む。次に、露出パラメータ範囲の端点、すなわち最小露出パラメータ値及び最大露出パラメータ値を計算するために、この最大色成分をステップＳ１１及びＳ１２において用いる。
【００４４】
ステップＳ１１及びＳ１２において用いられているディスプレイガンマγは、好ましくは２．２である。
【００４５】
ガンマは、ピクセルの数値と、その実際の輝度との間の関係を定義する。ガンマを用いない場合、輝度を整数、例えば０〜２５５として表すことは、Ｌ＝１００×ｎ／２５５を用いて行うことができる。ここで、Ｌは、カンデラ毎平方メートル（ｃｄ／ｍ２）単位の輝度であり、ｎはコード値である。しかしながら、これは、暗い値の場合は過度に大きな相対誤差を与え、明るい値の場合は不要に小さな誤差を与えることになる。例として、ｎ＝１からｎ＝２に進むとき、輝度はＬ（１）＝１００×１／２５５＝０．３９２１ｃｄ／ｍ２からＬ（２）＝１００×２／２５５＝０．７８４３に２倍となり、相対差は（０．７８４３−０．３９２１）／０．３９２１＝１００％となる。明るいエリアでは、ｎ＝２５４からｎ＝２５５へ進むことにより、はるかに低い相対差がもたらされる。なぜなら、Ｌ（２５４）＝９９．６０及びＬ（２５５）＝１００であり、相対差が（１００−９９．６０）／９９．６０＝０．３９％となるためである。眼は、絶対誤差よりも相対誤差に対してより感度が高い可能性があるため、Ｌ＝１００×ｎ／２５５等の線形関数を用いてローダイナミックレンジ画像を表すことは良い着想ではない。したがって、代わりに、ガンマ関数；Ｌ＝１００×（ｎ／２５５）γを用いてＬＤＲ画像が表される。ここで、γは２．２等の正の値である。ここで、ｎ＝２０は、ｎ＝１が以前に与えたものと類似した輝度値；Ｌ（２０）＝１００×２０／２５５）２．２＝０．３６９７ｃｄ／ｍ２を与える、これは０．３９２１ｃｄ／ｍ２に近い。しかし、ここで、ｎ＝２１まで１ステップ進む場合、Ｌ（２１）＝１００×（２１／２５５）２．２＝０．４１１６の輝度を得る。ここで、相対誤差は（０．４１１６−０．３６９７）／０．３６９７＝１１．３％であり、これは１００％よりもはるかに小さい。この利点は、１００ｃｄ／ｍ２に近い精度と引き換えに得られ、最後の２ステップはＬ（２５４）＝１００×（２５４／２５５）２．２＝９９．１３９３及びＬ（２５５）＝１００×（２１／２５５）２．２＝１００であり、（１００−９９．１３９３）／９９．１３９３＝０．８７％の相対誤差を与える。
【００４６】
要約すると、整数を輝度に変換するときにディスプレイガンマγを用いることにより、暗い輝度の場合の相対誤差が実質的に下がるが、これは、明るい輝度の場合の相対誤差の小さな増大という犠牲を伴い、この誤差は、人間の視覚系によるＬＤＲ画像の知覚の仕方に同調させた方がよい。したがって、ＬＤＲ画像はガンマ形式で表され、２つの画像間の比較も、多くの場合、線形輝度値間ではなく、ガンマ表現間で行われる。
【００４７】
一実施形態では、図１のステップＳ１は、ＨＤＲビデオフレーム１０内のピクセルの初期露出値を以下のように計算することを含む。
rOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rOrig))
gOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gOrig))
bOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bOrig))
この実施形態では、ｒＯｒｉｇＰｒｏｃｅｓｓｅｄは、ＨＤＲビデオフレーム１０内のピクセルの赤色成分の露出値を表し、ｇＯｒｉｇＰｒｏｃｅｓｓｅｄは、ＨＤＲビデオフレーム１０内のピクセルの緑色成分の露出値を表し、ｂＯｒｉｇＰｒｏｃｅｓｓｅｄは、上記ＨＤＲビデオフレーム１０内のピクセルの青色成分の露出値を表す。パラメータｔｗｏＴｏＣ＝ｅｘｐ（（ｃＭｉｎ−１）×ｌｏｇ（２．０））である。ここで、ｃＭｉｎは最小露出パラメータ値を表す。ｒＯｒｉｇはＨＤＲビデオフレーム１０内のピクセルの赤色成分を表す。ｇＯｒｉｇはＨＤＲビデオフレーム１０内のピクセルの緑色成分を表し、ｂＯｒｉｇはＨＤＲビデオフレーム１０内のピクセルの青色成分を表す。ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの初期露出値は、ステップＳ２において以下のように計算されることが好ましい：
rCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rCopy))
gCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gCopy))
bCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bCopy))
この実施形態において、ｒＣｏｐｙＰｒｏｃｅｓｓｅｄは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの赤色成分の露出値を表し、ｇＣｏｐｙＰｒｏｃｅｓｓｅｄは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの緑色成分の露出値を表し、ｂＣｏｐｙＰｒｏｃｅｓｓｅｄは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの青色成分の露出値を表す。ｒＣｏｐｙは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの赤色成分を表し、ｇＣｏｐｙは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの緑色成分を表し、ｂＣｏｐｙは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの青色成分を表す。
【００４８】
このため、ｒＯｒｉｇ、ｇＯｒｉｇ及びｂＯｒｉｇは、ＨＤＲビデオフレーム１０内のピクセルの元のＨＤＲピクセル値を表し、これに対し、ｒＣｏｐｙ、ｇＣｏｐｙ及びｂＣｏｐｙは、再構成されたＨＤＲビデオフレーム２０における対応するピクセルの元のＨＤＲピクセル値を表す。
【００４９】
一実施形態において、ステップＳ３においてＨＤＲビデオフレーム１０内のピクセルの露出値を計算することは、最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに以下を計算することを含む：
rOrigProcessed×=factor
gOrigProcessed×=factor
bOrigProcessed×=factor
この実施形態において、定数ｆａｃｔｏｒ＝ｅｘｐ（（１．０／γ）×ｌｏｇ（２．０））である。ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの露出値は、好ましくは、ステップＳ４において、最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに以下のように計算される：
rCopyProcessed×=factor
gCopyProcessed×=factor
bCopyProcessed×=factor
【００５０】
本明細書において用いられるとき、表記「ａ×＝ｂ」は、演算ａ＝ａ×ｂに対応し、このため、パラメータａは、パラメータａをパラメータｂと乗算することによって更新される。
【００５１】
このため、この実施形態において、ピクセル又は対応するピクセルの以前に計算された露出値に乗算するのに用いられる定数は、好ましくはディスプレイガンマに依拠し、すなわち、ｅｘｐ（（１．０／γ）×ｌｏｇ（２．０））に依拠する。これは、ＨＤＲビデオフレーム１０内のピクセル位置（ｘ，ｙ）におけるピクセル、及び露出パラメータの現在の値ｃについて、Ｒｐｃ（ｘ，ｙ）＝Ｒｐｃ−１（ｘ，ｙ）×ｆａｃｔｏｒとして色成分Ｒｐを計算することに対応する。
【００５２】
一実施形態では、ステップＳ５においてＨＤＲビデオフレーム１０内のピクセルの露出値を変換することは、以下を計算することを含む。
LDRorigR=(int)(rOrigProcessed+0.5)
LDRorigG=(int)(gOrigProcessed+0.5)
LDRorigB=(int)(bOrigProcessed+0.5)
この実施形態において、ＬＤＲｏｒｉｇＲはＨＤＲビデオフレーム１０内のピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＧはＨＤＲビデオフレーム１０内のピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｏｒｉｇＢはＨＤＲビデオフレーム１０内のピクセルの青色成分のＬＤＲ値を表す。（ｉｎｔ）はキャスティング演算を表す。キャスティング演算のこの実施形態は、赤色、緑色及び青色成分のＬＤＲ値を整数ＬＤＲ値として出力する。
【００５３】
この実施形態において、ステップＳ６においてＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの露出値を変換することは、好ましくは以下を計算することを含む：
LDRcopyR=(int)dMin(rCopyProcessed+0.5,255.5)
LDRcopyG=(int)dMin(gCopyProcessed+0.5,255.5)
LDRcopyB=(int)dMin(bCopyProcessed+0.5,255.5)
この実施形態において、ＬＤＲｃｏｐｙＲは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの赤色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＧは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの緑色成分のＬＤＲ値を表し、ＬＤＲｃｏｐｙＢは、ＨＤＲビデオフレーム１０の圧縮に続いて取得されるＨＤＲビデオフレーム１０のバージョン２０における対応するピクセルの青色成分のＬＤＲ値を表す。ｄＭｉｎ（ｘ，ｙ）は、（ｘ＞ｙ）の場合、ｙを返し、そうでない場合、ｘを返すように実装されるｍｉｎ関数を表す。
【００５４】
第１の実施形態において、ステップＳ７において誤差を計算することは、誤差を以下のように計算することを含む：
(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyB)
【００５５】
第２の実施形態において、ステップＳ７において誤差を計算することは、誤差を以下のように計算することを含む：
|LDRorigR-LDRcopyR|+|LDRorigG-LDRcopyG|+|LDRorigB-LDRcopyB|
【００５６】
第３の実施形態において、ステップＳ７において誤差を計算することは、誤差を以下のように計算することを含む：
wR×(LDRorigR-LDRcopyR)×(LDRorigR-LDRcopyR)+wG×(LDRorigG-LDRcopyG)×(LDRorigG-LDRcopyG)+wB×(LDRorigB-LDRcopyB)×(LDRorigB-LDRcopyb)
【００５７】
第４の実施形態において、ステップＳ７において誤差を計算することは、誤差を以下のように計算することを含む：
wR×|LDRorigR-LDRcopyR|+wG×|LDRorigG-LDRcopyG|+wB×|LDRorigB-LDRcopyB|
【００５８】
これらの実施形態において、ｗＲ、ｗＧ、ｗＢは重みである。
【００５９】
上記の第１の実施形態及び第２の実施形態は、３つの色成分について１に等しい同じ重みを用いることによって、第３の実施形態及び第４の実施形態の特定の実施例とみなすことができる。第３の実施形態及び第４の実施形態は、ステップＳ７において誤差を計算するときに、異なる色成分について異なる重みを可能にすることによって、より一般化される。また、第３の実施形態及び第４の実施形態において、図１の線Ｌ２によって表されるステップＳ３〜Ｓ７の異なるループに異なる重みを用いることも可能である。これは、異なる露出パラメータ値について異なる重みを用いることに対応する。このため、特定の実施形態において、重みｗＲ、ｗＧ、ｗＢは、露出パラメータ値ｃに基づいて求められ、すなわち、いくつかの定義済み関数ｆＲ（・）、ｆＧ（・）及びｆＢ（・）についてｗＲ＝ｆＲ（ｃ）、ｗＧ＝ｆＧ（ｃ）及びｗＢ＝ｆＢ（ｃ）である。
【００６０】
上記の第１の実施形態及び第２の実施形態は、評価尺度を計算するときに暗い雑音を増幅する傾向を有する。第３の実施形態及び第４の実施形態は、異なる露出パラメータ値及び／又は異なる色成分に異なる重みを用いることによって、そのような暗い雑音を抑制することができる。
【００６１】
図４は、一実施形態による、様々な露出パラメータ値のための重みの分布を示す図である。この特定の実施形態において、より低い重みｗＲ、ｗＧ、ｗＢは通常、露出パラメータの中間範囲値と比較して、低い値の露出パラメータ及び高い値の露出パラメータのために用いられる。
【００６２】
一実施形態において、ｗＲ＝ｗＧ＝ｗＢ＝ｆ（ｃ）である。これは、同じ重みが３つ全ての色成分に用いられ、重みの値が図４に示すような露出パラメータ値に依拠することを意味する。別の実施形態では、３つの色成分のうちの少なくとも２つ又は全てに対して別個の重みを用いることができる。次に、そのような各重みを、上述したような露出パラメータ値の所与の関数として求めることができる。そのような場合、各色成分は、異なる露出パラメータ値についてそれぞれの重み分布を有し得る。
【００６３】
重みが用いられない場合、暗いピクセルにおける小さな変化が、評価尺度の最終値に対し大きく寄与する場合がある。例えば、ＨＤＲビデオフレーム内の２つのピクセル、すなわち、元のＨＤＲ  ＲＧＢ値が（０．３，０．３，０．３）に等しい第１のピクセル、及び元のＨＤＲ  ＲＧＢ値が（３０００，３０００，３０００）に等しいピクセルを仮定する。圧縮及び解凍後、２つのピクセルについて再構成されたＨＤＲ  ＲＧＢ値がそれぞれ（０．６，０．６，０．６）及び（３３００，３３００，３３００）になると仮定する。第１のピクセルのための最小露出パラメータ値及び最大露出パラメータ値は、それぞれｃ＝−１８及びｃ＝１になる。２０個の露出のＬＤＲ値を計算する場合、以下の誤差が得られる：
2017500792.tif 000003
【００６４】
このため、最も右側の列を合計する場合、第１のピクセルによって寄与される総誤差は、２７４６２となる。
【００６５】
一方、第２のピクセルのための露出パラメータ値は、ｃ＝−３１〜ｃ＝−１２となる。この第２のピクセルのための類似したテーブルは以下のようになる：
2017500792.tif 000004
【００６６】
ここで、最も右側の列を合計する場合、このピクセルによって寄与される総誤差は、６３３であることがわかる。このため、第１のピクセルは、第２のピクセルの誤差（６３３）よりもはるかに大きな誤差（２７４６２）を伴って評価尺度に寄与することになる。一方、ＨＤＲピクセル値を見ると、誤差は第２のピクセルにおいてはるかに大きい：
2017500792.tif 000005
【００６７】
第１のピクセルにおいて、各成分において誤差は０．３である。一方、第２のピクセルにおいて、誤差は各成分において３００である。通常、３００ｃｄ／ｍ２の誤差は、０．３ｃｄ／ｍ２の誤差よりも容易に気づくが、この例では、第２のピクセルと比較して、第１のピクセルの方が評価尺度に寄与している。これは、第１のピクセルからの寄与に第１の重みを用いて重み付けし、第２のピクセルからの寄与に、第１の重みよりも大きい第２の重みを用いて重み付けすることが有利である場合があることを意味する。
【００６８】
これを達成する１つの方法は、露出パラメータｃごとに１つの重みを有することである。例として、ｃ＝−１２であるとき（ｃ＝−１２は双方のテーブルにおいて入手可能である）、重みはｗ（−１２）＝１００とすることができる。これは、第１のピクセルの合計二乗誤差１２に１００を乗算して１２００になり、第２のピクセルの合計二乗誤差３００に１００を乗算して３００００になることを意味する。一方、ｃ＝−１３のときの重みは、より大きく、例えばｗ（−１３）＝１１０にすることができる。第１のピクセルのそのレベルにおける合計二乗誤差３は、１１０を乗算され、３３０になる。同時に、第２のピクセルのそのレベルにおける合計二乗誤差１４７は、１１０を乗算され、１６１７０になる。ｃの小さな値についてより大きな重みを有することによって、第２のピクセルの誤差値により評価尺度への大きな寄与が生じることを確実にすることができる。例として、ｃ＝−３１の重みは非常に大きい場合があり、これは第２のピクセルにおいてのみ用いられる。
【００６９】
一方、第１のピクセルについて、実際に相対誤差はより小さいことに留意されたい。これが、重み付けされていない誤差尺度を用いる場合に、第１のピクセルが第２のピクセルよりも誤差尺度に大きく寄与することになる理由である。
【００７０】
図５は、図１における計算ステップＳ８の一実施形態を示すフローチャートである。この実施形態において、本方法は、図１のステップＳ７から継続する。後続のステップＳ１３は、平均二乗誤差（ＭＳＥ）を、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出値についての平均誤差として計算することを含む。次に、本方法はステップＳ１４に続く。ステップＳ１４は、平均二乗誤差に基づいて評価尺度を計算することを含む。
【００７１】
一実施形態において、ステップＳ１４において評価尺度を計算することは、評価尺度を、平均二乗誤差のピーク信号対雑音比として以下のように計算することを含む：
10×log((255×255)/MSE)/log(10)
この実施形態において、ＭＳＥは平均二乗誤差を表す。
【００７２】
実施形態は、本明細書においてｍＰＳＮＲと表される評価尺度に関する。ｍＰＳＮＲは、ＨＤＲビデオフレームの評価のために用いることができる。要するに、ＨＤＲビデオフレームごとに、異なる仮想シャッター速度、すなわち露出パラメータ値を有する仮想写真又はトーンマッピングされたバージョンの形態等のいくつかのＬＤＲバージョンが作成され、次に、ＰＳＮＲ尺度がこれらのＬＤＲバージョンについて計算される。ｍＰＳＮＲ値は、これらのＰＳＮＲ尺度のアグリゲートである。
【００７３】
露出パラメータ値ｃの範囲は好ましくは制限される。この理由は、小さな値のｃ（大きな負の値）の場合、ほとんどのピクセルが黒（０，０，０）になり、したがって、ＭＳＥがこれらのピクセルに対して小さくなるためである。これは、圧縮にアーチファクトがないという印象を与えるが、必ずしも当てはまらない。実際には、これらのピクセルは情報を一切保有しておらず、このため、これらを除外することにより尺度がより良好になる。同様に、２５５よりも大きな値について、ｃが十分大きいとき、ほとんどの値は白（２５５，２５５，２５５）になり、これもまた、圧縮にアーチファクトがないという誤った印象を与える。
【００７４】
また、（４０００，１，２）等、１つの成分に非常に大きな値を有し、他の成分に小さな値を有する場合、人間の眼には、これと、圧縮結果であり得る、例えば（４０００，２，２）との差を見分けることが難しい。しかし、十分大きなｃの数を用いると、（４０００，１，２）が、例えば（２５５，９０，１８０）にマッピングされるのに対し、圧縮結果（４０００，２，２）は（２５５，１８０，１８０）にマッピングされる。この結果、緑色成分に大きな誤差が生じるが、これは実際のピクセルでは可視でない可能性が高い。このため、このピクセルを計算から除去することは道理にかなっており、提案される方法において行われる。なぜなら、赤色成分が２５５に飽和しているためである。
【００７５】
コードの元の最適化されていないバージョンは、以下のように説明することができる。
sse=0
for  ｃ＝−３４〜１５の全ての露出
for 画像内の全てのピクセル
元画像のHDR R、G、BからLDRredOrig、LDRgreenOrig、LDRblueOrigを計算
コピーのHDR R、G、BからLDRredCopy、LDRgreenCopy、LDRblueCopyを計算
if ピクセルが飽和していない
sse+=(LDRredOrig-LDRredCopy)2
sse+=(LDRgreenOrig-LDRgreenCopy)2
sse+=(LDRblueOrig-LDRblueCopy)2
numpixcels++;
end
end
end
mse=sse/(3.0*numpixels)
mPSNR=PSNR=10*log((255*255)/mse)/log(10);
【００７６】
この最適化されていないバージョンにおいて、露出パラメータ値の固定された組又は範囲［−３４，１５］が用いられる。この結果、通常、評価尺度ｍＰＳＮＲの計算が非効率になる。これについて本明細書において更に説明する。
【００７７】
元のＨＤＲ浮動小数点数値ＲからＬＤＲｒｅｄＯｒｉｇを計算することは以下のように行われる：
RLDRC(x,y)=clamp(0,255,round(255*(2c*RHDR(x,y))(1/γ)))
ここで、ＬＤＲｒｅｄＯｒｉｇ＝ＲＬＤＲｃを用いた。対応する式は、他の２つの色成分に当てはまる。最も内側の値２５５＊（２ｃ＊ＲＨＤＲ（ｘ，ｙ））（１／γ）を見る場合、これは２つの冪関数ｘｐからなる。まず、２ｃ（ｐはｃである）、及び次に（ＲＨＤＲ（ｘ，ｙ））（１／γ）（ｐは１／γ）である。そのような冪関数は、通常、対数：ｘｐ＝ｅｘｐ（ｌｎ（ｘｐ））＝ｅｘｐ（ｐ＊ｌｎ（ｘ））を用いて実施される。指数関数ｅｘｐ（・）及び対数ｌｎ（・）の双方が、計算コストが高いため、これは非常にコストの高い演算である。これにより、したがって、最適化の１つの目標は、これらのコストの高い計算を回避することである。
【００７８】
全てのＬＤＲｒｅｄＯｒｉｇ値が最終結果に影響を及ぼすわけではないことに留意するべきである；ＬＤＲｒｅｄＯｒｉｇ値が飽和試験を通過した場合にのみ、この値が変数ｓｓｅに影響を及ぼす。飽和試験は以下のとおりである：
if LDRredOrig==0 AND LDRgreenOrig==0 AND LDRblueOrig==0
return false:
else if LDRredOrig==255 OR LDRgreenOrig==255 OR LDRblueOrig==255
return false
else
return true
end
【００７９】
ここで、再びＬＤＲｒｅｄＯｒｉｇについての式、
RLDRC(x,y)=clamp(0,255,round(255*(2c*RHDR(x,y))(1/γ)))
を調べると、値２５５＊（２ｃ＊ＲＨＤＲ（ｘ，ｙ））（１／γ）は、２５４．５よりも大きい場合、２５５に丸められるため、この値が２５５に等しくなることがわかる。この場合、ピクセルは飽和し、用いられない。これは、ｃがｃＭａｘ＝γｌｎ（２５４．５／２５５）／ｌｎ（２）−ｌｎ（ＲＨＤＲ（ｘ，ｙ））／ｌｎ（２）よりも大きいことと等価である。ｃは、−３４〜１５（１５を含む）間の全ての値にわたってループすることに留意されたい。しかし、あるピクセルについてｃＭａｘよりも大きいｃ値に到達するとすぐ、より大きな全てのｃがそのピクセルのｓｓｅに寄与しないことがわかる。実際は、３つの色成分Ｒ、Ｇ及びＢのうちの最も大きなもののみを見ればよい。最も大きなものによって、計算に影響を及ぼすｃの最大値が決まる。
【００８０】
同様に、全ての成分がゼロになるほど小さいｃ値も飽和ピクセルとみなされるので、このｃ値を調べる必要がない。ｃが、最も大きな成分であっても０．５未満の値になるほど小さい場合、０に量子化されることになる。これは計算に影響を及ぼさないことがわかっている。
【００８１】
このため、あるピクセルについて、−３４から１５ではなく、ｃＭｉｎＩｎｔからｃＭａｘＩｎｔ、すなわち、最小露出パラメータ値から最大露出パラメータ値にループすることができる。これによって、ｃＭａｘＩｎｔ−ｃＭｉｎＩｎｔが通常、５０ではなく約２０であるため、大量の計算が節減される。これが機能するためには、ｆｏｒループの順序を反転させる必要がある。要約すると、以下を用いることができる：
sse=0
for 画像内の全てのピクセル
colMax=元画像内のmax(R,G,B)
cMinInt=ceil(gamma*log(0.5/255.0)/log(2)-log(colMax)/log(2);
cMaxInt=floor(gamma*log(254.5/255.0)/log(2)-log(colMax)/log(2);
for c=cMinInt〜cMaxInt
元画像のHDR R、G、BからLDRredOrig、LDRgreenOrig、LDRblueOrigを計算
コピーのHDR R、G、BからLDRredCopy、LDRgreenCopy、LDRblueCopyを計算
sse+=(LDRredOrig-LDRredCopy)2
sse+=(LDRgreenOrig-LDRgreenCopy)2
sse+=(LDRblueOrig-LDRblueCopy)2
numpixcels++;
end
end
mse=sse/(3.0*numpixcels)
mPSNR=PSNR=10*log((255*255)/mse)/log(10);
【００８２】
ここで、ｆｌｏｏｒ（ｘ）はｘを切り下げ、ｃｅｉｌ（ｘ）はｘを切り上げる。ピクセルのいずれも飽和しないことがわかっているため、飽和の試験はもはや必要ないことに留意されたい。
【００８３】
これらの最適化を用いる場合であっても、評価尺度を計算するには依然としてかなりの時間がかかる。大量の計算は、ＬＤＲｒｅｄＯｒｉｇ、ＬＤＲｇｒｅｅｎＯｒｉｇ等の計算から生じるため、これを再び検討する。式
RLDRC(x,y)=clamp(0,255,round(255*(2c*RHDR(x,y))(1/γ)))
は２ステップで計算することができる；
RPC(x,y)=255*(2c*RHDR(x,y))(1/γ)
及び
RLDRC(x,y)=clamp(0,255,round(RPC(x,y)))
【００８４】
第１のステップを見ると、これを以下のように書き換えることができることがわかる。
RPC(x,y)=255*(2c*RHDR(x,y))(1/γ)=
255*(2c)(1/γ)*(RHDR(x,y))(1/γ)=
255*(RHDR(x,y))(1/γ)*(2(1/γ))c
【００８５】
しかし、これは以下に更に単純化することができる。
255*(RHDR(x,y))(1/γ)*(2(1/γ))(c-1)*(2(1/γ))=
RPC-1(x,y)*(2(1/γ))
【００８６】
また、（２（１／γ））は定数であることに留意されたい。このため、ＲＰＣ（ｘ，ｙ）を得るためには，単に以前の値ＲＰＣ−１（ｘ，ｙ）をこの定数と乗算する。
【００８７】
したがって、本発明によれば、方法を以下のように書き換えることができる。
sse=0
for 画像内の全てのピクセル
元画像のcolMax=max(R,G,B)
cMinInt=ceil(gamma*log(0.5/255.0)/log(2)-log(colMax)/log(2);
cMaxInt=floor(gamma*log(254.5/255.0)/l2-log(colMax)/log(2);
twoToC=exp((cMinInt-1)*log(2));
factor=exp(inverseGamma*log(2));
rOrigP=255.0*exp(inverseGamma*log((((twoToC))*rOrig)));
gOrigP=255.0*exp(inverseGamma*log((((twoToC))*gOrig)));
bOrigP=255.0*exp(inverseGamma*log((((twoToC))*bOrig)));
rCopyP=255.0*exp(inverseGamma*log((((twoToC))*rCopy)));
gCopyP=255.0*exp(inverseGamma*log((((twoToC))*gCopy)));
bCopyP=255.0*exp(inverseGamma*log((((twoToC))*bCopy)));
for c=cMinInt〜cMaxInt
rOrigP*=factor
gOrigP*=factor
bOrigP*=factor
rCopyP*=factor
gCopyP*=factor
bCopyP*=factor
LDRredOrig=round(clamp(0,255,rOrigP))
LDRgreenOrig=round(clamp(0,255,gOrigP))
LDRblueOrig=round(clamp(0,255,bOrigP))
LDRredCopy=round(clamp(0,255,rCopyP))
LDRgreenCopy=round(clamp(0,255,gCopyP))
LDRblueCopy=round(clamp(0,255,bCopyP))
sse+=(LDRredOrig-LDRredCopy)2
sse+=(LDRgreenOrig-LDRgreenCopy)2
sse+=(LDRblueOrig-LDRblueCopy)2
numpixcels++;
end
end
mse=sse/(3.0*numpixcels)
mPSNR=PSNR=10*log((255*255)/mse)/log(10);
【００８８】
このプログラムは、下線を付されたコードを有するループの内側におけるＬＤＲｒｅｄＯｒｉｇの計算を交換した。このプログラムは、コストの高い任意のｅｘｐ（・）関数及びｌｏｇ（・）関数を回避することに留意されたい。代わりに、これは、多くのアーキテクチャにおいて単一クロックサイクルで実行することができる単純な浮動小数点乗算に置き換えられる。次に、この値は丸められ、クランプされて、下線を付されたコード内を更に進んでＬＤＲ値ＬＤＲｒｅｄＯｒｉｇを生成する。また、ループの前のコード、すなわち、斜体のｔｗｏＴｏＣ＝で始まるｆｏｒループの前の８行も追加した。これらの行は、後続の露出値を計算するのに用いられる開始値を生成するのに必要とされる。これらの行は、コストの高いｅｘｐ（・）関数及びｌｏｇ（・）関数を利用する。しかしながら、これらはループの外側であるため、ループの内側の行ほど計算行に寄与しない。
【００８９】
この実施形態によって、上記で提示されたコードの元の最適化されていないバージョンと比較して計算時間が大幅に低減することになる。その最適化されていないコードと比較して、実行時間は、ＨＤＲビデオフレームあたり約１４秒から３．７秒に低減し、約３．８×のスピードアップとなる。
【００９０】
しかしながら、更なるスピードアップが可能である。ほとんどの時間は、通常、ループの内側に費やされる。ここでループの内側を見ると、これは非常に単純な算術演算；浮動小数点及び整数データの乗算、減算及び加算のみからなっている。例外は、丸め演算及びクランピング演算におけるものである。これらは、通常、高速実行の妨げとなるｉｆ文からなる。高速実行の妨げとなる理由は、ｉｆ文が、ＣＰＵが分岐予測において誤った推定をするときに、ＣＰＵの実行パイプラインにおいてバブルを生成するためである。例として、クランプ演算は多くの場合、以下のように実施される。
if(x>255.0)
x=255.0;
else if(x<0.0)
x=0.0;
end;
【００９１】
これによって、２つのｉｆ文が生成される。双方の場合に、ＣＰＵは、最も可能性の高い結果を推定し、推定が誤っているとき、パイプラインをフラッシュしなくてはならず、いくつかのクロックサイクルのペナルティが生じる。
【００９２】
しかしながら、本発明の一実施形態によれば、比較が始まる前の画像の元のバージョン及び圧縮バージョンの値について、通常、クランプステップ、すなわちクリップステップが存在することに注目する。入力、すなわち、元の画像及び圧縮画像は、線形光を表し、光は負になり得ないため、負値をゼロにクランプすること、すなわち、負値を０に置き換えることは意味を成す。同様に、６５５０４は半精度浮動小数点において表現可能な最大値であるため、無限等の６５５０４よりも大きい値を６５５０４にクランプすることは意味を成す。これは通常、太字で示す以下のコードを挿入することによって行われている。
sse=0
for 画像内の全てのピクセル
rOrig=clamp(0,65504,RHDRorig)
gOrig=clamp(0,65504,GHDRorig)
bOrig=clamp(0,65504,BHDRorig)
rCopy=clamp(0,65504,RHDRcopy)
gCopy=clamp(0,65504,GHDRcopy)
bCopy=clamp(0,65504,BHDRcopy)
元画像のcolMax=max(R,G,B)
cMinInt=ceil(gamma*log(0.5/255.0)/log(2)-log(colMax)/log(2);
cMaxInt=floor(gamma*log(254.5/255.0)/l2-log(colMax)/log(2);
…
ここで、ｆＣｌｉｐ（ａ，ｂ，ｘ）とも書かれるｃｌａｍｐ（ａ，ｂ，ｘ）は、ａよりも小さい値をａと置き換え、ｂよりも大きい値をｂと置き換え、ａ〜ｂ間の値を変更しない。本発明において、これが、露出値ＲＰＣ（ｘ，ｙ）が決して負になり得ないことを意味することを認識することによって、これを利用する。これを理解するために、
RPC(x,y)=255*(2c*RHDR(x,y))(1/γ)
であるため、ＲＰＣ（ｘ，ｙ）がとり得る最小値が２５５＊（２ｃ＊０）（１／γ）であり、０に等しいことに留意されたい。ここで、ＲＨＤＲ（ｘ，ｙ）は、上記の擬似コードにおけるｒＯｒｉｇ値を表す。このため、ＲＰＣ（ｘ，ｙ）の負値を有することは決してあり得ず、クランピング比較において負値に対し試験することは不要である。このため、下線を付された最後の６行を以下と置き換えることができる。
LDRredOrig=round(min(255,rOrigP))
LDRgreenOrig=round(min(255,gOrigP))
LDRblueOrig=round(min(255,bOrigP))
LDRredCopy=round(min(255,rCopyP))
LDRgreenCopy=round(min(255,gCopyP))
LDRblueCopy=round(min(255,bCopyP))
【００９３】
ｍｉｎ（ｘ，ｙ）は通常以下のように実装される。
if(x>y)
return y
else
return x
【００９４】
これは、置き換えたクランプ演算と比較してｉｆ文が１つ減っており、より迅速な実行につながる。このため、本発明の１つの態様によれば、露出値ｒＣｏｐｙＰは、丸めの後のｍｉｎ演算を用いてＬＤＲ値に変換される。本発明のこの部分は、上記の太字の擬似コードにおいて記載されたように値が既に事前にクランプされていることを条件にし、これも時間がかかる。しかしながら、この事前クランプはピクセルごとに１回しか生じず、このため、ループの内側で毎回生じる、最大で２０倍頻度の高い露出値のクランプよりも消費時間が短い。
【００９５】
本発明の更なる実施形態では、元画像の処理された値が決して２５４．５を超えないことを確実にするようにｃ値が計算されること（上記を参照）に注目する。これは、ｃ値を２５５に対して試験する必要もないことを意味する。これはコピーには当てはまらない。このため、上記を更に単純な以下のものに置き換えることができる。
LDRredOrig=round(rOrigP)
LDRgreenOrig=round(gOrigP)
LDRblueOrig=round(bOrigP)
LDRredCopy=round(min(255,rCopyP))
LDRgreenCopy=round(min(255,gCopyP))
LDRblueCopy=round(min(255,bCopyP))
【００９６】
これによって、ＣＰＵが実行する必要があるｉｆ文の量が更に低減し、ここでも結果としてスピードアップがもたらされる。
【００９７】
更に別の実施形態では、ｒｏｕｎｄ（・）演算が通常以下のように実施されることに目を向ける：
if(x>=0)
return (int)(x+0.5)
else
return (int)(x-0.5)
【００９８】
この結果、実行を低速化させることになる別のｉｆ文が生じる。しかしながら、ＲＰＣ（ｘ，ｙ）がゼロ未満に決してなり得ないことを既に認識している。このため、ｒｏｕｎｄ（・）演算は、（ｉｎｔ）（ｘ＋０．５）によって単純に置き換えることができ、上記のコードは以下に更に単純化することができる。
LDRredOrig=(int)(rOrigP+0.5)
LDRgreenOrig=(int)(gOrigP+0.5)
LDRblueOrig=(int)(bOrigP+0.5)
LDRredCopy=(int)(min(255.5,rCopyP+0.5))
LDRgreenCopy=(int)(min(255.5,gCopyP+0.5))
LDRblueCopy=(int)(min(255.5,bCopyP+0.5))
【００９９】
上記で言及したように、例示的な実施形態において、赤色成分Ｒは色空間を例示するのに用いられるが、当業者であれば、実施形態は、緑色Ｇ及び青色Ｂ、並びにＹＣｂＣｒ、ＹＵＶ、Ｌａｂ、ＸＹＺ等のような他の色空間についても有効であることを認識するであろう。
【０１００】
このため、本発明の１つの態様によれば、露出値ｒＯｒｉｇＰは、０．５の加算及びキャスティング演算のみを用いてＬＤＲ値ＬＤＲｒｅｄＯｒｉｇに変換される。上３行を参照されたい。
【０１０１】
更に、本発明の別の態様によれば、露出値ｒＣｏｐｙＰは、加算、ｍｉｎ演算及びキャスティング演算を用いてＬＤＲ値ＬＤＲｒｅｄＣｏｐｙに変換される。下３行を参照されたい。
【０１０２】
いくつかのアーキテクチャにおいて、０．５の加算の代わりに浮動小数点数に２を乗算する方が早い場合がある。この場合、以下を用いることが可能である。
LDRredOrig=(((int)(2*rOrigP))+1)>>1
LDRgreenOrig=(((int)(2*gOrigP))+1)>>1
LDRblueOrig=(((int)(2*bOrigP))+1)>>1
LDRredCopy=(((int)(min(551,2*rCopyP)))+1)>>1
LDRgreenCopy=(((int)(min(551,2*gCopyP)))+1)>>1
LDRblueCopy=(((int)(min(551,2*bCopyP)))+1)>>1
ここで、＞＞はビットシフトを示す。
【０１０３】
最後に、ループの毎ターンにｎｕｍｐｉｘｃｅｌを１増大させる代わりに、ループの外側でｎｕｍｐｉｘｃｅｌにｃＭａｘＩｎｔ−ｃＭｉｎＩｎｔ＋１を加算することができる。これによって計算時間が更に節減される。全てのこれらの実施形態が組み合わされると、結果として得られる実行時間は、ＨＤＲビデオフレームあたり１．９７秒である。１４秒で実行する上記で説明した一変形と比較して、これは７．１×のスピードアップである。
【０１０４】
以下に、実施形態のＣ＋＋による実装が続く：
double DistortionMetricmPSNRfast::calculateErrorRGB(Frame*inp0,Frame*inp1)
{
static const double gamma=2.20;
static const double inverseGamma=1.0/gamma;
double sse=0.0;
int numPixcels=0;
int widthXheight=inp0->m_compSize[R_COMP];
float *inp0Comp0=inp0->m_floatComp[0];
float *inp0Comp1=inp0->m_floatComp[1];
float *inp0Comp2=inp0->m_floatComp[2];
float *inp1Comp0=inp1->m_floatComp[0];
float *inp1Comp1=inp1->m_floatComp[1];
float *inp1Comp2=inp1->m_floatComp[2];
m_sse[R_COMP]=0.0;
m_sse[G_COMP]=0.0;
m_sse[B_COMP]=0.0;
for(int x=0;x<widthXheight;x++){
//まず、可能な限り最も小さいｃを計算する。
//元のピクセルも圧縮されたピクセルも、０未満とならず６５５０４を超えないことを確実にする。
//半精度浮動小数点数の場合の最大値は６５５０４である。Infは６５５０４にクリップされる。
float rOrig=fClip(inp0Comp0[x],0.0f,65504.0f);
float gOrig=fClip(inp0Comp1[x],0.0f,65504.0f);
float bOrig=fClip(inp0Comp2[x],0.0f,65504.0f);
float rCopy=fClip(inp1Comp0[x],0.0f,65504.0f);
float gCopy=fClip(inp1Comp1[x],0.0f,65504.0f);
float bCopy=fClip(inp1Comp2[x],0.0f,65504.0f);
//最大の色成分を得る。
double colMax=dMax(bOrig,dMax(rOrig,gOrig));
//寄与を与える第１の値を計算する。
//これは255*(2^c*colMax)^(1/gamma)が厳密に０．５であるときに生じる。
//これは、cMin=gamma*log(0.5/255)/log(2)-log(colMax)/log(2)に等しい。
double l2=log(2.0);
double cMin=2.2*log(0.5/255.0)/l2-log(colMax)/l2;
//最後の値を計算する。
//これは、255*(2^c*colMax)^(1/gamma)が厳密に２５４．５であるときに生じる。
//これは、cMin=gamma*log(254.5/255)/log(2)-log(colMax)/log(2)に等しい。
double cMax=2.2*log(254.5/255.0)/l2-log(colMax)/l2;
//cMinが例えば−１０．６である場合、第１の有効な整数ｃは−１０となる。
int cMinInt=double2IntCeil(cMin);
//ｃＭａｘが例えば４．６である場合、最後の有効なｃは４となる。
int cMaxInt=double2IntFloor(cMax);
//nextValue=oldValue*(2^(1/gamma))であることを用いる。
double twoToC=exp((cMinInt-1)*l2);
double factor=exp(inverseGamma*l2);
//開始値。
double rOrigProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*rOrig)));
double gOrigProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*gOrig)));
double bOrigProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*bOrig)));
double rCopyProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*rCopy)));
double gCopyProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*gCopy)));
double bCopyProcessed=255.0*exp(inverseGamma*log(((1.0*(twoToC))*bCopy)));
for(int c=cMinInt;c<=cMaxInt;c++){
rOrigProcessed*=factor;
gOrigProcessed*=factor;
bOrigProcessed*=factor;
rCopyProcessed*=factor;
gCopyProcessed*=factor;
bCopyProcessed*=factor;
//ここで、これらの値を［０，２５５］にクランプし、整数に丸める。
//クランプ後、全ての値は正であり、dRound(x)の代わりに(int)(x+.5)を用いることができる。
//クランプの前であっても、x>0の場合、255*(2^c*x)^(1/gamma)>0であるため、全ての値が正である。
//このため、dClip(x,0,255)の代わりにdMin(x,255)を用いることができる。
//元の値は２５４．５未満であることが保証されるため、クランプを完全に回避することができる。
int LDRorigR=(int)(rOrigProcessed+0.5);
int LDRorigG=(int)(gOrigProcessed+0.5);
int LDRorigB=(int)(bOrigProcessed+0.5);
int LDRcopyR=(int)dMin(rCopyProcessed+0.5,255.5);
int LDRcopyG=(int)dMin(gCopyProcessed+0.5,255.5);
int LDRcopyB=(int)dMin(bCopyProcessed+0.5,255.5);
m_sse[R_COMP]+=(LDRorigR-LDRcopyR)*(LDRorigR-LDRcopyR);
m_sse[G_COMP]+=(LDRorigG-LDRcopyG)*(LDRorigG-LDRcopyG);
m_sse[B_COMP]+=(LDRorigB-LDRcopyB)*(LDRorigB-LDRcopyB);
}
numpixcels+=(cMaxInt-cMinInt+1);
}
sse=m_sse[R_COMP]+m_sse[G_COMP]+m_sse[B_COMP];
mse=sse/(3.0*numPixcels);
mPSRN=10*log((255*255)/mse/log(10);
return mPSRN;
}
【０１０５】
このコードにおいて、元のＨＤＲビデオフレームの線形光ＲＧＢ値は、それぞれ、ｉｎｐ０Ｃｏｍｐ０［ｘ］，ｉｎｐ０Ｃｏｍｐ１［ｘ］及びｉｎｐ０Ｃｏｍｐ２［ｘ］において得られる。圧縮されたＨＤＲビデオフレーム、すなわち、再構成されたＨＤＲビデオフレームのための対応する値は、それぞれｉｎｐ１Ｃｏｍｐ０［ｘ］、ｉｎｐ２Ｃｏｍｐ１［ｘ］及びｉｎｐ１Ｃｏｍｐ２［ｘ］において得られる。
【０１０６】
クランプされた値は、元のＨＤＲビデオフレームの場合、それぞれｒＯｒｉｇ、ｇＯｒｉｇ、ｂＯｒｉｇにおいて得られ、圧縮されたＨＤＲビデオフレーム、すなわち、再構成されたＨＤＲビデオフレームの場合、それぞれｒＣｏｐｙ、ｇＣｏｐｙ、ｂＣｏｐｙにおいて得られる。
【０１０７】
露出値は、元のＨＤＲビデオフレームの場合、それぞれｒＯｒｉｇＰｒｏｃｅｓｓｅｄ、ｇＯｒｉｇＰｒｏｃｅｓｓｅｄ及びｂＯｒｉｇＰｒｏｃｅｓｅｄにおいて得られ、圧縮されたＨＤＲビデオフレーム、すなわち、再構成されたＨＤＲビデオフレームの場合、それぞれｒＣｏｐｙＰｒｏｃｅｓｓｅｄ、ｇＣｏｐｙＰｒｏｃｅｓｓｅｄ及びｂＣｏｐｙＰｒｏｃｅｓｓｅｄにおいて得られる。
【０１０８】
ＬＤＲ値は、元のＨＤＲビデオフレームの場合、ＬＤＲｏｒｉｇＲ、ＬＤＲｏｒｉｇＧ及びＬＤＲｏｒｉｇＢにおいて得られ、圧縮されたＨＤＲビデオフレーム、すなわち、再構成されたＨＤＲビデオフレームの場合、ＬＤＲｃｏｐｙＲ、ＬＤＲｃｏｐｙＧ、ＬＤＲｃｏｐｙＢにおいて得られる。
【０１０９】
最終的なｍＰＳＮＲ値はｍＰＳＮＲ変数において得られる。
【０１１０】
提案される実施形態により、通常用いられる指数関数呼び出し及び対数関数呼び出しの数を低減することによって、大幅なスピードアップが得られる。また、提案される実施形態は、いくつかの値が特定の範囲内にあることが保証され、これによって、クランプ、すなわちクリップ演算及び丸め演算を多くの場合に回避することができるか又は大幅に簡略化することができることを利用する。
【０１１１】
１つの態様によれば、単一の乗算を用いて以前の露出値から露出値ＲＰＣ（ｘ，ｙ）が計算される。露出値を用いてｍＰＳＮＲ値を計算する。好ましい実施形態では、露出値ＲＰＣ（ｘ，ｙ）は、定数α＝２（１／γ）との乗算を用いて直前の露出値ＲＰＣ−１（ｘ，ｙ）からＲＰＣ（ｘ，ｙ）＝αＲＰＣ−１（ｘ，ｙ）として計算される。
【０１１２】
これは、ｅｘｐ（・）及びｌｏｇ（・）によって実施されるコストのかかる冪関数を用いて各露出値を計算する技術と対照的である。
【０１１３】
このため、定数と以前に計算された露出値との間の単一の乗算のみを用いて露出値が計算される、マルチ露出ピーク信号対雑音比（ｍＰＳＮＲ）尺度を計算する方法が提案される。
【０１１４】
例示される実施形態では、赤色成分Ｒを用いて色空間を例示するが、当業者であれば、実施形態は、緑色Ｇ及び青色Ｂ、並びにＹＣｂＣｒ、ＹＵＶ、Ｌａｂ、ＸＹＺ等の他の色空間にも有効であることを認識するであろう。
【０１１５】
別の実施形態によれば、露出値ＲＰＣ（ｘ，ｙ）は、０．５の加算及びキャスティング演算を用いることによってＬＤＲ値ＲＬＤＲＣ（ｘ，ｙ）に変換される。これは、通常、実行するのにはるかに長い時間がかかる、複数の条件文であるｉｆ文を含む丸め演算及びクランピング演算と対照的である。これは、元のビデオフレームに対して有効であり得る。
【０１１６】
更に別の態様によれば、露出値ＲＰＣ（ｘ，ｙ）は、０．５の加算、ｍｉｎ関数及びキャスティング演算を用いることによってＬＤＲ値ＲＬＤＲＣ（ｘ，ｙ）に変換される。これは、通常、単一の条件文であるｉｆ文のみを含むｍｉｎ動作を実行するよりもはるかに長い時間がかかる、複数の条件文であるｉｆ文を伴う丸め演算及びクランピング演算と対照的である。これは、圧縮されたビデオフレームに対して有効であり得る。
【０１１７】
図６は、ＨＤＲビデオフレームを符号化する方法を示すフローチャートである。本方法は、ＨＤＲビデオフレームの少なくとも一部分の複数の圧縮されたバージョンを取得するために、ステップＳ２０において複数の圧縮モードに従ってＨＤＲビデオフレームの少なくとも一部分を圧縮することを含む。以下のステップＳ２１は、複数の圧縮モードの圧縮モードごとに、実施形態に従ってＨＤＲビデオフレームのそれぞれの評価尺度を決定することを含む。次のステップＳ２２は、複数の評価尺度に基づいて、ＨＤＲビデオフレームの少なくとも一部分の圧縮されたバージョンを、ＨＤＲビデオフレームの少なくとも一部分の符号化された表現として選択することを含む。
【０１１８】
図６に示す方法において、ＨＤＲビデオフレーム全部が圧縮若しくは符号化されるか、又はＨＤＲビデオフレームの一部が圧縮若しくは符号化される。この部分は、例えば、ＨＤＲビデオフレームのスライスに対応するか、又は実際にＨＤＲビデオフレーム内のピクセルブロックに対応する可能性がある。通常、ＨＤＲビデオフレーム又はその一部分を、複数の圧縮モード又は符号化モードに従って圧縮又は符号化することができる。例えば、Ｈ．２６４及びＨ．２６５（ＨＥＶＣ）によるビデオコーディングにおいて、画像又はピクチャとも呼ばれるビデオフレームは、複数のイントラ予測モードのうちの１つに従ってイントラフレームとして、又は様々なインター予測モードに従ってインターフレームとして符号化することができる。そのような場合、ステップＳ２０及びＳ２１は、そのような圧縮モード又は符号化モードごとに実行され、これについては図６の線Ｌ３によって概略的に表されている。
【０１１９】
これは、元のＨＤＲビデオフレーム１０又はその一部分が、圧縮されたＨＤＲビデオフレームを得るために、ステップＳ２０において第１の圧縮モード又は符号化モードに従って圧縮又は符号化されることを意味する。この圧縮されたＨＤＲビデオフレームは、次に、対応する解凍モード又は復号モードに従って解凍又は復号され、再構成されたＨＤＲビデオフレーム２０が得られる。次に、所与の元のＨＤＲビデオフレーム−再構成されたＨＤＲビデオフレームの対について、すなわち、現在の圧縮モード又は符号化モードについて評価尺度が計算される。
【０１２０】
この手順は、次に、それぞれの再構成されたＨＤＲビデオフレーム２０を与える他の利用可能な圧縮モード又は符号化モードについて実行される。異なる圧縮モード又は符号化モードにおいて、元のＨＤＲビデオフレーム１０は同じであることに留意されたい。したがって、通常、他の圧縮モード又は符号化モードが試験されるために、元のＨＤＲビデオフレーム１０内のピクセルの露出値を再計算する必要はない。このため、再構成されたＨＤＲビデオフレーム２０の露出値のみが、第２の後続の圧縮モード又は符号化モードについて計算される必要がある。ステップＳ２０における圧縮及びステップＳ２１における決定は、計算をスピードアップするために、異なる圧縮モードについて少なくとも部分的に並列に行うことができる。
【０１２１】
したがって、各試験された圧縮モード又は符号化モードの結果、ステップＳ２１において決定され、本明細書において説明されたようなそれぞれの評価尺度が得られる。次に、ステップＳ２２において、ＨＤＲビデオフレーム１０の圧縮されたバージョンのうちの１つ又はその一部分を、元のＨＤＲビデオフレーム１０の符号化された表現として選択するために、異なる評価尺度同士が比較される。
【０１２２】
特定の実施形態では、ステップＳ２２は、ＨＤＲビデオフレーム１０の少なくとも一部分の符号化された表現として、ＨＤＲビデオフレーム１０のこの少なくとも一部分の複数の圧縮されたバージョンの中から、最高の評価尺度を有するＨＤＲビデオフレーム１０の少なくとも一部分の圧縮されたバージョンを選択することを含む。
【０１２３】
このため、これによって、結果として最も高いか又は最も大きい評価尺度が得られる、圧縮モード又は符号化モードを用いて得られたＨＤＲビデオフレーム１０の少なくとも一部分の圧縮されたバージョンが、ＨＤＲビデオフレーム１０の少なくとも一部分の符号化された表現として選択され、用いられる。
【０１２４】
実施形態の別の態様は、ＨＤＲビデオフレームのための評価尺度を決定するためのエンコーダに関する。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算するように設定される。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算するように設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算するように更に設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算するように更に設定される。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値に変換するように設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換するように更に設定される。エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との間の差を表す誤差を計算するように更に設定される。また、エンコーダは、ＨＤＲビデオフレーム内の全てのピクセルについて、及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算するように設定される。
【０１２５】
一実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、０．５の加算及びキャスティング演算を用いてＬＤＲ値に変換するように設定される。
【０１２６】
一実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、０．５の加算、ｍｉｎ関数及びキャスティング演算を用いてＬＤＲ値に変換するように設定される。
【０１２７】
一実施形態では、ＨＤＲビデオフレーム内の各ピクセルは、赤色成分と、青色成分と、緑色成分とを含む。この実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、ｃｅｉｌ（γ×ｌｏｇ（０．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて最小露出パラメータ値を計算するように設定される。また、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、ｆｌｏｏｒ（γ×ｌｏｇ（２５４．５／２５５．０）／ｌｏｇ（２）−ｌｏｇ（ｃｏｌＭａｘ）／ｌｏｇ（２））に基づいて最大露出値を計算するように設定される。
【０１２８】
一実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、以下を計算するように設定される：
rOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rOrig))
gOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gOrig))
bOrigProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bOrig))
rCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×rCopy))
gCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×gCopy))
bCopyProcessed=255.0×exp((1.0/γ)×log(1.0×twoToC×bCopy))
【０１２９】
一実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、以下を計算するように設定される：
rOrigProcessed×=factor
gOrigProcessed×=factor
bOrigProcessed×=factor
rCopyProcessed×=factor
gCopyProcessed×=factor
bCopyProcessed×=factor
【０１３０】
一実施形態では、エンコーダは、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、以下を計算するように設定される：
LDRorigR=(int)(rOrigProcessed+0.5)
LDRorigG=(int)(gOrigProcessed+0.5)
LDRorigB=(int)(bOrigProcessed+0.5)
LDRcopyR=(int)dMin(rCopyProcessed+0.5,255.5)
LDRcopyG=(int)dMin(gCopyProcessed+0.5,255.5)
LDRcopyB=(int)dMin(bCopyProcessed+0.5,255.5)
【０１３１】
一実施形態では、エンコーダは、誤差を（ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ）×（ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ）＋（ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ）×（ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ）＋（ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙＢ）×（ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙＢ）として計算するように設定される。
【０１３２】
別の実施形態では、エンコーダは、誤差をｗＲ×（ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ）×（ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ）＋ｗＧ×（ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ）×（ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ）＋ｗＢ×（ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙＢ）×（ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙｂ）として計算するように設定される。ここで、ｗＲ、ｗＧ、ｗＢは重みである。
【０１３３】
更なる実施形態では、エンコーダは、誤差を｜ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ｜＋｜ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ｜＋｜ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙＢ｜として計算するように設定される。
【０１３４】
更に別の実施形態では、エンコーダは、誤差をｗＲ×｜ＬＤＲｏｒｉｇＲ−ＬＤＲｃｏｐｙＲ｜＋ｗＧ×｜ＬＤＲｏｒｉｇＧ−ＬＤＲｃｏｐｙＧ｜＋ｗＢ×｜ＬＤＲｏｒｉｇＢ−ＬＤＲｃｏｐｙＢ｜として計算するように設定される。
【０１３５】
一実施形態では、エンコーダは、平均二乗誤差を、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出パラメータ値についての平均誤差として計算するように設定される。この実施形態では、エンコーダはまた、平均二乗誤差に基づいて評価尺度を計算するように設定される。
【０１３６】
一実施形態では、エンコーダは、評価尺度を平均二乗誤差のピーク信号対雑音比として１０×ｌｏｇ（（２５５×２５５）／ＭＳＥ）／ｌｏｇ（１０）として計算するように設定される。
【０１３７】
本明細書において説明する方法及び配置は、様々な形で実施し、組み合わせ、再配置することができることが理解されよう。
【０１３８】
例えば、実施形態は、ハードウェアにおいて、又は適切な処理回路によって実行するためのソフトウェアにおいて、又はこれらの組合せで実施することができる。
【０１３９】
本明細書に記載されるステップ、関数、手順、モジュール及び／又はブロックは、汎用電子回路及び特定用途向け回路の双方を含む、ディスクリート回路又は集積回路技術等の任意の従来技術を用いてハードウェアで実施することができる。
【０１４０】
代替的に又は補完するものとして、本明細書に記載されるステップ、関数、手順、モジュール及び／又はブロックのうちの少なくともいくつかを、１つ又は複数のプロセッサ又は処理装置等の適切な処理回路によって実行するためのコンピュータプログラム等のソフトウェアにおいて実施することができる。
【０１４１】
処理回路の例は、限定ではないが、１つ又は複数のマイクロプロセッサ、１つ又は複数のデジタル信号プロセッサ（ＤＳＰ）、１つ又は複数の中央処理装置（ＣＰＵ）、ビデオアクセラレーションハードウェア、及び／又は１つ若しくは複数のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）若しくは１つ若しくは複数のプログラマブルロジックコントローラ（ＰＬＣ）等の任意の適切なプログラマブル論理回路を含む。
【０１４２】
提案される技術が実施される任意の従来のデバイス又は装置の汎用処理機能を再利用することが可能であり得ることも理解されるべきである。例えば、既存のソフトウェアを再プログラムすることによって、又は新たなソフトウェアコンポーネントを追加することによって、既存のソフトウェアを再利用することも可能であり得る。
【０１４３】
図７は、一実施形態によるプロセッサメモリ実施に基づくエンコーダ１００の一例を示す概略ブロック図である。この特定の例では、エンコーダ１００はプロセッサ１０１及びメモリ１０２を備える。メモリ１０２は、プロセッサ１０１によって実行可能な命令を含む。プロセッサ１０１は、初期露出値を計算し、露出値を計算し、露出値をＬＤＲ値に変換し、誤差を計算し、評価尺度を計算するように動作可能である。
【０１４４】
オプションで、エンコーダ１００は、通信回路の説明のための例として、入出力装置１０３も備えることができる。入出力装置１０３は、他のデバイス及び／又はネットワークノードとの有線及び／又は無線通信のための機能も含むことができる。特定の例では、入出力装置１０３は、１つ又は複数の他のノードとの、情報の送信及び／又は受信を含む通信のための無線回路に基づくことができる。入出力回路１０３は、プロセッサ１０１及び／又はメモリ１０２と相互接続することができる。例として、入出力装置１０３は、以下のもの：受信機、送信機、送受信機、入出力（Ｉ／Ｏ）回路、入力ポート及び／又は他のポート、のうちの任意のものを含むことができる。
【０１４５】
特定の実施形態では、入出力装置１０３は、符号化又は圧縮されるＨＤＲビデオフレームを受信するように設定され、符号化又は圧縮されたＨＤＲビデオフレームを含むビットストリームを出力する。
【０１４６】
図８は、一実施形態によるハードウェア回路実装に基づく、エンコーダ１１０の別の例を示す概略的なブロック図である。適切なハードウェア回路の特定の例は、１つ又は複数の適切に設定された、又は場合によっては再設定可能な電子回路、例えば特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、又は適切なレジスタ（ＲＥＧ）及び／若しくはメモリ装置（ＭＥＭ）と接続して特殊な機能を実行するように相互接続されたディスクリート論理ゲート及び／若しくはフリップフロップに基づく回路等の任意の他のハードウェアロジックを含む。
【０１４７】
図９は、適切なメモリ装置１２１と接続したプロセッサ１２２、１２３及びハードウェア回路１２４、１２５の双方の組合せに基づく、エンコーダ１２０の更に別の例を示す概略的なブロック図である。エンコーダ１２０は、１つ又は複数のプロセッサ１２２、１２３と、ソフトウェア（ＳＷ）及びデータのためのストレージを含むメモリ１２１と、ＡＳＩＣ及び／又はＦＰＧＡ等のハードウェア回路１２４、１２５の１つ又は複数のユニットとを備える。このため、全体的な機能は、１つ又は複数のプロセッサ１２２、１２３における実行のためにプログラムされたソフトウェアと、ＡＳＩＣ及び／又はＦＰＧＡ等の、１つ又は複数の事前に設定されるか又は場合によっては再設定可能なハードウェア回路１２４、１２５との間で分割される。実際のハードウェア−ソフトウェア間の分割は、処理速度、実装コスト及び他の要件を含む複数の要因に基づいてシステム設計者によって決めることができる。
【０１４８】
図１０は、一実施形態による、ユーザ機器（ＵＥ）２００のコンピュータ実装の一例を示す概略図である。この特定の例では、本明細書に記載されるステップ、機能、手順、モジュール及び／又はブロックの少なくともいくつかがコンピュータプログラム２４０において実施される。コンピュータプログラム２４０は、１つ又は複数のプロセッサ２１０を含む処理回路によって実行されるようにメモリ２４０内にロードされる。プロセッサ２１０及びメモリ２２０は通常のソフトウェア実行を可能にするように互いに相互接続される。オプションの入出力（Ｉ／Ｏ）装置２３０も、符号化若しくは圧縮されるＨＤＲビデオフレームの入力、及び／又は符号化若しくは圧縮されるＨＤＲビデオフレームのビットストリームの出力を可能にするように、プロセッサ２１０及び／又はメモリ２２０に相互接続することができる。
【０１４９】
「プロセッサ」という用語は、プログラムコード又はコンピュータプログラム命令を実行して、特定の処理、決定又は計算タスクを行うことが可能な任意のシステム又はデバイスとして汎用的な意味で解釈されるべきである。
【０１５０】
このため、１つ又は複数のプロセッサ２１０を備える処理回路は、コンピュータプログラム２４０を実行するとき、本明細書に説明した処理タスク等の明確に定義された処理タスクを行うように設定される。
【０１５１】
処理回路は、上記で記載したステップ、関数、手順及び／又はブロックを実行することのみに専用である必要はなく、他のタスクも実行することができる。
【０１５２】
特定の実施形態において、コンピュータプログラム２４０は、プロセッサ２１０によって実行されると、プロセッサ２１０に、ＨＤＲビデオフレーム内のピクセルごとに、最小露出値パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算させる命令を含む。また、プロセッサ２１０は、ＨＤＲビデオフレーム内のピクセルごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算させられる。プロセッサ２１０は更に、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算させられる。プロセッサ２１０は更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算させられる。また、プロセッサ２１０は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値に変換させられる。プロセッサ２１０は更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換させられる。プロセッサ２１０は更に、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との間の差を表す誤差を計算させられる。また、プロセッサ２１０は、ＨＤＲビデオフレーム内の全てのピクセルについて、及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算させられる。
【０１５３】
提案される技術は、コンピュータプログラム２４０を備えるキャリア２５０も提供する。キャリア２５０は、電子信号、光信号、電磁信号、磁気信号、電気信号、無線信号、マイクロ波信号又はコンピュータ可読ストレージ媒体のうちの１つである。
【０１５４】
例として、ソフトウェア又はコンピュータプログラム２４０は、通常、コンピュータ可読媒体２５０、特に不揮発性媒体において搬送又は記憶されるコンピュータプログラム製品として実現することができる。コンピュータ可読媒体２５０は、限定ではないが、読出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、コンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）、ブルーレイディスク、ユニバーサルシリアルバス（ＵＳＢ）メモリ、ハードディスクドライブ（ＨＤＤ）ストレージデバイス、フラッシュメモリ、磁気テープ、又は任意の他の従来のメモリデバイスを含む１つ又は複数の取外し可能又は非取外し可能メモリデバイスを含むことができる。このため、コンピュータプログラム２４０は、図１０のユーザ機器２００によって表されるコンピュータ又は等価な処理デバイスの動作メモリ内に、その処理回路によって実行されるようにロードすることができる。
【０１５５】
本明細書において提示される１つ又は複数の流れ図は、１つ又は複数のプロセッサによって実行されるとき、１つ又は複数のコンピュータ流れ図とみなすことができる。対応するエンコーダは、機能モジュールのグループとして定義することができ、プロセッサによって実行される各ステップは機能モジュールに対応する。この場合、機能モジュールは、プロセッサ上で実行されるコンピュータプログラムとして実装される。
【０１５６】
このため、メモリ内に常駐するコンピュータプログラムは、プロセッサによって実行されると、本明細書に記載されるステップ及び／又はタスクの少なくとも一部を実行するように設定される適切な機能モジュールとして編成することができる。
【０１５７】
図１１は、ＨＤＲビデオフレームのための評価尺度を決定するためのエンコーダ１３０の一例を示す概略図である。エンコーダ１３０は、ＨＤＲビデオフレーム内のピクセルごとに、ｉ）最小露出パラメータ値を用いてＨＤＲビデオフレーム内のピクセルの初期露出値を計算し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの初期露出値を計算するための初期露出値計算機１３１を備える。また、エンコーダ１３０は、ＨＤＲビデオフレーム内のピクセルごとに、また最小露出パラメータ値から開始して最大露出パラメータ値までの露出パラメータ値ごとに、ｉ）ＨＤＲビデオフレーム内のピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレーム内のピクセルの露出値を計算し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの以前に計算された露出値に定数を乗算したものから、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を計算するための露出値計算機１３２も備える。エンコーダ１３０は、ＨＤＲビデオフレーム内のピクセルごとに、また、露出パラメータ値ごとに、ｉ）ＨＤＲビデオフレーム内のピクセルの露出値を、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値に変換し、ｉｉ）ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルの露出値を、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値に変換するための露出値変換器１３３を更に備える。エンコーダ１３０は、ＨＤＲビデオフレーム内のピクセルごとに、また露出パラメータ値ごとに、ＨＤＲビデオフレーム内のピクセルのＬＤＲ値と、ＨＤＲビデオフレームの圧縮に続いて取得されるＨＤＲビデオフレームのバージョンにおける対応するピクセルのＬＤＲ値との差を表す誤差を計算するための誤差計算機１３４を更に備える。エンコーダ１３０は、ＨＤＲビデオフレーム内の全てのピクセル及び全ての露出パラメータ値について、誤差に基づいて評価尺度を計算するための評価尺度計算機１３５を更に備える。
【０１５８】
実施形態の更なる態様は、図１２に示すようなＨＤＲビデオフレーム符号化デバイス１４０に関する。ＨＤＲビデオフレーム符号化デバイス１４０は、上記で記載され、図７〜図９、図１１のうちの任意のものにおいて開示された実施形態のエンコーダ１００、１１０、１２０、１３０を備える。エンコーダ１００、１１０、１２０、１３０は、ＨＤＲビデオフレームの少なくとも一部分の複数の圧縮されたバージョンを取得するために、複数の圧縮モードに従ってＨＤＲビデオフレームの少なくとも一部分を圧縮し、複数の圧縮モードの圧縮モードごとに、ＨＤＲビデオフレームのそれぞれの評価尺度を決定するように設定される。また、ＨＤＲビデオフレーム符号化デバイス１４０は、複数の評価尺度に基づいて、ＨＤＲビデオフレームの少なくとも一部分の圧縮されたバージョンを、ＨＤＲビデオフレームの少なくとも一部分の符号化された表現として選択するように設定される選択器１４１も備える。
【０１５９】
一実施形態では、選択器１４１は、ＨＤＲビデオフレーム１０の少なくとも一部分の符号化された表現として、ＨＤＲビデオフレームのこの少なくとも一部分の複数の圧縮されたバージョンの中から、最高の評価尺度を有するＨＤＲビデオフレームの圧縮されたバージョンを選択するように設定される。
【０１６０】
選択器１４１は、図７に示すようなエンコーダ１００、図８に示すようなハードウェア要素、図９に示すようなソフトウェア＋プロセッサ及びハードウェア要素の組合せの他の機能と併せて、又は図１１に示すような機能モジュールとして、プロセッサによって実施することができる。
【０１６１】
ＨＤＲビデオフレーム符号化デバイス１４０は、プロセッサによって実行可能な命令を含むコンピュータプログラムとして更に実施することができる。
【０１６２】
ネットワークノード及び／又はサーバ等の、リソースがネットワークを介して遠隔ロケーションにサービスとして送達されるネットワークデバイスにおいてコンピューティングサービスを提供することがますます一般的になっている。例として、これは、本明細書において記載されるような機能を、１つ又は複数の別個の物理ノード又はサーバに分散又は再割当てすることができることを意味する。機能は、別個の物理ノード、すなわちいわゆるクラウド内に配置することができる１つ又は複数の協働動作する物理マシン及び／又は仮想マシンに再配置又は分散することができる。これは、場合によってはクラウドコンピューティングとも呼ばれる。クラウドコンピューティングは、ネットワーク、サーバ、ストレージ、アプリケーション及び汎用サービス又はカスタマイズされたサービス等の設定可能なコンピューティングリソースのプールへのユビキタスなオンデマンドネットワークアクセスを可能にするためのモデルである。
【０１６３】
図１３は、１つ又は複数のクラウドベースのネットワークデバイス３００と協働する、アクセスネットワーク３２０及び／又はコアネットワーク３３０及び／又は運用及びサポートシステム（ＯＳＳ）３４０を含む無線通信システムの一例を示す概略図である。そのような場合、本明細書において開示されるようなＨＤＲビデオフレームのための評価尺度の決定及び／又はＨＤＲビデオフレームの符号化は、ネットワーク３１０を通じて相互接続された１つ又は複数のそのようなネットワークデバイス３００において実施することができる。
【０１６４】
ネットワークデバイス３００は、通常、ネットワーク３１０において他の電子デバイスに通信可能に接続されている電子デバイスとみなすことができる。
【０１６５】
例として、ネットワークデバイス３００は、ハードウェア、ソフトウェア又はこれらの組合せにおいて実施することができる。例えば、ネットワークデバイス３００は、専用ネットワークデバイス又は汎用ネットワークデバイス又はこれらのハイブリッドとすることができる。
【０１６６】
様々な態様による方法は、デバイス、例えばエンコーダによって実施することができる。更に、デバイスは、ビデオカメラ、携帯電話、スマートフォン等のユーザデバイスとすることができる。このため、そのようなデバイスは、様々な実施形態及び態様に従って説明される方法ステップを実行するように設定される。
【０１６７】
デバイスは、命令、例えば本方法を実行するためのソフトウェアコードを記憶するためのメモリと、命令を実行するように設定されるプロセッサとを備えることができる。
【０１６８】
上記で記載した実施形態は、本発明のいくつかの説明のための例として理解される。当業者であれば、本発明の範囲から逸脱することなく、様々な変更、組合せ及び変形を実施形態に対し行うことができることが理解するであろう。特に、異なる実施形態における異なる部分的解決策を、技術的に可能な場合、他の設定において組み合わせることができる。一方、本発明の範囲は、添付の特許請求の範囲によって定義される。
【０１６９】
参考文献
［１］Ｍｕｎｋｂｅｒｇら「Ｈｉｇｈ  ｄｙｎａｍｉｃ  ｒａｎｇｅ  ｔｅｘｔｕｒｅ  ｃｏｍｐｒｅｓｓｉｏｎ  ｆｏｒ  ｇｒａｐｈｉｃｓ  ｈａｒｄｗａｒｅ」ＡＣＭ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｇｒａｐｈｉｃｓ（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＡＭ  ＳＩＧＧＲＡＰＨ  ２００６，ｖｏｌ．２５，ｎｏ．３，２００６）
【図１】
2017500792.tif 000006
【図２】
2017500792.tif 000007
【図３】
2017500792.tif 000008
【図４】
2017500792.tif 000009
【図５】
2017500792.tif 000010
【図６】
2017500792.tif 000011
【図７】
2017500792.tif 000012
【図８】
2017500792.tif 000013
【図９】
2017500792.tif 000014
【図１０】
2017500792.tif 000015
【図１１】
2017500792.tif 000016
【図１２】
2017500792.tif 000017
【図１３】
2017500792.tif 000018
【国際調査報告】
2017500792.tif 000019
2017500792.tif 000020
2017500792.tif 000021
2017500792.tif 000022