JP7102150B2 - 画像処理装置、画像処理方法、およびプログラム - Google Patents

画像処理装置、画像処理方法、およびプログラム Download PDF

Info

Publication number
JP7102150B2
JP7102150B2 JP2018001787A JP2018001787A JP7102150B2 JP 7102150 B2 JP7102150 B2 JP 7102150B2 JP 2018001787 A JP2018001787 A JP 2018001787A JP 2018001787 A JP2018001787 A JP 2018001787A JP 7102150 B2 JP7102150 B2 JP 7102150B2
Authority
JP
Japan
Prior art keywords
image
images
image processing
compositing
reliability
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.)
Active
Application number
JP2018001787A
Other languages
English (en)
Other versions
JP2019121981A (ja
Inventor
亨 石橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018001787A priority Critical patent/JP7102150B2/ja
Publication of JP2019121981A publication Critical patent/JP2019121981A/ja
Application granted granted Critical
Publication of JP7102150B2 publication Critical patent/JP7102150B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Description

本発明は、被写体等の動きを検出する画像処理技術に関する。
長時間の露光を行うことで例えば天体の日周運動を軌跡として撮影する手法がある。ただし長時間の露光を行うと、その露光時間に応じて画像全体が明るくなってしまうため、所定の時間に達するまで複数回撮影を行い、得られた複数枚の画像の明るい部分を選択して合成することで天体の軌跡を生成することも行われている。しかしながら、天体の日周運動は非常に遅いことから撮影に要する時間は長時間になり、撮影者は、撮影が終了するまで、撮影した画像内に天体の軌跡がどのように写りこんでいるのか分からず、撮影前に構図を決めることが難しい。
一方、例えば特許文献1には、同じ被写体を異なる時間に撮影した第1の撮影画像と第2の撮影画像とから被写体の動きベクトルを算出し、その動きベクトルから被写体の予測軌跡を算出して合成する技術が開示されている。この特許文献1の技術によれば、短時間に天体の日周運動の軌跡をシミュレーション表示することが可能になる。
また例えば特許文献2には、分割露光した複数枚の画像から位置ずれを補正するための移動補正パラメータを算出し、その移動補正パラメータを基に位置ずれを補正して合成することで、天体のブレを抑制した画像を得ることを可能にする技術が開示されている。
特開2017-69939号公報 特開2003-259184号公報
前述の動きベクトルや移動補正パラメータのような動き情報を求めるには、一般的に、画素値の差の絶対値和や、差の二乗和を用いたテンプレートマッチングが行われる。一方で、天体の軌跡撮影では暗い夜空の中の点光源である星等を被写体とした撮影が行われるため、一般的に撮像装置のISO感度は高くなされことが多い。しかしながら、この場合、撮影画像には点状のランダムノイズが発生し易く、それら点状のランダムノイズ等のノイズ成分の影響により、テンプレートマッチングの精度が落ちてしまい、被写体の動きの検出精度が低下してしまうことがある。
そこで、本発明は、ノイズ成分の多い画像であっても高い精度で動き情報を検出可能にすることを目的とする。
本発明は、数の画像を基に被写体の動きを求める画像処理装置であって、前記複数の画像のうちの2枚の画像から動きを検出する検出手段と、前記検出した動きの信頼性を判定する判定手段と、前記複数の画像の少なくとも一部の画像に対して合成を行う合成手段と、を有し、前記判定手段が前記2枚の画像から検出した信頼性が低いと判定した場合に、前記合成手段が、前記複数の画像のうち、異なる少なくとも2種類の組み合わせから合成を行って少なくとも2枚の合成画像を生成し、前記検出手段が、前記少なくとも2枚の合成画像から前記動き検出することを特徴とする。
本発明によれば、ノイズ成分の多い画像であっても高い精度で動き情報を検出可能となる。
実施形態のカメラの概略構成を示すブロック図である。 天体(星)の検出処理を説明する図である。 動きベクトルの検出処理を説明する図である。 ランダムノイズが生じた画像の一例を示す図である。 ランダムノイズを含む画像の動きベクトル検出を説明する図である。 第1実施形態の画像合成を説明する図である。 第1実施形態の動きベクトル検出時の処理のフローチャートである。 第2実施形態の動きベクトル検出時の処理のフローチャートである。 第1、第2実施形態で合成される画像の説明に用いる図である。 第3実施形態で合成される画像の説明に用いる図である。
以下、図面を参照して本発明の好ましい実施形態について説明する。
<第1実施形態>
図1は、第1実施形態の画像処理装置の一適用例としてのデジタルカメラ(以下、カメラ100とする。)の構成例を示す図である。
本実施形態のカメラ100は、バリア102、撮影レンズ103、シャッター101、撮像部22、A/D変換部23、画像処理部24、フォーカス制御部42、露光制御部40、メモリ32、メモリ制御部15、システム制御部50、表示部28を備えている。また、カメラ100は、不揮発性メモリ56、システムメモリ52、システムタイマー53、画像合成部54、演算部51、電源部30、電源制御部80、操作部70、記録媒体I/F18を備える。システム制御部50は、シャッター101、撮像部22、画像処理部24、フォーカス制御部42、露光制御部40、操作部70、電源制御部80、演算部51、システムメモリ52、システムタイマー53、画像合成部54とそれぞれ接続されている。また、システム制御部50、メモリ制御部15、メモリ32、不揮発性メモリ56、記録媒体I/F18は、システムバスを介して互いに接続されている。撮像部22はA/D変換部23と接続され、A/D変換部23は画像処理部24及びメモリ制御部15と接続され、メモリ制御部15は表示部28と画像処理部24に接続されている。電源部30は電源制御部80と接続されている。
シャッター101は絞り機能を有する。バリア102は、シャッター101、撮影レンズ103、及び撮像部22を含む撮像系を覆うことによって、それらを汚れや破損等から保護する。撮影レンズ103は、ズームレンズ及びフォーカスレンズを含むレンズ群である。撮像部22は、撮影レンズ103を透過した光束に基づく光学像を電気的なアナログ信号に変換するCCDやCMOS素子等で構成される撮像素子である。撮像部22の撮像素子は、R、G1、G2、Bのカラーフィルタを備え、R、G1、G2、Bの各色が規則的に配置されたいわゆるベイヤー配列の構成となされているが、これには限定されない。A/D変換部23は、撮像部22で光電変換されたアナログ信号をデジタル信号(画像データ)に変換し、当該画像データを画像処理部24やメモリ制御部15に送信する。
画像処理部24は、A/D変換部23から送信された画像データやメモリ制御部15から取得した画像データ等に対して、画素補間やシェーディング補正などの各種補正処理、ホワイトバランス処理、γ補正処理、色変換処理などの画像処理を行う。また、画像処理部24は、画像の切り出し、変倍処理などを行うことで、電子ズーム機能を実現する。シェーディング補正処理は、A/D変換部23からのデータ或いはメモリ制御部15からのデータに対して撮影レンズ103の特性や撮像部22の収差等の特性に起因して生じるシェーディングを補正するように、画面内の輝度レベルの補正を行う処理である。ホワイトバランス(WB)処理は、シェーディング補正処理後の画像データに対して、画面内の白を基準にして白に合わせるAWB(オートホワイトバランス)処理である。本実施形態において、シェーディング補正は撮像部22の撮像素子の2次元の座標(位置)に応じて画素ごとにゲインをかける補正であり、ホワイトバランス処理はベイヤー配列のR、G1、G2、Bの色成分ごとに異なるゲインをかける処理である。また、画像処理部24は、ベイヤー毎のRAW画像から汎用的な画像フォーマットであるYUV形式などへ現像する機能、Jpegなどへのエンコードやデコード機能をも有する。さらに、画像処理部24は、後述する複数枚の画像のなかの少なくとも2枚の画像から、動き情報の一例である動きベクトルを算出する機能も有する。
画像合成部54は、複数の画像のなかの少なくとも2枚の画像を合成する合成処理回路を備える。画像合成部54は、単純な加算合成や加算平均合成だけでなく、合成対象の画像の各画素或いは各領域で最も明るい値を持つ画像を選択し、それらを合成して1枚の画像データを生成する比較明合成処理の機能も備えている。画像合成部54は、合成対象の画像の各画素或いは各領域で暗い値を持つ画像を選択し、それらを合成して1枚の画像データを生成する比較暗合成処理の機能を備えていてもよい。なお、図1では、画像合成部54と画像処理部24が別の構成となされた例を挙げているが、これら画像合成部54と画像処理部24は一体に構成されていてもよい。
メモリ制御部15は、A/D変換部23、画像処理部24、メモリ32を制御する。メモリ制御部15は、A/D変換部23から出力された画像データを、画像処理部24を介して、或いは、直接メモリ制御部15を介して、メモリ32に書き込むように制御する。
表示部28は、TFT液晶等からなる。表示部28には、システム制御部50により生成されてメモリ32に書き込まれた表示用の画像データが、メモリ制御部15を介して供給される。これにより、表示部28には表示用の画像が表示される。カメラ100は、撮像部22で所定の周期の露光及び読み出しを繰り返し行って順次撮像した画像データを、画像処理部24、メモリ制御部15等を経て表示部28に順次表示することで、ライブビュー表示や電子ファインダー機能を実現可能となされている。また、表示部28は、システム制御部50の指示により任意に表示をON/OFFすることが可能であり、表示をOFFにした場合にはカメラ100の電力消費を大幅に低減することが出来る。
メモリ32は、撮影した静止画像や動画像を格納するためのメモリであり、所定枚数の静止画像や所定時間の動画像を格納するのに十分な記憶量を備えている。これにより、複数枚の静止画像を連続して撮影する連写撮影の場合にも、高速かつ大量の画像書き込みをメモリ32に対して行うことが可能となる。また、メモリ32は、システム制御部50の作業領域としても使用可能となされている。
システム制御部50は、カメラ100全体を制御する。システム制御部50は、後述する不揮発性メモリ56に記録されたプログラムを実行することにより、本実施形態に係る各処理や制御を実現する。システムメモリ52は、RAMからなり、システム制御部50の動作用の定数、変数、不揮発性メモリ56から読み出したプログラム等が展開される。また、システム制御部50は、メモリ32、表示部28等を制御することにより表示制御も行う。また、システム制御部50は、不図示のタイミング発生回路を介して、撮像部22、撮影レンズ103、シャッター101の動作タイミング等を制御する。なお、カメラ100は、シャッター101のような機械式シャッターの他に、システム制御部50による制御の下、撮像素子のリセットタイミングによって蓄積時間を制御する電子シャッターの機能も有している。電子シャッターは動画撮影などに使用される。また、システム制御部50は、撮像した画像データを用いて画像処理部24が所定の演算処理を行った演算結果に基づいて、露光制御部40、フォーカス制御部42に対して制御を行う、TTL方式のAF(オートフォーカス)処理やAE(自動露出)処理を行う。
システムタイマー53は、各種制御に用いる時間や、内蔵された時計の時間を計測する計時部である。
不揮発性メモリ56は、電気的に消去・書き換え可能なROM等からなり、システム制御部50が実行するプログラムコード等が書き込まれている。システム制御部50は、不揮発性メモリ56から逐次読み出しながらプログラムコードを実行する。また、不揮発性メモリ56内には、システム情報を記憶する領域や、ユーザ設定情報を記憶する領域が設けられており、システム制御部50は、様々な情報や設定を次回起動時に読み出して、復元することをも実現している。
操作部70は、ユーザにより操作可能な各種ボタンやタッチパネル等からなる。操作部70は、いわゆる半押し操作SW1と全押し操作SW2を検知可能なシャッタースイッチや、メニューボタン、セットボタン、マクロボタン、フラッシュ設定ボタン、単写/連写/セルフタイマー切り替えボタン等を有する。また、操作部70は、メニュー移動+(プラス)ボタン、メニュー移動-(マイナス)ボタン、撮影画質選択ボタン、露出補正ボタン、日付/時間設定ボタン等も有する。システム制御部50は、操作部70のシャッタースイッチの半押し操作SW1が検出されると、AF処理、AE処理、AWB処理等の動作開始を指示する。さらに、システム制御部50は、操作部70のシャッタースイッチの全押し操作SW2が検出されると、露光処理、現像処理、圧縮・伸長処理、記録処理という一連の撮影処理の動作開始を指示する。また本実施形態の場合、システム制御部50は、ユーザによる操作部70への操作によって、後述する星空軌跡生成モードの設定、当該星空軌跡生成モードで用いられる露出条件や長秒時露光における連続露光時間等の設定も行う。
電源部30は、例えばアルカリ電池やリチウム電池等の一次電池、NiCd電池やNiMH電池、Li電池等の二次電池、ACアダプター等を含み、カメラ100に設けられる各構成要素で用いられる電力の供給源となされている。電源制御部80は、電源部30からカメラ100に設けられる各構成要素への電力の供給を制御する。
記録媒体I/F18は、メモリカードやハードディスク等の記録媒体120との間でデータ通信を行うインタフェース回路と、メモリカードやハードディスク等の記録媒体120と接続を行うコネクタとを含む。
カメラ100は、静止画像及び動画像を撮影可能であり、例えば長時間の露光(以下、長秒時露光とする)による撮影を複数回行って取得した複数枚の静止画像の明るい部分を選択して合成することで天体の日周運動の軌跡画像を生成可能なモードを有している。本実施形態では、このモードを星空軌跡生成モードと呼ぶことにする。星空軌跡生成モードでは、所定の時間に達するまで長秒時露光を複数回行い、それら複数回の撮影で得られた複数枚の静止画像を比較して、明るい部分のみを合成する比較明合成を行って軌跡画像が生成される。本実施形態では、ユーザからの操作部70への操作によって星空軌跡生成モードが設定されると、カメラ100のシステム制御部50は、星空軌跡生成処理を行うように画像処理部24、画像合成部54等を制御する。星空軌跡生成モードにおいて、画像処理部24は、被写体として同じ星を含む天体が異なる時刻ごとに撮影されることで取得された複数枚の画像、例えば2枚の画像のデータを、メモリ制御部15を介してメモリ32から取得する。そして画像処理部24は、後述するように、撮影で取得された画像や画像合成部54で合成された画像の、少なくとも2枚の画像を用い、同じ星の位置が日周運動により移動した際の動きの方向と動き量(移動量)を表す動き情報として動きベクトルを検出する。
以下、図2(a)~図2(e)を参照しながら、動きベクトルの算出方法について説明する。ここでは、本実施形態のカメラ100の動作モードが、夜空の星等の天体の日周運動の軌跡画像を生成可能な星空軌跡生成モードに設定されている場合を例に挙げて説明する。
本実施形態において、画像処理部24は、動きベクトルを算出する際、図2(a)に示すように1枚の画像200を複数のブロック201に分割する。なお、画像200は星空と山等が含まれた範囲を写した画像であるとする。図2(a)には画像200を10×8にブロック分割した例を挙げているが、分割数は、この例には限定されず、画像の画素数などに応じて適宜変更されても良い。例えば撮影レンズ103の焦点距離が短い、いわゆる広角レンズの場合には、画角に対して星が小さく、多数の星が写り込む可能性が高いため、ブロックサイズを小さくすることも好ましい様態の一つである。また図2(a)では、1ブロックの形状が正方形となされた例を挙げているが、1ブロックの形状は長方形などその他の形状でも良い。
次に、画像処理部24は、1枚の画像200を分割したブロック201の中から点光源の被写体である星が写っているブロックを抽出する。画像処理部24は、星が写っているブロックを抽出するために、ブロック毎のヒストグラムを作成する。図2(a)の画像200の例において、山など暗い部分のみを含むブロック213からは、図2(e)に示すように暗い部分に対応した略々一つのピーク232が現れたヒストグラムが得られる。また例えば、山などの暗い部分と少し明るい空の部分とが含まれるブロック212からは、図2(d)に示すように山の暗い部分に対応したピーク232と空の少し明るい部分に対応したピーク230との略々二つのピークが現れたヒストグラム222が得られる。また例えば、星が写っていない空の部分だけが含まれるブロック211からは、図2(c)に示すように、空の少し明るい空の部分に対応した略々一つのピーク230が現れたヒストグラムが221得られる。また例えば星が写っているブロック210からは、図2(b)に示すように、空の部分に対応したピーク230と、空よりも明るい星に対応したピーク231との、略々二つのピークが現れたヒストグラム220が得られる。画像処理部24は、画像200からブロック毎のヒストグラムを作成し、それらブロック毎のヒストグラムの中のピークを用いることで、山など空以外の部分を含まず、空に星のみが写っているブロックを抽出する。図2(b)~図2(e)のヒストグラムが得られている場合、画像処理部24は、空に対応したピーク230と星に対応したピーク231とを含むヒストグラム220が生成された図2(a)のブロック210を、星が写っているブロックとして抽出する。
ここで、続けて撮影された2枚の画像があり、1枚目の画像が図3(a)に示すような画像301で、次に撮影された2枚目の画像が図3(b)に示すような画像302であったとする。また、これら画像301,302は、ともに前述したようにブロック分割されているとする。そして、2枚目の画像302が撮影された時には、日周運動によって、1枚目の画像301が撮影された時よりも天体全体が右回り方向に動いた状態になっているとする。このため、1枚目の画像301と2枚目の画像302の両画像内で同じ位置のブロック310に着目した場合、1枚目の画像301のブロック310内に写っていた星は、2枚目の画像302のブロック310内では、右下方向に位置している。画像処理部24は、このような1枚目の画像301と2枚目の画像302のブロックを用いて、テンプレートマッチングを行うことにより、動き情報としての動きベクトルを検出する。
画像処理部24は、前述した2枚の画像301,302のブロック310を用いて動き情報を検出する際、図3(c)に示すように、図3(a)の1枚目の画像301のブロック310内で星を含むサブブロック321を設定し、これをテンプレートとする。そして、画像処理部24は、この星を含むサブブロック321のテンプレートと、図3(b)の2枚目の画像302のブロック310内のサブブロックとの間の類似度を求める。本実施形態の場合、画像処理部24は、星を含むサブブロック321のテンプレートを、図3(d)に示すように、図3(b)の2枚目の画像302内のブロック310内で1画素ずつ順にずらすように走査して画素値の差分を求める。本実施形態において、テンプレートとサブブロックから算出される画素値の差分としては、一例として、差の絶対値和(Sum of Absolute Difference、以下、SADとする)の値を求めるとする。本実施形態の場合、このSAD値が、テンプレートとサブブロックとの類似度を表す値として算出される。図3(d)において、テンプレートを例えば右にm画素、下にn画素ずらした時のSAD値が最も小さい値、つまり類似度が最も大きい値になったとすると、その位置のサブブロック321eがテンプレートと類似していると判断できる。この場合、1枚目の画像301の撮影がなされてから2枚目の画像302が撮影された時までの間に、天体は右にm画素、下にn画素分だけ移動したことがわかる。画像処理部24は、前述したような処理を、図2(a)のように星が検出されたブロック全てに適用することにより、天体の動きベクトルを算出する。また、画像処理部24は、天体の動きベクトルが算出されなかったブロックについては、近くのブロックから補間して動きベクトルを算出する。
ここで、前述したように1画素ずつずらして算出される画素値の差分によりSAD値を求める処理には、ある程度長い処理時間が必要となる。このため、画像処理部24は、1枚目の画像と2枚目の画像をそれぞれ縮小し、その縮小した画像を用いて前述同様の処理を行って大まかな動きベクトルを算出し、その情報を元に、縮小していない画像について詳細な動きベクトルを算出するようにしても良い。例えば、画像処理部24は、縮小していない2枚目の画像について、大まかな動きベクトルで示される方向に対応した幾つかのサブブロックのみを走査対象とし、その大まかな動きベクトルで示される方向以外の方向のサブブロックを走査対象から除外する。これにより、処理時間を短縮することが可能となる。
そして、前述のようにして求めた動きベクトル(動き情報)は、例えば特許文献1の技術のように軌跡をシミュレートして表示させたり、或いは特許文献2の技術のように動きを補正して合成することでブレのない画像を生成したりする際に使用可能である。
しかしながら、一般に、高ISO感度で撮影が行われたり、露光時間が長くなったり、撮像素子の温度が高くなったりすると、ランダムノイズが発生しやすい。特に、暗い天体写真では、高ISO感度で撮影が行われることが多く、さらに天体の軌跡を撮影する場合は露光時間が長くなり易く、またさらに長時間の撮影では撮像素子の温度も上がり易い。このような場合、例えば図4(a)に示す1枚目の画像401と、図4(b)に示す2枚目の画像402において、画像全体にランダムノイズが発生することがある。
図5(a)と図5(b)は図3(c)と図3(d)同様に示した図であり、図5(a)は図4(a)の1枚目の画像401から検出された星を含むブロック510、図5(b)は図4(b)の2枚目の画像402の同ブロック510を示している。そして、前述同様に、図5(a)に示す1枚目の画像のブロック510内で星を含むサブブロック521をテンプレートとし、図5(b)に示す2枚目の画像のブロック510内でSAD値が求められる。しかし、ランダムノイズがあると、最小SAD値から検出されるサブブロックとして、本来正しい動きベクトルが得られるはずの「右にm画素、下にn画素」のサブブロック521eではなく、別の誤ったサブブロックが検出されてしまうことがある。この例の場合、1枚目の画像のブロック501において星とランダムノイズの輝点とが含まれたサブブロック521がテンプレートに設定されているため、当該テンプレートを用いた場合、サブブロック521cに対応したSAD値が最小SAD値となる。このように、誤ったサブブロックが検出されると、正しい動きベクトルを算出できなくなる。
そこで、本実施形態では、図6に示すように、少なくとも2つの画像を合成した合成画像を用いて動きベクトルの算出を行うことで、ランダムノイズの影響を低減させて高い精度の動きベクトル検出を可能とする。なお、図6では、星とランダムノイズとを区別し易く見せるために、天体の軌跡を長めに表現している。
図6において、画像601は1枚目に撮影された画像であり、以下、画像602は2枚目の画像、画像603は3枚目の画像であるとする。第1実施形態において、画像合成部54は、1枚目の画像601と2枚目の画像602とを合成処理641して1枚目の合成画像631を生成する。さらに、画像合成部54は、2枚目の画像602と3枚目の画像603とを合成処理642して2枚目の合成画像632を生成する。なお、本実施形態で用いられる合成処理は、上述した加算合成でも良いし、比較明合成でも良い。
そして、画像処理部24は、1枚目の合成画像631と2枚目の合成画像632について、それぞれ前述同様にブロック分割し、1枚目の合成画像631のブロック内で星を含むサブブロックをテンプレートとする。さらに前述同様に、画像処理部24は、2枚目の合成画像632のブロック内で走査を行ってテンプレートとの類似度が最大となるサブブロック、つまりSAD値が最小SAD値となるサブブロックを探索して、動きベクトルを求める検出処理643を行う。
ここで、画像内に写っている天体(星)の大きさ(1つの星を構成する画素数)は、天体の明るさや大きさ、撮影レンズ103の焦点距離や収差の度合い、さらには露光時間、撮像素子の1画素あたりの大きさなどによっても異なるが、数ピクセル程度である。したがって、SAD値を取得する際にはランダムノイズの影響を受け易いが、本実施形態のように、例えば2枚を合成した場合、当該合成後の天体の画素数は約2倍になり十数画素となる。また、合成を行った場合、星のような点状の天体は軌跡となって線状になることから、ランダムノイズの影響を受け難く(つまりランダムノイズとは区別し易く)なる。したがって、本実施形態では、合成の対象となる画像を選択する際には、被写体(天体)の動きが軌跡として合成されるように画像の選択を行う。これらにより、本実施形態において画像合成を行った場合、合成画像上での天体とランダムノイズとの差が大きくなり、前述のように誤ったサブブロックが検出されることが略々無くなって、正しい動きベクトルを正確に検出することが可能となる。
図7は、本実施形態のカメラ100において星空軌跡生成モード時に行われる動きベクトル検出処理の流れを示すフローチャートである。このフローチャートの処理は、ハードウェア構成により実現されても良いし、ソフトウェア構成により実現されても良い。ソフトウェア構成により各部の処理が実行される場合、それら本実施形態にかかるプログラム(ソフトウェア)をCPU等が実行することにより実現される。本実施形態にかかるプログラムは、不揮発性メモリ56に予め用意されていても良いし、記録媒体等から取得されても、或いは不図示のインターネット等のネットワークを介してダウンロードされても良い。なお、以下のフローチャートの説明では、処理ステップS700~処理ステップS708をS700~S708と略記する。これらのことは後述する他のフローチャートにおいても同様とする。
図7のフローチャートにおいて、S701で処理を開始すると、システム制御部50は、S702とS703の処理として1枚目の画像と2枚目の画像を取得する。これらの画像は、実際に撮影が行われて取得されても良いし、予め撮影されてメモリや記録媒体等に記憶された画像を読み出すことにより取得されても良い。図7の例では、S702とS703においてそれぞれ画像が1枚撮影される場合を挙げている。S702とS703で取得された画像は画像処理部24に送られる。
次にS704において、画像処理部24は、S702とS703で取得された2枚の画像、又は、後述するS7076からS708までで合成処理された合成画像を用いて、前述した処理により動きベクトルを算出する。
次にS705において、画像処理部24は、S704で算出された動きベクトルの信頼性を評価する。画像処理部24は、S705の動きベクトルの信頼性評価のために、以下のような処理を行う。
前述のようなSAD値を用いたテンプレートマッチング処理において、例えばサブブロックを上下9画素ずつずらしながらSAD値を算出する場合には81通りのSAD値が算出されることになる。通常はこの81個のSAD値の中から最小値を求める。しかし、例えば極小値が複数存在する場合は、例えば1枚目と2枚目の画像のブロックで同じ天体が存在する場合の他に、1枚目の画像のブロック内の天体と2枚目の画像のブロック内のランダムノイズとが似ており、その影響で極小値となった可能性がある。したがって、画像処理部24は、極小値が所定の閾値より多く複数存在する場合には、動きベクトルの信頼性が低いと判定する。言い換えると、テンプレートとサブブロックとの類似度の極大値が所定の閾値より多く複数存在する場合には、動きベクトルの信頼性が低いと判定する。
また極小値が複数存在したとしても、複数の極小値の1つだけが他の値よりも小さければ正しい動きベクトルを算出できたと判定できるが、最小の極小値と2番目に小さい極小値とが近い(ばらつきが少ない)場合、画像処理部24は、信頼性が低いと判定する。さらに、画像処理部24は、SAD値の最小値と最大値との差が少ない場合も信頼性が低いと判定する。言い換えると、類似度の極大値の標準偏差又は類似度の標準偏差が所定の閾値より小さい場合、画像処理部24は、信頼性が低いと判定する。また、画像処理部24は、検出された動きベクトルの大きさ(値)が所定の閾値より小さい場合にも、信頼性が低いと判定する。
また、撮影時のISO感度が高い場合、撮像素子の温度が高い場合、露光時間が長い場合はランダムノイズが増える傾向にある。さらに、撮影レンズ103の焦点距離が短い場合は天体(星)の大きさ(画素数)が小さいためランダムノイズと誤検出され易くなる。このため、これらISO感度、撮像素子の温度、露光時間、レンズの焦点距離など、撮影時の条件を基に、前述した信頼性を判定する際のそれぞれの閾値を変えることも好ましい。その他にも、撮影素子について被写体像が結像しない領域を設け、その部分から得られたデータのノイズ成分を検出して、そのノイズ量に応じたS/Nに基づいて信頼性判定の閾値を変えることも好ましい様態の一つである。
S705において、画像処理部24は、信頼性が低いと判定した場合にはS706に処理を進める。一方、S705において信頼性が低くない(信頼性が高い)と判定した場合には、画像処理部24は、S704で検出された動きベクトルを、天体の日周運動の軌跡画像の生成時に使用する動きベクトルとして、図7のフローチャートの処理を終了する。
S706に進むと、画像処理部24は、3枚目の画像を取得する。S706における画像取得も、S702、S703と同様に実際に撮影が行われて取得されても良いし、メモリ等から取得されても良い。ここでは、S702とS703同様に、画像が1枚撮影されて取得されるとする。
次にS707において、画像合成部54は、1枚目からN-1枚目までの各画像を合成対象の画像として選択し、それら画像を合成する。前述の図6の例を挙げて説明すると、画像合成部54は、画像601と画像602を合成する。この時の合成処理は、前述したように画像内の明るい部分を選択する比較明合成でも良いし、加算合成でも良く、合成方法は限定されるものではない。図7のフローチャートの例では、S707において比較明合成が行われるとする。
次にS708において、画像合成部54は、2枚目からN枚目までの各画像を合成対象の画像として選択し、それら画像をS707と同様に合成する。前述の図6を例に挙げると、画像合成部54は、画像602と画像603を合成する。その後、画像処理部24は、S704において、S707、S708で合成処理された合成画像を用いて、前述したように動きベクトルを検出する。このように本実施形態では、S705で信頼性が低いと評価された場合、S706からS708までで生成した合成画像を用いて、S704の動きベクトル検出処理が行われ、当該検出された動きベクトルに対してさらにS705の信頼性評価が行われる。すなわち、本実施形態の場合、S706からS708に進んだ後にS704に戻る処理が、S705で動きベクトルの信頼性が高いと評価されるまで繰り返される。本実施形態によれば、このようにすることで信頼性の高い動きベクトルを検出することが可能となる。
図9は、第1実施形態と後述する第2実施形態において動きベクトルを検出する際に用いられる画像を説明する図である。なお、図9中の「+」は合成を表し、括弧内の「+」は後述する第2実施形態における合成枚数を算出する加算を表している。図9に示すように、第1実施形態において、1回目の動きベクトル検出では1枚目と2枚目の画像を用い、2回目の動きベクトル検出では1枚目と2枚目の画像の合成画像と2枚目と3枚目の画像の合成画像とを用いて動きベクトル検出が行われている。また、動きベクトルの信頼性が低い場合には前述のように画像合成処理と信頼性評価処理が繰り返される。すなわち、第1実施形態では、1枚目からN-1枚目までの画像を合成して1枚目の合成画像を生成し、2枚目からN枚目までの画像を合成して2枚目の合成画像を生成するような合成処理が行われ、それら合成画像を用いた動きベクトル検出が行われる。
なお、前述のように画像合成と動きベクトルの検出を繰り返したとしても、動きベクトルの信頼性が向上しない場合、画像処理部24は、動きベクトルの検出を失敗したと判断し、その旨をシステム制御部50に通知する。この場合、システム制御部50は、例えばユーザからの指示若しくは自動で、撮影時の条件を変えて、図7のフローチャートの処理を再実行するように制御しても良い。
また、前述のフローチャートでは、信頼性が向上するまで処理を繰り返しているが、予め決められた枚数の画像についてのみ処理を行うようにしても良い。例えば1枚目から4枚目までの画像を取得し、1,2,3枚目の画像の合成画像と、2,3,4枚目の画像の合成画像から動きベクトルを算出するのみでも良い。またこの場合、合成される画像の枚数は、露光時間や撮影レンズ103の焦点距離におうじて可変して決定しても良い。また、本実施形態ではSAD値を用いたが、差の二乗の和(Sum of Squared Difference:SSD)やNCC(Normalized Cross Correlation)などを用いたテンプレートマッチング方法を用いても良い。
以上説明したように、第1実施形態のカメラ100においては、画像を合成した合成画像を用いてテンプレートマッチングを行うことで、画像がノイズ成分の多い画像であっても高精度に動きベクトルを算出することが可能となる。
<第2実施形態>
以下、第2実施形態のカメラ100について図8を用いて説明する。なお、第2実施形態のカメラ100の構成は前述した図1と同様であるため、その図示と説明は省略する。
図8は、第2実施形態のカメラ100において星空軌跡生成モード時に行われる動きベクトル検出処理の流れを示すフローチャートである。図8のフローチャートにおいて、S801からS805までは、図7のS701からS705と同じ処理であるため、それらの説明は省略する。図8のフローチャートの場合、S805において信頼性が低いと判定された場合には、S806の処理に進む。
S806に進むと、画像処理部24は、続けて2枚の画像を取得する。S806における画像取得も前述同様に実際に撮影が行われて取得されても良いし、メモリ等から取得されても良い。
次にS807において、画像合成部54は、1枚目と2枚目の画像を合成対象の画像として選択し、それら画像を例えば比較明合成により合成する。すなわち、S807において、画像合成部54は、1枚目からN/2枚目までの画像を合成対象の画像として選択し、それら画像を合成する。
次にS808において、画像合成部54は、S806で取得された2枚の画像、例えば3枚目と4枚目の画像を合成対象の画像として選択し、それら画像を比較明合成等により合成する。すなわち、S808において、画像合成部54は、N/2+1枚目からN枚目までの画像を合成対象として選択し、それら画像を合成する。
そして、画像処理部24は、S804において、S807、S808で合成処理された合成画像を用いて動きベクトルの検出が行われる。第2実施形態では、S805で信頼性が低いと評価された場合、S806からS808までで生成した合成画像を用いて、S804の動きベクトル検出処理が行われ、当該検出された動きベクトルに対してさらにS805の信頼性評価が行われる。このように、第2実施形態では、S806からS808に進み、さらにS804に戻る処理が、S805で動きベクトルの信頼性が高いと評価されるようになるまで繰り返される。
前述した第1実施形態では、動きベクトルの信頼性が低い場合、図9に示したように、1枚目からN-1枚目までの画像により1枚目の合成画像を生成し、2枚目からN枚目までの画像により2枚目の合成画像を生成するような合成処理が行われる。これに対し、第2実施形態では、動きベクトルの信頼性が低い場合、図9に示すように、1枚目からN/2枚目までの画像を合成して1枚目の合成画像を生成し、N/2+1からN枚目までの画像を合成して2枚目の合成画像を生成するような合成処理が行われる。
第1実施形態の場合は、何回目かの動きベクトル検出が行われても算出される動きベクトルの値は同じである。これに対し、第2実施形態の場合には、N回目の動きベクトル検出ではN倍の動きベクトルとなる。このため、S805で信頼性が高いと判定された場合、画像処理部24は、S809において、算出された動きベクトルをNで除算する処理を行う。第2実施形態では、このS809の除算処理後の動きベクトルを、天体の日周運動の軌跡画像の生成時に使用する動きベクトルとし、図8のフローチャートの処理を終了する。これにより、第2実施形態においても、信頼性の高い動きベクトルを検出することが可能となる。
<第3実施形態>
以下、第3実施形態のカメラ100について説明する。なお、第3実施形態のカメラ100の構成は前述した図1と同様であるため、その図示と説明は省略する。
第3実施形態は、第1実施形態で説明した動きベクトル検出の手法と第2実施形態で説明した動きベクトル検出の手法とを自動で切り替え可能とした例である。
前述した第1実施形態の手法では、各撮影画像を取得した際の露光時間が同じである場合には、第2実施形態の動きベクトル検出の手法に比べて処理時間がかからない。つまり、1回の露光時間が例えば30秒だとすると、第1実施形態の場合は30秒×N回の時間で済むが、第2実施形態の場合は30秒×2×N回の時間が必要である。しかし、例えば撮影レンズ103が広角レンズの場合や、都会など空が明るい場合の撮影のように露光時間が短くなる撮影条件などでは、動きベクトルとして検出される値が小さくなり、誤差を生み易い。したがって、このような場合は、第2実施形態の手法のように、回数を重ねるほど動きベクトルの量が大きくなる処理を用いた方が、誤差を含み難い。
第3実施形態では、前述のように撮影条件によって好適な手法が異なる場合に対応できるように、動きベクトル検出の手法を切り替える。第3実施形態の場合、例えば、撮影レンズ103の焦点距離の値が、予め決められた値よりも短い場合には、第2実施形態の手法を採用する。また例えば、露光時間が予め決められた時間よりも短い場合には、第2実施形態の手法を採用する。また例えば、1枚目と2枚目の画像から算出された動きベクトルが、予め決められた閾値よりも小さい場合には、第2実施形態の手法を採用する。一方、各撮影画像を取得した際の露光時間が同じである場合には、第1実施形態の手法を採用する。第3実施形態によれば、このように撮影条件によって好適な手法を自動的に切り替えることにより、より好適に高精度の動きベクトルを算出可能となる。
なお、ここまで例示した合成処理や合成する画像の選択の仕方は一例であり、前述した例には限定されない。前述のように続けて撮影された画像を選択する場合だけでなく、所定枚数分又はユーザにより任意に設定された枚数分を飛ばすようにして選択した画像が合成に用いられても良い。また例えば、露光時間が短い場合には、図10に示すように、検出される動きベクトルが(N-m)回分になるように画像を選択して合成を行うようにしていくことも好ましい。すなわち、画像合成部54は、1,2,…,(N-m)枚目の画像を順次に合成し、m,(m+1),…,枚目の画像を順次に合成する。なお、mは1<m<Nの数であり、m、Nは、画像が撮影されたときの露光時間、ISO感度、撮影レンズの焦点距離、算出した動き量の、少なくとも1つに基づいて決定された値である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
15:メモリ制御部、18:記録媒体I/F、22:撮像部、23:A/D変換部、24:画像処理部、32:メモリ、40:露光制御部、42:フォーカス制御部、50:システム制御部、51:演算部、54:画像合成部、56:不揮発性メモリ、100:カメラ、103:撮影レンズ

Claims (9)

  1. 数の画像を基に被写体の動きを求める画像処理装置であって、
    前記複数の画像のうちの2枚の画像から動きを検出する検出手段と、
    前記検出した動きの信頼性を判定する判定手段と、
    前記複数の画像の少なくとも一部の画像に対して合成を行う合成手段と、を有し、
    前記判定手段が前記2枚の画像から検出した信頼性が低いと判定した場合に、
    前記合成手段が、前記複数の画像のうち、異なる少なくとも2種類の組み合わせから合成を行って少なくとも2枚の合成画像を生成し、
    前記検出手段が、前記少なくとも2枚の合成画像から前記動き検出することを特徴とする画像処理装置。
  2. 前記合成手段は、前記画像が撮影されたときの露光時間、ISO感度、撮影レンズの焦点距離、検出した動きの量の、少なくとも1つを基に、前記合成に用いる画像の枚数決定することまたは前記合成に用いる画像選択することを特徴とする請求項に記載の画像処理装置。
  3. 前記合成手段は、前記合成を行った後の画像が、前記被写体の動きが軌跡として合成されるように画像を選択することを特徴とする請求項またはに記載の画像処理装置。
  4. 前記検出手段は、前記少なくとも2枚の画像の一方から取得したテンプレートを、もう一方の画像に対して走査して前記テンプレートとの類似度を取得するテンプレートマッチングによって前記動きを検出することを特徴とする請求項1から3のいずれか1項に記載の画像処理装置。
  5. 前記判定手段は、前記取得した類似度の極大値の数、極大値の標準偏差、類似度の標準偏差、画像のS/N、画像が撮影されたときの露光時間、撮像素子の温度、撮影レンズの焦点距離、検出した動きの量の、少なくとも1つを基に、前記信頼性を判定することを特徴とする請求項4に記載の画像処理装置。
  6. 前記検出手段は、前記類似度の極大値が所定の閾値より多く複数存在する場合、前記極大値の標準偏差または類似度の標準偏差が所定の閾値より小さい場合、前記検出した動きの量が所定の閾値より小さい場合の、いずれかである場合に前記信頼性が低いと判定することを特徴とする請求項に記載の画像処理装置。
  7. 前記検出手段は、画像のS/N、画像が撮影されたときの露光時間、撮像素子の温度、撮影レンズの焦点距離の、少なくともつを基に、前記信頼性の判定に用いる前記所定の閾値を変更することを特徴とする請求項に記載の画像処理装置。
  8. 数の画像を基に被写体の動きを求める像処理方法であって、
    前記複数の画像のうちの2枚の画像から動きを検出する検出工程と、
    前記検出した動きの信頼性を判定する判定工程と、
    前記複数の画像の少なくとも一部の画像に対して合成を行う合成工程と、を有し、
    前記判定工程で前記2枚の画像から検出した信頼性が低いと判定した場合に、
    前記合成工程では、前記複数の画像のうち、異なる少なくとも2種類の組み合わせから合成を行って少なくとも2枚の合成画像を生成し、
    前記検出工程では、前記少なくとも2枚の合成画像から前記動き検出することを特徴とする画像処理方法。
  9. コンピュータを、請求項1からのいずれか1項に記載の画像処理装置の各手段として機能させるためのプログラム。
JP2018001787A 2018-01-10 2018-01-10 画像処理装置、画像処理方法、およびプログラム Active JP7102150B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018001787A JP7102150B2 (ja) 2018-01-10 2018-01-10 画像処理装置、画像処理方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018001787A JP7102150B2 (ja) 2018-01-10 2018-01-10 画像処理装置、画像処理方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019121981A JP2019121981A (ja) 2019-07-22
JP7102150B2 true JP7102150B2 (ja) 2022-07-19

Family

ID=67308049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018001787A Active JP7102150B2 (ja) 2018-01-10 2018-01-10 画像処理装置、画像処理方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP7102150B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7076509B2 (ja) * 2020-08-24 2022-05-27 卓也 生駒 システム及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001078056A (ja) 1999-09-01 2001-03-23 Nippon Hoso Kyokai <Nhk> 動き適応型映像高感度化装置
JP2007272459A (ja) 2006-03-30 2007-10-18 Canon Inc 画像処理装置及び方法、及び撮像装置
JP2015087904A (ja) 2013-10-30 2015-05-07 富士通セミコンダクター株式会社 画像処理装置および画像処理方法
JP2017163191A (ja) 2016-03-07 2017-09-14 オリンパス株式会社 画像処理装置、撮像装置、画像処理方法、およびプログラム
JP2017168982A (ja) 2016-03-15 2017-09-21 キヤノン株式会社 撮像装置、撮像装置の制御方法及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001078056A (ja) 1999-09-01 2001-03-23 Nippon Hoso Kyokai <Nhk> 動き適応型映像高感度化装置
JP2007272459A (ja) 2006-03-30 2007-10-18 Canon Inc 画像処理装置及び方法、及び撮像装置
JP2015087904A (ja) 2013-10-30 2015-05-07 富士通セミコンダクター株式会社 画像処理装置および画像処理方法
JP2017163191A (ja) 2016-03-07 2017-09-14 オリンパス株式会社 画像処理装置、撮像装置、画像処理方法、およびプログラム
JP2017168982A (ja) 2016-03-15 2017-09-21 キヤノン株式会社 撮像装置、撮像装置の制御方法及びプログラム

Also Published As

Publication number Publication date
JP2019121981A (ja) 2019-07-22

Similar Documents

Publication Publication Date Title
US9473698B2 (en) Imaging device and imaging method
KR101303410B1 (ko) 촬상장치 및 촬상방법
JP5643563B2 (ja) 画像処理装置及びその制御方法
US20100149210A1 (en) Image capturing apparatus having subject cut-out function
JP6659162B2 (ja) 撮像装置、撮像装置の制御方法及びプログラム
JP6116299B2 (ja) 撮像装置及びその制御方法
JP2016076805A (ja) 画像処理装置、その制御方法、および制御プログラム、並びに撮像装置
US10839497B2 (en) Image processing apparatus and method
JP7174120B2 (ja) 撮像装置、プログラム、記録媒体、及び制御方法
JP2007129310A (ja) 撮像装置
JP2019101996A (ja) 複数の撮像画像を合成することによりノイズを低減する画像処理装置及び画像処理方法
JP6647246B2 (ja) 画像処理装置、撮像装置、画像処理装置の制御方法およびプログラム
US20160012562A1 (en) Image processing apparatus and image processing method
JP7102150B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP6559014B2 (ja) 撮像装置、その制御方法及びプログラム
JP5569361B2 (ja) 撮像装置およびホワイトバランス制御方法
JP6921606B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP7030565B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP6541416B2 (ja) 画像処理装置及び画像処理方法、プログラム、記憶媒体
JP2015041865A (ja) 画像処理装置及び画像処理方法
JP5743729B2 (ja) 画像合成装置
JP7086774B2 (ja) 撮像装置、撮像方法およびプログラム
JP6218520B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US20190182414A1 (en) Image processing apparatus and method, and image capturing apparatus
US11308580B2 (en) Image processing apparatus, image processing method, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220126

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220706

R151 Written notification of patent or utility model registration

Ref document number: 7102150

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151