JP3882854B2 - Motion compensated upconversion method and apparatus - Google Patents

Motion compensated upconversion method and apparatus Download PDF

Info

Publication number
JP3882854B2
JP3882854B2 JP07263196A JP7263196A JP3882854B2 JP 3882854 B2 JP3882854 B2 JP 3882854B2 JP 07263196 A JP07263196 A JP 07263196A JP 7263196 A JP7263196 A JP 7263196A JP 3882854 B2 JP3882854 B2 JP 3882854B2
Authority
JP
Japan
Prior art keywords
field
motion
pixel
block
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP07263196A
Other languages
Japanese (ja)
Other versions
JPH08322020A (en
Inventor
ヴァイサー フリッツ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technicolor SA
Original Assignee
Thomson Multimedia SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Multimedia SA filed Critical Thomson Multimedia SA
Publication of JPH08322020A publication Critical patent/JPH08322020A/en
Application granted granted Critical
Publication of JP3882854B2 publication Critical patent/JP3882854B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は動き補償されたアップコンバージョンの方法及び装置に関する。
【0002】
【従来の技術】
従来のTV標準規格は、50、59.94又は60Hzのフィールド周波数を有する。かかる画像が表示されるとき、特定の画像の内容の場合にライン状のフリッカーが発生し、或いは、明るい画像の場合に、大きい領域状のフリッカーが、特に、大きい画面上で発生する。かかるアーティファクトは、表示アップコンバージョンが受像機で行われ、フィールド周波数が2倍にされるとき、低減される。しかし、AABBのような簡単なアップコンバージョンアルゴリズムは、新しい動きのアーティファクトを誘起する。上記アーティファクトを防止するため、通常、スピードアップ、動き評価及び動き補償用の三つの高価なフィールドメモリを必要とする動き補償が受像機内で行われる。
【0003】
欧州特許出願第0574068号明細書には、スピードアップ用のフィールドメモリと、動き評価及び動き補償に共通のフィールドメモリの二つのフィールドメモリだけを用いて上記機能を行う方法が記載されている。しかし、多量の動きベクトルを格納するため付加的なメモリが必要とされる。
【0004】
【発明が解決しようとする課題】
本発明の一つの目的は、二つのフィールドメモリと、動きベクトルを格納する一つの小記憶容量のベクトルメモリだけを必要とし、これにより付加的なノイズ圧縮を実現する動き補償されたアップコンバージョンの方法を開示することである。上記目的は請求項1に記載された方法によって実現される。
【0005】
本発明の他の目的は、上記本発明の方法を利用する装置を開示することである。上記目的は、請求項記載された装置によって実現される。
【0006】
【課題を解決するための手段】
第1のフィールドメモリはフィールド周波数を2倍にするため使用される。第2のフィールドメモリは、高いフィールド周波数の信号上でノイズ圧縮と共に動き補償された補間を行うため、動き評価器、動き補償された補間器、予測器、反復フィルタ手段、及び、適当な処理時間遅延とに接続されて使用される。
【0007】
本発明は、例えば、50/59.94/60/50Hzのインターレース方式から100/119.88/120/75Hzのインターレース方式へのアップコンバージョン、50/59.94/60/50Hzのインターレース方式から100/119.88/120/75Hzのプログレッシブスキャン方式へのアップコンバージョン、及び、50/59.94/60/50Hzのプログレッシブスキャン方式から100/119.88/120/75Hzのプログレッシブスキャン方式へのアップコンバージョンのため使用することが可能である。
【0008】
本発明の一つの利点は、空間的かつ反復時間的なノイズ圧縮が動き補償されたアップコンバージョン(MCU)に追加された場合でさえ、上記機能を行うためには二つのフィールドメモリだけで十分な点である。これは、動き補償された補間が、動き評価器と部分的に同一のビデオ入力信号を受け、誤りのある動きベクトルが計算された後、時間的フィルタは上記誤差を伝播しないという条件下で特殊な回路を用いることにより達成される。
【0009】
上記時間的フィルタに誤差の伝播がないことは、時間的ノイズ圧縮に使用される制御の種類に起因して得られ、かつ、誤差はフィールドからフィールドで減衰することがテストによって分かった。
本発明の他の利点は、大きい画素ブロックの動きベクトルだけを格納すればよいので、ベクトルメモリの容量は小さくても構わないことである。これは、画素副ブロックの動きベクトルを格納しなくても済むように、処理中で必要とされる直前に、上記画素ブロックの動きベクトルから、修正された画素副ブロックの動きベクトルを計算することにより実現される。
【0010】
動きベクトル及び/又は時間的フィルタの計算は、計算されたノイズレベルによって制御し得る利点がある。
原理的に、本発明の方法は、第1の段階で、ソースフィールドは2倍のフィールド周波数のフィールドを形成するため変換され、第2の段階で、動き評価及び該動き評価からの動き情報を使用する動き補償された補間は、該2倍のフィールド周波数のフィールドで行われるインターレース方式ビデオ信号の動き補償されたアップコンバージョンの方法であって、空間的及び/又は時間的ノイズ圧縮が該動き補償された補間に含まれる。
【0011】
本発明の方法の有利な他の実施例は夫々の従属項に記載されている。
原理的に、本発明のインターレース方式のビデオ信号の動き補償されたアップコンバージョン用の装置は:
− ソースフィールドを2倍のフィールド周波数のフィールドに変換するため使用される第1の記憶手段と;
− フィールドからフィールドで動き評価を行う動き評価器に、その入力及び出力が接続された後続の第2の記憶手段と;
− その入力及び出力が、該動き評価器から該画素副ブロックの動きベクトルを受け、フィールドからフィールドで動き補償を行ない、動き補償されたアップコンバージョン出力信号を発生する動き補償された補間器に接続された第3の記憶手段と;
− 夫々の入力信号は該第2の記憶手段の入力信号から得られ、最終的な出力信号は該第3の記憶手段の入力に供給される空間的ノイズ圧縮手段及び/又は後続の時間的ノイズ圧縮手段とからなり、
或いは上記装置は:
− ソースフィールドを2倍のフィールド周波数のフィールドに変換するため使用される第1の記憶手段と;
− 第2の記憶手段の入力信号は、該第1の記憶手段の出力信号から得られ、かつ、動き評価器から動き情報を受け、フィールドからフィールドで動き補償を行い、動き補償されたアップコンバージョン出力信号を発生する動き補償された補間器の第1の入力に供給され、これにより、該動き補償された補間器の第2の入力の信号は第2の記憶手段の出力信号から得られる後続の第2の記憶手段と;
− 該第2の記憶手段の出力信号を第2の入力に受け、第1の入力の信号は該第1の記憶手段の出力信号から得られ、フィールドからフィールドで動き補償を行なう動き評価器と;
− 夫々の入力信号は該第2の記憶手段の入力信号から得られ、最終的な出力信号は、該第2の記憶手段の入力と、該動き補償された補間器の上記第1の入力とに供給される空間的ノイズ圧縮手段及び/又は後続の時間的ノイズ圧縮手段とからなる。
【0012】
本発明の装置の有利な他の実施例は、夫々の従属項に記載されている。
【0013】
【発明の実施の形態】
以下添付図面を参照して本発明の好ましい実施例を説明する。
動き補償されたアップコンバージョン処理は以下の三つの段階、即ち:
− ルミナンスだけを水平方向及び垂直方向に動き補償する段階と;
− ルミナンスに対し空間的かつ時間的にノイズ圧縮を行う段階と;
− クロミナンスに対し時間的のみにノイズ圧縮を行う段階と;
− ルミナンス及びクロミナンスの動き補償された補間の段階と
に分割することが可能である。
【0014】
動き補償評価器は、MVで示される動きベクトルを計算し、上記MVには信頼度CLと、1フィールド当たりのノイズレベルNが付随している。この結果は、ノイ圧縮され、かつ、動き補償された出力画素を生成するため使用される。
以下では、50/60Hzの範囲において:
− 偶数ソースフィールド = ソースフィールド 1,5,...,
− 奇数ソースフィールド = ソースフィールド 3,7,...,
の場合を考え、100/120Hzの範囲では:
− 出力フィールド 1 ← ソースフィールド1から
− 出力フィールド 2 ← ソースフィールド1とソースフィールド3の組合せ
− 出力フィールド 3 ← ソースフィールド3とソースフィールド5の組合せ
− 出力フィールド 4 ← ソースフィールド3とソースフィールド5の組合せ
の場合を想定する。
【0015】
入力及び出力サンプルは、0=LSB(最下位ビット)乃至7=MSB(最上位ビット)の8ビット語で表わされる。
ビデオ入力フォーマット(4:1:1)は:
− Y=16(黒)...240(白)、ブランク値=16
− U,V=−112...0...+112、ブランク値=0(2の補数)
の場合を想定する。
【0016】
ビデオ出力フォーマット(D/A変換の前)は:
− Y=0(極限の黒)...255(極限の白)、ブランク値=16
− U,V=0...128...255、ブランク値=128
の場合を想定する。
図1において、フィールドメモリ又はFIFO(先入れ先出し)スピードアップフィールドメモリSPUFMは、入力信号Iのフィールド周波数を2倍にするため使用される。出力信号は、小容量のベクトルメモリを含む動き評価器MEと、第2のフィールドメモリ又はFIFOフィールドメモリFM1と、空間的ノイズフィルタSFとに供給される。動き評価器MEの第2の入力には、フィールドメモリFM1の出力が供給される。動き評価器MEの出力は、動きベクトルMV及び他の幾つかの情報を動き補償された補間器MCIと、予測器PREDの第1の入力とに送る。空間的ノイフィルタSFの空間的にノイズフィルタリングされた出力は、時間的ノイズフィルタTNRを介して動き補償された補間器MCIの第1の入力と、第3のフィールドメモリ又はFIFOフィールドメモリFM2とに供給される。動き補償された補間器MCIの第2の入力は、フィールドメモリFM2の出力によって供給される。フィールドメモリFM2の出力は、予測器PREDの第2の入力に供給される。予測器PREDの出力は、時間的ノイズフィルタTNRの第2の入力に供給される。
【0017】
動き補償された補間器MCIの出力Oは、格納、或いは、画面に表示されるべく、最終的な動き補償をされ、アップコンバージョンをされ、ノイズ圧縮された信号である。
動き補償されたアップコンバージョンMCU回路内の処理時間は、別の図に示された適当な遅延、例えば、PTD1及びPTD2を使用して容易に適合させ得る。種々のブロックの機能は、他の図面を参照して以下に説明する。
【0018】
図1及び3乃至6において、平行な太線のダッシュは、全長(例えば、704画素)のライン遅延を表わし、それ以外のダッシュは、サブサンプリングされた画像データを格納する半分のライン遅延を示している。分割された太線のダッシュは、動き補償された補間器MCI及び予測器PREDの両方で使用される共通のライン遅延である。
【0019】
上記ライン遅延は、現在のラインの画素が出力されるとき必要とされる先の計算結果を上記図のブロックで利用可能にするため使用される。
動き補償された補間器MCIは、更に、例えば、スイッチSW3の出力信号を使用する。
図2の基本的なブロック図には、フィールドメモリ又はFIFOスピードアップフィールドメモリSPUFMと、第2のフィールドメモリ又はFIFOフィールドメモリFMと、動き評価器MEと、動き補償された補間器MCIとが示されている。別個の配置であるため、二つのフィールドメモリ又はFIFOだけが必要とされる。図1に対し、スピードアップフィールドメモリSPUFMの出力は、第1の処理時間遅延PTD1を介して動き補償された補間器MCIの第1の入力と、フィールドメモリFMとに接続されている。処理時間遅延PTD1は、動き評価器MEで必要とされる処理時間を表わしている。フィールドメモリFMの出力は、動き評価器MEの第2の入力に接続され、第2の処理時間遅延PTD2を介して動き補償された補間器MCIの第2の入力に供給される。
【0020】
SGS−トムソン製のSTi3220のような動き評価チップと、SGS−トムソン製のIMSA110のような2次元の動き補償された補間フィルタと、SGS−トムソン製のSTi3500のような2次元の動き補償された補間器を含むMPEG2方式の復号化器は、既に市場に出ている。
遅延PTD1とPTD2の遅延時間は等しい。フィールドメモリFMの遅延時間は、1フィールドから遅延PTD1の遅延時間を引算した時間である。これは、動き評価器の第1と第2の入力の間、及び、動き補償された補間器MCIの第1と第2の入力の間に、夫々、1フィールド(例えば、10ms)の総遅延時間が得られることを意味している。
【0021】
PTD1で示されたブロックは、遅延PTD2の出力からの入力信号と、動き評価器からの動き情報とを受ける新規のノイズ圧縮を含んでいる。
図3乃至6は、図2の基本回路をより詳細に示す他の実施例を表している。
図3の(A)において、図2中のブロックPTD1+NRは、第1のライン遅延LD1と、処理時間遅延PTD1と、空間的ノイズフィルタSFと、時間的ノイズフィルタTFを直列に含んでいる。フィールドメモリFMの出力は、第2のライン遅延LD2と、第2のスイッチSW2の第1の入力と、PTD2とを介して、動き補償された補間器MCIの第2の入力と、予測器PREDの第2の入力とに供給されている。スイッチSW2の第2の入力は、フィールドメモリFMの出力に接続されている。
【0022】
動きベクトルMVと、例えば、ノイズレベルNに関する情報及びベクトルの信頼度CLに関する情報は、第3のライン遅延LD3を介して動き評価器MEから動き補償された補間器MCIに送られる。ライン遅延LD3の入力は第1のスイッチSW1の第1の入力に接続され、ライン遅延LD3の出力は第1のスイッチSW1の第2の入力に接続されている。スイッチSW1の出力は、動きベクトルMVを予測器PREDの第1の入力に供給する。ライン遅延LD3は、1ラインに対し書き込まれ、連続する2ラインに対し読み出される。その理由は、同一の画素副ブロック動きベクトルが2本のラインに適用されるからである。
【0023】
予測器PREDの出力は、時間的ノイズフィルタTFの第2の入力に接続されている。偶数出力ラインEOLの場合、スイッチSW1の第1の入力は動作的であり、一方、奇数出力ラインOOLの場合、スイッチSW1の第2の入力は動作的である。フィールド1及び2の場合、スイッチSW2の第1の入力は動作的であり、一方、フィールド3及び4の場合、スイッチSW2の第2の入力は動作的であり、即ち、スイッチSW2の出力に接続されている。
【0024】
動き評価器MEは、画素ブロック動きベクトルと、画素ブロックゼロベクトルとを格納するベクトルメモリRAMを含む。
図3の(B)には、入力信号Iの場合に現れる信号Oの上記出力フィールドが(ライン番号と共に)示されている。しかし、フィールドF3及びF7は、共にO出力フレームの最初のフィールドである。
【0025】
基本的に図4の実施例は、ライン遅延LD1の機能が、動き評価器MEの一部である夫々の1ライン遅延によって行われる点で図4の実施例と相違している。動き評価器MEは、遅延PTD1の入力に接続された対応する第2の出力を有する。その上、第2のライン遅延LD2は図4では省かれている。第2のスイッチSW2の第2の入力は、動き補償された補間器MCIの第2の出力と、内部の1ライン遅延とを介して、動き補償された補間器MCI内の第3のスイッチSW3の出力に接続されている。スイッチSW3の第1の入力は、フィールド1及び2に対し動作的であり、内部の1ライン遅延を介して動き補償された補間器MCIの第1の入力に接続されている。スイッチSW3の第2の入力は、フィールド3及び4に対し動作的であり、動き補償された補間器MCIの第3の入力を介してフィールドメモリFMの出力に接続されている。予測器PREDは、出力フィールドOF3及びOF4の処理中に、第4のライン遅延を必要とする。スイッチSW3の出力のライン遅延は、動き補償された補間器MCI/予測器PREDの右側で三つの後続のライン遅延に対し予め配置されたライン遅延であると見なし得る。
【0026】
基本的に、図5の実施例は、空間的フィルタSFが元の位置で省かれているが、空間的フィルタSFの機能が動き評価器MEに組み込まれている点で図4の実施例とは相違している。
基本的に、図6の実施例は、予測器PREDが元の位置で省かれているが、予測器PREDの機能が、動き補償された補間器MCIに組み込まれている点で相違している。
【0027】
図2乃至6において、動き評価器MEは、ノイズ圧縮されていない入力信号と、先に計算された動きベクトルが既に適用されたノイズ圧縮された入力信号とを受け、一方、動き補償された補間器MCIは、二つのノイズ圧縮された入力信号を受ける。フィールドメモリFMは、1フィールドの遅延から時間的フィルタTFの遅延、例えば、2ラインを引算した遅延を有する。
【0028】
ルミナンス処理
ソース信号I、50/60Hz/2:1/625は、フィールドメモリによって、100/120Hz/2:1/625のAABBフィールド繰り返しフォーマットにスピードアップされる。図7のタイミングチャートは、信号Iの奇数(O)/偶数(E)フィールド F1,F3,F5,...と、スピードアップ(SPU)フィールド F1,F1,F3,F3,F5,...と、出力信号Oのフィールド F1,F2,F3,F4,F5,...を示している。
【0029】
上記処理の中間段階はインターレース・プログレッシブ変換であり、そのグリッドが図9に示されている。動き評価器ME(図8の(A))の場合、奇数及び偶数フィールドのラインを共通の垂直方向グリッドに置くため、ルミナンスの奇数ソースフィールドだけが垂直方向に補間される。
動き補償された補間器の場合、ソースフィールドと、ルミナンス及びクロミナンスの両方のプログレッシブスキャンのグリッド(図8の(B))は、垂直方向のフィルタによって生成される。
【0030】
図8では、以下の符号:
× ソースグリッド;
○ 垂直方向のプログレッシブスキャン補間によって生じたライン;
● 出力ラインの空間的位置;
が使用されている。F1は奇数(O)ソースフィールドであり、一方、F3は偶数(E)ソースフィールドである。
【0031】
奇数フィールドF1に対する図9の(A)と、偶数フィールドF3に対する図9の(B)とに示されているように、動き評価器において、両方のフィールドは、水平方向に予めフィルタリングされ、サブサンプリングされている。上記の如く生成されたグリッドは、図8の(A)に示す如く、垂直方向V及び水平方向Hにサブサンプリングされたプログレッシブスキャンのグリッドに対応する。水平方向の前置フィルタは、係数(1/16,2/16,3/16,4/16,3/16,2/16,1/16)を有し、ルミナンス上だけで行われる。フィルタリングは、最初に加算し、次いで、切捨てることにより行われる。
【0032】
図9では、以下の符号が使用されている:
× ソースグリッド;
×又は○ プログレッシブスキャングリッド。○の値は×の値を垂直方向に平均化することによって計算される;
□ 垂直方向及び水平方向にサブサンプリングされたプログレッシブスキャンのグリッド(=第1,第3,第5,...動作的画素)。これは、動き評価と、信頼度と、ノイズレベルの計算に使用されるグリッドである;
サブサンプリング。大きい円で示された中心画素は出力画素の場所である。
【0033】
図10は、垂直方向及び水平方向にサブサンプリングされたプログレッシブスキャンのグリッド内の画素ブロックMBと画素副ブロックSBとを示している。画素副ブロックSBは、2*2画素の寸法を有する。サブサンプリングされていない画素ブロックは、1フレームに32画素*16ラインの寸法と、1フィールドに32画素*8ラインの寸法とを有する。画素ブロックは、水平方向及び垂直方向にサブサンプリングされたプログレッシブスキャンのグリッドに16画素*8ラインの寸法を有する。
【0034】
動き評価器は、MBで示された大きいルミナンス画素ブロック上で両側のブロックマッチングを行える利点がある。画素ブロックは16画素*8ラインの寸法を有する。両側のブロックマッチングは、本出願人の国際特許出願PCT/EP94/02870号により詳細に記載されている。
動き評価器において、実現可能な各動きベクトルMVは各画素ブロックMBに適用される。各動きベクトルに対し、前のフィールドの画素ブロックと、動き方向に沿った現在のフィールドの対応する画素の絶対値の差(2の補数)を累積することにより誤差Eが計算される。次いで、最良のマッチング、即ち、最小の誤差を与えるベクトルが、MBMVによって示される画素ブロック動きベクトルとして選択される。
【0035】
幾つかの等しい最小誤差、即ち、幾つかの同等に良好な動きベクトルが存在する場合、動きベクトルは以下の順序で選択される:
第1番目 最もゼロに近い水平成分を有する動きベクトルMV
第2番目 正の水平成分を有する動きベクトルMV
第3番目 最もゼロに近い垂直成分を有する動きベクトルMV
第4番目 正の垂直成分を有する動きベクトルMV
動きベクトルMVは、水平成分MVHと垂直成分MVVとにより構成される。水平成分は、画面上を左から右へ動く場合に正である。垂直成分は、画面上を上から下へ動く場合に正である。図11には、補間されるべきフィールド内の次の各画素ブロックMBに対し動きベクトルMVが生成するための前のフィールドPF(z−1)と、現在のフィールドCF(z)の特定の探索ウィンドウSWW内の両側ブロックマッチングが示されている。
【0036】
図12の(B)に示したように、使用された副グリッドに起因して、ある種の動きベクトル(−14,−10,−6,−2,+2,+6,+10,+14)に対し副グリッド画素の距離の2分の1の小さい位置的誤差が発生する可能性がある。この小さい誤差は許容可能である。
図12の(A)には、垂直動きベクトル成分MVV:+2,0,−2が示されている。原理的に、より長いライン遅延が費やされたとき、垂直動きベクトルMVVに対しより多数の値を実現することができる。ライン遅延は高価である(大きいチップ面積を必要とする)ので、アップコンバージョンの目的に上記三つの値で十分であることを示すテストが行われる。
【0037】
図12の(B)には実現可能な水平動きベクトル成分MVHが示されている。使用された符号は以下の意味がある:
□ 垂直方向及び水平方向にサブサンプリングされたプログレッシブスキャンのグリッド;
○ 動きベクトルを計算するための正確な位置;
● 動きベクトルを計算するための僅かに誤りのある位置。
【0038】
本発明の一つの特徴は、動き補償されたアップコンバージョンを制御するためノイズ測定を使用することである。本発明で使用し得るノイズ測定の一例は、本出願人の欧州特許出願第0562407号明細書に記載されている。
更なるノイズ測定法を図13と組み合わせて説明する。テレビ標準規格のB及びGの場合、動作的画像ACPは、36の画素ブロックの高さを有し、テレビ標準規格のMの場合、32の画素ブロックの高さを有する。一つの中心ゾーンPNL0、又は、例えば、(実現可能なピクチャーインピクチャーの特徴による)三つのゾーンPNL1、PNL2及びPNL3は、ノイズを測定するため使用される。最初に、各ゾーンに対する最小の画素ブロック誤差が計算され、次に、予備のノイズレベルPNLを得るため三つの最小値がメジアンフィルタリングされる。現在のソースフィールドzにおいて:
PNL=メジアン〔PNL1,PNL2,PNL3〕
のように表わされ、PNLは16で分割され:
PN(z)=PNL/16
である。最終的なノイズレベルN(z)は更なるメジアンフィルタリングによって形成され:
N(z)=メジアン〔N(z-1)+2,〔PN(z)+PN(z-1)〕/2,N(z-1)−2〕{切捨て}
のように表わされる。
【0039】
従って、ノイズ評価は、1入力フィールド当たり1回更新され、フィールドとフィールドの間に±2の最大値で変えられる。
N(z)は現在の動作的なフィールドの終わりまで分からないので、N(z)を画素ブロック動きベクトルMBMVに続くブランキング期間中に更新することが可能である。N(z)は適応時間的ノイズ圧縮によって使用される。11ビットワード長の場合、N(z-1)は、上記メジアン値を計算する際にアンダーフローとオーバーフローを防止するため2と2045の間に制限される。N(z)又はそのビットの一部は、I2Cバスを介して読出可能である。
【0040】
電源投入時の初期化は:PNL,PN(z),PN(z-1)=0,N(z-1)=2である。
本発明の更なる特徴は、動き補償されたアップコンバージョンを制御、即ち、両側のブロックマッチングによって見つけられた動きベクトルを補正する周期的な構造を検出し、考慮する点である。本発明で使用し得る周期的な構造の検出の一例は、本出願人の欧州特許出願第94115732号明細書に記載されている。
【0041】
周期的な構造において動き評価は非常に重要である。非常に良好なマッチング、即ち、非常に小さい誤差を示す幾つかのベクトルが存在する。従って、好ましくは、水平方向の周期的な構造の補正が行われる。ブロックマッチング処理から、実現可能な各画素ブロック動きベクトルの対応する誤差が分かる。理論的には、図14の(A)乃至(D)から分かるように、水平方向の周期的な構造によって、行の範囲内に幾つかの誤差の最小値が得られるが、同じ行の範囲内に幾つかの誤差の最大値が生じる。図14において、画素の上側の行はソースフィールド(z)のラインnを示し、下側の行はソースフィールド(z−1)のラインnを示している。図14の(A)、(B)、(C)及び(D)は、夫々、同図の(A)の下側に示された周期的な画像輝度信号(例えば、フェンス)の第1、第2、第3及び第4の実現可能な動きベクトルを表わしている。従って、最大と最小の誤差の間に大きな差が存在し、かつ、真の第2の最小値が存在するならば、現在の画素ブロックは周期的な構造を有すると考えられる。上記ブロックは周期的な構造を有することが確認された場合、上側又は左側のいずれかの隣接する最小の誤差が得られる画素ブロックに属する動きベクトルは、現在の画素ブロックに対し見つけられた動きベクトルを置き換える。同一の場合、左側の画素ブロックのベクトルの方が優先される。
【0042】
フィールド内の第1、即ち、左上の画素ブロックに対し、周期的な構造の補正はスイッチオフされる。第1の画素ブロックの行の残りの部分に対し、左側の候補だけが得られる。第1の画素ブロックの列の残りの部分に対し、上側の候補だけが得られる。これにより、以下のアルゴリズムが得られる:
もし 〔(真の第2の最小の行の誤差が存在し) かつ (2番目の最小の
行の誤差 − 最小の行の誤差 < 最大のブロック誤差/2)〕
ならば
(もし 現在のブロックは最も左側ではない ならば
画素ブロック動きベクトルMBMV
画素ブロック動きベクトルMBMVleft
であり
もし 現在のブロックは最も上側ではない
かつ MBMVupは最良のマッチングを与える ならば
画素ブロック動きベクトルMBMV
画素ブロック動きベクトルMBMVup
であり)
それ以外の場合
画素ブロック動きベクトルMBMV
=(最小ブロック誤差に対応する)画素ブロック動きベクトルMBMV
第2の最小の行の誤差は、水平方向の両側により大きい誤差のある真の最小値でなければならない。従って、行の境界は、非常に小さい誤差、即ち、誤差=ゼロを表わしていると見なすことができる。
【0043】
第2の最小の行の誤差は、現在のブロックが周期的であるかどうかを判定するためだけに使用されるので、同一の第2の最小の行の誤差が幾つか存在する場合、最終的に使用された誤差がどれであるかは重要ではない。
図15には、現在のベクトル範囲のブロックCUBと、対応する左側のブロックLEBと、上側のブロックUPBの一例が示されている。MVHは水平動きベクトル成分、MVVは水平動きベクトル成分、MVUPは上側ブロックから選択された動きベクトルの場所、MVLEは左側ブロックから選択された動きベクトルの場所を表わしている。
【0044】
MBEは最大のブロックの誤差の場所を、MREは最大の行の誤差の場所を、2MREは第2の最小の行の誤差を、MINREは、上記例の場合、最小のブロックの誤差MINBEと一致する最小の行の誤差を、CHRは最小のブロックの誤差のある行に対応する選択された行を表わしている。
場所MVLE及びMVUPから始まる矢印は、夫々、隣接するブロックから対応する最小の誤差CERRに従って選択された移動ベクトルを表わしている。
【0045】
偶数出力フィールドにおいて、水平動きベクトル成分MVHは、ノイズによる曖昧さを回避するためゼロの方向への僅かなバイアスを有する。垂直動きベクトル成分MVVは、動きベクトルを計算するため使用された二つのフィールドの中の一方の垂直方向の補間によって、ゼロの方向へのより強いバイアスを受ける。垂直方向画素ブロック境界VMBBを用いて図16に示されているように、垂直方向の移動の問題を回避することが重要である。奇数ソースフィールドOSFと偶数ソースフィールドESFの間に、奇数の補間されたフィールドOIFが形成される。
【0046】
例えば、Bは値16の黒画素であり、Gは値128のグレイ画素であり、Wは値240の白画素である。画素ブロック動きベクトルMBMV(0,0)は、垂直方向画素ブロック境界VMBBの上にある画素ブロックの最も下の行から16画素*値128=2048の誤差を生じる。画素ブロック動きベクトルMBMV(0,+2)はゼロの誤差を生じる。
【0047】
垂直方向のゼロ強制:
もし Error(h,0) ≦ 〔Error(h,v)+2048〕
ならば 画素ブロック動きベクトルMBMV=h,0
それ以外の場合 画素ブロック動きベクトルMBMV=h,v
水平方向のゼロ強制(上記結果を使用する):
もし Error(h,0)
≦ 〔Error(h,v)+64+ZFE+N(z)/4〕
ならば 画素ブロック動きベクトルMBMV=0,v
それ以外の場合 画素ブロック動きベクトルMBMV=h,v
ZFE=ゼロ強制化偶数フィールドであり、ZFE=0,1,2又は4は、I2C−バスを介してプログラミング可能である。デフォルトは:ZFE=1である。N(z)は上記ノイズレベルである。
【0048】
出力フィールド3のゼロ強制:
フィールドOF3は、非常に限界的であり、実在するゼロモーションが検出されなかった場合、ラインフリッカーを生じる。しかし、画素ブロック動きベクトルMBMVを計算するための水平方向及び垂直方向のゼロ強制は分離されているので、画素ブロックゼロベクトルMBZVは画素ブロック動きベクトルMBMVから直接得られる。
【0049】
もし (画素ブロック動きベクトルMBMV=0)
ならば 画素ブロックゼロベクトルMBZV=0
それ以外の場合 画素ブロックゼロベクトルMBZV=1
ここまで説明したアルゴリズムは、画素ブロック当たり1個の動きベクトルを生成する。水平動きベクトル成分MVHには16個の実現可能な値があり、4ビットで符号化することが可能である。垂直動きベクトル成分MVVには3個の実現可能な値があり、2ビットで符号化できる。完全な動作的な画像(図13を参照のこと)は、現在の画像(z)当たり792個の画素ブロックを生じる36*22個の画素ブロックを有し、画素ブロックは6ビット毎のワード長で動き評価器MEのベクトルメモリRAMに格納される。上記ベクトルメモリは、出力フィールドOF3の計算のため画素ブロックゼロベクトルMBZVの値を格納する。
【0050】
次のステップは、例えば、サブサンプリングされたプログレッシブスキャングリッド上に2*2画素、又は、プログレッシブスキャングリッド上に4*4画素の寸法を有する画素副ブロックとして知られているより小さい領域に特有の動きベクトルを計算するため上記情報を使用することである。画素副ブロックの動きベクトルの計算の一例は、欧州特許出願第94113494号明細書により詳細に記載されている。そこから得られる利点は、画素副ブロック動きベクトルが必要とされる直前に計算されるので、格納する必要がなく、動き評価器に少ない容量のRAMが得られる。画素ブロックベクトルは最初のフィールドで計算され、画素副ブロック動きベクトルは次のフィールドで計算される。
【0051】
三つの空間的に最も近くにある隣接する画素ブロック動きベクトルを特有の画素副ブロックに適用し、三つの対応する画素副ブロック誤差SEを計算することにより、特定の画素副ブロックの動きベクトルとして三つの空間的に最も近くにある隣接する画素ブロック動きベクトルの中の一つが選択される。
図17において、画素ブロックCは四つの領域に分割されている。左上側の領域の画素副ブロックの候補動きベクトルは、最も近くにある画素ブロックA、B及びCの動きベクトルから選択される。左上側の領域の画素副ブロックの候補動きベクトルは、最も近くにある画素ブロックA、C及びDの動きベクトルから選択される。左下側の領域の画素副ブロックの候補動きベクトルは、最も近くにある画素ブロックB、C及びEの動きベクトルから選択される。右下側の領域の画素副ブロックの候補動きベクトルは、最も近くにある画素ブロックC、D及びEの動きベクトルから選択される。
【0052】
画素副ブロックの誤差は、図18に示したように、フィールド(z)とフィールド(z−1)の間の画素副ブロックSBの領域内の4個の画素の差di の累積によって計算され:
SE(x,y)=|d1|+|d2|+|d3|+|d4|
が得られ、式中、x,yは三つの画素ブロック動きベクトルの中の一つの成分を表わしている。
【0053】
最小の誤差SE(x,y)が得られる画素ブロック動きベクトルMBMV(x,y)は、現在のブロックに対し予備的に選択されている。次いで、誤りのあるベクトルを消去するため、3タップの水平方向メジアンフィルタリング演算が画素副ブロック動きベクトルの各成分SBMVH及びSBMVVに対し行われる。得られた動きベクトルは、上記画素副ブロックに属する偶数出力フィールドの画素を計算するため使用される。x及びyは、夫々、水平及び垂直方向の画素副ブロックの位置である。
【0054】
上記計算された画素副ブロック誤差SEは、動きベクトルの信頼度を直接的に表わすことが利点である。画素副ブロック誤差SEが小さい数値を有する場合、信頼度CLは大きく、画素副ブロック誤差SEが大きい数値を有する場合、信頼度CLは小さい。本出願人による欧州特許出願第94115733号明細書には、信頼度の測定がより詳細に記載されている。
信頼度CLは、以下の式に従って、動き評価器MEで計算することができる:CL”=メジアン〔SE(x-1)/2,SE(x)/2,SE(x+1)/2〕
CL =CL”/CLdiv {切捨て}
信頼度CLは、例えば、8ビットに制限される。CLdivは、例えば、I2Cバスによってプログラム可能な予め選択された倍数1,2,4,8である。デフォルト値は:CLdiv=2である。
【0055】
水平方向メジアンフィルタは、信頼度がブロック境界の両側で良好な場合、境界全体で良好な状態を維持し、一方、フィルタリングされていない信頼度は良くないことを保証するため適用される。
クロミナンス処理で使用されるソフトスイッチのため、クロマ信頼度CCを動き評価器MEで計算することが可能である:CC=CL/2。
【0056】
更に、信頼度CLと、ノイズレベルNとは無関係の時間的ノイズ圧縮オン/オフ信号TNRSは、以下のように動き評価器MEで生成される:
もし (CL*CLdiv < 2*N)
ならば 時間的ノイズ圧縮オン/オフ信号TNRS=1
それ以外の場合 時間的ノイズ圧縮オン/オフ信号TNRS=0
本発明の更なる特徴はノイズ圧縮である。ノイズ圧縮には2段のノイズ圧縮、即ち、空間的ノイズ圧縮SNRと、時間的ノイズ圧縮TNRがある。空間的ノイズ圧縮は、好ましくは、ルミナンス上だけで行われるが、クロミナンスにも適用可能であり、一方、時間的ノイズ圧縮は、好ましくは、ルミナンス及びクロミナンスの両方で行われる。図19には、図1乃至6による実施例のノイズ圧縮に対する共通の原理が示されている。付加的な処理時間又はライン遅延は示されていない。スピードアップ入力信号ISPUは、最初に空間的ノイズ圧縮SNR手段で処理される。しかし、空間的ノイズ圧縮SNRと、時間的ノイズ圧縮TNRの順序は反対でも構わない。
【0057】
空間的ノイズ圧縮SNRはノイズレベルNで制御され、Nが低い場合、例えば、N≦4の場合、起こり得る分解能の劣化を回避するためバイパスされる。上記Nは動き評価器MEから得られる。空間的ノイズ圧縮は、I2Cバスを介して、動作可能/動作禁止にされる。デフォルトは、動作可能である。
図20に示したように、空間的ノイズ圧縮フィルタは、水平方向及び/又は垂直方向及び/又は対角方向ローパスフィルタによって構成され、或いは、2次元又は方向性メジアンフィルタによって構成してもよい。方向性フィルタリングの場合、フィルタの方向は、中心画素の対応する隣接する画素との相関の関数である。
【0058】
図20のフィルタは、例えば、3*3画素のウィンドウ内で動作し、インパルスノイズを低減するが、テクスチャー、ディテール、及び、エッジを保存し、以下の通り動作する:
矢印d1乃至d4は、x11乃至x33の画素値のフィルタリング方向を示している。
【0059】
四つの対応する相関は:
k1 = min(|x21−x22|,|x22−x23|)
k2 = min(|x12−x22|,|x22−x32|)
k3 = min(|x13−x22|,|x22−x31|)
k4 = min(|x11−x22|,|x22−x33|)
のように形成される。
【0060】
四つの対応するフィルタリング結果は:
m1 = メジアン(x21,x22,x23)
m2 = メジアン(x12,x22,x32)
m3 = メジアン(x13,x22,x31)
m4 = メジアン(x11,x22,x33)
のように形成される。
【0061】
最小の相関の方向い対応するフィルタリング結果は、位置22の最終的な出力画素の値として選択される。最小値が二つ以上存在する場合、例えば、次の順序:m1,m2,m3,m4で優先順位を付けることができる。
ウィンドがより大きい場合、他の方向に対応する計算を行ってもよい。
図19を参照すると、空間的ノイズ圧縮の出力は、時間的ノイズフィルタTNRを通過し、その時間的ノイズフィルタTNRの出力は、動き補償された補間器MCIに入力されている。基本的に、時間的フィルタは、現在のフィールドを含む種々のフィールドからのデータを結合する。時間的フィルタTF(ルミナンス及びクロミナンス)は、非線形係数を伴う反復フィルタでもよい点が有利である。時間的フィルタTFの後ろには、予測器PREDと、補間器MCIと、フィールド遅延FMとが接続されている。時間的フィルタTFは、時間的ノイズフィルタTNRとノイズレベルNとによって制御される。予測器PREDは、フィールドメモリFMの出力信号と、動き評価器MEからの画素副ブロック動きベクトルSBMVとを受ける。ルミナンスの場合、空間的及び時間的にノイズ圧縮されたソースフィールド(z−1)からの予測された画素副ブロックは、空間的ノイズ圧縮から得られるフィールド(z)の空間的にノイ圧縮されたソースフィールドの画素副ブロックと共に時間的フィルタTFで考慮される。時間的ノイズ圧縮TNRの出力信号は、空間的及び時間的にノイズ圧縮されたソースフィールド(z)の画素副ブロックからなる。
【0062】
ノイズのために誤りのある動きベクトルが計算された場合、動き評価器MEは、先に計算された動きベクトルを用いて構成された動き補償された信号を利用するので、反復時間的フィルタは、誤りのある空間的位置で部分的に誤りのあるビデオ情報に関する上記誤差を伝播する。従って、時間的に続く動きベクトルの計算は、間違っている可能性がある。時間的ノイズ圧縮において予測されたビデオ情報に適用された係数に起因して、かかる妨害の影響はフィールドからフィールドで減衰する。注意深いテストによって、実際上、かかる誤差は伝播することなく、従って、本発明のより安価な動き補償されたアップコンバージョンMCU回路を使用できることが分かった。
【0063】
上記係数によって、最大で上記予測されたビデオ信号の約3/4の部分だけを現在のフィールドのビデオ信号に加算することができるようになる。例えば、ノイズを含むソース信号の場合に、動きベクトルの信頼度CLがより低いならば、上記部分は削減されるので、可能な誤差伝播は一層減少させられる。
動き補償された補間器MCIは、動き評価器MEから信号SBMV、N、CL、CC及びMBZVを受け、MBZVは、ソースフィールド(z−1)の最後の動き評価からの画素ブロックゼロ動きベクトルである。
【0064】
時間的ノイズ圧縮オン/オフ信号TNRSのルミナンス処理を以下に示す:
もし (TNRSL 動作可能 〔I2C−バスを介して〕) かつ
(TNRS = 1)
ならば ルミナンスの時間的ノイズ圧縮はスイッチオンされる
それ以外の場合 評価失敗に起因したブラーリング(blurring)を避けるため
ルミナンスの時間的ノイズ圧縮はバイパスされる
デフォルト値 = TNRSL 動作可能
信号TNRSのクロミナンス処理を以下に示す:
もし (TNRSC = 強制状態〔I2C−バスを介して〕) 又は
(TNRS = 1)
ならば クロミナンスの時間的ノイズ圧縮はスイッチオンされる
それ以外の場合 クロミナンスの時間的ノイズ圧縮はバイパスされる
デフォルト値 = TNRSC 強制状態
予測器PREDは、前のフィールドを動き方向に投射するため画素副ブロック動きベクトルSBMVを利用し、かつ、インターレースに起因して、インターレースされていない画像の失われた画素を発生するため補間、例えば、垂直方向の平均化を行う。図21の(A)には垂直動きベクトル成分MVV=−2の場合の一例が示され、同図の(B)には水平動きベクトル成分MVH=−4の場合の一例が示されている。投射された前のフィールドPPRFは現在のフィールドCUFの位置にある。投射されたフィールドのラインn+2は、現在のフィールドのラインn+2の位置にある。
【0065】
×は入力画素、○は垂直方向(1/2,1/2)に補間された画素、CHはクロ画素の位置、〇は時間的フィルタTFによって使用された画素を表わしている。
時間的ルミナンスフィルタは、空間的にノイズ圧縮された現在のフィールド(z)と、予測器から出力された空間的及び時間的にノイズ圧縮された最後のソースフィールド(z−1)とを受ける。両方の結合、好ましくは、非線形結合は、動き補償された補間器MCIのため時間的にノイズ圧縮されたルミナンス入力フィールドを生じる。
【0066】
時間的クロミナンスフィルタは、現在のフィールド(z)と、予測器から出力された時間的にノイズ圧縮された最後のソースフィールド(z−1)とを受ける。両方の結合、好ましくは、非線形結合は、動き補償された補間器MCIのため時間的にノイズ圧縮されたクロミナンス入力フィールドを生じる。
図22には時間的フィルタの一実施例が示されている。減算手段SUBにおいて、現在のソースフィールドCUFは予測された前のフィールドPPRFから減算される。出力信号は、符号を表わす1ビットを用いて、第1のスイッチSWAを制御し、絶対値手段ABSを介して第1の乗算手段M1及び第2の乗算手段M2に伝達される。第1の乗算手段M1は、入力信号としてノイズレベルNを有する第1のルックアップテーブルLUT1から出力された倍率によって制御される。第1の乗算手段M1の出力信号は、クリッピング手段CLPと、入力信号Ly及び出力信号Lzを有する第2のルックアップテーブルLUT2とを介して、第2の乗算手段の第2の入力に伝達される。第2の乗算手段の出力は、切捨て手段TRUを介してスイッチSWAの第1の入力に伝達され、更なる2の補数手段2COを介してスイッチSWAの第2の入力に伝達される。スイッチSWAの出力信号は、結合手段ADDにおいて現在のソースフィールドCUFに加えられる。結合手段ADDの出力信号は、制限手段LIMを介して第2のスイッチSWBの第2の入力に供給される。現在のソースフィールドCUFは、スイッチSWBの第1の入力に供給される。スイッチSWBは、入力信号TNRと、(例えば、I2Bバスを介して)TNRSL/TNRSCとを受け、上記処理を行う論理部LCによって制御される。時間的ノイズフィルタは、スイッチSWBの第2の入力が出力OUに接続されたとき、スイッチオンされる。出力信号OUは、フィールドメモリFMと、補間器MCIに供給される。クリッピング手段CLPは値175に留まり、切捨て手段TRUは64による除算を行う。減算手段SUBと結合手段ADDの間の回路は、出力信号OU中で、現在のソースフィールドCUFと予測された前のフィールドPPRFとの間に重みを与える非線形化NONLを生じる。時間的フィルタTF内での計算は、何れにしても2の補数を用いて行われる。
【0067】
時間的ノイズ圧縮の改良された性能は、非線形化NONLが測定ノイズレベルNに適用された場合、得られる。これは、例えば、17dBから36dBまで変化する各ノイズレベルに対し、約1dBの幅で、異なる非線形化を用いる必要があることを意味する。ルックアップテーブルLUT2は所望の出力の値を発生する。しかし、ルックアップテーブルLUT2をできる限り小さいままに保つため、値Nは、ルックアップテーブルLUT1を用いて、倍率SFに変換される。上記倍率SFは非線形化NONLの入力の値に適用される。ルックアップテーブルLUT1の可能な値は、図24に示され、ルックアップテーブルLUT2の可能な値は、図25に示されている。
【0068】
クロミナンス時間的フィルタ(ルミナンス時間的フィルタと同様である)は、図23に示したように、付加的に第3のスイッチSWCを含む場合がある。動き補償されたアップコンバージョンがクロス−カラー圧縮からなる場合、クロマルックアップテーブルLUT1の出力は、スイッチSWCによって、例えば、1にセットされる。デフォルトのとき、SWCは1に切替えられている。
動き補償された補間器MCIは、二つの入力フィールド毎に四つの出力フィールドを生成する。奇数の最初の出力フィールドOF1は、図26に示したようにノイズ圧縮されたソースフィールドF1である。F1’は次の入力ソースフレームからの最初のフィールドである。
図26乃至31において、×は入力画素を表わし、□は出力画素を表わし、CHはクロマソース画素を表わし、CIは水平方向に補間されたクロマ画素を表わし、COはクロマ出力画素を表わしている。図28の(B)乃至31の(B)において、両側のブロックマッチングに起因して、クロマ画素CIは、その位置がクロミナンス予測器PREDに使用される4の倍数のグリッド内にないことを要求される点に注意が必要である。
【0069】
第3の出力フィールドOF3の処理は、図27に示すように非常に特殊である。ノイズ圧縮されたソースフィールドF3のグリッドは、インターレースとアップコンバージョンのため、出力フィールドOF3のグリッドと適合しない。従って、出力フィールドOF3の画素値を構成するため画素ブロックゼロベクトルMBZVの値に依存して、二つの別個のフィルタタイプ、例えば、係数が(1/2,1/2)の垂直方向フィルタと、垂直方向−時間的メジアンフィルタの一方が以下のように適用される:
もし 画素ブロックゼロベクトルMBZV(z−1)=0
ならば 垂直方向−時間的メジアンフィルタ
それ以外の場合 垂直方向フィルタ
ダッシュで表わされた境界のある領域は、垂直方向−時間的メジアンフィルタに関連する画素を示している。領域0は、垂直方向フィルタに関連する画素を示している。
【0070】
偶数出力フィールドOF2及びOF4の各画素に対し、動き補償された画素と、フォールバック(fall back)画素が計算される。最終的なルミナンス出力は、信頼度CLに依存して、図32に示したソフトスイッチによる動き補償された画素の値と、フォールバック画素の値の組合せである。
異なる処理モードを偶数出力フィールドOF2及びOF4の計算に使用することが可能であり、かつ、上記モードはI2Cバスを介して選択可能にされる点に利点がある。
【0071】
モード1(デフォルト):
垂直方向の時間的メジアンフィルタは、図27に関して説明したように使用される。出力フィールドOF2の画素は、ノイズ圧縮されたフィールドF1及びF3の(動きの方向に適用された)垂直方向の時間的メジアンを得ることによって構成される。換言すれば、出力画素は、垂直ベクトル成分MVVに対し図28の(A)に、水平ベクトル成分MVHに対し同図の(B)に示されたような画素f、g及びhのメジアン値である。同図の(B)では、フィールドF3のラインn及びn+2(Lnn+2)と、フィールドF1のラインn−1(Ln−1)との間に、フィールドF2の出力ラインn(OLn)が(水平方向−時間的範囲において)示されている。
【0072】
出力フィールドOF4の画素は、ノイズ圧縮されたフィールドF3及びフィールドF5の(動きの方向に適用された)垂直方向の時間的メジアンを得ることによって構成される。換言すれば、出力画素は、垂直ベクトル成分MVVに対し図24の(A)に、水平ベクトル成分MVHに対し同図の(B)に示されたような画素i、j及びkのメジアン値である。同図の(B)では、フィールドF5のラインn(Ln)と、フィールドF3のラインn(Ln)との間に、フィールドF4の出力ラインn(OLn)が(水平方向−時間的範囲において)示されている。
【0073】
出力フィールドOF2及びOF4のフォールバック画素は、上記動き補償された画素と同様に計算されるが、ゼロモーション、即ち、画素副ブロック動きベクトルSBMV=(0,0)が仮定される。フォールバック画素は、本出願人による欧州特許出願第94115634号に従って計算し得る。
モード2:
線形平均化フィルタが図27に関し説明したように使用される。出力フィールドOF2は、ノイズ圧縮されたフィールドF1及びフィールドF3の線形平均である。換言すれば、出力画素は、垂直ベクトル成分MVVに対し図30の(A)に、水平ベクトル成分MVHに対し同図の(B)に示されたように画素fの1/2、かつ、画素ghの1/2である。同図の(B)では、フィールドF3のラインn+1(Ln+1)と、フィールドF1のラインn−1(Ln−1)との間に、フィールドOF2の出力ラインn(OLn)が(水平方向−時間的範囲において)示されている。
【0074】
出力フィールドOF4は、ノイズ圧縮されたフィールドF3及びフィールドF5の線形平均である。換言すれば、出力画素は、垂直ベクトル成分MVVに対し図31の(A)に、水平ベクトル成分MVHに対し同図の(B)に示されたように画素iの1/2、かつ、画素jkの1/2である。同図の(B)では、フィールドF5のラインn(Ln)と、フィールドF3のラインn(Ln)との間に、フィールドOF4の出力ラインn(OLn)が(水平方向−時間的範囲において)示されている。
【0075】
モード1と同様に、モード2において出力フィールドOF2及びOF4のフォールバック画素は上記の動き補償された画素と同様に計算されるが、ゼロモーション、即ち、画素副ブロック動きベクトルSBMV=(0,0)が仮定される。
図32の回路は動き補償された補間器MCIの出力に設けられている。奇数出力フィールドの画素OOFPは、スイッチSWFの第1の入力に供給される。動き補償された画素MCPはソフトスイッチSSWの第1の入力に供給される。フォールバック画素はソフトスイッチSSWの第2の入力に供給され、信頼度の値CLはソフトスイッチSSWの第3の入力に供給される。ソフトスイッチSSWの出力信号は、(0...255に制限する)制限手段LIM3を介して、スイッチSWFの第2の入力に送られる。奇数出力フィールドの場合、スイッチSWFの第1の入力は、制御信号OFを用いて出力OUPに接続される。偶数出力フィールドの場合、スイッチSWFの第2の入力は、出力OUPに接続される。
【0076】
ソフトスイッチSSWは、以下の方法で構築することができる:
第1の入力からの信号は、減算手段SUBにおいて、第2の入力の信号から減算される。出力は最小値計算手段MINの第1の入力に供給される。第3の入力からの信頼度信号CLは、最小値計算手段MINの第2の入力に供給され、2の補数手段2COを介して、最大値計算手段MAXの第2の入力に供給される。最大値計算手段MAXの第1の入力は最小値計算手段MINの出力信号を受ける。最大値計算手段MAXの出力信号は、結合手段ADDにおいて、ソフトスイッチSSWの第1の入力の入力信号に加算され、その結果はソフトスイッチSSWの出力に供給される。
【0077】
クロミナンス処理
基本的に、クロミナンス(U及びV)処理は、ルミナンス処理に従って行われる。特に断らない限り、同じブロック図がクロミナンスの処理に使用される。好ましくは、以下の少なくとも一つの相違点がある:
1)動きベクトルの水平成分MVHは、図21から分かるように、クロミナンスのサンプリンググリッドにマッチングするためクロミナンスに適用される前に最も近い4の倍数に丸められる。以下の表は、動き評価器MEから得られた動きベクトルの成分がルミナンス及びクロミナンスのため予測器PRED及び動き補償された補間器MCIに適用される方式を示している:
【0078】
【表1】

Figure 0003882854
【0079】
2)ポイント1)を許容するため、動き補償された補間器MCIにおいて付加的な水平方向線形平均化フィルタが必要とされる。従って、動きベクトルがクロミナンス画素に適用される前に4:1:1のフォーマットから4:2:2のフォーマットが生成される。
3)空間的ノイズ圧縮SFは行われない。
【0080】
4)偶数出力フィールドの補間がルミナンスの場合のモード2と同様に行われる(線形平均化、プログラム性なし)。
5)クロミナンス信頼度CC(ソフトスイッチSSWのクロマだけに使用される)は、ルミナンス信頼度CLの半分である:CC=CL/2
6)線形平均化(1/2,1/2)を用いて4:2:2→4:4:4の変換を行う。
【0081】
図33には、スピードアップフィールドメモリSPUFMの入力及び出力と、フィールドメモリFMの入力及び出力と、動き評価器ME及び動き補償された補間器MCIの出力信号とに関する全体のタイミングチャートが示されている。図中のF1NR、....、F5NRは、ノイズ圧縮されたフィールドを表わしている。
【0082】
F3NR”に対し特殊な計算が行われる。上記の如く、画素ブロックゼロ動きベクトルMBZVの値が0の場合、未だノイズ圧縮されていないフィールドF5へのアクセスを有する垂直方向の時間的メジアンフィルタが適用される。画素副ブロック動きベクトルSBMV及び信頼度CLは分からないので、画素ブロックゼロベクトルMBZV(z−1)が適用される。これにより、小さい時間的誤差が生じる。しかし、この誤差は無視し得ることがテストにより分かった。
【0083】
本発明の動き補償されたアップコンバージョンMCUは、好ましくは、ルミナンスに対し、垂直方向及び/又は水平方向ピーキング、及び/又は、サイン補間(sin(x)/x補間)を行うことにより改良される。図35には対応するブロック図が示されている。
垂直方向ピーキングVPEAは、垂直方向の輪郭を増幅するフィールド間ピーキングでもよい。ノイズの増幅を回避するため、コアリング関数COR2に依存するノイズレベルは、垂直方向に高域通過フィルタリングされた信号に加えられ、その信号は、次いで、例えば、I2Cバスを介して予め選択可能な係数PVにより乗算される。高域通過フィルタは、二つのライン遅延Hと、加算器と、1/2切捨て器TR5と、減算器とにより構成され、ラインn−1とラインn+1の画素の平均は、夫々、ラインnの画素から減算される。乗算器PVの後ろに1/4切捨て器TR6が接続されている。
【0084】
水平方向ピーキングHPEAは、水平方向の輪郭を増幅する。増幅の最大値は、例えば、100Hz域で6.75MHzである。ノイズの増幅を回避するため、コアリング関数COR1に依存するノイズレベルは、水平方向に高域通過フィルタリングされた信号に加えられ、その信号は、次いで、例えば、I2Cバスを介して予め選択可能な係数PHにより乗算される。高域通過フィルタは、画素遅延の回路Tと、加算器と、1/2切捨て器TR3と、減算器とにより構成され、現在のラインの画素m−2と画素m+2の平均は、画素mから減算される。乗算器PHの後ろに1/4切捨て器TR4が接続されている。
【0085】
サイン補間(sin(x)/x補間)器SIXCは、プログラム可能である必要はなく、出力クロックレートに依存する必要がある。理想的なサイン補間(sin(x)/x補間)からの偏差は、非常に小さく、即ち、0乃至8MHzに対し、偏差は0.14dbB未満であり、8乃至11MHzに対し、偏差は−0.74dB未満である。サイン補間(sin(x)/x補間)器は、上記画素遅延回路Tを利用することが可能であり、更に、加算器と、1/2切捨て器TR1と、減算器とを有し、現在のラインの画素m−1と画素m+1の平均は、画素mから減算される。減算器の後ろには1/8切捨て器TR2が接続されている。
【0086】
水平ピーキングHPEA及び垂直ピーキングVPEAの出力は、夫々の遅延Tを用いて加算器AHVで結合される。加算器AHVの出力は、制限器LIM2において予め選択された値PLに制限され、加算器VHSにおいて補正器SIXCの出力及び画素mと結合される。その結果は、0乃至255の更なる制限器LIM1において制限される。遅延Tは1/27MHzの遅延時間を有する。PV、PH及びPLの範囲とデフォルト値は、以下のようになる:
範囲:
PV=0乃至7, PH=0乃至7, PL=7,15,31又は63
デフォルト値:
PV=4, PH=4, PL=15
図34には、コアリング関数COR1及びCOR2に依存するノイズレベルNの一例が示されている。Xは入力信号であり、Yは出力信号である。最小コアリングは、以下の式に従って行われる:
もし |2*N(z−1)|< 16 ならば CORING=16
図36には、非線形化NONLの曲線NL(x)の特性の他の例が示されている。上記非線形化は、図22と同様に:x>0の場合に負の入力(−x)に対し、出力は、NL(−x)=−NL(x)である。
【0087】
正の入力0<x<1に対し、上記特性は、λ=0.9の場合に:
NL(x)=f(x)=λx(x−1)2
のように定義される。
上記特性は、xM=0.333の場合に最大の振幅を有する。反復フィルタの速い時間的収束を保証するため、以下の比
【0088】
【数1】
Figure 0003882854
【0089】
は制限される。良好な収束と、効果的なノイズ圧縮は、k=4の場合に得られる。
kが非常に増加する場合、フィルタリングは、静止画像に対し効果が良くなるが、収束は非常に遅いので、予測し得ない動きに対しフィルタによってアーティファクトが生じる可能性がある。
【0090】
kが“1”に向かう場合、非線形フィルタリングされた出力に対応する。従って、非線形化は、以下の式:
【0091】
【数2】
Figure 0003882854
【0092】
に従って制限される。
上記関数は縮尺されるべきである。倍率には、アップコンバージョンアルゴリズムによって測定されたノイズ評価量Nの標準偏差σを利用することが可能である。この場合、非線形化はノイズ適応的になる。倍率は、最大でMxM=2σである。これにより得られる縮尺された出力は:
【0093】
【数3】
Figure 0003882854
【0094】
のように表わされる。
図22のスイッチSWBは、信頼度CL及び/又は動きベクトル上のCL(及び、CLから得られた情報TNRS又はTNRSL/TNRSC)が非常に小さいとき、即ち、誤差の測定量σcfが非常に大きい、即ち、σcf≧4σのとき、スイッチの出力として時間的フィルタの出力の代わりに入力を選択する。ここで、σは、アップコンバージョンモジュールで計算されたノイズNの標準偏差である。
【0095】
非線形化のよい精度を維持するため、非線形化を最大の倍率で組み込む必要がある。このため、入力データは、非線形化部を通過するとき“1”よりも大きい倍率で−除算ではなく−乗算される。例えば、非線形化部は192個の入力を有する。上記の如く、この数は、最大のノイズレベルの倍率の値に対応する。夫々のルックアップテーブルの出力の値NL(x)は、図37に示されている。
【0096】
図38には、図22の非線形化部NONLの他の実施例のブロック図が示され、上記非線形性関数NLが使用されている。非線形化部NONLの入力の値は、乗算器M1を介して関数NLを表わすルックアップメモリLUT2の入力に値y=x*sとして与えられる。ルックアップメモリの出力z=NL(y)は、最終的な出力の値w=z/sを生じる除算器D1を通過する。値sは、倍率ルックアップメモリLUT1の出力から乗算器の第2の入力と除算器に供給され、倍率ルックアップメモリLUT1の内容は、図39に示され、ノイズ評価量Nによって制御される。
【0097】
ノイズは、ブロックマッチング法を用いて動き評価処理により直接生成される。従って、現在の画像の画素の各ブロックに対し、評価されたベクトルの誤差値を利用することが可能である。上記誤差は、二つの対照されたフィールドの間の絶対画素値の差のブロックの合計、或いは、差の2乗和の平方根の何れでもよい。完全な画像上の上記ブロック誤差の値の最小値は、ノイズ変動の評価量であると見なされ、これにより、画像内の少なくとも一つのブロックは、略平坦な増幅領域を有すると想定されるので、対応するブロック誤差は、ノイズだけによって生じる。従って、上記最小のブロック誤差の値は、ノイズの測定量を表わし、非線形性を較正する倍率をその値から得ることが可能である。
【0098】
ノイズレベルに関する精度を非常に高くする必要はないので、ノイズレベルの符号化は、ハードウェアの観点から非線形性の倍率が単純化されるような形で行うことが可能である。
一方で、人間の視覚は、二つの画像の間で1dBの空間的ノイズ圧縮の差を検出することが可能であり、他方で、アップコンバージョンアルゴリズムによって測定されたノイズレベルは、系列内で1dBの範囲の変動を有することを考慮すると、ノイズレベルを符号化するため1dBの精度を選択することができる。
【0099】
自然の画像の通常のノイズレベルは17dBと36dBの範囲を含んでいる。この範囲は、1dB毎の16個の区間に分割することが可能である。従って、非線形性をノイズ適応性にさせるため16個の符号化されたノイズレベルLN(係数)を利用し得る。
図39に示された配列は、符号化ノイズレベルLNの一例を表わしている。上記配列は、ルックアップテーブルがN=192個の入力を有するという仮定に基づいている。
【0100】
Nは、アップコンバージョンアルゴリズムによって測定されたノイズの値を表わしている。倍率SFは、非線形化部NONLの入力に組み込まれている。SNRσとσは、前の倍率(スケール=NxM/(2σ))に対応する正確なノイズレベルを表わしている。
NからLNを発生するため得られた符号化関数は図40に示されている。同図には、ノイズ測定によって誘起された偏差が表わされている。最小値は、非線形性の精度の損失を補償するため僅かに高められている。最大の測定値は、可能な過剰評価の影響を制限し、曲線を漸近的な値に近づけるため、常により小さいレベルに符号化されている。
【0101】
本発明に示された回路は、1個乃至複数個のチップ上に集積することが可能であり、I2Cバスによって制御可能である。回路の一部は、適当なソフトウェア及びプロセッサ手段とによって置き換えてもよい。
本発明は、4:3又は16:9の標準的な鮮明度、或いは、テレビ受像機、衛生受信機、ビデオカセットレコーダ、及び、ビデオディスクプレーヤのような高品位装置に使用することが可能である。
【0102】
ディジタルビデオ信号の場合には、動き情報を加えてもよい。このような場合、本発明は、既に存在する動き情報を利用し、これによって、動き情報の生成に関連する処理段階を省略、或いは、既に存在する動き情報に従って適合させ得る。
【図面の簡単な説明】
【図1】 三つのフィールドメモリとノイズ圧縮とを備えた動き補償されたアップコンバータのブロック図である。
【図2】 二つのフィールドメモリを備えた動き補償されたアップコンバータの基本ブロック図である。
【図3】 二つのフィールドメモリを備えた動き補償されたアップコンバータの一実施例のブロック図である。
【図4】 二つのフィールドメモリを備えた動き補償されたアップコンバータの第2の実施例のブロック図である。
【図5】 二つのフィールドメモリを備えた動き補償されたアップコンバータの第3の実施例のブロック図である。
【図6】 二つのフィールドメモリを備えた動き補償されたアップコンバータの第4の実施例のブロック図である。
【図7】 アップコンバージョンの主要段階のタイミングチャートである。
【図8】 動き補償された補間器及び評価器で生成されたプログレッシブスキャングリッドの説明図である。
【図9】 水平方向の前置フィルタとサブサンプリングの説明図である。
【図10】 画素ブロックと画素副ブロックの説明図である。
【図11】 両側ブロックマッチングの原理説明図である。
【図12】 両側ブロックマッチングで使用された副グリッドから得られた幾つかの動きベクトルに対する小さい位置的誤差の説明図である。
【図13】 ノイズ測定ゾーンの説明図である。
【図14】 周期的構造中に実現可能なベクトルの説明図である。
【図15】 現在のベクトルブロック及び隣接するベクトルブロックの詳細図である。
【図16】 垂直方向動きベクトル成分と垂直方向移動の説明図である。
【図17】 画素副ブロック動きベクトルを生成するためその動きベクトルが使用されるサブロック領域及び関連する画素ブロックの説明図である。
【図18】 画素副ブロックの誤差と共に3次元グリッドを示す図である。
【図19】 ノイズ圧縮器の単純化されたブロック図である。
【図20】 空間的ノイズフィルタのフィルタリング方向の説明図である。
【図21】 線形垂直方向平均化の予測器の機能説明図である。
【図22】 時間的なルミナンス又はクロミナンスフィルタの構成図である。
【図23】 クロスカラー圧縮と共に使用される付加的なスイッチの説明図である。
【図24】 倍率の第1のルックアップテーブルを表わす図である。
【図25】 非線形性の第2のルックアップテーブルを表わす図である。
【図26】 動き補償された補間器の第1の出力フィールドの説明図である。
【図27】 動き補償された補間器の第3の出力フィールドの説明図である。
【図28】 第1のモード中の動き補償された補間器の第2の出力フィールドの説明図である。
【図29】 第1のモード中の動き補償された補間器の第4の出力フィールドの説明図である。
【図30】 第2のモード中の動き補償された補間器の第2の出力フィールドの説明図である。
【図31】 第2のモード中の動き補償された補間器の第4の出力フィールドの説明図である。
【図32】 ソフトスイッチと偶数/奇数選択の構成図である。
【図33】 全体のタイミングチャートである。
【図34】 コアリング関数の説明図である。
【図35】 垂直方向及び水平方向ピーキングとサイン補間(sin(x)/x補間)の説明図である。
【図36】 図22の非線形性の更なる実施例の特性の説明図である。
【図37】 更なる実施例の非線形化の第2のルックアップテーブルである。
【図38】 図22の非線形化の更なる実施例の構成図である。
【図39】 更なる実施例の倍率の第1のルックアップテーブルである。
【図40】 ノイズレベルの符号化関数のグラフである。
【符号の説明】
2CO 2の補数手段
2MRE 第2の最小の行の誤差
ABS 絶対値手段
ACP 動作的画像
ADD 結合手段
AHV,VHS 加算器
CC クロミナンス信頼度
CERR 最小の誤差
CH クロマ出力画素
CHR 最小のブロックの誤差のある行に対応する選択された行
CI 補間されたクロマ画素
CL ルミナンス信頼度
CLP クリッピング手段
CO クロマ出力画素
CUB 現在のブロック
CUF 現在のフィールド
d1,d2,d3,d4 フィルタリング方向
D1 除算器
EOL 偶数出力ライン
ESF 偶数ソースフィールド
FBP フォールバック画素
F1,F3 ノイズ圧縮されたソースフィールド
FM,FM1,FM2 フィールドメモリ
HPEA 水平方向ピーキング
I 入力
ISPU スピードアップ入力信号
LC 論理部
LD1,...,LD3 ライン遅延
LEB 左側のブロック
LIM,LIM1,LIM2,LIM3 制限手段
LUT1,LUT2 ルックアップテーブル
M1,M2 乗算手段
MAX 最大値計算手段
MB 画素ブロック
MBE 最大のブロックの誤差の場所
MBMV 画素ブロック動きベクトル
MCI 動き補償された補間器
MCP 動き補償された画素
ME 動き評価器
MIN 最小値計算手段
MINBE 最小のブロックの誤差
MINRE 最小の行の誤差
MRE 最大の行の誤差の場所
MV 動きベクトル
MVH 水平動きベクトル
MVLE 左側ブロックの動きベクトルの場所
MVUP 上側ブロックの動きベクトルの場所
MVV 垂直動きベクトル
N ノイズレベル
NL ルックアップメモリ出力
NONL 非線形化部
NR ノイズ圧縮
O,OU,OUP 出力
OF 制御信号
OF1,OF2,OF3,OF4 出力フィールド
OIF 奇数の補間されたフィールド
OLn 出力ライン
OOFP 奇数出力フィールドの画素
OOL 奇数出力ライン
OSF 奇数ソースフィールド
PF 前のフィールド
PH,PV 乗算器
PNL0,PNL1,PNL2,PNL3 中心ゾーン
PPRF 予測された前のフィールド
PRED 予測器
PTD1,PTD2 遅延
RAM ベクトルメモリ
SB 画素副ブロック
SBMV 画素副ブロック動きベクトル
SE 画素副ブロックの誤差
SF 空間的ノイズ圧縮フィルタ
SIGN 符号
SINC 補正器
SNR 空間的ノイズ圧縮
SPUFM スピードアップフィールドメモリ
SSW ソフトスイッチ
SUB 減算手段
SW1,SW2,SWA,SWB,SWC,SWF スイッチ
SWW 特定の探索ウィンドウ
T 画素遅延
TF 時間的フィルタ
TNR 時間的ノイズ圧縮
TNRS,TNRSC,TNRSL 時間的ノイズ圧縮オン/オフ信号
TR1,...,TR6,TRU 切捨て手段
UPB 上側のブロック
VMBB 垂直方向の画素ブロックの境界
VPEA 垂直ピーキング[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method and apparatus for motion compensated upconversion.
[0002]
[Prior art]
Conventional TV standards have a field frequency of 50, 59.94 or 60 Hz. When such an image is displayed, a line-like flicker occurs in the case of the content of a specific image, or a large area-like flicker occurs in the case of a bright image, particularly on a large screen. Such artifacts are reduced when display upconversion is performed at the receiver and the field frequency is doubled. However, simple upconversion algorithms such as AABB induce new motion artifacts. In order to prevent the artifacts, motion compensation, which usually requires three expensive field memories for speeding up, motion estimation and motion compensation, is performed in the receiver.
[0003]
European Patent Application No. 0574068 describes a method of performing the above function using only two field memories, a field memory for speeding up and a field memory common to motion estimation and motion compensation. However, additional memory is required to store a large amount of motion vectors.
[0004]
[Problems to be solved by the invention]
One object of the present invention is a motion compensated upconversion method which requires only two field memories and a small memory vector memory for storing motion vectors, thereby realizing additional noise compression. Is disclosed. The object is achieved by a method as claimed in claim 1.
[0005]
Another object of the present invention is to disclose an apparatus utilizing the above-described method of the present invention. The object is to claim In Realized by the described apparatus.
[0006]
[Means for Solving the Problems]
The first field memory is used to double the field frequency. The second field memory performs motion compensated interpolation with noise compression on the high field frequency signal, so that a motion estimator, motion compensated interpolator, predictor, iterative filter means, and appropriate processing time are provided. Used with delay connected.
[0007]
The present invention is, for example, up-conversion from an interlace system of 50 / 59.94 / 60/50 Hz to an interlace system of 100 / 119.88 / 120/75 Hz, and from an interlace system of 50 / 59.94 / 60/50 Hz to 100 /119.88/120/75Hz Progressive scan Up-conversion to the system and 50 / 59.94 / 60 / 50Hz Progressive scan 100 / 119.88 / 120 / 75Hz from the system Progressive scan It can be used for up-conversion to the scheme.
[0008]
One advantage of the present invention is that only two field memories are sufficient to perform the above functions, even when spatial and repetitive temporal noise compression is added to motion compensated upconversion (MCU). Is a point. This is a special case under the condition that the motion compensated interpolation receives the same video input signal as the motion estimator and the temporal filter does not propagate the error after the erroneous motion vector is calculated. This is achieved by using a simple circuit.
[0009]
The absence of error propagation in the temporal filter was obtained due to the type of control used for temporal noise compression, and tests have shown that the error decays from field to field.
Another advantage of the present invention is great Pixel Since only the motion vector of the block needs to be stored, the capacity of the vector memory may be small. this is, Pixel To avoid having to store the motion vector of the sub-block, just above Pixel Corrected from block motion vector Pixel This is realized by calculating the motion vector of the sub-block.
[0010]
The calculation of motion vectors and / or temporal filters has the advantage that it can be controlled by the calculated noise level.
In principle, the method of the invention, in the first stage, the source field is transformed to form a field of double field frequency, and in the second stage, the motion estimation and motion information from the motion estimation are converted. The motion compensated interpolation used is a method of motion compensated upconversion of an interlaced video signal performed in the field of the double field frequency, where spatial and / or temporal noise compression is the motion compensation. Included in the interpolated interpolation.
[0011]
Advantageous further embodiments of the inventive method are described in the respective dependent claims.
In principle, the apparatus for motion-compensated upconversion of the interlaced video signal of the present invention is:
-A first storage means used to convert the source field into a field of double field frequency;
A subsequent second storage means, whose inputs and outputs are connected to a motion estimator that performs motion estimation from field to field;
-Its inputs and outputs from the motion evaluator Pixel Third storage means connected to the motion compensated interpolator for receiving the motion vector of the sub-block, performing field-to-field motion compensation, and generating a motion compensated upconversion output signal;
Each input signal is derived from the input signal of the second storage means, and the final output signal is a spatial noise compression means and / or subsequent temporal noise supplied to the input of the third storage means Compression means,
Or the above device:
A first storage means used to convert the source field into a field of double field frequency;
The input signal of the second storage means is obtained from the output signal of the first storage means, receives motion information from the motion evaluator, performs motion compensation from field to field, motion compensated upconversion; A second input of the motion compensated interpolator is provided to the first input of the motion compensated interpolator for generating an output signal so that the second input signal of the motion compensated interpolator is derived from the output signal of the second storage means; A second storage means;
A motion estimator which receives the output signal of the second storage means at a second input, the signal of the first input is obtained from the output signal of the first storage means and performs motion compensation from field to field; ;
Each input signal is derived from the input signal of the second storage means, and the final output signal is the input of the second storage means and the first input of the motion compensated interpolator; And / or subsequent temporal noise compression means.
[0012]
Advantageous further embodiments of the device according to the invention are described in the respective dependent claims.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.
The motion compensated upconversion process has three steps:
-Motion compensation of luminance only in horizontal and vertical directions;
-Performing spatial and temporal noise compression on the luminance;
-Performing noise compression on chrominance only in time;
The stage of motion compensated interpolation of luminance and chrominance and
Can be divided.
[0014]
The motion compensation evaluator calculates a motion vector indicated by MV, and the MV is accompanied by a reliability CL and a noise level N per field. This result is The Used to generate compressed and motion compensated output pixels.
In the following, in the 50/60 Hz range:
-Even source field = source field 1, 5,. . . ,
-Odd source field = source field 3, 7,. . . ,
For the 100/120 Hz range:
-Output field 1 ← From source field 1
-Output field 2 ← Combination of source field 1 and source field 3
-Output field 3 ← Combination of source field 3 and source field 5
-Output field 4 ← Combination of source field 3 and source field 5
Assuming that
[0015]
Input and output samples are represented by 8-bit words from 0 = LSB (least significant bit) to 7 = MSB (most significant bit).
The video input format (4: 1: 1) is:
Y = 16 (black). . . 240 (white), blank value = 16
-U, V = -112. . . 0. . . +112, blank value = 0 (2's complement)
Assuming that
[0016]
The video output format (before D / A conversion) is:
Y = 0 (extreme black). . . 255 (extreme white), blank value = 16
-U, V = 0. . . 128. . . 255, blank value = 128
Assuming that
In FIG. 1, a field memory or FIFO (first in first out) speed up field memory SPUFM is used to double the field frequency of the input signal I. The output signal is supplied to a motion estimator ME including a small-capacity vector memory, a second field memory or FIFO field memory FM1, and a spatial noise filter SF. The output of the field memory FM1 is supplied to the second input of the motion evaluator ME. The output of the motion estimator ME sends the motion vector MV and some other information to the motion compensated interpolator MCI and the first input of the predictor PRED. Spatial noise The The spatially noise filtered output of the filter SF is supplied to a first input of the interpolator MCI motion compensated via a temporal noise filter TNR and to a third field memory or FIFO field memory FM2. . The second input of the motion compensated interpolator MCI is supplied by the output of the field memory FM2. The output of the field memory FM2 is supplied to the second input of the predictor PRED. The output of the predictor PRED is supplied to the second input of the temporal noise filter TNR.
[0017]
The output O of the motion compensated interpolator MCI is a signal subjected to final motion compensation, up-conversion, and noise compression to be stored or displayed on the screen.
The processing time in the motion compensated upconversion MCU circuit can be easily adapted using the appropriate delays shown in other figures, eg, PTD1 and PTD2. The function of the various blocks is described below with reference to other figures.
[0018]
1 and 3-6, parallel bold dashes represent full-length (eg, 704 pixels) line delays, and other dashes are sub The half line delay for storing sampled image data is shown. The divided thick dashes are common line delays used in both the motion compensated interpolator MCI and the predictor PRED.
[0019]
The line delay is used to make the previous calculation results required when the current line of pixels are output available in the block of the above figure.
The motion compensated interpolator MCI further uses, for example, the output signal of the switch SW3.
The basic block diagram of FIG. 2 shows a field memory or FIFO speed-up field memory SPUFM, a second field memory or FIFO field memory FM, a motion estimator ME, and a motion compensated interpolator MCI. Has been. Due to the separate arrangement, only two field memories or FIFOs are required. 1, the output of the speed-up field memory SPUFM is connected to the first input of the interpolator MCI motion compensated via the first processing time delay PTD1 and the field memory FM. The processing time delay PTD1 represents the processing time required by the motion estimator ME. The output of the field memory FM is connected to the second input of the motion estimator ME and supplied to the second input of the interpolator MCI which is motion compensated via a second processing time delay PTD2.
[0020]
Motion estimation chip such as STi3220 made by SGS-Thomson, two-dimensional motion compensated interpolation filter like IMSA110 made by SGS-Thomson, and two-dimensional motion compensated like STi3500 made by SGS-Thomson An MPEG2 decoder including an interpolator has already been put on the market.
The delay times of the delays PTD1 and PTD2 are equal. The delay time of the field memory FM is a time obtained by subtracting the delay time of the delay PTD1 from one field. This is a total delay of one field (eg 10 ms) between the first and second inputs of the motion estimator and between the first and second inputs of the motion compensated interpolator MCI, respectively. It means you can get time.
[0021]
The block denoted PTD1 includes a new noise compression that receives the input signal from the output of the delay PTD2 and the motion information from the motion evaluator.
3 to 6 show other embodiments showing the basic circuit of FIG. 2 in more detail.
In FIG. 3A, the block PTD1 + NR in FIG. 2 includes a first line delay LD1, a processing time delay PTD1, a spatial noise filter SF, and a temporal noise filter TF in series. The output of the field memory FM is supplied via the second line delay LD2, the first input of the second switch SW2, the second input of the motion compensated interpolator MCI and the predictor PRED. To the second input. The second input of the switch SW2 is connected to the output of the field memory FM.
[0022]
The motion vector MV and, for example, information about the noise level N and information about the vector reliability CL are sent from the motion estimator ME to the motion compensated interpolator MCI via the third line delay LD3. The input of the line delay LD3 is connected to the first input of the first switch SW1, and the output of the line delay LD3 is connected to the second input of the first switch SW1. The output of the switch SW1 supplies the motion vector MV to the first input of the predictor PRED. The line delay LD3 is written for one line and read for two consecutive lines. The reason is the same Pixel This is because the sub-block motion vector is applied to two lines.
[0023]
The output of the predictor PRED is connected to the second input of the temporal noise filter TF. For the even output line EOL, the first input of the switch SW1 is operative, while for the odd output line OOL, the second input of the switch SW1 is operative. For fields 1 and 2, the first input of switch SW2 is operative, while for fields 3 and 4, the second input of switch SW2 is operative, ie connected to the output of switch SW2. Has been.
[0024]
The motion evaluator ME Pixel Block motion vector, Pixel A vector memory RAM for storing the block zero vector is included.
FIG. 3B shows the output field of the signal O that appears in the case of the input signal I (along with the line number). However, fields F3 and F7 are both the first fields of the O output frame.
[0025]
Basically, the embodiment of FIG. 4 differs from the embodiment of FIG. 4 in that the function of the line delay LD1 is performed by each one-line delay that is part of the motion estimator ME. The motion evaluator ME has a corresponding second output connected to the input of the delay PTD1. In addition, the second line delay LD2 is omitted in FIG. The second input of the second switch SW2 is the third switch SW3 in the motion compensated interpolator MCI via the second output of the motion compensated interpolator MCI and the internal one line delay. Connected to the output. The first input of switch SW3 is operative for fields 1 and 2 and is connected to the first input of the motion compensated interpolator MCI via an internal one line delay. The second input of the switch SW3 is operative for the fields 3 and 4 and is connected to the output of the field memory FM via the third input of the motion compensated interpolator MCI. The predictor PRED requires a fourth line delay during the processing of the output fields OF3 and OF4. The line delay at the output of the switch SW3 can be regarded as a pre-arranged line delay for the three subsequent line delays on the right side of the motion compensated interpolator MCI / predictor PRED.
[0026]
Basically, the embodiment of FIG. 5 omits the spatial filter SF in its original position, but differs from the embodiment of FIG. 4 in that the function of the spatial filter SF is incorporated in the motion evaluator ME. Is different.
Basically, the embodiment of FIG. 6 differs in that the predictor PRED is omitted in its original position, but the function of the predictor PRED is incorporated in the motion compensated interpolator MCI. .
[0027]
2-6, the motion estimator ME receives an input signal that is not noise-compressed and a noise-compressed input signal to which the previously calculated motion vector has already been applied, while motion compensated interpolation. The instrument MCI receives two noise-compressed input signals. The field memory FM has a delay of a temporal filter TF, for example, a delay obtained by subtracting two lines from a delay of one field.
[0028]
Luminance processing
The source signal I, 50/60 Hz / 2: 1/625 is speeded up by the field memory to a 100/120 Hz / 2: 1/625 AABB field repeat format. The timing chart of FIG. 7 shows the odd (O) / even (E) field F1, F3, F5,. . . Speed up (SPU) field F1, F1, F3, F3, F5,. . . And fields F1, F2, F3, F4, F5,. . . Is shown.
[0029]
The intermediate stage of the above process is Interlace progressive A transformation, the grid of which is shown in FIG. In the case of the motion estimator ME (FIG. 8A), only the luminance odd source fields are vertically interpolated to place the odd and even field lines in a common vertical grid.
For motion compensated interpolators, both the source field and both luminance and chrominance progressive The scan grid (FIG. 8B) is generated by a vertical filter.
[0030]
In FIG. 8, the following symbols:
× Source grid;
○ Vertical progressive Lines produced by scan interpolation;
● Spatial position of the output line;
Is used. F1 is an odd (O) source field, while F3 is an even (E) source field.
[0031]
As shown in FIG. 9A for odd field F1 and FIG. 9B for even field F3, both fields are pre-filtered horizontally in the motion estimator, sub It is sampled. The grid generated as described above is arranged in the vertical direction V and the horizontal direction H as shown in FIG. sub Sampled progressive Corresponds to the scan grid. The horizontal pre-filter has coefficients (1/16, 2/16, 3/16, 4/16, 3/16, 2/16, 1/16) and is performed only on luminance. Filtering is done by first adding and then truncating.
[0032]
In FIG. 9, the following symbols are used:
× Source grid;
× or ○ progressive Scan grid. The value of ○ is calculated by averaging the values of x in the vertical direction;
□ Vertically and horizontally sub Sampled progressive Scanning grid (= first, third, fifth,... Operational pixels). This is the grid used for motion estimation, reliability and noise level calculations;
Yes sub sampling. The center pixel indicated by a large circle is the location of the output pixel.
[0033]
Figure 10 shows the vertical and horizontal directions. sub Sampled progressive In the grid of scans Pixel With block MB Pixel A sub-block SB is shown. Pixel The sub-block SB has a size of 2 * 2 pixels. sub Not sampled Pixel The block has a size of 32 pixels * 16 lines per frame and a size of 32 pixels * 8 lines per field. Pixel Blocks horizontally and vertically sub Sampled progressive The scan grid has dimensions of 16 pixels * 8 lines.
[0034]
The motion evaluator has a large luminance indicated in MB Pixel Block on both sides on the block matching There is an advantage that can be done. Pixel The block has a size of 16 pixels * 8 lines. Block on both sides matching Is described in more detail in the applicant's international patent application PCT / EP94 / 02870.
In the motion evaluator, each possible motion vector MV is Pixel Applies to block MB. For each motion vector, the previous field Pixel The error E is calculated by accumulating the absolute difference (2's complement) of the block and the corresponding pixel in the current field along the direction of motion. Then the best matching That is, the vector that gives the smallest error is indicated by MBMV Pixel Selected as a block motion vector.
[0035]
If there are several equal minimum errors, ie several equally good motion vectors, the motion vectors are selected in the following order:
1st motion vector MV with horizontal component closest to zero
2nd motion vector MV with positive horizontal component
3rd motion vector MV with vertical component closest to zero
4th motion vector MV with positive vertical component
The motion vector MV is composed of a horizontal component MVH and a vertical component MVV. The horizontal component is positive when moving from left to right on the screen. The vertical component is positive when moving from top to bottom on the screen. FIG. 11 shows each of the following in the field to be interpolated: Pixel Previous field PF (z−1) for motion vector MV generation for block MB and both side blocks in a particular search window SWW of current field CF (z) matching It is shown.
[0036]
As shown in FIG. 12B, for certain motion vectors (-14, -10, -6, -2, +2, +6, +10, +14) due to the used subgrid. A small positional error of half the distance of the sub-grid pixels can occur. This small error is acceptable.
FIG. 12A shows vertical motion vector components MVV: +2, 0, −2. In principle, more values for the vertical motion vector MVV can be realized when longer line delays are spent. Since line delay is expensive (requires a large chip area), a test is performed to show that the above three values are sufficient for upconversion purposes.
[0037]
FIG. 12B shows a possible horizontal motion vector component MVH. The codes used have the following meanings:
□ Vertically and horizontally sub Sampled progressive Scanning grid;
○ Accurate location for calculating motion vectors;
● Slightly incorrect positions for calculating motion vectors.
[0038]
One feature of the present invention is the use of noise measurements to control motion compensated upconversion. An example of a noise measurement that can be used in the present invention is described in the applicant's European Patent Application No. 0562407.
A further noise measurement method will be described in combination with FIG. For television standards B and G, the active image ACP is 36 Pixel In the case of M of the television standard having the height of the block, 32 Pixel Has the height of the block. One central zone PNL0 or, for example, three zones PNL1, PNL2 and PNL3 (due to possible picture-in-picture features) are used to measure noise. First, the minimum for each zone Pixel The block error is calculated and then the three minimum values are median filtered to obtain a preliminary noise level PNL. In the current source field z:
PNL = median [PNL1, PNL2, PNL3]
And the PNL is divided by 16:
PN (z) = PNL / 16
It is. The final noise level N (z) is formed by further median filtering:
N (z) = median [N (z-1) +2, [PN (z) + PN (z-1)] / 2, N (z-1) -2] {truncated}
It is expressed as
[0039]
Therefore, the noise rating is updated once per input field and is changed between fields with a maximum value of ± 2.
N (z) is not known until the end of the current operational field, so N (z) Pixel It is possible to update during the blanking period following the block motion vector MBMV. N (z) is used by adaptive temporal noise compression. For an 11-bit word length, N (z-1) is limited between 2 and 2045 to prevent underflow and overflow when calculating the median value. N (z) or some of its bits can be read via the I2C bus.
[0040]
Initialization at power-on is: PNL, PN (z), PN (z-1) = 0, N (z-1) = 2.
A further feature of the present invention is to control motion compensated upconversion, i.e. block on both sides. matching The periodic structure that corrects the motion vector found by is detected and taken into account. An example of periodic structure detection that can be used in the present invention is described in the applicant's European Patent Application No. 94115732.
[0041]
Motion estimation is very important in periodic structures. Very good matching That is, there are several vectors that exhibit very small errors. Therefore, correction of the periodic structure in the horizontal direction is preferably performed. block matching From processing, each feasible Pixel The corresponding error of the block motion vector is known. Theoretically, as can be seen from FIGS. 14A to 14D, the horizontal periodic structure gives some minimum values of error within the range of rows, but the same range of rows. Some maximum of error occurs. In FIG. 14, the upper row of the pixel indicates the line n of the source field (z), and the lower row indicates the line n of the source field (z-1). (A), (B), (C), and (D) of FIG. 14 respectively show the first of the periodic image luminance signals (for example, fences) shown on the lower side of (A) of FIG. The second, third and fourth realizable motion vectors are represented. Thus, if there is a large difference between the maximum and minimum errors, and there is a true second minimum, Pixel The block is considered to have a periodic structure. If it is confirmed that the block has a periodic structure, the smallest adjacent error on either the upper or left side is obtained. Pixel The motion vector belonging to the block is the current Pixel Replace the motion vector found for the block. If they are the same, Pixel The block vector takes precedence.
[0042]
The first in the field, ie the upper left Pixel For blocks, the periodic structure correction is switched off. First Pixel Only the left candidate is obtained for the rest of the block's rows. First Pixel Only the upper candidate is obtained for the rest of the block sequence. This gives the following algorithm:
If [(there is a true second minimum row error) and (the second minimum
Row error-Minimum row error <Maximum block error / 2)]
If
(If the current block is not the leftmost,
Pixel Block motion vector MBMV
= Pixel Block motion vector MBMVleft
And
If the current block is not the top
And MBMVup is the best matching Give
Pixel Block motion vector MBMV
= Pixel Block motion vector MBMVup
And)
Otherwise
Pixel Block motion vector MBMV
= (Corresponds to minimum block error) Pixel Block motion vector MBMV
The error in the second smallest row must be a true minimum with greater error on both sides in the horizontal direction. Thus, the row boundary can be considered to represent a very small error, ie error = zero.
[0043]
The second minimum row error is only used to determine if the current block is periodic, so if there are several same second minimum row errors, the final It is not important which error was used for the.
FIG. 15 shows an example of a block CUB in the current vector range, a corresponding left block LEB, and an upper block UPB. MVH represents the horizontal motion vector component, MVV represents the horizontal motion vector component, MVUP represents the location of the motion vector selected from the upper block, and MVLE represents the location of the motion vector selected from the left block.
[0044]
MBE is the location of the largest block error, MRE is the location of the largest row error, 2MRE is the second smallest row error, and MINRE is the smallest block error MINBE in the above example. CHR represents the selected row corresponding to the row with the smallest block error.
The arrows starting from locations MVLE and MVUP each represent a motion vector selected according to the corresponding minimum error CERR from adjacent blocks.
[0045]
In the even output field, the horizontal motion vector component MVH has a slight bias in the direction of zero to avoid ambiguity due to noise. The vertical motion vector component MVV is more strongly biased in the direction of zero by vertical interpolation of one of the two fields used to calculate the motion vector. Vertical direction Pixel It is important to use the block boundary VMBB to avoid the problem of vertical movement, as shown in FIG. An odd interpolated field OIF is formed between the odd source field OSF and the even source field ESF.
[0046]
For example, B is a black pixel with a value of 16, G is a gray pixel with a value of 128, and W is a white pixel with a value of 240. Pixel The block motion vector MBMV (0,0) is the vertical direction Pixel On block boundary VMBB Pixel An error of 16 pixels * value 128 = 2048 is generated from the bottom row of the block. Pixel The block motion vector MBMV (0, + 2) produces a zero error.
[0047]
Vertical zero forcing:
If Error (h, 0) ≦ [Error (h, v) +2048]
If Pixel Block motion vector MBMV = h, 0
Otherwise Pixel Block motion vector MBMV = h, v
Horizontal zero forcing (using the above results):
If Error (h, 0)
≦ [Error (h, v) + 64 + ZFE + N (z) / 4]
If Pixel Block motion vector MBMV = 0, v
Otherwise Pixel Block motion vector MBMV = h, v
ZFE = zero forced even field, where ZFE = 0, 1, 2, or 4 is programmable via the I2C-bus. The default is: ZFE = 1. N (z) is the noise level.
[0048]
Force zero for output field 3:
Field OF3 is very marginal and produces line flicker if no real zero motion is detected. But, Pixel Since the horizontal and vertical zero forcing to calculate the block motion vector MBMV is separated, Pixel Block zero vector MBZV is Pixel It is obtained directly from the block motion vector MBMV.
[0049]
If ( Pixel Block motion vector MBMV = 0)
If Pixel Block zero vector MBZV = 0
Otherwise Pixel Block zero vector MBZV = 1
The algorithm described so far is Pixel One motion vector is generated per block. The horizontal motion vector component MVH has 16 feasible values and can be encoded with 4 bits. The vertical motion vector component MVV has three possible values and can be encoded with 2 bits. A complete operational image (see FIG. 13) is 792 per current image (z). Pixel 36 * 22 resulting blocks Pixel Have blocks, Pixel The blocks are stored in the vector memory RAM of the motion estimator ME with a word length of every 6 bits. The vector memory is for calculating the output field OF3 Pixel Stores the value of the block zero vector MBZV.
[0050]
The next step is, for example, sub Sampled progressive 2 * 2 pixels on the scan grid, or progressive Has dimensions of 4 * 4 pixels on the scan grid Pixel The above information is used to calculate motion vectors specific to smaller regions known as sub-blocks. Pixel An example of sub-block motion vector calculation is described in more detail in European Patent Application No. 9411494. The benefits gained from it are: Pixel Since it is calculated immediately before the sub-block motion vector is required, it is not necessary to store it, and a small capacity RAM is obtained for the motion evaluator. Pixel The block vector is calculated in the first field, Pixel The sub-block motion vector is calculated in the next field.
[0051]
Three spatially nearest neighbors Pixel Block motion vector specific Pixel Applies to sub-blocks and three corresponding Pixel By calculating the subblock error SE, a specific Pixel Three spatially nearest neighbors as sub-block motion vectors Pixel One of the block motion vectors is selected.
In FIG. Pixel Block C is divided into four regions. In the upper left area Pixel Candidate motion vector of sub-block is closest Pixel Selected from the motion vectors of blocks A, B and C. In the upper left area Pixel Candidate motion vector of sub-block is closest Pixel Selected from the motion vectors of blocks A, C and D. In the lower left area Pixel Candidate motion vector of sub-block is closest Pixel Selected from the motion vectors of blocks B, C and E. In the lower right area Pixel Candidate motion vector of sub-block is closest Pixel Selected from the motion vectors of blocks C, D and E.
[0052]
Pixel As shown in FIG. 18, the error of the sub block is between the field (z) and the field (z−1). Pixel Calculated by accumulating the difference di of the four pixels in the area of sub-block SB:
SE (x, y) = | d1 | + | d2 | + | d3 | + | d4 |
Where x and y are three Pixel It represents one component in the block motion vector.
[0053]
The smallest error SE (x, y) is obtained Pixel The block motion vector MBMV (x, y) is preliminarily selected for the current block. A 3-tap horizontal median filtering operation is then performed to eliminate the erroneous vector. Pixel This is performed for each component SBMVH and SBMVV of the sub-block motion vector. The obtained motion vector is Pixel Used to calculate the pixels of the even output field belonging to the sub-block. x and y are respectively the horizontal and vertical directions Pixel This is the position of the sub-block.
[0054]
Calculated above Pixel The sub-block error SE is advantageous in that it directly represents the reliability of the motion vector. Pixel When the sub-block error SE has a small numerical value, the reliability CL is large, Pixel When the sub block error SE has a large numerical value, the reliability CL is small. European Patent Application No. 94115733 by the present applicant describes the measurement of reliability in more detail.
The reliability CL can be calculated by the motion estimator ME according to the following formula: CL "= median [SE (x-1) / 2, SE (x) / 2, SE (x + 1) / 2. ]
CL = CL "/ CLdiv {truncated}
The reliability CL is limited to 8 bits, for example. CLdiv is, for example, a preselected multiple 1, 2, 4, 8 programmable by the I2C bus. The default value is: CLdiv = 2.
[0055]
The horizontal median filter is applied to ensure that if the confidence is good on both sides of the block boundary, it remains good throughout the boundary, while the unfiltered confidence is not good.
Due to the soft switch used in the chrominance processing, it is possible to calculate the chroma confidence CC with the motion estimator ME: CC = CL / 2.
[0056]
Further, a temporal noise compression on / off signal TNRS independent of the reliability CL and the noise level N is generated by the motion estimator ME as follows:
If (CL * CLdiv <2 * N)
Then temporal noise compression on / off signal TNRS = 1
Otherwise, temporal noise compression on / off signal TNRS = 0
A further feature of the present invention is noise compression. Noise compression includes two-stage noise compression, that is, spatial noise compression SNR and temporal noise compression TNR. Spatial noise compression is preferably done only on luminance, but can also be applied to chrominance, while temporal noise compression is preferably done on both luminance and chrominance. FIG. 19 shows the common principle for noise compression of the embodiment according to FIGS. Additional processing time or line delay is not shown. The speed-up input signal ISPU is first processed by the spatial noise compression SNR means. However, the order of the spatial noise compression SNR and the temporal noise compression TNR may be reversed.
[0057]
The spatial noise compression SNR is controlled by the noise level N, and is bypassed to avoid possible resolution degradation when N is low, eg, N ≦ 4. N is obtained from the motion evaluator ME. Spatial noise compression is enabled / disabled via the I2C bus. The default is operational.
As shown in FIG. 20, the spatial noise compression filter may be constituted by a horizontal and / or vertical and / or diagonal low-pass filter, or may be constituted by a two-dimensional or directional median filter. In the case of directional filtering, the filter direction is a function of the correlation of the central pixel with the corresponding adjacent pixel.
[0058]
The filter of FIG. 20, for example, operates within a 3 * 3 pixel window to reduce impulse noise, but preserves texture, detail, and edges and operates as follows:
Arrows d1 to d4 indicate the filtering direction of the pixel values x11 to x33.
[0059]
The four corresponding correlations are:
k1 = min (| x21−x22 |, | x22−x23 |)
k2 = min (| x12−x22 |, | x22−x32 |)
k3 = min (| x13−x22 |, | x22−x31 |)
k4 = min (| x11−x22 |, | x22−x33 |)
It is formed as follows.
[0060]
The four corresponding filtering results are:
m1 = median (x21, x22, x23)
m2 = median (x12, x22, x32)
m3 = median (x13, x22, x31)
m4 = median (x11, x22, x33)
It is formed as follows.
[0061]
The corresponding filtering result in the direction of minimum correlation is selected as the final output pixel value at position 22. If there are two or more minimum values, for example, priorities can be given in the following order: m1, m2, m3, m4.
If the window is larger, calculations corresponding to other directions may be performed.
Referring to FIG. 19, the output of the spatial noise compression passes through the temporal noise filter TNR, and the output of the temporal noise filter TNR is input to the motion compensated interpolator MCI. Basically, temporal filters combine data from various fields, including the current field. Advantageously, the temporal filter TF (luminance and chrominance) may be an iterative filter with non-linear coefficients. A predictor PRED, an interpolator MCI, and a field delay FM are connected behind the temporal filter TF. The temporal filter TF is controlled by the temporal noise filter TNR and the noise level N. The predictor PRED outputs the output signal of the field memory FM and the motion estimator ME. Pixel The sub-block motion vector SBMV is received. In the case of luminance, the predicted from the spatially and temporally noise-compressed source field (z-1) Pixel The sub-block is a spatially noisy field (z) resulting from spatial noise compression. The Of the compressed source field Pixel It is considered in the temporal filter TF along with the sub-block. The output signal of the temporal noise compression TNR is the spatial and temporal noise compression of the source field (z). Pixel Consists of sub-blocks.
[0062]
If an erroneous motion vector is calculated due to noise, the motion estimator ME utilizes a motion compensated signal constructed using the previously calculated motion vector, so that the iterative temporal filter is Propagates the above error for partially erroneous video information at the erroneous spatial location. Therefore, the temporal motion vector calculation may be wrong. Due to the coefficients applied to the predicted video information in temporal noise compression, the effects of such disturbances are attenuated from field to field. Careful testing has shown that such errors do not propagate in practice, and therefore the less expensive motion compensated upconversion MCU circuit of the present invention can be used.
[0063]
The coefficients allow only a maximum of about 3/4 of the predicted video signal to be added to the current field video signal. For example, in the case of a noisy source signal, if the motion vector reliability CL is lower, the portion is reduced, so that possible error propagation is further reduced.
The motion compensated interpolator MCI receives signals SBMV, N, CL, CC and MBZV from the motion estimator ME, where MBZV is from the last motion estimate of the source field (z−1). Pixel Block zero motion vector.
[0064]
The luminance processing of the temporal noise compression on / off signal TNRS is shown below:
If (TNRSL operation possible [via I2C-bus]) and
(TNRS = 1)
If Luminance temporal noise compression Is switched on
Otherwise, to avoid blurring due to evaluation failure
Luminance temporal noise compression Is bypassed
Default value = TNRSL operable
The chrominance processing of the signal TNRS is shown below:
If (TNRSC = forced state [via I2C-bus]) or
(TNRS = 1)
If Chrominance temporal noise compression Is switched on
Otherwise Chrominance temporal noise compression Is bypassed
Default value = TNRSC forced state
Predictor PRED projects the previous field in the direction of motion Pixel Interpolation, for example, vertical averaging, is performed to generate sub-block motion vectors SBMV and to generate lost pixels in non-interlaced images due to interlacing. FIG. 21A shows an example when the vertical motion vector component MVV = −2, and FIG. 21B shows an example when the horizontal motion vector component MVH = −4. The previous projected field PPRF is at the position of the current field CUF. The projected field line n + 2 is at the position of the current field line n + 2.
[0065]
X represents an input pixel, o represents a pixel interpolated in the vertical direction (1/2, 1/2), CH represents a black pixel position, and o represents a pixel used by the temporal filter TF.
The temporal luminance filter receives the current field (z) that is spatially noise-compressed and the last source field (z-1) that is spatially and temporally noise-compressed output from the predictor. Both couplings, preferably non-linear coupling, result in a luminance input field that is temporally noise-compressed due to the motion compensated interpolator MCI.
[0066]
The temporal chrominance filter receives the current field (z) and the temporal source-compressed last source field (z-1) output from the predictor. Both combinations, preferably non-linear combinations, result in a temporally noise-compressed chrominance input field for the motion compensated interpolator MCI.
FIG. 22 shows an embodiment of the temporal filter. In the subtraction means SUB, the current source field CUF is subtracted from the predicted previous field PPRF. The output signal is transmitted to the first multiplication means M1 and the second multiplication means M2 through the absolute value means ABS by controlling the first switch SWA using 1 bit representing the sign. The first multiplication means M1 is controlled by the magnification output from the first lookup table LUT1 having a noise level N as an input signal. The output signal of the first multiplication means M1 is transmitted to the second input of the second multiplication means via the clipping means CLP and the second lookup table LUT2 having the input signal Ly and the output signal Lz. The The output of the second multiplying means is transmitted to the first input of the switch SWA via the truncating means TRU, and is transmitted to the second input of the switch SWA via the further two's complement means 2CO. The output signal of the switch SWA is applied to the current source field CUF in the coupling means ADD. The output signal of the coupling means ADD is supplied to the second input of the second switch SWB via the limiting means LIM. The current source field CUF is supplied to the first input of the switch SWB. The switch SWB receives the input signal TNR and the TNRSL / TNRSC (for example, via the I2B bus) and is controlled by the logic unit LC that performs the above processing. The temporal noise filter is switched on when the second input of the switch SWB is connected to the output OU. The output signal OU is supplied to the field memory FM and the interpolator MCI. The clipping means CLP remains at the value 175 and the truncation means TRU performs a division by 64. The circuit between the subtracting means SUB and the combining means ADD produces a non-linearized nonl that gives a weight in the output signal OU between the current source field CUF and the predicted previous field PPRF. Any calculation in the temporal filter TF is performed using 2's complement in any case.
[0067]
Improved performance of temporal noise compression is obtained when non-linearized NONL is applied to the measured noise level N. This means, for example, that for each noise level varying from 17 dB to 36 dB, it is necessary to use a different non-linearization with a width of about 1 dB. Lookup table LUT2 generates the desired output value. However, in order to keep the lookup table LUT2 as small as possible, the value N is converted to a scaling factor SF using the lookup table LUT1. The scaling factor SF is applied to the input value of the non-linearized NONL. The possible values of the lookup table LUT1 are shown in FIG. 24, and the possible values of the lookup table LUT2 are shown in FIG.
[0068]
The chrominance temporal filter (similar to the luminance temporal filter) may additionally include a third switch SWC, as shown in FIG. When the motion-compensated up-conversion consists of cross-color compression, the output of the chromic up-table LUT1 is set to 1, for example, by the switch SWC. By default, SWC is switched to 1.
The motion compensated interpolator MCI generates four output fields for every two input fields. The odd first output field OF1 is the source field F1 subjected to noise compression as shown in FIG. F1 ′ is the first field from the next input source frame.
26 to 31, x represents an input pixel, □ represents an output pixel, CH represents a chroma source pixel, CI represents a chroma pixel interpolated in the horizontal direction, and CO represents a chroma output pixel. . Blocks on both sides in FIGS. 28B to 31B matching Note that the chroma pixel CI is required to be not in the multiple of 4 grid used for the chrominance predictor PRED.
[0069]
The processing of the third output field OF3 is very special as shown in FIG. The noise-compressed source field F3 grid does not match the output field OF3 grid due to interlacing and upconversion. Therefore, to configure the pixel value of the output field OF3 Pixel Depending on the value of the block zero vector MBZV, one of two distinct filter types, for example a vertical filter with coefficients (1/2, 1/2) and a vertical-temporal median filter, is as follows: Applies to:
if Pixel Block zero vector MBZV (z-1) = 0
Then vertical-temporal median filter
Otherwise, vertical filter
The bordered area represented by dashes shows the pixels associated with the vertical-temporal median filter. Region 0 shows pixels associated with the vertical filter.
[0070]
For each pixel in the even output fields OF2 and OF4, a motion compensated pixel and a fallback pixel are calculated. The final luminance output is a combination of the value of the pixel compensated for motion by the soft switch shown in FIG. 32 and the value of the fallback pixel, depending on the reliability CL.
Different processing modes can be used for the calculation of the even output fields OF2 and OF4, and the mode is advantageous in that it can be selected via the I2C bus.
[0071]
Mode 1 (default):
A vertical temporal median filter is used as described with respect to FIG. The pixels of the output field OF2 are constructed by obtaining the vertical temporal median (applied in the direction of motion) of the noise-compressed fields F1 and F3. In other words, the output pixel has a median value of pixels f, g, and h as shown in FIG. 28A for the vertical vector component MVV and as shown in FIG. 28B for the horizontal vector component MVH. is there. In FIG. 5B, the output line n (OLn) of the field F2 is (horizontal direction) between the lines n and n + 2 (Lnn + 2) of the field F3 and the line n-1 (Ln-1) of the field F1. -In time range).
[0072]
The pixels of the output field OF4 are constructed by obtaining the vertical temporal median (applied in the direction of motion) of the noise-compressed fields F3 and F5. In other words, the output pixel has a median value of pixels i, j, and k as shown in FIG. 24A for the vertical vector component MVV and as shown in FIG. 24B for the horizontal vector component MVH. is there. In FIG. 5B, the output line n (OLn) of the field F4 is (in the horizontal direction-temporal range) between the line n (Ln) of the field F5 and the line n (Ln) of the field F3. It is shown.
[0073]
The fallback pixels of the output fields OF2 and OF4 are calculated in the same way as the motion compensated pixels, but with zero motion, i.e. Pixel A sub-block motion vector SBMV = (0, 0) is assumed. The fallback pixel can be calculated according to European Patent Application No. 94115634 by the applicant.
Mode 2:
A linear averaging filter is used as described with respect to FIG. The output field OF2 is a linear average of the noise-compressed fields F1 and F3. In other words, the output pixel is ½ of the pixel f as shown in FIG. 30A for the vertical vector component MVV and 1 / 2B for the horizontal vector component MVH, as shown in FIG. 1/2 of gh. In FIG. 6B, the output line n (OLn) of the field OF2 is (horizontal direction-time) between the line n + 1 (Ln + 1) of the field F3 and the line n-1 (Ln-1) of the field F1. Are shown).
[0074]
The output field OF4 is a linear average of the noise-compressed fields F3 and F5. In other words, the output pixel is half of the pixel i as shown in FIG. 31A for the vertical vector component MVV and half of the pixel i as shown in FIG. 1/2 of jk. In FIG. 5B, the output line n (OLn) of the field OF4 is (in the horizontal direction-temporal range) between the line n (Ln) of the field F5 and the line n (Ln) of the field F3. It is shown.
[0075]
Similar to mode 1, the fallback pixels of the output fields OF2 and OF4 in mode 2 are calculated in the same way as the motion compensated pixels above, but with zero motion, i.e. Pixel A sub-block motion vector SBMV = (0, 0) is assumed.
The circuit of FIG. 32 is provided at the output of the motion compensated interpolator MCI. The odd output field pixel OOFP is supplied to the first input of the switch SWF. The motion compensated pixel MCP is supplied to the first input of the soft switch SSW. The fallback pixel is supplied to the second input of the soft switch SSW, and the reliability value CL is supplied to the third input of the soft switch SSW. The output signal of the soft switch SSW is sent to the second input of the switch SWF via the limiting means LIM3 (limited to 0 ... 255). For an odd output field, the first input of the switch SWF is connected to the output OUP using the control signal OF. For even output fields, the second input of the switch SWF is connected to the output OUP.
[0076]
The soft switch SSW can be constructed in the following way:
The signal from the first input is subtracted from the signal at the second input in the subtracting means SUB. The output is supplied to the first input of the minimum value calculation means MIN. The reliability signal CL from the third input is supplied to the second input of the minimum value calculating means MIN, and is supplied to the second input of the maximum value calculating means MAX through the two's complement means 2CO. The first input of the maximum value calculation means MAX receives the output signal of the minimum value calculation means MIN. The output signal of the maximum value calculation means MAX is added to the input signal of the first input of the soft switch SSW in the coupling means ADD, and the result is supplied to the output of the soft switch SSW.
[0077]
Chrominance processing
Basically, chrominance (U and V) processing is performed according to luminance processing. Unless otherwise noted, the same block diagram is used for chrominance processing. Preferably there are at least one difference:
1) The horizontal component MVH of the motion vector is applied to the chrominance sampling grid as can be seen from FIG. To match Thus, it is rounded to the nearest multiple of 4 before being applied to chrominance. The following table shows how the motion vector components obtained from the motion estimator ME are applied to the predictor PRED and the motion compensated interpolator MCI for luminance and chrominance:
[0078]
[Table 1]
Figure 0003882854
[0079]
2) An additional horizontal linear averaging filter is required in the motion compensated interpolator MCI to allow point 1). Thus, a 4: 2: 1 format is generated from the 4: 1: 1 format before the motion vector is applied to the chrominance pixels.
3) Spatial noise compression SF is not performed.
[0080]
4) The interpolation is performed in the same manner as in mode 2 in the case where the even-number output field interpolation is luminance (linear averaging, no programmability).
5) The chrominance confidence CC (used only for the chroma of the soft switch SSW) is half the luminance confidence CL: CC = CL / 2
6) Perform 4: 2: 2 → 4: 4: 4 conversion using linear averaging (1/2, 1/2).
[0081]
FIG. 33 shows an overall timing chart regarding the input and output of the speed-up field memory SPUFM, the input and output of the field memory FM, and the output signals of the motion estimator ME and the motion compensated interpolator MCI. Yes. F1NR,. . . . , F5NR represents a noise-compressed field.
[0082]
A special calculation is made for F3NR ". Pixel If the value of the block zero motion vector MBZV is 0, a vertical temporal median filter with access to the field F5 that has not yet been noise-compressed is applied. Pixel Since the sub-block motion vector SBMV and the reliability CL are not known, Pixel The block zero vector MBZV (z-1) is applied. This causes a small time error. However, tests have shown that this error can be ignored.
[0083]
The motion compensated upconversion MCU of the present invention preferably has vertical and / or horizontal peaking and / or luminance. Sine interpolation ( sin (x) / x complement while) It is improved by doing. FIG. 35 shows a corresponding block diagram.
The vertical peaking VPEA may be inter-field peaking that amplifies the vertical contour. To avoid noise amplification, a noise level that depends on the coring function COR2 is added to the vertically high-pass filtered signal, which can then be pre-selected via, for example, an I2C bus. Multiply by the coefficient PV. The high-pass filter is composed of two line delays H, an adder, a 1/2 truncator TR5, and a subtractor. The average of the pixels of line n−1 and line n + 1 is the line n, respectively. Subtracted from the pixel. A 1/4 truncator TR6 is connected behind the multiplier PV.
[0084]
Horizontal peaking HPEA amplifies the horizontal contour. The maximum value of amplification is 6.75 MHz in the 100 Hz region, for example. To avoid noise amplification, a noise level that depends on the coring function COR1 is added to the horizontally high-pass filtered signal, which can then be pre-selected via, for example, an I2C bus. Multiply by a factor PH. The high-pass filter includes a pixel delay circuit T, an adder, a 1/2 truncator TR3, and a subtracter. The average of the pixel m-2 and the pixel m + 2 in the current line is calculated from the pixel m. Subtracted. A 1/4 truncator TR4 is connected behind the multiplier PH.
[0085]
Sine interpolation ( sin (x) / x complement while) The instrument SIXC need not be programmable, but must depend on the output clock rate. ideal Sine interpolation ( sin (x) / x complement while) The deviation from is very small, ie for 0 to 8 MHz, the deviation is less than 0.14 dB, and for 8 to 11 MHz, the deviation is less than −0.74 dB. Sine interpolation ( sin (x) / x complement while) The pixel can use the above-described pixel delay circuit T, and further includes an adder, a 1/2 truncator TR1, and a subtracter, and the pixel m-1 and the pixel m + 1 of the current line. The average is subtracted from pixel m. A 1/8 truncator TR2 is connected behind the subtractor.
[0086]
The outputs of the horizontal peaking HPEA and the vertical peaking VPEA are combined in an adder AHV with a respective delay T. The output of the adder AHV is limited to a preselected value PL in the limiter LIM2, and is combined with the output of the corrector SIXC and the pixel m in the adder VHS. The result is limited in a further limiter LIM1 from 0 to 255. The delay T has a delay time of 1/27 MHz. PV, PH and PL ranges and default values are as follows:
range:
PV = 0 to 7, PH = 0 to 7, PL = 7, 15, 31 or 63
Default value:
PV = 4, PH = 4, PL = 15
FIG. 34 shows an example of the noise level N depending on the coring functions COR1 and COR2. X is an input signal, and Y is an output signal. Minimum coring is done according to the following formula:
If | 2 * N (z−1) | <16, CORING = 16
FIG. 36 shows another example of the characteristic of the curve NL (x) of the non-linearized NONL. The non-linearization is the same as in FIG. 22: when x> 0, the output is NL (−x) = − NL (x) for a negative input (−x).
[0087]
For a positive input 0 <x <1, the above characteristics are for λ = 0.9:
NL (x) = f (x) =. Lambda.x(x-1)@2.
Is defined as follows.
The above characteristic has the maximum amplitude when xM = 0.333. To ensure fast temporal convergence of the iterative filter, the ratio
[0088]
[Expression 1]
Figure 0003882854
[0089]
Is limited. Good convergence and effective noise compression are obtained when k = 4.
If k increases significantly, filtering is more effective for still images, but the convergence is so slow that the filter can cause artifacts for unpredictable motion.
[0090]
When k goes to “1”, it corresponds to a non-linear filtered output. Thus, the non-linearization is the following formula:
[0091]
[Expression 2]
Figure 0003882854
[0092]
Limited according to
The function should be scaled. As the magnification, the standard deviation σ of the noise evaluation amount N measured by the up-conversion algorithm can be used. In this case, the non-linearization becomes noise adaptive. The maximum magnification is MxM = 2σ. The resulting scaled output is:
[0093]
[Equation 3]
Figure 0003882854
[0094]
It is expressed as
The switch SWB in FIG. 22 has the reliability CL and / or the CL on the motion vector (and the information TNRS or TNRSL / TNRSC obtained from the CL) that is very small, that is, the error measurement σcf is very large. That is, when σcf ≧ 4σ, the input is selected as the output of the switch instead of the output of the temporal filter. Here, σ is a standard deviation of the noise N calculated by the up-conversion module.
[0095]
In order to maintain good accuracy of non-linearization, it is necessary to incorporate non-linearization at the maximum magnification. For this reason, when the input data passes through the non-linearization unit, the input data is multiplied by a factor larger than “1”, not by division. For example, the non-linearization unit has 192 inputs. As described above, this number corresponds to the value of the maximum noise level magnification. The output value NL (x) of each lookup table is shown in FIG.
[0096]
FIG. 38 is a block diagram showing another embodiment of the non-linearization unit NONL shown in FIG. 22 and uses the non-linearity function NL. The value of the input of the non-linearization unit NONL is given as the value y = x * s to the input of the lookup memory LUT2 representing the function NL via the multiplier M1. The look-up memory output z = NL (y) passes through a divider D1 which yields the final output value w = z / s. The value s is supplied from the output of the magnification lookup memory LUT1 to the second input of the multiplier and the divider. The contents of the magnification lookup memory LUT1 are shown in FIG.
[0097]
Noise block matching It is generated directly by the motion evaluation process using the method. Thus, it is possible to use the estimated vector error value for each block of pixels of the current image. The error may be either the sum of the blocks of absolute pixel value differences between the two contrasted fields, or the square root of the sum of squares of the differences. The minimum value of the block error on the complete image is considered to be an estimate of the noise variation, so that it is assumed that at least one block in the image has a substantially flat amplification region. The corresponding block error is caused only by noise. Therefore, the minimum block error value represents a measured amount of noise, and a magnification for calibrating the nonlinearity can be obtained from the value.
[0098]
Since it is not necessary to make the accuracy regarding the noise level very high, the encoding of the noise level can be performed in such a way that the nonlinearity magnification is simplified from the viewpoint of hardware.
On the other hand, human vision can detect a 1 dB spatial noise compression difference between the two images, while the noise level measured by the upconversion algorithm is 1 dB within the sequence. Considering having range variation, an accuracy of 1 dB can be selected to encode the noise level.
[0099]
The normal noise level of natural images includes the range of 17 dB and 36 dB. This range can be divided into 16 sections every 1 dB. Therefore, 16 encoded noise levels LN (coefficients) can be used to make the nonlinearity noise adaptive.
The arrangement shown in FIG. 39 represents an example of the encoding noise level LN. The above arrangement is based on the assumption that the lookup table has N = 192 entries.
[0100]
N represents the value of noise measured by the upconversion algorithm. The magnification SF is incorporated in the input of the non-linearization unit NONL. SNRσ and σ represent an accurate noise level corresponding to the previous magnification (scale = N × M / (2σ)).
The resulting encoding function for generating LN from N is shown in FIG. The figure shows the deviation induced by the noise measurement. The minimum is slightly increased to compensate for the loss of nonlinearity accuracy. The maximum measurement is always encoded at a smaller level to limit the effects of possible overestimation and to bring the curve closer to asymptotic values.
[0101]
The circuit shown in the present invention can be integrated on one or more chips and can be controlled by an I2C bus. Some of the circuitry may be replaced by appropriate software and processor means.
The present invention can be used in standard definition of 4: 3 or 16: 9 or high definition devices such as television receivers, sanitary receivers, video cassette recorders and video disc players. is there.
[0102]
In the case of a digital video signal, motion information may be added. In such a case, the present invention can utilize already existing motion information, thereby omitting the processing steps related to the generation of motion information or adapting according to already existing motion information.
[Brief description of the drawings]
FIG. 1 is a block diagram of a motion compensated upconverter with three field memories and noise compression.
FIG. 2 is a basic block diagram of a motion compensated upconverter with two field memories.
FIG. 3 is a block diagram of one embodiment of a motion compensated upconverter with two field memories.
FIG. 4 is a block diagram of a second embodiment of a motion compensated upconverter with two field memories.
FIG. 5 is a block diagram of a third embodiment of a motion compensated upconverter with two field memories.
FIG. 6 is a block diagram of a fourth embodiment of a motion compensated upconverter with two field memories.
FIG. 7 is a timing chart of main stages of up-conversion.
FIG. 8 generated with motion compensated interpolator and evaluator progressive It is explanatory drawing of a scan grid.
FIG. 9 shows a horizontal pre-filter and sub It is explanatory drawing of sampling.
FIG. 10 Pixel Block and Pixel It is explanatory drawing of a subblock.
FIG. 11 Blocks on both sides matching FIG.
FIG. 12: Blocks on both sides matching It is explanatory drawing of the small positional error with respect to some motion vectors obtained from the subgrid used in FIG.
FIG. 13 is an explanatory diagram of a noise measurement zone.
FIG. 14 is an explanatory diagram of vectors that can be realized in a periodic structure.
FIG. 15 is a detailed view of a current vector block and an adjacent vector block.
FIG. 16 is an explanatory diagram of vertical direction motion vector components and vertical direction movement.
FIG. 17 Pixel Sub-block regions and associated sub-block motion vectors that are used to generate sub-block motion vectors Pixel It is explanatory drawing of a block.
FIG. 18 Pixel It is a figure which shows a three-dimensional grid with the error of a subblock.
FIG. 19 is a simplified block diagram of a noise compressor.
FIG. 20 is an explanatory diagram of the filtering direction of the spatial noise filter.
FIG. 21 is a functional explanatory diagram of a predictor for linear vertical averaging.
FIG. 22 is a block diagram of a temporal luminance or chrominance filter.
FIG. 23 is an illustration of additional switches used with cross color compression.
FIG. 24 is a diagram illustrating a first magnification lookup table.
FIG. 25 is a diagram illustrating a second look-up table for non-linearity.
FIG. 26 is an explanatory diagram of a first output field of a motion compensated interpolator.
FIG. 27 is an explanatory diagram of a third output field of the motion compensated interpolator.
FIG. 28 is an illustration of the second output field of the motion compensated interpolator during the first mode.
FIG. 29 is an explanatory diagram of a fourth output field of the motion compensated interpolator during the first mode.
FIG. 30 is an illustration of the second output field of the motion compensated interpolator during the second mode.
FIG. 31 is an illustration of the fourth output field of the motion compensated interpolator during the second mode.
FIG. 32 is a configuration diagram of a soft switch and even / odd selection.
FIG. 33 is an overall timing chart.
FIG. 34 is an explanatory diagram of a coring function.
FIG. 35 with vertical and horizontal peaking Sine interpolation ( sin (x) / x complement while) It is explanatory drawing of.
36 is an illustration of characteristics of a further embodiment of the non-linearity of FIG.
FIG. 37 is a second look-up table for non-linearization in a further embodiment.
38 is a block diagram of a further embodiment of the non-linearization of FIG.
FIG. 39 is a first look-up table of magnification of a further embodiment.
FIG. 40 is a graph of an encoding function of noise level.
[Explanation of symbols]
2CO 2's complement means
2MRE second minimum row error
ABS Absolute value means
ACP action image
ADD coupling means
AHV, VHS adder
CC chrominance reliability
CERR Minimum error
CH Chroma output pixel
CHR Selected row corresponding to the errored row of the smallest block
CI Interpolated chroma pixel
CL luminance reliability
CLP clipping means
CO chroma output pixel
CUB Current block
CUF Current field
d1, d2, d3, d4 Filtering direction
D1 Divider
EOL even output line
ESF Even source field
FBP fallback pixel
F1, F3 Noise-compressed source field
FM, FM1, FM2 Field memory
HPEA Horizontal peaking
I input
ISPU speed-up input signal
LC logic
LD1,. . . , LD3 line delay
LEB Left block
LIM, LIM1, LIM2, LIM3 limiting means
LUT1, LUT2 lookup table
M1, M2 multiplication means
MAX maximum value calculation means
MB Pixel block
MBE Largest block error location
MBMV Pixel Block motion vector
MCI motion compensated interpolator
MCP motion compensated pixels
ME motion evaluator
MIN minimum value calculation means
MINBE Minimum block error
MINRE Minimum row error
MRE location of maximum line error
MV motion vector
MVH horizontal motion vector
MVLE Location of motion vector of left block
MVUP Upper block motion vector location
MVV vertical motion vector
N Noise level
NL lookup memory output
Non-linearization part
NR noise compression
O, OU, OUP output
OF control signal
OF1, OF2, OF3, OF4 output field
OIF odd interpolated field
OLn output line
OOFP Odd output field pixels
OOL odd output line
OSF odd source field
PF previous field
PH, PV multiplier
PNL0, PNL1, PNL2, PNL3 Central zone
PPRF Predicted previous field
PRED predictor
PTD1, PTD2 delay
RAM vector memory
SB Pixel Secondary block
SBMV Pixel Subblock motion vector
SE Pixel Subblock error
SF Spatial noise compression filter
SIGN code
SINC corrector
SNR Spatial noise compression
SPUFM speed-up field memory
SSW soft switch
SUB subtraction means
SW1, SW2, SWA, SWB, SWC, SWF switch
SWW specific search window
T pixel delay
TF temporal filter
TNR temporal noise compression
TNRS, TNRSC, TNRSL Temporal noise compression on / off signal
TR1,. . . , TR6, TRU truncation means
UPB Upper block
VMMB vertical direction Pixel Block boundaries
VPEA vertical peaking

Claims (20)

インターレース方式ビデオ信号の動き補償されたアップコンバージョン方法であって、A motion compensated up-conversion method for interlaced video signals,
ビデオ信号フィールドは、方形の画素ブロックの格子を形成し、各画素ブロックは、該画素ブロックより小さい方形の画素副ブロックの格子を形成し、  The video signal field forms a grid of square pixel blocks, each pixel block forms a grid of square pixel sub-blocks smaller than the pixel block,
アップコンバージョンでは、元のフィールド周波数のフィールドを有するビデオ信号は、第1のフィールドメモリを用い、入力フィールドを連続して該第1のフィールドメモリに書き込み、そして該第1のフィールドメモリから入力フィールドを2回連続して読み出すことにより、元の2倍のフィールド周波数のフィールドを有するビデオ信号に変換され、  In up-conversion, a video signal having a field at the original field frequency uses a first field memory, writes the input field continuously to the first field memory, and reads the input field from the first field memory. By continuously reading twice, it is converted to a video signal having a field with twice the original field frequency,
続く動き評価及び動き補償された補間では、第2のフィールドメモリ及びライン記憶手段が利用され、該第2のフィールドメモリの入力信号は、該第1のフィールドメモリの出力信号から空間的ノイズ圧縮を利用して引き出され、  In subsequent motion estimation and motion compensated interpolation, a second field memory and line storage means are utilized, and the input signal of the second field memory is subjected to spatial noise compression from the output signal of the first field memory. Withdrawn using
空間的に隣接する画素の値は結合され、現在の画素の値を形成し、  The values of spatially adjacent pixels are combined to form the current pixel value,
該方法は、  The method
該第1のフィールドメモリの出力信号及び該第2のフィールドメモリの出力信号を用い、2倍のフィールド周波数のフィールドのコンテンツに対し動き補償を実行し、それにより対応する動き情報を提供する段階、  Using the first field memory output signal and the second field memory output signal to perform motion compensation on the content of the field at twice the field frequency, thereby providing corresponding motion information;
該第2のフィールドメモリの入力信号及び該第2のフィールドメモリの出力信号から引き出された信号及び該動き情報を用い、2倍のフィールド周波数の該フィールドに対し動き補償された補間を実行し、それにより動き補償されたアップコンバージョン出力信号を生成する段階、  Performing motion compensated interpolation for the field at twice the field frequency using the signal derived from the input signal of the second field memory and the output signal of the second field memory and the motion information; Thereby generating a motion compensated upconversion output signal,
を有し、  Have
該動き補償された補間の入力信号は、入力信号を遅延された入力信号と結合する反復的な時間的ノイズ圧縮を通過し、  The motion compensated interpolation input signal passes through iterative temporal noise compression that combines the input signal with the delayed input signal;
遅延された入力信号は、該第2のフィールドメモリの該出力信号であり、  The delayed input signal is the output signal of the second field memory;
該時間的ノイズ圧縮は、前のフィールドからの各画素の動き補償の予測を行い、  The temporal noise compression performs a motion compensation prediction of each pixel from the previous field,
該反復的時間的ノイズ圧縮は、空間的にノイズ圧縮された現在のフィールドからの画素と、該予測から得られる空間的及び/又は時間的にノイズ圧縮され、かつ、動き補償された最後のソースフィールドからの画素の非線形結合を行う、  The iterative temporal noise compression consists of pixels from the current field that are spatially noise-compressed and the last source that is spatially and / or temporally noise-compressed and motion-compensated from the prediction. Perform non-linear combination of pixels from the field,
動き補償されたアップコンバージョン方法。  Motion compensated upconversion method.
該動き情報は画素ブロックの動きベクトルを含み、一方、該動き補償された補間は、該画素ブロックよりも小さい画素副ブロックに対し行われ、
該動き補償された補間を行うため、画素副ブロックの動きベクトルは、各出力画素副ブロックの動きベクトルに対し、現在の画素ブロックの動きベクトルを含む現在の画素副ブロックの最も近くにある画素ブロックの動きベクトルから、これら動きベクトルのどれが最小の画素副ブロックのマッチング誤差を生じるかに従い、一つのベクトルを選択することにより、該画素ブロックの動きベクトルから選択される、
請求項1記載の方法。
The motion information includes motion vectors of the pixel block, while interpolation is compensated-out animals are performed on smaller pixel subblock than the pixel block,
For performing the motion compensated interpolation, the pixel motion vector of the sub-block, with respect to the motion vector of each output pixel subblock closest to a given pixel block of the current pixel sub block containing the motion vector of the current pixel block from motion-out vector of according any of these motion vectors is generated the matching error of the minimum pixel subblock, by selecting one vector is selected from the motion vectors of the pixel block,
The method of claim 1.
該空間的ノイズ圧縮はルミナンスに対してだけ行われ、該時間的ノイズ圧縮はルミナンス及び/又はクロミナンスに対して行われる請求項1又は2記載の方法。The spatial noise reduction is performed only for the luminance, a method according to claim 1 or 2, wherein said temporal noise reduction is performed on luminance and / or chrominance. 該動き補償された補間はルミナンス及びクロミナンスに対し行われる請求項1乃至のうちいずれか1項記載の方法。It said motion compensated interpolation method of any one of claims 1 to 3 is performed on luminance and chrominance. 該動き評価中に、インターレース・プログレッシブ変換が一つおきのソースフィールドに使用される請求項1乃至のうちいずれか1項記載の方法。5. A method as claimed in any one of claims 1 to 4 , wherein during the motion estimation, an interlaced progressive transformation is used for every other source field. 該動き評価中に、該インターレース・プログレッシブ変換は、水平方向にサブサンプリングされた画素のに基づいて行われる請求項記載の方法。In the motion evaluating, the interlace-to-progressive conversion method according to claim 5, wherein is performed based on the values of pixels that are subsampled in the horizontal direction. 該動き評価中に、両側のブロックマッチングが行われる請求項1乃至のうちいずれか1項記載の方法。The method according to any one of claims 1 to 6 , wherein block matching on both sides is performed during the motion evaluation. 該動き評価中に、該動きベクトルの一方又は両方の成分(垂直成分、水平成分)は、計算されたノイズレベルに依存して強制的に0に近づけられる請求項1乃至のうちいずれか1項記載の方法。In the motion evaluating one or both of component (vertical component, the horizontal component) of the motion vector is any one of claims 1 to 7 forcibly brought close to 0, depending on the computed noise level 1 The method described in the paragraph. 水平方向又は垂直方向のメジアンフィルタリングが該画素副ブロックの動きベクトルの一方又は両方の成分(垂直成分、水平成分)上で行われる請求項乃至のうちいずれか1項記載の方法。One or both of component (vertical component horizontal component) of the motion vector in the horizontal or vertical median filtering said pixel sub-block method of any one of claims 2 to 8 are performed on. 該空間的ノイズ圧縮、方向性のあるフィルタ、特にメジアンフィルタを含む請求項1乃至のうちいずれか1項記載の方法。The spatial noise reduction is directionless certain filters, in particular the method of any one of claims 1 to 9 comprising a median filter. ソースフィールドの各フレームに対する該動き補償された補間中、4個の出力フィールドが生成され、
第2の出力フィールド及び第4の出力フィールドを構成するため、
第2の出力フィールド及び第4の出力フィールドの両方に対し垂直方向に時間的補間されるか、又は、垂直方向に補間された画素と、
フォールバック画素
との組合せが使用され、
何れの場合でも、上記フォールバック画素は動き補償なしで使用される、請求項乃至10のうちいずれか1項記載の方法。
During the motion compensated interpolation for each frame of the source field, four output fields are generated,
To configure the second output field and the fourth output field,
Either temporal interpolation in a direction perpendicular to both of the second output field and the fourth output field, or a pixel that is interpolated in the vertical direction,
In combination with fallback pixels,
11. The method according to any one of claims 1 to 10 , wherein in any case, the fallback pixel is used without motion compensation.
該予測には、上記ルミナンス画素に対し水平方向に4の倍率で副サンプリングされたクロミナンス画素が使用される請求項乃至11のうちいずれか1項記載の方法。The method according to any one of claims 1 to 11 , wherein the prediction uses chrominance pixels subsampled at a magnification of 4 in the horizontal direction with respect to the luminance pixels. 該動き補償された補間は、少なくともルミナンスに対し、垂直又は水平ピーキング、又はサイン補間(sin(x)/x補間)を行う請求項1乃至12のうちいずれか1項記載の方法。The motion compensated interpolation is to at least luminance, vertical or horizontal peaking, or sign interpolation (sin (x) / x Interpolation) The method of any one of claims 1 to 12 performs. 該垂直又は水平ピーキング、該計算されたノイズレベルに依存するコアリング関数を含む請求項乃至13のうちいずれか1項記載の方法。14. A method as claimed in any one of claims 8 to 13 , wherein the vertical or horizontal peaking comprises a coring function that depends on the calculated noise level. 該非線形結合を行う関数は、入力の値がゼロよりも大きく、最大可能な量よりも小さい場合に最大の量を有する請求項乃至14のうちいずれか1項記載の方法。Nonlinear coupling performs a function, the value of the input is greater than zero, the method of any one of claims 1 to 14 with a maximum amount is smaller than the maximum possible amount. インターレース方式のビデオ信号の動き補償されたアップコンバージョン装置であって、
ビデオ信号フィールドは、方形の画素ブロックの格子を形成し、各画素ブロックは、該画素ブロックより小さい方形の画素副ブロックの格子を形成し、
アップコンバージョンでは、元のフィールド周波数のフィールドを有するビデオ信号は、第1のフィールドメモリを用い、入力フィールドを連続して該第1のフィールドメモリに書き込みそして該第1のフィールドメモリから入力フィールドを2回連続して読み出すことにより、元の2倍のフィールド周波数のフィールドを有するビデオ信号に変換され、
続く動き評価及び動き補償された補間では、第2のフィールドメモリ及びライン記憶手段が利用され、該第2のフィールドメモリの入力信号は、該第1のフィールドメモリの出力信号から空間的ノイズ圧縮を利用して引き出され、
空間的に隣接する画素の値は結合され、現在の画素の値を形成し、
該装置は、
該第1のフィールドメモリ手段の出力信号及び該第2のフィールドメモリ手段の出力信号を用い、2倍のフィールド周波数のフィールドのコンテンツに対し動き補償を実行し、それにより対応する動き情報を提供する手段、
該第2のフィールドメモリ手段の入力信号及び該第2のフィールドメモリ手段の出力信号から引き出された信号及び該動き情報を用い、2倍のフィールド周波数の該フィールドに対し動き補償された補間を実行し、それにより動き補償されたアップコンバージョン出力信号を生成する手段、
を有し、
該動き補償された補間の入力信号は、入力信号を遅延された入力信号と結合する反復的な時間的ノイズ圧縮手段を通過し、
遅延された入力信号は、該第2のフィールドメモリ手段の該出力信号であり、
該時間的ノイズ圧縮手段は、前のフィールドからの各画素の動き補償の予測器を有し、
該反復的時間的ノイズ圧縮手段は、空間的にノイズ圧縮された現在のフィールドからの画素と、該予測から得られる空間的及び/又は時間的にノイズ圧縮され、かつ、動き補償された最後のソースフィールドからの画素の非線形結合を行う、
動き補償されたアップコンバージョン装置。
A motion-compensated up-conversion device for interlaced video signals,
The video signal field forms a grid of square pixel blocks, each pixel block forms a grid of square pixel sub-blocks smaller than the pixel block,
In up-conversion, a video signal having a field at the original field frequency uses a first field memory, writes the input field to the first field memory in succession, and 2 input fields from the first field memory. By continuously reading out times, it is converted into a video signal having a field frequency twice the original,
In subsequent motion estimation and motion compensated interpolation, a second field memory and line storage means are utilized, and the input signal of the second field memory is subjected to spatial noise compression from the output signal of the first field memory. Pulled out using
The values of spatially adjacent pixels are combined to form the current pixel value,
The device
Using the output signal of the first field memory means and the output signal of the second field memory means, motion compensation is performed on the contents of the field having twice the field frequency, thereby providing corresponding motion information. means,
Using the signal derived from the input signal of the second field memory means, the output signal of the second field memory means, and the motion information, motion compensated interpolation is performed for the field at twice the field frequency. Means for generating a motion-compensated upconversion output signal,
Have
The motion compensated interpolation input signal passes through repetitive temporal noise compression means for combining the input signal with the delayed input signal;
The delayed input signal is the output signal of the second field memory means;
The temporal noise compression means comprises a predictor of motion compensation of each pixel from the previous field;
The iterative temporal noise compression means includes a pixel from the current field that is spatially noise-compressed, and a spatially and / or temporally noise-compressed and motion compensated last obtained from the prediction. Perform non-linear combination of pixels from the source field,
Motion compensated upconversion device.
該動き情報は画素ブロックの動きベクトルを含み、一方、該動き補償された補間は該画素ブロックよりも小さい画素副ブロックに対し行われ、
該動き補償された補間を行うため、画素副ブロックの動きベクトルは、各出力画素副ブロックの動きベクトルに対し、現在の画素ブロックの動きベクトルを含む現在の画素副ブロックの最も近くにある画素ブロックの動きベクトルから、これら動きベクトルのどれが最小の画素副ブロックのマッチング誤差を有するかに従い、一つのベクトルを選択することにより、該画素ブロックの動きベクトルから選択される、
請求項16記載の装置。
The motion information includes motion vectors of the pixel block, whereas, the motion compensated interpolation is performed on smaller pixel subblock than the pixel block,
For performing the motion compensated interpolation, the pixel motion vector of the sub-block, with respect to the motion vector of each output pixel subblock closest to a given pixel block of the current pixel sub block containing the motion vector of the current pixel block from motion-out vector of according any of these motion vectors have a matching error of the minimum pixel subblock, by selecting one vector is selected from the motion vectors of the pixel block,
The apparatus of claim 16 .
該空間的ノイズ圧縮手段ルミナンスに対してだけ行われ、該時間的ノイズ圧縮手段ルミナンス及び/又はクロミナンスに対してだけ行われる、請求項16又は17記載の装置。18. An apparatus according to claim 16 or 17 , wherein the spatial noise compression means is performed only for luminance, and the temporal noise compression means is performed only for luminance and / or chrominance. 該動き補償された補間手段はルミナンス及びクロミナンスに対し行われる請求項16乃至18のうちいずれか1項記載の装置。19. Apparatus according to any one of claims 16 to 18 , wherein the motion compensated interpolation means is performed for luminance and chrominance. 該非線形結合の実行用の第1のルックアップテーブルに格納された関数は、入力の値がゼロよりも大きく、最大可能な量よりも小さい場合に最大の量を有する、請求項16乃至19のうちいずれか1項記載の装置。The function stored in the first look-up table for execution of the non-linear combination, the value of the input is greater than zero, with the maximum amount is smaller than the maximum possible amount, of claims 16 to 19 The apparatus of any one of them.
JP07263196A 1995-03-31 1996-03-27 Motion compensated upconversion method and apparatus Expired - Fee Related JP3882854B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP95400722 1995-03-31
FR95400722:5 1995-03-31

Publications (2)

Publication Number Publication Date
JPH08322020A JPH08322020A (en) 1996-12-03
JP3882854B2 true JP3882854B2 (en) 2007-02-21

Family

ID=8221476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07263196A Expired - Fee Related JP3882854B2 (en) 1995-03-31 1996-03-27 Motion compensated upconversion method and apparatus

Country Status (2)

Country Link
JP (1) JP3882854B2 (en)
DE (1) DE69604958T2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011155258A1 (en) * 2010-06-08 2011-12-15 シャープ株式会社 Image processing apparatus, method therefor, image display apparatus, and method therefor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010093680A (en) * 2008-10-10 2010-04-22 Victor Co Of Japan Ltd Video signal processing apparatus, and video signal processing method
DE102020122605A1 (en) 2020-08-28 2022-03-03 Abberior Instruments Gmbh Method, image processing unit and laser scanning microscope for background-reduced imaging of a structure in a sample

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011155258A1 (en) * 2010-06-08 2011-12-15 シャープ株式会社 Image processing apparatus, method therefor, image display apparatus, and method therefor
JP5490236B2 (en) * 2010-06-08 2014-05-14 シャープ株式会社 Image processing apparatus and method, image display apparatus and method
US9215353B2 (en) 2010-06-08 2015-12-15 Sharp Kabushiki Kaisha Image processing device, image processing method, image display device, and image display method

Also Published As

Publication number Publication date
DE69604958D1 (en) 1999-12-09
JPH08322020A (en) 1996-12-03
DE69604958T2 (en) 2000-02-17

Similar Documents

Publication Publication Date Title
US5793435A (en) Deinterlacing of video using a variable coefficient spatio-temporal filter
US5784114A (en) Motion compensated video processing
US8189105B2 (en) Systems and methods of motion and edge adaptive processing including motion compensation features
US20030095205A1 (en) Method of low latency interlace to progressive video format conversion
US5386237A (en) Method and apparatus for adaptive progressive scan conversion
JP4119092B2 (en) Method and apparatus for converting the number of frames of an image signal
EP0735747B1 (en) Method and apparatus for motion compensated frame rate upconversion
KR101002495B1 (en) Image conversion device and image conversion method
JP2001024988A (en) System and device for converting number of movement compensation frames of picture signal
KR20020001951A (en) Apparatus and Method for Progressive Scanning Image Converting, and Apparatus for Vertical Scanning Rate Converting Using the same
JPH11298861A (en) Method and device for converting frame number of image signal
US20070070243A1 (en) Adaptive vertical temporal flitering method of de-interlacing
JP3674186B2 (en) Image information conversion apparatus and method
JP3882854B2 (en) Motion compensated upconversion method and apparatus
JP3946781B2 (en) Image information conversion apparatus and method
EP0735746B1 (en) Method and apparatus for motion compensated frame rate upconversion
US7339626B2 (en) Deinterlacing video images with slope detection
JP3745425B2 (en) Motion vector detection method and adaptive switching prefilter for motion vector detection
JP3480015B2 (en) Apparatus and method for generating image data
GB2340689A (en) Three-dimensional signal processor using motion information upon decoding image signal
EP0600291B1 (en) Method and apparatus for adaptive proscan conversion
JPH08317347A (en) Image information converting device
KR100382650B1 (en) Method and apparatus for detecting motion using scaled motion information in video signal processing system and data interpolating method and apparatus therefor
JP3242164B2 (en) Scanning line number converter for image signals
JP3800638B2 (en) Image information conversion apparatus and method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060328

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060627

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060630

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060926

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091124

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121124

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131124

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees