(57)【特許請求の範囲】
【請求項１】
複数のフレーム画像の空間的及び時間的相関関係に基づいて、前記フレーム画像からフェードを検出するフェード検出装置であって、
動画像を特定の大きさのブロック単位に分割した第１のフレーム画像と前記第１のフレーム画像の時間的に前の第2のフレーム画像との間で、前記分割したブロック毎に第１の動きベクトルを検出する手段と、
前記第１のフレーム画像と前記第１のフレーム画像の時間的に後の第3のフレーム画像との間で、前記分割したブロック毎に第2の動きベクトルを検出する手段と、
前記第1の動きベクトルと前記第2の動きベクトルとの間の動きベクトルの差を計算し、前記動きベクトルの差が第1の閾値を越えるブロックの総数を計算する手段と、
前記第1の閾値を越えるブロックの総数と前記分割したブロックの総数との比が、第2の閾値を越える場合に第1の真値を出力する手段と、
前記複数のフレーム画像毎に、前記第1の真値が出力される期間の連続するフレーム数を計算する手段とを備え、
前記フレーム数が第3の閾値を越えたときに、フェードと判定するフェード検出装置。
【請求項２】
前記動きベクトルの差が、前記第1の動きベクトルと前記第2の動きベクトルとの間の差分の絶対値和、前記第1の動きベクトルと前記第2の動きベクトルとの間の差分の2乗和、又は、前記第1の動きベクトルと前記第2の動きベクトルとの間の差分の2乗和の平方根のいずれかからなる請求項1に記載のフェード検出装置。
【請求項３】
前記第1の動きベクトルに基づく前記複数のブロックから求められる予測画像と前記第2のフレーム画像との間の第1の動き補償予測誤差と、第2の動きベクトルに基づく前記複数のブロックから求められる予測画像と前記第3のフレーム画像との間の第2の動き補償予測誤差とが共に、第4の閾値より小さいときに第2の真値を出力する手段と、
前記複数のフレーム画像毎に、前記第1の真値と前記第2の真値が共に出力される期間の連続するフレーム数を計算する手段とを更に備え、
前記フレーム数が第3の閾値を越えたときに、フェードと判定する請求項1に記載のフェード検出装置。
【請求項４】
前記フレーム画像のカットチェンジ直後に、前記分割したブロックのいずれかについて、前記動きベクトルの差の平均値を算出する手段を更に備え、前記平均値に基づいて前記第1の閾値を変化させる、請求項1〜3のいずれかに記載のフェード検出装置。
【請求項５】
前記第1の動きベクトルが、予め検出された双方向動きベクトルのうち、一方の動きベクトルであり、前記第2の動きベクトルが、前記双方向動きベクトルのうち、他方の動きベクトルである、請求項1〜4のいずれかに記載のフェード検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像処理又は映像符号化におけるフェード検出装置、特に、あるフレームと、その前後のフレームとの関係から、ディゾルブ／フェードを検出するフェード検出装置に関するものである。
【背景技術】
【０００２】
従来より、動画像処理又は映像符号化には、幾つかのフェード検出方法又は装置が提案されている。例えば動画像処理にあたって、効果的にフェード検出を行うことができれば、効率よく編集作業が進む。また、情報、特にディジタル情報を符号化して記録媒体に記録、又は放送電波を介して伝送するにあたって、効果的にフェード検出を行うことができれば、フェード画像に特有の符号化手段等を行って画像劣化を低減させることもできる。
【０００３】
例えば、動画像のディジタル圧縮符号化においては、動画像信号の時間冗長性を抑制する手段として、動き補償フレーム間予測が用いられる。このフレーム間予測では、通常、符号化対象画像を 16画素×16画素等のブロックに区切り、各ブロック毎に参照画像との間の動き量（動きベクトル）を検出し、参照画像を動きベクトル分シフトして生成した予測画像と符号化対象画像との差分（動き補償予測誤差）信号を符号化する。動き補償フレーム間予測により動画像のフレーム間相関は飛躍的に向上し、単純フレーム間予測に比べ大幅な情報圧縮が得られる。更に、動き補償予測誤差信号に対して離散コサイン変換(DCT：Discrete Cosine Transform)や、サブバンド分割を施すことにより、空間方向の冗長性も抑圧され、一層の情報圧縮が図られた。このため、テレビ電話、会議用ビデオ符号化（ITU−T勧告H．261）、蓄積用ビデオ符号化(ISO／IEC 11172(MPEG−1))、蓄積、放送、通信向け汎用ビデオ符号化(ISO／IEC 13818(MPEG−2))等では、動き補償フレーム間予測による残差信号をDCT符号化するハイブリッド符号化構成が採用されている。これらの動画像の圧縮符号化の処理においても、動画像に含まれる原画像（画像）をブロックと呼ばれる所定の領域に分割し、この分割したブロックを単位にして動き補償予測やDCT変換処理を施すことは知られている（例えば、特許文献１）。
【０００４】
動画像のディジタル圧縮符号化において、輝度値が最低値から最高値へ、または最高値から最低値へ一方向に変化する、いわゆるフェード画像や、2種類の映像の混合比が徐々に変化することで、一方の映像から他方の映像に変化する、いわゆるディゾルブ画像に対して、MPEG等の動画像符号化を行うと、ブロック歪が見える等の画像劣化が生じやすくなることが知られている。そのため、フェード画像に適した圧縮率に変更するか、フェード画像に適した動き補償を行うなどの手段が用いられてきた。従って、符号化対象の画像からフェードを検出することが重要となる。
【０００５】
符号化対象の画像からフェードを検出する方法又は装置について、先行技術を2つに大別することができる。１つの検出手法は、2つのフレーム間における同一位置での画素（又はブロック）の輝度（又は色差）の差を検出する方法であり、以下、「動き補償を伴わないフレーム間差」を検出する方法と称する。もう１つの検出手法は、2つのフレーム間について動き補償を行った後で、動き補償後の2つのフレーム間における同一位置での画素（又はブロック）の輝度（又は色差）の差を検出する方法であり、以下、「動き補償を伴うフレーム間差」を検出する方法と称する。単に「フレーム間差」というときは、2つのフレーム間における同一位置での画素（又はブロック）の輝度（又は色差）の差をいう。
【０００６】
「動き補償を伴わないフレーム間差」を検出する方法には、以下の先行技術がある。
【０００７】
隣接するフレームの、全画素の輝度総和の差の絶対値が第1の閾値より大きく、且つ、各画素の差の絶対値の総和が第2の閾値より小さいとき、フェードと判定する方法（例えば、特許文献2）や、第1のフレームと、第1のフレームに先行する第2のフレームの画素値の平均値間の差の絶対値を、第1のフレームの画素値の平均値で割った平均変化が閾値より大きい時にフェードと判定する方法（例えば、特許文献3）などがある。
【０００８】
「動き補償を伴うフレーム間差」を検出する方法には、以下の先行技術がある。
【０００９】
動き補償予測が合致したブロックの輝度差について、輝度差の変化する方向が一定であり続ける領域が画面に占める割合として大きい場合に、フェードと判定する方法（例えば、特許文献4）などがある。
【００１０】
また、「動き補償を伴うフレーム間差」を検出する方法、及び、「動き補償を伴わないフレーム間差」を検出する方法の変形として、フレーム間差の一画面分の和が第1の基準値より小さく、動き補償を行った後のフレーム間差の一画面分の和が第2の基準値より大きいフレームが複数連続した場合にフェードと判定する方法が開示されている（例えば、特許文献5）。
【００１１】
ところで、後述する幾つかの用語について、予め定義する。一般に、ビデオ映像は、論理的に構成されたシーンの連結で構成されており、それぞれのシーンは複数のショットの連結により構成されている。そのようなショットの連結方式に従って、多様な編集効果を得ることができる。ここで、ショットとは、一つのカメラから得られた連続するビデオフレームの単位を表し、映像を分析、又は編集する最も基本となる単位をいう。
【００１２】
そのビデオ編集効果としては、カットチェンジと、シーンチェンジとに大別される。
【００１３】
カットチェンジは、現在の画面から他の画面に急に切り換える技法であり、ハードカットとも称される。
【００１４】
シーンチェンジは、現在の画面から他の画面に連続的に切り換える技法であり、例えば、フェード（フェードイン、フェードアウト）、ディゾルブ、ワイプなどがある。
【００１５】
ディゾルブとは、第1の映像の輝度(及び色差)に、第2の映像の輝度(及び色差)を徐々に混合して、最後には第2の映像にする映像効果をいう。ディゾルブはオーバーラップとも称される。
【００１６】
フェードとは、通常の映像の輝度を徐々に大きく(小さく)して最後に白画像(黒画像)にする事、または、白画像(黒画像)の輝度を徐々に小さく(大きく)して最後に通常の映像にする映像効果をいう。
【００１７】
従って、フェードは、第2の映像または第1の映像が白画像又は黒画像であるようなディゾルブ(又は、オーバーラップ)の一態様と考えることができ、以下、フェード、ディゾルブ、及びオーバーラップを区別せずに、全て「フェード」と称する。
【００１８】
尚、緩やかに変化するシーンチェンジでも、映像が融合する過程を経ずに一部の内容を連続に入れ替えるようなワイプは、フェードとは区別して扱う。
【００１９】
また、この分割したブロックを単位にして動画像を扱う技法は、用途に応じて広く用いられており、16画素×16画素のブロックに限らず、4画素×4画素、8画素×8画素のブロック、他にも64画素×64画素のブロックが用いられることもある。以下、ブロックと称するときには、任意の画素で構成されたブロックをいう。
【００２０】
【特許文献１】特開2005-236459
【特許文献２】特許第3724956号
【特許文献３】特開平6-30333
【特許文献４】特許第3339544号
【特許文献５】特開2000-261810
【発明の開示】
【発明が解決しようとする課題】
【００２１】
しかしながら、従来の「動き補償を伴わないフレーム間差」を検出する方法では、フェード画像でなくても、パンニング画像のように画面全体が変化する映像ではフレーム間差が大きな値となるため、フェードを過検出する問題がある。また、従来の「動き補償を伴うフレーム間差」を検出する方法では、動き補償に用いる動きベクトルがフレーム間の輝度差又は色差が最小になるように選択されるため、動き補償後のフレーム間差は、フェード画像であっても小さな値となり、フェードの検出漏れを生じる間題がある。
【００２２】
本発明は、このような過検出や検出漏れが少ない動画像のフェード検出方法又は装置を提供することを目的とする。
【課題を解決するための手段】
【００２３】
本発明によるフェード検出装置は、複数のフレーム画像の空間的及び時間的相関関係に基づいて、前記フレーム画像からフェードを検出するフェード検出装置であって、動画像を特定の大きさのブロック単位に分割した第１のフレーム画像と前記第１のフレーム画像の時間的に前の第2のフレーム画像との間で、前記分割したブロック毎に第１の動きベクトルを検出する手段と、前記第１のフレーム画像と前記第１のフレーム画像の時間的に後の第3のフレーム画像との間で、前記分割したブロック毎に第2の動きベクトルを検出する手段と、前記第1の動きベクトルと前記第2の動きベクトルとの間の動きベクトルの差を計算し、前記動きベクトルの差が第1の閾値を越えるブロックの総数を計算する手段と、前記第1の閾値を越えるブロックの総数と前記分割したブロックの総数との比が、第2の閾値を越える場合に第1の真値を出力する手段と、前記複数のフレーム画像毎に、前記第1の真値が出力される期間の連続するフレーム数を計算する手段とを備えている。そして、前記真値フレーム数が第3の閾値を越えたときに、フェードと判定する。
【発明の効果】
【００２４】
本発明によれば、「動き補償を伴わないフレーム間差」を検出する方法では、フェードを過検出するようなパンニング画像のように、画面全体が変化する映像についてもフェードと過検出することを低減できる。
【００２５】
また、「動き補償を伴うフレーム間差」を検出する方法では、フェード画像であるにも関らず、動き補償後のフレーム間の輝度差又は色差が小さい値である場合に、フェードの検出漏れを生じるような映像についてもフェードの検出漏れを低減できる。
【発明を実施するための最良の形態】
【００２６】
まず、本発明の動作原理について説明する。
【００２７】
図4に、本発明による基本的な機能を説明する複数のフレーム間における分割したブロックの動きベクトルの模式図を示す。図4において、時間的に順次、連続する5つのフレーム画像、即ち、F1、F2、F3、F4、及びF5が示されている。双方向予測の動きベクトルを考えるとき、第1のフレーム画像をF3とする。第１のフレーム画像の時間的に前の第2のフレーム画像としては、符号化参照画像はF1又はF2である。第１のフレーム画像の時間的に後の第3のフレーム画像としては、符号化参照画像はF4又はF5である。
【００２８】
フレーム画像F3には、例示的に4つの分割したブロックE、F、G、及びHを示してある。分割したブロック毎に、第1のフレーム画像と符号化参照画像との間で、当該ブロックに対応する参照画像のブロックが探索され、各ブロック毎に複数フレームで動きベクトルを算出することができる。第1のフレームと第2のフレームとの間で、各ブロックE、F、G、及びHの動きベクトルは、それぞれ図示241、242、243、及び244である。また、第1のフレームと第3のフレームとの間で、各ブロックE、F、G、及びHの動きベクトルは、それぞれ図示245、246、247、及び248である。
【００２９】
図4に示すように、フレーム画像に対して水平方向をｘ軸、垂直方向をy軸としたとき、ある動きベクトルが、第１のフレームのあるブロック位置(xn,yn) と第2 のフレーム（又は第3のフレーム）のあるブロック位置(xn+Δx, yn+Δy)から構成されるとする。その場合に、その動きベクトルは、(Δx,Δy)となる値により、大きさ及び方向が定まる。
【００３０】
フレーム画像F3のブロックEの基準位置を(xn,yn)としたとき、動きベクトル241が基準位置を(xn,yn)に対して（-4, +5）なる値を有し、動きベクトル245が基準位置を(xn,yn)に対して（+4, -5）なる値を有すると仮定する。その場合、フレーム間距離F1-F3の動きベクトル241とフレーム間距離F3-F5の動きベクトル245とはフレーム間距離が等しく、動きベクトル241と動きベクトル245は、「一直線上」に並んでいることになる。
【００３１】
次に、フレーム画像F3のブロックFの基準位置を(xn,yn)としたとき、動きベクトル242が基準位置を(xn,yn)に対して（-4,+5）なる値を有し、動きベクトル246が基準位置を(xn,yn)に対して（+2,-2.5）なる値を有すると仮定する。その場合、フレーム間距離F1-F3の動きベクトル242とフレーム間距離F3-F4の動きベクトル246とはフレーム間距離が異なるから、例えば動きベクトル242のフレーム間距離をF2-F3（又はF3-F4）に正規化すれば、動きベクトル242の値は、（-2,+2.5）に相当し、動きベクトル242と動きベクトル246は、「一直線上」に並んでいることになる。
【００３２】
次に、フレーム画像F3のブロックGの基準位置を(xn,yn)としたとき、動きベクトル243が基準位置を(xn,yn)に対して（-2,+6）なる値を有し、動きベクトル247が基準位置を(xn,yn)に対して（-4,+12）なる値を有すると仮定する。その場合、フレーム間距離F2-F3の動きベクトル243とフレーム間距離F3-F5の動きベクトル247とはフレーム間距離が異なるから、例えば動きベクトル247のフレーム間距離をF3-F5（又はF2-F3）に正規化すれば、動きベクトル247の値は、（-2,+6）に相当し、動きベクトル243と動きベクトル247は、「一直線上」に並んでいないことになる。
【００３３】
次に、フレーム画像F3のブロックHの基準位置を(xn,yn)としたとき、動きベクトル244が基準位置を(xn,yn)に対して（0,+8）なる値を有し、動きベクトル248が基準位置を(xn,yn)に対して（0,+8）なる値を有すると仮定する。その場合、フレーム間距離F2-F3の動きベクトル244とフレーム間距離F3-F4の動きベクトル248とはフレーム間距離が等しいが、動きベクトル244と動きベクトル248は、「一直線上」に並んでいないことになる。
【００３４】
このようにして、本発明によれば、あるフレームのブロック毎に、その前後のフレームとの間での動きベクトルを各々検出し、動きベクトルのフレーム間距離を正規化し、各々の動きベクトルの値から、「一直線上」であるか否かを判定する。「一直線上」にならないブロックの数が、当該フレームにおいて多数を占める場合には、動きあるフレーム画像はフェードと判断する。それに反して、「一直線上」になるブロックの数が、当該フレームにおいて多数を占める場合には、動きあるフレーム画像はフェードではないと判定する。一般に、数フレーム間の動画像において、ほとんどの画像が、「一直線上」に変化する（物体が直線的に移動する）ことが多い。そのため、本発明では、「一直線上」となりにくいフレーム画像のフェードを判定する手段として、動きベクトル検出を応用している。
【００３５】
尚、前述では、例えば動きベクトル241が（-4,5）なる値を有し、動きベクトル245が（+4,-5）なる値を有すると仮定して、「一直線」と判定しているが、判定基準に所定の閾値（後述する第1の閾値）を設けることにより、動きベクトル245が（+3.8,-5.2）であっても「一直線」と判定する。
【００３６】
従来の「動き補償を伴わないフレーム間差」によるフェード判定では、カメラの方向を変えながら撮影したパンニング画像のように、上下左右、方向を問わず、画面のほとんどが移動するような画像に対しても輝度差（又は色差）が大きくなり、フェードと判定しうる。本発明によれば、パンニング画像であっても容易に動きベクトルを検出ができ、且つ、パンニング画像であれば「一直線」となるフレーム間の動きベクトルを有するブロックが多くなるため、フェードと誤検出することが低減する。
【００３７】
また、従来の「動き補償を伴うフレーム間差」によるフェード判定では、フェード画像であっても、輝度差（又は色差）が大きくならないため、フェードの検出漏れが生じやすい。本発明によれば、フェード画像であれば、「一直線」とならないフレーム間の動きベクトルを有するブロックが多くなるため、フェードの検出漏れが低減する。
【００３８】
尚、図4で説明した動作は、双方向予測に限らず、片方向予測、又はフレーム間スケーリングを行う場合にも応用できることは言うまでもない。
【００３９】
次に、実施例１について説明する。
【００４０】
(実施例1)
実施例１のフェード検出装置は、複数のフレーム画像の空間的及び時間的相関関係に基づいて、フレーム画像からフェードを検出するフェード検出装置であって、動画像を特定の大きさのブロック単位に分割した第１のフレーム画像と第１のフレーム画像の時間的に前の第2のフレーム画像との間で、分割したブロック毎に第１の動きベクトルを検出する手段と、第１のフレーム画像と第１のフレーム画像の時間的に後の第3のフレーム画像との間で、分割したブロック毎に第2の動きベクトルを検出する手段と、第1の動きベクトルと第2の動きベクトルとの間の動きベクトルの差を計算し、その動きベクトルの差が第1の閾値を越えるブロックの総数を計算する手段と、第1の閾値を越えるブロックの総数と分割したブロックの総数との比が、第2の閾値を越える場合に「第1の真値」を出力する手段と、複数のフレーム画像毎に、「第1の真値」が出力される期間の連続するフレーム数（以下、第1の真値フレーム数とも称する）を計算する手段とを備えている。そして、第1の真値フレーム数が第3の閾値を越えたときに、フェードと判定する。
【００４１】
図1に、本発明を実施するフェード検出装置200の一例を示す。フェード検出装置200は、フレームディレイ201及び202と、第1の動きベクトル検出部203と、第2の動きベクトル検出部204と、動きベクトル正規化部207と、動きベクトル比較部205と、ブロックカウンタ208と、フレーム数カウンタ206とを備える。尚、フェード検出装置200は、フレームディレイ201及び202と、第1の動きベクトル検出部203と、第2の動きベクトル検出部204と、動きベクトル正規化部207と、動きベクトル比較部205と、ブロックカウンタ208とを備えるブロックを映像判定部209と称することとする。
【００４２】
フレームディレイ201の入カは、第１のフレーム画像の時間的に後の第3のフレーム画像に相当する輝度信号であり、所定のフレーム分遅延したフレーム画像に相当する輝度信号を出力する。フレームディレイ202の入カは、第１のフレーム画像に相当する輝度信号であり、所定のフレーム分遅延したフレーム画像（即ち、第１のフレーム画像の時間的に前の第2のフレーム画像）に相当する輝度信号を出力する。尚、所定のフレーム分遅延とは、1フレーム遅延、2フレーム遅延など、連続するフレーム間の動きベクトルを検出するのに好適な値とすることができる。
【００４３】
第1の動きベクトル検出部203では、まず、入力された第1のフレーム(フレームディレイ201の出カ)を所望のブロックに分割する。次に、分割した全てのブロックについて、各ブロックを基準にして、入力された第3のフレーム(フレームディレイ201の入力)を参照フレーム画像として動きベクトル検出を行う。次に、検出した動きベクトル(第2の動きベクトル)を出力する。
【００４４】
第2の動きベクトル検出部204では、まず、入力された第1のフレーム(フレームディレイ201の出力)をブロックに分割する。次に、分割したブロック全てのブロックについて、各ブロックを基準にして、入力された第2のフレーム(フレームディレイ202の出力)を参照フレーム画像として動きベクトル検出を行う。次に、検出した動きベクトル(第1の動きベクトル)を出力する。
【００４５】
動きベクトル正規化部207では、まず、入力された第1の動きベクトルを、第1のフレームと第2のフレームとの距離で割算する。次に、入力された第2の動きベクトルを、第1のフレームと第3のフレームとの距離で割算する。このようにして、第1の動きベクトルと第2の動きベクトルとの間で比較するベクトルの大きさを正規化し、各ベクトルを動きベクトル比較部205に出力する。尚、第1のフレームと第2のフレームとの距離と、第1のフレームと第3のフレームとの距離が、等しい場合は、動きベクトル正規化部207を省略することができる。
【００４６】
動きベクトル比較部205では、動きベクトル検出を行った全てのブロックについて、入力された第1の動きベクトルと入力された第2の動きベクトルの比較を行い、各動きベクトルの差が第1の閾値より大きいブロックを単位数として順次、出力する。ブロックカウンタ208で、前記単位数の総数をカウントし、その総数について動きベクトル検出を行った全てのブロックの数で割算する。その割算して得た値が第2の閾値より大きい時に真値を出カし、それ以外の時は偽値を出力する。ブロックカウンタ208の詳細については、後述する。
【００４７】
第1の動きベクトルと第2の動きベクトルの比較は、例えば式(1)で行う。
【数１】
0004690250.tif 000002
ここで、||は絶対値を表わし、Th1は第1の閾値を表わす。また、V1x、V1yは第1の動きベクトルの水平成分、垂直成分を表わし、V2x及びV2yは第2の動きベクトルの水平成分、垂直成分を表わす。
【００４８】
尚、式(1)は、第1の動きベクトルと第2の動きベクトルとが「一直線上」になるときに、V1xとV2x及びV1yとV2yの符号の向きが反転している場合の式である。
【００４９】
動きベクトルの検出方法によっては、第1の動きベクトルと第2の動きベクトルとが「一直線上」になるときに、V1xとV2x及びV1yとV2yの符号の向きが等しい場合がある。そのような場合には、式(1)のV2x及びV2yの符号を反転し、式(2)のようにする。
【数２】
0004690250.tif 000003
【００５０】
第1の動きベクトルと第2の動きベクトルの比較は、ベクトルの方向と大きさの違いを判定できればよいため、式(1)以外の式を用いる事もできる。例えば、式 (3)によって判定することもできる。
【数３】
0004690250.tif 000004
ここで( ) 2は2乗を表わし、Th2は式(2)に合わせた第1の閾値である。
【００５１】
同様に、第1の動きベクトルと第2の動きベクトルとが「一直線上」になるときに、V1xとV2x及びV1yとV2yの符号の向きが等しい場合には、式(2)に代えて、V2x及びV2yの符号を反転し、式(4)のようにする。
【数４】
0004690250.tif 000005
【００５２】
例えば式(3)及び(4)を変形して、それぞれ式(5)及び(6)のようにすることもできる。
【数５】
0004690250.tif 000006
【数６】
0004690250.tif 000007
ここに、Th3は、式(5)及び(6)に適した第1の閾値である。
【００５３】
式(1)及び(2)による動きベクトルの差の計算方法は、「第1の動きベクトルと第2の動きベクトルとの間の差分の絶対値和」とも称する。又は、式(3)及び(4)による動きベクトルの差の計算方法は、「第1の動きベクトルと第2の動きベクトルとの間の差分の2乗和」とも称する。更に、式(5)及び(6)による動きベクトルの差の計算方法は、「第1の動きベクトルと第2の動きベクトルとの間の差分の2乗和の平方根」とも称する。
【００５４】
第1の閾値（Th1 、Th2又はTh3）の適切な値は、動きベクトル検出を行なうブロックのサイズ、利用する動きベクトル検出方法などにより異なる。動きベクトル検出を行うブロックのサイズが大きい場合や、利用する動きベクトル検出方法の性能が低い場合は、第1の動きベクトルと第2の動きベクトルの差は大きくなる傾向がある。このような場合に、第1の閾値の値が小さすぎると、フェードの過検出の原因となる。このように、第1の閾値の値は本発明が利用する動きベクトル検出方法や、ブロックのサイズに依存するため、フェード以外の映像について分割したブロックの第1の動きベクトルと第2の動きベクトルの差を求め、その平均値の1.5倍程度の値を第1の閾値とすると良い。
【００５５】
ブロックカウンタ208は、動きベクトル比較部205で動きベクトルの差が大きいと判定されたブロックの数をカウントする。そのカウントした総数を、動きベクトル検出を行ったブロックの総数で割算した値が、第2の閾値より大きい時に、「第1の真値」を出力する。
【００５６】
第2の閾値は、本発明を利用するアプリケーションによって適宜定められるものであり、ブロックサイズや各種ある動きベクトル検出方法により異なる。本発明を利用する者が、所望のフェード検出効果を得るように定めることができる。
【００５７】
フレーム数カウンタ206は、ブロックカウンタ208が「第1の真値」が出力される期間の連続するフレーム数（第1の真値フレーム数）をカウントし、第1の真値フレーム数が第3の閾値を越えた時に、フェードと判定し、第1のフェード判定信号を出カする。第1のフェード判定信号を出力している間に、動きベクトル比較部205が偽値を出力した時には、第1のフェード判定信号の出力を停止する。
【００５８】
第3の閾値は、映像のフレームレートと検出するフェードの速度、またフェード検出を利用するアプリケーションに依存する。多くのフェードは0.5秒間〜1秒間で行われるため、例えば毎秒30フレームの映像であれば、第3の閾値は10程度にすると良い。また、フェードの有無で処理を変更するようなアプリケーションのように、フェード開始後のできる限り早い時間に検出を行う必要がある場合は、第3の閾値は4程度にすると良い。
【００５９】
実施例1に示す構成によれば、連続的な複数のフレームから、動きベクトルを検出し、フレーム映像の動きを把握することから、パンニング画像などをフェードと過検出することを防止できる。また、フェード検出に動きベクトルを用いるため、従来の「動き補償を伴うフレーム間差」を検出する方法では検出漏れを生じるような映像であっても、フェードの検出漏れを防止できる。
【００６０】
次に実施例2について説明する。
【００６１】
(実施例2)
実施例2では、実施例1の手段に加えて、第1の動きベクトルに基づく複数のブロックから求められる予測画像と第2のフレーム画像との間の第1の動き補償予測誤差と、第2の動きベクトルに基づく複数のブロックから求められる予測画像と第3のフレーム画像との間の第2の動き補償予測誤差とが共に、第4の閾値より小さいときに「第2の真値」を出力する手段と、複数のフレーム画像毎に、「第1の真値」と「第2の真値」が共に出力される期間の連続するフレーム数（以下、第2の真値フレーム数とも称する）を計算する手段とを更に備えている。そして、前記第2の真値フレーム数が第3の閾値を越えたときに、フェードと判定する。
【００６２】
本実施例における動きベクトルについて詳説しておくと、動きベクトルは、MPEG等の動き補償手段において実行される動き補償処理に用いられるものである。例えば、まず現在符号化の対象となっている第Ｎのフレーム画像を、ｎ画素×ｎ画素の画素を含む複数の対象ブロックに分割する。そして、第Ｎのフレーム画像のある対象ブロック内の各画素と、第Ｎのフレーム画像よりも先に符号化された第Ｎ−１画像の対象ブロックに対応する位置の参照ブロック内の各画素との差分の絶対値を、対象ブロック内の全ての画素について加算することにより、差分の絶対値の和を算出する。次に、第Ｎ−１画像内に、対象ブロックに対応する位置の参照ブロックを中心に所定の範囲内において位置をずらしながら、差分の絶対値の和が最小となる位置を探索する。この際、当該ブロックと値が最小となる差分の絶対値の和を有する新たな参照ブロックとの位置関係を動きベクトルとする。
【００６３】
図2に、本発明による更なる応用例である第2のフェード判定信号を出力するフェード検出装置を示す。フェード検出装置220は、映像判定部209と、第1の動き補償予測誤差算出部224と、第2の動き補償予測誤差算出部225と、動き補償予測誤差比較部226と、フレーム数カウンタ227とを備える。ここで、本実施例により動画像を扱う際に、第1のフレーム画像の画像信号の各ブロックについて、第1のフレーム画像の画像信号に対して時間的に前のフレーム画像との間での第1の動きベクトルと、第1のフレーム画像に対して時間的に後のフレーム画像との間での第2の動きベクトルとを有する状態から説明する。第1の予測画像の画像信号とは、第1の動きベクトルに基づく分割したブロックの動き補償予測画像の画像信号であり、第2の予測画像の画像信号とは、第2の動きベクトルに基づく分割したブロックの動き補償予測画像の画像信号である。第1の動き補償予測誤差算出部224は、第1の予測画像の画像信号と第1のフレーム画像の画像信号とを入力し、第1の動き補償予測誤差の値（輝度差又は色差）を出力する。同様に、第2の動き補償予測誤差算出部225は、第2の予測画像の画像信号と第1のフレーム画像の画像信号とを入力し、第2の動き補償予測誤差の値（輝度差又は色差）を出力する。動き補償予測誤差の比較部226は、第1の動き補償予測誤差算出部224と第2の動き補償予測誤差算出部225から出力される、それぞれの動き補償予測誤差の値を入力し、全てのブロックに対してそれらの値の総和を算出し、その総和の値と第4の閾値と比較し、第4の閾値より小さいときに「第2の真値」を出力する。フレーム数カウンタ227は、映像判定部209が出力する「第1の真値」と、動き補償予測誤差の比較部226が出力する「第2の真値」が共に出力される期間の連続して出力するフレーム数（第2の真値フレーム数）をカウントし、第2の真値フレーム数が第3の閾値を越えた時に、第2のフェード判定信号を出カする。
【００６４】
ここで、本実施例では、フェード検出装置220は、動きベクトルを検出する際に算出した各ブロックにおける差分の絶対値の和を、１つのフレーム画像分について合計して、予測誤差を算出する。第1の動きベクトルに基づく複数のブロックから求められる予測画像と第2のフレーム画像との間の第1の動き補償予測誤差と、第2の動きベクトルに基づく複数のブロックから求められる予測画像と第3のフレーム画像との間の第2の動き補償予測誤差とが、第4の閾値より小さいときに「第2の真値」を出力する。フレーム数カウンタ227は、前述した動作に基づいて図1に示すブロックカウンタ208が出力する第1の真値と、動き補償予測誤差の比較器226が出力する第2の真値との双方について連続して出力された第2の真値フレーム数と称する）をカウントし、第2の真値フレーム数が第3の閾値を越えた時に、フェードと判定し、第2のフェード判定信号を出カする。
【００６５】
実施例2に示す構成によれば、実施例1に示す構成に加え、動き補償予測誤差が有する輝度の差又は色差の成分をも考慮することになり、フェード判定の精度向上が可能となる。
【００６６】
即ち、様々な動きある複雑な画像（例えば、人込みなど）では、動きベクトルが正しく検出されないことが考えられる。そのような場合に、双方向の動きベクトルの値が直線的とならないために、実施例1の方法においてもフェードであると誤判定しうる。しかしながら、そのような複雑な画像では動き補償予測誤差の値が大きくなることが多く、実施例2に示す構成によれば、フェードでないことを判定できるようになる。つまり、フェード検出装置220は、フェード判定装置200の過検出を抑制する効果がある。
【００６７】
第4の閾値の適切な値は、動きベクトル検出を行なうブロックのサイズ、利用する動きベクトル検出方法、またシーンチェンジなどにより異なる。本発明を利用する者が、所望のフェード検出効果を得るように定めることができる。実施例2の第3の閾値は、実施例1の第3の閾値と同様の要素と考えてよい。
【００６８】
次に実施例3について説明する。
【００６９】
（実施例3）
実施例3では、実施例1〜2のいずれかに加えて、フレーム画像のカットチェンジ直後に、フレーム分割したブロックの第1の動きベクトルと第2の動きベクトルとの差の平均値を算出する手段を更に備え、その平均値に基づいて前記第1の閾値を変化させることにより、フェードと判定する。
【００７０】
ここで、第1の動きベクトルと第2の動きベクトルとの差は、前述の式(1)〜(6)のいずれかを用いる。平均値の算出には、全部ブロックから算出してもよく、特定のブロック（例えばフレーム中央）についての平均値とすることもできる。
【００７１】
第1の動きベクトルと第2の動きベクトルの差は、映像が激しい動きやズームを含んでいる場合にも大きくなる。そこで、フレーム画像のカットチェンジ直後では、実施例3による方法又は装置により、第1の動きベクトルと第2の動きベクトルとの差の平均値に基づいて第1の閾値を変化させることにより、更にフェード検出の精度を高めることができる。
【００７２】
実施例3においては、カットチェンジ検出を行い、カットチェンジ直後の複数フレームの第1の動きベクトルと第2の動きベクトルの差の平均値に応じて、第1の閾値を設定する。例えば平均値の1.5倍程度の値を第1の閾値とする。これにより、カットチェンジにより映像の傾向が変化した場合も、第1の閾値を適した値とする事ができる。尚、前記複数フレームは、4〜5フレーム程度で十分である。また、第1の閾値を、複数フレームにおける第1の動きベクトルと第2の動きベクトルの差の平均値と、それ以前の第1の閾値の値の平均値とする事で、第1の閾値の値が急激に変化することを防ぐこともできる。また、前述したカットチェンジ直後の複数フレームの期間は、第1の閾値の値が不適切な場合があるため、複数フレームの期間は第1のフェード判定信号の出力を停止しても良い。尚、カットチェンジの検出方法は、周知の方法で良いことは言うまでもない。
【００７３】
次に実施例4について説明する。
【００７４】
(実施例4)
実施例１〜3とは更に別な態様として、実施例4では、前記第1の動きベクトルが、予め検出された双方向動きベクトルのうち、一方の動きベクトルであり、前記第2の動きベクトルが、前記双方向動きベクトルのうち、他方の動きベクトルであることにより、フェードと判定する。
【００７５】
図3に、双方向動き検出を伴う動きベクトルを用いた、本発明による更なる応用例であるフェード検出装置の一例を示す。MPEG-2エンコーダなど、双方向動き検出を伴う映像処理装置に本発明を利用する場合は、映像処理装置が有している双方向動きベクトル検出の結果を利用する事が可能である。実施例4のフェード検出装置は、実施例1〜3で説明した映像判定部209の代わりに、動きベクトル正規化部307と、動きベクトル比較部305と、ブロックカウンタ308とを有する映像判定部309を備える。動きベクトル正規化部307の機能は、実施例1で説明した動きベクトル正規化部207と同様である。また、動きベクトル比較部305の機能は、実施例1で説明した動きベクトル比較部205と同様である。また、ブロックカウンタ308の機能は、ブロックカウンタ208と同様である。
【００７６】
動きベクトル比較部305では、各1ブロックについてエンコーダが求めた順方向動きベクトルと、逆方向動きベクトルと、予測方向の信号を入カとする。予測方向の信号は、そのブロックが、順方向予測、逆方向予測、双方向予測のいずれを行うかを示す信号である。順方向動きベクトルまたは逆方向動きベクトルのいずれか一方を第1の動きベクトルとし、残りの一方を第2の動きベクトルとする。
【００７７】
第1の動きベクトルの参照フレームを第2のフレームとし、第2の動きベクトルの参照フレームを第3のフレームとする。動きベクトル比較部305は、双方向予測を行うブロックのみを対象として、動きベクトルの比較を行う。
【００７８】
双方向予測を行うブロックについて、実施例1で説明した処理と同様である。即ち、動きベクトル比較部305では、動きベクトル検出を行った全てのブロックについて、入力された第1の動きベクトルと第2の動きベクトルの比較を行い、そのベクトルの差が第1の閾値より大きいブロックを単位数として順次、出力する。ブロックカウンタ308で、その単位数の総数をカウントする。そして、その総数について双方向予測を行った全てのブロックの数で割算した値が第2の閾値より大きい時に「第1の真値」を出カし、それ以外の時は偽値を出力する。このように構成する事で、実施例１と同様の効果を得ることができる。尚、実施例4の第1の閾値と第2の閾値は、実施例1で説明した要素と同様と考えてよい。
【００７９】
実施例１〜3において、動きベクトルを検出するブロックは画面全体を隙間無く覆う必要はない。画面全体がパンニング画像である場合などでは、画面の端の動きベクトルは乱れ、第1の動きベクトルと第2の動きベクトルの差は大きくなる傾向がある。一方、フェードは画面全体で行われるため、動きベクトル検出は、画面の中央付近のブロックだけで行っても、本発明の効果を得る事ができる。同様に、動きベクトルを検出するブロックの間に隙間があっても、本発明の効果を得ることができる。
【００８０】
尚、本明細書では説明を簡単にするため、全てフレーム画像について説明したが、フィールド画像についても、同様の効果を得ることができる。即ち、本明細書の「フレーム」を「フィールド」と置換することで適用可能である。ただし、フィールド画像についての第1の動きベクトルと第2の動きベクトルを比較する動きベクトル比較部205又は305については、フィールド構造に適合させるべく、増減する動きベクトルの垂直成分の値を加減算する必要がある。
【００８１】
上述の実施例については代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換することができることは当業者に明らかである。従って、本発明は、上述の実施例によって制限するものと解するべきではなく、特許請求の範囲によってのみ制限される。
【産業上の利用可能性】
【００８２】
本発明により、動き補償を伴わないフレーム画像において、パンニング画像のように画面全体が変化する映像であっても、フェードと過検出することを防止できる。また、動き補償後のフレーム間差が小さい値となるような映像であっても、フェードの検出漏れを防ぐことができ、動画像処理又は動画像の符号化処理において有用である。
【図面の簡単な説明】
【００８３】
【図１】本発明を実施するフェード検出装置の一例を示す図である。
【図２】本発明による更なる応用例であるフェード検出装置の一例を示す図である。
【図３】双方向動き検出を伴う動きベクトルを用いた、本発明による更なる応用例であるフェード検出装置の一例を示す図である。
【図４】本発明による基本的な機能を説明する複数のフレーム間における分割したブロックの動きベクトルの模式図である。
【符号の説明】
【００８４】
２００  フェード検出装置
２０１  フレームディレイ
２０２  フレームディレイ
２０３  第1の動きベクトル検出部
２０４  第2の動きベクトル検出部
２０５  動きベクトル比較部
２０６  フレーム数カウンタ
２０７  動きベクトル正規化部
２０８  ブロックカウンタ
２０９  映像判定部
２２０  フェード検出装置
２２４  第1の動き補償予測誤差算出部
２２５  第2の動き補償予測誤差算出部
２２６  動き補償予測誤差の比較部
２２７  フレーム数カウンタ
３０５  動きベクトル比較部
３０７  動きベクトル正規化部
３０８  ブロックカウンタ
３０９  映像判定部
【図１】
0004690250.tif 000008
【図２】
0004690250.tif 000009
【図３】
0004690250.tif 000010
【図４】
0004690250.tif 000011