(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-23
(45)【発行日】2024-09-02
(54)【発明の名称】学習済みモデル及びデータ処理装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20240826BHJP
G06N 3/04 20230101ALI20240826BHJP
G06N 20/00 20190101ALI20240826BHJP
【FI】
G06T7/00 350B
G06N3/04
G06N20/00 130
(21)【出願番号】P 2020176698
(22)【出願日】2020-10-21
【審査請求日】2023-08-28
(73)【特許権者】
【識別番号】000108085
【氏名又は名称】セコム株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】野坂 龍佑
【審査官】佐田 宏史
(56)【参考文献】
【文献】特開2020-149530(JP,A)
【文献】国際公開第2018/173848(WO,A1)
【文献】特開2014-130427(JP,A)
【文献】特開2017-058930(JP,A)
【文献】尾原 啓司、外3名,“解像度推定を用いたダウンサンプリングによる低画質人物認識”,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2016年12月08日,No.116, No.366,pp.65-70
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00,7/00-7/90
G06V 10/00-10/98
G06N 3/04,20/00
(57)【特許請求の範囲】
【請求項1】
対象データを入力とし、前記対象データの質を推定する際に得られる前記対象データの質に関するパラメータを用いて、対象データの処理結果を出力するための学習済みモデルであって、
データ用入力手段、データ用出力手段、及び前記データ用入力手段と前記データ用出力手段の間に設けられるデータ用中間手段を有する畳み込みニューラルネットワークであり、
前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数は、前記対象データの質に関するパラメータに応じて決定され、
前記学習済みモデルのパラメータは、学習用の対象データ、当該
学習用の対象データの正解処理結果、及
び当該
学習用の対象データの質に関するパラメータを訓練データセットとして用いて
学習されたものであり、
コンピュータを、
前記畳み込みニューラルネットワークの前記データ用入力手段に入力された前記対象データに対して、前記訓練データセットを用いて学習された前記学習済みモデルのパラメータと、前記対象データの質に関するパラメータに応じて決定された前記データ用中間手段の畳み込み処理で用いられるフィルタの前記フィルタ係数と、に基づく演算を行い、前記データ用出力手段から前記対象データの処理結果を出力するよう、機能させることを特徴とする学習済みモデル。
【請求項2】
前記対象データは、画像であり、
前記質は、画像圧縮に関するパラメータ、画像の鮮鋭性に関するパラメータ、偽色に関するパラメータ、インターレース方式に関するパラメータ、イメージセンサーのノイズに関するパラメータ、カメラ情報に関するパラメータ、解像度に関するパラメータ、レンズ歪みに関するパラメータ、フレームの種別に関するパラメータ、色かぶりに関するパラメータ、及びコントラストに関するパラメータの少なくとも一つを含む請求項
1に記載の学習済みモデル。
【請求項3】
データ用入力手段、データ用中間手段およびデータ用出力手段を含むデータ処理部と、
対象データの質を推定するための質推定部と
を備えるデータ処理装置であって、
前記データ用入力手段は、対象データを取得し、
前記データ用中間手段は、前記データ用入力手段の出力と、前記質推定部から出力された前記対象データの質に関するパラメータとが入力され、
前記データ用出力手段は、前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力し、
前記データ処理部は、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び前記質推定部から出力された当該対象データの質に関するパラメータを訓練データセットとして用いて学習され、
前記データ処理部に、対象データ及び前記質推定部から出力された当該対象データの質に関するパラメータを入力することで前記対象データの処理を行う
データ処理装置
であり、
前記データ処理部は、前記データ用入力手段、前記データ用出力手段、及び前記データ用入力手段と前記データ用出力手段の間に設けられる前記データ用中間手段を有する畳み込みニューラルネットワークであり、
前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数は、前記対象データの質に関するパラメータに応じて決定され、
前記データ処理部は、前記対象データの質に関するパラメータに応じて前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数を決定し、前記対象データ及び前記フィルタ係数に基づく演算を行い、前記対象データの処理結果を出力する、データ処理装置。
【請求項4】
データ用入力手段、データ用中間手段、及びデータ用出力手段を含むデータ処理部を備えるデータ処理装置であって、
前記データ用入力手段は、対象データ及び当該対象データの質に関するパラメータを取得し、
前記データ用中間手段は、前記データ用入力手段の出力である前記対象データ及び当該対象データの質に関するパラメータが入力され、
前記データ用出力手段は、前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力し、
前記データ処理部は、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び当該対象データの質に関するパラメータを訓練データセットとして用いて学習され、
前記データ処理部に、対象データ及び当該対象データの質に関するパラメータを入力することで前記対象データの処理を行う
データ処理装置
であり、
前記データ処理部は、前記データ用入力手段、前記データ用出力手段、及び前記データ用入力手段と前記データ用出力手段の間に設けられる前記データ用中間手段を有する畳み込みニューラルネットワークであり、
前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数は、前記対象データの質に関するパラメータに応じて決定され、
前記データ処理部は、前記対象データの質に関するパラメータに応じて前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数を決定し、前記対象データ及び前記フィルタ係数に基づく演算を行い、前記対象データの処理結果を出力する、データ処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対象データの処理結果を出力するための学習済みモデル及びデータ処理装置に関する。
【背景技術】
【0002】
画像から所定の対象物を認識する技術として、非特許文献1のようなCNN(convolutional neural networks)を用いた手法がある。非特許文献1はCNNを用い、画像に写る対象物の位置・大きさ、種別などを推定する。
【先行技術文献】
【非特許文献】
【0003】
【文献】Ren, Shaoqing, et al. "Faster R-CNN: towards real-time object detection with region proposal networks." IEEE transactions on pattern analysis and machine intelligence 39.6 (2017): 1137-1149.
【発明の概要】
【発明が解決しようとする課題】
【0004】
非特許文献1のような手法では、学習に用いる画像は高画質で撮影されており、入力画像にブロックノイズ、ピンボケなどの画質劣化があると認識性能が低下する問題がある。その対応策として、学習に用いる画像にノイズを加え、入力画像で想定される画質劣化と同様の画質劣化を再現することが考えられる。一方で多種多様なカメラや設置状況において認識処理をする場合、それぞれで異なる画質劣化が発生するため、非常に幅広いノイズとして数多くの種類のノイズを付与して学習することになり、単一のCNNだけではカバーしきれず、認識性能が低下する問題があった。
【0005】
そこで、本発明では、上記問題を鑑みてなされたものであり、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる学習済みモデル及びデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記の目的を達成するために第1の発明に係る学習済みモデルは、対象データを取得するデータ用入力手段、前記データ用入力手段の出力と、前記対象データの質を推定するための質推定部から出力された前記対象データの質に関するパラメータとが入力されるデータ用中間手段、及び前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力するデータ用出力手段を備えたデータ処理部を含む学習済みモデルであって、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び前記質推定部から出力された当該対象データの質に関するパラメータを訓練データセットとして用いて学習されたモデルである。
【0007】
第1の発明に係る学習済みモデルによれば、推定された対象データの質に関するパラメータをデータ処理時に用いるため、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる。
【0008】
また、前記質推定部は、質推定部学習用の対象データ及び当該対象データの質を質推定部学習用の訓練データセットとして用いて学習されることができる。
【0009】
また、前記質推定部は、さらに前記データ処理部学習用の対象データ及び当該対象データの質を前記質推定部学習用の訓練データセットに含めて学習されることができる。
【0010】
第2の発明に係る学習済みモデルは、対象データ及び当該対象データの質に関するパラメータを取得するデータ用入力手段と、前記データ用入力手段の出力として、前記対象データ及び当該対象データの質に関するパラメータが入力されるデータ用中間手段と、前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力するデータ用出力手段とを備えたデータ処理部を含む学習済みモデルであって、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び当該対象データの質に関するパラメータを訓練データセットとして用いて学習されたモデルである。
【0011】
第2の発明に係る学習済みモデルによれば、入力された対象データの質に関するパラメータをデータ処理時に用いるため、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる。
【0012】
また、前記データ処理部は、前記データ用入力手段、前記データ用出力手段、及び前記データ用入力手段と前記データ用出力手段の間に設けられる前記データ用中間手段を有するニューラルネットワークであり、前記対象データの質に関するパラメータに応じて前記データ用中間手段の出力が決定されることができる。
【0013】
また、前記データ処理部は、畳み込みニューラルネットワークであって、前記データ用中間手段の畳み込み処理で用いられるフィルタのフィルタ係数は、前記対象データの質に関するパラメータに応じて決定されることができる。
【0014】
また、前記対象データは、画像であり、前記質は、画像圧縮に関するパラメータ、画像の鮮鋭性に関するパラメータ、偽色に関するパラメータ、インターレース方式に関するパラメータ、イメージセンサーのノイズに関するパラメータ、カメラ情報に関するパラメータ、解像度に関するパラメータ、レンズ歪みに関するパラメータ、フレームの種別に関するパラメータ、色かぶりに関するパラメータ、及びコントラストに関するパラメータの少なくとも一つを含むことができる。
【0015】
第3の発明に係るデータ処理装置は、データ用入力手段、データ用中間手段およびデータ用出力手段を含むデータ処理部と、対象データの質を推定するための質推定部とを備えるデータ処理装置であって、前記データ用入力手段は、対象データを取得し、前記データ用中間手段は、前記データ用入力手段の出力と、前記質推定部から出力された前記対象データの質に関するパラメータとが入力され、前記データ用出力手段は、前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力し、前記データ処理部は、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び前記質推定部から出力された当該対象データの質に関するパラメータを訓練データセットとして用いて学習され、前記データ処理部に、対象データ及び前記質推定部から出力された当該対象データの質に関するパラメータを入力することで前記対象データの処理を行う。
【0016】
第3の発明に係るデータ処理装置によれば、推定された対象データの質に関するパラメータをデータ処理時に用いるため、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる。
【0017】
第4の発明に係るデータ処理装置は、データ用入力手段、データ用中間手段、及びデータ用出力手段を含むデータ処理部を備えるデータ処理装置であって、前記データ用入力手段は、対象データ及び当該対象データの質に関するパラメータを取得し、前記データ用中間手段は、前記データ用入力手段の出力である前記対象データ及び当該対象データの質に関するパラメータが入力され、前記データ用出力手段は、前記データ用中間手段の出力が入力され、前記対象データの処理結果を出力し、前記データ処理部は、データ処理部学習用の対象データ、当該対象データの正解処理結果、及び当該対象データの質に関するパラメータを訓練データセットとして用いて学習され、前記データ処理部に、対象データおよび当該対象データの質に関するパラメータを入力することで前記対象データの処理を行う。
【0018】
第4の発明に係るデータ処理装置によれば、入力された対象データの質に関するパラメータをデータ処理時に用いるため、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる。
【発明の効果】
【0019】
以上説明したように、本発明に係る学習済みモデル及びデータ処理装置によれば、対象データの質に応じたデータ処理が可能となり、様々な質劣化がありうる環境での処理精度の向上が可能となる、という効果が得られる。
【図面の簡単な説明】
【0020】
【
図1】本発明の実施の形態に係る質推定器学習装置の構成を示すブロック図である。
【
図2】本発明の実施の形態に係る質推定器学習装置の質推定器学習手段の構成を示すブロック図である。
【
図3】本発明の実施の形態に係るデータ処理器学習装置の構成を示すブロック図である。
【
図4】本発明の実施の形態に係るデータ処理器学習装置のデータ処理器学習手段の構成を示すブロック図である。
【
図5】データ処理器の特徴合成部の構成を示すブロック図である。
【
図6】本発明の実施の形態に係るデータ処理装置の構成を示すブロック図である。
【
図7】本発明の実施の形態に係るデータ処理装置の認識手段の構成を示すブロック図である。
【
図8】本発明の実施の形態に係る質推定器学習装置による学習処理の動作を示すフローチャートである。
【
図9】本発明の実施の形態に係るデータ処理器学習装置による学習処理の動作を示すフローチャートである。
【
図10】本発明の実施の形態に係るデータ処理装置による認識処理の動作を示すフローチャートである。
【
図11】本発明の実施の形態の他の例に係るデータ処理器学習装置のデータ処理器学習手段の構成を示すブロック図である。
【
図12】本発明の実施の形態の他の例に係るデータ処理器学習装置のデータ処理器学習手段の構成を示すブロック図である。
【
図13】本発明の実施の形態の他の例に係るデータ処理装置の認識手段の構成を示すブロック図である。
【発明を実施するための形態】
【0021】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、データ処理システムの実施形態の一例として、質推定器学習装置、データ処理器学習装置、及びデータ処理装置を備えたシステムについて説明する。また、本実施形態において、対象データは画像であり、データ処理は物体検出であり、対象データの質は画質である場合を例に説明する。
【0022】
質推定器学習装置は、入力画像の画質を推定する質推定器を構築する。データ処理器学習装置は、入力画像内に写っている対象物の位置とカテゴリを推定するデータ処理器を構築する。データ処理装置は、質推定器学習装置で作成された質推定器とデータ処理器学習装置で作成されたデータ処理器を用いて、対象物が存在しうる空間が撮影された画像に写った対象物を認識し、認識結果を報知する。対象物の認識では、対象物の外接矩形とカテゴリを推定する。
【0023】
なお、本実施形態では対象物を人とする例を説明するが、本発明は、人の上半身などの人体の一部を対象物としてもよいし、車両などの人以外の物体を対象物としてもよい。また、対象物は人、車、自転車など、複数設定しても良い。また、質推定器は、質推定部の一例である。データ処理器は、データ処理部の一例である。
データ処理システムの各装置の構成について順に説明する。
【0024】
<質推定器学習装置の構成>
質推定器学習装置は、事前に用意した質推定器学習用の学習データを用いて、入力画像の画質を推定する質推定器を学習する装置である。
図1に質推定器学習装置2のブロック図を示す。質推定器学習装置2は、質推定器用学習データ記憶手段20、画質劣化手段21、質推定器学習手段22、及び学習済みモデル記憶手段23を含んで構成される。
【0025】
質推定器用学習データ記憶手段20には、質推定器学習用の多数の画像が格納されている。この画像は、画質の劣化が少ない、高画質な画像である。
ここで本発明において高画質な画像とは、ノイズが重畳されていない、JPEG等の圧縮によるブロックノイズが存在していない、偽色が発生していない、などの物体検出の阻害要因がない画像を指す。
【0026】
画質劣化手段21は、質推定器用学習データ記憶手段20から質推定器学習用画像を読み込み、学習用劣化画像を作成する。学習用劣化画像は、様々な画質を変化させる処理を付加することで作成する。本実施形態では、画質を変化させる処理として、ガウシアンフィルタ処理又はJPEG劣化処理を施す。
【0027】
ガウシアンフィルタ処理は、フィルタサイズを0,1,2,4,8,16,32,64の8種類の中からランダムに選択し、選択したフィルタサイズで入力画像にガウシアンフィルタをかける。これにより、ピンボケしたような画像を擬似的に生成できる。フィルタサイズによりボケの度合いが変化し、大きいほどボケた画像が生成される。なお、フィルタサイズが0の場合、ガウシアンフィルタ処理を行わないことを示す。
【0028】
JPEG劣化処理とは、ランダムに選択したJPEGのquality factorを用いて、入力画像をJPEG形式でエンコードし、再びデコードすることである。JPEGのquality factorは、1~100の数値で、高い値ほど高画質である。この処理により、JPEG特有のノイズを付加することができる。本実施形態では10,20,30,・・・,100の10種類のquality factorからランダムに選択し、それを用いてJPEG劣化処理を施す。
【0029】
画質劣化手段21で生成されるガウシアンフィルタの画質パラメータは、8次元のone-hotベクトルで表現される。例えば選択されたフィルタサイズが4の場合は、ガウシアンフィルタの画質パラメータは(0,0,0,1,0,0,0,0)で表現される。JPEGのquality factorの画質パラメータは10次元のone-hotベクトルで表現される。例えば、選択されたquality factorが20の場合は、JPEGのquality factorの画質パラメータは(0,1,0,0,0,0,0,0,0,0)で表現される。
【0030】
画質劣化手段21は、ガウシアンフィルタで選択されたフィルタサイズと選択されたJPEGのquality factorのそれぞれの画質パラメータを正解画質パラメータとして、高画質な画像に対して選択されたパラメータでガウシアンフィルタ処理とJPEG劣化処理の両方の処理を行った学習用劣化画像と紐づけて出力する。
【0031】
質推定器学習手段22は、画質劣化手段21から学習用劣化画像と正解画質パラメータを読み込み、質推定器学習用の訓練データセットとして用いて質推定器を学習する。つまり、質推定器は、学習用劣化画像が入力された時に、学習用劣化画像に紐づいた正解画質パラメータに近い値が出力されるように学習される。学習後、得られた質推定器を学習済みモデル記憶手段23に格納する。
【0032】
図2に示すように、質推定器学習手段22は、学習用推定部38、画質推定誤差算出部42、及びパラメータ更新部43を備えている。
学習用推定部38は、質推定器39を用いて、画質パラメータを推定する。質推定器39は、カラー画像を入力とし、推定した画質パラメータを出力するニューラルネットワークで構成される。質推定器学習装置2での質推定器39のネットワークの構造の概要を同
図2に示す。質推定器39は、画質特徴抽出部40及び画質推定部41を含んで構成される。画質特徴抽出部40は、学習用劣化画像を入力とし、画質特徴量を算出する。画質推定部41は算出された画質特徴量を入力とし、画質パラメータの推定値を出力する。
【0033】
画質特徴抽出部40及び画質推定部41は、例えば、畳み込み処理、全結合処理、ReLU関数(活性化関数)、max-pooling等にて構成されるCNNである。この構成は予め定めておき、畳み込み処理や全結合処理で用いるフィルタやバイアス等のパラメータを質推定器学習手段22にて求める。
【0034】
画質特徴抽出部40は、まず入力画像に対し、畳み込み処理、ReLU関数、及びmax-poolingを繰り返し、特徴マップを算出する。この特徴マップは、縦、横、チャネルの次元をもつ3次元数値列の形式をしている。画質特徴抽出部40は、算出された特徴マップに対して特徴マップを縦方向、横方向にて平均化するglobal average poolingを施す。これにより、特徴マップはチャネル数次元の特徴ベクトルとなる。画質特徴抽出部40は、この特徴ベクトルを画質特徴量として出力する。
【0035】
画質推定部41は、画質特徴抽出部40にて算出された画質特徴量を用いて、全結合処理及びsoftmax関数等にて、画質の種類ごとに画質パラメータの推定値(推定画質パラメータ)を算出する。本実施形態では、ガウシアンのフィルタサイズは8種類、JPEGのquality factorは10種類であり、それぞれの画質パラメータの推定は分類問題と考えられる。したがって、画質推定部41では、推定画質パラメータとして、画質の種類ごとに画質パラメータの確率値を算出する。
【0036】
ガウシアンフィルタのフィルタサイズに関する推定画質パラメータは、入力画像がどのくらいボケているかを表現した値になり、ボケていない画像に対して、どのくらいのフィルタサイズのガウシアンフィルタでボカしたものかに相当する。推定画質パラメータは8次元のベクトルで表現される。例えば、1番目の要素は入力画像がガウシアンフィルタのフィルタサイズが0で処理された画像と同程度のボケ度合いである確率を表し、2番目の要素は入力画像がガウシアンフィルタのフィルタサイズが1で処理された画像と同程度のボケ度合いである確率を表し、3番目の要素は入力画像がガウシアンフィルタのフィルタサイズが2で処理された画像と同程度のボケ度合いである確率を表す。
【0037】
JPEG劣化処理のquality factorに関する推定画質パラメータは、入力画像がJPEG劣化のような劣化がどの程度あるかを表現した値になり、圧縮していない画像に対して、どのくらいのquality factorでJPEG劣化処理をした場合であるかに相当する。推定画質パラメータは、10次元のベクトルで表現される。例えば、1番目の要素は入力画像がquality factorを10でJPEG劣化処理をした画像と同程度の劣化である確率を表し、2番目の要素は入力画像がquality factorを20でJPEG劣化処理をした画像と同程度の劣化である確率を表し、3番目の要素は入力画像がquality factorを30でJPEG劣化処理をした画像と同程度の劣化である確率を表す。なお、画像圧縮に関する画質パラメータとして、JPEG quality以外を用いてもよい。また、鮮鋭性に関する画質パラメータとして、ガウシアンフィルタサイズ以外を用いてもよい。
【0038】
画質推定部41は、具体的には、各画質パラメータの全結合処理、softmax関数から構成され、画質特徴量から画質の種類ごとに推定画質パラメータ、すなわち画質パラメータに対応する確率ベクトルを算出する。これにより、ガウシアンフィルタのフィルタサイズの推定画質パラメータとして8次元ベクトル、JPEGのquality factorの推定画質パラメータとして10次元ベクトルの確率が算出される。
【0039】
画質推定誤差算出部42は、画質劣化手段21から出力される正解画質パラメータと、画質推定部41から出力される推定画質パラメータから求まる誤差を算出する。この誤差は、画質の種類ごとに推定画質パラメータと正解画質パラメータの誤差を計算し、それらの和をとったものである。本実施形態では、ガウシアンのフィルタサイズ、JPEGのquality factorの推定を分類問題と考えるので、両画質パラメータの誤差として、分類問題の誤差として広く使われる交差エントロピー誤差を用いる。
なお、画質パラメータの推定を分類問題として扱ったが、回帰問題としてもよい。その場合、質推定器39の画質推定部41の出力値を各パラメータの確率値ではなく、各パラメータそのものを推定し、正解画質パラメータとの誤差を二乗誤差で測ればよい。これは後述の質推定器58の画質推定器61でも同様である。
【0040】
パラメータ更新部43は、画質推定誤差算出部42によって算出された誤差を最小化するように、質推定器39のパラメータを更新する。誤差の最小化には確率的勾配法を用いる。確率的勾配法による学習では、最初に画質特徴抽出部40、画質推定部41のパラメータをランダムな数値等で初期化しておく。その後、推定画質パラメータと正解画質パラメータの誤差を元に誤差逆伝播法にてパラメータの勾配を算出し、その勾配をもとに画質特徴抽出部40や画質推定部41のパラメータを更新する。質推定器学習装置2は、上記の学習データの読み込み、誤差算出、画質特徴抽出部40や画質推定部41のパラメータ更新の処理を繰り返していくことで、質推定器39の学習を行う。反復終了条件としては、例えば、誤差の変動量が事前に定めた閾値よりも小さくなったか否かや、事前に定めた反復回数に達したか否かなどを用いることができる。質推定器学習装置2は、最終的に求まった質推定器39のパラメータを、ネットワーク構造等と共に学習済み質推定器として、学習済みモデル記憶手段23に記憶する。
【0041】
上記の学習を通して、質推定器39の画質特徴抽出部40は、学習用劣化画像の画質パラメータを高精度に推定するのに適した情報を抽出できるようになる。一方、上記の学習で用いる質推定器学習用画像は画質劣化が少ない高画質な画像であるため、画質劣化手段21が出力する学習用劣化画像の画質劣化の多くは画質劣化手段21によるものである。よって、学習にて得られた画質特徴抽出部40が出力する画質特徴量は、入力画像内の画質劣化に関する情報を多く含んでおり、これをデータ処理器で利用する。なお、画質特徴量が、データ処理器に入力される質に関するパラメータの一例である。
【0042】
<データ処理器学習装置の構成>
データ処理器学習装置は、事前に用意したデータ処理器学習用の学習データを用いて、入力画像の物体位置などを推定するデータ処理器を学習する装置である。
図3にデータ処理器学習装置3のブロック図を示す。データ処理器学習装置3は、データ処理器用学習データ記憶手段30、画質劣化手段31、データ処理器学習手段32、及び学習済みモデル記憶手段33を含んで構成される。
【0043】
データ処理器用学習データ記憶手段30には、データ処理器学習用の学習データとして、画像内の対象物ごとの外接矩形(中心位置、縦幅、横幅)及び対象物のカテゴリで構成される正解対象物情報が、複数の画像の各々と紐づいて格納されている。この画像は、画質の劣化が少ない、高画質な画像である。なお、正解対象物情報が、正解処理結果の一例である。
【0044】
画質劣化手段31は、データ処理器用学習データ記憶手段30からデータ処理器学習用画像を読み込み、質推定器学習装置2の画質劣化手段21と同様に、ガウシアンフィルタ処理、JPEG劣化処理を施し、学習用劣化画像を作成する。
【0045】
データ処理器学習手段32は、画質劣化手段31から学習用劣化画像、データ処理器用学習データ記憶手段30から学習用劣化画像のもととなったデータ処理器学習用画像と紐づく正解対象物情報、学習済みモデル記憶手段33から質推定器学習装置2で得られた学習済み質推定器を読み込み、学習用劣化画像及び正解対象物情報を訓練データセットとして用いて、データ処理器49の学習を行い、得られたデータ処理器49を学習済みモデル記憶手段33に格納する。
【0046】
図4に示すように、データ処理器学習手段32は、学習用処理部47、物体検出誤差算出部55、及びパラメータ更新部56を備えている。
学習用処理部47は、質推定器48及びデータ処理器49を用いて、画像内の推定した対象物ごとの中心位置、縦幅、横幅、及び各カテゴリの確率値を出力する。
【0047】
データ処理器49はカラー画像と質推定器で算出される画質特徴量を入力とし、画像内の推定した対象物ごとの中心位置、縦幅、横幅、及び各カテゴリの確率値を出力するニューラルネットワークで構成される。データ処理器学習装置3でのデータ処理器49のネットワークの構造の概要を同
図4に示す。質推定器学習装置2で得られる質推定器は、画質特徴抽出部50及び画質推定部51を含んで構成されるが、本実施形態では画質特徴抽出部50のみ用いる。データ処理器49は、物体特徴抽出部52、特徴合成部53、及び認識部54を含んで構成される。
【0048】
画質特徴抽出部50及び物体特徴抽出部52は、学習用劣化画像を入力とし、それぞれ画質特徴量、物体特徴量を出力する。特徴合成部53は、画質特徴量と物体特徴量を合成し、それを合成特徴量として出力する。認識部54は、合成特徴量を用いて画像内の対象物情報(中心位置、縦幅、横幅、及び各カテゴリの確率値)を算出し、それを認識結果として出力する。
【0049】
データ処理器49は、データ用入力層49A、データ用中間層49B、及びデータ用出力層49Cを含んで構成されるCNNである。データ用中間層49Bは、物体特徴抽出部52及び特徴合成部53を含んで構成され、データ用出力層49Cは、認識部54を含んで構成される。
データ用入力層49Aは、学習用劣化画像を取得し、出力する。
データ用中間層49Bには、データ用入力層49Aの出力と、質推定器48から出力された画質特徴量とが入力され、データ用中間層49Bは、合成特徴量を出力する。
データ用出力層49Cには、データ用中間層49Bの出力が入力され、学習用劣化画像の認識結果を出力する。
【0050】
物体特徴抽出部52、特徴合成部53、及び認識部54は、畳み込み処理、全結合処理、ReLU関数(活性化関数)、max-pooling等にて構成される。データ処理器49のネットワーク構造は予め定めておき、畳み込み処理や全結合処理で用いるフィルタやバイアス等のパラメータをデータ処理器学習手段32にて求める。
【0051】
物体特徴抽出部52として、本実施形態では、Feature Pyramid Network(非特許文献2を参照)を利用する。これは、畳み込み処理、ReLU関数、max-pooling、up-sampling等の処理を用いて、入力画像から異なる縦幅、横幅の複数の特徴マップを算出するものである。物体特徴抽出部52は、これらの特徴マップを画像特徴量として出力する。
【0052】
[非特許文献2] LIN, Tsung-Yi, et al. “Feature pyramid networks for object detection.” In: Proceedings of the IEEE conference on computer vision and pattern recognition. (2017): 2117-2125.
【0053】
特徴合成部53は、画質特徴量を用いて算出されるフィルタ集合を用いて、物体特徴量に畳み込み処理をすることにより、合成特徴量を算出する。具体的には、
図5に示すように合成特徴量を算出する。まず、畳み込み処理で用いるフィルタ集合を複数考える。ここで、フィルタ集合の通し番号をi、フィルタ集合の数をN、フィルタ集合内のフィルタの通し番号をc、フィルタ数をC、i番目のフィルタ集合のc番目のフィルタをW
c,iとする。またフィルタはすべて同一サイズとする。特徴合成部53は、画質特徴量を用いて各フィルタ集合に対する重みを算出する。各フィルタ集合の重みは、画質特徴量に対して全結合処理及びsoftmax関数を施すことで算出される(
図5の53A参照)。次に、その重みを用いて、フィルタ集合の重み付き和を求める(
図5の53B参照)。具体的には、i番目のフィルタに対する重みをα
iとすると、重み付き和によるフィルタ集合のc番目のフィルタは、i=1,...,Nの重み付き和となり、以下の式で表される。
【0054】
【0055】
なお、 ̄Xは数式中では、記号X上に“ ̄”であることを示す。
そして、この重み付き和によって求まったフィルタ集合{ ̄W
c}
c=1,...,Cを用いた畳み込み処理を物体特徴量に施し(
図5の53C参照)、その結果を合成特徴量として出力する。
なお、物体特徴抽出部52から出力される物体特徴量には、非特許文献2の構造を利用した場合、縦幅と横幅が異なる複数の物体特徴量が得られるが、それぞれでフィルタ集合を用意し、上記の処理を行い、複数の合成特徴量を算出する。なお、全結合処理で使われる重みだけでなく、W
c,iも学習で求める。
【0056】
また、画質特徴量と物体特徴量を単に連結させてもよい。具体的には、画質特徴量のチャネル数Cqの特徴ベクトルとし、物体特徴量は縦幅H、横幅W、チャネル数Coの特徴マップとすると、縦幅H、横幅W、チャネル数Cqの特徴マップとなるように画質特徴量を複製し、それを画質特徴量と連結し、縦幅H、横幅W、チャネル数Cq+Coの特徴マップを合成特徴量として出力すればよい。
また、フィルタ集合の重みを求めて、フィルタ集合の重み付き和で畳み込み処理で用いるフィルタ集合を合成するために、全結合処理とReLU関数やsigmoid関数でフィルタ集合の重みを求めてもよいし、全結合処理でフィルタ集合を生成するようにしてもよい。これらは、後述するデータ処理器59の特徴合成部63でも同様である。
【0057】
認識部54は合成特徴量に対し、畳み込み処理及びReLU関数を繰り返すことで、推定した対象物の外接矩形(中心位置、縦幅、横幅)及び各カテゴリの確率値を算出し、認識結果として出力する。ただし、各カテゴリの確率値については、処理の最後にsigmoid関数を施すことで、値域を0から1の間に変換してから出力される。また、外接矩形は特徴マップの各ピクセルを中心とした相対座標にて出力されるため、画像上の絶対座標となるように変換する。非特許文献2の構造を利用した場合、縦幅と横幅が異なる複数の合成特徴量が得られるが、上記の処理を合成特徴量ごとに行う。
【0058】
物体検出誤差算出部55は、認識部54で算出した認識結果と正解対象物情報との誤差を算出する。誤差は、外接矩形の中心位置、縦幅、横幅で算出する誤差と各カテゴリの確率値で算出する誤差との和からなる。
【0059】
具体的には、まず正解対象物とその正解対象物の外接矩形の近傍に位置する認識部54で算出した外接矩形とを対応付ける。対応付かない外接矩形についてはカテゴリを背景として誤差を算出する。このとき、学習を安定させるために、大きい正解対象物には縦横幅が小さく低解像度な合成特徴量(縦幅と横幅が小さい合成特徴量)から求めた外接矩形のみを対応付け、小さい正解対象物には縦横幅が大きく高解像度な合成特徴量(縦幅と横幅が大きい合成特徴量)から求めた外接矩形のみを対応付ける。この対応付けをもとに誤差を算出する。カテゴリの確率値の誤差は、推定値と正解のカテゴリの交差エントロピー誤差を用いる。外接矩形の中心位置、縦幅、横幅の誤差は、推定値と正解のSmooth L1距離とする。カテゴリ「背景」に対応付けられた外接矩形では外接矩形の中心位置、縦幅、横幅の誤差を算出しない。カテゴリの確率値の誤差、外接矩形の中心位置、縦幅、横幅の誤差のそれぞれで平均誤差をもとめ、その和を最小化に用いる。
【0060】
パラメータ更新部56は、物体検出誤差算出部55によって算出された誤差を最小化するように、データ処理器49の物体特徴抽出部52、特徴合成部53、及び認識部54の各パラメータを更新する。なお、パラメータ更新部56で更新されるパラメータには、畳み込み処理や全結合処理のフィルタやバイアスだけでなく、特徴合成部53のフィルタ集合の重み付き和で用いられるWc,iも含まれる。また、本実施形態では、パラメータ更新部56は、質推定器のパラメータは更新しない。
【0061】
誤差の最小化には確率的勾配法を用いる。確率的勾配法による学習では、最初に学習で求めるデータ処理器49の各パラメータをランダムな数値等で初期化する。そして、誤差逆伝播法にて各パラメータの勾配を算出し、その勾配をもとに各パラメータを更新する。データ処理器学習装置3は、上記の学習データの読み込み、誤差算出、及びパラメータ更新の処理を繰り返していくことで、データ処理器49の学習を行う。反復終了条件としては、例えば、誤差の変動量が事前に定めた閾値よりも小さくなったか否かや、事前に定めた反復回数に達したか否かなどを用いることができる。データ処理器学習装置3は最終的に求まったデータ処理器のパラメータを、データ処理器49のネットワーク構造などと共に学習済みデータ処理器として学習済みモデル記憶手段33に記憶する。
なお、質推定器のパラメータを更新するようにしてもよい。その際は、誤差逆伝播法にて、画質特徴量を通じて、質推定器に誤差を伝播させることとする。
【0062】
特徴合成部53でのフィルタ集合の合成は、入力画像の画質を表す画質特徴量をもとに行われる。また上記の学習を通して、特徴合成部53は、対象物認識がより高精度となるように、畳み込み処理で用いるフィルタ集合の合成し、合成特徴量を算出する。つまり、特徴合成部53は、入力画像の画質に応じて、対象物認識がより高精度となる合成特徴量を算出する。したがって、入力画像の画質に応じた認識処理が可能となる。
【0063】
<データ処理装置の構成>
データ処理装置は、人が存在しうる空間が撮影された画像を解析することで、画像に写った人物の外接矩形を検出し、認識結果を報知する装置である。
図6に、データ処理装置1のブロック図を示す。データ処理装置1は、画像取得手段10、認識手段11、表示手段12、及び学習済みモデル記憶手段13を含んで構成される。
画像取得手段10は、監視カメラからカラー画像である撮影画像を取得し、その画像を認識手段11へ出力する。
【0064】
学習済みモデル記憶手段13には、予め質推定器学習装置2で得られた学習済み質推定器、データ処理器学習装置3で得られた学習済みデータ処理器が記憶されている。なお、学習済みデータ処理器が、学習済みモデルの一例である。
【0065】
認識手段11は、まず、学習済みモデル記憶手段13から学習済みの質推定器とデータ処理器を読み込む。次に、画像取得手段10から撮影画像が入力されると、
図7に示すように、認識手段11は、質推定器58及びデータ処理器59を用いて、対象物の外接矩形と確率値を推定する。
質推定器58は、質推定器学習装置2で得られた学習済み質推定器のパラメータを用いる。
【0066】
データ処理器59は、データ処理器49と同様に、データ用入力層59A、データ用中間層59B、及びデータ用出力層59Cを含んで構成されるCNNである。データ用中間層59Bは、物体特徴抽出部62及び特徴合成部63を含んで構成され、データ用出力層59Cは、認識部64を含んで構成される。
【0067】
データ処理器59の物体特徴抽出部62、特徴合成部63、及び認識部64の各パラメータは、データ処理器学習装置3で得られた学習済みデータ処理器のパラメータを用いる。
データ用入力層59Aは、撮影画像を取得し、出力する。
データ用中間層59Bには、データ用中間層49Bと同様に、データ用入力層59Aの出力と、質推定器58から出力された画質特徴量とが入力され、データ用中間層59Bは、合成特徴量を出力する。
データ用出力層59Cには、データ用出力層49Cと同様に、データ用中間層59Bの出力が入力され、撮影画像の認識結果を出力する。
【0068】
具体的には、まず、認識手段11に入力された撮影画像は質推定器58の画質特徴抽出部60、データ処理器の物体特徴抽出部62に入力され、それぞれ画質特徴量、物体特徴量を出力する。特徴合成部63は両特徴量を用いて合成特徴量を算出する。そして合成特徴量は認識部64に入力され、認識部64は対象物の推定外接矩形、種別の確率値を算出する。なお、外接矩形は複数算出されるが、領域が大きく重複している場合があるため、Non-Maximum Suppression処理にて大きく重複する外接矩形を削除する。認識手段11は、最終的に残った対象物の外接矩形を認識結果として、撮影画像と共に出力する。
【0069】
表示手段12は、撮影画像に認識結果を重畳し、ディスプレイに表示するなどする。
【0070】
<データ処理システムの動作例>
次に、
図8~
図10を参照して、データ処理システムの動作例について説明する。
本実施形態では、まず、質推定器学習装置2を用いて、入力画像の画質を推定する質推定器を学習する。次に、質推定器学習装置2で作成された質推定器とデータ処理器学習装置3を用いて、画像内の物体を推定するデータ処理器を学習する。
【0071】
事前に質推定器学習装置2で学習された質推定器と、事前にデータ処理器学習装置3で学習されたデータ処理器を用いて、データ処理装置1において人が存在しうる空間が撮影された撮影画像に写った人物の外接矩形を認識し、認識結果を報知する。
【0072】
質推定器学習装置2、データ処理器学習装置3、及びデータ処理装置1の動作例について順に説明する。
<質推定器学習装置の動作例>
図8は質推定器学習装置2の動作に関する概略のフロー図である。質推定器の学習動作が開始されると、質推定器学習装置2は、質推定器を予め定めたネットワーク構造に設定し、そのネットワークのパラメータをランダムな数値等で初期化する(ステップS10)。
【0073】
質推定器学習装置2は、質推定器用学習データ記憶手段20から、質推定器学習用画像を読み込む(ステップS11)。
質推定器学習装置2は、画質劣化手段21にて、読み込んだ質推定器学習用画像から学習用劣化画像を生成し、劣化画像の生成に用いた画質パラメータと劣化画像とを訓練データセットとして出力する(ステップS12)。
【0074】
質推定器学習装置2は、質推定器学習手段22にて、訓練データセットを用いて、劣化画像を質推定器に入力して推定画質を算出し、それと画質パラメータを用いて誤差を算出する(ステップS13)。
質推定器学習装置2は、質推定器学習手段22にて、算出した誤差をもとに誤差逆伝播法で質推定器の各パラメータの勾配を求め、その勾配を用いて、確率的勾配法にて質推定器の各パラメータを更新する(ステップS14)。
【0075】
質推定器学習装置2は、反復終了条件が満たされているかを判定する(ステップS15)。満たされた場合は質推定器を学習済みモデル記憶手段23に格納し(ステップS16)、終了する。満たされない場合は反復終了条件が満たされるまでステップS11からステップS14の動作を反復する。反復終了条件としては、例えば、誤差の変動量が事前に定めた閾値よりも小さくなったか否かや、事前に定めた反復回数に達したか否かなどを用いることができる。
【0076】
<データ処理器学習装置の動作例>
図9はデータ処理器学習装置3の動作に関する概略のフロー図である。データ処理器の学習動作が開始されると、まず、データ処理器学習装置3は、学習済みモデル記憶手段33から、質推定器学習装置2で予め得られた質推定器を読み込み(ステップS20)、データ処理器を予め定めたネットワーク構造に設定し、そのネットワークのパラメータをランダムな数値等で初期化する(ステップS21)。
【0077】
データ処理器学習装置3は、データ処理器用学習データ記憶手段30から、データ処理器学習用画像とそれに対応する正解対象物情報を読み込む(ステップS22)。
データ処理器学習装置3は、画質劣化手段31にて、データ処理器学習用画像から学習用劣化画像を生成し、学習用劣化画像、及び学習用劣化画像のもととなるデータ処理器学習用画像に対応する正解対象物情報を、訓練データセットとする(ステップS23)。
【0078】
データ処理器学習装置3は、データ処理器学習手段32にて、学習用劣化画像を質推定器及びデータ処理器に入力して認識結果を求め、それと正解対象物情報を用いて誤差を算出する(ステップS24)。
データ処理器学習装置3は、データ処理器学習手段32にて、算出した誤差をもとに誤差逆伝播法でデータ処理器の各パラメータの勾配を求め、その勾配を用いて、確率的勾配法にてデータ処理器の各パラメータを更新する(ステップS25)。
【0079】
データ処理器学習装置3は、反復終了条件が満たされているかを判定する(ステップS26)。満たされた場合はデータ処理器を学習済みモデル記憶手段33に格納し(ステップS27)、終了する。満たされない場合は反復終了条件が満たされるまでステップS22からステップS25の動作を反復する。反復終了条件としては、例えば、誤差の変動量が事前に定めた閾値よりも小さくなったか否かや、事前に定めた反復回数に達したか否かなどを用いることができる。
【0080】
<データ処理装置の動作例>
図10はデータ処理装置1の動作に関する概略のフロー図である。
動作が開始されると、データ処理装置1は、学習済みモデル記憶手段13から学習済みの質推定器及び学習済みのデータ処理器を読み込む。(ステップS30)。
続いて、データ処理装置1は、画像取得手段10によりカラー画像である撮影画像を取得する(ステップS31)。取得した撮影画像は認識手段11に送信される。
データ処理装置1は、認識手段11にて、受信した撮影画像を質推定器及びデータ処理器に入力して認識結果を求め、それを撮影画像と共に表示手段12に出力する(ステップS32)。
データ処理装置1は、表示手段12にて、取得した画像と認識結果をディスプレイに表示する(ステップS33)。そして、監視員が表示された認識結果を視認して状況を判断し、異常があれば必要に応じて対処員を派遣する。
認識結果を表示後、画像取得手段10による画像の取得(ステップS31)に戻り、データ処理装置1を停止するまで、動作を続ける。
【0081】
以上説明したように、本発明の実施の形態に係るデータ処理装置によれば、データ処理器のデータ用中間層には、データ用入力層の出力と、質推定器から出力された画質特徴量とが入力され、データ用出力層には、データ用中間層の出力が入力され、撮影画像の認識結果を出力することにより、画質に応じた認識処理が可能となり、様々な質劣化がありうる環境での認識精度の向上が可能となる。
【0082】
<変形例>
なお、本発明は、上述した実施形態の装置構成及び作用に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0083】
(変形例1)
上記実施形態では、質推定器の学習とデータ処理器の学習を順に行っていたが、両学習を同時に行ってもよい。この場合には、データ処理器学習装置3のデータ処理器学習手段32の代わりに、
図11に示すデータ処理器学習手段232を用いて構成すればよい。データ処理器学習手段232は、学習用処理部67、画質推定誤差算出部72、物体検出誤差算出部76、及びパラメータ更新部77を含んで構成される。
学習用処理部67は、質推定器68を用いて、学習用劣化画像の画質パラメータを推定する。質推定器68は、質推定器39と同様に、画質特徴抽出部70及び画質推定部71を含んで構成される。
学習用処理部67は、質推定器68及びデータ処理器69を用いて、学習用劣化画像内の推定した対象物ごとの中心位置、縦幅、横幅、及び各カテゴリの確率値を出力する。
データ処理器69は、データ処理器49と同様に、データ用入力層69A、データ用中間層69B、及びデータ用出力層69Cを含んで構成され、データ用中間層69Bは、物体特徴抽出部73及び特徴合成部74を含んで構成され、データ用出力層69Cは、認識部75を含んで構成される。
画質推定誤差算出部72は、画質推定誤差算出部42と同様に、正解画質パラメータと推定画質パラメータとを用い、画質推定誤差を算出する。
物体検出誤差算出部76は、物体検出誤差算出部55と同様に、正解対象物情報と認識結果とを用い、物体検出誤差を算出する。
パラメータ更新部77は、画質推定誤差と物体検出誤差との和を最小化するように、質推定器68及びデータ処理器69のパラメータを更新する。
データ処理器学習装置3は、上記の学習データの読み込み、誤差算出、質推定器68及びデータ処理器69のパラメータ更新の処理を繰り返していくことで、質推定器68及びデータ処理器69の学習を行う。
【0084】
(変形例2)
上記実施形態では、画質特徴量をデータ処理器49、59に入力していたが、推定画質パラメータをデータ処理器49、59に入力してもよい。上記実施形態では、画質パラメータとしてガウシアンフィルタのフィルタサイズは8種類、JPEGのquality factorは10種類であり、推定画質パラメータとして18個の確率値が算出されるので、それを特徴合成部53、63に入力すればよい。
【0085】
(変形例3)
上記実施形態では、データ処理器49、59に入力する画質特徴量はglobal average poolingによって特徴マップから特徴ベクトルに変換されていたが、局所領域ごとの画質情報を利用するために、global average pooling処理前の特徴マップを画質特徴量としてデータ処理器49、59に入力するようにし、局所領域ごとにフィルタ集合を合成してもよい。この場合、画質特徴量と物体特徴量の縦幅、横幅が異なる場合があるが、バイリニア補間などを用いて画質特徴量のサイズを物体特徴量と同じサイズに変換すればよい。また、両特徴量を連結する場合も、画質特徴量のサイズを物体特徴量と同じサイズに変換し、連結すればよい。
また、上記の実施形態では、画質特徴量から算出した重みで複数のフィルタ集合を合成し、合成したフィルタを用いて物体特徴量に対し畳み込み処理をすることで合成特徴量を算出していたが、本変形例では、はじめに各フィルタ集合で物体特徴量に対し畳み込み処理をして複数の特徴マップを算出し、そして画質特徴量から算出した重みで特徴マップを合成することで合成特徴量を算出するのが、並列計算で処理することを考えると好適である。
【0086】
(変形例4)
上記実施形態では、画質劣化処理として、ガウシアンフィルタ処理やJPEG劣化処理を用いたが、コントラスト変換処理や偽色付与処理などを用いてもよい。
画質劣化処理として、コントラスト変換処理を用いる場合、画像のコントラストを補正し、過度に明るくしたり、暗くしたりし、それらの変化があったか否か、変化の度合いなどのコントラスト変換のパラメータを画質パラメータとして用いる。例えば、コントラスト変換のパラメータの一つであるガンマ補正を利用する場合であればガンマ値を画質パラメータとして用いる。質推定器39はこのガンマ値を推定する。質推定器39の学習では、ランダムにガンマ値を選択し、それを用いて入力画像に対してコントラスト変換処理をし、処理した画像を質推定器学習用の画像とし、質推定器学習用の画像と選択したパラメータとを、質推定器学習用の訓練データセットとして用いる。
画質劣化処理として偽色付与処理を用いる場合、画質パラメータは偽色の有無とし、質推定器39はこの偽色の有無を推定する。質推定器39の学習では、入力画像の各チャネルを数ピクセル異なる方向に動かすと、高周波な領域に偽色が発生する。そこで、これを偽色付与処理として用い、入力画像に対してランダムで偽色付与処理を行い、処理した画像を、質推定器学習用の画像とし、質推定器学習用の画像と偽色の有無とを質推定器学習用の訓練データセットとして用いる。または、質推定器学習用の画像を人が視認し、偽色の有無の情報を付与しておき、その情報と画像を質推定器学習用の訓練データセットとして用いる。
画質劣化処理として色かぶり処理を用いる場合、選択した色相や強度に応じて、RGBチャネルごとのトーンカーブを修正することで、擬似的に色がぶりした画像を作ることができるので、これを色かぶり処理として用いる。画質パラメータとしては、色かぶりしている色相、強度を用い、質推定器39は、色かぶりしている色相、強度を推定する。質推定器39の学習では、ランダムに色かぶり処理の色相や強度といったパラメータを選択し、それを用いて入力画像に対して色かぶり処理をし、処理した画像を質推定器学習用の画像とし、質推定器学習用の画像と選択したパラメータとを、質推定器学習用の訓練データセットとして用いる。
【0087】
(変形例5)
上記実施形態では、CNNを用いて画質特徴量を抽出していたが、学習を伴わない処理により算出された画質情報を画質特徴量として利用してもよい。例えば、ボケ度合いや鮮明さを表すものとして、入力画像の高周波成分の強度やエッジ強度のヒストグラム、LBP特徴量などが利用できる。また、極端に明るい画像や暗い画像かどうかを表すものとしては、画像内の色数や色ヒストグラムなどが利用できる。
【0088】
(変形例6)
上記実施形態では、質推定器39、48やデータ処理器49、59をCNNによって構成していたが、これに限定されるものではない。例えば、質推定器39、48にCNNを利用しない場合、画質特徴抽出部40、50ではHOG特徴量やLBP特徴量、色ヒストグラムなどを抽出し、画質推定部41、51ではロジスティック回帰やSVM、Random Forest、AdaBoostを用いて画質パラメータを推定し、その推定結果を、質に関するパラメータとして、データ処理器49、59の特徴合成部53、63に入力すればよい。また、上記のような構成において、L1正則付きのロジスティック回帰で選択された画質特徴量やAdaBoostで選択された画質特徴量を、データ処理器49、59の特徴合成部53、63に入力してもよい。データ処理器49、59にCNNを利用しない場合は、物体特徴抽出部52、62では物体特徴量としてHOG特徴量やHaar-like特徴量を抽出し、特徴合成部53、63では画質特徴量と物体特徴量を連結し、認識部54、64ではロジスティック回帰やSVM、Random Forest、AdaBoostなどを用いればよい。
【0089】
(変形例7)
上記実施形態では、質推定器学習装置2の学習で用いる質推定器学習用画像として、データ処理器学習装置3の学習で用いるデータ処理器学習用画像と異なるものを用いていたが、データ処理器学習用画像を質推定器学習用画像としても用いてもよい。
【0090】
(変形例8)
上記実施形態では、画像に対するデータ処理として、画像内に写る対象物の位置や種別を推定する物体認識を行う場合を例として説明したが、他の画像認識タスクでも良い。例えば、画像内に写る物体の種別を推定する画像分類や、画像の各ピクセルの種別を推定するセマンティックセグメンテーション、各ピクセルで局所領域あたりの人数を推定する群衆密度推定、対象物の関節位置を推定するキーポイント検出を、画像に対するデータ処理としてもよい。
【0091】
(変形例9)
上記実施形態において、対象データを動画とした、行動認識や物体検出をデータ処理としてもよい。その場合、対象データの質に関するパラメータとして、エンコードパラメータの推定結果、フリッカーの有無の推定結果、手ぶれ度合いの推定結果などを用いればよい。また、推定結果だけでなく、推定時に用いる中間特徴量を、対象データの質に関するパラメータとして用いてもよい。
入力動画のエンコードした際のエンコードパラメータには、コーデックやビットレートなどがある。エンコードパラメータを推定する質推定器の学習には、各エンコードパラメータを変化させて再エンコードした動画を用いればよい。
質に関するパラメータとして、フリッカーの有無を用いる場合には、一定の時間周期、空間周期で画像の明暗を変化させることで擬似的にフリッカーを含む動画を生成できるので、それを質推定器学習用の訓練データセットとして用いればよい。
手ぶれ動画は、異方性のフィルタPSF(point spread function)を逐次的に変化させながら各時刻の画像に畳み込み処理をすることで擬似的に生成できる。質に関するパラメータとして、手ぶれ度合いを用いる場合には、複数種類の変化の度合いで生成した手ぶれ動画と手ぶれ度合いとを質推定器学習用の訓練データセットとして用いる。
【0092】
(変形例10)
上記実施形態において、対象データをデプス画像や点群とした、物体検出や各点の種別を推定するセマンティックセグメンテーションをデータ処理としてもよい。その場合、対象データの質に関するパラメータとして、距離によるブレ度合いの推定結果、物体の材質や形状によるブレ度合いの推定結果、センサー方式(ToF方式、ステレオカメラ方式など)などを用いればよい。また、推定結果だけでなく、推定時に用いる中間特徴量を、対象データの質に関するパラメータとして用いてもよい。
距離によるブレ度合いの推定、物体の材質や形状によるブレ度合いの推定の学習には、高精度なセンサーと実際に用いるセンサーの両方で測定したデータを質推定器学習用の訓練データセットに用いてもよいし、CGで生成したデータにノイズを付与したデータを質推定器学習用の訓練データセットに用いてもよい。
センサー方式(ToF方式、ステレオカメラ方式など)は、実行時に方式が既知の場合はその情報を用いてもよいし、未知の場合は対象データから推定するようにしてもよい。この推定の学習には、実際に各センサーで収集したデータを質推定器学習用の訓練データセットに用いてもよいし、CGで擬似的に生成した各方式のデータを質推定器学習用の訓練データセットに用いてもよい。
【0093】
(変形例11)
上記実施形態において、対象データを音響データとしたイベント音推定や発話文推定などをデータ処理としてもよい。その場合、対象データの質に関するパラメータとして、雑音の種別(白色雑音、ピンク雑音など)や環境音の種別(工場雑音、車の走行音など)の推定結果などを用いればよい。また、推定結果だけでなく、推定時に用いる中間特徴量を質に関するパラメータとして用いてもよい。
雑音や環境音の種別を推定する質推定器の学習には、事前に生成もしくは録音した雑音や環境音などを、イベント音や発話音などに重ね合わせて擬似的に作成した音響データを、質推定器学習用の訓練データセットに用いればよい。
【0094】
(変形例12)
上記実施形態において、対象データを、IMU等で測定した加速度や角速度などとし、人のジェスチャー認識やアクティビティ推定をデータ処理としてもよい。その場合、対象データの質に関するパラメータとして、静止状態時の平均値や分散などの統計量や、動作実行時の移動平均、移動分散などの移動統計量などを用いればよい。静止状態時の統計量は、予め、実際に静止した状態で計測したものを利用してもよいし、動作実行時の対象データから適宜、静止状態時の統計量を推定してもよい。この場合の推定の学習に用いる静止状態のデータと動作実行時のデータは、実際にセンサーを人に装着して収集してもよいし、シミュレーションにて算出したものでもよい。また、推定結果だけでなく、推定時に用いる中間特徴量を質に関するパラメータとして用いてもよい。
【0095】
(変形例13)
上記実施形態において、質推定器を用いずに、画質パラメータを入力として受け付けるようにしてもよい。この場合、データ処理器学習装置3のデータ処理器学習手段32の代わりに、
図12に示すデータ処理器学習手段332を用いて構成し、画質劣化手段31を省略する。また、データ処理器81は、画質パラメータを画質特徴量として受け付け、データ処理器学習手段332は、学習用画像、当該学習用画像について入力された画質特徴量、及び正解対象物情報を訓練データセットとして用いて、データ処理器81を学習する。
データ処理器学習手段332は、学習用処理部80、物体検出誤差算出部85、及びパラメータ更新部86を含んで構成される。
学習用処理部80は、データ処理器81を用いて、学習用画像内の推定した対象物ごとの中心位置、縦幅、横幅、及び各カテゴリの確率値を出力する。
データ処理器81は、データ処理器49と同様に、データ用入力層81A、データ用中間層81B、及びデータ用出力層81Cを含んで構成され、データ用中間層81Bは、物体特徴抽出部82及び特徴合成部83を含んで構成され、データ用出力層81Cは、認識部84を含んで構成される。データ用入力層81Aは、学習用画像及び当該学習用画像の画質特徴量を取得し、出力する。
物体検出誤差算出部85は、物体検出誤差算出部55と同様に、正解対象物情報と認識結果とを用い、物体検出誤差を算出する。パラメータ更新部86は、物体検出誤差を最小化するようにデータ処理器81のパラメータを更新する。
データ処理器学習装置3は、上記の学習データの読み込み、誤差算出、データ処理器81のパラメータ更新の処理を繰り返していくことで、データ処理器81の学習を行う。データ処理器学習装置3の動作に関する概略のフロー図は、上記
図9のステップS20、S23を省略したものと同様である。
画質パラメータとして、JPEG qualityを用いる場合には、データ処理器81の学習では、ランダムに選択したJPEGのquality factorを用いて、学習用画像をJPEG形式でエンコードし、再びデコードした画像と、quality factor、及び正解対象物情報を訓練データセットとして用いる。
また、画質パラメータとして、ガウシアンフィルタサイズを用いる場合、データ処理器81の学習では、ランダムに選択したフィルタサイズを用いて入力画像にガウシアンフィルタをかけた画像と、そのフィルタサイズ、及び正解対象物情報を訓練データセットとして用いる。
また、画質パラメータとして、偽色の有無を用いる場合、データ処理器81の学習では、学習用画像を人が視認し、偽色の有無の情報を付与しておき、その情報と画像、及び正解対象物情報を訓練データセットとして用いる。または、画像の各チャネルを異なる方向に数ピクセル動かすと、高周波な領域に偽色が発生するので、この偽色付与処理を行うか否かを偽色の有無とみなし、学習用画像に対してランダムで偽色付与処理を行い、処理した画像と処理の有無、及び正解対象物情報を訓練データセットとして用いる。
また、画質パラメータとして、コントラスト変換のパラメータを用いる場合、データ処理器81の学習では、ランダムに選択したコントラスト変換のパラメータを用いて、学習用画像のコントラストを変化させ、その画像と、選択したパラメータ、及び正解対象物情報を訓練データセットとして用いる。
また、画質パラメータとして、色かぶりしている色相、強度を用いる場合、データ処理器81の学習では、ランダムに色かぶり処理の色相や強度といったパラメータを選択し、それを用いて学習用画像に対して色かぶり処理をし、その画像と、選択したパラメータ、及び正解対象物情報を用いて行う。
【0096】
また、データ処理装置1の認識手段11の代わりに、
図13に示す認識手段311を用いて構成する。また、認識手段311は、撮影画像から、当該撮影画像について入力された画質特徴量とデータ処理器90を用いて、撮影画像内の推定した対象物ごとの中心位置、縦幅、横幅、及び各カテゴリの確率値を出力する。
データ処理器90は、データ処理器59と同様に、データ用入力層90A、データ用中間層90B、及びデータ用出力層90Cを含んで構成され、データ用中間層90Bは、物体特徴抽出部91及び特徴合成部92を含んで構成され、データ用出力層90Cは、認識部93を含んで構成される。データ用入力層90Aは、撮影画像及び当該撮影画像の画質特徴量を取得し、出力する。
画質パラメータとして、JPEG qualityを用いる場合には、撮影画像がJPEG形式であれば、撮影画像のquality factorを用いる。または、事前に人がquality factorを設定する。
画質パラメータとして、ガウシアンフィルタサイズを用いる場合には、事前に人が撮影画像のボケの度合いに応じてフィルタサイズを設定する。
また、画質パラメータとして、偽色の有無を用いる場合には、事前に人が偽色の有無を設定する。
また、画質パラメータとして、コントラスト変換のパラメータを用いる場合、事前に人がパラメータを設定する。
また、画質パラメータとして、色かぶりしている色相、強度を用いる場合には、人が入力画像に色かぶりしている色相や強度といったパラメータを設定する。
【0097】
(変形例14)
上記実施形態に述べた画質パラメータの他に、以下の画質パラメータを設定してもよい。例えば、画質パラメータとして、インターレース方式か否かを用いる。この場合、質推定器39の学習では、質推定器学習用の画像の撮影時の設定や、質推定器学習用を人が視認するなどして、インターレース方式か否かという情報を付与しておき、その情報と質推定器学習用の画像とを訓練データセットとして用いる。または、画像の奇数行のピクセルと偶数行のピクセルの位置をずらすことで、インターレース方式を模擬できるので、このインターレース化処理を行うか否かをインターレース方式か否かとみなし、入力画像に対して、ランダムにインターレース化処理を行い、処理した画像を質推定器学習用の画像とし、質推定器学習用の画像と処理の有無を質推定器学習用の訓練データセットとして用いて質推定器39の学習を行う。また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習では、データ処理器学習用の画像の撮影時の設定や、画像を人が視認するなどして、インターレース方式か否かという情報を付与しておき、その情報、データ処理器学習用の画像、及び正解対象物情報を訓練データセットとして用いる。または、入力画像に対して、ランダムにインターレース化処理を行い、処理した画像を、データ処理器学習用の画像とし、データ処理器学習用の画像、処理の有無、及び正解対象物情報を訓練データセットとして用いて、データ処理器81の学習を行う。データ処理装置1では、撮影時の設定を用いたり、人が事前に視認するなどしてインターレース方式か否かを、画質パラメータとして設定する。
【0098】
また、画質パラメータとして、イメージセンサーのノイズに関するパラメータを用いてもよい。例えば、フォトンショットノイズやダークショットノイズ、読み取りノイズなどのイメージセンサーに起因するノイズの分布のパラメータを、画質パラメータとして用いる。ノイズ分布をガウス分布と仮定し、質推定器39の学習では、ガウス分布の分散パラメータを予め複数種類を設定し、ランダムに選んだ分散パラメータのガウス分布から画素ごとにサンプリングした値を加算した画像を学習用劣化画像とし、質推定器39にこの分散パラメータを推定するよう学習させる。
【0099】
また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習では、データ処理器学習用の画像に用いるイメージセンサーのノイズ分布のパラメータを様々な照明条件下で測定しておき、データ処理器学習用の画像、その画像の撮影時のノイズ分布のパラメータ、及び正解対象物情報を訓練データセットとして用いる。データ処理装置1では、撮影環境下でのイメージセンサーのノイズ分布のパラメータを測定しておき、その値を用いる。
【0100】
また、画質パラメータとして、撮影時のカメラ情報を用いてもよい。例えば、F値(絞り値)、シャッタースピード、ISO感度、焦点距離、カメラの機種、シャッター方式(グローバルシャッター、ローリングシャッター)を、画質パラメータとして用いる。質推定器39の学習では、質推定器学習用の画像の撮影時の各パラメータを保持しておき、質推定器学習用の画像、及びその画像の撮影時のパラメータを質推定器学習用の訓練データセットとして用いる。
【0101】
また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習では、データ処理器学習用の画像の撮影時の各パラメータを保持しておき、データ処理器学習用の画像、その画像の撮影時のパラメータ、及び正解対象物情報を訓練データセットとして用いる。データ処理装置1では、撮影環境下での各パラメータを保持しておき、その値を用いる。
【0102】
また、画質パラメータとして、解像度を用いてもよい。例えば、撮影された画像がデータ処理装置1に入力される過程で、複数回、拡大、縮小されると仮定し、画質パラメータとして、撮影からデータ処理装置1に入力されるまでの間での最小画像サイズや、最小画像サイズから最終的な画像サイズへの拡大・縮小率を用いる。質推定器39の学習では、入力画像をランダムに拡大縮小させ、その画像を、質推定器学習用の画像とし、質推定器学習用の画像と、それに対応する最小画像サイズや、拡大縮小率とを質推定器学習用の訓練データセットとして用いる。
【0103】
また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習では、入力画像をランダムに拡大縮小させ、その画像を、データ処理器学習用の画像とし、データ処理器学習用の画像と、それに対応する最小画像サイズや、拡大縮小率と、正解対象物情報とを訓練データセットとして用いる。データ処理装置1は、データ処理装置1に入力されるまでの最小サイズを保持しておき、それを利用する。
【0104】
また、画質パラメータとして、レンズ歪みに関する情報を用いてもよい。例えば、ひずみパラメータを用いる。質推定器39の学習では、質推定器学習用の画像に用いるカメラのひずみパラメータを計測しておく、もしくは、質推定器学習用の画像内の構造線などをもとに画像毎にひずみパラメータを算出しておき、質推定器学習用の画像とその画像のひずみパラメータを質推定器学習用の訓練データセットとして用いる。
【0105】
また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習は、データ処理器学習用の画像に用いるカメラのひずみパラメータを計測しておく、もしくは、データ処理器学習用の画像内の構造線などをもとに画像毎にひずみパラメータを算出しておき、データ処理器学習用の画像、その画像のひずみパラメータ、及び正解対象物情報を訓練データセットとして用いる。データ処理装置1は、使用するカメラのひずみパラメータを予め測定しておき、その値を用いる。
【0106】
また、画質パラメータとして、フレームの種別に関する情報を用いてもよい。例えば、対象データを、h.264形式などの動画をフレーム単位に分割したものとする場合、フレームの種別(Iフレーム、Pフレーム、Bフレームなど)を画質パラメータとして用いる。また、対象データが動画の場合は、フレームの種別の系列を画質パラメータとして用いる。
質推定器39の学習では、学習用動画を分割し質推定器学習用の画像を作る際に、質推定器学習用の画像毎にそれに対応するフレームの種別を保持しておき、質推定器学習用の画像とそれに対応するフレームの種別を質推定器学習用の訓練データセットとして用いる。
【0107】
また、上記変形例13のように、質推定器がない場合には、データ処理器81の学習では、学習用動画を分割しデータ処理器学習用の画像を作る際に、データ処理器学習用の画像毎にそれに対応するフレームの種別を保持しておき、データ処理器学習用の画像、それに対応するフレームの種別、及び正解対象物情報を訓練データセットとして用いる。データ処理装置1は、撮影された動画を分割した際の画像ごとのフレームの種別を用いる。
【0108】
以上のように、当業者は本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【0109】
1 データ処理装置
2 質推定器学習装置
3 データ処理器学習装置
10 画像取得手段
11 認識手段
12 表示手段
22 質推定器学習手段
32、232、332 データ処理器学習手段
39、48、58、68 質推定器
49、59、69、81、90 データ処理器
49A、59A、69A、81A、90A データ用入力層
49B、59B、69B、81B、90B データ用中間層
49C、59C、69C、81C、90C データ用出力層