(57)【要約】【課題】本発明は、フィルタリング後の低フレームレート映像信号の符号化効率を考慮した形でフレームレート変換を実現する技術の提供を目的とする。【解決手段】等間隔のフレーム位置において、各フィルタ係数を用いる場合に生成されるフレームのそれぞれについて、規定数前のフレーム位置において生成されるフレームとの間で低フレームレート映像信号の符号化効率を示す値を算出し、それに基づいて、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるフィルタ係数を特定することを、最終のフレーム位置に向けて繰り返す。そして、繰り返しの実行を終えたフレーム位置において、符号化効率表示値の総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出し、それを起点として先に特定したフィルタ係数を辿ることで、各フレーム位置で用いるフィルタ係数を選択する。【選択図】図８
2010206430.tif 000002
【特許請求の範囲】
【請求項１】
等間隔のフレーム位置において、予め用意するフィルタ係数集合の中からフィルタ係数を選択し、高フレームレート映像信号の複数フレームをそのフィルタ係数を用いてフィルタリングすることでダウンサンプリングを実行するフレームレート変換方法であって、
等間隔のフレーム位置において、各フィルタ係数を用いる場合に生成される複数フレームのそれぞれについて、規定数前のフレーム位置において生成される複数フレームのそれぞれとの間で、ダウンサンプリングにより生成される低フレームレート映像信号の符号化効率を示す値を算出し、それに基づいて、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるフィルタ係数を特定することを、先頭のフレーム位置から最終のフレーム位置に向けて繰り返し実行する過程と、
前記繰り返しの実行を終えたフレーム位置において生成される複数フレームの中から、前記符号化効率表示値の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出する過程と、
前記検出したフィルタ係数を起点として前記特定したフィルタ係数を辿ることで、各フレーム位置で用いるフィルタ係数を選択する過程とを備えることを、
特徴とするフレームレート変換方法。
【請求項２】
請求項１に記載のフレームレート変換方法において、
等間隔のフレーム位置を補正する位置補正用パラメータを設定する過程を備え、
前記実行する過程では、前記位置補正用パラメータにより補正されるフレーム位置において生成される複数フレームについても、等間隔のフレーム位置において生成されるフレームに含める形で処理を実行することを、
特徴とするフレームレート変換方法。
【請求項３】
請求項１または２に記載のフレームレート変換方法において、
前記実行する過程では、前記算出した符号化効率表示値とその算出対象となった規定数前のフレーム位置にあるフレームの持つ符号化効率表示値の総和との加算値を求めて、それらの中の最小値を特定することで、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるその規定数前のフレーム位置におけるフィルタ係数を特定するとともに、その加算値をその特定元のフレームの持つ符号化効率表示値の総和として設定することを、
特徴とするフレームレート変換方法。
【請求項４】
請求項１ないし３のいずれか１項に記載のフレームレート変換方法において、
前記実行する過程では、前記符号化効率表示値として、動き補償予測誤差電力を算出することを、
特徴とするフレームレート変換方法。
【請求項５】
請求項１ないし３のいずれか１項に記載のフレームレート変換方法において、
前記実行する過程では、前記符号化効率表示値として、所定の符号化器を用いて符号化する場合に得られる符号化コストを算出することを、
特徴とするフレームレート変換方法。
【請求項６】
等間隔のフレーム位置において、予め用意するフィルタ係数集合の中からフィルタ係数を選択し、高フレームレート映像信号の複数フレームをそのフィルタ係数を用いてフィルタリングすることでダウンサンプリングを実行するフレームレート変換装置であって、
等間隔のフレーム位置において、各フィルタ係数を用いる場合に生成される複数フレームのそれぞれについて、規定数前のフレーム位置において生成される複数フレームのそれぞれとの間で、ダウンサンプリングにより生成される低フレームレート映像信号の符号化効率を示す値を算出し、それに基づいて、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるフィルタ係数を特定することを、先頭のフレーム位置から最終のフレーム位置に向けて繰り返し実行する手段と、
前記繰り返しの実行を終えたフレーム位置において生成される複数フレームの中から、前記符号化効率表示値の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出する手段と、
前記検出したフィルタ係数を起点として前記特定したフィルタ係数を辿ることで、各フレーム位置で用いるフィルタ係数を選択する手段とを備えることを、
特徴とするフレームレート変換装置。
【請求項７】
請求項６に記載のフレームレート変換装置において、
等間隔のフレーム位置を補正する位置補正用パラメータを設定する手段を備え、
前記実行する手段は、前記位置補正用パラメータにより補正されるフレーム位置において生成される複数フレームについても、等間隔のフレーム位置において生成されるフレームに含める形で処理を実行することを、
特徴とするフレームレート変換装置。
【請求項８】
請求項６または７に記載のフレームレート変換装置において、
前記実行する手段は、前記算出した符号化効率表示値とその算出対象となった規定数前のフレーム位置にあるフレームの持つ符号化効率表示値の総和との加算値を求めて、それらの中の最小値を特定することで、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるその規定数前のフレーム位置におけるフィルタ係数を特定するとともに、その加算値をその特定元のフレームの持つ符号化効率表示値の総和として設定することを、
特徴とするフレームレート変換装置。
【請求項９】
請求項１ないし５のいずれか１項に記載のフレームレート変換方法をコンピュータに実行させるためのフレームレート変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高フレームレート映像信号のフレームをフィルタリングに基づくダウンサンプリングにより低フレームレート映像信号に変換するフレームレート変換方法およびその装置と、そのフレームレート変換方法の実現に用いられるフレームレート変換プログラムとに関する。
【背景技術】
【０００２】
近年、臨場感あふれる大画面のスポーツ映像やデジタルシネマに代表される超高画質映像への期待が高まっている。これを受けて、映像の高画質化に関する研究が精力的に行われている。
【０００３】
超高画質映像の実現には次の四要素が必要である。すなわち、空間解像度、画素値深度、色再現性、時間解像度である。これを受けて、前者の三要素については、デジタルシネマ等の応用およびナチュラルビジョンプロジェクトにおいて検討が進められている。また、被写体の自然な動きを表現するために不可欠な時間解像度の向上、すなわち、映像の高フレームレート化についても検討がなされている。
【０００４】
映像の入力・出力システムのフレームレートの上限は非対称である。現在、撮像系としては、１０００[frame/sec] を超える高フレームレート映像を撮像可能な高速度カメラが利用可能である。ただし、こうした高速度カメラで撮像された映像はスロー再生用途で用いられる。一方、現行のディスプレイの上限は１２０[fps] 程度であるため、高速度カメラで撮影された映像ソースは、実時間再生を目的とした表示形態ではフレームを間引く必要がある。
【０００５】
通常、図１７に示すように、ダウンサンプリング後のフレーム時間間隔が等間隔になるようにダウンサンプリングが実施される（例えば、特許文献１参照）。
【０００６】
しかるに、単純なフレーム間引き処理では、時間方向のエイリアシング（動きのカクツキ）に起因する画質劣化が問題となる。こうした問題を回避するためには、時間軸方向の帯域制限フィルタリングが必要である。一方、動き補償フレーム間予測を用いた符号化器の場合、時間方向のエイリアシングの低減は予測誤差の低減とは直接的には結びつかない。つまり、時間方向のダウンサンプリングフィルタに関して、符号化効率の観点から最適化の余地があることになる。
【０００７】
従来の３０fps,６０fps のフレームレートの映像信号の場合、フィルタリングのための十分なサンプル（すなわち、フレーム）が確保できないため、フィルタの特性を高精度に近似することが困難であった。例えば、６０fps の映像信号をフィルタリングして３０fps の映像信号を生成する場合、フィルタリングの対象フレームに重複を許さない条件下では、フィルタリングの対象となるフレームは２フレームに限定される。
【０００８】
これに対して、高フレームレート映像信号の場合、フィルタ設計の自由度は拡張される。例えば、１０００fps の映像信号をフィルタリングして６２．５fps の映像信号を生成する場合、フィルタリングの対象フレームに重複を許さない条件下であっても、１６フレームをフィルタリングの対象とすることができる。
【０００９】
したがって、高フレームレート映像信号を入力してフィルタリングにより低フレームレート映像信号を得る場合、フィルタリング設計の自由度が高まることになる。
【００１０】
しかるに、従来技術では、この点について何ら検討を行っていない。これから、高フレームレート映像信号を入力してフィルタリングにより低フレームレート映像信号を得る場合に、符号化効率の観点から最適なフレームレート変換のためのフィルタリング方法を検討する余地がある。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００４−２０１１６５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
このようなことを背景にして、本発明者は、「坂東幸浩, 高村誠之, 上倉一人, 八島由幸：“高フレームレート映像信号のダウンサンプリング方法に関する一考察”, 画像符号化シンポジウム, p5-02, 2008 」で、動き補償予測誤差電力を最小化するように、ダウンサンプリング後のフレームを選択するという方法について検討を行った。
【００１３】
しかるに、この方法では、フレーム選択に基づくダウンサンプリング手法によりフレームレートを変換するようにしており、時間方向の画質劣化を解決可能とするフィルタリングに基づくダウンサンプリング手法によりフレームレートを変換するようにしている訳ではない。
【００１４】
さらに、この方法では、逐次的に選択するフレームを設定しており、シーケンス全体での動き補償予測誤差電力の最小化を保証しておらず、その点から改善の余地が残されている。
【００１５】
本発明はかかる事情に鑑みてなされたものであって、高フレームレート映像信号に対してのダウンサンプリングにより得られる低フレームレート映像信号を入力とする映像符号化処理において、フィルタリングに基づくダウンサンプリングにより低フレームレート映像信号を生成することで、時間方向のエイリアシングに起因する画質劣化を防止するとともに、シーケンス全体に対する符号化効率を考慮した形でその低フレームレート映像信号を生成することで、ダウンサンプリング後の低フレームレート映像信号の符号化効率を向上することを実現する新たなフレームレート変換技術を確立することを目的とする。
【課題を解決するための手段】
【００１６】
〔１〕本発明の基本的な考え方
フレームレートの変換の対象となる高フレームレート映像信号について、フレーム間隔をδt として、時刻ｔ＝ｊδt （ｊ＝０, １, ..... ）のフレームにおける位置ｘの画素値をｆ（ｘ, ｔ）（ｘ＝０, １, .... ,Ｘ−１）と表す。
【００１７】
この画素信号ｆ（ｘ, ｔ）を、ダウンサンプリングによりフレーム数を１／Ｍに変換する場合を考える。ダウンサンプリング前後のフレームレートの比Ｍをダウンサンプリング比と呼ぶ。つまり、この変換は、フレームレートを、“１／δt ”から“１／Ｍδt ”へ変換することを想定している。
【００１８】
なお、以下では、簡単のために一次元信号を例にとり説明するが、同様の議論は、容易に二次元信号にも拡張可能である。
【００１９】
フレームレートの変換方法としては、フレーム間引き、単純平均などの方法がある。フレーム間引きでは、下記の式（１）で表されるフレームをダウンサンプリング後のフレームとする。
【００２０】
【数１】
2010206430.tif 000003
【００２１】
また、単純平均では、下記の式（２）で表されるフレームをダウンサンプリング後のフレームとする。
【００２２】
【数２】
2010206430.tif 000004
【００２３】
しかしながら、フレーム間引きと単純平均のいずれの方法も、動き補償を伴う動画像符号化を想定した手法ではなく、ダウンサンプリング後の映像信号の符号化効率の観点からは最適な手法とはいえない。
【００２４】
そこで、本発明では、時間方向のエイリアシング（動きのカクツキ）に起因する画質劣化を防止しつつ、ダウンサンプリング後の映像信号の符号化効率を向上することを実現するために、下記の式（３）で表されるように、タップ長２Δ＋１を持つフィルタ係数Ｗi （ｉはダウンサンプリングのフレーム位置を示す変数）
Ｗi ＝（ωi 〔−Δ〕, .... ,ωi 〔Δ〕）
を用いたフィルタリングを行うことにより、図１に示すように、ダウンサンプリング後のフレームを得ることとする。
【００２５】
【数３】
2010206430.tif 000005
【００２６】
ここで、Σωi 〔ｊ〕＝１を満たすものとする。ただし、Σはｊ＝−Δi 〜Δi についての総和である。また、Δi は各フレーム毎に外部から与えられるパラメータ（ｉに依存しないこともある）である。
【００２７】
なお、ダウンサンプリングのフレーム位置が先頭のフレーム位置や最終のフレーム位置である場合には、フィルタリングの対象となる２Δ＋１枚のフレームが揃わないことも起こるが、この場合には、フィルタリング対象として存在するフレームについてのフィルタ係数を比例演算（それらのフィルタ係数の総和が１となるようにする比例演算）により決定することになる。
【００２８】
そして、本発明では、このときに、ダウンサンプリング後の映像信号の符号化効率を向上することを実現すべく、ダウンサンプリング後の低フレームレート映像信号の全フレームの符号化効率を考慮した形で、このフィルタ係数Ｗi を決定するようにする。
【００２９】
次に、本発明に特徴的な処理であるフィルタ係数Ｗi の決定方法について説明する。
【００３０】
〔ｉ〕“フィルタ係数の決定（その１）”
フィルタ係数Ｗi ＝（ωi 〔−Δ〕, .... ,ωi 〔Δ〕）として取り得るフィルタ係数の集合として、Ｎ通りの係数Ψn ＝｛ψn 〔−Δ〕, .... ,ψn 〔Δ〕｝（ｎ＝０, .... ,Ｎ−１）を考える。以下では、〜Ψ＝（Ψ0 , .... ,ΨN-1 ）とおく。なお、以下の表記において、「〜Ｘ」（Ｘは文字）における記号〜は、「Ｘ」の上に付く記号を示している。
【００３１】
図２に示すように、等間隔に設定される各フレーム位置では、このＮ通りの中から適切なフィルタ係数を選択するものとする。以下、フィルタ係数の選択方法について詳細に説明する。
【００３２】
信号＾ｆ（ｘ, ｉＭδt , Ｗi ）をサイズＳの区間Ｂ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）に分割し、各区間Ｂ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）を単位として動き補償（推定変移量ｄi ＝（ｄi 〔０〕, .... ,ｄi 〔Ｋ−１〕）を行った場合、その区間内の動き補償後の予測誤差電力は下記の式（４）のように表現できる。なお、以下の表記において、「＾Ｘ」（Ｘは文字）における記号＾は、「Ｘ」の上に付く記号を示している。
【００３３】
【数４】
2010206430.tif 000006
【００３４】
ここで、式（４）では、１つ前のフィルタリングにより生成されたフレーム（参照フレームとなるフレーム）との間で動き補償後の予測誤差電力を求めるようにしている。
【００３５】
Ｗi とＷi-1 が与えられた場合、この式（４）に従って、σi 2 〔Ｗi , Ｗi-1 〕を最小化するように推定変移量ｄ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）を設定し、ｄ〔ｋ, Ｗi , Ｗi-1 〕（ｋ＝０, １, .... ,Ｋ−１）とおく。このとき、推定変移量ｄ〔ｋ〕の精度は外部から与えられるものとする（例：整数画素精度、１／２画素精度、１／４画素精度など）。
【００３６】
ここで、注意すべきは、Ｗi の設定方法である。σi 2 〔Ｗi , Ｗi-1 〕を最小化するようにＷi を設定したのでは、シーケンス全体での予測誤差電力
Σσi 2 〔Ｗi , Ｗi-1 〕
但し、Σはｉ＝１〜（Ｊ／Ｍ−１）の総和で、Ｊはフレーム数
を最小化したことにはならない。なぜなら、Ｗi の選択はσi 2 〔Ｗi+1 , Ｗi 〕にも影響を与えるからである。
【００３７】
従って、求めるべきパラメータは、下記の式（５）を満たすＪ／Ｍ個のパラメータである。
【００３８】
【数５】
2010206430.tif 000007
【００３９】
各Ｗi を〜Ψに含まれるＮ通りの候補から選択を行うため、Ｊ／Ｍ個のパラメータ（Ｗ0 , .... ,ＷJ/M-1 ）の取り得る組み合わせはＮJ/M 通りであり、この中から最適な組み合わせ（Ｗ* 0 , .... ,Ｗ* J/M-1 ）を総当たりで探索するのは、計算量的に困難である。
【００４０】
そこで、本発明では、σi 2 〔Ｗi , Ｗi-1 〕が直前フレームの結果のみに依存することに着目し、以下のように最適解を算出する。
【００４１】
まず、Ｗi として取り得る全てのフィルタ係数集合〜Ψに対して、最適なＷi-1 , .... ,Ｗ0 を用いた場合のΣσi 2 〔Ｗi , Ｗi-1 〕（但し、Σはｉ＝１〜ｉの総和）をＳi （Ｗi ）として定義する。
【００４２】
ここで、σi 2 〔Ｗi , Ｗi-1 〕が直前フレームの結果のみに依存することに着目すると、Ｓi （Ｗi ）はＳi-1 （Ｗi-1 ）を用いて、図３に示すように、下記の式（６）のように表される。なお、ｉ＝１, .... ,（Ｊ／Ｍ−１）である。
【００４３】
【数６】
2010206430.tif 000008
【００４４】
このとき算出したＳi （Ｗi ）（Ｗi ＝Ψ0 , .... ,ΨN-1 ）をメモリに格納しておき、Ｓi+1 （Ｗi+1 ）の計算で用いるものとする。さらに、この式（６）の最小値を与えるＷi-1 を、図３中に示すように、＾Ｗi-1 （Ｗi ）とおく。この＾Ｗi-1 （Ｗi ）（Ｗi ＝Ψ0 , .... ,ΨN-1 ）についても、全てメモリに格納しておくものとする。ここで、「＾Ｘ」（Ｘは文字）における記号＾は、「Ｘ」の上に付く記号を示している。
【００４５】
式（５）の最小化問題は、下記の式（７）のように表せる。
【００４６】
【数７】
2010206430.tif 000009
【００４７】
この式（７）を最小化するＷJ/M-1 をＷ* J/M-1 とおくと、このＷ* J/M-1 は下記の式（８）で表せる。
【００４８】
【数８】
2010206430.tif 000010
【００４９】
Ｗ* J/M-1 に対する最適解は、＾ＷJ/M-2 （ＷJ/M-1 ）としてメモリに格納されているので、その値を参照し、Ｗ* J/M-2 ＝＾ＷJ/M-2 （ＷJ/M-1 ）とする。
【００５０】
以下、同様の参照処理を、
Ｗ* J/M-3 ＝＾ＷJ/M-3 （ＷJ/M-2 ）
・・・・・
Ｗ* 0 ＝＾Ｗ0 （Ｗ1 ）
として繰り返す。
【００５１】
このようにして、“フィルタ係数の決定（その１）”によれば、総当たりによる探索に依らずに、等間隔に設定される各フレーム位置ｉで用いるフィルタ係数の最適な組み合わせ（Ｗ* 0 , .... ,Ｗ* J/M-1 ）を求めることができるようになる。
【００５２】
以上の説明では、動き補償予測誤差電力を最小化するようにフィルタ係数の選択を行うことで説明したが、特定の符号化器（例えば、Ｈ．２６４準拠の符号化器）により符号化を行い、その符号化歪みＤと符号量Ｒの加重和のラグランジェコスト（符号化コスト：Ｊ＝Ｄ＋λＲ）を最小化するようにフィルタ係数の選択を行うようにしてもよい。ここで、λは符号化歪みＤと符号量Ｒの重みを調整するパラメータであり、外部から与えられることになる。
【００５３】
〔ii〕“フィルタ係数の決定（その２）”
“フィルタ係数の決定（その１）”では、フィルタ係数Ｗi ＝（ωi 〔−Δ〕, .... ,ωi 〔Δ〕）を用いた式（３）で示されるフィルタリングを行うことによりダウンサンプリング後のフレームを得るようにしたが、“フィルタ係数の決定（その２）”では、下記の式（９）で示されるフィルタリングを行うことによりダウンサンプリング後のフレームを得るようにする。
【００５４】
【数９】
2010206430.tif 000011
【００５５】
ここで、Σωi 〔ｊ〕＝１を満たすものとする。ただし、Σはｊ＝−Δi 〜Δi についての総和である。また、Δi は各フレーム毎に外部から与えられるパラメータ（ｉに依存しないこともある）である。
【００５６】
式（３）との違いは、式（９）では、フィルタ処理の位置を補正するパラメータｐi が加わった点である。このパラメータｐi は、ｐi ＝０, １, .... ,Ｐ−１の値をとる。なお、このｐi の値については、０を中心として正負の値をとるように定義することも可能である。
【００５７】
通常、図１７に示すように、ダウンサンプリング後のフレーム時間間隔が等間隔になるように実施される。これは、非等間隔の時間サンプリングでは、ジャーキネス（画質劣化）を発生させるという仮定に基づくものである。ダウンサンプリングの対象が低フレームレート映像信号の場合、この仮定は正しい。しかし、ダウンサンプリングの対象が高フレームレート映像信号の場合は、その限りではない。ダウンサンプリングの対象が高フレームレート映像信号の場合、フレームを厳密に等間隔に配置しなくても、等間隔の乖離が一定閾値以内であれば、視覚的には大きなジャーキネス（画質劣化）が発生しないからである。
【００５８】
そこで、“フィルタ係数の決定（その２）”では、フィルタ処理の位置を補正するパラメータｐi を加えるようにしている。
【００５９】
すなわち、フィルタ係数Ｗi ＝（ωi 〔−Δ〕, .... ,ωi 〔Δ〕）として取り得るフィルタ係数の集合として、Ｎ通りの係数Ψn ＝｛ψn 〔−Δ〕, .... ,ψn 〔Δ〕｝（ｎ＝０, .... ,Ｎ−１）を考え、さらに、これらのフィルタ係数を施す位置として、Ｐ通りの位置を選択可能とする。
【００６０】
Ｐ＝３について例示する図４に示すように、等間隔に設定される各フレーム位置では、このＮ×Ｐ通りの中から適切なフィルタ係数を選択するものとする。以下、フィルタ係数の選択方法について詳細に説明する。
【００６１】
信号＾ｆ（ｘ, ｉＭδt , Ｗi , ｐi ）をサイズＳの区間Ｂ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）に分割し、各区間Ｂ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）を単位として動き補償（推定変移量ｄi ＝（ｄi 〔０〕, .... ,ｄi 〔Ｋ−１〕）を行った場合、その区間内の動き補償後の予測誤差電力は下記の式（１０）のように表現できる。
【００６２】
【数１０】
2010206430.tif 000012
【００６３】
ここで、式（１０）では、１つ前のフィルタリングにより生成されたフレーム（参照フレームとなるフレーム）との間で動き補償後の予測誤差電力を求めるようにしている。
【００６４】
Ｗi , Ｗi-1 , ｐi , ｐi-1 が与えられた場合、この式（１０）に従って、σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕を最小化するように推定変移量ｄ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）を設定し、ｄ〔ｋ, Ｗi , Ｗi-1 , ｐi , ｐi-1 〕（ｋ＝０, １, .... ,Ｋ−１）とおく。このとき、推定変移量ｄ〔ｋ〕の精度は外部から与えられるものとする（例：整数画素精度、１／２画素精度、１／４画素精度など）。
【００６５】
ここで、注意すべきは、Ｗi , ｐi の設定方法である。σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕を最小化するようにＷi , ｐi を設定したのでは、シーケンス全体での予測誤差電力
Σσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕
但し、Σはｉ＝１〜（Ｊ／Ｍ−１）の総和で、Ｊはフレーム数
を最小化したことにはならない。なぜなら、Ｗi , ｐi の選択はσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕にも影響を与えるからである。
【００６６】
従って、求めるべきパラメータは、下記の式（１１）を満たす２×（Ｊ／Ｍ）個のパラメータである。
【００６７】
【数１１】
2010206430.tif 000013
【００６８】
各Ｗi を〜Ψに含まれるＮ通りの候補から選択を行い、さらに、各ｐi をＰ通りの候補から選択を行うため、２Ｊ／Ｍ個のパラメータ（Ｗ0 , .... ,ＷJ/M-1 , ｐ0 , .... ,ｐJ/M-1 ）の取り得る組み合わせは（ＰＮ）J/M 通りであり、この中から最適な組み合わせ（Ｗ* 0 , .... ,Ｗ* J/M-1 , ｐ* 0 , .... ,ｐ* J/M-1 ）を総当たりで探索するのは、計算量的に困難である。
【００６９】
そこで、本発明では、σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕が直前フレームの結果のみに依存することに着目し、以下のように最適解を算出する。
【００７０】
まず、Ｗi として取り得る全てのフィルタ係数集合〜Ψおよびｐi として取り得るパラメータ集合（ｐi ＝０, １, .... ,Ｐ−１）に対して、最適なＷi-1 , .... ,Ｗ0 , ｐi-1 , .... ,ｐ0 を用いた場合のΣσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕（但し、Σはｉ＝１〜ｉの総和）をＳi （Ｗi , ｐi ）として定義する。
【００７１】
ここで、σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕が直前フレームの結果のみに依存することに着目すると、Ｓi （Ｗi , ｐi ）はＳi-1 （Ｗi-1 , ｐi-1 ）を用いて、図５に示すように、下記の式（１２）のように表される。なお、ｉ＝１, .... ,（Ｊ／Ｍ−１）である。
【００７２】
【数１２】
2010206430.tif 000014
【００７３】
このとき算出したＳi （Ｗi , ｐi ）をメモリに格納しておき、Ｓi+1 （Ｗi+1 , ｐi+1 ）の計算で用いるものとする。さらに、この式（１２）の最小値を与えるＷi-1 、ｐi-1 を、図５中に示すように、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）とおく。この＾Ｗi-1 （Ｗi , ｐi ）および＾ｐi-1 （Ｗi , ｐi ）（Ｗi ＝Ψ0 , .... ,ΨN-1 , ｐi ＝０, １, .... ,Ｐ−１）についても、全てメモリに格納しておくものとする。
【００７４】
式（１１）の最小化問題は、下記の式（１３）のように表せる。
【００７５】
【数１３】
2010206430.tif 000015
【００７６】
この式（１３）を最小化するＷJ/M-1 、ｐJ/M-1 を、それぞれＷ* J/M-1 、ｐ* J/M-1 とおくと、このＷ* J/M-1 およびｐ* J/M-1 は下記の式（１４）で表せる。
【００７７】
【数１４】
2010206430.tif 000016
【００７８】
Ｗ* J/M-1 、ｐ* J/M-1 に対する最適解は、＾ＷJ/M-2 （ＷJ/M-1 , ｐJ/M-1 ）、＾ｐJ/M-2 （ＷJ/M-1 , ｐJ/M-1 ）としてメモリに格納されているので、その値を参照し、Ｗ* J/M-2 ＝＾ＷJ/M-2 （ＷJ/M-1 , ｐJ/M-1 ）、ｐ* J/M-2 ＝＾ｐJ/M-2 （ＷJ/M-1 , ｐJ/M-1 ）とする。
【００７９】
以下、同様の参照処理を、
Ｗ* J/M-3 ＝＾ＷJ/M-3 （ＷJ/M-2 , ｐJ/M-2 ）
ｐ* J/M-3 ＝＾ｐJ/M-3 （ＷJ/M-2 , ｐJ/M-2 ）
・・・・・
Ｗ* 0 ＝＾Ｗ0 （Ｗ1 , ｐ1 ）
ｐ* 0 ＝＾ｐ0 （Ｗ1 , ｐ1 ）
として繰り返す。
【００８０】
このようにして、“フィルタ係数の決定（その２）”によれば、各フレーム位置ｉの近傍についてもフィルタ処理の対象と含めるようにする場合において、総当たりによる探索に依らずに、等間隔に設定される各フレーム位置ｉで用いるフィルタ係数の最適な組み合わせ（Ｗ* 0 , .... ,Ｗ* J/M-1 ）とフィルタリング位置の最適な組み合わせ（ｐ* 0 , .... ,ｐ* J/M-1 ）を求めることができるようになる。
【００８１】
以上の説明では、動き補償予測誤差電力を最小化するようにフィルタ係数の選択を行うことで説明したが、特定の符号化器（例えば、Ｈ．２６４準拠の符号化器）により符号化を行い、その符号化歪みＤと符号量Ｒの加重和のラグランジェコスト（符号化コスト：Ｊ＝Ｄ＋λＲ）を最小化するようにフィルタ係数の選択を行うようにしてもよい。ここで、λは符号化歪みＤと符号量Ｒの重みを調整するパラメータであり、外部から与えられることになる。
【００８２】
〔２〕本発明の構成
次に、本発明の構成について説明する。
【００８３】
本発明のフレームレート変換装置は、等間隔のフレーム位置において、予め用意するフィルタ係数集合の中からフィルタ係数を選択し、高フレームレート映像信号の複数フレームをそのフィルタ係数を用いてフィルタリングすることでダウンサンプリングを実行するものであり、そのことを実行するために、（１）等間隔のフレーム位置において、各フィルタ係数を用いる場合に生成される複数フレームのそれぞれについて、規定数前のフレーム位置において生成される複数フレームのそれぞれとの間で、ダウンサンプリングにより生成される低フレームレート映像信号の符号化効率を示す値を算出し、それに基づいて、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるフィルタ係数を特定することを、先頭のフレーム位置から最終のフレーム位置に向けて繰り返し実行する実行手段と、（２）実行手段による繰り返しの実行を終えたフレーム位置において生成される複数フレームの中から、符号化効率表示値の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出する検出手段と、（３）検出手段の検出したフィルタ係数を起点として実行手段の特定したフィルタ係数を辿ることで、各フレーム位置で用いるフィルタ係数を選択する選択手段とを備えるように構成する。
【００８４】
ここで、実行手段は、具体的には、算出した符号化効率表示値とその算出対象となった規定数前のフレーム位置にあるフレームの持つ符号化効率表示値の総和との加算値を求めて、それらの中の最小値を特定することで、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられるその規定数前のフレーム位置におけるフィルタ係数を特定するとともに、その加算値をその特定元のフレームの持つ符号化効率表示値の総和として設定するように処理する。
【００８５】
この構成を採るときに、等間隔のフレーム位置を補正する位置補正用パラメータを設定する設定手段を備えることがあり、この場合には、実行手段は、位置補正用パラメータにより補正されるフレーム位置において生成される複数フレームについても、等間隔のフレーム位置において生成されるフレームに含める形で処理を実行する。
【００８６】
また、実行手段は、符号化効率表示値として、動き補償予測誤差電力を算出したり、所定の符号化器を用いて符号化する場合に得られる符号化コストを算出することがある。
【００８７】
以上の各処理手段が動作することで実現される本発明のフレームレート変換方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当なコンピュータ読み取り可能な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００８８】
このように構成される本発明のフレームレート変換装置において、実行手段が、低フレームレート映像信号の符号化処理に合わせて、１つ前のフレーム位置において生成される複数フレームのそれぞれとの間で、ダウンサンプリングにより生成される低フレームレート映像信号の符号化効率を示す値を算出するという構成を採る場合には、実行手段によるフィルタ係数の特定処理のためのパスが１つとなって、実行手段による繰り返しの実行の終了が最終のフレーム位置のみとなるので、本発明のフレームレート変換装置は以下のように構成されることになる。
【００８９】
すなわち、本発明のフレームレート変換装置は、等間隔のフレーム位置において、予め用意するフィルタ係数集合の中からフィルタ係数を選択し、高フレームレート映像信号の複数フレームをそのフィルタ係数を用いてフィルタリングすることでダウンサンプリングを実行するものであり、そのことを実行するために、（１）等間隔のフレーム位置において、各フィルタ係数を用いる場合に生成される複数フレームのそれぞれについて、１つ前のフレーム位置において生成される複数フレームのそれぞれとの間で、ダウンサンプリングにより生成される低フレームレート映像信号の符号化効率を示す値を算出し、それに基づいて、先頭のフレーム位置からの符号化効率表示値の総和を最小化するつながりを持つフレームの生成に用いられる１つ前のフレーム位置におけるフィルタ係数を特定することを、最終のフレーム位置まで繰り返し実行する実行手段と、（２）最終のフレーム位置において生成される複数フレームの中から、符号化効率表示値の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出する検出手段と、（３）検出手段の検出したフィルタ係数を起点として実行手段の特定したフィルタ係数を辿ることで、各フレーム位置で用いるフィルタ係数を選択する選択手段とを備えるように構成する。
【発明の効果】
【００９０】
本発明では、高フレームレート映像信号のフレームをフィルタリングに基づくダウンサンプリングにより低フレームレート映像信号へとフレームレート変換を実行するときに、ダウンサンプリング後の低フレームレート映像信号の全シーケンスに対する符号化効率を考慮した形で、そのフレームレート変換処理を実行する。
【００９１】
これから、本発明によれば、高フレームレート映像信号に対してのフィルタリングに基づくダウンサンプリングにより得られた所望のフレームレートの映像信号を符号化する場合に、均等フレーム間隔の間引きにより得られた映像信号よりも符号量を低く抑えることができるようになるとともに、全シーケンスに対する符号化効率を考慮しないで行う非等のフレーム間隔の間引きにより得られた映像信号よりも符号量を低く抑えることができるようになる。
【００９２】
そして、本発明によれば、高フレームレート映像信号のフレームをフィルタリングに基づくダウンサンプリングにより低フレームレート映像信号へと変換することから、時間方向のエイリアシングに起因する画質劣化を防止することができるようになる。
【図面の簡単な説明】
【００９３】
【図１】フィルタリングに基づくフレームレート変換処理の説明図である。
【図２】フィルタ係数の選択処理の説明図である。
【図３】本発明で算出するＳi （Ｗi ）の算出処理の説明図である。
【図４】フィルタ処理の位置を補正するパラメータの説明図である。
【図５】本発明で算出するＳi （Ｗi , ｐi ）の算出処理の説明図である。
【図６】本発明のフレームレート変換装置の装置構成図である。
【図７】フィルタ係数記憶部のデータ構造の説明図である。
【図８】本発明のフレームレート変換装置の装置構成図である。
【図９】本発明のフレームレート変換装置の装置構成図である。
【図１０】ダウンサンプリング実行部の実行するフローチャートである。
【図１１】ダウンサンプリング実行部の実行するフローチャートである。
【図１２】ダウンサンプリング実行部の実行するフローチャートである。
【図１３】ダウンサンプリング実行部の実行するフローチャートである。
【図１４】ダウンサンプリング実行部の実行するフローチャートである。
【図１５】ダウンサンプリング実行部の実行するフローチャートである。
【図１６】本発明の有効性を検証するために行った実験結果の説明図である。
【図１７】従来技術によるフレームレート変換処理の説明図である。
【発明を実施するための形態】
【００９４】
以下、実施の形態に従って本発明を詳細に説明する。
【００９５】
図６に、本発明のフレームレート変換装置１の装置構成の一例を図示する。
【００９６】
この図に示すように、本発明のフレームレート変換装置１は、フレームレート変換処理の対象となる高フレームレート映像信号を格納する高フレームレート映像ファイル１０と、フレームレート変換処理された低フレームレート映像信号を格納する低フレームレート映像ファイル１１と、高フレームレート映像信号から低フレームレート映像信号へのフィルタリングに基づくフレームレート変換処理を実行するフレームレートダウンサンプリング部１２とを備える。
【００９７】
このフレームレートダウンサンプリング部１２は、動き推定部１２００を備えて、動き補償予測誤差電力を算出する動き補償予測誤差算出部１２０と、フィルタ係数の集合を記憶するフィルタ係数記憶部１２１と、動き補償予測誤差算出部１２０の算出する動き補償予測誤差電力を評価値として用いて、フィルタ係数記憶部１２１の記憶するフィルタ係数集合の中から最適なフィルタ係数を選択して、その選択したフィルタ係数を使って高フレームレート映像信号の複数フレームに対してフィルタリング処理を施すことでフレームレートダウンサンプリング処理を実行するダウンサンプリング実行部１２２と、ダウンサンプリング実行部１２２の作業用データを記憶する作業用メモリ１２３とを備える。
【００９８】
ここで、フィルタ係数記憶部１２１は、フィルタリング処理が２Δ＋１枚のフレームに対して施される場合には、図７に示すようなデータ構造に従って、ダウンサンプリング実行部１２２の用いるフィルタ係数の集合を記憶することになる。
【００９９】
ダウンサンプリング実行部１２２の実行するフレーム選択処理の説明に入る前に、動き補償予測誤差算出部１２０の備える動き推定部１２００の処理について説明する。
【０１００】
動き推定部１２００は、予測対象フレームと参照フレームとを入力として、下記に示す処理を実行することで、予測対象フレーム内のブロック毎の動きベクトルｄ〔ｋ〕、すなわち、式（４）や式（１０）におけるｄ〔ｋ〕（ｋ＝０, １, .... ,Ｋ−１）を推定する処理を行う。ここで、ｋはブロックを同定するインデックスである。
【０１０１】
処理：・式（４）や式（１０）のΣ｛ｘ∈Ｂ〔ｋ〕｝の項（第ｋブロックの予測誤差和          ）を最小化する動きベクトルｄ〔ｋ〕を求める
・動きベクトルは、予め与えられた探索範囲−Ｄ≦ｄ〔ｋ〕≦Ｄ−１内の値から          選択される
・選択の方法は、探索範囲内の全ての候補ベクトルに対して、その候補ベクトル          を用いた場合の予測誤差和を算出し、その予測誤差和を最小化するベクトルを          ｄ〔ｋ〕とすることで行う
動き補償予測誤差算出部１２０は、動き推定部１２００の推定したベクトルｄ〔ｋ〕を使い、式（４）や式（１０）に基づいて、予測対象フレームと参照フレームとの間の動き補償予測誤差電力を算出する。
【０１０２】
〔１〕第１の実施形態例
次に、第１の実施形態例について説明する。
【０１０３】
〔１−１〕ダウンサンプリング実行部１２２の装置構成
図８に、第１の実施形態例を実現すべく構成されるダウンサンプリング実行部１２２の装置構成の一例を図示する。ここで、以下に説明するダウンサンプリング実行部１２２の処理では、フィルタリングに用いるフィルタ係数の選択基準として、動き補償予測誤差誤差電力を用いる場合を示す。
【０１０４】
ダウンサンプリング実行部１２２は、フィルタリングに基づくフレームレートダウンサンプリング処理を実行するものであり、第１の実施形態例に従う場合には、この図８に示すように、入力部１２２０と、処理フレーム位置選択部１２２１と、処理フィルタ係数選択部１２２２と、参照フィルタ係数決定部１２２３と、全フレーム位置終了判定部１２２４と、累積予測誤差最小化最終フィルタ係数検出部１２２５と、決定参照フィルタ係数追跡部１２２６と、フィルタリング実行部１２２７とを備える。
【０１０５】
この入力部１２２０は、高フレームレート映像信号のフレーム数Ｊと、高フレームレート映像信号のフレーム間隔δt と、ダウンサンプリング比Ｍとを読み込む。
【０１０６】
処理フレーム位置選択部１２２１は、ダウンサンプリング比Ｍとフレーム間隔δt とに基づく等間隔のダウンサンプリングにより規定されるダウンサンプリングフレーム位置（以下、フレーム位置と略記する）を選択対象として、先頭のフレーム位置の１つ後のフレーム位置を起点にして、最終のフレーム位置までのフレーム位置を順次、処理フレーム位置として選択する。
【０１０７】
処理フィルタ係数選択部１２２２は、フィルタ係数記憶部１２１に記憶されるフィルタ係数集合の中からフィルタ係数を順次選択して、その選択したフィルタ係数を使って、処理フレーム位置選択部１２２１の選択した処理フレーム位置の近傍に位置するフレームをフィルタリングすることで処理フレームを生成する。
【０１０８】
参照フィルタ係数決定部１２２３は、処理フィルタ係数選択部１２２２の生成した処理フレームと、１つ前のフレーム位置において各フィルタ係数の選択に対応付けて生成された参照フレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて（累積予測誤差算出機能）、それらの中の最小値を特定することで（最小累積予測誤差特定機能）、先頭のフレーム位置からの動き補償予測誤差電力の総和を最小化するつながりを持つ参照フレームを特定して、その特定した参照フレームの生成に用いられたフィルタ係数を、処理フィルタ係数選択部１２２２の選択したフィルタ係数にとっての最適なフィルタ係数（参照フィルタ係数）として決定する。
【０１０９】
全フレーム位置終了判定部１２２４は、最終のフレーム位置までの全フレーム位置について処理を行ったのか否かを判定して、全フレーム位置について処理を行っていないことを判定するときには、処理フレーム位置選択部１２２１に対して次のフレーム位置を選択するように指示し、全フレーム位置について処理を行ったことを判定するときには、累積予測誤差最小化最終フィルタ係数検出部１２２５に対して処理の実行を指示する。
【０１１０】
累積予測誤差最小化最終フィルタ係数検出部１２２５は、最終のフレーム位置において算出された動き補償予測誤差電力の総和（参照フィルタ係数決定部１２２３が算出したもの）について、それらの中の最小値を持つフレームを検出することで、先頭のフレーム位置からの動き補償予測誤差電力の総和を最小化する最終フレームを特定して、その特定した最終フレームの生成に用いられたフィルタ係数を最終のフレーム位置における最適なフィルタ係数（最終フィルタ係数）として検出する。
【０１１１】
決定参照フィルタ係数追跡部１２２６は、累積予測誤差最小化最終フィルタ係数検出部１２２５の検出した最終フィルタ係数を起点として、参照フィルタ係数決定部１２２３の決定した参照フィルタ係数を辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについての最適な参照フィルタ係数を抽出する。
【０１１２】
フィルタリング実行部１２２７は、累積予測誤差最小化最終フィルタ係数検出部１２２５の検出した最終フィルタ係数と、決定参照フィルタ係数追跡部１２２６の抽出した参照フィルタ係数とを用いてフィルタリング処理を実行することで高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行する。
【０１１３】
〔１−２〕ダウンサンプリング実行部１２２の実行する処理
下記に、このように構成されるダウンサンプリング実行部１２２の実行するフレームレートダウンサンプリング処理の流れを示す。
【０１１４】
１．撮影された映像信号（フレームレート変換処理の対象となる高フレームレート映像      信号）、そのフレーム数Ｊ、そのフレームレート（フレーム間隔δt を算出するた      めに用いる）を読み込む
２．ダウンサンプリング比Ｍを読み込む
３．ｉ＝１, .... ,Ｊ／Ｍ−１について以下の処理を行う
４．  Ｗi ＝Ψ0 , .... ,ΨN-1 について以下の処理を行う
５．    Ｗi-1 ＝Ψ0 , .... ,ΨN-1 について以下の処理を行う
６．      参照フレームを＾ｆ（ｘ−ｄi 〔ｋ〕, （ｉ−１）Ｍδt , Ｗi-1 ）とする            場合の＾ｆ（ｘ, ｉＭδt , Ｗi ）に対する動き補償予測誤差電力（式（４            ))を最小化する動きベクトルを求める。動きベクトルの求め方は外部から与            えられる。例えば、探索範囲内の候補をしらみつぶしにあたる全探索法を用            いる。求めた動きベクトルを用いた場合の動き補償予測誤差電力をσi 2 〔            Ｗi , Ｗi-1 〕に格納する
７．      σi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）の値を算出する
（ただし、ｉ＝１の場合には、σ1 2 〔Ｗ1 , Ｗ0 〕の値を算出する）
８．    σi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）          の中での最小値をＳi （Ｗi ）に格納する
（ただし、ｉ＝１の場合には、σ1 2 〔Ｗ1 , Ｗ0 〕（Ｗ0 ＝Ψ0 , .... ,              ΨN-1 ）の中での最小値をＳ1 （Ｗ1 ）に格納する）
９．    Ｓi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）に格納する
10．ＳJ/M-1 （ＷJ/M-1 ）を最小化するＷJ/M-1 をＷ* J/M-1 に格納する
11．ｉ＝Ｊ／Ｍ−２, .... ,１について以下の処理を行う
12．  Ｗ* i-1 ＝＾Ｗi-1 （Ｗi ）を読み出す
13．ダウンサンプリング後の第ｉフレームとして、＾ｆ（ｘ, ｉＭδt , Ｗ* i ）
（ｘ＝０, .... ,Ｘ−１）を格納する。
【０１１５】
このようにして、ダウンサンプリング実行部１２２は、まず最初に、予め用意した各フィルタ係数のそれぞれを使って、等間隔のダウンサンプリングにより規定されるフレーム位置の近傍に位置するフレームをフィルタリングすることでフレームを生成して、図３に示すように、その生成したフレームのそれぞれについて、１つ前のフレーム位置において各フィルタ係数の選択に対応付けて同様に生成したフレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて、それらの中の最小値を特定することで、１つ前のフレーム位置における最適なフィルタ係数を求めるという処理を、最終のフレーム位置まで繰り返して実行し、
続いて、最終のフレーム位置において算出した動き補償予測誤差電力の総和について、それらの中の最小値を持つフレームを検出することで、最終のフレーム位置における最適なフィルタ係数を検出して、その検出したフィルタ係数を起点として先に特定したフィルタ係数を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数を抽出し、
最後に、それらの抽出した最適なフィルタ係数を用いて各フレーム位置においてフィルタリングを実行することで、高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行するのである。
【０１１６】
ここで、ダウンサンプリング実行部１２２は、低フレームレート映像信号の符号化処理に合わせて、１つ前のフレーム位置との間ではなくて、それよりも前の規定数前のフレーム位置との間で動き補償予測誤差電力を算出するようにしてもよい。
【０１１７】
この場合には、フィルタ係数の特定処理のためのパスが複数となって、先頭のフレーム位置およびそれに続く規定数のフレーム位置を起点として繰り返しの実行を開始して、最終のフレーム位置よりも規定数前のフレーム位置およびそれに続く最終のフレーム位置までのフレーム位置について、その繰り返しの実行を行うことになる。
【０１１８】
そして、その繰り返しの実行を終えたフレーム位置において生成される複数フレームの中から、動き補償予測誤差電力の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出して、その検出したフィルタ係数を起点として先に特定したフィルタ係数を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数を抽出することになる。
【０１１９】
〔２〕第２の実施形態例
次に、第２の実施形態例について説明する。
【０１２０】
〔２−１〕ダウンサンプリング実行部１２２の装置構成
図９に、第２の実施形態例を実現すべく構成されるダウンサンプリング実行部１２２の装置構成の一例を図示する。ここで、以下に説明するダウンサンプリング実行部１２２の処理では、フィルタリングに用いるフィルタ係数の選択基準として、動き補償予測誤差誤差電力を用いる場合を示す。
【０１２１】
ダウンサンプリング実行部１２２は、フィルタリングに基づくフレームレートダウンサンプリング処理を実行するものであり、第２の実施形態例に従う場合には、この図９に示すように、入力部１２２０αと、処理フレーム位置選択部１２２１αと、処理位置・フィルタ係数選択部１２２２αと、参照位置・フィルタ係数決定部１２２３αと、全フレーム位置終了判定部１２２４αと、累積予測誤差最小化最終位置・フィルタ係数検出部１２２５αと、決定参照位置・フィルタ係数追跡部１２２６αと、フィルタリング実行部１２２７とを備える。
【０１２２】
この入力部１２２０αは、高フレームレート映像信号のフレーム数Ｊと、高フレームレート映像信号のフレーム間隔δt と、ダウンサンプリング比Ｍとを読み込む。
【０１２３】
処理フレーム位置選択部１２２１αは、ダウンサンプリング比Ｍとフレーム間隔δt とに基づく等間隔のダウンサンプリングにより規定されるダウンサンプリングフレーム位置（以下、フレーム位置と略記する）を選択対象として、先頭のフレーム位置の１つ後のフレーム位置を起点にして、最終のフレーム位置までのフレーム位置を順次、処理フレーム位置として選択する。
【０１２４】
処理位置・フィルタ係数選択部１２２２αは、フィルタ処理の位置を補正するパラメータ（前述したｐi ：ｐi ＝０, １, .... ,Ｐ−１）を順次設定するとともに、フィルタ係数記憶部１２１に記憶されるフィルタ係数集合の中からフィルタ係数を順次選択して、その設定・選択した処理位置およびフィルタ係数を使って、処理フレーム位置選択部１２２１αの選択した処理フレーム位置の近傍に位置するフレームをフィルタリングすることで処理フレームを生成する。
【０１２５】
参照位置・フィルタ係数決定部１２２３αは、処理位置・フィルタ係数選択部１２２２αの生成した処理フレームと、１つ前のフレーム位置において各参照位置・各フィルタ係数の設定・選択に対応付けて生成された参照フレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて（累積予測誤差算出機能）、それらの中の最小値を特定することで（最小累積予測誤差特定機能）、先頭のフレーム位置からの動き補償予測誤差電力の総和を最小化するつながりを持つ参照フレームを特定して、その特定した参照フレームの生成に用いられた参照位置およびフィルタ係数を、処理位置・フィルタ係数選択部１２２２αの設定・選択した処理位置およびフィルタ係数にとっての最適な参照位置およびフィルタ係数（参照フィルタ係数）として決定する。
【０１２６】
全フレーム位置終了判定部１２２４αは、最終のフレーム位置までの全フレーム位置について処理を行ったのか否かを判定して、全フレーム位置について処理を行っていないことを判定するときには、処理フレーム位置選択部１２２１αに対して次のフレーム位置を選択するように指示し、全フレーム位置について処理を行ったことを判定するときには、累積予測誤差最小化最終位置・フィルタ係数検出部１２２５αに対して処理の実行を指示する。
【０１２７】
累積予測誤差最小化最終位置・フィルタ係数検出部１２２５αは、最終のフレーム位置において算出された動き補償予測誤差電力の総和（参照位置・フィルタ係数決定部１２２３αが算出したもの）について、それらの中の最小値を持つフレームを検出することで、先頭のフレーム位置からの動き補償予測誤差電力の総和を最小化する最終フレームを特定して、その特定した最終フレームの生成に用いられた最終位置およびフィルタ係数を最終のフレーム位置における最適な最終位置およびフィルタ係数（最終フィルタ係数）として検出する。
【０１２８】
決定参照位置・フィルタ係数追跡部１２２６αは、累積予測誤差最小化最終位置・フィルタ係数検出部１２２５αの検出した最終位置および最終フィルタ係数を起点として、参照位置・フィルタ係数決定部１２２３αの決定した参照位置および参照フィルタ係数を辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについての最適な参照位置および参照フィルタ係数を抽出する。
【０１２９】
フィルタリング実行部１２２７αは、累積予測誤差最小化最終位置・フィルタ係数検出部１２２５αの検出した最終位置および最終フィルタ係数と、決定参照位置・フィルタ係数追跡部１２２６αの抽出した参照位置および参照フィルタ係数とを用いてフィルタリング処理を実行することで高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行する。
【０１３０】
〔２−２〕ダウンサンプリング実行部１２２の実行する処理
下記に、このように構成されるダウンサンプリング実行部１２２の実行するフレームレートダウンサンプリング処理の流れを示す。
【０１３１】
１．撮影された映像信号（フレームレート変換処理の対象となる高フレームレート映像      信号）、そのフレーム数Ｊ、そのフレームレート（フレーム間隔δt を算出するた      めに用いる）を読み込む
２．ダウンサンプリング比Ｍを読み込む
３．ｉ＝１, .... ,Ｊ／Ｍ−１について以下の処理を行う
４．  Ｗi ＝Ψ0 , .... ,ΨN-1 について以下の処理を行う
５．    ｐi ＝０, .... ,Ｐ−１について以下の処理を行う
６．      Ｗi-1 ＝Ψ0 , .... ,ΨN-1 について以下の処理を行う
７．        ｐi-1 ＝０, .... ,Ｐ−１について以下の処理を行う
８．          参照フレームを＾ｆ（ｘ−ｄi 〔ｋ〕, （ｉ−１）Ｍδt , Ｗi-1 , ｐ                i-1 ）とする場合の＾ｆ（ｘ, ｉＭδt , Ｗi , ｐi ）に対する動き補                償予測誤差電力（式（１０))を最小化する動きベクトルを求める。動き                ベクトルの求め方は外部から与えられる。例えば、探索範囲内の候補を                しらみつぶしにあたる全探索法を用いる。求めた動きベクトルを用いた                場合の動き補償予測誤差電力をσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕                に格納する
９．          σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）の                値を算出する
（ただし、ｉ＝１の場合には、σ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕の                    値を算出する）
10．    σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）（Ｗi-1           ＝Ψ0 , .... ,ΨN-1 , ｐi-1 ＝０, .... ,Ｐ−１）の中での最小値をＳi （          Ｗi , ｐi ）に格納する
（ただし、ｉ＝１の場合には、σ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕（Ｗ0 ＝              Ψ0 , .... ,ΨN-1 , ｐ0 ＝０, .... ,Ｐ−１）の中での最小値をＳ1 （              Ｗ1 , ｐ1 ）に格納する）
11．    Ｓi （Ｗi , ｐi ）を与えるＷi-1 , ｐi-1 を＾Ｗi-1 （Ｗi , ｐi ）, ＾ｐ          i-1 （Ｗi , ｐi ）に格納する
12．ＳJ/M-1 （ＷJ/M-1 , ｐJ/M-1 ）を最小化するＷJ/M-1 , ｐJ/M-1 をＷ* J/M-1 ,       ｐ* J/M-1 に格納する
13．ｉ＝Ｊ／Ｍ−２, .... ,１について以下の処理を行う
14．  Ｗ* i-1 ＝＾Ｗi-1 （Ｗi , ｐi ）を読み出す
15．  ｐ* i-1 ＝＾ｐi-1 （Ｗi , ｐi ）を読み出す
16．ダウンサンプリング後の第ｉフレームとして、＾ｆ（ｘ, ｉＭδt , Ｗ* i , ｐ*  i ）（ｘ＝０, .... ,Ｘ−１）を格納する。
【０１３２】
このようにして、ダウンサンプリング実行部１２２は、まず最初に、予め用意した各フィルタ係数および各位置補正用パラメータ値のそれぞれを使って、等間隔のダウンサンプリングにより規定されるフレーム位置の近傍に位置するフレームをフィルタリングすることでフレームを生成して、図５に示すように、その生成したフレームのそれぞれについて、１つ前のフレーム位置において各フィルタ係数および各位置補正用パラメータ値の選択に対応付けて同様に生成したフレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて、それらの中の最小値を特定することで、１つ前のフレーム位置における最適なフィルタ係数および位置補正用パラメータ値を求めるという処理を、最終のフレーム位置まで繰り返して実行し、
続いて、最終のフレーム位置において算出した動き補償予測誤差電力の総和について、それらの中の最小値を持つフレームを検出することで、最終のフレーム位置における最適なフィルタ係数および位置補正用パラメータ値を検出して、その検出したフィルタ係数および位置補正用パラメータ値を起点として先に特定したフィルタ係数および位置補正用パラメータ値を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数および位置補正用パラメータ値を抽出し、
最後に、それらの抽出した最適なフィルタ係数および位置補正用パラメータ値を用いて各フレーム位置においてフィルタリングを実行することで、高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行するのである。
【０１３３】
ここで、ダウンサンプリング実行部１２２は、低フレームレート映像信号の符号化処理に合わせて、１つ前のフレーム位置（補正位置を含む）との間ではなくて、それよりも前の規定数前のフレーム位置（補正位置を含む）との間で動き補償予測誤差電力を算出するようにしてもよい。
【０１３４】
この場合には、フィルタ係数の特定処理のためのパスが複数となって、先頭のフレーム位置およびそれに続く規定数のフレーム位置を起点として繰り返しの実行を開始して、最終のフレーム位置よりも規定数前のフレーム位置およびそれに続く最終のフレーム位置までのフレーム位置について、その繰り返しの実行を行うことになる。
【０１３５】
そして、その繰り返しの実行を終えたフレーム位置において生成される複数フレームの中から、動き補償予測誤差電力の総和の最小値を持つフレームを検出することで、その総和の最小値を持つフレームの生成に用いられるフィルタ係数を検出して、その検出したフィルタ係数を起点として先に特定したフィルタ係数を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数を抽出することになる。
【実施例】
【０１３６】
次に、実施例に従って本発明を詳細に説明する。
【０１３７】
〔１〕第１の実施例
図１０〜図１２に、図８のように構成されるダウンサンプリング実行部１２２の実行するフレームレートダウンサンプリング処理のフローチャートの一例を図示する。
【０１３８】
次に、これらのフローチャートに従って、図８のように構成されるダウンサンプリング実行部１２２が実行することになるフレームレートのダウンサンプリング処理について詳細に説明する。
【０１３９】
〔１−１〕全体処理
ダウンサンプリング実行部１２２は、フレームレートダウンサンプリング処理の実行要求があると、図１０のフローチャートに示すように、まず最初に、ステップＳ１０１で、フレームレート変換処理の対象となる高フレームレート映像信号と、そのフレーム数Ｊと、そのフレーム間隔δt と、ダウンサンプリング比Ｍとを読み込むとともに、フィルタ係数記憶部１２１に記憶されるフィルタ係数の集合Ψn （ｎ＝０〜Ｎ−１）を読み込む。
【０１４０】
続いて、ステップＳ１０２で、ｉ＝１およびＷ1 （Ｗ1 ：ｉ＝１のフレーム位置で用いるフィルタ係数）の指定するフレームと、ｉ＝０およびＷ0 （Ｗ0 ：ｉ＝０のフレーム位置で用いるフィルタ係数）の指定するフレームとの間で、前述のＳ1 （Ｗ1 ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 ）を与えるＷ0 を＾Ｗ0 （Ｗ1 ）として作業用メモリ１２３に格納する。
【０１４１】
ここで、このステップＳ１０２の処理の詳細については、図１１のフローチャートで後述する。
【０１４２】
続いて、ステップＳ１０３で、２≦ｉ≦Ｊ／Ｍ−１について、ｉおよびＷi （Ｗi ：フレーム位置ｉで用いるフィルタ係数）の指定するフレームと、ｉ−１およびＷi-1 （Ｗi-1 ：フレーム位置ｉ−１で用いるフィルタ係数）の指定するフレームとの間で前述のＳi （Ｗi ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として作業用メモリ１２３に格納する。
【０１４３】
ここで、このステップＳ１０３の処理の詳細については、図１２のフローチャートで後述する。
【０１４４】
続いて、ステップＳ１０４で、ＳJ/M-1 （ＷJ/M-1 ）を最小化するＷJ/M-1 をＷ* J/M-1 として作業用メモリ１２３に格納する。すなわち、最終のフレーム位置Ｊ／Ｍ−１で、ＳJ/M-1 （ＷJ/M-1 ）を最小化するフィルタ係数ＷJ/M-1 を求めて、それを最終のフレーム位置Ｊ／Ｍ−１で用いる最適なフィルタ係数Ｗ* J/M-1 として作業用メモリ１２３に格納するのである。
【０１４５】
続いて、ステップＳ１０５で、変数ｉにＪ／Ｍ−２をセットする。
【０１４６】
続いて、ステップＳ１０６で、Ｗ* J/M-1 を起点として、Ｗ* i-1 ＝＾Ｗi-1 （Ｗi ）に従ってＷ* i-1 を決定して作業用メモリ１２３に格納する。
【０１４７】
すなわち、図３に示すように、＾Ｗi-1 （Ｗi ）はそのＷi にとって最小値を与えるＷi-1 であるので、それを使って、Ｗ* i-1 ＝＾Ｗi-1 （Ｗi ）に従って、フレーム位置ｉ−１で用いる最適なフィルタ係数Ｗ* i-1 を決定して作業用メモリ１２３に格納するのである。
【０１４８】
続いて、ステップＳ１０７で、変数ｉの値が０に到達したのか否かを判断して、０に到達していないことを判断するときには、ステップＳ１０８に進んで、変数ｉの値を１つディクリメントしてから、ステップＳ１０６の処理に戻り、０に到達したことを判断するときには、ステップＳ１０９の処理に進む。
【０１４９】
続いて、ステップＳ１０９で、０≦ｉ≦Ｊ／Ｍ−１を処理対象として、ダウンサンプリング後の第ｉフレームとして、＾ｆ（ｘ, ｉＭδt , Ｗ* i ）（ｘ＝０, .... ,Ｘ−１）を生成して低フレームレート映像ファイル１１に格納することで、ダウンサンプリング後の低フレームレート映像信号を生成して、処理を終了する。
【０１５０】
〔１−２〕ステップＳ１０２の処理の詳細
次に、図１１のフローチャートに従って、図１０のフローチャートのステップＳ１０２で実行する処理の詳細について説明する。
【０１５１】
ダウンサンプリング実行部１２２は、ステップＳ１０２の処理に入ると、図１１のフローチャートに示すように、まず最初に、ステップＳ２０１で、フレーム位置ｉを示す変数ｉに１をセットする。なお、図１１のフローチャートにおいては、ｉの値は１に固定されている。
【０１５２】
続いて、ステップＳ２０２で、フレーム位置ｉで用いるフィルタ係数Ｗi の番号を示す変数ｕに０をセットし、続くステップＳ２０３で、フレーム位置ｉで用いるフィルタ係数Ｗi としてΨu をセットする。
【０１５３】
続いて、ステップＳ２０４で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 の番号を示す変数ｖに０をセットし、続くステップＳ２０５で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 としてΨv をセットする。
【０１５４】
続いて、ステップＳ２０６で、ｉおよびＷi の指定するフレーム（フレーム位置ｉで、フィルタ係数Ｗi を使ってフィルタリングすることで生成されるフレーム）と、ｉ−１およびＷi-1 の指定するフレーム（フレーム位置ｉ−１で、フィルタ係数Ｗi-1 を使ってフィルタリングすることで生成されるフレーム）との間で、動き補償予測誤差電力の最小値σi 2 〔Ｗi , Ｗi-1 〕を算出して、それを作業用メモリ１２３に格納する。
【０１５５】
すなわち、ｉ＝１であるので、σ1 2 〔Ｗ1 , Ｗ0 〕を算出して、それを作業用メモリ１２３に格納するのである。
【０１５６】
続いて、ステップＳ２０７で、変数ｖの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ２０８に進んで、変数ｖの値を１つインクリメントしてから、ステップＳ２０５の処理に戻る。
【０１５７】
このようにして、ｉ＝１の場合において、変数ｖの値を０からＮ−１まで１つずつインクリメントしながらステップＳ２０６の処理を実行することで、ｉ＝１およびＷ1 （ｕの値の指すフィルタ係数）の指定するフレームと、ｉ＝０およびＷ0 （Ｗ0 ＝Ψ0 , .... ,ΨN-1 ）の指定するフレームとの間で動き補償予測誤差電力の最小値σ1 2 〔Ｗ1 , Ｗ0 〕を算出して、それらを作業用メモリ１２３に格納するのである。
【０１５８】
一方、ステップＳ２０７で、変数ｖの値がＮ−１に到達したことを判断するときには、ステップＳ２０９に進んで、作業用メモリ１２３に格納したσi 2 〔Ｗi , Ｗi-1 〕（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）の中の最小値Ｓi （Ｗi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として作業用メモリ１２３に格納する。
【０１５９】
すなわち、ｉ＝１の場合において、あるフィルタ係数Ｗ1 について、ステップＳ２０６の処理を繰り返し実行することで求めたσ1 2 〔Ｗ1 , Ｗ0 〕（Ｗ0 ＝Ψ0 , .... ,ΨN-1 ）の中の最小値Ｓ1 （Ｗ1 ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 ）を与えるＷ0 を＾Ｗ0 （Ｗ1 ）として作業用メモリ１２３に格納するのである。
【０１６０】
続いて、ステップＳ２１０で、変数ｕの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ２１１に進んで、変数ｕの値を１つインクリメントしてから、ステップＳ２０３の処理に戻る。
【０１６１】
このようにして、ｉ＝１の場合において、変数ｕの値を０からＮ−１まで１つずつインクリメントしながらステップＳ２０６／ステップＳ２０９の処理を実行することで、Ｗ1 の値Ψ0 , .... ,ΨN-1 のそれぞれについて、σ1 2 〔Ｗ1 , Ｗ0 〕（Ｗ0 ＝Ψ0 , .... ,ΨN-1 ）を求めて、その中の最小値Ｓ1 （Ｗ1 ）を特定して作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 ）を与えるＷ0 を＾Ｗ0 （Ｗ1 ）として作業用メモリ１２３に格納するのである。
【０１６２】
そして、ステップＳ２１０で、変数ｕの値がＮ−１に到達したことを判断するときには、図１０のフローチャートのステップＳ１０２の処理を終了する。
【０１６３】
このようにして、ダウンサンプリング実行部１２２は、図１０のフローチャートのステップＳ１０２の処理に入ると、図１１のフローチャートを実行することで、ｉ＝１およびＷ1 の指定するフレームとｉ＝０およびＷ0 の指定するフレームとの間でＳ1 （Ｗ1 ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 ）を与えるＷ0 を＾Ｗ0 （Ｗ1 ）として作業用メモリ１２３に格納するように処理するのである。
【０１６４】
〔１−３〕ステップＳ１０３の処理の詳細
次に、図１２のフローチャートに従って、図１０のフローチャートのステップＳ１０３で実行する処理の詳細について説明する。
【０１６５】
ダウンサンプリング実行部１２２は、ステップＳ１０３の処理に入ると、図１２のフローチャートに示すように、まず最初に、ステップＳ３０１で、フレーム位置ｉを示す変数ｉに２をセットする。
【０１６６】
続いて、ステップＳ３０２で、フレーム位置ｉで用いるフィルタ係数Ｗi の番号を示す変数ｕに０をセットし、続くステップＳ３０３で、フレーム位置ｉで用いるフィルタ係数Ｗi としてΨu をセットする。
【０１６７】
続いて、ステップＳ３０４で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 の番号を示す変数ｖに０をセットし、続くステップＳ３０５で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 としてΨv をセットする。
【０１６８】
続いて、ステップＳ３０６で、ｉおよびＷi の指定するフレーム（フレーム位置ｉで、フィルタ係数Ｗi を使ってフィルタリングすることで生成されるフレーム）と、ｉ−１およびＷi-1 の指定するフレーム（フレーム位置ｉ−１で、フィルタ係数Ｗi-1 を使ってフィルタリングすることで生成されるフレーム）との間で、動き補償予測誤差電力の最小値σi 2 〔Ｗi , Ｗi-1 〕を算出する。
【０１６９】
続いて、ステップＳ３０７で、σi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）を算出して作業用メモリ１２３に格納する。このときに用いるＳi-1 （Ｗi-1 ）については、図１１のフローチャートの処理や後述するステップＳ３１０の処理で求められて作業用メモリ１２３に格納されているので、それを用いる。
【０１７０】
続いて、ステップＳ３０８で、変数ｖの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ３０９に進んで、変数ｖの値を１つインクリメントしてから、ステップＳ３０５の処理に戻る。
【０１７１】
このようにして、変数ｖの値を０からＮ−１まで１つずつインクリメントしながらステップＳ３０６／ステップＳ３０７の処理を実行することで、ｉおよび変数Ｗi （ｕの値の指すフィルタ係数）の指定するフレームと、ｉ−１および変数Ｗi-1 （Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）の指定するフレームとの間で動き補償予測誤差電力の最小値σi 2 〔Ｗi , Ｗi-1 〕を算出して、その算出したσi 2 〔Ｗi , Ｗi-1 〕と、そのｉ−１および変数Ｗi-1 （Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）の指定するフレームのそれぞれが持つ先頭のフレーム位置からの動き補償予測誤差電力の総和Ｓi-1 （Ｗi-1 ）との加算値を算出し、それらを作業用メモリ１２３に格納するのである。
【０１７２】
一方、ステップＳ３０８で、変数ｖの値がＮ−１に到達したことを判断するときには、ステップＳ３１０に進んで、作業用メモリ１２３に格納したσi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）の中の最小値Ｓi （Ｗi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として作業用メモリ１２３に格納する。
【０１７３】
すなわち、変数Ｗi のある値について、ステップＳ３０６／ステップＳ３０７の処理を繰り返し実行することで求めたσi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）の中の最小値Ｓi （Ｗi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として作業用メモリ１２３に格納するのである。
【０１７４】
続いて、ステップＳ３１１で、変数ｕの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ３１２に進んで、変数ｕの値を１つインクリメントしてから、ステップＳ３０３の処理に戻る。
【０１７５】
このようにして、変数ｕの値を０からＮ−１まで１つずつインクリメントしながらステップＳ３０６／ステップＳ３０７／ステップＳ３１０の処理を実行することで、変数Ｗi の値Ψ0 , .... ,ΨN-1 のそれぞれについて、σi 2 〔Ｗi , Ｗi-1 〕＋Ｓi-1 （Ｗi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）を求めて、その中の最小値Ｓi （Ｗi ）を特定して作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として格納するのである。
【０１７６】
一方、ステップＳ３１１で、変数ｕの値がＮ−１に到達したことを判断するときには、ステップＳ３１３に進んで、変数ｉの値がＪ／Ｍ−１に到達したのか否かを判断して、Ｊ／Ｍ−１に到達していないことを判断するときには、ステップＳ３１４に進んで、変数ｉの値を１つインクリメントしてから、次のフレーム位置について処理を行うべく、ステップＳ３０２の処理に戻る。
【０１７７】
そして、ステップＳ３１３で、変数ｉの値がＪ／Ｍ−１に到達したことを判断するときには、図１０のフローチャートのステップＳ１０３の処理を終了する。
【０１７８】
このようにして、ダウンサンプリング実行部１２２は、図１０のフローチャートのステップＳ１０３の処理に入ると、図１２のフローチャートを実行することで、２≦ｉ≦Ｊ／Ｍ−１について、ｉおよびＷi の指定するフレームとｉ−１およびＷi-1 の指定するフレームとの間でＳi （Ｗi ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi ）を与えるＷi-1 を＾Ｗi-1 （Ｗi ）として作業用メモリ１２３に格納するように処理するのである。
【０１７９】
〔１−４〕処理の概要
このように、図８のように構成されるダウンサンプリング実行部１２２は、まず最初に、予め用意した各フィルタ係数のそれぞれを使って、等間隔のダウンサンプリングにより規定されるフレーム位置の近傍に位置するフレームをフィルタリングすることでフレームを生成して、図３に示すように、その生成したフレームのそれぞれについて、１つ前のフレーム位置において各フィルタ係数の選択に対応付けて同様に生成したフレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて、それらの中の最小値を特定することで、１つ前のフレーム位置における最適なフィルタ係数を求めるという処理を、最終のフレーム位置まで繰り返して実行する。
【０１８０】
続いて、最終のフレーム位置において算出した動き補償予測誤差電力の総和について、それらの中の最小値を持つフレームを検出することで、最終のフレーム位置における最適なフィルタ係数を検出して、その検出したフィルタ係数を起点として先に特定したフィルタ係数を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数を抽出する。
【０１８１】
そして、最後に、それらの抽出した最適なフィルタ係数を用いて各フレーム位置においてフィルタリングを実行することで、高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行する。
【０１８２】
〔２〕第２の実施例
図１３〜図１５に、図９のように構成されるダウンサンプリング実行部１２２の実行するフレームレートダウンサンプリング処理のフローチャートの一例を図示する。
【０１８３】
次に、これらのフローチャートに従って、図９のように構成されるダウンサンプリング実行部１２２が実行することになるフレームレートのダウンサンプリング処理について詳細に説明する。
【０１８４】
〔２−１〕全体処理
ダウンサンプリング実行部１２２は、フレームレートダウンサンプリング処理の実行要求があると、図１３のフローチャートに示すように、まず最初に、ステップＳ４０１で、フレームレート変換処理の対象となる高フレームレート映像信号と、そのフレーム数Ｊと、そのフレーム間隔δt と、ダウンサンプリング比Ｍとを読み込むとともに、フィルタ係数記憶部１２１に記憶されるフィルタ係数の集合Ψn （ｎ＝０〜Ｎ−１）を読み込む。
【０１８５】
続いて、ステップＳ４０２で、ｉ＝１、Ｗ1 およびｐ1 （Ｗ1 ：ｉ＝１のフレーム位置で用いるフィルタ係数、ｐ1 ：ｉ＝１のフレーム位置を補正するパラメータ）の指定するフレームと、ｉ＝０、Ｗ0 およびｐ0 （Ｗ0 ：ｉ＝０のフレーム位置で用いるフィルタ係数、ｐ0 ：ｉ＝０のフレーム位置を補正するパラメータ）の指定するフレームとの間で、前述のＳ1 （Ｗ1 , ｐ1 ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 , ｐ1 ）を与えるＷ0 、ｐ0 を、それぞれ＾Ｗ0 （Ｗ1 , ｐ1 ）、＾ｐ0 （Ｗ1 , ｐ1 ）として作業用メモリ１２３に格納する。
【０１８６】
ここで、このステップＳ４０２の処理の詳細については、図１４のフローチャートで後述する。
【０１８７】
続いて、ステップＳ４０３で、２≦ｉ≦Ｊ／Ｍ−１について、ｉ、Ｗi およびｐi （Ｗi ：フレーム位置ｉで用いるフィルタ係数、ｐi ：フレーム位置ｉを補正するパラメータ）の指定するフレームと、ｉ−１、Ｗi-1 およびｐi-1 （Ｗi-1 ：フレーム位置ｉ−１で用いるフィルタ係数、ｐi-1 ：フレーム位置ｉ−１を補正するパラメータ）の指定するフレームとの間で、前述のＳi （Ｗi , ｐi ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納する。
【０１８８】
ここで、このステップＳ４０３の処理の詳細については、図１５のフローチャートで後述する。
【０１８９】
続いて、ステップＳ４０４で、ＳJ/M-1 （ＷJ/M-1 , ｐJ/M-1 ）を最小化するＷJ/M-1 、ｐJ/M-1 を、それぞれＷ* J/M-1 、ｐ* J/M-1 として作業用メモリ１２３に格納する。すなわち、最終のフレーム位置Ｊ／Ｍ−１で、ＳJ/M-1 （ＷJ/M-1 , ｐJ/M-1 ）を最小化するフィルタ係数ＷJ/M-1 および位置補正用パラメータｐJ/M-1 を求めて、それを最終のフレーム位置Ｊ／Ｍ−１で用いる最適なフィルタ係数Ｗ* J/M-1 および位置補正用パラメータｐ* J/M-1 として作業用メモリ１２３に格納するのである。
【０１９０】
続いて、ステップＳ４０５で、変数ｉにＪ／Ｍ−２をセットする。
【０１９１】
続いて、ステップＳ４０６で、Ｗ* J/M-1 およびｐ* J/M-1 を起点として、Ｗ* i-1 ＝＾Ｗi-1 （Ｗi , ｐi ）に従ってＷ* i-1 を決定して作業用メモリ１２３に格納するとともに、ｐ* i-1 ＝＾ｐi-1 （Ｗi , ｐi ）に従ってｐ* i-1 を決定して作業用メモリ１２３に格納する。
【０１９２】
すなわち、図５に示すように、＾Ｗi-1 （Ｗi , ｐi ）はそのＷi にとって最小値を与えるＷi-1 であるので、それを使って、Ｗ* i-1 ＝＾Ｗi-1 （Ｗi , ｐi ）に従って、フレーム位置ｉ−１で用いる最適なフィルタ係数Ｗ* i-1 を決定して作業用メモリ１２３に格納し、さらに、＾ｐi-1 （Ｗi , ｐi ）はそのｐi にとって最小値を与えるｐi-1 であるので、それを使って、ｐ* i-1 ＝＾ｐi-1 （Ｗi , ｐi ）に従って、フレーム位置ｉ−１で用いる最適な位置補正用パラメータｐ* i-1 を決定して作業用メモリ１２３に格納するのである。
【０１９３】
続いて、ステップＳ４０７で、変数ｉの値が０に到達したのか否かを判断して、０に到達していないことを判断するときには、ステップＳ４０８に進んで、変数ｉの値を１つディクリメントしてから、ステップＳ４０６の処理に戻り、０に到達したことを判断するときには、ステップＳ４０９の処理に進む。
【０１９４】
続いて、ステップＳ４０９で、０≦ｉ≦Ｊ／Ｍ−１を処理対象として、ダウンサンプリング後の第ｉフレームとして、＾ｆ（ｘ, ｉＭδt , Ｗ* i , ｐ* i ）（ｘ＝０, .... ,Ｘ−１）を生成して低フレームレート映像ファイル１１に格納することで、ダウンサンプリング後の低フレームレート映像信号を生成して、処理を終了する。
【０１９５】
〔２−２〕ステップＳ４０２の処理の詳細
次に、図１４のフローチャートに従って、図１３のフローチャートのステップＳ４０２で実行する処理の詳細について説明する。
【０１９６】
ダウンサンプリング実行部１２２は、ステップＳ４０２の処理に入ると、図１４のフローチャートに示すように、まず最初に、ステップＳ５０１で、フレーム位置ｉを示す変数ｉに１をセットする。なお、図１４のフローチャートにおいては、ｉの値は１に固定されている。
【０１９７】
続いて、ステップＳ５０２で、フレーム位置ｉで用いるフィルタ係数Ｗi の番号を示す変数ｕに０をセットし、続くステップＳ５０３で、フレーム位置ｉで用いるフィルタ係数Ｗi としてΨu をセットし、続くステップＳ５０４で、フレーム位置ｉで用いる位置補正用パラメータｐi の値として０をセットする。
【０１９８】
続いて、ステップＳ５０５で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 の番号を示す変数ｖに０をセットし、続くステップＳ５０６で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 としてΨv をセットし、続くステップＳ５０７で、フレーム位置ｉ−１で用いる位置補正用パラメータｐi-1 の値として０をセットする。
【０１９９】
続いて、ステップＳ５０８で、ｉ、Ｗi およびｐi の指定するフレーム（ｐi により補正されたフレーム位置ｉで、フィルタ係数Ｗi を使ってフィルタリングすることで生成されるフレーム）と、ｉ−１、Ｗi-1 およびｐi-1 の指定するフレーム（ｐi-1 により補正されたフレーム位置ｉ−１で、フィルタ係数Ｗi-1 を使ってフィルタリングすることで生成されるフレーム）との間で、動き補償予測誤差電力の最小値σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕を算出して、それを作業用メモリ１２３に格納する。
【０２００】
すなわち、ｉ＝１であるので、σ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕を算出して、それを作業用メモリ１２３に格納するのである。
【０２０１】
続いて、ステップＳ５０９で、ｐi-1 の値がＰ−１に到達したのか否かを判断して、Ｐ−１に到達していないことを判断するときには、ステップＳ５１０に進んで、ｐi-1 の値を１つインクリメントしてから、ステップＳ５０８の処理に戻る。
【０２０２】
一方、ステップＳ５０９の判断処理で、ｐi-1 の値がＰ−１に到達したことを判断するときには、ステップＳ５１１に進んで、変数ｖの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ５１２に進んで、変数ｖの値を１つインクリメントしてから、ステップＳ５０６の処理に戻る。
【０２０３】
このようにして、ｉ＝１の場合において、ｐi-1 の値を０からＰ−１まで１つずつインクリメントするとともに、変数ｖの値を０からＮ−１まで１つずつインクリメントしながらステップＳ５０８の処理を実行することで、ｉ＝１、Ｗ1 （あるフィルタ係数）およびｐ1 （ある補正パラメータ）の指定するフレームと、ｉ＝０、Ｗ0 （Ｗ0 ＝Ψ0 , .... ,ΨN-1 ）およびｐ0 （ｐ0 ＝０, .... ,Ｎ−１）の指定するフレームとの間で動き補償予測誤差電力の最小値σ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕を算出して、それらを作業用メモリ１２３に格納するのである。
【０２０４】
一方、ステップＳ５１１で、変数ｖの値がＮ−１に到達したことを判断するときには、ステップＳ５１３に進んで、作業用メモリ１２３に格納したσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 , ｐi-1 ＝０, .... ,Ｎ−１）の中の最小値Ｓi （Ｗi , ｐi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納する。
【０２０５】
すなわち、ｉ＝１の場合において、あるフィルタ係数Ｗ1 およびあるｐ1 について、ステップＳ５０８の処理を繰り返し実行することで求めたσ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕（Ｗ0 ＝Ψ0 , .... ,ΨN-1 , ｐ0 ＝０, .... ,Ｎ−１）の中の最小値Ｓ1 （Ｗ1 , ｐ1 ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 , ｐ1 ）を与えるＷ0 、ｐ0 を、それぞれ＾Ｗ0 （Ｗ1 , ｐ1 ）、＾ｐ0 （Ｗ1 , ｐ1 ）として作業用メモリ１２３に格納するのである。
【０２０６】
続いて、ステップＳ５１４で、ｐi の値がＰ−１に到達したのか否かを判断して、Ｐ−１に到達していないことを判断するときには、ステップＳ５１５に進んで、ｐi の値を１つインクリメントしてから、ステップＳ５０５の処理に戻る。
【０２０７】
一方、ステップＳ５１４の判断処理で、ｐi の値がＰ−１に到達したことを判断するときには、ステップＳ５１６に進んで、変数ｕの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ５１７に進んで、変数ｕの値を１つインクリメントしてから、ステップＳ５０３の処理に戻る。
【０２０８】
このようにして、ｉ＝１の場合において、ｐi の値を０からＰ−１まで１つずつインクリメントするとともに、変数ｕの値を０からＮ−１まで１つずつインクリメントしながらステップＳ５０８／ステップＳ５１３の処理を実行することで、Ｗ1 の値（Ｗ1 ＝Ψ0 , .... ,ΨN-1 ）およびｐi の値（ｐ1 ＝０, .... ,Ｎ−１）のそれぞれについて、σ1 2 〔Ｗ1 , Ｗ0 , ｐ1 , ｐ0 〕（Ｗ0 ＝Ψ0 , .... ,ΨN-1 , ｐ0 ＝０, .... ,Ｎ−１）を求めて、その中の最小値Ｓ1 （Ｗ1 , ｐ1 ）を特定して作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 , ｐ1 ）を与えるＷ0 、ｐ0 を、それぞれ＾Ｗ0 （Ｗ1 , ｐ1 ）、＾ｐ0 （Ｗ1 , ｐ1 ）として作業用メモリ１２３に格納するのである。
【０２０９】
そして、ステップＳ５１６で、変数ｕの値がＮ−１に到達したことを判断するときには、ステップＳ４０２の処理を終了する。
【０２１０】
このようにして、ダウンサンプリング実行部１２２は、図１３のフローチャートのステップＳ４０２の処理に入ると、図１４のフローチャートを実行することで、ｉ＝１、Ｗ1 およびｐ1 の指定するフレームと、ｉ＝０、Ｗ0 およびｐ0 の指定するフレームとの間で、Ｓ1 （Ｗ1 , ｐ1 ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳ1 （Ｗ1 , ｐ1 ）を与えるＷ0 、ｐ0 を、それぞれ＾Ｗ0 （Ｗ1 , ｐ1 ）、＾ｐ0 （ｐ1 , ｐ1 ）として作業用メモリ１２３に格納するように処理するのである。
【０２１１】
〔２−３〕ステップＳ４０３の処理の詳細
次に、図１５のフローチャートに従って、図１３のフローチャートのステップＳ４０３で実行する処理の詳細について説明する。
【０２１２】
ダウンサンプリング実行部１２２は、ステップＳ４０３の処理に入ると、図１５のフローチャートに示すように、まず最初に、ステップＳ６０１で、フレーム位置ｉを示す変数ｉに２をセットする。
【０２１３】
続いて、ステップＳ６０２で、フレーム位置ｉで用いるフィルタ係数Ｗi の番号を示す変数ｕに０をセットし、続くステップＳ６０３で、フレーム位置ｉで用いるフィルタ係数Ｗi としてΨu をセットし、続くステップＳ６０４で、フレーム位置ｉで用いる位置補正用パラメータｐi の値として０をセットする。
【０２１４】
続いて、ステップＳ６０５で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 の番号を示す変数ｖに０をセットし、続くステップＳ６０６で、フレーム位置ｉ−１で用いるフィルタ係数Ｗi-1 としてΨv をセットし、続くステップＳ６０７で、フレーム位置ｉ−１で用いる位置補正用パラメータｐi-1 の値として０をセットする。
【０２１５】
続いて、ステップＳ６０８で、ｉ、Ｗi およびｐi の指定するフレーム（ｐi により補正されたフレーム位置ｉで、フィルタ係数Ｗi を使ってフィルタリングすることで生成されるフレーム）と、ｉ−１、Ｗi-1 およびｐi-1 の指定するフレーム（ｐi-1 により補正されたフレーム位置ｉ−１で、フィルタ係数Ｗi-1 を使ってフィルタリングすることで生成されるフレーム）との間で、動き補償予測誤差電力の最小値σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕を算出する。
【０２１６】
続いて、ステップＳ６０９で、σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）を算出して作業用メモリ１２３に格納する。このときに用いるＳi-1 （Ｗi-1 , ｐi-1 ）については、図１４のフローチャートの処理や後述するステップＳ６１４の処理で求められて作業用メモリ１２３に格納されているので、それを用いる。
【０２１７】
続いて、ステップＳ６１０で、ｐi-1 の値がＰ−１に到達したのか否かを判断して、Ｐ−１に到達していないことを判断するときには、ステップＳ６１１に進んで、ｐi-1 の値を１つインクリメントしてから、ステップＳ６０８の処理に戻る。
【０２１８】
一方、ステップＳ６１０の判断処理で、ｐi-1 の値がＰ−１に到達したことを判断するときには、ステップＳ６１２に進んで、変数ｖの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ６１３に進んで、変数ｖの値を１つインクリメントしてから、ステップＳ６０６の処理に戻る。
【０２１９】
このようにして、ｐi-1 の値を０からＰ−１まで１つずつインクリメントするとともに、変数ｖの値を０からＮ−１まで１つずつインクリメントしながらステップＳ６０８／ステップＳ６０９の処理を実行することで、ｉ、Ｗi （あるフィルタ係数）およびｐi （ある補正パラメータ）の指定するフレームと、ｉ−１、Ｗi-1 （Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）およびｐi-1 （ｐi-1 ＝０, .... ,Ｎ−１）の指定するフレームとの間で動き補償予測誤差電力の最小値σ1 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕を算出して、その算出したσ1 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕と、そのｉ−１、Ｗi-1 （Ｗi-1 ＝Ψ0 , .... ,ΨN-1 ）およびｐi-1 （ｐi-1 ＝０, .... ,Ｎ−１）の指定するフレームのそれぞれが持つ先頭のフレーム位置からの動き補償予測誤差電力の総和Ｓi-1 （Ｗi-1 , ｐi-1 ）との加算値を算出し、それを作業用メモリ１２３に格納するのである。
【０２２０】
一方、ステップＳ６１２で、変数ｖの値がＮ−１に到達したことを判断するときには、ステップＳ６１４に進んで、作業用メモリ１２３に格納したσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 , ｐi-1 ＝０, .... ,Ｎ−１）の中の最小値Ｓi （Ｗi , ｐi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納する。
【０２２１】
すなわち、あるフィルタ係数Ｗi およびあるｐi について、ステップＳ６０８／ステップＳ６０９の処理を繰り返し実行することで求めたσi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 , ｐi-1 ＝０, .... ,Ｎ−１）の中の最小値Ｓi （Ｗi , ｐi ）を特定して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納するのである。
【０２２２】
続いて、ステップＳ６１５で、ｐi の値がＰ−１に到達したのか否かを判断して、Ｐ−１に到達していないことを判断するときには、ステップＳ６１６に進んで、ｐi の値を１つインクリメントしてから、ステップＳ６０５の処理に戻る。
【０２２３】
一方、ステップＳ６１５の判断処理で、ｐi の値がＰ−１に到達したことを判断するときには、ステップＳ６１７に進んで、変数ｕの値がＮ−１に到達したのか否かを判断して、Ｎ−１に到達していないことを判断するときには、ステップＳ６１８に進んで、変数ｕの値を１つインクリメントしてから、ステップＳ６０３の処理に戻る。
【０２２４】
このようにして、ｐi の値を０からＰ−１まで１つずつインクリメントするとともに、変数ｕの値を０からＮ−１まで１つずつインクリメントしながらステップＳ６０８／ステップＳ６０９／ステップＳ６１４の処理を実行することで、Ｗi の値（Ｗi ＝Ψ0 , .... ,ΨN-1 ）およびｐi の値（ｐi ＝０, .... ,Ｎ−１）のそれぞれについて、σi 2 〔Ｗi , Ｗi-1 , ｐi , ｐi-1 〕＋Ｓi-1 （Ｗi-1 , ｐi-1 ）（Ｗi-1 ＝Ψ0 , .... ,ΨN-1 , ｐi-1 ＝０, .... ,Ｎ−１）を求めて、その中の最小値Ｓi （Ｗi , ｐi ）を特定して作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納するのである。
【０２２５】
一方、ステップＳ６１７で、変数ｕの値がＮ−１に到達したことを判断するときには、ステップＳ６１８に進んで、変数ｉの値がＪ／Ｍ−１に到達したのか否かを判断して、Ｊ／Ｍ−１に到達していないことを判断するときには、ステップＳ６１９に進んで、変数ｉの値を１つインクリメントしてから、次のフレーム位置について処理を行うべく、ステップＳ６０２の処理に戻る。
【０２２６】
そして、ステップＳ６１８で、変数ｉの値がＪ／Ｍ−１に到達したことを判断するときには、図１３のフローチャートのステップＳ４０３の処理を終了する。
【０２２７】
このようにして、ダウンサンプリング実行部１２２は、図１３のフローチャートのステップＳ４０３の処理に入ると、図１５のフローチャートを実行することで、ｉ、Ｗi およびｐi の指定するフレームと、ｉ−１、Ｗi-1 およびｐi-1 の指定するフレームとの間で、Ｓi （Ｗi , ｐi ）を算出して、それを作業用メモリ１２３に格納するとともに、そのＳi （Ｗi , ｐi ）を与えるＷi-1 、ｐi-1 を、それぞれ＾Ｗi-1 （Ｗi , ｐi ）、＾ｐi-1 （Ｗi , ｐi ）として作業用メモリ１２３に格納するように処理するのである。
【０２２８】
〔２−４〕処理の概要
このように、図９のように構成されるダウンサンプリング実行部１２２は、まず最初に、各フィルタ係数および各位置補正用パラメータ値のそれぞれを使って、等間隔のダウンサンプリングにより規定されるフレーム位置の近傍に位置するフレームをフィルタリングすることでフレームを生成して、図５に示すように、その生成したフレームのそれぞれについて、１つ前のフレーム位置において各フィルタ係数および各位置補正用パラメータ値の選択に対応付けて同様に生成したフレームのそれぞれとの間で動き補償予測誤差電力を算出し、その算出した動き補償予測誤差電力とその算出対象となった参照フレームの持つ動き補償予測誤差電力の総和との加算値を求めて、それらの中の最小値を特定することで、１つ前のフレーム位置における最適なフィルタ係数および位置補正用パラメータ値を求めるという処理を、最終のフレーム位置まで繰り返して実行する。
【０２２９】
続いて、最終のフレーム位置において算出した動き補償予測誤差電力の総和について、それらの中の最小値を持つフレームを検出することで、最終のフレーム位置における最適なフィルタ係数および位置補正用パラメータ値を検出して、その検出したフィルタ係数および位置補正用パラメータ値を起点として先に特定したフィルタ係数および位置補正用パラメータ値を先頭のフレーム位置に向けて辿ることで、等間隔のダウンサンプリングにより規定されるフレーム位置のそれぞれについて最適なフィルタ係数および位置補正用パラメータ値を抽出する。
【０２３０】
そして、最後に、それらの抽出した最適なフィルタ係数および位置補正用パラメータ値を用いて各フレーム位置においてフィルタリングを実行することで、高フレームレート映像信号から低フレームレート映像信号へのフレームレート変換処理を実行する。
【０２３１】
〔３〕本発明の有効性を検証するために行った実験について
次に、本発明の有効性を検証するために行った実験について説明する。
【０２３２】
この実験は、フレーム間引きの基準となる高フレームレート映像として、高速度カメラで撮影したＲＧＢカラー映像を用いた。その高フレームレート映像のフレームレートは１０００〔フレーム／秒〕、総フレーム数は４８０〔フレーム〕、解像度は６４０×４８０〔画素〕である。また、映像素材はミニカートの走行シーンである。
【０２３３】
なお、動き補償時のブロックサイズは１６×１６〔画素〕とした。また、フレーム間予測は片方向予測とし、参照フレームは直前フレームとした。また、動き推定アルゴリズムとしてはＳＳＤ最小化に基づく全探索を行った。
【０２３４】
この実験では、ダウンサンプリング比Ｍの値を３２とし、フィルタ係数のタップ長（２Δ＋１）を規定するΔの値を１としたときにおける、予測画像のＰＳＮＲを従来技術である平均値フィルタと比較することで行った。
【０２３５】
図１６に、比較結果を図示する。ここで、カッコ内は平均二乗誤差の値である。平均値フィルタはフィルタ係数を（１／３, １／３, １／３）としたフィルタである。本発明については、Ｎ（フィルタ係数集合に属するフィルタ係数の数）の値として、１６、６４の２通りを設定した。
【０２３６】
この図１６に示す比較結果から分かるように、本発明は、平均値フィルタに対して０．１６〔ｄｂ〕のＰＳＮＲ向上を実現していることが確認できる。これから、本発明の有効性を検証することができた。
【０２３７】
図示実施例に従って本発明を説明したが、本発明はこれに限定されるものではない。例えば、実施例では、１つ前に選択したフレームとの間で動き補償予測誤差電力を算出するようにしているが、選択済みの複数のフレームとの間で動き補償予測誤差電力を算出するようにしてもよい。
【産業上の利用可能性】
【０２３８】
本発明は高フレームレート映像信号から低フレームレート映像信号へフレームレート変換を実行するときに適用できるものであり、本発明を適用することで、高フレームレート映像信号に対してのダウンサンプリングにより得られた所望のフレームレートの映像信号を符号化する場合に、従来のフレーム間引き処理により得られた映像信号よりも符号量を低く抑えることができるようになるとともに、時間方向のエイリアシングに起因する画質劣化を防止することができるようになる。
【符号の説明】
【０２３９】
１        フレームレート変換装置
１０      高フレームレート映像ファイル
１１      低フレームレート映像ファイル
１２      フレームレートダウンサンプリング部
１２０    動き補償予測誤差算出部
１２１    フィルタ係数記憶部
１２２    ダウンサンプリング実行部
１２３    作業用メモリ
１２００  動き推定部
１２２０  入力部
１２２１  処理フレーム位置選択部
１２２２  処理フィルタ係数選択部
１２２３  参照フィルタ係数決定部
１２２４  全フレーム位置終了判定部
１２２５  累積予測誤差最小化最終フィルタ係数検出部
１２２６  決定参照フィルタ係数追跡部
１２２７  フィルタリング実行部
【図１】
2010206430.tif 000017
【図２】
2010206430.tif 000018
【図３】
2010206430.tif 000019
【図４】
2010206430.tif 000020
【図５】
2010206430.tif 000021
【図６】
2010206430.tif 000022
【図７】
2010206430.tif 000023
【図８】
2010206430.tif 000024
【図９】
2010206430.tif 000025
【図１０】
2010206430.tif 000026
【図１１】
2010206430.tif 000027
【図１２】
2010206430.tif 000028
【図１３】
2010206430.tif 000029
【図１４】
2010206430.tif 000030
【図１５】
2010206430.tif 000031
【図１６】
2010206430.tif 000032
【図１７】
2010206430.tif 000033