説明

動きベクトル生成装置、表示装置、集積回路、動きベクトル生成プログラムおよび動きベクトル生成方法

【課題】シーンチェンジを起因とする画像の画質劣化を抑制するための動きベクトルを生成する。
【解決手段】シーンチェンジ判定部150は、処理対象フレーム内の領域毎に、シーンチェンジがあるか否かを判定する。ベクトル補正部160は、シーンチェンジがあると判定された場合、処理対象フレームに含まれる特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、補正に使用される動きベクトルを生成するための動きベクトル生成装置、表示装置、集積回路、動きベクトル生成プログラムおよび動きベクトル生成方法に関する。
【背景技術】
【0002】
信号処理技術の進展に伴い、動画像を構成する複数のフレームから動きベクトルを検出し、検出した動きベクトルを用いて動画像を補正することが可能になっている。そして、この補正方法により、例えば、動画像のボケの低減、動画解像度の向上およびフレーム数の変換に伴う動きの不自然さの改善など動画像の画質向上が可能になっている。
【0003】
従来、用いられていた陰極線管(CRT:Cathode Ray Tube)は、電子ビームの走査により概ねインパルス型の発光が行われることにより動画像を表示する表示装置である。
【0004】
それに対し、液晶ディスプレイ(以下、LCDという)は、次のフレームが表示されるまでの間、表示状態が維持されるホールド型の表示装置である。
【0005】
このようなホールド型の表示装置では、移動する物体が表示される場合、視線の移動に対してずれた位置に表示が行われることになる。そのため、動画像の表示においてボケが発生する。これに対して、2つのフレームの間に補間フレームを生成して表示することで、ボケが低減できることが知られている(下記特許文献1)。そのため、LCDでは、動きベクトルを用いて補間フレームを生成するのが一般的である。
【0006】
また、プラズマディスプレイ(以下、PDPという)では、サブフィールド法と呼ばれる駆動方式が採用される表示装置である。PDPは、1フレーム期間の複数のサブフィールドで階調を表しながら動画像を表示する。このため、ホールド型の表示装置であるLCDよりは小さいものの、インパルス型の表示装置であるCRTに比べて動画像の表示においてボケが発生する。
【0007】
これに対して、動きベクトルを用いてサブフィールドの表示位置を補正することで、動画像のボケを低減することができることが知られている(下記特許文献2)。
【0008】
また、映画の24Hzの映像をNTSC方式(60Hz)で表示する場合に通常使用される2−3プルダウン方式では、映画の1枚の画像を60Hzの2フレームと3フレームで交互に表示する。この結果、映像信号のフレーム周期と異なる時間間隔での表示が行われることになるため、動きに不自然さが生じてしまう。
【0009】
これに対して、表示タイミングに合わせた補間フレームを生成して表示することで、不自然さのないなめらかな動きの表示が可能となることが知られている(下記特許文献3)。
【0010】
また、PAL(50Hz)からNTSC(60Hz)への変換においても同様である。すなわち、動きベクトルを用いた補間フレームを生成することで、動きの不自然さの改善が可能となる。
【0011】
上記のような補正方法により、表示映像の画質は向上する。
【0012】
また、上記のように補間フレームの生成など表示映像の補正に使用する動きベクトルは、通常、以下のように検出される。
【0013】
すなわち、この動きベクトルは、1フレームが所定の画素数(M×N画素)からなる複数のブロックに分割され、このブロック毎に連続する複数のフレーム間で相関が最も大きくなる位置を探索する方法により検出される。
【0014】
この方法では、ブロックに含まれる各画素の値と、比較対象の位置の画素の値の差の絶対値をブロック全体で合計したもの(SAD:Sum of Absolute Difference、差分絶対値和)を相関として用いることが多い。
【0015】
このSADの値が小さいほど相関が大きいことに相当する。各ブロックに対し相関が最も大きくなる位置の差を、そのブロックの動きベクトルとして検出する。
【0016】
このように相関の大きさをもとにした動きベクトルの検出では、連続した複数のフレーム間で同一の物体が写っている場合には、物体の変形や拡大/縮小の影響はあるものの、おおむね物体の動きに対応する正しい動きベクトルを検出することができる。
【0017】
しかし、動きベクトルの検出の対象となる連続する複数のフレーム間において、シーンチェンジがあった場合には、連続性の無い、全く内容の異なるフレーム間で相関のもっとも大きな位置を検出していることになる。この場合、物体の動きとは無関係な、誤った動きベクトルが検出されてしまう。
【0018】
補間フレームの生成や表示の補正に使用する動きベクトルは、動画像のフレーム間圧縮等で使用する場合の動きベクトルと異なり、表示される映像に直接影響を及ぼすものであり、シーンチェンジの際に検出される、誤った動きベクトルは、著しい画質の劣化となる可能性が高い。
【0019】
そこで、シーンチェンジを検出し、シーンチェンジが発生した場合には、ブロック毎に相関の大きさによって求めた各動きベクトルの値を0にするといった技術(以下、従来技術Aという)が知られている(下記特許文献4)。
【0020】
補間フレームの生成において動きベクトルの値を0にすることは、補間フレームとして、動きベクトルの基準となるフレームをそのまま出力することに相当する。そのため、シーンチェンジの前後いずれかのフレームが2度表示されることとなる。
【0021】
シーンチェンジを検出する方法として最も簡単な方法は、フレーム全体もしくは所定の領域の平均輝度が1フレーム前に対して大きく変化した時にシーンチェンジがあると判定する方法である。この方法では、フレーム遅延等のメモリが不要であるが、平均輝度の変化があまり無いシーンチェンジが検出できないなど、検出精度は高くない。
【0022】
一方、隣接する2つのフレーム間の単純な差分値をフレーム全体もしくは所定の領域で合計または平均することにより得られた値が予め定めた閾値よりも大きくなった時にシーンチェンジがあると判定する方法がある。
【0023】
また、2つのフレーム間の差分の合計または平均が、1フレーム前の合計または平均に対して大きく変化した場合にシーンチェンジがあると判定する方法がある。この方法では、フレーム遅延のためのメモリが必要となるが、平均輝度を使用する場合に比べて高い精度でシーンチェンジを検出することができる。
【0024】
さらには上記の方法において、単純なフレーム差分の替わりに、動きベクトル検出の際に相関の判定のために使用されるSADを用いることで、動きのある動画像でのシーンチェンジの誤検出を低減することが可能である。
【0025】
単純なフレーム差分を使用した場合には、動きの大きい動画像では差分値が大きくなり、シーンチェンジがあると誤判定される可能性がある。しかしながら、動きベクトル検出の際のSADは、正しい動きベクトルが検出できている限り小さな値となる。そのため、誤ってシーンチェンジを検出してしまうことが少なくなる。
【先行技術文献】
【特許文献】
【0026】
【特許文献1】特許第3295437号公報
【特許文献2】特許第3158904号公報
【特許文献3】特許第3495485号公報
【特許文献4】特開2002−354483号公報
【発明の概要】
【発明が解決しようとする課題】
【0027】
従来技術Aでは、所定サイズのブロック(領域)単位で、シーンチェンジがあるか否かを判定し、シーンチェンジがあると判定されたブロックに対応する各動きベクトルの値を0にする。
【0028】
ここで、説明を簡単にするために、シーンチェンジの判定の対象となる第1ブロックおよび第2ブロックがあるとする。また、第1ブロックおよび第2ブロックの各々において複数の動きベクトルが検出されたとする。
【0029】
以下においては、第1ブロックに対応する動きベクトルを、第1動きベクトルという。また、以下においては、第2ブロックに対応する動きベクトルを、第2動きベクトルという。また、以下においては、第1ブロックと、第2ブロックとの境界を、ブロック境界という。
【0030】
また、第1ブロックについては、シーンチェンジがあると判定され、第1ブロックに対応する複数の第1動きベクトルの値が0にされたとする。一方、第2ブロックについては、シーンチェンジがないと判定され、第2ブロックに対応する複数の第2動きベクトルの値は、変更されないとする。
【0031】
この場合、ブロック境界付近において、各第1動きベクトルの値と、各第2動きベクトルの値とは大きな差がある。すなわち、各第1動きベクトルと、各第2動きベクトルとにおいて、値が急激に変化する。
【0032】
そのため、各第1動きベクトルおよび各第2動きベクトルを使用して生成された画像において、ブロック境界付近に対応する部分が、スジ状のノイズとしてあらわれる。すなわち、画像の画質劣化が生じるという問題点がある。
【0033】
本発明は、上述の問題点を解決するためになされたものであって、その目的は、シーンチェンジを起因とする画像の画質劣化を抑制するための動きベクトルを生成可能な動きベクトル生成装置等を提供することである。
【課題を解決するための手段】
【0034】
上述の課題を解決するために、この発明のある局面に従う動きベクトル生成装置は、動画像を補正するための動きベクトルを生成する。前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含む。前記動きベクトル生成装置は、前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部とを備える。
【0035】
すなわち、シーンチェンジ判定部は、処理対象フレーム内の第1領域毎に、シーンチェンジがあるか否かを判定する。ベクトル補正部は、シーンチェンジがあると判定された場合、処理対象フレームに含まれる特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する。
【0036】
これにより、シーンチェンジがあると判定された場合において、特定方向に連続して並ぶ複数のブロックにそれぞれ対応する複数の動きベクトルにおいて、値の急激な変化を抑制することができる。すなわち、値の急激な変化が抑制された、処理対象フレームを補正するための複数の動きベクトルを生成することができる。そのため、生成された各動きベクトルを使用して補正される処理対象フレームの画質劣化を抑制することができる。
【0037】
すなわち、シーンチェンジを起因とする、補正後の処理対象フレーム(画像)の画質劣化を抑制するための動きベクトルを生成することができる。
【0038】
好ましくは、前記ベクトル補正部は、前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、該シーンチェンジがあると判定された第1領域に含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を0に向かって徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算し、かつ、前記シーンチェンジ判定部によりシーンチェンジがないと判定され、かつ、最新のゲイン値が所定の上限値未満である場合、シーンチェンジがないと判定された第1領域に含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を前記上限値に向かって徐々に増加させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成する。
【0039】
好ましくは、nは1であり、前記シーンチェンジ判定部は、前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値の平均である第1平均値を算出するとともに、前記処理対象フレームの直前の1枚のフレームにおける、前記第2領域に含まれる各ブロックに対応する相関値の平均である第2平均値を算出する平均算出部と、前記第1平均値と、前記処理対象フレームの直前の1枚のフレームに対応する前記第2平均値とを用いて、シーンチェンジがあるか否かを判定する比較判定部とを含む。
【0040】
好ましくは、nは2以上の整数であり、前記シーンチェンジ判定部は、前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値の平均である第1平均値を算出するとともに、前記n枚のフレームの各々における、前記第2領域に含まれる各ブロックに対応する相関値の平均である第2平均値を算出する平均算出部と、前記平均算出部により算出された前記n枚のフレームにそれぞれ対応するn個の第2平均値の平均である第3平均値を算出する過去平均算出部と、前記第1平均値と前記第3平均値とを比較して、シーンチェンジがあるか否かを判定する比較判定部とを含む。
【0041】
好ましくは、nは1であり、前記シーンチェンジ判定部は、前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち、所定の閾値より大きな相関値の数の比率を第1ブロック比率として算出するとともに、前記処理対象フレームの直前の1枚のフレームにおける、前記第2領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち前記閾値より大きな相関値の数の比率を第2ブロック比率として算出する比率算出部と、前記第1ブロック比率と、前記処理対象フレームの直前の1枚のフレームに対応する前記第2ブロック比率とを用いて、シーンチェンジがあるか否かを判定する比較判定部とを含む。
【0042】
好ましくは、nは2以上の整数であり、前記シーンチェンジ判定部は、前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち、所定の閾値より大きな相関値の数の比率を第1ブロック比率として算出するとともに、前記n枚のフレームの各々における、前記第2領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち前記閾値より大きな相関値の数の比率を第2ブロック比率として算出する比率算出部と、前記比率算出部により算出された前記n枚のフレームにそれぞれ対応するn個の第2ブロック比率の平均であるブロック平均比率を算出する過去平均算出部と、前記第1ブロック比率と前記ブロック平均比率とを比較して、シーンチェンジがあるか否かを判定する比較判定部とを含む。
【0043】
好ましくは、前記相関値は、SAD(Sum of Absolute Difference)値である。
【0044】
好ましくは、前記特定方向は、垂直方向である。
【0045】
この発明の他の局面に従う表示装置は、動画像を補正するための動きベクトルを生成する。前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含む。前記表示装置は、前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部と、前記ベクトル補正部により生成された各動きベクトルを用いて、前記処理対象フレームを補正する補正部と、前記補正部により補正された処理対象フレームを表示する表示部とを備える。
【0046】
この発明のさらに他の局面に従う集積回路は、動画像を補正するための動きベクトルを生成する。前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含む。前記集積回路は、前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部とを備える。
【0047】
この発明のさらに他の局面に従う動画像を補正するための動きベクトルを生成するための動きベクトル生成プログラムは、コンピュータにより実行される。前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含む。前記動きベクトル生成プログラムは、前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出ステップと、前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定ステップと、前記シーンチェンジ判定ステップによりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正ステップとを備える。
【0048】
この発明のさらに他の局面に従う動きベクトル生成方法は、動画像を補正するための動きベクトルを生成するための動きベクトル生成装置により実行される。前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含む。前記動きベクトル生成方法は、前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出ステップと、前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定ステップと、前記シーンチェンジ判定ステップによりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正ステップとを備える。
【0049】
なお、本発明は、このような動きベクトル生成装置を構成する複数の構成要素の全てまたは一部を、システムLSI(Large Scale Integration:大規模集積回路)として実現してもよい。
【0050】
また、本発明は、動きベクトル生成装置が備える特徴的な構成部の動作をステップとする動きベクトル生成方法として実現してもよい。また、本発明は、そのような動きベクトル生成方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。
【発明の効果】
【0051】
本発明により、シーンチェンジを起因とする画像の画質劣化を抑制するための動きベクトルを生成することができる。
【図面の簡単な説明】
【0052】
【図1】第1の実施の形態における表示装置の主要な構成を示すブロック図である。
【図2】動きベクトル生成装置に入力される複数のフレームの一例を示す図である。
【図3】第1の実施の形態において処理されるフレームを説明するための図である。
【図4】ベクトル検出部が行う処理を示すフローチャートである。
【図5】動きベクトルの検出方法の概念を説明するための図である。
【図6】第1の実施の形態におけるシーンチェンジ判定部が行う処理を示すフローチャートである。
【図7】第1の実施の形態におけるシーンチェンジ判定部の構成を示すブロック図である。
【図8】ベクトル補正部が行う処理を示すフローチャートである。
【図9】ベクトル補正部が行う処理を示すフローチャートである。
【図10】ゲイン値の変化の状態の一例を示す図である。
【図11】ゲイン値の変化の状態の一例を示す図である。
【図12】第1の実施の形態の変形例における表示装置の主要な構成を示すブロック図である。
【図13】第1の実施の形態の変形例におけるシーンチェンジ判定部が行う処理を示すフローチャートである。
【図14】第1の実施の形態の変形例におけるシーンチェンジ判定部の構成を示すブロック図である。
【発明を実施するための形態】
【0053】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0054】
なお、本明細書において、映像信号は、1枚のフレームを示す信号であるとする。
【0055】
<第1の実施の形態>
図1は、第1の実施の形態における表示装置1000の主要な構成を示すブロック図である。
【0056】
図1を参照して、表示装置1000は、動きベクトル生成装置10と、補正部170と、表示部180とを備える。
【0057】
動きベクトル生成装置10は、所定時間(例えば、1/60秒)毎に、映像信号SGを受信する。映像信号SGが示すフレームのサイズは、例えば、水平1920画素、垂直1080ラインのサイズであるとする。なお、映像信号SGが示すフレームのサイズは、上記に限定されず、他のサイズであってもよい。
【0058】
また、映像信号SGが示すフレームは、例えば、I/P(インターレス/プログレッシブ)変換後のフレームであるとする。すなわち、動きベクトル生成装置10は、所定時間(例えば、1/60秒)毎に、映像信号SGにより示されるフレームを受信する。
【0059】
図2は、動きベクトル生成装置10が受信する複数のフレームの一例を示す図である。図2を参照して、動きベクトル生成装置10は、フレームF11,F12,F13を含む複数のフレームを、フレームF13,F12,F11,・・・の順で受信する。すなわち、動きベクトル生成装置10は、複数のフレームから構成される動画像を受信する。
【0060】
再び、図1を参照して、動きベクトル生成装置10は、順次受信する複数の映像信号SGから、動きベクトルを検出する。そして、動きベクトル生成装置10は、検出した動きベクトルに対しシーンチェンジに伴う補正を行った後、補正後の動きベクトルと、映像信号とを同期して出力する。
【0061】
ここで、シーンチェンジは、例えば、連続する2つのフレーム(例えば、フレームF11,F12)がそれぞれ示す2つの画像が類似していない状態である。例えば、シーンチェンジは、連続する2つのフレームがそれぞれ示す2つの画像を用いて動きベクトルを検出する場合、正常な動きベクトルを検出できない程、当該2つの画像が類似していない状態である。当該2つの画像の各々は、フレーム全体またはフレームの一部の画像である。当該2つの画像の各々がフレームの一部の画像である場合、当該2つの画像の各々は、対応するフレーム内の同じ位置の画像である。
【0062】
動きベクトル生成装置10は、映像遅延部110と、ベクトル検出部120と、フレーム遅延部130と、ベクトル遅延部140と、シーンチェンジ判定部150と、ベクトル補正部160とを含む。
【0063】
動きベクトル生成装置10が順次受信する映像信号SGは、映像遅延部110、ベクトル検出部120およびフレーム遅延部130の各々が順次受信する。すなわち、映像遅延部110、ベクトル検出部120およびフレーム遅延部130の各々は、ほぼ同時に映像信号SGを受信する。
【0064】
フレーム遅延部130は、1つの映像信号SGを保持可能なFIFO(First In First Out)メモリと、FIFOメモリを制御する制御部とを含む。フレーム遅延部130は、映像信号SGを受信する毎に、当該映像信号SGより1つ前の映像信号SG(以下、映像信号PSGという)を、ベクトル検出部120へ送信する。すなわち、フレーム遅延部130は、映像信号SGを1フレーム期間分遅延させて、ベクトル検出部120へ送信する。本明細書において、1フレーム期間は、一例として、1/60秒であるとする。
【0065】
これにより、ベクトル検出部120は、映像信号SGおよび映像信号PSGをほぼ同時に受信する。
【0066】
ここで、映像信号SGが示すフレームが、例えば、図2のフレームF11である場合、映像信号PSGが示すフレームは、フレームF12である。
【0067】
図3は、第1の実施の形態において処理されるフレームを説明するための図である。
【0068】
フレームのサイズは、一例として、水平1920画素、垂直1080ラインのサイズである。また、フレームは、行列状に配置された複数のブロックに分割される。すなわち、フレームは、行列状に配置された複数のブロックを含む。
【0069】
以下においては、フレームに含まれる複数のブロックから構成される行列を、フレームブロック行列という。また、以下においては、フレームブロック行列における各行を、ブロック行という。
【0070】
ここで、フレームに含まれる各ブロックのサイズは、8画素×8画素である。この場合、フレームにおいて、水平方向には240個のブロックが並び、垂直方向には、135個のブロックが並ぶ。すなわち、フレームは、135行240列の行列を構成する32400個のブロックを含む。この場合、フレームブロック行列は、135行240列の行列である。
【0071】
なお、フレームのサイズは、水平1920画素、垂直1080ラインのサイズに限定されず、他のサイズであってもよい。
【0072】
また、フレームは、当該フレームの垂直方向において、15個の領域(領域1〜15)に分割される。すなわち、垂直方向の線と、各隣接する2つの領域(例えば、領域1,2)の境界の線とは直交する。
【0073】
なお、フレームを分割する領域の数は、15に限定されず、例えば、16以上であってもよい。また、フレームが分割される方向は、垂直方向に限定されず、例えば、水平方向であってもよい。
【0074】
領域1は、9行240列の行列を構成する2160個のブロックを含む。すなわち、領域1の垂直方向のサイズは、9ブロック(72画素)である。なお、領域2〜15も、領域1と同様な構成なので詳細な説明は繰り返さない。
【0075】
以下においては、各領域に含まれる複数のブロックから構成される行列を、領域ブロック行列という。例えば、領域ブロック行列は、9行240列の行列である。また、以下においては、領域ブロック行列における各行も、ブロック行という。
【0076】
以下においては、映像信号SGが示すフレームを処理対象フレームという。
【0077】
再び、図1を参照して、ベクトル検出部120は、映像信号SGおよび映像信号PSGをほぼ同時に受信する。ベクトル検出部120は、映像信号SGおよび映像信号PSGを受信する毎に、ベクトル検出処理を行なう。
【0078】
図4は、ベクトル検出部120が行う処理を示すフローチャートである。
【0079】
ベクトル検出処理(S111)では、ベクトル検出部120が、映像信号SGおよび映像信号PSGを用いて、動きベクトルを検出する。具体的には、ベクトル検出部120は、映像信号SGが示す処理対象フレームに含まれる複数のブロックの各々の動きベクトルを検出する。
【0080】
以下においては、動きベクトルの検出において、処理対象となるブロックを処理対象ブロックともいう。
【0081】
次に、動きベクトルの検出方法について図を用いて説明する。ここで、映像信号SGおよび映像信号PSGは、それぞれ、フレームF11,F12を示すとする。この場合、フレームF11,F12は、それぞれ、処理対象フレームおよび参照先フレームである。
【0082】
図5は、動きベクトルの検出方法の概念を説明するための図である。
【0083】
ここで、ベクトル検出部120の処理対象ブロックは、処理対象ブロックBK10であるとする。ここで、フレームF11(処理対象フレーム)の処理対象ブロックBK10の動きベクトルを検出(算出)するとする。
【0084】
この場合、ベクトル検出部120は、フレームF12(参照先フレーム)内の探索領域SR10内で、フレームF11内の処理対象ブロックBK10と最も相関の高いブロックの位置を特定することにより動きベクトルを検出(算出)する。ここで、探索領域SR10は、処理対象ブロックBK10の中心座標を基準として、例えば、水平±64画素、垂直±32ラインの範囲を含む領域である。
【0085】
以下においては、参照先フレーム内の探索領域内のブロックを、参照先ブロックという。参照先ブロックのサイズは、8画素×8画素である。
【0086】
具体的には、ベクトル検出部120は、処理対象ブロック(BK10)に対するSAD(Sum of Absolute Difference)値が最も小さくなる参照先ブロック(以下、相関最大ブロックという)の位置を特定することにより動きベクトルを検出(算出)する。
【0087】
なお、動きベクトルの検出方法は、周知な技術であるので詳細な説明は行わない。以下、簡単に説明する。
【0088】
ここで、処理対象ブロックを構成する複数の画素の画素値と、参照先ブロックを構成する複数の画素の画素値との差を、予測誤差という。SAD値は、処理対象ブロックを構成する複数の画素にそれぞれ対応する複数の予測誤差の絶対値の合計値である。
【0089】
SAD値は、動きベクトルMVの検出に用いられる処理対象ブロックと、参照先ブロックとの相関度合いを示す相関値である。SAD値が小さい程、処理対象ブロックと参照先ブロックとの相関度合い(類似度)は大きい。
【0090】
ここで、相関最大ブロックが、図5の参照先ブロックBK11であるとする。この場合、ベクトル検出部120は、参照先フレーム内における、処理対象ブロックBK10の座標から、参照先ブロックBK11の座標までのベクトルを、動きベクトルMVとして算出(検出)する。
【0091】
そして、ベクトル検出部120は、動きベクトルMVを検出する毎に、検出した当該動きベクトルMVおよび当該動きベクトルMVに対応するSAD値を、それぞれ、ベクトル遅延部140およびシーンチェンジ判定部150へ送信する。これにより、ベクトル検出処理(S111)は終了する。
【0092】
上記の動きベクトルMVに対応するSAD値は、当該動きベクトルMVの検出に用いられた処理対象ブロックおよび参照先ブロックの相関度合いを示す相関値である。また、動きベクトルMVに対応するSAD値は、当該動きベクトルMVの検出対象となったブロックに対応する値である。
【0093】
ベクトル検出部120は、映像信号SGが示す処理対象フレームに含まれる全てのブロックの各々に対し、ベクトル検出処理(S111)を行う。これにより、ベクトル検出部120は、全ブロック検出処理(S100)を行ったことになる。
【0094】
ベクトル検出処理の対象となるブロックは、ベクトル検出処理が行われる毎に、例えば、図3では、m(1以上の整数)行目の左端のブロックからm行目の右端のブロックに向かって1つずつ変更される。
【0095】
なお、m行目の右端のブロックの次は、m+1行目の左端のブロックが、ベクトル検出処理の対象となるブロックとなる。
【0096】
以上のベクトル検出処理が繰り返されることにより、処理対象フレームに含まれる32400個のブロックの各々の動きベクトルMVが検出される。なお、処理対象フレームにおいて、動きベクトルMVの検出対象となる最後のブロックは、135行240列目のブロックである。
【0097】
すなわち、ベクトル検出処理が、処理対象フレームに含まれるブロックの数だけ繰り返し行われることにより、ベクトル検出部120は、以下の検出処理Aを行ったことになる。
【0098】
検出処理Aは、ベクトル検出部120が、動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて該各動きベクトルの検出に用いられた複数のブロックの相関度合いを示す相関値(SAD値)を算出する処理である。
【0099】
言い換えると、検出処理Aは、ベクトル検出部120が、動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値(SAD値)を算出する処理である。
【0100】
以上の検出処理Aが行われることにより、ベクトル遅延部140は、領域1〜15の順で、各領域に対応する2160個の動きベクトルMVを順次受信する。また、シーンチェンジ判定部150は、領域1〜15の順で、各領域に対応する2160個のSAD値を順次受信する。ここで、例えば、領域1に対応する2160個のSAD値は、それぞれ、領域1に含まれる2160個のブロックに対応する。
【0101】
なお、動きベクトルMVの検出に用いられる相関値は、SAD値に限定されず、他の値(例えば、予測誤差の2乗和)であってもよい。
【0102】
なお、動きベクトルMVの検出において、処理対象ブロックに対するSAD値が最も小さくなる参照先ブロックの位置を特定するためには、探索領域内において、参照先ブロックを配置可能な全ての位置を探索する必要がある。この場合、演算処理量が極めて多くなる。
【0103】
また、処理対象フレームに含まれるノイズや、処理対象フレームが示す物体の変形などの影響もあり、相関が最大の位置が、物体の動きに正しく対応するとは限らない場合がある。
【0104】
このため、本実施の形態における動きベクトルの検出においては、以下の処理A,B等が行われてもよい。
【0105】
処理Aは、例えば、処理対象ブロックの周囲のブロックの動きベクトルに基づいて、探索領域のサイズを小さくするという処理である。
【0106】
また、処理Bは、間引いた画像または縮小した画像を用いて荒く探索し、相関が高いと思われるブロックの位置の周辺のみを詳細に探索するという処理である。
【0107】
上記処理A,B等が行われることにより、演算処理量を削減し、かつ、物体の実際の動きに対応した動きベクトルを検出することが可能となる。
【0108】
このような処理A,Bを用いた場合、必ずしも相関が最大の位置が検出される訳ではないが、処理A,B等を行うことにより検出されたベクトルを動きベクトルとして選択しても構わなく、本実施の形態における動きベクトルの検出方法に特に制限はない。
【0109】
ベクトル遅延部140は、ベクトル検出部120から順次受信する複数の動きベクトルMVを、後述する領域判定処理時間だけ遅延させて、ベクトル補正部160へ送信する。
【0110】
以下においては、処理対象フレームに含まれる各領域を、第1領域という。
【0111】
シーンチェンジ判定部150は、処理対象フレーム内の第1領域毎に判定処理を行なう。
【0112】
図6は、第1の実施の形態におけるシーンチェンジ判定部150が行う処理を示すフローチャートである。
【0113】
図7は、第1の実施の形態におけるシーンチェンジ判定部150の構成を示すブロック図である。
【0114】
図7を参照して、シーンチェンジ判定部150は、SAD平均算出部151と、比較判定部152と、第1平均遅延部153と、第2平均遅延部154と、過去平均算出部155とを含む。
【0115】
判定処理(S200)では、SAD平均算出部151が、処理対象フレームにおける各領域に対応する2160個のSAD値を受信する毎に、当該2160個のSAD値を用いて、領域平均AVを算出し(S211)、算出した領域平均AVを、比較判定部152および第1平均遅延部153へ送信する。
【0116】
領域平均AVは、図3のフレーム(例えば、処理対象フレーム)における1つの領域に対応する複数のSAD値の平均値である。領域平均AVは、2160個のSAD値の合計値を、2160で除算することにより得られる値である。
【0117】
なお、領域平均AVは、2160個のSAD値の合計値を2進数で表現した場合において、下位ビットを切り捨てることにより得られる値であってもよい。
【0118】
なお、SAD平均算出部151は、各SAD値を所定の値でクリップしてから、クリップされた各SAD値の合計値を使用して、領域平均AVを算出してもよい。これにより、極めて大きなSAD値が、シーンチェンジの判定に過剰に影響を与えることを防ぐことが可能である。
【0119】
第1平均遅延部153は、1枚のフレームに対応する15個の領域にそれぞれ対応する15個の領域平均AVを保持可能なFIFOメモリと、FIFOメモリを制御する制御部とを含む。
【0120】
第1平均遅延部153は、処理対象フレームに対応する領域平均AVを受信する毎に、当該処理対象フレームより1つ前のフレーム(以下、過去フレームAともいう)における領域平均AV(以下、領域平均PAV1という)を、第2平均遅延部154および過去平均算出部155へ送信する。領域平均AVおよび領域平均PAV1の各々は、異なるフレームの同じ位置の領域に対応する値である。
【0121】
ここで、領域平均AVが、一例として、図2のフレームF11の領域1に対応する値であるとする。この場合、領域平均PAV1は、図2のフレームF12の領域1に対応する値である。
【0122】
第2平均遅延部154は、第1平均遅延部153と同様なFIFOメモリと、FIFOメモリを制御する制御部とを含む。すなわち、第2平均遅延部154は、1枚のフレームに対応する15個の領域にそれぞれ対応する15個の領域平均PAV1を保持可能である。
【0123】
第2平均遅延部154は、過去フレームAに対応する領域平均PAV1を受信する毎に、当該過去フレームAより1つ前のフレーム(以下、過去フレームBともいう)における領域平均PAV1(以下、領域平均PAV2という)を、過去平均算出部155へ送信する。領域平均PAV1および領域平均PAV2の各々は、異なるフレームの同じ位置の領域に対応する値である。
【0124】
第1平均遅延部153および第2平均遅延部154が行う上記処理により、過去平均算出部155は、領域平均PAV1および領域平均PAV2をほぼ同時に受信する。
【0125】
ここで、領域平均AVが、一例として、図2のフレームF11の領域1に対応する値であるとする。この場合、領域平均PAV1は、フレームF12の領域1に対応する値である。また、この場合、領域平均PAV2は、フレームF13の領域1に対応する値である。
【0126】
なお、フレームF12,F13は、フレームF11と連続するフレームであって、かつ、フレームF11の直前の2枚のフレームである。
【0127】
前述したように、処理対象フレームに含まれる各領域を、第1領域という。また、前述したように、処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、処理対象フレームの第1領域と同じ位置の領域を、第2領域という。
【0128】
すなわち、領域平均PAV1は、処理対象フレームの直前のフレームにおける、処理対象フレームの第1領域と同じ位置の第2領域に対応する値である。また、領域平均PAV2は、処理対象フレームより2つ前のフレームにおける、処理対象フレームの第1領域と同じ位置の第2領域に対応する値である。
【0129】
過去平均算出部155は、領域平均PAV1および領域平均PAV2を受信する毎に、過去平均PAVを算出し(S212)、算出した過去平均PAVを、比較判定部152へ送信する。
【0130】
過去平均PAVは、領域平均PAV1および領域平均PAV2の平均値である。すなわち、領域平均PAV1および領域平均PAV2の合計値を2で除算することにより得られる値である。すなわち、過去平均PAVは、処理対象フレームの直前の2枚のフレームにおいて、同じ位置の領域に対応する領域平均PAV1および領域平均PAV2の平均値である。
【0131】
比較判定部152は、領域平均AVおよび過去平均PAVをほぼ同時に受信する。この場合、比較判定部152が受信する領域平均AVおよび過去平均PAVの各々は、異なるフレームにおける同じ位置の領域に対応する値である。
【0132】
比較判定部152は、1つの領域に対応する領域平均AVおよび過去平均PAVを受信する毎に、シーンチェンジ判定処理(S213)を行う。
【0133】
シーンチェンジ判定処理では、比較判定部152が、領域平均AVと、過去平均PAVとを比較することにより、領域平均AVに対応する領域において、シーンチェンジがあるか否かを判定する。なお、領域平均AVが、過去平均PAVより大きいほど、領域平均AVに対応する領域においてシーンチェンジがある可能性が高い。
【0134】
ここで、シーンチェンジは、処理対象フレームにおける第1領域内の画像と、処理対象フレームの直前のn枚のフレームの各々における第2領域内の画像とが類似していない状態である。例えば、シーンチェンジは、当該第1領域内の画像と、当該第2領域内の画像とを用いて動きベクトルを検出する場合、正常な動きベクトルを検出できない程、当該第1領域内の画像と当該第2領域内の画像とが類似していない状態である。
【0135】
具体的には、比較判定部152は、(領域平均AV/過去平均PAV)の式(以下、判定式という)により算出される値(以下、判定値という)によって、シーンチェンジがあるか否かを判定する。比較判定部152は、当該判定の結果を示す判定結果情報RTを、ベクトル補正部160へ送信する。
【0136】
判定結果情報RTは、以下の0〜3のいずれかを示す。判定結果情報RTが送信されることにより、1つの領域に対応するシーンチェンジ判定処理は終了する。
【0137】
判定値が2以下の場合、すなわち、領域平均AVが、過去平均PAVの2倍以下の場合、比較判定部152は、シーンチェンジはないと判定する。この場合、送信される判定結果情報RTは0を示す。
【0138】
判定値が2より大きい場合、比較判定部152は、シーンチェンジがあると判定する。具体的には、判定値が、(2<判定値≦4)の式を満たす場合、比較判定部152は、シーンチェンジがある可能性は、例えば、5〜30%(低い)と判定する。この場合、送信される判定結果情報RTは1を示す。
【0139】
判定値が、(4<判定値≦16)の式を満たす場合、比較判定部152は、シーンチェンジがある可能性は、例えば、31〜70%(中程度)と判定する。この場合、送信される判定結果情報RTは2を示す。
【0140】
判定値が、(16<判定値)の式を満たす場合、比較判定部152は、シーンチェンジがある可能性は、例えば、71〜100%(高い)と判定する。この場合、送信される判定結果情報RTは3を示す。
【0141】
比較判定部152は、領域1〜15の各々に対応する領域平均AVおよび過去平均PAVを受信することにより、シーンチェンジ判定処理を15回繰り返し行う。これにより、処理対象フレームにおける全ての領域に対応する判定結果情報RTがベクトル補正部160へ送信される。
【0142】
なお、シーンチェンジ判定部150が、処理対象フレームにおける1つの領域に対応する1番目のSAD値を受信してから、当該1つの領域に対応する判定結果情報RTをベクトル補正部160へ送信するまでの時間を、領域判定処理時間とする。
【0143】
前述したように、ベクトル遅延部140は、ベクトル検出部120から順次受信する複数の動きベクトルMVを、領域判定処理時間だけ遅延させて、ベクトル補正部160へ送信する。
【0144】
これにより、ベクトル補正部160が、処理対象フレームの1つの領域に対応する判定結果情報RTを受信した時点において、ベクトル補正部160は、当該1つの領域に対応する2160個の動きベクトルMVをベクトル遅延部140から受信していることになる。
【0145】
例えば、ベクトル補正部160が、処理対象フレームの領域1に対応する判定結果情報RTを受信した時点において、ベクトル補正部160は、当該領域1に対応する2160個の動きベクトルMVをベクトル遅延部140から受信していることになる。
【0146】
シーンチェンジ判定部150は、判定処理(S200)を、処理対象フレームに含まれる全ての領域の数(15)だけ繰り返し行う。これにより、シーンチェンジ判定部150は、全領域判定処理(S201)を行ったことになる。
【0147】
全領域判定処理(S201)は、シーンチェンジ判定部150が、処理対象フレーム内の第1領域毎に、シーンチェンジがあるか否かを判定する処理である。シーンチェンジがあるか否かの判定には、第1領域に含まれる各ブロックに対応する相関値(SAD値)と、該処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域(以下、第2領域という)に含まれる各ブロックに対応する相関値(SAD値)とが用いられる。
【0148】
ここで、全領域判定処理(S201)が、処理対象フレームを含む連続するn(3以上の整数)枚のフレームの数(3以上の整数)だけ繰り返し行われることにより、SAD平均算出部151は、以下の算出処理Nを行ったことになる。
【0149】
算出処理Nは、SAD平均算出部151が、処理対象フレーム内の第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値(SAD値)の平均である第1平均値(領域平均AV)を算出するとともに、処理対象フレームの直前のn枚のフレームの各々における、該第1領域と同じ位置の第2領域に含まれる各ブロックに対応する相関値(SAD値)の平均である第2平均値(領域平均PAV1,PAV2)を算出する処理である。
【0150】
再び、図1を参照して、ベクトル補正部160は、判定結果情報RTを受信する毎に、ベクトル補正処理を行なう。すなわち、ベクトル補正処理は、領域毎に行なわれる。
【0151】
ベクトル補正処理では、ベクトル補正部160が、判定結果情報RTに対応する領域の領域ブロック行列における行の数だけ、ブロック行単位補正処理を行う。
【0152】
図8は、ベクトル補正部160が行う処理を示すフローチャートである。
【0153】
ここで、領域ブロック行列は、9行240列の行列であるとする。この場合、ブロック行単位補正処理(S311)は、領域ブロック行列の1〜9行の順で、処理対象となる行を変更しながら、9回行われる。処理対象となる行は、前述したブロック行である。以下においては、ブロック行単位補正処理において、処理対象となるブロック行を、対象ブロック行という。
【0154】
また、ベクトル補正部160は、判定結果情報RTを受信する毎に、ゲイン変化処理を行なう。すなわち、ゲイン変化処理は、領域毎に行なわれる。なお、ゲイン変化処理は、ブロック行単位補正処理とは、独立して行われる処理である。
【0155】
図9は、ベクトル補正部160が行う処理を示すフローチャートである。
【0156】
詳細は後述するが、ゲイン変化処理(S411)では、ベクトル補正部160が、受信した判定結果情報RTが示す値に基づいて、ゲイン値を、徐々に増加または徐々に減少させる。ゲイン値は、動きベクトルMVを補正するための値である。ゲイン値は、0〜1の範囲の値である。なお、ゲイン値の初期値は1である。ゲイン値の上限値は、1である。
【0157】
なお、ゲイン値は、0〜1の範囲の値に限定されず、他の範囲の値であってもよい。
【0158】
具体的には、ゲイン変化処理(S411)では、判定結果情報RTが3を示す場合、ベクトル補正部160が、対象ブロック行が変更される毎に、最新のゲイン値から6/128減算した値を、ブロック行単位補正処理で使用するゲイン値とする。なお、対象ブロック行が変更される前においても、ベクトル補正部160は、最新のゲイン値から6/128減算した値をブロック行単位補正処理で使用するゲイン値とする。
【0159】
ここで、ゲイン値が、例えば、1であるとする。この場合、9回のブロック行単位補正処理のうち、1番目のブロック行単位補正処理で使用されるゲイン値は、122/128である。また、2番目のブロック行単位補正処理で使用されるゲイン値は116/128である。3番目のブロック行単位補正処理で使用されるゲイン値は110/128である。また、最終の9番目のブロック行単位補正処理で使用されるゲイン値は74/128である。
【0160】
判定結果情報RTが2を示す場合、ベクトル補正部160は、対象ブロック行が変更される毎に、最新のゲイン値から2/128減算した値を、ブロック行単位補正処理で使用するゲイン値とする。なお、対象ブロック行が変更される前においても、ベクトル補正部160は、最新のゲイン値から2/128減算した値をブロック行単位補正処理で使用するゲイン値とする。
【0161】
判定結果情報RTが1を示す場合、ベクトル補正部160は、対象ブロック行が変更される毎に、最新のゲイン値から1/128減算した値を、ブロック行単位補正処理で使用するゲイン値とする。なお、対象ブロック行が変更される前においても、ベクトル補正部160は、最新のゲイン値から1/128減算した値をブロック行単位補正処理で使用するゲイン値とする。
【0162】
なお、判定結果情報RTが1〜3のいずれかを示す場合であって、かつ、ゲイン値を減少させた後の値が負の値である場合、ベクトル補正部160は、ゲイン値を0とする。
【0163】
また、判定結果情報RTが1〜3のいずれかを示す場合であって、かつ、最新のゲイン値が0である場合、ベクトル補正部160は、対象ブロック行が変更されても、ゲイン値を減少(変化)させない。
【0164】
判定結果情報RTが1〜3のいずれかを示す場合は、判定結果情報RTに対応する領域において、比較判定部152によりシーンチェンジがあると判定された場合である。
【0165】
すなわち、シーンチェンジがあると判定された領域では、対象ブロック行が垂直方向に変更される毎に、ベクトル補正部160は、ゲイン値を0に向かって徐々に減少させる。つまり、シーンチェンジがあると判定された領域の垂直方向において、ブロック行単位で、ベクトル補正部160は、ゲイン値を0に向かって徐々に減少させる。
【0166】
なお、判定結果情報RTが1を示す場合、ゲイン値は変更しなくてもよい。
【0167】
判定結果情報RTが0を示す場合であって、かつ、最新のゲイン値が、上限値である1未満の場合、ベクトル補正部160は、対象ブロック行が変更される毎に、最新のゲイン値に10/128加算した値を、ブロック行単位補正処理で使用するゲイン値とする。
【0168】
なお、ゲイン値を増加させた後の値が1より大きい場合、ベクトル補正部160は、ゲイン値を1とする。また、判定結果情報RTが1を示す場合であって、かつ、最新のゲイン値が1である場合、ベクトル補正部160は、対象ブロック行が変更されても、ゲイン値を増加(変化)させない。
【0169】
判定結果情報RTが0を示す場合は、判定結果情報RTに対応する領域において、比較判定部152によりシーンチェンジがないと判定された場合である。
【0170】
すなわち、シーンチェンジがないと判定された領域では、対象ブロック行が垂直方向に変更される毎に、ベクトル補正部160は、ゲイン値を上限値である1に向かって徐々に増加させる。つまり、シーンチェンジがないと判定された領域の垂直方向において、ブロック行単位で、ベクトル補正部160は、ゲイン値を1に向かって徐々に増加させる。
【0171】
図8のブロック行単位補正処理(S311)では、ベクトル補正部160が、後述するブロック行群に対応する240個の動きベクトルMVの水平成分値および垂直成分値に、最新のゲイン値を乗算することにより、240個の動きベクトルMVを補正する。
【0172】
ここで、ブロック行群は、1つの領域に対応する2160個の動きベクトルMVのうち、領域ブロック行列における対象ブロック行に並ぶ240個のブロックからなるブロック群である。上記のブロック行群に対応する240個の動きベクトルMVは、それぞれ、対象ブロック行に並ぶ240個のブロックに対応する。
【0173】
例えば、9回のブロック行単位補正処理のうち、1番目のブロック行単位補正処理における対象ブロック行は、領域ブロック行列における1行目の行である。また、例えば、9番目のブロック行単位補正処理における対象ブロック行は、領域ブロック行列における9行目の行である。
【0174】
以下においては、補正後の動きベクトルMVを、動きベクトルAMVと表記する。
【0175】
すなわち、ブロック行単位補正処理では、ベクトル補正部160が、ブロック行群に対応する240個の動きベクトルMVの水平成分値および垂直成分値に、最新のゲイン値を乗算する。これにより、ベクトル補正部160は、240個の動きベクトルAMVを生成する。
【0176】
各動きベクトルAMVは、映像信号SGが示す処理対象フレームを補正するための動きベクトルである。すなわち、各動きベクトルAMVは、処理対象フレームを含む複数のフレームから構成される動画像を補正するための動きベクトルである。
【0177】
また、ブロック行単位補正処理では、ベクトル補正部160が、各動きベクトルMVを補正する毎に、各動きベクトルAMVを、補正部170へ送信する。
【0178】
なお、ゲイン値が1の場合、動きベクトルAMVは、動きベクトルMVと同じである。この場合、動きベクトルAMVは、補正されてないことになる。
【0179】
ブロック行単位補正処理(S311)が、判定結果情報RTに対応する領域の領域ブロック行列における行(ブロック行)の数だけ行われると、当該判定結果情報RTに対応するベクトル補正処理(S300)は終了する。
【0180】
判定結果情報RTに対応する前述したゲイン変化処理(S411)が行われるとともに、当該判定結果情報RTに対応するベクトル補正処理(S300)が行われることにより、ベクトル補正部160は、以下の生成処理Nを行ったことになる。生成処理Nは、以下の生成処理NAおよび生成処理NBを含む。
【0181】
生成処理NAは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがあると判定された場合、該シーンチェンジがあると判定された第1領域に含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を0に向かって徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0182】
生成処理NBは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがないと判定され、かつ、最新のゲイン値が上限値未満である場合、シーンチェンジがないと判定された第1領域に含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を上限値に向かって徐々に増加させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0183】
また、生成処理NAは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがあると判定された場合、処理対象フレームに含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理でもある。
【0184】
ベクトル補正部160が、処理対象フレームにおける領域1〜15にそれぞれ対応する15個の判定結果情報RTを順次受信することにより、ゲイン変化処理(S411)およびベクトル補正処理(S300)が15回行われる。これにより、処理対象フレームに対するゲイン変化処理(S411)およびベクトル補正処理(S300)は終了する。
【0185】
ここで、ベクトル検出部120が、映像信号SGを受信してから、当該映像信号SGが示す処理対象フレームに対するベクトル補正処理(S300)が終了するまでの時間を、ベクトル補正処理時間とする。
【0186】
映像遅延部110は、映像信号SGを、ベクトル補正処理時間だけ遅延させて、補正部170へ送信する。
【0187】
これにより、補正部170が映像信号SGを受信した時点において、補正部170は、当該映像信号SGが示す処理対象フレームに対応する32400個の動きベクトルAMVをベクトル補正部160から受信していることになる。
【0188】
ここで、映像信号SGが示す処理対象フレームが、例えば、図2のフレームF11であるとする。この場合、補正部170は、フレームF11を示す映像信号SGを受信した時点において、フレームF11に対応する32400個の動きベクトルAMVをベクトル補正部160から受信していることになる。
【0189】
補正部170は、処理対象フレームに対応する32400個の動きベクトルAMVを受信する毎に、32400個の動きベクトルAMVを用いて、当該処理対象フレームを補正する。これにより、補正後のフレーム(以下、補正済フレームという)が得られる。
【0190】
補正部170は、処理対象フレームを補正する毎に、補正済フレームを、表示部180へ送信する。
【0191】
表示部180は、LCDパネル(Liquid Crystal Display Panel)を使用した装置である。なお、表示部180は、上記以外の表示方式のパネル(例えば、PDP(Plasma Display Panel))を使用した装置であってもよい。
【0192】
表示部180は、補正済フレームを受信する毎に、当該補正済フレームを表示する。すなわち、表示部180は、複数のフレームからなる動画像を表示する。
【0193】
ここで、一例として、比較判定部152により、処理対象フレームの領域1〜15の全てにおいてシーンチェンジがあると判定されたとする。具体的には、比較判定部152により、領域1〜15の全てにおいてシーンチェンジがある可能性が高いと判定されたとする。すなわち、連続する複数の領域の各々において、シーンチェンジがある可能性が高いと判定されたとする。
【0194】
この場合、ベクトル補正部160は、領域1〜15に対応する15個の判定結果情報RTを、順次、比較判定部152から受信する。この場合、15個の判定結果情報RTの各々は3を示す。
【0195】
そして、ベクトル補正部160は、前述したように、判定結果情報RTを受信する毎に、ゲイン変化処理(S411)およびベクトル補正処理(S300)を行なう。
【0196】
この場合、ベクトル補正部160は、前述した生成処理NAを行ったことになる。
【0197】
前述したように、生成処理NAは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがあると判定された場合、処理対象フレームに含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0198】
具体的には、生成処理NAは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがあると判定された場合、該シーンチェンジがあると判定された第1領域に含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を0に向かって徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0199】
この場合のゲイン値の変化の状態は、図10に示されるようになる。
【0200】
図10は、ゲイン値の変化の状態の一例を示す図である。なお、図10は、処理対象フレームおよび当該処理対象フレームの各領域に対応する判定結果情報RTも示す。具体的には、図10は、処理対象フレームの垂直方向に対応したゲイン値の変化の状態を示す。
【0201】
図10に示されるように、ゲイン値は、処理対象フレームの垂直方向において、領域1の上端から領域3に向かって、ブロック行単位で、0に向かって徐々に減少している。領域3の中央付近のブロック行から下方向の各ブロック行に対応するゲイン値は0である。
【0202】
なお、前述したベクトル補正処理(S300)が行われることにより、各ブロック行に対応する図10のゲイン値を利用して、各ブロック行に対応する複数の動きベクトルMVが補正される。すなわち、処理対象フレームの上端から下端に向かって、各ブロック行に対応する複数の動きベクトルMVの値が徐々に小さくなるように補正される。
【0203】
この場合、上記補正により生成される複数の動きベクトルAMVのうち、領域3の中央付近のブロック行から領域15の下端までの各ブロック行に対応する各動きベクトルAMVの値は0となる。
【0204】
また、生成される複数の動きベクトルAMVのうち、領域1の上端から領域3の中央付近までの各ブロック行に対応する複数の動きベクトルAMVの値は、垂直方向において、0に向かって徐々に小さくなる。
【0205】
すなわち、垂直方向に連続して並ぶ複数のブロックにそれぞれ対応する複数の動きベクトルは、値の急激な変化が抑制されたベクトルである。
【0206】
したがって、ベクトル補正処理により、図10の処理対象フレームの補正のために生成される複数の動きベクトルAMVは、値の急激な変化が抑制された動きベクトルである。
【0207】
つまり、処理対象フレームの補正のために生成される複数の動きベクトルAMVは、補正対象の処理対象フレームにおいて、シーンチェンジを起因とする画質劣化を抑制するためのベクトルである。
【0208】
したがって、シーンチェンジを起因とする、補正後の処理対象フレーム(画像)の画質劣化を抑制するための複数の動きベクトルAMVを生成することができる。そのため、生成された複数の動きベクトルAMVを使用して補正される処理対象フレームにおいて、シーンチェンジを起因とする画質劣化を抑制することができる。
【0209】
また、他の例として、1つの領域において、シーンチェンジがあると誤判定された場合について説明する。シーンチェンジがあると誤判定された場合は、例えば、フレーム内の1つの領域の一部に光る領域が発生した場合、例えば、光の反射やライトの点灯等があった場合である。
【0210】
ここで、比較判定部152により、処理対象フレームの領域1〜15のうち、1つの領域(例えば、領域2)において、シーンチェンジがあると判定されたとする。具体的には、比較判定部152により、領域2においてシーンチェンジがある可能性が高いと判定されたとする。また、比較判定部152により、領域2以外の各領域においてシーンチェンジがある可能性がないと判定されたとする。
【0211】
この場合、ベクトル補正部160は、領域1〜15に対応する15個の判定結果情報RTを、順次、比較判定部152から受信する。この場合、15個の判定結果情報RTのうち14個の判定結果情報RTは0を示す。また、15個の判定結果情報RTのうち1個の判定結果情報RTは、3を示す。
【0212】
そして、ベクトル補正部160は、前述したように、判定結果情報RTを受信する毎に、ゲイン変化処理(S411)およびベクトル補正処理(S300)を行なう。
【0213】
この場合、ベクトル補正部160は、前述した生成処理Nを行ったことになる。生成処理Nは、前述した生成処理NAおよび生成処理NBを含む。
【0214】
生成処理NAは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがあると判定された場合、該シーンチェンジがあると判定された第1領域に含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を0に向かって徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0215】
生成処理NBは、ベクトル補正部160が、シーンチェンジ判定部150によりシーンチェンジがないと判定され、かつ、最新のゲイン値が上限値未満である場合、シーンチェンジがないと判定された第1領域に含まれる垂直方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を上限値に向かって徐々に増加させるとともに、該ゲイン値を、該1つのブロックに対応する検出された動きベクトルに乗算することにより、動画像に含まれる処理対象フレームを補正するための各動きベクトルを生成する処理である。
【0216】
この場合のゲイン値の変化の状態は、図11に示されるようになる。
【0217】
図11は、ゲイン値の変化の状態の一例を示す図である。なお、図11は、処理対象フレームおよび当該処理対象フレームの各領域に対応する判定結果情報RTも示す。具体的には、図11は、処理対象フレームの垂直方向に対応したゲイン値の変化の状態を示す。
【0218】
図11に示されるように、ゲイン値は、処理対象フレームの垂直方向において、領域2の上端から下端に向かって、ブロック行単位で、0に向かって徐々に減少している。また、ゲイン値は、処理対象フレームの垂直方向において、領域3の上端から領域3の中央付近に向かって、ブロック行単位で、上限値(1)に向かって徐々に増加している。
【0219】
なお、前述した図8のベクトル補正処理(S300)が行われることにより、各ブロック行に対応する図11のゲイン値を利用して、各ブロック行に対応する複数の動きベクトルMVが補正される。
【0220】
この場合、上記補正により生成される複数の動きベクトルAMVのうち、領域2の上端から領域2の下端までの各ブロック行に対応する複数の動きベクトルAMVの値は、垂直方向において、徐々に小さくなる。
【0221】
また、上記補正により生成される複数の動きベクトルAMVのうち、領域3の上端から領域3の中央付近までの各ブロック行に対応する複数の動きベクトルAMVの値は、垂直方向において、徐々に大きくなる。
【0222】
すなわち、領域2,3において、垂直方向に連続して並ぶ複数のブロックにそれぞれ対応する複数の動きベクトルは、値の急激な変化が抑制されたベクトルである。また、複数の動きベクトルAMVの一部の値が小さい。
【0223】
したがって、ベクトル補正処理により、図11の処理対象フレームの補正のために生成される複数の動きベクトルAMVは、値の急激な変化が抑制された動きベクトルである。
【0224】
つまり、処理対象フレームの補正のために生成される複数の動きベクトルAMVは、補正対象の処理対象フレームにおいて、シーンチェンジを起因とする画質劣化を抑制するためのベクトルである。
【0225】
したがって、シーンチェンジを起因とする、補正後の処理対象フレーム(画像)の画質劣化を抑制するための複数の動きベクトルAMVを生成することができる。そのため、生成された複数の動きベクトルAMVを使用して補正される処理対象フレームにおいて、シーンチェンジを起因とする画質劣化を抑制することができる。
【0226】
以上により、図10で説明したように、本実施の形態によれば、処理対象フレームの全領域においてシーンチェンジがある場合であっても、処理対象フレームの大部分に対応する各動きベクトルAMVの値を0にすることができる。
【0227】
また、図11で説明したように、本実施の形態によれば、1つの領域において、シーンチェンジが発生した場合、フレームの大部分に対応する各動きベクトルAMVの値はそのままで、フレームの一部に対応する各動きベクトルAMVの値のみ徐々に変化することができる。そのため、変化点(例えば、図11の領域2,3の境界)やシーンチェンジの誤判定を起因とする画質の劣化を目立ちにくくすることができる。
【0228】
また、フレームを垂直方向に分割した領域単位でシーンチェンジの判定を行うことにより、これらの領域の垂直方向の大きさに対応する遅延でシーンチェンジを検出して動きベクトルを補正することができる。
【0229】
また、動きベクトルの大きさを垂直方向で連続的に徐々に変化させることにより、シーンチェンジの誤判定がされた場合に、動きベクトルを用いた補間フレームの生成や表示の補正を行った際に発生するノイズ等の画質低下を目立ちにくくすることができる。すなわち、シーンチェンジの誤判定がされた場合に画質に与える影響を小さくすることができる。
【0230】
なお、本実施の形態では、過去平均PAVは、処理対象フレームの直前の2枚のフレームにおいて、同じ位置の領域に対応する領域平均PAV1および領域平均PAV2を用いて算出されていたがこれに限定されない。
【0231】
例えば、過去平均PAVは、処理対象フレームの直前の1枚のフレームの領域に対応する領域平均PAV1であってもよい。
【0232】
この場合、図7の第2平均遅延部154および過去平均算出部155は不要となり、領域平均PAV1は、比較判定部152へ送信される。
【0233】
そして、比較判定部152は、領域平均AVと、処理対象フレームの直前の1枚のフレームに対応する領域平均PAV1とを用いて、シーンチェンジがあるか否かを判定する。この場合のシーンチェンジの判定の処理は、前述したシーンチェンジ判定処理と同様なので詳細な説明は繰り返さない。
【0234】
また、過去平均PAVは、処理対象フレームの直前の3枚以上のフレームにおいて、同じ位置の領域に対応する3つ以上の領域平均AVを用いて算出されてもよい。
【0235】
SAD値は、動きベクトルの検出の対象となる映像信号がI/P(インターレス/プログレッシブ)変換された信号の場合、2フレーム周期で変動することがある。そのため、このような信号を想定した場合、処理対象フレームの直前の2フレーム以上の領域平均AVの平均をシーンチェンジの判定に使用することが望ましい。
【0236】
さらに2−3プルダウンの映像を想定した場合、同じフレームが最大3フレーム連続するため、処理対象フレームの直前の3フレーム以上の領域平均AVの平均をシーンチェンジの判定に使用することが望ましい。
【0237】
なお、シーンチェンジ判定部150は、フレーム内でシーンチェンジがあると判定された領域の数が所定の数を超えた場合、フレーム全体でシーンチェンジがあると判定してもよい。
【0238】
この場合、シーンチェンジ判定部150は、シーンチェンジの可能性の大小を考慮し、判定結果情報RTが示す値を15個の領域分合計した値を所定の値と比較して、フレームとしてのシーンチェンジの判定を行う。これにより、フレーム遅延が生じるが、より高い精度でシーンチェンジの判定を行うことができる。
【0239】
なお、動きベクトル生成装置10は、ベクトル遅延部140を備えていなくてもよい。この場合、シーンチェンジの判定を行う領域の大きさ分、ゲイン値の変化が遅れることとなるが、フレームの大部分のベクトルを0にする効果は同等に得ることができる。
【0240】
本実施の形態における、ブロックの大きさ、領域の大きさ等は、本実施の形態で説明した大きさに限定されず、異なる大きさでもよい。また、シーンチェンジの判定を行う領域は互いに重なりあうように配置されてもよい。
【0241】
<第1の実施の形態の変形例>
次に、第1の実施の形態とは異なるシーンチェンジの判定方法について説明する。
【0242】
図12は、第1の実施の形態の変形例における表示装置1000Aの主要な構成を示すブロック図である。
【0243】
図12を参照して、表示装置1000Aは、図1の表示装置1000と比較して、動きベクトル生成装置10の代わりに動きベクトル生成装置10Aを備える点が異なる。それ以外の構成および機能は、表示装置1000と同様なので詳細な説明は繰り返さない。
【0244】
動きベクトル生成装置10Aは、動きベクトル生成装置10と比較して、シーンチェンジ判定部150の代わりにシーンチェンジ判定部150Aを含む点が異なる。それ以外の構成および機能は、動きベクトル生成装置10と同様なので詳細な説明は繰り返さない。
【0245】
以下、第1の実施の形態と異なる点を主に説明する。
【0246】
ベクトル検出部120は、第1の実施の形態と同様に、ベクトル検出処理(S111)を行う。ベクトル検出処理において、ベクトル検出部120は、動きベクトルMVを検出する毎に、検出した当該動きベクトルMVおよび当該動きベクトルMVに対応するSAD値を、それぞれ、ベクトル遅延部140およびシーンチェンジ判定部150Aへ送信する。
【0247】
シーンチェンジ判定部150Aは、処理対象フレーム内の第1領域毎に判定処理Aを行なう。
【0248】
図13は、第1の実施の形態の変形例におけるシーンチェンジ判定部150Aが行う処理を示すフローチャートである。
【0249】
図14は、第1の実施の形態の変形例におけるシーンチェンジ判定部150Aの構成を示すブロック図である。
【0250】
図14を参照して、シーンチェンジ判定部150Aは、SAD比率算出部151Aと、比較判定部152Aと、第1比率遅延部153Aと、第2比率遅延部154Aと、過去平均算出部155Aとを含む。
【0251】
判定処理A(S200A)では、SAD比率算出部151Aが、処理対象フレームにおける各領域に対応する2160個のSAD値を受信する毎に、当該2160個のSAD値を用いて、領域ブロック比率BRを算出し(S211A)、算出した領域ブロック比率BRを、比較判定部152Aおよび第1比率遅延部153Aへ送信する。
【0252】
領域ブロック比率BRは、カウント数Sを、所定のビット数(例えば、8ビット)に正規化した値である。ここで、カウント数Sは、図3のフレーム(例えば、処理対象フレーム)における1つの領域に対応する2160個のSAD値のうち、所定の閾値より大きいSAD値の個数である。
【0253】
領域ブロック比率BRは、例えば、2進数で表現されたカウント数Sの下位4ビットを切り捨てることにより正規化された値である。
【0254】
具体的には、SAD比率算出部151Aは、2160個のSAD値のうち、所定の閾値より大きいSAD値の個数をカウントすることにより、カウント数Sを算出する。そして、SAD比率算出部151Aは、カウント数Sを、所定のビット数に正規化することにより領域ブロック比率BRを算出する。
【0255】
すなわち、領域ブロック比率BRは、シーンチェンジの判定の対象となる1つの領域における、SAD値の大きなブロックの比率を示すことになる。
【0256】
なお、SAD値の大きなブロックとは、正しいベクトルが検出できていない可能性が高いブロックに相当する。そのため、領域ブロック比率BRは、正しい動きベクトルが検出されていない可能性が高いブロックの比率と考えることもできる。
【0257】
なお、領域ブロック比率BRは、上記算出方法で算出された値に限定されず、例えば、カウント数Sを、2160で除算した値であってもよい。
【0258】
第1比率遅延部153Aは、1枚のフレームに対応する15個の領域にそれぞれ対応する15個の領域ブロック比率BRを保持可能なFIFOメモリと、FIFOメモリを制御する制御部とを含む。
【0259】
第1比率遅延部153Aは、処理対象フレームに対応する領域ブロック比率BRを受信する毎に、当該処理対象フレームより1つ前のフレーム(以下、過去フレームAともいう)における領域ブロック比率BR(以下、領域ブロック比率PBR1という)を、第2比率遅延部154Aおよび過去平均算出部155Aへ送信する。領域ブロック比率BRおよび領域ブロック比率PBR1の各々は、異なるフレームの同じ位置の領域に対応する値である。
【0260】
第2比率遅延部154Aは、第1比率遅延部153Aと同様なFIFOメモリと、FIFOメモリを制御する制御部とを含む。すなわち、第2比率遅延部154Aは、1枚のフレームに対応する15個の領域にそれぞれ対応する15個の領域ブロック比率PBR1を保持可能である。
【0261】
第2比率遅延部154Aは、過去フレームAに対応する領域ブロック比率PBR1を受信する毎に、当該過去フレームAより1つ前のフレーム(以下、過去フレームBともいう)における領域ブロック比率PBR1(以下、領域ブロック比率PBR2という)を、過去平均算出部155Aへ送信する。領域ブロック比率PBR1および領域ブロック比率PBR2の各々は、異なるフレームの同じ位置の領域に対応する値である。
【0262】
第1比率遅延部153Aおよび第2比率遅延部154Aが行う上記処理により、過去平均算出部155Aは、領域ブロック比率PBR1および領域ブロック比率PBR2をほぼ同時に受信する。
【0263】
ここで、領域ブロック比率BRが、一例として、図2のフレームF11の領域1に対応する値であるとする。この場合、領域ブロック比率PBR1は、フレームF12の領域1に対応する値である。また、この場合、領域ブロック比率PBR2は、フレームF13の領域1に対応する値である。
【0264】
前述したように、処理対象フレームに含まれる各領域を、第1領域という。また、前述したように、処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、処理対象フレームの第1領域と同じ位置の領域を、第2領域という。
【0265】
すなわち、領域ブロック比率PBR1は、処理対象フレームの直前のフレームにおける、処理対象フレームの第1領域と同じ位置の第2領域に対応する値である。また、領域ブロック比率PBR2は、処理対象フレームより2つ前のフレームにおける、処理対象フレームの第1領域と同じ位置の第2領域に対応する値である。
【0266】
過去平均算出部155Aは、領域ブロック比率PBR1および領域ブロック比率PBR2を受信する毎に、過去ブロック比率PBRを算出し(S212A)、算出した過去ブロック比率PBRを、比較判定部152Aへ送信する。
【0267】
過去ブロック比率PBRは、領域ブロック比率PBR1および領域ブロック比率PBR2の平均値である。すなわち、領域ブロック比率PBR1および領域ブロック比率PBR2の合計値を2で除算することにより得られる値である。すなわち、過去ブロック比率PBRは、処理対象フレームの直前の2枚のフレームにおいて、同じ位置の領域に対応する領域ブロック比率PBR1および領域ブロック比率PBR2の平均値である。
【0268】
比較判定部152Aは、領域ブロック比率BRおよび過去ブロック比率PBRをほぼ同時に受信する。この場合、比較判定部152Aが受信する領域ブロック比率BRおよび過去ブロック比率PBRの各々は、異なるフレームにおける同じ位置の領域に対応する値である。
【0269】
比較判定部152Aは、1つの領域に対応する領域ブロック比率BRおよび過去ブロック比率PBRを受信する毎に、シーンチェンジ判定処理A(S213A)を行う。
【0270】
シーンチェンジ判定処理Aは、図6のステップS213のシーンチェンジ判定処理の説明において、比較判定部152、領域平均AV、過去平均PAVおよびシーンチェンジ判定処理を、それぞれ、比較判定部152A、領域ブロック比率BR、過去ブロック比率PBRおよびシーンチェンジ判定処理Aに置き換えた説明の処理と同様なので詳細な説明は繰り返さない。
【0271】
これにより、比較判定部152Aが、領域ブロック比率BRと、過去ブロック比率PBRとを比較することにより、領域ブロック比率BRに対応する領域において、シーンチェンジがあるか否かを判定する。また、比較判定部152Aは、判定結果情報RTを、ベクトル補正部160へ送信する。
【0272】
なお、シーンチェンジ判定部150Aが、処理対象フレームにおける1つの領域に対応する1番目のSAD値を受信してから、当該1つの領域に対応する判定結果情報RTをベクトル補正部160へ送信するまでの時間も、前述の領域判定処理時間とする。
【0273】
なお、シーンチェンジ判定処理Aは、異なる複数のフレームの各々における同じ位置の領域において、SAD値が大きなブロックの数が過去に比べて大きく増えたことを判定する処理である。SAD値が大きなブロック、すなわち正しいベクトルが検出されてない可能性が高いブロックが大きく増えた場合、シーンチェンジの可能性が高いと考える。
【0274】
シーンチェンジ判定部150Aは、判定処理A(S200A)を、処理対象フレームに含まれる全ての領域の数(15)だけ繰り返し行う。これにより、シーンチェンジ判定部150Aは、全領域判定処理A(S201A)を行ったことになる。
【0275】
また、全領域判定処理A(S201A)が、処理対象フレームを含む連続するn(3以上の整数)枚のフレームの数(3以上の整数)だけ行われることにより、SAD比率算出部151Aは、以下の算出処理NAを行ったことになる。
【0276】
算出処理NAは、以下の算出処理NA1と、算出処理NA2とを含む。
【0277】
算出処理NA1は、SAD比率算出部151Aが、処理対象フレーム内の第1領域毎に、該第1領域に含まれる複数のブロックにそれぞれ対応する複数の相関値(SAD値)のうち、所定の閾値より大きな相関値(SAD値)の数の比率を第1ブロック比率(領域ブロック比率BR)として算出する処理である。
【0278】
算出処理NA2は、SAD比率算出部151Aが、処理対象フレームの直前のn枚のフレームの各々において、該第1領域と同じ位置の第2領域に含まれる複数のブロックにそれぞれ対応する複数の相関値(SAD値)のうち閾値より大きな相関値(SAD値)の数の比率を第2ブロック比率(領域ブロック比率PBR1,PBR2)として算出する処理である。
【0279】
なお、ベクトル補正部160、補正部170および表示部180の各々が行う処理は、第1の実施の形態で説明した処理と同様なので詳細な説明は繰り返さない。
【0280】
以上により、本実施の形態の変形例においても、第1の実施の形態と同様な効果が得られる。
【0281】
すなわち、シーンチェンジを起因とする、補正後の処理対象フレーム(画像)の画質劣化を抑制するための複数の動きベクトルAMVを生成することができる。そのため、生成された複数の動きベクトルAMVを使用して補正される処理対象フレームにおいて、シーンチェンジを起因とする画質劣化を抑制することができる。
【0282】
なお、本実施の形態の変形例では、過去ブロック比率PBRは、処理対象フレームの直前の2枚のフレームにおいて、同じ位置の領域に対応する領域ブロック比率PBR1および領域ブロック比率PBR2を用いて算出されていたがこれに限定されない。
【0283】
例えば、過去ブロック比率PBRは、処理対象フレームの直前の1枚のフレームの領域に対応する領域ブロック比率PBR1であってもよい。
【0284】
この場合、図14の第2比率遅延部154Aおよび過去平均算出部155Aは不要となり、領域ブロック比率PBR1は、比較判定部152Aへ送信される。
【0285】
そして、比較判定部152Aは、領域ブロック比率BRと、処理対象フレームの直前の1枚のフレームに対応する領域ブロック比率PBR1とを用いて、シーンチェンジがあるか否かを判定する。この場合のシーンチェンジの判定の処理は、前述したシーンチェンジ判定処理Aと同様なので詳細な説明は繰り返さない。
【0286】
また、過去ブロック比率PBRは、処理対象フレームの直前の3枚以上のフレームにおいて、同じ位置の領域に対応する3つ以上の領域ブロック比率BRを用いて算出されてもよい。
【0287】
(その他の変形例)
以上、本発明における動きベクトル生成装置10又は動きベクトル生成装置10Aについて、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、あるいは異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【0288】
また、上記の動きベクトル生成装置10又は動きベクトル生成装置10Aを構成する複数の構成要素の全てまたは一部は、ハードウエアで構成されてもよい。また、上記の動きベクトル生成装置10又は動きベクトル生成装置10Aを構成する構成要素の全てまたは一部は、CPU(Central Processing Unit)等により実行されるプログラムのモジュールであってもよい。
【0289】
また、上記の動きベクトル生成装置10又は動きベクトル生成装置10Aを構成する複数の構成要素の全てまたは一部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されてもよい。システムLSIは、複数の構成要素を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM(Read Only Memory)及びRAM(Random Access Memory)などを含んで構成されるコンピュータシステムである。
【0290】
例えば、図1において、動きベクトル生成装置10および動きベクトル生成装置10Aの各々は、1個のシステムLSIから構成されてもよい。
【0291】
また、本発明は、動きベクトル生成装置10又は動きベクトル生成装置10Aが備える特徴的な構成部の動作をステップとする動きベクトル生成方法として実現してもよい。また、本発明は、そのような動きベクトル生成方法に含まれる各ステップをコンピュータに実行させるプログラムとして実現してもよい。また、本発明は、そのようなプログラムを格納するコンピュータ読み取り可能な記録媒体として実現されてもよい。また、当該プログラムは、インターネット等の伝送媒体を介して配信されてもよい。
【0292】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【0293】
本発明は、動画像から動きベクトルを検出し、検出した動きベクトルを使用してフレームレートを変換する装置、またフレームレートを変換して表示する表示装置、動きベクトルを使用して映像を補正して表示する表示装置等に用いることができる。
【符号の説明】
【0294】
10,10A 動きベクトル生成装置
110 映像遅延部
120 ベクトル検出部
130 フレーム遅延部
140 ベクトル遅延部
150,150A シーンチェンジ判定部
151 SAD平均算出部
151A SAD比率算出部
152,152A 比較判定部
153 第1平均遅延部
153A 第1比率遅延部
154 第2平均遅延部
154A 第2比率遅延部
155,155A 過去平均算出部
160 ベクトル補正部
170 補正部
180 表示部
1000,1000A 表示装置

【特許請求の範囲】
【請求項1】
動画像を補正するための動きベクトルを生成する動きベクトル生成装置であって、
前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、
前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含み、
前記動きベクトル生成装置は、
前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、
前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、
前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部とを備える、
動きベクトル生成装置。
【請求項2】
前記ベクトル補正部は、
前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、該シーンチェンジがあると判定された第1領域に含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を0に向かって徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算し、かつ、
前記シーンチェンジ判定部によりシーンチェンジがないと判定され、かつ、最新のゲイン値が所定の上限値未満である場合、シーンチェンジがないと判定された第1領域に含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を前記上限値に向かって徐々に増加させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成する、
請求項1に記載の動きベクトル生成装置。
【請求項3】
nは1であり、
前記シーンチェンジ判定部は、
前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値の平均である第1平均値を算出するとともに、前記処理対象フレームの直前の1枚のフレームにおける、前記第2領域に含まれる各ブロックに対応する相関値の平均である第2平均値を算出する平均算出部と、
前記第1平均値と、前記処理対象フレームの直前の1枚のフレームに対応する前記第2平均値とを用いて、シーンチェンジがあるか否かを判定する比較判定部とを含む、
請求項1または2に記載の動きベクトル生成装置。
【請求項4】
nは2以上の整数であり、
前記シーンチェンジ判定部は、
前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値の平均である第1平均値を算出するとともに、前記n枚のフレームの各々における、前記第2領域に含まれる各ブロックに対応する相関値の平均である第2平均値を算出する平均算出部と、
前記平均算出部により算出された前記n枚のフレームにそれぞれ対応するn個の第2平均値の平均である第3平均値を算出する過去平均算出部と、
前記第1平均値と前記第3平均値とを比較して、シーンチェンジがあるか否かを判定する比較判定部とを含む、
請求項1または2に記載の動きベクトル生成装置。
【請求項5】
nは1であり、
前記シーンチェンジ判定部は、
前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち、所定の閾値より大きな相関値の数の比率を第1ブロック比率として算出するとともに、前記処理対象フレームの直前の1枚のフレームにおける、前記第2領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち前記閾値より大きな相関値の数の比率を第2ブロック比率として算出する比率算出部と、
前記第1ブロック比率と、前記処理対象フレームの直前の1枚のフレームに対応する前記第2ブロック比率とを用いて、シーンチェンジがあるか否かを判定する比較判定部とを含む、
請求項1または2に記載の動きベクトル生成装置。
【請求項6】
nは2以上の整数であり、
前記シーンチェンジ判定部は、
前記処理対象フレーム内の前記第1領域毎に、該第1領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち、所定の閾値より大きな相関値の数の比率を第1ブロック比率として算出するとともに、前記n枚のフレームの各々における、前記第2領域に含まれる複数のブロックにそれぞれ対応する複数の相関値のうち前記閾値より大きな相関値の数の比率を第2ブロック比率として算出する比率算出部と、
前記比率算出部により算出された前記n枚のフレームにそれぞれ対応するn個の第2ブロック比率の平均であるブロック平均比率を算出する過去平均算出部と、
前記第1ブロック比率と前記ブロック平均比率とを比較して、シーンチェンジがあるか否かを判定する比較判定部とを含む、
請求項1または2に記載の動きベクトル生成装置。
【請求項7】
前記相関値は、SAD(Sum of Absolute Difference)値である、
請求項1〜6のいずれかに記載の動きベクトル生成装置。
【請求項8】
前記特定方向は、垂直方向である、
請求項1〜7のいずれかに記載の動きベクトル生成装置。
【請求項9】
動画像を補正するための動きベクトルを生成する表示装置であって、
前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、
前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含み、
前記表示装置は、
前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、
前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、
前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部と、
前記ベクトル補正部により生成された各動きベクトルを用いて、前記処理対象フレームを補正する補正部と、
前記補正部により補正された処理対象フレームを表示する表示部とを備える、
表示装置。
【請求項10】
動画像を補正するための動きベクトルを生成する集積回路であって、
前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、
前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含み、
前記集積回路は、
前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出部と、
前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定部と、
前記シーンチェンジ判定部によりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正部とを備える、
集積回路。
【請求項11】
コンピュータにより実行される、動画像を補正するための動きベクトルを生成するための動きベクトル生成プログラムであって、
前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、
前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含み、
前記動きベクトル生成プログラムは、
前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出ステップと、
前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定ステップと、
前記シーンチェンジ判定ステップによりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正ステップとを備える、
動きベクトル生成プログラム。
【請求項12】
動画像を補正するための動きベクトルを生成するための動きベクトル生成装置により実行される動きベクトル生成方法であって、
前記動画像を構成する複数のフレームの各々は、特定方向において複数の領域に分割されており、
前記複数の領域の各々は、動きベクトルの検出対象となる複数のブロックを含み、
前記動きベクトル生成方法は、
前記動画像における連続する複数のフレームの各々に含まれる各ブロックの動きベクトルを検出するとともに、検出された該各動きベクトルに対応する予測誤差を用いて、当該各ブロックにおいて検出された動きベクトルに対応する相関度合いを示す相関値を算出するベクトル検出ステップと、
前記連続する複数のフレームのうちの処理対象フレーム内の領域である第1領域毎に、該第1領域に含まれる各ブロックに対応する相関値と、前記処理対象フレームの直前のn(1以上の整数)枚のフレームの各々における、該第1領域と同じ位置の領域である第2領域に含まれる各ブロックに対応する相関値とを用いてシーンチェンジがあるか否かを判定するシーンチェンジ判定ステップと、
前記シーンチェンジ判定ステップによりシーンチェンジがあると判定された場合、前記処理対象フレームに含まれる前記特定方向に連続して並ぶ複数のブロックにおいて、1つのブロック毎に、ゲイン値を徐々に減少させるとともに、該ゲイン値を、該1つのブロックに対応する検出された前記動きベクトルに乗算することにより、前記動画像に含まれる前記処理対象フレームを補正するための各動きベクトルを生成するベクトル補正ステップとを備える、
動きベクトル生成方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2011−139124(P2011−139124A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2009−295926(P2009−295926)
【出願日】平成21年12月25日(2009.12.25)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】