JP2019207611A - 画像処理装置、画像処理プログラム、画像処理方法 - Google Patents
画像処理装置、画像処理プログラム、画像処理方法 Download PDFInfo
- Publication number
- JP2019207611A JP2019207611A JP2018103388A JP2018103388A JP2019207611A JP 2019207611 A JP2019207611 A JP 2019207611A JP 2018103388 A JP2018103388 A JP 2018103388A JP 2018103388 A JP2018103388 A JP 2018103388A JP 2019207611 A JP2019207611 A JP 2019207611A
- Authority
- JP
- Japan
- Prior art keywords
- evaluation
- value
- region
- filling rate
- motion vector
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 86
- 238000003672 processing method Methods 0.000 title claims description 9
- 238000011156 evaluation Methods 0.000 claims abstract description 693
- 238000000605 extraction Methods 0.000 claims abstract description 99
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 63
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 63
- 239000013598 vector Substances 0.000 claims description 177
- 238000000034 method Methods 0.000 claims description 66
- 230000008569 process Effects 0.000 claims description 56
- 239000002131 composite material Substances 0.000 claims description 44
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 28
- 238000012790 confirmation Methods 0.000 description 20
- 238000003384 imaging method Methods 0.000 description 15
- 238000012854 evaluation process Methods 0.000 description 10
- 239000000203 mixture Substances 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 239000000470 constituent Substances 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010187 selection method Methods 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
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- 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
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
- G06T3/4069—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution by subpixel displacements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/223—Analysis of motion using block-matching
- G06T7/238—Analysis of motion using block-matching using non-full search, e.g. three-step search
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/95—Computational photography systems, e.g. light-field imaging systems
- H04N23/951—Computational photography systems, e.g. light-field imaging systems by using two or more images to influence resolution, frame rate or aspect ratio
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30168—Image quality inspection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Image Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
【課題】合成画像の合成精度を適切に確認することができる画像処理装置等を提供する。【解決手段】複数の画像から解像度の高い合成画像を生成する画素ずらし超解像画像生成部2と、合成画像の領域抽出範囲内に複数の評価領域を設定する評価領域設定部3と、評価領域の画素充填率を複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価部4と、複数の画素充填率評価値に基づいて複数の評価領域の中から決定領域を決定する決定部6と、を備える画像処理装置1。【選択図】図1
Description
本発明は、複数の画像を合成して高解像度の合成画像を生成する画像処理装置、画像処理プログラム、画像処理方法に関する。
従来より、画像における合焦部分を確認することができる技術が提案されている。
例えば、特開2004−242010号公報には、画像内のAF(オートフォーカス)エリアをサブブロックに区分して、各サブブロックの合焦の程度を示す評価値を算出し、評価値が高いサブブロックを表示することで、画像中のどの位置が合焦しているかを容易に確認できるようにした撮像装置が記載されている。
また、連続して撮影された複数の画像を合成して、撮影により取得された画像よりも高解像度の合成画像を生成する技術、いわゆる画素ずらし超解像画像を生成する技術が提案されている。
上述した画素ずらし超解像画像を生成する元となる複数の画像は、撮影時点が異なる画像である。このために、撮像装置を例えば固定して、複数の画像を撮影したとしても、撮影範囲内に移動する被写体が存在すると、移動被写体の画像を合成した部分は、解像度が高い画像とはならない。こうした移動被写体がAFエリア内にある場合には、複数の画像のそれぞれにおいてAF処理が行われて移動被写体に合焦されているにも関わらず、合成画像においては高い合成精度を得ることができず、高い解像度部分とならない。このために、AFエリアの画像を見ても合成精度を適切に確認することができず、合焦状態を適切に確認することもできない。
本発明は上記事情に鑑みてなされたものであり、合成画像の合成精度を適切に確認することができる画像処理装置、画像処理プログラム、画像処理方法を提供することを目的としている。
本発明の一態様による画像処理装置は、連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理装置であって、画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成部と、前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定部と、評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価部と、前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定部と、を備える。
本発明の他の態様による画像処理プログラムは、連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理をコンピュータに行わせるための画像処理プログラムであって、コンピュータに、画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成ステップと、前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定ステップと、評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価ステップと、前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定ステップと、を行わせるための画像処理プログラムである。
本発明のさらに他の態様による画像処理方法は、連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理方法であって、画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成ステップと、前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定ステップと、評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価ステップと、前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定ステップと、を備える。
本発明の画像処理装置、画像処理プログラム、画像処理方法によれば、合成画像の合成精度を適切に確認することができる。
以下、図面を参照して本発明の実施の形態を説明する。
[実施形態1]
[実施形態1]
図1から図14は本発明の実施形態1を示したものであり、図1は画像処理装置1の構成を示すブロック図である。
画像処理装置1は、連続して撮影された複数の画像を合成して、撮影された複数の画像のそれぞれよりも解像度の高い合成画像を生成するものである。
画像処理装置1は、画素ずらし超解像画像生成部2(図面および以下では、簡略に、超解像画像生成部2とよぶ)と、評価領域設定部3と、合成精度評価部4と、決定部6と、操作部7と、表示部8と、を備えている。
超解像画像生成部2は、画像を構成する複数の画素のそれぞれを、合成画像を構成するための高解像度の画像空間(撮影された画像の解像度よりも高解像度の画像空間)に位置合せして配置することを、複数の画像に対して行うことにより、合成画像を生成する。
評価領域設定部3は、合成画像に対して、評価領域を設定する範囲となる領域抽出範囲を設定すると共に、領域抽出範囲内に複数の評価領域を設定する。
合成精度評価部4は、画素充填率評価値を算出する画素充填率評価部5を備えている。そして、合成精度評価部4は、評価領域の画素充填率(画素充填率については、後で図7を参照して説明する)を複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する。
ここに画素充填率評価値は、画素充填率が高いほど高い値となる評価値である。画素充填率評価値は、例えば画素充填率をそのまま用いてもよいし、画素充填率の値の大小関係が、画素充填率評価値の値の大小関係においてもそのまま成り立つような他の評価値を、画素充填率に基づき求めても構わない。例えば、画素充填率に定数を乗算した値を画素充填率評価値としてもよいし、画素充填率を変数とする単調増加関数の値を画素充填率評価値としても構わない。
さらに、合成精度評価部4は、複数の画素充填率評価値の中の最大の画素充填率評価値が第1の所定範囲内の値であるか否かを判定して、第1の所定範囲内の値でないときには、評価領域設定部3に、領域抽出範囲および複数の評価領域を再設定させる。
そして、合成精度評価部4は、再設定された複数の評価領域に対して再度処理を行う。
決定部6は、複数の評価領域のそれぞれに対する複数の画素充填率評価値に基づいて、複数の評価領域の中から決定領域を決定する。例えば、決定部6は、合成精度評価部4により最大の画素充填率評価値が第1の所定範囲内の値であると判定されたときには、最大の画素充填率評価値の評価領域を決定領域に決定する。
操作部7は、画像処理装置1に対する操作入力を行うためのものである。例えば、複数の画素充填率評価値に基づいて決定部6が決定領域を決定するためのパラメータが、操作部7から入力される。
一例を挙げれば、操作部7による特定操作(例えば、特定のボタンを押す操作)がないときには、決定領域に決定する評価領域のパラメータを、最大の画素充填率評価値とする。また、操作部7による特定操作が1回行われたときには、決定領域に決定する評価領域のパラメータを、2番目に大きい画素充填率評価値とする。さらにまた、操作部7により特定操作が2回行われたときには、決定領域に決定する評価領域のパラメータを、3番目に大きい画素充填率評価値とする、等である。
表示部8は、決定部6により決定された決定領域を表示する。
ここで、図2〜図7を参照して、超解像画像生成部2による画素ずらし超解像画像の生成処理について説明する。なお、図2〜図7に示す高解像度の画像空間において、ハッチングを付した画素は画素データが配置され、ハッチングを付していない画素は画素データが配置されていないものとする。
図2は、撮影により得られた1枚の画像の画素構成の例を示す図である。
また、図3は、撮影により得られた1枚目の画像の画素データを、高解像度の画像空間に位置合せして配置した様子を示す図である。
高解像度の画像空間は、合成画像を構成するための空間である。例えば、図3〜図7に示す画像空間は、撮影により得られた1枚の画像の画像空間(図2参照)の、縦4倍×横4倍の解像度の空間となっている。
このような高解像度の画像空間に、撮影により得られた1枚の画像を構成する各画素の画素データが、それぞれ位置合せして配置される。
画素ずらし超解像画像を生成する元となる複数の画像は、撮影光学系により結像される光学像と画像を光電変換して取得する撮像素子との位置ずれが画像毎に生じている必要がある。このときに位置ずれを発生するのは、例えば手ブレ補正機構を用いて撮像素子を移動することにより行っても構わないし、撮像装置を保持するユーザの手ブレにより位置ずれが生じるのであっても構わない。
ここで、カメラ等の撮像装置を固定して、手ブレ補正機構により撮像素子を所定の画素ずらし位置へ移動する場合、あるいは、撮像装置が手持ちされているときであっても手ブレ補正機構により手ブレを補正した上でさらに所定の画素ずらし位置への移動を行う場合、などには、狙いとする画素ずらし位置の画像を取得することができる。従って、1枚目の画像に対する、2枚目以降の画像の位置ずれは、既知である。
これに対して、手ブレ補正機構による補正範囲を超える手ブレが発生した場合、あるいは手ブレ補正機構を用いることなく手持ち撮影を行う場合などには、1枚目の画像に対する、2枚目以降の画像の位置ずれを検出してから、適切な画素ずらし位置へ位置合わせする必要がある。
こうした場合には、ブロックマッチング等の公知の技術を用いて、1枚目の画像に対する2枚目以降の画像の動きベクトルを算出することになる。このときには、異なる画像における同一形状を確認し易いエッジ等を、基準点に設定する。そして、画像内の複数の基準点に対して動きベクトルを算出し、さらに補間を行うことで、画像内の全ての画素に対する動きベクトルが算出される。このような処理が、1枚目の画像を基準として、2枚目以降の画像のそれぞれに対して行われる。
撮像装置が固定されている場合には、ここで算出された各画素の動きベクトルが、被写体の移動を示すベクトルとなる。
一方、撮像装置が固定されていない場合には、手ブレ等によって画像全体の並進および回転が生じることがある。この場合には、複数の基準点に対する動きベクトルに基づいて、例えば射影変換行列を求める。ここに射影変換行列は、2枚目以降の画像の「ある点」を射影変換行列により変換すると、1枚目の画像における「ある点」の対応点が求まる行列である。こうして2枚目以降の画像に対してそれぞれ求めた射影変換行列を用いれば、2枚目以降の画像を1枚目の画像に位置合わせすることができる。そして、射影変換行列により画像全体の並進および回転の影響を除去した後に残る動きベクトルが、被写体の移動を示すベクトルとなる。
図4は、撮影により得られた2枚目の画像の画素データを、高解像度の画像空間に位置合せして配置した様子を示す図である。ここに、高解像度の画像空間に新たに配置された2枚目の画像の画素データを、太枠で示している。
図示の例では、2枚目の画像は、1枚目の画像に対して、撮像素子(あるいは撮像装置全体)が右下に移動した状態となっている。そして、2枚目の画像を構成する画素の内の、高解像度の画像空間からはみ出る画素の画素データについては、高解像度の画像空間に配置されない。
図5は、撮影により得られた3枚目の画像の画素データを、高解像度の画像空間に位置合せして配置した様子を示す図である。ここに、高解像度の画像空間に新たに配置された3枚目の画像の画素データを、太枠で示している。
図示の例では、3枚目の画像は、1枚目の画像に対して、撮像素子(あるいは撮像装置全体)が左上に移動した状態となっている。上述と同様に、3枚目の画像を構成する画素の内の、高解像度の画像空間からはみ出る画素の画素データについては、高解像度の画像空間に配置されない。
このようにして超解像画像生成部2は、位置ずれが生じている複数の画像(例えば、上述した撮影画像の縦4倍×横4倍の解像度の場合には、少なくとも16枚の画像)の画素を、位置合わせしながら高解像度の画像空間に配置することで、高解像度画像を生成する。
図6は、撮影により得られた複数枚の画像の画素データを、高解像度の画像空間に位置合せして配置し終えたときの、理想的な様子を示す図である。
位置合わせにより生成された高解像度画像は、図6に示すように、高解像度の画像空間の全ての画素位置に画素データが欠落することなく埋まることが理想的である。しかし、撮影して得られた複数枚の画像内に、移動する被写体がある場合などには、高解像度画像を合成するのに適さない画素が出現することがある。この場合には、合成に適さない画素を高解像度の画像空間内に配置しない。
図7は、撮影により得られた複数枚の画像の画素データを、高解像度の画像空間に位置合せして配置し終えたときの、画素データが配置されない画素が存在する例を示す図である。
このために、撮影により得られた複数の画像を高解像度の画像空間に配置し終えても、図7に示すように、画素データが埋まっていない画素位置が生じることがある。こうした場合に、超解像画像生成部2は、画素データが埋まっていない画素位置の画素データを、周辺の画素(カラー画像の場合には周辺の同色の画素)の画素データに基づいて画素補間することにより、該当画素位置の画素データを埋める処理を行う(欠落画素補間)。
このような処理において、画素データを配置し終えた後で、かつ欠落画素補間を行う前の高解像度の画像空間において、任意の領域内の全ての画素位置の数に対する、画素データが埋まっている画素位置の数の率を、その領域の画素充填率と呼ぶことにする。この画素充填率が高い領域ほど、合成画像の合成精度が高く、ひいては画素ずらし超解像の効果が高い領域ということができる。上述した画素充填率評価部5が処理を行うのは、この画素データを配置し終えた後で、かつ欠落画素補間を行う前の合成画像である。
図8は撮影範囲内に移動する被写体が存在する例を示す図、図9は撮影範囲の中心にAFエリアA0を設定したときのAFエリアA0内に存在する被写体の例を示す図、図10は合成画像を生成するために連続して撮影された複数の画像の例を示す図、図11は合成画像におけるAFエリアA0とAFエリアA0内に存在する被写体の例とを示す図である。
図8に示すような、例えば遠方に複数の山Mがあり、中央部に川Rがある撮影シーンにおいて、図9のハッチング部分に示すように、画像の中央にAF(オートフォーカス)エリアが設定されているとする。この場合に、AFエリアA0内にある山Mの一部を含む川Rに対してAF処理を行えば、AFエリアA0内が合焦した1枚の画像を撮影することができる。
このような撮影シーンを図10に示すように複数枚撮影すると、各画像はAFエリアA0において合焦しているが、川Rは流れていて移動被写体であるために、各画像の川Rの様子はそれぞれ異なるものとなる。従って、複数枚の画像を合成して図11に示すような合成画像を生成しても、川Rの画像部分は高解像度にならず、つまり大部分が川Rの画像部分となるAFエリアA0も、合成精度の確認を適切に行うことができないエリアとなる。
そこで、画像処理装置1は、図13に示すような処理を行って、画素ずらし超解像の効果が確認し易い領域を決定領域として決定するようになっている。ここに、図13は、超解像確認領域抽出の処理を示すフローチャートである。
図示しないメイン処理からこの処理に入ると、評価領域設定部3が、合成画像に領域抽出範囲を設定すると共に、領域抽出範囲内に複数の評価領域を設定する(ステップS1)。
ここに、複数の評価領域は、領域抽出範囲を分割することにより設定してもよい。この場合には、複数の評価領域を全て合わせると領域抽出範囲に一致する。あるいは、領域抽出範囲内に、適宜の間隔を開けて複数の評価領域を設定してもかまわない。この場合には、領域抽出範囲内に、評価領域に含まれない領域が生じることになる。
また、複数の評価領域は、それぞれ同一の大きさの領域(つまり、「縦方向の画素数×横方向の画素数」が、それぞれ同一である領域)となることが好ましい(後述するような評価値を、適正に比較することができるようにするため)。しかしながら、複数の評価領域の大きさがそれぞれ異なることを禁止するものではない。
図13に示す処理を開始してから最初にステップS1の処理を行う場合に、評価領域設定部3は、例えば図12に示すように、AFエリアと、AFエリアの周辺エリアと、を含むように領域抽出範囲RGNを設定する。
ここに、図12は、合成画像に領域抽出範囲RGNを設定して、領域抽出範囲RGN内に複数の評価領域を設定する例を示す図である。
図12に示す例では、領域抽出範囲RGN内に、3×3=9個の評価領域が設定されていて、例えば画像の中央部の第5番目の評価領域がAFエリアである。そして、第5番目の評価領域の周辺に、第1〜4,6〜9番目の各評価領域がさらに設定されている。
評価領域設定部3は、領域抽出範囲内に設定した評価領域の数(図12に示す例では9)を、評価領域数AreaNumに設定する(ステップS2)。
次に、合成精度評価部4が、パラメータの初期化を行う。ここでは、評価領域の数をカウントするための領域番号iに0を設定し、領域抽出範囲内に設定された複数の評価領域の画素充填率評価値の最大値を示すFillScoreMaxに0を設定する(ステップS3)。
続いて、画素充填率評価部5が、領域番号iの評価領域の画素充填率評価値FillScore[i]を算出する(ステップS4)。画素充填率評価値FillScore[i]は、上述したように種々の方法で算出して構わないが、例えば画素充填率がそのまま用いられる。この場合に画素充填率評価値FillScore[i]は、領域番号iの評価領域の全画素数AreaPixNumに対する、領域番号iの評価領域における画素データが配置された画素数AreaPixDataNumの割合として、次の数式1に示すように算出される。
[数1]
FillScore[i]=AreaPixDataNum/AreaPixNum
[数1]
FillScore[i]=AreaPixDataNum/AreaPixNum
従って、画素充填率をそのまま用いた画素充填率評価値FillScore[i]は、0以上1以下の値をとり、正規化された値となる。また、その他の方法で画素充填率評価値FillScore[i]を算出した場合には、別途、正規化の処理を行うとよい。
さらに、合成精度評価部4は、算出した画素充填率評価値FillScore[i]が、画素充填率評価値の最大値を示すFillScoreMaxに現在設定されている値よりも大きいか否かを判定する(ステップS5)。
ここで、大きいと判定した場合に、合成精度評価部4は、ステップS4において算出された画素充填率評価値FillScore[i]をFillScoreMaxに設定すると共に、領域番号iの値を、画素充填率評価値が最大となる領域番号FillScoreMaxAreaに設定する(ステップS6)。
ステップS6の処理を行うか、またはステップS5において大きくないと判定された場合に、合成精度評価部4は、領域番号iの値を1つ増加させる(ステップS7)。
そして、合成精度評価部4は、領域番号iが評価領域数AreaNumに達したか否かを判定する(ステップS8)。
ここで達していないと判定した場合には、上述したステップS4へ戻って、次の評価領域に対して上述したような処理を行う。
また、ステップS8において領域番号iが評価領域数AreaNumに達したと判定された場合に、合成精度評価部4は、画素充填率評価値の最大値FillScoreMaxが、所定の合焦確認領域判定閾値FillScoreMaxTHよりも大きいか否かを判定する(ステップS9)。ここに、合焦確認領域判定閾値FillScoreMaxTHは、画素充填率評価値がFillScoreMaxTH以下である評価領域を決定領域としないための判定に用いる閾値である。
ここで、大きくないと判定された場合には、上述したステップS1へ戻って評価領域設定部3により領域抽出範囲および評価領域を再設定してから、上述したような処理を行う。
一方、ステップS9において、FillScoreMaxがFillScoreMaxTHよりも大きいと判定された場合には、決定部6は、画素充填率評価値が最大となる領域番号FillScoreMaxAreaの値を、最大評価値領域番号MaxAreaに設定し、最大評価値領域番号MaxAreaで示される評価領域を決定領域に決定してから(ステップS10)、図示しないメイン処理へリターンする。
これにより、表示部8には、決定部6により決定された決定領域が表示される。具体的に、画像中において決定領域がどの部分であるかを明示する表示を行い、さらに必要に応じて決定領域を拡大表示して、合成精度の確認(合成画像において高解像度化が適切に果たされたか否かの確認)、および合焦確認などを行うことができるようにする。このときに表示されるのは、超解像画像生成部2により上述した欠落画素補間を行った後の合成画像であることはいうまでもない。
次に、図14は、領域抽出範囲の再設定を、評価領域の評価に応じて行う例を示す図表である。
上述したステップS9において、画素充填率評価値の最大値FillScoreMaxが、所定の合焦確認領域判定閾値FillScoreMaxTHよりも大きくないと判定され、ステップS1へ戻って領域抽出範囲および評価領域を再設定する際に、評価領域設定部3は、例えばこの図14に示すような方法で再設定を行うようになっている。
図14における領域抽出範囲の各評価領域の評価欄において、評価値(上述の例では、画素充填率評価値)が、所定の閾値(一例を挙げれば、領域抽出範囲内における全ての評価領域の評価値の平均値)以上である評価領域に対しては「H」を、所定の閾値未満である評価領域に対しては「L」を、付して示している。
第1欄に示すように、図12に示したような第1〜9番目の評価領域に対して、第1〜3番目の評価領域がH、第4〜9番目の評価領域がLである場合には、領域抽出範囲を再設定する方向を上方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第2欄に示すように、第1〜6番目の評価領域がL、第7〜9番目の評価領域がHである場合には、領域抽出範囲を再設定する方向を下方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第3欄に示すように、第1,4,7番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を左方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第4欄に示すように、第3,6,9番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を右方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第5欄に示すように、第1〜3,4,7番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を左上方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第6欄に示すように、第1〜3,6,9番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を右上方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第7欄に示すように、第1,4,7〜9番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を左下方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第8欄に示すように、第3,6,7〜9番目の評価領域がH、それ以外の評価領域がLである場合には、領域抽出範囲を再設定する方向を右下方向として、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
第9欄に示すように、評価領域のH,Lの配置が上記以外である場合には、現在の領域抽出範囲の周辺に、領域抽出範囲再設定例のハッチング部分に示すような領域抽出範囲および評価領域の設定を行う。
なお、図14では領域抽出範囲内に3×3=9個の評価領域が設定される場合の例を示したが、設定する評価領域の数および配置を異ならせた場合でも、同様の方法で領域抽出範囲および評価領域を再設定すればよい。
また、ここでは評価領域の評価値が高い方向に領域抽出範囲を再設定する例を示したが、場合分けを行うことなく第9欄に示すような領域抽出範囲および評価領域の再設定を行うようにしても構わない。
なお、上述したステップS5、ステップS6、およびステップS10の処理では、画素充填率評価値が最大値をとる評価領域が複数ある場合に、最初に見つかった評価領域の領域番号iの値を最大評価値領域番号MaxAreaに設定して、決定領域を決定していた。しかしながら、これに限定されるものでないことは勿論である。
すなわち、画素充填率評価値が最大値をとる評価領域が複数ある場合に、決定部6は、例えば、何れか1つを選択して決定領域としてもよい。このときの選択方法は、任意の方法を用いることができるが、例えば、画像の中央に最も近いもの(あるいはAFエリアに最も近いもの)を選択する方法が一例として挙げられる。あるいは、画素充填率評価値が最大値をとる1つ以上の評価領域の全てを決定領域としても構わない。
また、上述では、決定部6は、画素充填率評価値が最大値をとる評価領域を決定領域としたが、これに限定されるものではなく、操作部7からの操作入力に応じて決定領域を定めるようにしても構わない。例えば、特定のユーザ操作が行われていない場合には、画素充填率評価値が最大値をとる評価領域を決定領域とし、特定のユーザ操作が1回行われた場合には画素充填率評価値が2番目に大きい値をとる評価領域を決定領域とし、特定のユーザ操作が2回行われた場合には画素充填率評価値が3番目に大きい値をとる評価領域を決定領域とする、等である。
このような実施形態1によれば、領域抽出範囲に設定した複数の評価領域の画素充填率評価値に基づいて決定領域を決定するようにしたために、AFエリアで合成精度を確認することができない場合でも、画素充填率評価値が高い決定領域に基づき合成画像の合成精度を適切に確認することができる。
また、最大の画素充填率評価値が第1の所定範囲(具体的には、ステップS9の、所定の合焦確認領域判定閾値FillScoreMaxTHよりも大きい範囲)内の値でないときには領域抽出範囲および複数の評価領域を再設定するようにしたために、決定領域として画素充填率評価値がより高い領域を選択することができる。
さらに、第1の所定範囲内の値であると判定された最大の画素充填率評価値の評価領域を決定領域に決定するようにしたために、合成精度の確認を、合成が適切に行われた決定領域で常に行うことができる。
そして、決定領域を表示する表示部8をさらに備えたために、表示部8に表示された決定領域により、合成精度を視覚的に確認することができる。
[実施形態2]
[実施形態2]
図15から図18は本発明の実施形態2を示したものであり、図15は画像処理装置1の一構成例を示すブロック図である。
この実施形態2において、上述の実施形態1と同様である部分については同一の符号を付すなどして説明を適宜省略し、主として異なる点についてのみ説明する。
図15は、画素充填率評価値に加えて、第2の評価値として、動きベクトル評価値を用いる例となっている。
図15に示す画像処理装置1は、超解像画像生成部2と、評価領域設定部3と、合成精度評価部4と、決定部6と、操作部7と、表示部8と、動きベクトル選択部12と、を備えている。
合成精度評価部4は、画素充填率評価部5と、動きベクトル評価部13と、を備えている。
動きベクトル評価部13は、評価領域設定部3により設定された複数の評価領域の内の、合成精度評価部4により算出された画素充填率評価値FillScore[i]が第2の所定範囲内の値である特定の評価領域のみに対して、動きベクトルを取得して評価する。
動きベクトル評価部13による動きベクトルの取得の流れは、次のようになっている。
まず、超解像画像生成部2は、撮影により得られた画像の画素データを、高解像度の画像空間に位置合せして配置するために、動きベクトルを算出する。この動きベクトルの算出を実施形態1において説明したように行うのが、超解像画像生成部2が備える動きベクトル算出部11である(なお、実施形態1の超解像画像生成部2も、図1には明示していないが、動きベクトル算出部11を備えている。後述する図16の超解像画像生成部2、および実施形態3の図20の超解像画像生成部2も同様である。)。
合成画像の生成に用いられる画像の枚数をN(Nは2以上の整数)であるとすると、動きベクトルは、上述したように、1枚目の画像に対する変化分として、2〜N枚目の画像のそれぞれに対して算出される。具体的に、1枚目の画像に対する2枚目の画像の各画素の動きベクトル、1枚目の画像に対する3枚目の画像の各画素の動きベクトル、・・・、1枚目の画像に対するN枚目の画像の各画素の動きベクトルである。
そこで、動きベクトル算出部11により2〜N枚目の画像のそれぞれに対して算出された、画像内の全ての画素に対する動きベクトル(撮像装置が固定されていない場合には、上述したように、画像全体の並進および回転の影響を除去した後に残る動きベクトル)が、動きベクトル選択部12へ出力される。動きベクトル選択部12は、2〜N枚目の画像のそれぞれに対して算出された各画素の動きベクトルの中から、例えば、何れか1枚の画像(例えば、2枚目の画像、またはN枚目の画像)に対して算出された各画素の動きベクトルを選択する。あるいは、動きベクトル選択部12は、2〜N枚目の画像のそれぞれに対して算出された各画素の動きベクトルを、画素単位で平均した動きベクトルを算出して、平均した動きベクトルを選択結果としてもよい。
動きベクトル評価部13は、後で図18を参照して説明するように、動きベクトル選択部12から特定の評価領域の動きベクトルを取得して評価し、特定の評価領域に対する動きベクトル評価値を算出する。
決定部6は、動きベクトル評価値に基づいて、特定の評価領域の中から、決定領域を決定する。具体的に、決定部6は、例えば最大の動きベクトル評価値の評価領域を、決定領域に決定する。
こうして、決定部6は、画素充填率評価値FillScore[i]に基づいて複数の評価領域から絞り込まれた特定の評価領域の中から、さらに動きベクトル評価値に基づいて決定領域を決定している。
次に、図16は、画像処理装置1の他の構成例を示すブロック図である。図15は第2の評価値として動きベクトル評価値を用いる例であったが、図16は第2の評価値として空間周波数評価値を用いる例(動きベクトルに代えて、評価領域の空間周波数を算出して用いる例)となっている。
図16に示す画像処理装置1は、超解像画像生成部2と、評価領域設定部3と、合成精度評価部4と、決定部6と、操作部7と、表示部8と、空間周波数算出部15と、を備えている。
合成精度評価部4は、画素充填率評価部5と、空間周波数評価部16と、を備えている。
空間周波数算出部15は、空間周波数評価部16からの指令に基づいて、超解像画像生成部2により生成された合成画像(欠落画素補間を行った後の合成画像)における、上述した特定の評価領域のみに対して、空間周波数を算出する。
空間周波数算出部15による空間周波数の算出は、例えば空間周波数抽出フィルタを用いたフィルタ演算により行われる。
具体的に、評価領域のサイズを(W×H)、空間周波数抽出フィルタのフィルタサイズを(2K-1)×(2K-1)とし、(x,y)を評価領域内における水平方向および垂直方向の画素位置を示す座標とし、f(x,y)を座標(x,y)における画素値、h(m,n)をフィルタサイズ内の座標(m,n)における空間周波数抽出フィルタのフィルタ係数とすると、空間周波数算出部15は、特定の評価領域毎に、評価領域内において、数式2に示すような演算を行って、座標(x,y)における空間周波数g(x,y)を算出する。
[数2]
[数2]
空間周波数評価部16は、空間周波数算出部15により算出された特定の評価領域の空間周波数Gを評価して、特定の評価領域の空間周波数評価値を算出する。ここに、空間周波数評価部16が算出する空間周波数評価値は、高周波成分の値が大きい場合に値が大きくなり、高周波成分の値が小さい場合に値が小さくなるような評価値である。
決定部6は、空間周波数評価値に基づいて、特定の評価領域の中から、決定領域を決定する。具体的に、決定部6は、例えば最大の空間周波数評価値の評価領域を、決定領域に決定する。
なお、以下に説明する超解像確認領域抽出の処理、および動きベクトル評価の処理は、動きベクトルを空間周波数に置き換えれば同様に適用することができるために、以下では動きベクトルを用いる場合(図15の構成を採用する場合)を主として例に挙げて説明する。
図17は、超解像確認領域抽出の処理を示すフローチャートである。
図示しないメイン処理からこの処理に入ると、上述したステップS1およびステップS2の処理を行って、領域抽出範囲、評価領域、および評価領域数AreaNumを設定する。
次に、合成精度評価部4が、評価領域の数をカウントするための領域番号iに0を設定する(ステップS11)。
続いて、上述したステップS4の処理を行って、画素充填率評価部5が、領域番号iの評価領域の画素充填率評価値FillScore[i]を算出する。
さらに、合成精度評価部4は、画素充填率評価値FillScore[i]が、所定の画素充填率評価値閾値FillScoreTH以上であるか否かを判定する(ステップS12)。画素充填率評価値閾値FillScoreTHは、評価領域を決定領域の候補として残す(つまり、特定の評価領域として設定する)か否かを、画素充填率評価値FillScore[i]に応じて判定するための閾値である。
ここで、画素充填率評価値FillScore[i]が画素充填率評価値閾値FillScoreTH以上であると判定された場合には、動きベクトル評価部13が、後で図18を参照して説明するような動きベクトル評価の処理を行う(ステップS13)。こうして、ここでは画素充填率評価値FillScore[i]が画素充填率評価値閾値FillScoreTH以上である評価領域を、特定の評価領域として設定するようになっている。
ステップS13の処理を行った場合、または、ステップS12において画素充填率評価値FillScore[i]が画素充填率評価値閾値FillScoreTH未満であると判定された場合には、合成精度評価部4は、上述したステップS7の処理を行って、領域番号iの値を1つ増加させる。
こうして、合成精度評価部4は、評価領域設定部3により設定された複数の評価領域の内の、画素充填率評価値FillScore[i]が第2の所定範囲(ここでは、画素充填率評価値閾値FillScoreTH以上の範囲)内の値である特定の評価領域のみに対して動きベクトルを取得して評価することにより、特定の評価領域それぞれの動きベクトル評価値を算出するようにしている。従って、合成精度評価部4は、画素充填率評価値FillScore[i]が画素充填率評価値閾値FillScoreTH未満であると判定された場合には、ステップS13の動きベクトルの評価の処理は行わない。
その後、合成精度評価部4は、上述したステップS8の処理を行って、領域番号iが評価領域数AreaNumに達したか否かを判定する。
ここで、領域番号iが評価領域数AreaNumに達していないと判定した場合には、上述したステップS4へ戻って次の評価領域に対して上述したような処理を行う。
こうして、ステップS8において領域番号iが評価領域数AreaNumに達したと判定された場合に、合成精度評価部4は、動きベクトル評価値の最大値VecScoreMaxが、所定の合焦確認領域判定閾値VecScoreMaxTHよりも大きいか否かを判定する(ステップS14)。ここに、動きベクトル評価値の最大値VecScoreMaxは、動きベクトル評価部13により算出された動きベクトル評価値の中の最大の動きベクトル評価値である。また、合焦確認領域判定閾値VecScoreMaxTHは、動きベクトル評価値がVecScoreMaxTH以下である評価領域を決定領域としないための判定に用いる閾値である。
ステップS14において、VecScoreMaxがVecScoreMaxTHよりも大きくないと判定された場合には、上述したステップS1へ戻って評価領域設定部3により領域抽出範囲および評価領域を再設定してから、上述したような処理を行う。
こうして、合成精度評価部4は、動きベクトル評価値の最大値VecScoreMaxが第3の所定範囲(合焦確認領域判定閾値VecScoreMaxTHよりも大きい範囲)内の値であるか否かを判定して、第3の所定範囲内の値でないときには、評価領域設定部3に、領域抽出範囲および複数の評価領域を再設定させる。これにより、合成精度評価部4は、再設定された複数の評価領域に対して再度処理を行う。
一方、ステップS14において、合成精度評価部4によりVecScoreMaxがVecScoreMaxTHよりも大きいと判定された場合には、決定部6は、動きベクトル評価値が最大となる領域番号VecScoreMaxAreaの値を、最大評価値領域番号MaxAreaに設定し、最大評価値領域番号MaxAreaで示される評価領域を決定領域に決定する(ステップS15)。これにより、決定部6により決定された決定領域が表示部8に表示されるのは、上述した実施形態1と同様である。
その後、図示しないメイン処理へリターンする。
次に、図18は、図17におけるステップS13の動きベクトル評価処理の詳細を示すフローチャートである。
この処理に入ると、動きベクトル評価部13は、処理対象としている評価領域が、動きベクトル評価処理を行う最初の評価領域であるか否かを判定する(ステップS21)。
ここで最初の評価領域であると判定した場合には、動きベクトル評価部13が、動きベクトル評価値の最大値VecScoreMaxを初期化して、0に設定する(ステップS22)。
一方、ステップS21において、最初の評価領域でないと判定した場合には、動きベクトル評価値の最大値VecScoreMaxの初期化は行わない。
そして、領域番号iの評価領域に対して、動きベクトル評価部13が、動きベクトル評価値VecScore[i]を算出する(ステップS23)。この動きベクトル評価値VecScore[i]の算出は、例えば、次のようにして行う。
すなわち、動きベクトル評価部13は、動きベクトル選択部12から領域番号iの評価領域における画素位置(x,y)の動きベクトルVec(x,y)を入力して、例えば数式6に示すような演算を行うことにより、領域番号iの評価領域に対する動きベクトル評価値VecScore[i]を算出する。
[数6]
[数6]
なお、動きベクトル評価値VecScore[i]は、評価領域内における動きベクトルの大きさが小さいほど、大きい値となるように設定される。そこで、ここでは動きベクトルの大きさ|Vec(x,y)|を評価領域内の各画素について積算した値の逆数を動きベクトル評価値VecScore[i]に設定する例を説明した。しかし、これに限定されるものではなく、他の適宜の値を動きベクトル評価値VecScore[i]に設定しても構わない。
また、空間周波数を評価する場合には、上述したように、高周波成分の値が大きい場合に値が大きくなり、高周波成分の値が小さい場合に値が小さくなるような空間周波数評価値を用いることになる。
続いて、動きベクトル評価部13は、動きベクトル評価値VecScore[i]が0以上1以下の値となるように正規化を行う(ステップS24)。ここでは一例として、動きベクトル評価値VecScore[i]として取り得る値の最小値VecMinと、動きベクトル評価値VecScore[i]として取り得る値の最大値VecMaxと、を用いて、数式7に示すように正規化を行う。
[数7]
[数7]
なお、特定の評価領域の全てについて動きベクトル評価値VecScore[i]を算出した後であれば、最小値VecMinを、算出された動きベクトル評価値VecScore[i]の中の最小値、最大値VecMaxを、算出された動きベクトル評価値VecScore[i]の中の最大値としても構わない。
また、空間周波数評価値についても、同様に、0以上1以下の値となるように正規化を行う。
こうして正規化した動きベクトル評価値VecScore[i]が、現在の動きベクトル評価値の最大値VecScoreMax以上であるか否かを動きベクトル評価部13が判定する(ステップS25)。
ここで、VecScore[i]がVecScoreMax以上であると判定した場合に、動きベクトル評価部13は、ステップS24において算出した動きベクトル評価値VecScore[i]を動きベクトル評価値の最大値VecScoreMaxに設定すると共に、領域番号iの値を、動きベクトル評価値が最大となる領域番号VecScoreMaxAreaに設定する(ステップS26)。
このステップS26の処理を行うか、またはステップS25においてVecScore[i]がVecScoreMax未満であると判定した場合には、図17の処理へリターンする。
なお、上述したステップS25、ステップS26、およびステップS15の処理では、動きベクトル評価値が最大値をとる評価領域が複数ある場合に、最後に見つかった評価領域の領域番号iの値を最大評価値領域番号MaxAreaに設定して、決定領域を決定していた。しかしながら、これに限定されるものでないことは勿論である。
すなわち、動きベクトル評価値が最大値をとる評価領域が複数ある場合に、決定部6は、例えば、何れか1つを上述したように選択して決定領域としてもよいし、動きベクトル評価値が最大値をとる1つ以上の評価領域の全てを決定領域としても構わない。
また、上述では、決定部6は、動きベクトル評価値が最大値をとる評価領域を決定領域としたが、これに限定されるものではなく、操作部7からの操作入力に応じて決定領域を定めるようにしても構わない。例えば、特定のユーザ操作が行われていない場合には、動きベクトル評価値が最大値をとる評価領域を決定領域とし、特定のユーザ操作が1回行われた場合には動きベクトル評価値が2番目に大きい値をとる評価領域を決定領域とし、特定のユーザ操作が2回行われた場合には動きベクトル評価値が3番目に大きい値をとる評価領域を決定領域とする、等である。
さらに、上述では、第2の評価値として、動きベクトル評価値、または空間周波数評価値の何れかを用いたが、動きベクトル評価値と空間周波数評価値との両方を第2の評価値として用いても構わない。例えば、正規化された動きベクトル評価値と、正規化された空間周波数評価値とを、重要度に応じた重みにより重み付け加算平均した値を、第2の評価値として用いる等である。
このような実施形態2によれば、上述した実施形態1とほぼ同様の効果を奏するとともに、画素充填率評価値だけでなく、動きベクトル評価値と空間周波数評価値との少なくとも一方を用いるようにしたために、合成精度の確認が容易な決定領域(さらには、合焦確認が容易な決定領域)を、より適切に抽出することができる。
また、画素充填率評価値が第2の所定範囲内の値である特定の評価領域のみに対して、動きベクトルまたは空間周波数を評価するようにしたために、評価領域設定部3により設定された複数の評価領域の全てに対して動きベクトルまたは空間周波数を評価する場合に比べて、処理負荷を軽減することができる。
さらに、動きベクトル評価値の最大値VecScoreMaxが第3の所定範囲内の値でないときには領域抽出範囲および複数の評価領域を再設定するようにしたために、決定領域として動きベクトル評価値がより高い領域を選択することができる。
同様に、空間周波数評価値の最大値が第3’の所定範囲内の値でないときには領域抽出範囲および複数の評価領域を再設定するようにしたために、決定領域として空間周波数評価値がより高い領域を選択することができる。
そして、第3の所定範囲内の値であると判定された最大の動きベクトル評価値の評価領域を決定領域に決定するようにしたために、被写体の動きが小さく合成が適切に行われた決定領域で合成精度の確認を常に行うことができる。
同様に、第3’の所定範囲内の値であると判定された最大の空間周波数評価値の評価領域を決定領域に決定するようにしたために、空間周波数が高く、つまり解像度が高い決定領域で合成精度の確認および合焦確認を常に行うことができる。
[実施形態3]
[実施形態3]
図19から図25は本発明の実施形態3を示したものであり、図19は画像処理装置1の一構成例を示すブロック図である。
この実施形態3において、上述の実施形態1,2と同様である部分については同一の符号を付すなどして説明を適宜省略し、主として異なる点についてのみ説明する。
図19は、画素充填率評価値と動きベクトル評価値とを重み付け加算した値を総合評価値として、総合評価値に基づき決定領域を決定する例となっている。
図19に示す画像処理装置1は、超解像画像生成部2と、評価領域設定部3と、合成精度評価部4と、決定部6と、操作部7と、表示部8と、動きベクトル選択部12と、を備えている。
合成精度評価部4は、画素充填率評価部5と、動きベクトル評価部13と、重み係数算出部14と、を備えている。
本実施形態の画素充填率評価部5は、複数の評価領域のそれぞれに対する複数の画素充填率評価値FillScore[i]を算出するだけでなく、複数の画素充填率評価値の平均値FillScoreAveおよび分散値FillScoreVarを算出する。
本実施形態の動きベクトル評価部13は、評価領域の動きベクトルを複数の評価領域のそれぞれについて評価して複数の動きベクトル評価値VecScore[i]を算出する。従って、本実施形態の動きベクトル評価部13は、上述した実施形態2と異なり、評価領域設定部3により設定された複数の評価領域の全てに対して、動きベクトル評価値VecScore[i]を算出する。
さらに、動きベクトル評価部13は、複数の評価領域に対する複数の動きベクトル評価値の平均値VecScoreAveおよび分散値VecScoreVarを算出する。
重み係数算出部14は、画素充填率評価値の平均値FillScoreAveおよび分散値FillScoreVarと、動きベクトル評価値の平均値VecScoreAveおよび分散値VecScoreVarと、に基づいて、画素充填率評価値FillScore[i]に対する第1の重み係数FillWgt、および動きベクトル評価値VecScore[i]に対する第2の重み係数VecWgtを算出する。
さらに、重み係数算出部14は、第1の重み係数FillWgtを乗算した画素充填率評価値FillScore[i]と第2の重み係数VecWgtを乗算した動きベクトル評価値VecScore[i]とを加算した値を総合評価値Score[i]として、複数の評価領域に対して総合評価値Score[i]をそれぞれ算出する。
決定部6は、総合評価値Score[i]が最大値となる評価領域を決定領域に決定する。
図20は、画像処理装置1の他の構成例を示すブロック図である。図20は、図19の動きベクトルに代えて、評価領域の空間周波数を算出して用いる例となっている。
図20に示す画像処理装置1は、超解像画像生成部2と、評価領域設定部3と、合成精度評価部4と、決定部6と、操作部7と、表示部8と、空間周波数算出部15と、を備えている。
合成精度評価部4は、画素充填率評価部5と、空間周波数評価部16と、重み係数算出部14と、を備えている。
画素充填率評価部5は、上述したように、複数の評価領域のそれぞれに対する複数の画素充填率評価値FillScore[i]を算出するだけでなく、複数の画素充填率評価値の平均値FillScoreAveおよび分散値FillScoreVarを算出する。
本実施形態の空間周波数評価部16は、評価領域の空間周波数を複数の評価領域のそれぞれについて評価して複数の空間周波数評価値を算出する。従って、本実施形態の空間周波数評価部16は、上述した実施形態2と異なり、評価領域設定部3により設定された複数の評価領域の全てに対して、空間周波数評価値を算出する。
さらに、空間周波数評価部16は、複数の評価領域に対する複数の空間周波数評価値の平均値および分散値を算出する。
重み係数算出部14は、画素充填率評価値の平均値FillScoreAveおよび分散値FillScoreVarと、空間周波数評価値の平均値および分散値と、に基づいて、画素充填率評価値FillScore[i]に対する第1の重み係数FillWgt、および空間周波数評価値に対する第2の重み係数VecWgtを算出する。
さらに、重み係数算出部14は、第1の重み係数FillWgtを乗算した画素充填率評価値FillScore[i]と第2の重み係数VecWgtを乗算した空間周波数評価値とを加算した値を総合評価値Score[i]として、複数の評価領域に対して総合評価値Score[i]をそれぞれ算出する。
決定部6は、総合評価値Score[i]が最大値となる評価領域を決定領域に決定する。
なお、以下に説明する超解像確認領域抽出の処理、および動きベクトル評価の処理は、動きベクトルを空間周波数に置き換えれば同様に適用することができるために、以下では動きベクトルを用いる場合(図15の構成を採用する場合)を主として例に挙げて説明する。
図21は、超解像確認領域抽出の処理を示すフローチャートである。
図示しないメイン処理からこの処理に入ると、上述したステップS1およびステップS2の処理を行って、領域抽出範囲、評価領域、および評価領域数AreaNumを設定する。
次に、画素充填率評価部5が、後で図22を参照して説明するような画素充填率評価処理を行う(ステップS31)。
続いて、動きベクトル評価部13が、後で図23を参照して説明するような動きベクトル評価処理を行う(ステップS32)。
そして、合成精度評価部4は、ステップS32の処理により算出された動きベクトル評価値の平均値VecScoreAveが、動きベクトル評価値平均値の閾値VecAveTHよりも大きいか否かを判定する(ステップS33)。ここに、動きベクトル評価値平均値の閾値VecAveTHは、動きベクトル評価値の平均値VecScoreAveがVecAveTH以下である評価領域を決定領域としないための判定に用いる閾値である。
ここで、VecScoreAveがVecAveTHよりも大きくないと判定された場合には、上述したステップS1へ戻って評価領域設定部3により領域抽出範囲および評価領域を再設定してから、上述したような処理を行う。
また、ステップS33においてVecScoreAveがVecAveTHよりも大きいと判定された場合に、合成精度評価部4は、ステップS31の処理により算出された画素充填率評価値の平均値FillScoreAveが、画素充填率評価値平均値の閾値FillAveTHよりも大きいか否かをさらに判定する(ステップS34)。ここに、画素充填率評価値平均値の閾値FillAveTHは、画素充填率評価値の平均値FillScoreAveがFillAveTH以下である評価領域を決定領域としないための判定に用いる閾値である。
ここで、FillScoreAveがFillAveTHよりも大きくないと判定された場合には、上述したステップS1へ戻って評価領域設定部3により領域抽出範囲および評価領域を再設定してから、上述したような処理を行う。
こうして、合成精度評価部4は、画素充填率評価値の平均値FillScoreAveが第4の所定範囲外の値であること(ここでは、画素充填率評価値平均値の閾値FillAveTH以下であること)と、動きベクトル評価値の平均値VecScoreAveが第5の所定範囲外の値であること(ここでは、動きベクトル評価値平均値の閾値VecAveTH以下であること)と、の少なくとも一方が成立するときには、評価領域設定部3に、領域抽出範囲および複数の評価領域を再設定させるようにしている。これにより、合成精度評価部4は、再設定された複数の評価領域に対して再度処理を行う。
なお、図21に示す処理の流れにおいては、ステップS31の画素充填率評価処理、ステップS32の動きベクトル評価処理、ステップS33の動きベクトル評価値の平均値VecScoreAve判定処理、ステップS34の画素充填率評価値の平均値FillScoreAve判定処理の順序で処理を行ったがこれに限るものではない。例えば、ステップS32、ステップS33、ステップS31、ステップS34の順序で処理を行えば、ステップS33の判定が「NO」である場合にステップS31の処理を行う必要がないために処理負荷を軽減することができる。同様に、例えば、ステップS31、ステップS34、ステップS32、ステップS33の順序で処理を行えば、ステップS34の判定が「NO」である場合にステップS32の処理を行う必要がないために処理負荷を軽減することができる。
図21のステップS34においてFillScoreAveがFillAveTHよりも大きいと判定された場合には、重み係数算出部14が、後で図24を参照して説明するような重み付け係数算出処理を行う(ステップS35)。
続いて、決定部6が、後で図25を参照して説明するような評価値最大領域抽出処理を行い、決定領域を決定する(ステップS36)。これにより、決定部6により決定された決定領域が表示部8に表示されるのは、上述した実施形態1と同様である。
その後、図示しないメイン処理へリターンする。
図22は、図21におけるステップS31の画素充填率評価処理の詳細を示すフローチャートである。
この処理に入ると、画素充填率評価部5が、評価領域の数をカウントするための領域番号iに0を設定する(ステップS41)。
次に、画素充填率評価部5が、領域番号iの評価領域の画素充填率評価値FillScore[i]を上述した実施形態1と同様に算出する(ステップS42)。
続いて、画素充填率評価部5は、領域番号iの値を1つ増加させる(ステップS43)。
そして、画素充填率評価部5は、領域番号iが評価領域数AreaNumに達したか否かを判定する(ステップS44)。
ここで達していないと判定した場合には、上述したステップS42へ戻って次の評価領域に対して上述したような処理を行う。
こうして、ステップS44において領域番号iが評価領域数AreaNumに達したと判定された場合に、画素充填率評価部5は、数式8に示すように、画素充填率評価値の平均値FillScoreAveを算出する(ステップS45)。
[数8]
[数8]
その後、図21の処理へリターンする。
図23は、図21におけるステップS32の動きベクトル評価処理の詳細を示すフローチャートである。
この処理に入ると、動きベクトル評価部13が、評価領域の数をカウントするための領域番号iに0を設定する(ステップS51)。
次に、動きベクトル評価部13が、領域番号iの評価領域の動きベクトル評価値VecScore[i]を、上述した実施形態2のステップS23において説明したように算出する(ステップS52)。
続いて、動きベクトル評価部13は、動きベクトル評価値VecScore[i]を、例えば数式7に示したように正規化する(ステップS53)。
さらに、動きベクトル評価部13は、領域番号iの値を1つ増加させる(ステップS54)。
そして、動きベクトル評価部13は、領域番号iが評価領域数AreaNumに達したか否かを判定する(ステップS55)。
ここで達していないと判定した場合には、上述したステップS52へ戻って次の評価領域に対して上述したような処理を行う。
こうして、ステップS55において領域番号iが評価領域数AreaNumに達したと判定された場合に、動きベクトル評価部13は、数式10に示すように、動きベクトル評価値の平均値VecScoreAveを算出する(ステップS56)。
[数10]
[数10]
その後、図21の処理へリターンする。
図24は、図21におけるステップS35の重み付け係数算出処理の詳細を示すフローチャートである。
この処理に入ると、重み係数算出部14が、動きベクトル評価値の平均値VecScoreAveよりも画素充填率評価値の平均値FillScoreAveが大きいか否かを判定する(ステップS61)。
ここで大きいと判定した場合には、重み係数算出部14が、画素充填率評価値の平均値FillScoreAveに基づく重み係数FillAveWgtにWgt1を設定する(ステップS62)と共に、動きベクトル評価値の平均値VecScoreAveに基づく重み係数VecAveWgtにWgt2を設定する(ステップS63)。ここに、Wgt1およびWgt2は、Wgt1>Wgt2の関係を満たす正の値である。
また、ステップS61において大きくないと判定した場合には、重み係数算出部14が、動きベクトル評価値の平均値VecScoreAveに基づく重み係数VecAveWgtにWgt1を設定する(ステップS64)と共に、画素充填率評価値の平均値FillScoreAveに基づく重み係数FillAveWgtにWgt2を設定する(ステップS65)。
次に、重み係数算出部14は、動きベクトル評価値の分散値VecScoreVarよりも画素充填率評価値の分散値FillScoreVarが大きいか否かを判定する(ステップS66)。
ここで大きいと判定した場合には、重み係数算出部14が、画素充填率評価値の分散値FillScoreVarに基づく重み係数FillVarWgtにWgt3を設定する(ステップS67)と共に、動きベクトル評価値の分散値VecScoreVarに基づく重み係数VecVarWgtにWgt4を設定する(ステップS68)。ここに、Wgt3およびWgt4は、Wgt3>Wgt4の関係を満たす正の値である。
なお、Wgt1とWgt3、およびWgt2とWgt4は、それぞれ同じ値としてもよいし、異なる値としても構わない。
また、ステップS66において大きくないと判定した場合には、重み係数算出部14が、動きベクトル評価値の分散値VecScoreVarに基づく重み係数VecVarWgtにWgt3を設定する(ステップS69)と共に、画素充填率評価値の分散値FillScoreVarに基づく重み係数FillVarWgtにWgt4を設定する(ステップS70)。
続いて、重み係数算出部14は、数式12に示すように、画素充填率評価値FillScore[i]に対する第1の重み係数FillWgtを設定する(ステップS71)。
[数12]
FillWgt←FillAveWgt×FillVarWgt
[数12]
FillWgt←FillAveWgt×FillVarWgt
さらに、重み係数算出部14は、数式13に示すように、動きベクトル評価値VecScore[i]に対する第2の重み係数VecWgtを設定する(ステップS72)。
[数13]
VecWgt←VecAveWgt×VecVarWgt
[数13]
VecWgt←VecAveWgt×VecVarWgt
その後、図21の処理へリターンする。
図25は、図21におけるステップS36の評価値最大領域抽出処理の詳細を示すフローチャートである。
この処理に入ると、決定部6が、パラメータの初期化を行う。ここでは、評価領域の数をカウントするための領域番号iに0を設定し、最大評価値領域番号MaxAreaに0を設定し、総合評価値の最大値MaxScoreに0を設定する(ステップS81)。
次に、決定部6は、数式14に示すように、領域番号iの評価領域に対する総合評価値Score[i]を設定する(ステップS82)。
[数14]
[数14]
Score[i]←FillScore[i]×FillWgt+VecScore[i]×VecWgt
続いて、決定部6は、領域番号iの評価領域に対する総合評価値Score[i]が、現在の総合評価値の最大値MaxScoreよりも大きいか否かを判定する(ステップS83)。
ここで、大きいと判定した場合には、決定部6は、Score[i]をMaxScoreに設定すると共に、領域番号iの値を最大評価値領域番号MaxAreaに設定する(ステップS84)。
ステップS84の処理を行うか、またはステップS83において大きくないと判定された場合に、決定部6は、領域番号iの値を1つ増加させる(ステップS85)。
そして、決定部6は、領域番号iが評価領域数AreaNumに達したか否かを判定する(ステップS86)。
ここで達していないと判定した場合には、上述したステップS82へ戻って次の評価領域に対して上述したような処理を行う。
こうして、ステップS86において領域番号iが評価領域数AreaNumに達したと判定された場合に、決定部6は、最大評価値領域番号MaxAreaで示される評価領域を決定領域に決定して、この処理から図21の処理へリターンする。
なお、上述したステップS83およびステップS84の処理では、総合評価値Score[i]が最大値をとる評価領域が複数ある場合に、最初に見つかった評価領域の領域番号iの値を最大評価値領域番号MaxAreaに設定して、決定領域を決定していた。しかしながら、これに限定されるものでないことは勿論である。
すなわち、総合評価値Score[i]が最大値をとる評価領域が複数ある場合に、決定部6は、例えば、何れか1つを上述したように選択して決定領域としてもよいし、総合評価値Score[i]が最大値をとる1つ以上の評価領域の全てを決定領域としても構わない。
また、上述では、画素充填率評価値および動きベクトル評価値を用いる場合と、画素充填率評価値および空間周波数評価値を用いる場合と、について説明したが、画素充填率評価値、動きベクトル評価値、および空間周波数評価値の3つを用いても構わない。このときには、画素充填率評価値と、動きベクトル評価値と、空間周波数評価値と、を重み付け加算した値を総合評価値とすればよい。
さらに、上述では、決定部6は、総合評価値が最大値をとる評価領域を決定領域としたが、これに限定されるものではなく、操作部7からの操作入力に応じて決定領域を定めるようにしても構わない。例えば、特定のユーザ操作が行われていない場合には、総合評価値が最大値をとる評価領域を決定領域とし、特定のユーザ操作が1回行われた場合には総合評価値が2番目に大きい値をとる評価領域を決定領域とし、特定のユーザ操作が2回行われた場合には総合評価値が3番目に大きい値をとる評価領域を決定領域とする、等である。
このような実施形態3によれば、上述した実施形態1,2とほぼ同様の効果を奏するとともに、画素充填率評価値と動きベクトル評価値(または空間周波数評価値)とを重み付け加算した値を総合評価値として、総合評価値が最大値となる評価領域を決定領域に決定するようにしたために、合成画像の生成が適切に行われ、かつ実際に高解像度化された評価領域を、適切に決定領域に決定することができる。
このとき、重み係数を評価値の平均値および分散値に基づき算出するようにしたために、評価領域全体の評価値の大小だけでなく、評価領域内で評価値がどの程度揃った値であるかに応じて、決定領域を適切に決定することができる。
また、画素充填率評価値の平均値が第4の所定範囲外の値であることと、動きベクトル評価値の平均値が第5の所定範囲外の値であることと、の少なくとも一方が成立するときには、領域抽出範囲および複数の評価領域を再設定するようにしたために、画素充填率評価値および動きベクトル評価値が共に高い領域を決定領域として選択することができる。
同様に、画素充填率評価値の平均値が第4の所定範囲外の値であることと、空間周波数評価値の平均値が第5’の所定範囲外の値であることと、の少なくとも一方が成立するときには、領域抽出範囲および複数の評価領域を再設定するようにしたために、画素充填率評価値および空間周波数評価値が共に高い領域を決定領域として選択することができる。
なお、上述した各部の処理は、ハードウェアとして構成された1つ以上のプロセッサが行うようにしてもよい。例えば、各部は、それぞれが電子回路として構成されたプロセッサであっても構わないし、FPGA(Field Programmable Gate Array)等の集積回路で構成されたプロセッサにおける各回路部であってもよい。あるいは、1つ以上のCPUで構成されるプロセッサが、記録媒体に記録された処理プログラムを読み込んで実行することにより、各部としての機能を実行するようにしても構わない。
また、上述では主として画像処理装置について説明したが、画像処理装置と同様の処理を行う画像処理方法であってもよいし、コンピュータに画像処理装置と同様の処理を行わせるための画像処理プログラム、該画像処理プログラムを記録するコンピュータにより読み取りできる一時的でない記録媒体、等であっても構わない。
さらに、本発明は上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明の態様を形成することができる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。このように、発明の主旨を逸脱しない範囲内において種々の変形や応用を行うことができるのは勿論である。
1…画像処理装置
2…画素ずらし超解像画像生成部
3…評価領域設定部
4…合成精度評価部
5…画素充填率評価部
6…決定部
7…操作部
8…表示部
11…動きベクトル算出部
12…動きベクトル選択部
13…動きベクトル評価部
14…重み係数算出部
15…空間周波数算出部
16…空間周波数評価部
2…画素ずらし超解像画像生成部
3…評価領域設定部
4…合成精度評価部
5…画素充填率評価部
6…決定部
7…操作部
8…表示部
11…動きベクトル算出部
12…動きベクトル選択部
13…動きベクトル評価部
14…重み係数算出部
15…空間周波数算出部
16…空間周波数評価部
Claims (12)
- 連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理装置であって、
画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成部と、
前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定部と、
評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価部と、
前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定部と、
を備えることを特徴とする画像処理装置。 - 前記合成精度評価部は、前記複数の画素充填率評価値の中の最大の画素充填率評価値が第1の所定範囲内の値であるか否かを判定して、前記第1の所定範囲内の値でないときには、前記評価領域設定部に、前記領域抽出範囲および前記複数の評価領域を再設定させ、
前記合成精度評価部は、再設定された前記複数の評価領域に対して再度処理を行うことを特徴とする請求項1に記載の画像処理装置。 - 前記合成精度評価部により前記最大の画素充填率評価値が前記第1の所定範囲内の値であると判定されたときには、前記決定部は、前記最大の画素充填率評価値の評価領域を前記決定領域に決定することを特徴とする請求項2に記載の画像処理装置。
- 前記合成精度評価部は、前記複数の評価領域の内の、前記画素充填率評価値が第2の所定範囲内の値である特定の評価領域のみに対して動きベクトルを取得して評価することにより、前記特定の評価領域それぞれの動きベクトル評価値を算出し、
前記決定部は、さらに前記動きベクトル評価値に基づいて、前記画素充填率評価値が前記第2の所定範囲内の値である前記特定の評価領域の中から、前記決定領域を決定することを特徴とする請求項1に記載の画像処理装置。 - 前記合成精度評価部は、前記動きベクトル評価値の中の最大の動きベクトル評価値が第3の所定範囲内の値であるか否かを判定して、前記第3の所定範囲内の値でないときには、前記評価領域設定部に、前記領域抽出範囲および前記複数の評価領域を再設定させ、
前記合成精度評価部は、再設定された前記複数の評価領域に対して再度処理を行うことを特徴とする請求項4に記載の画像処理装置。 - 前記合成精度評価部により前記最大の動きベクトル評価値が前記第3の所定範囲内の値であると判定されたときには、前記決定部は、前記最大の動きベクトル評価値の評価領域を前記決定領域に決定することを特徴とする請求項5に記載の画像処理装置。
- 前記合成精度評価部は、
評価領域の動きベクトルを前記複数の評価領域のそれぞれについて評価して複数の動きベクトル評価値をさらに算出し、
前記複数の画素充填率評価値の平均値および分散値を算出すると共に、前記複数の動きベクトル評価値の平均値および分散値を算出し、
前記画素充填率評価値の平均値および分散値と、前記動きベクトル評価値の平均値および分散値と、に基づいて、前記画素充填率評価値に対する第1の重み係数、および前記動きベクトル評価値に対する第2の重み係数を算出し、
前記第1の重み係数を乗算した前記画素充填率評価値と前記第2の重み係数を乗算した前記動きベクトル評価値とを加算した値を総合評価値として、前記複数の評価領域に対して前記総合評価値をそれぞれ算出し、
前記決定部は、前記総合評価値が最大値となる評価領域を前記決定領域に決定することを特徴とする請求項1に記載の画像処理装置。 - 前記合成精度評価部は、前記画素充填率評価値の平均値が第4の所定範囲外の値であることと、前記動きベクトル評価値の平均値が第5の所定範囲外の値であることと、の少なくとも一方が成立するときには、前記評価領域設定部に、前記領域抽出範囲および前記複数の評価領域を再設定させ、
前記合成精度評価部は、再設定された前記複数の評価領域に対して再度処理を行うことを特徴とする請求項7に記載の画像処理装置。 - 前記動きベクトルに代えて、評価領域の空間周波数を算出して用いることを特徴とする請求項4〜8の何れか一項に記載の画像処理装置。
- 前記決定部により決定された前記決定領域を表示する表示部をさらに備えることを特徴とする請求項1に記載の画像処理装置。
- 連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理をコンピュータに行わせるための画像処理プログラムであって、
コンピュータに、
画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成ステップと、
前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定ステップと、
評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価ステップと、
前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定ステップと、
を行わせるための画像処理プログラム。 - 連続して撮影された複数の画像を合成して、前記複数の画像よりも解像度の高い合成画像を生成する画像処理方法であって、
画像を構成する複数の画素のそれぞれを前記合成画像を構成するための高解像度の画像空間に位置合せして配置することを、前記複数の画像に対して行うことにより、前記合成画像を生成する画素ずらし超解像画像生成ステップと、
前記合成画像に対して、領域抽出範囲を設定すると共に、前記領域抽出範囲内に複数の評価領域を設定する評価領域設定ステップと、
評価領域の画素充填率を前記複数の評価領域のそれぞれについて評価して複数の画素充填率評価値を算出する合成精度評価ステップと、
前記複数の画素充填率評価値に基づいて、前記複数の評価領域の中から決定領域を決定する決定ステップと、
を備えることを特徴とする画像処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018103388A JP2019207611A (ja) | 2018-05-30 | 2018-05-30 | 画像処理装置、画像処理プログラム、画像処理方法 |
US16/367,196 US10861135B2 (en) | 2018-05-30 | 2019-03-27 | Image processing apparatus, non-transitory computer-readable recording medium storing computer program, and image processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018103388A JP2019207611A (ja) | 2018-05-30 | 2018-05-30 | 画像処理装置、画像処理プログラム、画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019207611A true JP2019207611A (ja) | 2019-12-05 |
Family
ID=68694132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018103388A Pending JP2019207611A (ja) | 2018-05-30 | 2018-05-30 | 画像処理装置、画像処理プログラム、画像処理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10861135B2 (ja) |
JP (1) | JP2019207611A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018220681A1 (ja) * | 2017-05-29 | 2018-12-06 | オリンパス株式会社 | 画像処理装置、画像処理方法および画像処理プログラム |
JP2021118466A (ja) * | 2020-01-28 | 2021-08-10 | キヤノン株式会社 | 撮像装置およびその制御方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3956861B2 (ja) | 2003-02-05 | 2007-08-08 | コニカミノルタフォトイメージング株式会社 | 撮像装置 |
JP4367264B2 (ja) * | 2004-07-12 | 2009-11-18 | セイコーエプソン株式会社 | 画像処理装置、画像処理方法、および、画像処理プログラム |
JP5790944B2 (ja) * | 2010-02-26 | 2015-10-07 | 日本電気株式会社 | 画像処理方法、画像処理装置及びプログラム |
GB201313681D0 (en) * | 2013-07-31 | 2014-01-08 | Mbda Uk Ltd | Image processing |
-
2018
- 2018-05-30 JP JP2018103388A patent/JP2019207611A/ja active Pending
-
2019
- 2019-03-27 US US16/367,196 patent/US10861135B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10861135B2 (en) | 2020-12-08 |
US20190370937A1 (en) | 2019-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9992478B2 (en) | Image processing apparatus, image pickup apparatus, image processing method, and non-transitory computer-readable storage medium for synthesizing images | |
JP6335434B2 (ja) | 撮像装置、その制御方法およびプログラム | |
US8810672B2 (en) | Image processing method, image processing device, and recording medium for synthesizing image data with different focus positions | |
JP6308748B2 (ja) | 画像処理装置、撮像装置及び画像処理方法 | |
JP6047025B2 (ja) | 撮像装置及びその制御方法 | |
JP2008092297A (ja) | 画像処理装置、画像処理プログラム、画像製造方法、及び記録媒体 | |
JP6362068B2 (ja) | 距離計測装置、撮像装置、距離計測方法、およびプログラム | |
JP2013058931A (ja) | 画像処理装置及び画像処理方法、並びにプログラム | |
US20150042839A1 (en) | Distance measuring apparatus, imaging apparatus, and distance measuring method | |
JP2015148532A (ja) | 距離計測装置、撮像装置、距離計測方法、およびプログラム | |
JP2018107526A (ja) | 画像処理装置、撮像装置、画像処理方法およびコンピュータのプログラム | |
JP6529533B2 (ja) | 撮像装置、撮像装置の制御方法、及び、プログラム | |
JP5212046B2 (ja) | デジタルカメラおよび画像処理装置並びに画像処理プログラム | |
JP6604908B2 (ja) | 画像処理装置、その制御方法、および制御プログラム | |
JP2019207611A (ja) | 画像処理装置、画像処理プログラム、画像処理方法 | |
JP6564284B2 (ja) | 画像処理装置および画像処理方法 | |
JP6478587B2 (ja) | 画像処理装置、画像処理方法およびプログラム、並びに撮像装置 | |
JP2023033355A (ja) | 画像処理装置およびその制御方法 | |
JP5440626B2 (ja) | 撮影装置、合成画像作成方法及びプログラム | |
JP6218520B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2018074362A (ja) | 画像処理装置、画像処理方法およびプログラム | |
JP6545229B2 (ja) | 画像処理装置、撮像装置、画像処理装置の制御方法およびプログラム | |
JP2020136697A (ja) | 画像処理装置、撮像装置、画像処理方法、及びプログラム | |
JP7113327B1 (ja) | 撮像装置 | |
JP2012257157A (ja) | 画像合成装置 |