説明

動き検出方法および装置

【課題】動画像の全画面スクロールを検出する際に、画像中に絵柄が少ない画像でも正確に全画面スクロールを検出する。
【解決手段】画面を構成する所定の検出領域毎の動きを動きベクトルとして推定する動きベクトル推定部と、動きベクトル毎の信頼性を算出し、所定の信頼性を満たす動きベクトルを有効ベクトルと判定する有効ベクトル判定部と、有効ベクトルに基づいて、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出するスクロール候補ベクトル検出部と、動きベクトル毎にスクロール候補ベクトルに置き換え可能か否かを判定する置換判定部と、置換判定部において置き換え可能と判定された動きベクトルを、スクロール候補ベクトルに置き換える置換部と、置換部にて置換後、スクロール候補ベクトルに基づいて全画面スクロールか否かを判定するスクロール判定部と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動き検出方法および装置に関し、特に、動画像の一様な動きであるスクロールを検出する動き検出方法および装置に関する。
【背景技術】
【0002】
従来、液晶ディスプレイ等に動画像を表示する際に、動画ボケを低減するために、動画像の動きを解析し、動き補償を用いたフレームレート変換が行われている。全画面一様にスクロールしている動画像はフレームレート変換による動画ボケの低減の効果が顕著に現れる。しかし、画像の一部に動き補償を誤った領域が存在すると画質の劣化を起こしやすい傾向がある。
【0003】
また、液晶ディスプレイ、プラズマディスプレイ等のプログレッシブ表示可能な表示装置に動画像を表示する際に、入力画像がインターレース画像の場合は、インターレース/プログレッシブ変換(I/P変換)を行っている。一様なスクロール画像は画像の動き情報が既知であれば比較的簡単に高画質のI/P変換を行うことができる。そのためにはスクロールの動きを検出しなければならない。
【0004】
これらの課題を解決するために、画像のスクロールの動きを検出する技術が求められる。
【0005】
従来、画像のスクロールの動きを検出する技術として、画面内の動きベクトルの分布に基づいてスクロールの動きを検出する方法が開示されている(例えば、特許文献1参照)。特許文献1では、画像内の各領域の動きを表す動きベクトルの度数分布を作成し、最大となる度数が所定の閾値より大きい場合スクロールが存在すると判定している。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−312680号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1では、全画面スクロールを検出しようとするとき、画像中の単色領域のように画像の絵柄が少ない部分等、動きベクトルを正しく検出することが困難な領域(動きベクトルの信頼性の低い領域)が多数存在すると、度数分布の最大となる度数が小さくなり、スクロールとして検出できなくなる。また、このような場合にもスクロールと検出するために閾値を下げると、誤検出が増えてしまうという課題があった。
【0008】
本発明は、上記課題に鑑みてなされたものであり、絵柄が少ない画像でもより正確に全画面スクロールを検出するためのものである。
【課題を解決するための手段】
【0009】
本発明に係る動き検出方法は、
画面を構成する所定の検出領域毎の動きを動きベクトルとして推定する動きベクトル推定ステップと、
前記動きベクトル毎の信頼性を算出し、所定の信頼性を満たす前記動きベクトルを有効ベクトルと判定する有効ベクトル判定ステップと、
前記有効ベクトルに基づいて、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出するスクロール候補ベクトル検出ステップと、
前記動きベクトル毎に前記スクロール候補ベクトルに置き換え可能か否かを判定する置換判定ステップと、
前記置換判定ステップにおいて置き換え可能と判定された前記動きベクトルを、前記スクロール候補ベクトルに置き換える置換ステップと、
前記置換ステップ後、前記スクロール候補ベクトルに基づいて全画面スクロールか否かを判定するスクロール判定ステップと、を備えるものである。
【0010】
また、本発明の動き検出装置は、
画面を構成する所定の検出領域毎の動きを動きベクトルとして推定する動きベクトル推定部と、
前記動きベクトル毎の信頼性を算出し、所定の信頼性を満たす前記動きベクトルを有効ベクトルと判定する有効ベクトル判定部と、
前記有効ベクトルに基づいて、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出するスクロール候補ベクトル検出部と、
前記動きベクトル毎に前記スクロール候補ベクトルに置き換え可能か否かを判定する置換判定部と、
前記置換判定部において置き換え可能と判定された前記動きベクトルを、前記スクロール候補ベクトルに置き換える置換部と、
前記置換部にて置換後、前記スクロール候補ベクトルに基づいて全画面スクロールか否かを判定するスクロール判定部と、を備えた構成を採る。
【発明の効果】
【0011】
本発明によれば、絵柄の少ない画像であっても全画面スクロールを高精度に検出することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施の形態に係る動き検出装置の構成を表すブロック図
【図2】動きベクトル推定方法を説明するための説明図
【図3】本発明の実施の形態に係る動き検出装置の動作を説明するためのフローチャート
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態について図を用いて説明する。図1は、本発明の実施の形態である動き検出装置100のブロック図である。動き検出装置100は、入力画像を格納するフレームバッファ101、動きベクトル推定部102、有効ベクトル判定部103、スクロール候補ベクトル検出部104、置換判定部105、置換部106、スクロール判定部107から構成される。なお、本実施の形態において、1画像を1フレームと呼ぶ場合がある。
【0014】
動きベクトル推定部102は、フレームバッファ101から現在のフレームと、1フレーム前のフレームを読み出す。そして、現在のフレーム上の検出領域毎の動きベクトルを推定し出力する。
【0015】
ここで、図2を用いて動きベクトル推定部102の処理内容を説明する。図2は動きベクトル推定部での動きベクトル推定動作を説明するための説明図である。図2においては、動きベクトル推定部102が、現在の入力フレーム111(以下、現在フレーム111と呼ぶ)内の各画素の動きベクトルを推定する場合を説明する。
【0016】
動きベクトル推定部102は、現在フレーム111内での座標(x,y)の注目画素113に対して最も相関の高い1フレーム前の入力フレーム112(以下、過去フレームと呼ぶ)内の画素117を指す動きベクトル116を、複数の動きベクトル候補115の中から推定する。動きベクトル候補115は、所定の範囲(例えば、x,yそれぞれに±40画素の範囲)内の0.5画素単位で変化するすべての動きベクトルとする。
【0017】
相関の指標には、2フレーム間の輝度の差分絶対値和(SAD;Sum of Absolute Differences)を用いる。SAD値は、例えば、現在フレーム111内の注目画素113の周辺の7×7画素のブロック114および、注目画素113から動きベクトル候補115が指す過去フレーム112内のそれぞれの画素の周辺7×7画素のブロックを用いて、式(1)で計算される。具体的に、例えば動きベクトル116に基づいてSAD値を計算する場合、ブロック114とブロック118を用いて計算される。ここで、式(1)において、(vx_cand,vy_cand)は動きベクトル候補、SAD(vx_cand,vy_cand)は動きベクトル候補(vx_cand,vy_cand)でのSAD値、L0(x,y)、L1(x,y)はそれぞれ現在フレーム111,過去フレーム112内の座標(x,y)での輝度値を表す。このとき、式(1)で計算したSAD値が最小となる画素が最も相関が高くなる。過去フレームの画素117を指し示す動きベクトル116を用いた場合の相関が最も高い場合には、注目画素113の動きベクトルとして動きベクトル116が検出される。
【0018】
【数1】

【0019】
動きベクトル推定部102は、フレームバッファ101から現在のフレームの輝度情報と1フレーム前のフレームの輝度情報を読み出し、すべての候補ベクトルを用いてSAD値を算出する。そして、動きベクトル推定部102は、SAD値が最小となる動きベクトルを注目画素の動きベクトルとして検出する。
【0020】
なお、動きベクトル推定部102において、動きベクトルの検出単位、動きベクトル候補、相関の指標、SAD値計算に用いるブロックのサイズおよび形状、はこれに限らない。
【0021】
有効ベクトル判定部103は、入力される動きベクトルが、所定の信頼性を満たしているか否かを判定する。所定の信頼性を満たしている場合は、その動きベクトルは有効ベクトルであると判定する。なお、所定の信頼性を満たしていない動きベクトルを除外することで、結果的に有効ベクトルを判定することも含む。
【0022】
有効ベクトルと判定するための信頼性の指標として、SAD値を用いる。動きベクトル推定部102では複数の動きベクトルのSAD値を計算し、SAD値が最小となる動きベクトルを検出する。しかし、画像の絵柄が少ない領域(例えば単色領域)では、動きベクトルを変化させてもSAD値の変化が小さく、SAD値が最小となるベクトルが最適なベクトルとは限らない場合がある。
【0023】
そこで有効ベクトル判定部103は、SAD値の最小値と他の任意のベクトル(例えば、SAD値が最大となるベクトル、ゼロベクトル、1フレーム前のスクロールベクトル等)のSAD値とを比較して、SAD値の最小値が十分小さければ有効なベクトルと判定する。より具体的には、式(2)の条件を満たすとき有効ベクトルと判定する。ただし、式(2)のSAD_MINはSAD値が最小となるベクトルでのSAD値、SAD_OTHERはその他の任意のベクトルでのSAD値、TH_SAD1は判定閾値を表す。
【0024】
【数2】

【0025】
なお、有効ベクトル判定の方法はこれに限られない。その他の有効ベクトル判定の方法として、例えば以下のような方法がある。注目画素の周辺画素の輝度の分散が小さい場合、画像上に絵柄が少ないことを意味し、動きベクトル検出部ではその画素の動きベクトルを正しく検出することは困難である可能性が高い。そこで、注目画素の周辺k×k画素の分散が閾値TH_VARより大きい場合、その画素のベクトルを有効ベクトルと判定する。これら以外の方法であってもよい。
【0026】
スクロール候補ベクトル検出部104は、1フレーム内のすべての動きベクトルのうち有効ベクトル判定部103で有効と判定された動きベクトルに基づいて全画面の動きを表すスクロール候補ベクトルを検出する。詳細は後述する。
【0027】
置換判定部105は、動きベクトル推定部102で検出した全動きベクトルに対して、スクロール候補ベクトルで置き換え可能か否かを判定する。
【0028】
置換部106は、置換判定部105で置き換え可能と判定された動きベクトルをスクロール候補ベクトルで置換し、置き換え不可と判定された動きベクトルは置換せずに出力する。
【0029】
スクロール判定部107は、置換部106から出力される1フレーム内の動きベクトルの分布に基づいて全画面スクロールか否かを判定する。そしてスクロール判定部107は、判定結果および全画面スクロールの動きを表す動きベクトルを出力する。
【0030】
図3は、本実施の形態における全画面スクロールの検出方法を説明するためのフローチャートである。以下、それぞれのステップを説明する。
【0031】
まず、動きベクトル推定部102において、所定の検出領域毎(本実施の形態では画素毎)に動きベクトルを推定する(S201)。
【0032】
次に、有効ベクトル判定部103において、動きベクトル推定部102で検出した動きベクトルの信頼性を評価して、スクロール候補ベクトル検出部104で用いるのに有効なベクトルか否かを判定する(S202)。
【0033】
スクロール候補ベクトル検出部104は、動きベクトル推定部102から入力するすべての画素の動きベクトルのうち、有効ベクトル判定部103で有効ベクトルと判定された動きベクトル(有効ベクトル)を用いて度数分布を算出し、これに基づいて全画面スクロールの動きベクトルを検出する。以下、詳細を説明する。
【0034】
スクロール候補ベクトル検出部104は、有効ベクトルの度数分布を作成し、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出する。度数分布は、有効ベクトルの水平成分、垂直成分それぞれ独立して作成する。各画素の動きベクトルが有効ベクトルであるとき(S211)、度数分布に加算する(S203)。画面内すべての画素で度数分布への加算を行い、すべての画素が処理済となった後(S212)、作成された度数分布に基づいてスクロール候補ベクトルを検出する(S204)。具体的には、作成した度数分布において度数が最大となる階級の動きベクトルをスクロール候補ベクトルとして検出する。
【0035】
なお、スクロール候補ベクトルの検出方法はこれに限られない。例えば、他の検出方法として、度数が最大となる階級の周辺±n階級のベクトルの平均値をスクロール候補ベクトルとして検出してもよい。また、水平成分・垂直成分の2次元度数分布を作成し、2次元度数分布に基づいてスクロール候補ベクトルを検出してもよい。また、度数分布を用いずに、有効ベクトルの平均値をスクロール候補ベクトルと検出してもよい。
【0036】
置換判定部105では、動きベクトル推定部102で検出した各画素の動きベクトルをスクロール候補ベクトルで置換するか否かを判定する(S205)。具体的には、スクロール候補ベクトルでのSAD値であるSAD_SCRLと、検出された動きベクトルでのSAD値であるSAD_MINの差分が所定の閾値TH_SAD2より小さい場合はスクロールベクトルで置き換えても問題がないと判定する。つまり、式(3)を満たす場合、置換可能と判定する。
【0037】
【数3】

【0038】
置換部106では、動きベクトル推定部102で検出した各画素の動きベクトルに対して、置換判定部105での判定結果に基づいて、スクロール候補ベクトルに置換する。具体的には、対象画素をスクロール候補ベクトルに置換しても問題ないと判定された場合(S213)、動きベクトル推定部102で検出したベクトルをスクロール候補ベクトルに置換する(S206)。対象画素をスクロール候補ベクトルに置換したら問題がある場合は、動きベクトル推定部102で検出したベクトルを置換しない。これにより、全画面スクロール時には絵柄の多少に関わらず、動きベクトルの度数分布がスクロール候補ベクトルに集中する。
【0039】
スクロール判定部107では、置換部106から入力する1フレーム内の画素の動きベクトルの分布に基づいて全画面スクロールかどうか判定する。具体的には、スクロール判定部107は、置換部106から入力する1フレーム内すべての画素の動きベクトルを用いて水平成分・垂直成分の2次元度数分布を作成し(S207、S214)、度数分布に基づいて全画面スクロールか否かを判定する(S208)。全画面スクロールの判定方法は、度数の最大値が所定の閾値より大きい場合、全画面スクロールと判定し、所定の閾値以下である場合、全画面スクロールと判定しない。また、他の全画面スクロール判定方法としては、例えば、度数分布のピークとなる階級の周辺の±m階級の度数の和が所定の閾値より大きい場合、全画面スクロールと判定し、所定の閾値以下である場合、全画面スクロールと判定しない。
【0040】
なお、本実施の形態において、スクロール判定部107は、入力する1フレーム内すべての画素の動きベクトルを用いて全画面スクロールを判定したが、これに限られない。例えば、2次元度数分布をスクロール候補ベクトルを中心として階級を限定することで規模を小さくすることもできる。すなわち、スクロール判定部107は、少なくともスクロール候補ベクトルの度数に基づいて全画面スクロールか否かを判定すればよい。
【0041】
本発明の一実施の形態である動き検出装置100は以上のように判定したスクロール判定結果およびスクロールの動きベクトルを最終出力として出力する。
【0042】
以上、本発明の実施の形態を用いて説明したが、本発明はこの実施の形態に限定されない。
【産業上の利用可能性】
【0043】
液晶ディスプレイ等でフレームレート変換を行う際に本発明を用いることで、全画面スクロール時の画質劣化をなくすことができる。
【符号の説明】
【0044】
100 動き検出装置
101 フレームバッファ
102 動きベクトル推定部
103 有効ベクトル判定部
104 スクロール候補ベクトル検出部
105 置換判定部
106 置換部
107 スクロール判定部
111 現在のフレーム
112 1フレーム前のフレーム
113 注目画素
114 注目画素を中心としたブロック
115 動きベクトル候補
116 動きベクトル
117 動きベクトルが指す画素
118 注目画素を中心としたブロック

【特許請求の範囲】
【請求項1】
画面を構成する所定の検出領域毎の動きを動きベクトルとして推定する動きベクトル推定ステップと、
前記動きベクトル毎の信頼性を算出し、所定の信頼性を満たす前記動きベクトルを有効ベクトルと判定する有効ベクトル判定ステップと、
前記有効ベクトルに基づいて、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出するスクロール候補ベクトル検出ステップと、
前記動きベクトル毎に前記スクロール候補ベクトルに置き換え可能か否かを判定する置換判定ステップと、
前記置換判定ステップにおいて置き換え可能と判定された前記動きベクトルを、前記スクロール候補ベクトルに置き換える置換ステップと、
前記置換ステップ後、前記スクロール候補ベクトルに基づいて全画面スクロールか否かを判定するスクロール判定ステップと、を備えた、
動き検出方法。
【請求項2】
前記有効ベクトル判定ステップは、
前記動きベクトルを用いて演算したSAD値と前記動きベクトルとは異なるベクトルを用いて演算したSAD値との差分が所定の閾値より大きい場合、当該動きベクトルを有効ベクトルと判定する、
請求項1に記載の動き検出方法。
【請求項3】
前記スクロール候補ベクトル検出ステップは、
前記有効ベクトルを用いて度数分布を算出し、前記度数分布に基づいてスクロール候補ベクトルを検出する、
請求項1または2に記載の動き検出方法。
【請求項4】
前記スクロール候補ベクトル検出ステップは、
前記度数分布において度数が最大となる動きベクトルをスクロール候補ベクトルとして検出する、
請求項3に記載の動き検出方法。
【請求項5】
前記置換判定ステップは、
前記動きベクトルを用いて演算したSAD値と前記スクロール候補ベクトルを用いて演算したSAD値との差分値が所定の閾値より小さい場合、当該動きベクトルを前記スクロール候補ベクトルに置き換え可能と判定する、
請求項1乃至4のいずれか一項に記載の動き検出方法。
【請求項6】
前記スクロール判定ステップは、
少なくとも前記置換ステップ後の前記スクロール候補ベクトルの度数を算出し、度数が所定の閾値より大きくなる場合、全画面スクロールと判定する、
請求項1乃至5のいずれか一項に記載の動き検出方法。
【請求項7】
画面を構成する所定の検出領域毎の動きを動きベクトルとして推定する動きベクトル推定部と、
前記動きベクトル毎の信頼性を算出し、所定の信頼性を満たす前記動きベクトルを有効ベクトルと判定する有効ベクトル判定部と、
前記有効ベクトルに基づいて、全画面スクロールの動きの候補となるスクロール候補ベクトルを検出するスクロール候補ベクトル検出部と、
前記動きベクトル毎に前記スクロール候補ベクトルに置き換え可能か否かを判定する置換判定部と、
前記置換判定部において置き換え可能と判定された前記動きベクトルを、前記スクロール候補ベクトルに置き換える置換部と、
前記置換部にて置換後、前記スクロール候補ベクトルに基づいて全画面スクロールか否かを判定するスクロール判定部と、を備えた、
動き検出装置。
【請求項8】
前記有効ベクトル判定部は、
前記動きベクトルを用いて演算したSAD値と前記動きベクトルとは異なるベクトルを用いて演算したSAD値との差分が所定の閾値より大きい場合、当該動きベクトルを有効ベクトルと判定する、
請求項7に記載の動き検出装置。
【請求項9】
前記スクロール候補ベクトル検出部は、
前記有効ベクトルを用いて度数分布を算出し、前記度数分布に基づいてスクロール候補ベクトルを検出する、
請求項7または8に記載の動き検出装置。
【請求項10】
前記スクロール候補ベクトル検出部は、
前記度数分布において度数が最大となる動きベクトルをスクロール候補ベクトルとして検出する、
請求項9に記載の動き検出装置。
【請求項11】
前記置換判定部は、
前記動きベクトルを用いて演算したSAD値と前記スクロール候補ベクトルを用いて演算したSAD値との差分値が所定の閾値より小さい場合、当該動きベクトルを前記スクロール候補ベクトルに置き換え可能と判定する、
請求項7乃至10のいずれか一項に記載の動き検出装置。
【請求項12】
前記スクロール判定部は、
少なくとも前記置換部での置換後の前記スクロール候補ベクトルの度数を算出し、度数が所定の閾値より大きくなる場合、全画面スクロールと判定する、
請求項7乃至11のいずれか一項に記載の動き検出装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2010−252068(P2010−252068A)
【公開日】平成22年11月4日(2010.11.4)
【国際特許分類】
【出願番号】特願2009−99806(P2009−99806)
【出願日】平成21年4月16日(2009.4.16)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】