IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ドルビー ラボラトリーズ ライセンシング コーポレイションの特許一覧

<>
  • 特表-デジタル画像のためのノイズ合成 図1
  • 特表-デジタル画像のためのノイズ合成 図2A
  • 特表-デジタル画像のためのノイズ合成 図2B
  • 特表-デジタル画像のためのノイズ合成 図3
  • 特表-デジタル画像のためのノイズ合成 図4
  • 特表-デジタル画像のためのノイズ合成 図5
  • 特表-デジタル画像のためのノイズ合成 図6
  • 特表-デジタル画像のためのノイズ合成 図7
  • 特表-デジタル画像のためのノイズ合成 図8
  • 特表-デジタル画像のためのノイズ合成 図9
  • 特表-デジタル画像のためのノイズ合成 図10
  • 特表-デジタル画像のためのノイズ合成 図11
  • 特表-デジタル画像のためのノイズ合成 図12
  • 特表-デジタル画像のためのノイズ合成 図13
  • 特表-デジタル画像のためのノイズ合成 図14
  • 特表-デジタル画像のためのノイズ合成 図15
  • 特表-デジタル画像のためのノイズ合成 図16
  • 特表-デジタル画像のためのノイズ合成 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-02-24
(54)【発明の名称】デジタル画像のためのノイズ合成
(51)【国際特許分類】
   G06T 5/00 20060101AFI20230216BHJP
   G06T 11/00 20060101ALI20230216BHJP
【FI】
G06T5/00 700
G06T11/00
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022537579
(86)(22)【出願日】2020-12-21
(85)【翻訳文提出日】2022-07-26
(86)【国際出願番号】 US2020066366
(87)【国際公開番号】W WO2021127628
(87)【国際公開日】2021-06-24
(31)【優先権主張番号】19218144.4
(32)【優先日】2019-12-19
(33)【優先権主張国・地域又は機関】EP
(31)【優先権主張番号】62/950,466
(32)【優先日】2019-12-19
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】カドゥ,ハルシャド
(72)【発明者】
【氏名】ヴィシュワナート,バラート
(72)【発明者】
【氏名】スゥ,グワン-ミーン
(72)【発明者】
【氏名】フルヤルカール,サミール エヌ.
【テーマコード(参考)】
5B057
5B080
【Fターム(参考)】
5B057CA01
5B057CA08
5B057CA12
5B057CB01
5B057CB08
5B057CB12
5B057CC02
5B057CE01
5B057CE08
5B057DA17
5B057DB02
5B057DB06
5B057DB09
5B057DC36
5B080AA00
5B080FA02
5B080FA08
5B080GA22
(57)【要約】
デジタル画像のためのノイズ合成の問題に対してソフトウェアおよびハードウェアに基づくソリューションを提供するための装置および方法である。一態様に従って、確率画像が生成され、かつ、ノイズブロックが確率画像内の場所にランダムに配置され、その場所は9閾値基準と比較される確率値を有し、合成ノイズ画像を生成する。実施形態は、合成フィルムグレイン画像および合成デジタルカメラノイズ画像を生成することを含む。
【特許請求の範囲】
【請求項1】
デジタル画像に対する合成ノイズ画像を生成するためのコンピュータベースの方法であって、前記方法は、
複数のノイズブロックパターンを提供するステップと、
ノイズ画像を初期化するステップと、
確率画像を生成するステップであり、該確率画像は、各ピクセルにおいてランダムに生成された確率値を含む、ステップと、
前記確率画像における各確率値を閾値基準と比較するステップと、
を含み、
前記確率値が前記閾値基準を満たす場合、
前記複数のノイズブロックパターンからノイズブロックパターンを選択し、該ノイズブロックパターンはアンカーポイントを有しており、かつ、
前記確率値が前記閾値基準を満たす場合、
前記アンカーポイントが、前記閾値基準を満たす前記確率画像におけるピクセルに対応するように、前記ノイズブロックパターンを前記ノイズ画像内に配置することによって、合成されたノイズ画像を生成する、
方法。
【請求項2】
ノイズグレインブロックパターンが、ランダムに選択される、
請求項1に記載の方法。
【請求項3】
前記確率画像の前記確率値は、一様に分布した確率値である、
請求項1または2に記載の方法。
【請求項4】
前記ノイズブロックパターンは、フィルムグレインブロックパターンを含む、
請求項1乃至3いずれか一項に記載の方法。
【請求項5】
前記方法は、さらに、
前記ノイズブロックパターンがオーバーラップする前記ノイズ画像の領域における値を集約するステップステップ、を含む、
請求項1乃至4いずれか一項に記載の方法。
【請求項6】
前記方法は、さらに、
前記ノイズ画像を生成する前に、前記ノイズブロックパターンを生成するステップ、を含み、
前記ノイズブロックパターンは、逆DCT技術を通じて生成される、
請求項1乃至5いずれか一項に記載の方法。
【請求項7】
前記生成するステップは、さらに、
低周波DCT係数を除去すること、を含む、
請求項6に記載の方法。
【請求項8】
前記生成するステップは、さらに、
高周波DCT係数を除去すること、を含む、
請求項6または7に記載の方法。
【請求項9】
前記確率画像および前記ノイズ画像は、ビデオフレームにマッチするサイズにされる、
請求項1乃至8いずれか一項に記載の方法。
【請求項10】
前記方法は、さらに、
前記ノイズ画像をコンテンツ画像のチャネルに加えることによって、前記コンテンツ画像を編集するステップ、を含む、
請求項1乃至9いずれか一項に記載の方法。
【請求項11】
前記方法は、さらに、
前記ノイズ画像を前記コンテンツ画像に加える前に、前記ノイズ画像における値を変調度で乗算するステップ、を含む、
請求項10に記載の方法。
【請求項12】
前記値は、前記ノイズ画像のルマ強度値である、
請求項11に記載の方法。
【請求項13】
前記方法は、さらに、
編集された前記コンテンツ画像に基づいて、YUVコンテンツ画像を生成するステップ、を含む、
請求項10乃至12いずれか一項に記載の方法。
【請求項14】
前記方法は、さらに、
前記YUVコンテンツ画像に基づいて、RGBコンテンツ画像を生成するステップ、を含む、
請求項13に記載の方法。
【請求項15】
復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、
合成ノイズ画像を生成するために、請求項1乃至14いずれか一項に記載の方法を実行するノイズ合成モジュールと、
を含む、デバイスであって、
前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせる、ように構成されている、
デバイス。
【請求項16】
前記デバイスは、さらに、
前記復号されたクリーンシーケンスと組み合わせる前に、前記合成ノイズ画像を変調するための変調曲線モジュール、を含む、
請求項15に記載のデバイス。
【請求項17】
データを含むコンピュータプログラムであって、
前記データは、プロセッサ上で実行されると、請求項1乃至14いずれか一項に記載の方法を実行するようにエンコーディングされている、
コンピュータプログラム。
【請求項18】
画像において合成ノイズを生成するためのデバイスであって、前記デバイスは、
前記画像からの行を含むラインバッファと、
ノイズブロックパターンを含むファームウェアと、
前記行におけるピクセルに対してランダム値を提供するための疑似乱数発生器と、
前記ランダム値を閾値基準と比較するためのロジックと、
ノイズブロック管理テーブルを含むデータストアと、
前記行におけるピクセルに関連付けられている前記ファームウェアからのランダムノイズブロックパターンに基づいて、前記ノイズブロック管理テーブルを生成するロジックであり、前記ピクセルに関連付けられた前記ランダム値は前記閾値基準を満たす、ロジックと、
前記ノイズブロック管理テーブルに基づいて、前記画像の前記行における各ピクセルの場所についてノイズ値を計算するロジックと、
前記ノイズ値に基づいて、前記行を修正するロジックと、
を含む、デバイス。
【請求項19】
前記デバイスは、さらに、
前記画像から変調曲線を決定し、変調度を計算し、かつ、前記行を修正する前に前記変調度を前記ノイズ値に適用するロジック、を備える、
請求項18に記載のデバイス。
【請求項20】
疑似ランダムノイズ発生器は、行インデックスおよびランダムオフセット値に基づいて、ランダム数を生成する、
請求項18または19に記載のデバイス。
【請求項21】
前記画像は、ルマチャネル画像である、
請求項18乃至20いずれか一項に記載のデバイス。
【請求項22】
前記画像は、クロマチャネル画像である、
請求項18乃至20いずれか一項に記載のデバイス。
【請求項23】
前記デバイスは、さらに、
前記画像を並列に処理するために、複数の擬似乱数発生器および複数のラインバッファを備える、
請求項18乃至22いずれか一項に記載のデバイス。
【請求項24】
復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、
合成ノイズ画像を生成するために、請求項18乃至23いずれか一項に記載のデバイスを含むノイズ合成モジュールと、
を含む、デコーダシステムであって、
前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせる、ように構成されている、
デコーダシステム。
【請求項25】
デコーダ用のメタデータを生成する方法であって、前記方法は、
ノイズカテゴリパラメータを設定するステップと、
ブロックサイズパラメータを設定するステップと、
閾値パラメータを設定するステップと、
変調度曲線パラメータを設定するステップと、
を含む、方法。
【請求項26】
前記方法は、さらに、
ノイズ分散パラメータを設定するステップ、を含む、
請求項25に記載の方法。
【請求項27】
前記方法は、さらに、
離散コサイン変換周波数範囲パラメータを設定するステップ、を含む、
請求項25または26に記載の方法。
【請求項28】
前記方法は、さらに、
複数のブロックパターンパラメータを設定するステップ、を含む、
請求項25乃至27いずれか一項に記載の方法。
【請求項29】
前記方法は、さらに、
ノイズブロック管理テーブルのエントリーパラメータを設定するステップ、を含む、
請求項25乃至28いずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般的に、画像に関する。より詳細には、本開示の一つの実施形態は、画像のためのフィルムグレイン(film grain)およびカメラノイズの合成に関する。
【0002】
本出願は、2019年12月19日に出願された米国仮特許出願第62/950466号、および、2019年12月19日に出願された欧州特許出願第19218144.4号について優先権の利益を主張するものであり、これらは、全体として参照によってここに組み込まれている。
【背景技術】
【0003】
ここにおいて使用される、用語ノイズ合成(noise synthesis)は、そのノイズが通常どのように発生するか以外の手段によって、デジタル画像(ビデオフレームを含む)についてノイズ効果を発生することを意味する。ここにおける記載のいずれかの時点において、特定の重要性を有するように特定の意味が明示的に規定されていない限り、この用語は、いずれの意味においても、例えば、互換的に、使用され得ると推測されるべきである。
【0004】
写真フィルムストリップは、デジタル技術の出現以前は、伝統的な写真撮影のためのキャンバスであった。このフィルムは、感光性物質(例えば、ハロゲン化銀)でカバーされた薄いプラスチックシートであり、フィルム化されるオブジェクトから発光され、または、反射される光を吸収する。これらのフィルムを処理した後で、キャプチャされた光が、画像へと変換され得る。ここにおいて使用される、「フィルムグレイン(“film grain”)とは、十分な光子を受けている色素クラウド(dye clouds)(または、銀粒子(silver particles))のせいで処理された画像において発達した(developed)視覚的なテクスチャを参照する。これは、フィルムの処理の最中に進行する化学プロセスによって引き起こされる光学現象であり、そして、フィルムが観察される精細度(definition)および使用されるフィルムストック(stock)のタイプの両方に依存する。
【0005】
デジタル写真はフィルムグレイン効果を本質的に欠いている。しかし、芸術的理由および質的な理由から、それは依然として望まれている。例えば、ハリウッドの映画会社(studios)は、よりフィルムグレインを有する映画コンテンツを好む。デジタル画像については、フィルムグレインパターンが合成され、そして、後処理の最中に画像上に重ね合わせられる必要がある。
【0006】
「カメラノイズ(“camera noise”)」は、センサのサイズ、露出時間、ISO設定、等といった、カメラのエレクトロニクスによるデジタル画像における明るさ及び/又は色(画像における色付きの斑点(colored specks)の変化を参照する。典型的に、カメラノイズは、圧縮における問題を回避するために、様々な技術によってデジタル画像から除去されるが、場合によっては、画像がキャプチャされたときに有していたオリジナルの「外観(“look”)」を保持するために、カメラノイズが望まれる。
【0007】
ここにおいて使用される用語「メタデータ(“metadata”)」は、コード化ビットストリームの一部として送信され、かつ、デコーディングされた画像をレンダリング(render)するためにデコーダを支援する任意の補助的な情報を参照する。そうしたメタデータは、これらに限定されるわけではないが、ここにおいて説明されるように、色空間(color space)または色域情報(gamut information)、参照表示パラメータ、および補助信号パラメータを含み得る。
【0008】
実際には、デジタル画像は、1つ以上の色成分(例えば、ルマY、クロマCbおよびCr)を含み、ここで、各色成分は、ピクセル当たりn-ビット(例えば、n=8)の精度で表される。線形輝度コーディング(linear luminance coding)を使用して、n<8である画像(例えば、カラー24ビットJPEG画像)は、標準ダイナミックレンジ(Standard Dynamic Range、SDR)の画像としてみなされ、一方で、n>8である画像は、拡張ダイナミックレンジ(enhanced dynamic range、EDR)の画像とみなされ得る。EDRおよびHDR画像は、また、Industrial Light and Magicによって開発されたOpenEXRファイルフォーマットといった、高精度の浮動小数点フォーマット(例えば、16ビット)を使用して保管され、そして、配信され得る。
【0009】
ここにおいて使用される、用語「ノイズ合成(“noise synthesis”)」は、これらに限定されるわけではないが、フィルムグレインまたはカメラノイズといった、フィルム/ビデオ/画像のキャプチャまたは発達によって通常引き起こされるノイズをデジタル画像内で合成することを含む。本用語は、また、あらゆる目的のために、デジタル画像の中へ人工的に挿入された任意のノイズも参照し得る。
【0010】
本セクションで説明されるアプローチは、追求され得るアプローチであるが、必ずしも以前に考案され、または、追求されたアプローチではない。従って、別段の指示がない限り、本セクションで説明されるいずれかの手法が、単に本セクションに含まれているという理由のみによって、先行技術として適格であるとみなされるべきではない。同様に1つ以上のアプローチに関して特定された問題は、別段の指示がない限り、本セクションに基づいて、いかなる先行技術においても認識されていたものと仮定されるべきではない。
【発明の概要】
【0011】
本開示に従った装置および方法は、デジタル画像についてノイズ合成の問題に対するソリューションを提供する。本開示の一つの実施形態に従って、合成されたフィルムグレインが、クリーンな(すなわち、ノイズのない(noise free))デジタルシーケンスに対して付加される。
【0012】
ここにおいて示されるようなノイズを合成するプロセスは、画像伝送および表示において多くの利点を有している。例えば、ノイズを合成する能力は、ノイズのない(noise-free)圧縮画像の伝送を可能にし、それは、増加された伝送効率(データ速度、帯域幅、等)を提供することができる。合成されたノイズを非圧縮画像に加えることは、表示された画像における圧縮アーチファクト(artifacts)の影響を低減することができる。ノイズブロックの使用は、フィルムの粒度(grain size)、シャープネス、および、タイプ(ノイズ源エミュレーション)の制御を可能にし、そして、画像におけるそれらのランダムな配置は、タイル配置(tiled placement)によって引き起こされるであろうブロッキングアーチファクトを防止する。加えて、ハードウェアベースの実装のために、ライン毎の処理(per-line processing)の使用は、ノイズ合成のリソース効率の良い移植(implantation)を可能にする。
【0013】
本開示の第1態様に従って、デジタル画像に対する合成ノイズ画像を生成するためのコンピュータベースの方法が開示される。前記方法は、複数のノイズブロックパターンを提供するステップと、ノイズ画像を初期化するステップと、確率画像を生成するステップであり、該確率画像は、各ピクセルにおいてランダムに生成された確率値を含むステップと、前記確率画像における各確率値を閾値基準と比較するステップとを含む。前記確率値が前記閾値基準を満たす場合、前記複数のノイズブロックパターンからノイズブロックパターンを選択し、該ノイズブロックパターンはアンカーポイントを有しており、かつ、前記確率値が前記閾値基準を満たす場合、前記アンカーポイントが、前記閾値基準を満たす前記確率画像におけるピクセルに対応するように、前記ノイズブロックパターンを前記ノイズ画像内に配置することによって、合成されたノイズ画像を生成する。
【0014】
ノイズグレインブロックパターンは、ランダムに選択され得る。確率画像の確率値は、一様に分布した確率値であり得る。ノイズブロックパターンは、フィルムグレインブロックパターンを含み得る。また、本方法は、ノイズブロックパターンがオーバーラップするノイズ画像の領域における値を集約するステップを含み得る。本方法は、ノイズ画像を生成する前に、ノイズブロックパターンを生成するステップを含み得る。ここで、ノイズブロックパターンは、逆DCT技術を通じて生成される。この生成は、低周波数DCT係数の除去及び/又は高周波数DCT係数の除去を含み得る。確率画像およびノイズ画像は、ノイズ画像をビデオフレームにマッチするサイズにされ得る。本方法は、コンテンツ画像のチャネルに加えることによって、コンテンツ画像を編集するステップを含み得る。本方法は、コンテンツ画像にノイズ画像を加える前に、ノイズ画像における値を変調度で乗算するステップを含み得る。本値は、ノイズ画像のルマ強度値であり得る。本方法は、編集されたコンテンツ画像に基づいてYUVコンテンツ画像を生成するステップを含み得る。本方法は、YUVコンテンツ画像に基づいてRGBコンテンツ画像を生成するステップを含み得る。本方法は、当該方法を実施するためにエンコーディングされたデータを含むコンピュータプログラム製品上で実行され得る。
【0015】
本方法は、ノイズ合成モジュールによって実行され、デバイス用の合成ノイズ画像を作成することができる。本デバイスは、エンコーディングされた画像を復号し、復号されたクリーンシーケンスを生成する、デコーダを含み得る。ここで、デコーダは、合成されたノイズ画像を復号されたクリーンシーケンスと組み合わせるように構成されており、表示のためのレンダリングされた画像を生成している。本デバイスは、復号されたクリーンシーケンスと組み合わせる前に、合成ノイズ画像を変調するための変調曲線モジュールを含み得る。
【0016】
本開示の第2態様に従って、画像において合成ノイズを生成するためのデバイスが開示される。前記デバイスは、前記画像からの行を含むラインバッファと、ノイズブロックパターンを含むファームウェアと、前記行におけるピクセルに対してランダム値を提供するための擬似乱数発生器と、前記ランダム値を閾値基準と比較するためのロジックと、ノイズブロック管理テーブルを含むデータストアと、前記行におけるピクセルに関連付けられている前記ファームウェアからのランダムノイズブロックパターンに基づいて前記ノイズブロック管理テーブルを生成するロジックであり、前記ピクセルに関連付けられた前記ランダム値は前記閾値基準を満たすロジックと、前記ノイズブロック管理テーブルに基づいて前記画像の前記行における各ピクセルの場所についてノイズ値を計算するロジックと、前記ノイズ値に基づいて前記行を修正するロジックと、を含む。
【0017】
本デバイスは、画像から変調曲線を決定し、変調度を計算し、かつ、行を修正する前に、変調度をノイズ値に適用するためのロジックを含み得る。疑似ランダムノイズ発生器は、行インデックスおよびランダムオフセット値に基づいてランダム数を生成し得る。画像は、ルマチャネル画像またはクロマチャネル画像であり得る。本デバイスは、画像を並列に処理するために、複数の擬似乱数発生器および複数のラインバッファを含み得る。
【0018】
本開示の第3態様に従って、デコーダ用のメタデータを生成する方法が開示される。前記方法は、ノイズカテゴリパラメータを設定するステップと、ブロックサイズパラメータを設定するステップと、閾値パラメータを設定するステップと、変調度曲線パラメータを設定するステップと、を含む。
【0019】
メタデータを生成する方法は、ノイズ分散パラメータを設定するステップ、複数のブロックパターンパラメータを設定するステップ、及び/又は、ノイズブロック管理テーブルのエントリーパラメータを設定するステップ、を含み得る。
【図面の簡単な説明】
【0020】
図1図1は、一つの実施形態に従った、ノイズ合成モジュールを含む例示的なデコーダシステムを示している。
図2A図2Aは、一つの実施形態に従った、フィルムグレインブロックパターンを生成するための例示的なDCT行列を示している。
図2B図2Bは、一つの実施形態に従った、フィルムグレインブロックパターンを生成するための例示的なDCT行列を示している。
図3図3は、一つの実施形態に従った、合成ノイズ発生を利用する例示的なデコーダシステムを示している。
図4図4は、一つの実施形態に従った、画像のルマチャネルにノイズを加える処理のための例示的なフローチャートを示している。
図5図5は、一つの実施形態に従った、固定アルファを用いたルマ変調曲線の一つの例を示している。
図6図6は、一つの実施形態に従った、固定ベータを用いたルマ変調曲線の例を示している。
図7図7は、一つの実施形態に従った、色変換を用いたフィルムグレイン合成の一つの例を示している。
図8図8は、一つの実施形態に従った、色変換を用いたカメラノイズ合成の一つの例を示している。
図9図9は、一つの実施形態に従った、ハードウェアを介して合成フィルムグレインが注入されたコンテンツを生成するための例示的なブロック図を示している。
図10図10は、一つの実施形態に従った、画像の各ピクセルが、ハードウェアにおけるフィルムグレインに関して、どのように評価され得るかの例を示している。
図11図11は、一つの実施形態に従った、ハードウェア実装を用いた使用のための例示的な16ビットレジスタを示している。
図12図12は、一つの実施形態に従った、擬似乱数発生器からのブロックIDビットのピックする方法の例を示している。
図13図13は、一つの実施形態に従った、ピクセル値ロジックに対するNBMTの例を示している。
図14図14は、一つの実施形態に従った、ソフトウェアベース(オリジナル)の変調曲線とハードウェアベース(区分的線形)の変調曲線とを比較する例示的なプロットを示している。
図15図15は、一つの実施形態に従った、デジタルカメラノイズ合成のハードウェア実装に係る例示的なブロック図を示している。
図16図16は、一つの実施形態に従った、クロマチャネルのための簡略化されたカメラノイズ合成システム/方法に係る例を示している。
図17図17は、一つの実施形態に従った、ハードウェア実装のための統一されたノイズ注入アーキテクチャの例を示している。
【発明を実施するための形態】
【0021】
本開示の全体を通して、確率画像(probability image)は、ランダム値から作られたデジタル画像として定義される。
【0022】
ノイズは、画像化される環境以外の効果によって引き起こされるデジタル画像における輝度(ルマ)及び/又は色(クロマ)情報のランダムな変化を指す。
【0023】
フィルムグレインは、フィルム処理によって引き起こされるであろうといった、画像におけるランダムな光学的テクスチャを指す。フィルムグレインは、ルマチャネルにおけるノイズである。
【0024】
粒子サイズは、フィルムグレインの個々の粒子の平均直径を指す。
【0025】
カメラノイズは、デジタルカメラのハードウェアによって引き起こされるであろうといった、画像におけるランダムな光学的テクスチャを指す。カメラノイズは、ルマチャネルとクロマチャネルの両方におけるノイズである。カメラノイズ、合成されていないものは、センサのサイズ、熱効果、長い露出時間、高いISO設定、等を含む多くのソースから生じる。
【0026】
DCTは離散コサイン変換を指し、そして、IDCTは逆離散コサイン変換を指す。
【0027】
デジタル画像は、数値的に表現される、画像、またはビデオのフレームを指す。
【0028】
フィルムグレインまたはカメラノイズといった、ノイズをデジタル画像(ビデオを含む)上に合成するためのシステムおよび方法が、ここにおいて説明される。以下の記載においては、説明の目的のため、多数の特定の詳細が、本開示の完全な理解を提供するために説明されている。しかしながら、現在クレームされている技術的事項(subject matter)は、これらの特定の詳細なしで実施され得ることは明らかであろう。他の例において、周知の構造および装置は、本開示を不必要に閉塞し、不明確にし、不明瞭にすることを避けるために、網羅的な詳細において説明されていない。
【0029】
図1は、ノイズ合成を実装するデコーダのための例示的なアーキテクチャを示している。対応するメタデータ(112)と共に、エンコーディングされた画像(111)を送信するビットストリーム(110)が、システムによって受信される。デコーダ(120)は、デコーディングされたクリーンシーケンス(125)へと画像をデコーディングする。エンコーディングされた画像(111)は、エンコーディング以前に任意のノイズを消去した画像によって生成されるので、デコーディングされたクリーンシーケンス(125)も、また、(ほとんど)ノイズを含まない。メタデータ(112)は、ノイズ合成モジュール(130)、および、任意的に、変調曲線モジュール(140)に対してパラメータを提供する。ノイズ合成モジュール(130)は、合成ノイズ画像(135)を生成するために、メタデータ(112)を使用する。この合成されたノイズ画像(135)は、変調ノイズ画像(145)を生成するように、変調曲線モジュール(140)を通じて実行され得る。デコーディングされたクリーンシーケンス(125)および変調されたノイズ画像(145)(または、変調が実行されない場合は合成されたノイズ画像(135))は、1つ以上のチャネルにおいて結合され(150)、表示(155)または表示前の色変換のためにレンダリングされた画像を生成する。
【0030】
ノイズ合成はデコーダに結び付けられることを要しない。例えば、ビデオ制作者は、ビデオ制作プレリリースのためにノイズ合成を使用することができる。非デコーダ実装の場合、デコーディングされたクリーンシーケンス(125)は、編集されるべきコンテンツ画像に置き換えることができる。例えば、ノイズ画像は、カラリスト(colorist)によって合成され、次いで、後に、コンテンツ画像に対して追加する前に変調され得る。
【0031】
ノイズは、所望の効果に応じて、ルマチャネル、クロマチャネル、または、その両方であってよい。例えば、フィルムグレインのエミュレーションについて、ノイズは、ルマチャネル内に存在し得るに過ぎない。デジタルカメラハードウェアによって引き起こされるノイズをエミュレートするために、ノイズは、ルマチャネルおよびクロマチャネルにおいて存在し得る。メタデータパラメータを適切に調整することによって、種々のタイプのノイズエミュレーションが可能である。
【0032】
デジタル画像のノイズは、確率画像を通じて画像に対してノイズブロックパターンを追加するプロセスによって合成することができる。コンセプトは、オリジナルの画像をブロックへと分割するのではなく、ピクセルごとに(pixel-by-pixel)ブロックパターンを追加することである。
【0033】
サイズB×Bのフィルムグレインブロックパターンを合成するためには、標準正規乱数のB×B行列Mで開始する(例えば、B=4,8、など)から始める。行列Mは、2D DCT係数を表しており、左上はDC係数(周波数=0)であり、右下は最高周波数AC(周波数>0)である。DC係数は、1とラベル付けされ(210)、そして、4×4ブロックの例について図2Aに示されるように、ジグザグ順にラベルが増加する。
【0034】
これらの周波数係数は、3個のバンドへと広く分類することができる。すなわち、図2Bに示されるように、低、中、高である。Mにおける中周波数帯(230)は保存され、一方、低周波数(220)および高周波数(240)成分は除去される(または、代替的に、低周波数成分(220)またはコンポーネントだけが除去される)。例えば、4×4ブロックにおいて、4~10とラベル付けされた周波数係数が保存され、そして、係数1~3および11~16が除去され得る。保存され得る周波数係数の範囲は、カスタマイズ可能であり、少なくとも係数1は除去されている。
【0035】
midが、中周波数係数だけが保存され、かつ、低/高の係数がゼロに設定された行列Mを表すことにする。フィルムグレインブロックGrawは、式1にされるように、Mmidの逆DCTをとることによって、構成され得る。
【数1】
式1
【0036】
ブロックは、各要素をエネルギーEで割ることによって正規化される。そして、次いで、式2に示されるように所望の乗数(multiplier)Vにスケール化される。
【数2】
式2
【0037】
Thnormはインターバル[0,1]に正規化された閾値である。Thnormの値の一つの例は0.1である。σn 2は、ノイズの分散である。ノイズ分散は、調整可能なパラメータである。16ビット画像について例示的な範囲は、1000~6000であり得る。
【0038】
式3に示されるように、端に向かって丸め(rounding)が行われ、任意の少数部(fractional parts)を除去する。
【数3】
式3
【0039】
フィルムグレイン行列Gを計算するための擬似コードが以下に概説される。関数zigzag()は、行列における各位置の周波数ラベルを与える。保存されるべき周波数係数の範囲は、[fs,fe]である。
【表1】
【0040】
異なるブロックディメンションを有する複数のノイズパターンを、合成ノイズ画像を後に一体化するために使用されるように構築することができる。4×4、8×8、16×16、および32×32は、いくつかの典型的なブロックサイズである。
フィルムグレインのサイズは、周波数範囲を変更することによって変更することができる。LF領域に近い周波数係数の割合が周波数範囲[fs,fe]において有意であれば、粒子サイズは大きくなる。反対に、HF領域により近い周波数係数の部分が有意であれば、それはより小さな粒子を生成する。8×8ブロックの例について、周波数係数の範囲[4 - 10、]は[4 - 36]に比べて、より大きな粒子を生成する。
【0041】
異なるサイズを有するいくつかのノイズブロックを予め計算し、そして、ブロックパターンデータセット
【数4】
(以降、G)に保管することができる。このデータベースは、多くの2Dノイズブロック数が次々にスタックされた3D行列として見ることができる。L×Lがフィルムグレインブロックの最大サイズである場合、GのディメンションはL×L×Qである。Q個の要素を有するベクトルSは、パターンデータセット内の各ブロックの対応するサイズを保管するように維持され得る。すなわち、i∈[0,Q-1]についてS(i)≦L。
【0042】
図3は、合成ノイズ画像を構成する一つの例を示している。この例において、ノイズは、フィルムグレインをシミュレートしている。ブロックパターン(301)からディメンションH×Wの合成ノイズ画像(302)を構築するために、同じサイズの確率画像(300)から開始する。フィルムグレインの典型的なノイズ画像は、FHD(フル高精細度、例えば1080p)、UHD(ウルトラ高精細度、例えば4K)、および8K解像度である。確率画像は、例えば、インターバル[0,1]において、一様な乱数を有する行列である。閾値Thnorm(例えば、0.1)が選択され、そして、確率画像(300)内の全てのエントリが閾値に対して比較される。図3において、円(310)は、閾値未満の確率を有している場所(location)を示している。代替的に、場所は、閾値より大きい、低い、または、閾値以上の確率を有するピクセルにおいて選択され得る。基本的には、所与のピクセルにおける確率値を閾値と比較する基準が存在する。簡単にするために、いくつかの位置だけが示されているが、実際の確率画像は、より多くの場所を有し得る。ノイズブロックが、円に配置されている。これらの場所は、セットΨで示されている。
【0043】
ノイズブロックは、図3に示されるように、確率画像における場所が、ノイズブロックの左上隅(320)に在るように、配置され得る。代替的に、場所は、ノイズブロックに対して、中央、他のコーナー、または任意の指定された場所に設定され得る。ノイズブロックが場所に対応するポイントは、ノイズブロックの「アンカーポイント(“anchor point”)」であり、全てのノイズブロックについて同じであり得る。
【0044】
ブロックパターンセレクタ(305)は、セットΨ内の場所に挿入されるフィルムグレインブロックパターンをランダムに選択する。このブロックセレクタは、一様な乱数発生器であり得る。ブロックが適切な場所に配置された後、これらのブロックが図3に示されるようにオーバーラップし得る。オーバーラップしているブロック内の共配置(collocated)されたセルからのセルが、一緒に追加される。この集約値は、出力ノイズ画像(302)に入る。オーバーラップ領域は、平均化される代わりに集計されるので、フィルムグレインブロックは、ノイズ分散σn 2(式2を参照のこと)の代わりに、乗数Vによってスケール化することができる。これは、集約ノイズピクセル値が大きくなり過ぎるのを防止する。
【0045】
フィルムグレイン画像Iを合成するために、ブロックパターンデータセットGを考えてみる。セットΨ内の全ての場所において、ブロックが、フィルムグレイン画像の中へ挿入されるべきデータセットからランダムにピックされ得る。rを、現在の場所について、ランダムに選択されたブロックのインデックスとする。本ブロックGのディメンションは、S(r)×S(r)であり、その結果、G=G(0:S(r)-1,0:S(r)-1,r)ある。現在の場所に挿入されるべき新しいブロックが存在するたびに、異なる乱数rが選択され得る。このための仮想コードは、以下のように示される。
【表2】
【0046】
は、乱数rに基づいて、場所i,jに対して選択されたランダムブロックを示す。別の言葉で言えば、各場所i,jに対して、乱数rが選択され、次いで、rの関数としてGが生成される。
【0047】
フィルムグレインまたは類似のノイズを合成する場合について、ノイズは、画像の明るい領域において非常に厄介であり、かつ、侵入的であり得る。強度ベースのルマ変調曲線は、これらの明るい領域におけるノイズの強度を低減し、フィルムグレイン注入画像を視聴者に対してより望ましいものにしている。前のセクションで説明されたように、フィルムグレイン画像は、事前に生成されている。これらの画像は、次いで、共配置されたルマ強度に基づいて変調され、そして、ルマチャネルに追加される。
【0048】
図4は、一実施形態について、限定するものではなく、画像のルマチャネル(例えば、Yチャネル)にノイズを加えるための一般的な方法を示している。最初に、ノイズ画像Iが初期化される(405)。ノイズ画像は、Yチャネル画像と同じディメンションを有し得る。初期化は、ノイズ画像の全てのピクセル値を0、または他の何らかの設定値に設定することができる。次に、確率画像Pが生成され(410)、そこでは、Pにおける各場所でランダム値が生成される。確率画像はノイズ画像と同じディメンションを有し得る。ランダム値は、0から1、または、任意の2個の値の間の範囲であり得る。次に、各ピクセルの場所に対するPにおける各確率値を閾値基準(例えば、設定した閾値以下である)と比較することによって、場所マップΨ(415)が生成される。Ψにおける閾値基準を満たしていると同定された各場所に対して、ランダムに選択されたノイズブロックが、Iにおける対応するピクセル場所に追加される。ブロックが1×1より大きい場合、ブロックは、所与のアンカーポイント(例えば、ブロックの左上隅のピクセル)であってよく、ここで、ブロックはIにおける対応するピクセル場所にアンカーされる。Ψにおける全ての同定された場所が処理されると、追加されたノイズブロックの集合体(aggregate)は、Iにおいて合成ノイズ画像を形成する(425)。合成ノイズ画像は、ルマチャネル(430)から計算できる変調度(435)によって変調され得る。変調された合成ノイズ画像は、次いで、画像のルマチャネル(440)に対して追加され得る。
【0049】
ルマ変調曲線の例が図5図6に示されている。これらのグラフは、ルマ強度の異なる値に対する変調度を示す。変調度(modulation factor)は、範囲[0,1]の有理数である。いくつかの実施形態において、制限なしに、係数(factor)は、低強度コードワードについては、ほぼ1(unity)に近く、そして、強度が増加するにつれて減少する。ルマチャネル内で共配置されたピクセルにフィルムグレインピクセルを追加する前に、システムは、フィルムグレイン値にその変調度を乗算することができる。変調度は、共配置されたルマ強度値と変調曲線から導出される。曲線の減衰傾向のせいで、フィルムグレイン強度は、画像内の明るい領域の場合に低減される。
【0050】
ルマチャネルの強度値が、Btビットのコードワード範囲におけるlによって示されると仮定する。一つの例として、制限なしに、変調度曲線f(・)は、式4に示されるように計算することができる。
【数5】
(式4)
式4において、αおよびβは、曲線パラメータを示している。
【0051】
図5は、変数αおよびβ=2(Bt=16)についてルマ変調曲線の一つの例を示している。曲線は、α=0.15(501)、0.25(502)、0.4(503)について示されている。
【0052】
図6は、変数α=0.25およびβ=2(Bt=16)についてルマ変調曲線の一つの例を示している。曲線は、β=1.0(601)、2.0(602)、4.0(603)について示されている。
【0053】
αまたはβを選択する自由は、異なる電気光学伝達関数(Electro-Optical Transfer Functions、EOTF)に対して、同じ方程式を使用することを可能にする。
【0054】
Y(i,j)=yijがYチャネル画像内の場所(i,j)でのルマ強度の場合に、ノイズ画像内の場所(i,j)でのノイズ値は、ノイズ注入ルマ値を得るために、ルマチャネルによって乗算され、そして、ルマチャネルに加算される。
【数6】
【0055】
図7は、色変換を用いたフィルムグレイン合成の一つの例を示している。確率画像(705)は、確率画像(705)の各ピクセルでの値を閾値と比較することによって生成され、そして、場所が選択される(710)。この例において、場所は、閾値を下回る値を有するピクセルである。一組のフィルムグレインパターン(715)が予め生成されており、そして、確率画像に注入されるように(725)ブロックがランダムに選択され(720)、フィルムグレイン画像を生成している(730)。画像のY(ルマ)チャネル(735)は、変調され(740)、ノイズに対する変調度を有する画像を生成する(745)。フィルムグレイン画像(730)と変調度画像(745)は組み合わされ(750)、ルマ変調フィルムグレイン画像(755)を生成する。ルマ変調フィルムグレイン画像(755)は、Yチャネル画像(735)と組み合わされ(760)、フィルムグレイン付加Yチャネル画像が生成される(765)。フィルムグレイン付加Yチャネルを含むYUV画像は、カラー変換されて(770)、全チャネルについて付加されたフィルムグレインノイズを伴うRGB画像を生成することができる(775)。
【0056】
デジタルカメラノイズは、ガウス乱数を用いて合成することができる。乱数は、例えば、Box Muller変換またはMarsaglia Polar法を使用して、一様な乱数から生成することができる。
【0057】
一様乱数からガウス乱数を生成するためのMarsaglia Polar法について、u1およびu2を範囲[0,1]から選択された2個の一様乱数であると仮定する。もし、条件0<u1 2+u2 2<1が満たされる場合、
【数7】
は、平均0(zero)および標準偏差1(unit)のガウス乱数である。条件が満たされる前に、プロセスがあまりにも長い間ループすることを許さないように注意する必要がある。
【0058】
デジタルカメラノイズはガウス乱数を用いてシミュレートできるので、カメラノイズ画像を合成することは、画像のディメンションを有しており、かつ、平均ゼロのガウス乱数を含む2D行列を生成することに帰着する。ノイズ画像は、前述のように、ルマ強度で変調される。ノイズ画像は、次いで、コンテンツのY、U、およびVチャネルに追加され、任意的に、色空間変換(例えば、RGBへ)が後に続く。
【0059】
図8は、に色変換を用いたカメラノイズ合成の一つの例を示している。これは、ノイズ合成のさらなる実施形態であり、そして、両方の実施形態に共通する特徴は、説明から省略されてよいが、依然として、両方に共通であると理解されるべきである。画像のY(ルマ)チャネル(810)は、変調度画像(「MFI」、815)を生成するために変調(805)される。3個のランダムなガウス画像(「RGI」、820)、各チャネルごとに1個、が生成され、そして、変調度画像を用いて(815)、3個のルマ変調ノイズ画像を生成する(830)。これらのノイズ画像(830)は、オリジナル画像内のそれぞれのチャネル(840)に追加される(835)。これらのチャネル(840)は、次いで、RGBといった、異なる色エンコーディングスキーム(850)へ変換され得る。ルマ変調ノイズ画像(830)は、対応するチャネルについてRGI画像(820)を用いたMFI画像(815)のピクセルごとの倍率(825)を表す。
【0060】
ノイズ合成をハードウェアで実装する場合、ソフトウェア、ソリューションとは対照的に、最適化のために4個の要因が考慮されるべきである。

1.ソフトウェア実装において、ノイズ画像は別々に合成され、そして、次いで、ルマチャネルに追加される。ハードウェアにおけるメモリ制限のせいで、フィルムグレイン画像のピクセルのみが計算され、そして、コンテンツのルマチャネルに対して直接的に追加される。このアプローチは、フィルムグレイン画像全体を保管するための任意の中間メモリバッファを除去し、そして、かなりの量のオンチップメモリを節約する。

2.ハードウェア実装において、画像はラインバッファを介してアクセスされる。ラインバッファは画像の行(row)を保管することができる。ハードウェアメモリは高価なので、ラインバッファの数は典型的に制限されており、よって、画像全体をこれらの少数のラインバッファにロードすることはできない。メモリに対する読み出しおよび書き込みも、また、時間を要する。このため、ハードウェアソリューションでは、一旦、画像の行をラインバッファへと読み出し、処理全体を実行し、そして、結果をメモリに一度だけ書き出すべきである。画像の同一部分のラインバッファへの複数の読み出しおよび書き込みは、最適ではない。

3.浮動小数点表現はハードウェアに優しいものではないので、ハードウェア実装のためには整数形式の場合、値がより効率的に取り扱われる。ノイズブロックパターン、画像ピクセル、閾値、等は、より単純なハードウェアの実装を可能にするために、整数形式で表現され得る。例えば、確率を0から1まで(実数)に設定する代わりに、0から255まで(整数)に設定することができる。

4.ハードウェア実装におけるブロックサイズは、全てのデコーダハードウェアチップにわたる一貫性のために固定されている(例えば、全てのブロックは8×8である)。記載の残りの部分について、固定ブロックサイズは、B×Bで表される。
【0061】
ハードウェア実装のためにシステムを最適化するように、ノイズ合成アルゴリズムは、これらの要因を考慮に入れるように調整され得る。
【0062】
図9は、ノイズ、この場合にはフィルムグレイン、ハードウェアを介して注入されるコンテンツ、を生成するための例示的なブロック図を示している。フィルムグレイン(945)は、Y(ルマ)チャネル(955)にのみ追加されるが、他のノイズ注入技術は、VおよびUチャネルも同様に含み得る。プロセッサクロック(タイムスタンプ/日付/時刻/等)は、フレームレベル乱数シード(905)として使用され得る。この乱数シード(random seed)は、全ての行レベルの疑似乱数発生器(910)を初期化するために使用される。各ピクセルは、フィルムグレイン(920)に関して評価され、そして、次いで、変調(930、935)後のコンテンツのルマチャネル(925)に加えられる(940)。フィルムグレイン付加コンテンツ(956)は、最終的に、表示(970)のためにRGB(965)へ変換される。
【0063】
図10は、各ピクセルが、フィルムグレインに関して、どのように評価され得るかの例を示している。フィルムグレインブロックパターンデータセットについては、均一なブロックサイズB×Bを仮定する。異なるブロックサイズは、フィルムグレインのサイズを変更するのに役立つが、同じサイズのブロックについて周波数範囲を変更することによって、同じ効果を達成することができる。従って、変数の数を減らすために、フィルムグレインパターンのブロックサイズは、ハードウェアで実装される場合、固定サイズに設定され得る。フィルムグレインブロックパターンは、ソフトウェア実装について説明したのと同じスキームを使用して生成することができる。図10は、行(row)Rにおける列(column)Cでのフィルムグレイン値を生成するためのステップを示している。
【0064】
ハードウェアソリューションにおいて明示的な確率画像は存在しない。その代わり、画像の各行に対して疑似乱数(PRN)シーケンス発生器(1010-1015)が存在する。行Rにおける各エントリ(ピクセル)に対して、PRNモジュールは、新たな乱数を生成する。PRNは、行インデックスおよびランダムオフセットの関数からシード(1005)することができる。乱数が閾値(1020)未満であり、かつ、ノイズブロック管理テーブル(NBMT)(1090)に十分な空間(room)がある場合、フィルムグレインブロック(1070)が、挿入されるように、フィルムグレインパターン(1030)のセットからランダムに選択され、この位置(1065)から開始する。ブロックは、直ちに画像に追加されるのではなく、むしろ、システムは、NBMT(1090)内にそのブロックのエントリ(1025)を入れる。NBMTからピクセル値(NMBT-to-pixel-value)論理ブロック(1035)は、ルマチャネル画像(1045)内の現在の場所におけるノイズ値を計算する。ハードウェア実装のために、閾値Thは正規化されず、それによって、計算コストを低減している。非正規化閾値は、シンボルにおける下付き文字「norm」なしで表されており、そして、方程式Th=round(Thnorm×2Bt)によって正規化閾値に関連付けられている。
【0065】
現在の場所でノイズ値を計算する一方で、以前の行から疑似乱数発生器を使用する理由は、効率のうち1つである。もし、B(ノイズブロックサイズ)が著しく大きい場合、各パスにおけるB行の読み出し/書き込みは、メモリ内のBラインバッファを必要とすることによって、メモリ入力/出力(I/O)およびハードウェアコストを著しく増加させる。
【0066】
反対に、本ソリューションは、ブロックサイズに関係なく、1ラインバッファだけを必要とする。所与の位置について、以前の行からのオーバーラップブロックが存在し得る。これらのブロックは、図10において画像(1060)内の破線の正方形(1070)で示されている。各PRN発生器に対する乱数シードは決定論的であるので、より以前の行が通過した乱数の順序を再現することができる。これらのシーケンスは、より以前の行で使用されたブロックおよびブロックパターンの正確な位置を提供する。本情報は、1つのラインバッファのみを有する任意の位置のための正しいフィルムグレイン値の計算を可能にし、それによって、I/O待ち時間およびハードウェアコストを低減している。ノイズブロック管理テーブル(990)は、各行について維持され、オーバーラップブロックを追跡する。
【0067】
オリジナル、および、グレイン注入されたルマチャネル行Rが、図10では別々に示されているが、オリジナルの行Rは、フィルムグレイン注入行Rを得るために適所でアップデートされ得る。
【0068】
フィルムグレインブロックパターンは、ソフトウェアベースのソリューションについて記載されたものと同様なプロセスを使用して生成される。これらのブロックパターンを計算するメカニズムは、複雑な数学的演算の使用を必要とするので、このタスクは、ファームウェアに引き渡すことができる。合成されたブロックは、ハードウェアアクセスを容易にするために、後でオンチップSRAMに保管することができる。
【0069】
ハードウェア実装の別の大きな課題は、乱数発生器である。より高速な実装のために、線形フィードバックシフトレジスタベースの擬似乱数発生器が使用され得る。これらの乱数内のいくつかのビットが、ブロックパターンのデータセットからフィルムグレインブロックを選択するために使用される。
【0070】
線形フィードバックシフトレジスタは、ハードウェアチップ内で乱数のシーケンスを生成するために、一般的に使用されている。図11に示されている例示的な16ビットレジスタを考えてみる。次の乱数は、レジスタのコンテンツを1だけ右にシフトし、そして、最上位ビット(MSB)の場所(1110)に新しいビットを挿入することによって得られる。新しいビットは、レジスタにおける所定の予め定義された場所(1120)におけるビットの排他的論理和(XOR)である。図11に示される例において、インデックスの場所3、12、14、および15におけるビットがXORされる。XORゲート(1115)の出力は、MSBの場所(1110)へと供給される。
【0071】
タップポイントの場所が正しく選択されている場合、レジスタは、同じ数字に戻る前に、全ての異なる16ビットの数字を一度通過する。別の言葉で言えば、シーケンスは、所定の期間後に繰り返される。次の乱数は、レジスタの現在の状態の関数であることが分かり得る。従って、レジスタが全てゼロに初期化されないように注意する必要がある。全てゼロの場合、プロセスは、その状態でロックされる。
【0072】
ハードウェア実装は、H×Wディメンションの確率画像を明示的に生成しない。回避策として、各行の乱数は、線形フィードバックシフトレジスタを使用して生成され得る。各行に割り当てられたシフトレジスタは、異なるランダムシードを用いて初期化される。このシードは、行インデックスRとランダムオフセットの関数である。
SeedR=(Const+R×Offset) mod 2D
ここで、Dは、レジスタの長さである。ランダムオフセットは、現在のタイムスタンプから導出され、そして、定数は、16ビットシフトレジスタについて214のような、任意の大きな数に設定される。オフセットは、ランダムに選択されるが、現在フレームの全ての行に対して固定されている。各行について異なる擬似乱数発生器が存在するが、任意の所与の時点で、ハードウェアにはB個以上のシフトレジスタは存在しない。ここで、B×Bは、ブロックパターンデータセットにおけるブロックのディメンションを示している。
【0073】
定数、オフセット、および行インデックスが既知なので、シードは決定論的である。このシードを決定論的にすることの背景にあるアイデアは、現在行Rを取り扱うときに、より以前の行が通過した乱数のシーケンスを再現することである。これにより、より以前の行からオーバーラップフィルムグレインブロックの場所を決定し、そして、その知識を使用して現在の場所についてフィルムグレイン値を計算することができる。
【0074】
ランダムシーケンスジェネレータとともに、以前の行のブロックの場所に関する情報を保管するために、テーブルを使用することができる。このテーブルは、ノイズブロック管理テーブル(Noise Block Management Table、)と呼ばれる。
【0075】
NBMTは、特定の行についてルマチャネルの中へ注入されたフィルムグレインブロックの情報を保存する。全てのPRNシーケンスジェネレータ(図10を参照のこと)は、対応するNBMTを有している。テーブル中のエントリの数は、テーブル1に示されるように、設定可能なパラメータであり、そして、各エントリは、以下の3個の列を保持している。
【表3】
テーブル1:ノイズブロック管理テーブル
【0076】
各場所での最終値を計算するために、システムは、その場所とオーバーラップする全てのブロックを考慮する必要がある。ノイズブロック管理テーブルは、画像内のブロックのブロックID bi、原点X座標xi、および原点Y座標yiを保管することにより、これらのオーバーラップブロックを追跡する。速さ及び計算効率のために、テーブル内のエントリの最大数は、ceil(B/4)に制限されている。
【0077】
例えば、フィルムグレインブロックパターンのサイズがB×Bであり、かつ、システムがノイズ注入ルマチャネル画像内の場所(C,R)でフィルムグレイン注入値を計算していると仮定すると、上へB-1行、または、左へB-1列において発している(originating)ブロックは、未だに、現在の場所に影響を及ぼし得る。
この理由で、現在の行Rを処理している間に、システムは、その上のB-1行を考慮する。
【0078】
図10に示されるように、システムは、オーバーラップするブロックを見つけるために、現在行Rの上のB-1行に対して擬似乱数発生器を開始する。現在の行は、また、PRN Row Rで示されている独自の乱数発生器を有することもできる。乱数シードは決定論的であるため、システムは、以前の行が通過した順序を常に再現することができる。行特定(row specific)の乱数発生器とは別に、これらのB行それぞれは、また、独自のNBMTを有することもできる。
【0079】
Cを、処理されている行における現在の列を表すものとする。ルマチャネル画像の行Rは、ラインバッファへと読み出される。列Cは、1のステップで、C=0からC=W-1までインクリメントされる。Cの値それぞれに対して、システムは、以下のステップを実行することができる。

1.B個の乱数発生器それぞれは、乱数を生成する。数値が閾値Th以上の場合は、何もしない。

2.乱数が閾値より小さい場合は、
a.現在の場所に影響を与えないNBMT内の任意のエントリを削除する。例えば、ブロックサイズがB×Bで、xi<C-B+1またはyi<C-B+1のものは削除される。
b.その行についてNBMTが満杯でない場合、フィルムグレインパターンデータセットからランダムブロックが選択される。その行の擬似乱数発生器からのビットは、ブロックID biを選択するために使用される。図12は、擬似乱数発生器からブロックIDビットを選択する方法の一つの例を表している。16個の異なるブロックパターンのデータセットについて、ブロックID [15:12]=7は、データセット内の7番目のパターンである、ブロックID 7を参照する。順序付けはインデックス0で開始する。
c.そのブロックに対するエントリがNBMTに追加され、xi=Cであり、かつ、Y座標は行インデックスに等しい。ブロックIDは、以前のステップから導出される。

3.全てのR行のNBMTから場所(C,R)でのフィルムグレイン値を計算する。このステップは、ピクセル値に対するNBMTのロジック(NBMT to pixel value logic)と呼ばれ、図13に例示されている。
a.全てのNBMTにおける各エントリについて、ブロックが現在の場所(1310)とオーバーラップしているか確認する。ブロックは、xi≦C≦B+xi-1かつyi≦R≦B+yi-1である場合にオーバーラップする。
b.PRN発生器から抽出されたブロックIDを使用して、ブロックパターンデータセット(1320)から対応するブロックを選択する。現在の場所とオーバーラップするブロックにおける値をピックする。
c.複数のそうしたオーバーラップしているブロックが存在し得るので、値は、一緒に加算される(1330)。
d.この値は、ノイズ値に対するルマ変調度(1340)を計算する、次のステージに渡される。ルマ変調ノイズ値は、オリジナルのルマ(1355)に対して加算され(1350)、列(1360)でラインバッファに書き込まれる。

4.各行は、フィルムグレイン注入ルマチャネル画像を得るために、一度に1つずつ、このプロセスを通過する。その上にB-1行を有していない行については、利用可能な行だけが考慮される。
【0080】
ハードウェア実装されたルマ強度ベースのノイズ変調技術のために、ソフトウェア実装の非線形曲線は、非線形演算でメモリサイクルを浪費することを避けるために、区分的(piecewise)線形セグメントによって置き換えるべきである。これらのラインセグメントのパラメータは、メタデータにおいてデコーダに対して信号化され得る。システムは、次いで、区分的線形曲線から各ルマ強度値に対する変調度を計算することができる。
【0081】
さらに、ソフトウェア実装のための曲線における値は分数である。ハードウェアでは、分数は扱いにくい(cumbersome)。従って、曲線
【数8】
における値は、区分的線形近似の前に、Bc=8ビット整数にスケール化され得る。すなわち、0≦l≦2Bc-1についてfhw(l)=round(f(l)×2Bc)である。曲線fhw(・)は、次いで、T+1個のピボット点を使用して、T個のセグメントへパーティション分割される。ピボット点の場所をベクトルΩで表されるようにする。つまり、0≦k≦Tについて0≦Ω(k)≦2Bc-1である。
【0082】
曲線上の2つのピボットごと、つまり、x1=Ω(k)およびx2=Ω(k+1)について、点y1=fhw(x1)と点y2=fhw(x21)を接続するk番目のラインセグメントの式を計算する。ラインの式は3個のパラメータを有する。傾き、X切片(x1)、Y切片(y1)である。
【数9】
式5
【数10】
式6
【0083】
各セグメントの傾き、ピボット、およびY切片パラメータは、デコーダに対して送信される。各ルマ強度に対する変調度を計算するために、デコーダにおいて曲線が再構成される。説明のために、図14は、オリジナルの(ソフトウェアベースの)区分的線形曲線、および、α=0.25、β=2に対する区分的線形曲線をプロットしている。Y(C,R)=yCRがYチャネル内の場所(C,R)でのルマ強度である場合、ノイズ値、つまりnCRは、ノイズ注入ルマ値を得るために、f(yCR)で乗算され、そして、ルマチャネルに加算される。
【数11】
変調度がBcビットのコードワード範囲内なので、フィルムグレイン値と変調度の積は、正しいルマ変調フィルムグレイン値を得るために、Bcビットだけ右シフトされ得る。
【0084】
フィルムグレインノイズと同様に、デジタルカメラノイズのハードウェア実装も、また、いくつかの制限を有している。

1.ハードウェアにおけるガウス乱数の合成は、関連するログ関数(log function)のために高価である。回避策として、これらの数字は、ファームウェアで生成し、かつ、デジタルカメラのノイズブロックとして保管することができる。

2.メモリの制限のせいで、デジタルカメラのノイズ画像をオンチップメモリに保管することは高価である。ノイズピクセルは、変調の後で、直接的に、計算され、そして、Y、U、およびVチャネルに追加され得る。

3.Yチャネル、Uチャネル、Vチャネルのわずか数行が、処理のためにラインバッファとしてメモリに読み出される。画像サイズが巨大であり得るので、画像全体の処理はI/Oおよびメモリ集約的である。ラインバッファは、待ち時間(latency)およびメモリの必要性を緩和するのに役立つ。しかし、ソフトウェアソリューションと同様の結果を達成するために、アーキテクチャは大幅に変更され得る。

4.ハードウェア実装について、浮動小数点演算はより複雑であり、全ての値は、固定小数点形式に変換される。浮動小数点演算から固定小数点演算に移行する場合は、アーキテクチャに対するいくつかの変更が必要とされる。

5.デジタルカメラのノイズパターンのブロックサイズは1×1(B=1)に固定することができる。これは、本質的に、システムが、全ての場所で1つだけのガウス乱数を追加していることを意味する。これは、ソフトウェアソリューションに沿ったものである。
【0085】
ハードウェアにおけるデジタルカメラノイズ合成の一つの実施形態は、デジタルカメラノイズパターンのブロックサイズを1×1に制限し、そして、行Rに対する確率閾値が2Dに設定され、一方で、他の行は、ゼロの閾値を有している。確率閾値を2Dに設定することは、ブロックが、Yチャネルにおける全てのピクセルの場所に追加されることを確保する。ブロックサイズが1×1に制限されているので、ブロック間のオーバーラップは存在しない。従って、行RのNMBTには1つのエントリだけが存在する。
【0086】
各行について疑似乱数発生器が存在している。行Rおよび列Cの処理中に、疑似乱数が2Dより小さい場合、システムは、デジタルカメラブロックをそのピクセルに追加する。これらの乱数は常に2Dより小さいので、システムは、各場所においてガウス乱数を追加する。ブロックは、擬似乱数発生器の先頭ビットを使用してランダムに選択される。そのブロックの情報は、その行のNBMT内に挿入することができる。ピクセル値に対するNBMTのロジックは、デジタルカメラのノイズ値を計算する。この値は、変調度を用いて変調され、そして、ラインバッファの列Cに追加される。サイズ1×1については、隣接するブロックからのオーバーラップがないので、B=1であり、かつ、ピクセル値に対するNBMTのロジックは単純である。図15は、図10の特殊な事例として説明可能な、デジタルカメラノイズ合成のハードウェア実装に係る一つの例示的なブロック図を示している。
【0087】
デジタルカメラノイズは、ルマチャネルにのみ追加されるフィルムグレインとは対照的に、クロマチャネルにも追加される。ルマチャネルおよびクロマチャネルへのカメラノイズ注入のアーキテクチャは本質的に同じである。クロマチャネルのための設計は、図16の例に示されるように、図15のハードウェアアーキテクチャから、余分な疑似乱数発生器、閾値ブロック、NBMTおよびNBMTといった余分な構成要素をピクセル値ロジックから除去することによって、単純化することができる。
【0088】
例えば、デジタルカメラノイズについて1024個のブロックパターンが存在すると仮定する。すると、ブロックインデックスbiを計算するために、PRN Row Rの最初の10ビットを使用することができる。1×1ブロックがデータセットから取り出され、ルマ強度で変調され、そして、現在の場所においてクロマチャネルラインバッファに追加される。
【0089】
YUV 444シーケンスについて、変調度は、ルマチャネル内の共配置された強度から計算することができる。ノイズ値は変調後にクロマチャネルに加算される。別の言葉で言えば、ノイズ値は、最初にルマ強度で変調され、そして、次にクロマチャネルに加算される。
【0090】
YUV 422シーケンスについては、Yチャネルが幅で半分にサブサンプリングすることができ、そして、次いで、変調度がYチャネル内の共配置されたピクセルから計算される。ノイズ値は、ダウンサンプリングされたルマ強度で変調され、そして、次いで、クロマチャネルに加算される。従来のフィルタリングアプローチを使用するダウンサンプリングのアプローチは、ハードウェアについて高価であり得る。しかし、変調度は、粗く(crude)、かつ、概ねのダウンサンプリングを用いて機能することができる。ハードウェアの複雑さを低減するために、ルマチャネルは、ルマチャネルの行における隣接要素の単純な平均化によってサブサンプリングされる。本プロセスは、以下の擬似コードにおいて詳述されている。シンボルYhhは、同じ行における隣接要素の平均をとることによって、ルマチャネルYの水平方向にダウンサンプリングされたバージョンを示す。
【表4】
【0091】
図17は、ハードウェア実装のための統一されたノイズ注入アーキテクチャの例を示しており、複数のタイプのノイズ(この例では、フィルムグレインおよびカメラ)の合成を可能にする。擬似乱数発生器(1710)は、乱数列を生成することができる。これらの乱数が閾値条件を満たす場合、どのタイプのノイズが必要だと決定されるかに応じて(1715)、フィルムグレイン(1721)またはデジタルカメラノイズ(1722)ブロックデータセットを使用して、集合ノイズ値が計算される(1720)。この値は、ルマ強度で変調され(1730)、そして、オリジナルのルマまたはクロマチャネルに加算される。1行が一度に処理されるので(1740)、ラインバッファは、YUVコンテンツの行を収容するのに十分な大きさであることだけが必要である。ノイズ注入YUVコンテンツは、表示のためRGBに変換される(1750)。
【0092】
ノイズ注入モデルがコンテンツの中へノイズを注入するために使用される、2個の異なるシナリオが存在する。第1のシナリオにおいて、コンテンツプロバイダは、ビデオに追加されるノイズの外観(look)を制御することができる。パラメータはエンコーダ側で設定され、そして、メタデータの一部としてデコーダに送信される。第2のシナリオについて、デコーダは、鑑賞条件または表示仕様に基づいてノイズを合成することができる。コンテンツプロバイダの設定は、ローカルな調整よりも高い優先度を有し得る。また、その逆も同様である。
【0093】
ノイズ合成パラメータは、ワークフローの異なるステージ、すなわち、エンコーダ側コンテンツプロバイダの優先設定またはデコーダ側のローカル適応設定において設定され得る。デコーダパラメータは、ファームウェアまたはハードウェアの中へ構成され得る。
【0094】
芸術的な理由で、コンテンツプロバイダは、映像効果のためにビデオシーケンスにフィルムグレインまたはカメラノイズを追加することを望み得る。ノイズは、エンコーディングの間に圧縮され、そして、その結果、デコーダ側では映画的な効果が減少される。さらに、ノイズの多いシーケンスを圧縮するために、より高いビットレートが必要なので、デコーダ側でノイズを生成するためのパラメータと共にノイズのないシーケンスを送信することは、ビットレート要件を低下させ、そして、依然として映画的な効果を保持している。その目的のため、エンコーダ側でパラメータを設定し、そして、メタデータを介してデコーダに送信するオプションが存在する。パラメータが、テーブル2に示されている。
【表5】
テーブル2
【0095】
パラメータは、デコーダ側でノイズ発生モジュールを初期化するために、メタデータから読み出すことができる。同様に、パラメータは、鑑賞環境または表示仕様に基づいてデコーダ側で調整され得る。いずれにせよ、デコーダは、一連のパラメータが与えられ、ノイズを合成する必要がある。デコーダは、ファームウェアまたはプロセッサ、およびハードウェアシステムから構成されている。ファームウェアは、速度を犠牲にして複雑な数学的関数を計算することができるが、ハードウェアは、より速い速度で低レベルの論理演算を実行することができる。
【0096】
速度要件および計算の複雑性に基づいて、ノイズ画像生成のタスクは、ファームウェアおよびハードウェアへと分割される必要がある。フィルムグレインまたはカメラノイズブロックの合成は、ハードウェアにとって計算集中的(computationally intensive)であるため、ファームウェアに対して引き渡され得る。構築するブロックパターンはほんの数個しか存在しないので、ファームウェアは、多くの処理オーバーヘッドなしで、システムのブートアップの最中に容易にそれらを構築することができる。
【0097】
例示的な実施形態
EE1.デジタル画像に対する合成ノイズ画像を生成するためのコンピュータベースの方法であって、前記方法は、複数のノイズブロックパターンを提供するステップと、ノイズ画像を初期化するステップと、確率画像を生成するステップであり、該確率画像は、各ピクセルにおいてランダムに生成された確率値を含む、ステップと、前記確率画像における各確率値を閾値基準と比較するステップと、を含む。前記確率値が前記閾値基準を満たす場合、前記複数のノイズブロックパターンからノイズブロックパターンを選択し、該ノイズブロックパターンはアンカーポイントを有しており、かつ、前記確率値が前記閾値基準を満たす場合、前記アンカーポイントが、前記閾値基準を満たす前記確率画像におけるピクセルに対応するように、前記ノイズブロックパターンを前記ノイズ画像内に配置することによって、合成されたノイズ画像を生成する。

EE2.ノイズグレインブロックパターンが、ランダムに選択される、EE1の方法。

EE3.前記確率画像の前記確率値は、一様に分布した確率値である、EE1またはEE2の方法。

EE4.前記ノイズブロックパターンは、フィルムグレインブロックパターンを含む、EE1-EE3いずれかの方法。

EE5.前記方法は、さらに、前記ノイズブロックパターンがオーバーラップする前記ノイズ画像の領域における値を集約するステップを含む、EE1-EE4の方法。

EE6.前記方法は、さらに、前記ノイズ画像を生成する前に、前記ノイズブロックパターンを生成するステップを含み、前記ノイズブロックパターンは、逆DCT技術を通じて生成される、EE1-EE5いずれかの方法。

EE7.前記生成するステップは、さらに、低周波DCT係数を除去することを含む、EE6の方法。

EE8.前記生成するステップは、さらに、高周波DCT係数を除去することを含む、EE6またはEE7の方法。

EE9.前記確率画像および前記ノイズ画像は、ビデオフレームにマッチするサイズにされる、EE1-EE8いずれかの方法。

EE10.前記方法は、さらに、前記ノイズ画像をコンテンツ画像のチャネルに加えることによって、前記コンテンツ画像を編集するステップを含む、EE1-EE9いずれかの方法。

EE11.前記方法は、さらに、前記ノイズ画像を前記コンテンツ画像に加える前に、前記ノイズ画像における値を変調度で乗算するステップを含む、EE10の方法。

EE12.前記値は、前記ノイズ画像のルマ強度値である、EE11の方法。

EE13.前記方法は、さらに、編集された前記コンテンツ画像に基づいて、YUVコンテンツ画像を生成するステップを含む、EE10-EE12いずれかの方法。

EE14.前記方法は、さらに、前記YUVコンテンツ画像に基づいて、RGBコンテンツ画像を生成するステップを含む、EE13の方法。

EE15.復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、合成ノイズ画像を生成するために、EE1-EE14いずれかの方法を実行するノイズ合成モジュールと、を含む、デバイスであって、前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせるように構成されている、デバイス。

EE16.前記デバイスは、さらに、前記復号されたクリーンシーケンスと組み合わせる前に、前記合成ノイズ画像を変調するための変調曲線モジュールを含む、EE15のデバイス。

EE17.データを含むコンピュータプログラムであって、前記データは、プロセッサ上で実行されると、EE1-EE14いずれかの方法を実行するようにエンコーディングされている、コンピュータプログラム。

EE18.画像において合成ノイズを生成するためのデバイスであって、前記デバイスは、前記画像からの行を含むラインバッファと、ノイズブロックパターンを含むファームウェアと、前記行におけるピクセルに対してランダム値を提供するための擬似乱数発生器と、前記ランダム値を閾値基準と比較するためのロジックと、ノイズブロック管理テーブルを含むデータストアと、前記行におけるピクセルに関連付けられている前記ファームウェアからのランダムノイズブロックパターンに基づいて前記ノイズブロック管理テーブルを生成するロジックであり、前記ピクセルに関連付けられた前記ランダム値は前記閾値基準を満たすロジックと、前記ノイズブロック管理テーブルに基づいて前記画像の前記行における各ピクセルの場所についてノイズ値を計算するロジックと、前記ノイズ値に基づいて、前記行を修正するロジックと、を含む、デバイス。

EE19.前記デバイスは、さらに、前記画像から変調曲線を決定し、変調度を計算し、かつ、前記行を修正する前に前記変調度を前記ノイズ値に適用するロジックを備える、EE18のデバイス。

EE20.疑似ランダムノイズ発生器は、行インデックスおよびランダムオフセット値に基づいてランダム数を生成する、EE18またはEE19のデバイス。

EE21.前記画像は、ルマチャネル画像である、EE18-EE20いずれかのデバイス。

EE22.前記画像は、クロマチャネル画像である、EE18-EE20いずれかのデバイス。

EE23.前記デバイスは、さらに、前記画像を並列に処理するために、複数の擬似乱数発生器および複数のラインバッファを備える、EE18-EE22いずれかのデバイス。

EE24.復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、合成ノイズ画像を生成するために、EE18-EE23いずれかのデバイスを含むノイズ合成モジュールと、を含む、デコーダシステムであって、前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせるように構成されている。

EE25.デコーダ用のメタデータを生成する方法であって、前記方法は、ノイズカテゴリパラメータを設定するステップと、ブロックサイズパラメータを設定するステップと、閾値パラメータを設定するステップと、変調度曲線パラメータを設定するステップとを含む。

EE26.前記方法は、さらに、ノイズ分散パラメータを設定するステップを含む、EE25の方法。

EE27.前記方法は、さらに、離散コサイン変換周波数範囲パラメータを設定するステップを含む、EE25またはEE26に記載の方法。

EE28.前記方法は、さらに、複数のブロックパターンパラメータを設定するステップを含む、EE25-EE27いずれかの方法。

EE29.前記方法は、さらに、ノイズブロック管理テーブルのエントリーパラメータを設定するステップを含む、EE25-EE28いずれかの方法。
【0098】
本開示の多くの実施形態が説明されてきた。それにもかかわらず、本開示の精神および範囲から逸脱することなく、種々の修正が成され得ることが理解されるだろう。従って、他の態様は、以降の請求項の範囲内にある。実施形態の任意の顕著な特徴は、適切な場合、全ての実施形態に共通である。
【0099】
上記の実施例は、本開示の実施形態をどのように作成し、かつ、使用するかの完全な開示および説明として当業者に対して提供されるものであり、そして、発明者がそれらの開示としてみなすものの範囲を制限するように意図されたものではない。
【0100】
当業者にとって自明な、ここにおいて開示された方法およびシステムを実施するための上述のモードの修正は、以下の請求項の範囲内であるように意図されている。本明細書において言及された全ての特許および刊行物は、本開示が関連する当業者の技術のレベルを示している。この開示において引用された全ての参考文献は、各参考文献が個々にその全内容を参照により引用されたかのように、同じ程度まで参照により引用されている。
【0101】
本開示は、特定の方法またはシステムに限定されるものではなく、もちろん、変化し得ることが理解されるべきである。ここにおいて使用される用語は、特定の実施形態のみを説明する目的のためのものであり、かつ、限定することを意図するものではないことも、また、理解されるべきである。この明細書および添付の請求項において使用されるように、単数の形式である「一つの(“a”、“an”、および“the”)」は、そうでないものとコンテンツが明確に規定しない限り、複数の参照対象を包含するものである。用語「複数(“plurality”)」は、そうでないものとコンテンツが明確に規定しない限り、2つ以上の参照対象を含んでいる。そうでないものと規定されない限り、ここにおいて使用される全ての技術的および科学的用語は、本開示に関連する当業者によって一般的に理解されるものと同じ意味を有している。
図1
図2A
図2B
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
【手続補正書】
【提出日】2022-07-26
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
デジタル画像に対する合成ノイズ画像を生成するためのコンピュータベースの方法であって、前記方法は、
複数のノイズブロックパターンを提供するステップと、
ノイズ画像を初期化するステップと、
確率画像を生成するステップであり、該確率画像は、各ピクセルにおいてランダムに生成された確率値を含む、ステップと、
前記確率画像における各確率値を閾値基準と比較するステップと、
を含み、
前記確率値が前記閾値基準を満たす場合、
前記複数のノイズブロックパターンからノイズブロックパターンを選択し、該ノイズブロックパターンはアンカーポイントを有しており、かつ、
前記確率値が前記閾値基準を満たす場合、
前記アンカーポイントが、前記閾値基準を満たす前記確率画像におけるピクセルに対応するように、前記ノイズブロックパターンを前記ノイズ画像内に配置することによって、合成されたノイズ画像を生成する、
方法。
【請求項2】
ノイズグレインブロックパターンが、ランダムに選択される、
請求項1に記載の方法。
【請求項3】
前記確率画像の前記確率値は、一様に分布した確率値である、
請求項1または2に記載の方法。
【請求項4】
前記ノイズブロックパターンは、フィルムグレインブロックパターンを含む、
請求項1乃至3いずれか一項に記載の方法。
【請求項5】
前記方法は、さらに、
前記ノイズブロックパターンがオーバーラップする前記ノイズ画像の領域における値を集約するステップステップ、を含む、
請求項1乃至4いずれか一項に記載の方法。
【請求項6】
前記方法は、さらに、
前記ノイズ画像を生成する前に、前記ノイズブロックパターンを生成するステップ、を含み、
前記ノイズブロックパターンは、逆DCT技術を通じて生成される、
請求項1乃至5いずれか一項に記載の方法。
【請求項7】
前記生成するステップは、さらに、
低周波DCT係数を除去すること、を含む、
請求項6に記載の方法。
【請求項8】
前記生成するステップは、さらに、
高周波DCT係数を除去すること、を含む、
請求項6または7に記載の方法。
【請求項9】
前記確率画像および前記ノイズ画像は、ビデオフレームにマッチするサイズにされる、
請求項1乃至8いずれか一項に記載の方法。
【請求項10】
前記方法は、さらに、
前記ノイズ画像をコンテンツ画像のチャネルに加えることによって、前記コンテンツ画像を編集するステップ、を含む、
請求項1乃至9いずれか一項に記載の方法。
【請求項11】
前記方法は、さらに、
前記ノイズ画像を前記コンテンツ画像に加える前に、前記ノイズ画像における値を変調度で乗算するステップ、を含む、
請求項10に記載の方法。
【請求項12】
前記値は、前記ノイズ画像のルマ強度値である、
請求項11に記載の方法。
【請求項13】
前記方法は、さらに、
編集された前記コンテンツ画像に基づいて、YUVコンテンツ画像を生成するステップ、を含む、
請求項10乃至12いずれか一項に記載の方法。
【請求項14】
前記方法は、さらに、
前記YUVコンテンツ画像に基づいて、RGBコンテンツ画像を生成するステップ、を含む、
請求項13に記載の方法。
【請求項15】
復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、
合成ノイズ画像を生成するために、請求項1乃至14いずれか一項に記載の方法を実行するノイズ合成モジュールと、
を含む、デバイスであって、
前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせる、ように構成されている、
デバイス。
【請求項16】
前記デバイスは、さらに、
前記復号されたクリーンシーケンスと組み合わせる前に、前記合成ノイズ画像を変調するための変調曲線モジュール、を含む、
請求項15に記載のデバイス。
【請求項17】
データを含むコンピュータプログラムであって、
前記データは、プロセッサ上で実行されると、請求項1乃至14いずれか一項に記載の方法を実行するようにエンコーディングされている、
コンピュータプログラム。
【請求項18】
画像において合成ノイズを生成するためのデバイスであって、前記デバイスは、
前記画像からの行を含むラインバッファと、
ノイズブロックパターンを含むファームウェアと、
前記行におけるピクセルに対してランダム値を提供するための疑似乱数発生器と、
前記ランダム値を閾値基準と比較するためのロジックと、
ノイズブロック管理テーブルを含むデータストアと、
前記行におけるピクセルに関連付けられている前記ファームウェアからのランダムノイズブロックパターンに基づいて、前記ノイズブロック管理テーブルを生成するロジックであり、前記ピクセルに関連付けられた前記ランダム値は前記閾値基準を満たす、ロジックと、
前記ノイズブロック管理テーブルに基づいて、前記画像の前記行における各ピクセルの場所についてノイズ値を計算するロジックと、
前記ノイズ値に基づいて、前記行を修正するロジックと、
を含む、デバイス。
【請求項19】
前記デバイスは、さらに、
前記画像から変調曲線を決定し、変調度を計算し、かつ、前記行を修正する前に前記変調度を前記ノイズ値に適用するロジック、を備える、
請求項18に記載のデバイス。
【請求項20】
疑似ランダムノイズ発生器は、行インデックスおよびランダムオフセット値に基づいて、ランダム数を生成する、
請求項18または19に記載のデバイス。
【請求項21】
前記画像は、ルマチャネル画像である、
請求項18乃至20いずれか一項に記載のデバイス。
【請求項22】
前記画像は、クロマチャネル画像である、
請求項18乃至20いずれか一項に記載のデバイス。
【請求項23】
前記デバイスは、さらに、
前記画像を並列に処理するために、複数の擬似乱数発生器および複数のラインバッファを備える、
請求項18乃至22いずれか一項に記載のデバイス。
【請求項24】
復号されたクリーンなシーケンスを生成するために、エンコーディングされた画像をデコーディングするためのデコーダと、
合成ノイズ画像を生成するために、請求項18乃至23いずれか一項に記載のデバイスを含むノイズ合成モジュールと、
を含む、デコーダシステムであって、
前記デコーダは、表示のためのレンダリングされた画像を生成するために、前記合成ノイズ画像を前記復号されたクリーンシーケンスと組み合わせる、ように構成されている、
デコーダシステム。
【国際調査報告】