JP2019086969A - 画像処理装置、画像処理方法、及びプログラム - Google Patents
画像処理装置、画像処理方法、及びプログラム Download PDFInfo
- Publication number
- JP2019086969A JP2019086969A JP2017213950A JP2017213950A JP2019086969A JP 2019086969 A JP2019086969 A JP 2019086969A JP 2017213950 A JP2017213950 A JP 2017213950A JP 2017213950 A JP2017213950 A JP 2017213950A JP 2019086969 A JP2019086969 A JP 2019086969A
- Authority
- JP
- Japan
- Prior art keywords
- image
- history
- background
- foreground
- input image
- 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
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】入力画像から背景画像を生成する際に、前景を適切に識別して背景画像を生成する。【解決手段】本発明の一実施形態における画像処理装置は、前景に移動体が存在する入力画像に基づいて、入力画像の画素値及び画素の状態変化を蓄積する履歴画像を生成する履歴画像生成手段であって、入力画像と履歴画像の画素値の差分が所定の閾値より大きい領域を、前景として扱う履歴画像生成手段と、前景が識別された履歴画像に蓄積された画素値及び画素の状態変化に基づいて、背景画像を生成する背景画像生成手段とを有することを特徴とする。【選択図】図2
Description
本発明は、背景画像の生成技術に関する。
従来、監視カメラや仮想視点映像生成システムでは、映像に含まれる前景と背景のそれぞれに対して適切な画像処理や伝送処理を行うため、映像に含まれる移動体(すなわち、前景)を分離して、背景画像を生成するものがある。生成した背景画像は、例えば、入力画像と比較して、移動体を検出するために用いられる。所謂、背景差分法と呼ばれる手法である。
特許文献1には、入力画像の輝度レベルの変化を用いて、入力画像から抽出した移動体の影を検出する技術が開示されている。
しかしながら、従来の技術では、入力画像全体の明るさが変化したり、背景領域の色が変化したりした場合など、背景領域であっても画素値が変化するような場合に、前景を適切に識別して背景画像を生成することができなかった。
本発明はこのような問題に鑑みてなされたものであり、その目的とするところは、入力画像から背景画像を生成する際に、前景を適切に識別して背景画像を生成することにある。
本発明の一実施形態における画像処理装置は、前景に移動体が存在する入力画像に基づいて、前記入力画像の画素値及び画素の状態変化を蓄積する履歴画像を生成する履歴画像生成手段であって、前記入力画像と前記履歴画像の画素値の差分が所定の閾値より大きい領域を、前記前景として扱う履歴画像生成手段と、前記前景が識別された前記履歴画像に蓄積された画素値及び画素の状態変化に基づいて、背景画像を生成する背景画像生成手段とを有することを特徴とする。
本発明によれば、入力画像から背景画像を生成する際に、前景を適切に識別して背景画像を得ることができる。
以下、本発明の実施形態について、図面を参照して詳細に説明する。
(第1の実施形態)
図1は、本発明の第1の実施形態における画像処理装置のハードウェア構成例を示す。画像処理装置100は、CPU101、ROM102、RAM103、記憶装置104、出力装置105、入力装置106、ネットワークI/F(インターフェース)107、及び撮像装置108を有する。各構成要素は、バス109を介して相互に通信可能に接続されている。
(第1の実施形態)
図1は、本発明の第1の実施形態における画像処理装置のハードウェア構成例を示す。画像処理装置100は、CPU101、ROM102、RAM103、記憶装置104、出力装置105、入力装置106、ネットワークI/F(インターフェース)107、及び撮像装置108を有する。各構成要素は、バス109を介して相互に通信可能に接続されている。
CPU101は、ROM102及び記憶装置104に格納されたプログラムを実行して、画像処理装置100を統括的に制御する。ROM102は、画像処理装置100の制御プログラムを格納する。RAM103は、CPU101がプログラムを実行する際のメインメモリとして機能し、一時記憶領域として用いられる。記憶装置104は、HDDなどの記憶媒体であり、画像データや各種プログラムなどを記憶する。
出力装置105は、ディスプレイなどの表示装置であって、各種設定情報や画像データ等を表示する。入力装置106は、マウスやキーボード、タッチパネル等であり、ユーザーから各種設定情報の入力や、操作指示を受け付ける。ネットワークI/F107は、ネットワークを介して外部装置と通信を行なうためのインターフェースである。撮像装置108は、所定のフレームレートで入力画像を撮像し、画像データを生成する。生成された画像データは、記憶装置104に格納される。
以上、本実施形態における画像処理装置100のハードウェア構成を説明したが、画像処理装置100のハードウェア構成は、上述した構成に限定されるものではない。また、後述する画像処理装置100の機能は、CPU101が、ROM102または記憶装置104に格納されたプログラムを読み出して実行することにより、実現される。
図2は、本発明の第1の実施形態における画像処理装置の機能ブロック図である。画像処理装置100は、撮像部201、履歴バッファ202、履歴バッファ制御部204、背景バッファ203、背景バッファ制御部205、及びシステム制御部206を有する。
撮像部201は、撮像装置108によって構成され、所定のフレームレートで入力画像を撮像する。履歴バッファ202は、入力画像から生成した履歴画像(すなわち、画素値)と、履歴画像の各画素のアトリビュートとを保持する。背景バッファ203は、履歴バッファ202が保持する履歴画像を所定のタイミングで合成することで生成された背景画像(すなわち、画素値)と、背景画像の各画素のアトリビュートを保持する。
履歴バッファ制御部204は、システム制御部206の指示により、入力画像の画素値と、履歴バッファ202に保持された履歴画像の画素値及び各画素のアトリビュートを参照し、履歴画像の画素値と各画素のアトリビュートを更新する。
背景バッファ制御部205は、システム制御部206の指示により、履歴バッファ202と背景バッファ203に保持された画像の画素値及びアトリビュートを参照し、背景バッファ203の背景画像の画素値と各画素のアトリビュートを更新する。すなわち、背景バッファ制御部205は、履歴バッファ202の内容を背景バッファ203に反映する。
一実施形態では、背景バッファ203に保持された背景画像は、入力画像から前景領域を抽出するために使用することができる。言い換えると、背景バッファ203に保持された背景画像は、入力画像を前景領域と背景領域に分離するための前景背景分離処理に用いることができる。すなわち、画像処理装置100は、背景画像を用いて入力画像を前景と背景とに分離する画像分離部(不図示)を有してもよい。
また、別の実施形態では、背景バッファ203に保持された背景画像は、任意の前景画像と合成することで、新たな映像を生成するために使用することができる。すなわち、画像処理装置100は、背景画像と任意の前景画像とを合成して、合成画像を生成する合成画像生成部(不図示)を有してもよい。
以上、本実施形態における画像処理装置100の主な機能について説明したが、画像処理装置100の機能は、上述した機能に限定されるものではない。
図3は、本実施形態における背景画像生成処理の概念図である。本実施形態では、入力画像と履歴バッファ202に保持された履歴画像の内容を比較し、画素値及び画素の状態変化の評価結果を履歴バッファ202に蓄積して、背景の候補画像を生成する。生成した背景の候補画像は所定の期間ごとに背景バッファ203に反映され、背景が更新される。本実施形態では、履歴バッファ202に保持された履歴画像のアトリビュートとして、"背景"、"輝度変化"、"前景候補"、"未確定"の4つの値を持つ履歴状態フラグを用いて、前景と影と背景とを識別する。履歴状態フラグは、履歴画像の各画素に付与され、各画素の状態を表す。
"背景"は、画素値が背景であることを示す。
"輝度変化"は、入力画像と履歴画像の画素値が異なるが、画素値の相違が環境光の変化によるものと推定されたことを示す。
"前景候補"は、入力画像と履歴画像の画素値の差異が、環境光の増減によって起き得る変化であるが、画素値の変化と入力画像全体の輝度変化の方向が一致しなかったことを示す。例えば、"前景候補"は、処理中の入力画像が履歴画像と比較して全体的に明るくなっているが、処理中の画素は履歴画像の対応する画素値と比較して暗くなっている状態を示す。"前景候補"は、この他に、背景と似た色の前景が存在する場合や、発光や反射によって色が変わる領域に付与される可能性がある。
"未確定"は、入力画像と履歴画像の画素値の差が輝度変化によるものではないと判断されたことを示す。
また、本実施形態では、背景バッファ203に保持された背景画像のアトリビュートとして、"未確定"、"前景候補"、"背景"の3つの値を持つ背景状態フラグ用いる。
"未確定"は、背景画像に有効な画素値がない状態を示す。
"前景候補"は、背景色と推測される画素値が背景画像に存在し、履歴画像において前景候補と判定された状態を示す。
"背景"は、履歴画像において背景と判定された画素値を、背景画像に反映した状態を示す。
図3の例では、3フレームの入力画像に対して、1回の背景画像の更新を行う。なお、背景画像の更新頻度は、これに限定されるものではなく、環境光の変化を検出した場合や外部からの指示によって変更してもよい。
本実施形態では、画素値の変化が環境光の変化によるものであるかどうかを判定するための第1の閾値として、ユーザーによって予め設定された輝度の変化量を用いることができる。本実施形態では、環境光による変化を輝度変化と呼ぶが、複数の光源や色のついた光を用いる場合や、反射光で色相や彩度が変化する可能性がある場合は、色相や彩度の変化量を第1の閾値に含めてもよい。例えば、HSV色空間において、色相や彩度の変化量が小さく、輝度の変化量が大きい領域の値を、第1の閾値として用いてもよい。
また、一実施形態では、第2の閾値として、前景の動きによる色相または彩度の変化量を用いてもよい。
また、本実施形態では、入力画像と履歴画像の画素値の変化量が、第1の閾値以上となる場合に、入力画像全体の輝度変化履歴と画素値の変化方向が一致するか否かをチェックする。入力画像全体の輝度変化履歴と画素値の変化方向が一致する場合は"背景"として扱い、一致しない場合は"前景候補"として扱う。入力画像全体の輝度変化の変化方向は、例えば、入力画像のヒストグラムを用いて判定することができる。
また、本実施形態では、背景バッファ203に保持された背景画像を更新する際に、履歴バッファ202の履歴状態フラグが"背景"及び"輝度変化"である領域は、背景画像に履歴画像の画素値をコピーする。履歴バッファ202の履歴状態フラグが"未確定"である領域は、背景画像を更新しない。また、一度"未確定"となった領域は、履歴バッファ202が初期化されるまで"未確定"のまま保持し、更新しない。履歴バッファ202の履歴状態フラグが"前景候補"である領域は、履歴画像と背景画像の画素値をα合成した値を、背景画像の画素値として用いる。α合成とは、2つの画像(すなわち、背景画像と履歴画像)を、透過度を表す係数αを用いて合成する手法である。
図3(a)において、履歴状態フラグ310及び履歴画像320は、背景画像生成処理の開始時点における履歴バッファ202の状態を示す。背景画像330は、背景画像生成処理の開始時点における背景バッファ203の状態を示す。入力画像301の入力時点では、履歴バッファ202は初期化されている。
履歴状態フラグ310において、"前景"は黒、"背景"は白、"輝度変化"はグレー、"前景候補"は横縞のハッチングで示す。履歴状態フラグ310において"前景"である領域に対応する履歴画像の画素値は不定であるものとし、黒で表す。
引き続き、図3(a)を参照して、3フレームの入力画像の処理手順を説明する。
1フレーム目の入力画像301には、背景のみが存在する。1フレーム目の処理では、入力画像301を履歴画像320及び背景画像330に上書きし、履歴状態フラグ310に"背景"を設定する。
2フレーム目の処理では、入力画像302、履歴画像320、及び履歴状態フラグ310を参照し、履歴画像321及び履歴状態フラグ311を出力する。
3フレーム目の処理では、入力画像303、履歴画像321、及び履歴状態フラグ311を参照し、履歴画像322及び履歴状態フラグ312を出力する。
3フレーム目の履歴画像322及び履歴状態フラグ312の処理が完了すると、履歴画像322、履歴状態フラグ312、及び背景画像330を参照し、背景画像331を生成する。
次いで、履歴画像と背景画像の更新手順を詳細に説明する。
図3(b)は、2フレーム目の入力画像の処理の詳細を示す。
入力画像302では、入力画像301と比較して、前景が変化し、環境光量が増加している。入力画像302の領域344は、背景に対して色相が異なる前景である。入力画像302の領域343は、前景の影であり、領域341及び342は、入力画像に含まれない物体の影である。領域341〜343は、背景に対して輝度のみが異なる。
履歴状態フラグ311は、前景である領域344に対応する領域354が"未確定"となる。環境光は変化したが、履歴画像320と同じ画素値を持つ領域341〜343に対応する領域351〜353は"背景"となる。履歴画像320と比較して環境光によって明るさが変化した領域345に対応する領域355は"輝度変化"となる。履歴画像321には"未確定"の領域344を除く入力画像302の画素値がコピーされる。
また、入力画像302の処理時に、履歴画像320と入力画像302の各画素値を比較すると、環境光変化により入力画像全体が明るくなっていることがわかる。このため、入力画像全体の輝度変化履歴として輝度向上を記録する。
図3(c)は、3フレーム目の入力画像の処理の詳細を示す。
入力画像303では、入力画像302と比較して、前景が変化している。入力画像303の領域346は、背景に対して色相が異なる前景であり、入力画像303の領域347は前景の影である。
履歴状態フラグ312では、領域346に対応する領域356が"未確定"に変更される。上述したように、2フレーム目の入力画像302の処理時に、輝度変化履歴として輝度向上が記録されているが、入力画像303の領域347は、前景の影になることにより輝度が低下し、暗くなっている。したがって、領域347では輝度変化履歴と画素値の変化方向が一致しないため、領域347に対応する領域357は"前景候補"となる。
履歴状態フラグ312の領域358は、前景の移動によって前景の影がなくなった領域である。領域358は、輝度変化履歴と同様に、明るくなる方向に輝度が変化しているため、"背景"となる。
"未確定"の領域356を除く領域の入力画像303の画素値は、履歴画像322に保存される。
履歴バッファ202の処理が完了すると、背景バッファ203に保持された背景画像331の更新を行う。
履歴状態フラグ312の領域356は、入力画像303に前景が存在した領域であるため、履歴状態フラグ312が"未確定"である。したがって、領域356に対応する背景画像331の領域362は、画素値を更新しない。すなわち、背景画像330の画素値が維持される。背景状態フラグは"未確定"となる。
履歴状態フラグ312の領域357は、履歴状態フラグ312が"前景候補"である。領域357に対応する背景画像331の領域361には、履歴画像322と背景画像330の画素値をα合成した値を設定する。背景状態フラグは"前景候補"となる。
履歴状態フラグ312のその他の領域に対応する背景画像331の領域360は、履歴状態フラグ312が"背景"である。したがって、背景画像331の画素値を履歴画像322の画素値で更新する。背景状態フラグは"背景"となる。
以上説明したように、本実施形態における背景画像生成処理が実施される。以下では、履歴バッファ制御部204、背景バッファ制御部205、及びシステム制御部206のそれぞれによる処理を詳細に説明する。
図4は、履歴バッファ制御部204による履歴画像生成処理のフローチャートを示す。履歴バッファ制御部204は、履歴画像生成部として機能する。フローチャートの各ステップは、CPUがプログラムを実行することにより実施される。
ステップS401で、履歴バッファ制御部204は、システム制御部206からの処理開始指示を待つ。履歴バッファ制御部204が処理開始指示を受信すると、ステップS402に進む。
ステップS402で、履歴バッファ制御部204は、履歴バッファ202が初期化済みかどうか判定する。履歴バッファ202が初期化済みの場合は、ステップS403に進む。一方、履歴バッファ202が初期化されていない場合は、ステップS404に進む。
ステップS404で、履歴バッファ制御部204は、入力画像の全画素値を履歴バッファ202に保存し、各画素のアトリビュートを示す履歴状態フラグを"背景"に設定する。次いで、ステップS403に進む。
ステップS403で、履歴バッファ制御部204は、入力画像に未処理画素が存在するかどうか判定する。未処理画素が存在せず、全画素の処理が終了している場合は、ステップS415に進む。一方、未処理画素が存在する場合は、ステップS405に進む。
ステップS405で、履歴バッファ制御部204は、履歴バッファ202の履歴状態フラグが"未確定"か否か判定する。履歴状態フラグが"未確定"である場合は前景が存在した領域なので、画素値を更新せずステップS403に戻る。一方、履歴状態フラグが"未確定"でない場合は、ステップS406に進む。
ステップS406で、履歴バッファ制御部204は、入力画像と履歴バッファ202に保持された履歴画像の画素値を比較する。具体的には、履歴バッファ制御部204は、入力画像と履歴画像の画素値の差分が、所定の閾値以下であるかどうか判定する。入力画像と履歴画像の画素値の差分が所定の閾値以下である場合、同色とみなし、ステップS414に進む。ステップS414で、履歴バッファ制御部204は、入力画像の画素値を履歴バッファ202に保存する(すなわち、履歴バッファ202に保持された履歴画像の画素値を更新する)。一方、入力画像と履歴画像の画素値の差分が所定の閾値より大きい場合(すなわち、画素の色が異なる場合)、ステップS407に進む。
ステップS407で、履歴バッファ制御部204は、環境光による画素値の変化を検出する。具体的には、履歴バッファ制御部204は、入力画像と履歴画像の画素値の差分が、環境光で想定される色相及び彩度の変化量の所定の閾値以下であるかどうか判定する。画素値の差分が所定の閾値以下である場合、ステップS408に進む。一方、所定の閾値より大きい場合、ステップS413に進む。ステップS413で、履歴バッファ制御部204は、履歴バッファ202のアトリビュートを示す履歴状態フラグに"未確定"を設定する。
なお、上述したステップS406及びS407では、環境光による画素値の変化量を示す閾値を用いたが、さらに、第2の閾値として、前景の動きによる色相または彩度の変化量を閾値として用いてもよい。その場合、画素値の差分が、前景の動きによる色相または彩度の変化量を示す第2の閾値を超える領域を、前景として判定することができる。
ステップS408で、履歴バッファ制御部204は、1フレーム前の入力画像と履歴画像との間の輝度変化履歴が利用可能であるか否か判定する。すなわち、履歴バッファ制御部204は、輝度変化履歴の利用可能なデータが存在するか否か判定する。輝度変化履歴が利用可能な場合はステップS409へ進む。一方、輝度変化履歴が利用可能でない場合はステップS411へ進む。
ステップS411で、履歴バッファ制御部204は、履歴バッファ202のアトリビュートを示す履歴状態フラグに"輝度変化"を設定し、ステップS414に進む。
ステップS409で、履歴バッファ制御部204は、輝度変化履歴が、処理中の画素値の輝度変化方向と一致するか判定する。変化方向が同じ場合はステップS410へ進み、変化方向が異なる場合はステップS412に進む。
ステップS412で、履歴バッファ制御部204は、履歴バッファ202のアトリビュートを示す履歴状態フラグに"前景候補"を設定し、ステップS414に進む。
ステップS410で、履歴バッファ制御部204は、入力画像と履歴画像の画素値の比較により、背景領域の輝度変化量を計算する。1フレームの処理が完了すると、輝度が上がった画素の数と輝度が下がった画素の数が得られるので、この値を用いて輝度変化履歴を更新する。
次に、上述したステップS403において、入力画像に未処理画素が存在せず、全画素の処理が終了したと判定された後の処理について説明する。
ステップS415で、履歴バッファ制御部204は、背景領域の輝度変化量が所定の閾値以上であるかどうか判定する。背景領域の輝度変化量が所定の閾値以上である場合、ステップS416に進み、所定の閾値より小さい場合は、ステップS417に進む。
ステップS416で、履歴バッファ制御部204は、入力画像の輝度変化をシステム制御部206に通知し、ステップS417に進む。システム制御部206に通知する情報として、背景領域の輝度変化量に関する情報を含めてもよい。
ステップS417で、履歴バッファ制御部204は、1フレームの入力画像の処理が完了したことをシステム制御部206に通知し、ステップS418に進む。
ステップS418で、履歴バッファ制御部204は、システム制御部206からの履歴バッファ202の初期化指示の有無を判定する。初期化指示がある場合はステップS420に進み、初期化指示がない場合はステップS419に進む。
ステップS419で、履歴バッファ制御部204は、履歴バッファ202の輝度変化履歴を背景領域の輝度変化量で更新し、ステップS401に戻る。
ステップS420で、履歴バッファ制御部204は、履歴バッファ202に保持されたすべてのデータを初期化し、ステップS401に戻る。なお、輝度変化履歴を用いる構成であれば輝度変化履歴も初期化する。
以上説明したように、履歴バッファ制御部204による履歴画像生成処理が実施される。
図5は、背景バッファ制御部205による背景画像生成処理のフローチャートを示す。背景バッファ制御部205は、背景画像生成部として機能する。フローチャートの各ステップは、CPUがプログラムを実行することにより実施される。
ステップS501で、背景バッファ制御部205は、システム制御部206からの処理開始通知をチェックする。背景バッファ制御部205は、システム制御部206から処理開始通知を受信するまでステップS501を繰り返し、履歴バッファ202の更新が完了し、システム制御部206から処理開始通知を受信すると、ステップS502に進む。
ステップS502で、背景バッファ制御部205は、履歴バッファ202に保持された履歴画像に未処理画素が存在するかどうか判定する。履歴バッファ202に未処理画素が存在せず、全画素の処理が完了している場合は、ステップS503に進む。一方、履歴バッファ202に未処理画素が存在する場合は、ステップS504に進む。
ステップS504で、背景バッファ制御部205は、履歴バッファ202のアトリビュートを示す履歴状態フラグが、"未確定"か否か判定する。履歴状態フラグが"未確定"である場合は、履歴バッファ202の該当の領域は前景が存在した領域であり、有効な背景の画素値が存在しないため、ステップS502に戻る。一方、履歴状態フラグが"未確定"でない場合は、ステップS505に進む。
ステップS505で、背景バッファ制御部205は、履歴バッファ202のアトリビュートを示す履歴状態フラグが、"前景候補"か否か判定する。履歴状態フラグが"前景候補"である場合は、ステップS508に進み、背景バッファ制御部205は、背景バッファ203のアトリビュートを示す背景フラグを"前景候補"に設定する。一方、履歴状態フラグが"前景候補"でない場合は、ステップS506に進む。
ステップS506で、背景バッファ制御部205は、履歴バッファ202のアトリビュートを示す履歴状態フラグが"背景"もしくは"輝度変化"であるため、背景バッファ203のアトリビュートを示す背景状態フラグを"背景"に設定する。次いで、ステップ507に進む。
ステップS507で、背景バッファ制御部205は、背景バッファ203に履歴バッファ202の画素値を保存する(すなわち、背景バッファ203に保持された背景画像の画素値を、履歴バッファ202に保持された履歴画像の画素値で更新する)。次いで、ステップS502に戻る。
ステップS509で、背景バッファ制御部205は、背景バッファ203のアトリビュートを示す背景状態フラグが"背景"か否か判定する。背景状態フラグが"背景"でない場合は、ステップS510に進む。一方、背景状態フラグが"背景"である場合は、ステップS507に進む。
ステップS510で、背景バッファ制御部205は、背景バッファ203の画素値と履歴バッファ202の画素値を透過合成(α合成)した値を、背景バッファ203の画素値として保存する。すなわち、背景バッファ制御部205は、透過合成した値で、背景バッファ203に保持された背景画像の画素値を更新する。
次に、上述したステップS502において、履歴バッファ202に未処理画素が存在せず、全画素の処理が終了したと判定された後の処理について説明する。
ステップS503で、背景バッファ制御部205は、背景バッファ203に"未確定"の背景状態フラグを持つ画素があるか否か判定する。"未確定"の背景状態フラグを持つ画素がない場合はステップS511に進み、背景バッファ制御部205は、システム制御部206に背景更新の完了を通知する。一方、"未確定"の背景状態フラグを持つ画素がある場合は、ステップS512に進み、背景バッファ制御部205は、履歴バッファ202の1フレームの背景生成処理の完了のみをシステム制御部206に通知する。
以上説明したように、背景バッファ制御部205による背景画像生成処理が実施される。
図6は、システム制御部206による制御処理のフローチャートを示す。フローチャートの各ステップは、CPUがプログラムを実行することより実施される。
ステップS601で、システム制御部206は、撮像部201が撮影した入力画像の更新を待つ。入力画像が更新されると、ステップS602に進む。
ステップS602で、システム制御部206は、履歴バッファ制御部204が処理開始可能になるのを待つ。履歴バッファ制御部204が処理開始可能になると、ステップS603に進む。
ステップS603で、システム制御部206は、背景生成値に用いる影領域の閾値、及び前景と背景の差分閾値の変更の要否を判定する。変更が必要な場合は、ステップS604に進み、システム制御部206は、履歴バッファ制御部204の閾値を再設定する。閾値は、本画像処理装置を用いる機器から指示された設定値を用いることができる。また、履歴バッファ制御部204が算出した輝度変化履歴を用いて、システム制御部206が閾値を算出してもよい。
ステップS605で、システム制御部206は、履歴バッファ制御部204に処理開始を指示する。
ステップS612で、システム制御部206は、履歴バッファ制御部204の処理時に輝度変化履歴に変化があったか否か判定する。輝度変化履歴に変化があった場合は、ステップS613に進み、システム制御部206が保持する背景バッファ制御部205の更新レートを再設定し、背景バッファの更新タイミングを変更する。一方、輝度変化履歴に変化がない場合は、更新レートの再設定は行わずに、ステップS614に進む。
ステップS614で、システム制御部206は、履歴バッファ制御部204の1フレームの処理完了を待つ。履歴バッファ制御部204による1フレームの処理が完了すると、ステップS606に進む。
ステップS606で、システム制御部206は、背景バッファ制御部205の更新レートによって定まる、所定のフレーム数の履歴バッファ202の処理が完了し、背景バッファ203の更新を行うか否か判定する。背景バッファ203の更新を行う場合はステップS607に進み、背景バッファ203の更新を行わない場合はステップS601に戻る。
ステップS607で、システム制御部206は、背景バッファ制御部205の処理開始を指示する。
ステップS608で、システム制御部206は、背景バッファ制御部205の1フレームの更新完了を待つ。背景バッファ制御部205による1フレームの処理が完了すると、ステップS609に進む。
ステップS609で、システム制御部206は、背景画像の生成が完了したか判定する。背景画像の生成が完了した場合は、ステップS610に進む。一方、背景画像の生成が未完了の場合は、ステップS601に戻り、システム制御部206は、後続の入力画像の処理を行う。
ステップS610で、システム制御部206は、背景画像の出力処理を行う。背景画像は、上述したように、入力画像から前景と背景を分離するために使用したり、任意の前景画像と合成して合成画像を生成するために使用したりすることができる。
ステップS611で、システム制御部206は、履歴バッファ制御部204の初期化指示を行う。
以上説明したように、本実施形態によると、入力画像全体の明るさが変化した場合であっても、あらかじめ定めた影色の条件に当たる範囲内の変化であれば影と判断し、背景として取り扱うことができる。また、入力画像全体が明るくなって新たに影が出来たり、背景領域の色が変わったりした場合も、該当領域は背景として取り扱い、背景画像を更新することができる。すなわち、本実施形態によると、前景に移動体が存在する入力画像から背景画像を生成する際に、前景を適切に識別して背景画像を生成することができる。
また、本実施形態では、入力画像の変化を1つの履歴画像として履歴バッファに保持して背景画像を生成するため、履歴画像としてすべての入力画像を保持する必要はない。したがって、より少ないハードウェアリソースで画像処理を行い、背景画像を生成することができる。
(第2の実施形態)
上述した第1の実施形態では、"背景"、"輝度変化"、"前景候補"、及び"未確定"の4つの値を持つ履歴状態フラグを用いたが、本実施形態では、"背景"、"影"、及び"前景"の3つ値を持つ履歴状態フラグを用いて、前景と影と背景とを識別する。すなわち、本実施形態によると、より少ない種類の履歴状態フラグを用いて、背景画像を生成することができる。
上述した第1の実施形態では、"背景"、"輝度変化"、"前景候補"、及び"未確定"の4つの値を持つ履歴状態フラグを用いたが、本実施形態では、"背景"、"影"、及び"前景"の3つ値を持つ履歴状態フラグを用いて、前景と影と背景とを識別する。すなわち、本実施形態によると、より少ない種類の履歴状態フラグを用いて、背景画像を生成することができる。
"背景"は、画素値が背景であることを示す。
"影"は、入力画像と履歴画像の画素値が異なるが、画素値の相違が環境光の変化によるものと推定されたことを示す
"前景"は、入力画像と履歴画像の画素値の差が輝度変化によるものではないと判断されたことを示す。
"前景"は、入力画像と履歴画像の画素値の差が輝度変化によるものではないと判断されたことを示す。
また、本実施形態では、背景バッファ203に保持された背景画像のアトリビュートとして、"背景"及び"前景"という2つの値を持つ背景状態フラグ用いる。
"未確定"は、背景画像に有効な画素値がない状態を示す。
"背景"は、履歴画像において"背景"と判定された画素値を、背景画像に反映した状態を示す。
なお、本実施形態における画像処理装置のハードウェア構成及び機能は、図1及び図2を参照して上述した構成と同様である。
図7は、本実施形態における背景画像生成処理の概念図である。本実施形態においても、入力画像と履歴バッファ202に保持された履歴画像の内容を比較し、画素値及び画素の状態変化の評価結果を1つの履歴画像として履歴バッファ202に蓄積して、背景の候補画像を生成する。生成した背景の候補画像は所定の期間ごとに背景バッファ203に反映され、背景が更新される。
履歴状態フラグ710及び履歴画像720は、背景画像生成処理の開始時点における履歴バッファ202の状態を示す。背景画像730は、背景画像生成処理の開始時点における背景バッファ203の状態を示す。入力画像701の入力時点では、履歴バッファ202は初期化されている。
履歴状態フラグは、"前景"を黒、"背景"を白、"輝度変化"をグレーで示す。履歴状態フラグが"前景"である領域に対応する履歴画像の画素値は不定であるものとし、黒で表す。なお、履歴画像において画素値が不定である領域は、背景画像の生成において画素値の更新は行わない。
以下、履歴画像と背景画像の更新手順を説明する。
図7(a)は、1フレーム目から3フレーム目までの入力画像に対する処理の手順を示す。図7(a)に示す例では、3フレーム目の入力画像を処理した後に、背景画像を生成する。
1フレーム目の入力画像701には、背景のみが存在する。1フレーム目の処理では、入力画像701を履歴画像720及び背景画像730に上書きし、履歴状態フラグ710に"背景"を設定する。
2フレーム目の入力画像702には、背景及び前景と、前景の影が存在する。2フレーム目の処理では、入力画像702、履歴画像720、及び履歴状態フラグ710を参照し、履歴画像721及び履歴状態フラグ711を出力する。処理の詳細は、図7(b)を参照して後述する。
3フレーム目の入力画像703には、背景及び前景と、前景の影が存在する。また、前景とその影は、入力画像702における位置から移動している。3フレーム目の処理では、入力画像703、履歴画像721、及び履歴状態フラグ711を参照し、履歴画像722及び履歴状態フラグ712を出力する。
3フレーム目の入力画像703の処理が完了すると、履歴画像722、履歴状態フラグ712、及び背景画像730を参照し、背景画像731を生成する。処理の詳細は、図7(c)を参照して後述する。
図7(b)は、2フレーム目の入力画像の処理の詳細を示す。
2フレーム目の入力画像702は、前景744、影743、及び背景745を含む。背景745は、入力画像701の画素値と比較して、色相及び彩度が同じで、輝度が向上している。
履歴状態フラグ711は、前景744に対応する領域754が"前景"となる。領域753は履歴画像720と同じ色であるので、"背景"となる。背景745に対応する領域755は、輝度のみに変化があったので、"輝度変化"となる。
履歴状態フラグが"背景"である領域753、及び、履歴状態フラグが"輝度変化"である領域755に対応する履歴画像721の領域は、入力画像702の画素値で上書きして更新する。
図7(c)は、3フレーム目の入力画像の処理の詳細を示す。
3フレーム目の入力画像703は、前景746、影747、及び背景748を含む。入力画像703では、2フレーム目の入力画像702と比較して、前景746と影747が移動している。
履歴状態フラグ712は、前景746に対応する領域756が"前景"に変更される。領域757は、過去に"前景"と判定されたため有効な背景がないとみなし、履歴状態フラグは変更しない。影747に対応する領域758、及び前景744の移動によって、履歴画像721と比較して輝度が変化した領域759(すなわち、履歴画像721で影だった領域)の履歴状態フラグは、それぞれ"輝度変化"となる。
履歴状態フラグが"輝度変化"または"背景"である領域761、領域759、領域758に対応する履歴画像722の領域は、入力画像703の画素値で更新する。
背景画像731の更新では、履歴状態フラグが"背景"もしくは"輝度変化"である領域に、履歴画像722の画素値を上書きする。
領域760、領域761は、履歴状態フラグが"前景"であるため、背景画像730の画素値は更新しない。領域762、及び領域763は、履歴状態フラグが"輝度変化"もしくは"背景"であるため、背景画像730の画素値を、履歴画像722の画素値で更新する。
以上説明したように、本実施形態における背景画像生成処理が実施される。
なお、本実施形態においても、履歴バッファ制御部204、背景バッファ制御部205、及びシステム制御部206のそれぞれによる処理は、図4乃至6のフローチャートを参照して説明した処理が同様に適用され得る。
以上説明したように、本実施形態によると、上述した第1の実施形態と比較してより少ない種類の履歴状態フラグを用いて、背景画像を生成することができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
201 撮像部
202 履歴バッファ
203 背景バッファ
204 履歴バッファ制御部
205 背景バッファ制御部
206 システム制御部
202 履歴バッファ
203 背景バッファ
204 履歴バッファ制御部
205 背景バッファ制御部
206 システム制御部
Claims (11)
- 前景に移動体が存在する入力画像に基づいて、前記入力画像の画素値及び画素の状態変化を蓄積する履歴画像を生成する履歴画像生成手段であって、前記入力画像と前記履歴画像の画素値の差分が所定の閾値より大きい領域を、前記前景として扱う履歴画像生成手段と、
前記前景が識別された前記履歴画像に蓄積された画素値及び画素の状態変化に基づいて、背景画像を生成する背景画像生成手段と
を有することを特徴とする画像処理装置。 - 前記所定の閾値は、環境光による輝度の変化量を示す第1の閾値であることを特徴とする請求項1に記載の画像処理装置。
- 前記第1の閾値は、環境光による色相または彩度の変化量をさらに含むことを特徴とする請求項2に記載の画像処理装置。
- 前記所定の閾値は、前記前景の動きによる色相または彩度の変化量を示す第2の閾値であることを特徴とする請求項1に記載の画像処理装置。
- 前記履歴画像生成手段は、前記入力画像と前記履歴画像の画素値の差分が前記所定の閾値より大きく、かつ、前記入力画像と前記履歴画像の画素値の変化方向と、前記入力画像の輝度変化履歴の変化方向とが一致する領域を、前記前景として扱うことを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
- 前記背景画像生成手段は、前記入力画像の所定のフレーム数を示す更新レートにしたがって、前記背景画像を更新することを特徴とする請求項1乃至5のいずれか1項に記載の画像処理装置。
- 前記背景画像生成手段は、前記入力画像の輝度変化履歴が変化した場合に、前記更新レートを再設定し、前記背景画像の更新タイミングを変更することを特徴とする請求項6に記載の画像処理装置。
- 前記背景画像を用いて、前記入力画像から前景と背景とを分離する画像分離手段をさらに有することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
- 前記背景画像と任意の前景画像とを合成して、合成画像を生成する合成画像生成手段をさらに有することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
- コンピュータを、請求項1乃至8のいずれか1項に記載の画像処理装置として機能させるためのプログラム。
- 前景に移動体が存在する入力画像に基づいて、前記入力画像の画素値及び画素の状態変化を蓄積する履歴画像を生成するステップであって、前記入力画像と前記履歴画像の画素値の差分が所定の閾値より大きい領域を、前記前景として扱うステップと、
前記前景が識別された前記履歴画像に蓄積された画素値及び画素の状態変化に基づいて、背景画像を生成するステップと
を含むことを特徴とする画像処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017213950A JP2019086969A (ja) | 2017-11-06 | 2017-11-06 | 画像処理装置、画像処理方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017213950A JP2019086969A (ja) | 2017-11-06 | 2017-11-06 | 画像処理装置、画像処理方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019086969A true JP2019086969A (ja) | 2019-06-06 |
Family
ID=66764273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017213950A Pending JP2019086969A (ja) | 2017-11-06 | 2017-11-06 | 画像処理装置、画像処理方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019086969A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7547080B2 (ja) | 2020-05-18 | 2024-09-09 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
-
2017
- 2017-11-06 JP JP2017213950A patent/JP2019086969A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7547080B2 (ja) | 2020-05-18 | 2024-09-09 | キヤノン株式会社 | 情報処理装置、情報処理方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10475237B2 (en) | Image processing apparatus and control method thereof | |
JP6445775B2 (ja) | 画像処理装置、画像処理方法 | |
AU2016225841B2 (en) | Predicting accuracy of object recognition in a stitched image | |
EP3528206A1 (en) | Image processing apparatus, image processing method, and storage medium | |
JP6579868B2 (ja) | 画像処理装置、撮像装置、画像処理方法およびプログラム | |
KR20200023651A (ko) | 미리보기 사진 블러링 방법 및 장치 및 저장 매체 | |
US11165974B2 (en) | Image processing apparatus, image processing apparatus control method, and non-transitory computer-readable storage medium | |
US10469812B2 (en) | Projection display system, information processing apparatus, information processing method, and storage medium therefor | |
JP2018195084A (ja) | 画像処理装置及び画像処理方法、プログラム、記憶媒体 | |
US10643096B2 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable storage medium | |
US10055822B2 (en) | Image processing apparatus, image processing method, and non-transitory computer-readable storage medium | |
US20160267356A1 (en) | Image processing apparatus and image processing method of performing image segmentation | |
JP2019086969A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
US20230026038A1 (en) | Image processing apparatus, image processing method, and storage medium | |
US9842406B2 (en) | System and method for determining colors of foreground, and computer readable recording medium therefor | |
US10497103B2 (en) | Information processing apparatus, information processing system, information processing method, and recording medium | |
KR20190072643A (ko) | 얼굴 검출 장치 및 그 제어 방법, 그리고 프로그램 | |
JP7421273B2 (ja) | 画像処理装置及びその制御方法及びプログラム | |
JP6331914B2 (ja) | アルゴリズム生成装置、アルゴリズム生成方法及びアルゴリズム生成用コンピュータプログラム | |
JP4795314B2 (ja) | フリッカ補正装置及びフリッカ補正方法 | |
JP6663223B2 (ja) | 画像処理装置および方法、および撮像装置 | |
JP2016152467A (ja) | 追尾装置、追尾方法及び追尾プログラム | |
KR102203884B1 (ko) | 촬상 장치 및 제어 방법 | |
US9852352B2 (en) | System and method for determining colors of foreground, and computer readable recording medium therefor | |
JP2022069197A (ja) | 画像処理装置及びその制御方法及びプログラム |