JP5061708B2 - 画像処理装置、撮影装置、画像処理方法及びプログラム - Google Patents

画像処理装置、撮影装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP5061708B2
JP5061708B2 JP2007121966A JP2007121966A JP5061708B2 JP 5061708 B2 JP5061708 B2 JP 5061708B2 JP 2007121966 A JP2007121966 A JP 2007121966A JP 2007121966 A JP2007121966 A JP 2007121966A JP 5061708 B2 JP5061708 B2 JP 5061708B2
Authority
JP
Japan
Prior art keywords
image
coordinates
acquired
frame
image processing
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.)
Expired - Fee Related
Application number
JP2007121966A
Other languages
English (en)
Other versions
JP2008278386A (ja
JP2008278386A5 (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2007121966A priority Critical patent/JP5061708B2/ja
Publication of JP2008278386A publication Critical patent/JP2008278386A/ja
Publication of JP2008278386A5 publication Critical patent/JP2008278386A5/ja
Application granted granted Critical
Publication of JP5061708B2 publication Critical patent/JP5061708B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Studio Circuits (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像処理装置、撮影装置、画像処理方法及びプログラムに関するものである。
被写体を、例えば、人物として、カメラを固定して、移動する人物を連写し、連写した複数の画像を重ね合わせると、人物が移動する様子を表して、1枚の静止画像からは得られないような特徴的な連写画像を取得することができる。
このような連写画像を取得するためには、動く動体の画像と動かない静止体の画像とを分離する必要がある。従来、このように動体と静止体画像とを分離し、動体を被写体(撮影対象)として取得する装置がある(例えば、特許文献1,2参照)。
特許文献1に記載の装置は、連写画像において動体を撮影し、現フレーム画像と先行フレーム画像との差分を求め、求めた差分に基づいて両フレーム画像間の動ベクトルを求める。そして、この装置は、この動ベクトルを利用して、動体画像を抽出するようにしている。
また、特許文献2に記載の装置は、水平方向に移動する動体を撮影して得られた複数のフレーム画像において、それぞれ、垂直方向にスリットを設定し、フレーム毎のスリットに映し出されたスリット画像を時間順に並べて時空間画像を形成する。
この時空間画像には、動体が映し出されるとともに、動体後方の静止体は静止したままなので、静止体画像が水平方向に現れる。
この装置は、この時空間画像から、静止体画像だけからなる垂直方向の背景スリット画像を取得し、この背景スリット画像を水平方向に走査して時空間画像との差分を求めることにより、動体画像を静止体画像から分離して取得する。
特許第3793258号公報(第4頁、図1) 特許第3569992号公報(第5−8頁、図1,3,13)
しかし、静止体を被写体として撮影するときに、その前を通行人が通過した場合、静止体である動かない被写体は静止体画像に含まれる。
上記特許文献1に記載の装置では、現フレーム画像と先行フレーム画像との差分を求めるため、静止体画像を取得することはできず、通行人を排除して被写体だけの画像を取得することができない。上記特許文献2に記載の装置でも、同様に静止体画像を取得することはできない。
また、動体を被写体とする場合でも、連写によって得られた被写体画像が重なっていると、上記特許文献1に記載の装置では、動ベクトルを利用しているため、前後のフレーム画像において、前後2つの画像から動ベクトルを取得することができない。動ベクトルを取得することができなければ、動体画像を取得することができない。
また、上記特許文献2に記載の装置では、背景スリット画像と時空間画像との差分を求めることにより、被写体の画像と静止体画像とを分離するため、移動する被写体は、車のように形状が変化しないものである必要がある。従って、人物のように被写体の形状が変化する場合、被写体と静止体画像とを分離することはできない。
本発明は、このような従来の問題点に鑑みてなされたもので、所望の静止体画像を生成することが可能な画像処理装置、撮影装置、画像処理方法及びプログラムを提供することを目的とする。
また、本発明は、静止体画像と複数の動体画像とが重なり合ったストロボ画像を生成することが可能な画像処理装置、撮影装置、画像処理方法及びプログラムを提供することを目的とする。
この目的を達成するため、本発明の第1の観点に係る画像処理装置は、
複数のフレーム画像を取得するフレーム画像取得部と、
前記フレーム画像取得部が取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成する静止体画像生成部と、
前記静止体画像生成部が生成した前記静止体画像と前記各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得する判別パラメータ取得部と、
前記判別パラメータ取得部が座標毎に取得した判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を前記フレーム画像毎に取得する動体領域取得部と、
前記フレーム画像毎に、前記動体領域取得部が取得した前記動体領域の座標と前記静止体画像生成部が生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成するストロボ画像生成部と、を備えたことを特徴とする。
前記判別パラメータ取得部は、設定した座標毎に、
数1に従い、前記静止体画像生成部が生成した前記静止体画像と前記各フレーム画像との同一座標(x,y)における画素値の差を取得し、
数2に従い、前記静止体画像と第nフレーム画像との同一座標(x,y)における第1の標準偏差を取得し、
数3に従い、同一座標(x,y)における前記第1の標準偏差を超える静止体画像の画素値と前記第nフレーム画像の画素値との差を取得し、
数4に従い、第2の標準偏差を前記動体画像を判別するための判別パラメータとして取得し、
前記動体領域取得部は、
数5に従い、前記第nフレーム画像の座標(x,y)において、数1に示す前記画素値の差が、数4に従って取得した前記第2の標準偏差以上の場合には、当該画素値を有効とし、前記第2の標準偏差未満の場合には、当該画素値を無効とするデータを取得し、取得したデータを重ね合わせて、前記静止体画像の透過画素座標を特定する領域マスクデータを作成し、作成した前記領域マスクデータを用いて、前記動体領域を取得するようにしてもよい。
前記動体領域取得部は、前記第nフレーム画像の座標(x,y)において当該画素値を有効、無効とするデータに対し、膨張処理、縮退処理及び穴埋め処理のうちの少なくとも1つの処理を行うことにより、取得した前記動体領域を補正するようにしてもよい。
前記静止体画像生成部は、前記各フレーム画像のそれぞれに対して高調波成分を濾波するフィルタ部を備え、前記フィルタ部で前記高調波成分を濾波した前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから前記静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体画像を生成するようにしてもよい。
前記静止体画像生成部は、前記各フレーム画像の特徴点を取得し、前記各フレーム画像の特徴点の座標を対応させることにより、前記各フレーム画像間の位置ズレ補正を行い、前記位置ズレ補正を行った前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから前記静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体画像を生成するようにしてもよい。
本発明の第2の観点に係る撮影装置は、
動体と該動体後方の静止体とを連写して複数のフレーム画像を取得する撮影部と、
前記撮影部が取得した前記複数のフレーム画像に画像処理を行う上述の画像処理装置と、を備えたことを特徴とする。
本発明の第3の観点に係る画像処理方法は、
複数のフレーム画像を取得するステップと、
取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得するステップと、
取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得するステップと、
前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成するステップと、
生成した前記静止体画像と各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得するステップと、
前記座標毎に取得した前記判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を取得するステップと、
前記フレーム画像毎に、取得した前記動体領域の座標と生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成するステップと、を備えたことを特徴とする。
本発明の第4の観点に係るプログラムは、
コンピュータに、
複数のフレーム画像を取得する手順、
取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得する手順、
取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得する手順、
前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成する手順、
生成した前記静止体画像と各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得する手順、
前記座標毎に取得した前記判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を取得する手順、
前記フレーム画像毎に、取得した前記動体領域の座標と生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成する手順、を実行させるためのものである。
本発明によれば、静止体画像を生成することができる。また、ストロボ画像を生成することができる。
以下、本発明の実施形態に係る撮影装置を図面を参照して説明する。尚、本実施形態では、撮影装置をデジタルカメラとして説明する。
(実施形態1)
実施形態1に係るデジタルカメラの構成を図1に示す。
実施形態1に係るデジタルカメラ1は、画像データ生成部21と、データ処理部22と、ユーザインタフェース部23と、からなる。
このデジタルカメラ1は、動きのある動体と動体後方の動きのない静止体とを連写する機能を有するものであり、連写撮影を行うことにより、1枚の静止画像からは得られない所望の画像を生成するものである。
例えば、デジタルカメラ1は、図2に示すように、静止体3a,3b,3cが画角内に収まる範囲を撮影範囲として、人間2が静止体3a,3b,3cの前を通過する場合に、シャッタボタン1aが押下されると、連写撮影を行う。
そして、デジタルカメラ1は、連写によって、図3(1)〜(7)に示すような7つのフレーム画像Fを取得する。連写によって得られた各フレーム画像Fは、人間2を示す動体画像と静止体3a,3b,3cを示す静止体画像とからなり、静止体3a,3b,3cは人間2の後方に位置するため、静止体画像は、動体画像に対して背景画像となる。
実施形態1に係るデジタルカメラ1は、人間2(動体)を被写体2として、背景画像に、7つの被写体2の画像を重ね合わせ、所望の画像として、図3(8)に示すようなストロボ画像Fstを生成する。
図1に示すユーザインタフェース部23は、ユーザに処理経過を示し、ユーザの操作を受け付けるためのものであり、表示部301と、操作部302と、PCインタフェース装置303と、外部記憶部304と、からなる。
操作部302は、ユーザの操作を受け付けて、その操作情報を取得するためのものであり、電源スイッチ(図示せず)と、撮影ボタン(図示せず)と、シャッタボタン1a(図2)と、メニューボタン(図示せず)と、コントロールキー(図示せず)と、を備える。
電源スイッチは、デジタルカメラ1の電源をオン(ON)、オフ(OFF)するためのものである。
撮影ボタンは、撮影を行う撮影モードを選択するときに押下されるボタンである。シャッタボタン1aは、撮影を行うときに押下されるボタンである。
メニューボタンは、メニューを表示するためのボタンである。メニューには、連写モードを選択するための撮影設定メニューがある。コントロールキーは、写真の選択、各種機能の選択を行うためのものである。
操作部302は、ユーザがこれらのスイッチ、ボタン、キーを操作すると、この操作情報をデータ処理部22のCPU205に供給する。
表示部301は、画像を表示するためのものであり、液晶モニタ等を備える。表示部301は、ビデオ出力装置202から供給されたRGB信号に基づいて、プレビュー画像、ストロボ画像Fst等を表示する。
尚、表示部301は、撮影ボタンが押下されてメニューボタンが押下されると、撮影設定メニューを表示する。
PCインタフェース装置303は、画像データ等を、USB(Universal Serial Bus)規格のデータに変換し、USBケーブル等を介してコンピュータ(図示せず)に送信するとともに、コンピュータからのデータ、信号を受信するためのものである。
外部記憶部304は、生成されたストロボ画像Fstを保存するためのものである。
画像データ生成部21は、被写体2を撮影して画像データを生成するためのものであり、光学レンズ装置101と、イメージセンサ102と、を備える。
光学レンズ装置101は、被写体2を撮影するために、光を集光するレンズなどで構成されたものであり、焦点、露出、ホワイトバランス等のカメラ設定パラメータを調整するための周辺回路を備える。
イメージセンサ102は、光学レンズ装置101が光を集光することによって結像した画像を、デジタル化した画像データとして取り込むためのものであり、CCD(Charge Coupled Device;電荷結合素子)等によって構成される。
尚、画像データ生成部21は、高解像度画像撮影と低解像度画像撮影(プレビュー撮影)とが可能なものである。低解像度画像撮影は、画像解像度がXGA(1024×768ドット)程度で解像度は低いものの、画像を30fps(フレーム/秒)の速さで動画撮影と画像読み出しが可能となる撮影である。
高解像度画像撮影は、例えば、デジタルカメラ1が撮影可能な最大画素数400万画素のカメラである場合、その400万画素の解像度で行う撮影である。但し、読み取り速度は遅くなる。
データ処理部22は、画像データ生成部21から、画像データを取得して、プロジェクタ等(図示せず)に出力するための画像を生成する処理を行うものである。データ処理部22は、メモリ201と、ビデオ出力装置202と、画像処理装置203と、プログラムコード記憶装置204と、CPU205と、から構成される。
メモリ201は、画像データを記憶するためのものである。メモリ201は、画像データを記憶する領域として、図4に示すように、センサ画像記憶領域201aと、処理画像記憶領域201bと、表示画像記憶領域201cと、作業データ記憶領域201dと、を有する。
センサ画像記憶領域201aは、撮影する毎にイメージセンサ102が取り込んだ画像データを一時記憶するための領域である。処理画像記憶領域201bは、画像処理に必要な画像データを一時記憶するための領域である。表示画像記憶領域201cは、表示用の出力画像の画像を記憶するための領域である。作業データ記憶領域201dは、作業に必要なデータを記憶するための領域である。
図1に戻り、ビデオ出力装置202は、RGB信号を生成して出力するものである。ビデオ出力装置202は、メモリ201の表示画像記憶領域201cに格納された画像データを読み出してRGB信号を生成し、生成したRGB信号をユーザインタフェース部23に供給する。
また、ビデオ出力装置202は、生成したRGB信号を、テレビ、PC、プロジェクタ、あるいは、それ以外の外部に供給する。
画像処理装置203は、CPU205に制御されて、画像データに対して画像処理を行うためのものである。画像処理装置203は、ストロボ画像Fstを生成するため、画像処理として、背景画像生成処理、判別パラメータ取得処理、被写体領域取得処理、ストロボ画像生成処理を実行する。以下、各処理について説明する。
(1)背景画像生成処理
背景画像生成処理は、連写によって得られた図3(1)〜(7)に示すようなフレーム画像Fから、図5に示すような静止体画像としての背景画像Fbを生成する処理である。
画像処理装置203は、メモリ201のセンサ画像記憶領域201aから、例えば、図3(1)〜(7)に示すような7つのフレーム画像Fを読み出し、7つのフレーム画像Fを取得する。
画像処理装置203は、取得した各フレーム画像Fに、それぞれ、座標を設定し、設定した座標(x,y)毎に、各フレーム画像Fから同一座標(x,y)の画素値(座標値)を取得し、取得した複数の画素値のうちから静止体を示す静止体画素値を取得する。そして、画像処理装置203は、設定した座標(x,y)毎に取得した静止体画素値に基づいて、静止体画像としての背景画像Fbを生成する。画像処理装置203は、静止体画素値として、同一座標(x,y)の各フレーム画像Fの画像値f(n,x,y)を画素値順に並べた場合に、値が複数の画素値の中央となる中央値を取得する。この中央値は、複数の画素値の代表値であり、この中央値を各座標毎に取得すれば、各中央値からなる画像は背景画像Fbになる。
この中央値を取得する処理を、ストロボ画像Fstを示す図6を用いて説明する。尚、ここでは、説明を簡略化するため、各フレーム画像Fを、白黒で表された画像とする。
例えば、座標(x1,y1)における画素値f(1,x1,y1)〜f(7,x1,y1)の場合、拡大した画素に示すように、背景画像Fbの画素値は白であり、被写体画像Fobjの画素値は、黒である。
静止体3a,3b,3c等は静止しているため、この同一座標(x1,y1)上では、背景画像Fbの画素値の数は、被写体画像Fobjの画素値の数よりも多くなる。
このため、この画素値f(1,x1,y1)〜f(7,x1,y1)を、図6に示すように、昇順(又は降順)に並べ替えると、並べ替えた画素値f(1,x1,y1)〜f(7,x1,y1)の中央値は、背景画像Fbの画素値となる。
この中央値を取得するため、画像処理装置203は、まず、同一座標(x,y)の画素値f(1,x,y)〜(n,x,y)を並べ替える。画像処理装置203は、次の数6に従って演算を行うことにより、この並べ替えを行う。
そして、画像処理装置203は、次の数7に従って演算を行って座標(x,y)におけるすべてのフレーム画像Fの画素値の中央値を取得する。
画像処理装置203は、この中央値を背景画像Fbの座標(x,y)における画素値fb(x,y)として、この画素値fb(x,y)を、調査する対象の調査座標(x,y)に登録する。画像処理装置203は、このような処理をすべての座標(x,y)について行い、背景画像Fbを生成する。
(2)判別パラメータ取得処理
判別パラメータ取得処理は、動く被写体2の被写体画像Fobjと動かない背景画像Fbとを判別するための判別パラメータを取得する処理である。
画像処理装置203は、被写体画像Fobjを判別するため、まず、図7(1)〜(5)に示すように、座標(x,y)毎に、同一座標(x,y)における各フレーム画像Fの画素値f(n,x,y)と背景画像Fbの画素値fb(x,y)との差を取得する。
図7(1)〜(5)に示すように、画素値f(n,x,y)と画素値fb(x,y)との差に基づいて形成される差画像Fdには、被写体画像Fobjが含まれる。
しかし、数7に従って取得した背景画像Fbの画素値fb(x,y)には、バラツキがあり、画素値fb(x,y)は、図8(a)に示すように分布する。
画素値fb(x,y)にバラツキがある場合、差画像Fdのみで被写体2を判断すると、図9(1),(2)に示すように、フレームによっては、背景画像Fbの一部Fb1を被写体画像Fobjと誤って判別してしまう場合がある。
画像処理装置203は、このような誤判別を避けるため、背景画像Fbの各座標(x,y)の画素値fb(x,y)を確実に判別するための判別パラメータを取得する。画像処理装置203は、この判別パラメータを取得するため、次の数8に従って、設定した座標(x,y)に演算を行い、同一座標(x,y)における背景画像の画素値と第n番目のフレーム画像Fの画素値との差fd(n,x,y)を取得する。
次に、画像処理装置203は、次の数9に従って演算を行い、座標(x,y)毎に、図8(b)に示すような標準偏差fs(x,y)を取得する。
この標準偏差fs(x,y)は、同一座標(x,y)において背景画像Fbの画素値を中心とする各フレーム画像Fの画素値の分布を示すものであり、背景画像Fbを判別する判別パラメータとなる。画像処理装置203は、数8に示す差fd(n,x,y)が、この標準偏差fs(x,y)の範囲内であれば、この画素値f(n,x,y)を背景画像Fbの画素値fb(x,y)と判別する。
次に、画像処理装置203は、被写体画像Fobjを判別するための判別パラメータを取得する。このため、画像処理装置203は、次の数10に従って演算を行うことにより、同一座標(x,y)において標準偏差fs(x,y)を超える背景画像Fbの画素値とnフレーム画像Fの画素値との差として、座標(x,y)毎に、値over[m]を取得する。
この値over[m]は、被写体画像Fobjの候補となるものである。しかし、この値over[m]も、変動する。このため、画像処理装置203は、この差over[m]についても、被写体画像Fobjを判別する判別パラメータとして、座標(x,y)毎に、図8(c)に示すような変動閾値moveを求める。
画像処理装置203は、次の数11に従って演算を行うことにより、この変動閾値moveを取得する。
数11に示すように、この変動閾値moveは、前記背景画像の各座標(x,y)の画素値を中心として、標準偏差fs(x,y)を超える各フレーム画像Fの座標(x,y)における画素値f(n,x,y)の分布を示す標準偏差である。
従って、画像処理装置203は、数8に示す差fd(n,x,y)が、変動閾値move以上であれば、この画素値f(n,x,y)を被写体画像Fobjの画素値と判別する。
(3)被写体領域取得処理
被写体領域取得処理は、フレーム画像F毎に、移動する被写体画像Fobjを判別してこの被写体画像Fobjが存在する被写体領域を取得する処理である。
画像処理装置203は、判別パラメータ取得処理において取得したパラメータを用い、次の数12に従って演算を行うことによりデータfp(n,x,y)を生成する。
このデータfp(n,x,y)は、フレーム画像Fの座標(x,y)において、数8に示す差fd(n,x,y)が変動閾値move以上の場合には、1(有効)、変動閾値move未満の場合には、0(無効)とするデータである。このデータfp(n,x,y)によって形成される領域は、各フレーム画像Fの被写体領域を表している。
尚、画像処理装置203は、データfp(n,x,y)が不連続になる場合があるため、データfp(n,x,y)に対して、さらに、ラベリング処理、膨張、穴埋め、収縮処理を行って、被写体領域を補正する。
ラベリング処理は、生成された0(無効)と1(有効)のデータに対して、連続している領域に同じ番号を付し、離れている領域には、異なる番号を付す処理である。画像処理装置203は、ラベリング処理を行い、最大面積を有する領域を取得する。
膨張処理は、同じ値の画素が連結している領域の輪郭画素を外側に増やして領域を広く処理である。
穴埋め処理は、ラベリング処理後に、面積が最小面積以上最大面積以下のものを塗りつぶす処理である。
収縮処理は、同じ値の画素が連結している領域の輪郭画素を取り除いて領域を狭くする処理である。
画像処理装置203は、このようなラベリング処理、膨張処理、穴埋め処理、収縮処理を行うことにより、不連続になったデータfp(n,x,y)を連結させて欠損等した各フレーム画像Fの被写体領域を補正する。
また、画像処理装置203は、自然な上書を可能とするため、生成したデータfp(n,x,y)の周辺部に透過パラメータを付加する。
画像処理装置203は、このような処理をすべてのフレーム画像Fに対して行い、図10に示すような背景画像Fbの領域マスクデータfpb(x,y)を生成する。この領域マスクデータfpb(x,y)は、データfp(n,x,y)がすべてのフレームで1(有効)にならなかった座標のみを1とすることにより、背景画像Fbの透過画素座標を特定するものである。
(4)ストロボ画像生成処理
ストロボ画像生成処理は、背景画像Fbに被写体画像Fobjを上書きすることにより、図3(8)に示すようなストロボ画像Fstを生成する処理である。
画像処理装置203は、被写体領域取得処理において生成した図10に示すような領域マスクデータfpb(x,y)の座標と背景画像Fbの座標とを対応させ、被写体領域の座標にフレーム画像Fの座標(n,x,y)とを対応させる。
また、画像処理装置203は、フレーム画像F毎に、被写体領域の座標に各フレーム画像Fの座標を対応させて被写体画像Fobjありと判別される背景画像Fbの座標(x,y)に、各フレーム画像Fの画素値f(n,x,y)を上書きする。そして、画像処理装置203は、フレーム画像Fの画素値f(n,x,y)を背景座標Fbの座標(x,y)に登録する。
一方、画像処理装置203は、被写体画像Fobjなしと判別された座標(n,x,y)には、上書きを行わない。また、画像処理装置203は、一度上書きした座標(n,x,y)には、上書きを行わない。
画像処理装置203は、このような処理をすべてのフレーム画像Fのすべての座標(n,x,y)について行い、すべての画素値を埋めて、図3(8)に示すようなストロボ画像Fstを生成する。画像処理装置203は、生成したストロボ画像Fstのデータをメモリ201の処理画像記憶領域201bに一時記憶する。
そして、画像処理装置203は、保存するストロボ画像Fstをメモリ201の表示画像記憶領域201cに格納する。
図1に戻り、プログラムコード記憶装置204は、CPU205が実行するプログラムを記憶するためのものであり、ROM等によって構成される。
CPU205は、プログラムコード記憶装置204に格納されているプログラムに従って、各部を制御する。
具体的に、CPU205は、ユーザインタフェース部23の操作部302から、電源ボタンが押下された旨の操作情報が供給される毎に、デジタルカメラ1の電源をオン、オフする。
CPU205は、撮影設定メニューにおいて連写モードが選択され、シャッタボタン1aが押下されると、被写体2、静止体3a,3b,3cの連写を行い、シャッタボタン1aの押下が解除されると、連写を終了するように、画像データ生成部21を制御する。
そして、CPU205は、画像データ生成部21のイメージセンサ102が取りこんだ画像データを、データ処理部22のメモリ201のセンサ画像記憶領域201aに格納する。
CPU205は、このような撮影処理が終了すると、画像処理装置203に、背景画像生成処理、判別パラメータ取得処理、被写体領域取得処理、ストロボ画像生成処理を実行するように指示する。
次に実施形態1に係るデジタルカメラ1の動作を説明する。
CPU205は、操作部302から、電源ボタンが押下された旨の操作情報が供給されると、デジタルカメラ1の電源をONする。
CPU205は、撮影設定メニューにおいて連写モードが選択されると、プログラムコード記憶装置204から、連写処理のプログラムコードを読み出す。
そして、CPU205は、操作部302から、シャッタボタン1aが押下された旨の操作情報が供給されると、図11に示すフローチャートに従い、連写処理を実行する。
まず、CPU205は、撮影処理を実行する(ステップS101)。CPU205は、この撮影処理を、図12に示すフローチャートに従って実行する。
CPU205は、撮影カウント値nに1をセットする(ステップS111)。
CPU205は、被写体2、静止体3a,3b,3cを撮影するように、画像データ生成部21を制御する(ステップS112)。
CPU205は、イメージセンサ102が取りこんだ画像データを、メモリ201のセンサ画像記憶領域201aに格納する(ステップS113)。
CPU205は、撮影が終了したか否かを判定する(ステップS114)。
シャッタボタン1aが押下されている場合、CPU205は、撮影が終了していないと判定する(ステップS114;No)。
この場合、CPU205は、撮影カウント値nをインクリメントし(ステップS115)、再度、被写体2、静止体3a,3b,3cを撮影するように、画像データ生成部21を制御し、フレーム画像Fのデータを、メモリ201のセンサ画像記憶領域201aに記憶する(ステップS112,S113)。
シャッタボタン1aの押下が解除された場合、CPU205は、撮影が終了したと判定する(ステップS114;Yes)。この場合、CPU205は、撮影枚数Pageに、撮影カウント値nをセットする(ステップS116)。そして、CPU205は、この撮影処理を終了させる。
撮影処理を終了させると、CPU205は、この撮影枚数Pageをフレーム数として、Page≠1か否かを判定する(ステップS102)。
Page=1(Page≠1ではない)と判定した場合(ステップS102;No)、CPU205は、画像処理装置203に、画像処理の実行を指示せずに、ビデオ出力装置202に結果を表示させる(ステップS104)。
一方、Page≠1と判定した場合(ステップS102;Yes)、CPU205は、画像処理装置203に、画像処理を実行するように指示する(ステップS103)。
画像処理装置203は、プログラムコード記憶装置204から、画像処理のプログラムコードを読み出し、図13に示すフローチャートに従って、この画像処理(1)を実行する。
画像処理装置203は、背景画像生成処理を実行する(ステップS121)。画像処理装置203は、この背景画像生成処理を、図14に示すフローチャートに従って実行する。
画像処理装置203は、調査座標(x,y)のx,yに、それぞれ、0をセットして、調査座標(x,y)を初期化する(ステップS131)。
画像処理装置203は、フレームカウント値nに1をセットし、フレームカウント値nを初期化する(ステップS132)。
画像処理装置203は、すべてのフレーム画像Fの同一座標(x,y)における画素値f(n,x,y)を取得し、取得したすべての画素値f(n,x,y)を、それぞれ、配列table[n]に格納する(ステップS133)。
画像処理装置203は、Page=1か否かを判定する(ステップS134)。
Page=1ではないと判定した場合(ステップS134;No)、画像処理装置203は、フレームカウント値nをインクリメントする(ステップS135)。そして、画像処理装置203は、再度、すべてのフレーム画像Fの同一座標(x,y)における画素値f(n,x,y)を取得する(ステップS133)。
Page=1であると判定した場合(ステップS134;Yes)、画像処理装置203は、数6に従い、画素値f(n,x,y)を並べ替える(ステップS136)。
画像処理装置203は、数7に従い、並べ替えた画素値f(n,x,y)の中央値を背景画像Fbの調査座標(x,y)に登録する(ステップS137)。
画像処理装置203は、全座標について調査座標(x,y)の登録が終了したかを判定する(ステップS138)。
すべての座標について、調査座標(x,y)の登録が終了していないと判定した場合(ステップS138;No)、画像処理装置203は、次の調査座標(x,y)に調査を進める(ステップS139)。そして、画像処理装置203は、再度、ステップS132〜S137の処理を実行する。
全座標について、調査座標(x,y)の登録が終了したと判定した場合(ステップS138;Yes)、画像処理装置203は、この背景画像生成処理を終了させる。
このようにして画像処理装置203は、背景画像Fbを生成すると、図15に示すフローチャートに従って、判別パラメータ取得処理を実行する(ステップS122)。
画像処理装置203は、調査座標(x,y)のx,yに、それぞれ、0をセットして、調査座標(x,y)を初期化する(ステップS141)。
画像処理装置203は、フレームカウント値nに1をセットし、フレームカウント値nを初期化する(ステップS142)。
画像処理装置203は、数8に従い、差fd(n,x,y)を求める。そして、画像処理装置203は、求めた差fd(n,x,y)を調査座標(n,x,y)に登録する(ステップS143)。
画像処理装置203は、Page=nか否かを判定する(ステップS144)。
Page=nではないと判定した場合(ステップS144;No)、画像処理装置203は、フレームカウント値nをインクリメントする(ステップS145)。
そして、画像処理装置203は、再度、同一座標(x,y)における差fd(n,x,y)を求め、求めた差fd(n,x,y)を調査座標(n,x,y)に登録する(ステップS143)。
Page=nであると判定した場合(ステップS144;Yes)、画像処理装置203は、数9に従い、標準偏差fs(x,y)を求める(ステップS146)。
画像処理装置203は、算出した標準偏差fs(x,y)を座標標準偏差として登録する(ステップS147)。
画像処理装置203は、全座標について調査座標(x,y)の登録が終了した否かを判定する(ステップS148)。
全座標について座標標準偏差の登録が終了していないと判定した場合(ステップS148;No)、画像処理装置203は、次の調査座標(x,y)に調査を進める(ステップS149)。そして、画像処理装置203は、再度、ステップS142〜S147の処理を実行する。
全座標について座標標準偏差の登録が終了したと判定した場合(ステップS148;Yes)、画像処理装置203は、調査座標(x,y)の初期化を行う(ステップS150)。
画像処理装置203は、フレームカウント値に1をセットする(ステップS151)。
画像処理装置203は、数8に示す差fd(n,x,y)が、数10に示す標準偏差fs(x,y)を超える場合には、この画素値f(n,x,y)を登録する(ステップS152)。
画像処理装置203は、フレームカウント値nがフレーム数Pageになったか否かを判定する(ステップS153)。
フレームカウント値nがフレーム数Pageになっていないと判定した場合(ステップS153;No)、画像処理装置203は、フレームカウント値nをインクリメントする(ステップS154)。そして、画像処理装置203は、再度、数8に示す差fd(n,x,y)が標準偏差fs(x,y)を超える場合の画素値f(n,x,y)を登録する(ステップS152)
カウント値nがフレーム数Pageになったと判定した場合(ステップS153;Yes)、画像処理装置203は、全座標についての登録が終了したか否かを判定する(ステップS155)。
全座標についての登録が終了していないと判定した場合(ステップS155;No)、画像処理装置203は、次の調査座標(x,y)に調査を進める(ステップS156)。そして、画像処理装置203は、再度、ステップS151〜154の処理を実行する。
全座標についての登録が終了したと判定した場合(ステップS155;Yes)、画像処理装置203は、数11に従い、登録された値で変動閾値moveを取得する(ステップS157)。そして、画像処理装置203は、この判別パラメータ取得処理を終了させる。
画像処理装置203は、このように判別パラメータ取得処理を実行すると、被写体領域取得処理を実行する(ステップS123)。画像処理装置203は、図16に示すフローチャートに従い、この被写体領域取得処理を実行する。
画像処理装置203は、フレームカウント値nに1をセットする(ステップS161)。
画像処理装置203は、調査座標(x,y)のx,yに、それぞれ、0をセットして、調査座標(x,y)を初期化する(ステップS162)。
画像処理装置203は、数8に示す差fd(n,x,y)が変動閾値moveを超えるか否かを判定する(ステップS163)。
この差fd(n,x,y)が変動閾値moveを超えると判定した場合(ステップS163;Yes)、画像処理装置203は、数12に従い、座標(x,y)を有効としてデータfp(n,x,y)に1をセットする(ステップS164)。
一方、差fd(n,x,y)が変動閾値move未満と判定した場合(ステップS165;No)、画像処理装置203は、数12に従い、座標(x,y)を無効としてデータfp(n,x,y)に0をセットする(ステップS165)。
画像処理装置203は、全座標について調査が終了したか否かを判定する(ステップS166)。
全座標について調査が終了していないと判定した場合(ステップS166;No)、画像処理装置203は、次の調査座標へ調査を進める(ステップS167)。そして、画像処理装置203は、再度、ステップS163〜S165の処理を実行する。
全座標について調査が終了したと判定した場合(ステップS166;Yes)、画像処理装置203は、ラベリング処理を行い、最大面積を有する被写体領域を取得する(ステップS168)。
画像処理装置203は、最大面積を有する被写体領域に対して膨張処理を行う(ステップS169)。
画像処理装置203は、膨張処理を行った被写体領域の穴埋めを行う(ステップS170)。
画像処理装置203は、穴埋めを行った被写体領域の収縮を行う(ステップS171)。
画像処理装置203は、フレームカウント値nがフレーム数Pageに達したか否かを判定する(ステップS172)。
フレームカウント値nがフレーム数Pageに達していないと判定した場合(ステップS172;No)、画像処理装置203は、フレームカウント値nをインクリメントする(ステップS173)。
そして、画像処理装置203は、再度、ステップS162〜171の処理を実行する。
フレームカウント値nがフレーム数Pageに達したと判定した場合(ステップS172;Yes)、画像処理装置203は、この被写体領域取得処理を終了させる。
画像処理装置203は、このように被写体領域取得処理を実行すると、ストロボ画像生成処理を実行する(ステップS124)。
画像処理装置203は、図17に示すフローチャートに従い、ストロボ画像生成処理(1)を実行する。
画像処理装置203は、フレームカウント値nにフレーム数Pageをセットする(ステップS181)。
画像処理装置203は、フレームカウント値が1であるか否かを判定する(ステップS182)。
フレームカウント値nが1ではないと判定した場合(ステップS182;No)、画像処理装置203は、被写体領域にフレーム画像Fの画素値f(n,x,y)が未登録の座標にのみ、この画素値f(n,x,y)の上書を行う(ステップS183)。
画像処理装置203は、被写体領域の座標を登録する(ステップS184)。
画像処理装置203は、カウント値nをデンクリメントする(ステップS185)。
フレームカウント値nが1であると判定した場合(ステップS182;Yes)、画像処理装置203は、未登録座標の書き込みを行う(ステップS186)。そして、画像処理装置203は、このストロボ画像生成処理を終了させ、画像処理を終了させる。
画像処理装置203が、このようにストロボ画像生成処理を実行すると、CPU205は、結果をビデオ出力装置202に表示させる(ステップS104)。
CPU205は、結果を保存するか否かを判定する(ステップS105)。
結果を保存すると判定した場合(ステップS105;Yes)、CPU205は、生成したストロボ画像Fstのデータを保存して(ステップS106)、このストロボ画像処理(1)を終了させる。
一方、結果を保存しないと判定した場合(ステップS195;No)、CPU205は、生成したストロボ画像Fstのデータを保存せずに、このストロボ画像処理(1)を終了させる。
以上説明したように、本実施形態1によれば、画像処理装置203は、設定した座標(x,y)毎に、各フレーム画像Fの同一座(x,y)の画素値f(n,x,y)を取得し、並べ替えて、その中央値を背景画像Fbの画素値fb(x,y)とすることにより、背景画像Fbを取得する。そして、画像処理装置203は、値over[m],変動閾値moveを用いて各被写体画像Fobjを取得し、背景画像Fbに重ね合わせてストロボ画像Fstを生成するようにした。
従って、フレーム画像F間で被写体画像Fobjが重なる場合や、画角中で被写体2が形状を変えながら移動する場合であっても被写体領域を取り出すことができ、所望のストロボ画像Fstを生成することができる。
(実施形態2)
実施形態2に係るデジタルカメラは、動きのない静止体を被写体として連写し、フレーム画像に含まれている動きのある動体画像を排除して所望の被写体画像を取得するようにしたものである。
実施形態1では、動きのある動体を被写体2とした。しかし、動きのない静止体を被写体2として、動体を排除したい場合もある。
例えば、デジタルカメラ1の前でポーズをとって停止している人2aを被写体として静止画撮影を行う場合、シャッタボタン1aが押下されたタイミングで別の通行人2bが人2aの前を通過すると、図18(a)に示すように、通行人2bも撮影画像に含まれてしまう。連写撮影でなければ、人2aの画像をこの撮影画像から抽出することは困難である。
実施形態2に係るデジタルカメラ1は、連写撮影を行って図18(b)に示すような複数のフレーム画像Fを取得して図18(c)に示すような背景画像Fbを生成する。人2aがポーズをとって停止していれば、人2aは通行人2bに対して背景となるため、通行人2bは背景画像Fbから排除される。
実施形態2に係るデジタルカメラ1は、実施形態1と同様に、図1に示す構成を有する。
次に実施形態2に係るデジタルカメラ1の動作を説明する。
CPU205は、画像処理装置203に、画像処理を実行するように指示し(ステップS103)、画像処理装置203は、この指示により、図19に示すフローチャートに従って、画像処理(2)を実行し、背景画像生成処理を実行する(ステップS121)。
画像処理装置203が背景画像生成処理を実行すると、CPU205は、結果を表示させ(ステップS104)、結果を保存すると判定した場合(ステップS105;Yes)、生成した背景画像Fbの画素値を保存して(ステップS106)、この連写処理を終了させる。
以上説明したように、本実施形態2によれば、背景画像Fbを生成することにより、人2aを被写体2として、撮影画像から動体画像を排除して、所望の被写体画像Fobjを取得することができる。
(実施形態3)
実施形態3に係るデジタルカメラは、動体を被写体として連写し、各被写体が重ならないようなストロボ画像を生成するようにしたものである。
動体を被写体2としてストロボ画像Fstを生成する場合、被写体画像Fobjが重なった場合の方がみやすくなる場合がある一方、図20に示すように、被写体画像Fobjが重ならない方がみやすい場合がある。
実施形態3に係るデジタルカメラ1は、被写体画像Fobjが重ならないようにストロボ画像Fstを作成する。
実施形態3に係るデジタルカメラ1は、図1に示す構成と同様の構成を有している。
画像処理装置203は、背景画像生成処理、判別パラメータ取得処理、被写体領域取得処理を実行して、図21(1)〜(15)に示すような被写体画像Fobjを生成する。
画像処理装置203は、ストロボ画像生成処理において、背景画像Fbに被写体画像Fobjを上書きする際、図21(16)に示すように、被写体画像Fobjが、既に登録された被写体画像Fobjと重なっている部分zを有している場合、この被写体画像Fobjをストロボ画像Fstに採用しない。
そして、画像処理装置203は、図21(17)示すような被写体画像Fobjを図21(18)に示すような背景画像Fb上の座標に登録し、図21(19)に示すような被写体画像Fobjが重ならないストロボ画像Fstを生成する。
次に実施形態3に係るデジタルカメラ1の動作を説明する。
CPU205は、画像処理装置203に、画像処理を実行するように指示し(ステップS103)、画像処理装置203は、この指示により、図22に示すフローチャートに従って、ストロボ画像生成処理(2)を実行する。
画像処理装置203は、フレームカウント値nにフレーム数Pageをセットする(ステップS191)。
画像処理装置203は、フレームカウント値nが1か否かを判定する(ステップS192)。
カウント値nが1ではないと判定した場合(ステップS192;No)、画像処理装置203は、登録済み座標と重なりがないか否かを判定する(ステップS193)。
登録済み座標と重なりがないと判定した場合(ステップS193;Yes)、画像処理装置203は、被写体領域にフレーム画像Fの画素値f(n,x,y)が未登録の座標にのみ、この画素値f(n,x,y)の上書を行う(ステップS194)。
画像処理装置203は、被写体領域の座標を登録する(ステップS195)。
一方、登録済み座標と重なりがあると判定した場合(ステップS193;No)、画像処理装置203は、ステップS183,184を実行せずに、フレームカウント値nをデクリメントする(ステップS196)。
そして、画像処理装置203は、再度、フレームカウント値nが1か否かを判定する(ステップS192)。
フレームカウント値nが1か否かを判定した場合(ステップS192;Yes)、画像処理装置203は、未登録座標の書き込みを行う(ステップS200)。そして、画像処理装置203は、このストロボ画像生成処理(2)を終了させる。
以上説明したように、本実施形態3によれば、デジタルカメラ1は、連写撮影を行い、被写体画像Fobjが重なる場合には、このフレーム画像Fの被写体画像Fobjを採用しないようにした。
従って、被写体画像Fobjが重ならないので、撮影間隔を意識せずに連写を行うことができる。また、みやすいストロボ画像Fstを生成することができる。
尚、本発明を実施するにあたっては、種々の形態が考えられ、上記実施形態に限られるものではない。
例えば、上記実施形態では、画像処理装置203は、背景画像Fbを生成する過程で、座標毎の静止体画素値(代表値)として、中央値を取得するようにした。
しかし、代表値は、この中央値に限られるものではなく、画像処理装置203は、静止体画素値として、例えば、同一座標(x,y)の画素値(座標値)の最頻値を取得するようにしてもよい。
また、画像処理装置203は、この静止体画素値として、例えば、全フレーム画像Fの同一座標(x,y)の画素値(座標値)の平均値を取得するようにしてもよい。フレーム数や変動対象によっては平均値の方が演算の高速化が可能になり、また調査するフレーム画像、生成される背景画像の座標数を実際の画像サイズより縮小することで高速化が可能になる。
また、実施形態1では、被写体領域の判定に、各座標(x,y)のフレーム画像間の標準偏差を超える画素値だけを用いるようにした。しかし、この判定に、各座標(x,y)の標準偏差を用いてもよい。また、座標単位ではなく、ブロック単位で被写体領域の判定を行うようにしてもよい。
また、画像処理装置203は、ラベリング処理を行うことにより最大面積を有する被写体領域のみを取得するようにした。しかし、被写体領域の大きな上位複数の領域を取得し、近接する場合には、結合するか否かを判定するようにしてもよい。
また、ラベリング処理を行う前に膨張処理を行うようにしてもよく、このようにすれば、近接領域の結合が可能となる。
また、撮影直後のフレーム画像Fに対して、高調波の除去、撮影ブレ、画像の光学手ブレによる位置ズレ補正のような前処理を行うようにしてもよい。
高調波を除去する場合、画像処理装置203は、図23(a)に示すような3タップのローパスフィルタ、図23(b)に示すような5タップのローパスフィルタを用いる。
画像処理装置203は、図24に示すフローチャートに従い、画像処理(3)を実行する。
高調波を除去する場合、画像処理203は、図25に示すフローチャートに従い、前処理(1)を実行する。
画像処理装置203は、フレームカウント値nに1をセットする(ステップS211)。
画像処理装置203は、図23(a)に示すような3タップのローパスフィルタ又は図23(b)に示すような5タップのローパスフィルタを用いて高調波を除去する(ステップS212)。
画像処理装置203は、フレーム数Pageがフレームカウント値nになったか否かを判定する(ステップS213)。
フレーム数Pageがカウント値nになっていないと判定した場合(ステップS213;No)、画像処理装置203は、カウント値nをインクリメントし(ステップS214)、再度、高調波を除去する(ステップS212)。
フレーム数Pageがカウント値nになったと判定した場合(ステップS213;Yes)、画像処理装置203は、この前処理(1)を終了させる。
撮影ブレ、画像の光学手ブレによる位置ズレの影響を排除する場合、画像処理203は、図26に示すフローチャートに従い、前処理(2)を実行する。
画像処理装置203は、フレームカウント値nに1をセットする(ステップS221)。
画像処理装置203は、フレームカウント値nのフレーム画像Fの特徴点p(n)を取得する(ステップS222)。
画像処理装置203は、フレーム(n+1)のフレーム画像Fの特徴点p(n+1)を取得する(ステップS223)。
画像処理装置203は、特徴点p(n)と特徴点p(n+1)とが対応するように、フレーム画像F間の位置補正を行う(ステップS224)。
画像処理装置203は、フレーム数Pageがフレームカウント値(n−1)になったか否かを判定する(ステップS225)。
フレーム数Pageがフレームカウント値(n−1)になっていないと判定した場合(ステップS225;No)、画像処理装置203は、フレームカウント値nをインクリメントし(ステップS226)、ステップS222〜S224の処理を行う。
フレーム数Pageがフレームカウント値(n−1)になったと判定した場合(ステップS225;Yes)、画像処理装置203は、この前処理(2)を終了させる。
このような前処理(1)を実行することにより、高調波ノイズを除去できる。また、前処理(2)を実行することにより、撮影ブレ、画像の光学手ブレによる位置ズレの影響を排除することができる。
次に、実施形態2では、座標単位で画像処理を行うようにした。しかし、座標単位で処理を行った場合に被写体2の動きが反映されてしまう場合には、ブロック単位で画像処理を行ってもよい。これにより、ノイズの少ない画像を生成することができる。
次に、実施形態3では、撮影画像から、重ならないか否かを比較するようにした。しかし、連写画像の中から、ユーザが逃したくないフレーム画像Fを選択できるようにしてもよい。
この場合、画像処理装置203は、図27に示すフローチャートに従って、画像処理(4)を実行する。
画像処理装置203は、注目するフレーム画像Fを選択する(ステップS230)。
画像処理装置203は、背景画像生成処理(ステップS121)、判別パラメータ取得処理(ステップS122)、被写体領域取得処理(ステップS123)、ストロボ画像生成処理(ステップS124)を、順次、実行する。
画像処理装置203は、図28に示すフローチャートに従い、ストロボ画像生成処理(3)を実行する。
画像処理装置203は、フレームカウント値nに、注目するフレーム画像Fのフレーム番号targetをセットする(ステップS231)。
画像処理装置203は、被写体領域にフレーム画像Fの画素値f(n,x,y)が未登録の座標にのみ、この画素値f(n,x,y)の上書を行う(ステップS232)。
画像処理装置203は、被写体領域の座標を登録する(ステップS233)。
画像処理装置203は、フレームカウント値nにフレーム数Pageをセットする(ステップS234)。
画像処理装置203は、フレームカウント値nが1か否かを判定する(ステップS235)。
フレームカウント値nが1ではないと判定した場合(ステップS235;No)、画像処理装置203は、登録済み座標と重なりがないか否かを判定する(ステップS236)。
重なりなしと判定した場合(ステップS236;Yes)、画像処理装置203は、被写体領域で未登録の座標にのみ、フレーム画像Fの画素値f(n,x,y)の上書を行う(ステップS237)。
画像処理装置203は、被写体領域の座標を登録する(ステップS238)。
一方、重なりありと判定した場合(ステップS236;No)、画像処理装置203は、ステップ237,S238の処理を行わない。
画像処理装置203は、フレーム番号targetがフレームカウント値n未満か否かを判定する(ステップS239)。
フレーム番号targetがフレームカウント値n以上と判定した場合(ステップS239;No)、画像処理装置203は、フレームカウント値nをデクリメントする(ステップS240)。
そして、画像処理装置203は、再度、ステップS235〜238の処理を実行する。
フレーム番号targetがフレームカウント値n未満と判定した場合(ステップS239;Yes)、画像処理装置203は、フレームカウント値nをインクリメントする(ステップS241)。
画像処理装置203は、フレームカウント値nがフレーム数Pageを超えたか否かを判定する(ステップS242)。
フレームカウント値nがフレーム数Page以下であると判定した場合(ステップS242;No)、画像処理装置203は、再度、ステップS245〜248の処理を実行する。
フレームカウント値nがフレーム数Pageを超えたと判定した場合(ステップS242;Yes)、画像処理装置203は、フレーム番号targetをデクリメントし、このデクリメントした値(target−1)をフレームカウント値nにセットする(ステップS243)。
そして、画像処理装置203は、再度、ステップS245〜248の処理を実行する。
フレームカウント値nが1であると判定した場合(ステップS235;Yes)、画像処理装置203は、未登録座標の書き込みを行う(ステップS245)。そして、画像処理装置203は、このストロボ画像生成処理(3)を終了させる。
このように選択したフレーム画像Fを中心に、前後の画像の登録を行うことにより撮影者が最も必要とする画像を中心として被写体2が重ならないストロボ画像Fstを生成することができる。
上記実施形態1〜3では、撮影装置として、デジタルカメラ1について説明した。しかし、撮影装置は、デジタルカメラ1に限られるものではなく、動画を撮影するビデオカメラであってもよい。
また、連写された複数のフレーム画像が図1に示す外部記憶部304に記憶されていれば、画像データ生成部21を備えなくてもよく、画像処理装置203は、外部記憶部304から複数のフレーム画像を取得して上記実施形態1〜3の画像処理を行うことができる。
また、上記実施形態では、プログラムが、それぞれメモリ等に予め記憶されているものとして説明した。しかし、画像処理装置、撮影装置を、装置の全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、フレキシブルディスク、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical disk)などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
本発明の実施形態1に係るデジタルカメラの構成を示すブロック図である。 静止体と動体(被写体)とデジタルカメラとの位置関係を示す図である。 複数のフレーム画像からストロボ画像を生成する概要を示す図であり、(1)〜(7)は、それぞれ、フレーム画像を示し、(8)は、ストロボ画像を示す。 図1に示すメモリの各記憶領域を示す図である。 背景画像を示す図である。 背景画像の取得を説明するための図である。 フレーム画像と背景画像との差画像の取得を説明するための図である。 背景画像の画素値の分布と判別パラメータを示す図であり、(a)は、背景画像の画素値の分布を示し、(b)は、背景画像を判別する判別パラメータとしての標準偏差を示し、(c)は、被写体画像を判別する判別パラメータとしての標準偏差を示す。 背景画像の一部を被写体画像と誤って判別する例(1),(2)を示す図である。 各フレームの被写体画像からストロボ画像を生成する方法を示す図である。 デジタルカメラが実行する連写処理を示すフローチャートである。 図1に示すCPUが実行する撮影処理を示すフローチャートである。 図1に示す画像処理装置が実行する画像処理(1)を示すフローチャートである。 図1に示す画像処理装置が実行する背景画像生成処理を示すフローチャートである。 図1に示す画像処理装置が実行する判別パラメータ取得処理(1)を示すフローチャートである。 図1に示す画像処理装置が実行する被写体領域取得処理を示すフローチャートである。 図1に示す画像処理装置が実行するストロボ画像生成処理(1)を示すフローチャートである。 実施形態2に係るデジタルカメラの処理の概要を示す図であり、(a)は、被写体の前を通行人が通過するときに撮影によって得られた画像を示し、(b)は、連写により得られた複数のフレーム画像を示し、(c)は、通行人を排除した背景画像を示す。 図1に示す画像処理装置が実行する画像処理(2)を示すフローチャートである。 動く被写体画像が重ならないようにしたストロボ画像を示す図である。 図20に示すストロボ画像の生成を示す図であり、(1)〜(15)は、各被写体画像に関するデータを示し、(16)は、被写体画像が重なっている状態を示し、(17)は、重ならないようにした被写体画像を示し、(18)は、背景画像を示し、(19)は、生成されたストロボ画像を示す。 図1に示す画像処理装置が実行するストロボ画像生成処理(2)を示すフローチャートである。 高調波を除去するためのローパスフィルタを示す図であり、(a)は、3タップのローパスフィルタを示し、(b)は、5タップのローパスフィルタを示す。 図1に示す画像処理装置が実行する画像処理(3)を示すフローチャートである。 図1に示す画像処理装置が実行する前処理(1)を示すフローチャートである。 図1に示す画像処理装置が実行する前処理(2)を示すフローチャートである。 図1に示す画像処理装置が実行する画像処理(4)を示すフローチャートである。 図1に示す画像処理装置が実行するストロボ画像生成処理(3)を示すフローチャートである。
符号の説明
1・・・デジタルカメラ、21・・・画像データ生成部、22・・・データ処理部、201・・・メモリ、203・・・画像処理装置、205・・・CPU

Claims (8)

  1. 複数のフレーム画像を取得するフレーム画像取得部と、
    前記フレーム画像取得部が取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成する静止体画像生成部と、
    前記静止体画像生成部が生成した前記静止体画像と前記各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得する判別パラメータ取得部と、
    前記判別パラメータ取得部が座標毎に取得した判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を前記フレーム画像毎に取得する動体領域取得部と、
    前記フレーム画像毎に、前記動体領域取得部が取得した前記動体領域の座標と前記静止体画像生成部が生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成するストロボ画像生成部と、を備えた、
    ことを特徴とする画像処理装置。
  2. 前記判別パラメータ取得部は、設定した座標毎に、
    数1に従い、前記静止体画像生成部が生成した前記静止体画像と前記各フレーム画像との同一座標(x,y)における画素値の差を取得し、
    数2に従い、前記静止体画像と第nフレーム画像との同一座標(x,y)における第1の標準偏差を取得し、
    数3に従い、同一座標(x,y)における前記第1の標準偏差を超える静止体画像の画素値と前記第nフレーム画像の画素値との差を取得し、
    数4に従い、第2の標準偏差を前記動体画像を判別するための判別パラメータとして取得し、
    前記動体領域取得部は、
    数5に従い、前記第nフレーム画像の座標(x,y)において、数1に示す前記画素値の差が、数4に従って取得した前記第2の標準偏差以上の場合には、当該画素値を有効とし、前記第2の標準偏差未満の場合には、当該画素値を無効とするデータを取得し、取得したデータを重ね合わせて、前記静止体画像の透過画素座標を特定する領域マスクデータを作成し、作成した前記領域マスクデータを用いて、前記動体領域を取得する、
    ことを特徴とする請求項に記載の画像処理装置。
  3. 前記動体領域取得部は、前記第nフレーム画像の座標(x,y)において当該画素値を有効、無効とするデータに対し、膨張処理、縮退処理及び穴埋め処理のうちの少なくとも1つの処理を行うことにより、取得した前記動体領域を補正する、
    ことを特徴とする請求項に記載の画像処理装置。
  4. 前記静止体画像生成部は、前記各フレーム画像のそれぞれに対して高調波成分を濾波するフィルタ部を備え、前記フィルタ部で前記高調波成分を濾波した前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから前記静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体画像を生成する、
    ことを特徴とする請求項1乃至のいずれか1項に記載の画像処理装置。
  5. 前記静止体画像生成部は、前記各フレーム画像の特徴点を取得し、前記各フレーム画像の特徴点の座標を対応させることにより、前記各フレーム画像間の位置ズレ補正を行い、前記位置ズレ補正を行った前記各フレーム画像から同一座標の画素値を取得し、取得した同一座標の複数の画素値のうちから前記静止体画素値を取得し、前記座標毎に取得した前記静止体画素値に基づいて前記静止体画像を生成する、
    ことを特徴とする請求項1乃至のいずれか1項に記載の画像処理装置。
  6. 動体と該動体後方の静止体とを連写して複数のフレーム画像を取得する撮影部と、
    前記撮影部が取得した前記複数のフレーム画像に画像処理を行う請求項1乃至のいずれか1項に記載の画像処理装置と、を備えた、
    ことを特徴とする撮影装置。
  7. 複数のフレーム画像を取得するステップと、
    取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得するステップと、
    取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得するステップと、
    前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成するステップと、
    生成した前記静止体画像と各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得するステップと、
    前記座標毎に取得した前記判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を取得するステップと、
    前記フレーム画像毎に、取得した前記動体領域の座標と生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成するステップと、を備えた、
    ことを特徴とする画像処理方法。
  8. コンピュータに、
    複数のフレーム画像を取得する手順、
    取得した各フレーム画像にそれぞれ座標を設定し、設定した座標毎に、前記各フレーム画像から同一座標の画素値を取得する手順、
    取得した同一座標の複数の画素値のうちから静止体を示す静止体画素値を取得する手順、
    前記座標毎に取得した前記静止体画素値に基づいて前記静止体の静止体画像を生成する手順、
    生成した前記静止体画像と各フレーム画像との同一座標の画素値の差を取得して、取得した前記画素値の差に基づいて、設定した座標毎に、前記静止体画像と前記動体を示す動体画像とを判別するための判別パラメータを取得する手順、
    前記座標毎に取得した前記判別パラメータを用いて前記フレーム画像毎に前記動体画像を判別し、判別した前記動体画像が存在する動体領域を取得する手順、
    前記フレーム画像毎に、取得した前記動体領域の座標と生成した前記静止体画像の座標とを対応させ、前記動体領域の座標に前記フレーム画像の座標を対応させて前記フレーム画像の画素値を前記静止体画像の座標に登録することにより、前記静止体画像と複数の前記動体画像とが重なり合ったストロボ画像を生成する手順、
    を実行させるためのプログラム。
JP2007121966A 2007-05-02 2007-05-02 画像処理装置、撮影装置、画像処理方法及びプログラム Expired - Fee Related JP5061708B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007121966A JP5061708B2 (ja) 2007-05-02 2007-05-02 画像処理装置、撮影装置、画像処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007121966A JP5061708B2 (ja) 2007-05-02 2007-05-02 画像処理装置、撮影装置、画像処理方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2008278386A JP2008278386A (ja) 2008-11-13
JP2008278386A5 JP2008278386A5 (ja) 2010-05-06
JP5061708B2 true JP5061708B2 (ja) 2012-10-31

Family

ID=40055770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007121966A Expired - Fee Related JP5061708B2 (ja) 2007-05-02 2007-05-02 画像処理装置、撮影装置、画像処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5061708B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020086700A (ja) * 2018-11-20 2020-06-04 ソニー株式会社 画像処理装置、画像処理方法、プログラム、及び、表示装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4068485B2 (ja) * 2002-09-30 2008-03-26 株式会社東芝 画像合成方法、画像合成装置、画像合成プログラム
JP4131929B2 (ja) * 2002-12-03 2008-08-13 株式会社東芝 オブジェクト画像合成方法

Also Published As

Publication number Publication date
JP2008278386A (ja) 2008-11-13

Similar Documents

Publication Publication Date Title
US9787905B2 (en) Image processing apparatus, image display apparatus and imaging apparatus having the same, image processing method, and computer-readable medium storing image processing program for displaying an image having an image range associated with a display area
JP5398156B2 (ja) ホワイトバランス制御装置およびその制御方法並びに撮像装置
JP5035372B2 (ja) 三次元モデリング装置、三次元モデリング方法、ならびに、プログラム
KR101420684B1 (ko) 컬러 영상과 깊이 영상을 매칭하는 방법 및 장치
JP4513869B2 (ja) 撮像装置、ストロボ画像生成方法、および、プログラム
US8422827B2 (en) Image correction apparatus and image correction method
JP5434361B2 (ja) 画像処理装置及び画像処理方法
WO2013021767A1 (ja) 動体検出装置及び方法
JP5383366B2 (ja) 画像処理装置、画像処理方法、および、そのプログラム
JP2008092515A (ja) 電子カメラ、画像処理装置およびプログラム
JP6604908B2 (ja) 画像処理装置、その制御方法、および制御プログラム
JP2010160297A (ja) 撮像装置、自動合焦方法、並びにコンピューター・プログラム
JP2009284056A (ja) 画像処理装置および方法並びにプログラム
KR101589500B1 (ko) 촬영 장치 및 촬영 방법
JP5061708B2 (ja) 画像処理装置、撮影装置、画像処理方法及びプログラム
JP2009053786A (ja) 画像処理装置、撮像装置、画像処理方法、および、プログラム
JP4934992B2 (ja) 画像処理装置、電子カメラおよび画像処理プログラム
JP2007258923A (ja) 画像処理装置、画像処理方法、画像処理プログラム
JP2008236015A (ja) 画像処理装置、撮像装置及びそのプログラム
JP2006127489A (ja) 撮像装置、画像処理装置、撮像装置の制御方法、およびこの制御方法をコンピュータに実行させるためのプログラム
JP2010200360A (ja) 撮像装置、ストロボ画像生成方法、および、プログラム
JP5181948B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP7442989B2 (ja) 撮像装置、該撮像装置の制御方法、及びプログラム
JP2019121981A (ja) 画像処理装置、画像処理方法、およびプログラム
JP7512173B2 (ja) 情報処理装置、撮像装置、プログラム、記憶媒体及び方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100323

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100323

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: 20120710

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120723

R150 Certificate of patent or registration of utility model

Ref document number: 5061708

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees