(57)【要約】【課題】高品質な補間フレームを生成することができる画像処理装置を提供する。【解決手段】ブロックマッチング部２により、動きベクトルＳ４が検出され、ベクトル補間部３により、補間フレームＦ［−０．５］上の位置を指し示す補間動きベクトルＳ１４が求められる。次いで、重ね合わせ処理部４により、補間動きベクトルＳ１４の始点に対応するブロックＳ２を包含しかつ該ブロックＳ２のブロックサイズより大きい領域（斜線部）が現フレームＦ［０］から切り出され、この切り出された領域が補間動きベクトルＳ１４に従って補間フレームＦ［−０．５］上にマッピングされる。次いで、窓関数ωが適用され、補間フレームＦ［−０．５］上に配置された領域間の重複する部分の画素値が算出される。【選択図】図１
2008288697.tif 000002
【特許請求の範囲】
【請求項１】
時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行う画像処理装置であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出手段と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックのそれぞれに対して切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って補間フレーム上に配置する配置手段と、
前記補間フレーム上に配置された前記切り出された領域のそれぞれの間の重複する部分の画素値を算出する算出手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記算出手段は、前記補間フレーム上に配置された前記切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに適用された窓関数の値に応じて、前記補間フレーム上に配置された前記切り出された領域間の重複する部分の画素値を決定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記算出手段は、
前記重複する部分の注目画素位置にある各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記算出手段は、
前記補間フレーム上に配置された領域間の重複する部分の注目画素位置にある各領域の画素のそれぞれに対する窓関数の値のうち最大の値が予め設定された所定範囲の上限値より大きい場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記所定範囲の下限値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値のうち最大の値が前記所定範囲内にある場合、該最大の窓関数の値に応じた比率で、該最大の窓関数の値に対応する領域の画素の画素値と前記各領域の画素のそれぞれに対する窓関数の値を用いたそれぞれの画素の画素値の加重平均値とを混合し、その画素値を前記注目画素位置の画素値とすることを特徴とする請求項２に記載の画像処理装置。
【請求項５】
時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行うための画像処理方法であって、
前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出工程と、
前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックごとに切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って、補間フレーム上に配置する配置工程と、
前記補間フレーム上に配置された前記ブロックごとに切り出された領域間の重複する部分の画素値を算出する算出工程と
を備えることを特徴とする画像処理方法。
【請求項６】
前記算出工程では、前記ブロックごとに切り出された領域のそれぞれに対して窓関数を適用し、該領域のそれぞれに対する窓関数の値に応じて、前記補間フレーム上に配置された前記ブロックごとに切り出された領域間の重複する部分の画素値を適応的に決定することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記算出工程では、
前記補間フレーム上に配置された領域間の重複する部分の注目画素位置にある各領域の画素のそれぞれに対する窓関数の値のうちの最大の値が閾値以上である場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記閾値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とすることを特徴とする請求項６に記載の画像処理方法。
【請求項８】
前記算出工程では、
前記補間フレーム上に配置された領域間の重複する部分の注目画素位置にある各領域の画素のそれぞれに対する窓関数の値のうち最大の値が予め設定された所定範囲の上限値より大きい場合、該最大の窓関数の値に対応する領域の画素の画素値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値の全てが前記所定範囲の下限値より小さい場合、前記各領域の画素のそれぞれに対する窓関数の値を用いてそれぞれの画素の画素値の加重平均値を算出し、該算出された加重平均値を前記注目画素位置の画素値とし、
前記各領域の画素のそれぞれに対する窓関数の値のうち最大の値が前記所定範囲内にある場合、該最大の窓関数の値に応じた比率で、該最大の窓関数の値に対応する領域の画素の画素値と前記各領域の画素のそれぞれに対する窓関数の値を用いたそれぞれの画素の画素値の加重平均値とを混合し、その画素値を前記注目画素位置の画素値とすることを特徴とする請求項６に記載の画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像のフレーム補間を行う画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
表示装置のフリッカや残像感などを改善する手法として、動画像の１秒当たりのフレーム数を倍化する倍速駆動技術が知られている。例えば１秒当たり６０フレームの映像を１秒当たり１２０フレームの映像に変換することにより、フリッカや残像感を、大幅に改善することができる。上記フレームの数の倍化は、元の動画を構成するそれぞれのフレームの間に新たな補間フレームを挿入することによって、行われる。
【０００３】
この挿入される補間フレームを生成する方法としては、動きベクトルを用いた手法によって生成するフレーム補間技術が知られている（例えば特許文献１参照）。
【０００４】
この補間フレームの生成方法について図２３を参照しながら説明する。図２３は従来の補間フレームの生成方法を模式的に示す図である。ここで、現フレームをＦ［０］、その１フレーム前のフレーム（過去フレーム）をＦ［−１］、これらのフレーム間に挿入される補間フレームをＦ［−０．５］とそれぞれ表記する。
【０００５】
補間フレームの生成においては、図２３（ａ）に示すように、まず、動画像の現フレームＦ［０］が矩形状の複数のブロックに分割される。そして、現フレームＦ［０］と過去フレームＦ［-１］との間でブロックマッチングが行われ、各ブロックの現フレームＦ［０］と過去フレームＦ［-１］間の動きベクトルが求められる。
【０００６】
次いで、図２３（ｂ）に示すように、現フレームＦ［０］と過去フレームＦ［-１］との間に挿入される補間フレームとしてフレームＦ［−０．５］が設定され、上記求められた動きベクトルに従って現フレームＦ［０］のブロックが過去フレームＦ［−０．５］上にマッピング（配置）される。このようにして、現フレームＦ［０］と過去フレーム［−１］間に挿入される補間フレームＦ［−０．５］が生成される。
【特許文献１】特開平０３−２６３９８９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来の技術の場合、動きベクトルを探索することができずに、画像をマッピングすることができない領域、または動画部分が動いた後の領域が、補間フレーム上に空白部分として残存する場合がある。また、マッピングされたブロックの境界付近で、周辺ブロックとの不連続性に起因する境界ノイズが発生することもある。
【０００８】
本発明の目的は、高品質な補間フレームを生成することができる画像処理装置および画像処理方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明は、上記目的を達成するため、時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行う画像処理装置であって、前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出手段と、前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックごとに切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って、補間フレーム上に配置する配置手段と、前記補間フレーム上に配置された前記ブロックごとに切り出された領域間の重複する部分の画素値を算出する算出手段とを備えることを特徴とする画像処理装置を提供する。
【００１０】
本発明は、上記目的を達成するため、時間的に連続する一対のフレーム間に補間フレームを挿入するフレーム補間を行うための画像処理方法であって、前記一対のフレームの一方を複数のブロックに分割し、該分割されたブロックごとに前記一対のフレーム間における動きベクトルを検出する動きベクトル検出工程と、前記ブロックごとに該ブロックを包含しかつ該ブロックのサイズより大きいサイズの領域を前記一対のフレームの一方から切り出し、前記ブロックごとに切り出された領域を、それぞれ対応するブロックの検出された動きベクトルに従って、補間フレーム上に配置する配置工程と、前記補間フレーム上に配置された前記ブロックごとに切り出された領域間の重複する部分の画素値を算出する算出工程とを備えることを特徴とする画像処理方法を提供する。
【発明の効果】
【００１１】
本発明によれば、高品質な補間フレームを生成することができ、フリッカや残像感が少ない高画質な動画像を得ることができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について図面を参照しながら説明する。
【００１３】
（第１の実施の形態）
図１は本発明の第１の実施の形態に係る画像処理装置の構成を示すブロック図である。
【００１４】
本実施の形態の画像処理装置は、図１に示すように、フレームメモリ１、ブロックマッチング部２、ベクトル補間部３、重ね合わせ処理部４、窓関数テーブル５および正規化部６を備える。ブロックマッチング部２、ベクトル補間部３、重ね合わせ処理部４、正規化部６は、ＣＰＵ（図示せず）がＲＯＭなどのメモリ（図示せず）に格納されているプログラムを実行することによって構成されるものである。すなわち、これらは、ソフトウェアにより構成されるものである。
【００１５】
ここで、以下の説明において、現フレームをＦ［０］、その１フレーム前のフレームをＦ［−１］、これらのフレーム間に挿入される補間フレームをＦ［−０．５］とそれぞれ表記する。また、フレームの画像を構成する座標（ｘ，ｙ）の画素をＰ（ｘ，ｙ）と表記する。また、フレーム上の画素を特定する場合には、Ｆ［ｆ］：Ｐ（ｘ，ｙ）と表記する。
【００１６】
フレームメモリ１は、時間的に連続する一対のフレームとこれらのフレーム間に挿入される補間フレームを保持するためのメモリである。具体的には、フレームメモリ１は、動画像を構成するフレーム単位の画像Ｓ１を保持する。ここでは、フレームメモリ１には、外部装置から入力された、動画像を構成するフレームとして現フレームＦ［０］の画像と、その１フレーム前の過去フレームＦ［−１］の画像とが保持されている。また、上記現フレームＦ［０］と過去フレームＦ［−１］間に挿入される補間フレームの格納領域が確保されている。
【００１７】
次に、ブロックマッチング部２について図２〜図４を参照しながら説明する。図２は現フレームＦ［０］から切り出された複数のブロックの一例を示す図である。図３は過去フレームＦ［−１］から切り出されたブロックの一例を示す図である。図４はブロックＳ２に最も一致する部分画像（８×８画素のブロック）Ｓ３ａのオフセットに基づいて検出された動きベクトルＳ１４を示す図である。
【００１８】
ブロックマッチング部２は、動きベクトルを求めるために、フレームメモリ１に保持されている現フレームＦ［０］の画像を矩形状の複数のブロックＳ２に分割し、これらのブロックＳ２を切り出す。各ブロックＳ２のブロックサイズは、本発明が適用される装置毎に適宜定められるものである。このブロックサイズが大きくなるほど、動きベクトルの探索精度が向上する。逆にブロックサイズが小さくなるほど、装置の処理能力を小さくすることができ、低コストで装置を構成することが可能である。
【００１９】
本実施の形態においては、図２に示すように、ブロックＳ２のブロックサイズが８×８画素（Ｂｓ＝８）であるとする。ここで、上からＸ行目、左からＹ列目のブロック画像をＢ［Ｘ，Ｙ］と表記する。例えば、上から１行目のブロックＳ２は、左から順にＢ［１，１］，Ｂ［２，１］，Ｂ［３，１］，…、上から２行目のブロックＳ２は、左から順にＢ［１，２］，Ｂ［２，２］，Ｂ［３，２］，…とそれぞれ表記される。
【００２０】
ここで、フレーム上の各ブロックを特定する場合は、各ブロックを、Ｆ［ｆ］：Ｂ［Ｘ，Ｙ］と表記する。さらに、ブロック画像Ｂ［Ｘ，Ｙ］の相対座標（ｉ，ｊ）に位置する画素をＢ［Ｘ，Ｙ］（ｉ，ｊ）と表記する。すなわち、Ｐ（７，９）とＢ［１，２］（７，１）は、同じ画素を指す。
【００２１】
また、ブロックマッチング部２は、フレームＦ［−１］から動きベクトルを求めるためのブロックＳ３を切り出す。このブロックＳ３のブロックサイズは、動きベクトルの探索範囲Ｓａによって決定される。探索範囲Ｓａは、本発明が適用されるシステム毎に適宜決められるものである。この探索範囲Ｓａが広くなるほど、速い動きの動画に対しても動きベクトルを求めることが可能となる。逆に、探索範囲Ｓａが小さくなるほど、装置の処理能力を小さくすることができ、低コストで装置を構成することができる。
【００２２】
本実施の形態においては、図３に示すように、探索範囲Ｓａが１２画素である。すなわち、ブロックＳ２のブロックサイズ（Ｂｓ）に探索範囲Ｓａ×２を加えた、８＋１２×２＝３２がブロックＳ３の一辺のサイズとなり、ブロックＳ３のブロックサイズは、３２×３２画素となる。
【００２３】
ブロックマッチング部２は、図４に示すように、ブロックＳ３の中からブロックＳ２に最も一致する部分画像（８×８画素のブロック）Ｓ３ａを探索する。そして、ブロックＳ２の位置からの部分画像Ｓ３ａのオフセットが動きベクトルＳ４として検出される。
【００２４】
ここで、ブロックＳ３中の部分画像Ｓ３ａと上記ブロックＳ２が一致しているか否かの判定には、部分画像Ｓ３ａとブロックＳ２のそれぞれ対応する画素値ｄの差分絶対値の総和が用いられる。この値が小さいほど、画像が一致する度合いが高い。具体的には、ブロックＳ２がＦ［０］：Ｂ［Ｘ，Ｙ］であるとき、ブロックＳ３は、Ｆ［−１］：Ｐ（ｘ−Ｓａ，ｙ−Ｓａ）〜Ｆ［−１］：Ｐ（ｘ＋Ｂｓ＋Ｓａ−１，ｙ＋Ｂｓ＋Ｓａ−１）を対角とするブロックである。そして、ブロックＳ３の中の部分画像Ｓ３ａの画素は、Ｆ［−１］：Ｂ［Ｘ，Ｙ］（ｉ＋ｈ，ｊ＋ｖ）｛ｈ＝−Ｓａ〜＋Ｓａ｜ｖ＝−Ｓａ〜＋Ｓａ｝と表される。
【００２５】
ここで、Ｆ［０］：Ｂ［ｘ，ｙ］（ｉ，ｊ）とＦ［−１］：Ｂ［Ｘ，Ｙ］（ｉ＋ｈ，ｊ＋ｖ）の差分絶対値の総和をＤ［ｈ，ｖ］とすると、Ｄ［ｈ，ｖ］は、次の（１）式で表される。
【００２６】
【数１】
2008288697.tif 000003
【００２７】
そして、Ｄ［ｈ，ｖ］の最小値をＤ［Ｈ，Ｖ］とすると、
Ｄ［Ｈ，Ｖ］＝ｍｉｎ（Ｄ［ｈ，ｖ］）
を満足するＨ，Ｖが求められる。この条件を満足する（Ｈ，Ｖ）なるベクトルは、現フレームＦ［０］から過去フレームＦ［−１］を指し示すベクトルであるので、このベクトルを−１倍した−（Ｈ，Ｖ）が、Ｆ［０］：Ｂ［ｘ，ｙ］における動きベクトルＳ４となる。
【００２８】
以下、この動きベクトルＳ４をＦ［０］：Ｂ［ｘ，ｙ］：［Ｓ４］と表記する。動きベクトルＳ４の要素を独立に表記する場合は、［Ｓ４］：Ｈ，［Ｓ４］：Ｖと表記する。
【００２９】
次に、ベクトル補間部３について図５を参照しながら説明する。図５はブロックマッチング部２により求められたた動きベクトルＳ４に基づいて求められた補間動きベクトルＳ１４を示す図である。
【００３０】
ベクトル補間部３は、図５に示すように、ブロックマッチング部２により求められたた動きベクトルＳ４を−１／２倍して、補間フレームＦ［−０．５］上の位置を指し示す補間動きベクトルＳ１４を求める。補間動きベクトルＳ１４は、次の（２）式で表される。
【００３１】
【数２】
2008288697.tif 000004
【００３２】
次に、重ね合わせ処理部４について図６〜図１０を参照しながら説明する。図６は重ね合わせ処理部４により補間フレームＦ［−０．５］上にマッピングする画像のサイズを示す図である。図７は補間画素毎に対応付けられている、加算／最大値モード、影響度および画素値を格納するフィールドの構成を示す図である。図８は窓関数ωの分布を示す図である。図９は窓関数ωの動きベクトルと影響度の関係を表す特性を示す図である。図１０は補間動きベクトルＳ１４、マッピングされた画像、影響度Ｓ１６の関係を模式的に示す図である。
【００３３】
重ね合わせ処理部４は、現フレームＦ［０］の各ブロックを補間フレームＦ［−０．５］上にマッピングするための重ね合わせ処理を行う。この重ね合わせ処理においては、図６に示すように、まず、上記補間動きベクトルＳ１４の始点に対応するブロックＳ２（点線部）を包含しかつ該ブロックＳ２のブロックサイズより大きい領域（斜線部）が現フレームＦ［０］から切り出される。そして、この切り出された領域の画像が補間動きベクトルＳ１４に従って補間フレームＦ［−０．５］上の実線領域にマッピング（配置）される。
【００３４】
ここで、マッピング後に隙間部分ができないようにするために、フレームＦ［０］から切り出された領域（斜線部）すなわちマッピングする画像のサイズＩｓは、ブロックＳ３のブロックサイズより大きいことが望ましい。本実施の形態においては、Ｉｓ＝４８とする。
【００３５】
次いで、現フレームＦ［０］の切り出された領域の画素Ｓ２２がフレームメモリ１から順に読み出される。この画素Ｓ２２の読み出し範囲は、以下となる。
｛q＝x+(Bs-Is)/２〜x+(Bs+Is)/2−１，r=y+(Bs-Is)/2〜y+(Bs+Is)/2}
読み出された画素Ｓ２２は、［Ｓ２２］＝Ｆ［０］：Ｐ（ｑ，ｒ）と表される。
【００３６】
次いで、現フレームＦ［０］から切り出された領域の画素Ｓ２２との重ね合わせ処理を行うために、補間動きベクトルＳ１４に従って、フレームメモリ１内の補間フレームＦ［−０．５］から補間画素Ｓ１５が読み出される。読み出される画素Ｓ１５は、
［Ｓ１５］＝Ｆ［−０．５］：Ｐ（ｑ＋［Ｖ１１］：Ｈ，ｒ＋［Ｖ１１］:Ｖ）
となる。
【００３７】
ここで、補間フレームＦ［−０．５］の補間画素Ｓ１５には、図７に示すように、［加算／最大値］フィールド、［影響度］フィールド、［画素値］フィールドの各フィールドが対応付けられている。ここで、［加算／最大値］フィールドは、補間画素モードが加算モーとであるか最大値モードであるかを示すフラグが格納されている。
【００３８】
本実施の形態においては、後述するように、補間フレームＦ［−０．５］上に配置された切り出された領域のそれぞれに対して窓関数ωが適用される。そして、領域のそれぞれに適用された窓関数ωの値と閾値ψに応じて、加算モードと最大値モードのいずれかが選択され、選択された補間画素モードにより、補間フレームＦ［−０．５］上に配置された領域間の重複する部分の画素値が算出されて適応的に決定される。
【００３９】
具体的には、上記重複する部分の注目点（注目画素位置）にある各切り出された領域の画素のそれぞれに対する窓関数ωの値のうちの最大の値が閾値ψ以上（閾値以上）である場合、最大モードが選択され、該最大の窓関数ωの値に対応する領域の画素の画素値が注目点の画素値とされる。これに対し、上記重複する部分の注目点（注目画素位置）にある各切り出された領域の画素のそれぞれに対する窓関数ωの値の全てが閾値ψより小さい場合（所定範囲内にある場合）、加算モードが選択される。この加算モードにおいては、上記重複する部分の注目点（注目画素位置）にある上記各切り出された領域の画素のそれぞれに対する窓関数ωの値を用いてそれぞれの画素の画素値の加重平均値が算出される。そして、算出された加重平均値が注目点の画素値とされる。
【００４０】
［加算／最大値］フィールドのフラグが加算モードを示す場合、［影響度］フィールドには、補間画素の画素位置に重ねられた全ての画素の影響度の総和が格納されている。［画素値］フィールドには、補間画素の画素位置に重ねられた全ての画素の（画素値×影響度）の総和が格納されている。
【００４１】
これに対し、［加算／最大値］フィールドのフラグが最大値モードを示す場合、［影響度］フィールドには、補間画素の画素位置に重ねられた全ての画素の内、最大の影響度を有する画素の影響度が格納されている。［画素値］フィールドには、補間画素の画素位置に重ねられた全ての画素の内、最大の影響度を有する画素の画素値が格納されている。
【００４２】
これらのフィールドの値は、後述するように、補間フレームの作成が開始される際に、フレームメモリに格納された補間フレームの画像がクリアされることに伴い、影響度＝０、画素値＝０にクリアされる。
【００４３】
以下の説明において、補間画素Ｓ１５の［加算／最大値］フィールドを［Ｓ１５］：Ｍ、［影響度］フィールドを［Ｓ１５］：Ｅ、［画素値］フィールドを［Ｓ１５］：Ｐとそれぞれ表記するものとする。
【００４４】
重ね合わせ処理部４は、窓関数テーブル５から、重ね合わせ処理を行う画素位置（注目点）の画素に対応付けられている影響度Ｓ１６を読み出す。影響度Ｓ１６は、窓関数テーブル５に格納されている窓関数ωの値である。この窓関数ωは、例えば図８および図９に示すような分布を有する連続関数である。また、窓関数ωは、図８に示すように、動きベクトルの始点に対応するブロックをカバーする範囲で影響度が十分に大きく、上記動きベクトルの始点に対応するブロックから離れるに従って影響度が０に近づく特性を有する関数である。この窓関数ωの定義域は、マッピングする画像（切り出された領域）のサイズＩｓに等しく、ω（ｘ）［ｘ＝−Ｉｓ／２〜Ｉｓ／２］である。
【００４５】
例えば図１０に示すように、現フレームＦ［１］の参照画素に対応する補間フレームＦ［−０．５］上にマッピングされた画像の注目点の画素に対して窓関数ωの値が適用され、この窓関数ωの値すなわち影響度Ｓ１６に応じて上記注目点の画素値が決定される。
【００４６】
加算モードの場合、対応する補間画素Ｓ１５の影響度Ｓ１６の値が閾値ψ以上であるか否かに応じて重複解決処理の切り替えが行われる。ここで、閾値ψは、以後の重複解決処理を切り替えるために使用される値である。閾値ψを大きくすると、画素の加重平均を行う領域が広がり、滑らかな画像が得られる。閾値ψを小さくすると、画素の加重平均を行う領域が狭くなり、シャープな画像が得られる。通常は、閾値ψは、動きベクトルＳ４を算出するブロックのブロックサイズと重複解決処理の切り換え点がほぼ同一となる値に設定される。
【００４７】
上記影響度Ｓ１６が閾値ψ以上でない場合、補間画素Ｓ１５の［影響度］フィールドの値（影響度）に対して、読み出された影響度Ｓ１６の値が加算される。また、補間画素Ｓ１５の［画素値］フィールドの値（画素値×影響度）に対して、画素Ｓ２２の画素値と影響度Ｓ１６が乗じた値が加算される。すなわち、次の（３）式による演算が行われ、画素の加重平均値が算出される。
【００４８】
【数３】
2008288697.tif 000005
【００４９】
このようにして対応するフィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に記憶される。そして、このレジスタに保持されている補間画素Ｓ１７は、フレームメモリ１の補間フレームＦ［−０．５］の対応する位置に上書きされる。すなわち、
Ｆ［−０．５］：Ｐ（ｉ，ｊ）＝［Ｓ１７］
なる操作が行われる。
【００５０】
これに対し、上記影響度Ｓ１６が閾値ψ以上である場合、補間画素Ｓ１５の［加算／最大値］フィールドのフラグが［最大値］モードのフラグにセットされる。そして、補間画素Ｓ１５の［影響度］フィールドの値が、窓関数テーブル５から読み出された影響度Ｓ１６の値に書き換えられる。また補間画素Ｓ１５の［画素値］フィールドの値が、基準画像Ｉ２の画素値に書き換えられる。すなわち、次の（４）式による演算が行われる。
【００５１】
【数４】
2008288697.tif 000006
【００５２】
この場合も、同様に、対応するフィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に記憶された後に、フレームメモリ１の補間フレームＦ［−０．５］上の対応する位置に上書きされる。すなわち、
Ｆ［−０．５］：Ｐ（ｉ，ｊ）＝［Ｓ１７］
なる操作が行われる。
【００５３】
最大値モードの場合、窓関数テーブル５から読み出された影響度Ｓ１６の値と補間画素Ｓ１５の［影響度］フィールドの値とが比較される。ここで、影響度Ｓ１６の値が補間画素Ｓ１５の［影響度］フィールドの値以上であれば、補間画素Ｓ１５の［影響度］フィールドの値が、窓関数テーブル５から読み出された影響度Ｓ１６の値に書き換えられる。また補間画素Ｓ１５の［画素値］フィールドの値が、ブロックＳ２の画素Ｓ２２の画素値に書き換えられる。すなわち、上記（４）式による演算が行われる。そして、同様に、対応するフィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に記憶された後に、フレームメモリ１の補間フレームＦ［−０．５］上の対応する位置に上書きされる。
【００５４】
これに対し、影響度Ｓ１６の値が補間画素Ｓ１５の［影響度］フィールドの値以上でなければ、補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に記憶された後に、フレームメモリ１の補間フレームＦ［−０．５］上の対応する位置に上書きされる。
【００５５】
以上で、現フレームＦ［０］の各ブロックＳ２の１ブロック分の処理が終了する。そして、現フレームＦ［０］の全てのブロックＳ２について処理が終了すると、正規化部６による正規化出力処理が行われる。これに対し、現フレームＦ［０］の全てのブロックＳ２についての処理が終了していない場合、再度ブロックマッチング部２による現フレームＦ［０］からの次のブロックＳ２の切り出しが行われる。
【００５６】
次に、正規化部６について説明する。
【００５７】
正規化部６は、フレームメモリ１から、補間フレームＦ［−０．５］を構成する補間画素Ｓ１７を順に読み出す。読み出す範囲は、｛ｘ＝１〜Ｘ，ｙ=１〜Ｙ｝となる。
【００５８】
正規化部６は、読み出した補間画素Ｓ１７の［加算／最大値］フィールドのフラグを参照し、そのフラグが加算モードを示す場合、補間画素Ｓ１７の［画素値］フィールドの値を［影響度］フィールドの値で除算して画素値を正規化する。この正規化により、［画素値］フィールドの値は、上記正規化された画素値に書き換えられる。そして、［画素値］フィールドの値が正規化された画素値に書き換えられた補間画素Ｓ１７は、正規化画素Ｓ１９として出力される。すなわち、次の（５）式で表される操作が行われる。
【００５９】
【数５】
2008288697.tif 000007
【００６０】
これに対し、読み出された補間画素Ｓ１７の［加算／最大値］フィールドのフラグが加算モードでなく、最大値モードを示す場合、読み出された補間画素Ｓ１７は、上記正規化が行われることなく、正規化画素Ｓ１９として出力される。
【００６１】
正規化部６は、補間フレームＦ［−０．５］の画像を構成する補間画素の全てを出力するまで、上記処理を繰り返す。
【００６２】
次に、本画像処理装置の補間フレーム生成処理について図１１〜図１３を参照しながら説明する。図１１はブロックマッチング部２による動きベクトル検出処理およびベクトル補間部３による補間ベクトル出力処理の手順を示すフローチャートである。図１２は重ね合わせ処理部４による重ね合わせ処理の手順を示すフローチャートである。図１３は正規化部６による正規化処理の手順を示すフローチャートである。
【００６３】
本画像処理装置においては、図１１に示すように、まず、フレームメモリ１における、現フレームＦ［０］と過去フレームＦ［−１］間に挿入される補間フレームＦ［−０．５］の画像の格納領域の値がクリアされる（ステップＳ１０１）。そして、フレームメモリ１には、外部装置から、現フレームＦ［０］の画像が入力されて保持される（ステップＳ１０２）。このとき、フレームメモリ１には、現フレームＦ［０］の１フレーム前の過去フレームＦ［−１］の画像が保持されている。
【００６４】
次いで、ブロックマッチグ部２による動きベクトル検出処理が開始される。この動きベクトル検出処理においては、まず、フレームメモリ１に保持されている現フレームＦ［０］が矩形状の複数のブロックＳ２に分割され、これらのブロックＳ２が切り出される（ステップＳ１０３）。続いて、過去フレームＦ［−１］からブロックＳ３が切り出される（ステップＳ１０４）。そして、動きベクトルＳ４を検出するためのブロックマッチングが行われる（ステップＳ１０５）。このブロックマッチングにおいては、ブロックＳ３の中からブロックＳ２に最も一致する部分画像（８×８画素のブロック画像）Ｓ３ａが探索される。そして、上記探索された部分画像Ｓ３ａの上記ブロック画像Ｓ２の位置からのオフセット（方向および移動量）が動きベクトルＳ４として検出される。
【００６５】
次いで、ベクトル補間部３により、ブロックマッチング部２により検出された動きベクトルＳ４を−１／２倍して、補間フレームＦ［−０．５］を指し示す補間動きベクトルＳ１４が求められる（ステップＳ１０６）。
【００６６】
このようにして、現フレームＦ［０］の１つのブロックＳ２に対する補間動きベクトルＳ１４が求められると、重ね合わせ処理部４による重ね合わせ処理が開始される。
【００６７】
重ね合わせ処理においては、図１２に示すように、まず、補間フレームＦ［−０．５］上にマッピングするための画像として、現フレームＦ［０］から切り出された領域（ブロックＳ２を包含する領域）の画素Ｓ２２が、順に読み出される（ステップＳ１０７）。続いて、現フレームＦ［０］から読み出された画素Ｓ２２との重ね合わせ処理を行うために、補間動きベクトルＳ１４に従って、フレームメモリ１内の補間フレームＦ［−０．５］から補間画素Ｓ１５が読み出される（ステップＳ１０８）。そして、窓関数テーブル５から、重ね合わせ処理を行う画素位置に応じた影響度Ｓ１６（窓関数テーブル５に格納されている窓関数ωの値）が読み出される（ステップＳ１０９）。
【００６８】
次いで、補間画素Ｓ１５の［加算／最大値］フィールドのフラグが加算モードを示すか否かの判定が行われる（ステップＳ１１０）。ここで、上記フラグが加算モードを示す場合、上記読み出された影響度Ｓ１６が閾値ψ以上であるか否かが判定される（ステップＳ１１１）。上記影響度Ｓ１６が閾値ψ以上でない場合、補間画素Ｓ１５の［影響度］フィールドの値（影響度）に対して、上記読み出された影響度Ｓ１６の値が加算される（ステップＳ１１４）。また、補間画素Ｓ１５の［画素値］フィールドの値（画素値×影響度）に対して、画素Ｓ２２の画素値と影響度Ｓ１６が乗じた値が加算される。すなわち、上記（３）式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に一時的に記憶される（ステップＳ１１６）。
【００６９】
これに対し、上記ステップＳ１１１において上記影響度Ｓ１６が閾値ψ以上であると判定された場合、補間画素Ｓ１５の［加算／最大値］フィールドに対して最大値モードを示すフラグがセットされる（ステップＳ１１２）。すなわち、加算モードから最大値モードへの切り換えが行われる。そして、補間画素Ｓ１５の［影響度］フィールドの値が、窓関数テーブル５から読み出された影響度Ｓ１６の値に書き換えられる（ステップＳ１１５）。また、補間画素Ｓ１５の［画素値］フィールドの値が、対応する画素Ｓ２２の画素値に書き換えられる。すなわち、上記（４）式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に一時的に記憶される（ステップＳ１１６）。
【００７０】
上記ステップＳ１１０において補間画素Ｓ１５の［加算／最大値］フィールドのフラグが加算モードを示しさない場合は、最大値モードの場合である。この場合、窓関数テーブル５から読み出された影響度Ｓ１６の値が補間画素Ｓ１５の［影響度］フィールドの値以上であるか否かの判定が行われる（ステップＳ１１３）。ここで、上記影響度Ｓ１６の値が補間画素Ｓ１５の［影響度］フィールドの値以上であれば、補間画素Ｓ１５の［影響度］フィールドの値が、窓関数テーブル５から読み出された影響度Ｓ１６の値に書き換えられる（ステップＳ１１５）。また、補間画素Ｓ１５の［画素値］フィールドの値が、対応する画素Ｓ２２の画素値に書き換えられる。すなわち、上記（４）式による演算が行われる。このようにして、フィールドの値が書き換えられた補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に一時的に記憶される（ステップＳ１１６）。
【００７１】
これに対し、上記ステップＳ１１３において上記影響度Ｓ１６の値が補間画素Ｉ１５の［影響度］フィールドの値以上でないと判定された場合、補間画素Ｓ１５は、補間画素Ｓ１７としてレジスタ（図示せず）に一時的に記憶される（ステップＳ１１６）。
【００７２】
補間画素Ｓ１５が補間画素Ｓ１７として上記レジスタに一時的に記憶された後、上記切り出された領域内に処理すべき次の画素があるか否かの判定が行われる（ステップＳ１１７）。ここで、上記切り出された領域内に処理すべき次の画素がある場合、次の画素の重ね合わせ処理が行われる（ステップＳ１０７〜ステップＳ１１６）。
【００７３】
上記ステップＳ１１７において上記切り出された領域内に処理すべき次の画素がないと判定された場合、上記レジスタに保持されている補間画素Ｓ１７が、フレームメモリ１の補間フレームＦ［−０．５］上の対応する位置に上書きされる（ステップＳ１１８）。
【００７４】
次いで、現フレームＦ［０］内に処理すべき次のブロックＳ２があるか否かの判定が行われる（ステップＳ１１９）。ここで、現フレームＦ［０］内に処理すべき次のブロック画像Ｓ２があれば、次のブロックＳ２と対応する過去フレームＦ［−１］のブロックＳ３ブロックマッチグが行われる（ステップＳ１０３〜ステップＳ１１８）。
【００７５】
これに対し、上記ステップＳ１１９において現フレームＦ［０］内に処理すべき次のブロックＳ２がないと判定された場合、正規化部６による正規化処理が開始される。
【００７６】
正規化部６の正規化処理においては、図１３に示すように、フレームメモリ１から、補間フレームＦ［−０．５］の画像を構成する各補間画素Ｓ１７が順に読み出される（ステップＳ１２０）。そして、読み出された補間画素Ｓ１７の［加算／最大値］フィールドのフラグが加算モードを示すか否かの判定が行われる（ステップＳ１２１）。ここで、読み出した補間画素Ｓ１７の［加算／最大値］フィールドのフラグが加算モードを示す場合、補間画素Ｓ１７の［画素値］フィールドの値が［影響度］フィールドの値で除算されて画素値が正規化される（ステップＳ１２２）。この正規化により、補間画素Ｓ１７の［画素値］フィールドの値は、上記正規化された画素値に書き換えられる。そして、画素値が正規化された画素値に書き換えられた補間画素Ｓ１７は、正規化画素Ｓ１９として出力される（ステップＳ１２３）。
【００７７】
これに対し、読み出された補間画素Ｓ１７の［加算／最大値］フィールドのフラグが加算モードを示さない場合すなわち最大値モードを示す場合、読み出された補間画素Ｓ１７は、上記正規化が行われることなく、正規化画素Ｓ１９として出力される（ステップＳ１２３）。
【００７８】
次いで、補間フレームＦ［−０．５］の画像を構成する補間画素の全ての出力が終了したか否かの判定が行われる。ここで、補間フレームＦ［−０．５］の画像を構成する補間画素の全ての出力が終了していなければ、正規化部６は、上記ステップＳ１２０からの処理を繰り返す。これに対し、補間フレームＦ［−０．５］の画像を構成する補間画素の全ての出力が終了すると、正規化部６は、本処理を終了する。
【００７９】
このようにして、現フレームＦ［０］と過去フレームＦ［−１］の間の挿入される補間フレーム［−０．５］の画像が生成されることになる。
【００８０】
上記補間フレーム生成処理の結果について図１４を参照しながら説明する。図１４は図１の画像処理装置による補間フレーム生成処理の結果の一例を模式的に示す図である。
【００８１】
上記補間フレーム生成処理により、例えば図１４に示すような処理結果が得られる。ここで、図１４において、補間動きベクトルＳ１４が指し示す位置をａ，ｂ，ｃ，ｄとする。また、位置ａ，ｂ，ｃ，ｄを中心として点線枠で表される領域２２ａ〜２２ｄのそれぞれを、それぞれの領域（切り出された領域）に適用された窓関数ωａ〜ωｄの定義域であるとする。また、各位置ａ，ｂ，ｃ，ｄを中心とする実線枠で表されるそれぞれの領域２１ａ〜２１ｄを、それぞれの領域に適用された窓関数ωａ〜ωｄによる影響度が閾値ψよりも大きい領域であるとする。
【００８２】
上記実線枠で表される領域２１ａ〜２１ｄの大きさは、ブロックマッチングにおけるブロックＳ２のブロックサイズＢｓに等しく、これらの領域２１ａ〜２１ｄは、従来の方法によって画像がマッピングされる領域に相当する。実線枠により表されるそれぞれの領域２１ａ〜２１ｄの外の領域は、従来の方法において画像がマッピングされずに空白となる領域に相当する。
【００８３】
本実施の形態においては、補間動きベクトルＳ１４が指し示す位置に近い領域において窓関数ωの値が閾値ψより大きいので、補間画素モードが最大値モードになり、最も近い動きベクトルＳ４に対応するブロックＳ２の画素値が、混合されずに出力される。それによって、補間動きベクトルＳ１４が指し示す位置の近傍の画像が鮮明に出力される。
【００８４】
補間動きベクトルＳ１４が指し示す位置から遠い領域においては、窓関数ωの値が閾値ψより小さいので、補間画素モードが加算モードになり、周辺の全ての動きベクトルＳ４に対応するブロックＳ２の画素値が加重平均して出力される。すなわち、動きベクトルＳ４に対応するブロックＳ２より大きい画像が、動きベクトルＳ４が存在しない領域にはみ出して、マッピングされる。これにより、補間フレームにおいて空白領域が発生しない。また、当該領域において異なる動きベクトルＳ４に対応する部分画像が加重平均の効果によって滑らかに繋がり、境界ノイズの発生が抑制される。
【００８５】
このように、本実施の形態によれば、空白部分が無く、かつ動きオブジェクト周囲の境界ノイズの発生が抑制された高品質な補間フレームを生成することができ、フリッカや残像感が少ない高画質な動画像を得ることができる。
【００８６】
本実施の形態は、メモリアクセスの頻度は高いが、順次処理を行うことが可能であるので、ソフトウェア処理向けの構成である。これによって、高いコストを掛けることなく装置を構成することが可能である。
【００８７】
また、本実施の形態においては、毎秒６０フレームから毎秒１２０フレームへの２倍変換を行う場合を説明したが、この２倍変換の他に、３倍変換、４倍変換などのフレーム変換を、同様の手順で実現可能である。また、毎秒６０フレームから毎秒９０フレームへの変換など、非整数倍の変換も、同様の手順で実現可能である。
【００８８】
また、本実施の形態においては、ブロックマッチング部２、ベクトル補間部３、重ね合わせ処理部４、正規化部６がソフトウェアにより構成されているが、これらをハードウェアにより構成することも可能である。
【００８９】
（第２の実施の形態）
次に、本発明の第２の実施の形態について図１５〜図１９を参照しながら説明する。図１５は本発明の第２の実施の形態に係る画像処理装置の構成を示すブロック図である。図１６は図１５の画像処理装置による動きベクトル検出処理の手順を示すフローチャートである。図１７は図１５の画像処理装置によるベクトル抽出処理の手順を示すフローチャートである。図１８は図１５の画像処理装置による重複解決処理の手順を示すフローチャートである。図１９は図１５の動きベクトル選択部１３による候補ベクトルの選択方法を模式的に示す図である。
【００９０】
本実施の形態の画像処理装置は、メモリアクセスの頻度を低くし、並列処理を行うことを可能にするために、ハードウェアにより構成されている。これにより、高性能な画像処理装置を構成することが可能である。
【００９１】
本画像処理装置は、図１５に示すように、フレームメモリ１、動きベクトル検出部１２、動きベクトル選択部１３、距離算出部１４および影響度算出部１５を備える。また、本画像処理装置は、候補ベクトル保持部１６、影響度判定部１７、影響度正規化部１８、加重平均処理部１９および選択部２０を備える。
【００９２】
動きベクトル検出部１２は、フレームメモリ１に保持されている現フレームＦ［０］を複数のブロックＳ２に分割し、各ブロックＳ２を切り出す。そして、切り出されたブロックＳ２毎に、過去フレームＦ［−１］から抽出されたブロックＳ３とのブロックマッチングが行われ、ブロックＳ２毎に現フレームＦ［０］と過去フレーム［−１］の間の動きベクトルＳ４が検出される。すなわち、動きベクトル検出部１２は、分割されたブロックＳ２の数分（１画面分）の動きベクトルＳ４を検出する。
【００９３】
動きベクトル選択部１３は、メモリ（図示せず）を有し、該メモリに、動きベクトル検出部１２により検出された動きベクトルＳ４の全て（１画面分の動きベクトルＳ４）を保持する。動きベクトル選択部１３は、上記メモリに保持されている１画面分の動きベクトルＳ４の中から、注目する画素に影響を及ぼす可能性がある動きベクトルＳ４を、候補ベクトルＳ５として上記メモリから順に選択して出力する。
【００９４】
この候補ベクトルＳ５の選択について説明する。図１９に示すように、α点においてブロックａがブロックマッチングを行う元のブロックであるとき、ブロックａに対する動きベクトルの探索範囲は、一点鎖線で示す探索範囲ｂである。これによって、検出される動きベクトルの最大範囲は範囲ｃとなる。この動きベクトルは、過去フレームＦ［−１］から現フレームＦ［０］へ向うベクトルであるので、これを補間フレームＦ［−０．５］にマッピングすると、動きベクトルの取り得る最大範囲は最大範囲ｃの半分の範囲ｄとなる。ここで、動きベクトルが最大になってβ点を指し示すとき、このβ点を中心とした窓関数ωが影響を及ぼし得る範囲としては、範囲ｅとなる。同様に、動きベクトルがβ’点を指し示すときには、窓関数ωが影響を及ぼし得る範囲としては、範囲ｅ’となる。
【００９５】
すなわち、現フレームＦ［０］上のα点における動きベクトルによって影響を受ける可能性がある補間フレームＦ［−０．５］上の範囲は、範囲ｆとなる。範囲ｆは、［探索範囲］／２＋［窓関数の定義範囲］と表される。
【００９６】
ここで、補間フレームＦ［−０．５］上のγ点に注目すると、γ点に対して影響を及ぼし得る現フレームＦ［０］上の動きベクトルは、範囲ｇのブロックに存在する動きベクトルであることがわかる。
【００９７】
よって、注目点（注目画素位置）に対して［探索範囲］／２＋［窓関数の定義範囲］に存在する動きベクトルＳ４が、順に候補ベクトルＳ５として選択される。上記探索範囲は、
{i＝x-Sa/4-Is/2〜x+Sa/4+Is/2,j＝y-Sa/4-Is/2〜y+Sa/4+Is/2}
となる。ここで、Ｓａは、動きベクトルの探索範囲、Ｉｓは、マッピングする画像のサイズすなわち上記第１の実施の形態と同じ現フレームＦ［１］から切り出された領域である。
【００９８】
距離算出部１４は、動きベクトル選択部１３から出力された候補ベクトルＳ５の絶対値を−１／２倍し、当該ベクトルが補間フレームF［−０．５］上の指し示す座標に基づいて注目点との距離Ｓ６を算出する。具体的には、注目点との距離Ｓ６の算出には、次の（６）式が用いられる。
【００９９】
【数６】
2008288697.tif 000008
【０１００】
影響度算出部１５は、窓関数テーブル（図示せず）を保持し、当該窓関数テーブルを参照して、距離算出部１４により算出された注目点との距離Ｓ６に対応する影響度Ｓ７を算出する。
【０１０１】
候補ベクトル保持部１６は、動きベクトル選択部１３から出力された候補ベクトルＳ５と影響度算出部１５により算出された影響度Ｓ７とを対応付けて保持する。
【０１０２】
影響度判定部１７は、候補ベクトル保持部１６に保持されている全ての候補ベクトルＳ５の中から、最大の影響度の候補ベクトルＳ５を、最大動きベクトルＳ８として抽出する。そして、影響度判定部１７は、抽出した最大動きベクトルＳ８の影響度が閾値ψ以上であるか否かの判定を行い、この判定結果を影響度判定結果Ｓ９として出力するとともに、抽出した最大動きベクトルＳ８を出力する。
【０１０３】
影響度正規化部１８は、候補ベクトル保持部１６に保持されている全ての候補ベクトルＳ５を含むベクトル群を候補ベクトル群Ｓ２０として読み出す。そして、影響度正規化部１８は、候補ベクトル群Ｓ２０の各候補ベクトルＳ５の影響度を正規化し、影響度が正規化された候補ベクトルＳ５の全てを含む正規化候補ベクトル群Ｓ１１を生成する。
【０１０４】
ここで、候補ベクトル群Ｓ２０に含まれる候補ベクトルの総数をＮ個、候補ベクトル群Ｓ２０のｎ番目の候補ベクトルを［Ｓ２０（ｎ）］、その影響度を［Ｓ２０（ｎ）］：Ｅとする。そして、正規化候補ベクトル群Ｓ１１のｎ番目のベクトルを［Ｓ１１（ｎ）］、その正規化影響度を［Ｓ１１（ｎ）］：Ｅ’とすると、その正規化影響度を［Ｓ１１（ｎ）］：Ｅ’は、次の（７）式により表される。
【０１０５】
【数７】
2008288697.tif 000009
【０１０６】
加重平均処理部１９は、影響度正規化部１８から出力された正規化候補ベクトル群Ｓ１１の動きベクトルによって指し示される参照画素群Ｓ２１をフレームメモリ１から読み出す。そして、加重平均処理部１９は、正規化候補ベクトル群Ｓ１１の影響度に基づいて参照画素群Ｓ２１の加重平均処理を行い、当該加重平均処理によって得られた加重平均値を画素値とする加重平均画素Ｓ１２を出力する。上記加重平均処理は、具体的には、以下の（８）式に従って行われる。
【０１０７】
【数８】
2008288697.tif 000010
【０１０８】
選択部２０は、影響度判定部１７から出力された影響度判定結果Ｓ９に基づいて最大影響画素Ｓ１０の画素値と加重平均画素Ｓ１２の画素値のいずれか一方を選択し、選択された画素値の画素を出力画素Ｓ１３として出力する。具体的には、影響度判定結果Ｓ９が、最大動きベクトルＳ８の影響度が閾値ψ以上であることを示す場合、最大動きベクトルＳ８によって指し示される最大影響画素Ｓ１０がフレームメモリ１の現フレームＦ［０］から抽出され、当該最大影響画素Ｓ１０の画素値が出力画素Ｓ１３の画素値として選択される。これに対し、影響度判定結果Ｓ９が、最大動きベクトルＳ８の影響度が閾値ψより小さいことを示す場合、加重平均処理部１９から出力された加重平均画素Ｓ１２の画素値が出力画素Ｓ１３の画素値が選択される。
【０１０９】
次に、本画像処理装置の補間フレーム生成処理について図１６〜図１８を参照しながら説明する。
【０１１０】
本画像処理装置においては、図１６に示すように、まず、動きベクトル検出部１２による動きベクトル検出処理が開始される。動きベクトル検出処理においては、外部装置からフレームメモリ１に、動画像を構成するフレームとして現フレームＦ［０］の画像Ｓ１が入力される（ステップＳ２０１）。このとき、フレームメモリ１には、過去フレームＦ［−１］の画像が保持されている。また、フレームメモリ１における、補間フレームＦ［−０．５］の画像の格納領域の値がクリアされている。
【０１１１】
次いで、フレームメモリ１に保持されている現フレームＦ［０］が矩形状の複数のブロックＳ２に分割され、これらのブロックＳ２から１つのブロックＳ２が切り出される（ステップＳ２０２）。続いて、過去フレームＦ［−１］から、上記抽出された１つのブロックＳ２に対応するブロックＳ３が切り出される（ステップＳ２０３）。そして、上記切り出されたブロックＳ２とブロックＳ３のブロックマッチングが行われ、動きベクトルＳ４が検出される（ステップＳ２０４）。このブロックマッチングは、上記第１の実施の形態と同じものである。検出された動きベクトルＳ４は、動きベクトル選択部１３に出力され、動きベクトル選択部１３のメモリに保持される（ステップＳ２０５）。
【０１１２】
次いで、動きベクトル検出部１２は、１画面分の動きベクトルＳ４の検出が終了したか否かを判定し（ステップＳ２０６）。ここで、１画面分の動きベクトルＳ４の検出が終了していなければ、上記ステップＳ２０２へ戻り、次の動きベクトルＳ４の検出が行われる。
【０１１３】
これに対し、１画面分の動きベクトルＳ４の検出が終了されると、候補ベクトル抽出処理が開始される。このとき、動きベクトル選択部１３のメモリには、分割されたブロックＳ２の数分（１画面分）の動きベクトルＳ４が保持されている。上記候補ベクトル抽出処理は、補間フレームＦ［−０．５］の画像を構成する各画素について行われる。処理範囲は、｛ｘ＝１〜Ｘ，ｙ＝１〜Ｙ｝となる。
【０１１４】
上記候補ベクトル抽出処理においては、図１７に示すように、まず、動きベクトル選択部１３により、そのメモリに保持されている１画面分の動きベクトルＳ４の中から、候補ベクトルＳ５が順に選択される（ステップＳ２０７）。そして、距離算出部１４により、上記（６）式を用いて、上記選択された候補ベクトルＳ５を−１／２倍したベクトルが指し示す位置と注目点との間の距離Ｓ６が算出される（ステップＳ２０８）。
【０１１５】
次いで、影響度算出部１９により、窓関数テーブル５を参照して上記距離Ｓ６に対応する影響度Ｓ７が算出される（ステップＳ２０９）。そして、算出された影響度Ｓ７は、動きベクトル選択部１３から出力された候補ベクトルＳ５と対応付けられて候補ベクトル保持部１６に保持される（ステップＳ２１０）。
【０１１６】
次いで、次に選択すべき候補ベクトルＳ５があるか否かの判定が行われる（ステップＳ２１１）。ここで、次に選択すべき候補ベクトルＳ５があれば、再度ステップＳ２０７に戻り、動きベクトル選択部１３により、次の候補ベクトルＳ５の選択が行われる。これに対し、次に選択すべき候補ベクトルＳ５がなければ、重複解決処理が開始される。
【０１１７】
重複解決処理においては、図１８に示すように、影響度判定部１７により、候補ベクトル保持部１６に保持されている候補ベクトルＳ５の中から、影響度が最大である候補ベクトルＳ５が最大動きベクトルＳ８として抽出される（ステップＳ２１２）。そして、影響度判定部１７により、抽出された最大動きベクトルＳ８の影響度が閾値ψ以上であるか否かの判定が行われる（ステップＳ２１３）。この判定結果は、影響度判定結果Ｓ９として影響度正規化部１８および選択部２０に出力される。
【０１１８】
ここで、影響度判定結果Ｓ９が最大動きベクトルＳ８の影響度が閾値ψより小さいことを示す場合、影響度正規化部１８により、候補ベクトルＳ５の影響度の正規化が行われる（ステップＳ２１５）。この正規化により、正規化候補ベクトル群Ｓ１１が生成されて加重平均処理部１９に出力される。
【０１１９】
次いで、加重平均処理部１９により、影響度正規化部１８から出力された正規化候補ベクトル群Ｓ１１の影響度に基づいて参照画素群Ｓ２１の加重平均処理が行われる（ステップＳ２１６）。参照画素群Ｓ２１は、正規化候補ベクトル群Ｓ１１の動きベクトルによって指し示されるものであり、当該参照画素群Ｓ２１の加重平均処理によって得られた加重平均画素Ｓ１２が選択部１０に出力される。そして、選択部１０により、加重平均処理部１９から出力された加重平均画素Ｓ１２が出力画素Ｓ１３として選択されて出力される（ステップＳ２１７）。
【０１２０】
上記影響度判定結果Ｓ９が最大動きベクトルＳ８の影響度が閾値ψ以上であることを示す場合、選択部２０により、最大動きベクトルＳ８によって指し示される最大影響画素Ｓ１０がフレームメモリ１の現フレームＦ［０］から抽出される。そして、この最大影響画素Ｓ１０は、出力画素Ｓ１３として選択されて出力される（ステップＳ２１７）。この場合、影響度正規化部１８は動作しない。
【０１２１】
次いで、補間フレームＦ［−０．５］上の全ての画素の出力が終了したか否かの判定が行われる（ステップＳ２１８）。ここで、補間フレームＦ［−０．５］上の全ての画素の出力が終了していない場合、上記ステップＳ２１７に戻り、補間フレームＦ［−０．５］上の次の画素に対するベクトル抽出処理が開始される。これに対し、補間フレームＦ［−０．５］上の全ての画素の出力が終了した場合、本処理は終了する。
【０１２２】
以上より、本実施の形態によれば、上記第１の実施の形態と同じ効果を得ることができる。
【０１２３】
（第３の実施の形態）
次に、本発明の第３の実施の形態について図２０〜図２２を参照しながら説明する。図２０は本発明の第３の実施の形態に係る画像処理装置の構成を示すブロック図である。図２１は図２０の画像処理装置による補間フレーム生成処理の手順を示すフローチャートである。図２２は図２０の混合比率算出部２１により算出される混合比率Ｓ３１と最大動きベクトルＳ８の影響度との関係を模式的に示す図である。
【０１２４】
本実施の形態は、上記第２の実施の形態と同様に、メモリアクセスの頻度を低くし、並列処理を行うことを可能にするために、ハードウェアにより構成されている。但し、本実施の形態は、重複解決処理において、上記第２の実施の形態のように閾値ψを用いて処理の切り換えを行わずに、処理を連続的に行うように構成されている点で、上記第２の実施の形態と異なる。
【０１２５】
本実施の形態の画像処理装置は、図２０に示すように、フレームメモリ１、動きベクトル検出部１２、動きベクトル選択部１３、距離算出部１４および影響度算出部１５を備える。また、本画像処理装置は、候補ベクトル保持部１６、混合比率算出部２１、影響度正規化部１８、加重平均処理部１９および混合部２２を備える。ここで、上記第２の実施の形態と同一の機能ブロックには、同一の符号を付し、その説明は省略する。そして、異なる部分について説明する。
【０１２６】
混合比率算出部２１は、候補ベクトル保持部１６に保持されている全ての候補ベクトルＳ５の中から、最大の影響度の候補ベクトルＳ５を、最大動きベクトルＳ８として抽出する。そして、混合比率算出部２１は、抽出された最大動きベクトルＳ８の影響度と閾値ψに基づいて、最大影響画素Ｓ１０の画素値に対する加重平均画素Ｓ１２の画素値の混合比率Ｓ３１を算出する。
【０１２７】
この混合比率Ｓ３１は、図２２に示すように、最大動きベクトルＳ８の影響度が閾値ψを中心として±緩衝値ξの幅を有する緩衝区間（所定範囲）内にある場合と、最大動きベクトルＳ８の影響度が緩衝区間外にある場合とに分けて算出される。
【０１２８】
具体的には、最大動きベクトルＳ８の影響度が上記緩衝区間内にある場合すなわち上記緩衝区間の下限値（ψ−ξ）と上限値（ψ＋ξ）との間にある場合、混合比率Ｓ３１は、最大動きベクトルＳ８の影響度に比例して漸次大きくなるように算出される。ここで、混合比率Ｓ３１は、最大動きベクトルＳ８の影響度が上記緩衝区間の下限値（ψ−ξ）に等しい場合、０％、最大動きベクトルＳ８の影響度が上記緩衝区間の上限値（ψ＋ξ）に等しい場合、１００％とされる。
【０１２９】
これに対し、最大動きベクトルＳ８の影響度が緩衝区間外にある場合としては、最大動きベクトルＳ８の影響度が上記緩衝区間の下限値（ψ−ξ）より小さい場合、最大動きベクトルＳ８の影響度が上記緩衝区間の上限値（ψ＋ξ）より大きい場合とがある。最大動きベクトルＳ８の影響度が上記緩衝区間の下限値（ψ−ξ）より小さい場合、混合比率Ｓ３１は０％、最大動きベクトルＳ８の影響度が上記緩衝区間の上限値（ψ＋ξ）より大きい場合、１００％とされる。
【０１３０】
混合部２２は、上記算出された混合比率Ｓ３１で、最大影響画素Ｓ１０と加重平均画素Ｓ１２を混合して、出力画素Ｓ１３として出力する。
【０１３１】
次に、本画像処理装置の補間フレーム生成処理について図２１を参照しながら説明する。
【０１３２】
本画像処理装置においては、図２１に示すように、まず、１画面分の動きベクトルを検出するための動きベクトル検出処理が行われる（ステップＳ３０１）。この動きベクトル検出処理は、図１６のフローチャートに示す手順（ステップＳ２０１〜ステップＳ２０６）と同じ手順で実施される。
【０１３３】
次いで、この動きベクトル検出処理により検出された動きベクトルの中から、注目する画素に影響を及ぼす可能性がある動きベクトルＳ４である候補ベクトルＳ５を抽出するためのベクトル抽出処理が行われる（ステップＳ３０２）。このベクトル抽出処理は、図１７のフローチャートに示す手順（ステップＳ２０７〜ステップＳ２１１）と同じ手順で実施される。
【０１３４】
上記ベクトル抽出処理により候補ベクトルＳ５の抽出が終了すると、重複解決処理が開始される。
【０１３５】
重複解決処理においては、混合比率算出部２１により、候補ベクトル保持部１６に保持されている候補ベクトルＳ５の中から、影響度が最大である候補ベクトルＳ５が最大動きベクトルＳ８として抽出される（ステップＳ３０３）。そして、混合比率算出部２１により、最大影響画素Ｓ１０に対する加重平均画素Ｓ１２の混合比率Ｓ３１が算出される（ステップＳ３０４）。
【０１３６】
次いで、影響度正規化部１８により、候補ベクトルＳ５の影響度の正規化が行われる（ステップＳ３０５）。この正規化により、正規化候補ベクトル群Ｓ１１が生成されて加重平均処理部１９に出力される。そして、加重平均処理部１９により、影響度正規化部１８から出力された正規化候補ベクトル群Ｓ１１の影響度に基づいて参照画素群Ｓ２１の加重平均処理が行われる（ステップＳ３０６）。この加重平均処理によって得られた加重平均値を画素値とする加重平均画素Ｓ１２は、混合部１０に出力される。
【０１３７】
次いで、選択部２０により、最大動きベクトルＳ８によって指し示される最大影響画素Ｓ１０がフレームメモリ１の現フレームＦ［０］から抽出される（ステップＳ３０７）。そして、選択部１０により、加重平均処理部１９から出力された加重平均画素Ｓ１２の画素値と、フレームメモリ１の現フレームＦ［０］から抽出された最大影響画素Ｓ１０の画素値が上記混合比率Ｓ３１で混合される（ステップＳ３０８）。この混合により出力画素Ｓ１３の画素値が得れ、当該出力画素Ｓ１３が出力される。
【０１３８】
次いで、補間フレームＦ［−０．５］上の全ての画素の出力が終了したか否かの判定が行われる（ステップＳ３０９）。ここで、補間フレームＦ［−０．５］上の全ての画素の出力が終了していない場合、上記ステップＳ３０２に戻り、補間フレームＦ［−０．５］上の次の画素に対するベクトル抽出処理が開始される。これに対し、補間フレームＦ［−０．５］上の全ての画素の出力が終了した場合、本処理は終了する。
【０１３９】
このように、本実施の形態においては、重複解決処理において、混合比率Ｓ３１を算出することによって、最大動きベクトルＳ８の影響度と閾値ψに基づいた処理の切り換えを行うことなく、連続的な処理により補間画素を出力することができる。その結果、より滑らかな画像出力を得ることができる。
【図面の簡単な説明】
【０１４０】
【図１】本発明の第１の実施の形態に係る画像処理装置の構成を示すブロック図である。
【図２】現フレームＦ［０］から切り出された複数のブロックの一例を示す図である。
【図３】現フレームＦ［０］の１フレーム前のフレームＦ［−１］から切り出されたブロックの一例を示す図である。
【図４】ブロックＳ２に最も一致する部分画像（８×８画素のブロック画像）Ｓ３ａのオフセットに基づいて検出された動きベクトルＳ４を示す図である。
【図５】ブロックマッチング部２により求められたた動きベクトルＳ４に基づいて求められた補間動きベクトルＳ１４を示す図である。
【図６】重ね合わせ処理部４により補間フレームＦ［−０．５］上にマッピングする画像のサイズを示す図である。
【図７】補間画素毎に対応付けられている、加算／最大値モード、影響度および画素値を格納する情報フィールドの構成を示す図である。
【図８】窓関数ωの分布を示す図である。
【図９】窓関数ωの動きベクトルと影響度の関係を表す特性を示す図である。
【図１０】補間動きベクトルＳ１４、マッピングする画像のサイズＩａ、影響度Ｓ１６の関係を模式的に示す図である。
【図１１】ブロックマッチング部２による動きベクトル検出処理およびベクトル補間部３による補間ベクトル出力処理の手順を示すフローチャートである。
【図１２】重ね合わせ処理部４による重ね合わせ処理の手順を示すフローチャートである。
【図１３】正規化部６による正規化処理の手順を示すフローチャートである。
【図１４】図１の画像処理装置による補間フレーム生成処理の結果の一例を模式的に示す図である。
【図１５】本発明の第２の実施の形態に係る画像処理装置の構成を示すブロック図である。
【図１６】図１５の画像処理装置による動きベクトル検出処理の手順を示すフローチャートである。
【図１７】図１５の画像処理装置によるベクトル抽出処理の手順を示すフローチャートである。
【図１８】図１５の画像処理装置による重複解決処理の手順を示すフローチャートである。
【図１９】図１５の動きベクトル選択部１３による候補ベクトルの選択方法を模式的に示す図である。
【図２０】本発明の第３の実施の形態に係る画像処理装置の構成を示すブロック図である。
【図２１】図２０の画像処理装置による補間フレーム生成処理の手順を示すフローチャートである。
【図２２】図２０の混合比率算出部２１により算出される混合比率Ｓ３１と最大動きベクトルＳ８の影響度との関係を模式的に示す図である。
【図２３】従来の補間フレームの生成方法を模式的に示す図である。
【符号の説明】
【０１４１】
１  フレームメモリ
２  ブロックマッチング部
３  ベクトル補間部
４  重ね合わせ処理部
５  窓関数テーブル
６  正規化部
１２  動きベクトル検出部
１３  動きベクトル選択部
１４  距離算出部
１５  影響度算出部
１６  候補ベクトル保持部
１７  影響度判定部
１８  影響度正規化部
１９  加重平均処理部
２０  選択部
２１  混合比率算出部
２２  混合部
【図１】
2008288697.tif 000011
【図２】
2008288697.tif 000012
【図３】
2008288697.tif 000013
【図４】
2008288697.tif 000014
【図５】
2008288697.tif 000015
【図６】
2008288697.tif 000016
【図７】
2008288697.tif 000017
【図８】
2008288697.tif 000018
【図９】
2008288697.tif 000019
【図１０】
2008288697.tif 000020
【図１１】
2008288697.tif 000021
【図１２】
2008288697.tif 000022
【図１３】
2008288697.tif 000023
【図１４】
2008288697.tif 000024
【図１５】
2008288697.tif 000025
【図１６】
2008288697.tif 000026
【図１７】
2008288697.tif 000027
【図１８】
2008288697.tif 000028
【図１９】
2008288697.tif 000029
【図２０】
2008288697.tif 000030
【図２１】
2008288697.tif 000031
【図２２】
2008288697.tif 000032
【図２３】
2008288697.tif 000033