(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5876691
(24)【登録日】2016年1月29日
(45)【発行日】2016年3月2日
(54)【発明の名称】フィルム粒子パターンのデータベースを用いてフィルム粒子のシミュレーションを行う技術
(51)【国際特許分類】
G06F 19/00 20110101AFI20160218BHJP
G06T 5/00 20060101ALI20160218BHJP
H04N 19/46 20140101ALI20160218BHJP
H04N 19/70 20140101ALI20160218BHJP
H04N 19/80 20140101ALI20160218BHJP
H04N 19/86 20140101ALI20160218BHJP
【FI】
G06F19/00 110
G06T5/00 705
H04N19/46
H04N19/70
H04N19/80
H04N19/86
【請求項の数】12
【全頁数】12
(21)【出願番号】特願2011-195138(P2011-195138)
(22)【出願日】2011年9月7日
(62)【分割の表示】特願2006-542892(P2006-542892)の分割
【原出願日】2004年12月1日
(65)【公開番号】特開2012-59267(P2012-59267A)
(43)【公開日】2012年3月22日
【審査請求日】2011年9月8日
【審判番号】不服2014-23122(P2014-23122/J1)
【審判請求日】2014年11月13日
(31)【優先権主張番号】60/527,895
(32)【優先日】2003年12月5日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】501263810
【氏名又は名称】トムソン ライセンシング
【氏名又は名称原語表記】Thomson Licensing
(74)【代理人】
【識別番号】100134094
【弁理士】
【氏名又は名称】倉持 誠
(74)【代理人】
【識別番号】100121175
【弁理士】
【氏名又は名称】石井 たかし
(74)【代理人】
【識別番号】100123629
【弁理士】
【氏名又は名称】吹田 礼子
(74)【代理人】
【識別番号】100191824
【弁理士】
【氏名又は名称】西谷 明子
(72)【発明者】
【氏名】クーパー,ジエフリー アレン
(72)【発明者】
【氏名】ボイス,ジル マクドナルド
(72)【発明者】
【氏名】トウーラピス,アレグザンドロス
(72)【発明者】
【氏名】ゴミラ,クリステイナ
(72)【発明者】
【氏名】ラツク,ジヨアン
(72)【発明者】
【氏名】イン,ペング
【合議体】
【審判長】
藤井 浩
【審判官】
小池 正彦
【審判官】
渡辺 努
(56)【参考文献】
【文献】
特開平1−156069(JP,A)
【文献】
特表平9−508507(JP,A)
【文献】
特開2000−13585(JP,A)
【文献】
特開平9−307861(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00
G06F19/00
(57)【特許請求の範囲】
【請求項1】
フィルム粒子ブロックを作成する方法であって、
画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも1つのパラメータを含む、輝度処理ブロックからのフィルム粒子情報を受信するステップと、
乱数発生器によって発生される乱数に従って、フィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットからランダムに選択するステップと、
前記フィルム粒子の属性を指定する少なくとも1つのパラメータが示す前記フィルム粒子ブロックをスケーリング・ブロックによって、スケーリングするステップと、
スケーリングされたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップと、
を含む、前記方法。
【請求項2】
前記選択するステップが、それぞれ4096個の値からなる所定数の値セットの中から選択するステップを含む、請求項1に記載の方法。
【請求項3】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項2に記載の方法。
【請求項4】
乱数発生器によって発生される擬似乱数および輝度処理ブロックからの入来画像の輝度強度レベルに従って前記フィルム粒子ブロックのプールからフィルム粒子ブロックをランダムに選択するステップと、
前記選択されたフィルム粒子ブロックの両側の縁部をデブロッキング・フィルタによってデブロッキングするステップと、
前記選択されデブロッキングされたフィルム粒子ブロックの少なくとも一部分を、加算器によって前記画像ブロック中の各ピクセルとブレンドするステップと、
フィルム粒子とブレンドされた前記画像ブロックのピクセルをクリッパによってクリッピングするステップを更に含む、請求項1に記載の方法。
【請求項5】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法であって、
乱数発生器によって発生される乱数に従って、輝度処理ブロックからの前記画像ブロックの輝度強度レベルに対応する輝度強度レベルに対して、予め設定されたフィルム粒子ブロックのプールから、フィルム粒子ブロックを無作為に選択するステップと、
デブロッキング・フィルタによって前記選択されたフィルム粒子ブロックをデブロッキングするステップと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、加算器によって前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートするステップと、
その結果得られたブレンド済みのピクセルを、出力する前にクリッパによってクリッピングするステップと、
を含む、前記方法。
【請求項6】
前記予め設定されたフィルム粒子ブロックのプールが、
前記画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも1つのパラメータを含むフィルム粒子情報を受信するステップと、
擬似乱数に応じて、フィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットから選択するステップと、
前記受信したフィルム粒子情報中の1つのパラメータが示す前記フィルム粒子ブロックをスケーリングするステップと、
スケーリングされたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップと、
によって作成される、請求項5に記載の方法。
【請求項7】
前記選択するステップが、それぞれ4096個の値からなる所定数の値セットの中から選択するステップを含む、請求項6に記載の方法。
【請求項8】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項7に記載の方法。
【請求項9】
フィルム粒子ブロックを作成する装置であって、
フィルム粒子を含む予め設定されたピクセル・ブロックのセットを記憶する第1の記憶リポジトリと、
フィルム粒子ブロックを、前記第1のリポジトリからランダムに選択するセレクタと、
それが受信したフィルム粒子情報の少なくとも1つのパラメータに従って、前記選択されたフィルム粒子ブロックをスケーリングするスケーリング・ブロックと、
前記スケール化フィルム粒子ブロックを記憶する前記記憶リポジトリと、
を含む、前記装置。
【請求項10】
前記第1の記憶リポジトリが、それぞれ4096個の値からなる所定数の値セットを記憶する、請求項9に記載の装置。
【請求項11】
前記所定数の値セットが、2の補数として記憶され、[−127、127]の範囲である、請求項9に記載の装置。
【請求項12】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする装置で
あって、
予め設定されたフィルム粒子ブロックのプールと、
前記画像ブロックの輝度強度レベルに対応する輝度強度レベルに対して、前記予め設定されたフィルム粒子ブロックのプールから、フィルム粒子ブロックを無作為に選択するセレクタと、
前記選択されたフィルム粒子ブロックをデブロッキングするデブロッキング・フィルタと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートする加算器と、
その結果得られたブレンド済みのピクセルを、出力する前にクリッピングするクリッパと、
を含む、前記装置。
【発明の詳細な説明】
【技術分野】
【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)などの費用重視の高容量デバイスにおけるフィルム粒子シミュレーションを可能にする、効率的なフィルム粒子シミュレーション技術が必要とされている。
【0010】
本発明の別の態様によれば、複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法が提供される。この方法は、予め設定されたフィルム粒子値のプールから、フィルム粒子のブロックが選択されたときに開始される。フィルム粒子のブロックの選択は、画像ブロックの輝度(luma:ルマ)平均値に対応する輝度強度間隔に対して、それらのブロックの間で乱数に従って無作為に行われる。選択されたフィルム粒子ブロックに対して、デブロッキングを行う。デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、画像ブロックの個々のピクセルとブレンドして、フィルム粒子をシミュレートし、その結果得られたブレンド済みのピクセルを、表示などのために出力する前にクリッピングする。
【図面の簡単な説明】
【0011】
【
図1】後にフィルム粒子シミュレーションで使用される、予め設定されたフィルム粒子ブロックを生成する装置を示す概略ブロック図である。
【
図2】
図1の装置が生成する予め設定されたフィルム粒子ブロックを用いてピクセル毎にフィルム粒子をシミュレートする本発明の原理による装置を示す概略ブロック図である。
【発明を実施するための形態】
【0012】
導入
本発明の原理によれば、フィルム粒子のシミュレーションは、シミュレートした粒子をブレンドする画像と共に伝送されるフィルム粒子情報に従って行われる。実際には、伝送される画像は、H.264圧縮方式など様々な周知の圧縮方式の1つによって、伝送される前に圧縮(符号化)されるのが普通である。H.264圧縮方式を用いて圧縮された伝送画像では、フィルム粒子情報は、付加拡張情報(SEI:Supplemental Enhancement Information)メッセージを介して伝送される。H.264規格を公表した標準化団体が最近採用している提言によれば、SEIメッセージは、現在では、様々なフィルム粒子属性を指定する様々なパラメータを含むことができる。
【0013】
フィルム粒子付加拡張情報(SEI)メッセージ・パラメータの制約
本発明の原理による方法では、H.264勧告で許容されるパラメータの数、およびそれらがとり得る値の範囲に関して幾つかの制約を加える。表1は、これらのパラメータを、それらの意味の説明および本発明の原理によって付与される制約と共に示すリストである。
【0015】
【表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])の対については、限られた数しか許容されない。
【0016】
【表3】
フィルム粒子SEIメッセージのその他の全てのパラメータについては、標準仕様に関する制約はない。
【0017】
フィルム粒子シミュレーションのビット・アキュレートな(bit−accurate)実施
本発明の原理によるフィルム粒子シミュレーションは、2ステップ・プロセスで行われる。最初に、
図1を参照して更に詳細に述べるように、Iピクチャの前に拡張付加情報(SEI)メッセージを受信した後で行う初期化の間に、フィルム粒子ブロックのプールを生成する。このフィルム粒子ブロックのプールから、特定の値のブロックを選択する。その後、
図2を参照して述べるように、選択したブロックの複数の部分を、復号した各ピクチャの各輝度ピクセルに付加する。
【0018】
図1は、本発明の原理の例示的な実施形態による、フィルム粒子シミュレーションに使用されるフィルム粒子ブロックのプールを生成する装置10を示す図である。フィルム粒子情報を含むフィルム粒子拡張付加情報(SEI)メッセージを受信すると、初期化プロセスが行われ、8個までの異なる輝度強度間隔のそれぞれに対して4096(512×8)個のフィルム粒子ピクセル値のプールが作成される。輝度(ルマ)強度間隔の数は、SEIメッセージのフィールドnum_intensity_intervals_minus1[0]に1を加えた数で示される。フィルム粒子サンプルの生成は、最も下の輝度強度間隔から始まる。
【0019】
フィルム粒子ノイズのビット・アキュレートなシミュレーションは、通常、特定の一様擬似乱数発生多項式および特定のフィルム粒子パターン・データベース12を使用して行われる。実際には、フィルム粒子パターン・データベース12は、4096(512×8)個のフィルム粒子の値を26組含む(13組は丸い粒子、13組は細長い粒子)。これらの値は、2の補数の形態で記憶され、[−127、127]の範囲となる。各組の値のリストは、予め規定して、システムがアクセスできる固定記憶装置に記憶してもよいし、或いはシステムの初期化またはリセット時にビット・アキュレートな方法を用いて作成してもよい。
【0020】
データベース12に記憶されたフィルム粒子パターンについて、選択ブロック14で選択が行われ、その後スケーリング・ブロック16でスケーリングが行われて、フィルム粒子ブロックのプール18が得られる。フィルム粒子パターンのデータベース12に対するアクセス、ブロック16による値のスケーリング、およびその後のブロックのスケーリング済みの値のプール18への記憶は、以下のルーチンに従って行われる。
(i=0..4095)として
【0021】
【数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を加えた数で示される回数だけ実行される。
【0022】
ピクセル表示前のブロック演算およびピクセル演算
図2は、復号したピクチャにブロック・レベルおよびピクセル・レベルでフィルム粒子を付加するのに必要な演算を実行する装置20を示す図である。輝度平均化ブロック22は、復号画像の8×8ブロックのそれぞれを処理し、輝度ピクセル値の平均を計算し、SEIメッセージのパラメータintensity_interval_lower_bound[0][i]およびintensity_interval_upper_bound[0][i]と比較して、当該ブロックに対する正しい輝度強度間隔を決定する。一様乱数発生器24は、原始多項式のモジュロ2演算子x
18+x
5+x
2+x
1+1を用いて、選択ブロック26に入力するための乱数を生成する。選択ブロック26は、フィルム粒子プール18にアクセスして、乱数および輝度強度値に従ってフィルム粒子ブロックを選択する。
【0023】
乱数発生器24がフィルム粒子ブロックを選択するための乱数を生成する方法を理解するために、x(i、e)で、シードeから始まるシーケンスxのi番目のシンボルを示すものとする。(シードは、各フィルム粒子拡張付加情報(SEI)メッセージの受信時に1に設定される。)現在のフィルム粒子8×8ブロックのオフセットは、以下のように生成される。
【0024】
【数2】
ここで、プールの作成後に、オフセットは0に初期化されている。オフセットを計算した後で、フィルム粒子8×8ブロックを,以下のようにプールから抽出する。
(i=0..7、j=0..7)として
【0025】
【数3】
乱数発生器24から得られる乱数およびブロック22から得られる平均輝度値に従って選択ブロックによって選択されたフィルム粒子ブロックは、ブレンドされる前に、デブロッキング・フィルタ28によって当該ブロックの左側カラムおよび右側カラムのピクセルがデブロッキングされる。その後、加算器30が、デブロッキング済みのフィルム粒子ブロックの対応する値を、対応する復号済みピクセルに付加し、クリッパ32が、範囲[0、255]内でその結果をクリッピングして、ディスプレイ(図示せず)に表示される、またはその後に記録される、フィルム粒子がブレンドされた輝度ピクセルを生成する。フィルム粒子ノイズは、輝度ピクセルに付加されるだけであることに留意されたい。
【0026】
デブロッキング・フィルタ28
上述のように、デブロッキング・フィルタは、変換サイズが小さいために生じるブロッキング・アーティファクトを平滑化するために、ブレンドを行う前にフィルム粒子ブロックをデブロッキングする動作を行う。例示的な実施形態では、デブロッキング・フィルタ28は、8×8ブロックの左側縁部および右側縁部に隣接する全てのピクセルに適用される3タップ・フィルタを含んでいる。一行のピクセルが隣接する2つの8×8ブロックに属する場合には、ブロック間の移行位置はピクセルbとピクセルcの間にある。
【0027】
【表4】
フィルタは、以下のように適用される。
【0028】
【数4】
ここで、b′およびc′によって、元のピクセルbおよびcの値はそれぞれ置換される。左側および右側のブロック縁部のデブロッキングは、表示時に全てのブロックについて行われる。
【0029】
上述のフィルム粒子シミュレーション方法は、DVDプレーヤー(またはプレーヤー/レコーダ)などのコンテンツ再生装置またはセット・トップ・ボックスなどのコンテンツ配信機構によって容易に実施することができる。DVDプレーヤーまたはDVDプレーヤー/レコーダなどのコンテンツ再生装置の場合には、コンテンツ媒体(例えばDVD)は、コンテンツ自体(即ち圧縮映像)と共にフィルム粒子情報を担持し、コンテンツ再生装置が上述の方法でフィルム粒子をシミュレートすることを可能にする。従って、例えば、DVDは、通常は圧縮マクロブロックの形態である画像情報と、DVDプレーヤーまたはプレーヤー/レコーダがその後の表示のために圧縮解除映像にフィルム粒子をブレンドすることを可能にするフィルム粒子情報とを、両方とも担持することになる。
【0030】
以上、画像中のフィルム粒子をシミュレートする技術について説明した。このフィルム粒子シミュレーション技術は、パラメータnum_model_values_minus1[0]の許容値、並びにパラメータcomp_model_value[0][i][1]およびcomp_model_value[0][i][2]の許容値によって細長いフィルム粒子をシミュレートすることを可能にする。更に、本発明の原理のフィルム粒子シミュレーション技術では、サンプル・データベース12から1組のフィルム粒子サンプルを選択する際に、離散コサイン変換(DCT)および逆DCTを行う必要がない。