(57)【特許請求の範囲】
【請求項１】
フィルム粒子ブロックを作成する方法であって、
画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも１つのパラメータを含む、輝度処理ブロックからのフィルム粒子情報を受信するステップと、
乱数発生器によって発生される乱数に従って、フィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットからランダムに選択するステップと、
前記フィルム粒子の属性を指定する少なくとも１つのパラメータが示す前記フィルム粒子ブロックをスケーリング・ブロックによって、スケーリングするステップと、
スケーリングされたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップと、
を含む、前記方法。
【請求項２】
前記選択するステップが、それぞれ４０９６個の値からなる所定数の値セットの中から選択するステップを含む、請求項１に記載の方法。
【請求項３】
前記所定数の値セットが、２の補数として記憶され、［−１２７、１２７］の範囲である、請求項２に記載の方法。
【請求項４】
乱数発生器によって発生される擬似乱数および輝度処理ブロックからの入来画像の輝度強度レベルに従って前記フィルム粒子ブロックのプールからフィルム粒子ブロックをランダムに選択するステップと、
前記選択されたフィルム粒子ブロックの両側の縁部をデブロッキング・フィルタによってデブロッキングするステップと、
前記選択されデブロッキングされたフィルム粒子ブロックの少なくとも一部分を、加算器によって前記画像ブロック中の各ピクセルとブレンドするステップと、
フィルム粒子とブレンドされた前記画像ブロックのピクセルをクリッパによってクリッピングするステップを更に含む、請求項１に記載の方法。
【請求項５】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法であって、
乱数発生器によって発生される乱数に従って、輝度処理ブロックからの前記画像ブロックの輝度強度レベルに対応する輝度強度レベルに対して、予め設定されたフィルム粒子ブロックのプールから、フィルム粒子ブロックを無作為に選択するステップと、
デブロッキング・フィルタによって前記選択されたフィルム粒子ブロックをデブロッキングするステップと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、加算器によって前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートするステップと、
その結果得られたブレンド済みのピクセルを、出力する前にクリッパによってクリッピングするステップと、
を含む、前記方法。
【請求項６】
前記予め設定されたフィルム粒子ブロックのプールが、
前記画像ブロック中に現れるフィルム粒子の属性を指定する少なくとも１つのパラメータを含むフィルム粒子情報を受信するステップと、
擬似乱数に応じて、フィルム粒子ブロックを、フィルム粒子を含む予め設定された複数のブロックのセットから選択するステップと、
前記受信したフィルム粒子情報中の１つのパラメータが示す前記フィルム粒子ブロックをスケーリングするステップと、
スケーリングされたフィルム粒子ブロックをフィルム粒子ブロックのプールに記憶するステップと、
によって作成される、請求項５に記載の方法。
【請求項７】
前記選択するステップが、それぞれ４０９６個の値からなる所定数の値セットの中から選択するステップを含む、請求項６に記載の方法。
【請求項８】
前記所定数の値セットが、２の補数として記憶され、［−１２７、１２７］の範囲である、請求項７に記載の方法。
【請求項９】
フィルム粒子ブロックを作成する装置であって、
フィルム粒子を含む予め設定されたピクセル・ブロックのセットを記憶する第１の記憶リポジトリと、
フィルム粒子ブロックを、前記第１のリポジトリからランダムに選択するセレクタと、
それが受信したフィルム粒子情報の少なくとも１つのパラメータに従って、前記選択されたフィルム粒子ブロックをスケーリングするスケーリング・ブロックと、
前記スケール化フィルム粒子ブロックを記憶する前記記憶リポジトリと、
を含む、前記装置。
【請求項１０】
前記第１の記憶リポジトリが、それぞれ４０９６個の値からなる所定数の値セットを記憶する、請求項９に記載の装置。
【請求項１１】
前記所定数の値セットが、２の補数として記憶され、［−１２７、１２７］の範囲である、請求項９に記載の装置。
【請求項１２】
複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする装置で
あって、
予め設定されたフィルム粒子ブロックのプールと、
前記画像ブロックの輝度強度レベルに対応する輝度強度レベルに対して、前記予め設定されたフィルム粒子ブロックのプールから、フィルム粒子ブロックを無作為に選択するセレクタと、
前記選択されたフィルム粒子ブロックをデブロッキングするデブロッキング・フィルタと、
前記デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、前記画像ブロックの各ピクセルとブレンドして、フィルム粒子をシミュレートする加算器と、
その結果得られたブレンド済みのピクセルを、出力する前にクリッピングするクリッパと、
を含む、前記装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国特許法１１９条（ｅ）に基づき、その開示を本明細書に組み込む、２００３年１２月５日出願の米国仮特許出願第６０／５２７，８９５号に対する優先権を主張するものである。
【０００２】
本発明は、画像のフィルム粒子（ｆｉｌｍ  ｇｒａｉｎ：フィルム・グレイン）をシミュレートする技術に関する。
【背景技術】
【０００３】
動画フィルムは、感光乳剤中に分散させたハロゲン化銀結晶を含んでいる。感光乳剤は、何層かの薄い層状にしてフィルム・ベースに塗布されている。これらの結晶の露光および現像を行うことにより、離散した微小銀粒子からなる写真画像が形成される。カラー・ネガでは、フィルム・ストックの現像中に銀を化学的に除去した後で銀の結晶が形成される位置に小さな染料のブロブ（ｂｌｏｂ：小さな塊）が生じる。これらの小さな染料のしみは、通常は、カラー・フィルムの「粒子（ｇｒａｉｎ：グレイン）」と呼ばれる。粒子は、得られた画像中に不規則に分布した状態で現れる。これは、元の感光乳剤上に形成される銀結晶が不規則に形成されるからである。一様に露光した領域内でも、一部の結晶は露光後に成長し、一部の結晶は成長しない。
【０００４】
粒子（グレイン）のサイズおよび形状は様々である。フィルムが高感度になるほど、形成される銀の凝集塊および生成される染料のブロブは大きくなり、且つ不規則なパターンで互いに集まりやすくなる傾向がある。「粒状度（ｇｒａｎｕｌａｒｉｔｙ：粒度）」という用語は、通常はこの粒子パターンを指す。個々の粒子は０．０００２ｍｍから約０．００２ｍｍの範囲であり、裸眼で識別することはできない。しかし、裸眼でも、粒子の集まりを見分けることはでき、これを「ブロブ」と呼ぶ。これらのブロブの集まりがフィルム粒子として識別される。画像の解像度が高くなると、フィルム粒子の知覚度も高くなる。フィルム粒子は映画および高解像度（ＨＤ）画像でははっきりと目に付くが、標準解像度（ＳＤ）では次第に重要でなくなり、フォーマットが小さくなるにつれて知覚できなくなる。
【０００５】
動画フィルムは、通常、写真フィルムの露光および現像という物理的プロセス、またはその後の画像編集によって生じる画像依存ノイズを含んでいる。写真フィルムは、写真の感光乳剤の物理的粒状度によって生じる、特徴的な擬似ランダム・パターン、即ちテクスチャを有する。或いは、計算によって生成した画像において同様のパターンのシミュレーションを行って、これらを写真フィルムとブレンドすることもできる。何れの場合も、この画像依存ノイズは、「フィルム粒子（ｆｉｌｍ  ｇｒａｉｎ：フィルム・グレイン）」と呼ばれる。適度な粒子テクスチャが、動画に望ましい特徴を与えることは非常にしばしばある。場合によっては、フィルム粒子は、２次元ピクチャを正しく知覚することを容易にする視覚的なキュー（ｃｕｅ）を提供することもある。１枚のフィルムの中でフィルムのグレードが変化し、時間参照や視点などに関する様々な手がかりを提供することも多い。映画産業では、その他にも、粒子テクスチャの制御に関する多くの技術的、芸術的要求がある。従って、映画産業においては、一連の画像処理および配信の間に、画像が持つ粒状の外観を保存することが必要となっている。
【０００６】
幾つかの市販製品は、しばしばコンピュータで生成したオブジェクトを自然の光景に組み込むために、フィルム粒子をシミュレートする機能を有する。米国ニューヨーク州ＲｏｃｈｅｓｔｅｒのＥａｓｔｍａｎ  Ｋｏｄａｋ社製のＣｉｎｅｏｎ（米国登録商標）は、粒子シミュレーションを実施する最初のディジタル・フィルム・アプリケーションの１つであり、多くの粒子タイプに対して非常に写実的な結果が得られる。しかし、Ｃｉｎｅｏｎアプリケーションは、粒子サイズを高く設定すると顕著な斜めの縞が発生するので、多くの高速フィルムで良好な性能が得られない。更に、Ｃｉｎｅｏｎアプリケーションは、例えば画像を複製またはディジタル処理する場合など、画像に前処理を施す場合には、十分な忠実度で粒子をシミュレートすることができない。
【０００７】
フィルム粒子をシミュレートする別の市販製品としては、Ａｄｏｂｅ（登録商標）Ａｆｔｅｒ  Ｅｆｆｅｃｔｓ（米国登録商標）のプラグインとして使用される、Ｖｉｓｕａｌ  Ｉｎｆｉｎｉｔｙ社製のＧｒａｉｎ  Ｓｕｒｇｅｒｙ（商標）がある。この製品Ｇｒａｉｎ  Ｓｕｒｇｅｒｙ（商標）は、１組の乱数をフィルタリングすることによって、合成粒子を生成するものと考えられる。この手法には、計算が複雑になるという欠点がある。
【発明の概要】
【０００８】
従って、メモリ帯域幅および計算量の必要を低減し、それによりセット・トップ・ボックス（ＳＴＢ）などの費用重視の高容量デバイスにおけるフィルム粒子シミュレーションを可能にする、効率的なフィルム粒子シミュレーション技術が必要とされている。
【００１０】
本発明の別の態様によれば、複数のピクセルからなる画像ブロックにおいてフィルム粒子をシミュレートする方法が提供される。この方法は、予め設定されたフィルム粒子値のプールから、フィルム粒子のブロックが選択されたときに開始される。フィルム粒子のブロックの選択は、画像ブロックの輝度（ｌｕｍａ：ルマ）平均値に対応する輝度強度間隔に対して、それらのブロックの間で乱数に従って無作為に行われる。選択されたフィルム粒子ブロックに対して、デブロッキングを行う。デブロッキングされたフィルム粒子ブロックの少なくとも一部分を、画像ブロックの個々のピクセルとブレンドして、フィルム粒子をシミュレートし、その結果得られたブレンド済みのピクセルを、表示などのために出力する前にクリッピングする。
【図面の簡単な説明】
【００１１】
【図１】後にフィルム粒子シミュレーションで使用される、予め設定されたフィルム粒子ブロックを生成する装置を示す概略ブロック図である。
【図２】図１の装置が生成する予め設定されたフィルム粒子ブロックを用いてピクセル毎にフィルム粒子をシミュレートする本発明の原理による装置を示す概略ブロック図である。
【発明を実施するための形態】
【００１２】
導入
本発明の原理によれば、フィルム粒子のシミュレーションは、シミュレートした粒子をブレンドする画像と共に伝送されるフィルム粒子情報に従って行われる。実際には、伝送される画像は、Ｈ．２６４圧縮方式など様々な周知の圧縮方式の１つによって、伝送される前に圧縮（符号化）されるのが普通である。Ｈ．２６４圧縮方式を用いて圧縮された伝送画像では、フィルム粒子情報は、付加拡張情報（ＳＥＩ：Ｓｕｐｐｌｅｍｅｎｔａｌ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）メッセージを介して伝送される。Ｈ．２６４規格を公表した標準化団体が最近採用している提言によれば、ＳＥＩメッセージは、現在では、様々なフィルム粒子属性を指定する様々なパラメータを含むことができる。
【００１３】
フィルム粒子付加拡張情報（ＳＥＩ）メッセージ・パラメータの制約
本発明の原理による方法では、Ｈ．２６４勧告で許容されるパラメータの数、およびそれらがとり得る値の範囲に関して幾つかの制約を加える。表１は、これらのパラメータを、それらの意味の説明および本発明の原理によって付与される制約と共に示すリストである。
【００１４】
【表１】
0005876691.tif 000002
【００１５】
【表２】
0005876691.tif 000003
本発明の原理によれば、パラメータｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［１］およびｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［２］は、異なる値をとることができる。しかし、表２に示すように、対（ｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［１］、ｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［２］）の対については、限られた数しか許容されない。
【００１６】
【表３】
0005876691.tif 000004
フィルム粒子ＳＥＩメッセージのその他の全てのパラメータについては、標準仕様に関する制約はない。
【００１７】
フィルム粒子シミュレーションのビット・アキュレートな（ｂｉｔ−ａｃｃｕｒａｔｅ）実施
本発明の原理によるフィルム粒子シミュレーションは、２ステップ・プロセスで行われる。最初に、図１を参照して更に詳細に述べるように、Ｉピクチャの前に拡張付加情報（ＳＥＩ）メッセージを受信した後で行う初期化の間に、フィルム粒子ブロックのプールを生成する。このフィルム粒子ブロックのプールから、特定の値のブロックを選択する。その後、図２を参照して述べるように、選択したブロックの複数の部分を、復号した各ピクチャの各輝度ピクセルに付加する。
【００１８】
図１は、本発明の原理の例示的な実施形態による、フィルム粒子シミュレーションに使用されるフィルム粒子ブロックのプールを生成する装置１０を示す図である。フィルム粒子情報を含むフィルム粒子拡張付加情報（ＳＥＩ）メッセージを受信すると、初期化プロセスが行われ、８個までの異なる輝度強度間隔のそれぞれに対して４０９６（５１２×８）個のフィルム粒子ピクセル値のプールが作成される。輝度（ルマ）強度間隔の数は、ＳＥＩメッセージのフィールドｎｕｍ＿ｉｎｔｅｎｓｉｔｙ＿ｉｎｔｅｒｖａｌｓ＿ｍｉｎｕｓ１［０］に１を加えた数で示される。フィルム粒子サンプルの生成は、最も下の輝度強度間隔から始まる。
【００１９】
フィルム粒子ノイズのビット・アキュレートなシミュレーションは、通常、特定の一様擬似乱数発生多項式および特定のフィルム粒子パターン・データベース１２を使用して行われる。実際には、フィルム粒子パターン・データベース１２は、４０９６（５１２×８）個のフィルム粒子の値を２６組含む（１３組は丸い粒子、１３組は細長い粒子）。これらの値は、２の補数の形態で記憶され、［−１２７、１２７］の範囲となる。各組の値のリストは、予め規定して、システムがアクセスできる固定記憶装置に記憶してもよいし、或いはシステムの初期化またはリセット時にビット・アキュレートな方法を用いて作成してもよい。
【００２０】
データベース１２に記憶されたフィルム粒子パターンについて、選択ブロック１４で選択が行われ、その後スケーリング・ブロック１６でスケーリングが行われて、フィルム粒子ブロックのプール１８が得られる。フィルム粒子パターンのデータベース１２に対するアクセス、ブロック１６による値のスケーリング、およびその後のブロックのスケーリング済みの値のプール１８への記憶は、以下のルーチンに従って行われる。
（ｉ＝０．．４０９５）として
【００２１】
【数１】
0005876691.tif 000005
ここで、ｎは、ｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｓ］［２］−３に等しい。ｍは、ｎｕｍ＿ｐａｒａｍ＿ｍｉｎｕｓ１［０］が１であるときには０に等しく、そうでないときには１に等しい。因数６は、データベースに記憶されたフィルム粒子値をスケーリングする。このプロセスは、ＳＥＩメッセージのフィールドｎｕｍ＿ｉｎｔｅｎｓｉｔｙ＿ｉｎｔｅｒｖａｌｓ＿ｍｉｎｕｓ１［０］に１を加えた数で示される回数だけ実行される。
【００２２】
ピクセル表示前のブロック演算およびピクセル演算
図２は、復号したピクチャにブロック・レベルおよびピクセル・レベルでフィルム粒子を付加するのに必要な演算を実行する装置２０を示す図である。輝度平均化ブロック２２は、復号画像の８×８ブロックのそれぞれを処理し、輝度ピクセル値の平均を計算し、ＳＥＩメッセージのパラメータｉｎｔｅｎｓｉｔｙ＿ｉｎｔｅｒｖａｌ＿ｌｏｗｅｒ＿ｂｏｕｎｄ［０］［ｉ］およびｉｎｔｅｎｓｉｔｙ＿ｉｎｔｅｒｖａｌ＿ｕｐｐｅｒ＿ｂｏｕｎｄ［０］［ｉ］と比較して、当該ブロックに対する正しい輝度強度間隔を決定する。一様乱数発生器２４は、原始多項式のモジュロ２演算子ｘ１８＋ｘ５＋ｘ２＋ｘ１＋１を用いて、選択ブロック２６に入力するための乱数を生成する。選択ブロック２６は、フィルム粒子プール１８にアクセスして、乱数および輝度強度値に従ってフィルム粒子ブロックを選択する。
【００２３】
乱数発生器２４がフィルム粒子ブロックを選択するための乱数を生成する方法を理解するために、ｘ（ｉ、ｅ）で、シードｅから始まるシーケンスｘのｉ番目のシンボルを示すものとする。（シードは、各フィルム粒子拡張付加情報（ＳＥＩ）メッセージの受信時に１に設定される。）現在のフィルム粒子８×８ブロックのオフセットは、以下のように生成される。
【００２４】
【数２】
0005876691.tif 000006
ここで、プールの作成後に、オフセットは０に初期化されている。オフセットを計算した後で、フィルム粒子８×８ブロックを，以下のようにプールから抽出する。
（ｉ＝０．．７、ｊ＝０．．７）として
【００２５】
【数３】
0005876691.tif 000007
乱数発生器２４から得られる乱数およびブロック２２から得られる平均輝度値に従って選択ブロックによって選択されたフィルム粒子ブロックは、ブレンドされる前に、デブロッキング・フィルタ２８によって当該ブロックの左側カラムおよび右側カラムのピクセルがデブロッキングされる。その後、加算器３０が、デブロッキング済みのフィルム粒子ブロックの対応する値を、対応する復号済みピクセルに付加し、クリッパ３２が、範囲［０、２５５］内でその結果をクリッピングして、ディスプレイ（図示せず）に表示される、またはその後に記録される、フィルム粒子がブレンドされた輝度ピクセルを生成する。フィルム粒子ノイズは、輝度ピクセルに付加されるだけであることに留意されたい。
【００２６】
デブロッキング・フィルタ２８
上述のように、デブロッキング・フィルタは、変換サイズが小さいために生じるブロッキング・アーティファクトを平滑化するために、ブレンドを行う前にフィルム粒子ブロックをデブロッキングする動作を行う。例示的な実施形態では、デブロッキング・フィルタ２８は、８×８ブロックの左側縁部および右側縁部に隣接する全てのピクセルに適用される３タップ・フィルタを含んでいる。一行のピクセルが隣接する２つの８×８ブロックに属する場合には、ブロック間の移行位置はピクセルｂとピクセルｃの間にある。
【００２７】
【表４】
0005876691.tif 000008
フィルタは、以下のように適用される。
【００２８】
【数４】
0005876691.tif 000009
ここで、ｂ′およびｃ′によって、元のピクセルｂおよびｃの値はそれぞれ置換される。左側および右側のブロック縁部のデブロッキングは、表示時に全てのブロックについて行われる。
【００２９】
上述のフィルム粒子シミュレーション方法は、ＤＶＤプレーヤー（またはプレーヤー／レコーダ）などのコンテンツ再生装置またはセット・トップ・ボックスなどのコンテンツ配信機構によって容易に実施することができる。ＤＶＤプレーヤーまたはＤＶＤプレーヤー／レコーダなどのコンテンツ再生装置の場合には、コンテンツ媒体（例えばＤＶＤ）は、コンテンツ自体（即ち圧縮映像）と共にフィルム粒子情報を担持し、コンテンツ再生装置が上述の方法でフィルム粒子をシミュレートすることを可能にする。従って、例えば、ＤＶＤは、通常は圧縮マクロブロックの形態である画像情報と、ＤＶＤプレーヤーまたはプレーヤー／レコーダがその後の表示のために圧縮解除映像にフィルム粒子をブレンドすることを可能にするフィルム粒子情報とを、両方とも担持することになる。
【００３０】
以上、画像中のフィルム粒子をシミュレートする技術について説明した。このフィルム粒子シミュレーション技術は、パラメータｎｕｍ＿ｍｏｄｅｌ＿ｖａｌｕｅｓ＿ｍｉｎｕｓ１［０］の許容値、並びにパラメータｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［１］およびｃｏｍｐ＿ｍｏｄｅｌ＿ｖａｌｕｅ［０］［ｉ］［２］の許容値によって細長いフィルム粒子をシミュレートすることを可能にする。更に、本発明の原理のフィルム粒子シミュレーション技術では、サンプル・データベース１２から１組のフィルム粒子サンプルを選択する際に、離散コサイン変換（ＤＣＴ）および逆ＤＣＴを行う必要がない。
【図１】
0005876691.tif 000010
【図２】
0005876691.tif 000011