JP2016181023A - 画像処理装置、画像処理方法及び画像処理プログラム - Google Patents
画像処理装置、画像処理方法及び画像処理プログラム Download PDFInfo
- Publication number
- JP2016181023A JP2016181023A JP2015059667A JP2015059667A JP2016181023A JP 2016181023 A JP2016181023 A JP 2016181023A JP 2015059667 A JP2015059667 A JP 2015059667A JP 2015059667 A JP2015059667 A JP 2015059667A JP 2016181023 A JP2016181023 A JP 2016181023A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- resolution
- image
- super
- positional deviation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 3
- 238000006073 displacement reaction Methods 0.000 claims abstract description 25
- 238000000034 method Methods 0.000 claims description 109
- 238000001514 detection method Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 102220490364 S-adenosylhomocysteine hydrolase-like protein 1_S80A_mutation Human genes 0.000 description 5
- 102220518607 Repressor of RNA polymerase III transcription MAF1 homolog_S60A_mutation Human genes 0.000 description 4
- 102220490463 S-adenosylhomocysteine hydrolase-like protein 1_S62A_mutation Human genes 0.000 description 4
- 102220622101 Collagen alpha-1(XXII) chain_S72A_mutation Human genes 0.000 description 3
- 102220470447 Polycystin-2_S76A_mutation Human genes 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 102220471249 M-phase inducer phosphatase 1_S82A_mutation Human genes 0.000 description 1
- 102220490389 S-adenosylhomocysteine hydrolase-like protein 1_S64A_mutation Human genes 0.000 description 1
- 102220490405 S-adenosylhomocysteine hydrolase-like protein 1_S68A_mutation Human genes 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 102220039281 rs199473357 Human genes 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/01—Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Picture Signal Circuits (AREA)
- Image Analysis (AREA)
- Television Systems (AREA)
- Studio Devices (AREA)
Abstract
【課題】高速撮影では、被写体の位置ずれ量が個別の要因で大幅に変化するため、高画質の高解像度画像が得られないことがある。【解決手段】参照フレーム決定部60は、動画像から超解像処理に用いる所定枚数の参照フレームを選択する。超解像処理部30は、所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する。参照フレーム決定部60は、動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定する。【選択図】図1
Description
本発明は、画像処理技術に関し、特に画像の解像度を変換する技術に関する。
近年のデジタルカメラやビデオカメラには、60fpsを超えるフレームレートの高い高速撮影機能を有するものがある。高速のシャッタスピードで撮影することで、瞬間の動きを捉えたり、撮り逃したくないシーンを撮影するために用いられる。通常、このような高速撮影ではフレームを記憶するためのデータ量が膨大になるため、CMOS等の撮像素子の読み出しスピードやDDR−SDRAM等の記録媒体の書き込み速度の上限を考慮し、フレームレートが高いほど1フレーム当たりの解像度を小さくして記録される。
一方、液晶ディスプレイ等の表示装置は高解像度化が進んでおり、前述した高フレームレートで撮影した低解像度画像を表示させる場合、表示装置に合わせ拡大する必要があり、拡大した場合、ぼけた画像になりユーザーに不鮮明な印象を与えてしまう。
このような低解像度画像の拡大表示の時、鮮明な高画質の画像を提供する方法として、複数枚の低解像度画像を用いて高解像度画像を生成する超解像処理が知られている。超解像処理では、複数枚の低解像度画像の間に、ある程度の手ぶれや被写体の移動等による位置ずれがないと超解像処理で生成される高解像度画像において補間画素を生成することは難しい。そのため、フレームレートが高い画像の場合、高速撮影されるために被写体によっては位置ずれがほとんど存在しなくなり、超解像処理を行っても高画質の高解像度画像を生成することが難しい。
特許文献1では、フレームレートを検出し、フレームレートが高いほど、超解像処理に用いる動画像の参照フレームの枚数を多くするように決定する技術が開示されている。
高速撮影の特性上、撮影対象や撮影状況、撮影者の個人差など個別の要因に応じて被写体の位置ずれ量が大幅に変化するため、フレームレートのみに依存して超解像処理に用いる動画像のフレームの枚数を調整する方法では、高画質の高解像度画像が得られないことがある。
本発明はこうした状況に鑑みてなされたものであり、その目的は、高速撮影された画像を用いて高画質の高解像度画像を生成することのできる画像処理技術を提供することにある。
上記課題を解決するために、本発明のある態様の画像処理装置は、動画像をメモリに格納する画像入力部と、前記動画像から超解像処理に用いる所定枚数の参照フレームを選択する参照フレーム決定部と、前記所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する超解像処理部とを含む。前記参照フレーム決定部は、前記動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定する。
本発明の別の態様は、画像処理方法である。この方法は、動画像をメモリに格納する画像入力ステップと、前記動画像から超解像処理に用いる所定枚数の参照フレームを選択する参照フレーム決定ステップと、前記所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する超解像処理ステップとを含む。前記参照フレーム決定ステップは、前記動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定する。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、高速撮影された画像を用いて高画質の高解像度画像を生成することができる。
(実施例1)
図1は、本実施の形態に係る画像処理装置100の構成図である。画像処理装置100は、画像入力部10と、記憶部20と、超解像処理部30と、表示部40と、フレームレート検出部50と、参照フレーム決定部60とを含む。これらの構成は、ハードウェア、ソフトウェア、またはそれらの組合せにより実現される。
図1は、本実施の形態に係る画像処理装置100の構成図である。画像処理装置100は、画像入力部10と、記憶部20と、超解像処理部30と、表示部40と、フレームレート検出部50と、参照フレーム決定部60とを含む。これらの構成は、ハードウェア、ソフトウェア、またはそれらの組合せにより実現される。
画像入力部10は、カメラなどにより撮影された動画像を取得し、動画像の各フレームを記憶部20に格納する。
フレームレート検出部50は、記憶部20に格納された動画像のフレームレートを検出し、参照フレーム決定部60に与える。ここで、フレームレートとは動画像撮影時のシャッタスピード(言い換えればキャプチャスピード)により定義される値であり、再生時のフレームレートを指すものではない。
参照フレーム決定部60は、フレームレート検出部50から与えられたフレームレートにもとづいて超解像処理に用いる複数枚の参照フレームを決定する。参照フレーム決定部60は、記憶部20に格納された動画像のフレームの画素の位置ずれを検出し、位置ずれが所定量となるように参照フレームを選択する。
超解像処理部30は、参照フレーム決定部60により決定された動画像の複数の参照フレームを記憶部20から読み出し、各参照フレームに対して超解像処理を施し、参照フレームよりも解像度の高い高解像度画像を生成し、記憶部20に格納する。表示部40は、記憶部20に格納された高解像度画像を表示する。
超解像処理部30は、入力された各参照フレームに対して、再構成型の超解像処理を行い、高解像画像に変換する。具体的には、n回目の高解像度画像から点広がり関数を用いて推定低解像度画像を求め、推定低解像度画像と実際の撮影画像の誤差を逆投影関数を用いてn回目の高解像度画像に逆投影することにより(n+1)回目の高解像度画像に更新する。この処理を繰り返して高解像度画像を再構成する。
図2は、画像処理装置100による画像処理手順を示すフローチャートである。フローチャートを参照しながら、画像処理装置100の各構成の動作を説明する。
画像入力部10は、撮影された動画像を入力し、動画像の各フレームを記憶部20に格納する(ステップS100)。
図3は、画像入力部10により入力される動画像のフォーマットを説明する図である。横軸は時間を示す。動画像200には、通常フレームレートのフレーム群201、203と、高速撮影された高速フレームレートのフレーム群202とが混在する。
通常のフレームレートとは24fps、30fps、60fpsなど撮影装置が一般的に採用しているフレームレートである。高速フレームレートとは240fps、400fps、600fps、1200fpsなど高速のシャッタスピードで撮影されたフレームレートを指す。
通常フレームレートで撮影された画像の解像度と比較すると、高速フレームレートで撮影された画像の解像度はフレームレートに応じて解像度が低くなる。ユーザは、動画を再生し、任意のフレームで一時停止等の操作をして、何らかの処理(たとえば表示や編集)を行いたいフレームを指定する。ユーザーが任意のフレームで一時停止等の操作を行うと、それ以降の処理が開始する。
フレームレート検出部50は、ユーザによって指定されたフレームにおけるフレームレートを検出する(S110)。フレームレートの検出方法としては、例えば動画像の垂直同期信号を計測することでフレームレートを検出してもよく、あるいは、動画像に付加されたフレームレート情報からフレームレートを取得してもよい。
次に、参照フレーム決定部60は、検出されたフレームレートにもとづいてスタートフレームとエンドフレームを決定し、スタートフレームとエンドフレーム間で所定量の位置ずれがあるかどうかを調べる動き推定を行い、超解像処理で用いる参照フレームのフレーム間隔を決定する(S120)。ステップS120の参照フレーム決定処理の詳細は後述する。
超解像処理部30は、決定されたフレーム間隔にもとづいて動画像の複数の参照フレームを読み出し、各参照フレームに対して超解像処理を行い、高解像度画像を生成する(S130)。表示部40は、生成された高解像度画像を表示デバイスに表示する(S140)。これにより、ユーザが一時停止等の操作を行ったフレームが高解像度で表示デバイスに表示される。
図4A〜図4Cは、図2のステップS120の参照フレーム決定処理の詳細な手順を示すフローチャートである。
まず、図2のステップS110のフレームレート検出処理で検出されたフレームレートを取得する(S10)。この検出されたフレームレートは、ユーザによる指定フレームnのフレームレートである。指定フレームnと検出されたフレームレートから、後述する位置ずれ検出の際に用いるスタートフレームFsとエンドフレームFeの初期値を求める(S12)。スタートフレームFsとエンドフレームFeの初期値の間隔は、フレームレートに応じた値に設定される。
図5は、フレームレートに対応づけて、スタートフレームFsとエンドフレームFeの初期値の間隔を格納したテーブルを説明する図である。フレームレートが大きくなるほど1フレームごとの動きは小さくなるので、フレームレートに比例して、スタートフレームFsとエンドフレームFeの初期値の間隔を大きくする。たとえば、フレームレートが240fps、300fps、600fps、1200fpsとなるにつれ、スタートフレームFsとエンドフレームFeの初期値の間隔を2、3、4、5と増加させる。
図6(a)〜図6(c)は、ユーザによる指定フレームn、スタートフレームFs、おおよびエンドフレームFeの関係を説明する図である。動画像は通常フレームレートのフレーム群201、高速フレームレートのフレーム群202、通常フレームレートのフレーム群203がこの順で並んでいる。高速フレームレートのフレーム群202は、n_s番目のフレームから始まり、n_e番目のフレームで終わる。ユーザが指定したn番目の指定フレームは高速フレームレート群202のいずれかのフレームである。
一般に図6(a)に示すように、スタートフレームFsとエンドフレームFeは指定フレームnを挟む位置にある。スタートフレームFsとエンドフレームFeの初期値の間隔はこの例では2であるが、図5に示したようにフレームレートに応じて初期値の間隔は異なる。
ただし、ユーザの指定フレームnがフレームレートが変わる境界に位置する場合もある。図6(b)は、指定フレームnが、通常フレームレートから高速フレームレートに切り替わるフレーム(高速フレームレートのフレーム群202の最初のフレームn_s)である場合を示す。図6(c)は、指定フレームnが、高速フレームレートから通常フレームレートに切り替わるフレーム(高速フレームレートのフレーム群202の最後のフレームn_e)である場合を示す。
ステップS12で決定したスタートフレームFsとエンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S14、S16)。スタートフレームFsとエンドフレームFeのフレームレートが指定フレームnのフレームレートと一致する場合(S14のYesかつS16のYes)はステップS22に進み、位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S14のNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群にはなく、その前の通常フレームレートのフレーム群にある。この場合、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定され(S18)、その後、図4Bの処理ルーチンAに進む。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S16のNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群にはなく、その後の通常フレームレートのフレーム群にある。この場合、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定され(S20)、その後、図4Cの処理ルーチンBに進む。
これにより、図6(b)のように指定フレームnが高速フレームレートのフレーム群の最初のフレームn_sである場合、スタートフレームFsは最初のフレームn_sに設定される。また、図6(b)のように指定フレームnが高速フレームレートのフレーム群の最後のフレームn_eである場合、エンドフレームFeは最後のフレームn_eに設定される。
スタートフレームFsとエンドフレームFeの位置ずれ検出を行う(S22)。位置ずれ検出方法としては、たとえば、カメラの動き推定等で用いられる既知の代表点マッチング法や位相限定相関法などを用いてフレーム間での画像全体の位置ずれ量を推定する方法がある。位置ずれ検出はサブ画素単位で行う。
次に、検出された位置ずれ量が水平方向、垂直方向にそれぞれ1画素以上であるかどうかを判定する(S24)。位置ずれ量が1画素未満である場合(S24のNo)、指定フレームnとスタートフレームFsのフレーム番号の絶対差分|n−Fs|と、指定フレームとエンドフレームFeのフレーム番号の絶対差分|n−Fe|とを求めて比較する(S26)。
|n−Fs|≧|n−Fe|の場合(S26のYes)、エンドフレームFeのフレーム番号を所定フレーム数αだけ加算して更新する(S28)。|n−Fs|<|n−Fe|の場合(S26のNo)、スタートフレームFsのフレーム番号を所定フレーム数αだけ減算して更新する(S30)。所定フレーム数αは変数であるが、αは1でもよく、検出したフレームレートによって変更してもよい。
所定フレーム数αだけ更新した後のスタートフレームFs、エンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S32、S34)。スタートフレームFs、エンドフレームFeのフレームレートが指定フレームnのフレームレートに一致する場合(S32のYes、S34のYes)、ステップS22に進み、位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S32のNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定され(S36)、その後、図4Bの処理ルーチンAに進む。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S34のNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定され(S38)、その後、図4Cの処理ルーチンBに進む。
ステップS24で位置ずれ量が1画素以上である場合(S24のYes)、位置ずれ量が閾値以下であるかどうかを判定する(S40)。この閾値は任意であるが、位置ずれ量が大きすぎる場合、後述する超解像処理の位置推定の際、誤検出する可能性が高くなるため、閾値を例えば2画素など小さい値に設定することが好ましい。
位置ずれ量が閾値以下である場合(S40のYes)、ステップS52に進み、スタートフレームFsとエンドフレームFeからフレーム間隔Fdを計算する。フレーム間隔Fdは、超解像処理で用いる複数の参照フレームを動画像から選択する際のフレーム間隔である。ステップS52のフレーム間隔の計算方法については後述する。
位置ずれ量が閾値より大きい場合(S40のNo)、指定フレームnとスタートフレームFsのフレーム番号の絶対差分|n−Fs|と、指定フレームとエンドフレームFeのフレーム番号の絶対差分|n−Fe|とを求めて比較する(S42)。
|n−Fs|>|n−Fe|の場合(S42のYes)、スタートフレームFsのフレーム番号を1だけ加算して更新する(S44)。|n−Fs|≦|n−Fe|の場合(S42のNo)、エンドフレームFeのフレーム番号を1だけ減算して更新する(S46)。
更新後、スタートフレームFsとエンドフレームFeのフレーム番号の絶対差分|Fs−Fe|がN−1以下になるかどうか判定し(S48)、|Fs−Fe|≦N−1の場合(S48のYes)、ステップS52に進み、フレーム間隔を計算する。|Fs−Fe|>N−1の場合(S48のNo)、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S50)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S50のYes)、ステップS52に進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S50のNo)、ステップS22に戻り、更新されたスタートフレームFsとエンドフレームFeの組合せについて位置ずれ検出を行う。
ステップS52において、スタートフレームFsとエンドフレームFeから次式によりフレーム間隔Fdを計算する。
Fd=|Fe−Fs|/(N−1)
Fd=|Fe−Fs|/(N−1)
ここでNは利用する参照フレームの枚数である。参照フレームの枚数はフレームレートごとにあらかじめ指定しておき、検出されたフレームレートに応じて参照フレームの枚数を決定してもよい。一般にフレームレートが高いほど画像の解像度が低い。フレームレートが高いほど参照フレームの枚数を多くすることで低解像度の参照フレームから生成される高解像度画像の品質を高めることができる。あるいは、ディスプレイに出力する画像の解像度と現在のフレームレートの解像度から拡大倍率を求め、その倍率をもとに参照フレームの枚数を決定してもよい。倍率が大きいほど参照フレームの枚数を増やすことでディスプレイの高解像度に合わせて高画質の高解像度画像を生成することができる。
このようにして求めたFdが1より小さい場合、Fd=1とする。Fdが1より小さい場合は、スタートフレームFsとエンドフレームFeとの間のフレーム枚数が参照フレームNの枚数より少ないことを示している。この場合、例えば、指定した参照フレーム枚数Nより少ないことをユーザに通知し、参照フレームNを更新して続けるか処理をやめるか入力させるようにしてもよい。もしくは自動的に、参照フレーム枚数Nを更新するようにしてもよい。更新する際には参照フレームNを絶対差分|Fs-Fe|に更新する。最後に、求めたフレーム間隔Fdから後述する超解像処理で利用するN枚の参照フレームを決定する(S54)。
図7(a)および図7(b)は、フレーム間隔Fdにもとづいて決定される参照フレームを説明する図である。
図7(a)は、n番目の指定フレームに対して、参照フレーム決定処理によって最終的にスタートフレームFsは(n−8)番目、エンドフレームFeは(n+8)番目となった場合を示す。参照フレームの枚数Nが9である場合、フレーム間隔Fdは|Fe−Fs|/(N−1)=16/8=2である。図7(a)に示すように、スタートフレームFsから始めてフレーム間隔を2枚ずつ空けながら参照フレームを選択する。このとき、指定フレームnは必ず参照フレームとして選択する。
図7(b)は、n番目の指定フレームに対して、参照フレーム決定処理によって最終的にスタートフレームFsは(n−6)番目、エンドフレームFeは(n+6)番目となった場合を示す。参照フレームの枚数Nが9である場合、フレーム間隔Fdは|Fe−Fs|/(N−1)=12/8=1.5である。図7(b)に示すように、スタートフレームFsから始めて3枚毎に2枚の割合で参照フレームを選択する。このとき、指定フレームnは必ず参照フレームとして選択する。
図4Bは、図4Aの処理ルーチンAの手順を示すフローチャートである。処理ルーチンAは、図4AのステップS18またはステップS36において、スタートフレームFsが、指定フレームnの属する高速フレームレートのフレーム群の最初のフレームn_sに設定された場合に呼び出される位置ずれ検出ルーチンである。処理ルーチンAでは、スタートフレームFsを最初のフレームn_sに固定したまま、エンドフレームFeを前後に動かして所定の位置ずれ量となるように調整する。
最初のフレームn_sに固定されたスタートフレームFsと、エンドフレームFeとの間で位置ずれ検出を行う(S60A)。検出された位置ずれ量が水平方向、垂直方向にそれぞれ1画素以上であるかどうかを判定する(S62A)。位置ずれ量が1画素未満である場合(S62AのNo)、エンドフレームFeのフレーム番号を所定フレーム数αだけ加算して更新する(S64A)。
所定フレーム数αだけ更新した後のエンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S66A)。エンドフレームFeのフレームレートが指定フレームnのフレームレートに一致する場合(S66AのYes)、ステップS60Aに進み、位置ずれ検出を行う。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S66AのNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定される(S68A)。次に、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S70A)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S70AのYes)、ステップS80Aに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S70AのNo)、ステップS60Aに戻り、スタートフレームFsとエンドフレームFeの組合せについて位置ずれ検出を行う。
ステップS62Aで位置ずれ量が1画素以上である場合(S62AのYes)、位置ずれ量が閾値以下であるかどうかを判定する(S72A)。位置ずれ量が閾値以下である場合(S72AのYes)、ステップS80Aに進み、スタートフレームFsとエンドフレームFeからフレーム間隔Fdを計算する。
位置ずれ量が閾値より大きい場合(S72AのNo)、エンドフレームFeのフレーム番号を1だけ減算して更新する(S74A)。更新後、スタートフレームFsとエンドフレームFeのフレーム番号の絶対差分|Fs−Fe|がN−1以下になるかどうか判定し(S76A)、|Fs−Fe|≦N−1の場合(S76AのYes)、ステップS80Aに進み、フレーム間隔を計算する。|Fs−Fe|>N−1の場合(S76AのNo)、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S78A)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S78AのYes)、ステップS80Aに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S78AのNo)、ステップS60Aに戻り、更新されたスタートフレームFsとエンドフレームFeの組合せについて位置ずれ検出を行う。
ステップS80Aにおいて、スタートフレームFsとエンドフレームFeからフレーム間隔Fd=|Fe−Fs|/(N−1)を計算する。求めたフレーム間隔FdからN枚の参照フレームを決定する(S82A)。
図4Cは、図4Aの処理ルーチンBの手順を示すフローチャートである。処理ルーチンBは、図4AのステップS20またはステップS38において、エンドフレームFeが、指定フレームnの属する高速フレームレートのフレーム群の最後のフレームn_eに設定された場合に呼び出される位置ずれ検出ルーチンである。処理ルーチンBでは、エンドフレームFeを最後のフレームn_eに固定したまま、スタートフレームFsを前後に動かして所定の位置ずれ量となるように調整する。
スタートフレームFsと、最後のフレームn_eに固定されたエンドフレームFeとの間で位置ずれ検出を行う(S60B)。検出された位置ずれ量が水平方向、垂直方向にそれぞれ1画素以上であるかどうかを判定する(S62B)。位置ずれ量が1画素未満である場合(S62BのNo)、スタートフレームFsのフレーム番号を所定フレーム数αだけ減算して更新する(S64B)。
所定フレーム数αだけ更新した後のスタートフレームFsが指定フレームnと同じフレームレートであるかどうかを判定する(S66B)。スタートフレームFsのフレームレートが指定フレームnのフレームレートに一致する場合(S66BのYes)、ステップS60Bに進み、位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S66BのNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定される(S68B)。次に、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S70B)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S70BのYes)、ステップS80Bに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S70BのNo)、ステップS60Bに戻り、スタートフレームFsとエンドフレームFeの組合せについて位置ずれ検出を行う。
ステップS62Bで位置ずれ量が1画素以上である場合(S62BのYes)、位置ずれ量が閾値以下であるかどうかを判定する(S72B)。位置ずれ量が閾値以下である場合(S72BのYes)、ステップS80Bに進み、スタートフレームFsとエンドフレームFeからフレーム間隔Fdを計算する。
位置ずれ量が閾値より大きい場合(S72BのNo)、スタートフレームFsのフレーム番号を1だけ加算して更新する(S74B)。更新後、スタートフレームFsとエンドフレームFeのフレーム番号の絶対差分|Fs−Fe|がN−1以下になるかどうか判定し(S76B)、|Fs−Fe|≦N−1の場合(S76BのYes)、ステップS80Bに進み、フレーム間隔を計算する。|Fs−Fe|>N−1の場合(S76BのNo)、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S78B)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S78BのYes)、ステップS80Bに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S78BのNo)、ステップS60Bに戻り、更新されたスタートフレームFsとエンドフレームFeの組合せについて位置ずれ検出を行う。
ステップS80Bにおいて、スタートフレームFsとエンドフレームFeからフレーム間隔Fd=|Fe−Fs|/(N−1)を計算する。求めたフレーム間隔FdからN枚の参照フレームを決定する(S82B)。
図8は、図2のステップS130の超解像処理の詳細な手順を示すフローチャートである。超解像処理にはいくつかの方法があるが、ここでは反復逆投影(IBP(Iterative Backward Projection))法を説明する。
まず、図2のステップS110のフレームレート検出処理で検出したフレームレートにもとづいて、IBP法で用いられる点拡がり関数PSF、バックプロジェクション(逆投影)関数BP、画像を拡大する倍率rを決定する(S200)。一般に倍率に応じてPSFとBPを選択する必要があり、高速撮影時はフレームレートに応じて撮影可能な解像度が決まるので、フレームレートにもとづいて点拡がり関数PSF,バックプロジェクション関数BPを決定することになる。点拡がり関数PSFおよびバックプロジェクション関数BPは撮影したビデオカメラから事前に取得しておくか、あらかじめ記録していたものを利用してもよい。
ここで倍率rは、出力先の映像表示装置の解像度等の指定された出力解像度と、動画像のフレームレートに応じて決まる解像度との比から求められる。あるいは、倍率rは、通常フレームレートの画像の解像度と、高速フレームレートの画像の解像度との比から求めてもよい。この場合、画像の解像度がフレームレートと比例関係にあるなら、倍率rは、通常フレームレートと高速フレームレートとの比から求めることができる。
次に、図2のステップS120の参照フレーム決定処理で選択された複数の参照フレーム(ユーザーによる指定フレームnを含む)に対して、サブ画素単位の位置ずれ推定を行う(S210)。位置ずれ推定方法としては、カメラの動き推定等で用いられる既知の代表点マッチング法や位相限定相関法などを用いてカメラの動きによる位置ずれを推定する。このとき、ステップS120の参照フレーム決定処理ですでに行った位置ずれ推定の結果を用いてもよい。
また、高速撮影の場合、一般的にはカメラの動き量は小さくなるため、微小な時間の動きは等速直線運動と仮定することができる。この場合、ステップS120の参照フレーム決定処理で最後に行ったスタートフレームFs、エンドフレームFeの間の位置ずれ推定量を、参照フレーム決定処理で選択されたN枚の参照フレームの間で均等割りにして各参照フレームの位置ずれ推定量としてもよい。たとえば、閾値以上のフレームレートの場合に、等速直線運動と仮定して、上記の均等割りの計算を行う。これにより、位置ずれ推定を簡略化して高速に超解像度処理を実行することができる。
たとえば、図7(a)の場合、指定フレームnに対してスタートフレームFs=n−8、エンドフレームFe=n+8であり、スタートフレームFsとエンドフレームFeの絶対差は16である。スタートフレームFsとエンドフレームFeの位置ずれ量が水平方向、垂直方向ともに1画素だった場合、位置ずれ量は1フレーム当たり1/16=0.0625である。参照フレーム決定ステップで選択された9枚の参照フレームと指定フレームnのフレーム番号の差は左から−8,−6,−4,−2,0,2,4,6,8である。等速直線運動を仮定すると、指定フレームnの位置ずれ量を(0,0)として、それぞれのフレーム番号の差に1フレーム当たりの位置ずれ量0.0625を乗算することにより、各参照フレームの位置ずれ量は、(−0.5,−0.5),(−0.375,−0.375),(−0.25,−0.25),(−0.125,−0.125),(0,0),(0.125,0.125),(0.25,0.25),(0.375,0.375),(0.5,0.5)となる。
続いてIBP法による超解像処理により初期高解像度画像を生成する(S220)。IBP法では、推定した高解像度画像を点拡がり関数PSFを用いて撮影画像の解像度に合うように縮小して推定低解像度画像を生成する。生成した推定低解像度画像と実際の撮影画像との差分をとり、その誤差をバックプロジェクション関数BPを作用させた上で推定した高解像度画像に足し込む反復処理により高解像度画像を更新する。誤差が収束するまで反復処理を繰り返すことで最終的な高解像度画像が生成される。反復処理を開始するためには、高解像度画像の初期値が必要となるが、これにユーザによる指定フレームを拡大して利用することができる。ただし、初期値の高解像度画像はどのような画像でもよく、初期値として高解像度画像を与える方法はこれに限られない。その後IBP法により、高解像画像への拡大処理を行う(S230)。
図9は、図8のステップS230の反復逆投影法の詳細な手順を示すフローチャートである。まず、図8のステップS220で作成した初期高解像度画像を入力し、最初の推定高解像度画像f0とする(S300)。繰り返し回数iを0に初期化する(S302)。
参照フレームの枚数nを0に初期化する(S304)。参照フレームの枚数が指定した枚数Nに達したかどうかを判定する(S306)。参照フレームの枚数が指定した枚数Nに達していない場合(S306のNo)、図8のステップS210の参照フレームの位置ずれ推定処理で決定された参照フレームnの位置ズレ推定量dnにもとづいて推定高解像度画像fの画素をシフトする(S308)。このとき、ステップS210で求めた位置ずれ量は低解像度画像での位置ずれ量であるため、拡大倍率を乗算して高解像度画像での位置ずれ量に変換した上で使用する。
画素シフトした推定高解像度画像に対し、点広がり関数PSFをコンボリューション(畳み込み積分)する(S310)。ここで用いるPSFは図8のステップS200でフレームレートにもとづいて選択したPSFを用いる。
撮影画像の解像度になるようにダウンサンプリングを行い、推定低解像度画像を作成する(S312)。推定低解像度画像と実際の撮影画像である参照フレームnとの差分を計算し差分低解像度画像を作成する(S314)。差分低解像度画像に対し、アップサンプリングを行い差分高解像度画像を生成する(S316)。アップサンプリングした差分高解像度画像に対してバックプロジェクション関数BPをコンボリューションする(S318)。ここで用いるBPは図8のステップS200でフレームレートにもとづいて選択したBPを用いる。BPとコンボリューションした差分高解像度画像に対して、位置ずれ量にもとづいて最初のシフト方向とは反対方向にシフトを行う(S320)。ここまでの処理が終わったら、参照フレームの枚数nを1だけ増やし(S322)、ステップS306に進み、処理した参照フレームの枚数nがNになるまで、同じ処理を繰り返す。
ステップS306において、参照フレームの枚数が指定した枚数Nに達した場合(S306のYes)、ステップS320で逆方向にシフトされた差分高解像度画像を推定高解像度画像に加算して推定高解像度画像を更新する(S324)。次に、終了条件に達したかどうかを判定する(S326)。終了条件は、例えば指定した繰り返し回数に達したかどうか、各差分低解像度画像の平均値が閾値以下になったかどうか等の条件を設定する。終了条件を満たさない場合(S326のNo)、繰り返し回数iを1だけ増やし(S328)、ステップS304に戻り、それ以降の処理を繰り返す。終了条件を満たす場合(S326のYes)、反復逆投影法の処理を終了し、生成された推定高解像度画像を最終的な高解像度画像として出力する。
以上より、図8のステップS230のIBP法による画像拡大処理が終了し、高解像度画像が出力され、超解像処理が終了する。
図2のステップS130の超解像処理により得られた高解像度画像は、ステップS140の画像出力処理においてディスプレイなどに出力されて表示される。これにより、高速撮影時でも被写体や撮影状況、撮影者の個人差によらずに、指定されたフレームから高画質の高解像度画像を出力することが可能となる。
以上述べたように、実施例1によれば、超解像処理で用いる複数の参照フレームを選択する際、所定の位置ずれ量になるように参照フレームのフレーム間隔を決定することにより、高画質の高解像画像を生成することができる。高速フレームレートを用いた撮影はいろいろな状況下で行われる。高速に移動する被写体を撮影する場合もあれば、低速の被写体のある決定的な瞬間を撮影するために高速撮影することもある。また、撮影者によって手ぶれ等に個人差がある。被写体の違い、撮影状況の違い、撮影者の手ぶれなどの個人差などにより、動き量は大幅に変化する。フレームレートのみに依存せずに、参照フレームのフレーム間隔を位置ずれ量にもとづいて適切に決定することで、いかなる撮影状態でも高画質の高解像度画像を生成することができる。
(実施例2)
実施例1では、画像全体の位置ずれ量を推定して、超解像処理に用いる参照フレームのフレーム間隔Fdを決定した。しかしながら、高速撮影時に、図10(a)のようにカメラの手ぶれで位置ずれ量が水平方向、垂直方向にそれぞれ1画素ずれるのに30フレームかかる場合もあれば、図10(b)のように、動きのある被写体300が数フレームのうちに高速に動く場合もある。後者の場合、手ぶれ等のカメラの動きから位置ずれ量を推定するよりも、動きのある被写体300の動きを推定した方がよい。そこで、実施例2では、被写体の動きに注目してフレーム間隔Fdを決定する方法を説明する。実施例1と共通する構成と動作については適宜説明を省略する。
実施例1では、画像全体の位置ずれ量を推定して、超解像処理に用いる参照フレームのフレーム間隔Fdを決定した。しかしながら、高速撮影時に、図10(a)のようにカメラの手ぶれで位置ずれ量が水平方向、垂直方向にそれぞれ1画素ずれるのに30フレームかかる場合もあれば、図10(b)のように、動きのある被写体300が数フレームのうちに高速に動く場合もある。後者の場合、手ぶれ等のカメラの動きから位置ずれ量を推定するよりも、動きのある被写体300の動きを推定した方がよい。そこで、実施例2では、被写体の動きに注目してフレーム間隔Fdを決定する方法を説明する。実施例1と共通する構成と動作については適宜説明を省略する。
図11A〜図11Cは、実施例2の場合の図2のステップS120の参照フレーム決定処理の詳細な手順を示すフローチャートである。実施例2では、実施例1とは違って、ブロック毎に位置ずれ検出を行う。
図2のステップS110のフレームレート検出処理で検出されたフレームレートを取得する(S400)。指定フレームnと検出されたフレームレートからスタートフレームFsとエンドフレームFeの初期値を求める(S402)。
ステップS402で決定したスタートフレームFsとエンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S404、S406)。スタートフレームFsとエンドフレームFeのフレームレートが指定フレームnのフレームレートと一致する場合(S404のYesかつS406のYes)はステップS412に進み、ブロック毎の位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S404のNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定され(S408)、その後、図11Bの処理ルーチンAに進む。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S406のNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定され(S410)、その後、図11Cの処理ルーチンBに進む。
スタートフレームFsとエンドフレームFeの間でブロックマッチングによりブロック毎の位置ずれ検出を行う(S412)。フレーム画像を例えば8×8のブロックに分割し、ブロック毎に動きベクトルを検出する。各ブロックの動きベクトルを参照して、例えば水平方向、垂直方向に1画素以上、位置ずれが起きているかどうかを判定する。
次に、1画素以上ずれたブロックの数が閾値以上であるかどうかを判定する(SS414)。閾値は例えば5ブロックに設定する。高速撮影時はフレームレートに応じて撮影可能な解像度が決まるため、この閾値をフレームレートに応じて増減してもよい。あるいは、フレームの総ブロック数をフレームレートを参考にあらかじめ計算しておき、位置ずれ量が水平方向、垂直方向にそれぞれ1画素以上動いているブロックの割合が閾値以上であるかどうかを判定してもよい。
1画素以上ずれたブロックの数が閾値未満である場合(SS414のNo)、指定フレームnとスタートフレームFsのフレーム番号の絶対差分|n−Fs|と、指定フレームとエンドフレームFeのフレーム番号の絶対差分|n−Fe|とを求めて比較する(SS416)。
|n−Fs|≧|n−Fe|の場合(S416のYes)、エンドフレームFeのフレーム番号を所定フレーム数αだけ加算して更新する(SS418)。|n−Fs|<|n−Fe|の場合(S416のNo)、スタートフレームFsのフレーム番号を所定フレーム数αだけ減算して更新する(S420)。
所定フレーム数αだけ更新した後のスタートフレームFs、エンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S422、S424)。スタートフレームFs、エンドフレームFeのフレームレートが指定フレームnのフレームレートに一致する場合(S422のYes、S424のYes)、ステップS412に進み、ブロック毎の位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S422のNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定され(S426)、その後、図11Bの処理ルーチンAに進む。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S424のNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定され(S428)、その後、図11Cの処理ルーチンBに進む。
1画素以上ずれたブロックの数が閾値以上である場合(S414のYes)、ステップS430に進み、スタートフレームFsとエンドフレームFeからフレーム間隔Fd=|Fe−Fs|/(N−1)を計算する。最後に、求めたフレーム間隔Fdから超解像処理で利用するN枚の参照フレームを決定する(S432)。
図11Bは、図11Aの処理ルーチンAの手順を示すフローチャートである。処理ルーチンAは、図11AのステップS408またはステップS426において、スタートフレームFsが、指定フレームnの属する高速フレームレートのフレーム群の最初のフレームn_sに設定された場合に呼び出される位置ずれ検出ルーチンである。
最初のフレームn_sに固定されたスタートフレームFsと、エンドフレームFeとの間でブロック毎の位置ずれ検出を行う(S440A)。1画素以上ずれたブロックの数が閾値以上であるかどうかを判定する(S442A)。1画素以上ずれたブロックの数が閾値未満である場合(S442AのNo)、エンドフレームFeのフレーム番号を所定フレーム数αだけ加算して更新する(S444A)。
所定フレーム数αだけ更新した後のエンドフレームFeが指定フレームnと同じフレームレートであるかどうかを判定する(S446A)。エンドフレームFeのフレームレートが指定フレームnのフレームレートに一致する場合(S446AのYes)、ステップS440Aに進み、ブロック毎の位置ずれ検出を行う。
エンドフレームFeのフレームレートが指定フレームnのフレームレートと異なる場合(S446AのNo)、エンドフレームFeは、指定フレームnが属する高速フレームレートのフレーム群の最後のフレームn_eに設定される(S448A)。次に、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S450A)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S450AのYes)、ステップS452Aに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S450AのNo)、ステップS440Aに戻り、スタートフレームFsとエンドフレームFeの組合せについてブロック毎の位置ずれ検出を行う。
ステップS442Aで1画素以上ずれたブロックの数が閾値以上である場合(S442AのYes)、スタートフレームFsとエンドフレームFeからフレーム間隔Fd=|Fe−Fs|/(N−1)を計算する(S452A)。求めたフレーム間隔FdからN枚の参照フレームを決定する(S454A)。
図11Cは、図11Aの処理ルーチンBの手順を示すフローチャートである。処理ルーチンAは、図11AのステップS410またはステップS428において、エンドフレームFeが、指定フレームnの属する高速フレームレートのフレーム群の最後のフレームn_eに設定された場合に呼び出される位置ずれ検出ルーチンである。
スタートフレームFsと、最後のフレームn_eに固定されたエンドフレームFeとの間でブロック毎の位置ずれ検出を行う(S440B)。1画素以上ずれたブロックの数が閾値以上であるかどうかを判定する(S442B)。1画素以上ずれたブロックの数が閾値未満である場合(S442BのNo)、スタートフレームFsのフレーム番号を所定フレーム数αだけ減算して更新する(S444B)。
所定フレーム数αだけ更新した後のスタートフレームFsが指定フレームnと同じフレームレートであるかどうかを判定する(S446B)。スタートフレームFsのフレームレートが指定フレームnのフレームレートに一致する場合(S446BのYes)、ステップS440Bに進み、ブロック毎の位置ずれ検出を行う。
スタートフレームFsのフレームレートが指定フレームnのフレームレートと異なる場合(S446BのNo)、スタートフレームFsは、指定フレームnが属する高速フレームレートのフレーム群の最初のフレームn_sに設定される(S448B)。次に、スタートフレームFsとエンドフレームFeの組合せについて既に位置ずれ検出を行ったかどうかを判定する(S450B)。スタートフレームFsとエンドフレームFeの組合せが既出である場合(S450BのYes)、ステップS452Bに進み、フレーム間隔を計算する。スタートフレームFsとエンドフレームFeの組合せが既出でない場合(S450BのNo)、ステップS440Bに戻り、スタートフレームFsとエンドフレームFeの組合せについてブロック毎の位置ずれ検出を行う。
ステップS442Bで1画素以上ずれたブロックの数が閾値以上である場合(S442BのYes)、スタートフレームFsとエンドフレームFeからフレーム間隔Fd=|Fe−Fs|/(N−1)を計算する(S452B)。求めたフレーム間隔FdからN枚の参照フレームを決定する(S454B)。
実施例2では、高速に動く被写体を含む動画像の場合、ブロック単位で位置ずれを検出することで超解像処理に用いる複数の参照フレームのフレーム間隔を適切に決定して高画質の高解像度画像を生成することができる。
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
上記の説明では、再構成型超解像処理を利用した実施例を説明したが、超解像処理は再構成型方式以外に学習型方式など他の方式を用いてもよい。
10 画像入力部、 20 記憶部、 30 超解像処理部、 40 表示部、 50 フレームレート検出部、 60 参照フレーム決定部。
Claims (7)
- 動画像をメモリに格納する画像入力部と、
前記動画像から超解像処理に用いる所定枚数の参照フレームを選択する参照フレーム決定部と、
前記所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する超解像処理部とを含み、
前記参照フレーム決定部は、前記動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定することを特徴とする画像処理装置。 - 前記参照フレーム決定部は、前記動画像の第1フレームと第2フレームの間の位置ずれ度合いを示す値が第1閾値以上で第2閾値以下になるように前記第1フレームと前記第2フレームのフレーム間隔を決定し、前記第1フレームから前記第2フレームまでのフレームの中から、前記所定枚数の参照フレームを選択することを特徴とする請求項1に記載の画像処理装置。
- 前記位置ずれ度合いを示す値は、フレーム全体の画素の位置ずれ量であることを特徴とする請求項1または2に記載の画像処理装置。
- 前記位置ずれ度合いを示す値は、フレームを分割したブロック毎の画素の位置ずれ量であり、
前記参照フレーム決定部は、前記動画像の第1フレームと第2フレームの間で画素の位置ずれ量が所定の画素数以上であるブロックの個数が所定の閾値以上になるように前記第1フレームと前記第2フレームを決定し、前記第1フレームから前記第2フレームまでのフレームの中から、前記所定枚数の参照フレームを選択することを特徴とする請求項1に記載の画像処理装置。 - 前記超解像処理部は、等速直線運動を仮定して、前記第1フレームと前記第2フレームの間の位置ずれ度合いを示す値を均等割りすることにより、参照フレーム間の位置ずれ度合いを示す値を求めることを特徴とする請求項2または4に記載の画像処理装置。
- 動画像をメモリに格納する画像入力ステップと、
前記動画像から超解像処理に用いる所定枚数の参照フレームを選択する参照フレーム決定ステップと、
前記所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する超解像処理ステップとを含み、
前記参照フレーム決定ステップは、前記動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定することを特徴とする画像処理方法。 - 動画像をメモリに格納する画像入力ステップと、
前記動画像から超解像処理に用いる所定枚数の参照フレームを選択する参照フレーム決定ステップと、
前記所定枚数の参照フレームに対して超解像処理を施すことにより、参照フレームよりも解像度の高い高解像度画像を生成する超解像処理ステップとをコンピュータに実行させ、
前記参照フレーム決定ステップは、前記動画像のフレームにおける画素の位置ずれ度合いを示す値にもとづいて、選択すべき参照フレームのフレーム間隔を決定することを特徴とする画像処理プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015059667A JP2016181023A (ja) | 2015-03-23 | 2015-03-23 | 画像処理装置、画像処理方法及び画像処理プログラム |
PCT/JP2016/055165 WO2016152358A1 (ja) | 2015-03-23 | 2016-02-23 | 画像処理装置、画像処理方法及び画像処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015059667A JP2016181023A (ja) | 2015-03-23 | 2015-03-23 | 画像処理装置、画像処理方法及び画像処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016181023A true JP2016181023A (ja) | 2016-10-13 |
Family
ID=56977269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015059667A Pending JP2016181023A (ja) | 2015-03-23 | 2015-03-23 | 画像処理装置、画像処理方法及び画像処理プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2016181023A (ja) |
WO (1) | WO2016152358A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6406608B1 (ja) * | 2017-07-21 | 2018-10-17 | 株式会社コンフォートビジョン研究所 | 撮像装置 |
US10491815B2 (en) | 2017-11-10 | 2019-11-26 | Olympus Corporation | Image-processing apparatus, image-processing method, and non-transitory computer readable medium storing image-processing program |
US11445109B2 (en) | 2017-07-05 | 2022-09-13 | Olympus Corporation | Image processing device, image capturing device, image processing method, and storage medium |
US11882247B2 (en) | 2019-12-04 | 2024-01-23 | Olympus Corporation | Image acquisition apparatus and camera body |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4886888B2 (ja) * | 2009-12-01 | 2012-02-29 | キヤノン株式会社 | 画像処理装置及びその制御方法 |
-
2015
- 2015-03-23 JP JP2015059667A patent/JP2016181023A/ja active Pending
-
2016
- 2016-02-23 WO PCT/JP2016/055165 patent/WO2016152358A1/ja active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11445109B2 (en) | 2017-07-05 | 2022-09-13 | Olympus Corporation | Image processing device, image capturing device, image processing method, and storage medium |
JP6406608B1 (ja) * | 2017-07-21 | 2018-10-17 | 株式会社コンフォートビジョン研究所 | 撮像装置 |
US10491815B2 (en) | 2017-11-10 | 2019-11-26 | Olympus Corporation | Image-processing apparatus, image-processing method, and non-transitory computer readable medium storing image-processing program |
US11882247B2 (en) | 2019-12-04 | 2024-01-23 | Olympus Corporation | Image acquisition apparatus and camera body |
Also Published As
Publication number | Publication date |
---|---|
WO2016152358A1 (ja) | 2016-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5531194B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
US8072511B2 (en) | Noise reduction processing apparatus, noise reduction processing method, and image sensing apparatus | |
JP4218022B2 (ja) | 合成画像を生成する方法 | |
JP2009194896A (ja) | 画像処理装置及び方法並びに撮像装置 | |
JP2006203463A (ja) | 画像表示方法、画像撮像方法、及び画像合成方法 | |
WO2016152358A1 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP2007243335A (ja) | 手振れ補正方法、手振れ補正装置および撮像装置 | |
JP2009111596A (ja) | 撮像装置 | |
JP5212046B2 (ja) | デジタルカメラおよび画像処理装置並びに画像処理プログラム | |
KR20210128203A (ko) | 볼륨메트릭 3d 동영상 제공 시스템 및 방법 | |
JP6282133B2 (ja) | 撮像装置、その制御方法、および制御プログラム | |
JP5424068B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム及び記憶媒体 | |
JP6532328B2 (ja) | 画像処理装置、その制御方法、および制御プログラム | |
JP2015061236A (ja) | 画像処理装置、画像処理方法及びプログラム | |
JP2010081460A (ja) | 撮像装置及び画像生成方法 | |
JP2018033080A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP2013084124A (ja) | 撮像システム、撮像装置および画像処理方法 | |
JP2019144827A (ja) | 画像処理装置およびその制御方法ならびにプログラム | |
JP2013126123A (ja) | 画像処理装置、撮像装置及び画像処理方法 | |
US20140078161A1 (en) | Image processing device for scrolling display of an image | |
JP2014236244A (ja) | 画像処理装置、画像処理プログラム、およびデジタルカメラ | |
JP5401696B2 (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JP6708490B2 (ja) | 画像処理方法および画像処理装置 | |
JP2018174461A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP6878091B2 (ja) | 画像処理装置、画像処理方法、及びプログラム |