説明

フィルム粒子パターンのデータベースを用いてフィルム粒子のシミュレーションを行う技術

画像ブロック中の個々のピクセルを、当該画像ブロックの輝度特性に従って予め設定したフィルム粒子ブロックのプール(18)から無作為に選択したフィルム粒子ブロックのフィルム粒子とブレンドする。ブレンドを行う前に、選択したフィルム粒子ブロックに対して、デブロッキング・フィルタ(28)によるデブロッキングを行う。ブレンドを行った後で、表示を行う前に、クリッパ(32)が個々のピクセルをクリッピングする。フィルム粒子ブロックのプール(18)は、画像ブロックに付随するフィルム粒子情報メッセージの少なくとも1つのパラメータに従って1組のフィルム粒子パターンをスケーリングすることによって作成される。

【発明の詳細な説明】
【技術分野】
【0001】
本願は、米国特許法119条(e)に基づき、その開示を本明細書に組み込む、2003年12月5日出願の米国仮特許出願第60/527,895号に対する優先権を主張するものである。
【0002】
本発明は、画像のフィルム粒子(film grain:フィルム・グレイン)をシミュレートする技術に関する。
【背景技術】
【0003】
動画フィルムは、感光乳剤中に分散させたハロゲン化銀結晶を含んでいる。感光乳剤は、何層かの薄い層状にしてフィルム・ベースに塗布されている。これらの結晶の露光および現像を行うことにより、離散した微小銀粒子からなる写真画像が形成される。カラー・ネガでは、フィルム・ストックの現像中に銀を化学的に除去した後で銀の結晶が形成される位置に小さな染料のブロブ(blob:小さな塊)が生じる。これらの小さな染料のしみは、通常は、カラー・フィルムの「粒子(grain:グレイン)」と呼ばれる。粒子は、得られた画像中に不規則に分布した状態で現れる。これは、元の感光乳剤上に形成される銀結晶が不規則に形成されるからである。一様に露光した領域内でも、一部の結晶は露光後に成長し、一部の結晶は成長しない。
【0004】
粒子(グレイン)のサイズおよび形状は様々である。フィルムが高感度になるほど、形成される銀の凝集塊および生成される染料のブロブは大きくなり、且つ不規則なパターンで互いに集まりやすくなる傾向がある。「粒状度(granularity:粒度)」という用語は、通常はこの粒子パターンを指す。個々の粒子は0.0002mmから約0.002mmの範囲であり、裸眼で識別することはできない。しかし、裸眼でも、粒子の集まりを見分けることはでき、これを「ブロブ」と呼ぶ。これらのブロブの集まりがフィルム粒子として識別される。画像の解像度が高くなると、フィルム粒子の知覚度も高くなる。フィルム粒子は映画および高解像度(HD)画像でははっきりと目に付くが、標準解像度(SD)では次第に重要でなくなり、フォーマットが小さくなるにつれて知覚できなくなる。
【0005】
動画フィルムは、通常、写真フィルムの露光および現像という物理的プロセス、またはその後の画像編集によって生じる画像依存ノイズを含んでいる。写真フィルムは、写真の感光乳剤の物理的粒状度によって生じる、特徴的な擬似ランダム・パターン、即ちテクスチャを有する。或いは、計算によって生成した画像において同様のパターンのシミュレーションを行って、これらを写真フィルムとブレンドすることもできる。何れの場合も、この画像依存ノイズは、「フィルム粒子(film grain:フィルム・グレイン)」と呼ばれる。適度な粒子テクスチャが、動画に望ましい特徴を与えることは非常にしばしばある。場合によっては、フィルム粒子は、2次元ピクチャを正しく知覚することを容易にする視覚的なキュー(cue)を提供することもある。1枚のフィルムの中でフィルムのグレードが変化し、時間参照や視点などに関する様々な手がかりを提供することも多い。映画産業では、その他にも、粒子テクスチャの制御に関する多くの技術的、芸術的要求がある。従って、映画産業においては、一連の画像処理および配信の間に、画像が持つ粒状の外観を保存することが必要となっている。
【0006】
幾つかの市販製品は、しばしばコンピュータで生成したオブジェクトを自然の光景に組み込むために、フィルム粒子をシミュレートする機能を有する。米国ニューヨーク州RochesterのEastman Kodak社製のCineon(米国登録商標)は、粒子シミュレーションを実施する最初のディジタル・フィルム・アプリケーションの1つであり、多くの粒子タイプに対して非常に写実的な結果が得られる。しかし、Cineonアプリケーションは、粒子サイズを高く設定すると顕著な斜めの縞が発生するので、多くの高速フィルムで良好な性能が得られない。更に、Cineonアプリケーションは、例えば画像を複製またはディジタル処理する場合など、画像に前処理を施す場合には、十分な忠実度で粒子をシミュレートすることができない。
【0007】
フィルム粒子をシミュレートする別の市販製品としては、Adobe(登録商標)After Effects(米国登録商標)のプラグインとして使用される、Visual Infinity社製のGrain Surgery(商標)がある。この製品Grain Surgery(商標)は、1組の乱数をフィルタリングすることによって、合成粒子を生成するものと考えられる。この手法には、計算が複雑になるという欠点がある。
【発明の開示】
【0008】
従って、メモリ帯域幅および計算量の必要を低減し、それによりセット・トップ・ボックス(STB)などの費用重視の高容量デバイスにおけるフィルム粒子シミュレーションを可能にする、効率的なフィルム粒子シミュレーション技術が必要とされている。
【0009】
(発明の概要)
簡単に述べると、本発明の一態様によれば、画像ブロックのピクセルとブレンドするためのフィルム粒子を備えたM×N個のピクセルのブロックを作成する方法が提供される。ここで、NおよびMはゼロより大きい整数である。この方法は、フィルム粒子ブロック中に現れるフィルム粒子の属性を指定する少なくとも1つのパラメータを含むフィルム粒子情報を受信したときに開始される。(伝送されないパラメータは、デフォルト値に設定されるものとする。特定の実施形態では、H.264/AVC規格に指定されているようにデフォルト値を導出することもできる。)擬似乱数、およびフィルム粒子パターンを特徴付ける1組のカット周波数に応じて、M×N個のピクセルからなるフィルム粒子ブロックを、フィルム粒子を含む予め設定されたブロックのデータベースから選択する。選択したフィルム粒子ブロック中の全てのピクセル値を、受信したフィルム粒子情報中の1つのパラメータに従ってスケーリングする。作成したフィルム粒子のブロックは、画像ブロック中のフィルム粒子をシミュレートするために当該ブロック中のピクセルとブレンドするブロックを選択した、フィルム粒子ブロックのプールの一部となる。
【0010】
本発明の別の態様によれば、複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法が提供される。この方法は、予め設定されたフィルム粒子値のプールから、フィルム粒子のブロックが選択されたときに開始される。フィルム粒子のブロックの選択は、画像ブロックの輝度(luma:ルマ)平均値に対応する輝度強度間隔に対して、それらのブロックの間で乱数に従って無作為に行われる。選択されたフィルム粒子ブロックに対して、デブロッキングを行う。デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、画像ブロックの個々のピクセルとブレンドして、フィルム粒子をシミュレートし、その結果得られたブレンド済みのピクセルを、表示などのために出力する前にクリッピングする。
【発明を実施するための最良の形態】
【0011】
導入
本発明の原理によれば、フィルム粒子のシミュレーションは、シミュレートした粒子をブレンドする画像と共に伝送されるフィルム粒子情報に従って行われる。実際には、伝送される画像は、H.264圧縮方式など様々な周知の圧縮方式の1つによって、伝送される前に圧縮(符号化)されるのが普通である。H.264圧縮方式を用いて圧縮された伝送画像では、フィルム粒子情報は、付加拡張情報(SEI:Supplemental Enhancement Information)メッセージを介して伝送される。H.264規格を公表した標準化団体が最近採用している提言によれば、SEIメッセージは、現在では、様々なフィルム粒子属性を指定する様々なパラメータを含むことができる。
【0012】
フィルム粒子付加拡張情報(SEI)メッセージ・パラメータの制約
本発明の原理による方法では、H.264勧告で許容されるパラメータの数、およびそれらがとり得る値の範囲に関して幾つかの制約を加える。表1は、これらのパラメータを、それらの意味の説明および本発明の原理によって付与される制約と共に示すリストである。
【0013】
【表1】

【0014】
【表2】

本発明の原理によれば、パラメータcomp_model_value[0][i][1]およびcomp_model_value[0][i][2]は、異なる値をとることができる。しかし、表2に示すように、対(comp_model_value[0][i][1]、comp_model_value[0][i][2])の対については、限られた数しか許容されない。
【0015】
【表3】

フィルム粒子SEIメッセージのその他の全てのパラメータについては、標準仕様に関する制約はない。
【0016】
フィルム粒子シミュレーションのビット・アキュレートな(bit−accurate)実施
本発明の原理によるフィルム粒子シミュレーションは、2ステップ・プロセスで行われる。最初に、図1を参照して更に詳細に述べるように、Iピクチャの前に拡張付加情報(SEI)メッセージを受信した後で行う初期化の間に、フィルム粒子ブロックのプールを生成する。このフィルム粒子ブロックのプールから、特定の値のブロックを選択する。その後、図2を参照して述べるように、選択したブロックの複数の部分を、復号した各ピクチャの各輝度ピクセルに付加する。
【0017】
図1は、本発明の原理の例示的な実施形態による、フィルム粒子シミュレーションに使用されるフィルム粒子ブロックのプールを生成する装置10を示す図である。フィルム粒子情報を含むフィルム粒子拡張付加情報(SEI)メッセージを受信すると、初期化プロセスが行われ、8個までの異なる輝度強度間隔のそれぞれに対して4096(512×8)個のフィルム粒子ピクセル値のプールが作成される。輝度(ルマ)強度間隔の数は、SEIメッセージのフィールドnum_intensity_intervals_minus1[0]に1を加えた数で示される。フィルム粒子サンプルの生成は、最も下の輝度強度間隔から始まる。
【0018】
フィルム粒子ノイズのビット・アキュレートなシミュレーションは、通常、特定の一様擬似乱数発生多項式および特定のフィルム粒子パターン・データベース12を使用して行われる。実際には、フィルム粒子パターン・データベース12は、4096(512×8)個のフィルム粒子の値を26組含む(13組は丸い粒子、13組は細長い粒子)。これらの値は、2の補数の形態で記憶され、[−127、127]の範囲となる。各組の値のリストは、予め規定して、システムがアクセスできる固定記憶装置に記憶してもよいし、或いはシステムの初期化またはリセット時にビット・アキュレートな方法を用いて作成してもよい。
【0019】
データベース12に記憶されたフィルム粒子パターンについて、選択ブロック14で選択が行われ、その後スケーリング・ブロック16でスケーリングが行われて、フィルム粒子ブロックのプール18が得られる。フィルム粒子パターンのデータベース12に対するアクセス、ブロック16による値のスケーリング、およびその後のブロックのスケーリング済みの値のプール18への記憶は、以下のルーチンに従って行われる。
(i=0..4095)として
【0020】
【数1】

ここで、nは、comp_model_value[0][s][2]−3に等しい。mは、num_param_minus1[0]が1であるときには0に等しく、そうでないときには1に等しい。因数6は、データベースに記憶されたフィルム粒子値をスケーリングする。このプロセスは、SEIメッセージのフィールドnum_intensity_intervals_minus1[0]に1を加えた数で示される回数だけ実行される。
【0021】
ピクセル表示前のブロック演算およびピクセル演算
図2は、復号したピクチャにブロック・レベルおよびピクセル・レベルでフィルム粒子を付加するのに必要な演算を実行する装置20を示す図である。輝度平均化ブロック22は、復号画像の8×8ブロックのそれぞれを処理し、輝度ピクセル値の平均を計算し、SEIメッセージのパラメータintensity_interval_lower_bound[0][i]およびintensity_interval_upper_bound[0][i]と比較して、当該ブロックに対する正しい輝度強度間隔を決定する。一様乱数発生器24は、原始多項式のモジュロ2演算子x18+x+x+x+1を用いて、選択ブロック26に入力するための乱数を生成する。選択ブロック26は、フィルム粒子プール18にアクセスして、乱数および輝度強度値に従ってフィルム粒子ブロックを選択する。
【0022】
乱数発生器24がフィルム粒子ブロックを選択するための乱数を生成する方法を理解するために、x(i、e)で、シードeから始まるシーケンスxのi番目のシンボルを示すものとする。(シードは、各フィルム粒子拡張付加情報(SEI)メッセージの受信時に1に設定される。)現在のフィルム粒子8×8ブロックのオフセットは、以下のように生成される。
【0023】
【数2】

ここで、プールの作成後に、オフセットは0に初期化されている。オフセットを計算した後で、フィルム粒子8×8ブロックを,以下のようにプールから抽出する。
(i=0..7、j=0..7)として
【0024】
【数3】

乱数発生器24から得られる乱数およびブロック22から得られる平均輝度値に従って選択ブロックによって選択されたフィルム粒子ブロックは、ブレンドされる前に、デブロッキング・フィルタ28によって当該ブロックの左側カラムおよび右側カラムのピクセルがデブロッキングされる。その後、加算器30が、デブロッキング済みのフィルム粒子ブロックの対応する値を、対応する復号済みピクセルに付加し、クリッパ32が、範囲[0、255]内でその結果をクリッピングして、ディスプレイ(図示せず)に表示される、またはその後に記録される、フィルム粒子がブレンドされた輝度ピクセルを生成する。フィルム粒子ノイズは、輝度ピクセルに付加されるだけであることに留意されたい。
【0025】
デブロッキング・フィルタ28
上述のように、デブロッキング・フィルタは、変換サイズが小さいために生じるブロッキング・アーティファクトを平滑化するために、ブレンドを行う前にフィルム粒子ブロックをデブロッキングする動作を行う。例示的な実施形態では、デブロッキング・フィルタ28は、8×8ブロックの左側縁部および右側縁部に隣接する全てのピクセルに適用される3タップ・フィルタを含んでいる。一行のピクセルが隣接する2つの8×8ブロックに属する場合には、ブロック間の移行位置はピクセルbとピクセルcの間にある。
【0026】
【表4】

フィルタは、以下のように適用される。
【0027】
【数4】

ここで、b′およびc′によって、元のピクセルbおよびcの値はそれぞれ置換される。左側および右側のブロック縁部のデブロッキングは、表示時に全てのブロックについて行われる。
【0028】
上述のフィルム粒子シミュレーション方法は、DVDプレーヤー(またはプレーヤー/レコーダ)などのコンテンツ再生装置またはセット・トップ・ボックスなどのコンテンツ配信機構によって容易に実施することができる。DVDプレーヤーまたはDVDプレーヤー/レコーダなどのコンテンツ再生装置の場合には、コンテンツ媒体(例えばDVD)は、コンテンツ自体(即ち圧縮映像)と共にフィルム粒子情報を担持し、コンテンツ再生装置が上述の方法でフィルム粒子をシミュレートすることを可能にする。従って、例えば、DVDは、通常は圧縮マクロブロックの形態である画像情報と、DVDプレーヤーまたはプレーヤー/レコーダがその後の表示のために圧縮解除映像にフィルム粒子をブレンドすることを可能にするフィルム粒子情報とを、両方とも担持することになる。
【0029】
以上、画像中のフィルム粒子をシミュレートする技術について説明した。このフィルム粒子シミュレーション技術は、パラメータnum_model_values_minus1[0]の許容値、並びにパラメータcomp_model_value[0][i][1]およびcomp_model_value[0][i][2]の許容値によって細長いフィルム粒子をシミュレートすることを可能にする。更に、本発明の原理のフィルム粒子シミュレーション技術では、サンプル・データベース12から1組のフィルム粒子サンプルを選択する際に、離散コサイン変換(DCT)および逆DCTを行う必要がない。
【図面の簡単な説明】
【0030】
【図1】後にフィルム粒子シミュレーションで使用される、予め設定されたフィルム粒子ブロックを生成する装置を示す概略ブロック図である。
【図2】図1の装置が生成する予め設定されたフィルム粒子ブロックを用いてピクセル毎にフィルム粒子をシミュレートする本発明の原理による装置を示す概略ブロック図である。

【特許請求の範囲】
【請求項1】
フィルム粒子をシミュレートするために、画像とブレンドするフィルム粒子を備えたM×N個のピクセルのブロックを作成する方法であって(NおよびMはゼロより大きい整数)、
画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも1つのパラメータを含むフィルム粒子情報を受信するステップと、
予め設定されたデフォルト値に基づいて、伝送されていないパラメータを導出するステップと、
擬似乱数および前記フィルム粒子を特徴付ける少なくとも1つのパラメータに応じて、M×N個のピクセルからなるフィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットから選択するステップと、
前記フィルム粒子を特徴付ける少なくとも1つのパラメータが示すブロック中の全てのピクセル値をスケーリングするステップと、
作成されたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップと、
を含む、前記方法。
【請求項2】
前記選択ステップが、それぞれ4096個の値からなる所定数の値セットの中から選択するステップを更に含む、請求項1に記載の方法。
【請求項3】
前記所定数の値セットがそれぞれ、512×8の行列状に配列される、請求項2に記載の方法。
【請求項4】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項3に記載の方法。
【請求項5】
擬似乱数および入来画像の輝度特性に従って前記フィルム粒子ブロックのプールからフィルム粒子ブロックを選択するステップと、
前記選択されたフィルム粒子ブロックの両側の縁部をデブロッキングするステップと、
前記選択されデブロッキングされたフィルム粒子ブロックの少なくとも一部分を、前記画像ブロック中の各ピクセルとブレンドするステップと、
フィルム粒子とブレンドされた前記画像ブロックのピクセルをクリッピングするステップを更に含む、請求項1に記載の方法。
【請求項6】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法であって、
前記画像ブロックの輝度特性に対応する輝度値に対して、予め設定されたフィルム粒子ブロックのプールから、フィルム粒子のブロックを無作為に選択するステップと、
前記選択されたフィルム粒子ブロックをデブロッキングするステップと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートするステップと、
その結果得られたブレンド済みのピクセルを、出力する前にクリッピングするステップと、
を含む、前記方法。
【請求項7】
前記予め設定されたフィルム粒子ブロックのプールが、
前記画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも1つのパラメータを含むフィルム粒子情報を受信するステップと、
擬似乱数に応じて、M×N個のピクセルからなるフィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットから選択するステップと、
前記受信したフィルム粒子情報中の1つのパラメータが示すブロック中の全てのピクセル値をスケーリングするステップと、
作成されたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップとによって作成される、請求項6に記載の方法。
【請求項8】
前記選択ステップが、それぞれ4096個の値からなる所定数の値セットの中から選択するステップを更に含む、請求項7に記載の方法。
【請求項9】
前記所定数の値セットがそれぞれ、512×8の行列状に配列される、請求項8に記載の方法。
【請求項10】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項8に記載の方法。
【請求項11】
請求項7に記載の方法に従ってフィルム粒子とブレンドするビデオ・データを含むデータ・キャリア。
【請求項12】
前記データ・キャリアがDVDを含む、請求項11に記載の方法。
【請求項13】
M×N個のピクセルからなるブロックを作成する装置であって、
フィルム粒子を含む予め設定されたM×N個(MおよびNは整数)のピクセル・ブロックのセットを記憶する第1の記憶リポジトリと、
M×N個のピクセルからなるフィルム粒子ブロックを、擬似乱数に応じて前記第1のリポジトリから選択するセレクタと、
それが受信したフィルム粒子情報の少なくとも1つのパラメータに従って、前記選択されたフィルム粒子ブロック中の全てのピクセル値をスケーリングするスケーリング・ブロックと、
前記スケーリング・フィルム粒子ブロックを記憶する第2の記憶リポジトリと、
を含む、前記装置。
【請求項14】
前記第1の記憶リポジトリが、それぞれ4096個の値からなる所定数の値セットを記憶する、請求項13に記載の装置。
【請求項15】
前記所定数の値セットがそれぞれ、512×8の行列状に配列される、請求項13に記載の装置。
【請求項16】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項15に記載の装置。
【請求項17】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする装置であって、
予め設定されたフィルム粒子値のプールと、
前記画像ブロックの輝度特性に対応する輝度値に対して、前記予め設定されたフィルム粒子ブロックのプールから、フィルム粒子のブロックを無作為に選択するセレクタと、
前記選択されたフィルム粒子ブロックをデブロッキングするデブロッキング・フィルタと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートする加算器と、
その結果得られたブレンド済みのピクセルを、出力する前にクリッピングするクリッパと、
を含む、前記装置。

【図1】
image rotate

【図2】
image rotate


【公表番号】特表2007−513434(P2007−513434A)
【公表日】平成19年5月24日(2007.5.24)
【国際特許分類】
【出願番号】特願2006−542892(P2006−542892)
【出願日】平成16年12月1日(2004.12.1)
【国際出願番号】PCT/US2004/041164
【国際公開番号】WO2005/057936
【国際公開日】平成17年6月23日(2005.6.23)
【出願人】(501263810)トムソン ライセンシング (2,848)
【氏名又は名称原語表記】Thomson Licensing 
【住所又は居所原語表記】46 Quai A. Le Gallo, F−92100 Boulogne−Billancourt, France
【Fターム(参考)】