(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-12
(45)【発行日】2024-04-22
(54)【発明の名称】SDRからHDRへのアップコンバートのための適応的ローカルリシェーピング
(51)【国際特許分類】
H04N 19/85 20140101AFI20240415BHJP
【FI】
H04N19/85
(21)【出願番号】P 2023520042
(86)(22)【出願日】2021-10-01
(86)【国際出願番号】 US2021053241
(87)【国際公開番号】W WO2022072884
(87)【国際公開日】2022-04-07
【審査請求日】2023-05-29
(32)【優先日】2020-10-02
(33)【優先権主張国・地域又は機関】EP
(32)【優先日】2020-10-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ホワーン,ツォン-ウエイ
(72)【発明者】
【氏名】スゥ,グワン-ミーン
(72)【発明者】
【氏名】ガドジル,ニーラジ,ジェイ.
【審査官】岩井 健二
(56)【参考文献】
【文献】国際公開第2020/068666(WO,A1)
【文献】国際公開第2019/023202(WO,A1)
【文献】国際公開第2017/053432(WO,A1)
【文献】国際公開第2017/024042(WO,A2)
【文献】国際公開第2017/011636(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 19/00 ー 19/98
(57)【特許請求の範囲】
【請求項1】
第1のダイナミックレンジよりも低い第2のダイナミックレンジの入力画像から前記第1のダイナミックレンジの画像を生成するための方法であって、
前記入力画像におけるルマコードワードを使用して、前記第2のダイナミックレンジの入力画像についてのグローバルリシェーピング関数を選択するためのグローバルインデックス値を生成するステップであり、前記グローバルインデックス値は、多項式回帰モデルを使用することによって前記入力画像におけるルマSDRコードワードの平均値から予測されたL-mid値である、ステップと、
画像フィルタリングを、ピクセル単位の精度までの複数の領域を含む前記入力画像に適用して、フィルタリング画像を生成し、各領域について、前記入力画像のそれぞれの領域におけるローカル輝度レベルの尺度を提供する前記フィルタリング画像のフィルタリング値を生成するステップと、
前記グローバルインデックス値及び前記フィルタリング画像の前記フィルタリング値を使用して、前記入力画像のそれぞれの領域についての特定のローカルリシェーピング関数を選択するためのローカルインデックス値を生成するステップであり、各ローカルインデックス値は、それぞれの領域の平均輝度レベルを表すローカルL1-mid値であり、各領域の前記ローカルインデックス値を生成することは、
対応するフィルタリング値から推定された前記ローカル輝度レベルとそれぞれの領域の個々のピクセルの輝度レベルとの間の差を決定し、
前記決定された差からローカルL1-mid調整値を推定し、
前記グローバルインデックス値及び前記ローカルL1-mid調整値から、前記ローカルインデックス値を表す前記ローカルL1-mid値を予測することを含む、ステップと、
前記ローカルインデックス値を使用して選択された前記特定のローカルリシェーピング関数で前記入力画像を少なくとも部分的にリシェーピングすることによって、前記第1のダイナミックレンジのリシェーピングされた画像を生成させるステップであり、前記ローカルインデックス値を使用して選択された前記特定のローカルリシェーピング関数は、前記入力画像における前記ルマコードワードをHDR画像におけるルマコードワードにリシェーピングする、ステップと
を含む方法。
【請求項2】
前記ローカルインデックス値はローカルインデックス値マップで表される、請求項1に記載の方法。
【請求項3】
前記第1のダイナミックレンジはハイダイナミックレンジを表し、前記第2のダイナミックレンジは、前記ハイダイナミックレンジよりも低い標準ダイナミックレンジを表す、請求項1又は2に記載の方法。
【請求項4】
前記ローカルインデックス値は、前記入力画像におけるルマコードワード及びクロマコードワードを前記リシェーピングされた画像におけるクロマコードワードにマッピングする特定のローカルリシェーピングマッピングを選択するために更に使用される、請求項1乃至3のうちいずれか1項に記載の方法。
【請求項5】
前記ローカルインデックス値は、トレーニングデータセット内のトレーニング画像ペアでトレーニングされた予測モデルを使用して、前記グローバルインデックス値及び前記フィルタリング値から生成され、前記トレーニング画像ペアのそれぞれは、前記第1のダイナミックレンジのトレーニング画像及び前記第2のダイナミックレンジのトレーニング画像を含み、前記第1のダイナミックレンジの前記トレーニング画像及び前記第2のダイナミックレンジの前記トレーニング画像は、同じ視覚的意味内容を表す、請求項1乃至4のうちいずれか1項に記載の方法。
【請求項6】
前記特定のローカルリシェーピング関数のそれぞれは、複数の事前ロードされたリシェーピング関数の中から、前記ローカルインデックス値のそれぞれのローカルインデックス値に基づいて選択される、請求項1乃至5のうちいずれか1項に記載の方法。
【請求項7】
前記リシェーピングされた画像は、前記グローバルインデックス値及び前記ローカルインデックス値を生成したビデオエンコーダによって生成される、請求項1乃至6のうちいずれか1項に記載の方法。
【請求項8】
前記リシェーピングされた画像は、前記グローバルインデックス値及び前記ローカルインデックス値を生成したビデオエンコーダ以外の受信側デバイスによって生成される、請求項1乃至7のうちいずれか1項に記載の方法。
【請求項9】
前記フィルタリング画像は、カーネルサイズについて複数のレベルでの画像フィルタリングによって生成された複数の個別のフィルタリング画像の加重和である、請求項1乃至8のうちいずれか1項に記載の方法。
【請求項10】
前記画像フィルタリングは、ハローアーティファクトを低減するために、ガイダンス画像と共に前記入力画像に適用される、請求項1乃至9のうちいずれか1項に記載の方法。
【請求項11】
前記画像フィルタリングは、ガイド付き画像フィルタリング、非ガイド付き画像フィルタリング、マルチレベルフィルタリング、エッジ保存フィルタリング、マルチレベルエッジ保存フィルタリング、非マルチレベルエッジ保存フィルタリング、マルチレベル非エッジ保存フィルタリング又は非マルチレベル非エッジ保存フィルタリングのうち1つを表す、請求項1乃至10のうちいずれか1項に記載の方法。
【請求項12】
前記ローカルインデックス値は、ソフトクリッピング関数に少なくとも部分的に基づいて生成され、前記ソフトクリッピング関数は、前記ルマコードワードと前記フィルタリング値との間のスケーリングされた差を入力として受け入れ、前記ソフトクリッピング関数は、前記入力画像の暗いピクセルについて最小値以上の出力値を生成するように特に選択される、請求項1乃至11のうちいずれか1項に記載の方法。
【請求項13】
前記画像フィルタリングは、ガイド付き画像で適用されるガイド付き画像フィルタリングを表し、前記ガイド付き画像は、前記ガイド付き画像の1つ以上のチャネルのうち1つにおける複数のピクセル位置について計算された画像勾配の逆数によってそれぞれ重み付けされた、前記複数のピクセル位置について計算された高周波数特徴値を含む、請求項1乃至12のうちいずれか1項に記載の方法。
【請求項14】
プロセッサを含み、請求項1乃至13のうちいずれか1項に記載の方法を実行するように構成された装置。
【請求項15】
1つ以上のプロセッサで請求項1乃至13のうちいずれか1項に記載の方法を実行するためのコンピュータ実行可能命令を格納した非一時的なコンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願への相互参照]
本出願は、2020年10月2日に出願された米国仮出願第63/086,699号及び欧州特許出願第20199785.5号に対する優先権を主張し、それぞれの全内容を参照により援用する。
【0002】
[技術分野]
本開示は、一般的に画像処理操作に関する。より具体的には、本開示の実施形態は、ビデオコーデックに関する。
【背景技術】
【0003】
ここで使用される「ダイナミックレンジ」(DR, dynamic range)という用語は、例えば、最も暗い黒(ダーク)から最も明るい白(ハイライト)までの画像における強度の範囲(例えば、輝度、ルマ)を知覚する人間視覚システム(HVS, human visual system)の能力に関連し得る。この意味で、DRは「シーン関連(scene-referred)」の強度に関連する。DRはまた、特定の幅の強度範囲を適切に或いは近似的にレンダリングするディスプレイデバイスの能力に関連し得る。この意味で、DRは「ディスプレイ関連(display-referred)」の強度に関連する。特定の意味がここでの説明におけるいずれかの点で特定の意義を有すると明示的に指定されていない限り、用語はどちらの意味でも使用される可能性があり、例えば互換的に使用される可能性があると推測されるべきである。
【0004】
ここで使用されるハイダイナミックレンジ(HDR, high dynamic range)という用語は、人間視覚システム(HVS)の約14~15桁以上の大きさに及ぶDR幅に関連する。実際には、人間が強度範囲内の広範囲の幅を同時に知覚し得るDRは、HDRとの関連では、いくらか切り捨てられてもよい。ここで使用される拡張ダイナミックレンジ(EDR, enhanced dynamic range)又は視覚ダイナミックレンジ(VDR, visual dynamic range)という用語は、眼球運動を含む人間視覚システム(HVS, human visual system)によってシーン又は画像において知覚可能なDRに個別に或いは互換的に関連してもよく、シーン又は画像にわたる何らかの光適応変化を可能にする。ここで使用されるEDRは5~6桁の大きさに及ぶDRに関連してもよい。場合によっては、HDRが参照する真のシーンとの関連ではやや狭いが、それにもかかわらずEDRは広いDR幅を表し、HDRとも呼ばれてもよい。
【0005】
実際には、画像は色空間の1つ以上の色成分(例えば、ルマY並びにCb及びCr)を含み、各色成分はピクセル当たりnビット(例えば、n=8)の精度で表される。非線形輝度コーディング(例えば、ガンマ符号化)を使用すると、n≦8の画像(例えば、カラー24ビットJPEG画像)の画像は標準ダイナミックレンジの画像と見なされ、n>8の画像は拡張ダイナミックレンジの画像と見なされてもよい。
【0006】
所与のディスプレイについての基準電気光伝達関数(EOTF, electro-optical transfer function)は、ディスプレイによって生成される出力スクリーン色値(例えば、スクリーン輝度)への入力ビデオ信号の色値(例えば、輝度)の間の関係を特性化する。例えば、ITU Rec. ITU-R BT. 1886,“Reference electro-optical transfer function for flat panel displays used in HDTV studio production”(2011年3月)は、この全内容を参照により援用するが、フラットパネルディスプレイのための基準EOTFを定義している。ビデオストリームが与えられると、そのEOTFに関する情報が(画像)メタデータとしてビットストリームに埋め込まれてもよい。ここでの「メタデータ」という用語は、符号化ビットストリームの一部として伝送される補助情報に関連し、デコーダが復号画像をレンダリングするのを支援する。このようなメタデータは、ここで説明するように、色空間又は色域の情報、基準ディスプレイパラメータ及び補助信号パラメータを含んでもよいが、これらに限定されない。
【0007】
ここで使用される「PQ」という用語は、知覚輝度振幅量子化を示す。人間視覚システムは、非常に非線形な方法で増加する光レベルに応答する。人間の刺激を見る能力は、その刺激の輝度、刺激のサイズ、刺激を構成する空間周波数、及び刺激を見ている特定の時点に目が適応している輝度レベルによって影響される。いくつかの実施形態では、知覚量子化関数は、線形入力グレーレベルを、人間視覚システムにおけるコントラスト感度閾値により良く一致する出力グレーレベルにマッピングする。例示的なPQマッピング関数は、SMPTE ST 2084:2014“High Dynamic Range EOTF of Mastering Reference Displays”(以下「SMPTE」)に記載されており、この全内容を参照により援用するが、固定の刺激サイズが与えられると、全ての輝度レベル(例えば、刺激レベル等)について、その輝度レベルでの最小の可視コントラストステップが、最も感度の高い適応レベル及び最も感度の高い空間周波数に従って(HVSモデルに従って)選択される。
【0008】
200~1,00cd/m2又はnitの輝度をサポートするディスプレイは、EDR(又はHDR)に関連して、標準ダイナミックレンジ(SDR, standard dynamic range)とも呼ばれる下位ダイナミックレンジ(LDR, lower dynamic range)の典型例である。EDRコンテンツは、より高いダイナミックレンジ(例:1,000nit~5,000nit以上)をサポートするEDRディスプレイに表示されてもよい。このようなディスプレイは、高輝度能力(例えば、0~10,000nit以上)をサポートする代替EOTFを使用して定義されてもよい。このようなEOTFの例は、SMPTE 2084及びRec. ITU-R BT.2100, “Image parameter values for high dynamic range television for use in production and international programme exchange”(06/2017)に定義されている。ここで発明者によって認識されるように、入力ビデオコンテンツデータを、ハイダイナミックレンジ、高い局所コントラスト及び鮮やかな色を有する出力ビデオコンテンツに変換するための改善された技術が望まれている。
【0009】
このセクションに記載の手法は、追求され得る手法であるが、必ずしも以前に考案又は追求された手法であるとは限らない。したがって、特に明記されていない限り、このセクションに記載の手法のいずれかが、単にこのセクションに含まれることによって従来技術として適格であると仮定するべきではない。同様に、1つ以上の手法に関して特定された問題は、特に明記されていない限り、このセクションに基づいていずれかの従来技術で認識されていると仮定するべきではない。
【図面の簡単な説明】
【0010】
限定ではなく例示として、本発明の実施形態が添付図面の図に例示されており、図面において同様の参照番号は同様の要素を示す。
【
図1】ビデオ配信パイプラインの例示的なプロセスを示す。
【
図2A】ローカルリシェーピング(local reshaping)操作を適用するための例示的なフローを示す。
【
図2B】アップコンバートプロセスがローカルリシェーピング操作を通じてSDR画像をHDR画像に変換する例示的なフレームワーク又はアーキテクチャを示す。
【
図2C】マルチレベルエッジ保存フィルタリングを適用するための例示的なフローを示す。
【
図3B】調整及び修正後の例示的な基本リシェーピング関数を示す。
【
図3D】例示的なグローバルリシェーピング関数及びローカルリシェーピング関数を示す。
【
図3E】例示的なローカルリシェーピング関数を示す。
【
図3F】例示的なローカルリシェーピング関数を示す。
【
図3G】L1-mid値を予測するために使用される線形回帰モデルを調整するための例示的な非線形関数を示す。
【
図5】ここで説明するコンピュータ又はコンピューティングデバイスが実装され得る例示的なハードウェアプラットフォームの簡略化されたブロック図を示す。
【発明を実施するための形態】
【0011】
以下の説明では、説明の目的で、本開示の十分な理解を提供するために、多数の具体的な詳細が記載されている。しかし、本開示は、これらの具体的な詳細なしに実施されてもよいことは明らかである。他の場合にも、本開示を不要に妨げること、不明瞭にすること又は難読化することを回避するために、周知の構造及びデバイスは網羅的に記載されていない。
【0012】
ここで説明するローカルリシェーピング(local reshaping)技術は、SDR画像データのような比較的狭いダイナミックレンジの画像データを、強調したローカルコントラスト及び彩度を有するHDR画像データのようなより高いダイナミックレンジの画像データに(後方)リシェーピング又はアップコンバートするために実装できる。
【0013】
ここで使用される「アップコンバート(up-convert)」又は「(後方)リシェーピング((backward) reshape)」は、ここで説明する技術によるローカルリシェーピング操作、いくつかの他の手法によるグローバルリシェーピング操作等のようなリシェーピング操作を通じて、より低いダイナミックレンジの画像データをより高いダイナミックレンジの画像データに変換することを示す。
【0014】
グローバルリシェーピング(global reshaping)は、入力SDR画像のような入力画像の全てのピクセルに同じグローバルリシェーピング関数/マッピングを適用して、入力画像と同じ視覚的意味内容を描写する、対応する出力画像(リシェーピングされたHDR画像等)を生成するアップコンバート又は後方リシェーピング操作を示す。
【0015】
例えば、リシェーピングされたHDR画像におけるHDRルマ又は輝度コードワードは、入力SDR画像における全てのピクセルのSDRルマ又は輝度コードワードに、同じグローバルリシェーピング関数(同じ8ピース2次多項式(8-piece second order polynomial)又は同じ後方ルックアップテーブル(BLUT, backward look up table)等)を適用することから構成又はアップコンバートされてもよい。
【0016】
同様に、リシェーピングされたHDR画像におけるHDRクロマ又は色差コードワードは、入力SDR画像における全てのピクセルのSDRコードワード(ルマ及びクロマチャネル内)に、同じグローバルリシェーピングマッピング(MMR係数のセットで指定された同じ後方多変量重回帰(後方MMR又はBMMR)マッピング等)を適用することから構成又はアップコンバートされてもよい。
【0017】
例示的な後方リシェーピング操作は、2015年3月20日に出願された米国仮特許出願番号第62/136,402号(2018年1月18日に米国特許出願公開第2018/0020224号としても公開されている)及び2019年5月9日に出願されたPCT出願第PCT/US2019/031620号に記載されており、これらの全内容がここに完全に記載されているかのように、これらの全内容を参照により援用する。
【0018】
入力画像の全てのピクセルに同じリシェーピング関数又はマッピングを適用するグローバルリシェーピングとは対照的に、ローカルリシェーピングは、入力画像の異なるピクセルに異なるリシェーピング関数又はマッピングを適用するアップコンバート又は後方リシェーピング操作を示す。したがって、ローカルリシェーピングでは、入力画像の第1のピクセルに適用される第1のリシェーピング関数は、入力画像の第2の異なるピクセルに適用される第2のリシェーピング関数とは異なる関数でもよい。
【0019】
特定のリシェーピング関数は、特定のピクセルを含むローカル領域のローカル輝度レベルを有する入力画像の特定のピクセルに対して選択又は識別できる。ローカル輝度レベルは、ガイダンス画像によるマルチレベルエッジ保存フィルタリングのような画像フィルタリングで推定できる。ここで説明する技術では、ローカル輝度レベルを推定又は予測するために使用される画像フィルタリングは、ハローアーティファクト(halo artifact)のような視覚アーティファクトを低減又は防止する目的で、異なる視覚オブジェクト/文字/領域/セグメントの間の情報(例えば、ピクセル値、コードワード等)のリーク(leakage)を最小化するように実行できる。
【0020】
ここで説明するローカルリシェーピングは、入力画像の局所領域画像特性を考慮できる。異なるリシェーピング関数又はマッピングは、入力画像の全ての単一ピクセルまで局所化でき、出力画像におけるローカルコントラスト及び彩度(レベル)を強調し、全体的な出力画像をより高いローカルコントラスト比、より良い視聴者が知覚可能な画像の詳細、より鮮やかな色等にすることができる。
【0021】
ここで説明する例示的な実施形態は、第1のダイナミックレンジよりも低い第2のダイナミックレンジの入力画像から第1のダイナミックレンジの画像を生成することに関する。第2のダイナミックレンジの入力画像についてのグローバルリシェーピング関数を選択するためのグローバルインデックス値が生成される。グローバルインデックス値は、入力画像におけるルマコードワードを使用して生成される。画像フィルタリングが入力画像に適用され、フィルタリング画像が生成される。フィルタリング画像のフィルタリング値は、入力画像におけるローカル輝度レベルの尺度を提供する。ローカルインデックス値は、入力画像についての特定のローカルリシェーピング関数を選択するために生成される。ローカルインデックス値は、グローバルインデックス値及びフィルタリング画像のフィルタリング値を使用して生成される。ローカルインデックス値を使用して選択された特定のローカルリシェーピング関数で入力画像を少なくとも部分的にリシェーピングすることによって、第1のダイナミックレンジのリシェーピングされた画像が生成される。
【0022】
[例示的なビデオ配信処理パイプライン]
図1は、ビデオキャプチャ/生成からHDR又はSDRディスプレイまでの様々な段階を示すビデオ配信パイプライン(100)の例示的なプロセスを示す。例示的なHDRディスプレイは、テレビ、モバイルデバイス、ホームシアター等と連携して動作する画像ディスプレイを含んでもよいが、これらに限定されない。例示的なSDRディスプレイは、SDRテレビ、モバイルデバイス、ホームシアターディスプレイ、ヘッドマウントディスプレイデバイス、ウェアラブルディスプレイデバイス等を含んでもよいが、これらに限定されない。SDRからHDRへのアップコンバートは、エンコーダ/サーバ側(ビデオ圧縮前)又はデコーダ/再生側(ビデオ圧縮解除後)のいずれかで実行できる点に留意すべきである。再生側のSDRからHDRへのアップコンバートをサポートするために、
図1に示すもの以外の異なるシステム構成が使用されてもよい。
図1に示す処理コンポーネントによって使用されるもの以外の異なる画像メタデータフォーマットが、これらの異なるシステム構成で画像メタデータを伝達するために使用されてもよい。
【0023】
本発明の好ましい実施形態では、画像メタデータはL1メタデータを含む。ここで使用される「L1メタデータ(L1 metadata)」という用語は、ビデオコンテンツの特定の部分、例えば、入力フレーム又は画像に関連する最小(L1-min)、中間(L1-mid)及び最大(L1-max)輝度値のうち1つ以上を示す。L1メタデータはビデオ信号に関連する。L1メタデータを生成するために、ビデオコンテンツのピクセルレベルのフレーム毎の分析が、好ましくは符号化側で実行される。或いは、分析は復号側で実行されてもよい。分析は、分析パス、例えば、単一のフレーム又はシーンのような一連のフレームによってカバーされるビデオコンテンツの所定の部分にわたる輝度値の分布を記述する。L1メタデータは、単一のビデオフレーム及び/又はシーンのような一連のフレームをカバーする分析パスで計算されてもよい。L1メタデータは、L1メタデータが計算されておりビデオ信号に関連付けられているビデオコンテンツのそれぞれの部分に関連付けられたL1メタデータを一緒に形成する、分析パス中に導出される様々な値を含んでもよい。L1メタデータは、(i)ビデオコンテンツのそれぞれの部分における最低の黒レベルを表すL1-min値、(ii)ビデオコンテンツのそれぞれの部分にわたる平均輝度レベルを表すL1-mid値、及び(iii)ビデオコンテンツのそれぞれの部分における最高の輝度レベルを表すL1-max値のうち少なくとも1つを含む。好ましくは、L1メタデータは、各ビデオフレーム及び/又はビデオ信号に符号化された各シーンについて生成され、添付される。L1メタデータはまた、ローカルL1値と呼ばれる画像の領域についても生成されてもよい。L1メタデータは、RGBデータをルマ・クロマフォーマット(例えば、YCbCr)に変換し、次いで、Y平面で最小値、中間値(平均)及び最大値のうち少なくとも1つ以上を計算することによって計算されてもよく、或いは、RGB空間で直接計算されることもできる。
【0024】
いくつかの実施形態では、L1-min値は、アクティブ領域のみを考慮しつつ(例えば、灰色又は黒のバー、レターボックスバー等を除外することで)、ビデオコンテンツのそれぞれの部分(例えば、ビデオフレーム又は画像)のPQ符号化されたmin(RGB)値の最小値を示し、ここで、min(RGB)はピクセルの色成分値{R,G,B}の最小値を示す。L1-mid値及びL1-max値も同じように計算されてもよい。特に、実施形態では、L1-midは画像のPQ符号化されたmax(RGB)値の平均値を示し、L1-maxは画像のPQ符号化されたmax(RGB)値の最大値を示し、ここで、max(RGB)はピクセルの色成分値{R,G,B}の最大値を示す。いくつかの実施形態では、L1メタデータは[0,1]となるように正規化されてもよい。
【0025】
説明のみの目的で、
図1は、ここで説明するローカル後方リシェーピング技術を使用してサーバ側で実行されるSDR-HDRアップコンバートプロセスを図示又は描写するために使用される。
図1に示すように、エンコーダ/サーバ側でのSDRからHDRへのアップコンバートは、入力SDR画像を使用してローカルでリシェーピングされたHDR画像を生成する。入力SDR画像とローカルでリシェーピングされたHDR画像との組み合わせは、後方互換性のあるコーデック又は後方互換性のないコーデックによって、後方互換性のあるSDRビデオ信号又は後方互換性のないSDRビデオ信号を生成するために使用できる。いくつかの動作シナリオでは、
図1に示すように、ビデオ信号は、ローカルでリシェーピングされたHDR画像を前方にリシェーピングすることによって生成された、リシェーピング済みのSDR画像で符号化されてもよい。
【0026】
連続した入力SDR画像102のシーケンスのようなビデオフレームは、HDR画像生成ブロック105によって受信できる。これらのSDR画像(102)は、ビデオソースから受信されてもよく、或いは、ビデオデータストアから取得されてもよい。SDR画像(102)の一部又は全部は、例えば、(例えば、人間の入力がない自動で、手動で、人間の入力がある自動等で)ビデオ編集又は変換操作、カラーグレーディング操作等を通じて、ソース画像から生成できる。ソース画像は、(例えばデジタルカメラによって)デジタルキャプチャされてもよく、フィルム上にキャプチャされたアナログカメラ写真をデジタルフォーマットに変換することによって生成されてもよく、コンピュータによって(例えば、コンピュータアニメーション、画像レンダリング等を使用して)生成される等してもよい。SDR画像(102)は、映画のリリース、アーカイブされたメディアプログラム、メディアプログラムライブラリ、ビデオ録画/クリップ、メディアプログラム、テレビプログラム、ユーザが生成したビデオコンテンツ等のうち1つ以上に関連する画像でもよい。
【0027】
HDR画像生成ブロック(105)は、連続するSDR画像(102)のシーケンス内の各SDR画像にローカルリシェーピング操作を適用して、SDR画像(102)と比較して、SDR画像(102)と同じ視覚的意味内容を描写するが、より高いダイナミックレンジ、より鮮やかな色等を有する、対応する連続(リシェーピングされた)HDR画像のシーケンス内のそれぞれの(リシェーピングされた)HDR画像を生成する。
【0028】
パラメータ生成ブロック142は、動作パラメータ値を予測するための予測モデルに基づいて、ローカルリシェーピング操作で使用される少なくともいくつかの動作パラメータの特定の値を生成する。予測モデルは、トレーニングデータセット内のHDR-SDR画像ペア、及びトレーニング画像又は画像ペアに関連するグランドトゥルースのようなトレーニング画像を使用してトレーニングできる。
【0029】
一群のルマ又はYチャネルのリシェーピング関数及び一群のクロマチャネルのリシェーピングマッピングは、リシェーピングマッピング生成ブロック146によって生成され、例えば、SDR画像(102)がリシェーピングされたHDR画像を生成するために処理される前のシステムブートアップ期間中に、リシェーピングマッピング生成ブロック(146)によって画像生成ブロック(105)に事前ロードできる。ルマ又はYチャネルの一群のリシェーピング関数は、複数の異なるL1-mid値について(或いはL-1mid値によってインデックス化された)複数のBLUTを含んでもよい。クロマチャネルの一群のリシェーピング関数は、同じ複数の異なるL1-mid値について(或いはL-1mid値によってインデックス化された)複数のBMMRマッピングを含んでもよい。
【0030】
各入力SDR画像について、HDR画像生成ブロック(105)は、入力SDR画像におけるルマ又はYチャネルのコードワードからピクセル単位の精度までローカル輝度レベルを生成又は計算する。いくつかの動作シナリオでは、入力SDR画像のルマ又はYチャネルのコードワードから、例えば、マルチレベルエッジ保存フィルタリングを通じて生成されたフィルタリング画像の加重和として、全体のフィルタリング画像が生成されてもよい。全体のフィルタリング画像におけるフィルタリング値は、ローカル輝度レベルを推定又は近似するために使用されてもよく、次いで、これは入力の一部として、ピクセル単位の精度までローカルL1-mid値を推定又は予測するために使用される。ローカルL1-mid値は、L1-midマップで表され、一群のBLUTから、ピクセル単位の精度までのルマチャネルのローカルリシェーピング関数又はBLUTを選択するためのインデックスとして使用されてもよい。これらのローカルリシェーピング関数又はBLUTは、ローカルL1-mid値で選択されると、ローカルでより高い勾配又はより高いローカルコントラスト比を提供する。さらに、任意選択で或いは代替として、L1-midマップで表されるローカルL1-mid値は、一群のBMMRマッピングから、ピクセル単位の精度までのクロマチャネルのローカルリシェーピングマッピング又はBMMRを選択するためのインデックスとして使用できる。
【0031】
したがって、入力SDR画像(102)及び事前ロードされた一群のBLUT及びBMMRについて生成された個々のローカル中間値マップに基づいて、HDR画像生成ブロック(105)は、入力SDR画像(102)に対してローカルリシェーピング操作を実行して、SDR画像(102)と比較して、より高いダイナミックレンジ、より高いローカルコントラスト、より鮮やかな色等の対応するリシェーピングされたHDR画像を生成できる。
【0032】
SDR画像(102)及びリシェーピングされたHDR画像の一部又は全部がコンポーザメタデータ生成ブロック115に提供されて、リシェーピングされたHDR画像を前方リシェーピングするだけでなく、画像メタデータ177(例えば、コンポーザメタデータ等)を生成することを通じて、リシェーピングされたSDR画像112を生成することができる(これは、入力SDR画像(102)よりも効率的にコーディングされ得る)。画像メタデータ(177)は、後方リシェーピングマッピング(例えば、BLUT、後方リシェーピング関数/曲線又は多項式集合、MMR係数等)を生成するコンポーザデータを含んでもよく、これは、入力SDR画像に適用されると、対応するHDR画像を生成する。
【0033】
リシェーピングされたSDR画像(112)及び画像メタデータ(177)は、コーディングブロック120によって、ビデオ信号122(例えば、コーディングされたビットストリーム等)又は連続ビデオセグメントのセットに符号化されてもよい。ビデオ信号(122)が与えられると、携帯電話のような受信側デバイスは、メタデータをSDR画像データと共に使用して、受信側デバイスの表示能力内でHDRのようなより高いダイナミックレンジ及びより鮮やかな色を有する画像を生成してレンダリングすることを(デバイスでのビデオ信号(122)の内部処理又は後処理の一部として)決定できる。さらに、任意選択で或いは代替として、ビデオ信号(122)又はビデオセグメントは、画像メタデータ(177)を無視して単にSDR画像を表示できるレガシーSDRディスプレイとの後方互換性を可能にする。
【0034】
例示的なビデオ信号又はビデオセグメントは、単一レイヤのビデオ信号/セグメント等を含んでもよいが、必ずしも限定されない。いくつかの実施形態では、コーディングブロック(120)は、ビデオ信号(122)又はビデオセグメントを生成するために、ATSC、DVB、DVD、Blu-Ray及び他の配信フォーマットによって定義されたもののようなオーディオ及びビデオエンコーダを含んでもよい。
【0035】
次いで、ビデオ信号(122)又はビデオセグメントは、モバイルデバイス、タブレットコンピュータ、復号及び再生デバイス、メディアソースデバイス、メディアストリーミングクライアントデバイス、テレビセット(例えば、スマートテレビ等)、セットトップボックス、映画館等のような受信機にダウンストリームで配信される。ダウンストリームデバイスでは、ビデオ信号(122)又はビデオセグメントは、復号ブロック(130)によって復号され、復号画像182を生成する。これは、コーディングブロック(120)によって実行される圧縮及び復号ブロック(130)によって実行される解凍で生成される量子化誤差及び/又は伝送誤差及び/又は同期誤差及び/又はパケットロスによって引き起こされる誤差の対象となる、リシェーピングされたSDR画像(112)と同様のもの又は同じものでもよい。
【0036】
非限定的な例では、ビデオ信号(122)(又はビデオセグメント)は、後方互換のSDRビデオ信号(又はビデオセグメント)でもよい。ここで、「後方互換」は、SDRディスプレイに最適化された(例えば、特定の芸術的意図が保存される等)SDR画像を搬送するビデオ信号又はビデオセグメントを示す。
【0037】
復号ブロック(130)はまた、ビデオ信号(122)又はビデオセグメントから画像メタデータ(177)を取得又は復号できる。画像メタデータ(177)は、復号されたSDR画像(182)に対して後方リシェーピングを実行して、HDR(例えば、ターゲット、基準等)ディスプレイでレンダリングするための後方リシェーピングされたHDR画像を生成するために、ダウンストリームデコーダによって使用できる後方リシェーピングマッピングを指定する。画像メタデータ(177)で表される後方リシェーピングマッピングは、画像メタデータ(177)で生成された後方リシェーピングされたHDR画像とローカルリシェーピング操作で生成されたリシェーピングされたHDR画像との間の誤差又は差を最小化することを通じて、コンポーザメタデータ生成ブロック(115)によって生成されてもよい。その結果、画像メタデータ(177)は、受信者によって画像メタデータ(177)で生成された後方リシェーピングされたHDR画像が、ローカルリシェーピング操作で生成されたリシェーピングされたHDR画像に比較的近く正確に近似することを確保するのに役立つ。
【0038】
さらに、任意選択で或いは代替として、画像メタデータ(177)は、ダウンストリームデコーダによって後方リシェーピングされた画像に対して表示管理操作を実行して、HDRディスプレイデバイスでのレンダリングに最適化された表示画像(例えば、HDR表示画像等)を生成するために使用できる表示管理(DM, display management)メタデータを含んでもよい。
【0039】
受信機が標準ダイナミックレンジ又は比較的狭いダイナミックレンジをサポートするSDRディスプレイ140で動作する(或いはSDRディスプレイ140に取り付けられる)動作シナリオでは、受信機は復号されたSDR画像を直接的又は間接的にターゲットディスプレイ(140)にレンダリングできる。
【0040】
受信機がハイダイナミックレンジ(例えば、400nit、1000nit、4000nit、10000nit以上等)をサポートするHDRディスプレイ122で動作する(或いはHDRディスプレイ122に取り付けられる)動作シナリオでは、受信機はビデオ信号(122)又はビデオセグメント(例えば、その中のメタデータコンテナ)からコンポーザメタデータを抽出し、コンポーザメタデータを使用してHDR画像を構成でき(132)、これはコンポーザメタデータに基づいてSDR画像を後方リシェーピングすることから生成された後方リシェーピング画像でもよい。さらに、受信機はビデオ信号(122)又はビデオセグメントからDMメタデータを抽出し、DMメタデータに基づいてHDR画像(132)に対してDM操作(135)を適用して、HDRディスプレイデバイス(140-1)でレンダリングに最適化された表示画像(137)を生成し、HDRディスプレイデバイス(140-1)で表示画像(137)をレンダリングできる。
【0041】
説明のみの目的で、ここで説明するローカルリシェーピング操作は、SDR画像からリシェーピングされたHDR画像を生成するために、ビデオエンコーダのようなアップストリームデバイスによって実行できると記載されている。次いで、これらのリシェーピングされたHDR画像は、ビデオエンコーダによってターゲット又は参照HDR画像として使用され、後方リシェーピングメタデータを生成する。これは、受信者のデバイスが、ローカルリシェーピング操作から生成されたリシェーピングされたHDR画像に比較的近く或いは正確に近似する、後方リシェーピングされたHDR画像を生成するのに役立つ。
【0042】
様々な実施形態において、一部又は全部のローカルリシェーピング操作は、ビデオエンコーダ単独で、ビデオデコーダ単独で、ビデオトランスコーダ単独で、或いは、これらの組み合わせで実行できる点に留意すべきである。例えば、ビデオエンコーダは、リシェーピング関数/マッピングへのインデックスを含むSDR画像のローカルL1-midマップを生成できる。さらに、任意選択で或いは代替として、再生側のビデオデコーダ、又はビデオエンコーダとビデオデコーダとの間のビデオトランスコーダは、リシェーピング関数/マッピングへのインデックスを含むSDR画像のローカルL1-midマップを生成できる。ビデオエンコーダは、HDR画像を生成するためにローカル後方リシェーピング操作を適用しなくてもよい。ビデオエンコーダは、後の時点でビデオトランスコーダ又はビデオデコーダによってHDR画像を生成するために、ローカル後方リシェーピング操作を延期してもよい。ローカルL1-midマップは、ビデオ信号又はビデオセグメント内のSDR画像で符号化された画像メタデータの一部として、ビデオエンコーダによって含めることができる。ビデオトランスコーダ又はビデオデコーダは、一群のBLUT及び/又は一群のBMMRマッピングで事前ロードされてもよい。SDR画像のローカルL1-midマップは、ビデオトランスコーダ又はデコーダによって、一群のBLUT及び/又は一群のBMMRマッピングにおける特定のリシェーピング関数又はマッピングを検索又は調査するために使用できる。次いで、ピクセル単位の精度までのローカルリシェーピング操作が、SDR画像に対してビデオトランスコーダ又はデコーダによって実行され、ローカルL1-midマップにおけるインデックスで検索された特定のリシェーピング関数/マッピングに少なくとも部分的に基づいて、リシェーピングされたHDR画像を生成できる。いくつかの動作シナリオでは、ローカルリシェーピングを通じてHDR画像が生成されると、ビデオエンコーダは、ビデオ信号(例えば、ビデオ信号のベースレイヤ等)にSDR画像を符号化するのではなく、ビデオ信号(例えば、ビデオ信号のベースレイヤ等)にHDR画像又はローカルでリシェーピングされたHDR画像から導出されたHDR画像のバージョンを符号化できる。このようなビデオ信号から復号されたHDR画像は、HDRディスプレイで直接視聴可能になり得る。
【0043】
[ローカルリシェーピング]
図2Aは、ローカルリシェーピング操作(例えば、212等)を適用して、入力SDR画像から対応するHDR画像を生成するための例示的なフローを示す。画像処理システム、その中のコーディングブロック(例えば、
図1の105等)又はその中の復号ブロック(例えば、
図1の130等)は、このプロセスフローを実装又は実行してもよい。いくつかの動作シナリオでは、入力SDR画像202が与えられると、入力SDR画像(202)からローカルリシェーピング操作によって生成される出力HDR画像214の主なHDR外観を決定するために、グローバルリシェーピング関数204が選択される。
【0044】
複数の基本リシェーピング関数は、少なくとも部分的に、トレーニングHDR画像及びトレーニングSDR画像の画像ペアの母集団を含むトレーニングデータセットに基づいて、(例えば、輝度又はルマチャネルにおけるコードワードについて)多項式回帰モデル及びMMRフレームワークを介して(例えば、ルマチャネルについては8ピースの二次多項式として、また、クロマチャネルについてはMMRとして)決定されてもよい。
【0045】
いくつかの動作シナリオでは、SDR画像からHDR画像を生成するために使用される(後方)リシェーピング関数は、L1メタデータによって指定されてもよい。L1メタデータは、L1-max値、L1-mid値及びL1-min値のような3つのパラメータを含んでもよく、これらはHDR画像のHDRコードワード(例えば、RGBコードワード、YUVコードワード、YCbCrコードワード等)から導出されてもよい。L1-max値は、ビデオフレーム内の最高輝度レベルを表す。L1-mid値は、ビデオフレームにわたる平均輝度レベルを表す。L1-min値は、ビデオフレーム内の最低の黒レベルを表す。代替として或いはさらに、現在のフレームが属するシーンに関連するL1メタデータに基づいて(後方)リシェーピングが実行される。これらのパラメータのうち1つ以上がリシェーピング関数を指定する。例えば、L1-max値及びL1-min値は考慮されないが、L1-mid値はリシェーピング関数を識別又は指定する。本発明によれば、L1メタデータからの1つ以上のパラメータ、好ましくは、L1-mid値が、グローバルリシェーピング関数を識別するために使用され、グローバルインデックス値と呼ばれる。前方リシェーピング関数及び後方リシェーピング関数の構築の例は、2020年4月21日に出願されたG-M. Su,による米国仮特許出願第63/013,063号,“Reshaping functions for HDR imaging with continuity and reversibility constraints”及び2020年4月22日に出願されたG-M. Su及びH. Kaduによる米国仮特許出願第63/013,807号,“Iterative optimization of reshaping functions in single-layer HDR image codec”に記載されており、これらの内容がここに完全に記載されているかのように、これらの出願を参照により援用する。
【0046】
特定の基本リシェーピング関数は、複数の基本リシェーピング関数の中から、グローバルリシェーピング関数(204)として(入力SDR画像(202)から決定、推定又は予測される全体(例えば、グローバル、画像/フレーム毎等)のL1-mid値を使用して)選択されてもよい。
【0047】
入力SDR画像(202)からHDR画像(214)を生成するためにピクセル単位レベルまでのローカルリシェーピング操作を適用する目的は、グローバルリシェーピング関数(204)で決定されたHDR画像(214)の主なHDR外観が維持されるように、HDR画像(214)のローカル領域のローカル輝度レベルを変更することなく、HDR画像(214)のこれらのローカル領域のローカルコントラスト比を強調することである。
【0048】
視覚オブジェクト/文字のエッジ/境界に隣接するローカル輝度レベルを変更することから生成され得るハローアーティファクトのような一般的なアーティファクトを防止又は低減するのを助けるために、マルチレベルエッジ保存フィルタリング206のような高精度フィルタリングが入力SDR画像(202)に適用されてフィルタリング画像にされてもよい。或いは、(フィルタリングされていない)入力SDR画像から導出されたL1-mid値に基づいてグローバルリシェーピング関数を選択する代わりに、フィルタリングされた入力SDR画像からの推定又は予測された全体(例えば、グローバル、画像/フレーム毎等)のL1-mid値を使用してグローバルリシェーピング関数が選択されてもよい。フィルタリング画像は、入力SDR画像(202)の異なるローカル領域(ピクセル単位の精度まで、或いは、各ピクセルを囲むローカル領域まで)におけるローカル輝度レベル(又はローカル領域固有の輝度レベル)を導出又は推定するために使用されてもよい。入力SDR画像(202)の異なるローカル領域(ピクセル単位の精度まで、或いは、各ピクセルを囲むローカル領域まで)における推定ローカル輝度レベルは、HDR画像(214)におけるローカルL1-mid値(ピクセル単位の精度まで、或いは、各ピクセルを囲むローカル領域まで)を推定又は予測するために使用されてもよい。ローカルL1メタデータは、ピクセルを囲む領域における輝度値の分布を記述する。領域は単一のピクセルまで定義されてもよく、それによって、ローカルリシェーピングを適用するときにピクセル単位の精度をサポートする。ローカルL1-max値は、領域内の最高輝度レベルを表す。ローカルL1-mid値は、領域内の平均輝度レベルを表す。ローカルL1-min値は、領域内の最低の黒レベルを表す。
【0049】
SDR画像(202)のローカル輝度レベル(その後、HDR画像(214)におけるローカルL1-mid値を予測するための予測モデルへの入力として使用できる)を推定するために使用される高精度フィルタリング(206)は、異なる視覚オブジェクト/文字の間にあるか、視覚オブジェクト/文字と背景/前景との間にあるか、入力SDR画像(202)に描写された視覚オブジェクト/文字のエッジ/境界との隣接にあるか、及び/又は、出力HDR画像(214)に描写される、情報リーク(又はピクセル値又はコードワード情報の拡散)を回避又は低減するために、特に選択又は適応されてもよい。
【0050】
ローカルリシェーピング操作の効率又は応答時間を改善するために、ここに記載されるように、システムブートアップ期間中に、一群のローカルリシェーピング関数208が画像処理システムに(例えば、最初に、事前に)ロード又は構築されてもよい。一群のローカルリシェーピング関数(208)のロード又は構築は、連続した入力SDR画像のシーケンス(例えば、入力SDR画像(202)等を含む)から対応する連続した出力HDR画像のシーケンス(例えば、HDR画像(214)等を含む)へのリシェーピング又はアップコンバートが一群のローカルリシェーピング関数(208)に少なくとも部分的に基づいて実行される前に実行されてもよい。一群のローカルリシェーピング関数(208)は、グローバルリシェーピング関数(204)を選択するために使用される複数の基本リシェーピング関数から(例えば、外挿及び/又は内挿を通じて)生成されてもよいが、これに限定されない。一群のローカルリシェーピング関数(208)内の各ローカルリシェーピング関数は、グローバルリシェーピング関数(204)又はグローバルリシェーピング関数(204)が選択される複数の基本リシェーピング関数内の各基本リシェーピング関数の場合のように、ローカルL1メタデータからのそれぞれの値、好ましくは、それぞれのローカルL1-mid値を使用して全体的又は部分的にインデックス化又は識別されてもよい。本発明によれば、L1メタデータからの1つ以上のパラメータ、好ましくは、ローカルL1-mid値は、ローカルリシェーピング関数を識別するために使用され、ローカルインデックス値と呼ばれる。
【0051】
上記のように、マルチレベルエッジ保存フィルタリング(206)を入力SDR画像(202)に適用することによって生成されたフィルタリング画像は、ローカル輝度レベルを生成又は推定するために使用されてもよく、これは、ローカルL1-mid値を生成又は予測するために、予測モデルにおけるグローバルリシェーピング関数と組み合わせて或いはグローバルリシェーピング関数を参照して使用されてもよい。これらのローカルL1-mid値は、ローカルL1-midマップ210のインデックスを形成し、これは、一群のローカルリシェーピング関数(208)においてピクセル固有のローカルリシェーピング関数を検索するために使用されてもよい。
【0052】
ローカルL1-midマップ(210)におけるインデックスを用いて検索されたピクセル固有のローカルリシェーピング関数は、ルマチャネル及びクロマチャネル内のSDRコードワードをルマチャネル及びクロマチャネル内のHDR画像(214)のリシェーピングされたHDRコードワードに後方リシェーピングするために、ローカルリシェーピング操作(212として示される)によってピクセル単位レベルで入力SDR画像(202)に適用されてもよい。微調整された(ピクセル単位の精度までの)非線形関数の形式のこれらのピクセル固有のローカルリシェーピング関数のそれぞれは、HDR画像(214)におけるローカルコントラスト及び/又は彩度を強調するために使用されてもよい。
【0053】
図2Bは、ローカルリシェーピング操作(例えば、212等)を通じて入力SDR画像を出力又はリシェーピングされたHDR画像に変換するアップコンバートプロセスの例示的なフレームワーク又はアーキテクチャを示す。フレームワーク又はアーキテクチャは、入力SDR画像(例えば、202等)をマルチレベルエッジ保存フィルタリングすることによって生成された複数レベルのフィルタリング画像を、全体のフィルタリング画像に融合する。全体のフィルタリング画像におけるフィルタリング値は、ローカル輝度レベルの予測、推定及び/又はプロキシとして機能する。次いで、これらのフィルタリング値は、ピクセル単位の精度までのローカルL1-mid値を生成又は予測するために、予測モデルへの入力の一部として使用できる。ローカルL1-mid値は、ピクセル単位の精度までの特定のローカルリシェーピング関数を選択又は検索するためのインデックスとして機能する。選択されたローカルリシェーピング関数は、対応するHDR画像(例えば、214等)を生成する目的で、ローカルリシェーピング操作(212)によって入力SDR画像に適用されてもよい。フレームワーク又はアーキテクチャは、ローカルリシェーピング操作(212)に関連する画像処理操作を実行するために、いくつかのコンポーネント(例えば、主なコンポーネント等)を使用してもよい。
【0054】
より具体的には、基本リシェーピング関数のような複数のリシェーピング関数が最初に構築されてもよい。いくつかの動作シナリオでは、これらの基本リシェーピング関数は、全体のHDRコードワード空間又は範囲の一部又は全部(例えば、12ビットのHDRコードワード空間又は範囲について4096)に均等又は不均等に分布する12個の異なるL1-mid値のような異なるL1-mid値に対応してもよく、異なるL1-mid値でインデックス付けされてもよい。
【0055】
入力SDR画像(202)が与えられると、入力SDR画像(202)におけるルマ又はYチャネルSDRコードワードの平均からグローバルL1-mid値を生成又は予測するために、多項式回帰モデル(例えば、以下の式(3)等)が使用されてもよい。このグローバルL1-mid値は、入力SDR画像(202)についてのグローバルリシェーピング関数(例えば、204等)として、複数の基本リシェーピング関数から特定のリシェーピング関数を(例えば、近似、補間等で)生成又は選択するために使用できる。このグローバルリシェーピング関数は、HDR画像(例えば、214等)の主なHDR外観を提供又は表現する。この主なHDR外観は、入力SDR画像(202)からのローカルリシェーピング操作(212)によって生成されたローカルでリシェーピングされたHDR画像(214)において維持されてもよい。
【0056】
さらに、マルチレベルエッジ保存フィルタリング(206)は、レベル1~レベル4のような複数の異なるレベルについて、206-1~206-4のような複数のフィルタリング画像を生成するために適用されてもよい。複数レベルにおける各レベルでのエッジ保存フィルタリングは、入力SDR画像(202)のフィルタリングをガイドするために単一の次元/チャネル又は複数の次元/チャネルのガイド付き画像(guided image)を使用するガイド付き画像フィルタで実行又は実装されてもよい。全体のフィルタリング画像は、エッジ保存フィルタリング(例:206-1~206-4等)によって複数のレベルについて生成された複数のフィルタリング画像から加重和224として生成されてもよい。
【0057】
全体のフィルタリング画像におけるフィルタリング値によって推定又は近似されたピクセル単位の精度までのローカル輝度レベルが与えられると、ローカル輝度レベルと個々のピクセルのルマ又は輝度値との間の差は、ピクセル単位の精度まで減算/差値演算器222で決定できる。
【0058】
ピクセル単位の精度までの差(又は入力SDR画像における各ピクセルについての個々の差(202))は、例えばエンハンスメントレベル216で所望のローカルL1-mid調整値218を推定し、ピクセル単位の精度までのL1-mid調整値(又は入力SDR画像における各ピクセルについての個々のL1-mid調整値(202))を生成するために使用できる。L1-mid調整値は、ピクセル単位の精度までの修正L1-mid調整値(又は入力SDR画像における各ピクセルについての個々の修正L1-mid調整値(202))を生成するように、非線形活性化関数で更に修正できる。
【0059】
ローカルL1-mid値生成/予測のための予測モデル(例えば、以下の式(6)等に表される)は、修正L1-mid調整値及びグローバルL1-mid値(204)からピクセル単位の精度までのローカルL1-mid値(又は入力SDR画像における各ピクセルについての個々のローカルL1-mid値(202))を生成するために使用されてもよい。
【0060】
これらのローカルL1-mid値(210)は、L1-midマップとしてまとめて表されてもよい。各ローカルL1-mid値(210)は、一群のリシェーピング関数/マッピングから入力SDR画像(202)のピクセルの中で対応するピクセルについてローカルリシェーピング関数/マッピングを選択するためのインデックス値として使用されてもよい。したがって、インデックス値としてのこれらのローカルL1-mid値(210)によって、複数のローカルリシェーピング関数/マッピングが選択できる。ローカルリシェーピング操作(212)は、ローカルリシェーピング関数/マッピングを入力SDR画像(202)に適用して、リシェーピングされたHDR画像(214)を生成することによって実行されてもよい。
【0061】
[基本リシェーピング関数及び非基本リシェーピング関数]
図3Aは、ここで説明するSDRからHDRへのアップコンバートのための例示的な基本後方リシェーピング関数を、複数のターゲットL1-mid値設定L={512,768,…,3328}のための後方リシェーピング関数(後方ルックアップテーブル又はBLUTとも呼ばれる)の形式で示す。上記のように、基本後方関数は、異なるターゲットL1-mid値/設定でトレーニングデータセットを使用して構築又は構成されてもよい。入力SDR画像(202)のHDR外観を通知又は表現するために使用されるグローバルリシェーピング関数(204)は、入力SDR画像(202)について決定又は予測されたグローバルL1-mid値に基づいて、これらの基本リシェーピング関数から選択又は線形補間できる。
【0062】
いくつかの動作シナリオでは、複数のターゲットL1-mid値/設定のためのこれらの基本リシェーピング関数は、他のL1-mid値/設定のための他のリシェーピング関数を更に構築するために使用されてもよい。これらのリシェーピング関数の多くでは、同じ入力SDRコードワード値が与えられると、基本リシェーピング関数のL1-mid値/設定が高いほど、入力SDRコードワード値から基本リシェーピング関数によって生成されるマッピングされたHDRコードワード値が高くなり、これは、マッピングされたHDRコードワード値を含むHDR画像においてより明るい出力HDR外観に変換する。
【0063】
入力SDR画像(202)と、グローバルでリシェーピングされたHDR画像(入力SDR画像(202)からグローバルでリシェーピングされて入力SDR画像(202)からローカルでリシェーピングされたHDR画像(214)のHDR外観を表す)とを、それぞれS及びVとして示す。入力SDR画像のルマ又はYチャネルと、グローバルでリシェーピングされたHDR画像のルマ又はYチャネルを、それぞれSY及びVYとして示す。入力SDR画像(202)における第iのピクセルについてのSDRルマ又はYコードワード値(si
Yとして示される)が与えられ、Lとして示されるL1-mid値/設定に対応するか或いはL1-mid値によってインデックス付けされた後方リシェーピング関数(BL()として示される)が与えられると、(グローバルでリシェーピングされた)HDR画像における第iのピクセルについての対応する出力HDRルマ又はYコードワード値(vi
Yとして示される)は、以下のように与えられてもよい。
vi
Y=BL(si
Y) (1)
【0064】
後方リシェーピング関数B
L()(又は基本リシェーピング関数)は、ここで説明するように、事前計算され、後方ルックアップテーブル(BLUT, backward look up table)として画像処理システムに格納されてもよい。ビット深度B
Sの入力SDRコードワードについて、B
L()は
【数1】
からの
【数2】
個のエントリを有する。B
S=10である動作シナリオでは、基本リシェーピング関数B
L()は1024個のエントリを有する。
【0065】
上記のように、画像処理システムは、複数の基本リシェーピング関数で事前ロードされてもよい。複数の基本リシェーピング関数が対応するL1-mid値/設定が12ビット精度を有する動作シナリオでは、これらのL1-mid値/設定は、[0 4095]の12ビット範囲内に分布する複数の異なる値を取る。
【0066】
限定ではなく例として、複数の基本リシェーピング関数は、12個のL1-mid値/設定L={L(0),L(1),…,L(11)}={512,768,…,3328}について12個の基本リシェーピング関数を含む。12個のL1-mid値/設定Lの中の各L1-mid値/設定は、12個の基本リシェーピング関数の中の各基本リシェーピング関数又は曲線に対応する。この例では、最初にシステムが起動された後に、12個の基本の1024エントリのトーン曲線(それぞれB512(),B768(),…,B3328()として示される)が利用可能になってもよい。
【0067】
前方リシェーピング関数及び後方リシェーピング関数のようなリシェーピング関数は、HDR-SDRトレーニング画像ペアを含むトレーニングデータセット内のトレーニング画像に対して実行されるコンテンツマッピング(CM, content mapping)、トーンマッピング(TM, tone mapping)及び/又は表示管理(DM, display management)アルゴリズム/操作からトレーニング又は導出されてもよい。CM/TM/DMアルゴリズム又は操作は、交差しないリシェーピング関数を提供してもよく或いは提供しなくてもよい。
図3Aに示すように、基本リシェーピング関数は、低いL1-mid値の範囲において、異なるリシェーピング関数の間又は中で交差し得るいくつかのリシェーピング関数を含んでもよい。
【0068】
基本リシェーピング関数は、ローカルリシェーピング(又はローカルトーンマッピング)がグローバルリシェーピングで達成され得るものよりも高いローカルコントラスト及び優れた一貫性のあるHDR外観を達成できるように調整又は修正されてもよい。
図3Bは、調整及び修正の後の例示的な基本リシェーピング関数を示す。
【0069】
いくつかの動作シナリオでは、基本リシェーピング関数は、これらの間又はこれらの中で非交差になるように外挿を通じて調整又は修正できる。基本リシェーピング関数がこれらの間又はこれらの中で非交差になることを確保するために、いずれか所与のSDRコードワードs
Yについて、基本リシェーピング関数は、以下のように、同じ所与のSDRコードワードについてのL1-mid値/設定に関して単調に増加する制約を満たすように調整又は修正できる。
【数3】
【0070】
上記の式(2)で表されるこの単調に増加する特性を強制するために、低いL1-mid値の交差する事前調整又は事前修正された基本リシェーピング関数は、事前調整又は事前修正された基本リシェーピング関数に対して実行される外挿を通じて生成された調整又は修正された基本リシェーピング関数によって置き換えられてもよい。
【0071】
説明のみの目的で、L1-mid値の最初のN
ext個の基本リシェーピング曲線
【数4】
が置き換えられる(交差しており置き換えられる)と仮定する。次の2つの基本トーン曲線
【数5】
は、L1-mid値の距離比(又はL1-mid値の2つの差/距離の比)を使用して(例えば、線形等の)外挿を実行するために使用されてもよい。このような外挿のための例示的な手順が以下の表1に示される。
【表1】
【0072】
図3Aに示すように、トレーニングHDR-SDR画像ペアからトレーニングされた元の基本リシェーピング関数/曲線又はBLUTは、L1-mid<=1280である場合、L1-mid値に関して単調に増加しない。したがって、最初の4つの基本リシェーピング関数/曲線又はBLUT(それぞれL1-mid値=512,768,1024,1280)は、2つのL1-mid値1536及び1792についての2つの次の基本リシェーピング関数/曲線の線形外挿を通じて、調整又は修正された基本リシェーピング関数/曲線に置き換えられてもよい。
【0073】
図3Bに示す基本リシェーピング関数/曲線は、
図3Aの基本リシェーピング関数/曲線の外挿から生成されてもよい。
図3Bから分かるように、SDRコードワードが与えられると、
図3Bの基本リシェーピング関数は、マッピング又はリシェーピングされたHDRコードワードがL1-mid値に関して単調増加する条件又は制約を満たす。上記の表1に示す手順と比較して、より一般的なクリーンアップ手順も使用又は実装されてもよい点に留意すべきである。このようなクリーンアップ手順は、全ての入力基本リシェーピング関数、曲線又はBLUTの間で交差する(又はL1-mid値に関して非単調増加する)基本リシェーピング関数/曲線又はBLUTを検出するためのプログラムロジックを実装し、隣接又は符号化する最も近い接基本リシェーピング関数、曲線又はBLUTからの外挿及び/又は内挿を介して、これらの交差する基本リシェーピング関数、曲線又はBLUTを置き換えてもよい。
【0074】
非基本リシェーピング関数、曲線又はBLUTは、必要に応じて調整又は修正された基本リシェーピング関数、曲線又はBLUTから生成されてもよい。いくつかの動作シナリオでは、非基本リシェーピング関数、曲線又はBLUTは、最も近い基本リシェーピング関数、曲線又はBLUTからのバイリニア補間を通じて、基本リシェーピング関数、曲線又はBLUTから生成されてもよい。基本リシェーピング関数、曲線又はBLUTは既に単調増加しているので、補間された非基本リシェーピング関数、曲線又はBLUTもこの単調増加特性を継承する。バイリニア補間を通じて基本リシェーピング関数、曲線又はBLUTから非基本リシェーピング関数、曲線又はBLUTを生成するための例示的な手順が以下の表2に示される。
【表2】
【0075】
多くの動作シナリオでは、ここで説明するように外挿及び内挿を通じて生成される基本リシェーピング関数及び非基本リシェーピング関数は、ローカルリシェーピング操作(212)が事前調整又は事前修正されたリシェーピング関数を使用したHDR画像で提供されるものよりも、(ローカルでリシェーピングされた)HDR画像(214)においてより高いローカルコントラストを提供することを可能にする。ローカルでリシェーピングされたHDR画像(214)における暗い領域は、調整又は修正されたリシェーピング関数を使用して、低いコードワード値(ローカルでリシェーピングされたSDR画像(214)において高いコントラスト比を示すか或いは達成する)を有する。
【0076】
[グローバルリシェーピング関数の選択]
ローカルリシェーピングを通じてSDR画像(202)から生成されるHDR画像(214)の全体(例えば、最良、所望、ターゲット等)のHDR外観を決定又は達成するために、グローバルL1-mid値の予測のための多項式回帰モデルに基づいて、入力SDR画像(202)から抽出された(1つ以上の特徴タイプの)SDR特徴を使用して、グローバルL1-mid値(L
(g)として示される)が最初に予測されてもよい。次いで、グローバルL1-mid値L
(g)は、全体のHDR外観を表す対応するグローバルリシェーピング関数(
【数6】
として示される)を検索又は識別するために使用できる。
【0077】
いくつかの動作シナリオでは、モデルの効率性及びロバスト性のために、グローバルL1-mid値予測のための多項式回帰モデルは、以下のように1次多項式(線形)モデルでもよい。
【数7】
ここで、
【数8】
はルマ又はYチャネルの入力SDR画像(202)のSDRコードワードの平均を表し、SDRコードワードは[0,1]の間のような特定の範囲の値で正規化されてもよい。c
0及びc
1は多項式回帰モデルのモデルパラメータを表す。
【0078】
グローバルL1-mid値予測のための多項式回帰モデルは、モデルパラメータc0及びc1についての最適値を取得するために、複数のHDR-SDR画像ペアを含む、ここで説明するようなトレーニングデータセット内のトレーニングSDR画像から抽出されたSDR特徴(実際の予測操作で使用されるのと同じ特徴タイプのSDR特徴)によってトレーニングされてもよい。
【0079】
いくつかの動作シナリオでは、SDR画像(202)に描写された視覚的意味内容に存在する可能性のあるレターボックスによって引き起こされるいずれかのバイアス(最終的に全体のHDR外観に影響を与え得る)を回避するために、ルマ又はYチャネルの平均
【数9】
を取得又は計算する際に、そのようなレターボックスが存在する場合には除外されてもよい。
【0080】
ここで説明するレターボックスの除外は、多項式回帰モデルのトレーニング操作/プロセスと、多項式回帰モデルに基づく実際の予測操作/プロセスとの双方において実行されてよい。
【0081】
HDR-SDR画像ペアによる回帰モデルのトレーニングでは、HDR-SDR画像ペア内の各HDR-SDR画像ペアのトレーニングSDR画像が、SDR特徴の特徴抽出に使用されてもよいが、HDR-SDR画像ペア内のトレーニングHDR画像は、リシェーピングされたHDR画像(回帰モデルから予測/推定されたグローバルリシェーピング関数を使用してSDR画像を後方リシェーピングすることから生成又は予測される)が比較されるターゲットとして使用されてもよい。
【0082】
リシェーピングされたHDR画像とトレーニングHDR画像とを比較するために、類似性尺度(例えば、コスト、誤差、品質尺度等)が使用されてもよい。いくつかの動作シナリオでは、ピーク信号対雑音比(PSNR, peak signal-to-noise ratio)(経験的にL1-mid値と比較的強い相関関係を有し得る)が類似性尺度として使用できる。
【0083】
ルマ又はYチャネルにおける(元の)トレーニングHDR画像のHDRコードワードをV
Yとして示す。さらに、ルマ又はYチャネルにおけるリシェーピングされたHDR画像のHDRコードワードを
【数10】
として示す。(元の)トレーニングHDR画像とリシェーピングされたHDR画像との間のルマ又はYチャネルにおけるHDRコードワードのPSNRは、モデルパラメータc
0及びc
1を改善又は最適化する目的で、以下の表3に示すように決定されてもよい。
【表3】
【0084】
所与のHDR-SDR(トレーニング)画像ペア(V,S)及びこれらのルマ又はYチャネルのコードワード(VY,SY)について、モデルトレーニング目的の「グランドトゥルース(ground truth)」は、最良のL1-mid値(Lbestとして示される)の形式で構築されてもよい。いくつかの動作シナリオでは、ブルートフォース計算を適用して後方リシェーピングされた画像を生成し、全ての(候補)L1-mid値について対応するPSNRを計算することによって、最良のL1-mid値が決定されてもよい。いくつかの動作シナリオでは、このブルートフォース手法の比較的高い計算コストを回避又は低減するために、最良のL1-mid値Lbestを見つけるための2段階の方法が実装又は実行されてもよい。2段階の方法は、(1)Linitとして示される初期L1-mid値を見つけるための粗い検索と、(2)最良のL1-mid値Lbestの(例えば局所最適等の)解を見つけるための反復的な洗練された検索とを含む。
【0085】
第1の最初の段階では、基本リシェーピング関数に対応するか或いはインデックス付けするL1-mid値{512,768,...,3328}の中から徹底的な検索によって初期L1-mid値が決定できる。(候補)L1-mid値{512,768,...,3328}の中から、最高のPSNR(PSNRinitとして示される)を有するリシェーピングされたHDR画像を生成する基本リシェーピング関数の中で基本リシェーピング関数に対応するL1-mid値が初期L1-mid値Linitとして選択されてもよい。
【0086】
第2の段階では、L1-mid値の関数としてのPSNRが(例えば、グローバル、ローカル、収束等の)一意の最大点を有すると仮定して、勾配情報が、現在の最良のL1-mid値Lbestとしての初期L1-mid値Linitから開始して、サンプル点グリッドを反復的又は段階的に絞り込み、(最終的な)最良のL1-mid値を見つけてもよい。それぞれの反復では、比較的小さいステップサイズΔL(例えば、最初はΔLinit=128等のような初期値に設定されてもよい)で(現在の)最良のL1-mid値Lbestを求めて、左方向と右方向との双方が検索されてもよい。(現在の)最良のL1-mid値Lbestは、最大のPSNRを与える位置又は値まで移動する。左方向及び右方向のいずれも最大のPSNR又はより大きいPSNRを与えない場合、ステップサイズは前の値の1/2に低減されてもよい。この反復プロセスは、ステップサイズが閾値(例えば、εL=10-5等)よりも小さくなるまで、及び/又は、最大反復回数(例えば、Niter,max=20等)に達するまで繰り返されてもよい。L1-mid値についての「グランドトゥルース」((最終的な)最良のL1-mid値Lbestにより表される)は回帰モデルをトレーニングするために使用されるので、(最終的な)最良のL1-mid値Lbestは、必ずしも整数のみに限定されず、実数とすることができる。
【0087】
(例えば、キャッシュされている、容易に利用可能である、格納されている、事前ロードされている等の)リシェーピング関数に対応しない所与のHDR-SDRトレーニング画像ペアについて決定されたいずれかの(最終的な)最良のL1-mid値については、最も近い利用可能なL1-mid値についての(例えば、所与のHDR-SDRトレーニング画像ペアについて決定された(最終的な)最良のL1-mid値等に関連して)基本又は非基本リシェーピング関数(例えばトーン曲線等)の補間を通じて、リシェーピング関数が生成されてもよい。
【0088】
例示的な初期粗検索手順及び例示的な反復検索手順が以下の表4及び5に示される。
【表4】
【表5】
【0089】
画像ペア毎に最良のL1-mid値の形式で全ての「グランドトゥルース」を取得するために、トレーニングデータセット内のHDR-SDRトレーニング画像ペア毎に2段階の検索方法が実行されてもよい。グローバルL1-mid値予測のための回帰問題は、予測されたL1-mid値(
図3Cにおいて「pred」として示される)とグランドトゥルース(最良のL1-mid値、
図3Cにおいて「gt」として示される)との間の差に少なくとも部分的に基づいて、モデルパラメータ(又は多項式係数)c
0及びc
1を最適化するように定式化されてもよい。
図3Cに示すような比較的簡単な最小二乗解が、モデルパラメータ(又は多項式係数)c
0及びc
1を取得するために使用できる。
図3Cにおける各データ点は、HDR-SDRトレーニング画像ペアに対応しており、ルマ又はYチャネルにおけるトレーニングSDR画像(HDR-SDRトレーニング画像ペア内)のSDRコードワードの平均値と、HDR-SDRトレーニング画像ペアについてのグランドトルゥース又は(最終的な)最良のL1-mid値とを含む。回帰モデルのモデルパラメータの例示的な値は、c
0=396.6及びc
1=3396.4でもよい(これだけに限定されない)。
【0090】
[ルマローカルリシェーピング関数の選択]
HDR画像(214)におけるローカルコントラスト比を増加又は強調するために、各ピクセルまで、ルマ又はYチャネルにおける入力SDR画像(202)のSDRコードワードの平均値から回帰モデルを使用して予測されるグローバルL1-mid値に基づいて選択されたグローバルリシェーピング関数よりも高い傾き(より高いコントラスト比に対応する)を有するように、ローカルリシェーピング関数が作成又は選択されてもよい。上記のように、回帰モデルはHDR-SDRトレーニング画像ペアでトレーニングされてもよい。
【0091】
いくつかの動作シナリオでは、入力SDR画像(202)で表される各ピクセルについて、特定のローカルリシェーピング関数が、ピクセルの周辺のローカル領域において、ローカル輝度レベル(又はマルチレベルエッジ保存フィルタリングを用いて導出されたフィルタリングされたルマ値の形式でのローカル輝度レベルの推定、近似又はプロキシ)に基づいて選択されてもよく、グローバルL1-mid値に基づいて選択されたグローバルリシェーピング関数とは異なってもよい。このローカルリシェーピング関数は、比較的低い計算コストでハローアーティファクトがないか或いはほとんどなくローカルコントラスト強調のための比較的最適な性能を達成するために、ローカルリシェーピング操作(212)で適用できる。
【0092】
比較的高い計算コスト及び時間で、各ピクセルまで最初から一意のローカルリシェーピング関数を設計する代わりに、上記に説明した基本及び非基本リシェーピング関数の一部又は全部を含む事前計算(又は事前ロード)された一群のBLUTが、候補ローカルリシェーピング関数のセットとして使用されてもよい。各ピクセルについて、ピクセルについてより高い傾き又はローカルコントラスト比を取得又は達成するように、ローカルリシェーピング関数(又はBLUT)が一群のBLUTから特に選択されてもよい。
【0093】
ローカルリシェーピング関数の構築、選択及び適用は、ピクセルの周囲のローカル領域におけるローカルコントラストを増加させるが、ローカル領域における全体のローカル輝度を変更せずに維持する。
【0094】
概念的には、入力SDR画像(202)における第iのピクセル(又は対応するHDR画像(214)における対応する第iのピクセル)が与えられると、このピクセルのローカル領域はピクセルのセット
【数11】
でもよく、ここで、N
k,iは第iのピクセルのk×kの近傍を表し、s
i
Y,(l)は第iのピクセルの周囲のローカル輝度又はローカル輝度レベルを表し、Δs
Yはローカル領域におけるローカル輝度の偏差/変動についての小さい数を表す。
【0095】
目標は、
図3Dに示すように、第iのピクセルにおいて条件/制約
【数12】
を満たす(或いは同じローカル輝度を提供する)と共に、s
i
Y=s
i
Y,(l)におけるグローバルリシェーピング関数よりも高い傾き(したがって、より高いコントラスト比)を有するローカルリシェーピング関数f
(l)を見つけることである。
【0096】
ここで説明する一部又は全部の技術は、必ずしもピクセルのローカル領域についての厳密な定義を必要とせずに実装されてもよい点に留意すべきである。ここで説明するローカル領域は、コンテンツに依存する(例えば、画像における異なるコンテンツ又は画像特徴についてのローカル輝度が異なるように知覚され得る等)と共に、視聴者に依存してもよい(例えば、異なる視聴者が異なる空間解像度で明るさを知覚し得る等)。
【0097】
いくつかの動作シナリオでは、適用可能な空間カーネルサイズ(例えば、経験的に決定される等)を有するマルチレベルエッジ保存フィルタリングを含むがこれに限定されない空間フィルタリングが、ピクセルの周辺のローカル輝度を近似する尺度又はプロキシを生成するために使用されてもよい。
【0098】
ローカル輝度を計算するためにピクセルの周辺のローカル領域の厳密で柔軟性のない定義を使用する手法と比較して、ここで説明する画像処理システムは、画像におけるローカル輝度がどのように知覚されるかについての(例えば、フィルタリングにおける複数レベルの空間サイズ等を通じて)視聴者依存性及び(例えば、フィルタリングにおけるエッジ保存等を通じて)コンテンツ依存性をより良く考慮するためのフィルタリングを使用できる。
【0099】
既存のグローバルリシェーピング関数Bは、第iのピクセルについてのローカルリシェーピング関数を構築して、第iのピクセルについてのローカルリシェーピング関数によるローカルリシェーピングからのローカルリシェーピングされたHDRコードワード値が、第iのピクセルについてのグローバルリシェーピング関数から予測される予測HDRコードワード値から妥当な範囲内にあるか或いは大幅な偏差がないことを確保するために使用されてもよい。
【0100】
予測HDRコードワード値は、グローバルL1-mid値及び第iのピクセルについてのSDRルマ又はYコードワード値の形式の入力を取り、グローバルリシェーピング関数から生成されてもよい。
【0101】
同様に、ローカルリシェーピングされたHDRコードワード値は、以下のように、ローカルL1-mid値L
i
(l)及び第iのピクセルについてのSDRルマ又はYコードワード値si
Yの形式の入力を取り、グローバルリシェーピング関数から生成されてもよい。
【数13】
【0102】
Li
(l)がsi
Yの関数とすると、リシェーピング関数は第iのピクセルに対してローカルになる点に留意すべきである。より具体的には、ローカルリシェーピング関数についてより高い傾きを取得するために、上記の式(4)におけるローカルリシェーピング関数は、以下のように、SDRルマ又はYコードワード値si
Yに依存してBLUTインデックスで選択されてもよい。
Li
(l)=L(g)+α(si
Y-si
Y,(l)) (5a)
或いは、同等に以下でもよい。
Li
(l)=L(g)+ΔLi
(l) (5b)
ここで、
ΔLi
(l=α(si
Y-si
Y,(l)) (6)
である。
【0103】
ローカルリシェーピング関数は、ローカルリシェーピング関数及びグローバルリシェーピング関数の双方についてsi
Y=si
Y,(l)において導関数dvi
Y/dsi
Yを計算することによって、第iのピクセルにおいてグローバルリシェーピング関数よりも高い傾きを有することを示すことができる。
【0104】
グローバルリシェーピング関数についてL
i
(l)=L
(g)である。したがって、グローバルリシェーピング関数の傾きは以下のように与えられる。
【数14】
【0105】
ローカルリシェーピングについて、傾きは以下のように与えられる。
【数15】
【0106】
上記のように、一群のBLUTにおける基本及び非基本リシェーピング関数は、以下のように、対応する特性を有するL1-mid値について単調に増加するという条件/制約を満たすようにすることができる。
【数16】
【0107】
したがって、非平坦領域でα>0及び∂B(Li
(l),si
Y)/∂Li
(l)>0を仮定すると、ローカルリシェーピング関数の傾きは、sY=si
Y,(l)においてグローバルリシェーピング関数の傾きよりも大きくなり、その結果、ローカルリシェーピング関数についてより大きいローカルコントラスト比を生じる。したがって、式(5)及び(6)は、より高い或いはより良いローカルコントラスト比を提供するために使用できる。
【0108】
いくつかの動作シナリオでは、α=alocal×c1の関係が設定されてもよく、ここで、c1は上記の式(3)と同じであり、alocalはローカル強調レベルを表す。これらのパラメータのうちいずれか、一部又は全部は、シミュレーション、トレーニング又は経験から取得されてもよい。ローカル強調レベルの値alocalの例示的な値は、ローカルコントラスト比の(選択された)強度に依存して0~3の間の定数でもよいが、必ずしもこれだけに限定されない。alocal=0である場合、ローカルリシェーピング関数はグローバルリシェーピング関数と同等である。
【0109】
図3Eは、グローバルリシェーピング関数に関連してここで説明する手法で選択された例示的なローカルリシェーピング関数を示す。これらの例示的なローカルリシェーピング関数は、上記の式(5)及び(6)でL
(g)及びαを固定し、異なるs
i
Y,(l)を切り替えることによって作成される。各ローカルリシェーピング関数は、グローバルリシェーピング関数との交差におけるSDR値である、それぞれのローカル輝度値s
i
Y,(l)に対応する。
図3Eに示すように、ローカルリシェーピング関数及びグローバルリシェーピング関数のいずれかの交差において、ローカルリシェーピング関数の傾きはグローバルリシェーピング関数の傾きよりも大きい。
【0110】
図3Fは、複数の(例えば、実際、候補、可能等の)グローバルリシェーピング関数に関してここで説明する手法によって選択される例示的なローカルリシェーピング関数を示す。図示のように、全ての示されるグローバルリシェーピング関数と比較して、ローカルリシェーピング関数の傾きは、ローカルリシェーピング関数といずれかのグローバルリシェーピング関数の交差においてより大きくなる。
【0111】
さらに、任意選択で或いは代替として、ローカルリシェーピング操作(212)のためのローカルリシェーピング関数を決定又は選択する一部として、非線形調整が更に行われてもよい。
【0112】
上記のように、ピクセル単位の精度までのローカルリシェーピング関数は、ルマ又はYチャネルにおける全体のHDRコードワード空間の一部又は全部をカバーする、0以上4095以下(0,1,2,...,4095)のようなL1-mid値の全ての整数値についての(基本又は非基本)リシェーピング関数の事前計算された一群のBLUTから決定又は選択できる。事前計算された一群のBLUTのこれらの(候補)リシェーピング関数の一部又は全部は、外挿及び/又は内挿を使用して取得されてもよい。これは、例えば、ピクセル又は画像/フレームが処理されている実行時に、各ピクセル又は各画像/フレームについて正確なローカルリシェーピング関数を明示的に計算するのを回避できる。
【0113】
事前計算された一群のBLUTの(基本又は非基本)リシェーピング関数を使用して、入力SDR画像(202)のような各画像/フレームについて、最初にローカル輝度(si
Y,(l))が画像/フレームにおける各ピクセルについて計算できる。ローカル輝度(si
Y,(l))(例えば、ローカル輝度のプロキシ又は近似等)を生成又は推定するために、画像フィルタリングが使用されてもよい。次いで、ローカル輝度((si
Y,(l))は、上記の式(5)及び(6)に従って画像/フレーム内のこのような各ピクセルについて対応するL1-mid値(L(l))を生成又は予測するために使用でき、画像/フレームにおける各ピクセルについてのL1-mid値(L(l))を含むL1-midマップを生成できる。
【0114】
いくつかの動作シナリオでは、L1-mid値が低すぎてリシェーピングされたHDR画像(214)に不自然な外観を与えることを防止するために、以下のように、上記の式(5)又は(6)に従って取得されたL1-mid値を更に調整するための非線形関数fSL(.)が導入されてもよい。
Li
(l)=L(g)+fSL(α(si
Y-si
Y,(l))) (10a)
或いは、同等に以下でもよい。
Li
(l)=L(g)+fSL(ΔLi
(l)) (10b)
【0115】
限定ではなく例として、非線形関数f
SL(.)(又はソフトクリッピング関数)は、以下のように最小値をオフセット値にソフトクリップするシグモイド線形形状関数(
図3Gに示す)でもよい。
【数17】
ここで、dはシグモイドオフセットを表す。dの例示的な値は、[0,4095]の全体のL1-mid値範囲に対して(に適用可能な)200でもよいが、必ずしもこれに限定されない。
【0116】
上記の式(11)に示すように、非線形関数f
SL(.)では最大値が調整されなくてもよく、より明るいピクセルが比較的十分なハイライトを取得又は保持することを可能にする。x=0において非線形関数f
SL(.)の傾きは1に等しくなるように設定されてもよい点に留意する。シグモイド線形形状関数を使用してローカルリシェーピングについてのL1-mid値を調整する例示的な手順が以下の表6に示される。
【表6】
【0117】
いくつかの動作シナリオでは、シグモイド線形関数/活性化は、(例えば、元の)線形関数/活性化と比較して、暗い領域での過剰な強調(例えば、更に暗くする等)を回避又は低減するのに役立てることができる。シグモイド線形関数又は活性化による暗い領域は、線形関数又は活性化による領域よりも明るく見えてもよい。
【0118】
[ガイド付きフィルタリング]
ローカルリシェーピング関数は、ローカル領域でより大きいコントラスト比を提供するが、ローカルリシェーピング関数からの強調が自然に見えるように、各ピクセルについてローカル輝度レベルsi
Y,(l)が適切に設定されるべきである。ローカル領域と同様に、ローカル輝度は主観的であり(視聴者に依存する)、コンテンツに依存する。直感的には、ピクセルについてのローカル輝度レベルsi
Y,(l)は、同じ視覚オブジェクト/文字上のピクセル又は同じ光源を共有するピクセルの近く又は周囲のピクセルの平均輝度として設定されるべきであり、それにより、同じ視覚オブジェクト/文字に属するピクセル及び/又は同じ光源を共有するピクセルは、同じ又は同様のローカルリシェーピング関数でリシェーピングできるようにする。しかし、視覚オブジェクト/文字及び光源を検索又は識別することは簡単な作業ではない。いくつかの動作シナリオでは、例えば、画像/フレーム内の視覚オブジェクト/文字及び光源を(例えば、明示的等に)検索又は識別するための高い計算コストをもたらすことなく、同じ視覚オブジェクト/文字に属するピクセル及び/又は同じ光源を共有するピクセルが、同じ又は同様のローカルリシェーピング関数でリシェーピングできる効果を近似又は実現するために、エッジ保存画像フィルタリングが使用されてもよい。
【0119】
いくつかの動作シナリオでは、エッジ保存画像フィルタリングは、比較的低い又は中程度の計算コストで効率的に実行できるガイド付き画像フィルタで実行されてもよい。例示的なガイド付き画像フィルタリングは、Kaiming He, Jian Sun及びXiaoou Tang,“Guided Image Filtering”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 35, no. 6, pp.1397-1409(2013)に記載されており、この全内容を参照により援用する。
【0120】
入力SDR画像(202)のような入力画像P、ガイダンス画像I、カーネルサイズk及び所望/ターゲットの平滑化の程度εが与えられると、ガイド付き画像フィルタは、バイラテラルフィルタと同様に、入力画像(入力画像内のコードワード値)に対してローカル加重平均を実行できる。重みは、ガイダンス画像におけるエッジの同じ側(例えば、同様の色、同じ視覚的オブジェクト/文字上等)のピクセルからのフィルタリング値への寄与が、エッジの反対側(例えば、異なる色、異なる視覚オブジェクト/文字上等)のピクセルからの寄与よりも大きくなるように計算又は決定できる。その結果、ガイダンス画像におけるエッジの同じ側のピクセルが一緒に平均化され、フィルタリング値を支配し、その結果、そうでなければ画像/フレームにおける視覚オブジェクト/文字及び光源を(例えば、明示的等に)検索又は識別するために高い計算コストをもたらすことによって取得され得る効果を効率的に近似するエッジ保存特性を生じる。
【0121】
ガイド付きフィルタは、フィルタリングされた出力結果又はフィルタリング画像が、ノイズが追加されたガイダンス画像に関して線形関数であるという制約を課す。したがって、制約最適化問題は、入力画像の各ローカル領域における予測誤差を最小化するように定式化できる。この最適化問題は、各ローカル領域におけるリッジ回帰によって解決され得る。ガイダンスフィルタに基づくフィルタリングプロセスは、ピクセル単位のリッジ回帰のための効率的な解決策を実装することによって高速化できる。
【0122】
ガイド付き画像フィルタで入力画像Pをフィルタリングするための例示的な手順が、以下の表6に示される。
【表7】
【0123】
上記の表6における平均フィルタ(fmean)は、O(N)時間の複雑性の計算でガイダンス画像Iから積分画像を生成することを通じて少なくとも部分的に取得又は実装でき、ここで、Nは入力画像におけるピクセル数である。
【0124】
サイズW×Hのガイダンス画像Iが与えられると、その積分画像Jはサイズ(W+1)×(H+1)の画像であり、各ピクセル値は、以下のように、Iの上及び左にある全てのピクセルの和になる。
【数18】
【0125】
積分画像Jは、積分画像が導出される(入力)ガイダンス画像Iにおけるものよりも高い精度の値を含んでもよい点に留意する。ビット深度B
S及びサイズW×Hの(入力)ガイダンス画像について、その積分画像は精度
【数19】
を有する値を含んでもよい。例えば、10ビットの1080p入力画像について、その積分画像は精度1:1920×1080×2
10≒1:2.2×10
9を有する値を含んでもよい。
【0126】
積分画像による平均フィルタリングのための例示的な手順が以下の表7に示される。積分画像を生成するための例示的な手順が以下の表8に示される。表7に示す平均フィルタリングで使用される例示的な補助手順が以下の表9に示される。
【表8-1】
【表8-2】
【表9】
【表10】
【0127】
入力画像がガイダンス画像として使用される場合、フィルタリング結果はバイラテラルフィルタから生成された結果と同様であり、同様の色を有するピクセルが一緒に平均化される。
【0128】
いくつかの動作シナリオでは、サブサンプリングされた画像で回帰が実行されるフィルタリングプロセスを高速化するために、より高速なバージョンのガイド付き画像フィルタが実装又は実行されてもよい。
【0129】
サブサンプリングされた画像を用いてガイド付き画像フィルタで入力画像Pをフィルタリングするための例示的な手順が、以下の表10に示される。
【表11】
【0130】
上記の表10に示される関数f
subsample及びfu
psampleは、以下の表11及び12に示すように実行される。
【表12】
【表13】
【0131】
上記の表11及び表12におけるサブサンプリング係数の選択は、以下に詳細に説明するように、HDR画像の最終的な品質(214)を犠牲にすることなく行われることができる。
【0132】
ガイド付き画像フィルタで使用されるパラメータは、他の画像フィルタで使用されるパラメータと比較されてもよい。カーネルに関連する半径はσ
blurとして定義されてもよく、ルマ又はYチャネルにおける平滑化の程度εに関連する半径はσ
Yとして定義されてもよい。これらのパラメータは、ガウスフィルタ又はバイラテラルフィルタにおける標準偏差/半径に類似しており、半径内のピクセルがフィルタリング又は平均化されてもよい。したがって、ガイド付き画像フィルタのパラメータは、以下のように解釈又は指定されてもよい。
【数20】
ここで説明する画像フィルタリングは、異なる空間解像度の入力を扱ってもよい。したがって、σ
blurのようなパラメータは、画像サイズに比例して調整されてもよい。例えば、異なる空間解像度で同様の視覚効果を取得する目的で、σ
blurは1920×1080の解像度の画像については50に等しく設定されてもよく、960×540の解像度の同じコンテンツについては25に設定されてもよい。平滑化の程度εについては、正規化されたSDR画像(例えば、[0,1]の値の範囲で正規化されたコードワード等)についてはσ
Y=0.1及びε=0.01が設定されてもよい。
【0133】
さらに、任意選択で或いは代替として、ここで説明するガイダンス画像は、複数の特徴に関連する複数の次元を有してもよい。ガイダンス画像のこれらの次元は、必ずしもカラーチャネルYUV又はRGBに関連するとは限らない。単一の(例えば、スカラー等の)共分散だけでなく、複数の次元にわたる共分散行列が計算されてもよい。
【0134】
入力画像Pを複数次元(例えば、3次元等)のガイド付き画像フィルタでフィルタリングするための例示的な手順が、以下の表13に示される。
【表14-1】
【表14-2】
【0135】
上記の表13において、Uは3×3の単位行列を表す。3次元ガイダンス画像についてのパラメータεは、以下のように、次元の総数に基づいてスケーリングされてもよい。
ε=3σY
3 (14)
【0136】
[ハローアーティファクトの低減]
画像における広い領域にわたる画像フィルタリングから生じ得る主なアーティファクトは、ハローアーティファクトである。ハローアーティファクトは、視覚オブジェクト/文字のエッジの望ましくない平滑化勾配又は偶然の平滑化勾配を導入するローカルフィルタリングによって引き起こされ得る。例えば、このようなローカル画像フィルタリングは、空のような背景と共に少女のような前景視覚オブジェクト/文字のエッジの望ましくない平滑化勾配又は偶然の平滑化勾配によって引き起こされる望ましくない「強調(enhancement)」(明るいハロー)を導入し得る。その結果、ローカル画像フィルタリングから少なくとも部分的に生成された出力画像において、少女のような前景視覚オブジェクト/文字の周囲に明るいハローが生成できる。
【0137】
ここで説明するガイド付き画像フィルタは、エッジを保持するように設計できるが、ガイド付き画像フィルタが非ゼロ半径内でローカル線形モデルを課し、不完全な(或いは近似的な)リッジ回帰解で動作することを考えると、ハローアーティファクトは完全に回避されることもあれば、完全に回避されないこともある。
【0138】
いくつかの動作シナリオでは、ローカル画像フィルタリングの強度又は程度を調整するために、画像勾配が重み係数として使用されてもよい。ハローアーティファクトは、空のようなテクスチャのない滑らかな領域でアーティファクトが発生した場合、視聴者又は観察者によってより目立つ可能性がある。したがって、これらの領域ではローカル画像フィルタリングの強度又は程度が低減され、ハローアーティファクトを目立たなくするか或いはあまり目立たないようにすることができる。比較として、テクスチャ領域におけるローカル画像フィルタリングは低減される必要はない。
【0139】
ガイド付きフィルタは、エッジに沿った強力な平滑化を回避するために、エッジを保存することを試みる点に留意する。ガイダンス画像が鋭いエッジの近くで比較的大きい大きさの値(正又は負とすることができる)を有する場合、ガイド付き画像フィルタリング又はエッジに沿った平滑化は比較的弱くなり、それにより、エッジのぼやけを回避し、エッジの近くのハローアーティファクトを低減する。この平滑化結果を達成するために、入力画像から抽出された高周波数特徴がガイダンス画像の一次元に導入され、フィルタリング/平滑化に関する更なるガイダンスを提供するために使用されてもよい。高周波数特徴は、以下のように画像勾配の逆数によって重み付けできる。
【数21】
ここで、f
Gauss(.)はピクセル単位のガウスぼかしを表し、G
magはピクセル単位の画像勾配の大きさを表し、例えば、Sobelフィルタを使用して取得又は獲得され、ε
gmagは正則化定数(例えば、入力画像としてサイズ1920×1080の正規化SDR画像の場合は0.01)を表す。ε
gmagの値は、入力画像の画像解像度に反比例してもよい。
【0140】
上記の式(15)の分子P-fGauss(P)は、入力画像のピクセル単位の高周波数成分を表す。(元の)入力画像の代わりに高周波数(成分)特徴を使用する目的は、入力画像のエッジにおける(例えば元の)入力値又はエッジの近くの入力値の代わりに、値の差(入力画像とガウスぼかし画像との間の違いに基づいて入力画像から抽出された高周波数成分によって測定される)でフィルタリング/平滑化をガイドすることである。
【0141】
上記の式(15)における分母fGauss(Gmag)+εgmagは、入力画像のテクスチャ強度を表す。上記の式(15)における重み付けされた高周波数特徴featは、ガイダンス画像の次元の1つとして使用できる。これらの位置又は領域が比較的高い周波数成分(P-fGauss(P))及び比較的低いテクスチャ強度(fGauss(Gmag)+εgman)を有する場合、ガイダンス画像のこの次元はエッジ/境界の近くで比較的高い値を提供し、このような位置又は領域の近くで比較的低い強度又は程度の平滑化又は強調を引き起こす。他方、位置又は領域が比較的高い周波数成分及び比較的高いテクスチャ強度の双方を有する場合、重み付けされた高周波数特徴feat又はガイダンス画像の次元は、その位置又は領域の近くで或いはその位置又は領域において比較的低い値を提供し、このような位置又は領域の近くで比較的高い強度又は程度の平滑化又は強調を引き起こす。高周波数特性featの形式でガイダンス画像のこの次元で実装されるような強調又は平滑化のスケーリング戦略を使用して、エッジの近くの位置又は領域がテクスチャでのない滑らかな領域である場合、エッジの間の差が拡大又は維持できる。ガイド付き画像フィルタは、これらの位置又は領域においてより高いfeat値が与えられると、不要な平滑化又は強調を低減する。
【0142】
Sobelフィルタを使用してピクセル単位の画像勾配G
mag(又はG(i,j))を取得するための例示的な手順が、以下の表14に示される。ピクセル単位のガウスぼかしのための例示的な手順が、以下の表15に示される。
【表15】
【表16】
【0143】
ここで使用される、上記の表14のようなb=clip(a,x,y)の式におけるクリップ関数は、a<xである場合にはb=xであり、そうでなくa>yである場合にはb=yであり、そうでない場合にはb=aという演算を実行する。
【0144】
いくつかの動作シナリオでは、上記の式(15)における高周波数特徴featはガイダンス画像の第3の次元として使用されてもよく、一方、入力画像がガイダンス画像の第1及び第2の次元として使用されてもよい。さらに、任意選択で或いは代替として、ガイダンス画像におけるこれらの3つの次元は同じダイナミックレンジに調整されてもよい。ガイダンス画像における第3の次元は、定数a
gradfeat(例えば、0.3等)で乗算できる。したがって、ガイダンス画像の3つの次元は、以下のように指定又は定義できる。
【数22】
【0145】
[マルチレベルフィルタリング]
画像フィルタリングの重要な側面は、フィルタリングに使用されるカーネルサイズである。カーネルサイズが小さいほど、フィルタリング結果を生成するためのフィルタリング中のローカル領域が小さいと考えられる(したがって、ローカル領域において、より少ないピクセルが使用又はリシェーピングされる)。他方、カーネルサイズが大きいほど、フィルタリング結果を生成するためのフィルタリング中のローカル領域が大きいと考えられる(したがって、ローカル領域において、より大きいピクセルが使用又はリシェーピングされる)。比較的小さいカーネル(サイズ)の場合、比較的小さいローカル領域に対応する比較的細かい画像の詳細及びテクスチャは強調又は変更されるが、比較的粗い画像の詳細及びテクスチャは変更前と同様であるか或いはほとんど変更されない。他方、比較的大きいカーネル(サイズ)の場合、比較的大きいローカル領域に対応する比較的粗い画像の詳細及びテクスチャは一緒に強調又は変更されるが、比較的細かい画像の詳細及びテクスチャは変更前と同様であるか或いはほとんど変更されない。
【0146】
ここで説明する手法は、異なるカーネルサイズを利用するように実装できる(例えば、ローカル領域又はローカル輝度レベルがどのように知覚されるかについての視聴者依存性又はコンテンツ依存性をより良く考慮するため等)。例えば、マルチレベルフィルタリングがこれらの技術で実装され、複数の異なるN
K個のカーネルサイズで生成された複数の異なるフィルタリング画像S
n
Y,(l)(n=0,1,…,N
K-1)の加重和として、全体の結合フィルタリング画像
【数23】
を生成してもよく、それにより、最終的にリシェーピングされたHDR画像(214)が、以下のように、複数の異なるN
K個のカーネルサイズに対応する全てのレベル(マルチレベルフィルタリング)で強調されて見えるようにする。
【数24】
ここで、w
nは、第nのレベル(又はN
K個のカーネルサイズの中の第nのカーネルサイズ)における第nのフィルタリング画像についての重みを示す。
【0147】
上記の式(17)から結合フィルタリング画像におけるフィルタリング値(例えば、入力SDR画像(202)におけるローカル輝度レベルsi
Y,(l)の推定又はプロキシ等として使用される)は、ローカルリシェーピング関数の選択のための式(10a)における入力si
Y,(l)として使用されてもよい。
【0148】
いくつかの動作シナリオでは、リシェーピングされたHDR画像(例えば、
図2A又は
図2Bの214等)のより良い外観を提供するのを助けるために、4つのレベル(又はN
K=4)又はカーネルサイズの画像フィルタリングが使用され、それぞれの重み係数と組み合わされてもよい。これらの4つのレベルの例示的なカーネルサイズは、1920×1080の画像サイズについてσ
blur(12,25,50,100)でもよいが、必ずしもこれに限定されない。重み係数の例示的な値は、(0.3,0.3,0.2,0.2)でもよいが、必ずしもこれに限定されない。
【0149】
計算コスト及び時間は、全体の結合フィルタリング画像を取得するために使用されるレベルの総数と共に増加する可能性があるが、このような計算コスト及び時間は、異なるレベルの間でいくつかの変数又は数量を再利用又は共有することによって低減できる。さらに、任意選択で或いは代替として、計算コストがカーネルサイズと共に増加するのを防止するのを助けるのに利用可能である場合には、近似が適用されてもよい。
【0150】
トレーニングデータセット内のHDR-SDRトレーニング画像ペアは、対応するリシェーピングされたHDR画像においてハローアーティファクトがないか或いはほとんどない(ローカルコントラスト)強調を提供する目的で、一部又は全部の動作パラメータの最適値を見つけるのを助けるために使用されてもよい。画像ペア内の画像の前景、背景、画像オブジェクト/文字等をラベル付け又は識別するために、ビデオ注釈ツールがこれらの画像に適用されてもよい。例示的なビデオ注釈は、2019年12月6日に提出された、A. Khalilian-Gourtaniらによる米国仮特許出願第62/944,847号,“User guided image segmentation methods and products”に記載されており、その全内容を参照により援用する。ハローアーティファクトマスク(HAとして示される)は、前景、画像オブジェクト/文字等を囲む背景ピクセルを定義又は識別するために使用されてもよい。説明のみの目的で、例えば、ビデオ注釈ツール又はオブジェクトセグメンテーション技術によって生成された前景マスク(FGと示される)で識別又は使用される前景、画像オブジェクト/文字等の距離変換を使用して、これらの背景ピクセルは、例えば、前景、画像オブジェクト/文字等の距離範囲(例えば、5~30ピクセル等)内で、前景、画像オブジェクト/文字等に隣接して位置してもよい。
【0151】
強調を定量的に表すために、ローカル前景領域FG
n,iにおける領域ベースのテクスチャ尺度(texとして示される)が定義できる。ローカル前景領域FG
n,iは、第nの画像の第iのピクセルに中心を有する。領域ベースのテクスチャ尺度texは、以下のように、ローカル前景領域FG
n,iにおけるリシェーピングされたHDR画像(例えば、
図2A又は
図2Bの214等)と入力SDR画像(例えば、
図2A又は
図2Bの202等)との間の分散の比率として定義又は指定されてもよい。
【数25】
【0152】
領域ベースのテクスチャ尺度texは、ローカルリシェーピング操作(例えば、
図2A又は
図2Bの212等)から増加した高周波数成分を測定するために使用できる。領域ベースのテクスチャ尺度の値が高いほど、入力SDRをローカルでリシェーピングしてリシェーピングされたHDR画像を生成することから、ローカルコントラスト比が高くなることを示す。
【0153】
さらに、ハロー尺度は、以下のように、ハローアーティファクトマスクで識別されるローカルハローアーティファクト領域HA
n,iにおけるリシェーピングされたHDR画像と入力SDR画像との間の相関係数として定義できる。
【数26】
【0154】
ハロー尺度haloは、ローカルリシェーピングによって導入されたリシェーピングされたHDR画像と入力SDRとの間の不整合を測定するために使用できる。リシェーピングされたHDR画像にハローアーティファクトが存在する場合、リシェーピングされたHDR画像は、ハローアーティファクトマスク(例えば、ハローアーティファクトマスクで識別される前景を囲む背景ピクセル、視覚オブジェクト/文字等)において入力SDRとは異なる傾向を示す。上記の式(19)における相関係数は、以下のように、2つの変数X及びYの間の線形相関を測定するために使用されてもよい。
corrcoef(X,Y)=cov(X,Y)/(var(X)×var(Y))0.5 (20a)
ここで、共分散cov(X,Y)は以下のように定義される。
cov(X,Y)=E[(X-E[X])×(Y-E[Y])] (20b)
【0155】
ここで、E[.]は平均値を表す。
【0156】
上記の式(19)におけるハロー尺度haloにおける第2項の比較的小さい値は、入力SDR画像とリシェーピングされたHDR画像との間の比較的弱い線形関係(又は比較的大きい不整合)を意味し、それによって、比較的強いハローアーティファクトを示す。
【0157】
ここで説明する動作パラメータの最適値を見つける目的は、テクスチャ尺度についての大きい値(例えば、最大値等)とハロー尺度についての小さい値(例えば、最小値等)とを提供又は生成することである。最適値が生成され得る例示的な動作パラメータは、alocal、σY、agradfeat、εgmag等の一部又は全部を含んでもよいが、必ずしもこれらに限定されない。
【0158】
いくつかの動作シナリオでは、N
image(例えば、N
image=10等)個のHDR-SDRトレーニング画像ペア内のSDR画像が、前景マスクFG
n,i及びハローマスクHA
n,iが生成できるサイズr×r(例えば、r=31等)のN
sample(例えば、N
sample=100等)個の正方形領域にランダムにサンプリングできる。動作パラメータの最適値を取得するために、最適化問題は以下のように定式化されてもよい。
【数27】
【0159】
非限定的な例では、動作パラメータの最適値を検索するために使用されるパラメータ空間は、alocal=[2,3]、σY=[0.08,0.12]、agradfeat=[0.2,0.3]及びεgmag=[0.03,0.1]のように定義されてもよい。動作パラメータの最適値は、正規化された入力SDR入力画像(例えば、[0,1]等の正規化された値の範囲の正規化されたSDRコードワード値を含む)について、ハロー尺度及びテクスチャ尺度に少なくとも部分的に基づいて、alocal=3、σY=0.10、agradfeat=0.3及びεgmag=0.01のように選択されてもよい。
【0160】
いくつかの動作シナリオでは、画像フィルタリングを高速化するために、一部又は全部の計算の結果が、例えば、以下の2つの側面においてローカルリシェーピング操作(212)で共有又は再利用できる。第1に、ガイダンス画像(入力SDR画像に対して実行されるフィルタリングをガイドするために使用される)における3つの次元のうちの2つが入力SDR画像I1=I2=Pとして設定されてもよく。ここで、Pは入力SDR画像を表す。その結果、入力SDR画像及び/又はガイダンス画像内のmean、mul、var及びcovに関する計算及び/又は計算結果が共有又は再利用できる。第2に、カーネルサイズに依存しないか或いは影響を受けない変数(又は数量)が、マルチレベルフィルタリングにおける異なるレベルの間で共有できる。異なるレベルの間で計算及び/又は計算結果(例えば、I1’=f
subsample(I1,s)、mul
I11=I1’.*I1’等)を簡略化又は再利用する例示的な手順が、以下の表16に示される。
【表17-1】
【表17-2】
【0161】
次に、例えば、ガウスフィルタを近似するために反復ボックスフィルタを使用して、ガウスぼかしが高速化されてもよい。反復ボックスフィルタによるガウスフィルタの例示的な近似は、Pascal Getreuer,“A Survey of Gauss Convolution Algorithms”, Image Processing On Line, vol. 3, pp.286-310 (2013)、William M. Wells,“Efficient Synthesis of Gauss Filters by Cascaded Uniform Filters”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 8, no. 2, pp.234-239 (1986)に記載されており、これらの全内容を参照により援用する。反復ボックスフィルタの反復の総数NG
iterは3に設定されてもよいが、これに限定されない。ガウスフィルタを近似するために反復ボックスフィルタを使用する例示的な手順が、以下の表17に示される。
【表18】
【0162】
高速ガイド付き画像フィルタにおけるサブサンプリングの有効性が分析されてもよい。サブサンプリング係数についての異なる値で生成されたリシェーピングされたHDR画像の計算コスト/時間及び視覚的品質が、サブサンプリング係数の最適値を決定するために比較されてもよい。いくつかの動作シナリオでは、サブサンプリング係数sについての値2は、リシェーピングされたHDR画像における視覚的な劣化がないか或いはほとんどなく、かなりの速度向上(例えば、~17%等)を提供するが、サブサンプリング係数sについての値4は、視覚的な劣化又は差を示す。したがって、コンピューティングリソースが制限される可能性があるいくつかの動作シナリオでは、サブサンプリングは、サブサンプル係数sについての値2を用いて、ここで説明するようにマルチレベルフィルタリングで実装又は実行されてもよい。
【0163】
図2Cは、マルチレベルエッジ保存フィルタリングを適用するための例示的なフローを示す。いくつかの実施形態では、1つ以上のコンピューティングデバイス又はコンポーネント(例えば、符号化デバイス/モジュール、トランスコーディングデバイス/モジュール、復号デバイス/モジュール、逆トーンマッピングデバイス/モジュール、トーンマッピングデバイス/モジュール、メディアデバイス/モジュール、逆マッピング生成及びアプリケーションシステム等)が、このフローにおける一部又は全部の動作を実行してもよい。
【0164】
ブロック250は、入力SDR画像(例えば、
図2A又は
図2Bの202等)を受信し、入力SDR画像(202)の画像勾配を計算することを含む。ブロック252は、例えば、複数レベル(又は複数の反復)における現在のレベルについて、入力SDR画像(202)及び画像勾配を使用して、ガウスぼかし画像勾配及びガウスぼかしSDR画像を生成することを含み、ここで、現在のレベルは、特定の処理順序での複数レベルのうち最初のレベルに設定される。ブロック254は、ガウスぼかし画像勾配及びガウスぼかしSDR画像からガイダンス画像を生成することを含む。ブロック256は、入力SDR画像(202)を使用して積分画像(入力SDR画像(202)についてのもの)を計算することを含む。ブロック258は、ガイダンス画像及び積分画像で高速ガイド付き画像フィルタリングを適用して、現在のレベルの入力SDR画像(202)についてフィルタリングされたSDR画像260を生成することを含む。ブロック262は、フィルタリングされたSDR画像(260)を、複数レベルのフィルタリングされたSDR画像の加重和(0又は空に初期化されてもよい)に追加することを含む。ブロック264は、最大反復又はレベルに達したか否かを決定することを含む。最大反復又はレベルに達した場合(「yes」)、加重和がマルチレベルフィルタリングされたSDR画像として取得される(266)。他方、最大反復又はレベルに達していない場合(「no」)、現在のレベルがインクリメントされ、フローはブロック252に戻る。
【0165】
MMRベースのリシェーピング/マッピングは、入力SDR画像(例えば、
図2A又は
図2Bの202等)のルマ及びクロマSDRコードワードから、クロマチャネルにおけるリシェーピングされたHDR画像(例えば、
図2A又は
図2Bの214等)についてのリシェーピングされたHDRコードワードを生成するクロマリシェーピングを実行又は実施するために使用されてもよい。
【0166】
ルマローカルリシェーピングのために複数の異なるL1-mid値についての基本又は非基本(BLUT)リシェーピング関数の一群のBLUTを事前計算する(或いは、入力SDR画像におけるルマ又はYチャネルのSDRコードワードをローカルでリシェーピングすることから、リシェーピングされたHDR画像におけるリシェーピングされたルマ又はYチャネルのHDRコードワードを生成する)のと同様に、クロマローカルリシェーピングのために複数の異なるL1-mid値についての基本又は非基本(BMMR)リシェーピングマッピングの一群の後方MMR(BMMR)が行われる。
【0167】
基本又は非基本(BMMR)リシェーピングマッピングは、複数のMMR係数のセットによってそれぞれ指定されてもよい。一群のBMMRにおける各(BMMR)リシェーピングマッピングは、複数のMMR係数のセットの中のそれぞれのMMR係数のセットで指定されてもよい。これらのMMR係数のセットは、ここで説明するように画像処理システムのシステム初期化/起動期間中に事前計算及び/又は事前ロードできる。その結果、入力SDR画像がHDR画像にローカルでリシェーピングされるときに、実行時にクロマローカルリシェーピングのためのMMR係数を生成する必要はない。外挿及び/又は内挿は、クロマチャネルについてのBMMR係数の基本セットを、一群のBMMRにおける他のL1-mid値についてのBBMR係数の非基本セットに拡張するために実行されてもよい。
【0168】
L1-midマップがルマローカルリシェーピングから生成できるので、同じL1-midマップが、クロマローカルリシェーピングのための特定のL1-mid値についてのMMR係数の特定のBMMRセットを選択又は検索するために使用されてもよい。一群のBLUTで選択又は検索された特定のL1-mid値についての特定のBLUTの組み合わせで、特定のL1-mid値についてのBMMR係数の特定のBMMRセット(特定のL1-mid値についての特定のBMMRリシェーピング/マッピングを表す)は、リシェーピングされたHDR画像においてリシェーピングされた色を生成する(入力SDR画像から決定されたグローバルL1-mid値に対応するグローバルルマ及びクロマリシェーピング関数/マッピングで示されるように、全体のHDRトーン/外観(例えば、HDR-SDR画像のトレーニング等で決定される)と一致させつつ、彩度を増加させる)ために入力SDR画像に適用できる。
【0169】
MMR係数のセットは、L1-midマップで示されるL1-mid値/インデックスに基づいて、ピクセル単位の精度まで選択又は検索されてもよい。各ピクセルまで、以下のようにクロマチャネルCb及びCrについてクロマローカルリシェーピングが実行されてもよい。
【数28】
【0170】
多くの動作シナリオでは、リシェーピングされたCb及びCrのHDRコードワードは、特に比較的低い入力SDRルマ又はYコードワードの場合、L1-mid値が大きくなると、対応するリシェーピングされた色の彩度が高くする(例えば、
【数29】
によって測定されるような、対応するリシェーピングされた色の中間色又はグレースケール色への距離が大きくなる)。その結果、ローカルL1-midマップでのローカルリシェーピングでは、明るいルマ又は輝度レベルを有するピクセルは彩度が高くなり、暗いルマ又は輝度レベルを有するピクセルは彩度が低くなる。
【0171】
いくつかの動作シナリオでは、SDR画像をHDR画像にローカルリシェーピングする際に、線形セグメントベースの構造が使用されてもよい。例示的な線形セグメントベースの構造は、H. Kadu及びG-Mによる米国特許第10,397,576号,“Reshaping curve optimization in HDR coding”に記載されており、その全内容は、ここに完全に記載されているかのように参照により援用される。
【0172】
ここで説明する一部又は全ての技術は、放送ビデオアプリケーション、リアルタイムストリーミングアプリケーション等のようなリアルタイム動作の一部として実装及び/又は実行できる。さらに、任意選択で或いは代替として、ここで説明する一部又は全ての技術は、非リアルタイムストリーミングアプリケーション、シネマアプリケーション等のような時間遅延又はオフライン動作の一部として実装及び/又は実行できる。
【0173】
[例示的な処理フロー]
図4は、実施形態による例示的なプロセスフローを示す。いくつかの実施形態では、1つ以上のコンピューティングデバイス又はコンポーネント(例えば、符号化デバイス/モジュール、トランスコーディングデバイス/モジュール、復号デバイス/モジュール、逆トーンマッピングデバイス/モジュール、トーンマッピングデバイス/モジュール、メディアデバイス/モジュール、逆マッピング生成及びアプリケーションシステム等)がこのプロセスフローを実行してもよい。ブロック402において、画像処理システムは、第2のダイナミックレンジの入力画像についてのグローバルリシェーピング関数を選択するためのグローバルインデックス値を生成する。グローバルインデックス値は、入力画像におけるルマコードワードを使用して生成される。
【0174】
ブロック404において、画像処理システムは、画像フィルタリングを入力画像に適用して、フィルタリング画像を生成する。フィルタリング画像のフィルタリング値は、入力画像におけるローカル輝度レベルの尺度を提供する。
【0175】
ブロック406において、画像処理システムは、入力画像についての特定のローカルリシェーピング関数を選択するためのローカルインデックス値を生成する。ローカルインデックス値は、グローバルインデックス値及びフィルタリング画像のフィルタリング値を使用して生成される。
【0176】
ブロック408において、画像処理システムは、ローカルインデックス値を使用して選択された特定のローカルリシェーピング関数で入力画像を少なくとも部分的にリシェーピングすることによって、第1のダイナミックレンジのリシェーピングされた画像を生成させる。
【0177】
実施形態では、ローカルインデックス値はローカルインデックス値マップで表される。
【0178】
実施形態では、第1のダイナミックレンジはハイダイナミックレンジを表し、第2のダイナミックレンジは、ハイダイナミックレンジよりも低い標準ダイナミックレンジを表す。
【0179】
実施形態では、ローカルインデックス値を使用して選択された特定のローカルリシェーピング関数は、入力画像におけるルマコードワードをHDR画像におけるルマコードワードにリシェーピングし、ローカルインデックス値は、入力画像におけるルマコードワード及びクロマコードワードをリシェーピングされた画像におけるクロマコードワードにマッピングする特定のローカルリシェーピングマッピングを選択するために更に使用される。
【0180】
実施形態では、特定のローカルリシェーピング関数は、後方リシェーピングルックアップテーブルによって表され、特定のローカルリシェーピングマッピングは、後方多変量重回帰マッピングによって表される。
【0181】
実施形態では、ローカルインデックス値は、トレーニングデータセット内のトレーニング画像ペアでトレーニングされた予測モデルを使用して、グローバルインデックス値及びフィルタリング値から生成され、トレーニング画像ペアのそれぞれは、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像を含み、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像は、同じ視覚的意味内容を表す。
【0182】
実施形態では、特定のローカルリシェーピング関数のそれぞれは、複数の事前ロードされたリシェーピング関数の中から、ローカルインデックス値のそれぞれのローカルインデックス値に基づいて選択される。
【0183】
実施形態では、複数の事前ロードされたリシェーピング関数は、内挿、外挿又は内挿及び外挿の組み合わせのうち1つを通じて基本リシェーピング関数から生成され、基本リシェーピング関数は、複数のトレーニング画像ペアを含むトレーニングデータセットで決定され、トレーニング画像ペアのそれぞれは、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像を含み、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像は、同じ視覚的意味内容を表す。
【0184】
実施形態では、リシェーピングされた画像は、グローバルインデックス値及びローカルインデックス値を生成したビデオエンコーダによって生成される。
【0185】
実施形態では、リシェーピングされた画像は、グローバルインデックス値及びローカルインデックス値を生成したビデオエンコーダ以外の受信側デバイスによって生成される。
【0186】
実施形態では、フィルタリング画像は、カーネルサイズについて複数のレベルでの画像フィルタリングによって生成された複数の個別のフィルタリング画像の加重和である。
【0187】
一実施形態では、画像フィルタリングは、ハローアーティファクトを低減するために、ガイダンス画像と共に入力画像に適用される。
【0188】
実施形態では、画像フィルタリングは、ガイド付き画像フィルタリング、非ガイド付き画像フィルタリング、マルチレベルフィルタリング、エッジ保存フィルタリング、マルチレベルエッジ保存フィルタリング、非マルチレベルエッジ保存フィルタリング、マルチレベル非エッジ保存フィルタリング、非マルチレベル非エッジ保存フィルタリング等のうち1つを表す。
【0189】
実施形態では、ローカルインデックス値は、ソフトクリッピング関数に少なくとも部分的に基づいて生成され、ソフトクリッピング関数は、ルマコードワードとフィルタリング値との間のスケーリングされた差を入力として受け入れ、ソフトクリッピング関数は、入力画像の暗いピクセルについて最小値以上の出力値を生成するように特に選択される。
【0190】
実施形態では、画像フィルタリングは、ガイド付き画像で適用されるガイド付き画像フィルタリングを表し、ガイド付き画像は、ガイド付き画像の1つ以上のチャネルのうち1つにおける複数のピクセル位置について計算された画像勾配の逆数によってそれぞれ重み付けされた、複数のピクセル位置について計算された高周波数特徴値を含む。
【0191】
実施形態では、ガイド付き画像は、ハロー低減動作パラメータのセットに少なくとも部分的に基づいて導出されたガイド付き画像値を含み、画像処理システムは、複数の画像ペアの中の各画像ペアについて、ハロー低減動作パラメータのセットについての候補値の複数のセットを用いて、画像ペア内の第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジの対応するトレーニング画像の分散の比として、1つ以上のローカル前景領域の中のローカル前景領域において領域ベースのテクスチャ尺度を計算し、ここで、1つ以上のローカル前景領域は、画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされたものであり、複数の画像ペアの中の各画像ペアについて、ハロー低減動作パラメータのセットについての候補値の複数のセットを用いて、画像ペア内の第1のダイナミックレンジのトレーニング画像と第2のダイナミックレンジの対応するトレーニング画像との間の相関係数として、1つ以上のローカルハローアーティファクト領域の中のローカルハローアーティファクト領域におけるハロー尺度を計算し、ここで、1つ以上のローカルハローアーティファクト領域は、第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされたものであり、ハロー低減動作パラメータのセットについての候補値の複数のセットについて、(a)複数の画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされた全てのローカル前景領域についての全ての領域ベースのテクスチャ尺度と、(b)複数の画像ペア内の第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされた全てのローカルハローアーティファクト領域についての全てのハロー尺度とのそれぞれの加重和を計算し、ハロー低減動作パラメータのセットについての最適化値のセットを決定し、ここで、最適化値のセットは、(a)複数の画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされた全てのローカル前景領域についての全ての領域ベースのテクスチャ尺度と、(b)複数の画像ペア内の第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされた全てのローカルハローアーティファクト領域についての全てのハロー尺度との最小化された加重和を生成するために使用され、ハロー低減動作パラメータのセットについての最適化値のセットで、複数の空間カーネルサイズレベルにおける画像フィルタリングを入力画像に適用することを実行するように更に構成される。
【0192】
実施形態では、ディスプレイデバイス、モバイルデバイス、セットトップボックス、マルチメディアデバイス等のようなコンピューティングデバイスは、上記の方法のうちいずれかを実行するように構成される。実施形態では、装置はプロセッサを含み、上記の方法のうちいずれかを実行するように構成される。実施形態では、ソフトウェア命令を格納する非一時的なコンピュータ読み取り可能記憶媒体は、1つ以上のプロセッサによって実行されると、上記の方法のうちいずれかの実行を行わせる。
【0193】
実施形態では、1つ以上のプロセッサと、1つ以上のプロセッサによって実行されると上記の方法のうちいずれかの実行を行わせる命令のセットを格納する1つ以上の記憶媒体とを含むコンピューティングデバイスである。
【0194】
ここでは個別の実施形態について記載されているが、ここで説明する実施形態のいずれかの組み合わせ及び/又は部分的な実施形態が、更なる実施形態を形成するように組み合わされてもよい点に留意する。
【0195】
[例示的なコンピュータシステムの実装]
本発明の実施形態は、コンピュータシステム、電子回路及びコンポーネント内に構成されたシステム、マイクロコントローラのような集積回路(IC, integrated circuit)デバイス、フィールドプログラマブルゲートアレイ(FPGA, field programmable gate array)、又は他の構成可能若しくはプログラマブルロジックデバイス(PLD, programmable logic device)、離散時間若しくはデジタルシグナルプロセッサ(DSP, digital signal processor)、特定用途向けIC(ASIC, application specific IC)、及び/又はこのようなシステム、デバイス又はコンポーネントの1つ以上を含む装置で実装されてもよい。コンピュータ及び/又はICは、ここで説明するような、拡張ダイナミックレンジを有する画像の適応的知覚量子化に関連する命令を実施、制御又は実行してもよい。コンピュータ及び/又はICは、ここで説明する適応的知覚量子化プロセスに関連する様々なパラメータ又は値のいずれかを計算してもよい。画像及びビデオの実施形態は、ハードウェア、ソフトウェア、ファームウェア及びこれらの様々な組み合わせで実装されてもよい。
【0196】
本発明の特定の実装は、プロセッサに本開示の方法を実行させるソフトウェア命令を実行するコンピュータプロセッサを含む。例えば、ディスプレイ、エンコーダ、セットトップボックス、トランスコーダ等における1つ以上のプロセッサは、プロセッサにアクセス可能なプログラムメモリ内のソフトウェア命令を実行することによって、上記のようなHDR画像の適応的知覚量子化に関連する方法を実装してもよい。本発明の実施形態はまた、プログラム製品の形式で提供されてもよい。プログラム製品は、データプロセッサによって実行されると、データプロセッサに本発明の実施形態の方法を実行させる命令を含むコンピュータ読み取り可能信号のセットを搬送するいずれかの非一時的な媒体を含んでもよい。本発明の実施形態によるプログラム製品は、広範囲の形式のいずれかでもよい。プログラム製品は、例えば、フロッピーディスクを含む磁気データ記憶媒体、ハードディスクドライブ、CD ROM、DVDを含む光データ記憶媒体、ROM、フラッシュRAMを含む電子データ記憶媒体等のような物理媒体を含んでもよい。プログラム製品上のコンピュータ読み取り可能信号は、任意選択で圧縮又は暗号化されてもよい。
【0197】
コンポーネント(例えば、ソフトウェアモジュール、プロセッサ、アセンブリ、デバイス、回路等)について上記で言及される場合、特に指定のない限り、そのコンポーネントへの言及(「手段」への言及を含む)は、記載のコンポーネントの機能を実行する(例えば、機能的に等価である)いずれかのコンポーネントの等価物として含むものと解釈されるべきであり、これは、本発明の示される例示的実施形態において機能を実行する開示された構造と構造的に等価でないコンポーネントを含む。
【0198】
一実施形態によれば、ここで説明する技術は、1つ以上の特殊用途のコンピューティングデバイスによって実装される。特殊用途のコンピューティングデバイスは、技術を実行するようにハードワイヤードされてもよく、或いは、技術を実行するように永続的にプログラムされた1つ以上の特定用途向け集積回路(ASIC, application-specific integrated circuit)又はフィールドプログラマブルゲートアレイ(FPGA, field programmable gate array)のようなデジタル電子デバイスを含んでもよく、或いは、ファームウェア、メモリ、他のストレージ又はこれらの組み合わせでプログラム命令に従って技術を実行するようにプログラムされた1つ以上の汎用ハードウェアプロセッサを含んでもよい。このような特殊用途のコンピューティングデバイスは、カスタムのハードワイヤードロジック、ASIC又はFPGAをカスタムプログラミングと組み合わせて技術を達成してもよい。特殊用途のコンピューティングデバイスは、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルドデバイス、ネットワークデバイス、又は技術を実装するためにハードワイヤード及び/又はプログラムロジックを組み込んだいずれかの他のデバイスでもよい。
【0199】
例えば、
図5は、本発明の実施形態が実装され得るコンピュータシステム500を示すブロック図である。コンピュータシステム500は、情報を通信するためのバス502又は他の通信機構と、情報を処理するためのバス502に結合されたハードウェアプロセッサ504とを含む。ハードウェアプロセッサ504は、例えば、汎用マイクロプロセッサでもよい。
【0200】
コンピュータシステム500はまた、プロセッサ504によって実行される情報及び命令を格納するためにバス502に結合された、ランダムアクセスメモリ(RAM, random access memory)又は他の動的記憶デバイスのようなメインメモリ506も含む。メインメモリ506はまた、プロセッサ504によって実行される命令の実行中に一時的な変数又は他の中間情報を格納するために使用されてもよい。このような命令は、プロセッサ504にアクセス可能な非一時的な記憶媒体に格納されると、コンピュータシステム500を、命令で指定された動作を実行するようにカスタマイズされた特殊用途の機械にする。
【0201】
コンピュータシステム500は、プロセッサ504のための静的な情報及び命令を格納するために、バス502に結合された読み取り専用メモリ(ROM, read only memory)508又はその他の静的な記憶装置を更に含む。磁気ディスク又は光ディスクのような記憶デバイス510が情報及び命令を格納するために提供され、バス502に結合される。
【0202】
コンピュータシステム500は、情報をコンピュータユーザに表示するために、バス502を介して液晶ディスプレイのようなディスプレイ512に結合されてもよい。英数字及び他のキーを含む入力デバイス514は、情報及びコマンド選択をプロセッサ504に通信するためにバス502に結合される。他のタイプのユーザ入力デバイスは、方向情報及びコマンド選択をプロセッサ504に通信し、ディスプレイ512上のカーソル移動を制御するためのマウス、トラックボール又はカーソル方向キーのようなカーソル制御516である。この入力デバイスは、典型的に、第1の軸(例えば、x)及び第2の軸(例えば、y)の2つの軸に2つの自由度を有し、デバイスが平面内の位置を指定することを可能にする。
【0203】
コンピュータシステム500は、カスタマイズされたハードワイヤードロジック、1つ以上のASIC又はFPGA、コンピュータシステムと組み合わせてコンピュータシステム500を特殊用途の機械にするか或いはプログラムするファームウェア及び/又はプログラムロジックを使用して、ここで説明する技術を実装してもよい。一実施形態によれば、ここで説明する技術は、プロセッサ504がメインメモリ506に含まれる1つ以上の命令の1つ以上のシーケンスを実行することに応じて、コンピュータシステム500によって実行される。このような命令は、記憶デバイス510のような他の記憶媒体からメインメモリ506に読み取られてもよい。メインメモリ506に含まれる一連の命令の実行は、プロセッサ504にここで説明するプロセスステップを実行させる。代替実施形態では、ソフトウェア命令の代わりに或いはソフトウェア命令と組み合わせて、ハードワイヤード回路が使用されてもよい。
【0204】
ここで使用される「記憶媒体」は、機械を特定の方法で動作させるデータ及び/又は命令を格納するいずれかの非一時的な媒体を示す。このような記憶媒体は、不揮発性媒体及び/又は揮発性媒体を含んでもよい。不揮発性媒体は、例えば、記憶デバイス510のような光ディスク又は磁気ディスクを含む。揮発性媒体は、メインメモリ506のようなダイナミックメモリを含む。記憶媒体の一般的な形式は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ若しくはいずれかの他の磁気データ記憶媒体、CD-ROM、いずれかの他の光データ記憶媒体、穴のパターンを有するいずれかの物理媒体、RAM、PROM及びEPROM、FLASH-EPROM、NVRAM、いずれかの他のメモリチップ又はカートリッジを含む。
【0205】
記憶媒体は伝送媒体とは異なるが、組み合わせて使用されてもよい。伝送媒体は記憶媒体の間で情報を転送することに関与する。例えば、伝送媒体は、同軸ケーブル、銅線及び光ファイバを含み、バス502を含むワイヤを含む。伝送媒体はまた、電波及び赤外線データ通信中に生成されるような音波又は光波の形式を取ることもできる。
【0206】
様々な形式の媒体が、実行のためにプロセッサ504に1つ以上の命令の1つ以上のシーケンスを搬送することに関与してもよい。例えば、命令は最初にリモートコンピュータの磁気ディスク又はソリッドステートドライブで保持されてもよい。リモートコンピュータは命令をダイナミックメモリにロードし、モデムを使用して電話回線で命令を送信してもよい。コンピュータシステム500にローカルなモデムは電話回線でデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換できる。赤外線検出器は赤外線信号で搬送されたデータを受信でき、適切な回路はデータをバス502に配置できる。バス502はデータをメインメモリ506に搬送し、そこからプロセッサ504は命令を取得して実行する。メインメモリ506によって受信された命令は、任意選択で、プロセッサ504によって実行される前又は後に、記憶デバイス510に格納されてもよい。
【0207】
コンピュータシステム500はまた、バス502に結合された通信インタフェース518を含む。通信インタフェース518は、ローカルネットワーク522に接続されたネットワークリンク520への双方向データ通信結合を提供する。例えば、通信インタフェース518は、対応する種類の電話回線へのデータ通信接続を提供するためのサービス統合型デジタルネットワーク(ISDN, integrated services digital network)カード、ケーブルモデム、衛星モデム又はモデムでもよい。他の例として、通信インタフェース518は、互換性のあるLANへのデータ通信接続を提供するためのローカルエリアネットワーク(LAN, local area network)カードでもよい。無線リンクが実装されてもよい。いずれかのこのような実装では、通信インタフェース518は、様々な種類の情報を表すデジタルデータストリームを搬送する電気、電磁又は光信号を送受信する。
【0208】
ネットワークリンク520は、典型的には、1つ以上のネットワークを通じて他のデータデバイスへのデータ通信を提供する。例えば、ネットワークリンク520は、ローカルネットワーク522を通じてホストコンピュータ524又はインターネットサービスプロバイダ(ISP)526により運用されるデータ機器への接続を提供してもよい。ISP526は、現在一般的に「インターネット」528と呼ばれる世界規模のパケットデータ通信ネットワークを通じてデータ通信サービスを提供する。ローカルネットワーク522及びインターネット528の双方は、デジタルデータストリームを搬送する電気、電磁又は光信号を使用する。様々なネットワークを通じた信号と、ネットワークリンク520上の、コンピュータシステム500との間でデジタルデータを搬送する通信インタフェース518を通じた信号とは、例示的な形式の伝送媒体である。
【0209】
コンピュータシステム500は、ネットワーク、ネットワークリンク520及び通信インタフェース518を通じて、メッセージを送信し、プログラムコードを含むデータを受信できる。インターネットの例では、サーバ530は、インターネット528、ISP526、ローカルネットワーク522及び通信インタフェース518を通じて、アプリケーションプログラムのための要求コードを伝送してもよい。
【0210】
受信したコードは、受信したときにプロセッサ504によって実行されてもよく、或いは、後に実行するためにストレージデバイス510又は他の不揮発性ストレージに格納されてもよい。
【0211】
[均等、拡張、置換及びその他]
上記の明細書では、本発明の実施形態について、実装によって異なり得る多数の具体的な詳細を参照して説明した。したがって、本発明の請求項に記載される実施形態の唯一且つ排他的な指標であり、出願人が本発明の請求項に記載さる実施形態とすることを意図しているものは、請求項が発行する特定の形式の、本出願から発行する一式の請求項であり、いずれかのその後の訂正を含む。このような請求項に含まれる用語についてここで明示的に記載されたいずれかの定義は、当該請求項で使用される用語の意味を規定するものとする。したがって、請求項に明示的に記載されていない限定、要素、特性、特徴、利点又は属性は、決してこのような請求項の範囲を限定するべきではない。したがって、明細書及び図面は、限定的な意味ではなく例示的な意味で見なされるべきである。
【0212】
[列挙された例示的な実施形態の列挙]
本発明は、本発明の実施形態のいくつかの部分の構造、特徴及び機能を記載する以下の列挙された例示的な実施形態(EEE, Enumerated Example Embodiment)を含むが、これらに限定されない、ここで説明するいずれかの形式で具体化されてもよい。
【0213】
EEE1.第1のダイナミックレンジよりも低い第2のダイナミックレンジの入力画像から第1のダイナミックレンジの画像を生成するための方法であって、
入力画像におけるルマコードワードを使用して、第2のダイナミックレンジの入力画像についてのグローバルリシェーピング関数を選択するためのグローバルインデックス値を生成するステップと、
画像フィルタリングを入力画像に適用して、フィルタリング画像を生成するステップであり、フィルタリング画像のフィルタリング値は、入力画像におけるローカル輝度レベルの尺度を提供する、ステップと、
グローバルインデックス値及びフィルタリング画像のフィルタリング値を使用して、入力画像についての特定のローカルリシェーピング関数を選択するためのローカルインデックス値を生成するステップと、
ローカルインデックス値を使用して選択された特定のローカルリシェーピング関数で入力画像を少なくとも部分的にリシェーピングすることによって、第1のダイナミックレンジのリシェーピングされた画像を生成させるステップと
を含む方法。
【0214】
EEE2.ローカルインデックス値はローカルインデックス値マップで表される、EEE1に記載の方法。
【0215】
EEE3.第1のダイナミックレンジはハイダイナミックレンジを表し、第2のダイナミックレンジは、ハイダイナミックレンジよりも低い標準ダイナミックレンジを表す、EEE1又はEEE2に記載の方法。
【0216】
EEE4.ローカルインデックス値を使用して選択された特定のローカルリシェーピング関数は、入力画像におけるルマコードワードをHDR画像におけるルマコードワードにリシェーピングし、ローカルインデックス値は、入力画像におけるルマコードワード及びクロマコードワードをリシェーピングされた画像におけるクロマコードワードにマッピングする特定のローカルリシェーピングマッピングを選択するために更に使用される、EEE1乃至EEE3のうちいずれか1項に記載の方法。
【0217】
EEE5.特定のローカルリシェーピング関数は、後方リシェーピングルックアップテーブルによって表され、特定のローカルリシェーピングマッピングは、後方多変量重回帰マッピングによって表される、EEE4に記載の方法。
【0218】
EEE6.ローカルインデックス値は、トレーニングデータセット内のトレーニング画像ペアでトレーニングされた予測モデルを使用して、グローバルインデックス値及びフィルタリング値から生成され、トレーニング画像ペアのそれぞれは、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像を含み、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像は、同じ視覚的意味内容を表す、EEE1乃至EEE5のうちいずれか1項に記載の方法。
【0219】
EEE7.特定のローカルリシェーピング関数のそれぞれは、複数の事前ロードされたリシェーピング関数の中から、ローカルインデックス値のそれぞれのローカルインデックス値に基づいて選択される、EEE1乃至EEE6のうちいずれか1項に記載の方法。
【0220】
EEE8.複数の事前ロードされたリシェーピング関数は、内挿、外挿又は内挿及び外挿の組み合わせのうち1つを通じて基本リシェーピング関数から生成され、基本リシェーピング関数は、複数のトレーニング画像ペアを含むトレーニングデータセットで決定され、トレーニング画像ペアのそれぞれは、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像を含み、第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジのトレーニング画像は、同じ視覚的意味内容を表す、EEE7に記載の方法。
【0221】
EEE9.リシェーピングされた画像は、グローバルインデックス値及びローカルインデックス値を生成したビデオエンコーダによって生成される、EEE1乃至EEE8のうちいずれか1項に記載の方法。
【0222】
EEE10.リシェーピングされた画像は、グローバルインデックス値及びローカルインデックス値を生成したビデオエンコーダ以外の受信側デバイスによって生成される、EEE1乃至EEE9のうちいずれか1項に記載の方法。
【0223】
EEE11.フィルタリング画像は、カーネルサイズについて複数のレベルでの画像フィルタリングによって生成された複数の個別のフィルタリング画像の加重和である、EEE1乃至EEE10のうちいずれか1項に記載の方法。
【0224】
EEE12.画像フィルタリングは、ハローアーティファクトを低減するために、ガイダンス画像と共に入力画像に適用される、EEE1乃至EEE11のうちいずれか1項に記載の方法。
【0225】
EEE13.画像フィルタリングは、ガイド付き画像フィルタリング、非ガイド付き画像フィルタリング、マルチレベルフィルタリング、エッジ保存フィルタリング、マルチレベルエッジ保存フィルタリング、非マルチレベルエッジ保存フィルタリング、マルチレベル非エッジ保存フィルタリング又は非マルチレベル非エッジ保存フィルタリングのうち1つを表す、EEE1乃至EEE10のうちいずれか1項に記載の方法。
【0226】
EEE14.ローカルインデックス値は、ソフトクリッピング関数に少なくとも部分的に基づいて生成され、ソフトクリッピング関数は、ルマコードワードとフィルタリング値との間のスケーリングされた差を入力として受け入れ、ソフトクリッピング関数は、入力画像の暗いピクセルについて最小値以上の出力値を生成するように特に選択される、EEE1乃至EEE13のうちいずれか1項に記載の方法。
【0227】
EEE15.画像フィルタリングは、ガイド付き画像で適用されるガイド付き画像フィルタリングを表し、ガイド付き画像は、ガイド付き画像の1つ以上のチャネルのうち1つにおける複数のピクセル位置について計算された画像勾配の逆数によってそれぞれ重み付けされた、複数のピクセル位置について計算された高周波数特徴値を含む、EEE1乃至EEE14のうちいずれか1項に記載の方法。
【0228】
EEE16.ガイド付き画像は、ハロー低減動作パラメータのセットに少なくとも部分的に基づいて導出されたガイド付き画像値を含み、当該方法は、
複数の画像ペアの中の各画像ペアについて、ハロー低減動作パラメータのセットについての候補値の複数のセットを用いて、画像ペア内の第1のダイナミックレンジのトレーニング画像及び第2のダイナミックレンジの対応するトレーニング画像の分散の比として、1つ以上のローカル前景領域の中のローカル前景領域において領域ベースのテクスチャ尺度を計算するステップであり、1つ以上のローカル前景領域は、画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされたものである、ステップと、
複数の画像ペアの中の各画像ペアについて、ハロー低減動作パラメータのセットについての候補値の複数のセットを用いて、画像ペア内の第1のダイナミックレンジのトレーニング画像と第2のダイナミックレンジの対応するトレーニング画像との間の相関係数として、1つ以上のローカルハローアーティファクト領域の中のローカルハローアーティファクト領域におけるハロー尺度を計算するステップであり、1つ以上のローカルハローアーティファクト領域は、第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされたものである、ステップと、
ハロー低減動作パラメータのセットについての候補値の複数のセットについて、(a)複数の画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされた全てのローカル前景領域についての全ての領域ベースのテクスチャ尺度と、(b)複数の画像ペア内の第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされた全てのローカルハローアーティファクト領域についての全てのハロー尺度とのそれぞれの加重和を計算するステップと、
ハロー低減動作パラメータのセットについての最適化値のセットを決定するステップであり、最適化値のセットは、(a)複数の画像ペア内の第1のダイナミックレンジのトレーニング画像で識別された前景マスクからサンプリングされた全てのローカル前景領域についての全ての領域ベースのテクスチャ尺度と、(b)複数の画像ペア内の第2のダイナミックレンジの対応するトレーニング画像で識別されたハローマスクからサンプリングされた全てのローカルハローアーティファクト領域についての全てのハロー尺度との最小化された加重和を生成するために使用される、ステップと、
ハロー低減動作パラメータのセットについての最適化値のセットで、複数の空間カーネルサイズレベルにおける画像フィルタリングを入力画像に適用するステップと
を更に含む、EEE1乃至EEE15のうちいずれか1項に記載の方法。
【0229】
EEE17.EEE1乃至EEE16のうちいずれか1項に記載の方法を実行するように構成されたコンピュータシステム。
【0230】
EEE18.プロセッサを含み、EEE1乃至EEE16のうちいずれか1項に記載の方法を実行するように構成された装置。
【0231】
EEE19.EEE1乃至EEE16のうちいずれか1項に記載の方法を実行するためのコンピュータ実行可能命令を格納した非一時的なコンピュータ読み取り可能記憶媒体。