(57)【特許請求の範囲】
【請求項１】
インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理装置において、
前記入力画像をプログレッシブ方式の中間画像に変換するIP変換手段と、
前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルを検出する動きベクトル検出手段と、
前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数を設定する巡回係数設定手段と、
前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像を生成する動き補償手段と、
前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する出力画像生成手段と
を備える画像処理装置。
【請求項２】
前記巡回係数設定手段は、前記垂直動き量の絶対値が0または前記中間画像の画素の間隔の偶数倍に近いほど、前記第１の巡回係数および前記第２の巡回係数を小さい値に設定し、前記垂直動き量が前記中間画像の画素の間隔の奇数倍に近いほど、前記第１の巡回係数および前記第２の巡回係数を大きい値に設定する
請求項１に記載の画像処理装置。
【請求項３】
前記巡回係数設定手段は、同じ値の前記垂直動き量に対して、前記第２の巡回係数を前記第１の巡回係数より大きい値に設定する
請求項１に記載の画像処理装置。
【請求項４】
前記動きベクトルの信頼度を検出する信頼度検出手段と、
前記動きベクトルの信頼度に基づいて、前記第１の巡回係数および前記第２の巡回係数を補正する補正手段と
をさらに備える請求項１に記載の画像処理装置。
【請求項５】
前記信頼度検出手段は、前記動きベクトルの信頼度として、それぞれの前記動きベクトルについて、周辺の前記動きベクトルとのばらつきの度合いを示す第１の動き分散を検出し、
前記補正手段は、前記第１の動き分散が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正する
請求項４に記載の画像処理装置。
【請求項６】
前記信頼度検出手段は、さらに、前記動きベクトルの信頼度として、それぞれの前記動きベクトルについて、その前記動きベクトルに対応する画素を前記動きベクトルで示される方向および距離だけ移動した位置の周辺における１フレーム前の動きベクトルとのばらつきの度合いを示す第２の動き分散を検出し、
前記補正手段は、さらに、前記第２の動き分散が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正する
請求項５に記載の画像処理装置。
【請求項７】
前記動きベクトル検出手段は、所定の大きさのブロックごとに前記動きベクトルを検出し、
前記信頼度検出手段は、前記入力画像の前記ブロック内の画素値と、前記ブロックを前記動きベクトルで示される方向および距離だけ移動させた前記過去の出力画像のブロック内の画素値との差分値を検出し、
前記補正手段は、前記差分値が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正する
請求項４に記載の画像処理装置。
【請求項８】
インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理方法において、
前記入力画像をプログレッシブ方式の中間画像に変換し、
前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルを検出し、
前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数を設定し、
前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像を生成し、
前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する
ステップを含む画像処理方法。
【請求項９】
インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理を、コンピュータに実行させるプログラムにおいて、
前記入力画像をプログレッシブ方式の中間画像に変換し、
前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルを検出し、
前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数を設定し、
前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像を生成し、
前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、並びに、プログラムに関し、特に、インターレース方式の画像を、より良好な画質のプログレッシブ方式の画像に変換することができるようにする画像処理装置および方法、並びに、プログラムに関する。
【背景技術】
【０００２】
垂直方向に動く被写体を撮影したり、撮影装置を垂直方向に動かして撮影した場合、インターレース方式の画像（以下、インターレース画像とも称する）においては、垂直方向の帯域制限が不十分なため、垂直方向の折り返し歪み（以下、垂直折り返し歪みと称する）が発生し、水平方向の線の太さが変動したり、エッジの強さが変動したりする現象が発生する。また、垂直折り返し歪みは、インターレース方式の画像をプログレッシブ方式の画像（以下、プログレッシブ画像とも称する）に変換（以下、IP変換と称する）した場合、さらに目立って見える特徴がある。
【０００３】
ところで、従来、IP変換の１つの方法として、動きベクトルを用いて動き補償を行うことにより、被写体が動く部分の解像度を向上させる手法が提案されている（例えば、特許文献１参照）。
【０００４】
また、従来、現在のフレームの画像と１フレーム前の画像との間の動きベクトルを求め、現在のフレームの画像と、1フレーム前の画像に動きベクトルを用いて動き補償を施した画像を、巡回係数と呼ばれる係数を用いて重み付け加算することにより、垂直折り返し歪みのような周期的な歪みやランダムなノイズを低減する方法がある。この方法では、巡回係数をK(0≦K≦1)とした場合、現在のフレームの画素値が1-K倍され、動き補償を施した画像の画素値がK倍されて加算される。しかし、巡回係数を大きくしすぎると、垂直折り返し歪みやランダムなノイズが低減される一方、被写体が動いている領域において残像などによる画像のボケが発生することがある。そのため、さらに、現在のフレームの画像と、１つ前のフレームの画像との間の差である動き成分に基づいて、巡回係数を変化させることが提案されている（例えば、特許文献２参照）。
【０００５】
【特許文献１】特開２０００−２６１７６８号公報
【特許文献２】特開２００４−８８２３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の発明では、IP変換後のプログレッシブ画像において、被写体が動いている領域の解像度は向上するが、垂直方向の折り返し歪みを抑制することが困難である。
【０００７】
また、特許文献２に記載の発明では、動き成分に基づいてのみ巡回係数を変化させるため、画像のボケを十分に抑制することが困難である。
【０００８】
本発明は、このような状況を鑑みてなされたものであり、インターレース方式の画像を、より良好な画質のプログレッシブ方式の画像に変換することができるようにするものである。
【課題を解決するための手段】
【０００９】
本発明の一側面の画像処理装置は、インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理装置であって、前記入力画像をプログレッシブ方式の中間画像に変換するIP変換手段と、前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルを検出する動きベクトル検出手段と、前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数を設定する巡回係数設定手段と、前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像を生成する動き補償手段と、前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する出力画像生成手段とが設けられている。
【００１０】
前記巡回係数設定手段には、前記垂直動き量の絶対値が0または前記中間画像の画素の間隔の偶数倍に近いほど、前記第１の巡回係数および前記第２の巡回係数を小さい値に設定し、前記垂直動き量が前記中間画像の画素の間隔の奇数倍に近いほど、前記第１の巡回係数および前記第２の巡回係数を大きい値に設定させることができる。
【００１１】
前記巡回係数設定手段には、同じ値の前記垂直動き量に対して、前記第２の巡回係数を前記第１の巡回係数より大きい値に設定させることができる。
【００１２】
前記動きベクトルの信頼度を検出する信頼度検出手段と、前記動きベクトルの信頼度に基づいて、前記第１の巡回係数および前記第２の巡回係数を補正する補正手段とをさらに設けることができる。
【００１３】
前記信頼度検出手段には、前記動きベクトルの信頼度として、それぞれの前記動きベクトルについて、周辺の前記動きベクトルとのばらつきの度合いを示す第１の動き分散を検出させ、前記補正手段には、前記第１の動き分散が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正させることができる。
【００１４】
前記信頼度検出手段には、さらに、前記動きベクトルの信頼度として、それぞれの前記動きベクトルについて、その前記動きベクトルに対応する画素を前記動きベクトルで示される方向および距離だけ移動した位置の周辺における１フレーム前の動きベクトルとのばらつきの度合いを示す第２の動き分散を検出させ、前記補正手段には、さらに、前記第２の動き分散が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正させることができる。
【００１５】
前記動きベクトル検出手段には、所定の大きさのブロックごとに前記動きベクトルを検出させ、前記信頼度検出手段には、前記入力画像の前記ブロック内の画素値と、前記ブロックを前記動きベクトルで示される方向および距離だけ移動させた前記過去の出力画像のブロック内の画素値との差分値を検出させ、前記補正手段には、前記差分値が大きいほど、前記第１の巡回係数および前記第２の巡回係数を小さくするように補正させることができる。
【００１６】
本発明の一側面の画像処理方法、または、プログラムは、インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理方法、または、インターレース方式の入力画像をプログレッシブ方式の出力画像に変換する画像処理をコンピュータに実行させるプログラムであって、前記入力画像をプログレッシブ方式の中間画像に変換し、前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルを検出し、前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数を設定し、前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像を生成し、前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成するステップを含む。
【００１７】
本発明の一側面においては、前記入力画像がプログレッシブ方式の中間画像に変換され、前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトルが検出され、前記動きベクトルの垂直方向の成分である垂直動き量に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素に対する第１の巡回係数、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素に対する第２の巡回係数が設定され、前記動きベクトルに基づいて、過去の前記出力画像に対して動き補償を施した画像である動き補償画像が生成され、前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像が生成される。
【発明の効果】
【００１８】
以上のように、本発明の一側面によれば、インターレース方式の画像を、プログレッシブ方式の画像に変換することができる。特に、本発明の一側面によれば、インターレース方式の画像を、より良好な画質のプログレッシブ方式の画像に変換することができる。
【発明を実施するための最良の形態】
【００１９】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２０】
本発明の一側面の画像処理装置（例えば、図２の巡回型IP変換部１１１）は、第１に、インターレース方式の入力画像（例えば、画像I1）をプログレッシブ方式の出力画像（例えば、画像P2）に変換する画像処理装置であって、前記入力画像をプログレッシブ方式の中間画像（例えば、画像P1）に変換するIP変換手段（例えば、図２のIP変換部１２１）と、前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像の動きベクトル（例えば、動きベクトルV）を検出する動きベクトル検出手段（例えば、図２の動きベクトル検出部１３１）と、前記動きベクトルの垂直方向の成分である垂直動き量（例えば、垂直動き量VY）に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素（例えば、タイプＡの画素）に対する第１の巡回係数（例えば、巡回係数KA0）、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素（例えば、タイプＢの画素）に対する第２の巡回係数（例えば、巡回係数KB0）を設定する巡回係数設定手段（例えば、図２の巡回係数設定部１３３）と、前記動きベクトルに基づいて、過去の前記出力画像（例えば、画像P3）に対して動き補償を施した画像である動き補償画像（例えば、画像P4）を生成する動き補償手段（例えば、図２の動き補償部１３４）と、前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する出力画像生成手段（例えば、図２の積和演算部１３５）とを備える。
【００２１】
本発明の一側面の画像処理装置は、第２に、前記動きベクトルの信頼度を検出する信頼度検出手段（例えば、図５の動き分散差し引き量算出部１８１またはMCブロック差分差し引き量算出部１８２）と、前記動きベクトルの信頼度に基づいて、前記第１の巡回係数および前記第２の巡回係数を補正する補正手段（例えば、減算部１８３−１および１８３−３、または、減算部１８３−２および１８３−４）とをさらに備える。
【００２２】
本発明の一側面の画像処理方法またはプログラムは、インターレース方式の入力画像（例えば、画像I1）をプログレッシブ方式の出力画像（例えば、画像P2）に変換する画像処理方法、または、インターレース方式の入力画像（例えば、画像I1）をプログレッシブ方式の出力画像（例えば、画像P2）に変換する画像処理を、コンピュータに実行させるプログラムであって、前記入力画像をプログレッシブ方式の中間画像（例えば、画像P1）に変換し（例えば、図６のステップＳ１）、前記中間画像の画素の間隔より短い距離を最小単位とする前記入力画像および前記中間画像の動きベクトル（例えば、動きベクトルV）を検出し（例えば、図８のステップＳ２１）、前記動きベクトルの垂直方向の成分である垂直動き量（例えば、垂直動き量VY）に基づいて、前記入力画像に画素が存在する位置にある第１のタイプの画素（例えば、タイプＡの画素）に対する第１の巡回係数（例えば、巡回係数KA0）、および、前記入力画像に画素が存在しない位置にある第２のタイプの画素（例えば、タイプＢの画素）に対する第２の巡回係数（例えば、巡回係数KB0）を設定し（例えば、図８のステップＳ２３）、前記動きベクトルに基づいて、過去の前記出力画像（例えば、画像P3）に対して動き補償を施した画像である動き補償画像（例えば、画像P4）を生成し（例えば、図８のステップＳ２８）、前記中間画像の前記第１のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第１の巡回係数を用いて重み付け加算し、前記中間画像の前記第２のタイプの画素の画素値と前記動き補償画像の対応する位置にある画素の画素値とを前記第２の巡回係数を用いて重み付け加算した画素値からなる前記出力画像を生成する（例えば、図８のステップＳ２９）ステップとを含む。
【００２３】
以下、本発明の実施の形態について図を参照して説明する。
【００２４】
図１は、本発明を適用した画像変換装置１０１の一実施の形態を示すブロック図である。画像変換装置１０１は、巡回型IP変換部１１１、出力位相変換部１１２、自然画予測部１１３、人工画予測部１１４、自然画人工画判定部１１５、および、合成部１１６により構成される。また、巡回型IP変換部１１１は、IP変換部１２１および巡回型変換部１２２により構成される。
【００２５】
巡回型IP変換部１１１のIP変換部１２１および巡回型変換部１２２には、処理対象となるインターレース方式のＳＤ（Standard Definition）画像が入力される。
【００２６】
IP変換部１２１は、所定の方法に基づいて、入力されたインターレース方式のＳＤ画像（以下、入力画像とも称する）をプログレッシブ方式のＳＤ画像（以下、中間画像とも称する）にIP変換し、IP変換したプログレッシブ方式のＳＤ画像を巡回型変換部１２２に供給する。
【００２７】
巡回型変換部１２２は、入力画像と、１フレーム前に巡回型変換部１２２から出力されたプログレッシブ方式のＳＤ画像（以下、出力画像とも称する）との間の動きベクトルを求める。巡回型変換部１２２は、入力画像の画素値と、求めた動きベクトルに基づいて、出力画像に動き補償を施した画像の画素値とを、巡回係数を用いて重み付け加算することにより、中間画像の画質を向上させる。巡回型変換部１２２は、中間画像をより高画質のプログレッシブ方式のＳＤ画像である出力画像に変換し、出力画像を出力位相変換部１１２に供給する。なお、巡回係数は、中間画像の各画素について、変換前の入力画像において画素が存在する位置にあるか否か、動きベクトルの垂直方向の大きさ、および、動きベクトルの確からしさを表す信頼度確からしさに基づいて設定される。
【００２８】
出力位相変換部１１２は、巡回型変換部１２２から供給されるＳＤ画像に対して、水平方向および垂直方向に補間を行うことにより、ＨＤ（High Definition）画像を生成する。出力位相変換部１１２は、そのＨＤ画像を、自然画予測部１１３、人工画予測部１１４、および、自然画人工画判定部１１５に供給する。
【００２９】
自然画予測部１１３は、出力位相変換部１１２から供給されるＨＤ画像から、そのＨＤ画像のうちの自然画像を高品質にしたＨＤ画像（以下、自然高品画像と称する）を予測する。具体的には、自然画予測部１１３は、ＨＤ画像の特徴に応じて、そのＨＤ画像から求められる自然高品質画像の画素である注目画素を、自然画像の特徴に適したクラスに分類する。そして、自然画予測部１１３は、そのクラスに対応する、自然高品質画像を予測するための予測係数と、ＨＤ画像とを用いて演算することにより、出力位相変換部１１２から供給されたＨＤ画像から、自然高品質画像を予測する。自然画予測部１１３は、その自然高品質画像を合成部１１６に供給する。
【００３０】
ここで、自然画像とは、後述する人工画像ではない画像のことであり、自然界に存在するものをそのまま撮像することにより得られる画像である。
【００３１】
人工画予測部１１４は、自然画予測部１１３と同様に、出力位相変換部１１２から供給されるＨＤ画像から、そのＨＤ画像のうちの人工画像を高品質にしたＨＤ画像(以下、人工高品質画像と称する)を予測する。具体的には、人工画予測部１１４は、ＨＤ画像の特徴に応じて、そのＨＤ画像から求められる人工高品質画像の画素である注目画素を、人工画像の特徴に適したクラスに分類する。そして、人工画予測部１１４は、そのクラスに対応する、人工高品質画像を予測するための予測係数と、ＨＤ画像とを用いて演算することにより、出力位相変換部１１２から供給されたＨＤ画像から、人工高品質画像を予測する。人工画予測部１１４は、その人工高品質画像を合成部１１６に出力する。
【００３２】
ここで、人工画像とは、文字や単純な図形などの、階調が少なく位相情報であるエッジ位相情報がはっきりした、すなわち、平坦部分が多い人工的な画像である。換言すれば、人工画像は、文字や単純図形等の階調があまり無く、輪郭等の位相情報が支配的になっている画像である。
【００３３】
自然画人工画判定部１１５は、出力位相変換部１１２より供給されるHD画像の各画素について、人工画像に分類される領域、または、自然画像に分類される領域のいずれの領域に属するかを判定し、判定結果を人工画度として合成部１１６に出力する。すなわち、人工画度とは、人工画像と自然画像との中間に分類される領域において自然画像における人工画像の割合を０乃至１の値で示したものである。
【００３４】
合成部１１６は、自然画人工画判定部１１５より供給される判定結果に基づいて、自然画予測部１１３から供給される自然高品質画像の各画素の画素値と、人工画予測部１１４から供給される人工高品質画像の各画素の画素値とを人工画度に応じた割合で合成し、合成の結果得られるHD画像を出力する。
【００３５】
図２は、図１の巡回型IP変換部１１１の巡回型変換部１２２の機能的構成を詳細に示したブロック図である。巡回型変換部１２２は、動きベクトル検出部１３１、MCブロック差分検出部１３２、巡回係数設定部１３３、動き補償部１３４、積和演算部１３５、および、フレームメモリ１３６により構成される。
【００３６】
なお、以下、巡回型IP変換部１１１で処理される各画像の画素の位置を表す座標系について、水平（横）方向をx軸方向とし、垂直（縦）方向をy軸方向とする。すなわち、各画素の座標は、(x,y)で表される。また、以下、外部からIP変換部１２１に入力されるインターレース方式のＳＤ画像である入力画像を画像I1とも称し、IP変換部１２１から出力されるプログレッシブ方式のＳＤ画像である中間画像を画像P1とも称する。
【００３７】
また、一般的に、プログレッシブ画像には、IP変換前のインターレース画像において画素が存在する位置にある画素と、存在しない位置にある画素の２種類の画素がある。以下、この２種類の画素を区別する場合、前者をＡタイプの画素、後者をＢタイプの画素という。
【００３８】
図３は、IP変換前のインターレース画像およびIP変換後のプログレッシブ画像の画素の位置の関係を示す図である。図３の横軸方向は、時間を示し、縦軸方向は、画素の位置を示す。この図３の例において、白丸に囲まれた黒丸で示される画素が、Aタイプの画素であり、黒丸のみで示される画素が、Ｂタイプの画素である。
【００３９】
動きベクトル検出部１３１は、画像I1の各画素の動きベクトルを検出する。具体的には、動きベクトル検出部１３１は、１フレーム前に巡回型変換部１２２から出力されたプログレッシブSD画像である出力画像であって、フレームメモリ１３６に記憶されている画像（以下、画像P3とも称する）を、フレームメモリ１３６から読み出す。動きベクトル検出部１３１は、図１８を参照して後述するように、画像I1を、所定の大きさ、すなわち、縦N×横M画素のブロックに分割し、ブロックごとに、画素以下精度で、すなわち、プログレッシブ画像における画素の間隔より短い距離を最小単位として、動きベクトルを検出する。なお、画像I1に実際に存在しないＢタイプの画素に対しては、その画素が含まれるブロックの動きベクトルが適用される。
【００４０】
なお、以下、ブロックなど、各画像内の所定のブロックの位置を表す座標系について、画素の位置を表す座標系と区別するために、水平（横）方向をX軸方向とし、垂直（縦）方向をY軸方向とする。すなわち、各ブロックの座標は(X,Y)で表される。また、以下、座標(X,Y)のブロックの動きベクトルをV(X,Y)と表し、動きベクトルV(X,Y)の水平方向の成分である水平動き量をVX(X,Y)と表し、動きベクトルV(X,Y)の垂直方向の成分である垂直動き量をVY(X,Y)と表す。なお、以下、水平動き量および垂直動き量の大きさは、プログレッシブ画像における画素間隔を基準として表すことにする。また、以下、各ブロックの左上隅の画素を基準画素といい、基準画素の座標を基準座標という。
【００４１】
動きベクトル検出部１３１は、検出した動きベクトルV（水平動き量VXおよび垂直動き量VY）を示す情報を、MCブロック差分検出部１３２、巡回係数設定部１３３、および、動き補償部１３４に供給する。また、動きベクトル検出部１３１は、動きベクトルの検出に用いた画像I1および画像P3をMCブロック差分検出部１３２に供給する。
【００４２】
MCブロック差分検出部１３２は、図９および図１０を参照して後述するように、画像I1のブロックごとに、各ブロックの画素値と、そのブロックに対応する画像P3のブロック、すなわち、画像I1の各ブロックを動きベクトルVで示される方向および距離だけ移動させた位置にある画像P3のブロックの画素値との差分値であるMCブロック差分値を検出する。MCブロック差分検出部１３２は、検出したMCブロック差分値を示す情報を巡回係数設定部１３３に供給する。
【００４３】
なお、以下、画像I1の座標(X,Y)のブロックに対応するブロック差分値を、BD(X,Y)と表す。
【００４４】
巡回係数設定部１３３は、図８などを参照して後述するように、動きベクトルV、および、MCブロック差分値BDに基づいて、Ａタイプの画素に対する巡回係数KA、および、Ｂタイプの画素に対する巡回係数KBを設定する。なお、以下、座標(x,y)のAタイプの画素に対する巡回係数KAをKA(x,y)と表し、座標(x,y)のＢタイプの画素に対する巡回係数KBをKB(x,y)と表す。巡回係数設定部１３３は、設定した巡回係数KAおよびKBを示す情報を積和演算部１３５に供給する。
【００４５】
動き補償部１３４は、フレームメモリ１３６から画像P3を読み出す。動き補償部１３４は、図８を参照して後述するように、動きベクトルVに基づいて、画像P3に対して動き補償を施した画像P4を生成する。動き補償部１３４は、画像P4を積和演算部１３５に供給する。
【００４６】
積和演算部１３５は、図１０を参照して後述するように、画像P1のＡタイプの画素の画素値と画像P4の対応する位置にある画素の画素値とを巡回係数KAを用いて重み付け加算し、画像P1のＢタイプの画素の画素値と画像P4の対応する位置にある画素の画素値とを巡回係数KBを用いて重みづけ加算した画素値からなるプログレッシブ方式のＳＤ画像である出力画像（以下、画像P2とも称する）を生成する。積和演算部１３５は、画像P2を出力位相変換部１１２に供給するとともに、フレームメモリ１３６に記憶させる。
【００４７】
なお、以下、画像I1および画像P1乃至P4の座標(x,y)の画素の画素値を、それぞれ、I1(x,y)およびP1(x,y)乃至P4(x,y)と表す。
【００４８】
図４は、動きベクトル検出部１３１の機能的構成を示すブロック図である。動きベクトル検出部１３１は、動き評価値検出部１５１、画素精度動きベクトル検出部１５２、タップ抽出部１５３，１５４、ADRC(Adaptive Dynamic Range Coding)処理部１５５、クラス分類部１５６、係数メモリ１５７、予測演算部１５８、および、画素以下精度動きベクトル検出部１５９により構成される。
【００４９】
動き評価値検出部１５１は、外部から入力される画像I1を取得し、フレームメモリ１３６から画像P3を取得する。動き評価値検出部１５１は、画像I1を所定の大きさのブロックに分割し、各ブロックを順次注目ブロックとする。さらに、動き評価値検出部１５１は、図１８を参照して後述するように、画像P3の所定の範囲内の画素を、順次、注目画素とし、注目画素を基準画素とする注目ブロックと同じ大きさのブロック（以下、比較対象ブロックと称する）と注目ブロックとの対応する位置にある画素の画素値との差分をとり、その差分値の絶対値を合計した値を、注目画素に対する動き評価値として求める。動き評価値検出部１５１は、検出した動き評価値を示す情報を、画素精度動きベクトル検出部１５２、および、タップ抽出部１５３，１５４に供給する。また、動き評価値検出部１５１は、動きベクトルの検出に用いた画像I1および画像P3をMCブロック差分検出部１３２に供給する。
【００５０】
なお、以下、座標(x,y)の注目画素に対する動き評価値をM(x,y)と表す。
【００５１】
画素精度動きベクトル検出部１５２は、図１８を参照して後述するように、動き評価値Mが最小となる画素（以下、最小評価値画素と称する）の座標と、注目ブロックの基準画素の座標とを結ぶベクトルを、注目ブロックに対する画素精度、すなわち、プログレッシブ画像における画素の間隔と等しい距離を最小単位とする動きベクトルとして検出する。画素精度動きベクトル検出部１５２は、検出した画素精度の動きベクトルを示す情報をタップ抽出部１５３，１５４に供給する。
【００５２】
タップ抽出部１５３は、図１８を参照して後述するように、最小評価値画素と最小評価値画素に隣接する画素との間の位置、すなわち、画素以下精度の位置（以下、予測位置ともいう）における動き評価値を予測するのに用いる画素であって、最小評価値画素を含む最小評価値画素の近傍の画像P3の画素に対応する動き評価値Mを予測タップとして抽出する。タップ抽出部１５３は、抽出した予測タップを予測演算部１５８に供給する。
【００５３】
タップ抽出部１５４は、図１８を参照して後述するように、最小評価値画素を、幾つかのクラスのうちのいずれかにクラス分けするクラス分類を行うのに用いる画像P3のいくつかの画素に対応する動き評価値Mを、クラスタップとして抽出する。タップ抽出部１５４は、抽出したクラスタップをADRC処理部１５５に供給する。
【００５４】
ADRC処理部１５５は、クラスタップを構成する画素の動き評価値MをADRC処理し、その結果得られるADRCコードを示す情報をクラス分類部１５６に供給する。
【００５５】
なお、KビットADRCにおいては、例えば、クラスタップを構成する画素の動き評価値Mの最大値MAXと最小値MINが検出され、DR=MAX-MINを、クラスタップを構成する動き評価値Mの集合の局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する動き評価値MがKビットに再量子化される。即ち、クラスタップを構成する各画素の動き評価値Mから、最小値MINが減算され、その減算値がDR/2Kで除算（量子化）される。そして、以上のようにして得られる、クラスタップを構成するKビットの各画素の動き評価値Mを、所定の順番で並べたビット列が、ADRCコードとして出力される。
【００５６】
クラス分類部１５６は、ADRC処理部１５５からのADRCコードに基づき、最小評価値画素をクラス分類し、その結果得られるクラスに対応するクラスコードを示す情報を、係数メモリ１５７に供給する。
【００５７】
係数メモリ１５７は、後述する学習によってあらかじめ求められたクラスごとのタップ係数のセットを記憶している。係数メモリ１５７は、その記憶しているタップ係数のセットのうちの、クラス分類部１５６から供給されるクラスコードに対応するアドレスに記憶されているタップ係数、すなわち、クラス分類部１５６から供給されるクラスコードが表すクラスのタップ係数を、予測演算部１５８に供給する。
【００５８】
予測演算部１５８は、図１８を参照して後述するように、タップ抽出部１５３が出力する予測タップと、係数メモリ１５７が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、予測位置における動き評価値Mの真値の予測値を求める所定の予測演算を行う。これにより、予測演算部１５８は、予測位置における動き評価値M'の予測値を求めて、画素以下精度動きベクトル検出部１５９に供給する。
【００５９】
画素以下精度動きベクトル検出部１５９は、最小評価値画素および予測位置の中から動き評価値が最小となる画素または位置を検出し、検出した画素または位置の座標と、注目ブロックの基準画素の座標とを結ぶベクトルを、注目ブロックに対する画素以下精度の動きベクトルVとして検出する。画素以下精度動きベクトル検出部１５９は、検出した動きベクトルVを示す情報をMCブロック差分検出部１３２および巡回係数設定部１３３、および、動き補償部１３４に供給する。
【００６０】
図５は、巡回係数設定部１３３の機能的構成を示すブロック図である。巡回係数設定部１３３は、基本巡回係数設定部１７１、動き分散検出部１７２、および、巡回係数算出部１７３により構成される。また、巡回係数算出部１７３は、動き分散差し引き量算出部１８１、MCブロック差分差し引き量算出部１８２、および、減算部１８３−１乃至１８３−４により構成される。
【００６１】
基本巡回係数設定部１７１は、図１１乃至図１２を参照して後述するように、垂直動き量VYに基づいて、画像P1のＡタイプの画素に対する基本巡回係数KA0、および、Ｂタイプの画素に対する基本巡回係数KB0を設定する。なお、以下、座標(x,y)の画素に対する基本巡回係数KA0をKA0(x,y)と表し、座標(x,y)の画素に対する基本巡回係数KB0をKB0(x,y)と表す。基本巡回係数設定部１７１は、基本巡回係数KA0を示す情報を減算部１８３−１に供給し、基本巡回係数KB0を示す情報を減算部１８３−３に供給する。
【００６２】
動き分散検出部１７２は、図１４および図１７を参照して後述するように、動きベクトル検出部１３１により検出された動きベクトルVの信頼度として、周囲の動きベクトルVとの間のばらつきの度合いを示す動き分散MDを検出する。なお、以下、動きベクトルV(X,Y)に対する動き分散MDを、MD(X,Y)と表す。動き分散検出部１７２は、動き分散MDを示す情報を動き分散差し引き量算出部１８１に供給する。
【００６３】
動き分散差し引き量算出部１８１は、図８を参照して後述するように、動き分散MDに基づいて、基本巡回係数KA0，KB0を補正するための補正値である動き分散差し引き量KM1を算出する。なお、以下、画像P1の座標(x,y)の画素に対する動き分散差し引き量KM1を、KM1(x,y)と表す。動き分散差し引き量算出部１８１は、動き分散差し引き量KM1を示す情報を減算部１８３−１および１８３−３に供給する。
【００６４】
MCブロック差分差し引き量算出部１８２は、図８を参照して後述するように、MCブロック差分値BDに基づいて、基本巡回係数KA0，KB0を補正するための補正値であるMCブロック差分差し引き量KM2を算出する。なお、以下、画像P1の座標(x,y)の画素に対する動き分散差し引き量KM2を、KM2(x,y)と表す。MCブロック差分差し引き量算出部１８２は、MCブロック差分差し引き量KM2を示す情報を減算部１８３−２および１８３−４に供給する。
【００６５】
減算部１８３−１は、基本巡回係数KA0から動き分散差し引き量KM1を差し引き、さらに、減算部１８３−２は、減算部１８３−１による算出値からMCブロック差分差し引き量KM2を差し引く。これにより、巡回係数KAが算出される。なお、以下、画像P1の座標(x,y)の画素に対する巡回係数KAをKA(x,y)と表す。減算部１８３−２は、巡回係数KAを示す情報を積和演算部１３５に供給する。
【００６６】
減算部１８３−３は、基本巡回係数KB0から動き分散差し引き量KM1を差し引き、さらに、減算部１８３−４は、減算部１８３−３による算出値からMCブロック差分差し引き量KM2を差し引く。これにより、巡回係数KBが算出される。なお、以下、画像P1の座標(x,y)の画素に対する巡回係数KBをKB(x,y)と表す。減算部１８３−４は、巡回係数KBを示す情報を積和演算部１３５に供給する。
【００６７】
次に、図６のフローチャートを参照して、画像変換装置１０１により実行される画像変換処理を説明する。なお、この処理は、例えば、外部から画像I1の入力が開始されたとき開始される。
【００６８】
ステップＳ１において、IP変換部１２１は、IP変換処理を行う。具体的には、IP変換部１２１は、外部から入力されるインターレース方式の画像I1をIP変換することにより、画像P1を生成する。ここで、図７を参照して、IP変換部１２１が行うIP変換処理の一例である、動き適応型と呼ばれる方法を用いたIP変換処理について説明する。
【００６９】
図７は、インターレース画像における垂直方向の画素の並びを示す図である。図７の横軸方向は時間を示し、縦軸方向は画素の位置を示す。また、図内の白丸は画素を示す。なお、図内の左端の画素の列はｎ−１番目のフィールドに属し、真ん中の画素の列はｎ番目のフィールドに属し、右端の画素の列はｎ＋１番目のフィールドに属するものとする。
【００７０】
以下、ｎ番目のフィールドのインターレース画像をプログレッシブ画像に変換する場合に、位置ｘに補間する画素（Ｂタイプの画素）の画素値を算出する例について説明する。なお、ｎ−１番目のフィールドにおいて、位置xに対応する位置にある画素の画素値をa、ｎ＋１番目のフィールドにおいて、位置ｘに対応する位置にある画素の画素値をｂとする。また、ｎ番目のフィールドにおいて、位置xの上に隣接する画素の画素値をc、下に隣接する画素の画素値をｄとする。
【００７１】
例えば、|ａ−ｂ|≦|ｃ−ｄ|である場合、位置ｘは画像の動きが少ない静止領域に含まれると見なされ、位置ｘの画素値は、前後のフィールドにおいて位置ｘに対応する位置にある画素の画素値の平均値である（ａ＋ｂ）／２とされる。一方、|ａ−ｂ|＞|ｃ−ｄ|である場合、位置ｘは画像の動きが大きい動作領域に含まれると見なされ、位置ｘの画素値は、上下方向に隣接する画素値の平均値である（ｃ＋ｄ）／２とされる。なお、他の位置のＢタイプの画素についても、同様の方法により画素値が求められる。
【００７２】
なお、IP変換部１２１が行うIP変換の方法は、特定の方法に限定されるものではなく、例えば、クラス分類適応処理を用いた方法を用いるようにしてもよい。なお、クラス分類適応処理を用いたIP変換の方法については、例えば、本件出願人が先に出願した特開２０００−５０２１３号公報などに、その詳細が開示されている。
【００７３】
また、画像I1をそのままIP変換するのではなく、IP変換する前に、ノイズ除去などの画質を向上させる画像処理を画像I1に施すようにしてもよい。
【００７４】
IP変換部１２１は、生成した画像P1を順に積和演算部１３５に供給する。
【００７５】
ステップＳ２において、巡回型変換部１２２は、巡回型変換処理を行う。巡回型変換処理の詳細は、図８を参照して後述するが、この処理により、画像P1がより高画質の画像P2に変換され、画像P2が出力位相変換部１１２に供給される。
【００７６】
ステップＳ３において、出力位相変換部１１２は、出力位相変換処理を行う。具体的には、出力位相変換部１１２は、巡回型変換部１２２から供給されるＳＤ画像に対して、水平方向および垂直方向に補間を行うことにより、ＨＤ画像を生成する。出力位相変換部は、そのＨＤ画像を、自然画予測部１１３、人工画予測部１１４、および、自然画人工画判定部１１５に供給する。
【００７７】
ステップＳ４において、自然画予測部１１３は、自然画予測処理を行う。具体的には、出力位相変換部１１２から供給されるＨＤ画像から、そのＨＤ画像のうちの自然画像を高品質にした自然高品画像を予測する。すなわち、自然画予測部１１３は、ＨＤ画像の特徴に応じて、そのＨＤ画像から求められる自然高品質画像の画素である注目画素を、自然画像の特徴に適したクラスに分類する。そして、自然画予測部１１３は、そのクラスに対応する、自然高品質画像を予測するための予測係数と、ＨＤ画像とを用いて演算することにより、出力位相変換部１１２から供給されたＨＤ画像から、自然高品質画像を予測する。自然画予測部１１３は、その自然高品質画像を合成部１１６に供給する。
【００７８】
ステップＳ５において、人工画予測部１１４は、人工画予測処理を行う。具体的には、人工画予測部１１４は、自然画予測部１１３と同様に、出力位相変換部１１２から供給されるＨＤ画像から、そのＨＤ画像のうちの人工画像を高品質にした人工高品質画像を予測する。すなわち、人工画予測部１１４は、ＨＤ画像の特徴に応じて、そのＨＤ画像から求められる人工高品質画像の画素である注目画素を、人工画像の特徴に適したクラスに分類する。そして、人工画予測部１１４は、そのクラスに対応する、人工高品質画像を予測するための予測係数と、ＨＤ画像とを用いて演算することにより、出力位相変換部１１２から供給されたＨＤ画像から、人工高品質画像を求める。人工画予測部１１４は、その人工高品質画像を合成部１１６に出力する。
【００７９】
ステップＳ６において、自然画人工画判定部１１５は、自然画人工画判定処理を行う。具体的には、自然画人工画判定部１１５は、出力位相変換部１１２より供給されるHD画像の各画素について、人工画像に分類される領域、または、自然画像に分類される領域のいずれの領域に属するかを判定し、判定結果を人工画度として合成部１１６に出力する。
【００８０】
ステップＳ７において、合成部１１６は、画像を合成する。具体的には、合成部１１６は、自然画人工画判定部１１５より供給される判定結果に基づいて、自然画予測部１１３から供給される自然高品質画像の各画素の画素値と、人工画予測部１１４から供給される人工高品質画像の各画素の画素値とを人工画度に応じた割合で合成する。合成部１１６は、合成した画像を後段の装置に出力する。
【００８１】
なお、複数の画像の画像変換を連続して行う場合、上述したステップＳ１乃至Ｓ７の処理が繰り返し実行される。
【００８２】
次に、図８を参照して、図６のステップＳ２の巡回型変換処理の詳細を説明する。
【００８３】
ステップＳ２１において、動きベクトル検出部１３１は、動きベクトル検出処理を行う。動きベクトル検出処理の詳細は、図１８を参照して後述するが、この処理により、画像I1の各画素の画素以下精度の動きベクトルVが検出される。また、検出された動きベクトルVの水平動き量VXおよび垂直動き量VYを示す情報が、動きベクトル検出部１３１から、MCブロック差分検出部１３２および巡回係数設定部１３３、および、動き補償部１３４に供給される。また、動きベクトルVの検出に用いた画像I1および画像P3が、動きベクトル検出部１３１からMCブロック差分検出部１３２に供給される。
【００８４】
ステップＳ２２において、MCブロック差分検出部１３２は、MCブロック差分値を検出する。ここで、図９および図１０を参照して、MCブロック差分値の検出方法を説明する。
【００８５】
まず、図９に示されるように、画像I1のブロックB0に対応する位置にある画像P3のブロックをB0'とする。また、ブロックB0の動きベクトルVで示される方向および距離だけブロックB0'を移動させたブロックをブロックB1とする。
【００８６】
動きベクトルVは画素以下精度であるため、水平動き量VXまたは垂直動き量VYに小数部分が存在する場合、ブロックB1の画素の位置は、画像P3の実際の画素の位置と一致しない。ここで、図１０を参照して、ブロックB1が、画像P3における実際の画素の位置と一致しない場合に、ブロックB1の各画素の画素値を算出する方法を説明する。
【００８７】
図１０の黒丸で示される画素zは、ブロックB1内の１つの画素であって、画像P3に実在しない位置にある画素である。白丸で示される画素a乃至dは、画素zに隣接する（すなわち、最も近い）画像P3に実在する画素である。画素a乃至dおよび画素zの画素値を、それぞれa乃至dおよびｚとし、画素zの左斜め上にある画素aと画素ｚと間のx軸方向の距離をxd、y軸方向の距離をydとした場合、画素zの画素値zは、以下の式（１）に基づいて算出される。
【００８８】
z＝(1−yd)×((1−xd)×a＋xd×b)＋yd×((1−xd)×c＋xd×d)  ・・・(１)
【００８９】
なお、ブロックB1の画素の位置が、画像P3に実在する画素の位置と一致する場合、そのまま画像P3の画素値がブロックB1の各画素の画素値とされる。
【００９０】
MCブロック差分検出部１３２は、ブロックB1の各画素の画素値を算出した後、以下の式（２）に基づいて、MCブロック差分値BDを算出する。
【００９１】
【数１】
0004470898.tif 000002
【００９２】
なお、B0(i,j)は、ブロックB0の左上隅の画素である基準画素を原点(0,0)とする位置(i,j)にあるブロックB0内の画素の画素値を示し、B1(i,j)は、ブロックB1の基準画素を原点(0,0)とする位置(i,j)にあるブロックB1内の画素の画素値を示す。すなわち、MCブロック差分値BDは、ブロックB0とブロックB1の対応する位置にある画素の画素値の差分をとり、その差分値の絶対値の合計値となる。
【００９３】
従って、現在のフレームと１つ前のフレームの対応するブロック内の画像の変化が大きいほど、MCブロック差分値BDは大きくなる。すなわち、MCブロック差分値BDが大きいブロックは、被写体が変形もしくは複雑な動きをしていたり、小さな被写体が複数存在していたり、被写体のエッジ部分を含んでいたりするなどの原因により、画像の動きが複雑な領域のブロックである可能性が高い。従って、そのブロックについて検出された動きベクトルVは正確に検出されていない可能性が高く、その動きベクトルVの信頼度は低いと言える。
【００９４】
MCブロック差分検出部１３２は、画像I1の各ブロックについて、MCブロック差分値BDを検出し、検出したMCブロック差分値BDを示す情報をMCブロック差分差し引き量算出部１８２に供給する。
【００９５】
ステップＳ２３において、基本巡回係数設定部１７１は、基本巡回係数を設定する。具体的には、基本巡回係数設定部１７１は、画像P1のＡタイプの画素に対する基本巡回係数KA0を、その画素が含まれるブロックの垂直動き量VY、および、図１１に示されるグラフに基づいて設定し、Ｂタイプの画素に対する基本巡回係数KB0を、その画素が含まれるブロックの垂直動き量VX、および、図１２に示されるグラフに基づいて設定する。
【００９６】
ここで、図１１および図１２に示されるグラフについて説明する。図１１は、垂直動き量VYと基本巡回係数KA0の関係を示すグラフであり、図１２は、垂直動き量VYと基本巡回係数KB0の関係を示すグラフである。
【００９７】
ところで、画像の垂直折り返し歪みは、画素以下精度の垂直動き量に応じて変化する性質がある。具体的には、各画素の垂直動き量の絶対値が、画素間隔の奇数倍に近い領域ほど、垂直折り返し歪みは大きくなり、0または画素間隔の偶数倍に近い領域ほど、垂直折り返し歪みは小さくなる。例えば、図１３に示されるｎ番目のフレームの画素Paの垂直動き量VYが、図内のVY1，VY３，VY5，VY７のように、画素間隔の奇数倍に近いほど、垂直折り返し歪みは大きくなり、VY2，VY4，VY6のように、0.0または画素間隔の偶数倍に近いほど、垂直折り返し歪みは小さくなる。
【００９８】
なお、後述するように、巡回係数の値が大きいほど、垂直折り返し歪みを抑制する効果が高くなる一方、画像のボケが発生しやすくなり、値が小さいほど、垂直折り返し歪みを抑制する効果が低くなる一方、画像のボケの発生が抑制される。従って、図１１および図１２のグラフに示されるように、垂直動き量VYの絶対値が0または偶数に近いほど、すなわち、垂直方向の画素間隔の偶数倍に近いほど、画像のボケを抑制できるように、基本巡回係数KA0，KB0が小さい値に設定され、垂直動き量VYの絶対値が奇数に近いほど、すなわち、垂直方向の画素の間隔の奇数倍に近いほど、垂直折り返し歪みが抑制されるように、基本巡回係数KA0，KB0が大きい値に設定される。
【００９９】
なお、垂直動き量VYの絶対値が0または偶数の場合、垂直折り返し歪みは発生しないが、図１１および図１２のグラフのように、垂直折り返し歪み以外のランダムなノイズを除去できるように、基本巡回係数KA0，KB0を0以外の適当な値に設定するようにしてもよい。
【０１００】
また、Ｂタイプの画素は、変換前の画像I1に元々なかった画素であり、少々のボケは許容される。従って、折り返し歪みおよびランダムノイズがより抑制されるように、同じ値の垂直動き量VYに対して、KB0の方がKA0よりも大きい値に設定される。
【０１０１】
このように、画素のタイプおよび垂直動き量に応じて、基本巡回係数KA0，KB0を設定することにより、画像P1の解像度を良好に保ちつつ、すなわち、画像をぼかさずに、垂直折り返し歪みやノイズを除去することが可能になる。
【０１０２】
基本巡回係数設定部１７１は、基本巡回係数KA0を示す情報を減算部１８３−１に供給し、基本巡回係数KB0を示す情報を減算部１８３−３に供給する。
【０１０３】
ステップＳ２４において、動き分散検出部１７２は、動き分散を検出する。ここで、図１４および図１５を参照して、動き分散について説明する。
【０１０４】
図１４および図１５は、動きベクトルの分布の例を示す図である。図１４に示されるように、斜線で示されるブロックの動きベクトルV0aが、周辺の動きベクトルV1a乃至V8aとほぼ同様である場合、すなわち、動きベクトルV0aと周辺のブロックの動きベクトルV1a乃至V8aとの類似性が高い場合、動きベクトルV0aは正確に求められている可能性が高く、動きベクトルV0aの信頼度は高いと言える。
【０１０５】
一方、図１５に示されるように、斜線で示されるブロックの動きベクトルV0bおよび周辺のブロックの動きベクトルV1b乃至V8bの大きさや向きが大きく異なる場合、すなわち、動きベクトルV0bと周辺の動きベクトルV1b乃至V8bとの類似性が低い場合、動きベクトルV0bは正確に求められていない可能性が高く、動きベクトルV0bの信頼度は低いと言える。
【０１０６】
そこで、動き分散検出部１７２は、動きベクトル検出部１３１により検出された動きベクトルVの信頼度として、各動きベクトルVについて、周辺の動きベクトルVとのばらつきの度合いを示す動き分散MD0を検出する。
【０１０７】
具体的には、例えば、図１６の斜線で示される座標(X,Y)のブロックBpの動きベクトルV(X,Y)に対する動き分散MD0(X,Y)を、ブロックBpを中心とする縦Nb0×横Mb0ブロック（画素数で表現した場合、縦Np0×横Mp0画素）の領域D0を対象に、以下の式（３）に基づいて算出する。なお、領域D0の左上隅の画素の座標を(x0,y0)とする。
【０１０８】
【数２】
0004470898.tif 000003
【０１０９】
なお、vx0(x,y)は、座標(x,y)の画素が含まれるブロックの水平動き量を示し、vy0(x,y)は、座標(x,y)の画素が含まれるブロックの垂直動き量を示す。
【０１１０】
すなわち、動き分散MD0は、ブロックBpの動きベクトルVと、領域D0内の各画素の動きベクトルVとの間の距離の２乗の平均値を表す。
【０１１１】
また、動き分散検出部１７２は、動きベクトルVの信頼度として、各動きベクトルVについて、その動きベクトルVに対応する画素（またはブロック）を、動きベクトルVで示される方向および距離だけ移動した位置の周辺における１フレーム前の動きベクトルVとのばらつきを示す動き分散MD1を検出する。
【０１１２】
具体的には、例えば、まず、図１６のブロックBpに対応する位置にある１フレーム前の画像のブロックを、図１７のブロックBp'とする。また、ブロックBpの動きベクトルV(X,Y)の水平動き量VX(X,Y)および垂直動き量VY(X,Y)の小数点以下を四捨五入した値により示される方向および距離だけブロックBp'を移動させたブロックをブロックBmとする。動き分散検出部１７２は、ブロックBpの動きベクトルV(X,Y)に対する動き分散MD1(X,Y)を、ブロックBmを中心とする縦Nb1×横Mb1ブロック（画素数で表現した場合、縦Np1×横Mp1画素）の領域D1を対象に、以下の式（４）に基づいて算出する。なお、領域D1の左上隅の画素の座標を(x1,y1)とする。
【０１１３】
【数３】
0004470898.tif 000004
【０１１４】
なお、vx1(x,y)は、１フレーム前の座標(x,y)の画素が含まれるブロックの水平動き量を示し、vy1(x,y)は、１フレーム前の座標(x,y)の画素が含まれるブロックの垂直動き量を示す。
【０１１５】
すなわち、動き分散MD1は、ブロックBpの動きベクトルVと、領域D1内の各画素の動きベクトルVとの間の距離の２乗の平均値を表す。
【０１１６】
さらに、動き分散検出部１７２は、以下の式（５）に基づいて、動き分散MD(X,Y)を算出する。
【０１１７】
MD(X,Y)＝MD1(X,Y)＋MD2(X,Y)                                        ・・・(５)
【０１１８】
従って、対象となる動きベクトルVと周囲の動きベクトルVとの間のばらつきが大きいほど、動き分散MD(X,Y)は大きくなる。すなわち、その動きベクトルV(X,Y)に対応する画素およびその近傍は、被写体が変形もしくは複雑な動きをしていたり、小さな被写体が複数存在していたりするなどの原因により、画像の動きが複雑な領域である可能性が高い。従って、その動きベクトルVは正確に検出されていない可能性が高く、その動きベクトルV(X,Y)の信頼度は低いと言える。
【０１１９】
動き分散検出部１７２は、上述した方法に従って、各動きベクトルVに対する動き分散MDを算出し、動き分散MDを示す情報を動き分散差し引き量算出部１８１に供給する。
【０１２０】
ステップＳ２５において、動き分散差し引き量算出部１８１は、動き分散差し引き量を算出する。具体的には、動き分散差し引き量算出部１８１は、画像P1の各画素に対する動き分散差し引き量KM1を、その画素が含まれるブロックの動き分散MDを用いて、以下の式（６）に基づいて算出する。
【０１２１】
KM1(x,y)= a1×MD(X,Y)＋b1                                          ・・・（６）
【０１２２】
なお、a1およびb1は所定の値の定数である。ただし、定数a1は正の値とされる。また、式（６）の右辺の値が0より小さくなる場合、KM1(x,y)は0に補正される。
【０１２３】
動き分散差し引き量算出部１８１は、算出した動き分散差し引き量KM1を示す情報を減算部１８３−１および１８３−３に供給する。
【０１２４】
ステップＳ２６において、MCブロック差分差し引き量算出部１８２は、MCブロック差分差し引き量を求める。具体的には、MCブロック差分差し引き量算出部１８２は、画像P1の各画素に対するMCブロック差分差し引き量KM2を、その画素が含まれるブロックのMCブロック差分値BDを用いて、以下の式（７）に基づいて算出する。
【０１２５】
KM2(x,y)= a2×BD(X,Y)＋b2                                            ・・・（７）
【０１２６】
なお、a2，b2は所定の定数である。ただし、定数a2は正の値とされる。また、式（７）の右辺の値が0より小さくなった場合、KM2(x,y)は0に補正される。
【０１２７】
ステップＳ２７において、減算部１８３−１乃至１８３−４は、巡回係数を算出する。具体的には、減算部１８３−１は、基本巡回係数KA0から動き分散差し引き量KM1を引いた値を減算部１８３−２に供給する。減算部１８３−２は、減算部１８３−１から供給される値からMCブロック差分差し引き量KM2を引いた値を巡回係数KAとして、積和演算部１３５に供給する。すなわち、画像P1の座標(x,y)にあるＡタイプの画素に対する巡回係数KA(x,y)は、以下の式（８）に基づいて算出される。
【０１２８】
KA(x,y)＝KA0(x,y)−KM1(x,y)−KM2(x,y)                                ・・・（８）
【０１２９】
また、減算部１８３−３は、基本巡回係数KB0から動き分散差し引き量KM1を引いた値を減算部１８３−４に供給する。減算部１８３−４は、減算部１８３−３から供給される値からMCブロック差分差し引き量KM2を引いた値を巡回係数KBとして、積和演算部１３５に供給する。すなわち、画像P1の座標(x,y)にあるＢタイプの画素に対する巡回係数KB(x,y)は、以下の式（９）に基づいて算出される。
【０１３０】
KB(x,y)＝KB0(x,y)−KM1(x,y)−KM2(x,y)                                ・・・（９）
【０１３１】
すなわち、巡回係数KA(x,y)およびKB(x,y)は、動き分散差し引き量KM1(x,y)またはMCブロック差分差し引き量KM2(x,y)が大きいほど、すなわち、動き分散MD(x,y)またはMCブロック差分値BD(x,y)が大きいほど、小さくなるように補正される。
【０１３２】
ステップＳ２８において、動き補償部１３４は、１フレーム前の出力画像に対して動き補償を施す。具体的には、動き補償部１３４は、フレームメモリ１３６から１フレーム前の画像P3を読み出す。動き補償部１３４は、動きベクトルVを用いて、画像P3に対して動き補償を施した画像P4を生成する。
【０１３３】
なお、画像P4の各画素の画素値は、その画素に対応する位置にある画像P1の画素の動きベクトルVで示される方向および距離だけ移動した位置にある画像P3の画素の画素値とされる。ただし、動きベクトルVの水平動き量VXまたは垂直動き量VYに小数部分が存在し、画像P3の動きベクトルVだけ移動した位置に実際の画素が存在しない場合、図１０を参照して上述した方法と同様の方法により、画像P4の画素値が算出される。
【０１３４】
動き補償部１３４は、画像P4の画素値P4(x,y)を順に積和演算部１３５に供給する。
【０１３５】
ステップＳ２９において、積和演算部１３５は、画像を合成し、巡回型変換処理は終了する。具体的には、積和演算部１３５は、画像P1と画像P4の対応する位置にある画素の画素値を、巡回係数KAまたはKBを用いて、重み付け加算する。すなわち、積和演算部１３５は、Ａタイプの画素については、巡回係数KAを用いて、以下の式（１０）に基づいて、画像P2の画素値P2(x,y)を算出し、Ｂタイプの画素については、巡回係数KBを用いて、以下の式（１１）に基づいて、画像P2の画素値P2(x,y)を算出する。
【０１３６】
P2(x,y)＝(1−KA(x,y))×P1(x,y)＋KA(x,y)×P4(x,y)                      ・・・（１０）
P2(x,y)＝(1−KB(x,y))×P1(x,y)＋KB(x,y)×P4(x,y)                      ・・・（１１）
【０１３７】
一般的に、巡回係数KA(x,y)およびKB(x,y)の値が大きくなるほど、画像P2における画像P4の成分の占める割合が大きくなるため、画像P2における、垂直折り返し歪みの発生の抑制効果が高くなる一方、画像のボケが発生しやすくなり、巡回係数KA(x,y)およびKB(x,y)の値が小さくなるほど、画像P2において画像P4の成分の占める割合が小さくなるため、画像P2における垂直折り返し歪みの発生の抑制効果が低くなる一方、画像のボケの発生は抑制される。
【０１３８】
本発明の実施の形態では、巡回係数KA(x,y)およびKB(x,y)は、上述したように、動き分散差し引き量KM1(x,y)またはMCブロック差分差し引き量KM2(x,y)が大きいほど、すなわち、動き分散MD(x,y)またはMCブロック差分値BD(x,y)が大きいほど小さくなる。
【０１３９】
すなわち、座標(x,y)の画素の動きベクトルV(X,Y)の信頼度が低く、重み付け加算する画像P1の画素と画像P4の画素との相関が低い可能性が高い場合、または、その画素が、折り返し歪みまたはランダムノイズが目立ちにくい、画像の動きが複雑な領域に含まれる可能性が高い場合、画素値P2(x,y)における画素値P1(x,y)の成分が占める割合が大きくなる。一方、座標(x,y)の画素の動きベクトルV(X,Y)の信頼度が高く、重み付け加算する画像P1の画素と画像P4の画素との相関が高い可能性が高い場合、または、その画素が、折り返し歪みまたはランダムノイズが目立ちやすい、広い範囲にわたって画像の動きが少ない領域に含まれる可能性が高い場合、画素値P2(x,y)における画素値P1(x,y)の成分が占める割合が大きくなる。
【０１４０】
また、垂直動き量VY(X,Y)の絶対値が奇数に近いほど、すなわち、垂直折り返し歪みが大きいほど、巡回係数KA(x,y)およびKB(x,y)は大きくなり、画素値P2(x,y)における画素値P4(x,y)の成分が占める割合が大きくなる。一方、垂直動き量VY(X,Y)の絶対値が0または偶数に近いほど、すなわち、垂直折り返し歪みが小さいほど、巡回係数KA(x,y)およびKB(x,y)は小さくなり、画素値P2(x,y)における画素値P1(x,y)の成分が占める割合が大きくなる。
【０１４１】
さらに、同じ垂直動き量VYに対して、Ｂタイプの画素に対する基本巡回係数KB0の方がＡタイプの画素に対する基本巡回係数KA0より大きな値に設定され、かつ、動き分散差し引き量KM1およびMCブロック差し引き量KM2は画素のタイプの違いにより値は変わらないので、同様の画像の領域においては、巡回係数KB(x,y)の方がKA(x,y)より大きくなり、画像P2のＢタイプの画素の方が、Ａタイプの画素より、画素値P2(x,y)における画素値P4(x,y)の成分が占める割合が大きくなる。
【０１４２】
従って、画像P2において、垂直折り返し歪みおよびランダムノイズが抑制されるとともに、画像のボケが抑制され、解像度の高い画質を得ることができる。
【０１４３】
積和演算部１３５は、生成した画像P2を出力位相変換部１１２に供給するとともに、フレームメモリ１３６に記憶させる。
【０１４４】
次に、図１８のフローチャートを参照して、図８のステップＳ２１の動きベクトル検出処理の詳細を説明する。
【０１４５】
ステップＳ４１において、動き評価値検出部１５１は、１フレーム前の画像を取得する。具体的には、動き評価値検出部１５１は、１フレーム前の出力画像である画像P3を、フレームメモリ１３６から読み出す。
【０１４６】
ステップＳ４２において、動き評価値検出部１５１は、画素位置の動き評価値を算出する。具体的には、動き評価値検出部１５１は、画像I1内のブロックのうち、まだ動きベクトルを検出していないブロックを１つ選択して、注目ブロックとする。動き評価値検出部１５１は、画像P3の所定の範囲内の画素を、順次、注目画素とし、各注目画素における動き評価値M(x,y)を、以下の式（１２）により求める。
【０１４７】
【数４】
0004470898.tif 000005
【０１４８】
なお、式（１２）において、注目画素の座標を(x,y)とし、注目ブロックの基準画素（左上隅）の座標を(xb,yb)とする。
【０１４９】
すなわち、動き評価値Mは、注目画素を基準画素とする比較対象ブロックと注目ブロックとの対応する位置にある画素の画素値の差分をとり、その差分値の絶対値を合計した値であり、動き評価値Mが小さいほど、比較対象ブロック内の画像は、より注目ブロック内の画像に近いと言える。
【０１５０】
動き評価値検出部１５１は、検出した各画素の動き評価値Mを示す情報を画素精度動きベクトル検出部１５２、および、タップ抽出部１５３，１５４に供給する。
【０１５１】
ステップＳ４３において、画素精度動きベクトル検出部１５２は、画素精度の動きベクトルを検出する。具体的には、画素精度動きベクトル検出部１５２は、動き評価値Mが最小となる最小評価値画素を検出する。画素精度動きベクトル検出部１５２は、最小評価値画素の座標と注目ブロックの基準画素の座標とを結ぶベクトルを、注目ブロックの画素精度の動きベクトルとして検出する。画素精度動きベクトル検出部１５２は、検出した画素精度の動きベクトルを示す情報をタップ抽出部１５３，１５４に供給する。
【０１５２】
ステップＳ４４において、タップ抽出部１５３は、予測タップを抽出する。具体的には、タップ抽出部１５３は、最小評価値画素を含む最小評価値画素の近傍の画像P3の画素に対応する動き評価値Mを予測タップとして抽出する。
【０１５３】
図１９は、画像P3の一部を示す図である。なお、図１９において、最小評価値画素を画素P0とし、画素P0乃至P24に対応する動き評価値を動き評価値M0乃至M24とする。例えば、タップ抽出部１５３は、最小評価値画素である画素P0、画素P0の外周に隣接する画素P1乃至P8、および、画素P1乃至P8の外周に隣接する画素P9乃至P24に対応する動き評価値M0乃至M24を、予測タップとして抽出する。タップ抽出部１５３は、抽出した予測タップを予測演算部１５８に供給する。
【０１５４】
ステップＳ４５において、タップ抽出部１５４は、クラスタップを抽出する。例えば、タップ抽出部１５４は、図１９に示される例において、最小評価値画素である画素P0および画素P0に隣接する画素P1乃至P8に対応する動き評価値M0乃至M8を、クラスタップとして抽出する。タップ抽出部１５４は、抽出したクラスタップをADRC処理部１５５に供給する。
【０１５５】
ステップＳ４６において、ADRC処理部１５５は、ADRC処理を行う。具体的には、ADRC処理部１５５は、クラスタップを構成する画素の動き評価値MをADRC処理し、その結果得られるADRCコードを示す情報をクラス分類部１５６に供給する。
【０１５６】
ステップＳ４７において、クラス分類部１５６は、クラス分類を行う。具体的には、クラス分類部１５６は、ADRC処理部１５５からのADRCコードに基づき、最小評価値画素をクラス分類し、その結果得られるクラスに対応するクラスコードを示す情報を、係数メモリ１５７に供給する。
【０１５７】
ステップＳ４８において、係数メモリ１５７は、タップ係数を供給する。具体的には、係数メモリ１５７は、内部に記憶しているタップ係数のセットのうち、最小評価値画素のクラスコードに対応するタップ係数を取得する。係数メモリ１５７は、取得したタップ係数を予測演算部１５８に供給する。
【０１５８】
ステップＳ４９において、予測演算部１５８は、予測演算を行う。具体的には、例えば、図１９に示される例において、画素P0と画素P1乃至P8とを結ぶ直線上の位置であって、ちょうど中間の位置P1'乃至P8'を予測位置とした場合、予測演算部１５８は、以下の式（１３）に基づいて、位置P1'乃至P8'における動き評価値M1'乃至M8'を算出する。
【０１５９】
【数５】
0004470898.tif 000006
ただし、m＝1乃至8である。
【０１６０】
なお、wmn（n＝0乃至24）は、位置Pm'（m＝1乃至8）の動き評価値Mm'（ｍ＝1乃至8）を算出するために用いるタップ係数である。
【０１６１】
予測演算部１５８は、各予測位置における動き評価値Mm'を、画素以下精度動きベクトル検出部１５９に供給する。
【０１６２】
ステップＳ５０において、画素以下精度動きベクトル検出部１５９は、画素以下精度の動きベクトルを検出する。具体的には、例えば、図１９に示される例の場合、画素以下精度動きベクトル検出部１５９は、画素P0および位置P1'乃至P8'の動き評価値のうち、最小となるものを検出する。画素以下精度動きベクトル検出部１５９は、動き評価値が最小の画素または位置の座標と、注目ブロックの基準画素の座標とを結ぶベクトルを、注目ブロックに対する画素以下精度の動きベクトルVとして検出する。すなわち、この例においては、画素の間隔の２分の１の精度で動きベクトルが検出される。
【０１６３】
なお、画素間に設定する予測位置の数を増やすことにより、より高い精度で、すなわち、より小さい単位で動きベクトルを検出することが可能となる。
【０１６４】
画素以下精度動きベクトル検出部１５９は、検出した動きベクトルVを示す情報をMCブロック差分検出部１３２、巡回係数設定部１３３、および、動き補償部１３４に供給する。
【０１６５】
ステップＳ５１において、動き評価値検出部１５１は、動きベクトルを全て検出したかを判定する。まだ動きベクトルを検出していないブロックが残っている場合、動き評価値検出部１５１は、動きベクトルをまだ全て検出していないと判定し、処理はステップＳ４２に戻る。その後、ステップＳ５１において、動きベクトルを全て検出したと判定されるまで、ステップＳ４２乃至Ｓ５１の処理が繰り返し実行される。
【０１６６】
ステップＳ５１において、動きベクトルが全て検出されたと判定された場合、処理はステップＳ５２に進む。
【０１６７】
ステップＳ５２において、動き評価値検出部１５１は、動きベクトルの検出に用いた画像を供給し、画素以下精度動きベクトル検出処理は終了する。具体的には、動き評価値検出部１５１は、動きベクトルの検出に用いた画像I1および画像P3をMCブロック差分検出部１３２に供給する。
【０１６８】
次に、係数メモリ１５７に記憶されるタップ係数の学習について説明する。
【０１６９】
まず、より一般化した例に基づいて、クラス分類適応処理におけるタップ係数の学習について説明する。具体的には、ＨＤ画像を構成する画素（以下、適宜、ＨＤ画素という）の画素値ｙを、ＳＤ画像を構成する画素（以下、適宜、ＳＤ画素という）から、ＨＤ画素を予測するための予測タップとして抽出される複数のＳＤ画素と、タップ係数とを用いて、次の線形１次式による線形結合によって求める線形１次結合モデルの例に基づいて、タップ係数の学習について説明する。
【０１７０】
【数６】
0004470898.tif 000007
【０１７１】
但し、式（１４）において、ｘnは、ＨＤ画素ｙについての予測タップを構成する、ｎ番目のＳＤ画像データの画素の画素値を表し、ｗnは、ｎ番目のＳＤ画素の画素値と乗算されるｎ番目のタップ係数を表す。なお、式（１４）では、予測タップが、Ｎ個のＳＤ画素ｘ1，ｘ2，・・・，ｘNで構成されるものとしてある。
【０１７２】
いま、第ｋサンプルのＨＤ画素の画素値の真値をｙkと表すとともに、式（１４）によって得られるその真値ｙkの予測値をｙk’と表すと、その予測誤差ｅkは、次式で表される。
【０１７３】
【数７】
0004470898.tif 000008
【０１７４】
式（１５）の予測値ｙk’は、式（１４）にしたがって求められるため、式（１５）のｙk’を、式（１４）にしたがって置き換えると、次式が得られる。
【０１７５】
【数８】
0004470898.tif 000009
【０１７６】
但し、式（１６）において、ｘn,kは、第ｋサンプルのＨＤ画素についての予測タップを構成するｎ番目のＳＤ画素を表す。
【０１７７】
式（１６）の予測誤差ｅkを０とするタップ係数ｗnが、ＨＤ画素を予測するのに最適なものとなるが、すべてのＨＤ画素について、そのようなタップ係数ｗnを求めることは、一般には困難である。
【０１７８】
そこで、タップ係数ｗnが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適なタップ係数ｗnは、統計的な誤差としての、例えば、次式で表される自乗誤差の総和Ｅを最小にすることで求めることができる。
【０１７９】
【数９】
0004470898.tif 000010
【０１８０】
但し、式（１７）において、Ｋは、ＨＤ画素ｙkと、そのＨＤ画素ｙkについての予測タップを構成するＳＤ画素ｘ1,k，ｘ2,k，・・・，ｘN,kとのセットのサンプル数を表す。
【０１８１】
式（１７）の自乗誤差の総和Ｅを極小にするタップ係数ｗnは、その総和Ｅをタップ係数ｗnで偏微分したものを０とするものであり、従って、次式を満たす必要がある。
【０１８２】
【数１０】
0004470898.tif 000011
【０１８３】
そこで、上述の式（１８）をタップ係数ｗnで偏微分すると、次式が得られる。
【０１８４】
【数１１】
0004470898.tif 000012
【０１８５】
式（１８）と式（１９）から、次式が得られる。
【０１８６】
【数１２】
0004470898.tif 000013
【０１８７】
式（２０）のｅkに、式（１６）を代入することにより、式（２０）は、式（２１）に示す正規方程式で表すことができる。
【０１８８】
【数１３】
0004470898.tif 000014
【０１８９】
式（２１）の正規方程式は、ＨＤ画素ｙkとＳＤ画素ｘn,kのセットを、ある程度の数だけ用意することで、求めるべきタップ係数ｗnの数と同じ数だけたてることができ、従って、式（２１）を解くことで、最適なタップ係数ｗnを求めることができる。なお、式（２１）を解くにあたっては、例えば、掃き出し法（Gauss-Jordanの消去法）などを採用することが可能である。但し、式（２１）を解くには、式（２１）において、タップ係数ｗnにかかる左辺の行列が正則である必要がある。
【０１９０】
以上のように、多数のＨＤ画素ｙ1，ｙ2，・・・，ｙKを、タップ係数の学習の教師となる教師データとするとともに、各ＨＤ画素ｙkについての予測タップを構成するＳＤ画素ｘ1,k，ｘ2,k，・・・，ｘN,kを、タップ係数の学習の生徒となる生徒データとして、式（２１）を解くことにより、最適なタップ係数ｗnを求めることができる。
【０１９１】
ここで、教師データｙとして、予測位置にも画素が存在する、画像Ｐ3より画素密度が高い画像の各画素について検出した動き評価値Mからなる画像（以下、教師画像と称する）を採用し、生徒データｘとして、画像P3と同じ画素密度となるように、教師画像から画素を間引いた画像を採用することにより、式（１３）で用いられるタップ係数を求めることができる。
【０１９２】
なお、クラス分類適応処理を用いた画素以下精度の動きベクトルを検出する方法については、例えば、本件出願人が先に出願した特開平９−１８７０１３号公報などに、その詳細が開示されている。
【０１９３】
以上のようにして、インターレース方式の画像を、より良好な画質のプログレッシブ方式の画像に変換することができる。
【０１９４】
また、例えば、巡回型IP変換部１１１からは、垂直折り返し歪みやノイズが取り除かれた画像が出力されるため、後段の画像処理装置において、より良好な画質を得ることができる。例えば、本件出願人が先に出願した特開２００２−２１８４１３号公報に記載されている、クラス分類適応処理を用いて画質を複数の軸で自由に調整する処理において、より強く解像度を上げるように調整することが可能となり、より良好な画質を得ることができる。
【０１９５】
なお、以上の説明では、画像I1の動きベクトルVを検出する対象となる画像を１フレーム前の出力画像である画像P3とする例について説明したが、例えば、画像P3の代わりに、１フィールド前の入力画像である画像I2または２フィールド前の入力画像である画像I3を用いるようにしてもよい。
【０１９６】
図２０は、画像I1の動きベクトルVを検出する対象となる画像として、１フィールド前の入力画像である画像I2を用いる場合の巡回型変換部２０１の機能的構成を示すブロック図である。巡回型変換部２０１は、フレームメモリ２１１、動きベクトル検出部２１２、MCブロック差分検出部２１３、巡回係数設定部１３３、動き補償部１３４、積和演算部１３５、および、フレームメモリ１３６により構成される。なお、図２と対応する部分については、同じ符号を付してあり、処理が同じ部分については、その説明は繰り返しになるので省略する。
【０１９７】
フレームメモリ２１１は、外部から入力された画像I1を記憶し、１フィールド分遅延させて、動きベクトル検出部２１２に供給する。すなわち、巡回型変換部２０１に入力されてから１フィールド分遅延された画像I1である画像I2が動きベクトル検出部２１２に供給される。
【０１９８】
動きベクトル検出部２１２は、画像I1の画像I2に対する動きベクトルVを、上述した動きベクトル検出部１３１と同様の方法により検出する。動きベクトル検出部２１２は、検出した動きベクトルVの水平動き量VXおよび垂直動き量VYを示す情報を、MCブロック差分検出部２１３、巡回係数設定部１３３、および、動き補償部１３４に供給する。また、動きベクトル検出部２１２は、動きベクトルVの検出に用いた画像I1および画像I2をMCブロック差分検出部２１３に供給する。
【０１９９】
MCブロック差分検出部２１３は、画像I1のブロックごとに、各ブロックの画素値と、そのブロックに対応する画像I2のブロック、すなわち、画像I1の各ブロックを動きベクトルVで示される方向および距離だけ移動させた位置にある画像I2のブロックの画素値との差分値であるMCブロック差分値を検出する。MCブロック差分検出部２１３は、検出したMCブロック差分値BDを示す情報を巡回係数設定部１３３に供給する。
【０２００】
図２１は、画像I1の動きベクトルVを検出する対象となる画像として、２フィールド前の入力画像である画像I3を用いる場合の巡回型変換部３０１の機能的構成を示すブロック図である。巡回型変換部３０１は、フレームメモリ３１１，３１２、動きベクトル検出部３１３、MCブロック差分検出部３１４、巡回係数設定部１３３、動き補償部１３４、積和演算部１３５、および、フレームメモリ１３６により構成される。なお、図２と対応する部分については、同じ符号を付してあり、処理が同じ部分については、その説明は繰り返しになるので省略する。
【０２０１】
フレームメモリ３１１は、外部から入力された画像I1を記憶し、１フィールド分遅延させて、フレームメモリ３１２に供給する。すなわち、巡回型変換部３０１に入力されてから１フィールド分遅延された画像I1である画像I2がフレームメモリ３１２に供給される。
【０２０２】
フレームメモリ３１２は、画像I2を記憶し、１フィールド分遅延させて、動きベクトル検出部３１３に供給する。すなわち、巡回型変換部３０１に入力されてから２フィールド分遅延された画像I1である画像I3が動きベクトル検出部３１３に供給される。
【０２０３】
動きベクトル検出部３１３は、画像I1の画像I3に対する動きベクトルVを、上述した動きベクトル検出部１３１と同様の方法により検出する。なお、検出した動きベクトルVは、画像I1が入力されるフィールド間隔および画像P2が出力されるフレーム間隔の２倍の間隔、すなわち、２フィールドの間における動きベクトルであるため、動きベクトル検出部３１３は、整合性をとるために、検出した動きベクトルの大きさを半分にしたベクトル、すなわち、水平動き量VXおよび垂直動き量VYを２分の１にした値を示す情報を、MCブロック差分検出部３１４、巡回係数設定部１３３、および、動き補償部１３４に供給する。また、動きベクトル検出部３１３は、動きベクトルVの検出に用いた画像I1および画像I3をMCブロック差分検出部３１４に供給する。
【０２０４】
MCブロック差分検出部３１４は、画像I1のブロックごとに、各ブロックの画素値と、各ブロックに対応する画像I3のブロック、すなわち、画像I1の各ブロックを動きベクトルVの２分の１のベクトルで示される方向および距離だけ移動させた位置にある画像I3のブロックの画素値との差分値であるMCブロック差分値を検出する。MCブロック差分検出部３１４は、検出したMCブロック差分値BDを示す情報を巡回係数設定部１３３に供給する。
【０２０５】
また、画素以下精度の動きベクトルの検出方法は、上述した方法に限定されるものではなく、他の方法を用いるようにしてもよい。
【０２０６】
さらに、以上の説明では、SD画像をIP変換処理する例について説明したが、もちろん、本発明は、HD画像など高解像度の画像のIP変換処理にも適用することが可能である。
【０２０７】
なお、本発明は、例えば、テレビジョン受像機など、インターレース画像をプログレッシブ画像に変換する画像処理装置に適用することができる。
【０２０８】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０２０９】
図２２は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータ４００の構成の例を示すブロック図である。CPU（Central Processing Unit）４０１は、ROM（Read Only Memory）４０２、または記録部４０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）４０３には、CPU４０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU４０１、ROM４０２、およびRAM４０３は、バス４０４により相互に接続されている。
【０２１０】
CPU４０１にはまた、バス４０４を介して入出力インタフェース４０５が接続されている。入出力インタフェース４０５には、キーボード、マウス、マイクロホンなどよりなる入力部４０６、ディスプレイ、スピーカなどよりなる出力部４０７が接続されている。CPU４０１は、入力部４０６から入力される指令に対応して各種の処理を実行する。そして、CPU４０１は、処理の結果を出力部４０７に出力する。
【０２１１】
入出力インタフェース４０５に接続されている記録部４０８は、例えばハードディスクからなり、CPU４０１が実行するプログラムや各種のデータを記憶する。通信部４０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２１２】
また、通信部４０９を介してプログラムを取得し、記録部４０８に記憶してもよい。
【０２１３】
入出力インタフェース４０５に接続されているドライブ４１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア４１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部４０８に転送され、記憶される。
【０２１４】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図２２に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア４１１、または、プログラムが一時的もしくは永続的に格納されるROM４０２や、記録部４０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部４０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０２１５】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２１６】
さらに、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０２１７】
【図１】本発明を適用した画像変換装置の一実施の形態の構成を示すブロック図である。
【図２】図１の巡回型IP変換部の機能的構成を示すブロック図である。
【図３】プログレッシブ画像の画素のタイプを説明するための図である。
【図４】図２の動きベクトル検出部の機能的構成を示すブロック図である。
【図５】図２の巡回係数設定部の機能的構成を示すブロック図である。
【図６】図１の画像変換装置により実行される画像変換処理を説明するためのフローチャートである。
【図７】動き適応型の方法を用いたIP変換処理を説明するための図である。
【図８】図６のステップＳ２の巡回型変換処理の詳細を説明するためのフローチャートである。
【図９】MCブロック差分値BDの検出方法を説明するための図である。
【図１０】MCブロック差分値BDの検出方法を説明するための図である。
【図１１】垂直動き量VYと基本巡回係数KA0の関係を示すグラフである。
【図１２】垂直動き量VYと基本巡回係数KB0の関係を示すグラフである。
【図１３】垂直動き量VYと垂直折り返し歪みの大きさの関係を説明するための図である。
【図１４】動きベクトルの分布の例を示す図である。
【図１５】動きベクトルの分布の他の例を示す図である。
【図１６】動き分散MD0の算出方法を説明するための図である。
【図１７】動き分散MD1の算出方法を説明するための図である。
【図１８】図８のステップＳ２１の動きベクトル検出処理の詳細を説明するためのフローチャートである。
【図１９】画素以下精度の動きベクトルを検出する方法を説明するための図である。
【図２０】巡回型変換部の第２の実施の形態の構成を示すブロック図である。
【図２１】巡回型変換部の第３の実施の形態の構成を示すブロック図である。
【図２２】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０２１８】
１０１  画像変換装置，  １１１  巡回型IP変換部，  １２１  IP変換部，  １２２  巡回型変換部，  １３１  動きベクトル検出部，  １３２  MCブロック差分検出部，  １３３  巡回係数設定部，  １３４  動き補償部，  １３５  積和演算部，  １３６  フレームメモリ，  １５１  動き評価値検出部，  １５２  画素精度動きベクトル検出部，  １５３，１５４  タップ抽出部，  １５６  クラス分類部，  １５７  係数メモリ，  １５８  予測演算部，  １５９  画素以下精度動きベクトル検出部，  １７１  基本巡回係数設定部，  １７２  動き分散検出部，  １７３  巡回係数算出部，  １８１  動き分散差し引き量算出部，  １８２  MCブロック差分算出部，  １８３  減算部，  ２０１  巡回型変換部，  ２１１  フレームメモリ，  ２１２  動きベクトル検出部，  ２１３  MCブロック差分検出部，  ３０１  巡回型変換部，  ３１１，３１２  フレームメモリ，  ３１３  動きベクトル検出部，  ３１４  MCブロック差分検出部，  ４０１  CPU，  ４０２  ROM，  ４０３  RAM，  ４０８  記録部，  ４１０  ドライブ，  ４１１  リムーバブルメディア
【図１】
0004470898.tif 000015
【図２】
0004470898.tif 000016
【図３】
0004470898.tif 000017
【図４】
0004470898.tif 000018
【図５】
0004470898.tif 000019
【図６】
0004470898.tif 000020
【図７】
0004470898.tif 000021
【図８】
0004470898.tif 000022
【図９】
0004470898.tif 000023
【図１０】
0004470898.tif 000024
【図１１】
0004470898.tif 000025
【図１２】
0004470898.tif 000026
【図１３】
0004470898.tif 000027
【図１４】
0004470898.tif 000028
【図１５】
0004470898.tif 000029
【図１６】
0004470898.tif 000030
【図１７】
0004470898.tif 000031
【図１８】
0004470898.tif 000032
【図１９】
0004470898.tif 000033
【図２０】
0004470898.tif 000034
【図２１】
0004470898.tif 000035
【図２２】
0004470898.tif 000036