画像処理装置、画像処理方法及びプログラム
【課題】撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに検出できるようにする。
【解決手段】画像を取得するごとに画像の局所特徴を取得する手段と、前記取得した局所特徴を登録あるいは削除する手段と、前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備える。
【解決手段】画像を取得するごとに画像の局所特徴を取得する手段と、前記取得した局所特徴を登録あるいは削除する手段と、前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、被写体領域を検出するために用いて好適な技術に関する。
【背景技術】
【0002】
撮影時に被写体を検出する手法は、撮影パラメータの制御などに広く利用されている。
画像中から被写体領域を検出する手法として、例えば非特許文献1に記載されている。この非特許文献1には、全ての部分画像について記述子を用意し、それらの変動幅を統計的に取得しマッチングパターンを作る手法が記載されている。非特許文献1においては、部分画像には画像中の任意の矩形領域が用いられ、記述子には矩形領域内において事前に定められた2領域の画像の濃淡の比較結果が用いられている。また、統計的な変動幅の取得には、Boostingアルゴリズムが用いられている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第6711293号明細書
【特許文献2】特開2009−69996号公報
【特許文献3】特開平11−136568号公報
【非特許文献】
【0004】
【非特許文献1】Viola and Jones, "Rapid object detection using boosted cascade of simple features", Computer Vision and Pattern Recognition, 2001
【非特許文献2】M. A. Fischler and R. C. Bolles, "Randomsample consensus: A paradigm for model fitting with applications to image analysis and automated cartography," Commun. ACM, no.24,vol.6, pp.381-395, June 1981.
【発明の概要】
【発明が解決しようとする課題】
【0005】
写真・動画などの撮影において被写体領域を検出する場合、撮影者にとって検出すべき被写体が共通している場合は少ない。多くの場合、この検出すべき被写体は、撮影者の数人かの家族や知人、あるいはその撮影者が飼う単一のペットなど、撮影者固有のものである。したがって、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに、検出する手法が望まれている。撮影時に被写体領域を検出する上で、非特許文献1に記載の手法では、その統計的な変動幅を取得するために多くの画像が必要であり、その画像収集が撮影者に負荷を課している。また、収集した画像数の増加に応じて変動幅の算出に必要な計算量も増加してしまう。
【0006】
本発明は前述の問題点に鑑み、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに検出できるようにすることを目的としている。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、画像を取得するごとに画像の局所特徴を取得する手段と、前記取得した局所特徴を登録あるいは削除する手段と、前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備えることを特徴とする。
【発明の効果】
【0008】
本発明によれば、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに検出することができる。
【図面の簡単な説明】
【0009】
【図1】実施形態に係る画像処理装置のハード構成例を示すブロック図である。
【図2】実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【図3】局所特徴を求める処理手順の一例を示すフローチャートである。
【図4】図3のステップS305の詳細な手順の一例を示すフローチャートである。
【図5】図3のステップS313の詳細な手順の一例を示すフローチャートである。
【図6】図3のステップS315の詳細の手順の一例を示すフローチャートである。
【図7】図4のステップS403、図5のステップS503、及び図6のステップS603の詳細な手順の一例を示すフローチャートである。
【図8】過去に撮影した画像の一例を示す図である。
【図9】試撮画像の一例を示す図である。
【図10】撮影画像の一例を示す図である。
【図11】撮影構図の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を適用した好適な実施形態について説明する。
図1は、本実施形態に係る画像処理装置の構成例を示すブロック図である。
図1において、撮像系101は、レンズ、CCD、MOS、等で構成されており、被写体像を光から電気信号に変換する。102は信号処理回路であり、撮像系101から得られた被写体像に関する電気信号をデジタル信号に変換し、また、撮影条件等を撮像系101に対して設定する。
【0011】
103はCPUであり、ROM104に格納されている制御プログラムを実行することにより、本装置全体の制御を行う。104はROMであり、CPU103が実行する制御プログラムや各種パラメータデータを格納する。この制御プログラムは、CPU103で実行されることにより、後述するフローチャートに示す各処理を実行するための各種手段として、当該装置を機能させる。105はRAMであり、画像データや各種情報を記憶する。また、RAM105は、CPU103のワークエリアやデータの一時待避領域として機能する。
【0012】
106はタッチディスプレイであり、例えば、LCDやCRTで構成されている。また、タッチディスプレイ106は、ユーザに対し情報を提示し、かつユーザの接触操作を受け付け、その座標情報を取得する。また、撮像系101及び信号処理部102を経た映像信号をそのまま表示するためにもタッチディスプレイ106を使用する。以下、ここで表示する画像を試写画像と呼ぶことにする。
【0013】
なお、本実施形態では、後述するフローチャートの各ステップに対応する処理を、CPU103を用いてソフトウェアで実現することとするが、その処理の一部または全部を電子回路などのハードウェアで実現するようにしても構わない。また、本実施形態の画像処理装置は、撮像系101や信号処理部102を省略して汎用PCを用いて実現してもよいし、画像処理専用装置として実現するようにしても構わない。また、ネットワークまたは各種記憶媒体を介して取得したソフトウェア(プログラム)をパーソナルコンピュータ等の処理装置(CPU,プロセッサ)にて実行してもよい。
【0014】
図2は、本実施形態に係る画像処理装置の機能構成例を示すブロック図である。
図2において、画像取得部201は撮像系101に相当し、試撮画像や撮影画像を取得する。試撮画像は、撮影画像を好適に取得するための撮影時パラメータを導出したり構図を決めたりする場合に用いられるものである。撮影画像の例を、図10(a)に示し、試撮画像の例を図9(a)及び図9(b)に示す。
【0015】
被写体領域指示部202はタッチディスプレイ106の一部に相当するものであり、画像取得部201で取得した試撮画像を表示し、その画像に対する被写体の指示を受け付ける。指示を受け付けると、例えば図9(b)に示すように、被写体領域941が示される。局所特徴取得部203は、画像取得部201で取得した試撮画像や撮影画像から局所特徴を取得する。図9(a)及び図9(b)における星印921〜929、951〜958の星印は、試撮画像の局所特徴を示している。また、図10(b)における星印1011〜1017は、図10(a)に示す撮影画像から取得した局所特徴を示している。これらの局所特徴はその座標及びその周辺から求めた局所特徴量から構成されており、例えば特許文献1に記載の方法により算出する。また、この局所特徴は回転、拡大縮小、面外回転などに剛健であればその実装を問わない。
【0016】
局所特徴DB部204は、局所特徴学習部207の要求に応じて局所特徴を登録及び削除する。また、局所特徴比較部205の要求に応じて局所特徴を検索する。なお、本実施形態においては、必ずしも過去画像の保存していなくてもよい。図8(a)〜図8(c)における星印は、過去に撮影されたときに登録されている局所特徴を示している。
【0017】
局所特徴比較部205は、任意の画像の対に含まれる類似領域をそれぞれの画像の局所特徴の比較に基づいて算出する。この局所特徴は、画像取得部201で得られた試撮画像や撮影画像に対し、局所特徴取得部203により得られた局所特徴、及び局所特徴DB部204に登録された過去の画像の局所特徴である。局所特徴取得部203で述べた様に、局所特徴はその座標と特徴量から構成される。本実施形態では、局所特徴比較部205で求める類似領域は、この局所特徴比較の結果類似すると判断された局所特徴が持つ座標を包含する多角形であるとする。よって、本実施形態では、類似領域の表現を便宜的にその類似領域を構成する局所特徴の組み合わせで代用する。図9(a)に示す試撮画像と図8(a)〜図8(c)に示す過去に撮影した画像との局所特徴の比較により求められる類似領域は、例えば図9(a)において、星印921〜923の領域、星印921、922、925の領域、星印931〜934である。
【0018】
被写体領域取得部206は、局所特徴比較部205により得られた類似領域、あるいは被写体領域指示部202による被写体の指示に基づき、画像上の被写体領域を求める。図9(a)の被写体領域911は、図9(a)に示す試撮画像を元に局所特徴比較部205により得られた類似領域に基づいて得られたものである。また、図9(b)の被写体領域941は、図9(b)に示す試撮画像を元に被写体領域指示部202による被写体の指示に基づいて得られたものである。本実施形態では、被写体領域を類似領域に基づき求められた場合、この被写体領域は類似領域の1つと等しい。そのため、局所特徴比較部205と同様、被写体領域の表記は便宜上その被写体領域を構成する局所特徴の組み合わせで代用する。
【0019】
局所特徴学習部207は、局所特徴DB部204に対し局所特徴の登録及び削除を行う。被写体領域指示部202による被写体の指示の有無により登録・削除する局所特徴は変化する。被写体の指示があった場合、撮影画像に関しては被写体領域内の局所特徴のみを登録する。また、被写体を含む過去の画像についてその被写体領域に含まれない局所特徴を削除する。図10(b)の撮影画像に示す被写体領域1002とした場合に登録する局所特徴は星印1011〜1013であり、削除する局所特徴は図8(a)及び図8(c)に示す星印801〜803、841〜844となる。被写体の指示がなかった場合、撮影画像の局所特徴の全てを登録する。また、いずれの場合も、過去に取得した局所特徴のうち、被写体を構成しない局所特徴など、一定の条件を満たす古い局所特徴は削除する。
【0020】
図3は、本実施形態における局所特徴を求める処理手順の一例を示すフローチャートである。この処理は大きく分けてステップS301〜S307の撮影条件調整処理、ステップS308〜S309の本撮影処理、及びステップS310〜S317の被写体登録処理から構成される。また、この処理は局所特徴DB部204が持つ過去画像ごとの局所特徴群を入力とする。
【0021】
まず、ステップS301では、撮影条件調整処理として、ステップS302〜S307を撮影指示(記録指示)があるまで繰り返す。撮影指示は具体的にはシャッターボタン押下等を想定する。この撮影条件調整処理では、構図や撮影タイミングなどの撮影条件の調整及び確認が行われ、被写体領域の検出や指示は主にこの撮影条件の調整に用いられる。
【0022】
次に、ステップS302は、画像取得部201から試撮画像を取得し、タッチディスプレイ106に表示する。次に、ステップS303では、被写体領域指示部202にユーザからの被写体指定の有無を判定する。この判定の結果、指定がある場合はステップS306へ進み、指定がない場合はステップS304へ進む。
【0023】
ステップS304では、局所特徴取得部203により、例えば図9(a)に示す試撮画像から星印921〜929に示す局所特徴を求める。次に、ステップS305では、過去の画像と試撮画像とで類似する領域を求め、試撮画像上で最も過去画像と類似する回数の多い領域を選択し、被写体領域とする。なお、ステップS305の詳細については後述する。
【0024】
一方、ステップS303の判定の結果、ユーザによる被写体指定があった場合は、ステップS306において被写体領域指示部202に対するユーザの操作から被写体領域を取得する。本実施形態では、被写体領域指示部202に対するユーザの操作は、図9(b)に示すように試撮画像にユーザが領域を描くものとする。被写体領域の取得には、既存の物体検出技術や追尾技術などが利用できる。例えば、本実施形態では、類似色ヒストグラム検索を用いる。具体的には、被写体領域941内の色ヒストグラムを求めておき、試撮画像が更新されるごとに、求めておいた色ヒストグラムと最も類似の色ヒストグラムを持つ領域を被写体領域とする。被写体領域が求められなかった場合には被写体領域は存在しないものとしてもよい。
【0025】
次に、ステップS307において、求められた被写体領域を被写体領域指示部202上の画像上に描画する。なお、被写体領域が求められなかった場合、被写体領域は描画しない。ここで、例えば、求められた被写体領域が多角形だとしても、得られた多角形に外接する楕円あるいは角丸矩形などを表示する。これにより不要な情報量を削減して表示を洗練させることができる。また、被写体領域が検出された手法の種別に基づき、色、形状、実線破線などを変化させて表示させる。これにより、被写体検出に用いられた手法をユーザに明示する。また、のほかにも被写体検出技術が実施されているなら、その検出手法に対応する色や線種も用いる。
【0026】
撮影指示が発生し、ステップS302〜S307のループを抜けた後は、ステップS308及びステップS309において、本撮影を行う。まず、ステップS308では、被写体領域に基づきフォーカス・ホワイトバランス・絞り及び露出時間、等を求める。求められた撮影パラメータ等は信号処理部102に設定され、その一部は撮像系101に設定される。ステップS309において、画像を撮影(本撮影)する。撮影画像はメモリカード等に保存し、かつ、タッチディスプレイ106等に表示してユーザに提示する。
【0027】
次に、被写体登録処理として、ステップS310〜S317において、後の被写体領域検出のために、局所特徴DB部204への局所特徴の登録と削除とを行う。まず、ステップS310において、ステップS309で撮影した画像から局所特徴を求める。この局所特徴の取得には、ステップS304と同一の方法を用いる。また、ステップS310はステップS309の撮影のたびに実行され、かつこのステップで求められた局所特徴はステップS312もしくはステップS316において局所特徴DB部204に登録される。このため、ステップS305における被写体領域の取得は、常に最新の撮影から得られた局所特徴を用いることができる。
【0028】
次に、ステップS311において、ステップS301のループ中における撮影者から被写体の明示的な指定があるか否かを判定する。この判定の結果、指定がなかった場合はステップS312に進み、指定があった場合は、ステップS314に進む。
【0029】
ステップS312においては、局所特徴DB部204に撮影画像に含まれる全ての局所特徴群を追加する。これにより、ユーザからの被写体の明示的な指定が存在しない場合、撮影画像中の任意の位置に含まれている被写体は、今後ステップS305において検出することができる。次に、ステップS313において、過去画像群の局所特徴群のうち、主被写体を構成しない局所特徴群を求める。なお、ステップS313の詳細については後述する。なお、図8(b)に示す星印821、822は主被写体を構成しないと判定された局所特徴を示している。
【0030】
一方、ステップS311の判定の結果、ユーザからの被写体の明示的な指定がある場合は、まず、ステップS314において、撮影画像における被写体領域を得る。図10(b)に示す被写体領域1002は、ユーザにより指定された領域を示している。この求め方はステップS306と同様である。
【0031】
次に、ステップS315において、撮影画像の被写体領域と類似する領域を持つ過去画像に含まれる局所特徴のうち、被写体領域に含まれない局所特徴を求める。なお、この処理の詳細については後述する。なお、図8(a)の星印801〜803は、被写体領域に含まれないと判定された局所特徴示している。これらの局所特徴は、ステップS317において局所特徴DB部204から削除される。これにより、被写体に含まれないと判断された局所特徴は、今後の被写体検出処理において用いられず、結果、被写体として検出されにくくなる。
【0032】
次に、ステップS316において、局所特徴DB部204に撮影画像の被写体領域に含まれる局所特徴群を追加する。なお、図10(b)の星印1011〜1013は、撮影画像の被写体領域1002に含まれる局所特徴群を示している。このように被写体領域ではない個所の局所特徴を登録しないことにより、後の撮影における被写体検出率の低下や、使用メモリ・計算量の増大を防いでいる。
【0033】
次に、ステップS317において、被写体領域を構成しない局所特徴、及び登録後に規定の時間もしくは既定の撮影枚数を過ぎた局所特徴を削除する。また、事前に設定された局所特徴数の上限を下回るまで、最も古い局所特徴から削除する。ここで、被写体領域を構成しない局所特徴とは、ステップS313もしくはステップS315で求められた局所特徴群である。規定の時間や規定の撮影枚数を過ぎた局所特徴を削除することで、計算量や必要メモリ量の上限を設けることができる。また、被写体を構成しない局所特徴を削除することで、後の撮影において背景領域が被写体領域として検出されることを防ぐことができる。
【0034】
図4は、ステップS305の詳細な処理手順の一例を示すフローチャートである。このフローチャートは試撮画像と過去画像群とで類似する領域を求め、試撮画像上で重なる回数が最も多い領域を選択する。なお、図4に示す各処理は被写体領域取得部206により行われる。また、本処理では試撮画像の局所特徴群、及び局所特徴DB部204に含まれる過去画像ごとの局所特徴群を入力とする。
【0035】
ステップS401〜S404では、全ての過去画像と試撮画像との組み合わせについて、類似領域を求める。まず、ステップS401では、類似領域及びその登場頻度のリストを初期化する。次に、ステップS402では、ステップS403〜S404の処理を、局所特徴DB部204に含まれる過去画像のそれぞれについて繰り返す。
【0036】
そして、ステップS403では、注目している過去画像と試撮画像とで共通な類似領域を求める。このステップS403の詳細については後述する。例えば、図9(a)に示す星印921〜923に囲まれた領域は、図8(a)に示す星印811〜813に囲まれた領域に類似している。また、図9(a)に示す星印921、922、925に囲まれた領域は、図8(c)に示す星印831、832、835に囲まれた領域に類似している。さらに、図9(a)に示す星印926〜929に囲まれた領域は、図8(c)に示す星印841〜844に囲まれた領域に類似している。そして、ステップS404では、ステップS403において類似領域が存在した場合に、その類似領域を類似領域リストに追加し、その登場頻度を1とする。
【0037】
次に、ステップS405では、全ての過去画像と試撮画像との組み合わせにおいて少なくとも1つの類似領域が存在したかどうかを判定する。この判定の結果、類似領域が一つも存在しなかった場合は、試撮画像上に被写体は見つからないとものしてこの処理を終了する。
【0038】
一方、ステップS405の判定の結果、類似領域が存在する場合は、ステップS406において、全ての類似領域の組合せについて、ステップS407の処理を繰り返し、他の類似領域と重複する回数を求める。そして、ステップS407では、二つの類似領域で重複する領域を求め、存在する場合は、それぞれの類似領域の登場頻度に1追加する。この重複は、例えば、双方の類似領域をビットマップで表現して論理積を求めてもよいし、二つの部分領域間で交差する辺が存在するか、あるいは一方の部分領域が他方に内包されているかを検定すればよい。例えば、図9(a)に示す星印921〜923に囲まれた領域及び星印921、922、925に囲まれた領域は互いに重複し、それぞれの登場頻度は2となる。
【0039】
最後に、ステップS408では、最大の登場頻度を持つ類似領域を選択し、被写体領域とする。複数の類似領域が同数の登場頻度を持つ場合は、例えば、類似領域同士の和集合とする。例えば、互いが星印921〜923に囲まれた領域と、星印921、922、925に囲まれた領域との関係の様に重複している場合は、和集合の星印921、922、923、925に囲まれた領域を被写体領域とする。また、登場頻度に基づき被写体領域を設定する。このため、例えば類似領域として星印921〜923に囲まれた領域と星印931〜934に囲まれた領域とが求められたとしても、過去画像群において登場頻度の高い星印921〜923に囲まれた領域を被写体として選択できる。
【0040】
さらに、過去画像に、図8(b)に示すような被写体を含まない過去画像が含まれていても構わない。さらに、ズーム操作や撮影者の移動を伴わず、最小で2回の撮影で、被写体を構成する局所特徴の頻度を向上させることができる。例えば、図11に示す環境において、枠1101〜1102に示される構図でそれぞれ撮影を行うことにより、枠1101、1102の両方に含まれる領域の登場頻度が向上する。
【0041】
図5は、ステップS313の詳細な処理手順の一例を示すフローチャートである。この処理では、局所特徴DB部204に含まれる過去画像群の局所特徴群のうち、主被写体を構成しない局所特徴群を求める。具体的には全ての局所特徴について過去画像同士の類似領域に含まれる回数を求め、その回数の少ない局所特徴を選択する。
【0042】
まず、ステップS501では、局所特徴の出現頻度のリストを初期化する。
次に、ステップS502では、過去画像群中の異なる過去画像<A,B>の全ての組み合わせについて、ステップS503〜ステップS504を繰り返す。ここで、一例として図8(a)に示す画像を過去画像Aとし、図8(c)に示す画像を過去画像Bとする。
【0043】
ステップS503では、過去画像A及び過去画像Bの類似する領域を求める。このステップS503は図4のステップS403と同様の処理であり、詳細については後述する。例えば、過去画像A及び過去画像Bにおいて類似する領域は、星印811〜813に囲まれた領域と星印831〜833に囲まれた領域とである。
【0044】
次に、ステップS504では、過去画像A及び過去画像Bのそれぞれについて、類似領域を構成する局所特徴、及びそれぞれの領域に含まれる局所特徴の登場頻度を増加する。例えば、星印831〜833に囲まれた領域には、星印834が示す局所特徴が含まれるため、星印811〜813、831〜833に示す局所特徴のみならず、星印834に示す局所特徴の登場頻度も増加させる。登場頻度が増加した局所特徴は、ステップS317で局所特徴DB部204から削除されにくくなる。
【0045】
ここで、一般に、ある類似領域に含まれる局所特徴は、その類似領域の検出に用いられたか否かに関わらず、その領域を構成する可能性が高い。また、同一の被写体を映したとしても、その画像から得られる局所特徴は撮影状況に応じて変化する。よって、削除されなかった局所特徴は、過去画像中に類似する局所特徴を持たないとしても、同一被写体に対する今後の撮影における被写体検出において、類似する局所特徴を持つ可能性、すなわち被写体検出可能性を向上させる。
【0046】
そして、ステップS505では、全ての局所特徴のうち、ステップS504で加算された登場頻度が少なく、かつ既定の条件を満たす局所特徴を選択する。ここで、既定の条件とは、撮影直後の画像に含まれる被写体を構成する局所特徴が削除されることを防ぐために設定される条件である。具体的には、局所特徴取得後に既定の撮影回数もしくは時間を経ていなければならない等を想定する。例えば、登場頻度が少ない局所特徴は星印801〜803、821、822、841〜844が挙げられる。かつ、局所特徴を選択する既定の条件として撮影後2枚を経ていることとすると、星印801〜803に示す局所特徴が選択される。
【0047】
図6は、図3のステップS315の詳細の手順の一例を示すフローチャートである。この処理は撮影画像の被写体領域と類似領域とを持つ過去画像に含まれ、かつ被写体領域に含まれない局所特徴を求めるものである。また、撮影画像の被写体領域の局所特徴群と、過去画像ごとの局所特徴群とを入力とする。
【0048】
まず、ステップS601では、局所特徴の削除リストを初期化する。次に、ステップS602では、過去画像群中のそれぞれの過去画像について、ステップS603〜ステップS605を繰り返す。そして、ステップS603では、撮影画像の被写体領域と過去画像とで類似する部分領域を求める。なお、このステップS603は図4のステップS403と同様の処理であり、詳細については後述する。この処理では、例えば、撮影画像として図10(b)に示す被写体領域1001とし、過去画像と類似する領域として星印811〜813に囲まれた領域及び星印831〜833に囲まれた領域とする。
【0049】
次に、ステップS604では、ステップS603で類似領域が存在するか否かを判定する。この判定の結果、類似領域が存在する場合はステップS605に進み、存在しない場合は、ステップS602のステップS603〜S605のループを継続する。
【0050】
ステップS605では、ステップS602で着目した過去画像に含まれる局所特徴のうち、類似領域に含まれない局所特徴の全てを削除リストに追加する。例えば、図8(c)に示す過去画像で星印831〜833に囲まれた領域が類似領域とされた場合、類似領域に含まれない星印841〜844が示す局所特徴を削除リストに追加する。
【0051】
ここで、星印834に示す局所特徴は類似する局所特徴が存在しないが、星印831〜833に囲まれた領域に含まれるため、削除リストには追加しない。このように図5のステップS504と同様、ある領域に含まれる局所特徴は被写体を構成すると想定し、積極的には削除しない。これにより、例えば星印831〜833で示される被写体を将来撮影し、かつ星印834に示す局所特徴に類似する局所特徴が得られた場合に、その被写体を検出する可能性を増加させることができる。
【0052】
図7は、ステップS403、ステップS503、及びステップS603の詳細な手順の一例を示すフローチャートである。この処理は、一対の画像<A,B>に共通に含まれる類似領域を求める処理であり、局所特徴比較部205により行われる。また、本処理は非特許文献2に示すRANSACとして知られるアルゴリズムに近いものである。このフローチャートはステップS701〜S704の画像間の類似局所特徴収集処理、ステップS705〜S709の画像間変換行列取得処理、及びステップS710〜S713の類似領域取得処理から構成される。
【0053】
まず、ステップS701〜S704では、画像間で類似する局所特徴の対を収集する。そこで、ステップS701において、画像A内の局所特徴と画像B内の局所特徴との対応点のリストとその類似頻度とを用意し、初期化する。次に、ステップS702から画像A中の局所特徴Aと画像B中の局所特徴Bとの組み合わせの全てについて、ステップS703の処理を繰り返す。ステップS703では、画像A中の局所特徴Aと画像B中の局所特徴Bとの差が閾値以下なら、局所特徴Aと局所特徴Bとを対応点リストに追加し、その類似頻度を0とする。二つの局所特徴の差の導出法は任意であり、マンハッタン距離やユークリッド距離でもよいし、何らかの距離関数を設けてもよい。
【0054】
次に、ステップS704では、ステップS703で求めた対応点リストのエントリ数が3以上あるか否かを判定する。この判定の結果、3以上である場合はステップS705に進み、2以下である場合は、2枚の画像は類似領域を持たないものとして処理を終了する。
【0055】
次に、ステップS705〜S709で、画像Aから画像Bへの最尤の変換行列を求める。まず、ステップS705では、収束条件を満たすまで、ステップS706からステップS708を繰り返す。ここで、収束条件としては、統計的に意味のある程度に十分な回数が施行されたことである。具体的には、本実施形態の場合、対応点リスト中のエントリが5以下ならそのエントリ数、それ以上なら6回繰り返すものとする。
【0056】
まず、ステップS706では、対応点リストから任意の2対を選択し、その2対の座標に基づき、画像Aから画像Bへの変換行列を求める。この変換行列はアフィン変換行列であり、任意の2点の対から求められ、拡大縮小、平行移動、回転を一括して表現する。次に、ステップS707からステップS708で、ステップS706で設定した2対が確からしいか否かを検定する。具体的には、まず、ステップS703で求めた対応点リストに含まれる1対の点<a,b>をいくつか選択する。次に、そのそれぞれについて、ステップS706で求めた行列により、画像A上の点aを画像B上の点a′に変換する。その後、bとa′の差が閾値以下であれば、対応点リスト中の3対それぞれの類似頻度を追加する。ここで、二つの局所特徴の差の導出法はステップS703と同一である。
【0057】
次に、ステップS709で、対応点リストにおける類似頻度が最大の2対を選択し、この2対の座標に基づき、画像Aから画像Bへの変換行列を求める。
【0058】
次に、ステップS710からステップS713で、2枚の画像間で類似する領域を求める。まず、ステップS710では、対応点リスト中の点Cの対<a,b>のそれぞれについて、ステップS711を繰り返す。ステップS711では、ステップS709で求めた変換行列により画像A中のa点を画像B上の点a′に変換し、a′とbとの距離が閾値以上なら、対<a,b>を対応点リストから削除する。ここで、二つの局所特徴の差の導出法はステップS703と同一である。
【0059】
次に、ステップS712では、画像Aと画像Bが類似領域を持つか否かを判定する。このとき、ステップS710からステップS711において対応点リストのエントリを削除してもなおそのエントリ数が3以上残るなら、類似領域を持つと判定する。この判定の結果、エントリ数が3以上である場合はステップS713に進み、2以下である場合は、画像Aと画像Bとでは類似領域を持たないものとして処理を終了する。
【0060】
最後に、ステップS713では、画像A、画像Bそれぞれについて、対応点リストに残った点を包含する多角形を求める。画像A、画像Bのそれぞれの上における多角形が画像A、画像Bに共通して含まれる類似領域である。
【0061】
以上、本実施形態は、登録後既定の撮影枚数を経過した局所特徴を判定し、登録後既定の時間を経過した局所特徴を判定し、判定された局所特徴を削除するステップS317を備える。これにより、局所特徴数の上限を抑え、図7のフローチャートにおける計算量の上限を制限する事ができる。
【0062】
また、本実施形態では、主被写体を構成しない局所特徴を判定するステップS313で、過去の画像の任意の組み合わせについて被写体領域を求めるステップS503を備える。さらに、局所特徴ごとに被写体領域に含まれた回数を求めるステップS504と、上記回数に基づき主被写体を構成するか否かを判定するステップS505とを備える。これにより、同一被写体に対する撮影において、被写体検出可能性を向上させる。
【0063】
また、本実施形態では、取得した画像上の被写体領域の指示を受け付けるステップS202と、登録した局所特徴について上記取得した画像上の被写体領域と類似する領域を持つか否かを判定するステップS604とを備える。さらに、上記類似領域を持つと判定された画像に含まれ、かつ上記類似領域に含まれない局所特徴群を削除するステップS605及びステップS317を備える。これにより、一度被写体に含まれないと指示された局所特徴は今後の撮影において検出されないようにすることができる。
【0064】
また、特許文献2には、局所的顕著性、すなわちある部分がその背景に対してどれだけ目立っているか、の自動測定に基づき、画像中から主要被写体を検出する手法が開示されている。しかし、特許文献2に記載の手法では、例えば花畑で蝶を撮影する場合など、より局所的顕著性の高い領域が背景に入る場合などに結果が不定となる。これに対して本実施形態においては、ステップS408に基づく被写体領域の決定においては、被写体領域は局所特徴に基づく類似領域の検出及びその頻度に基づく。すなわち、背景から得られる局所特徴は類似領域の頻度の導出において考慮されないため、背景の変化に対し剛健である。
【0065】
また、特許文献3には、タッチパネルで主要被写体領域を指定するユーザインターフェースに基づく被写体検出手法が開示されている。特許文献3に記載の手法では撮影直前にユーザの操作が必要であるが、鉄道などの動きの激しい物体やあるいは飛ぶ蝶など軌道が不定な物体の撮影においてユーザ操作が困難である。これに対して本実施形態においては、ステップS305による被写体領域の検出には、タッチパネルの類の操作は不要である。
【0066】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0067】
201 画像取得部、202 被写体領域指示部、203 局所特徴取得部、204 局所特徴DB部、205 局所特徴比較部、206 被写体領域取得部、207 局所特徴学習部
【技術分野】
【0001】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、被写体領域を検出するために用いて好適な技術に関する。
【背景技術】
【0002】
撮影時に被写体を検出する手法は、撮影パラメータの制御などに広く利用されている。
画像中から被写体領域を検出する手法として、例えば非特許文献1に記載されている。この非特許文献1には、全ての部分画像について記述子を用意し、それらの変動幅を統計的に取得しマッチングパターンを作る手法が記載されている。非特許文献1においては、部分画像には画像中の任意の矩形領域が用いられ、記述子には矩形領域内において事前に定められた2領域の画像の濃淡の比較結果が用いられている。また、統計的な変動幅の取得には、Boostingアルゴリズムが用いられている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】米国特許第6711293号明細書
【特許文献2】特開2009−69996号公報
【特許文献3】特開平11−136568号公報
【非特許文献】
【0004】
【非特許文献1】Viola and Jones, "Rapid object detection using boosted cascade of simple features", Computer Vision and Pattern Recognition, 2001
【非特許文献2】M. A. Fischler and R. C. Bolles, "Randomsample consensus: A paradigm for model fitting with applications to image analysis and automated cartography," Commun. ACM, no.24,vol.6, pp.381-395, June 1981.
【発明の概要】
【発明が解決しようとする課題】
【0005】
写真・動画などの撮影において被写体領域を検出する場合、撮影者にとって検出すべき被写体が共通している場合は少ない。多くの場合、この検出すべき被写体は、撮影者の数人かの家族や知人、あるいはその撮影者が飼う単一のペットなど、撮影者固有のものである。したがって、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに、検出する手法が望まれている。撮影時に被写体領域を検出する上で、非特許文献1に記載の手法では、その統計的な変動幅を取得するために多くの画像が必要であり、その画像収集が撮影者に負荷を課している。また、収集した画像数の増加に応じて変動幅の算出に必要な計算量も増加してしまう。
【0006】
本発明は前述の問題点に鑑み、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに検出できるようにすることを目的としている。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、画像を取得するごとに画像の局所特徴を取得する手段と、前記取得した局所特徴を登録あるいは削除する手段と、前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備えることを特徴とする。
【発明の効果】
【0008】
本発明によれば、撮影者固有の被写体を、撮影者に大きな負荷を生じさせずに検出することができる。
【図面の簡単な説明】
【0009】
【図1】実施形態に係る画像処理装置のハード構成例を示すブロック図である。
【図2】実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【図3】局所特徴を求める処理手順の一例を示すフローチャートである。
【図4】図3のステップS305の詳細な手順の一例を示すフローチャートである。
【図5】図3のステップS313の詳細な手順の一例を示すフローチャートである。
【図6】図3のステップS315の詳細の手順の一例を示すフローチャートである。
【図7】図4のステップS403、図5のステップS503、及び図6のステップS603の詳細な手順の一例を示すフローチャートである。
【図8】過去に撮影した画像の一例を示す図である。
【図9】試撮画像の一例を示す図である。
【図10】撮影画像の一例を示す図である。
【図11】撮影構図の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を適用した好適な実施形態について説明する。
図1は、本実施形態に係る画像処理装置の構成例を示すブロック図である。
図1において、撮像系101は、レンズ、CCD、MOS、等で構成されており、被写体像を光から電気信号に変換する。102は信号処理回路であり、撮像系101から得られた被写体像に関する電気信号をデジタル信号に変換し、また、撮影条件等を撮像系101に対して設定する。
【0011】
103はCPUであり、ROM104に格納されている制御プログラムを実行することにより、本装置全体の制御を行う。104はROMであり、CPU103が実行する制御プログラムや各種パラメータデータを格納する。この制御プログラムは、CPU103で実行されることにより、後述するフローチャートに示す各処理を実行するための各種手段として、当該装置を機能させる。105はRAMであり、画像データや各種情報を記憶する。また、RAM105は、CPU103のワークエリアやデータの一時待避領域として機能する。
【0012】
106はタッチディスプレイであり、例えば、LCDやCRTで構成されている。また、タッチディスプレイ106は、ユーザに対し情報を提示し、かつユーザの接触操作を受け付け、その座標情報を取得する。また、撮像系101及び信号処理部102を経た映像信号をそのまま表示するためにもタッチディスプレイ106を使用する。以下、ここで表示する画像を試写画像と呼ぶことにする。
【0013】
なお、本実施形態では、後述するフローチャートの各ステップに対応する処理を、CPU103を用いてソフトウェアで実現することとするが、その処理の一部または全部を電子回路などのハードウェアで実現するようにしても構わない。また、本実施形態の画像処理装置は、撮像系101や信号処理部102を省略して汎用PCを用いて実現してもよいし、画像処理専用装置として実現するようにしても構わない。また、ネットワークまたは各種記憶媒体を介して取得したソフトウェア(プログラム)をパーソナルコンピュータ等の処理装置(CPU,プロセッサ)にて実行してもよい。
【0014】
図2は、本実施形態に係る画像処理装置の機能構成例を示すブロック図である。
図2において、画像取得部201は撮像系101に相当し、試撮画像や撮影画像を取得する。試撮画像は、撮影画像を好適に取得するための撮影時パラメータを導出したり構図を決めたりする場合に用いられるものである。撮影画像の例を、図10(a)に示し、試撮画像の例を図9(a)及び図9(b)に示す。
【0015】
被写体領域指示部202はタッチディスプレイ106の一部に相当するものであり、画像取得部201で取得した試撮画像を表示し、その画像に対する被写体の指示を受け付ける。指示を受け付けると、例えば図9(b)に示すように、被写体領域941が示される。局所特徴取得部203は、画像取得部201で取得した試撮画像や撮影画像から局所特徴を取得する。図9(a)及び図9(b)における星印921〜929、951〜958の星印は、試撮画像の局所特徴を示している。また、図10(b)における星印1011〜1017は、図10(a)に示す撮影画像から取得した局所特徴を示している。これらの局所特徴はその座標及びその周辺から求めた局所特徴量から構成されており、例えば特許文献1に記載の方法により算出する。また、この局所特徴は回転、拡大縮小、面外回転などに剛健であればその実装を問わない。
【0016】
局所特徴DB部204は、局所特徴学習部207の要求に応じて局所特徴を登録及び削除する。また、局所特徴比較部205の要求に応じて局所特徴を検索する。なお、本実施形態においては、必ずしも過去画像の保存していなくてもよい。図8(a)〜図8(c)における星印は、過去に撮影されたときに登録されている局所特徴を示している。
【0017】
局所特徴比較部205は、任意の画像の対に含まれる類似領域をそれぞれの画像の局所特徴の比較に基づいて算出する。この局所特徴は、画像取得部201で得られた試撮画像や撮影画像に対し、局所特徴取得部203により得られた局所特徴、及び局所特徴DB部204に登録された過去の画像の局所特徴である。局所特徴取得部203で述べた様に、局所特徴はその座標と特徴量から構成される。本実施形態では、局所特徴比較部205で求める類似領域は、この局所特徴比較の結果類似すると判断された局所特徴が持つ座標を包含する多角形であるとする。よって、本実施形態では、類似領域の表現を便宜的にその類似領域を構成する局所特徴の組み合わせで代用する。図9(a)に示す試撮画像と図8(a)〜図8(c)に示す過去に撮影した画像との局所特徴の比較により求められる類似領域は、例えば図9(a)において、星印921〜923の領域、星印921、922、925の領域、星印931〜934である。
【0018】
被写体領域取得部206は、局所特徴比較部205により得られた類似領域、あるいは被写体領域指示部202による被写体の指示に基づき、画像上の被写体領域を求める。図9(a)の被写体領域911は、図9(a)に示す試撮画像を元に局所特徴比較部205により得られた類似領域に基づいて得られたものである。また、図9(b)の被写体領域941は、図9(b)に示す試撮画像を元に被写体領域指示部202による被写体の指示に基づいて得られたものである。本実施形態では、被写体領域を類似領域に基づき求められた場合、この被写体領域は類似領域の1つと等しい。そのため、局所特徴比較部205と同様、被写体領域の表記は便宜上その被写体領域を構成する局所特徴の組み合わせで代用する。
【0019】
局所特徴学習部207は、局所特徴DB部204に対し局所特徴の登録及び削除を行う。被写体領域指示部202による被写体の指示の有無により登録・削除する局所特徴は変化する。被写体の指示があった場合、撮影画像に関しては被写体領域内の局所特徴のみを登録する。また、被写体を含む過去の画像についてその被写体領域に含まれない局所特徴を削除する。図10(b)の撮影画像に示す被写体領域1002とした場合に登録する局所特徴は星印1011〜1013であり、削除する局所特徴は図8(a)及び図8(c)に示す星印801〜803、841〜844となる。被写体の指示がなかった場合、撮影画像の局所特徴の全てを登録する。また、いずれの場合も、過去に取得した局所特徴のうち、被写体を構成しない局所特徴など、一定の条件を満たす古い局所特徴は削除する。
【0020】
図3は、本実施形態における局所特徴を求める処理手順の一例を示すフローチャートである。この処理は大きく分けてステップS301〜S307の撮影条件調整処理、ステップS308〜S309の本撮影処理、及びステップS310〜S317の被写体登録処理から構成される。また、この処理は局所特徴DB部204が持つ過去画像ごとの局所特徴群を入力とする。
【0021】
まず、ステップS301では、撮影条件調整処理として、ステップS302〜S307を撮影指示(記録指示)があるまで繰り返す。撮影指示は具体的にはシャッターボタン押下等を想定する。この撮影条件調整処理では、構図や撮影タイミングなどの撮影条件の調整及び確認が行われ、被写体領域の検出や指示は主にこの撮影条件の調整に用いられる。
【0022】
次に、ステップS302は、画像取得部201から試撮画像を取得し、タッチディスプレイ106に表示する。次に、ステップS303では、被写体領域指示部202にユーザからの被写体指定の有無を判定する。この判定の結果、指定がある場合はステップS306へ進み、指定がない場合はステップS304へ進む。
【0023】
ステップS304では、局所特徴取得部203により、例えば図9(a)に示す試撮画像から星印921〜929に示す局所特徴を求める。次に、ステップS305では、過去の画像と試撮画像とで類似する領域を求め、試撮画像上で最も過去画像と類似する回数の多い領域を選択し、被写体領域とする。なお、ステップS305の詳細については後述する。
【0024】
一方、ステップS303の判定の結果、ユーザによる被写体指定があった場合は、ステップS306において被写体領域指示部202に対するユーザの操作から被写体領域を取得する。本実施形態では、被写体領域指示部202に対するユーザの操作は、図9(b)に示すように試撮画像にユーザが領域を描くものとする。被写体領域の取得には、既存の物体検出技術や追尾技術などが利用できる。例えば、本実施形態では、類似色ヒストグラム検索を用いる。具体的には、被写体領域941内の色ヒストグラムを求めておき、試撮画像が更新されるごとに、求めておいた色ヒストグラムと最も類似の色ヒストグラムを持つ領域を被写体領域とする。被写体領域が求められなかった場合には被写体領域は存在しないものとしてもよい。
【0025】
次に、ステップS307において、求められた被写体領域を被写体領域指示部202上の画像上に描画する。なお、被写体領域が求められなかった場合、被写体領域は描画しない。ここで、例えば、求められた被写体領域が多角形だとしても、得られた多角形に外接する楕円あるいは角丸矩形などを表示する。これにより不要な情報量を削減して表示を洗練させることができる。また、被写体領域が検出された手法の種別に基づき、色、形状、実線破線などを変化させて表示させる。これにより、被写体検出に用いられた手法をユーザに明示する。また、のほかにも被写体検出技術が実施されているなら、その検出手法に対応する色や線種も用いる。
【0026】
撮影指示が発生し、ステップS302〜S307のループを抜けた後は、ステップS308及びステップS309において、本撮影を行う。まず、ステップS308では、被写体領域に基づきフォーカス・ホワイトバランス・絞り及び露出時間、等を求める。求められた撮影パラメータ等は信号処理部102に設定され、その一部は撮像系101に設定される。ステップS309において、画像を撮影(本撮影)する。撮影画像はメモリカード等に保存し、かつ、タッチディスプレイ106等に表示してユーザに提示する。
【0027】
次に、被写体登録処理として、ステップS310〜S317において、後の被写体領域検出のために、局所特徴DB部204への局所特徴の登録と削除とを行う。まず、ステップS310において、ステップS309で撮影した画像から局所特徴を求める。この局所特徴の取得には、ステップS304と同一の方法を用いる。また、ステップS310はステップS309の撮影のたびに実行され、かつこのステップで求められた局所特徴はステップS312もしくはステップS316において局所特徴DB部204に登録される。このため、ステップS305における被写体領域の取得は、常に最新の撮影から得られた局所特徴を用いることができる。
【0028】
次に、ステップS311において、ステップS301のループ中における撮影者から被写体の明示的な指定があるか否かを判定する。この判定の結果、指定がなかった場合はステップS312に進み、指定があった場合は、ステップS314に進む。
【0029】
ステップS312においては、局所特徴DB部204に撮影画像に含まれる全ての局所特徴群を追加する。これにより、ユーザからの被写体の明示的な指定が存在しない場合、撮影画像中の任意の位置に含まれている被写体は、今後ステップS305において検出することができる。次に、ステップS313において、過去画像群の局所特徴群のうち、主被写体を構成しない局所特徴群を求める。なお、ステップS313の詳細については後述する。なお、図8(b)に示す星印821、822は主被写体を構成しないと判定された局所特徴を示している。
【0030】
一方、ステップS311の判定の結果、ユーザからの被写体の明示的な指定がある場合は、まず、ステップS314において、撮影画像における被写体領域を得る。図10(b)に示す被写体領域1002は、ユーザにより指定された領域を示している。この求め方はステップS306と同様である。
【0031】
次に、ステップS315において、撮影画像の被写体領域と類似する領域を持つ過去画像に含まれる局所特徴のうち、被写体領域に含まれない局所特徴を求める。なお、この処理の詳細については後述する。なお、図8(a)の星印801〜803は、被写体領域に含まれないと判定された局所特徴示している。これらの局所特徴は、ステップS317において局所特徴DB部204から削除される。これにより、被写体に含まれないと判断された局所特徴は、今後の被写体検出処理において用いられず、結果、被写体として検出されにくくなる。
【0032】
次に、ステップS316において、局所特徴DB部204に撮影画像の被写体領域に含まれる局所特徴群を追加する。なお、図10(b)の星印1011〜1013は、撮影画像の被写体領域1002に含まれる局所特徴群を示している。このように被写体領域ではない個所の局所特徴を登録しないことにより、後の撮影における被写体検出率の低下や、使用メモリ・計算量の増大を防いでいる。
【0033】
次に、ステップS317において、被写体領域を構成しない局所特徴、及び登録後に規定の時間もしくは既定の撮影枚数を過ぎた局所特徴を削除する。また、事前に設定された局所特徴数の上限を下回るまで、最も古い局所特徴から削除する。ここで、被写体領域を構成しない局所特徴とは、ステップS313もしくはステップS315で求められた局所特徴群である。規定の時間や規定の撮影枚数を過ぎた局所特徴を削除することで、計算量や必要メモリ量の上限を設けることができる。また、被写体を構成しない局所特徴を削除することで、後の撮影において背景領域が被写体領域として検出されることを防ぐことができる。
【0034】
図4は、ステップS305の詳細な処理手順の一例を示すフローチャートである。このフローチャートは試撮画像と過去画像群とで類似する領域を求め、試撮画像上で重なる回数が最も多い領域を選択する。なお、図4に示す各処理は被写体領域取得部206により行われる。また、本処理では試撮画像の局所特徴群、及び局所特徴DB部204に含まれる過去画像ごとの局所特徴群を入力とする。
【0035】
ステップS401〜S404では、全ての過去画像と試撮画像との組み合わせについて、類似領域を求める。まず、ステップS401では、類似領域及びその登場頻度のリストを初期化する。次に、ステップS402では、ステップS403〜S404の処理を、局所特徴DB部204に含まれる過去画像のそれぞれについて繰り返す。
【0036】
そして、ステップS403では、注目している過去画像と試撮画像とで共通な類似領域を求める。このステップS403の詳細については後述する。例えば、図9(a)に示す星印921〜923に囲まれた領域は、図8(a)に示す星印811〜813に囲まれた領域に類似している。また、図9(a)に示す星印921、922、925に囲まれた領域は、図8(c)に示す星印831、832、835に囲まれた領域に類似している。さらに、図9(a)に示す星印926〜929に囲まれた領域は、図8(c)に示す星印841〜844に囲まれた領域に類似している。そして、ステップS404では、ステップS403において類似領域が存在した場合に、その類似領域を類似領域リストに追加し、その登場頻度を1とする。
【0037】
次に、ステップS405では、全ての過去画像と試撮画像との組み合わせにおいて少なくとも1つの類似領域が存在したかどうかを判定する。この判定の結果、類似領域が一つも存在しなかった場合は、試撮画像上に被写体は見つからないとものしてこの処理を終了する。
【0038】
一方、ステップS405の判定の結果、類似領域が存在する場合は、ステップS406において、全ての類似領域の組合せについて、ステップS407の処理を繰り返し、他の類似領域と重複する回数を求める。そして、ステップS407では、二つの類似領域で重複する領域を求め、存在する場合は、それぞれの類似領域の登場頻度に1追加する。この重複は、例えば、双方の類似領域をビットマップで表現して論理積を求めてもよいし、二つの部分領域間で交差する辺が存在するか、あるいは一方の部分領域が他方に内包されているかを検定すればよい。例えば、図9(a)に示す星印921〜923に囲まれた領域及び星印921、922、925に囲まれた領域は互いに重複し、それぞれの登場頻度は2となる。
【0039】
最後に、ステップS408では、最大の登場頻度を持つ類似領域を選択し、被写体領域とする。複数の類似領域が同数の登場頻度を持つ場合は、例えば、類似領域同士の和集合とする。例えば、互いが星印921〜923に囲まれた領域と、星印921、922、925に囲まれた領域との関係の様に重複している場合は、和集合の星印921、922、923、925に囲まれた領域を被写体領域とする。また、登場頻度に基づき被写体領域を設定する。このため、例えば類似領域として星印921〜923に囲まれた領域と星印931〜934に囲まれた領域とが求められたとしても、過去画像群において登場頻度の高い星印921〜923に囲まれた領域を被写体として選択できる。
【0040】
さらに、過去画像に、図8(b)に示すような被写体を含まない過去画像が含まれていても構わない。さらに、ズーム操作や撮影者の移動を伴わず、最小で2回の撮影で、被写体を構成する局所特徴の頻度を向上させることができる。例えば、図11に示す環境において、枠1101〜1102に示される構図でそれぞれ撮影を行うことにより、枠1101、1102の両方に含まれる領域の登場頻度が向上する。
【0041】
図5は、ステップS313の詳細な処理手順の一例を示すフローチャートである。この処理では、局所特徴DB部204に含まれる過去画像群の局所特徴群のうち、主被写体を構成しない局所特徴群を求める。具体的には全ての局所特徴について過去画像同士の類似領域に含まれる回数を求め、その回数の少ない局所特徴を選択する。
【0042】
まず、ステップS501では、局所特徴の出現頻度のリストを初期化する。
次に、ステップS502では、過去画像群中の異なる過去画像<A,B>の全ての組み合わせについて、ステップS503〜ステップS504を繰り返す。ここで、一例として図8(a)に示す画像を過去画像Aとし、図8(c)に示す画像を過去画像Bとする。
【0043】
ステップS503では、過去画像A及び過去画像Bの類似する領域を求める。このステップS503は図4のステップS403と同様の処理であり、詳細については後述する。例えば、過去画像A及び過去画像Bにおいて類似する領域は、星印811〜813に囲まれた領域と星印831〜833に囲まれた領域とである。
【0044】
次に、ステップS504では、過去画像A及び過去画像Bのそれぞれについて、類似領域を構成する局所特徴、及びそれぞれの領域に含まれる局所特徴の登場頻度を増加する。例えば、星印831〜833に囲まれた領域には、星印834が示す局所特徴が含まれるため、星印811〜813、831〜833に示す局所特徴のみならず、星印834に示す局所特徴の登場頻度も増加させる。登場頻度が増加した局所特徴は、ステップS317で局所特徴DB部204から削除されにくくなる。
【0045】
ここで、一般に、ある類似領域に含まれる局所特徴は、その類似領域の検出に用いられたか否かに関わらず、その領域を構成する可能性が高い。また、同一の被写体を映したとしても、その画像から得られる局所特徴は撮影状況に応じて変化する。よって、削除されなかった局所特徴は、過去画像中に類似する局所特徴を持たないとしても、同一被写体に対する今後の撮影における被写体検出において、類似する局所特徴を持つ可能性、すなわち被写体検出可能性を向上させる。
【0046】
そして、ステップS505では、全ての局所特徴のうち、ステップS504で加算された登場頻度が少なく、かつ既定の条件を満たす局所特徴を選択する。ここで、既定の条件とは、撮影直後の画像に含まれる被写体を構成する局所特徴が削除されることを防ぐために設定される条件である。具体的には、局所特徴取得後に既定の撮影回数もしくは時間を経ていなければならない等を想定する。例えば、登場頻度が少ない局所特徴は星印801〜803、821、822、841〜844が挙げられる。かつ、局所特徴を選択する既定の条件として撮影後2枚を経ていることとすると、星印801〜803に示す局所特徴が選択される。
【0047】
図6は、図3のステップS315の詳細の手順の一例を示すフローチャートである。この処理は撮影画像の被写体領域と類似領域とを持つ過去画像に含まれ、かつ被写体領域に含まれない局所特徴を求めるものである。また、撮影画像の被写体領域の局所特徴群と、過去画像ごとの局所特徴群とを入力とする。
【0048】
まず、ステップS601では、局所特徴の削除リストを初期化する。次に、ステップS602では、過去画像群中のそれぞれの過去画像について、ステップS603〜ステップS605を繰り返す。そして、ステップS603では、撮影画像の被写体領域と過去画像とで類似する部分領域を求める。なお、このステップS603は図4のステップS403と同様の処理であり、詳細については後述する。この処理では、例えば、撮影画像として図10(b)に示す被写体領域1001とし、過去画像と類似する領域として星印811〜813に囲まれた領域及び星印831〜833に囲まれた領域とする。
【0049】
次に、ステップS604では、ステップS603で類似領域が存在するか否かを判定する。この判定の結果、類似領域が存在する場合はステップS605に進み、存在しない場合は、ステップS602のステップS603〜S605のループを継続する。
【0050】
ステップS605では、ステップS602で着目した過去画像に含まれる局所特徴のうち、類似領域に含まれない局所特徴の全てを削除リストに追加する。例えば、図8(c)に示す過去画像で星印831〜833に囲まれた領域が類似領域とされた場合、類似領域に含まれない星印841〜844が示す局所特徴を削除リストに追加する。
【0051】
ここで、星印834に示す局所特徴は類似する局所特徴が存在しないが、星印831〜833に囲まれた領域に含まれるため、削除リストには追加しない。このように図5のステップS504と同様、ある領域に含まれる局所特徴は被写体を構成すると想定し、積極的には削除しない。これにより、例えば星印831〜833で示される被写体を将来撮影し、かつ星印834に示す局所特徴に類似する局所特徴が得られた場合に、その被写体を検出する可能性を増加させることができる。
【0052】
図7は、ステップS403、ステップS503、及びステップS603の詳細な手順の一例を示すフローチャートである。この処理は、一対の画像<A,B>に共通に含まれる類似領域を求める処理であり、局所特徴比較部205により行われる。また、本処理は非特許文献2に示すRANSACとして知られるアルゴリズムに近いものである。このフローチャートはステップS701〜S704の画像間の類似局所特徴収集処理、ステップS705〜S709の画像間変換行列取得処理、及びステップS710〜S713の類似領域取得処理から構成される。
【0053】
まず、ステップS701〜S704では、画像間で類似する局所特徴の対を収集する。そこで、ステップS701において、画像A内の局所特徴と画像B内の局所特徴との対応点のリストとその類似頻度とを用意し、初期化する。次に、ステップS702から画像A中の局所特徴Aと画像B中の局所特徴Bとの組み合わせの全てについて、ステップS703の処理を繰り返す。ステップS703では、画像A中の局所特徴Aと画像B中の局所特徴Bとの差が閾値以下なら、局所特徴Aと局所特徴Bとを対応点リストに追加し、その類似頻度を0とする。二つの局所特徴の差の導出法は任意であり、マンハッタン距離やユークリッド距離でもよいし、何らかの距離関数を設けてもよい。
【0054】
次に、ステップS704では、ステップS703で求めた対応点リストのエントリ数が3以上あるか否かを判定する。この判定の結果、3以上である場合はステップS705に進み、2以下である場合は、2枚の画像は類似領域を持たないものとして処理を終了する。
【0055】
次に、ステップS705〜S709で、画像Aから画像Bへの最尤の変換行列を求める。まず、ステップS705では、収束条件を満たすまで、ステップS706からステップS708を繰り返す。ここで、収束条件としては、統計的に意味のある程度に十分な回数が施行されたことである。具体的には、本実施形態の場合、対応点リスト中のエントリが5以下ならそのエントリ数、それ以上なら6回繰り返すものとする。
【0056】
まず、ステップS706では、対応点リストから任意の2対を選択し、その2対の座標に基づき、画像Aから画像Bへの変換行列を求める。この変換行列はアフィン変換行列であり、任意の2点の対から求められ、拡大縮小、平行移動、回転を一括して表現する。次に、ステップS707からステップS708で、ステップS706で設定した2対が確からしいか否かを検定する。具体的には、まず、ステップS703で求めた対応点リストに含まれる1対の点<a,b>をいくつか選択する。次に、そのそれぞれについて、ステップS706で求めた行列により、画像A上の点aを画像B上の点a′に変換する。その後、bとa′の差が閾値以下であれば、対応点リスト中の3対それぞれの類似頻度を追加する。ここで、二つの局所特徴の差の導出法はステップS703と同一である。
【0057】
次に、ステップS709で、対応点リストにおける類似頻度が最大の2対を選択し、この2対の座標に基づき、画像Aから画像Bへの変換行列を求める。
【0058】
次に、ステップS710からステップS713で、2枚の画像間で類似する領域を求める。まず、ステップS710では、対応点リスト中の点Cの対<a,b>のそれぞれについて、ステップS711を繰り返す。ステップS711では、ステップS709で求めた変換行列により画像A中のa点を画像B上の点a′に変換し、a′とbとの距離が閾値以上なら、対<a,b>を対応点リストから削除する。ここで、二つの局所特徴の差の導出法はステップS703と同一である。
【0059】
次に、ステップS712では、画像Aと画像Bが類似領域を持つか否かを判定する。このとき、ステップS710からステップS711において対応点リストのエントリを削除してもなおそのエントリ数が3以上残るなら、類似領域を持つと判定する。この判定の結果、エントリ数が3以上である場合はステップS713に進み、2以下である場合は、画像Aと画像Bとでは類似領域を持たないものとして処理を終了する。
【0060】
最後に、ステップS713では、画像A、画像Bそれぞれについて、対応点リストに残った点を包含する多角形を求める。画像A、画像Bのそれぞれの上における多角形が画像A、画像Bに共通して含まれる類似領域である。
【0061】
以上、本実施形態は、登録後既定の撮影枚数を経過した局所特徴を判定し、登録後既定の時間を経過した局所特徴を判定し、判定された局所特徴を削除するステップS317を備える。これにより、局所特徴数の上限を抑え、図7のフローチャートにおける計算量の上限を制限する事ができる。
【0062】
また、本実施形態では、主被写体を構成しない局所特徴を判定するステップS313で、過去の画像の任意の組み合わせについて被写体領域を求めるステップS503を備える。さらに、局所特徴ごとに被写体領域に含まれた回数を求めるステップS504と、上記回数に基づき主被写体を構成するか否かを判定するステップS505とを備える。これにより、同一被写体に対する撮影において、被写体検出可能性を向上させる。
【0063】
また、本実施形態では、取得した画像上の被写体領域の指示を受け付けるステップS202と、登録した局所特徴について上記取得した画像上の被写体領域と類似する領域を持つか否かを判定するステップS604とを備える。さらに、上記類似領域を持つと判定された画像に含まれ、かつ上記類似領域に含まれない局所特徴群を削除するステップS605及びステップS317を備える。これにより、一度被写体に含まれないと指示された局所特徴は今後の撮影において検出されないようにすることができる。
【0064】
また、特許文献2には、局所的顕著性、すなわちある部分がその背景に対してどれだけ目立っているか、の自動測定に基づき、画像中から主要被写体を検出する手法が開示されている。しかし、特許文献2に記載の手法では、例えば花畑で蝶を撮影する場合など、より局所的顕著性の高い領域が背景に入る場合などに結果が不定となる。これに対して本実施形態においては、ステップS408に基づく被写体領域の決定においては、被写体領域は局所特徴に基づく類似領域の検出及びその頻度に基づく。すなわち、背景から得られる局所特徴は類似領域の頻度の導出において考慮されないため、背景の変化に対し剛健である。
【0065】
また、特許文献3には、タッチパネルで主要被写体領域を指定するユーザインターフェースに基づく被写体検出手法が開示されている。特許文献3に記載の手法では撮影直前にユーザの操作が必要であるが、鉄道などの動きの激しい物体やあるいは飛ぶ蝶など軌道が不定な物体の撮影においてユーザ操作が困難である。これに対して本実施形態においては、ステップS305による被写体領域の検出には、タッチパネルの類の操作は不要である。
【0066】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0067】
201 画像取得部、202 被写体領域指示部、203 局所特徴取得部、204 局所特徴DB部、205 局所特徴比較部、206 被写体領域取得部、207 局所特徴学習部
【特許請求の範囲】
【請求項1】
画像を取得するごとに画像の局所特徴を取得する手段と、
前記取得した局所特徴を登録あるいは削除する手段と、
前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、
前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備えることを特徴とする画像処理装置。
【請求項2】
画像を取得するごとに画像の局所特徴を取得する工程と、
前記取得した局所特徴を登録あるいは削除する工程と、
前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める工程と、
前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する工程とを備えることを特徴とする画像処理方法。
【請求項3】
請求項2に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項1】
画像を取得するごとに画像の局所特徴を取得する手段と、
前記取得した局所特徴を登録あるいは削除する手段と、
前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める手段と、
前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する手段とを備えることを特徴とする画像処理装置。
【請求項2】
画像を取得するごとに画像の局所特徴を取得する工程と、
前記取得した局所特徴を登録あるいは削除する工程と、
前記取得した画像上の局所特徴と過去に登録された局所特徴との比較に基づき過去の画像と前記取得した画像とで類似する領域を求める工程と、
前記類似する領域の組み合わせのそれぞれが重複する部分領域を持つ頻度に基づき被写体領域を取得する工程とを備えることを特徴とする画像処理方法。
【請求項3】
請求項2に記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2012−49815(P2012−49815A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−189858(P2010−189858)
【出願日】平成22年8月26日(2010.8.26)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願日】平成22年8月26日(2010.8.26)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]