(57)【特許請求の範囲】
【請求項１】
動き情報を持つ符号化された動画像データを用いる画像処理方法であって、
前記符号化された動画像データを復号化して得られるフレーム画像の中から基準フレームおよび参照フレームを選択するフレーム選択ステップと、
前記参照フレームと前記基準フレームとの間の画像変位量を算出する画像変位量算出ステップと、
前記参照フレームの符号化の種類および前記符号化された動画像データの動き情報のうち少なくとも一方を用いて重み係数を生成する重み係数生成ステップと、
前記画像変位量算出ステップで算出された画像変位量と、前記重み係数生成ステップで生成された重み係数を用いて前記基準フレームを画質改善する画質改善ステップと、
を有し、
前記画像変位量算出ステップにおいて、前記符号化された動画像データに記録されているフレーム画像間の動きベクトルを方向を考慮して累積加算することにより、前記参照フレームと前記基準フレームとの間の画像変位量を算出し、
前記重み係数生成ステップにおいて、前記画像変位量算出ステップにおける前記動きベクトルの累積加算回数を用いて前記重み係数を生成することを特徴とする画像処理方法。
【請求項２】
前記重み係数生成ステップにおいて、前記参照フレームの符号化の種類および前記画像変位量算出ステップにおける前記動きベクトルの累積加算回数の両方を用いて前記重み係数を生成することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記重み係数生成ステップにおいて、前記符号化された動画像データのビットレートまたは圧縮率と、前記参照フレームの符号化の種類に応じて異なる重み係数を生成することを特徴とする請求項１又は２に記載の画像処理方法。
【請求項４】
前記画質改善ステップにおいて、前記基準フレームに対して高解像度化処理を行うことを特徴とする請求項１から３のいずれか一つに記載の画像処理方法。
【請求項５】
動き情報を持つ符号化された動画像データを用いる画像処理装置であって、
前記符号化された動画像データを復号化して得られるフレーム画像の中から基準フレームおよび参照フレームを選択するフレーム選択手段と、
前記参照フレームと前記基準フレームとの間の画像変位量を算出する画像変位量算出手段と、
前記参照フレームの符号化の種類および前記符号化された動画像データの動き情報のうち少なくとも一方を用いて、前記参照フレームの各画素に対して重み係数を生成する重み係数生成手段と、
前記画像変位量算出手段によって算出された画像変位量と、前記重み係数生成手段によって生成された重み係数を用いて前記基準フレームを画質改善する画質改善処理手段と、
を備え、
前記画像変位量算出手段は、前記符号化された動画像データに記録されているフレーム画像間の動きベクトルを方向を考慮して累積加算することにより、前記参照フレームと前記基準フレームとの間の画像変位量を算出し、
前記重み係数生成手段は、前記画像変位量算出手段における前記動きベクトルの累積加算回数を用いて前記重み係数を生成することを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法および画像処理装置に関し、特に動き情報を持つ符号化された動画像データから得られるフレーム画像の画質を改善することのできる画像処理方法および画像処理装置に関する。
【背景技術】
【０００２】
従来の撮像装置には、撮像した画像を高解像度化する際に複数の参照画像を重み付けすることで基準画像の高解像度化を行うものがあった（例えば、特許文献１参照）。この撮像装置では、基準画像から時間的に近い参照画像ほど大きい重み係数を付与し、基準画像から時間的に遠い参照画像ほど小さい重み係数を付与するようにしていた。
【特許文献１】特開２００６−１４０８８６号公報（第１頁、図１、図２）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、例えばＭＰＥＧ（Moving Picture Expert Group）やＨ．２６ｘ（Ｈ．２６１、Ｈ．２６３、Ｈ．２６４等）のようにフレーム毎に符号化の種類が異なる複数の復号フレーム（復号画像）を位置合わせして画質改善や高解像度画像の生成を行う場合、従来の撮像装置（例えば、特許文献１参照）のような時間関係のみを考慮した重み付けを行うと復号フレームの画質にばらつきがあるため、低画質のフレーム画像に対して大きな重み係数を付加し、高画質のフレーム画像に対して小さな重み係数を付加してしまうことがあり、適切な重み付けができないという問題点があった。
【０００４】
また、ＭＰＥＧやＨ．２６ｘのような動画像データの複数の復号フレームと動画像データに記録されている動き情報（動きベクトル）を用いて参照フレームと基準フレームの位置合わせを行って高解像度画像を生成するような場合、参照フレームと基準フレームとの間の画像変位量は、動画像データに記録されている動きベクトルを用いて参照フレームから基準フレームまで追従を行い、この追従に使用した動きベクトルを累積加算することによって求めることができる。このようにして求められた画像変位量は累積加算回数が多いほど誤差が大きいと考えられるが、ＭＰＥＧ等の符号化された動画像データでは、追従における累積回数と基準フレームまでの時間的距離は必ずしも一致しない。そのため、従来の撮像装置（例えば、特許文献１参照）の技術を利用すると、適切な重み付けができないという問題点があった。
【０００５】
本発明は上記のような問題点を鑑みてなされたものであり、フレーム画像に対して適切な重み付けを行い、動き情報を持つ符号化された動画像データを復号化して得られるフレーム画像に対して高精度な画質改善処理を行うことのできる画像処理方法および画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る画像処理方法は、動き情報を持つ符号化された動画像データを処理する画像処理方法であって、符号化された動画像データを復号化して得られるフレーム画像の中から基準フレームおよび参照フレームを選択するフレーム選択ステップと、参照フレームと基準フレームとの間の画像変位量を算出する画像変位量算出ステップと、参照フレームの符号化の種類および符号化された動画像データの動き情報のうち少なくとも一方を用いて重み係数を生成する重み係数生成ステップと、画像変位量算出ステップで算出された画像変位量と、重み係数生成ステップで生成された重み係数を用いて基準フレームを画質改善する画質改善ステップと、を有することを特徴とするものである。前記画像変位量算出ステップにおいて、前記符号化された動画像データに記録されているフレーム画像間の動きベクトルを方向を考慮して累積加算することにより、前記参照フレームと前記基準フレームとの間の画像変位量を算出し、前記重み係数生成ステップにおいて、前記画像変位量算出ステップにおける前記動きベクトルの累積加算回数を用いて前記重み係数を生成することを特徴とする。
【発明の効果】
【０００７】
本発明に係る画像処理方法では、参照フレームの符号化の種類および符号化された動画像データの動き情報のうち少なくとも一方を用いて重み係数を生成し、この重み係数および参照フレームと基準フレームとの間の画像変位量を用いて基準フレームを画質改善するため、参照フレームの各画素に対して適切な重み付けを行うことができ、基準フレームに対して高精度な画質改善処理を行うことが可能となる。
【発明を実施するための最良の形態】
【０００８】
（実施形態１）
以下、図面を参照しながら本発明の実施形態１に係る画像処理方法および画像処理装置について説明する。図１は、本発明の実施形態１に係る画像処理方法を実施する画像処理装置の構成を示すブロック図である。図１に示す画像処理装置１は、動き情報付き動画像データが入力される動画像入力部１１、動画像復号部１２、画像変位量算出部１３、使用者等からのフレーム指定が入力されるフレーム選択部１５、位置合わせ処理部１６、高解像度化処理部１８、メモリ１９、重み係数生成部２０、および画像表示部２１を備えており、位置合わせ処理部１６と高解像度化処理部１８は画質改善処理部２２として機能する。なお画像表示部２１は、画像処理装置１と一体にしてもよく、別体として設けるようにしてもよい。
【０００９】
なお本実施形態では、動き情報付き動画像データは既に存在しているものとし、フレーム画像間の動き情報（動きベクトル情報）を持つあらゆる動画像データのことを意味するものとする。例えば、現在一般的な動き情報付き動画像データとして、ＭＰＥＧ（Moving Picture Experts Group）１、ＭＰＥＧ２、ＭＰＥＧ４や、Ｈ．２６１、Ｈ．２６３、Ｈ．２６４などの符号化された動画像データがある。
【００１０】
動き情報付き動画像データが動画像入力部１１に入力された後、動画像復号部１２で連続するフレーム画像を復号化しメモリ１９に保存する。ここで、例えばＭＰＥＧの場合、動画像復号部１２はフレーム画像の復号化をすると共にフレーム画像間の動きベクトル情報を復号化し変換することで動きベクトルを抽出する。ＭＰＥＧに記録されている動きベクトル情報は、対象となるブロック（後に説明する）の動きベクトルと隣接するブロックの動きベクトルの差分値を圧縮符号化しているため、動きベクトル情報を復号化した後に隣接するブロックの動きベクトルに差分値を加算することで変換を行い、対象となるブロックの動きベクトルを抽出する。また動画像復号部１２は、後述する図３のＭＰＥＧ４の復号器に対応する。
【００１１】
保存された復号化データは、画像表示部２１で動画表示することができ、使用者は画像表示部２１で表示された画像を閲覧し、例えば高解像度化などの画質改善処理を行いたい基準フレームと画質改善処理に使用する参照フレームを指定することが可能である。使用者からのフレーム指定により、フレーム選択部１５は画像変位量算出部１３へ指定フレーム情報を出力する。画像変位量算出部１３は、例えば動画像復号部１２によって抽出された動きベクトルをメモリ１９経由又は動画像復号部１２経由で取得し、その動きベクトルを累積加算することによりフレーム指定された各参照フレームから基準フレームまでの画像変位量を算出する。
【００１２】
動画像復号部１２で復号化された各フレーム画像の符号化の種類（後に説明する）と、画像変位量算出部１３における動きベクトルの累積加算回数は、重み係数生成部２０に入力され、重み係数生成部２０はこれらのデータを用いて高解像度化処理部１８へ出力する重み係数を生成する。
【００１３】
画像変位量算出部１３で算出された画像変位量は位置合わせ処理部１６に入力され、この画像変位量を用いて基準フレームと各参照フレームの位置対応を画素ごとに求める。なお位置合わせ処理部１６は、メモリ１９に保存されている復号化されたフレーム画像へのアクセスが自由にできるようになっている。位置対応が求められた基準フレームと各参照フレームのデータは、高解像度化処理部１８へ入力される。高解像度化処理部１８は、位置対応が求められた基準フレームと各参照フレームのデータと重み係数生成部２０で生成された重み係数を用いて画質改善処理を行う。本実施形態では、画質改善処理として高解像度化処理を行い、動画像復号部１２で復号化されたフレーム画像よりも解像度の高い高解像度画像を生成して、この高解像度画像をメモリ１９へ保存する。なお高解像度化処理部１８で用いる重み係数のデータは、重み係数生成部２０から直接高解像度化処理部１８に入力するようにしてもよいし、メモリ１９を介して高解像度化処理部１８に入力するようにしてもよい。メモリ１９に保存された高解像度画像は、画像表示部２１に表示することができ、使用者は画像表示部２１で高解像度画像を確認することができる。
【００１４】
図２は、本実施形態に係る画像処理方法で行われる処理を示すフローチャートである。本実施形態に係る符号化された動画像データの持つ動き情報を利用する画像処理方法では、まず動き情報付き動画像データ入力処理（Ｓ１０１）により動画像データの入力を行う。次に、入力した動画像データを動画像データ復号処理（Ｓ１０２）により動きベクトルと連続するフレーム画像へ復号化する。それから、使用者のフレーム指定に基づいてフレーム選択処理（Ｓ１０３）により、フレーム画像中の高解像度化の対象となる基準フレームと高解像度化に使用する参照フレームを選択する。
【００１５】
そして画像変位量算出処理（Ｓ１０４）において、Ｓ１０２の動画像データ復号処理で復号化された動きベクトルを用いて１または複数のフレーム画像間を画素ごとに追従することにより参照フレームと基準フレームとの間の画像変位量を算出した後、重み係数生成処理（Ｓ１０５）において、参照フレームの各画素に対して重み係数を生成する。このとき、動画像データ復号処理（Ｓ１０２）で復号化された各参照フレームの符号化の種類と、画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を用いて重み係数を生成する。それから画像変位量算出処理（Ｓ１０４）において算出された画像変位量を用いて基準フレームと参照フレームの位置合わせ処理（Ｓ１０６）を行った後、重み係数生成処理（Ｓ１０５）において生成された重み係数を用いて高解像度化処理（Ｓ１０７）を行い、高解像度画像を生成する。
【００１６】
図３は、ＭＰＥＧ４の復号化処理ブロックの構成を示すブロック図である。本実施形態において図１の動画像復号部１２は、図３に示すＭＰＥＧ４の復号化処理ブロックにおける復号器１００と対応する。また動き情報付き動画像データは、図３の符号化信号１０８と対応する。復号器１００に入力された符号化信号１０８は、可変長復号化ブロック１０１で復号化され、映像データは逆量子化ブロック１０２へ、動き情報データは動きベクトル復号化ブロック１０５へそれぞれ出力される。その後、映像データは逆ＤＣＴ(Discrete Cosine Transform)ブロック１０３で逆ＤＣＴされる。動きベクトル符号化ブロック１０５で復号された動きベクトルは動き補償ブロック１０６でメモリ１０７に保存されている前のフレーム画像の対象ブロックに対し動き補償し、逆ＤＣＴされた映像データに加算することで復号画像１０９を生成する。
【００１７】
図４は、本実施形態のフレーム指定において使用者が基準フレームおよび参照フレームを指定する際の指定方法を示した図である。図４に示すように、基準フレームおよび参照フレームを指定するための表示画面２０１において、使用者は復号画像２０２の表示を復号画像表示フレーム切り替えつまみ２０３を動かしながら確認し、高解像度化したい基準フレームのフレーム番号を指定フレーム設定タブ２０４の基準フレーム設定タブ２０５に、高解像度化に使用する参照フレームのフレーム番号を使用フレーム設定タブ２０６に設定することで基準フレームおよび参照フレームを指定できる。
【００１８】
図５は、本実施形態の位置合わせ処理（Ｓ１０６）を行うための画像変位量算出処理（Ｓ１０４）の概要を示した図である。図５に示すように、使用者のフレーム指定に基づいてフレーム選択処理（Ｓ１０３）で選択された基準フレームと使用する各参照フレームが持つ動きベクトル（図５のＭＶ１からＭＶ９）を方向を考慮して累積加算することで各参照フレームと基準フレームとの間の画像変位量（累積加算された動きベクトル）を求め、その画像変位量で各参照フレームを変形することで基準フレームと各参照フレームの位置合わせができる。これらの画像変位量を求める画像変位量算出処理を、フレーム画像の各画素に対して行う。なお、これとは逆に、画像変位量算出処理で求めた画像変位量の方向を全て反転した値で基準フレームを変形することで各参照フレームに対して位置合わせすることもできる。このように、各フレーム画像が持つ動きベクトルを用いて１または複数のフレーム画像間を画素ごとに追従することにより、あるフレーム画像から他のフレーム画像への画像変位量を求めて、複数のフレーム画像を位置合わせすることができる。
【００１９】
図６および図７は、図２の画像変位量算出処理（Ｓ１０４）の内容を示すフローチャートである。なお図６における処理（１）乃至（９）の処理内容は、図９に示されている。また以下の説明において、Ｉとは「Ｉフレーム(Intra-coded Frame)／Ｉ-Ｐｉｃｔｕｒｅ／Ｉ−ＶＯＰ（Intra-coded Video Object Plane）」、Ｐとは「Ｐフレーム(Predicted Frame)／Ｐ−Ｐｉｃｔｕｒｅ／Ｐ−ＶＯＰ（Predicted Video Object Plane）」、Ｂとは「Ｂフレーム(Bidirectional predicted Frame)／Ｂ−Ｐｉｃｔｕｒｅ／Ｂ−ＶＯＰ（Bidirectional predicted Video Object Plane）」を示すものとし、フレーム画像のことを単にフレームと呼ぶものとする。なお、Ｉフレーム（Ｉ−ＶＯＰ）、Ｐフレーム（Ｐ−ＶＯＰ）およびＢフレーム（Ｂ−ＶＯＰ）については後に説明する。以下、画像変位量算出処理（Ｓ１０４）について説明する。
【００２０】
画像変位量算出処理（Ｓ１０４）における画像変位量の算出では、フレーム選択処理（Ｓ１０３）で選択された基準フレームと参照フレームのうち、基準フレーム以外のフレーム分（参照フレーム分）のループ（Ｓ０１、Ｓ２５）と各参照フレーム内全画素分のループ（Ｓ０２、Ｓ２４）で処理される。
【００２１】
ループ内処理として、まず対象フレーム・対象画素設定処理（Ｓ０３）で元対象フレームと対象フレームを参照フレームに、元対象画素と対象画素を参照フレーム内の対象画素に設定する。なおここで対象フレームとは、上記のように動きベクトルを用いて途中まで追従した画素（追従前の最初の画素を含む）がその時点で属しているフレームのことであり、元対象フレームとは、それ以前に追従中の画素が属していたフレームのことである。また対象画素とは、途中まで追従したその時点の画素（追従前の最初の画素を含む）のことであり、元対象画素とは、それ以前の追従中の画素のことである。
【００２２】
対象フレーム・対象画素設定処理（Ｓ０３）を行った後、対象フレームと基準フレームとの前後（時間の前後）関係を判定（Ｓ０４）し、処理（１）（Ｓ０５、Ｓ１２）で基準フレームの符号化タイプと処理（２）（Ｓ０６、Ｓ０７、Ｓ１３、Ｓ１４）で対象フレームの符号化タイプを判別する。
【００２３】
その後、各符号化タイプの組み合わせを考慮して処理（３）乃至（９）（Ｓ０８、Ｓ０９、Ｓ１０、Ｓ１１、Ｓ１５、Ｓ１６、Ｓ１７、Ｓ１８）で判別・選択処理を行う。図９に示すように処理（３）乃至（９）では動きベクトルを用いて対象フレームから基準フレームへ追従するために、対象画素に対応する画素を探索し所定の範囲内で対象画素に対応する画素の存在するフレームが見つかった場合には、追従先の画素としてその画素とその画素が存在するフレームを選択する。なお、処理（３）乃至（９）において対象画素に対応する画素が見つかった場合（ＹＥＳ）には、追従可能な動きベクトルが存在することとなる。
【００２４】
処理（３）乃至（９）（Ｓ０８、Ｓ０９、Ｓ１０、Ｓ１１、Ｓ１５、Ｓ１６、Ｓ１７、Ｓ１８）で、対象画素に対応する画素および対応するフレームが選択されない（ＮＯ）場合には、画像変位量なし（図７のＳ２６）として保存（Ｓ２３）し、参照フレーム内全画素分ループエンド（Ｓ２４）へ進む。
【００２５】
処理（３）乃至（９）（Ｓ０８、Ｓ０９、Ｓ１０、Ｓ１１、Ｓ１５、Ｓ１６、Ｓ１７、Ｓ１８）で対象画素に対応する画素および対応するフレームが選択される（ＹＥＳ）場合には、画像変位量更新処理（Ｓ１９）で動きベクトルを方向を考慮して累積加算することにより画像変位量を更新する。
【００２６】
図８は、画像変位量更新処理（Ｓ１９）において画像変位量を更新する方法を示した図である。画像変位量を更新する方法には２種類あり、図８における更新方法Ａは、選択されたフレーム内の対象画素に対応する画素から対象フレームの対象画素への動きベクトルを方向を考慮して累積加算するものである。図８の更新方法Ｂは、対象フレームの対象画素から選択されたフレーム内の対象画素に対応する画素への動きベクトルを方向を考慮して累積加算するものである。更新方法の選択は、図８に示すように対象フレーム、選択されたフレームの符号化タイプと対象フレーム、基準フレームとの前後（時間の前後）関係から決定される。
【００２７】
その後、選択されたフレームと基準フレームの比較処理（Ｓ２０）を行い、一致していれば参照フレームの対象画素から基準フレームの対象画素に対応する画素までの画像変位量が求められたことになるのでその画像変位量を保存（Ｓ２３）し、参照フレーム内全画素分ループエンド（Ｓ２４）へ進む。一致していなければ、対象フレーム・対象画素更新処理（Ｓ２１）において対象フレームを処理（３）乃至（９）で選択されたフレームに更新し、対象画素を処理（３）乃至（９）で選択された画素に更新して、対象フレームと基準フレームの前後関係判定処理（Ｓ０４）へ戻る。これらのループ内処理を各参照フレーム内全画素分のループ（Ｓ０２、Ｓ２４）と参照フレーム分のループ（Ｓ０１、Ｓ２５）とで処理することにより画像変位量算出処理（Ｓ１０４）を終了する。
【００２８】
以上の画像変位量算出処理（Ｓ１０４）の詳細を、いくつかのパターンを例に説明する。まずその説明の前提として、ＭＰＥＧ４によるフレームの符号化タイプと各符号化タイプ内のマクロブロック符号化タイプについて説明する。
【００２９】
ＭＰＥＧ４のフレームには、上記のようにＩ−ＶＯＰ、Ｐ−ＶＯＰ、Ｂ−ＶＯＰの３種類がある。Ｉ−ＶＯＰはイントラ符号化と呼び、Ｉ−ＶＯＰ自体の符号化時には、フレーム内で符号化が完結するため他のフレームとの予測を必要としない。Ｐ−ＶＯＰとＢ−ＶＯＰは、インター符号化と呼び、Ｐ−ＶＯＰ自体の符号化時には、前方のＩ−ＶＯＰまたはＰ−ＶＯＰから予測符号化をする。Ｂ−ＶＯＰ自体の符号化時には、双方向（前後方向）のＩ−ＶＯＰまたはＰ−ＶＯＰから予測符号化をする。
【００３０】
図１０は、動き補償時の予測方向と、動き補償によって各フレームが持つ（各フレーム内に符号化記録される）動きベクトルの方向（どのフレームに対する動きベクトルか）を例示する図である。なお図１０（ａ）は、動き補償時の予測方向を示しており、図１０（ｂ）は、図１０（ａ）の例において各フレームが持つ動きベクトルの方向を示している。また図１０（ｂ）の矢印は、基本的に図１０（ａ）の矢印と逆向きとなっている。
【００３１】
例えば、図１０（ａ）の左から４番目のＩ−ＶＯＰは他のフレーム予測には使用されるがＩ−ＶＯＰ自体の符号化に他のフレームからの予測は必要としない。つまり図１０（ｂ）に示すように、左から４番目のＩ−ＶＯＰからの動きベクトルは存在しないのでIＩ−ＶＯＰ自体は動きベクトルを持たない。
【００３２】
また図１０（ａ）の左から７番目のＰ−ＶＯＰは左から４番目のＩ−ＶＯＰから予測される。つまり図１０（ｂ）に示すように、左から７番目のＰ−ＶＯＰからの動きベクトルは左から４番目のＩ−ＶＯＰへの動きベクトルが存在するのでＰ−ＶＯＰ自体は動きベクトルを持つ。
【００３３】
さらに図１０（ａ）の左から５番目のＢ−ＶＯＰは左から４番目のＩ−ＶＯＰと左から７番目のＰ−ＶＯＰから予測される。つまり図１０（ｂ）に示すように左から５番目のＢ−ＶＯＰからの動きベクトルは左から４番目のＩ−ＶＯＰと左から７番目のＰ−ＶＯＰへの動きベクトルが存在するのでＢ−ＶＯＰ自体は動きベクトルを持つ。
【００３４】
しかし、ＭＰＥＧ４などの符号化はフレーム全体を一度に符号化するわけではなくフレーム内を複数のマクロブロックに分けて符号化をする。この際、各マクロブロックの符号化にはいくつかのモードが設けられているため、必ずしも上記のような方向への動きベクトルを持つとは限らない。
【００３５】
図１１は、各フレーム符号化タイプの各マクロブロック符号化モードと各モードにおいてそのマクロブロックが持つ動きベクトルを示す図である。図１１に示すように、Ｉ−ＶＯＰのマクロブロック符号化タイプはＩＮＴＲＡ（＋Ｑ）モードのみで１６×１６ピクセルのフレーム内符号化を行うので動きベクトルは存在しない。
【００３６】
Ｐ−ＶＯＰのマクロブロック符号化タイプはＩＮＴＲＡ（＋Ｑ）、ＩＮＴＥＲ（＋Ｑ）、ＩＮＴＥＲ４Ｖ、ＮＯＴ  ＣＯＤＥＤの４種類のモードがある。ＩＮＴＥＲ（＋Ｑ）は１６×１６ピクセルのフレーム内符号化を行うので動きベクトルは存在しない。ＩＮＴＥＲ（＋Ｑ）は１６×１６ピクセルの前方向予測符号化を行うので前予測フレームへの動きベクトルを１つ持つ。ＩＮＴＥＲ４Ｖは１６×１６ピクセルを４分割した８×８ピクセルごとに前方向予測符号化を行うので前予測フレームへの動きベクトルを４つ持つ。ＮＯＴ  ＣＯＤＥＤは前予測フレームとの差分が小さいため符号化せず、前予測フレームの同じ位置におけるマクロブロックの画像データをそのまま使用するので、実際には動きベクトルは持たないが、本実施形態においては前予測フレームへの動きベクトル値"０"を１つ持つと考えることができる。
【００３７】
Ｂ−ＶＯＰのマクロブロック符号化タイプはＩＮＴＥＲＰＯＬＡＴＥ、ＦＯＲＷＡＲＤ、ＢＡＣＫＷＡＲＤ、ＤＩＲＥＣＴの４種類のモードがある。ＩＮＴＥＲＰＯＬＡＴＥは１６×１６ピクセルの双方向予測符号化を行うので前後予測フレームへの動きベクトルをそれぞれ１つずつ持つ。ＦＯＲＷＡＲＤは１６×１６ピクセルの前方向予測符号化を行うので前予測フレームへの動きベクトルを１つ持つ。ＢＡＣＫＷＡＲＤは１６×１６ピクセルの後方向予測符号化を行うので後予測フレームへの動きベクトルを１つ持つ。ＤＩＲＥＣＴは１６×１６ピクセルを４分割した８×８ピクセルごとに前後方向予測符号化を行うので前後予測フレームへの動きベクトルをそれぞれ４つずつ持つ。
【００３８】
以上の前提を元に画像変位量算出処理（Ｓ１０４）の詳細を、いくつかのパターンを例に図１２乃至図１４を用いて説明する。
【００３９】
図１２は、画像変位量算出処理（Ｓ１０４）における追従の例を示す図である。図１２の例において、１フレーム目はＩ−ＶＯＰ、２フレーム目と３フレーム目はＰ−ＶＯＰであり、基準フレームを１フレーム目、参照フレームを３フレーム目とする。３フレーム目の参照フレーム内の対象画素を斜線の画素として、まずその対象画素が含まれるマクロブロックの持つ動きベクトルを探す。この例の場合、マクロブロック符号化タイプはＩＮＴＥＲでこのマクロブロックが持つ動きベクトルはＭＶ１なので対象画素の位置をＭＶ１を使って移動する。移動した画素の位置を２フレーム目のＰ−ＶＯＰのフレーム内の位置に対応させ、対応した２フレーム目の対象画素の位置に対して同様に対象画素が含まれるマクロブロックが持つ動きベクトルを探す。この例の場合、マクロブロック符号化タイプはＩＮＴＥＲ４Ｖでこのマクロブロックが持つ動きベクトルは４つ存在するが、対象画素が含まれている８×８ピクセルのブロックが持つ動きベクトルはＭＶ４なので追従中の対象画素の位置をさらにＭＶ４を使って移動する。そして移動した画素の位置を１フレーム目のＩ−ＶＯＰのフレーム内の位置に対応させる。この例の場合、１フレーム目が基準フレームなので、参照フレームの対象画素は基準フレームまで追従できたことになり、追従時に使用した初期値０とＭＶ１とＭＶ４を累積加算することで参照フレームの対象画素から基準フレームの対象画素に対応する画素までの画像変位量を求めることができる。
【００４０】
図１３は、画像変位量算出処理（Ｓ１０４）における追従の他の例を示す図である。図１３の例において、１フレーム目はＩ−ＶＯＰ、２フレーム目と３フレーム目はＰ−ＶＯＰとし、基準フレームを３フレーム目、参照フレームを１フレーム目とする。１フレーム目の参照フレーム内の対象画素を斜線の画素として、まず１フレーム目への動きベクトルを持つ２フレーム目のＰ−ＶＯＰの全画素から１フレーム目の対象画素に対応する画素を探す。対応する画素が見つかったら、その画素が含まれる２フレーム目のマクロブロックが持つ動きベクトル（この例の場合ＩＮＴＥＲ４ＶでＭＶ３）の方向を反転した−ＭＶ３で対象画素の位置を移動し、移動した画素の位置を２フレーム目のＰ−ＶＯＰのフレーム内の位置に対応させ、対応した２フレーム目の対象画素の位置に対して同様に３フレーム目のＰ−ＶＯＰの全画素から２フレーム目の対象画素に対応する画素を探す。対応する画素が見つかったらその画素が含まれる３フレーム目のマクロブロックが持つ動きベクトル（この例の場合ＩＮＴＥＲでＭＶ５）の方向を反転した−ＭＶ５で対象画素の位置を移動し、移動した画素の位置を３フレーム目のＰ−ＶＯＰのフレーム内の位置に対応させる。この例の場合、３フレーム目が基準フレームなので、参照フレームの対象画素は基準フレームまで追従できたことになり、追従時に使用した初期値０と−ＭＶ３と−ＭＶ５を累積加算することで参照フレームの対象画素から基準フレームの対象画素に対応する画素までの画像変位量を求めることができる。
【００４１】
図１４は、図１３の例において対象画素に対応する画素および動きベクトルを探す方法を示す図である。なお図１４では、図１３のような例において１フレーム目への動きベクトルを持つ２フレーム目のＰ−ＶＯＰの全画素から１フレーム目の対象画素に対応する画素を探す方法や、３フレーム目のＰ−ＶＯＰの全画素から２フレーム目の対象画素に対応する画素を探す方法について示している。図１４の例では、左から４番目の参照フレーム（Ｉ−ＶＯＰ）の対象画素が左から７番目の基準フレーム（Ｐ−ＶＯＰ）のどの画素と対応するか、およびその画素が含まれるマクロブロックが持つ動きベクトル（図１４のＭＶ１）を探す。
【００４２】
図１４（ａ）のように、まず基準フレーム（Ｐ）の全てのマクロブロック（全画素）を各マクロブロック（全画素）が持つ動きベクトルで位置を移動する。移動した結果が図１４（ａ）の左図である。この位置移動された画像領域内において、参照フレームの対象画素がどの位置にあたるかをマークし、その位置にある基準フレームを移動させた画素が対象画素に対応する画素となる。図１４（ａ）の例では、マクロブロック２の中のある一つの画素が対象画素に対応する画素となるため、元のマクロブロック２内の対応する画素とマクロブロック２の動きベクトルが選択される。このようにして対象画素と対応する画素を探すことができる。
【００４３】
図１４（ｂ）は、対象画素をマークした位置に基準フレームを移動した画素が複数存在する場合であり、どれを選択してもよい。例えば図１４（ｂ）の例では、対象画素をマークした位置がマクロブロック１と６のある画素に対応しているが、マクロブロック１の方が中心に近いのでマクロブロック１内の対応する画素を選択するようにしてもよい。また処理の都合上、ラスタスキャン順に処理を行いフラグを上書きしているような場合には、順番の遅いマクロブロック６を選択するようにしてもよい。
【００４４】
図１５は、図２の重み係数生成処理（Ｓ１０５）の内容を説明するための図である。図１５の例では７つのフレーム画像があり、一番左のＩ−ＶＯＰを基準フレーム、右から３番目のＢ−ＶＯＰを参照フレームとして、右から３番目の参照フレーム内の対象画素について重み係数を生成する場合を示している。図１５の例では、対象画素が含まれる参照フレームの符号化の種類はＢ−ＶＯＰである。また、参照フレーム内の対象画素から基準フレームの対象画素に対応する画素までの画像変位量を図６および図７に示す画像変位量算出処理（Ｓ１０４）によって算出した場合、動きベクトルの累積加算回数が３回であったとする。
【００４５】
本実施形態では、対象画素が含まれる参照フレームの符号化の種類を使用して重み係数αkを生成する。このとき、まず符号化された動画像データ全体が低圧縮か高圧縮かを判断する。そして重み係数αkを、低圧縮時は「Ｉ−ＶＯＰ＞Ｐ−ＶＯＰ＞Ｂ−ＶＯＰ」の大小関係になるように、高圧縮時は「Ｐ−ＶＯＰ＞Ｉ−ＶＯＰ≧Ｂ−ＶＯＰ」または「Ｐ−ＶＯＰ＞Ｂ−ＶＯＰ≧Ｉ−ＶＯＰ」の大小関係になるように決定する。これは符号化された動画像データが低圧縮のときはＩ−ＶＯＰの画質が一番高く、高圧縮のときはＰ−ＶＯＰの画質が一番高いためである。低圧縮か高圧縮かを判断するには、例えば、符号化された動画像データのビットレートが閾値より大きい場合は低圧縮、閾値以下の場合は高圧縮と判断してもよいし、符号化された動画像データの圧縮率（符号化された動画像データの符号量／動画像データが非圧縮時の符号量）の値が閾値より大きい場合は低圧縮、閾値以下の場合は高圧縮と判断してもよい。
【００４６】
また本実施形態では、画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を使用して重み係数βijを生成する。このとき重み係数βijを、画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数が少ないほど大きくなるように、画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数が多いほど小さくなるように決定する。
【００４７】
なお、重み係数αkは参照フレームの符号化の種類によって決まるため参照フレームごとに決定され、重み係数βijは参照フレーム内の対象画素によって決まるため参照フレームの各画素ごとに決定されることになる。重み係数生成処理（Ｓ１０５）で生成された重み係数αkおよび重み係数βijは、以下の高解像度化処理（Ｓ１０７）で使用される。
【００４８】
図１６は、位置合わせ処理部１６で行われる位置合わせ処理（Ｓ１０６）と高解像度画像度化処理部１８で行われる高解像度化処理（Ｓ１０７）のアルゴリズムを示すフローチャートである。以下、図１６に示すアルゴリズムの流れに添って位置合わせ処理（Ｓ１０６）および超解像処理を用いた高解像度化処理（Ｓ１０７）の説明を行う。
【００４９】
まず、基準フレームの画像データと参照フレームの画像データを読み込む（Ｓ２０１）。なお参照フレームは、フレーム指定およびフレーム選択処理（Ｓ１０３）において複数枚を選択するようにし、Ｓ２０１において複数枚分の参照フレームの画像データを読み込むのが望ましい。次に、基準フレームを高解像度化処理のターゲット画像として、このターゲット画像に対しバイリニア補間やバイキュービック補間等の補完処理を行って初期画像ｚ0を作成する（Ｓ２０２）。なおこの補間処理は、場合により省略することができる。それから、画像変位量算出処理（Ｓ１０４）で算出された画像変位量を用いて、ターゲット画像と各参照フレームの位置対応を画素ごとに算出する（Ｓ２０３）。
【００５０】
次に、光学伝達関数(ＯＴＦ、Ｏｐｔｉｃａｌ  Ｔｒａｎｓｆｅｒ  Ｆｕｎｃｔｉｏｎ)、ＣＣＤアパーチャ（ＣＣＤ開口）等の撮像特性を考慮した点広がり関数(ＰＳＦ、Ｐｏｉｎｔ  Ｓｐｒｅａｄ  Ｆｕｎｃｔｉｏｎ)を求める（Ｓ２０４）。このＰＳＦは、以下の式（１）における行列Ａk（ｉ、ｊ）反映され、例えば簡易的にＧａｕｓｓ関数を用いることができる。それから、Ｓ２０３で算出されたターゲット画像と各参照フレームの位置対応とＳ２０４で求められたＰＳＦを用いて、以下の式（１）で表される評価関数ｆ（ｚ）の最小化を行い（Ｓ２０５）、ｆ（ｚ）が最小化されたかどうかを判定する（Ｓ２０６）。
【００５１】
【数１】
0005098081.tif 000002
【００５２】
式（１）において、ｋは参照フレームの識別番号、ｉとｊは参照フレーム内における対象画素の座標、αkは参照フレームの符号化の種類を用いて生成した重み係数、βijは画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を用いて生成した重み係数、ｙk（ｉ、ｊ）は参照フレーム（低解像度画像）の画像データを表す列ベクトル、ｚはターゲット画像を高解像度化した高解像度画像の画像データを表す列ベクトル、Ａk（ｉ、ｊ）はターゲット画像と各参照フレームの位置対応、光学系の点像分布関数、サンプリング開口によるぼけ、カラーモザイクフィルタ（ＣＦＡ）による各色コンポネント等を含めた撮像システムの特性をあらわす画像変換行列である。また、ｇ（ｚ）は画像の滑らかさや画像の色の相関等を考慮した正則化項であり、λは重み係数である。式（１）で表される評価関数ｆ（ｚ）の最小化には、例えば最急降下法を用いることができる。最急降下法を用いる場合には、ｆ（ｚ）をｚの各要素で偏微分した値を計算して、それらの値を要素とするベクトルを生成する。そして以下の式（２）に示すように、偏微分した値を要素とするベクトルをｚに付加することにより、高解像度画像ｚを更新させていき（Ｓ２０７）、ｆ（ｚ）が最小となるｚを求める。
【００５３】
【数２】
0005098081.tif 000003
【００５４】
式（２）において、ｚnはｎ回目の更新を行った高解像度画像の画像データを表す列ベクトルであり、αは更新量の歩み幅である。なお、最初のＳ２０５の処理では、高解像度画像ｚとしてＳ２０２で求められた初期画像ｚ0を用いることができる。Ｓ２０６においてｆ（ｚ）が最小化されたと判定された場合には処理を終了し、そのときのｚnを最終的な高解像度画像としてメモリ１９等に記録する。このようにして、基準フレームや参照フレームなどのフレーム画像よりも解像の高い高解像度画像を得ることができる。
【００５５】
なお本実施形態では、画質改善処理部２２の高解像度化処理部１８において高解像度画像を生成するようにしているが、例えば高解像度化処理（Ｓ１０７）の代わりに、上記の重み係数を用いて加重平均による平滑化処理を行い、ランダムノイズを低減することで基準フレームを画質改善するようにしてもよい。
【００５６】
本実施形態では、参照フレームの符号化の種類および画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を用いて重み係数αk、βijを生成し、この重み係数αk、βijおよび参照フレームと基準フレームとの間の画像変位量を用いて基準フレームを画質改善（高解像度化）するため、参照フレームの各画素に対して適切な重み付けを行うことができ、基準フレームに対して高精度な画質改善処理を行うことが可能となる。
【００５７】
（実施形態２）
図１７は、本発明の実施形態２において画像変位量算出処理（Ｓ１０４）で行われる画像変位量の算出方法を示したフローチャートである。なお、本実施形態に係る画像処理装置の構成および画像処理方法の内容は、以下に示す点を除いて実施形態１に係る画像処理方法および画像処理装置と同様であり、異なる部分についてのみ説明する。
【００５８】
本実施形態では、動きベクトルを累積加算するのではなく基準フレームと参照フレームをピクセルマッチングすることにより参照フレームと基準フレームとの間の画像変位量を算出する。
【００５９】
まず、基準フレームを読み込み（Ｓ３０１）、基準フレームを複数の画像変位パラメータで変形させ、画像列を生成する（Ｓ３０２）。それから、フレーム選択処理（Ｓ１０３）で選択された参照フレームを読み込む（Ｓ３０３）。そして、領域ベースマッチング手法等のピクセルマッチング手法を用いて基準フレームと参照フレームとの間で大まかな画素位置の対応付けを行う（Ｓ３０４）。
【００６０】
次に、Ｓ３０２で基準フレームを変形することにより生成された画像列と参照フレームとの間の類似度値を算出する（Ｓ３０５）。この類似度は、例えばＳＳＤ（Sum of  Squared  Difference）やＳＡＤ（Sum of Absolute  Difference）等の画像列と参照フレームとの差分として求めることができる。そしてＳ３０２において画像列を生成した際の画像変位パラメータと、Ｓ３０５で算出した類似度値との関係を用いて、離散的な類似度マップを作成する（Ｓ３０６）。それから、Ｓ３０６で作成した離散的な類似度マップを補完して連続的な類似度曲線を求め、この連続的な類似度曲線において類似度値の極値を探索する（Ｓ３０７）。離散的な類似度マップを補完して連続的な類似度曲線を求める方法としては、例えばパラボラフィッティングやスプライン補間法がある。この連続的な類似度曲線において類似度値が極値になるときの画像変位パラメータが、基準フレームと参照フレームとの間の画像変位量として算出される。
【００６１】
その後、高解像度化処理（Ｓ１０７）で用いられるすべての参照フレームについて画像変位量の算出が行われたかどうかを判定し（Ｓ３０８）、すべての参照フレームについて画像変位量の算出が行われていない場合には、他の参照フレームを次の参照フレームとして（Ｓ３０９）、Ｓ３０３からＳ３０８までの処理を繰り返す。Ｓ３０８において、高解像度化処理（Ｓ１０７）で用いられるすべての参照フレームについて画像変位量の算出が行われたと判定された場合には処理を終了する。
【００６２】
図１８は、画像変位量算出処理（Ｓ１０４）のＳ３０７において求められた類似度曲線の例を示す図である。図１８において、縦軸は類似度値を、横軸は図１７のＳ３０２において画像列を生成した際の画像変位パラメータを示している。図１８の例では、画像列と参照画像との間の類似度がＳＳＤで算出されており、類似度曲線が離散的な類似度マップをパラボラフィッティングで補完することにより求められているため、類似度値が小さいほど類似度が高くなる。このように、離散的な類似度マップを補完して連続的な類似度曲線を求め、その極値（図１８の例では極小値）を探索することにより、基準フレームと参照フレームとの間の画像変位量をサブピクセルレベルで求めることができる。
【００６３】
この後、実施形態１と同様に重み係数生成処理（Ｓ１０５）、位置合わせ処理（Ｓ１０６）および高解像度化処理（Ｓ１０７）を行うが、画像変位量算出処理（Ｓ１０４）において動きベクトルの累積加算を行っていないため、動きベクトルの累積加算回数を用いて生成される重み係数βijは求められない。そこで本実施形態では、図１６に示す高解像度化処理のＳ２０５において以下の式（３）で表される評価関数ｆ（ｚ）を最小化することにより基準フレームを高解像度化する。なお式（３）では、参照フレームの符号化の種類を用いて生成した重み係数αkだけを使用して重み付けしている。
【００６４】
【数３】
0005098081.tif 000004
【００６５】
式（３）において、ｋは参照フレームの識別番号、αkは参照フレームの符号化の種類を用いて生成した重み係数、ｙkは参照フレーム（低解像度画像）の画像データを表す列ベクトル、ｚはターゲット画像を高解像度化した高解像度画像の画像データを表す列ベクトル、Ａkはターゲット画像と各参照フレームの位置対応、光学系の点像分布関数、サンプリング開口によるぼけ、カラーモザイクフィルタ（ＣＦＡ）による各色コンポネント等を含めた撮像システムの特性をあらわす画像変換行列である。また、ｇ（ｚ）は画像の滑らかさや画像の色の相関等を考慮した正則化項であり、λは重み係数である。効果については実施形態１に係る画像処理方法および画像処理装置とほぼ同様である。
【００６６】
（実施形態３）
本発明の実施形態３では、図１６に示す高解像度化処理のＳ２０５において以下の式（４）で表される評価関数ｆ（ｚ）を最小化することにより基準フレームを高解像度化する。なお式（４）では、画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を用いて算出した重み係数βijだけを使用して重み付けしている。その他の点については、実施形態１に係る画像処理方法および画像処理装置と同様である。
【００６７】
【数４】
0005098081.tif 000005
【００６８】
式（４）において、ｋは参照フレームの識別番号、ｉとｊは参照フレーム内における対象画素の座標、βijは画像変位量算出処理（Ｓ１０４）における動きベクトルの累積加算回数を用いて生成した重み係数、ｙk（ｉ、ｊ）は参照フレーム（低解像度画像）の画像データを表す列ベクトル、ｚはターゲット画像を高解像度化した高解像度画像の画像データを表す列ベクトル、Ａk（ｉ、ｊ）はターゲット画像と各参照フレームの位置対応、光学系の点像分布関数、サンプリング開口によるぼけ、カラーモザイクフィルタ（ＣＦＡ）による各色コンポネント等を含めた撮像システムの特性をあらわす画像変換行列である。また、ｇ（ｚ）は画像の滑らかさや画像の色の相関等を考慮した正則化項であり、λは重み係数である。効果については実施形態１に係る画像処理方法および画像処理装置とほぼ同様である。
【００６９】
なお、本発明は上記した実施形態に限定されるものではなく、その技術的思想の範囲内でなしうるさまざまな変更、改良が含まれることは言うまでもない。例えば上記の実施形態では、画質改善処理部２２の位置合わせ処理部１６と高解像度化処理部１８を別々に設けているがこれらを一体としてもよく、また画像処理装置１の構成は図１に示すものに限定されない。さらに、例えば実施形態１のように画像変位量算出処理（Ｓ１０４）において動きベクトルを累積加算して画像変位量を求めた後、実施形態２の式（３）で表される評価関数ｆ（ｚ）を用いて基準フレームを高解像度化するようにしてもよい。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施形態１に係る画像処理方法を実施する画像処理装置の構成を示すブロック図である。
【図２】実施形態１に係る画像処理方法で行われる処理を示すフローチャートである。
【図３】ＭＰＥＧ４の復号化処理ブロックの構成を示すブロック図である。
【図４】本実施形態のフレーム指定において使用者が基準フレームおよび参照フレームを指定する際の指定方法を示した図である。
【図５】本実施形態の位置合わせ処理を行うための画像変位量算出処理の概要を示した図である。
【図６】図２の画像変位量算出処理の内容を示すフローチャートである。
【図７】図２の画像変位量算出処理の内容を示すフローチャートである。
【図８】画像変位量更新処理において画像変位量を更新する方法を示した図である。
【図９】図６における処理（１）乃至（９）の処理内容を示した図である。
【図１０】動き補償時の予測方向と、動き補償によって各フレームが持つ動きベクトルの方向を例示する図である。
【図１１】各フレーム符号化タイプの各マクロブロック符号化モードと各モードにおいてそのマクロブロックが持つ動きベクトルを示す図である。
【図１２】画像変位量算出処理における追従の例を示す図である。
【図１３】画像変位量算出処理における追従の他の例を示す図である。
【図１４】図１３の例において対象画素に対応する画素および動きベクトルを探す方法を示す図である。
【図１５】図２の重み係数生成処理の内容を説明するための図である。
【図１６】位置合わせ処理部で行われる位置合わせ処理と高解像度画像度化処理部で行われる高解像度化処理のアルゴリズムを示すフローチャートである。
【図１７】本発明の実施形態２において画像変位量算出処理で行われる画像変位量の算出方法を示したフローチャートである。
【図１８】画像変位量算出処理のＳ３０７において求められた類似度曲線の例を示す図である。
【符号の説明】
【００７１】
１      画像処理装置
１１    動画像入力部
１２    動画像復号部
１３    画像変位量算出部
１５    フレーム選択部
１６    位置合わせ処理部
１８    高解像度化処理部
１９    メモリ
２０    重み係数生成部
２１    画像表示部
２２    画質改善処理部
１００  復号器
１０１  可変長復号化ブロック
１０２  逆量子化ブロック
１０３  逆ＤＣＴブロック
１０５  動きベクトル復号化ブロック
１０６  動き補償ブロック
１０７  メモリ
１０８  符号化信号
１０９  復号画像
２０１  表示画面
２０２  復号画像
２０３  復号画像表示フレーム切り替えつまみ
２０４  指定フレーム設定タブ
２０５  基準フレーム設定タブ
２０６  使用フレーム設定タブ
【図１】
0005098081.tif 000006
【図２】
0005098081.tif 000007
【図３】
0005098081.tif 000008
【図４】
0005098081.tif 000009
【図５】
0005098081.tif 000010
【図６】
0005098081.tif 000011
【図７】
0005098081.tif 000012
【図８】
0005098081.tif 000013
【図９】
0005098081.tif 000014
【図１０】
0005098081.tif 000015
【図１１】
0005098081.tif 000016
【図１２】
0005098081.tif 000017
【図１３】
0005098081.tif 000018
【図１４】
0005098081.tif 000019
【図１５】
0005098081.tif 000020
【図１６】
0005098081.tif 000021
【図１７】
0005098081.tif 000022
【図１８】
0005098081.tif 000023