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

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

▶ セコム株式会社の特許一覧

特許7423310データ処理装置、データ処理方法及び学習済みモデル
<>
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図1
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図2
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図3
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図4
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図5
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図6
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図7
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図8
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図9
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図10
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図11
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図12
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図13
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図14
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図15
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図16
  • 特許-データ処理装置、データ処理方法及び学習済みモデル 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-19
(45)【発行日】2024-01-29
(54)【発明の名称】データ処理装置、データ処理方法及び学習済みモデル
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240122BHJP
   H04N 7/18 20060101ALI20240122BHJP
   G06N 3/08 20230101ALI20240122BHJP
   G06N 20/00 20190101ALI20240122BHJP
【FI】
G06T7/00 350C
H04N7/18 D
H04N7/18 K
G06N3/08
G06N20/00 130
【請求項の数】 9
(21)【出願番号】P 2019238682
(22)【出願日】2019-12-27
(65)【公開番号】P2021107979
(43)【公開日】2021-07-29
【審査請求日】2022-11-17
(73)【特許権者】
【識別番号】000108085
【氏名又は名称】セコム株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】長峯 隆
(72)【発明者】
【氏名】高田 直幸
【審査官】山田 辰美
(56)【参考文献】
【文献】特開2018-129750(JP,A)
【文献】特開2017-033372(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00-7/90
H04N 7/18
G06N 3/08
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
入力データに対して所定のデータ処理タスクを行う多層ニューラルネットワークにおける各畳み込み層で用いられるフィルタと、前記入力データに加算されるノイズデータとを学習する学習部と、
前記入力データに対して前記学習部により学習されたノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力して、前記多層ニューラルネットワークの出力に基づいて、前記データ処理タスクの結果を求める入力用データ処理部と、
を含むデータ処理装置であって、
前記学習部は、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう学習することを特徴とするデータ処理装置。
【請求項2】
前記学習部は、前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタ群と、当該前段の畳み込み層で用いられるフィルタ群のフィルタを所定のストライドで畳み込む場合における、該畳み込む各領域に対応する前記ノイズデータの領域とが直交性を有するように前記フィルタと前記ノイズデータとを学習する請求項1記載のデータ処理装置。
【請求項3】
前記入力データは、画像であって、
前記学習部は、所定の基準ノイズブロックと当該基準ノイズブロックを所定のシフトパターンに応じてシフトさせて得られる派生ノイズブロックとからなるノイズブロック群のうちの何れか一つを並べて配置することにより前記ノイズデータが生成されるよう学習する請求項2記載のデータ処理装置。
【請求項4】
前記学習部は、前記ノイズブロック群の全てのノイズブロックと前記フィルタの夫々とが直交性を有するように学習する請求項3記載のデータ処理装置。
【請求項5】
前記学習部は、前記ストライドに応じた前記シフトパターンにより前記ノイズブロックをシフトさせることにより前記派生ノイズブロックを得る請求項4記載のデータ処理装置。
【請求項6】
前記入力データは、画像であって、
前記ストライドは前記フィルタのサイズの整数倍であって、
前記学習部は、所定のノイズブロックと前記フィルタとが直交性を有するように学習し、
前記ノイズデータは、学習により求めた一以上のノイズブロックを並べて配置したものである請求項2記載のデータ処理装置。
【請求項7】
前記入力データは、画像であって、
前記ノイズ付加データは、前記入力データの画素のうちランダムに決定される画素を欠落させてから、前記ノイズデータを加算して得られたものであり、
前記学習部は、前記学習用データの画素のうちランダムに決定される画素を欠落させてから前記多層ニューラルネットワークに入力して学習する請求項1~請求項6の何れか1項記載のデータ処理装置。
【請求項8】
前記入力データは、画像であって、
前記ノイズ付加データは、前記入力データにランダムノイズを付加してから、前記ノイズデータを加算して得られたものであり、
前記学習部は、前記学習用データにランダムノイズを付加してから前記多層ニューラルネットワークに入力して学習する請求項1~請求項6の何れか1項記載のデータ処理装置。
【請求項9】
学習部が、入力データに対して所定のデータ処理タスクを行う多層ニューラルネットワークにおける各畳み込み層で用いられるフィルタと、前記入力データに加算されるノイズデータとを学習し、
入力用データ処理部が、前記入力データに対して前記学習部により学習されたノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力して、前記多層ニューラルネットワークの出力に基づいて、前記データ処理タスクの結果を求める
データ処理方法であって、
前記学習部は、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう学習することを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理装置及び学習済みモデルに係り、特に、入力データに対して所定のデータ処理タスクを行うデータ処理装置、データ処理方法及び学習済みモデルに関する。
【背景技術】
【0002】
特許文献1には、カメラ画像をそのまま送信するのではなく、画像を取得したローカル装置において照合に影響しないノイズを顔画像に付加することで目視にて識別困難なノイズ付加画像を生成し、当該ノイズ付加画像をサーバに送信して、サーバ側で当該ノイズ付加画像を用いて人物照合することにより、プライバシーに配慮したネットワーク型の認証システムが開示されている。
【0003】
特に、サーバにおいて多層ニューラルネットワークによって人物照合などのデータ処理タスクを行う場合、ローカル装置は、当該多層ニューラルネットワークに含まれる畳み込み層のフィルタの成分とノイズの成分との積が0とみなせる範囲でノイズの成分を設定する条件によりノイズ付加画像を生成する例が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2018-129750号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記条件となるノイズ付加画像を生成するために、例えばフィルタの成分を学習により求め、その後に上記条件となるようノイズの成分を求める方法を用いた場合、上記条件を満たすノイズが求められることは保証されない。すなわち、多層ニューラルネットワークのような非線形識別器においては、上記条件を満たすノイズを解析的に求めることは困難な場合があった。
【0006】
そこで、本発明は、ノイズを付加しても、多層ニューラルネットワークを用いたデータ処理タスクを精度よく行うことができるデータ処理装置、データ処理方法及び学習済みモデルを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記の目的を達成するために本発明に係るデータ処理装置は、入力データに対して所定のデータ処理タスクを行う多層ニューラルネットワークにおける各畳み込み層で用いられるフィルタと、前記入力データに加算されるノイズデータとを学習する学習部と、前記入力データに対して前記学習部により学習されたノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力して、前記多層ニューラルネットワークの出力に基づいて、前記データ処理タスクの結果を求める入力用データ処理部と、を含むデータ処理装置であって、前記学習部は、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう学習することを特徴とする。
【0008】
本発明に係るデータ処理装置によれば、前記学習部は、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう学習する。そして、入力用データ処理部は、前記入力データに対して前記学習部により学習されたノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力して、前記多層ニューラルネットワークの出力に基づいて、前記データ処理タスクの結果を求める。
【0009】
このように、ノイズデータと多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、求められた所定のデータ処理タスクの結果と、学習用データに予め付与された所定のデータ処理タスクの結果とが一致するよう学習することにより、ノイズを付加しても、多層ニューラルネットワークを用いたデータ処理タスクを精度よく行うことができる。
【0010】
また、前記学習部は、前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタ群と、当該前段の畳み込み層で用いられるフィルタ群のフィルタを所定のストライドで畳み込む場合における、該畳み込む各領域に対応する前記ノイズデータの領域とが直交性を有するように前記フィルタと前記ノイズデータとを学習することができる。
【0011】
また、前記入力データは、画像であって、前記学習部は、所定の基準ノイズブロックと当該基準ノイズブロックを所定のシフトパターンに応じてシフトさせて得られる派生ノイズブロックとからなるノイズブロック群のうちの何れか一つを並べて配置することにより前記ノイズデータが生成されるよう学習することができる。
【0012】
また、前記学習部は、前記ノイズブロック群の全てのノイズブロックと前記フィルタの夫々とが直交性を有するように学習することができる。
【0013】
また、前記学習部は、前記所定のストライドに応じた前記シフトパターンにより前記ノイズブロックをシフトさせることにより前記派生ノイズブロックを得ることができる。
【0014】
また、前記入力データは、画像であって、前記所定のストライドは前記フィルタのサイズの整数倍であって、前記学習部は、所定のノイズブロックと前記フィルタとが直交性を有するように学習し、前記ノイズデータは、学習により求めた一以上のノイズブロックを並べて配置したものであることができる。
【0015】
また、前記入力データは、画像であって、前記ノイズ付加データは、前記入力データの画素のうちランダムに決定される画素を欠落させてから、前記ノイズデータを加算して得られたものであり、前記学習部は、前記学習用データの画素のうちランダムに決定される画素を欠落させてから前記多層ニューラルネットワークに入力して学習することができる。
【0016】
また、前記入力データは、画像であって、前記ノイズ付加データは、前記入力データにランダムノイズを付加してから、前記ノイズデータを加算して得られたものであり、
前記学習部は、前記学習用データにランダムノイズを付加してから前記多層ニューラルネットワークに入力して学習することができる。
【0017】
本発明に係るデータ処理方法は、学習部が、入力データに対して所定のデータ処理タスクを行う多層ニューラルネットワークにおける各畳み込み層で用いられるフィルタと、前記入力データに加算されるノイズデータとを学習し、入力用データ処理部が、前記入力データに対して前記学習部により学習されたノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力して、前記多層ニューラルネットワークの出力に基づいて、前記データ処理タスクの結果を求めるデータ処理方法であって、前記学習部は、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう学習することを特徴とする。
【0018】
本発明に係る学習済みモデルは、入力データに対して所定のデータ処理タスクを行うための多層ニューラルネットワークであって、前記入力データに対してノイズデータを加算して得られたノイズ付加データを、前記多層ニューラルネットワークに入力したときの出力に基づいて前記データ処理タスクの結果を求めるための多層ニューラルネットワークである学習済みモデルであって、前記データ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、前記ノイズデータと前記多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、前記求められた前記データ処理タスクの結果と、前記学習用データに予め付与された前記データ処理タスクの結果とが一致するよう予め学習されたことを特徴とする。
【0019】
本発明に係る学習済みモデルによれば、所定のデータ処理タスクの結果が予め付与された学習用データを前記多層ニューラルネットワークに入力して、ノイズデータと多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタとが直交性を有し、かつ、求められた所定のデータ処理タスクの結果と、学習用データに予め付与された所定のデータ処理タスクの結果とが一致するよう予め学習される。そして、入力データに対してノイズデータを加算して得られたノイズ付加データを、多層ニューラルネットワークに入力したときの出力に基づいて所定のデータ処理タスクの結果を求める。
【0020】
このように、多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタ群と、ノイズデータとが直交性を有するように学習されることにより、ノイズを付加しても、多層ニューラルネットワークを用いたデータ処理タスクを精度よく行うことができる。
【発明の効果】
【0021】
以上説明したように、本発明のデータ処理装置、データ処理方法及び学習済みモデルによれば、ノイズを付加しても、多層ニューラルネットワークを用いたデータ処理タスクを精度よく行うことができる、という効果が得られる。
【図面の簡単な説明】
【0022】
図1】本発明の実施の形態に係る顔認証システムの構成を示す概略図である。
図2】入力顔データの構成を示す図である。
図3】ノイズ付加入力顔データの構成を示す図である。
図4】ノイズブロックと多層ニューラルネットワークのフィルタを示す模式図である。
図5】ノイズ付加前の顔画像とノイズ付加後の顔画像を示す模式図である。
図6】フィルタとノイズ付加顔データとの畳み込みの特性を示す模式図である。
図7】ノイズ画像の例を示す図である。
図8】派生ノイズブロックの例を示す図である。
図9】登録顔データの構成を示す図である。
図10】認証済み登録顔データの構成を示す図である。
図11】画像処理タスクの学習と直交制約学習を同時に進める方法を説明するための図である。
図12】認証履歴データの構成を示す図である。
図13】報知用画像の例を示す図である。
図14】本発明の実施の形態に係る顔認証による学習処理の動作を示すフローチャートである。
図15】本発明の実施の形態に係る画像処理装置による検知処理の動作を示すフローチャートである。
図16】本発明の実施の形態に係る顔認証装置による照合処理の動作を示すフローチャートである。
図17】本発明の実施の形態に係る報知装置による報知処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0023】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、ネットワーク型の顔認証システムに本発明を適用した場合を例に説明する。
【0024】
<システム構成>
以下、本発明を適用した顔認証システム1000の概略構成を示した図1を参照し、本発明の実施の形態の構成を説明する。
【0025】
(顔認証システム1000)
顔認証システム1000は、撮像装置1100、ネットワーク1200、画像処理装置1300、顔認証装置1400、及び報知装置1500を有する。なお、顔認証装置1400が、データ処理装置の一例である。
【0026】
(撮像装置1100)
撮像装置1100は、所定の領域を監視する目的で設置される監視カメラであり、監視対象領域内に滞在する人物の顔が撮影できる位置に取り付けられる。撮像装置1100で撮影した監視画像は、画像処理装置1300に送信される。
【0027】
(ネットワーク1200)
ネットワーク1200は、画像処理装置1300、顔認証装置1400、及び報知装置1500の間でデータの送受信を行なうために利用される回線である。LAN(Local Area Network)や、インターネット等の公衆回線が本発明のネットワーク1200として利用できる。ネットワーク1200上の電文については、公知のVPN技術等を用いて、電文を暗号化する等の安全措置が講じられることが望ましい。
【0028】
(画像処理装置1300)
画像処理装置1300は、CPU、MPU、周辺回路、端子、各種メモリなどから構成され、撮像装置1100が撮影した画像に対して画像処理を施した結果を、ネットワーク1200を介して顔認証装置1400や報知装置1500に送信する。以下、画像処理装置1300を構成する画像処理部1310、記憶部1320、及び送受信部1330の各部について、詳細に説明する。
【0029】
(画像処理部1310)
画像処理部1310は、顔画像取得手段1311及びノイズ付加手段1312から構成される。
【0030】
(顔画像取得手段1311)
顔画像取得手段1311は、撮像装置1100が撮影した監視画像から人物の顔画像を抽出し、入力顔画像とする。さらに入力顔画像に固有の顔画像識別子と撮影時刻を付与して、図2に示す構成の入力顔データ200としてノイズ付加手段1312に送信するとともに、記憶部1320に格納する。
【0031】
顔画像識別子210は入力顔画像220を一意に特定する為の識別子で、例えば128ビット整数を顔画像識別子210として用いて、初期値を0として、入力顔画像220に顔画像識別子210を付与するごとに顔画像識別子210の値をインクリメントする、等の方法がある。顔画像識別子210を不正に推定されないよう、顔画像識別子210にチェックサムなどを付与しても良い。監視画像中に複数の人物が存在する場合は、夫々の人物の顔画像を抽出して互いに異なる顔画像識別子210を付与し、ノイズ付加手段1312および記憶部1320に送信する。
【0032】
顔画像の抽出方法については、従来から多数提案されており、適宜公知の方法を採用すれば良い。例えば、顔画像を学習した識別器と呼ばれるフィルタにて抽出する方法や、入力画像の二値化エッジ画像を生成し、当該エッジ画像において顔の形状である楕円形状を検出する方法などを採用すれば良い。
【0033】
(ノイズ付加手段1312)
ノイズ付加手段1312は、被写体を目視で識別することが困難となるように、顔画像取得手段1311で抽出した人物の顔画像にノイズを付加したノイズ付加顔データ320を生成するとともに、顔画像取得手段1311が出力した顔画像と同一の顔画像識別子310を当該ノイズ付加顔データ320に付与して、図3に示す構成のノイズ付加入力顔データ300として送受信部1330に送信する。なお、ノイズ付加顔データ320は、ノイズ付加データの一例である。
【0034】
ノイズ付加顔データ320の作成法については、ノイズ付加顔データ320を入力とする、畳み込み層を含む多層ニューラルネットワーク1440、具体的には畳み込みニューラルネットワーク (CNN;Convolutional Neural Network)を用いる顔照合方式を適用する場合を例に説明する。当該多層ニューラルネットワーク1440は、後述するように、入力用データ処理部1430にて目視識別困難なノイズ付加顔データ320を入力され、記憶部1420に登録されている顔画像データと照合するための特徴量を出力する。なお、学習を終えた多層ニューラルネットワーク1440が、学習済みモデルの一例である。
【0035】
この場合、図4に示す通り、多層ニューラルネットワーク1440の前段の畳み込み層で用いられるフィルタ3010と同一の構造(次元、要素数)を持つノイズブロック3020を、フィルタ3010と直交性を有するように設定し、顔画像取得手段1311で抽出した顔画像に並べて加算することにより、ノイズ付加画像3030を生成する。すなわち、ノイズブロック3020を並べて配置したノイズ画像を入力顔画像220に加算することにより、ノイズ付加画像3030を生成する。当該ノイズ付加画像3030を、被写体を目視で識別することが困難なノイズ付加顔データ320とすることができる。ここで、「フィルタとノイズブロックが直交性を有する」とは、両者の要素をベクトルとして表したとき、フィルタの要素ベクトルとノイズブロックの要素ベクトルがベクトル空間で直交することを意味する。当該フィルタ要素ベクトルと当該ノイズブロック要素ベクトルが直交するとき、両者の内積はゼロとなる。なお、ノイズ画像は、ノイズデータの一例である。
【0036】
図5にノイズ付加前の顔画像400とノイズ付加画像410の模式図を示す。ノイズ付加画像410は、ノイズ付加前の顔画像400と比べて、目視識別困難な画像である。
【0037】
ここで、このように生成した目視識別困難なノイズ付加顔データ320が、多層ニューラルネットワーク1440を用いた顔照合処理の精度を低下させない原理について説明する。
【0038】
多層ニューラルネットワーク1440における畳み込み処理は、畳み込み層におけるフィルタ3010と、多層ニューラルネットワーク1440に入力される入力画像(ここではノイズ付加画像3030、すなわち目視識別困難なノイズ付加顔データ320)の画像ブロックの要素との内積マップを出力する。画像ブロックは、入力画像において特定の畳み込み位置における内積計算の対象要素を含む領域である。畳み込み処理では、フィルタの位置を所定のストライド(ずらし幅)で入力画像上を順次走査して各位置(畳み込み位置)における画像ブロックとの内積を計算し、最終的には入力画像全体に対する内積マップを出力する。
【0039】
図6に示す通り、内積には「線形性」の特性があるため、フィルタ3010と目視識別困難なノイズ付加顔データ3120との畳み込みは、「フィルタ3010とノイズ付加前の顔画像3130との畳み込み」と「フィルタ3010とノイズブロックを並べたノイズ画像3140との畳み込み」との和となる。ストライドがフィルタ3010のサイズ(幅、高さ)の整数倍の場合、「フィルタ3010とノイズブロックを並べたノイズ画像3140」が直交性を有していれば、「フィルタ3010とノイズブロックを並べたノイズ画像3140との畳み込み」は任意の畳み込み位置で内積がゼロとなるため、「フィルタ3010とノイズ付加前の顔画像3130との畳み込み」の出力のみが残る。これは、ノイズブロックを付加していない顔画像との畳み込みであるから、多層ニューラルネットワーク1440からはノイズの有無に依らず同じ畳み込み結果(照合用の特徴)が出力される。すなわち、ここで述べたようなノイズを付加して目視識別困難なノイズ付加顔データ320を用いて照合処理を行っても照合精度の低下はない。
【0040】
このように、ストライドがフィルタ3010のサイズの整数倍となる場合、ノイズ画像のうち、フィルタ3010が畳み込まれる領域のノイズパターンは一定となるため、ノイズブロック単体とフィルタ3010との直交性を有していればよい。しかし、フィルタ3010のストライドがフィルタ3010のサイズの整数倍でない場合、ノイズ画像3140において畳み込み位置がノイズブロック3020の境界をまたぐ場合が生じるため、このような場合、ノイズブロック3020単体でフィルタ3010との直交性を確保するだけでは不十分となる。
【0041】
この様子を図7で説明する。図7(A)ではノイズブロック3020の配置例として4種類のノイズブロックNa、Nb、Nc、Ndを並べて配置したノイズ画像3200が示されている。当該ノイズブロックNa、Nb、Nc、Ndはフィルタ3010と直交する関係にある。このノイズ画像3200に対してフィルタ3010を用いてストライド1で畳み込みを行うと、例えば、図7(B)に示すように、ノイズブロックをシフトさせて得られる、当該ノイズブロックNa、Nb、Nc、Ndの要素の一部から構成される派生ノイズブロックNeに対しても畳み込みが行われる。このとき、当該ノイズブロックNa、Nb、Nc、Ndがそれぞれノイズブロック単体でフィルタ3010と直交性を確保しているとはいえ、それだけでは当該派生ノイズブロックNeとフィルタ3010との直交性を有していることにはならない。
【0042】
このような場合、フィルタのサイズとストライドとに基づいて、ノイズブロック3020を並べたノイズ画像3200におけるフィルタを畳み込む各領域を求め、当該畳み込む各領域とフィルタ3010とが直交性を有するように設定する必要がある。ここで、図8(A)のように、ノイズブロックNaのみを並べて配置したノイズ画像3310の場合については、ノイズブロックNaをシフトさせることにより、ノイズ画像における畳み込む各領域に相当するブロックを求めることができる。例えばフィルタのストライドを1とすると、フィルタの走査により、ノイズブロックNaを並べたノイズ画像3310の、フィルタを畳み込む各領域は、ノイズブロックNaの要素を行方向及び列方向にシフト(循環シフト)したものとなる。したがって、ノイズブロックNaの要素を行方向及び列方向にシフトさせた複数の派生ノイズブロックを構成しておけば、ノイズブロックNaを並べたノイズ画像3310では、任意の畳み込み位置でフィルタを畳み込む領域が、派生ノイズブロックのどれかと一致する。したがって、このようにノイズブロックNaの要素を行方向及び列方向にシフトした派生ノイズブロックがフィルタ3010と直交するように設定すればよい。なお、派生ノイズブロックを作成する基準となるノイズブロックNaは、基準ノイズブロックの一例である。また、ノイズブロックNaとノイズブロックNaをシフトさせた複数の派生ノイズブロックからなる一群は、ノイズブロック群の一例である。以下では、ノイズブロック群を構成する基準ノイズブロック及び派生ノイズブロックを、ノイズブロックと称することがある。
【0043】
図8(A)では、ノイズブロックNaのサイズを3×3としている。図8(B)では、ノイズブロックNaの各要素をNa1~Na9で表し、フィルタ3010との畳み込みをストライド1で行う様子を示している。このとき、ノイズ画像3310のうちのフィルタを畳み込む各領域に対応する派生ノイズブロックのバリエーション3330は、図8(C)に示す通り、ノイズブロックNaの要素を行方向及び列方向にシフトさせた9つのシフトのパターンとなる。したがって、単一のノイズブロック3020の一つをベースとして、その要素を行方向及び列方向にシフトさせた派生ノイズブロックを求め、派生ノイズブロックの各々がフィルタ3010と直交するように設定すればよい。
【0044】
なお、ストライドが2以上であってもよく、その場合には、ストライドに応じてノイズブロック3020の要素を行方向及び列方向にシフトした派生ノイズブロックを用いればよい。
【0045】
また、フィルタ3010とノイズブロック3020とが直交するように設定するためには、多層ニューラルネットワーク1440の学習時に、多層ニューラルネットワーク1440のフィルタ3010と、多層ニューラルネットワーク1440の学習用画像に付加されるノイズブロック3020とが直交するようにも制約をつけて学習を行い、その学習結果を適用する方法がある。
【0046】
例えば、フィルタ3010の係数をwfとし、ノイズブロック3020の値をwnとすると、以下の(1)式で表すような非直交度を表す直交制約用損失値lossCを定義することができる。ここで、iはフィルタのバリエーションを表し、jはストライド位置に応じたノイズブロック3020のバリエーションを表す。「・」は内積を表す。多層ニューラルネットワーク1440の学習の過程で当該非直交度もあわせて最小化することで、フィルタ3010と直交するノイズブロック3020が得られる。
【0047】
【数1】

(1)
【0048】
なお、派生ノイズブロックを用いる方法においては、ノイズブロック3020のサイズは必ずしもフィルタ3010のサイズと一致させる必要はなく、フィルタ3010よりも小さいサイズ、あるいは大きいサイズでノイズブロック3020を想定し、ノイズブロック3020の要素をシフトさせて派生ノイズブロックを作成することも可能である。ただし、畳み込み処理の単位はあくまでフィルタ3010のサイズに対応する領域単位となるため、ノイズブロック3020を並べて作成したノイズ画像から切り出される、フィルタ3010と同じサイズの任意の領域が、フィルタ3010と直交するように学習を行う必要がある。
【0049】
例えば、図8(A)(B)に示すフィルタのサイズを4×4とした場合、ノイズ画像3310においてフィルタで畳み込む領域に対応する領域の一つとして、同図(B)の左上隅から4×4の要素が切り出されるが、当該領域がフィルタ群の各フィルタと直交性を有するように学習する。この際、当該領域において同じ識別子を有する要素は同じ値になるよう制約を課して学習する。
【0050】
(送受信部1330)
送受信部1330は、ノイズ付加手段1312が作成したノイズ付加入力顔データ300を、ネットワーク1200を介して顔認証装置1400の送受信部1410に送信する。
【0051】
また、後述するように顔認証装置1400の送受信部1410から送信された、認証済み顔画像識別子の情報を受信し、認証済み顔画像識別子に対応する入力顔データ200を記憶部1320から読み出して、ネットワーク1200を介して報知装置1500の受信部1510に送信する。
【0052】
(顔認証装置1400)
顔認証装置1400は、CPU、MPU、周辺回路、端子、各種メモリなどから構成され、画像処理装置1300が送信したノイズ付加入力顔データ300を受信し、当該ノイズ付加入力顔データ300が、顔登録済み人物の顔データであるか否かを、記憶部1420に予め格納された登録済み顔データを参照して、入力用データ処理部1430で判定する。なお、顔登録済み人物の顔データであるか否かを判定する顔認証タスクが、データ処理タスクの一例である。
【0053】
入力用データ処理部1430には、事前に学習された多層ニューラルネットワーク1440が実装されており、ノイズ付加入力顔データ300のノイズ付加顔データ320を多層ニューラルネットワーク1440に入力して出力される特徴量と、記憶部1420に予め格納された登録顔データを当該多層ニューラルネットワーク1440に入力して出力される特徴量との類似度を比較することにより、ノイズ付加入力顔データ300が当該登録顔データと一致するか否かを判定する。
【0054】
入力用データ処理部1430は、顔認証タスクにて一致と判定したノイズ付加入力顔データ300に紐付けられた顔画像識別子を、認証済み顔画像識別子として、送受信部1410およびネットワーク1200を介して、報知装置1500の受信部1510に送信する。
【0055】
以下、顔認証装置1400を構成する送受信部1410、入力用データ処理部1430、及び記憶部1420の各部について、詳細に説明する。
【0056】
(送受信部1410)
送受信部1410は、画像処理装置1300が送信したノイズ付加入力顔データ300を、ネットワーク1200を介して受信し、入力用データ処理部1430に出力する。
【0057】
また、入力用データ処理部1430が出力した認証済み顔画像識別子を、ネットワーク1200を介して画像処理装置1300の送受信部1330に送信する。
【0058】
(記憶部1420)
記憶部1420には、予め顔登録された人物の顔データが、登録顔画像識別子が付与された登録顔データとして格納される。図9に示すように、登録顔データ600は、登録顔画像識別子610、登録顔画像620、及び登録属性情報630から構成される。登録顔データ600は、1人の登録人物に対して少なくとも1データが記憶される。複数の登録人物が存在する場合、記憶部1420には、異なる登録顔画像識別子610が付与された登録顔データ600が複数記憶される。
【0059】
登録顔画像識別子610は、登録顔画像620を一意に特定する為の識別子で、例えば128ビット整数を用いる。例えば、初期値を0として新規に登録顔データ600を作成する度に登録顔画像識別子610の値をインクリメントする、等の方法がある。登録顔画像識別子610を不正に推定されないよう、チェックサムなどを登録顔画像識別子610に付与しても良い。
【0060】
登録顔画像620は、登録人物の顔画像であり、顔認証タスクにおける多層ニューラルネットワーク1440への入力データ、および報知装置1500における報知用画像として利用される。
【0061】
登録属性情報630は、氏名や性別、年齢、所属組織などの登録人物に付随する属性情報を表す。
【0062】
(入力用データ処理部1430)
入力用データ処理部1430は、画像処理装置1300が出力したノイズ付加入力顔データ300と、記憶部1420に予め格納された登録顔データ600とを照合し、当該ノイズ付加入力顔データ300が登録顔データ600のいずれかと一致するか否かを判定する。そして、当該ノイズ付加入力顔データ300と一致する登録顔データ600が存在する場合は、一致した登録顔データ600の登録顔画像620および登録属性情報630に、認証済み顔画像識別子710を付与して、図10に示す認証済み登録顔データ700を作成し、送受信部1410およびネットワーク1200を介して、報知装置1500の受信部1510に送信する。
【0063】
入力用データ処理部1430におけるノイズ付加入力顔データ300と登録顔データ600との一致判定は、ノイズ付加入力顔データ300のノイズ付加顔データ320と登録顔データ600の登録顔画像620とを照合し、多層ニューラルネットワーク1440から出力される特徴量の類似度の閾値判定などによって行う。
【0064】
入力用データ処理部1430は、画像処理装置1300が出力したノイズ付加入力顔データ300のノイズ付加顔データ320を学習済みの多層ニューラルネットワーク1440に入力して、照合用に入力画像特徴量を抽出し、さらに、記憶部1420に格納されている登録顔データ600の登録顔画像620を当該多層ニューラルネットワーク1440に入力して照合用に登録画像特徴量を抽出し、当該入力画像特徴量と当該登録画像特徴量を照合して、両者の一致判定を行う。
【0065】
多層ニューラルネットワーク1440に予め用意した大量の学習用顔画像データを入力して特徴量を算出し、当該特徴量のペアが同一人物のものである場合は類似度が大きくなり、異なる人物のものであれば類似度が小さくなるように、多層ニューラルネットワーク1440を学習しておく(データ処理タスクの学習)。
【0066】
具体的には、顔画像がどの人物のものであるかを識別するための人物識別子が予め付与された大量の学習用顔画像データを入力部1610により受け付け、学習部1630が、多層ニューラルネットワーク1440を学習し、学習結果を、記憶部1420に格納する。なお、人物識別子が、データ処理タスクの学習結果の一例である。
【0067】
学習部1630は、データ処理タスクの学習に加え、さらに、ノイズ付加手段1312の説明で述べたように、当該多層ニューラルネットワーク1440の前段の畳み込み層のフィルタ3010と、ノイズブロック3020とが直交するようにも学習を行う(直交制約学習)。
【0068】
データ処理タスクの学習では、例えばVGG16等の一般的な深層学習用モデルに、学習用顔画像データに含まれる人物識別子と同数の出力をもつ全結合層を接続し、人物識別子に対応した出力を1としたone-hotベクトルを教師データとしてデータ処理タスク用損失値lossMを算出し、lossMが小さくなるように学習を進めればよい。
【0069】
具体的には、ソフトマックス関数を用いて全結合層の出力を確率出力に変換し、教師データとのクロスエントロピーを、lossMと定義する。そして、フィルタ3010毎に、lossMを、当該フィルタ3010の要素の値で微分した微分値に基づいて、lossMが小さくなるように、フィルタ3010の要素の値を学習すればよい。
【0070】
直交制約学習では、多層ニューラルネットワーク1440の前段の畳み込み層におけるフィルタ3010の重みベクトルと、ノイズブロック3020の重みベクトルとの非直交度を表す直交制約用損失値lossCを、上記(1)式に従って算出し、lossCが小さくなるように学習を進めればよい。
【0071】
あるいは、多層ニューラルネットワーク1440の前段の畳み込み層におけるフィルタ3010の重みベクトルと、ノイズブロック3020の重みベクトルとの成す角度θの余弦値(cosθ)を非直交度の指標とし、当該余弦値の絶対値と、直角の場合の正解の余弦値(ゼロ)との差分絶対値を直交制約用損失値lossCとして算出し、lossCが小さくなるように学習を進めてもよい。
【0072】
具体的には、ノイズブロック3020毎に、全てのフィルタ3010に関するlossCの和を、当該ノイズブロック3020の要素の値で微分した微分値に基づいて、lossCの和が小さくなるように、当該ノイズブロック3020の要素の値を学習すればよい。
【0073】
なお、データ処理タスク用損失値lossMと直交制約用損失値lossCを、バランス係数αを用いて統合した全体損失値lossTを求め、当該全体損失値lossTが小さくなるように学習を行うことにより、データ処理タスクの学習と直交制約学習を同時に進めることができる。
【0074】
【数2】

(2)
【0075】
以上の制約付き学習の様子を図11に示す。
【0076】
具体的には、学習部1630は、図11に示すように、多層ニューラルネットワーク1440に大量の学習用顔画像データを入力して算出される特徴量を用いて計算されるデータ処理タスク用損失値lossMと、多層ニューラルネットワーク1440の前段の畳み込み層におけるフィルタ3010の重みベクトルと、ノイズブロック3020の重みベクトルとを用いて計算される直交制約用損失値lossCとを統合した全体損失値lossTが小さくなるように、多層ニューラルネットワーク1440及びノイズブロック3020の学習を行う。
【0077】
例えば、フィルタ3010毎に、全てのノイズブロック3020に関する全体損失値lossTの和を、当該フィルタ3010の要素の値で微分した微分値に基づいて、全体損失値lossTの和が小さくなるように、当該フィルタ3010の要素の値を学習すること(図11の1111参照)と、ノイズブロック3020毎に、全てのフィルタ3010に関するlossTの和を、当該ノイズブロック3020の要素の値で微分した微分値に基づいて、lossTの和が小さくなるように、当該ノイズブロック3020の要素の値を学習し、フィルタ3010毎に、全てのノイズブロック3020に関するlossTの和を、当該フィルタ3010の要素の値で微分した微分値に基づいて、lossTの和が小さくなるように、当該フィルタ3010の要素の値を学習すること(図11の1112参照)と、を交互に繰り返す。
【0078】
(報知装置1500)
報知装置1500は、CPU、MPU、周辺回路、端子、各種メモリ、表示用モニタなどから構成され、画像処理装置1300から送信された入力顔データ200と、顔認証装置1400から送信された認証済み登録顔データ700から、認証履歴作成部1520で認証履歴データを作成し、記憶部1530に格納する。記憶部1530に格納した認証履歴データは、報知部1540に表示される。
【0079】
(受信部1510)
受信部1510は、画像処理装置1300が送信した入力顔データ200、および、顔認証装置1400が送信した認証済み登録顔データ700を受信し、認証履歴作成部1520に出力する。
【0080】
(認証履歴作成部1520)
認証履歴作成部1520は、受信部1510を介して受信した入力顔データ200と認証済み登録顔データ700から認証履歴データを作成し、記憶部1530に格納する。
【0081】
図12に認証履歴データ800の構成を示す。認証履歴データ800の作成に際しては、まず、入力顔データ200の顔画像識別子210と、認証済み登録顔データ700の認証済み顔画像識別子710を突合し、同一の顔画像識別子を持つ入力顔データ200と認証済み登録顔データ700を選択する。そして、選択した入力顔データ200の入力顔画像220と撮影時刻230、認証済み登録顔データ700の登録顔画像620と登録属性情報630を連結し、入力顔画像810、撮影時刻820、登録顔画像830、及び登録属性情報840から構成される認証履歴データ800を作成する。
【0082】
(記憶部1530)
記憶部1530は、認証履歴作成部1520が作成した認証履歴データ800を格納する。格納する認証履歴データ800の上限数は、記憶部1530の容量に基づいて決定し、格納している認証履歴データ800の数が上限を超えた場合は、認証履歴データ800の撮影時刻820を参照して、認証履歴データ800の数が上限数に戻るまで古い履歴から順に削除する。
【0083】
(報知部1540)
報知部1540は、記憶部1530に格納された認証履歴データ800から、報知用画像を作成し、報知部1540を構成する表示用モニタ等に表示する。
【0084】
図13に報知用画像900の作成例を示す。図13の例では、認証履歴データ800に含まれる入力顔画像810、登録顔画像830、撮影時刻820、登録属性情報840を、夫々報知情報910、920、930、940として並べて配置し、画像化している。これにより、オペレータが、目視で、登録人物が検知されたか否かを確認する。
【0085】
<顔認証システムの動作>
以下、図14図17に示したフローチャートを参照しつつ、本発明を適用した顔認証システム1000の動作を説明する。なお、顔認証装置1400の記憶部1420に登録顔データ600が予め格納されている場合を例に説明する。
【0086】
図14に示す顔認証装置1400の学習処理は事前に実行される。学習処理では、最初に、入力部1610により、顔認証システム1000の撮像装置1100から取得した、監視対象領域を映した監視画像から抽出された顔画像であって、一致すべき登録顔データ600の登録顔画像識別子610が予め付与された、大量の学習用顔画像データを受け付ける(ステップS1010)。
【0087】
そして、学習用顔画像データ毎に、顔画像を、多層ニューラルネットワーク1440に入力して、学習用に画像特徴量を抽出する(ステップS1030)。
【0088】
そして、学習用の画像特徴量とノイズブロックとを用いて、lossTを計算する(ステップS1040)。計算されたlossTに基づいて、lossTを最適化するように、ノイズブロック及び多層ニューラルネットワーク1440のフィルタ群を学習する(ステップS1050)。
【0089】
そして、ノイズブロック及び多層ニューラルネットワーク1440のフィルタ群の学習が収束したか否かを判定し(ステップS1060)、例えば、上記ステップS1030~S1050の繰り返し回数が上限回数に到達した場合に、当該学習が収束したと判定し、ステップS1070へ移行する。一方、上記ステップS1030~S1050の繰り返し回数が上限回数に到達していない場合に、当該学習が収束していないと判定し、上記ステップS1030へ戻る。
【0090】
そして、最終的に学習されたノイズブロック及び多層ニューラルネットワーク1440のフィルタ群を記憶部1420に格納し、学習処理を終了する。
【0091】
そして、記憶部1420に格納されたノイズブロックのデータが、送受信部1410により、ネットワーク1200を介して、画像処理装置1300へ送信され、画像処理装置1300の記憶部1320に、ノイズブロックのデータが格納される。
【0092】
図15に示す画像処理装置1300の検知処理は、監視画像を1枚取得するごとに実行される。検知処理では、最初に、撮像装置1100から、監視対象領域を映した監視画像を取得する(ステップS1110)。そして、画像処理部1310の顔画像取得手段1311は当該監視画像から顔画像を抽出する(ステップS1120)。顔画像取得手段1311は、1つ以上の顔画像が抽出されたか否かを判定し(ステップS1130)、顔画像が全く抽出されなかった場合には以降の処理を行わず、検知処理を終了する。一方、1つ以上の顔画像が抽出された場合、顔画像取得手段1311は検出した顔画像から入力顔データ200を作成して記憶部1320に記憶した後、ステップS1140に処理を移行させる。
【0093】
以下のステップS1140~S1150の処理は、顔画像取得手段1311が抽出した顔画像ごとに行われる。
【0094】
ノイズ付加手段1312は、記憶部1320に記憶されているノイズブロックのデータを用いて、顔画像取得手段1311が作成した入力顔データ200にノイズを付加し、ノイズ付加入力顔データ300を作成する(ステップS1140)。この際、入力顔データ200の入力顔画像220に対して、ノイズブロックを並べて配置したノイズ画像を加算することにより、目視による識別が困難なノイズ付加顔データ320を含むノイズ付加入力顔データ300を作成する。次に、作成したノイズ付加入力顔データ300を顔認証装置1400に送信する(ステップS1150)。
【0095】
全ての顔画像についてステップS1140~1150の処理が終わると、画像処理部1310は、検知処理を終了する。
【0096】
ノイズ付加入力顔データ300を受信した顔認証装置1400は、図16に示す照合処理を行う。なお、以下に説明する図16の顔認証装置1400の動作は、ノイズ付加入力顔データ300を1つ受信するごとに実行される。
【0097】
顔認証装置1400は、記憶部1420に予め登録されている全ての登録顔データ600と、受信したノイズ付加入力顔データ300とを照合する(ステップS1210)。照合には、学習済みの多層ニューラルネットワーク1440を使用して、受信したノイズ付加入力顔データ300の特徴量と登録顔データ600の特徴量とを比較し、両者の類似度を計算する。照合の結果得られた最大の類似度が所定の認証閾値以上であるかを判定し(ステップS1220)、認証閾値以上であった場合、受信したノイズ付加入力顔データ300と最大の類似度を示した登録顔データ600は同一人物に由来すると判定し、当該登録顔データ600を報知装置1500に送信し(ステップS1230)、照合処理を終了する。
【0098】
また、入力顔データ200と登録顔データ600とを受信した報知装置1500は、図17に示す報知処理を行う。なお、以下に説明する図17の報知装置1500の動作は、入力顔データ200と登録顔データ600のペアを1つ受信するごとに実行される。
【0099】
入力顔データ200と登録顔データ600を受信した報知装置1500は、入力顔データ200と登録顔データ600を用いて認証履歴データ800を作成し(S1310)、認証履歴データ800に係る特定人物の検知を報知して(S1320)、報知処理を終了する。例えば、報知装置1500が備える表示部(図示しない)から認証履歴データ800に係る報知用画像900を表示出力することにより報知する。
【0100】
以上説明してきたように、本発明の実施の形態に係る顔認証システム1000では、画像処理装置1300は、入力顔画像に対してノイズ画像を加算して得られたノイズ付加顔データを、顔認証装置1400へ送信する。顔認証装置1400は、ノイズ付加顔データと登録顔画像とを、多層ニューラルネットワークを用いて照合する。ここで、顔認証装置1400は、予め、学習用顔画像データを畳み込みニューラルネットワークに入力して、多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタと、ノイズ画像(フィルタを所定のストライドで畳み込む場合は、当該畳み込む各領域に対応するノイズ画像の領域)とが直交性を有し、かつ、多層ニューラルネットワークにより求められる登録人物に対応した確率出力と、同一人物に対応する出力要素のみ1となるone-hotベクトルの教師データとのクロスエントロピーとして算出する損失値が小さくなるように学習しておく。これにより、入力顔データにノイズを付加しても、多層ニューラルネットワークを用いた顔認証タスクを精度よく行うことができる。
【0101】
また、画像処理装置1300は、撮像画像から抽出した人物画像に対して顔認証装置1400にて照合を行う多層ニューラルネットワーク1440に含まれる前段の畳み込み層のフィルタ3010と直交性を有するよう予め学習されたノイズブロック3020に基づくノイズ画像を付加することにより生成される、顔画像の被写体を目視で識別することが困難なノイズ付加入力顔データ300を顔認証装置1400に送信する。これにより、多層ニューラルネットワーク1440を用いた照合処理を、精度を低下させずに実行するとともに、顔認証装置1400から、ノイズ付加入力顔データ300に対応する認証済み顔画像識別子を受信した場合、当該認証済み顔画像識別子に対応する入力顔データ200を報知装置1500に送信することにより、無関係な人物のプライバシーに配慮して検知対象者の顔画像データを取得することができる。すなわち、監視画像に映る人物が、予め顔登録済みの人物であるか否かを、目視による識別性が低いノイズ付加情報によって判定し、顔登録済みの人物の情報に限って、顔画像などの識別性の高い情報を記録、報知することが可能となる。なお、本実施の形態では、顔画像を用いて顔認証しているが、これに限らず、人物領域を示す人物画像を用いて、顔だけでなく体格や服装等の類似度も含めた人物認証を行ってもよい。
【0102】
また、ローカルに設置した撮像装置1100で撮影した人物画像を、ネットワーク経由で顔認証装置1400に伝送し、特定人物の認証や検知を行うネットワーク型の顔認証システム1000に関し、被撮影者のプライバシーに配慮したデータ伝送方式を実現することができる。
【0103】
<変形例>
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、本実施形態では、画像処理装置1300が、認証済み顔画像識別子に対応する入力顔データ200を報知装置1500に送信する場合を例に説明したが、これに限定されるものではなく、他の装置、例えば、顔認証装置1400に送信するようにしてもよい。
【0104】
また、本実施形態では、ノイズ付加手段1312は、顔画像取得手段1311が作成した入力顔画像220に対してノイズブロック3020に基づくノイズ画像を付加したが、それに先立ち、入力顔画像220に対してランダム画素欠落又はランダムノイズ付加を施したうえで、ノイズブロック3020を付加してもよい。例えば、入力顔画像220の画素のうちランダムに決定される画素を欠落させてから、ノイズブロック3020を並べたノイズ画像を加算したり、入力顔画像220にランダムノイズを付加してから、ノイズブロック3020を並べたノイズ画像を加算するようにしてもよい。
【0105】
ただし、入力顔画像220に対してランダム画素欠落又はランダムノイズ付加を施した画像に対する照合精度は、多層ニューラルネットワーク1440の学習時に確保しておくことが好ましい。すなわち、学習用顔画像データに対して、ランダム画素欠落やランダムノイズ付加を施した上で、多層ニューラルネットワーク1440に、学習用顔画像データを入力して登録人物に対応した照合確率を出力し、同一人物に対応する出力要素のみ1となるone-hotベクトルの教師データとのクロスエントロピーとして算出する損失値が小さくなるように学習しておけばよい。この際、入力顔画像220に対して施されるランダム画素欠落の割合(全画素数に対する欠落の割合)又はランダムノイズ付加の強さは、学習用画像データに対して施されたものと同程度とすることが好適である。このように、入力顔画像220に対してランダム画素欠落やランダムノイズ付加を施す処理を行うことで、入力顔画像220に対するノイズ付加に加え、さらにノイズブロック3020自体の周期性などの特性をも隠すことが可能となり、ノイズブロックの値を解析しにくくすることができる。
【0106】
また、本実施形態では、ノイズ付加手段1312は、顔画像取得手段1311が作成した入力顔画像220に対してノイズブロック3020を付加したが、複数の異なるサイズのノイズブロック3020を同時に、かつ同様に学習しておき、それぞれのノイズブロック3020を配置したノイズ画像の各々を、重畳して入力顔画像220に付加してもよい。複数の異なるサイズのどちらの当該ノイズブロックも多層ニューラルネットワーク1440のフィルタ3010と直交するよう学習できているため、両者を重畳してもそのノイズの影響を排除でき、データ処理タスクに影響しない。このように、一つのノイズブロック群に含まれる各ノイズブロック以外のノイズ画像のバリエーションを増やすことができる。また、異なるサイズのノイズブロックから作成したノイズ画像を合成することにより、見かけのノイズ周期を大きくカモフラージュすることができ、ノイズの特性を目視で推測しにくくすることが可能となる。例えば、ノイズブロックのサイズとして、5×5、3×3の2つのバリエーションを考える。すると、単独のノイズブロックとしてはそれぞれ、5、および3のノイズ周期であるが、各ノイズブロックを重畳加算した合成ノイズ画像ではノイズ周期が5×3=15となり、また、当該合成ノイズ画像を構成するペアのバリエーションも、25パターン(5×5)×9パターン(3×3)=225パターンに増やすことができる。
【0107】
また、ノイズ画像全体に任意の重みを乗じた上で入力顔画像220に付加してもよい。フィルタの畳み込む領域に対応する当該ノイズ画像の領域は、多層ニューラルネットワーク1440のフィルタ3010と直交性を有するよう学習できているため、ノイズ画像全体に任意の重みを乗算しても直交性を有したままであるため、そのノイズの影響を排除でき、データ処理タスクに影響しない。同様に、複数種類のノイズブロックの夫々に基づいて生成されたノイズ画像の各々を重畳して入力顔画像220に付加する場合についても、各ノイズ画像全体に任意の重みを乗じた上で重畳して入力顔画像220に付加してもよい。ノイズ画像に乗じる重みにより、ノイズ付加による目視識別困難性を調節できる。従って、所定のS/N比に基づいて任意の重みの値を設定したり、S/N比を基準に任意の重みの値を決定すればよい。さらに、重みの値をランダムに設定してもよいし、抽出した顔画像領域毎に異なる重みの値を設定してもよい。
【0108】
さらに、本実施形態では、ノイズ付加手段1312は、顔画像取得手段1311が作成した入力顔画像220に対してノイズブロック3020を付加したが、ノイズブロック3020の学習の際に、ノイズブロックの各要素の値の大きさや空間的バラツキが所定の範囲に収まるような制約を追加することでノイズブロックの特定の要素が目立つことがないように、すなわちノイズブロックの周期性を目立ちにくくしてもよい。
【0109】
また、本実施形態では、データ処理タスクとして、顔画像を用いた顔認証を行っているが、これに限らず、データ処理タスクとして、顔画像や人物領域画像から、性別や年齢、体格や服装等の属性情報を推定するようにしても良い。
【0110】
また、本実施の形態では、監視カメラ画像から顔画像を検出して、当該顔画像にノイズ付加を施し画像処理を行うとしたが、監視カメラ画像全体にノイズ付加を施し、顔領域検出や人物の姿勢推定、人物の密度推定といった画像処理を、ノイズ付加画像に対して行う構成としても良い。
【0111】
また、学習部1630が、顔認証装置1400とは別の学習装置に設けられ、当該学習装置で学習された多層ニューラルネットワーク1440が、顔認証装置1400に記憶されるようにしてもよい。
【0112】
また、入力データが、画像である場合を例に説明したが、これに限定されるものではなく、入力データが、画像以外のデータであってもよい。例えば、入力データが、音声データであって、データ処理タスクが、音声認識又は話者認識であってもよい。この場合には、音声データから求められるスペクトルデータに対してノイズブロックを並べたノイズデータを加算することによりノイズ付加し、畳み込み層を含む多層ニューラルネットワークを用いて、音声認識又は話者認識を行えばよい。あるいは、音声信号に対してノイズブロックを時系列方向に並べたノイズデータを加算することによりノイズ付加し、畳み込み層を含む多層ニューラルネットワークを用いて、特徴量を求め、当該特徴量から、RNN(Recurrent Neural Networks)を用いて、音声認識を行えばよい。
【0113】
また、ノイズブロックを左上から隙間なく敷き詰めるように並べて配置したノイズ画像を加算してノイズ付加を行う場合を例に説明したが、これに限定されるものではない。例えば、多層ニューラルネットワークに含まれる前段の畳み込み層で用いられるフィルタ群のストライドが該フィルタサイズを超える場合、フィルタをずらす前後で、フィルタ間には「ストライド値-フィルタサイズ」の隙間が生じる。例えば、フィルタのサイズが3×3、ストライドが4とすると、畳み込み演算時に適用されるフィルタ間には、4-3=1の隙間が生じる。この隙間の部分では畳み込み演算がスキップされるため、ノイズブロックをこの隙間の分だけ離して配置したノイズ画像を加算してノイズ付加を行ってもよい。この場合に、ノイズ画像に配置されたノイズブロックの隙間となる部分の値は所定値(例えば、0)又はランダムに設定された画素値となる。なお、このようにノイズブロックを離して配置可能なストライドの場合は、複数のノイズブロックをまたぐような畳み込み演算を回避できるため、ノイズブロック学習の際、必ずしもノイズブロックの要素をシフトさせて派生ノイズブロックを生成する必要はない。
【0114】
また、入力画像とノイズ画像との位置を合わせて加算する場合を例に説明したが、これに限定されるものではない。例えば、ノイズ画像を、オフセット値だけX軸方向及びY軸方向の少なくとも一方向にずらしてから、入力画像に加算するようにしてもよい。これにより、入力画像とノイズ画像の同じペアであっても、ノイズ付加画像のバリエーションを増やすことができる。ただし、ノイズ付加画像中で、当該オフセットに相当する部分では、ノイズが付加されていない領域(ノイズ未適用領域)が生じるため、フィルタとの直交性は確保されなくなる。したがって、当該ノイズ付加画像を多層ニューラルネットワークに入力して、多層ニューラルネットワークに含まれる前段の畳み込み層で畳み込み演算を行う際は、このノイズ未適用領域とノイズ適用領域が混在する領域の畳み込み演算結果は、データ処理タスクの性能を低下させる可能性がある。そこで、例えば、畳み込み層のフィルタを、オフセット分ずらした位置より適用開始し、ノイズ画像を加算した領域でのみ畳み込み処理を実行するようにすればよい。そのためには、オフセット分ずらしてデータ処理タスクの学習を行い、同じオフセットの条件下でデータ処理タスク精度を高めておくことが望ましい。以上の処理で、このオフセットの影響を排除可能となる。
【0115】
以上のように、当業者は本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【0116】
1000 顔認証システム
1100 撮像装置
1110 顔画像
1120 人物
1200 ネットワーク
1300 画像処理装置
1310 画像処理部
1311 顔画像取得手段
1312 ノイズ付加手段
1320 記憶部
1330 送受信部
1400 顔認証装置
1410 送受信部
1420 記憶部
1430 入力用データ処理部
1440 多層ニューラルネットワーク
1610 入力部
1630 学習部
3010 フィルタ
3020 ノイズブロック
3030 ノイズ付加画像
3200、3310 ノイズ画像
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17