(57)【要約】【課題】  動き部分を考慮して高解像度の静止画像を生成する。【解決手段】  複数の第１の画像間の位置ずれを補正するための補正量を推定する。推定した補正量に基づいて複数の第１の画像間の位置ずれを補正し、補正した複数の第１の画像を合成して第２の画像を生成する。この際、第２の画像の各画素の中から注目画素を選択し、複数の第１の画像それぞれにおける注目画素に対する複数の最近傍画素を求める。複数の第１の画像のうち、注目画素について合成対象となる画像を複数の最近傍画素に基づいて導き出し、その合成対象画像に基づいて注目画素の画素値を算出する。複数の最近傍画素のうち、複数の第１の画像の中から選択された１つの基準画像に対して動きがあると判定される画素については、その画素を含む第１の画像を注目画素についての合成対象画像から除外する。【選択図】        図１
2005130443.tif 000002
【特許請求の範囲】
【請求項１】
比較的低解像度の複数の第１の画像から比較的高解像度の第２の画像を生成する静止画像生成方法であって、
（ａ）前記複数の第１の画像間の位置ずれを補正するための補正量を推定する工程と、
（ｂ）推定した前記補正量に基づいて前記複数の第１の画像間の位置ずれを補正するとともに、補正した前記複数の第１の画像を合成して前記第２の画像を生成する工程と、を備え、
前記工程（ｂ）は、
（ｂ１）前記第２の画像の各画素の中から注目画素を選択する工程と、
（ｂ２）前記複数の第１の画像それぞれにおける前記注目画素に対する複数の最近傍画素を求める工程と、
（ｂ３）前記複数の第１の画像のうち、前記注目画素について合成対象となる画像を前記複数の最近傍画素に基づいて導き出し、前記合成対象画像に基づいて前記注目画素の画素値を算出する工程と、を備え、
前記工程（ｂ３）では、前記複数の最近傍画素のうち、前記複数の第１の画像の中から選択された１つの基準画像に対して、動きがあると判定される画素については、その画素を含む前記第１の画像を、前記注目画素についての合成対象画像から除外することを特徴とする、静止画像生成方法。
【請求項２】
前記複数の第１の画像は、動画像の中から取得された時系列に並ぶ複数の画像である請求項１記載の静止画像生成方法。
【請求項３】
請求項１または請求項２記載の静止画像生成方法であって、
前記工程（ｂ３）は、
（ｂ３１）前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、前記注目画素に近い順で選択し、選択した画素の前記基準画像に対する動きを判定する工程と、
（ｂ３２）前記複数の最近傍画素のうち、前記注目画素との間の距離が最小となる最短画素を含む前記第１の画像が前記基準画像である場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記工程（ｂ３１）の判定において、前記選択した画素に動きがないと判定された場合には、その判定された画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出し、
前記工程（ｂ３１）の判定において、前記選択した画素のいずれについても動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出する工程と、を含む静止画像生成方法。
【請求項４】
請求項１または請求項２記載の静止画像生成方法であって、
前記工程（ｂ３）は、
（ｂ３１）前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、所定の順に選択し、選択した画素の前記基準画像に対する動きを判定する工程と、
（ｂ３２）前記工程（ｂ３１）の判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記工程（ｂ３１）の判定において、前記選択した画素のいずれについても動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する工程と、を含む静止画像生成方法。
【請求項５】
請求項１または請求項２記載の静止画像生成方法であって、
前記工程（ｂ３）は、
（ｂ３１）前記複数の最近傍画素のうち、前記基準画像を除く特定の前記第１の画像に含まれる画素を選択して、前記基準画像に対する動きを判定する工程と、
（ｂ３２）前記工程（ｂ３１）の判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記工程（ｂ３２）の判定において、前記選択した画素に動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する工程と、を含む静止画像生成方法。
【請求項６】
請求項３ないし請求項５のいずれかに記載の静止画像生成方法であって、
前記工程（ｂ３１）は、
前記選択した画素の輝度値が、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される推定輝度値に対して、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定する工程を含む、静止画像生成方法。
【請求項７】
前記所定の範囲は、前記推定輝度値を中心として設定される一定の範囲である請求項６記載の静止画像生成方法。
【請求項８】
前記一定の範囲は、前記選択した画素を含む前記前記第１の画像の前記基準画像に対する時間差に応じて変化する請求項７記載の静止画像生成方法。
【請求項９】
前記所定の範囲は、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値のうちの最小の輝度値から最大の輝度値までの範囲を含む一定の範囲である請求項６記載の静止画像生成方法。
【請求項１０】
前記所定の範囲は、前記選択した画素の、前記基準画像の中で前記選択した画素を囲む複数の画素に対する位置に依存して変化する範囲である請求項６記載の静止画像生成方法。
【請求項１１】
請求項３ないし請求項５のいずれかに記載の静止画像生成方法であって、
前記工程（ｂ３１）は、
前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される輝度値が、前記選択した画素の輝度値に等しくなる画素の推定位置を求め、求めた前記推定位置と前記選択した画素の位置との間の距離が、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定する工程を含む、静止画像生成方法。
【請求項１２】
前記所定の範囲は、前記位置ずれによって変化しうる前記推定位置の変化量を閾値として設定し、前記推定位置を中心として設定される一定の範囲である請求項１１記載の静止画像生成方法。
【請求項１３】
比較的低解像度の複数の第１の画像から比較的高解像度の第２の画像を生成する静止画像生成装置であって、
前記複数の第１の画像間の位置ずれを補正するための補正量を推定する補正量推定部と、
推定した前記補正量に基づいて前記複数の第１の画像間の位置ずれを補正するとともに、補正した前記複数の第１の画像を合成して前記第２の画像を生成する画像生成部と、を備え、
前記画像生成部は、
前記第２の画像の各画素の中から注目画素を選択し、
前記複数の第１の画像それぞれにおける前記注目画素に対する複数の最近傍画素を求め、
前記複数の第１の画像のうち、前記注目画素について合成対象となる画像を前記複数の最近傍画素に基づいて導き出し、前記合成対象画像に基づいて前記注目画素の画素値を算出し、
前記注目画素を算出する場合において、前記複数の最近傍画素のうち、前記複数の第１の画像の中から選択された１つの基準画像に対して、動きがあると判定される画素については、その画素を含む前記第１の画像を、前記注目画素についての合成対象画像から除外することを特徴とする、静止画像生成装置。
【請求項１４】
前記複数の第１の画像は、動画像の中から取得された時系列に並ぶ複数の画像である請求項１３記載の静止画像生成装置。
【請求項１５】
請求項１３または請求項１４記載の生成画像生成装置であって、
前記画像生成部は、
前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、前記注目画素に近い順で選択し、選択した画素の前記基準画像に対する動きを判定し、
前記複数の最近傍画素のうち、前記注目画素との間の距離が最小となる最短画素を含む前記第１の画像が前記基準画像である場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記動きの判定において、前記選択した画素に動きがないと判定された場合には、その判定された画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出し、
前記動きの判定において、前記選択した画素のいずれについても動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出する、静止画像生成装置。
【請求項１６】
請求項１３または請求項１４記載の静止画像生成装置であって、
前記画像生成部は、
前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、所定の順に選択し、選択した画素の前記基準画像に対する動きを判定し、
前記動きの判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記動きの判定において、前記選択した画素のいずれについても動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する、静止画像生成装置。
【請求項１７】
請求項１３または請求項１４記載の静止画像生成装置であって、
前記画像生成部は、
前記複数の最近傍画素のうち、前記基準画像を除く特定の前記第１の画像に含まれる画素を選択して、前記基準画像に対する動きを判定し、
前記動きの判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、
前記動きの判定において、前記選択した画素に動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する、静止画像生成装置。
【請求項１８】
請求項１５ないし請求項１７のいずれかに記載の静止画像生成装置であって、
前記動きの判定は、
前記選択した画素の輝度値が、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される推定輝度値に対して、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定する、静止画像生成装置。
【請求項１９】
前記所定の範囲は、前記推定輝度値を中心として設定される一定の範囲である請求項１８記載の静止画像生成装置。
【請求項２０】
前記一定の範囲は、前記選択した画素を含む前記前記第１の画像の前記基準画像に対する時間差に応じて変化する請求項１９記載の静止画像生成装置。
【請求項２１】
前記所定の範囲は、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値のうちの最小の輝度値から最大の輝度値までの範囲を含む一定の範囲である請求項１８記載の静止画像生成装置。
【請求項２２】
前記所定の範囲は、前記選択した画素の、前記基準画像の中で前記選択した画素を囲む複数の画素に対する位置に依存して変化する範囲である請求項１８記載の静止画像生成装置。
【請求項２３】
請求項１５ないし請求項１７のいずれかに記載の静止画像生成装置であって、
前記動きの判定は、
前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される輝度値が、前記選択した画素の輝度値に等しくなる画素の推定位置を求め、求めた前記推定位置と前記選択した画素の位置との間の距離が、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定する、静止画像生成装置。
【請求項２４】
前記所定の範囲は、前記位置ずれによって変化しうる前記推定位置の変化量を閾値として設定し、前記推定位置を中心として設定される一定の範囲である請求項２３記載の静止画像生成装置。
【請求項２５】
比較的低解像度の複数の第１の画像から比較的高解像度の第２の画像を生成するためのプログラムであって、
前記複数の第１の画像間の位置ずれを補正するための補正量を推定する第１のサブプログラムと、
推定した前記補正量に基づいて前記複数の第１の画像間の位置ずれを補正するとともに、補正した前記複数の第１の画像を合成して前記第２の画像を生成する第２のサブプログラムと、を備え、
前記第２のサブプログラムは、
前記第２の画像の各画素の中から注目画素を選択する機能と、
前記複数の第１の画像それぞれにおける前記注目画素に対する複数の最近傍画素を求める機能と、
前記複数の第１の画像のうち、前記注目画素について合成対象となる画像を前記複数の最近傍画素に基づいて導き出し、該合成対象画像に基づいて前記注目画素の画素値を算出するとともに、前記複数の最近傍画素のうち、前記複数の第１の画像の中から選択された１つの基準画像に対して、動きがあると判定される画素については、該画素を含む前記第１の画像を、前記注目画素についての合成対象画像から除外する機能と、を含む静止画像生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の低解像度の画像から高解像度の画像を生成する技術に関するものである。
【背景技術】
【０００２】
従来、ディジタルビデオカメラ等（以下、単に「ビデオカメラ」とも呼ぶ。）で撮影された動画像を再生してその１シーンをキャプチャし、キャプチャした１フレームの画像（以下、「フレーム画像」とも呼ぶ。）よりも高解像度の画像を生成することが行われている。ここで、解像度とは、１枚の画像を構成する画素の密度あるいは画素数を意味している。
【０００３】
このような高解像度の画像の生成方法としては、複数の低解像度の画像を重ね合わせて合成することによって生成する方法が考えられている。このように複数の画像を重ね合わせて合成する方法は、単純に１つの画像を解像度変換する方法に比べて高画質化が期待できる。
【０００４】
例えば、特許文献１には、連続する（ｎ＋１）枚のフレーム画像から１枚のフレーム画像を基準フレーム画像として選択し、この基準フレーム画像に対する他のｎ枚のフレーム画像（対象フレーム画像）の動きベクトルをそれぞれ算出し、各動きベクトルに基づいて、（ｎ＋１）枚のフレーム画像を合成して１枚の高解像度な画像を生成する技術が開示されている。
【０００５】
【特許文献１】特開２０００−２４４８５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ここで、動画像におけるフレーム間の画像には、「ずれ」や「動き」が発生している場合がある。ここで、「ずれ」とは、手ぶれによる画像の揺れのように、画像全体を一様に動かして重なるようなフレーム間の変化を意味している。「動き」とは、主に、画像中のある対象物の動き、すなわち、画像中の局所的な変化を意味している。この動きには、例えば、人が動く、車が動く、といったように撮影対象物が動く場合や、カメラが動いたことによって発生する視差により撮影対象物が相対的に動く場合などがある。
【０００７】
従来の技術では、動画像中のフレーム間の動き（上述のずれに相当）に対応することは考慮されているが、動画像中の動きについては考慮されておらず、合成された生成画像において、動きのある部分が多重像となって現れてしまう場合があった。そこで、動画像中に動きがある場合においても、動きのある部分の多重像を発生させずに、低解像度の複数のフレーム画像から高解像度の静止画像を生成したいという要望があった。
【０００８】
なお、上記問題は、動画像中の複数の低解像度の画像を合成する場合だけでなく、時系列に並ぶ複数の低解像度の画像を合成する場合においても同様に発生する問題である。
【０００９】
本発明は、上述の課題を解決するためになされたものであり、複数の低解像度な画像から高解像度の静止画像を生成する場合において、動きがある部分について多重像を発生させることなく、高解像度の静止画像を生成することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述の課題の少なくとも一部を解決するため、本発明では、比較的低解像度の複数の第１の画像から比較的高解像度の第２の画像を生成する際に、以下の処理を行う。まず、前記複数の第１の画像間の位置ずれを補正するための補正量を推定する。その後、推定した前記補正量に基づいて前記複数の第１の画像間の位置ずれを補正するとともに、補正した前記複数の第１の画像を合成して前記第２の画像を生成する。ただし、第２の画像を生成する際には、以下のような処理が行われる。すなわち、まず、前記第２の画像の各画素の中から注目画素を選択する。そして、前記複数の第１の画像それぞれにおける前記注目画素に対する複数の最近傍画素を求める。その後、前記複数の第１の画像のうち、前記注目画素について合成対象となる画像を前記複数の最近傍画素に基づいて導き出し、該合成対象画像に基づいて前記注目画素の画素値を算出する。そして、前記注目画素の画素値を算出する場合において、前記複数の最近傍画素のうち、前記複数の第１の画像の中から選択された１つの基準画像に対して、動きがあると判定される画素については、該画素を含む前記第１の画像を、前記注目画素についての合成対象画像から除外する。
【００１１】
以上のようにすれば、複数の第１の画像の中で動きがある場合においても、動きのある画素を含む第１の画像を第２の画像を生成するための合成の対象から除外することができるので、動きのある部分の多重像を発生させずに、低解像度の複数の第１の画像から高解像度の第２の画像を生成することができる。
【００１２】
なお、前記複数の第１の画像は、動画像の中から取得された時系列に並ぶ複数の画像であることが好ましい。
【００１３】
こうすれば、動画像に含まれる比較的低解像度の複数の第１の画像から比較的高解像度の第２の画像を容易に生成することができる。
【００１４】
なお、第１の画像には、フレーム画像やフィールド画像が含まれる。フレーム画像とは、プログレッシブ方式(ノンインタレース方式と呼ぶ)で表示可能な静止画像を意味しており、フィールド画像とは、インタレース方式において、ノンインタレース方式のフレーム画像に相当する画像を構成する奇数フィールドの静止画像と偶数フィールドの静止画像を意味している。
【００１５】
ここで、前記第２の画像を生成する際の第１の態様として、以下のような手順で各画素の画素値を算出することができる。すなわち、まず、前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、前記注目画素に近い順で選択し、選択した画素の前記基準画像に対する動きを判定するする。そして、前記複数の最近傍画素のうち、前記注目画素との間の距離が最小となる最短画素を含む前記第１の画像が前記基準画像である場合には、前記基準画像に基づいて前記注目画素の画素値を算出する。また、前記動きの判定において、前記選択した画素に動きがないと判定された場合には、その判定された画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出し、前記動きの判定において、前記選択した画素のいずれについても動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出する。
【００１６】
前記第２の画像を生成する際の第１の態様では、複数の最近傍画素のうち、基準画像に含まれない最近傍画素を、注目画素に近い順で選択して、基準画像に対する動きを判定して、いずれかの最近傍画素に動きがあると判定されても、他のいずれかの最近傍画素に動きがないと判定された場合には、その画素を含んでいる第１の画像に基づいて注目画素の画素値を算出することができるので、生成される第２の画像の高画質化も期待できる。
【００１７】
また、前記第２の画像を生成する際の第２の態様として、以下のような手順で各画素の画素値を算出することもできる。すなわち、まず、前記複数の最近傍画素のうち、前記基準画像に含まれない画素を、所定の順に選択し、選択した画素の前記基準画像に対する動きを判定する。そして、前記動きの判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、前記動きの判定において、前記選択した画素のいずれについても動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する。
【００１８】
第２の画像を生成する際の第２の態様では、複数の最近傍画素のうち、基準画像に含まれない画素を所定の順に選択して、基準画像に対する動きを判定して、動きがあると判定された場合には、基準画像に基づいて注目画素の画素値を算出することができるので、第２の画像を生成する際の第１の態様に比べてより動きのある部分の多重像の発生を防止する効果が高い。
【００１９】
さらに、前記第２の画像を生成する際の第３の態様として、以下のような手順で各画素の画素値を算出することもできる。すなわち、まず、前記複数の最近傍画素のうち、前記基準画像を除く特定の前記第１の画像に含まれる画素を選択して、前記基準画像に対する動きを判定する。そして、前記動きの判定において、前記選択した画素に動きがあると判定された場合には、前記基準画像に基づいて前記注目画素の画素値を算出し、前記動きの判定において、前記選択した画素に動きがないと判定された場合には、前記複数の最近傍画素のうち、前記注目画素に最も近い最短画素を含む前記第１の画像に基づいて前記注目画素の画素値を算出する。
【００２０】
前記第２の画像を生成する際の第３の態様では、複数の最近傍画素のうち、基準画像に含まれない画素を順に選択して、基準画像に対する動きを判定して、動きがあると判定された場合には、基準画像に基づいて注目画素の画素値を算出するので、第１の態様に比べてより動きのある部分の多重像の発生を防止する効果が高い。さらに、複数の最近傍画素のうち、基準画像を除く特定の第１の画像に含まれる画素を選択して、基準画像に対する動きを判定しているので、第２の画像を生成する際の第１、第２の態様に比べて動きの判定に要する時間の短縮化を図ることが可能である。
【００２１】
ここで、動きの判定は、前記選択した画素の輝度値が、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される推定輝度値に対して、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定することにより行うこができる。このようにすれば、容易に動きの判定を行うことができる。
【００２２】
なお、前記所定の範囲は、前記推定輝度値を中心として設定される一定の範囲とすればよい。また、前記一定の範囲は、前記選択した画像を含む前記前記第１の画像の前記基準画像に対する時間差に応じて変化するようにしてもよい。この場合、選択した画素に動きがないと判定する範囲を、選択した画素を含む第１の画像の基準画像に対する時間差に応じて変化させることができる。基準画像から時間的に離れた画像ほど一般に動きが大きいと考えられるので、基準画像から時間的に離れた第１の画像に含まれる画素の判定における所定の範囲ほど、その大きさを小さくすることより、生成した第２の画像に対してその動きの影響を小さくすることができる。
【００２３】
また、前記所定の範囲は、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値のうちの最小の輝度値から最大の輝度値までの範囲を含む一定の範囲としてもよい。
【００２４】
さらに、前記所定の範囲は、前記選択した画素の、前記基準画像の中で前記選択した画素を囲む複数の画素に対する位置に依存して変化する範囲としてもよい。
【００２５】
また、動きの判定は、前記基準画像の中で前記選択した画素を囲む複数の画素の輝度値に基づいて生成される輝度値が、前記選択した画素の輝度値に等しくなる画素の推定位置を求め、求めた前記推定位置と前記選択した画素の位置との間の距離が、所定の範囲内にある場合には動きがないと判定し、前記所定の範囲外にある場合には動きがあると判定するようにしてもよい。このようにしても、容易に動きの判定を行うことができる。
【００２６】
なお、この場合の前記所定の範囲は、前記位置ずれによって変化しうる前記推定位置の変化量を閾値として設定し、前記推定位置を中心として設定される一定の範囲とすればよい。
【００２７】
なお、本発明は、以下に示すような種々の態様で実現することが可能である。
（１）画像生成方法、画像処理方法、画像データ生成方法。
（２）画像生成装置、画像処理装置、画像データ生成装置。
（３）上記の装置や方法を実現するためのコンピュータプログラム。
（４）上記の装置や方法を実現するためのコンピュータプログラムを記録した記録媒体。
（５）上記の装置や方法を実現するためのコンピュータプログラムを含み搬送波内で具現化されたデータ信号。
【００２８】
本発明をコンピュータプログラムまたはそのプログラムを記録した記録媒体等として構成する場合には、上記装置の動作を制御するプログラム全体として構成するものとしてもよいし、本発明の機能を果たす部分のみを構成するものとしてもよい。また、記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ／ＲＡＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。
【発明を実施するための最良の形態】
【００２９】
以下では、本発明の実施の形態を実施例に基づいて以下の手順で説明する。
Ａ．静止画像生成装置の構成：
Ｂ．静止画像生成の手順：
Ｃ．補正量推定処理：
Ｃ１．ずれ補正の概要：
Ｃ２．補正量の推定手法：
Ｄ．第１実施例の動き対応合成処理：
Ｄ１．動き非対応合成処理の概要および問題点：
Ｄ２．動き対応合成の手順：
Ｅ．動き判定：
Ｅ１．動き判定手法１：
Ｅ２．動き判定手法２：
Ｅ３．動き判定手法３：
Ｅ４．動き判定手法４：
Ｅ５．動き判定手法５：
Ｆ．第２実施例の動き対応合成処理：
Ｇ．第３実施例の動き対応合成処理：
Ｈ．変形例：
【００３０】
Ａ．静止画像生成装置の構成：
図１は、本発明の一実施例としての静止画像生成装置の概略構成を示す説明図である。この静止画像生成装置は、汎用のパーソナルコンピュータであり、コンピュータ１００に情報を入力する装置としてのキーボード１２０およびマウス１３０と、情報を出力する装置としてのディスプレイ１１０およびプリンタ２０と、を備えている。また、コンピュータ１００に動画像を表す画像データ（以下、「動画像データ」とも呼ぶ。）を入力する装置としてディジタルビデオカメラ３０およびＣＤ−Ｒ／ＲＷドライブ１４０を備えている。なお、動画像データを入力する装置としては、ＣＤ−Ｒ／ＲＷドライブの他ＤＶＤドライブ等の種々の情報記憶媒体からデータを読み出すことが可能な駆動装置を備えることも可能である。
【００３１】
コンピュータ１００は、所定のオペレーティングシステムの下で、静止画像を生成するためのアプリケーションプログラムを実行することにより、静止画像生成装置として機能する。特に、図に示したように、静止画像生成制御部１０２、フレーム画像取得部１０４、補正量推定部１０６、および動き対応合成部１０８として機能する。
【００３２】
静止画像生成制御部１０２は、各部の制御を行い、静止画像生成動作を全体的に制御する。例えば、キーボード１２０やマウス１３０からユーザによって動画像の再生の指示が入力されると、静止画像生成制御部１０２は、ＣＤ−Ｒ／ＲＷドライブ１４０内のＣＤ−ＲＷやビデオカメラ３０、あるいは図示しないハードディスクなどから図示しないメモリ内に動画像データを読み込む。この動画像データには、それぞれ静止画像を表す複数フレームの画像データ（以下、「フレーム画像データ」とも呼ぶ。）が含まれている。各フレームのフレーム画像データの表す静止画像をビデオドライバを介してディスプレイ１１０に順に表示する。これにより、ディスプレイ１１０上で動画像が表示される。また、静止画像生成制御部１０２は、後述するように、フレーム画像取得部１０４、補正量推定部１０６、および動き対応合成部１０８の動作を制御して、低解像度な複数フレームのフレーム画像データから高解像度な静止画像を表す画像データ（以下、「静止画像データ」とも呼ぶ。）を生成する。さらに、静止画像生成制御部１０２は、生成された静止画像データを、プリンタドライバを介してプリンタ２０に印刷させることもできる。
【００３３】
Ｂ．静止画像生成の手順：
図２は、静止画像データを生成する手順を示す説明図である。まず、動画像の再生中に、キーボード１２０やマウス１３０からユーザによってフレーム画像データの取得指示が入力されると、フレーム画像取得部１０４は、動画像データの中から時系列に連続する複数フレームのフレーム画像データを取得する(ステップＳ２)。例えば、本実施例では、取得指示の入力タイミングから時系列に連続する４フレームのフレーム画像データを取得するものとする。フレーム画像取得部１０４によって取得された複数のフレーム画像データは、メモリやハードディスクなどの図示しない記憶装置に記憶される。
【００３４】
なお、フレーム画像データは、ドットマトリクス状の各画素の階調値(以下、「画素値」とも呼ぶ。)を示す階調データ（以下、「画素データ」とも呼ぶ。）で構成されている。画素データは、Ｙ（輝度）、Ｃｂ(ブルーの色差)、Ｃｒ(レッドの色差)からなるＹＣｂＣｒデータや、Ｒ（レッド）、Ｇ（グリーン）、Ｂ（ブルー）からなるＲＧＢデータ等である。
【００３５】
次に、キーボード１２０やマウス１３０からユーザによって静止画像の生成指示が入力されると、静止画像データ生成処理が開始される。
【００３６】
まず、補正量推定部１０６は、取得した４フレームの各フレーム間において発生しているずれ（位置ずれ）を補正するための補正量の推定を実行する（ステップＳ４）。この補正量の推定では、上記４フレームのうち、１フレームを基準フレームとして選択し、その他の３フレームを対象フレームとして選択する。そして、各対象フレームについて、基準フレームに対する位置ずれを補正するための補正量が、それぞれ推定される。なお、本実施例では、ユーザによるフレーム画像データの取得指示の入力タイミングで最初に取得されたフレームを基準フレームとして選択し、その後時系列順に取得される３フレームを対象フレームとして選択することとする。
【００３７】
そして、動き対応合成部１０８は、４フレームのフレーム画像データに、求められた補正量の補正を施して合成し、４フレームのフレーム画像データから静止画像データを生成する(ステップＳ６)。このとき、動き対応合成部１０８は、各フレーム間において「動き」が発生しているか否かを判定し、これに応じて静止画像データの生成を行う。
【００３８】
なお、補正量の推定処理および動き対応合成処理については、さらに後述する。
【００３９】
Ｃ．補正量推定処理：
Ｃ１．ずれ補正の概要：
図３は、基準フレームのフレーム画像と対象フレームのフレーム画像との間の位置ずれについて示す説明図である。また、図４は、基準フレーム画像と対象フレーム画像との間の位置ずれの補正について示す説明図である。
【００４０】
なお、以下の説明では、取得した４フレームの番号（以下、「フレーム番号」とも呼ぶ。）をａ（ａ＝０，１，２，３）とし、フレーム番号ａのフレームをフレームａと呼び、フレームａの画像をフレーム画像Ｆａと呼ぶこととする。例えば、フレーム番号ａが０のフレームはフレーム０と呼び、その画像をフレーム画像Ｆ０と呼ぶ。なお、フレーム０を基準フレームとし、フレーム１〜３を対象フレームとする。また、基準フレームのフレーム画像Ｆ０を基準フレーム画像とも呼び、対象フレームのフレーム画像Ｆ１〜Ｆ３を対象フレーム画像とも呼ぶこととする。
【００４１】
図３および図４では、対象フレーム画像Ｆ１〜Ｆ３のうち、対象フレーム画像Ｆ３の基準フレーム画像Ｆ０に対する位置ずれ及び位置ずれの補正を例に説明する。
【００４２】
画像の位置ずれは、並進（横方向または縦方向）のずれと、回転のずれとの組み合わせで表される。図３では、基準フレーム画像Ｆ０に対する、対象フレーム画像Ｆ３のずれ量を分かり易く示すため、基準フレーム画像Ｆ０の縁と、対象フレーム画像Ｆ３の縁とを重ねて示すとともに、基準フレーム画像Ｆ０上の中心位置に仮想の十字画像Ｘ０を追記し、この十字画像Ｘ０が、対象フレーム画像Ｆ３と同様にずれたとして、対象フレーム画像Ｆ３上に、ずれた結果の画像である十字画像Ｘ３を示すようにしている。更に、このずれ量を、より分かり易く示すために、基準フレーム画像Ｆ０、および十字画像Ｘ０を太い実線で示すとともに、対象フレーム画像Ｆ３、および十字画像Ｘ３を細い破線で示すようにしている。
【００４３】
本実施例では、並進ずれ量として横方向を「ｕｍ」、縦方向を「ｖｍ」と表し、回転ずれ量を「δｍ」と表し、対象フレーム画像Ｆａ（ａ＝１，２，３）についてのずれ量を「ｕｍａ」、「ｖｍａ」、「δｍａ」と表すこととする。例えば、図３に示すように、対象フレーム画像Ｆ３は、基準フレーム画像Ｆ０に対して、並進ずれ、および回転ずれが生じており、そのずれ量は、ｕｍ３、ｖｍ３、δｍ３と表される。
【００４４】
ここで、対象フレーム画像Ｆ１〜Ｆ３を基準フレーム画像Ｆ０と合成するためには、対象フレーム画像Ｆ１〜Ｆ３が基準フレーム画像Ｆ０と一致するように、対象フレーム画像Ｆ１からＦ３の各画素の位置ずれを補正することとなる。このために用いられる並進補正量として横方向を「ｕ」、縦方向を「ｖ」、回転補正量を「δ」と表し、対象フレーム画像Ｆａ（ａ＝１，２，３）についての補正量を「ｕａ」、「ｖａ」、「δａ」と表すこととする。例えば、対象フレーム画像Ｆ３についての補正量は、ｕｍ３、ｖｍ３、δｍ３と表される。
【００４５】
ここで、補正とは、対象フレーム画像Ｆａ（ａ＝１，２，３）の各画素の位置を、横方向にｕａの移動、縦方向にｖａの移動、およびδａの回転を施した位置に移動させることを意味する。従って、対象フレーム画像Ｆａ（ａ＝１，２，３）についての補正量ｕａ、ｖａ、δａは、ｕａ＝−ｕｍａ、ｖａ＝−ｖｍａ、δａ＝−δｍａの関係で表される。例えば、対象フレーム画像Ｆ３についての補正量ｕ３、ｖ３、δ３は、ｕ３＝−ｕｍ３、ｖ３＝−ｖｍ３、δ３＝−δｍ３で表される。
【００４６】
以上のことから、例えば、図４に示すように、補正量ｕ３、ｖ３、δ３を用いて、対象フレーム画像Ｆ３の各画素の位置を補正することにより、対象フレーム画像Ｆ３を基準フレーム画像Ｆ０に一致させることができる。このとき、補正後の対象フレーム画像Ｆ３と、基準フレーム画像Ｆ０と、をディスプレイ１１０で表示させると、図４に示すように、対象フレーム画像Ｆ３は、基準フレーム画像Ｆ０に対して部分一致すると推定される。なお、この補正の結果を分かり易く示すため、図４においても、図３と同じ仮想の十字画像Ｘ０および十字画像Ｘ３を表記しており、図４に示すように、補正の結果として、十字画像Ｘ３は十字画像Ｘ０と一致することとなる。
【００４７】
同様に、対象フレーム画像Ｆ１，Ｆ２についても、補正量ｕ１、ｖ１、δ１、およびｕ２、ｖ２、δ２、の各値を用いて補正が施され、対象フレーム画像Ｆ１，Ｆ２の各画素の位置を置き換えることができる。
【００４８】
なお、上述の「部分一致する」とは、以下のことを意味するものである。すなわち、図４に示すように、例えば、ハッチングを施した領域Ｐ１は、対象フレーム画像Ｆ３にのみ存在する領域の画像であり、基準フレーム画像Ｆ０には、該当する領域の画像は存在しない。このように、上述の補正を行ったとしても、ずれに起因して、基準フレーム画像Ｆ０にのみ、または、対象フレーム画像Ｆ３にのみ存在する領域の画像が生じてしまうため、対象フレーム画像Ｆ３は、基準フレーム画像Ｆ０に対して完全一致することはなく、部分一致することとなる。
【００４９】
ところで、各対象フレーム画像Ｆａ（ａ＝１，２，３）についての補正量ｕａ、ｖａ、δａは、補正量推定部１０６（図１）において、基準フレーム画像Ｆ０の画像データと対象フレーム画像Ｆ１〜Ｆ３の画像データとに基づき、パターンマッチ法や勾配法等による所定の算出式を用いて、推定量として算出される。そして、算出された補正量ｕａ、ｖａ、δａは、並進補正量データと回転補正量データとして、図示しないメモリ内の所定の領域に記憶される。以下では、補正量の推定手法について説明する。
【００５０】
Ｃ２．補正量の推定手法：
図５は、基準フレーム画像に対する対象フレーム画像の補正量について示す説明図である。図は、対象フレーム画像Ｆｔが、基準フレーム画像Ｆｒに対して並進ずれおよび回転ずれを補正して重ね合わせるように配置された状態を示している。対象フレーム画像Ｆｔの中心を原点とし、横方向をｘ２軸、縦方向をｙ２軸とする直交座標（ｘ２、ｙ２）が、基準フレーム画像Ｆｒの中心を原点とし、横方向をｘ１軸、縦方向をｙ１軸とする直交座標（ｘ１、ｙ１）に対してずれており、このときの横方向の並進補正量はｕ、縦方向の並進補正量はｖ、回転補正量は対象フレーム画像Ｆｔの中心を原点としてδであるとする。このとき、対象フレーム画像Ｆｔの座標を基準フレーム画像Ｆｒ上の座標に変換する変換式は、並進補正量（ｕ，ｖ）および回転補正量δを変数として、下式により表される。
【００５１】
x1＝cosδ・（x2＋u）−sinδ・（y2＋ｖ）  ...(1)
y1＝sinδ・（x2＋u）＋cosδ・（y2＋ｖ）  ...(2)
【００５２】
なお、基準フレームと対象フレームとの時間差はごく僅かであるため、δは微小量と考えられる。このとき、COSδ≒１、sinδ≒δであるため、上式を以下のように置き換えることができる。
【００５３】
x1＝（x2＋u）−δ・（y2＋ｖ）  ...(3)
y1＝δ・（x2＋u）＋（y2＋ｖ）  ...(4)
【００５４】
従って、上述したように、対象フレーム画像Ｆｔと基準フレーム画像Ｆｒとを重ね合わせて配置するためには、対象フレーム画像Ｆｔが基準フレーム画像Ｆｒと一致するように、上記式（３），（４）を用いて、対象フレーム画像Ｆｔの各画素の座標データを基準フレーム画像Ｆｒ上の座標データに変換すればよい。
【００５５】
ここで、上記式（３），（４）の変数Ｕ，Ｖ，δは、以下で説明するように、基準フレーム画像Ｆｒと対象フレーム画像Ｆｔとの間の各画素の画素値（画素データ）、例えば輝度の階調値(階調データ)を用いて、１画素よりも細かい単位で画素の位置を推定する勾配法（グラディエント法）に基づいて、最小自乗法により推定することができる。
【００５６】
図６は、勾配法による並進補正量の推定方法を示す説明図である。図６（ａ）には、基準フレーム画像Ｆｒおよび対象フレーム画像Ｆｔの画素および輝度を示した。図６（ａ）において、例えば、（ｘ１ｉ，ｙ１ｉ）は、基準フレーム画像Ｆｒ上の画素の座標を表しており、Ｂ１（ｘ１ｉ，ｙ１ｉ）は、その輝度を表している。ただし、ｉは全画素を区別する番号である。また、図６（ｂ）には、勾配法の原理を示した。
【００５７】
ここでは、対象フレーム画像Ｆｔ上の座標（ｘ２ｉ，ｙ２ｉ）の画素が、基準フレーム画像Ｆｒの座標（ｘ１ｉ〜ｘ１ｉ＋１，ｙ１ｉ〜y１ｉ＋１）の間、すなわち、画素間の座標（ｘ１ｉ＋Δｘ，ｙ１ｉ＋Δｙ）にあるものとして説明する。
【００５８】
図６（ｂ）の左側に示すように、対象フレーム画像Ｆｔにおける座標（ｘ２ｉ，ｙ２ｉ）の画素が、基準フレーム画像Ｆｒの座標（ｘ１ｉ〜ｘ１ｉ＋１，ｙ１ｉ）の間、すなわち、画素間の座標である（ｘ１ｉ＋Δｘ，ｙ１ｉ）にあるものとし、
Px＝B1（x1i＋１，y1i）−B1（x1i，y1i）  ...(5)
とすると、
Px・Δx＝B2（x2i，y2i）−B1（x1i，y1i）  ...(6)
の関係が成り立つはずである。この場合、Ｂ１（ｘ１ｉ，ｙ１ｉ）およびＢ２（ｘ２ｉ，ｙ２ｉ）を単にＢ１，Ｂ２で表すこととして、
｛{Px・Δx−（B2−B1）}２＝０  ...(7)
が成り立つようなΔｘを求めれば、対象フレーム画像Ｆｔの横方向の並進補正量（Δｘ＝ｕ）を求めることができる。実際には、各画素についてΔｘを算出し、全体で平均をとることになる。
【００５９】
同様に、図６（ｂ）の左側に示すように、対象フレーム画像Ｆｔにおける座標（ｘ２ｉ，ｙ２ｉ）の画素が、基準フレーム画像Ｆｒの座標（ｘ１ｉ，ｙ１ｉ〜y１ｉ＋１）の間、すなわち、画素間の座標である（ｘｉ１，ｙ１ｉ＋Δｙ）にあるものとし、
Py＝B1（x1i，y1i＋１）−B1（x1i，y1i）  ...(8)
とすると、
Py・Δy＝B2（x2i，y2i）−B1（x1i，y1i）  ...(9)
の関係が成り立つはずである。従って、Ｂ１（ｘ１ｉ，ｙ１ｉ）およびＢ２（ｘ２ｉ，ｙ２ｉ）を単にＢ１，Ｂ２で表すこととして、
｛{Py・Δy−（B2−B1）}２＝０  ...(10)
が成り立つようなΔｙを求めれば、対象フレーム画像Ｆｔの縦方向の並進補正量(Δｙ＝ｖ)を求めることができる。実際には、各画素についてΔｙを算出し、全体で平均をとることになる。
【００６０】
以上の説明は、ｘ軸方向(横方向)あるいはｙ軸方向（縦方向）のいずれか一方向のみを考慮した場合を説明している。ｘ軸方向およびｙ軸方向の両方向を考慮する場合には、これを拡張して、
Ｓ２＝Σ｛Px・Δx＋Py・Δy−（B2−B1）｝２  ...(11)
を最小にするΔｘ、Δｙを最小自乗法により求めればよい。こうして求められた（Δｘ，Δｙ）が並進補正量（u，v）に相当する。
【００６１】
以上、勾配法により、対象フレーム画像Ｆｔが基準フレーム画像Ｆｒに対して、ｘ軸方向およびｙ軸方向に平行移動させて重ね合わせたとした場合の並進補正量（ｕ，ｖ）を求める手法を説明した。本発明では、さらに、対象フレーム画像Ｆｔを基準フレーム画像Ｆｒに対して、回転移動させて重ね合わせる場合も考慮している。以下、その回転補正量を求める手法について説明する。
【００６２】
図７は、画素の回転補正量を模式的に示す説明図である。基準フレーム画像Ｆｒの座標（ｘ１，ｙ１）の原点Ｏからの距離をｒとし、ｘ１軸からの回転角度をθとすると、ｒ，θは、下式で表される。
ｒ＝（x1２＋y1２）１／２  ...(12)
θ＝tan−１（y1／x1）  ...(13)
【００６３】
ここで、対象フレーム画像Ｆｔの基準フレーム画像Ｆｒに対する並進ずれはなく、回転ずれのみが発生しているものとし、対象フレーム画像Ｆｔにおける座標（ｘ２，ｙ２）の画素が、基準フレーム画像Ｆｒ上の座標（ｘ１,ｙ１）の位置から回転補正量δだけ回転した座標(ｘ１'，ｙ１')にあるとする。この回転補正量δによるｘ１軸方向の移動量Δｘとｙ１軸方向の移動量Δｙは、下式により求められる。
Δx＝x1'−x1≒−ｒ・δ・sinθ＝−δ・y1  ...(14)
Δy＝y1'−y1≒ｒ・δ・cosθ＝δ・x1  ...(15)
【００６４】
そこで、上記式（１１）におけるΔｘ、Δｙは、並進補正量（ｕ，ｖ）だけでなく回転補正量δによる上記式（１４），（１５）を加味すると、下式のように表すことができる。
Δｘ＝ｕ−δ・y1  ...(16)
Δｙ＝ｖ＋δ・x1  ...(17)
【００６５】
上記式（１６），（１７）を上記式（１１）に代入すると、下式が得られる。
Ｓ２＝Σ｛Px・（ｕ−δ・ｙ）＋ Py（ｖ＋δ・ｘ）−（B2−B1）｝２  ...(18)
【００６６】
すなわち、基準フレーム画像Ｆｒの座標を（ｘ１ｉ，ｙ１ｉ）として、対象フレーム画像Ｆｔの全画素の座標値と輝度値を式（１８）に代入したときに、Ｓ２を最小にする補正量ｕ，ｖ，δを最小自乗法によって求めることができる。ただし、ｉは全画素を区別する番号である。なお、補正量ｕ，ｖ，δは、以下の式で表される。
【００６７】
【数１】
2005130443.tif 000003
【００６８】
また、M02，M11,M20，mｕ，mｖ，mδ，cｕ，cｖ，cδ，dは、以下の式で表される。
【００６９】
【数２】
2005130443.tif 000004
【００７０】
従って、基準フレーム画像Ｆｒと対象フレーム画像Ｆｔとの間の１画素未満の並進ずれおよび回転ずれを補正するための並進補正量（ｕ，ｖ）および回転補正量（δ）を、最小自乗法により求める上記式（１８）〜（３３）を用いて精度よく求めることができる。
【００７１】
なお、上記並進補正量および回転補正量の推定は、基準フレーム画像Ｆｒと対象フレーム画像Ｆｔとの間の並進ずれが１画素未満である場合について説明している。そこで、画素単位での並進ずれについては、上記推定を行う前に、一般的なパターンマッチ法等による推定手法を用いて大雑把に補正しておくことが好ましい。
【００７２】
Ｄ．第１実施例の動き対応合成処理：
以下では、実施例の動き対応合成処理の説明を容易にするために、まず、動きに対応していない合成処理の概要および問題点について説明し、その後で、実施例の動き対応合成処理について説明する。
【００７３】
Ｄ１．動き非対応合成処理の概要および問題点：
基本的に、合成処理では、対象フレームの画像データを、推定された補正量に基づいて基準フレームの画像データに対してずれがなくなるように補正し、基準フレームの画像データと対象フレームの画像データとを重ね合わせて合成することにより、静止画像データを生成する。また、生成される静止画像（以下、「生成画像」とも呼ぶ。）を構成する各画素（以下、「生成画素」とも呼ぶ。）のうち、基準フレームおよび対象フレームのいずれにも存在しない画素については、その生成画素の周辺に存在する画素の画素値を表す画素データ（階調値を表す階調データ）を用いて所定の補間処理を行う。以下では、図８および図９を用いてこの合成処理について簡単に説明する。
【００７４】
図８は、基準フレーム画像Ｆ０と対象フレーム画像Ｆ１〜Ｆ３とを、ずれを補正して配置した様子を拡大して示す説明図である。図８では、生成画像Ｇの各画素が黒丸で示されているとともに、基準フレーム画像Ｆ０の各画素が白抜きの四辺形で示され、補正後の対象フレーム画像Ｆ１〜Ｆ３の各画素が、ハッチングを施した四辺形で示されている。なお、以下で説明する動きに対応していない合成処理および各実施例の動き対応合成処理では、生成画像Ｇの画素密度は、基準フレーム画像Ｆ０に対して、縦横１．５倍密の画素密度に高解像度化されるものとする。また、生成画像Ｇの各画素は、２画素おきに基準フレーム画像Ｆ０の各画素に重なるような位置にあるものとする。ただし、生成画像Ｇの画素が、必ずしも基準フレーム画像Ｆ０の各画素に重なるように位置している必要はない。例えば、生成画像Ｇ０の各画素のすべてが、基準フレーム画像Ｆ０の各画素の中間に位置するものでもよく、種々の位置とすることが可能である。また、高解像度化の倍率も、縦横１．５倍密に限定されるものではなく、種々の倍率とすることができる。
【００７５】
以下では、生成画像Ｇ内のある画素Ｇ（ｊ）に注目して説明する。ここで、変数ｊは、生成画像Ｇの全画素を区別する番号を示しており、例えば、左上の画素から開始して順番に右上の画素までとし、その後１つずつ下の左端の画素から順番に右端の画素までとして、最後に右下の画素とされる。各フレーム画像Ｆ０，Ｆ１，Ｆ２，Ｆ３において、この画素（以下、「注目画素」と呼ぶ。）Ｇ（ｊ）に対して、それぞれ最も近い画素Ｆ（０），Ｆ（１），Ｆ（２），Ｆ（３）と、注目画素Ｇ（ｊ）との距離Ｌ０，Ｌ１，Ｌ２，Ｌ３を算出する。そして、最も近い距離にある画素（以下、「最近傍画素」と呼ぶ。）を決定する。図８の例では、Ｌ３＜Ｌ１＜Ｌ０＜Ｌ２であるので、対象フレーム画像Ｆ３の画素Ｆ（３）が、注目画素Ｇ（ｊ）の最近傍画素として決定される。なお、この注目画素Ｇ（ｊ）に対する最近傍画素が、対象フレーム画像Ｆ３のｉ番目の画素であったとして、以下、最近傍画素Ｆ（３，ｉ）と表記する。ただし、ここでいうｉは、上記補正量推定処理における基準フレーム画像Ｆｒの注目画素の番号ｉとは異なるものである。
【００７６】
そして、以上の手順が、注目画素Ｇ（ｊ）の番号であるｊ＝１，２，３，...の順に、生成画像Ｇ内の全ての画素について実行されて、それぞれの画素について最近傍画素が決定されることになる。
【００７７】
注目画素Ｇ（ｊ）の画素データは、決定された最近傍画素、及びこれを含むフレーム画像中において注目画素Ｇ（ｊ）を囲む画素の画素データを用いて、バイ・リニア法、バイ・キュービック法等の種々の補間処理によって生成される。
【００７８】
図９は、バイ・リニア法による補間処理について示す説明図である。注目画素Ｇ（ｊ）は、基準フレーム画像Ｆ０および位置ずれ補正後の対象フレーム画像Ｆ１〜Ｆ３のいずれにも存在しない画素であるので、画素データが存在していない。そこで、最近傍画素Ｆ（３，ｉ）のほか、注目画素Ｇ（ｊ）を囲む３つの画素Ｆ（３，ｉ＋１）、Ｆ（３，ｋ）、F（３，ｋ＋１）で区画される領域を、注目画素Ｇ（ｊ）で４つの区画に分割し、その面積比で対角位置の画素データをそれぞれ重み付けして加算することにより、注目画素Ｇ（ｊ）の画素データを補間することができる。ただし、ｋはｉ番目の画素にフレーム画像Ｆ３の横方向の画素数を加えた画素の番号を示している。
【００７９】
なお、補間処理の方法については、バイ・リニア法の他、バイ・キュービック法、二アレストネイバ法等の種々の補間方法を用いることができる。
【００８０】
ここで、以上説明した合成処理では、以下に示すような問題が発生する場合がある。図１０は、複数のフレーム画像間で動きが発生していた場合に、上記合成処理を実行した場合の問題点を示す説明図である。図の下段は、上段の４つのフレーム画像Ｆ０〜Ｆ３を合成した場合の生成画像Ｇを示している。４つのフレーム画像Ｆ０〜Ｆ４は、画面の左から右に移動する自動車が撮影された動画像を示しており、自動車の位置が順に移動しているものである。上記動きに対応していない合成処理では、決定された最近傍画素がフレーム間で動きのある画素であるか否かに関わらす、この最近傍画素を用いて注目画素の補間処理を行うため、図１０に示すように、生成画像Ｇ中の自動車の画像が多重画像となってしまう場合がある。
【００８１】
そこで、本発明の動き対応合成処理では、以下で説明するように、多重画像の発生を防止している。
【００８２】
Ｄ２．動き対応合成処理の手順：
図１１は、動き対応合成処理の手順を示すフローチャートである。なお、以下の各実施例においても生成画像Ｇは、図１０の４つのフレーム画像Ｆ０〜Ｆ３を合成して、生成基準フレーム画像Ｆ０に対して、縦横１．５倍密の画素密度に高解像度化されるものとする。
【００８３】
まず、生成画像Ｇの各生成画素のうち、注目画素Ｇ（ｊ）を設定する（ステップＳ６０２）。ここで、変数ｊは、生成画像Ｇの全画素を区別する番号を示しており、例えば、左上の画素から開始して順番に右上の画素までとし、その後１つずつ下の左端の画素から順番に右端の画素までとして、最後に右下の画素とされる。
【００８４】
次に、変数ａ（ａ＝０，１，２，３）をフレーム番号とする各フレームａについて、注目画素Ｇ（ｊ）の最近傍画素Ｆ（ａ，ｉ）を探索する(ステップＳ６０４)。なお、変数ｉは、全画素を区別する番号であり、上記補正量の推定における変数ｉとは異なっている。フレームａにおける最近傍画素Ｆ（ａ，ｉ）は、例えば、注目画素Ｇ（ｊ）とフレームａ内の各画素との間の距離を求めて、求められた距離が最も最小値となる画素を探索すれば求めることができる。
【００８５】
そして、フレームａごとの最近傍画素Ｆ（ａ，ｉ）と注目画素Ｇ（ｊ）との間の距離Ｌａが最小値となる画素（以下、「最短画素」とも呼ぶ。）を求めて、この最短画素を含むフレームのフレーム番号ａを変数Ａに設定する（ステップＳ６０６）。
【００８６】
次に、変数Ａをフレーム番号とするフレームＡが基準フレームであるか否を判断する（ステップＳ６０８）。なお、以下では、図１０の上端に示した４つのフレーム画像Ｆ０〜Ｆ３を合成するものとして説明する。フレームＡが基準フレーム、すなわち、ここでは、フレーム０である場合には、後述するステップＳ６１４の処理に進む。フレームＡが基準フレームでなく、対象フレーム、すなわち、ここではフレーム１〜フレーム３のいずれかである場合には、さらに、フレームＡにおける最近傍画素Ｆ（Ａ，ｉ）について動きがあるか否かを判定する(ステップＳ６１０)。動きなしと判定された場合には、ステップＳ６１４の処理に進む。一方、動きありと判定された場合には、距離Ｌａが次に小さい最近傍画素Ｆ（ａ，ｉ）を含むフレームのフレーム番号ａを変数Ａに設定する（ステップＳ６１２）。そして、フレームＡが基準フレームと判断されるか、フレームＡの画素Ｆ（Ａ，ｉ）が動きなしと判定されるまで、繰り返しステップＳ６０８〜Ｓ６１２の処理を行う。なお、動きの判定については後述する。
【００８７】
そして、フレームＡが基準フレームである場合、あるいは、動き判定の対象画素である最近傍画素Ｆ（Ａ，ｉ）について動きなしと判断された場合には、注目画素Ｇ（ｊ）の画素値として、フレームＡのフレーム画像ＦＡから内挿値Ｃ'Ａ（ＰＧ（ｊ））を計算し、変数ｃに設定する（ステップＳ６１４）。ここで、Ｃ'Ａ（ＰＧ（））は、バイ・リニア法、バイ・キュービック法等の補間処理を表す関数を意味している。なお、変数ｃに設定された計算値は、注目画素Ｇ（ｊ）の生成画素値ＣＧ（ｊ）として記録される（ステップＳ６１６）。
【００８８】
その後、生成画像Ｇの全画素について画素値（画素データ）を算出したか否かを判断する（ステップＳ６１８）。まだ画素値を算出していない画素が残っている場合には、生成画像Ｇに対応する画素上で注目画素Ｇ（ｊ）を順次移動させながら繰り返しステップＳ６０２〜Ｓ６１８の処理を行う。全画素について画像データを生成した場合には、本フローを終了する。
【００８９】
以上説明した動き対応合成処理においては、注目画素の画素値を補間処理するために利用される予定の画素に動きがあると判定された場合には、その画素を含む対象フレーム画像に基づく補間処理を行わないようにしている。そして、動きがないと判定された画素を含む対象フレーム画像に基づいて補間処理を行い、全ての対象フレーム画像で動きがあると判定された場合には、基準フレーム画像に基づいて補間処理を行うようにしている。従って、本実施例の動き対応合成処理においては、動きのある画素を含む対象フレーム画像を補間処理に利用するフレームの対象から除外することができるので、図１０の生成画像において発生している自動車の多重画像のように、動きのある部分が多重画像となることを防止することができる。
【００９０】
なお、以上説明した動き対応合成処理においては、注目画素に近い最近傍画素の順に選択して、選択した画素の基準画像に対する動きを判定する場合を例に説明しているが、これに限定されるものではなく、例えば、単純にフレーム０、１、２、３の順に選択して動きを判定するようにしてもよい。すなわち、いずれの順番に動きを判定するようにしてもよい。また、以上説明した動き対応合成処理においては、選択した最近傍画素を含むフレームが基準フレームであった場合には、動きの判定を行わないようにしているが、この場合にも動きの判定を行うようにしてもよい。
【００９１】
Ｅ．動き判定
以下では、図１１のステップＳ６１０の動きの判定手法として、５種類の判定手法について説明する。図１２は、動きの判定手法を説明するための前提条件を示す説明図である。図中１つの塗りつぶしの四辺形は、補正がなされた後の対象フレーム画像Ｆｔ中において、動きの判定を行う画素（以下、「判定画素」とも呼ぶ。）Ｆｐｔを示している。また、格子状に並ぶ４つの白抜きの四辺形は、基準フレーム画像Ｆｒ中において、判定画素Ｆｐｔを囲む４つの画素Ｆｐ１，Ｆｐ２，Ｆｐ３，Ｆｐ４を示している。判定画素Ｆｐｔの輝度値をＶｔｅｓｔとし、４つの画素Ｆｐ１，Ｆｐ２，Ｆｐ３，Ｆｐ４の画素の輝度値をＶ１，Ｖ２，Ｖ３，Ｖ４とする。基準フレーム画素Ｆｒの格子内での位置（Δｘ，Δｙ）は、左上の画素Ｆｐ１の位置を基準とし、横方向をｘ軸、縦方向をｙ軸とした座標であり、それぞれ０〜１の間の値のみを取りうることとする。
【００９２】
また、以下で説明する図では、図の説明をわかりやすくするため、判定画素Ｆｐｔの位置が、基準フレーム画像Ｆｒの格子内において、１次元の位置、すなわち、ｘ方向に並ぶ２つの画素Ｆｐ１，Ｆｐ２の間の座標（Δｘ、０）にある場合を例に描くこととする。
【００９３】
Ｅ１．動き判定手法１
図１３は、第１の動き判定手法について示す説明図である。判定画素Ｆｐｔに動きがない場合には、判定画素Ｆｐｔの輝度値Ｖｔｅｓｔは、基準フレーム画像Ｆｒ内において判定画素Ｆｐｔを囲む周囲の画素を基に、例えばバイ・リニア法により求めた推定輝度値Ｖ'と等しくなる。一方、判定画素Ｆｐｔに動きがあるとすると、判定画素Ｆｐｔの輝度値Ｖｔｅｓｔは、その動き量に応じて推定輝度値Ｖ'とは異なった値となる。そこで、以上の点を考慮して、以下に示すように、判定画素Ｆｐｔの動きを判定することができる。
【００９４】
まず、推定輝度値Ｖ'は、基準フレーム画像Ｆｒ内において判定画素Ｆｐｔの両側に位置する画素Ｆｐ１，Ｆｐ２の輝度値から、例えば１次元の線形補間を表す下式により求めることができる。
Ｖ'＝（１−Δｘ）・Ｖ１＋Δｘ・Ｖ２  ...(34)
ただし、Ｖ１、Ｖ２は、判定画素Ｆｐｔの両側に位置する基準フレームの画素Ｆｐ１，Ｆｐ２の輝度値を示している。また、Δｘは、２つの画素Ｆｐ１、Ｆｐ２の間の判定画素において、左側の画素Ｆｐ１を基準とするｘ軸方向の位置を示している。
【００９５】
そして、判定画素Ｆｐｔの輝度値Ｖｔｅｓｔと推定輝度値Ｖ'との差が、閾値ΔＶｔｈよりも大きい場合、この判定画素Ｆｐｔには動きがあると判定される。すなわち、下式を満たす場合には動きがないと判定され、下式を満たさない場合には動きがあると判定される。
｜Ｖｔｅｓｔ−Ｖ'｜＜ΔＶｔｈ  ...(35)
【００９６】
なお、上記式（３５）のように、輝度値Ｖｔｅｓｔと推定輝度値Ｖ'との差の絶対値が閾値ΔＶｔｈよりも小さい場合において、動きがないと判定されるようにしたのは、以下の理由による。すなわち、上述したように、判定画素を含む対象フレーム画像Ｆｔは、基準フレーム画像Ｆｒに対する位置ずれを補正するための補正量を求め、この補正量に応じて位置ずれを補正し、基準フレーム画像Ｆｒに重ね合わせるようにしている。このフレーム間の位置ずれは理想的には完全に補正されていることが好ましいが、実際にはこのずれを完全に無くすことは困難である場合が多く、重ねあわせの誤差等のノイズが発生する。このため、仮に判定画素に全く動きが無かったとしても、推定輝度値Ｖ'と判定画素の輝度値Ｖｔｅｓｔとの間には差が発生する場合がある。
【００９７】
そこで、このノイズにより発生する差を動きとして検出しないようにするために、推定輝度値Ｖ'から上下方向に閾値ΔＶｔｈの幅の領域を、動きがないと判定する範囲とすることとしている。
【００９８】
なお、閾値ΔＶｔｈの大きさは、例えば、輝度値が８ビットの階調、すなわち、０〜２５５の値をとりうるとした場合において、ΔＶｔｈ＝３程度に設定されることが好ましい。ただし、これに限定されるものではなく、輝度値の階調数、位置ずれ補正の精度等に応じて種々の値に設定することが好ましい。
【００９９】
なお、以上の説明では、判定画素Ｆｐｔの座標が基準フレーム画像Ｆｒの画素Ｆｐ１を原点とする座標（Δｘ，０）の場合を例に説明しているが、判定画素Ｆｐｔの座標が（０，Δｙ）の場合も同様である。
【０１００】
また、判定画素Ｆｐｔの座標が２次元の座標（Δｘ，Δｙ）の場合には、推定輝度値Ｖ'を、例えば、バイ・リニア法による２次元の線形補間を表す下式により求めるようにすればよい。
Ｖ'＝（１−Δｘ）・（１−Δｙ）・Ｖ１＋Δｘ・（１−Δｙ）・Ｖ２＋（１−Δｘ）・Δｙ・Ｖ３＋Δｘ・Δｙ・Ｖ４  ...(36)
【０１０１】
なお、対象フレーム画像ごとに、判定画素Ｆｐｔを含む対象フレーム画像Ｆｔの、基準フレーム画像Ｆｒに対する時間差ｍに応じて、閾値ΔＶｔｈの大きさを下式に示すように変化させて、動きが無いと判定する範囲を変化させるようにしてもよい。
ΔＶｔｈ＝Ｗｔ（ｍ）・Ｖｔｈｒ  ...（37）
【０１０２】
ｍは、フレーム間の時間間隔を１とした場合の、判定画素Ｆｐｔを含む対象フレーム画像Ｆｔの、基準フレーム画像Ｆｒに対する時間差を示している。Ｗｔ（ｍ）は、時間差ｍにおける荷重を示し、時間差ｍ＝０の場合を１とし、時間差ｍの大きさ｜ｍ｜が０から大きくなるほど小さくなる特性に設定されている。ただし、その特性の形状は、線形、非線形（正規分布等）等どのような形状であってよい。Ｖｔｈｒは、時間差ｍ＝０の場合の閾値ΔＶｔｈの基準値を示している。なお、基準値Ｖｔｈｒの大きさは、例えば、輝度値が８ビットの階調、すなわち、０〜２５５の値をとりうるとした場合において、Ｖｔｈｒ＝８程度に設定される。ただし、これに限定されるものではなく、輝度値の階調数、位置ずれ補正の精度等に応じて種々の値に設定することが好ましい。また、時間差ｍは、フレームシーケンスにおける対象画像Ｆｔのフレーム番号の、基準フレーム画像Ｆｒのフレーム番号に対する差としてもよい。要するに、判定画素Ｆｐｔを含む対象フレーム画像Ｆｔの、基準フレーム画像Ｆｒに対する時間差を表すものであればよい。
【０１０３】
図１４は、時間差ｍに応じて設定される動きがないと判定する範囲について示す説明図である。なお、図１４は、荷重ｗｔ（ｍ）を、下式により設定した場合の例を示している。
ｗｔ（ｍ）＝１−｜ｍ｜・０．０５  ...（38）
【０１０４】
ｍ＝１、すなわち、対象フレーム画像Ｆｔがフレーム１の対象フレーム画像Ｆ１（図１０参照）である場合には、上式（３８）より、荷重Ｗｔ（１）は０．９５となり、上式（３７）により、閾値ΔＶｔｈは、（０．９５・Ｖｔｈｒ）となる。これにより、図１４（Ａ）に示すように、推定輝度値Ｖ'を中心とする上下方向の閾値ΔＶｔｈ（＝０．９５・Ｖｔｈｒ）の幅の範囲の領域が、動きがないと判定する範囲に設定される。
【０１０５】
一方、ｍ＝３、すなわち、対象フレーム画像Ｆｔがフレーム３の対象フレーム画像Ｆ３（図１０参照）の場合には、上式（３８）より、荷重Ｗｔ（３）は０．８５となり、上式（３７）により、閾値ΔＶｔｈは、（０．８５・Ｖｔｈｒ）となる。これにより、図１４（Ｂ）に示すように、推定輝度値Ｖ'を中心とする上下方向の閾値ΔＶｔｈ（＝０．８５・Ｖｔｈｒ）の幅の範囲の領域が、動きがないと判定する範囲に設定される。
【０１０６】
以上のように、対象画像Ｆｔごとに、判定画素Ｆｐｔを含む対象フレーム画像Ｆｔの、基準フレーム画像Ｆｒに対する時間差ｍに応じて、閾値ΔＶｔｈを変化させることにより、動きがないと判定する範囲を変化させることができる。
【０１０７】
動画像の各フレームは、一般に、徐々にその内容が変化していく。そのため、基準フレーム画像から時間的に離れいている対象フレーム画像ほど、動きが大きくなる可能性が高い。上記動き判定では、対象フレーム画像Ｆｔの基準フレーム画像Ｆｒに対する時間差ｍの大きさが大きくなるほど、閾値ΔＶｔｈが小さくなるように設定して、動きがないと判定する範囲を小さくしているので、複数の対象フレーム画像のうち、基準フレームから時間的に離れた対象フレーム画像ほど、合成処理により得られる画像に対するその動きの影響を抑制することができる。
【０１０８】
なお、上記説明では、４つのフレーム画像Ｆ０〜Ｆ３のうち、先頭のフレーム０のフレーム画像Ｆ０を基準フレーム画像、他のフレーム１〜フレーム３を対象フレーム画像とした場合を前提に説明しているので、図１４の説明では、時間差ｍが３以下の正の数値で変化する場合を説明している。しかしながら、これに限定されるものではなく、例えば、フレーム１のフレーム画像Ｆ１やフレーム２のフレーム画像Ｆ２を基準フレーム画像とすれば、時間差ｍとしては基準フレーム画像よりも前の対象フレーム画像の時間差ｍは負の値をとることになる。また、４つのフレーム画像ではなく、４以上のフレーム画像を対象とする場合には、これに応じて時間差ｍの大きさは、３以上の数値をとることになる。この場合の荷重は、時間差ｍの大きさの０から最大値までの変化に応じて変化する特性を適宜設定するようにすればよい。
【０１０９】
Ｅ２．動き判定手法２
図１５は、第２の動き判定手法について示す説明図である。空間的に急激な輝度値の変化がない限り、対象フレームの画素の輝度値は、その周りに位置する基準フレームの画素の輝度値の間の値になるものとして期待される。そこで、この点を考慮すると、判定画素を囲む周囲の輝度値の最大値と最小値の間の領域を、動きがないと判定される範囲とすることが考えられる。さらに、第１の動き判定手法の場合と同様に、ノイズの発生による誤検出を防止するため、その範囲を閾値ΔＶｔｈの幅だけ広げることが考えられる。そして、以下に示すように、動きがないと判定される範囲に判定画素Ｆｐｔの輝度値Ｖｔｅｓｔがあるか否かを判定することにより、判定画素Ｆｐｔの動きを判定することができる。
【０１１０】
まず、判定画素Ｆｐｔの両側に位置する基準フレームの２つの画素Ｆｐ１，Ｆｐ２について、輝度値の最大値Ｖｍａｘと最小値Ｖｍｉｎを、下式のように求める。
Ｖｍａｘ＝ｍａｘ（Ｖ１，ｖ２）  ...(39)
Ｖｍｉｎ＝ｍｉｎ（Ｖ１，Ｖ２）  ...(40)
ここで、ｍａｘ（）は（）内の引数の中で最大値を求める関数、ｍｉｎ（）は（）内の引数の中で最小値を求める関数を意味している。
【０１１１】
そして、判定画素Ｆｐｔの輝度値Ｖｔｅｓｔが、２つの下式を満たす場合には動きがないと判定され、そうでない場合には動きがあると判定される。
Ｖｔｅｓｔ＞Ｖｍｉｎ−ΔＶｔｈ  ...(41)
Ｖｔｅｓｔ＜Ｖｍａｘ＋ΔＶｔｈ  ...(42)
【０１１２】
なお、以上の説明では、判定画素Ｆｐｔの座標が基準フレーム画像Ｆｒ中の画素Ｆｐ１を原点とする座標（Δｘ，０）の場合を例に説明しているが、判定画素Ｆｐｔの座標が（０，Δｙ）の場合も同様である。
【０１１３】
また、判定画素Ｆｐｔの座標が２次元の座標（Δｘ，Δｙ）の場合には、輝度値の最大値Ｖｍａｘおよび最小値Ｖｍｉｎを、下式により求めるようにすればよい。
Ｖｍａｘ＝ｍａｘ（Ｖ１，Ｖ２，Ｖ３，Ｖ４）  ...(43)
Ｖｍｉｎ＝ｍｉｎ（Ｖ１，Ｖ２，Ｖ３，Ｖ４）  ...(44)
【０１１４】
Ｅ３．動き判定手法３
図１６は、第３の動き判定手法について示す説明図である。第１の動き判定手法において、基準フレーム画像Ｆｒ中の格子上に並ぶ各画素から遠い中間位置の画素ほど、すなわち、画素間の中央の位置ほど推定輝度値の推定精度が低下する。そこで、この点を考慮して、基準フレーム画像Ｆｒ中の画素に近い位置では動きがないと判定する範囲を狭め、遠い位置では広げるようにすることが考えられる。ただし、基準フレーム画像Ｆｒ中の各画素付近においても、第１の動き判定手法の場合と同様に、動きがないと判定する範囲として、閾値ΔＶｔｈ分の範囲を確保しておくことが好ましい。そして、以下に示すように、動きがないと判定される範囲に判定画素Ｆｐｔの輝度値Ｖｔｅｓｔがあるか否かを判定することにより、判定画素Ｆｐｔの動きを判定することができる。
【０１１５】
動き判定の上限ＶｔｈＵ（Δｘ）および下限ＶｔｈＬ（Δｘ）を、第１の動き判定手法における推定輝度値Ｖ'（Δｘ）を中心として下式のように定義する。
ＶｔｈＵ（Δｘ）＝Ｖ'（Δｘ）＋ΔＶｔｈｍａｘ・Ｗ（Δｘ）＋ΔＶｔｈ  ...(45)
ＶｔｈＬ（Δｘ）＝Ｖ'（Δｘ）−ΔＶｔｈｍａｘ・Ｗ（Δｘ）−ΔＶｔｈ  ...(46)
【０１１６】
ここで、Ｗ（Δｘ）は、Δｘが０〜１の範囲で、中央ほど大きな値となるような関数であることが好ましい。例えば、下式のような関数式を用いることができる。
Ｗ（Δｘ）＝２・［１−｛（１−Δｘ）２＋Δｘ２｝］＝４（１−Δｘ）Δｘ  ...(47)
【０１１７】
なお、上記式（４５）は、Δｘが０〜１の範囲で、Ｗが最小値が０、最大値が１となるように正規化されている。ただし、上記式（４７）は一例であってこれに限定されるものではなく、Ｗ（Δｘ）は、Δｘが０〜１の範囲で、中央ほど大きな値となるような関数であれば種々の関数を適用することが可能である。
【０１１８】
また、ΔＶｔｈｍａｘは、以下のように表される。
ΔＶｔｈｍａｘ＝（Ｖｍａｘ−Ｖｍｉｎ）／２  ...(48)
【０１１９】
ここで、ＶｍａｘおよびＶｍｉｎは、第２の動き判定手法において、判定画素Ｆｐｔの両側に位置する基準フレームの２つの画素Ｆｐ１，Ｆｐ２について、式（３９）および（４０）によって求められる輝度値の最大値Ｖｍａｘと最小値Ｖｍｉｎを示している。
【０１２０】
そして、判定画素Ｆｐｔの輝度値Ｖｔｅｓｔが、２つの下式を満たす場合には動きがないと判定され、そうでなければ動きがあると判定される。
Ｖｔｅｓｔ＞ＶｔｈＬ（Δｘ）  ...(49)
Ｖｔｅｓｔ＜ＶｔｈＵ（Δｘ）  ...(50)
【０１２１】
なお、以上の説明では、判定画素Ｆｐｔの座標が基準フレームの画素Ｆ（ａＲ ，ｉＲ）を原点とする座標（Δｘ，０）の場合を例に説明しているが、判定画素Ｆｐｔの座標が（０，Δｙ）の場合も同様である。
【０１２２】
また、判定画素Ｆｐｔの座標が２次元の座標（Δｘ，Δｙ）の場合には、関数Ｗ(Δｘ,Δｙ)として、式（４７）を２次元に拡張した以下の式が用いられる。
Ｗ（Δｘ，Δｙ）＝（４／３）・［１−{(１−Δｘ)２・(１−Δｙ)２＋（Δｘ）２(１−Δｙ)２＋(１−Δｘ)２・(Δｙ)２＋(Δｘ)２・(Δｙ)２}］
＝（４／３）・［１−(１−２Δｘ＋２（Δｘ）２)・(１−２Δｙ＋２（Δｙ）２)］  ...(51)
【０１２３】
ここで、ＶｍａｘおよびＶｍｉｎとしては、第２の動き判定手法において、判定画素Ｆｐｔの両側に位置する基準フレームの２つの画素Ｆｐ１，Ｆｐ２について、上記式（４３）および（４４）を用いて求められる輝度値の最大値と最小値が用いられる。
【０１２４】
ただし、判定画素Ｆｐｔの座標が２次元の座標（Δｘ，Δｙ）の場合には、上限ＶｔｈＵ（Δｘ，Δｙ）の値は輝度の最大値Ｖｍａｘよりも大きい値をとる場合があり、また、下限ＶｔｈＬ（Δｘ，Δｙ）の値が輝度の最小値Ｖｍｉｎよりも小さい値をとる場合がある。このため、最小値Ｖｍｉｎ〜最大値Ｖｍａｘの範囲よりも外側の輝度値は許容しないように、ＶｔｈＵ（Δｘ，Δｙ）＞Ｖｍａｘ+ΔＶｔｈであれば、上限値ＶｔｈＵ（Δｘ，Δｙ）を下式のように制限することが好ましい。
ＶｔｈＵ（Δｘ，Δｙ）＝Ｖｍａｘ+ΔＶｔｈｎｏｉｓｅ  ...（52）
また、ＶｔｈＬ（Δｘ，Δｙ）＜Ｖｍｉｎ−ΔＶｔｈｎｏｉｓｅであれば、下限値ＶｔｈＬ（Δｘ，Δｙ）を下式のように制限することが好ましい。
ＶｔｈＬ（Δｘ，Δｙ）＝Ｖｍｉｎ−ΔＶｔｈｎｏｉｓｅ  ...(53)
【０１２５】
Ｅ４．動き判定手法４
図１７は、第４の動き判定手法について示す説明図である。画像全体のずれと、画像中の一部について局所的に求めたずれが一致しない場合、動きがある可能性が高い。そこで、この点を考慮し、判定画素Ｆｐｔの両側に位置する基準フレームの２つの画素Ｆｐ１，Ｆｐ２間の輝度勾配が一定であると仮定して、その輝度値ＶＭが判定画素Ｆｐｔの輝度値Ｖｔｅｓｔに等しくなる画素ＦＭ（以下、「推定画素」とも呼ぶ。）の位置ＸＭを算出する。そして、その位置（以下、「推定位置」とも呼ぶ。）ｘＭから、この推定位置ＸＭを中心として、画面全体のずれによって変化する可能性のある位置までの距離を閾値Ｌｔｈとする。このとき、以下に示すように判定画素Ｆｐｔと推定画素ＦＭとの間の距離ＬＭが閾値Ｌｔｈより大きいか否かによって動きの判定を行うことができる。
【０１２６】
まず、第２の動き判定手法を用いて、対象フレーム画像Ｆｔにおける判定画素Ｆｐｔの動きを判定する。そして、動きがないと判定された場合には、さらに以下の判定を行う。
【０１２７】
判定画素Ｆｐｔの両側に位置する基準フレーム画像Ｆｒ中の２つの画素Ｆｐ１，Ｆｐ２の間の勾配を一定として、推定輝度値ＶＭが判定画素Ｆｐｔの輝度値Ｖｔｅｓｔに等しくなる推定位置ＸＭを算出する。また、判定画素Ｆｐｔの位置Ｘと、推定画素ＦＭの推定位置ＸＭとの距離ＬＭを、下式のように算出する。
ＬＭ＝｜ＸＭ−Ｘ｜＝｜（Ｖｔｅｓｔ−Ｖ１）／（Ｖ２−Ｖ１）−Δｘ｜  ...(54)
【０１２８】
こうして求められた距離ＬＭと閾値Ｌｔｈとの比較により、ＬＭ＞Ｌｔｈであれば動きがありと判定し、そうでなければ動きがないと判定する。
【０１２９】
なお、以上の説明では、判定画素Ｆｐｔの座標が基準フレーム画像Ｆｒ中の画素Ｆｐ１を原点とする座標（Δｘ，０）の場合を例に説明しているが、判定画素Ｆｐｔの座標が（０，Δｙ）の場合も同様である。
【０１３０】
また、判定画素Ｆｐｔの座標が２次元の座標（Δｘ，Δｙ）の場合には、判定画素Ｆｐｔに基準フレーム画像Ｆｒ中の画素Ｆｐ１を原点とするｘ軸方向（横方向）およびｙ軸方向（縦方向）に、輝度値Ｖｔｅｓｔの値を写像して判定を行うようにすればよい。ここで、ｘ軸方向およびｙ軸方向の判定結果について、少なくとも一方において動きがありと判定された場合には、この判定画素Ｆｐｔは動きがありと判定され、それ以外の場合には動きがないと判定される。
【０１３１】
Ｅ５．動き判定手法５
第４の動き判定手法において、合成するフレーム画像によって閾値Ｌｔｈの値を変化させるようにしてもよい。例えば、動きの多いフレーム画像については閾値Ｌｔｈを狭くし、複数フレームを用いて画像を合成する効果を小さくし、動きの小さいフレームについては閾値Ｌｔｈを広くして、複数フレームを用いて合成する効果を大きくすることが可能である。
【０１３２】
例えば、４フレームのフレーム画像を用いて合成する場合、対象フレームは３フレームとなり、以下に示すような処理が行われる。
【０１３３】
全ての対象フレーム（３フレーム）の全画素について、あらかじめ設定されている標準の閾値Ｌｔｈで第４の動き判定手法により動きを判定する。このとき、動きがありと判定された画素の画素数をＮＭとする。
【０１３４】
そして、３フレーム分の対象フレームの総画素数をＮｔｏｔａｌとし、動きありと判定された画素の割合Ｒを、下式のように算出する。
Ｒ＝ＮＭ／Ｎｔｏｔａｌ  ...(55)
【０１３５】
算出されたＲによって閾値Ｌｔｈを、下式を用いて変化させ、第４の動き判定手法により判定画素の動き判定を実行する。
Ｌｔｈ＝１−Ｒ１／２  ...（56）
【０１３６】
例えば、Ｒ＝０．２５のとき、Ｌｔｈ＝０．５画素となる。
【０１３７】
なお、上記式（５６）は、動きありと判定された画素の割合Ｒに応じて変化する閾値を算出する式の一例であり、これに限定されるものではなく、例えば、その処理の目的に応じて適宜種々の式が適用可能である。
【０１３８】
以上説明した動きの判定手法のうち、いずれの判定手法を図１１のステップＳ６１０に用いるようにしてもよい。いずれの判定手法を利用するかは、判定の対象となる画像に応じて、例えば、動きの大きさ、動いている部分の大きさ等動きの判定に影響する種々の画像の特質に応じて決定することができる。また、対象となる画像に応じて、適宜変更できるようにしてもよい。
【０１３９】
Ｆ．第２実施例の動き対応合成処理：
図１８は、第２実施例としての動き対応合成処理の手順を示すフローチャートである。まず、第１実施例（図１１のステップＳ６０２）と同様に、生成画像Ｇの各生成画素のうち、注目画素Ｇ（ｊ）を設定する（ステップＳ７０２）。
【０１４０】
そして、第１実施例（図１１のステップＳ６０４）と同様に、変数ａ（ａ＝０，１，２，３）をフレーム番号とする各フレームａについて、注目画素Ｇ（ｊ）の最近傍画素Ｆ（ａ，ｉ）を探索する(ステップＳ７０４)。
【０１４１】
次に、あらかじめ特定されている基準フレームを除く対象フレームのうち、いずれか１つを最初の対象フレームとして選択し、選択した最初の対象フレームのフレーム番号ａを変数ａＴに設定する(ステップＳ７０６)。ここでは、最初の対象フレームとしてフレーム１を選択するものとし、後述するステップＳ７１２では、次の対象フレームとしてフレーム２、３の順に選択するものとする。ただし、これに限定されるものではなく、いずれの対象フレームを最初の対象フレームとして選択してもよく、次の対象フレームとしていずれの順に選択してもよい。
【０１４２】
そして、変数ａＴをフレーム番号とするフレームａＴにおいて、注目画素Ｇ（ｊ）の最近傍画素Ｆ（ａＴ，ｉ）を判定画素として、この判定画素に動きがあるか否かを判定する(ステップＳ７０８)。なお、動きの判定手法については、上述したいずれかの判定手法を利用すればよい。
【０１４３】
ステップＳ７０８において動きありと判定された場合には、後述するステップＳ７１８の処理に進む。一方、動きなしと判定された場合には、さらに、まだ選択されていない次の対象フレームがあるか否か判断する（ステップＳ７１０）。次の対象フレームがないと判断された場合には、後述するステップＳ７１４の処理に進む。
【０１４４】
ステップＳ７１０において次の対象フレームがあると判断された場合には、次の対象フレームを選択し、選択したフレームの番号ａを変数ａＴに設定する(ステップＳ７１２)。そして、変数ａＴをフレーム番号とするフレームａＴにおける最近傍画素Ｆ（ａＴ，ｉ）が、動きありと判定されるまで、あるいは、次の対象フレームがない、すなわち、すべての対象フレームにおいて最近傍画素に動きながないと判定されるまで、繰り返しステップＳ７０８〜Ｓ７１２の処理を行う。
【０１４５】
ステップＳ７１０において次の対象フレームがないと判断され、さらに、全ての対象フレームにおいてそれぞれの最近傍画素に動きがないと判定された場合には、注目画素Ｇ（ｊ）と最近傍画素Ｆ（ａ，ｉ）との間の距離Ｌａが最小値となる最短画素を求めて、この最短画素を含むフレームのフレーム番号ａを変数Ａに設定する（ステップＳ７１４）。そして、注目画素Ｇ（ｊ）の画素値として、フレームＡのフレーム画像ＦＡから内挿値Ｃ'Ａ（ＰＧ（ｊ））を計算し、変数ｃに設定する（ステップＳ７１６）。
【０１４６】
また、ステップＳ７０８において、動きありと判断された場合には、注目画素Ｇ（ｊ）の画素値として、基準フレーム画像ＦａＲから内挿値Ｃ'ａＲ（ＰＧ（ｊ））を計算し、変数ｃに設定する（ステップＳ７１８）。
【０１４７】
そして、変数ｃに設定された計算値は、注目画素Ｇ（ｊ）の生成画素値ＣＧ（ｊ）として記録される（ステップＳ７２０）。
【０１４８】
なお、内挿値の計算は、第１実施例で説明した図１１のステップＳ６１４と同様に、バイ・リニア法、バイ・キュービック法等の種々の補間処理方法による計算を用いることができる。
【０１４９】
その後、生成画像Ｇの全画素について画素値（画素データ）を算出したか否かを判断する（ステップＳ７２２）。まだ画素値を算出していない画素が残っている場合には、生成画像Ｇに対応する画素上で注目画素Ｇ（ｊ）を順次移動させながら繰り返しステップＳ７０２〜Ｓ７２２の処理を行う。全画素について画像データを生成した場合には、本フローを終了する。
【０１５０】
以上説明した第２実施例の動き対応合成処理においても、第１実施例と同様に、注目画素Ｇ（ｊ）の画素値を補間処理するために利用される予定の画素に動きがあると判定された場合には、その画素を含む対象フレーム画像に基づく補間処理を行わないようにしている。そして、基準フレーム画像に基づいて補間処理を行ようにしている。従って、本実施例の動き対応合成処理においても、動きのある画素を含む対象フレーム画像を補間処理に利用するフレームの対象から除外することができるので、図１０の生成画像Ｇにおいて発生している自動車の多重画像のように、動きのある部分が多重画像となることを防止することができる。
【０１５１】
また、第１実施例では、動きの判定を行った対象フレームの判定画素に動きがあると判定されても、他の対象フレームの判定画素に動きがないと判定された場合には、動きがないと判定された対象フレームの対象フレーム画像に基づいて補間処理を行なっているのに対して、第２実施例では、動きの判定を行った対象フレームの判定画素に動きがあると判定された場合には、他の対象フレームにおける動きの判定は行わず、基準フレームの基準フレーム画像に基づいて補間処理を行っている。これにより、第１実施例に比べて生成画像の高画質化の効果は実効的に小さくなるが、従来において問題となっていた動きのある部分について多重像が発生することを第１実施例よりも効果的に防止することが可能である。
【０１５２】
なお、第１実施例では、仮に１つの対象フレームで動きがあると判定されても、他の対象フレームで動きがないと判定された場合には、この動きがないと判定された対象フレームに基づいて補間処理を行うことができるので、第２実施例よりも高画質化の効果が期待できる。
【０１５３】
Ｇ．第３実施例の動き対応合成処理：
図１９は、第３実施例としての動き対応合成処理の手順を示すフローチャートである。まず、第１実施例（図１１のステップＳ６０２）と同様に、生成画像Ｇの各生成画素のうち注目画素Ｇ（ｊ）を設定する（ステップＳ８０２）。
【０１５４】
そして、第１実施例（図１１のステップＳ６０４）と同様に、変数ａ（ａ＝０，１，２，３）をフレーム番号とする各フレームａについて、注目画素Ｇ（ｊ）の最近傍画素Ｆ（ａ，ｉ）を探索する(ステップＳ８０４)。
【０１５５】
次に、変数ａのうちあらかじめ特定されている値ａＴＥＳＴをフレーム番号とするフレームａＴＥＳＴにおいて、注目画素Ｇ（ｊ）の最近傍画素Ｆ（ａＴＥＳＴ，ｉ）について、動きがあるか否かを判定する（ステップＳ８０６）。なお、動きの判定については、上述したいずれかの判定手法を利用すればよい。
【０１５６】
ステップＳ８０６において動きありと判定された場合には、後述するステップＳ８１２の処理に進む。一方、動きなしと判定された場合には、注目画素Ｇ（ｊ）と最近傍画素Ｆ（ａ，ｉ）との間の距離Ｌａが最小値となる最短画素を求めて、この最短画素を含むフレームのフレーム番号ａを変数Ａに設定する（ステップＳ８０８）。そして、注目画素Ｇ（ｊ）の画素値として、フレームＡのフレーム画像ＦＡから内挿値Ｃ'Ａ（ＰＧ（ｊ））を計算し、変数ｃに設定する（ステップＳ８１０）。
【０１５７】
ステップＳ８０４において動きありと判断された場合には、注目画素Ｇ（ｊ）の画素値として、フレーム番号ａＲの基準フレーム画像ＦａＲから内挿値Ｃ'ａＲ（ＰＧ（ｊ））を計算し、変数ｃに設定する（ステップＳ８１２）。
【０１５８】
そして、変数ｃに設定された計算値は、注目画素Ｇ（ｊ）の生成画素値ＣＧ（ｊ）として記録される（ステップＳ８１４）。
【０１５９】
なお、内挿値の計算は、第１実施例で説明した図１１のステップＳ６１４と同様に、バイ・リニア法、バイ・キュービック法等の種々の補間処理方法による計算を用いることができる。
【０１６０】
その後、生成画像Ｇの全画素について画素値（画素データ）を算出したか否かを判断する（ステップＳ８１６）。まだ画素値を算出していない画素が残っている場合には、生成画像Ｇに対応する画素上で注目画素Ｇ（ｊ）を順次移動させながら繰り返しステップＳ８０２〜Ｓ８１６の処理を行う。全画素について画像データを生成した場合には、本フローを終了する。
【０１６１】
以上説明した第３実施例の動き対応合成処理においては、特定の対象フレームの判定画素について動きの判定を行い、動きがあると判定された場合には基準フレーム画像に基づいて補間処理を行っている。従って、本実施例の動き対応合成処理においても、動きのある画素を含む対象フレーム画像を補間処理に利用するフレームの対象から除外することができるので、図１０の生成画像Ｇにおいて発生している自動車の多重画像のように、動きのある部分が多重画像となることを防止することができる。
【０１６２】
また、第２実施例では、全ての対象フレームについて動きの判定を行う可能性があるが、それらの判定結果には一般に強い相関がある。そこで、第３実施例では、ある特定の対象フレームについてのみ動きの判定を行うようにしている。これにより、第２実施例は、他の実施例に比べて処理時間の短縮を実効的に図ることが可能となる。なお、特定の対象フレームとしては、基準フレームと時間的に最も離れたフレームを選択することが好ましい。
【０１６３】
Ｈ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１６４】
（１）上記実施例では、動画像再生期間中の特定の瞬間が指定されると、フレーム画像取得部１０４によって、その瞬間のフレームを基準フレームとして、この基準フレームを含んで後側に時系列に並ぶ４フレームのフレーム画像データを取得している。もちろん、前側に時系列に並ぶ４フレームのフレーム画像データを取得するようにしてもよく、また、前後に合わせて４フレームのフレーム画像データを取得するようにしてもよい。また、必ずしも４フレームである必要はなく、２フレーム以上の複数フレームを取得し、取得した複数フレームのフレーム画像データから静止画像データを生成するようにしてもよい。
【０１６５】
（２）上記実施例では、複数フレームのフレーム画像データを取得し、取得した複数フレームのフレーム画像データから静止画像データを生成する場合を例に説明しているが、これに限定されるものではない。例えば、１フレームを構成する複数フィールドの画像データ（以下、「フィールド画像データ」とも呼ぶ。）の形式で複数フレーム分の画像データを取得し、取得した複数フィールドのフィールド画像データから静止画像データを生成するようにしてもよい。
【０１６６】
（３）上記各実施例では、生成画像を複数のフレーム画像から合成する合成処理の過程において、生成画像中のある画素の画素値を算出して画素データを生成する際に、動きを判定して、その画素データの生成に利用可能なフレーム画像を決定している。しかしながら、これに限定されるものではない。例えば、基準フレーム画像に対して各対象フレーム画像の各画素について動きを判定しておき、生成画像の各画素の画素値を算出して画素データを生成する際に、先に求めた判定結果に基づいてそれぞれの画素データの生成に利用可能なフレーム画像を決定するようにしてもよい。
【０１６７】
（４）上記実施例では、動画像（この動画像は、動画像データによって表される。）の中から取得された時系列に連続する複数フレームの画像（この画像は、画像データによって表される。）を合成して、１枚の高解像度な静止画像（この静止画像は、静止画像データで表される。）を生成する場合を例に説明している。しかしながら、これに限定されるものではなく、単に、時系列に連続する複数の低解像度の画像を合成して、１枚の高解像度の画像を生成することも可能である。時系列に連続する複数の低解像度の画像としては、例えば、ディジタルカメラで連写された複数の画像であってもよい。
また、必ずしも時系列に連続する複数の低解像度の画像(フレーム画像を含む。)である必要はなく、時系列に並んだ複数の低解像度の画像であってもよい。
【０１６８】
（５）上記実施例では、生成画像のある画素の画素データを生成する際に、複数のフレーム画像の中からその生成に利用されうる１画素について動きを判定しているが、これに限定されるものではない。例えば、生成画像中のある画素の画素データを生成する前に、あらかじめ、基準フレーム画像を複数のブロックで区分し、対象フレーム画像との間でブロックごとの動きがあるか否かを判定しておくことも可能である。この場合、動きがあると判定されたブロック内に含まれる生成画像の画素は、基準フレーム画像に基づいて画素データを生成するようにすればよい。また、ブロックごとの動きの判定においては、フレーム間における動き量を抽出する種々の一般的な手法により行うことが可能である。
【０１６９】
（６）上記実施例では、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆にソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。例えば、図１に示したような静止画像生成制御部、補正量推定部、動き対応合成部による処理をハードウェア回路で行うこととしてもよい。
【０１７０】
（７）上記実施例では、パーソナルコンピュータを本発明の静止画像生成装置として動作させる場合を例に説明しているが、これに限定されるものではない。例えば、ディジタルビデオカメラ、ディジタルカメラ、プリンタ等の種々のコンピュータシステムを、本発明の静止画像生成装置とすることができる。特に、ディジタルビデオカメラを本発明の静止画像生成装置とした場合には、動画像を撮影しながら、あるいは、撮影した結果を確認しながら、動画像に含まれる複数のフレーム画像から１枚の高解像度な静止画像を生成することが可能となる。また、ディジタルカメラを本発明の静止画像生成装置とした場合にも、被写体を連写しながら、あるいは、連写した結果を確認しながら、複数の撮像画像から１枚の高解像度な静止画像を生成することができる。
【図面の簡単な説明】
【０１７１】
【図１】本発明の一実施例としての静止画像生成装置の概略構成を示す説明図である。
【図２】静止画像データを生成する手順を示す説明図である。
【図３】基準フレームのフレーム画像と対象フレームのフレーム画像との間のずれについて示す説明図である。
【図４】対象フレーム画像と基準フレーム画像との間のずれの補正について示す説明図である。
【図５】基準フレーム画像に対する対象フレーム画像の補正量について示す説明図である。
【図６】勾配法による並進補正量の推定方法を示す説明図である。
【図７】画素の回転補正量を模式的に示す説明図である。
【図８】基準フレーム画像Ｆ０と対象フレーム画像Ｆ１〜Ｆ３とをずれを補正して配置した様子を拡大して示す説明図である。
【図９】バイ・リニア法による補間処理について示す説明図である。
【図１０】複数のフレーム画像間で動きが発生していた場合に上記合成処理を実行した場合の問題点を示す説明図である。
【図１１】動き対応合成処理の手順を示すフローチャートである。
【図１２】動きの判定手法を説明するための前提条件を示す説明図である。
【図１３】第１の動き判定手法について示す説明図である。
【図１４】時間差ｍに応じて設定される動きがないと判定する範囲について示す説明図である。
【図１５】第２の動き判定手法について示す説明図である。
【図１６】第３の動き判定手法について示す説明図である。
【図１７】第４の動き判定手法について示す説明図である。
【図１８】第２実施例としての動き対応合成処理の手順を示すフローチャートである。
【図１９】第３実施例としての動き対応合成処理の手順を示すフローチャートである。
【符号の説明】
【０１７２】
２０...プリンタ
３０...ディジタルビデオカメラ
１００...コンピュータ
１０２...静止画像生成制御部
１０４...フレーム画像取得部
１０６...補正量推定部
１０８...動き対応合成部
１１０...ディスプレイ
１２０...キーボード
１３０...マウス
【図１】
2005130443.tif 000005
【図２】
2005130443.tif 000006
【図３】
2005130443.tif 000007
【図４】
2005130443.tif 000008
【図５】
2005130443.tif 000009
【図６】
2005130443.tif 000010
【図７】
2005130443.tif 000011
【図８】
2005130443.tif 000012
【図９】
2005130443.tif 000013
【図１０】
2005130443.tif 000014
【図１１】
2005130443.tif 000015
【図１２】
2005130443.tif 000016
【図１３】
2005130443.tif 000017
【図１４】
2005130443.tif 000018
【図１５】
2005130443.tif 000019
【図１６】
2005130443.tif 000020
【図１７】
2005130443.tif 000021
【図１８】
2005130443.tif 000022
【図１９】
2005130443.tif 000023