IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許7405198画像処理装置、画像処理方法および画像処理プログラム
<>
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図1
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図2
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図3
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図4
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図5
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図6
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図7
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図8
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図9
  • 特許-画像処理装置、画像処理方法および画像処理プログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-18
(45)【発行日】2023-12-26
(54)【発明の名称】画像処理装置、画像処理方法および画像処理プログラム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20231219BHJP
   G06T 7/194 20170101ALI20231219BHJP
   G06V 10/82 20220101ALI20231219BHJP
【FI】
G06T7/00 350C
G06T7/194
G06V10/82
【請求項の数】 3
(21)【出願番号】P 2022126701
(22)【出願日】2022-08-08
(62)【分割の表示】P 2018037567の分割
【原出願日】2018-03-02
(65)【公開番号】P2022145825
(43)【公開日】2022-10-04
【審査請求日】2022-08-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山本 琢麿
【審査官】秦野 孝一郎
(56)【参考文献】
【文献】特開2008-165792(JP,A)
【文献】特許第6276901(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
G06V 10/00-20/90
(57)【特許請求の範囲】
【請求項1】
予め撮影された背景の背景画像と、判別対象となる対象画像とを取得する取得部と、
前記背景画像と前記対象画像との第一の差分を示す差分画像を生成する差分生成部と、
前記背景画像と前記対象画像とのそれぞれをニューラル・ネットワークに入力することで、前記対象画像から背景および前景を区別した出力対象となるマップ画像と、前記差分画像との第二の差分を示す残差を推定する前記ニューラル・ネットワークと、
前記差分生成部が生成した前記差分画像と、前記ニューラル・ネットワークが推定した前記残差とを足し合わせて、前記対象画像から背景および前景を区別したマップ画像を出力する出力部と、を有し、
前記ニューラル・ネットワークは、前記背景画像と前記対象画像を前記ニューラル・ネットワークに入力したときの前記ニューラル・ネットワークから出力された出力結果によるマップ画像と、当該マップ画像の正解データを示す教師データとの比較により、前記ニューラル・ネットワークのパラメータが変更される、
ことを特徴とする画像処理装置。
【請求項2】
予め撮影された背景の背景画像と、判別対象となる対象画像とを取得し、
前記背景画像と前記対象画像との第一の差分を示す差分画像を生成し、
前記背景画像と前記対象画像とのそれぞれをニューラル・ネットワークに入力することで、前記対象画像から背景および前景を区別した出力対象となるマップ画像と、前記差分画像との第二の差分を示す残差を推定する前記ニューラル・ネットワークを特定し、
生成した前記差分画像と、前記ニューラル・ネットワークが推定した前記残差とを足し合わせて、前記対象画像から背景および前景を区別したマップ画像を出力する、処理をコンピュータが実行し、
前記ニューラル・ネットワークは、前記背景画像と前記対象画像を前記ニューラル・ネットワークに入力したときの前記ニューラル・ネットワークから出力された出力結果によるマップ画像と、当該マップ画像の正解データを示す教師データとの比較により、前記ニューラル・ネットワークのパラメータが変更される、
ことを特徴とする画像処理方法。
【請求項3】
予め撮影された背景の背景画像と、判別対象となる対象画像とを取得し、
前記背景画像と前記対象画像との第一の差分を示す差分画像を生成し、
前記背景画像と前記対象画像とのそれぞれをニューラル・ネットワークに入力することで、前記対象画像から背景および前景を区別した出力対象となるマップ画像と、前記差分画像との第二の差分を示す残差を推定する前記ニューラル・ネットワークを特定し、
生成した前記差分画像と、前記ニューラル・ネットワークが推定した前記残差とを足し合わせて、前記対象画像から背景および前景を区別したマップ画像を出力する、処理をコンピュータに実行させ
前記ニューラル・ネットワークは、前記背景画像と前記対象画像を前記ニューラル・ネットワークに入力したときの前記ニューラル・ネットワークから出力された出力結果によるマップ画像と、当該マップ画像の正解データを示す教師データとの比較により、前記ニューラル・ネットワークのパラメータが変更される、
ことを特徴とする画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、画像処理装置、学習装置、画像処理方法、学習方法、画像処理プログラムおよび学習プログラムに関する。
【背景技術】
【0002】
従来、カメラで撮影された動画像から前景として映り込む動物体(以後、前景とも呼ぶ)を検出する手法として、背景差分法が知られている。背景差分法では、カメラで撮影された動画像から検出対象物体が撮影されていない背景画像(背景モデルとも呼ぶ)を検出して記憶しておく。そして、カメラで撮影された動画像から背景画像の差分を求めることで、前景に対応する画像領域を検出する。
【0003】
このように、画像から背景/前景を判別する手法としては、画像センサから出力された画像情報並びに時間的に遅延させた画像情報を入力層に取り込み、その差異に応じた情報を出力層から出力するニューラル・ネットワークを用いた手法が知られている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平2-173877号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の従来技術では、背景と類似する類似色が前景に含まれる場合や、ノイズ等に対して頑健に背景/前景の判別を行うことが困難であるという問題がある。
【0006】
例えば、ニューラル・ネットワークにおける中間層の層数が少ない場合、エッジや色などの局所的な特徴をもとに判別することから、背景と類似する類似色が前景に含まれる場合に背景/前景の判別が困難となる。また、ノイズ等の影響を受けやすく、誤検出を生じることがある。
【0007】
また、ニューラル・ネットワークにおける中間層の層数を増やすと、学習に初期においては、結合重みが小さな値の乱数で初期化されているため、入力信号が層を経るごとに拡散していくことから、ニューラル・ネットワークからはほぼ0のノイズしか得られないこととなる。このため、教師データと比較しても有意味な情報が得られず、ニューラル・ネットワークの学習が進まないことから、ニューラル・ネットワークにおける中間層の層数を単純に増やすことは難しい。
【0008】
1つの側面では、ノイズ等に頑健な背景/前景の判別を可能とする画像処理装置、学習装置、画像処理方法、学習方法、画像処理プログラムおよび学習プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
第1の案では、画像処理装置は、取得部と、差分生成部と、ニューラル・ネットワークと、出力部とを有する。取得部は、予め撮影された背景の背景画像と、判別対象となる対象画像とを取得する。差分生成部は、背景画像と対象画像との第一の差分を示す差分画像を生成する。ニューラル・ネットワークは、背景画像と対象画像とのそれぞれをニューラル・ネットワークに入力することで、対象画像から背景および前景を区別した出力対象となるマップ画像と、差分画像との第二の差分を示す残差を推定する。出力部は、差分生成部が生成した差分画像と、ニューラル・ネットワークが推定した差とに基づいて、対象画像から背景および前景を区別したマップ画像を出力する。
【発明の効果】
【0010】
本発明の1実施態様によれば、ノイズ等に頑健な背景/前景の判別を行うことができる。
【図面の簡単な説明】
【0011】
図1図1は、実施形態の概要を説明する説明図である。
図2図2は、背景画像、対象画像および教師画像の一例を説明する説明図である。
図3図3は、ニューラル・ネットワークで前景マップを推定する従来手法の説明図である。
図4図4は、高次の特徴/低次の特徴による判別を説明する説明図である。
図5図5は、実施形態にかかる画像処理装置の機能構成例を示すブロック図である。
図6図6は、実施形態にかかる画像処理装置の動作例を示すフローチャートである。
図7図7は、残差推定部のニューラル・ネットワークを説明する説明図である。
図8図8は、実施形態にかかる学習装置の機能構成例を示すブロック図である。
図9図9は、学習フローを例示するフローチャートである。
図10図10は、プログラムを実行するコンピュータの一例を示す説明図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して、実施形態にかかる画像処理装置、学習装置、画像処理方法、学習方法、画像処理プログラムおよび学習プログラムを説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する画像処理装置、学習装置、画像処理方法、学習方法、画像処理プログラムおよび学習プログラムは、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【0013】
図1は、実施形態の概要を説明する説明図である。図1に示すように、本実施形態では、背景および前景の判別対象となる対象画像G1と、事前に撮影しておいた背景の背景画像G2とを入力し、対象画像G1に含まれる背景および前景を区別する前景マップG5を得る。
【0014】
図2は、対象画像G1、背景画像G2および教師画像G6の一例を説明する説明図である。図2に示すように、対象画像G1は、撮影範囲にいる人物Hなどの前景と、背景との判別を行う画像データであり、例えば、不審者を検知するための監視カメラの画像データなどである。背景画像G2は、背景を事前に撮影しておいた画像データなどである。なお、背景画像G2については、幾つかの画像を重ね合わせて生成した背景モデルであってもよい。
【0015】
前景マップG5は、マップ画像の一例であり、例えば対象画像G1における背景に対応する領域を黒画素とし、前景に対応する領域を白画素とする画像データである。このようにして得られた前景マップG5に対象画像G1を掛け合わせることで、例えば対象画像G1に含まれる前景を識別することができる。例えば、対象画像G1に含まれる前景の識別結果を用いることで、自由視点映像生成技術における被写体のシルエットの抽出や、映像監視技術における不審者の抽出に応用できる。
【0016】
具体的には、前景マップG5を得るための推論フェーズでは、入力された対象画像G1と、背景画像G2との差分を生成する差分生成(S1)を行い、差分画像G3を生成する。また、入力された対象画像G1および背景画像G2により、対象画像G1から背景および前景を区別する前景マップG5と、差分画像G3との差を示す残差G4(差分画像G3では、正解とする前景マップG5に足りない情報)をニューラル・ネットワークを用いて推定する残差推定(S2)を行う。次いで、差分生成(S1)で生成された差分画像G3と、残差推定(S2)で推定された残差G4とを足し合わせることで前景マップG5を得る(S3)。
【0017】
なお、残差推定(S2)を行うニューラル・ネットワークの学習を行う学習フェーズでは、前景マップG5と教師画像G6との比較により、ニューラル・ネットワークを構成する各ノードの結合重みを調整する。
【0018】
図2に示すように、教師画像G6は、ニューラル・ネットワークの学習時において入力された対象画像G1における背景/前景についての正解を示す教師データである。一例として、教師画像G6には、対象画像G1に含まれる前景(人物H)に対応した前景領域R1を白画素、前景領域R1以外の領域(背景領域)を黒画素とする画像データなどがある。
【0019】
この教師画像G6を用いた教師付き学習を行うことで、正解とする前景マップG5に足りない部分の残差G4を適正に推定するように残差推定部11のニューラル・ネットワークの学習が行われる。
【0020】
図3は、ニューラル・ネットワークで前景マップを推定する従来手法の説明図である。図3に示すように、従来手法では、対象画像G1および背景画像G2をニューラル・ネットワーク200の入力層201に入力し、中間層202を経て出力層203から背景/前景の判別結果G4aが直接出力される。
【0021】
ニューラル・ネットワーク200における中間層202の層数が少ない場合、入力された画像からは高次の特徴が得られず、低次の特徴、すなわちエッジや色などの局所的な特徴をもとに判別することとなる。ここで、高次の特徴とは、画像上のある領域が人物なのか車なのか、その内部・外部であるかなど、セマンティック(Semantic)な情報を含む特徴である。低次の特徴とは、縦・横方向のエッジや平坦な領域なのかなど、画像の局所的な構造の特徴である。
【0022】
図4は、高次の特徴/低次の特徴による判別を説明する説明図である。図4に示すように、ケースC1では、中間層を多層とするディープ・ニューラル・ネットワーク(DNN)のニューラル・ネットワーク200aを用いて入力画像G10から人物の領域を白画素とする判別結果G11を得ている。DNNでは、対象画像G1から層を経ることで、エッジ→四角や丸(エッジの組み合わせ)→タイヤや顔(四角や丸の組み合わせ)→…のように徐々に特徴が抽象化されていき、高次の特徴を抽出できる。このような高次の特徴をもとに判別を行う場合は、ノイズ等に対して頑健に背景/前景の判別を行うができる。
【0023】
これに対し、ケースC2では、3層型のニューラル・ネットワーク200bを用いて入力画像G10から判別結果G11を得ている。3層型のニューラル・ネットワーク200bでは、局所的な低次の特徴をもとに判別を行うことから、ノイズ等の影響を受けやすく、誤検出を生じる。例えば、入力画像G10は、コートのラインを跨いでプレーする人物の画像であり、ライン右側の領域ではコートの色と類似する類似色が人物に含まれている。また、ライン左側の領域では、コートの色と、人物(左足)との色は類似していない。したがって、ケースC2の判別結果G11では、背景と類似する類似色が前景に含まれる部分については前景として判別されていない(左足の一部が前景として正しく判別されている)。
【0024】
図3に戻り、ニューラル・ネットワーク200における中間層202の層数を増やす場合は、学習に初期においては、結合重みが小さな値の乱数で初期化されているため、入力層201からの入力信号(対象画像G1、背景画像G2)が層を経るごとに拡散していき、弱まることとなる。このため、出力層203から得られる判別結果G4aは、学習初期において、ほぼ0のノイズとなる。したがって、教師画像G6と比較しても有意味な情報が得られず(勾配の方向が定まらないため)、ニューラル・ネットワーク200における各ノードの結合重みを示すパラメータを調整することが困難となり、学習が進まないこととなる。
【0025】
これに対し、本実施形態では、図1に示すように、対象画像G1から背景および前景を区別する前景マップG5と、差分画像G3との差を示す残差G4(差分画像G3では、正解とする前景マップG5に足りない情報)をニューラル・ネットワークを用いて推定する。そして、差分画像G3と、残差G4とを足し合わせることで前景マップG5を得ている。
【0026】
このため、例えば学習の初期に得られる残差G4が0であっても、差分画像G3が足し合わされていることから、有意味な出力(前景マップG5)が得られ、教師画像G6との比較によりニューラル・ネットワークの学習を進めることができる。したがって、DNNを用いて高次な特徴をもとに判別した残差G4による前景マップG5を得ることができ、背景類似色やノイズ等が含まれる場合においても、頑健に背景/前景を判別することができる。
【0027】
図5は、実施形態にかかる画像処理装置の機能構成例を示すブロック図である。図5に示すように、画像処理装置1は、差分生成部10と、残差推定部11と、出力部12とを有する。
【0028】
差分生成部10は、入力された対象画像G1と、背景画像G2との差分により差分画像G3を生成する。すなわち、差分生成部10は、生成部の一例である。例えば、差分生成部10は、対象画像G1および背景画像G2において互いに対応する画素における画素値の差分を求めることで差分画像G3を生成する。この差分については、画素値のL1ノルム(差の絶対値)や、L2ノルムなどを用いることができる。
【0029】
また、差分生成部10が差分をとる対象は、互いに対応する画素における画素値に限定しない。例えば、差分生成部10は、対象画像G1および背景画像G2それぞれの各画素から計算した特徴量の差分を求め、差分画像G3を生成してもよい。
【0030】
一例として、次の文献に示すように、局所特徴量を用いてもよい。
・SIFT(Scale-Invariant Feature Transform): David G.Lowe, “Distinctive image features from scale-invariant keypoints”, Int.Journal of Computer Vision,Vol.60, No.2, pp.91-110, 2004.
・SURF (Speeded-Up Robust Features): H. Bay, T. Tuytelaars, and L. Van Gool, “SURF: Speeded Up Robust. Features”, In ECCV , pp.404-417, 2006.
・BRIEF (Features from Accelerated Segment Test): M.Calonder, V.Lepetit and C.Strecha and P.Fua, “BRIEF: Binary Robust Independent Elementary Features”, In Proc. European Conference on Computer Vision, pp.778-792, 2010.
・ORB (Oriented FAST and Rotated BRIEF): E.Rublee, V.Rabaud, K.Konolige and G.Bradski “ORB: an efficient alternative to SIFT or SURF”, In Proc. International Conference on Computer Vision, 2011.
【0031】
また、差分生成部10は、次の文献に示すように、一般物体認識向けに学習済みのDNNの中間層の値を特徴量として用いてもよい。
・AlexNet: Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. "Imagenet classification with deep convolutional neural networks." Advances in neural information processing systems. 2012.
・GoogLeNet: Szegedy, Christian, et al. "Going deeper with convolutions." Cvpr, 2015.
・VGG: Simonyan, Karen, and Andrew Zisserman. "Very deep convolutional networks for large-scale image recognition." arXiv preprint arXiv:1409.1556 (2014).
・ResNet: He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.
【0032】
残差推定部11は、入力された対象画像G1および背景画像G2より、対象画像G1から背景および前景を区別する前景マップG5と、差分画像G3との差を示す残差G4をニューラル・ネットワークを用いて推定する。すなわち、残差推定部11は、推定部の一例である。
【0033】
出力部12は、差分生成部10より生成された差分画像G3と、残差推定部11より推定された残差G4との基づく前景マップG5を出力する。具体的には、出力部12は、差分画像G3および残差G4において互いに対応する画素における画素値を加算して得られた前景マップG5を出力する。この加算については、重み付き加算であってもよい。この重みは、予め設計者が定めた値であってもよいし、可変のパラメータであってもよい。可変のパラメータについては、残差推定部11のニューラル・ネットワークを学習するときに一緒に最適化を行ってもよい。
【0034】
図6は、実施形態にかかる画像処理装置1の動作例を示すフローチャートである。図6に示すように、処理が開始されると、画像処理装置1は、メモリ、ハードディスク、データベースもしくはネットワーク上のストレージ等に予め格納されている背景画像G2を取得する(S10)。同様に、画像処理装置1は、対象画像G1を取得する(S11)。
【0035】
なお、監視カメラからの画像を対象画像G1とする場合、画像処理装置1は、監視カメラと接続するインタフェースを介して監視カメラより対象画像G1を直接取得してもよい。また、画像処理装置1は、対象画像G1および背景画像G2の取得時にノイズ除去や色補正などの前処理を施してもよい。
【0036】
次いで、画像処理装置1は、対象画像G1および背景画像G2を差分生成部10に入力する(S12、S13)。次いで、差分生成部10は、対象画像G1と背景画像G2の差分を生成し(S14)、差分画像G3を得る。
【0037】
次いで、画像処理装置1は、対象画像G1および背景画像G2を残差推定部11に入力する(S15、S16)。次いで、残差推定部11は、入力された対象画像G1および背景画像G2より、前景マップG5と差分画像G3の差を示す残差G4をニューラル・ネットワークを用いて推定する(S17)。
【0038】
残差推定部11のニューラル・ネットワークは、後述する学習装置による学習フェーズにより、残差G4を適正に推定するようにパラメータ調整が施されている。
【0039】
図7は、残差推定部11のニューラル・ネットワークを説明する説明図である。図11に示すように、ニューラル・ネットワーク11aは、脳のニューロンを模したユニットを階層的に結合したネットワーク構造を有する。脳には、多数のニューロン(神経細胞)が存在する。各ニューロンは、他のニューロンから信号を受け取り、他のニューロンへ信号を受け渡す。脳は、この信号の流れによって、様々な情報処理を行う。ニューラル・ネットワーク11aは、このような脳の機能の特性を計算機上で実現したモデルである。
【0040】
具体的には、ニューラル・ネットワーク11aは、対象画像G1および背景画像G2が入力される層から残差G4を出力する層までの中間層を多層とするディープ・ニューラル・ネットワークであってもよい。複数の中間層は、例えば、畳み込み層、活性化関数層、プーリング層、全結合層およびソフトマックス層を含む。各層の数及び位置は、要求されるアーキテクチャに応じて随時変更され得る。すなわち、ニューラル・ネットワーク11aの階層構造や各層の構成は、識別する対象などに応じて、設計者が予め定めることができる。
【0041】
また、ニューラル・ネットワーク11aにおいては、入力された画像データからの特徴抽出を可能とするように、畳み込み層と、プーリング層とを交互に積み重ねたCNN(畳み込みニューラル・ネットワーク)としての構成を有してもよい。また、ニューラル・ネットワーク11aは、CNNではなく、全結合層を多層に並べたもので構成してもよい。この場合、対象画像G1および背景画像G2については、ラスタスキャン順などの特定の方法に従って一列に並べたベクトルを入力とすればよい。
【0042】
例えば、ニューラル・ネットワーク11aは、次の文献に示すようなネットワーク構造を用いてもよい。
・FCN(Fully Convolutional Networks):Long, Jonathan, Evan Shelhamer, and Trevor Darrell. "Fully convolutional networks for semantic segmentation." Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.
・U-Net:Ronneberger, Olaf, et al. "U-net: Convolutional networks for biomedical image segmentation." International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015.
【0043】
図7のニューラル・ネットワーク11aは、上記のU-Netを適用した場合のネットワーク構造の一例である。例えば、ニューラル・ネットワーク11aでは、対象画像G1および背景画像G2をRGB3チャンネルのカラー画像とする場合、入力はそれらを重ねた6チャンネルとなる。この入力に対して、畳み込み層、拡大畳み込み層、プーリング層、Batch normalization層、活性化関数層などを経て、1チャンネルの残差G4を出力する。
【0044】
図6に戻り、S17に次いで、出力部12は、差分画像G3と残差G4を加算し(S18)、前景マップG5を出力する(S19)。
【0045】
画像処理装置1では、得られた前景マップG5を、自由視点映像生成技術における被写体のシルエットの抽出や、映像監視技術における不審者の抽出に適用することができる。
【0046】
例えば、複数視点のカメラ映像から任意の視点の映像を作り出す技術は自由視点映像生成と呼ばれる。この自由視点映像生成技術を用いることで、撮影したカメラ以外の視点での映像の生成や、現実では不可能なカメラワークの映像などを生成でき、ダイナミックで臨場感のある映像コンテンツを生成や、ユーザーが各自で好きなアングルから視聴などに応用できる。
【0047】
この自由視点映像生成技術への適用例としては、次のようなものがある。各カメラ画像に対して前景マップG5を求め、得られた前景マップG5をもとに、人物などの前景物体のシルエットを抽出する。次いで、Visual Hullという手法を用いて前景物体の3次元構造を復元し、任意に設定した視点からの映像をレンダリングする。
【0048】
また、映像監視技術における不審者の抽出への適用例としては、次のようなものがある。監視カメラの画像に対して前景マップG5を求め、前景領域の画素数を求める。この前景領域の画素数が所定の閾値以上であった場合、不審物を検出したものとして検出信号を出力する。
【0049】
次に、ニューラル・ネットワーク11aの学習(学習フェーズ)を行う学習装置の詳細について説明する。図8は、実施形態にかかる学習装置の機能構成例を示すブロック図である。
【0050】
なお、学習フェーズにおける対象画像G1、背景画像G2および教師画像G6については、学習用に予め設定された学習データセットのデータを用いるものとする。この学習データセットは、例えば、メモリ、ハードディスク、データベースもしくはネットワーク上のストレージ等に予め格納されているものを読み出して用いる。また、学習データセットについては、画像の回転やスケーリングなどの幾何学的変換やノイズを付加するなど、擬似的にデータの多様性を増やす処理(Data augumentation)を行ってもよい。また、ミニバッチ学習をする場合、対象画像G1、背景画像G2および教師画像G6については、ミニバッチ数分を取得してもよい。
【0051】
図8に示すように、学習装置2は、誤差算出部20と、勾配算出部21と、更新部22とを有する。
【0052】
誤差算出部20は、画像処理装置1が出力した前景マップG5と、教師画像G6との入力を受け付ける。誤差算出部20は、入力された前景マップG5と、教師画像G6とを比較して誤差を算出する。すなわち、誤差算出部20は、算出部の一例である。
【0053】
例えば、誤差算出部20は、前景マップG5および教師画像G6において互いに対応する画素における画素値の二乗誤差を求めることで、誤差を算出する。この誤差については、二乗誤差に限定するものではなく、L1ノルム誤差や、ロバスト統計で用いられるHuberノルム誤差などを用いてもよい。
【0054】
勾配算出部21は、誤差算出部20が算出した誤差をもとに、教師あり学習で一般的に使用される誤差逆伝搬法に基づいてニューラル・ネットワーク11a全体の勾配を算出する。
【0055】
更新部22は、勾配算出部21が算出した勾配をもとに、ニューラル・ネットワーク11aを構成する各ノードの結合重み(パラメータ)の更新量を算出する。更新部22は、算出した更新量をもとに、ニューラル・ネットワーク11aにおけるパラメータを更新する。
【0056】
更新部22における更新量の算出には、例えば、次の文献に示すような最適化手法を用いることができる。
・Momentum付きのSGD(stocastic gradient descent): Goodfellow, Ian, et al. Deep learning. Vol. 1. Cambridge: MIT press, 2016.
・RMSProp: Geoffrey Hinton, Nitish Srivastava, Kevin Swersky. 2014. Lecture 6e: Rmsprop: Divide the gradient by a running average of its recent magnitude (CSC321 Winter 2014).
・Adam: Diederik Kingma, Jimmy Ba. 2015. Adam: a method for stochastic optimization. the 3rd International Conference for Learning Representations (ICLR 2015).
【0057】
図9は、学習フローを例示するフローチャートである。図9に示すように、処理が開始されると、学習データセットから対象画像G1および背景画像G2を取得する(S20、S21)。次いで、画像処理装置1は、S12~S19と同様の処理を行い、前景マップG5を出力する(S22~S29)。画像処理装置1より出力された前景マップG5は、学習装置2の誤差算出部20に入力される。
【0058】
次いで、学習装置2の誤差算出部20は、学習データセットから教師画像G6を取得する(S30)。次いで、誤差算出部20は、画像処理装置1より出力された前景マップG5と、教師画像G6とを比較して誤差を計算する(S31)。
【0059】
次いで、勾配算出部21は、誤差算出部20が計算した誤差をもとに、ニューラル・ネットワーク11a全体の勾配を算出する(S32)。次いで、更新部22は、差分生成部10のニューラル・ネットワーク11aにおける各ノードの結合重みを勾配算出部21が計算した勾配に応じて更新する(S33)。
【0060】
次いで、学習装置2は、学習データセットに含まれる全てのデータを用いた学習が終了したか否かなど、所定の学習終了の条件を満たすかを判定する(S34)。満たさない場合(S34:NO)、学習装置2は、S20へ処理を戻し、学習を継続する。満たす場合(S34:YES)、学習装置2は、学習を終了する。
【0061】
以上のように、画像処理装置1の差分生成部10は、背景および前景の判別対象となる対象画像G1と、背景にかかる背景画像G2との差分画像G3を生成する。画像処理装置1の残差推定部11は、入力された対象画像G1および背景画像G2より、対象画像G1から背景および前景を区別する前景マップG5と、差分画像G3との差を示す残差G4をニューラル・ネットワーク11aを用いて推定する。画像処理装置1の出力部12は、差分生成部10により生成された差分画像G3と、残差推定部11により推定された残差G4とに基づく前景マップG5を出力する。
【0062】
これにより、画像処理装置1は、高次な特徴を判別する多層な残差推定部11を用いることができ、背景と類似する類似色が前景に含まれる場合や、ノイズ等に対して頑健に背景/前景の判別を行うことが可能となる。
【0063】
また、残差推定部11のニューラル・ネットワーク11aは、中間層を多層とするディープ・ニューラル・ネットワーク(DNN)である。これにより、残差推定部11は、入力された対象画像G1および背景画像G2に含まれる高次な特徴をもとに残差G4を推定することができる。したがって、画像処理装置1は、ノイズ等に対してより頑健な背景/前景の判別を行うことが可能となる。
【0064】
また、残差推定部11のニューラル・ネットワーク11aは、畳み込みニューラル・ネットワークである。これにより、残差推定部11は、入力された対象画像G1および背景画像G2の抽象化を行い、高次の特徴を得ることができる。
【0065】
また、差分生成部10は、対象画像G1および背景画像G2それぞれの各画素に基づく特徴量の差分をもとに差分画像G3を生成する。このように差分画像G3は、対象画像G1および背景画像G2における特徴量の差分であってもよい。
【0066】
また、学習装置2の誤差算出部20は、差分生成部10により生成された差分画像G3、および、残差推定部11のニューラル・ネットワーク11aにより推定された残差G4に基づいた前景マップG5を受け付ける。学習装置2は、受け付けた前景マップG5と、教師画像G6との誤差を算出する。学習装置2の更新部22は、算出された誤差に基づいてニューラル・ネットワーク11aにかかるパラメータを更新する。これにより、学習装置2は、対象画像G1から背景および前景を区別する前景マップG5と、差分画像G3との差を示す残差G4を推定するニューラル・ネットワーク11aの学習を行うことができる。
【0067】
なお、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0068】
画像処理装置1、学習装置2で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウエア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。また、画像処理装置1、学習装置2で行われる各種処理機能は、クラウドコンピューティングにより、複数のコンピュータが協働して実行してもよい。
【0069】
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータ(ハードウェア)の一例を説明する。図10は、プログラムを実行するコンピュータの一例を示す説明図である。
【0070】
図10に示すように、コンピュータ3は、各種演算処理を実行するCPU101と、データ入力を受け付ける入力装置102と、モニタ103と、スピーカ104とを有する。また、コンピュータ3は、記憶媒体からプログラム等を読み取る媒体読取装置105と、各種装置と接続するためのインタフェース装置106と、有線または無線により外部機器と通信接続するための通信装置107とを有する。また、コンピュータ3は、各種情報を一時記憶するRAM108と、ハードディスク装置109とを有する。また、コンピュータ3内の各部(101~109)は、バス110に接続される。
【0071】
ハードディスク装置109には、上記の実施形態で説明した差分生成部10、残差推定部11、出力部12、誤差算出部20、勾配算出部21および更新部22等の機能部における各種処理を実行するためのプログラム111が記憶される。また、ハードディスク装置109には、プログラム111が参照する各種データ112が記憶される。入力装置102は、例えば、コンピュータ3の操作者から操作情報の入力を受け付ける。モニタ103は、例えば、操作者が操作する各種画面を表示する。インタフェース装置106は、例えば印刷装置等が接続される。通信装置107は、LAN(Local Area Network)等の通信ネットワークと接続され、通信ネットワークを介した外部機器との間で各種情報をやりとりする。
【0072】
CPU101は、ハードディスク装置109に記憶されたプログラム111を読み出して、RAM108に展開して実行することで、差分生成部10、残差推定部11、出力部12、誤差算出部20、勾配算出部21および更新部22等にかかる各種の処理を行う。なお、プログラム111は、ハードディスク装置109に記憶されていなくてもよい。例えば、コンピュータ3が読み取り可能な記憶媒体に記憶されたプログラム111を、コンピュータ3が読み出して実行するようにしてもよい。コンピュータ3が読み取り可能な記憶媒体は、例えば、CD-ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置にプログラム111を記憶させておき、コンピュータ3がこれらからプログラム111を読み出して実行するようにしてもよい。
【0073】
以上の実施形態に関し、さらに以下の付記を開示する。
【0074】
(付記1)背景および前景の判別対象となる対象画像と、前記背景にかかる背景画像との差分画像を生成する生成部と、
前記対象画像から前記背景および前記前景を区別するマップ画像と、前記差分画像との差を示す残差をニューラル・ネットワークを用いて推定する推定部と、
生成された前記差分画像と、推定された前記残差とに基づくマップ画像を出力する出力部と、
を有することを特徴とする画像処理装置。
【0075】
(付記2)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記1に記載の画像処理装置。
【0076】
(付記3)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記2に記載の画像処理装置。
【0077】
(付記4)前記生成部は、前記対象画像および前記背景画像それぞれの各画素に基づく特徴量の差分をもとに前記差分画像を生成する、
ことを特徴とする付記1乃至3のいずれか一に記載の画像処理装置。
【0078】
(付記5)背景および前景の判別対象となる対象画像と前記背景にかかる背景画像との差分画像、および、前記差分画像との差を示す残差に基づいて、ニューラル・ネットワークによって推定された、前記対象画像から前記背景および前記前景を区別するマップ画像を受け付け、当該マップ画像と、教師データとの誤差を算出する算出部と、
算出された前記誤差に基づいて前記ニューラル・ネットワークにかかるパラメータを更新する更新部と、
を有することを特徴とする学習装置。
【0079】
(付記6)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記5に記載の学習装置。
【0080】
(付記7)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記6に記載の学習装置。
【0081】
(付記8)背景および前景の判別対象となる対象画像と、前記背景にかかる背景画像との差分画像を生成し、
前記対象画像から前記背景および前記前景を区別するマップ画像と、前記差分画像との差を示す残差をニューラル・ネットワークを用いて推定し、
生成された前記差分画像と、推定された前記残差とに基づくマップ画像を出力する、
処理をコンピュータが実行することを特徴とする画像処理方法。
【0082】
(付記9)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記8に記載の画像処理方法。
【0083】
(付記10)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記9に記載の画像処理方法。
【0084】
(付記11)前記生成する処理は、前記対象画像および前記背景画像それぞれの各画素に基づく特徴量の差分をもとに前記差分画像を生成する、
ことを特徴とする付記8乃至10のいずれか一に記載の画像処理方法。
【0085】
(付記12)背景および前景の判別対象となる対象画像と前記背景にかかる背景画像との差分画像、および、前記差分画像との差を示す残差に基づいて、ニューラル・ネットワークによって推定された、前記対象画像から前記背景および前記前景を区別するマップ画像を受け付け、当該マップ画像と、教師データとの誤差を算出し、
算出された前記誤差に基づいて前記ニューラル・ネットワークにかかるパラメータを更新する、
処理をコンピュータが実行することを特徴とする学習方法。
【0086】
(付記13)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記12に記載の学習方法。
【0087】
(付記14)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記13に記載の学習方法。
【0088】
(付記15)背景および前景の判別対象となる対象画像と、前記背景にかかる背景画像との差分画像を生成し、
前記対象画像から前記背景および前記前景を区別するマップ画像と、前記差分画像との差を示す残差をニューラル・ネットワークを用いて推定し、
生成された前記差分画像と、推定された前記残差とに基づくマップ画像を出力する、
処理をコンピュータに実行させることを特徴とする画像処理プログラム。
【0089】
(付記16)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記15に記載の画像処理プログラム。
【0090】
(付記17)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記16に記載の画像処理プログラム。
【0091】
(付記18)前記生成する処理は、前記対象画像および前記背景画像それぞれの各画素に基づく特徴量の差分をもとに前記差分画像を生成する、
ことを特徴とする付記15乃至17のいずれか一に記載の画像処理プログラム。
【0092】
(付記19)背景および前景の判別対象となる対象画像と前記背景にかかる背景画像との差分画像、および、前記差分画像との差を示す残差に基づいて、ニューラル・ネットワークによって推定された、前記対象画像から前記背景および前記前景を区別するマップ画像を受け付け、当該マップ画像と、教師データとの誤差を算出し、
算出された前記誤差に基づいて前記ニューラル・ネットワークにかかるパラメータを更新する、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【0093】
(付記20)前記ニューラル・ネットワークは、中間層を多層とするディープ・ニューラル・ネットワークである、
ことを特徴とする付記19に記載の学習プログラム。
【0094】
(付記21)前記ニューラル・ネットワークは、畳み込みニューラル・ネットワークである、
ことを特徴とする付記20に記載の学習プログラム。
【符号の説明】
【0095】
1…画像処理装置
2…学習装置
3…コンピュータ
10…差分生成部
11…残差推定部
11a、200、200a、200b…ニューラル・ネットワーク
12…出力部
20…誤差算出部
21…勾配算出部
22…更新部
101…CPU
102…入力装置
103…モニタ
104…スピーカ
105…媒体読取装置
106…インタフェース装置
107…通信装置
108…RAM
109…ハードディスク装置
110…バス
111…プログラム
112…各種データ
201…入力層
202…中間層
203…出力層
C1、C2…ケース
G1…対象画像
G2…背景画像
G3…差分画像
G4…残差
G4a…判別結果
G5…前景マップ
G6…教師画像
G10…入力画像
G11…判別結果
H…人物
R1…前景領域
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10