(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-13
(45)【発行日】2022-06-21
(54)【発明の名称】メディア処理方法、その関連装置及びコンピュータプログラム
(51)【国際特許分類】
G06T 7/20 20170101AFI20220614BHJP
【FI】
G06T7/20 300Z
(21)【出願番号】P 2020545244
(86)(22)【出願日】2019-03-22
(86)【国際出願番号】 CN2019079156
(87)【国際公開番号】W WO2019196626
(87)【国際公開日】2019-10-17
【審査請求日】2020-08-28
(31)【優先権主張番号】201810327638.4
(32)【優先日】2018-04-12
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ジャン,カイハオ
(72)【発明者】
【氏名】ルオ,ウエンハン
(72)【発明者】
【氏名】マ,リン
(72)【発明者】
【氏名】リィウ,ウエイ
【審査官】合田 幸裕
(56)【参考文献】
【文献】中国特許出願公開第105574510(CN,A)
【文献】中国特許出願公開第101807245(CN,A)
【文献】中国特許出願公開第101630364(CN,A)
【文献】中国特許出願公開第101571924(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/20
IEEE Xplore
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
メディア処理装置に適用されるメディア処理方法であって、
処理対象ビデオを取得するステップであって、前記処理対象ビデオが、アイデンティティが認識されるべきオブジェクトを含むステップと、
前記処理対象ビデオに基づき第1の歩行エネルギーマップを生成するステップと、
第2の歩行エネルギーマップを取得するステップであって、前記第2の歩行エネルギーマップが、アイデンティティが既知のオブジェクトを含むビデオに基づき生成されるステップと、
ディープニューラルネットワークに基づき、前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップに対して第1の歩行認識を実行するステップと、を含み、
前記第1の歩行認識は、
前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップであって、前記第1の歩行エネルギーマップのアイデンティティ情報が前記第1の歩行エネルギーマップの歩行特徴ベクトルを含み、前記第2の歩行エネルギーマップのアイデンティティ情報が前記第2の歩行エネルギーマップの歩行特徴ベクトルを含むステップと、
少なくとも前記融合歩行特徴ベクトルに基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの類似度を計算するステップと、
を含むことを特徴とする方法。
【請求項2】
少なくとも前記融合歩行特徴ベクトルに基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの類似度を計算す
るステップは、
前記融合歩行特徴ベクトルに基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの第1の類似度を計算するステップと、
前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報に基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの第2の類似度を計算するステップと、
前記第1の類似度と第2の類似度に基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの類似度を計算するステップと、を含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記ディープニューラルネットワークは、アイデンティティ情報抽出レイヤー及び融合歩行特徴ベクトル抽出レイヤーを含み、前記アイデンティティ情報抽出レイヤーは少なくとも第1の抽出レイヤー及び第2の抽出レイヤーを含み、
前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定す
るステップは、
前記第1の抽出レイヤーによって、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応する第1のレベルの歩行特徴ベクトルを抽出するステップと、
前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応する第1のレベルの歩行特徴ベクトルに基づき、前記第2の抽出レイヤーによって、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応する第2のレベルの歩行特徴ベクトルを抽出するステップと、
前記融合歩行特徴ベクトル抽出レイヤーによって、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応する第2のレベルの歩行特徴ベクトルを融合することで、第2のレベルの融合歩行特徴ベクトルを取得し、前記第2のレベルの融合歩行特徴ベクトルを前記融合歩行特徴ベクトルとするステップ、又は、
前記融合歩行特徴ベクトル抽出レイヤーによって、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップのそれぞれに対応する第1のレベルの歩行特徴ベクトルを融合することで第1のレベルの融合歩行特徴ベクトルを取得し、前記第1のレベルの融合歩行特徴ベクトルに基づき、第2のレベルの融合歩行特徴ベクトルを抽出して取得し、前記第2のレベルの融合歩行特徴ベクトルを前記融合歩行特徴ベクトルとするステップと、
を含むことを特徴とする請求項1に記載の方法。
【請求項4】
認識結果を取得するステップをさらに含み、
前記認識結果は、前記類似度、又は、前記アイデンティティが認識されるべきオブジェクトと前記アイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかを示す情報を含む、ことを特徴とする請求項1に記載の方法。
【請求項5】
前記ディープニューラルネットワークがトレーニングプロセスにおいて、アイデンティティ情報と融合歩行特徴ベクトルに基づきフィルタパラメータを調整するステップ、をさらに含み、
前記トレーニングプロセスのトレーニング目標は、
同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似することと、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離すること、を含む、ことを特徴とする請求項1に記載の方法。
【請求項6】
前記トレーニングプロセスで使用される各トレーニングサンプルにn個のトレーニングサブサンプルが含まれ、何れの前記トレーニングサブサンプルにも、2つのアイデンティティが既知のオブジェクトの歩行エネルギーマップが含まれ、前記nは正の整数であり、
前記トレーニングプロセスは、
前記ディープニューラルネットワークを使用して、前記トレーニングサンプルにおける各トレーニングサブサンプルに対して第2の歩行認識を実行するステップであって、前記第2の歩行認識が、前記トレーニングサブサンプルにおける2つの歩行エネルギーマップのそれぞれのアイデンティティ情報及び前記2つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、少なくとも抽出された融合歩行特徴ベクトルに基づき、前記2つの歩行エネルギーマップの類似度を計算することを含むステップと、
前記第2の歩行認識にて抽出されたアイデンティティ情報に基づき、アイデンティティ情報損失関数を使用して、前記トレーニングサンプルのアイデンティティ損失値を計算するステップであって、前記アイデンティティ損失値が小さいほど、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルがより類似し、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルがより乖離することを示すステップと、
融合歩行特徴ベクトル損失関数を使用して、前記トレーニングサンプルの融合損失値を計算するステップと、
前記融合損失値とアイデンティティ損失値の加重和を求めて、前記トレーニングサンプルの最終的な損失値を得るステップと、
少なくとも1つのトレーニングサンプルの最終的な損失値に基づき、前記ディープニューラルネットワークのフィルタパラメータを調整するステップと、
を含むことを特徴とする請求項5に記載の方法。
【請求項7】
前記n=3であり、前記トレーニングサンプルは、第1から第3のトレーニングサブサンプルを含み、前記第1から第3のトレーニングサブサンプルの組み合わせ方式は、第1の組み合わせ方式又は第2の組み合わせ方式を含み、
前記第1の組み合わせ方式は、前記第1のトレーニングサブサンプルにおける2つの歩行エネルギーマップが同じオブジェクトに対応し、前記第2のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応し、前記第3のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応することであり、
前記第2の組み合わせ方式は、前記第1のトレーニングサブサンプルにおける2つの歩行エネルギーマップが同じオブジェクトに対応し、前記第2のトレーニングサブサンプルにおける2つの歩行エネルギーマップが前記同じオブジェクトに対応し、前記第3のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応することである、ことを特徴とする請求項6に記載の方法。
【請求項8】
前記第1から第3のトレーニングサブサンプルが前記第1の組み合わせ方式である場合に、前記アイデンティティ情報損失関数は、次の式を含み、
ただし、Luはアイデンティティ損失値を表し、ηは係数を表し、
はユークリッド距離を表し、
p、g、p′、g′、p″及びg″は歩行エネルギーマップの識別子を表し、XpとXgは第1のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、Xp′とXg′は第2のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、Xp″とXg″は第3のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、また、XpとXp′は同じオブジェクトに対応し、XpとXp″は異なるオブジェクトに対応し、
U(Xp)からU(Xg″)は各歩行エネルギーマップの歩行特徴ベクトルを表す、ことを特徴とする請求項7に記載の方法。
【請求項9】
前記第1から第3のトレーニングサブサンプルが前記第2の組み合わせ方式である場合に、前記アイデンティティ情報損失関数は、次の式を含み、
ただし、Luはアイデンティティ損失値を表し、ηは係数を表し、
はユークリッド距離を表し、
p、g、p′、g′、p″及びg″は歩行エネルギーマップの識別子を表し、XpとXgは第1のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、Xp′とXg′は第2のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、Xp″とXg″は第3のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し、また、XpとXp′は同じオブジェクトに対応し、XpとXp″は異なるオブジェクトに対応し、
U(Xp)からU(Xg″)は各歩行エネルギーマップの歩行特徴ベクトルを表す、ことを特徴とする請求項7に記載の方法。
【請求項10】
前記トレーニング目標は、
第1の計算サンプルにおける2つの歩行エネルギーマップペアの実際ラベル分布が同じであって、第2の計算サンプルにおける2つの歩行エネルギーマップペアの実際ラベル分布が異なる場合に、前記第1の計算サンプルに対応する第1の確率を第2の計算サンプルに対応する第2の確率から乖離させ、さもなければ、前記第1の確率を前記第2の確率に近づけることをさらに含み、
前記第1の計算サンプルと第2の計算サンプルはそれぞれ、2つの歩行エネルギーマップペアを含み、
前記第1の確率は、前記第1の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率であり、前記第2の確率は、前記第2の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率である、ことを特徴とする請求項8又は9に記載の方法。
【請求項11】
前記第1から第3のトレーニングサブサンプルが前記第1の組み合わせ方式である場合に、前記融合歩行特徴ベクトル損失関数は、次の式を含み、
ただし、Lcは融合損失値を表し、μとη
cは重み付け係数を表し、δは緩和係数を表し、x
pgからx
gp′は各歩行エネルギーマップペアを表し、P(*)は1つの歩行エネルギーマップペアに対応する実際ラベル分布を表し、Q(*)は前記ディープニューラルネットワークによる前記歩行エネルギーマップペアの予測結果を表し、P(*)log Q(*)は実際ラベル分布と予測結果に対してクロスエントロピーを求めることを表し、||*||
+は値を0と比較し、両方の大きい方を取ることを表し、C(*)は第1の計算サンプル又は第2の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率を計算するための確率計算関数であり、D[*]関数は第1の計算サンプルと第2の計算サンプルのユークリッド距離を計算するために使用される、ことを特徴とする請求項10に記載方法。
【請求項12】
前記第1から第3のトレーニングサブサンプルが前記第2の組み合わせ方式である場合に、前記融合歩行特徴ベクトル損失関数は、次の式を含み、
ただし、Lcは融合損失値を表し、μ及びη
cは重み付け係数を表し、δは緩和係数を表し、x
pgからx
gp′は各歩行エネルギーマップペアを表し、P(*)は1つの歩行エネルギーマップペアに対応する実際ラベル分布を表し、Q(*)は前記ディープニューラルネットワークによる前記歩行エネルギーマップペアの予測結果を表し、P(*)log Q(*)は実際ラベル分布と予測結果に対してクロスエントロピーを求めることを表し、||*||
+は、値を0と比較し、両方の大きい方を取ることを表し、C(*)は第1の計算サンプル又は第2の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率を計算するための確率計算関数であり、D[*]関数は第1の計算サンプルと第2の計算サンプルのユークリッド距離を計算するために使用される、ことを特徴とする請求項10に記載の方法。
【請求項13】
アイデンティティが認識されるべきオブジェクトの第1の姿勢エネルギーマップを取得するステップと、
アイデンティティが既知のオブジェクトの第2の姿勢エネルギーマップを取得するステップと、
ディープニューラルネットワークに基づき、前記第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップに対して第1の姿勢認識を行うステップと、
をさらに含み、
前記第1の姿勢認識は、
前記第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップに対応するアイデンティティ情報を抽出し、前記第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップの姿勢特徴によって融合姿勢特徴ベクトルを決定するステップであって、前記第1の姿勢エネルギーマップのアイデンティティ情報が前記第1の姿勢エネルギーマップの姿勢特徴を含み、前記第2の姿勢エネルギーマップのアイデンティティ情報が前記第2の姿勢エネルギーマップの姿勢特徴を含むステップと、
少なくとも前記融合姿勢特徴ベクトルに基づき、前記第1の姿勢エネルギーマップと第2の姿勢エネルギーマップの類似度を計算するステップと、
を含むことを特徴とする請求項1に記載の方法。
【請求項14】
メディア処理装置であって、
少なくともプロセッサとメモリを含み、
前記メモリは、請求項1乃至13のいずれか1項に記載のメディア処理方法を前記プロセッサに実行させるコンピュータプログラムを記憶していることを特徴とする装置。
【請求項15】
複数の命令が記憶される記憶媒体であって、
前記命令は、請求項1乃至13のいずれか1項に記載のメディア処理方法を前記メディア処理装置のプロセッサに実行させることを特徴とする記憶媒体。
【請求項16】
コンピュータに、請求項1乃至13のうちのいずれか1項に記載のメディア処理方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2018年04月12日に中国特許庁に提出された、出願番号が201810327638.4であって、発明の名称が「ビデオ処理方法及び関連装置、イメージ処理方法及び関連装置」である中国特許出願に基づく優先権を主張するものであり、その全内容を本開示に参照により援用する。
【0002】
本発明は、歩行認識技術分野に関し、具体的に、ビデオ処理方法、ビデオ処理装置、ビデオ処理デバイス及び記憶媒体、イメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体に関する。
【背景技術】
【0003】
多くのシナリオで、歩行認識が必要である。例えば、公共の場所には屋外カメラがたくさんあるが、カメラは一般的に人から遠く離れており、撮影したイメージ又はビデオについて、顔によって歩行者認識を行うことができない。歩行認識技術は、人の歩行特徴ベクトルに基づいて歩行者認識を行うことができ、顔に基づいて認識する必要がなく、高精細な画質も必要としないので、歩行認識技術は1つの重要な研究の方向になった。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の実施例は、歩行認識を実現するためのメディア処理方法、メディア処理装置及び記憶媒体を提供し、さらに、本発明の実施例は、姿勢認識を実現するためのイメージ処理方法、イメージ処理デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【0005】
本発明の実施例は、上記の目的を達成するために、以下の技術的解決策を提供する。
メディア処理装置に適用されるメディア処理方法であって、
処理対象ビデオを取得するステップであって、前記処理対象ビデオが、アイデンティティが認識されるべきオブジェクトを含むステップと、
前記処理対象ビデオに基づき第1の歩行エネルギーマップを生成するステップと、
第2の歩行エネルギーマップを取得するステップであって、前記第2の歩行エネルギーマップが、アイデンティティが既知のオブジェクトを含むビデオに基づき生成されるステップと、
ディープニューラルネットワークに基づき、前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップに対して第1の歩行認識を行うステップと、
を含み、
前記第1の歩行認識は、
前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第1の歩行エネルギーマップ及び第2の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップであって、前記第1の歩行エネルギーマップのアイデンティティ情報が前記第1の歩行エネルギーマップの歩行特徴ベクトルを含み、前記第2の歩行エネルギーマップのアイデンティティ情報が前記第2の歩行エネルギーマップの歩行特徴ベクトルを含むステップと、
少なくとも前記融合歩行特徴ベクトルに基づき、前記第1の歩行エネルギーマップと第2の歩行エネルギーマップの類似度を計算するステップと、
を含む方法。
【0006】
この実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子及び歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定され、その後、少なくとも融合歩行特徴ベクトルに基づき、2つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【0007】
メディア処理装置であって、少なくともプロセッサとメモリを含み、前記プロセッサは、前記メモリに格納されたプログラムを実行し、他の装置を呼び出すことにより、上記のメディア処理方法を実行する。
【0008】
本発明の実施例は、記憶媒体をさらに提供し、前記記憶媒体は、複数の命令を記憶し、前記命令は、本発明の実施例によって提供されるメディア処理方法のいずれかを実行するために、プロセッサによってロードされるように適合される。
【0009】
本実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの融合姿勢特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と姿勢特徴ベクトルを含む)も抽出し、そして、融合姿勢特徴ベクトルは姿勢特徴ベクトルによって決定され、その後、少なくとも融合姿勢特徴ベクトルに基づき2つの姿勢エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する姿勢認識が実現される。
【図面の簡単な説明】
【0010】
【
図1】
図1aから
図1dは、本発明の実施例によるビデオ処理適用シナリオの例示的な構造図である。
【
図2】
図2a及び
図2bは、本発明の実施例によるビデオ処理装置の例示的な構造図であり、
図2cは、本発明の実施例によるビデオ処理デバイスの例示的な構造図である。
【
図3】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【
図4】本発明の実施例による歩行エネルギーマップの概略図である。
【
図5】
図5aから
図5dは、本発明の実施例による歩行特徴ベクトルを抽出する概略図である。
【
図6】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【
図7】本発明の実施例によるトレーニングプロセスの概略図である。
【
図8】本発明の実施例によるトレーニングプロセスの概略図である。
【
図9】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【
図10】本発明の実施例によるイメージ処理適用シナリオの例示的な構造図である。
【
図11】
図11aから
図11dは、本発明の実施例によるイメージ処理装置の例示的な構造図である。
【発明を実施するための形態】
【0011】
歩行認識は、人々の歩行姿勢によってアイデンティティを認識することを目的とした、新しいタイプの生体特徴認識技術である。歩行認識は、非接触長距離、及びカモフラージュが容易ではないという利点があり、高精細な画質も必要としない。そのため、セキュリティ保護、公安、公共交通などのシナリオで広く使用でき、適用の可能性が非常に大きくなる。
【0012】
本発明の実施例は、リアルタイム又はオフライン歩行認識技術サービスを提供する必要がある様々なシナリオ(例えば、インテリジェントビデオ監視)に適した、メディア処理方法及び関連装置(メディア処理デバイス及び記憶媒体など)を提供する。
【0013】
最初に、コアアイデアを説明する。
歩行認識は1つの検索問題として理解でき、照会対象の人物(アイデンティティが認識されるべきオブジェクト)のメディア(例えば、メディアがビデオである場合に、第1のビデオ又は処理対象ビデオと呼ばれ、第1のビデオにおけるビデオフレームにはアイデンティティが認識されるべきオブジェクトが含まれる)を与え、データベース内のどの既知のアイデンティティ情報を持つ人物(アイデンティティが既知のオブジェクト)のビデオ(第2のビデオとも呼ばれる)が、それに類似又は最も類似するかを照会する。
【0014】
本発明の実施例によって提供されるメディア処理方法及び関連装置は、ディープニューラルネットワークに基づいて歩行認識を実現する。説明の便宜上、以下の実施例では、主にビデオをメディアのオプションの表現形式として説明する。
【0015】
上記のディープニューラルネットワークは、歩行エネルギーマップに基づいて歩行認識を行うため、ディープニューラルネットワークによる歩行認識の前に、予め第1のビデオから第1の歩行エネルギーマップを抽出し、第2のビデオから第2の歩行エネルギーマップを抽出し、その後、第1の歩行エネルギーマップ及び第2の歩行エネルギーマップを当該ディープニューラルネットワークに入力し、ディープニューラルネットワークによって、2つの歩行エネルギーマップの類似度を、上記の処理対象ビデオ及び第2のビデオの類似度として出力する。
【0016】
より具体的に、上記のディープニューラルネットワークは、入力された2つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、2つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの識別子、及び当該歩行エネルギーマップに基づいて抽出された歩行特徴ベクトルを含み得る。2つの歩行エネルギーマップの融合歩行特徴ベクトルは、2つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって決定される。
【0017】
その後、上記のディープニューラルネットワークは、少なくとも抽出された融合歩行特徴ベクトルに基づき、2つの歩行エネルギーマップの類似度を計算する。
【0018】
このことから分かるように、上記のディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定される。その後、少なくとも融合歩行特徴ベクトルに基づき、2つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【0019】
ディープニューラルネットワークは、ニューロンによって階層構造で構成され、各ニューロンレイヤーには複数のフィルタが含まれ、それらの間の重みとオフセット量(フィルタパラメータ)はトレーニングによって取得できる。
【0020】
したがって、一例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。これについて後述する。
【0021】
以下、コアアイデアを説明した後、歩行認識を実現するための本発明の実施例に係るビデオ処理装置、及び、ビデオ処理デバイスについて説明する。
【0022】
上記のビデオ処理装置は、ソフトウェア又はハードウェアの形で、ビデオ処理デバイスに適用することができる。具体的に、ビデオ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(PC)であってもよいし、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ipadなどの端末であってもよい。
【0023】
ソフトウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
【0024】
ハードウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、例えば、端末又はサーバーのコントローラ/プロセッサであってもよい。
【0025】
図1aに示すように、例として、上記のビデオ処理方法の適用シナリオでは、カメラ101は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、ビデオをビデオ処理デバイス102に提供し、ビデオ処理デバイス102は、データベース103におけるアイデンティティが既知のオブジェクトのビデオに基づいて、歩行認識を行う。このシナリオでは、ビデオ処理デバイス102は、歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【0026】
図1bに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、ビデオ処理デバイス102は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、データベース103におけるアイデンティティが既知のオブジェクトのビデオに基づいて歩行認識を行う。このシナリオでは、ビデオ処理デバイス102は、撮影装置、及び歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【0027】
さらに
図1cに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、外部デバイス104は、アイデンティティが認識されるべきオブジェクトの歩行エネルギーマップ又はビデオをビデオ処理デバイス102へ提供し、ビデオ処理デバイス102は、データベース103に記憶された各アイデンティティが既知のオブジェクトの歩行エネルギーマップに基づいて歩行認識を行う。このシナリオでは、外部デバイスがビデオを提供する場合に、ビデオ処理デバイス102は、歩行エネルギーマップを抽出するモジュール又は装置を備える必要がある。
【0028】
なお、上記のディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記の各シナリオでは、トレーニングデバイス105を含めることもできる。勿論、トレーニングデバイス105の機能は、ビデオ処理デバイス102によって実現することもできる。トレーニングデバイス105は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用され得る。
【0029】
より具体的なシナリオ(クライアントサーバーシナリオ)では、
図1dを参照し、webサーバー106、ビデオ処理サーバー107(即ち、ビデオ処理デバイス)、データベース103を含み得る。なお、トレーニングサーバー108(トレーニングデバイス)も含み得る。
【0030】
ただし、webサーバー106は、フロントエンド(フォアグラウンド)であり、クライアントブラウザ(上記の外部デバイス)との通信を担当する。ビデオ処理サーバー107、データベース103、トレーニングサーバー108などは、バックエンドであり、ビデオ処理サーバー107は、クライアントブラウザにビデオ処理(歩行認識)サービスを提供することができる。トレーニングサーバー108は、ビデオ処理サーバー107によって使用されるビデオ処理アルゴリズムをトレーニングする(即ち、ディープニューラルネットワークをトレーニングする)ために、又は、トレーニング用のサンプルを提供するために使用され得る。
【0031】
次に、ビデオ処理装置の内部構成について説明するが、ビデオ処理装置の例示的な構成は
図2aに示され、第1の取得ユニット11と、歩行認識ユニット12とを含む。
【0032】
第1の取得ユニット11は、処理対象ビデオを取得し、当該処理対象ビデオに基づき第1の歩行エネルギーマップを生成し、第2の歩行エネルギーマップを取得するために使用され、当該第2の歩行エネルギーマップは、アイデンティティが既知のオブジェクトを含むビデオに基づき生成され、
歩行認識ユニット12は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第1の取得ユニット11によって提供される第1の歩行エネルギーマップ及び第2の歩行エネルギーマップに対して第1の歩行認識を行うために使用されることができる。
【0033】
本発明の他の実施例では、
図2bを参照し、上記のビデオ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット13をさらにを含んでもよい。
【0034】
本明細書では、以下、ビデオ処理方法と組み合わせて、上記の各ユニットの機能を説明する。
【0035】
図2cは、上記の実施例におけるビデオ処理デバイスの可能な構造の概略図を示す。バス、プロセッサ1、メモリ2、通信インタフェース3、入力デバイス4、及び出力デバイス5を含む。プロセッサ1、メモリ2、通信インタフェース3、入力デバイス4、及び出力デバイス5は、バスを介して互いに接続されている。なお、バスは、コンピュータシステムの各コンポーネントの間で情報を伝送するための経路を含み得る。
【0036】
プロセッサ1は、例えば、汎用中央処理装置(CPU)、ネットワークプロセッサ(Network Processor、NPと略称する)、マイクロプロセッサなどの汎用プロセッサであってもよく、特定用途向け集積回路(application-specific integrated circuit、ASIC)、又は本発明解決策のプログラムの実行を制御するための1つ又は複数の集積回路であってもよい。また、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)又はその他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントであってもよい。
【0037】
メモリ2は、本発明の技術的解決策を実行するためのプログラム又はスクリプトを格納しており、オペレーティングシステム及び他の主要なサービスも格納することができる。具体的に、プログラムはプログラムコードを含むことができ、プログラムコードはコンピュータ操作命令を含む。スクリプトは、通常、テキスト(例えば、ASCII)で保存され、呼び出されたときにのみ解釈又はコンパイルされる。
【0038】
より具体的に、メモリ2は、読み取り専用メモリ(read-only memory、ROM)、静的情報及び命令を記憶できる他のタイプの静的記憶デバイス、ランダムアクセスメモリ(random access memory、RAM)、情報及び命令を記憶できる他のタイプの動的記憶デバイス、磁気ディスクメモリ、flashなどを含み得る。
【0039】
入力デバイス4は、例えば、キーボード、マウス、カメラ、音声入力装置、タッチスクリーンなど、ユーザーによって入力されたデータと情報を受け取る装置を含み得る。
【0040】
出力デバイス5は、例えば、ディスプレイスクリーン、スピーカなど、ユーザーへの情報の出力を可能にする装置を含み得る。
【0041】
通信インタフェース3は、例えば、イーサネット、無線アクセスネットワーク(RAN)、無線ローカルネットワーク(WLAN)などの他のデバイス又は通信ネットワークと通信するように、任意のトランシーバなどを使用する装置を含み得る。
【0042】
図2cは、ビデオ処理デバイスの単純化された設計のみを示していることが理解され得る。実際の用途では、上記のビデオ処理デバイスは、任意の数の送信機、受信機、プロセッサ、コントローラ、メモリ、通信インタフェースなどを含むことができる。本発明を実現できる全てのサーバー/インテリジェント端末は、本発明の保護範囲内にある。
【0043】
プロセッサ1は、メモリ2に格納されたプログラムを実行し、他のデバイスを呼び出すことによって、以下の実施例によって提供されるビデオ処理方法を実現することができる。
【0044】
なお、
図1a~1dに示したビデオ処理装置の各ユニットの機能は、上記のプロセッサ1がメモリ2に格納されたプログラムを実行し、他のデバイスを呼び出すことによって実現することができる。
【0045】
以下、以上の本発明に係る共通点を踏まえ、歩行認識を実現するための本発明の実施例について、さらに詳細に説明する。
【0046】
図3は、上記のビデオ処理装置/デバイスによって実行されるビデオ処理方法の例示的なフローを示す。この方法は、少なくとも次のステップを含み得る。
300部分:処理対象ビデオを取得し、当該処理対象ビデオに基づき第1の歩行エネルギーマップを生成し、第2の歩行エネルギーマップを取得する。
ただし、処理対象ビデオ(第1のビデオ)におけるビデオフレームは、アイデンティティが認識されるべきオブジェクトを含み、第2の歩行エネルギーマップは、アイデンティティが既知のオブジェクトのビデオ(第2のビデオ)に基づき生成されたものである。
【0047】
第1の歩行エネルギーマップと第2の歩行エネルギーマップは、それぞれ対応する一意の識別子(ID)を持つことができる。1つの歩行エネルギーマップに対応するIDは、当該歩行エネルギーマップに対応するオブジェクトのアイデンティティを識別することができる。
【0048】
歩行エネルギーマップの概略図について
は、
図4を参照
されたい。ビデオフレームに基づきマルチフレーム歩行シルエットを取得し、次に、マルチフレーム歩行シルエットを重ね合わせ、正規化処理を実行して、歩行エネルギーマップを取得することができる。
【0049】
第1の歩行エネルギーマップと第2の歩行エネルギーマップを取得するには、多くの方法がある。
図1aに示す適用シナリオを例として、カメラ101は、処理対象ビデオを撮影した後、処理対象ビデオをビデオ処理デバイス102に提供し、ビデオ処理デバイス102は処理対象ビデオから第1の歩行エネルギーマップを抽出し、データベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する(又は、データベース103から第2の歩行エネルギーマップを取得する)。
【0050】
図1bに示す適用シナリオを例として、ビデオ処理デバイス102のカメラによって処理対象ビデオを撮影した後、ビデオ処理デバイス102は処理対象ビデオから第1の歩行エネルギーマップを抽出し、データベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する(又は、データベース103から第2の歩行エネルギーマップを取得する)。
【0051】
図1cに示す適用シナリオを例として、外部デバイス104からビデオ処理デバイス102に処理対象ビデオを提供した後、ビデオ処理デバイス102は処理対象ビデオから第1の歩行エネルギーマップを抽出し、データベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する。又は、外部デバイス104からビデオ処理デバイス102に第1の歩行エネルギーマップを提供し、ビデオ処理デバイス102はデータベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する。又は、外部デバイス104からビデオ処理デバイス102に第1の歩行エネルギーマップを提供し、ビデオ処理デバイス102はデータベース103から第2の歩行エネルギーマップを取得する。
【0052】
図1dに示す適用シナリオを例として、クライアントからビデオ処理サーバー107に処理対象ビデオを提供した後、ビデオ処理サーバー107は処理対象ビデオから第1の歩行エネルギーマップを抽出し、データベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー107に第1の歩行エネルギーマップを提供し、ビデオ処理サーバー107はデータベース103から第2のビデオを取得し、それから第2の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー107に第1の歩行エネルギーマップを提供し、ビデオ処理サーバー107はデータベース103から第2の歩行エネルギーマップを取得する。
【0053】
一例では、ビデオ処理装置の第1の取得ユニット11によって300部分を実行してもよく、又は、ビデオ処理デバイスの通信インタフェース3によって外部デバイス又はクライアントから提供された処理対象ビデオを受信してもよく、又は、入力デバイス4(例えば、カメラ)によって処理対象ビデオを撮影してもよく、又は、プロセッサ1によってメモリ2のギャラリーから処理対象ビデオを取得してもよい。
【0054】
上記の識別子は、第1の取得ユニット11又はプロセッサ1によって割り当てることができる。
301部分:ディープニューラルネットワークに基づき、第1の歩行エネルギーマップと第2の歩行エネルギーマップに対して第1の歩行認識を行う。
一例では、301部分の入力は、ビデオ処理装置の第1の取得ユニット11によって実行されるか、又はプロセッサ1によって実行されることができる。
302A部分:第1及び第2の歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、第1及び第2の歩行エネルギーマップの融合歩行特徴ベクトルを抽出する。
ここで、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの歩行特徴ベクトルを含んでもよい。さらに、当該歩行エネルギーマップの識別子を含んでもよい。
【0055】
例えば、第1の歩行エネルギーマップのアイデンティティ情報は、第1の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよく、第2の歩行エネルギーマップのアイデンティティ情報は、第2の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよい。
融合歩行特徴ベクトルは、第1及び第2の歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって共同で決定される。本明細書では、融合歩行特徴ベクトルを取得する方法について後述する。
より具体的に、上記のディープニューラルネットワークは、アイデンティティ情報抽出レイヤーと、融合歩行特徴ベクトル抽出レイヤーとを含み得る。
ここで、上記のアイデンティティ情報抽出レイヤーは、少なくとも第1の抽出レイヤーと、第2の抽出レイヤーとを含み得る。
【0056】
一例では、
図5aを参照して、第1の抽出レイヤーは、入力された各歩行エネルギーマップの第1のレベルの歩行特徴ベクトルを抽出し、第1のレベルの歩行特徴ベクトルを第2の抽出レイヤーに入力し、第2の抽出レイヤーは、2つの歩行エネルギーマップ(例えば、第1の歩行エネルギーマップと第2の歩行エネルギーマップ)のそれぞれの第2のレベルの歩行特徴ベクトルを抽出する。
上記の融合歩行特徴ベクトル抽出レイヤーは、2つの歩行エネルギーマップの第2のレベルの歩行特徴ベクトルを融合することで、第2のレベルの融合歩行特徴ベクトルを取得してもよい。
【0057】
別の例では、
図5bを参照して、融合歩行特徴ベクトル抽出レイヤーは、ディープニューラルネットワークに入力された2つの歩行エネルギーマップ(例えば、第1の歩行エネルギーマップと第2の歩行エネルギーマップ)の第1のレベルの歩行特徴ベクトルを融合することで、第1のレベルの融合歩行特徴ベクトルを取得し、第1のレベルの融合歩行特徴ベクトルに基づき第2のレベルの融合歩行特徴ベクトルを抽出してもよい。
【0058】
この例では、融合歩行特徴ベクトル抽出レイヤーは、融合レイヤー(第1のレベルの歩行特徴ベクトルを融合することで第1のレベルの融合歩行特徴ベクトルを取得する)と、抽出レイヤー(第1のレベルの融合歩行特徴ベクトルに基づき第2のレベルの融合歩行特徴ベクトルを抽出して取得する)とをさらに含んでもよい。
【0059】
一例では、上記の第1の抽出レイヤーと第2の抽出レイヤーは、イメージ特徴ベクトルを抽出するための複数の特徴ベクトル抽出レイヤーをさらに含み得る論理層であってもよく、入力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが低く、出力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが高くなる。
【0060】
例えば、
図5cを参照して、アイデンティティ情報抽出レイヤーは、2つの歩行エネルギーマップの歩行特徴ベクトルをそれぞれ抽出するために、2つのチャネル(各チャネルがいずれも、第1の抽出レイヤーと第2の抽出レイヤーを含む)をそれぞれ含み得る。どのチャネルでも、まず、低レベルの歩行特徴ベクトルを抽出し、低レベルの歩行特徴ベクトルを組み合わせて、高レベルの歩行特徴ベクトルを抽出することができる。2つの歩行エネルギーマップで同じ操作を実行する必要があるため、第1の抽出レイヤーにおける2つのチャネルは重みを共有することができる。
【0061】
例えば、チャネルにおける第1の特徴ベクトル抽出レイヤーによって抽出された歩行特徴ベクトルレベルは最低で、一般的に、エッジ、コーナー、カーブなどであり(cov-16に対応し、ここで、「cov」が畳み込みを表し、16がフィルタの数を表し、フィルタの数は抽出された歩行特徴ベクトルの次元を決定する)、第2の特徴ベクトル抽出レイヤーは、第1の抽出レイヤーから出力された歩行特徴ベクトルの組み合わせ特徴ベクトル(cov-64に対応する)を抽出し、
以下同様に類推
される。抽出された歩行特徴ベクトルのレベルは、低レベルから中レベル、さらに高レベル/抽象(セマンティックレベル)であり、さらに、
図5cにおける「FC」が接続レイヤーを表し、「FC-2048」が2048個のニューロンを有する接続レイヤーを表し、抽出された特徴ベクトルは2048次元である。勿論、低レベルと中レベルを第1のレベルと総称してもよい。
【0062】
融合歩行特徴ベクトル抽出レイヤー(アイデンティティ情報抽出レイヤーの2つのチャネルとは独立した別のチャネルと見なすこともできる)について、低レベルの歩行特徴ベクトルを繋ぎ合わせて、低レベルの融合歩行特徴ベクトルを取得し、さらに、高レベル融合歩行特徴ベクトルが得られるまでに、より高いレベルの融合歩行特徴ベクトル(中レベル融合歩行特徴ベクトル)を抽出してもよい。
【0063】
又は、融合歩行特徴ベクトル抽出レイヤーは、中レベル歩行特徴ベクトルを繋ぎ合わせて、中レベル融合歩行特徴ベクトルを取得し、さらにより高いレベルの融合歩行特徴ベクトルを抽出してもよい。
【0064】
又は、融合歩行特徴ベクトル抽出レイヤーは、高レベル歩行特徴ベクトルを直接繋ぎ合わせて、高レベル融合歩行特徴ベクトルを取得してもよい。
【0065】
図5cに示すように、低レベルの歩行特徴ベクトルと中レベル歩行特徴ベクトルを第1のレベルの歩行特徴ベクトルと総称してもよい。勿論、第1のレベルの歩行特徴ベクトルは、最終的な中レベル歩行特徴ベクトルを含むと考えることもできる。
【0066】
勿論、融合歩行特徴ベクトル抽出レイヤーが低レベルの歩行特徴ベクトルを繋ぎ合わせて低レベルの融合歩行特徴ベクトルを取得する場合に、第1のレベルの歩行特徴ベクトルは、低レベルの歩行特徴ベクトルのみを含むことができる。
【0067】
当業者は、必要に応じて、柔軟に設計することができる。ここでは、繰り返さない。
【0068】
また、なお、
図5cに示する例は、次のようにも理解できる。前
段の6層ネットワーク構造は、それぞれ、1対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを抽出し、その後、2つの独立した操作に分割する。第1部分の操作は、第7層ネットワーク構造
で、それぞれの歩行特徴ベクトルを融合し、融合歩行特徴ベクトルを取得し、さらに、融合歩行特徴ベクトルをより高いレベルで抽出することを含む。第2部分の操作は、1対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを引き続き抽出して、第2のレベルの融合歩行特徴ベクトル、又は最終的な高レベル歩行特徴ベクトルを取得することを含む。
【0069】
本実施例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。
さらに、本実施例のディープニューラルネットワークがトレーニングプロセス中にパラメータを調整するときに、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれているアイデンティティ情報も考慮される。このようにトレーニングされたディープニューラルネットワークは、より識別性を持つ歩行特徴ベクトルをより効果的に抽出できる。そして、融合歩行特徴ベクトルは2つの歩行エネルギーマップの歩行特徴ベクトルによって共同で決定されるため、融合歩行特徴ベクトルはそれに応じて識別性がより高くなり、より正確な類似度を得ることができる。
【0070】
302B部分:少なくとも抽出された融合歩行特徴ベクトルに基づき、類似度を計算する。
類似度は、具体的にパーセンテージにすることができる。両者(アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクト)が同じオブジェクトに対応する確率のパーセンテージを表す。例えば、類似度が60%である場合、両者が同じ人物である可能性は60%である。
【0071】
一例では、融合歩行特徴ベクトルのみに基づいて、類似度を計算してもよい。
【0072】
別の例では、上記の融合歩行特徴ベクトルに基づき第1の類似度を計算し、2つの歩行エネルギーマップのアイデンティティ情報に基づき第2の類似度を計算し、次に、両者の加重和を求め(最も簡単なものは、加算して2で除算して平均を取る)、最終的な類似度を得ってもよい。
例えば、融合歩行特徴ベクトルに基づき計算した第1の類似度が80%であり、アイデンティティ情報に基づき計算した第2の類似度が60%であると仮定すると、最終的な類似度は、(80%+60%)/2=70%になる。
類似度を計算する方法は多数あるので、ここでは繰り返さない。
【0073】
上記の302Aと302B部分は、ディープニューラルネットワークによって実行される第1の歩行認識である。一例では、302Aと302B部分は、上記ビデオ処理装置の歩行認識ユニット12、又はプロセッサ1によって実行されてもよい。
【0074】
別の例では、
図5aと
図5bを参照して、上記のディープニューラルネットワークは、類似度計算レイヤーを含んでもよく、302B部分は、類似度計算レイヤーによって実行されてもよい。
303部分:ディープニューラルネットワークは認識結果を出力する。この認識結果は
、類似度、又は
、アイデンティティが認識されるべきオブジェクト
とアイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。
一例では、認識結果は上記の類似度を含み得る。
なお、認識結果は、入力された2つの歩行エネルギーマップが同じオブジェクトに属するかどうかを示す情報を含み得る。例えば、値「1」は、両者が同じオブジェクトに属することを表し、値「0」は、両者が異なるオブジェクトに属することを表す。
より具体的に、ディープニューラルネットワークは、1組の(2つの)歩行エネルギーマップに対して第1の歩行認識を実行する度に、認識結果を1回出力することができる。
又は、ディープニューラルネットワークは、第1の歩行認識のバッチが完了した後に、認識結果を1回出力することができる。
【0075】
例えば、オブジェクトAのアイデンティティが認識されるべきであり、データベースにアイデンティティが既知のオブジェクトのビデオが10個あり、10個の第2の歩行エネルギーマップを取得することができると仮定する。ある順序に従って、ディープニューラルネットワークは、オブジェクトAの第1の歩行エネルギーマップと10個の第2の歩行エネルギーマップの類似度を1つずつ計算し、計算が完了した後、ディープニューラルネットワークは認識結果を出力する。すると、上記の認識結果は、10個の類似度を含み得る。勿論、上記の認識結果は、2つの歩行エネルギーマップが同じオブジェクトに属するかどうかを識別する情報をさらに含み得る。
【0076】
別の例では、上記の認識結果は、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。例えば、第1及び第2の歩行エネルギーマップが異なるオブジェクトに属する確率を含む。この確率は、「1―類似度」で計算される。例えば、第1の歩行エネルギーマップと第2の歩行エネルギーマップの類似度が80%である場合、第1及び第2の歩行エネルギーマップが異なるオブジェクトに属する確率は20%である。
【0077】
第1及び第2の歩行エネルギーマップが同じオブジェクトに属するかどうかを判定する方法について、次の操作を実行することができる。
類似度が認識条件を満たす場合、第1の歩行エネルギーマップと第2の歩行エネルギーマップが同じオブジェクトに対応すると判定し、即ち、第2の歩行エネルギーマップに対応する一意の識別子は、当該アイデンティティが認識されるべきオブジェクトのアイデンティティを識別することができる。さもなければ、異なるオブジェクトに対応すると判定する。
上記の認識条件は、類似度が類似度閾値以上であるか、又は類似度が類似度閾値よりも大きいことを含む。
例えば、類似度閾値が80%であると仮定すると、2つの歩行エネルギーマップの類似度が70%である場合に、両者が同じ人物ではないと考えられ、2つの歩行エネルギーマップの類似度が80%よりも大きい(又は等しい)場合に、両者が同じ人物であると考えられる。したがって、第2の歩行エネルギーマップに対応する一意の識別子は、アイデンティティが認識されるべきブジェクトのアイデンティティを識別することができる。
【0078】
前述のように、データベースにアイデンティティが既知のオブジェクトのビデオ又は歩行エネルギーマップを記憶しており、本発明の他の実施例では、あるアイデンティティが既知のオブジェクトの第2の歩行エネルギーマップと第1の歩行エネルギーマップの類似度が認識条件を満たすか、又は、全てのアイデンティティが既知のオブジェクトの第2の歩行エネルギーマップと第1の歩行エネルギーマップの類似度が算出されるまでに、データベースにおけるアイデンティティが既知のオブジェクトの第2の歩行エネルギーマップと第1の歩行エネルギーマップの類似度を1つずつ計算してもよい。
【0079】
例えば、オブジェクトAのアイデンティティが認識され、データベースにアイデンティティが既知のオブジェクトのビデオが10個ある。ある順序に従って、類似度が上記の認識条件を満たすか、又は、10個の類似度が算出されるまでに、オブジェクトAの第1の歩行エネルギーマップと10個のアイデンティティが既知のオブジェクトの第2の歩行エネルギーマップの類似度を1つずつ計算する。
【0080】
勿論、本発明の他の実施例では、全てのアイデンティティが既知のオブジェクトの第2の歩行エネルギーマップと第1の歩行エネルギーマップの類似度を計算し、次に、認識条件に基づき、2つの歩行エネルギーマップが同じオブジェクトに属するかどうかを判定してもよい。
【0081】
なお、必要に応じて、ディープニューラルネットワークは、2つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。例えば、トレーニングプロセスでは、ディープニューラルネットワークは、損失値を計算するために、歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。
【0082】
以上のように、本実施例におけるディープニューラルネットワークは、トレーニングプロセスでは、アイデンティティ情報及び類似度に基づき、フィルタパラメータを調整し、つまり、パラメータが調整される場合に、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれるアイデンティティ情報が考慮される。このようにして、より識別性を持つ歩行特徴ベクトルをより効果的に抽出できる。また、融合歩行特徴ベクトルは、2つの歩行エネルギーマップの歩行特徴ベクトルによって決定されるため、融合歩行特徴ベクトルはそれに応じて識別性がより高くなり、より正確の類似度を得ることができる。
【0083】
以下では、ディープニューラルネットワークをトレーニングする方法を説明する。
なお、ディープニューラルネットワークには複数のフィルタがあり、トレーニングの主な目的はフィルタパラメータを調整することである。したがって、ニューラルネットワークのトレーニング又は最適化のプロセスは、フィルタパラメータを調整して損失関数の損失値を最小化するプロセスとしても理解できる(損失値が小さいほど、対応する予測/出力結果は実際の結果に近くなる)。
【0084】
既存のトレーニングプロセスでは、採用される損失関数は主に分類損失を反映している。つまり、2つの歩行エネルギーマップのカテゴリー(ここで、カテゴリーは異なる人々を区別することを指す)を判断し、抽出された同じ人物に対応する歩行特徴ベクトルができるだけ類似しており、抽出された異なる人物からの歩行特徴ベクトルができるだけ乖離していることを確保できないため、抽出された歩行特徴ベクトルが優れた識別性を持つことを保証できない。
【0085】
上記の問題を解决するために、本出願の実施例によって提供されるトレーニングプロセスのトレーニング目標は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけ、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させることを含む。
同時に、本出願の実施例はさらに、トレーニングによって上記のトレーニング目標を達成するために、新しい損失関数を提供する。
上記の新しい損失関数は、アイデンティティ情報損失関数と、融合歩行特徴ベクトル損失関数とを含む。
【0086】
図6及び
図7は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示している。このプロセスには、少なくとも次のステップが含まれる。
ステップS600は、トレーニングサンプルを取得する。
さらに、各トレーニングサンプルは、n個のトレーニングサブサンプルを含むことができ、任意のトレーニングサブサンプルは、2つの(1対の)アイデンティティが既知のオブジェクトの歩行エネルギーマップを含むことができる。上記nは、正の整数であってもよい。
具体的に、ステップS600は、前述の取得ユニット11、又はトレーニングユニット13、又はプロセッサ1によって実行され得る。
ステップS601は、ディープニューラルネットワークが、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第2の歩行認識を実行する。
【0087】
第2の歩行認識は、トレーニングサブサンプルにおける2つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、上記の2つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、少なくとも抽出された融合歩行特徴ベクトルに基づき、上記の2つの歩行エネルギーマップの類似度を計算することを含み得る。
【0088】
第2の歩行認識は、前述の第1の歩行認識と同様であり、具体的に、詳細については、上記302Aと302B部分に関する説明を参照されたい。ここで、繰り返さない。
ステップS601は、前述の歩行認識ユニット12、又はトレーニングユニット13、又はプロセッサ1によって実行され得る。
ステップS602は、歩行認識で抽出されたアイデンティティ情報に従って、アイデンティティ情報損失関数を使用して、トレーニングサンプルのアイデンティティ損失値を計算する。
さらに、アイデンティティ損失値が小さいほど、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルがより類似し、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルがより乖離することを示す。
ステップS603は、トレーニングサンプルの融合損失値を計算する。
ステップS602とステップS603の実行順序は、入れ替えてもよく、並列に実行してもよい。
ステップS604は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を取得する。
例えば、aが融合損失値を表し、bがアイデンティティ損失値を表し、cが最終的な損失値を表すと、3つの関係は次のようになる。
c=a+ηu・b、又はc=ηc・a+b、又はc=ηc・a+ηu・b。
【0089】
当業者は、必要に応じて、ηu、ηcの値を柔軟に設計することができ、ここでは繰り返さない。
ステップS605は、少なくとも1つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークのフィルタパラメータを調整する。
実際に、時間を節約して効率を向上させるために、一般的は、複数のトレーニングサンプル(例えば、64個のサンプル)をトレーニングした後、フィルタパラメータを1回調整する。即ち、各トレーニングサンプルの最終的な損失値を個別に計算した後、各最終的な損失値に基づきフィルタパラメータを調整することができる。
ステップS602から605は、前述のトレーニングユニット13又はプロセッサ1によって実行され得る。
【0090】
本実施例では、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標で、ディープニューラルネットワークをトレーニングし、抽出された同じ人物の歩行特徴ベクトルをできるだけ近づけ、抽出された異なる人物からの歩行特徴ベクトルをできるだけ乖離させることができ、これにより、抽出された歩行特徴ベクトルを良好に区別することができ、より正確な類似度を得ることができる。
【0091】
前述の説明では、トレーニングサンプルは、n個のトレーニングサブサンプルを含み得る。以下では、1つのトレーニングサンプルには3個のサブサンプルが含まれる(即ち、3対の歩行エネルギーマップが含まれる)ことを例として、トレーニングプロセスをより詳細に記載する。
1つのトレーニングサンプルには3個のサブサンプルが含まれる場合について、
図8にトレーニングフレームワークを示している。
図9は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示す。このプロセスは、少なくとも次のステップを含み得る。
ステップS900は、トレーニングサンプルを取得する。
【0092】
本実施例では、各トレーニングサンプルには、第1から第3のトレーニングサブサンプルが含まれ(第1及び第2、第3は、区別するためにのみ使用され、ディープニューラルネットワークへの入力の順序を表さない)、第1から第3のトレーニングサブサンプルの組み合わせ方式は、次の方式を含み得る。
第1の組み合わせ方式は、第1のトレーニングサブサンプルにおける2つの歩行エネルギーマップが同じオブジェクトに対応し、第2のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応し、第3のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応することである。
第2の組み合わせ方式は、第1のトレーニングサブサンプルにおける2つの歩行エネルギーマップが同じオブジェクトに対応し、第2のトレーニングサブサンプルの2つの歩行エネルギーマップが同一オブジェクトに対応し、第3のトレーニングサブサンプルにおける2つの歩行エネルギーマップが異なるオブジェクトに対応することである。
具体的に、ステップS900は、前述の第1の取得ユニット11、又はトレーニングユニット13、又はプロセッサ1によって実行され得る。
ステップS901:ディープニューラルネットワークは、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第2の歩行認識を実行する。
第2の歩行認識を実行する方法については、前述の302Aと302B部分に関する説明を参照されたい。ここでは繰り返さない。
ステップS901は、前述の歩行認識ユニット12、又はトレーニングユニット13、又はプロセッサ1によって実行され得る。
ステップS902は、トレーニングサンプルにおける第1から第3のトレーニングサブサンプルの組み合わせ方式が上記の第1の組み合わせ方式である場合に、第1のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
【0093】
第1のアイデンティティ損失関数は、次のようになる。
ただし、Luはアイデンティティ損失値を表し、ηは係数を表し(値の範囲が0から1である)、
はユークリッド距離を表し、
p、g、p′、g′、p″及びg″は歩行エネルギーマップの識別子を表し、XpとXgは、第1のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し(Xpは第1の歩行エネルギーマップとも呼ばれ、Xgは第2の歩行エネルギーマップとも呼ばれる)、Xp′とXg′は第2のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し(Xp′は第3の歩行エネルギーマップとも呼ばれ、Xg′は第4の歩行エネルギーマップとも呼ばれる)、Xp″とXg″は第3のトレーニングサブサンプルにおける1対の歩行エネルギーマップを表し(Xp″は第5の歩行エネルギーマップとも呼ばれ、Xg″は第6の歩行エネルギーマップとも呼ばれる)、そして、XpとXp′は同じオブジェクトに対応し、XpとXp″は異なるオブジェクトに対応し、
U(Xp)からU(Xg″)は各歩行エネルギーマップの歩行特徴ベクトルを表す。
【0094】
なお、第1のアイデンティティ損失関数における
は、第1のトレーニングサブサンプルにおける2つの歩行特徴ベクトルのユークリッド距離を表す。XpとXgは同じオブジェクトに対応しているので、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけるためは、
ができるだけ小さくなる(0に近い)ように、フィルタパラメータを調整する。
Xp′とXg′は異なるオブジェクトに対応しているので、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させるために、
ができるだけ大きくなる(1に近い)ように、フィルタパラメータを調整する。
さらに、
ができるだけ小さく、
ができるだけ大きくなる場合、第1のアイデンティティ損失関数における
も、できるだけ小さくなる。
同様に、
ができるだけ小さく、
ができるだけ大きい場合、第1のアイデンティティ損失関数における
も、できるだけ小さくなる。
以上のように、上記の第1のアイデンティティ損失関数は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【0095】
ステップS903は、トレーニングサンプルにおける第1から第3のトレーニングサブサンプルの組み合わせ方式が上記の第2の組み合わせ方式である場合に、第2のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
第2のアイデンティティ損失関数は、次のようになる。
ただし、XpとXp′は同じオブジェクトに対応し、XpとXp″は異なるオブジェクトに対応する。
第2の組み合わせでは、XpとXgは同じオブジェクトに対応し、Xp′とXg′は同じオブジェクトに対応し、XpとXp″は異なるオブジェクトに対応するため、
はできるだけ大きく、被減数として使用されることが望ましい。
第2のアイデンティティ損失関数は同様に、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【0096】
ステップS904は、融合歩行特徴ベクトル損失関数を使用して、トレーニングサンプルの融合損失値を計算する。
一例では、各トレーニングサブサンプルに対応する融合損失サブ値を計算し、次に、各トレーニングサブサンプルの融合損失サブ値を累積して、融合損失値を得ることができる。
融合歩行特徴ベクトル損失関数は、様々な表現形態を有する。
融合損失値としてクロスエントロピーが計算される場合、一例では、あるトレーニングサブサンプルの融合損失サブ値(クロスエントロピー)を計算する融合歩行特徴ベクトル損失関数は、次のようになる。
Lc=-P(xab)logQ(xab)。
ただし、a、bは、任意のトレーニングサブサンプルにおける1対の歩行エネルギーマップの識別子を表し、xabは当該トレーニングサブサンプルにおける1対の歩行エネルギーマップペアを表し、P(xab)は当該1対の歩行エネルギーマップに対応するラベルの分布状況(実際結果/実際ラベル分布)を表し、Q(xab)はトレーニングされるディープニューラルネットワークの予測結果(予測された認識結果)を表す。
【0097】
例えば、2つの歩行エネルギーマップa及びbが同じオブジェクトに対応する場合、実際のラベル分布は「1,0」であり、その中の「1」は、2つの歩行エネルギーマップが同じオブジェクトからのものである確率が100%であることを表し、「0」は、2つの歩行エネルギーマップが異なるオブジェクトからのものである確率が0%であることを表す。
予測認識結果を「0.7,0.3」とすると、「1,0」と「0.7,0.3」のクロスエントロピーを求めることができる。
2つの歩行エネルギーマップa及びbが異なるオブジェクトに対応する場合、ラベルの実際分布は「0,1」であり、その中の「0」は、2つの歩行エネルギーマップが同じオブジェクトからのものである確率が0%であることを表し、「1」は、2つの歩行エネルギーマップが異なるオブジェクトからのものである確率が100%であることを表す。
予測認識結果を「0.7,0.3」とすると、「0,1」と「0.7,0.3」のクロスエントロピーを求めることができる。
別の例では、融合歩行特徴ベクトル損失関数は、前述の異なる組み合わせによって、第1の融合歩行特徴ベクトル損失関数と第2の融合歩行特徴ベクトル損失関数を含み得る。
【0098】
前述の第1の組み合わせに対応して、第1の融合歩行特徴ベクトル損失関数は、次のようになる。
ただし、Lcは融合損失値を表し、μとη
cは重み付け係数を表し、その値は0から1の間であり、δは緩和係数を表し、その値の範囲は0から1であり、||*||
+は、値を0と比較して、両方の大きい方を取ること、即ち、max(*
,0)を表し、
x
pgは歩行エネルギーマップp、gで構成される歩行エネルギーマップペアを表し、これによって類推して、x
pgからx
gp′は歩行エネルギーマップペアを表し、C(*)は2つの歩行エネルギーマップペアの間のラベル分布が同じである確率を計算するための確率計算関数である。
C(x
pg,x
p″g″)を例にとると、歩行エネルギーマップペアx
pgと歩行エネルギーマップペアx
p″g″のラベル分布が同じである確率を計算し、C(x
pg,x
pg″)を例にとると、歩行エネルギーマップペアx
pgと歩行エネルギーマップペアx
pg″のラベル分布が同じである確率を計算する。
【0099】
前述の説明では、2つの歩行エネルギーマップが同じオブジェクトに対応する場合に、ラベル分布は「1,0」であり、さもなければ、ラベル分布は「0,1」である。
歩行エネルギーマップペアxpgを例にとると、歩行エネルギーマップp、gが同じオブジェクトに対応する場合、xpgのラベル実際分布は「1,0」であり、歩行エネルギーマップp、gが異なるオブジェクトに対応する場合、xpgのラベル分布は「0,1」である。同様に、他の歩行エネルギーマップペアの実際ラベル分布を推測できる。
D[*]は、ユークリッド距離を表し、D[C(xpg,xp″g″),C(xpg,xpg″)]を例にとると、確率aと確率bの距離を計算し、ここで、確率aはxpgとxp″g″のラベル分布が同じである確率を表し、確率bはxpgとxpg″のラベル分布が同じである確率を表す。
理論的には、xpgとxp″g″のラベル分布が同じであり(例えば、いずれも「1,0」又は「0,1」である)、かつ、xpgとxpg″のラベル分布が同じである場合、D[C(x pg,x p″g″),C(x pg,x pg″)]は0である。
又は、xpgとxp″g″のラベル分布が異なり、かつ、xpgとxp″g″のラベル分布も異なる場合、D[C(xpg,xp″g″),C(xpg,xpg″)]は0である。
【0100】
xpgとxp″g″のラベル分布が同じである(例えば、いずれも「1,0」又は「0,1」である)が、xpgとxpg″のラベル分布が異なる場合、又は、xpgとxp″g″のラベル分布が異なるが、xpgとxpg″のラベル分布が同じである場合、D[C(x pg,x p″g″),C(x pg,x pg″)]は大きければ大きいほど良い。
実際には、上記の第1の組み合わせでは、p、g、p′は同じオブジェクトに対応し、「p、g′、p″、g″」、「g、g′、p″、g″」又は「g′、p″、g″」は異なるオブジェクトに対応する。p、g、p′から任意の2つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「1,0」である歩行エネルギーマップペアが得られる。同様に、「p、g′、p″、g″」、「g、g′、p″、g″」又は「g′、p″、g″」から任意の2つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「0,1」である歩行エネルギーマップペアが得られる。歩行エネルギーマップペアの間のラベルの同じ又は異なる関係によって、それらをC関数における異なる位置に入力して、別の第1の融合歩行特徴ベクトル損失関数を取得することができる。
以上のように、C関数における2つの歩行エネルギーマップペアを1つの計算サンプルと見なすと、D[*]は2つの計算サンプルの間のラベル分布が同じである確率の距離を計算する。
【0101】
トレーニングでは、次のようなトレーニング目標を達成するように、フィルタパラメータを調整する必要がある。
2つの計算サンプルについて、第1の計算サンプルにおける2つの歩行エネルギーマップペアのラベル実際分布が同じであって、第2の計算サンプルにおける2つの歩行エネルギーマップペアのラベル実際分布が異なる場合、第1の計算サンプルに対応する第1の確率と第2の計算サンプルに対応する第2の確率は乖離し、さもなければ、第1の確率と第2の確率は近づく。ここで、第1の確率は、第1の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである確率であり、第2の確率は、第2の計算サンプルにおける2つの歩行エネルギーマップペアの間のラベル分布が同じである確率である。
【0102】
第2の組み合わせに対応して、トレーニング目標を満たす第2の融合歩行特徴ベクトル損失関数は、次のようになる。
第2の組み合わせでは、p、g、p′、g′は同じオブジェクトからのものであり、「p、p″、g″」又は「g、p″、g″」は異なるオブジェクトに対応する。p、g、p′、g′から任意の2つの歩行エネルギーマップを選択して組み合わせて、ラベルが「1,0」である歩行エネルギーマップペアが得られる。同様に、「p、p″、g″」又は「g、p″、g″」から任意の2つの歩行エネルギーマップを選択して組み合わせて、ラベルが「0,1」である歩行エネルギーマップペアが得られる。歩行エネルギーペアの間のラベルの同じ又は異なる関係によって、それらをC関数における異なる位置に入力して、別の第2の融合歩行特徴ベクトル損失関数を取得する。
【0103】
上記の融合歩行特徴ベクトル損失関数は、一方では、各組の歩行エネルギーマップを分類することができ、他方では、各2組の歩行エネルギーマップの特点に基づき、同じカテゴリーからのものである場合に、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合に、特徴ベクトルをできるだけ乖離させる。
ステップS905は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を得る。
ステップS905は、前述のS604と同様であるので、ここでは繰り返さない。
ステップS906は、少なくとも1つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークにおけるフィルタパラメータを調整する。
ステップS906は、前述のステップS605と同様であるので、ここでは繰り返さない。
ステップS902-905は、前述のトレーニングユニット13又はプロセッサ1によって実行され得る。
【0104】
なお、
図8では、F1―F3は歩行エネルギーマップペアを表し、D(C(F1),C(F2))におけるD(*)は距離を表し、Cは確率計算関数を表し、ID(=)は、同じオブジェクトからの確率を表し、ID(≠)は、異なるオブジェクトからの確率を表す。
【0105】
本実施例では、各トレーニングサブサンプルが入力された後、ディープニューラルネットワークを利用して各歩行エネルギーマップの歩行特徴ベクトルを抽出し、そして、それらを融合してから、損失関数を使用して、トレーニングされるディープニューラルネットワークを調整する。一方では、各組の歩行エネルギーマップを分類し、他方では、各2組の特点に基づき、同じカテゴリーからのものである場合、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合、特徴ベクトルをできるだけ乖離させる。ネットワークトレーニングが完了した後、トレーニング済みのディープニューラルネットワークを歩行認識に使用することができる。
【0106】
本発明の実施例はさらに、ビデオ処理デバイスを保護請求する。当該ビデオ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。当該プロセッサは、メモリに格納されたプログラムを実行し、他のデバイスを呼び出すことによって、上記のビデオ処理方法を実行する。
【0107】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。命令は、本発明の任意の実施例によって提供されるビデオ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【0108】
歩行は一種の姿勢であるので、本発明の実施例は、姿勢認識を実現するためのイメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体を対象とすることができる。
【0109】
上記のイメージ処理方法は、
アイデンティティが認識されるべきオブジェクトの第1の姿勢エネルギーマップ(又は、第1の姿勢マップ)を取得するステップと、
アイデンティティが既知のオブジェクトの第2の姿勢エネルギーマップ(又は、第2の姿勢マップ)を取得するステップと、
第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップをディープニューラルネットワークに入力して、第1の姿勢認識を行うステップと、を含み、
さらに、第1の姿勢認識は、
第1及び第2の姿勢エネルギーマップに対応するアイデンティティ情報を抽出し、前記第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップの姿勢特徴によって融合姿勢特徴ベクトルを決定するステップであって、前記第1の姿勢エネルギーマップのアイデンティティ情報が前記第1の姿勢エネルギーマップの姿勢特徴を含み、前記第2の姿勢エネルギーマップのアイデンティティ情報が前記第2の姿勢エネルギーマップの姿勢特徴を含むステップと、
少なくとも融合姿勢特徴ベクトルに基づき、第1の姿勢エネルギーマップと第2の姿勢エネルギーマップの類似度を計算するステップと、を含む。
【0110】
本実施例におけるアイデンティティ情報、融合姿勢特徴ベクトルは、前記アイデンティティ情報及び融合歩行特徴ベクトルと同様であるので、ここでは繰り返さない。
なお、アイデンティティが認識されるべきオブジェクトは人間であってもよく、動物であってもよく、さらに、生命のない移動又は静止しているものであってもよい。
上記のイメージ処理装置は、ソフトウェア又はハードウェアの形でイメージ処理デバイスに適用されてもよい。具体的に、イメージ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(PC)であってもよく、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ipadなどの端末であってもよい。
【0111】
ソフトウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
ハードウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、例示的に、端末又はサーバーのコントローラ/プロセッサであってもよい。
【0112】
上記のイメージ処理方法の他の適用シナリオは、
図10に例示的に示されている。イメージ処理デバイス1001は、アイデンティティが認識されるべきオブジェクトの第1の姿勢エネルギーマップを取得し、データベース1002におけるアイデンティティが既知のオブジェクトの第2の姿勢エネルギーマップに基づいて、第1の姿勢認識を行う。
【0113】
なお、ディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記のシナリオにはトレーニングデバイス1003をさらに含んでもよい。勿論、トレーニングデバイス1003の機能は、イメージ処理デバイス1001によって実現されてもよい。トレーニングデバイス1003は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用されることができる。
【0114】
イメージ処理装置の例示的な構成は、
図11に示すように、2の取得ユニット111と、姿勢認識ユニット112とを含む。
ただし、第2の取得ユニット111は、アイデンティティが認識されるべきオブジェクトの第1の姿勢エネルギーマップを取得し、アイデンティティが既知のオブジェクトの第2の姿勢エネルギーマップを取得するために使用され、
姿勢認識ユニット112は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第2の取得ユニット111によって提供された第1の姿勢エネルギーマップ及び第2の姿勢エネルギーマップに対して、第1の姿勢認識を行う。
【0115】
第1の姿勢認識について
は、前述の説明を参照
されたい。ここでは、繰り返さない。
本発明の他の実施例では、
図11bを参照し、上記のイメージ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット113をさらに含んでもよい。
トレーニングプロセスには、第2の姿勢認識が含まれ、第2の姿勢認識は、第1の姿勢認識と同様であるので、ここでは繰り返さない。
【0116】
また、本実施例におけるトレーニングプロセスは、前述の実施例におけるトレーニングプロセスと同様であり、トレーニング目標は、前述の実施例におけるトレーニング目標と同様であり、式も同様であるので、ここでは繰り返さない。
イメージ処理デバイスの別の可能な構造の概略図について、
図2cを参照することができ、ここでは繰り返さない。
本発明の実施例は、また、イメージ処理デバイスを保護請求する。当該イメージ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。このプロセッサは、メモリに格納されたプログラムを実行し、他の装置を呼び出すことによって、上記のイメージ処理方法を実行する。
【0117】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。命令は、本発明の実施例によって提供されるイメージ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【0118】
本明細書における各実施例は、漸進的に説明された。各実施例は、ともに他の実施例との違いを重要に説明して、各実施例の間の同じ又は類似する部分について、互いに参照することができる。実施例に開示された装置について、実施例に開示された方法に対応するため、説明は比較的簡単であり、関連部分については方法部分の説明を参照されたい。
【0119】
専門家はさらに、本明細書に開示された実施例を結合して説明される各例におけるユニット及びアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、又はそれらの組み合わせによって実現され得ることを理解することができる。ハードウェアとソフトウェアの互換性を明確に説明するために、上記の説明では、機能に従って、各例の構成及びステップを一般的に説明した。これらの機能がハードウェア又はソフトウェアのどちらで実行されるかは、技術的解決策の特定の適用及び設計制約条件に依存する。当業者は、特定の適用ごとに異なる方法を使用して、説明された機能を実現することができるが、このような実現は本発明の範囲を超えるものと見なされるべきではない。
【0120】
本明細書に開示された実施例と結合して説明される方法又はアルゴリズムのステップは、ハードウェア、プロセッサによって実行されるソフトウェアユニット、又はそれらの組み合わせによって直接実施され得る。ソフトウェアユニットは、ランダムアクセスメモリ(RAM)、メモリ、読み取り専用メモリ(ROM)、電気的にプログラム可能なROM、電気的に消去可能なプログラマブルROM、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、又は技術分野で知られている任意の他の形式の記憶媒体に配置できる。
【0121】
開示された実施例に関する上記の説明は、当業者が本発明を実施又は使用することを可能にする。これらの実施例に対する様々な修正は当業者には明らかであり、本明細書で定義された一般的な原理は、本発明の精神又は範囲から逸脱することなく、他の実施例で実現することができる。したがって、本発明は、本明細書に示されるこれらの実施例に限定されず、本明細書に開示された原理及び新規の特徴と一致する最も広い範囲に適合すべきである。