(57)【要約】  本発明の実施例はビデオ処理方法及び関連装置、イメージ処理方法及び関連装置を提供する。ビデオ処理方法は、アイデンティティが認識されるべきオブジェクトを含む処理対象ビデオを取得し、第１の歩行エネルギーマップを生成するステップと、アイデンティティが既知のオブジェクトを含むビデオに基づき生成された第２の歩行エネルギーマップを取得するステップと、第１及び第２の歩行エネルギーマップをディープニューラルネットワークに入力して、第１の歩行認識を行うステップとを含み、第１の歩行認識は、第１及び第２の歩行エネルギーマップのそれぞれのアイデンティティ情報を抽出し、第１及び第２の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップと、少なくとも融合歩行特徴ベクトルに基づき類似度を計算するステップとを含み、第１の歩行エネルギーマップのアイデンティティ情報は歩行特徴ベクトルを含み、第２の歩行エネルギーマップのアイデンティティ情報は歩行特徴ベクトルを含む。
2021515321.tif 000002
【特許請求の範囲】
【請求項１】
メディア処理装置に適用されるメディア処理方法であって、
処理対象ビデオを取得するステップであって、前記処理対象ビデオが、アイデンティティが認識されるべきオブジェクトを含むステップと、
前記処理対象ビデオに基づき第１の歩行エネルギーマップを生成するステップと、
第２の歩行エネルギーマップを取得するステップであって、前記第２の歩行エネルギーマップが、アイデンティティが既知のオブジェクトを含むビデオに基づき生成されるステップと、
ディープニューラルネットワークに基づき、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップに対して第１の歩行認識を実行するステップと、を含み、
前記第１の歩行認識は、
前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップであって、前記第１の歩行エネルギーマップのアイデンティティ情報が前記第１の歩行エネルギーマップの歩行特徴ベクトルを含み、前記第２の歩行エネルギーマップのアイデンティティ情報が前記第２の歩行エネルギーマップの歩行特徴ベクトルを含むステップと、
少なくとも前記融合歩行特徴ベクトルに基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度を計算するステップと、
を含むことを特徴とする方法。
【請求項２】
少なくとも抽出された融合歩行特徴ベクトルに基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度を計算する前記ステップは、
前記融合歩行特徴ベクトルに基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの第１の類似度を計算するステップと、
前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報に基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの第２の類似度を計算するステップと、
前記第１の類似度と第２の類似度に基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度を計算するステップと、を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記ディープニューラルネットワークは、アイデンティティ情報抽出レイヤー及び融合歩行特徴ベクトル抽出レイヤーを含み、前記アイデンティティ情報抽出レイヤーは少なくとも第１の抽出レイヤー及び第２の抽出レイヤーを含み、
前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定する前記ステップは、
前記第１の抽出レイヤーによって、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応する第１のレベルの歩行特徴ベクトルを抽出するステップと、
前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応する第１のレベルの歩行特徴ベクトルに基づき、前記第２の抽出レイヤーによって、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応する第２のレベルの歩行特徴ベクトルを抽出するステップと、
前記融合歩行特徴ベクトル抽出レイヤーによって、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応する第２のレベルの歩行特徴ベクトルを融合することで、第２のレベルの融合歩行特徴ベクトルを取得し、前記第２のレベルの融合歩行特徴ベクトルを前記融合歩行特徴ベクトルとするステップ、又は、
前記融合歩行特徴ベクトル抽出レイヤーによって、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップのそれぞれに対応する第１のレベルの歩行特徴ベクトルを融合することで第１のレベルの融合歩行特徴ベクトルを取得し、前記第１のレベルの融合歩行特徴ベクトルに基づき、第２のレベルの融合歩行特徴ベクトルを抽出して取得し、前記第２のレベルの融合歩行特徴ベクトルを前記融合歩行特徴ベクトルとするステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
認識結果を取得するステップをさらに含み、
前記認識結果は、前記類似度、又は、前記アイデンティティが認識されるべきオブジェクトと前記アイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかを示す情報を含む、ことを特徴とする請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記ディープニューラルネットワークがトレーニングプロセスにおいて、アイデンティティ情報と融合歩行特徴ベクトルに基づきフィルタパラメータを調整するステップ、をさらに含み、
前記トレーニングプロセスのトレーニング目標は、
同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似することと、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離すること、を含む、ことを特徴とする請求項１に記載の方法。
【請求項６】
前記トレーニングプロセスで使用される各トレーニングサンプルにｎ個のトレーニングサブサンプルが含まれ、何れの前記トレーニングサブサンプルにも、２つのアイデンティティが既知のオブジェクトの歩行エネルギーマップが含まれ、前記ｎは正の整数であり、
前記トレーニングプロセスは、
前記ディープニューラルネットワークを使用して、前記トレーニングサンプルにおける各トレーニングサブサンプルに対して第２の歩行認識を実行するステップであって、前記第２の歩行認識が、前記トレーニングサブサンプルにおける２つの歩行エネルギーマップのそれぞれのアイデンティティ情報及び前記２つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、少なくとも抽出された融合歩行特徴ベクトルに基づき、前記２つの歩行エネルギーマップの類似度を計算することを含むステップと、
前記第２の歩行認識にて抽出されたアイデンティティ情報に基づき、アイデンティティ情報損失関数を使用して、前記トレーニングサンプルのアイデンティティ損失値を計算するステップであって、前記アイデンティティ損失値が小さいほど、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルがより類似し、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルがより乖離することを示すステップと、
融合歩行特徴ベクトル損失関数を使用して、前記トレーニングサンプルの融合損失値を計算するステップと、
前記融合損失値とアイデンティティ損失値の加重和を求めて、前記トレーニングサンプルの最終的な損失値を得るステップと、
少なくとも１つのトレーニングサンプルの最終的な損失値に基づき、前記ディープニューラルネットワークのフィルタパラメータを調整するステップと、
を含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記ｎ＝３であり、前記トレーニングサンプルは、第１から第３のトレーニングサブサンプルを含み、前記第１から第３のトレーニングサブサンプルの組み合わせ方式は、第１の組み合わせ方式又は第２の組み合わせ方式を含み、
前記第１の組み合わせ方式は、前記第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、前記第２のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応し、前記第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することであり、
前記第２の組み合わせ方式は、前記第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、前記第２のトレーニングサブサンプルにおける２つの歩行エネルギーマップが前記同じオブジェクトに対応し、前記第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することである、ことを特徴とする請求項６に記載の方法。
【請求項８】
前記第１から第３のトレーニングサブサンプルが前記第１の組み合わせ方式である場合に、前記アイデンティティ情報損失関数は、次の式を含み、
2021515321.tif 000018
ただし、Ｌｕはアイデンティティ損失値を表し、ηは係数を表し、
2021515321.tif 000019
はユークリッド距離を表し、
ｐ、ｇ、ｐ′、ｇ′、ｐ″及びｇ″は歩行エネルギーマップの識別子を表し、ＸｐとＸｇは第１のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、Ｘｐ′とＸｇ′は第２のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、Ｘｐ″とＸｇ″は第３のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、また、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応し、
Ｕ(Ｘｐ)からＵ(Ｘｇ″)は各歩行エネルギーマップの歩行特徴ベクトルを表す、ことを特徴とする請求項７に記載の方法。
【請求項９】
前記第１から第３のトレーニングサブサンプルが前記第２の組み合わせ方式である場合に、前記アイデンティティ情報損失関数は、次の式を含み、
2021515321.tif 000020
ただし、Ｌｕはアイデンティティ損失値を表し、ηは係数を表し、
2021515321.tif 000021
はユークリッド距離を表し、
ｐ、ｇ、ｐ′、ｇ′、ｐ″及びｇ″は歩行エネルギーマップの識別子を表し、ＸｐとＸｇは第１のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、Ｘｐ′とＸｇ′は第２のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、Ｘｐ″とＸｇ″は第３のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し、また、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応し、
Ｕ(Ｘｐ)からＵ(Ｘｇ″)は各歩行エネルギーマップの歩行特徴ベクトルを表す、ことを特徴とする請求項７に記載の方法。
【請求項１０】
前記トレーニング目標は、
第１の計算サンプルにおける２つの歩行エネルギーマップペアの実際ラベル分布が同じであって、第２の計算サンプルにおける２つの歩行エネルギーマップペアの実際ラベル分布が異なる場合に、前記第１の計算サンプルに対応する第１の確率を第２の計算サンプルに対応する第２の確率から乖離させ、さもなければ、前記第１の確率を前記第２の確率に近づけることをさらに含み、
前記第１の計算サンプルと第２の計算サンプルはそれぞれ、２つの歩行エネルギーマップペアを含み、
前記第１の確率は、前記第１の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率であり、前記第２の確率は、前記第２の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率である、ことを特徴とする請求項８又は９に記載の方法。
【請求項１１】
前記第１から第３のトレーニングサブサンプルが前記第１の組み合わせ方式である場合に、前記融合歩行特徴ベクトル損失関数は、次の式を含み、
2021515321.tif 000022
ただし、Ｌｃは融合損失値を表し、μとηｃは重み付け係数を表し、δは緩和係数を表し、ｘｐｇからｘｇｐ′は各歩行エネルギーマップペアを表し、Ｐ(*)は１つの歩行エネルギーマップペアに対応する実際ラベル分布を表し、Ｑ(*)は前記ディープニューラルネットワークによる前記歩行エネルギーマップペアの予測結果を表し、Ｐ(*)ｌｏｇ  Ｑ(*)は実際ラベル分布と予測結果に対してクロスエントロピーを求めることを表し、||*||  +は値を０と比較し、両方の大きい方を取ることを表し、Ｃ(*)は第１の計算サンプル又は第２の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率を計算するための確率計算関数であり、Ｄ[*]関数は第１の計算サンプルと第２の計算サンプルのユークリッド距離を計算するために使用される、ことを特徴とする請求項１０に記載方法。
【請求項１２】
前記第１から第３のトレーニングサブサンプルが前記第２の組み合わせ方式である場合に、前記融合歩行特徴ベクトル損失関数は、次の式を含み、
2021515321.tif 000023
ただし、Ｌｃは融合損失値を表し、μ及びηｃは重み付け係数を表し、δは緩和係数を表し、ｘｐｇからｘｇｐ′は各歩行エネルギーマップペアを表し、Ｐ(*)は１つの歩行エネルギーマップペアに対応する実際ラベル分布を表し、Ｑ(*)は前記ディープニューラルネットワークによる前記歩行エネルギーマップペアの予測結果を表し、Ｐ(*)ｌｏｇ  Ｑ(*)は実際ラベル分布と予測結果に対してクロスエントロピーを求めることを表し、||*||  +は、値を０と比較し、両方の大きい方を取ることを表し、Ｃ(*)は第１の計算サンプル又は第２の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである予測確率を計算するための確率計算関数であり、Ｄ[*]関数は第１の計算サンプルと第２の計算サンプルのユークリッド距離を計算するために使用される、ことを特徴とする請求項１０に記載の方法。
【請求項１３】
アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップを取得するステップと、
アイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップを取得するステップと、
ディープニューラルネットワークに基づき、前記第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップに対して第１の姿勢認識を行うステップと、
をさらに含み、
前記第１の姿勢認識は、
前記第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップに対応するアイデンティティ情報を抽出し、前記第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップの姿勢特徴によって融合姿勢特徴ベクトルを決定するステップであって、前記第１の姿勢エネルギーマップのアイデンティティ情報が前記第１の姿勢エネルギーマップの姿勢特徴を含み、前記第２の姿勢エネルギーマップのアイデンティティ情報が前記第２の姿勢エネルギーマップの姿勢特徴を含むステップと、
少なくとも前記融合姿勢特徴ベクトルに基づき、前記第１の姿勢エネルギーマップと第２の姿勢エネルギーマップの類似度を計算するステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項１４】
メディア処理装置であって、
少なくともプロセッサとメモリを含み、
前記プロセッサは、前記メモリに格納されたプログラムを実行し、他の装置を呼び出すことにより、請求項１乃至１３のいずれか１項に記載のメディア処理方法を実行する、ことを特徴とする装置。
【請求項１５】
複数の命令が記憶される記憶媒体であって、
前記命令は、請求項１乃至１３のいずれか１項に記載のメディア処理方法を実行するためにプロセッサによってロードされるように適合される、ことを特徴とする記憶媒体。
【請求項１６】
コンピュータに、請求項１乃至１３のうちのいずれか１項に記載のメディア処理方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１８年０４月１２日に中国特許庁に提出された、出願番号が２０１８１０３２７６３８.４であって、発明の名称が「ビデオ処理方法及び関連装置、イメージ処理方法及び関連装置」である中国特許出願に基づく優先権を主張するものであり、その全内容を本開示に参照により援用する。
【０００２】
本発明は、歩行認識技術分野に関し、具体的に、ビデオ処理方法、ビデオ処理装置、ビデオ処理デバイス及び記憶媒体、イメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体に関する。
【背景技術】
【０００３】
多くのシナリオで、歩行認識が必要である。例えば、公共の場所には屋外カメラがたくさんあるが、カメラは一般的に人から遠く離れており、撮影したイメージ又はビデオについて、顔によって歩行者認識を行うことができない。歩行認識技術は、人の歩行特徴ベクトルに基づいて歩行者認識を行うことができ、顔に基づいて認識する必要がなく、高精細な画質も必要としないので、歩行認識技術は１つの重要な研究の方向になった。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の実施例は、歩行認識を実現するためのメディア処理方法、メディア処理装置及び記憶媒体を提供し、さらに、本発明の実施例は、姿勢認識を実現するためのイメージ処理方法、イメージ処理デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【０００５】
本発明の実施例は、上記の目的を達成するために、以下の技術的解決策を提供する。
メディア処理装置に適用されるメディア処理方法であって、
処理対象ビデオを取得するステップであって、前記処理対象ビデオが、アイデンティティが認識されるべきオブジェクトを含むステップと、
前記処理対象ビデオに基づき第１の歩行エネルギーマップを生成するステップと、
第２の歩行エネルギーマップを取得するステップであって、前記第２の歩行エネルギーマップが、アイデンティティが既知のオブジェクトを含むビデオに基づき生成されるステップと、
ディープニューラルネットワークに基づき、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップに対して第１の歩行認識を行うステップと、
を含み、
前記第１の歩行認識は、
前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップであって、前記第１の歩行エネルギーマップのアイデンティティ情報が前記第１の歩行エネルギーマップの歩行特徴ベクトルを含み、前記第２の歩行エネルギーマップのアイデンティティ情報が前記第２の歩行エネルギーマップの歩行特徴ベクトルを含むステップと、
少なくとも前記融合歩行特徴ベクトルに基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度を計算するステップと、
を含む方法。
【０００６】
この実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子及び歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定され、その後、少なくとも融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【０００７】
メディア処理装置であって、少なくともプロセッサとメモリを含み、前記プロセッサは、前記メモリに格納されたプログラムを実行し、他の装置を呼び出すことにより、上記のメディア処理方法を実行する。
【０００８】
本発明の実施例は、記憶媒体をさらに提供し、前記記憶媒体は、複数の命令を記憶し、前記命令は、本発明の実施例によって提供されるメディア処理方法のいずれかを実行するために、プロセッサによってロードされるように適合される。
【０００９】
本実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの融合姿勢特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と姿勢特徴ベクトルを含む)も抽出し、そして、融合姿勢特徴ベクトルは姿勢特徴ベクトルによって決定され、その後、少なくとも融合姿勢特徴ベクトルに基づき２つの姿勢エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する姿勢認識が実現される。
【図面の簡単な説明】
【００１０】
【図１】図１ａから図１ｄは、本発明の実施例によるビデオ処理適用シナリオの例示的な構造図である。
【図２】図２ａ及び図２ｂは、本発明の実施例によるビデオ処理装置の例示的な構造図であり、図２ｃは、本発明の実施例によるビデオ処理デバイスの例示的な構造図である。
【図３】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図４】本発明の実施例による歩行エネルギーマップの概略図である。
【図５】図５ａから図５ｄは、本発明の実施例による歩行特徴ベクトルを抽出する概略図である。
【図６】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図７】本発明の実施例によるトレーニングプロセスの概略図である。
【図８】本発明の実施例によるトレーニングプロセスの概略図である。
【図９】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図１０】本発明の実施例によるイメージ処理適用シナリオの例示的な構造図である。
【図１１】図１１ａから図１１ｄは、本発明の実施例によるイメージ処理装置の例示的な構造図である。
【発明を実施するための形態】
【００１１】
歩行認識は、人々の歩行姿勢によってアイデンティティを認識することを目的とした、新しいタイプの生体特徴認識技術である。歩行認識は、非接触長距離、及びカモフラージュが容易ではないという利点があり、高精細な画質も必要としない。そのため、セキュリティ保護、公安、公共交通などのシナリオで広く使用でき、適用の可能性が非常に大きくなる。
【００１２】
本発明の実施例は、リアルタイム又はオフライン歩行認識技術サービスを提供する必要がある様々なシナリオ(例えば、インテリジェントビデオ監視)に適した、メディア処理方法及び関連装置(メディア処理デバイス及び記憶媒体など)を提供する。
【００１３】
最初に、コアアイデアを説明する。
歩行認識は１つの検索問題として理解でき、照会対象の人物(アイデンティティが認識されるべきオブジェクト)のメディア(例えば、メディアがビデオである場合に、第１のビデオ又は処理対象ビデオと呼ばれ、第１のビデオにおけるビデオフレームにはアイデンティティが認識されるべきオブジェクトが含まれる)を与え、データベース内のどの既知のアイデンティティ情報を持つ人物(アイデンティティが既知のオブジェクト)のビデオ(第２のビデオとも呼ばれる)はそれに類似又は最も類似するかを照会する。
【００１４】
本発明の実施例によって提供されるメディア処理方法及び関連装置は、ディープニューラルネットワークに基づいて歩行認識を実現する。説明の便宜上、以下の実施例では、主にビデオをメディアのオプションの表現形式として説明する。
【００１５】
上記のディープニューラルネットワークは、歩行エネルギーマップに基づいて歩行認識を行うため、ディープニューラルネットワークによる歩行認識の前に、予め第１のビデオから第１の歩行エネルギーマップを抽出し、第２のビデオから第２の歩行エネルギーマップを抽出し、その後、第１の歩行エネルギーマップ及び第２の歩行エネルギーマップを当該ディープニューラルネットワークに入力し、ディープニューラルネットワークによって、２つの歩行エネルギーマップの類似度を、上記の処理対象ビデオ及び第２のビデオの類似度として出力する。
【００１６】
より具体的に、上記のディープニューラルネットワークは、入力された２つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、２つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの識別子、及び当該歩行エネルギーマップに基づいて抽出された歩行特徴ベクトルを含み得る。２つの歩行エネルギーマップの融合歩行特徴ベクトルは、２つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって決定される。
【００１７】
その後、上記のディープニューラルネットワークは、少なくとも抽出された融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度を計算する。
【００１８】
このことから分かるように、上記のディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定される。その後、少なくとも融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【００１９】
ディープニューラルネットワークは、ニューロンによって階層構造で構成され、各ニューロンレイヤーには複数のフィルタが含まれ、それらの間の重みとオフセット量(フィルタパラメータ)はトレーニングによって取得できる。
【００２０】
したがって、一例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。これについて後述する。
【００２１】
以下、コアアイデアを説明した後、歩行認識を実現するための本発明の実施例に係るビデオ処理装置、及び、ビデオ処理デバイスについて説明する。
【００２２】
上記のビデオ処理装置は、ソフトウェア又はハードウェアの形で、ビデオ処理デバイスに適用することができる。具体的に、ビデオ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(ＰＣ)であってもよいし、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ｉｐａｄなどの端末であってもよい。
【００２３】
ソフトウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
【００２４】
ハードウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、例えば、端末又はサーバーのコントローラ／プロセッサであってもよい。
【００２５】
図１ａに示すように、例として、上記のビデオ処理方法の適用シナリオでは、カメラ１０１は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、ビデオをビデオ処理デバイス１０２に提供し、ビデオ処理デバイス１０２は、データベース１０３におけるアイデンティティが既知のオブジェクトのビデオに基づいて、歩行認識を行う。このシナリオでは、ビデオ処理デバイス１０２は、歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【００２６】
図１ｂに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、ビデオ処理デバイス１０２は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、データベース１０３におけるアイデンティティが既知のオブジェクトのビデオに基づいて歩行認識を行う。このシナリオでは、ビデオ処理デバイス１０２は、撮影装置、及び歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【００２７】
さらに図１ｃに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、外部デバイス１０４は、アイデンティティが認識されるべきオブジェクトの歩行エネルギーマップ又はビデオをビデオ処理デバイス１０２へ提供し、ビデオ処理デバイス１０２は、データベース１０３に記憶された各アイデンティティが既知のオブジェクトの歩行エネルギーマップに基づいて歩行認識を行う。このシナリオでは、外部デバイスがビデオを提供する場合に、ビデオ処理デバイス１０２は、歩行エネルギーマップを抽出するモジュール又は装置を備える必要がある。
【００２８】
なお、上記のディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記の各シナリオでは、トレーニングデバイス１０５を含めることもできる。勿論、トレーニングデバイス１０５の機能は、ビデオ処理デバイス１０２によって実現することもできる。トレーニングデバイス１０５は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用され得る。
【００２９】
より具体的なシナリオ(クライアントサーバーシナリオ)では、図１ｄを参照し、ｗｅｂサーバー１０６、ビデオ処理サーバー１０７(即ち、ビデオ処理デバイス)、データベース１０３を含み得る。なお、トレーニングサーバー１０８(トレーニングデバイス)も含み得る。
【００３０】
その中、ｗｅｂサーバー１０６は、フロントエンド(フォアグラウンド)であり、クライアントブラウザ(上記の外部デバイス)との通信を担当する。ビデオ処理サーバー１０７、データベース１０３、トレーニングサーバー１０８などは、バックエンドであり、ビデオ処理サーバー１０７は、クライアントブラウザにビデオ処理(歩行認識)サービスを提供することができる。トレーニングサーバー１０８は、ビデオ処理サーバー１０７によって使用されるビデオ処理アルゴリズムをトレーニングする(即ち、ディープニューラルネットワークをトレーニングする)ために、又は、トレーニング用のサンプルを提供するために使用され得る。
【００３１】
次に、ビデオ処理装置の内部構成について説明するが、ビデオ処理装置の例示的な構成は図２ａに示され、第１の取得ユニット１１と、歩行認識ユニット１２とを含む。
【００３２】
第１の取得ユニット１１は、処理対象ビデオを取得し、当該処理対象ビデオに基づき第１の歩行エネルギーマップを生成し、第２の歩行エネルギーマップを取得するために使用され、当該第２の歩行エネルギーマップは、アイデンティティが既知のオブジェクトを含むビデオに基づき生成され、
歩行認識ユニット１２は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第１の取得ユニット１１によって提供される第１の歩行エネルギーマップ及び第２の歩行エネルギーマップに対して第１の歩行認識を行うために使用されることができる。
【００３３】
本発明の他の実施例では、図２ｂを参照し、上記のビデオ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット１３をさらにを含んでもよい。
【００３４】
本明細書では、以下、ビデオ処理方法と組み合わせて、上記の各ユニットの機能を説明する。
【００３５】
図２ｃは、上記の実施例におけるビデオ処理デバイスの可能な構造の概略図を示す。バス、プロセッサ１、メモリ２、通信インタフェース３、入力デバイス４、及び出力デバイス５を含む。プロセッサ１、メモリ２、通信インタフェース３、入力デバイス４、及び出力デバイス５は、バスを介して互いに接続されている。なお、バスは、コンピュータシステムの各コンポーネントの間で情報を伝送するための経路を含み得る。
【００３６】
プロセッサ１は、例えば、汎用中央処理装置(ＣＰＵ)、ネットワークプロセッサ(Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｏｒ、ＮＰと略称する)、マイクロプロセッサなどの汎用プロセッサであってもよく、特定用途向け集積回路(ａｐｐｌｉｃａｔｉｏｎ-ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ、ＡＳＩＣ)、又は本発明解決策のプログラムの実行を制御するための１つ又は複数の集積回路であってもよい。また、デジタル信号プロセッサ(ＤＳＰ)、フィールドプログラマブルゲートアレイ(ＦＰＧＡ)又はその他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントであってもよい。
【００３７】
メモリ２は、本発明の技術的解決策を実行するためのプログラム又はスクリプトを格納しており、オペレーティングシステム及び他の主要なサービスも格納することができる。具体的に、プログラムはプログラムコードを含むことができ、プログラムコードはコンピュータ操作命令を含む。スクリプトは、通常、テキスト(例えば、ＡＳＣＩＩ)で保存され、呼び出されたときにのみ解釈又はコンパイルされる。
【００３８】
より具体的に、メモリ２は、読み取り専用メモリ(ｒｅａｄ-ｏｎｌｙ  ｍｅｍｏｒｙ、ＲＯＭ)、静的情報及び命令を記憶できる他のタイプの静的記憶デバイス、ランダムアクセスメモリ(ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、ＲＡＭ)、情報及び命令を記憶できる他のタイプの動的記憶デバイス、磁気ディスクメモリ、ｆｌａｓｈなどを含み得る。
【００３９】
入力デバイス４は、例えば、キーボード、マウス、カメラ、音声入力装置、タッチスクリーンなど、ユーザーによって入力されたデータと情報を受け取る装置を含み得る。
【００４０】
出力デバイス５は、例えば、ディスプレイスクリーン、スピーカなど、ユーザーへの情報の出力を可能にする装置を含み得る。
【００４１】
通信インタフェース３は、例えば、イーサネット、無線アクセスネットワーク(ＲＡＮ)、無線ローカルネットワーク(ＷＬＡＮ)などの他のデバイス又は通信ネットワークと通信するように、任意のトランシーバなどを使用する装置を含み得る。
【００４２】
図２ｃは、ビデオ処理デバイスの単純化された設計のみを示していることが理解され得る。実際の用途では、上記のビデオ処理デバイスは、任意の数の送信機、受信機、プロセッサ、コントローラ、メモリ、通信インタフェースなどを含むことができる。本発明を実現できる全てのサーバー/インテリジェント端末は、本発明の保護範囲内にある。
【００４３】
プロセッサ１は、メモリ２に格納されたプログラムを実行し、他のデバイスを呼び出すことによって、以下の実施例によって提供されるビデオ処理方法を実現することができる。
【００４４】
なお、図１ａ〜１ｄに示したビデオ処理装置の各ユニットの機能は、上記のプロセッサ１がメモリ２に格納されたプログラムを実行し、他のデバイスを呼び出すことによって実現することができる。
【００４５】
以下、以上の本発明に係る共通点を踏まえ、歩行認識を実現するための本発明の実施例について、さらに詳細に説明する。
【００４６】
図３は、上記のビデオ処理装置／デバイスによって実行されるビデオ処理方法の例示的なフローを示す。この方法は、少なくとも次のステップを含み得る。
３００部分：処理対象ビデオを取得し、当該処理対象ビデオに基づき第１の歩行エネルギーマップを生成し、第２の歩行エネルギーマップを取得する。
その中、処理対象ビデオ(第１のビデオ)におけるビデオフレームは、アイデンティティが認識されるべきオブジェクトを含み、第２の歩行エネルギーマップは、アイデンティティが既知のオブジェクトのビデオ(第２のビデオ)に基づき生成されたものである。
【００４７】
第１の歩行エネルギーマップと第２の歩行エネルギーマップは、それぞれ対応する一意の識別子(ＩＤ)を持つことができる。１つの歩行エネルギーマップに対応するＩＤは、当該歩行エネルギーマップに対応するオブジェクトのアイデンティティを識別することができる。
【００４８】
歩行エネルギーマップの概略図について、図４を参照すればよい。ビデオフレームに基づきマルチフレーム歩行シルエットを取得し、次に、マルチフレーム歩行シルエットを重ね合わせ、正規化処理を実行して、歩行エネルギーマップを取得することができる。
【００４９】
第１の歩行エネルギーマップと第２の歩行エネルギーマップを取得するには、多くの方法がある。
図１ａに示す適用シナリオを例として、カメラ１０１は、処理対象ビデオを撮影した後、処理対象ビデオをビデオ処理デバイス１０２に提供し、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する(又は、データベース１０３から第２の歩行エネルギーマップを取得する)。
【００５０】
図１ｂに示す適用シナリオを例として、ビデオ処理デバイス１０２のカメラによって処理対象ビデオを撮影した後、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する(又は、データベース１０３から第２の歩行エネルギーマップを取得する)。
【００５１】
図１ｃに示す適用シナリオを例として、外部デバイス１０４からビデオ処理デバイス１０２に処理対象ビデオを提供した後、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、外部デバイス１０４からビデオ処理デバイス１０２に第１の歩行エネルギーマップを提供し、ビデオ処理デバイス１０２はデータベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、外部デバイス１０４からビデオ処理デバイス１０２に第１の歩行エネルギーマップを提供し、ビデオ処理デバイス１０２はデータベース１０３から第２の歩行エネルギーマップを取得する。
【００５２】
図１ｄに示す適用シナリオを例として、クライアントからビデオ処理サーバー１０７に処理対象ビデオを提供した後、ビデオ処理サーバー１０７は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー１０７に第１の歩行エネルギーマップを提供し、ビデオ処理サーバー１０７はデータベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー１０７に第１の歩行エネルギーマップを提供し、ビデオ処理サーバー１０７はデータベース１０３から第２の歩行エネルギーマップを取得する。
【００５３】
一例では、前記ビデオ処理装置の第１の取得ユニット１１によって３００部分を実行してもよく、又は、前記ビデオ処理デバイスの通信インタフェース３によって外部デバイス又はクライアントから提供された処理対象ビデオを受信してもよく、又は、入力デバイス４(例えば、カメラ)によって処理対象ビデオを撮影してもよく、又は、プロセッサ１によってメモリ２のギャラリーから処理対象ビデオを取得してもよい。
【００５４】
上記の識別子は、前記第１の取得ユニット１１又はプロセッサ１によって割り当てることができる。
３０１部分：ディープニューラルネットワークに基づき、第１の歩行エネルギーマップと第２の歩行エネルギーマップに対して第１の歩行認識を行う。
一例では、３０１部分の入力は、前記ビデオ処理装置の第１の取得ユニット１１によって実行されるか、又はプロセッサ１によって実行されることができる。
３０２Ａ部分：第１及び第２の歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、第１及び第２の歩行エネルギーマップの融合歩行特徴ベクトルを抽出する。
ここで、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの歩行特徴ベクトルを含んでもよい。さらに、当該歩行エネルギーマップの識別子を含んでもよい。
【００５５】
例えば、第１の歩行エネルギーマップのアイデンティティ情報は、第１の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよく、第２の歩行エネルギーマップのアイデンティティ情報は、第２の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよい。
融合歩行特徴ベクトルは、第１及び第２の歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって共同で決定される。本明細書では、融合歩行特徴ベクトルを取得する方法について後述する。
より具体的に、上記のディープニューラルネットワークは、アイデンティティ情報抽出レイヤーと、融合歩行特徴ベクトル抽出レイヤーとを含み得る。
ここで、上記のアイデンティティ情報抽出レイヤーは、少なくとも第１の抽出レイヤーと、第２の抽出レイヤーとを含み得る。
【００５６】
一例では、図５ａを参照して、第１の抽出レイヤーは、入力された各歩行エネルギーマップの第１のレベルの歩行特徴ベクトルを抽出し、第１のレベルの歩行特徴ベクトルを第２の抽出レイヤーに入力し、第２の抽出レイヤーは、２つの歩行エネルギーマップ(例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップ)のそれぞれの第２のレベルの歩行特徴ベクトルを抽出する。
上記の融合歩行特徴ベクトル抽出レイヤーは、２つの歩行エネルギーマップの第２のレベルの歩行特徴ベクトルを融合することで、第２のレベルの融合歩行特徴ベクトルを取得してもよい。
【００５７】
別の例では、図５ｂを参照して、融合歩行特徴ベクトル抽出レイヤーは、ディープニューラルネットワークに入力された２つの歩行エネルギーマップ(例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップ)の第１のレベルの歩行特徴ベクトルを融合することで、第１のレベルの融合歩行特徴ベクトルを取得し、第１のレベルの融合歩行特徴ベクトルに基づき第２のレベルの融合歩行特徴ベクトルを抽出してもよい。
【００５８】
この例では、融合歩行特徴ベクトル抽出レイヤーは、融合レイヤー(第１のレベルの歩行特徴ベクトルを融合することで第１のレベルの融合歩行特徴ベクトルを取得する)と、抽出レイヤー(第１のレベルの融合歩行特徴ベクトルに基づき第２のレベルの融合歩行特徴ベクトルを抽出して取得する)とをさらに含んでもよい。
【００５９】
一例では、上記の第１の抽出レイヤーと第２の抽出レイヤーは、イメージ特徴ベクトルを抽出するための複数の特徴ベクトル抽出レイヤーをさらに含み得る論理層であってもよく、入力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが低く、出力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが高くなる。
【００６０】
例えば、図５ｃを参照して、アイデンティティ情報抽出レイヤーは、２つの歩行エネルギーマップの歩行特徴ベクトルをそれぞれ抽出するために、２つのチャネル(各チャネルがいずれも、第１の抽出レイヤーと第２の抽出レイヤーを含む)をそれぞれ含み得る。どのチャネルでも、まず、低レベルの歩行特徴ベクトルを抽出し、低レベルの歩行特徴ベクトルを組み合わせて、高レベルの歩行特徴ベクトルを抽出することができる。２つの歩行エネルギーマップで同じ操作を実行する必要があるため、第１の抽出レイヤーにおける２つのチャネルは重みを共有することができる。
【００６１】
例えば、チャネルにおける第１の特徴ベクトル抽出レイヤーによって抽出された歩行特徴ベクトルレベルは最低で、一般的に、エッジ、コーナー、カーブなどであり(ｃｏｖ-１６に対応し、ここで、「ｃｏｖ」が畳み込みを表し、１６がフィルタの数を表し、フィルタの数は抽出された歩行特徴ベクトルの次元を決定する)、第２の特徴ベクトル抽出レイヤーは、第１の抽出レイヤーから出力された歩行特徴ベクトルの組み合わせ特徴ベクトル(ｃｏｖ-６４に対応する)を抽出し、これによって類推する。抽出された歩行特徴ベクトルのレベルは、低レベルから中レベル、さらに高レベル／抽象(セマンティックレベル)であり、さらに、図５ｃにおける「ＦＣ」が接続レイヤーを表し、「ＦＣ-２０４８」が２０４８個のニューロンを有する接続レイヤーを表し、抽出された特徴ベクトルは２０４８次元である。勿論、低レベルと中レベルを第１のレベルと総称してもよい。
【００６２】
融合歩行特徴ベクトル抽出レイヤー(アイデンティティ情報抽出レイヤーの２つのチャネルとは独立した別のチャネルと見なすこともできる)について、低レベルの歩行特徴ベクトルを繋ぎ合わせて、低レベルの融合歩行特徴ベクトルを取得し、さらに、高レベル融合歩行特徴ベクトルが得られるまでに、より高いレベルの融合歩行特徴ベクトル(中レベル融合歩行特徴ベクトル)を抽出してもよい。
【００６３】
又は、融合歩行特徴ベクトル抽出レイヤーは、中レベル歩行特徴ベクトルを繋ぎ合わせて、中レベル融合歩行特徴ベクトルを取得し、さらにより高いレベルの融合歩行特徴ベクトルを抽出してもよい。
【００６４】
又は、融合歩行特徴ベクトル抽出レイヤーは、高レベル歩行特徴ベクトルを直接繋ぎ合わせて、高レベル融合歩行特徴ベクトルを取得してもよい。
【００６５】
図５ｃに示すように、低レベルの歩行特徴ベクトルと中レベル歩行特徴ベクトルを第１のレベルの歩行特徴ベクトルと総称してもよい。勿論、第１のレベルの歩行特徴ベクトルは、最終的な中レベル歩行特徴ベクトルを含むと考えることもできる。
【００６６】
勿論、融合歩行特徴ベクトル抽出レイヤーが低レベルの歩行特徴ベクトルを繋ぎ合わせて低レベルの融合歩行特徴ベクトルを取得する場合に、第１のレベルの歩行特徴ベクトルは、低レベルの歩行特徴ベクトルのみを含むことができる。
【００６７】
当業者は、必要に応じて、柔軟に設計することができる。ここでは、繰り返さない。
【００６８】
また、なお、図５ｃに示する例は、次のようにも理解できる。前の６層ネットワーク構造は、それぞれ、１対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを抽出し、その後、２つの独立した操作に分割する。第１部分の操作は、第７層ネットワーク構造では、それぞれの歩行特徴ベクトルを融合し、融合歩行特徴ベクトルを取得し、さらに、融合歩行特徴ベクトルをより高いレベルで抽出することを含む。第２部分の操作は、１対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを引き続き抽出して、第２のレベルの融合歩行特徴ベクトル、又は最終的な高レベル歩行特徴ベクトルを取得することを含む。
【００６９】
本実施例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。
さらに、本実施例のディープニューラルネットワークがトレーニングプロセス中にパラメータを調整するときに、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれているアイデンティティ情報も考慮される。このようにトレーニングされたディープニューラルネットワークは、より区別性を持つ歩行特徴ベクトルをより効果的に抽出できる。そして、融合歩行特徴ベクトルは２つの歩行エネルギーマップの歩行特徴ベクトルによって共同で決定されるため、融合歩行特徴ベクトルはそれに応じて区別性がより高くなり、より正確な類似度を得ることができる。
【００７０】
３０２Ｂ部分：少なくとも抽出された融合歩行特徴ベクトルに基づき、類似度を計算する。
類似度は、具体的にパーセンテージにすることができる。両者(アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクト)が同じオブジェクトに対応する確率のパーセンテージを表す。例えば、類似度が６０％である場合、両者が同じ人物である可能性は６０％である。
【００７１】
一例では、融合歩行特徴ベクトルのみに基づいて、類似度を計算してもよい。
【００７２】
別の例では、上記の融合歩行特徴ベクトルに基づき第１の類似度を計算し、２つの歩行エネルギーマップのアイデンティティ情報に基づき第２の類似度を計算し、次に、両者の加重和を求め(最も簡単のは、加算して２で除算して平均を取る)、最終的な類似度を得ってもよい。
例えば、融合歩行特徴ベクトルに基づき計算した第１の類似度が８０％であり、アイデンティティ情報に基づき計算した第２の類似度が６０％であると仮定すると、最終的な類似度は、(８０％＋６０％)／２＝７０％になる。
類似度を計算する方法はたくさんあるので、ここでは繰り返さない。
【００７３】
上記の３０２Ａと３０２Ｂ部分は、ディープニューラルネットワークによって実行される第１の歩行認識である。一例では、３０２Ａと３０２Ｂ部分は、上記ビデオ処理装置の歩行認識ユニット１２、又はプロセッサ１によって実行されてもよい。
【００７４】
別の例では、図５ａと図５ｂを参照して、上記のディープニューラルネットワークは、類似度計算レイヤーを含んでもよく、３０２Ｂ部分は、類似度計算レイヤーによって実行されてもよい。
３０３部分：ディープニューラルネットワークは認識結果を出力する。この認識結果は、前記類似度、又は、前記アイデンティティが認識されるべきオブジェクトと前記アイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。
一例では、認識結果は上記の類似度を含み得る。
なお、認識結果は、入力された２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを示す情報を含み得る。例えば、値「１」は、両者が同じオブジェクトに属することを表し、値「０」は、両者が異なるオブジェクトに属することを表す。
より具体的に、ディープニューラルネットワークは、１組の(２つの)歩行エネルギーマップに対して第１の歩行認識を実行する度に、認識結果を１回出力することができる。
又は、ディープニューラルネットワークは、第１の歩行認識のバッチが完了した後に、認識結果を１回出力することができる。
【００７５】
例えば、オブジェクトＡのアイデンティティが認識されるべきであり、データベースにアイデンティティが既知のオブジェクトのビデオが１０個あり、１０個の第２の歩行エネルギーマップを取得することができると仮定する。ある順序に従って、ディープニューラルネットワークは、オブジェクトＡの第１の歩行エネルギーマップと１０個の第２の歩行エネルギーマップの類似度を１つずつ計算し、計算が完了した後、ディープニューラルネットワークは認識結果を出力する。すると、上記の認識結果は、１０個の類似度を含み得る。勿論、上記の認識結果は、２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを識別する情報をさらに含み得る。
【００７６】
別の例では、上記の認識結果は、前記アイデンティティが認識されるべきオブジェクトと前記アイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。例えば、第１及び第２の歩行エネルギーマップが異なるオブジェクトに属する確率を含む。この確率は、「１―類似度」で計算される。例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度が８０％である場合、第１及び第２の歩行エネルギーマップが異なるオブジェクトに属する確率は２０％である。
【００７７】
第１及び第２の歩行エネルギーマップが同じオブジェクトに属するかどうかを判定する方法について、次の操作を実行することができる。
類似度が認識条件を満たす場合、第１の歩行エネルギーマップと第２の歩行エネルギーマップが同じオブジェクトに対応すると判定し、即ち、第２の歩行エネルギーマップに対応する一意の識別子は、当該アイデンティティが認識されるべきオブジェクトのアイデンティティを識別することができる。さもなければ、異なるオブジェクトに対応すると判定する。
上記の認識条件は、類似度が類似度閾値以上であるか、又は類似度が前記類似度閾値よりも大きいことを含む。
例えば、類似度閾値が８０％であると仮定すると、２つの歩行エネルギーマップの類似度が７０％である場合に、両者が同じ人物ではないと考えられ、２つの歩行エネルギーマップの類似度が８０％よりも大きい（又は等しい）場合に、両者が同じ人物であると考えられる。したがって、第２の歩行エネルギーマップに対応する一意の識別子は、アイデンティティオが認識されるべきブジェクトのアイデンティティを識別することができる。
【００７８】
前述のように、データベースにアイデンティティが既知のオブジェクトのビデオ又は歩行エネルギーマップを記憶しており、本発明の他の実施例では、あるアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度が認識条件を満たすか、又は、全てのアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度が算出されるまでに、データベースにおけるアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度を１つずつ計算してもよい。
【００７９】
例えば、オブジェクトＡのアイデンティティが認識され、データベースにアイデンティティが既知のオブジェクトのビデオが１０個ある。ある順序に従って、類似度が上記の認識条件を満たすか、又は、１０個の類似度が算出されるまでに、オブジェクトＡの第１の歩行エネルギーマップと１０個のアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップの類似度を１つずづ計算する。
【００８０】
勿論、本発明の他の実施例では、全てのアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度を計算し、次に、認識条件に基づき、２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを判定してもよい。
【００８１】
なお、必要に応じて、ディープニューラルネットワークは、２つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。例えば、トレーニングプロセスでは、ディープニューラルネットワークは、損失値を計算するために、歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。
【００８２】
以上のように、本実施例におけるディープニューラルネットワークは、トレーニングプロセスでは、アイデンティティ情報及び類似度に基づき、フィルタパラメータを調整し、つまり、パラメータが調整される場合に、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれるアイデンティティ情報が考慮される。このようにして、より区別性を持つ歩行特徴ベクトルをより効果的に抽出できる。また、融合歩行特徴ベクトルは、２つの歩行エネルギーマップの歩行特徴ベクトルによって決定されるため、融合歩行特徴ベクトルはそれに応じて区別性がより高くなり、より正確の類似度を得ることができる。
【００８３】
以下では、ディープニューラルネットワークをトレーニングする方法を説明する。
なお、ディープニューラルネットワークには複数のフィルタがあり、トレーニングの主な目的はフィルタパラメータを調整することである。したがって、ニューラルネットワークのトレーニング又は最適化のプロセスは、フィルタパラメータを調整して損失関数の損失値を最小化するプロセスとしても理解できる(損失値が小さいほど、対応する予測／出力結果は実際の結果に近くなる)。
【００８４】
既存のトレーニングプロセスでは、採用される損失関数は主に分類損失を反映している。つまり、２つの歩行エネルギーマップのカテゴリー(ここで、カテゴリーは異なる人々を区別することを指す)を判断し、抽出された同じ人物に対応する歩行特徴ベクトルができるだけ類似しており、抽出された異なる人物からの歩行特徴ベクトルができるだけ乖離していることを確保できないため、抽出された歩行特徴ベクトルが優れた区別性を持つことを保証できない。
【００８５】
上記の問題を解决するために、本出願の実施例によって提供されるトレーニングプロセスのトレーニング目標は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけ、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させることを含む。
同時に、本出願の実施例はさらに、トレーニングによって上記のトレーニング目標を達成するために、新しい損失関数を提供する。
上記の新しい損失関数は、アイデンティティ情報損失関数と、融合歩行特徴ベクトル損失関数とを含む。
【００８６】
図６及び図７は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示している。このプロセスには、少なくとも次のステップが含まれる。
ステップＳ６００は、トレーニングサンプルを取得する。
さらに、各トレーニングサンプルは、ｎ個のトレーニングサブサンプルを含むことができ、任意のトレーニングサブサンプルは、２つの(１対の)アイデンティティが既知のオブジェクトの歩行エネルギーマップを含むことができる。上記ｎは、正の整数であってもよい。
具体的に、ステップＳ６００は、前述の取得ユニット１１、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ６０１は、ディープニューラルネットワークが、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第２の歩行認識を実行する。
【００８７】
第２の歩行認識は、トレーニングサブサンプルにおける２つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、上記の２つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、少なくとも抽出された融合歩行特徴ベクトルに基づき、上記の２つの歩行エネルギーマップの類似度を計算することを含み得る。
【００８８】
第２の歩行認識は、前述の第１の歩行認識と同様であり、具体的に、詳細について、上記３０２Ａと３０２Ｂ部分に関する説明を参照してください。ここで、繰り返さない。
ステップＳ６０１は、前述の歩行認識ユニット１２、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ６０２は、歩行認識で抽出されたアイデンティティ情報に従って、アイデンティティ情報損失関数を使用して、トレーニングサンプルのアイデンティティ損失値を計算する。
さらに、アイデンティティ損失値が小さいほど、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルがより類似し、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルがより乖離することを示す。
ステップＳ６０３は、トレーニングサンプルの融合損失値を計算する。
ステップＳ６０２とステップＳ６０３の実行順序は、入れ替えてもよく、並列に実行してもよい。
ステップＳ６０４は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を取得する。
例えば、ａが融合損失値を表し、ｂがアイデンティティ損失値を表し、ｃが最終的な損失値を表すと、３つの関係は次のようになる。
Ｃ＝ａ＋ηｕ・ｂ、又はｃ＝ηｃ・ａ＋ｂ、又はｃ＝ηｃ・ａ＋ηｕ・ｂ。
【００８９】
当業者は、必要に応じて、ηｕ、ηｃの値を柔軟に設計することができ、ここでは繰り返さない。
ステップＳ６０５は、少なくとも１つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークのフィルタパラメータを調整する。
実際に、時間を節約して効率を向上させるために、一般的は、複数のトレーニングサンプル(例えば、６４個のサンプル)をトレーニングした後、フィルタパラメータを1回調整する。即ち、各トレーニングサンプルの最終的な損失値を個別に計算した後、各最終的な損失値に基づきフィルタパラメータを調整することができる。
ステップＳ６０２から６０５は、前述のトレーニングユニット１３又はプロセッサ１によって実行され得る。
【００９０】
本実施例では、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標で、ディープニューラルネットワークをトレーニングし、抽出された同じ人物の歩行特徴ベクトルをできるだけ近づけ、抽出された異なる人物からの歩行特徴ベクトルをできるだけ乖離させることができ、これにより、抽出された歩行特徴ベクトルを良好に区別することができ、より正確な類似度を得ることができる。
【００９１】
前述の説明では、トレーニングサンプルは、ｎ個のトレーニングサブサンプルを含み得る。以下では、１つのトレーニングサンプルには３個のサブサンプルが含まれる(即ち、３対の歩行エネルギーマップが含まれる)ことを例として、トレーニングプロセスをより詳細に記載する。
１つのトレーニングサンプルには３個のサブサンプルが含まれる場合について、図８にトレーニングフレームワークを示している。図９は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示す。このプロセスは、少なくとも次のステップを含み得る。
ステップＳ９００は、トレーニングサンプルを取得する。
【００９２】
本実施例では、各トレーニングサンプルには、第１から第３のトレーニングサブサンプルが含まれ(第１及び第２、第３が、区別するためにのみ使用され、ディープニューラルネットワークへの入力の順序を表さない)、第１から第３のトレーニングサブサンプルの組み合わせ方式は、次の方式を含み得る。
第１の組み合わせ方式は、第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、第２のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応し、第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することである。
第２の組み合わせ方式は、第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、第２のトレーニングサブサンプルの２つの歩行エネルギーマップが同一オブジェクトに対応し、第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することである。
具体的に、ステップＳ９００は、前述の第１の取得ユニット１１、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ９０１：ディープニューラルネットワークは、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第２の歩行認識を実行する。
第２の歩行認識を実行する方法について、前述の３０２Ａと３０２Ｂ部分に関する説明を参照してください。ここでは繰り返さない。
ステップＳ９０１は、前述の歩行認識ユニット１２、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ９０２は、トレーニングサンプルにおける第１から第３のトレーニングサブサンプルの組み合わせ方式が上記の第１の組み合わせ方式である場合に、第１のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
【００９３】
第１のアイデンティティ損失関数は、次のようになる。
2021515321.tif 000003
その中、Ｌｕはアイデンティティ損失値を表し、ηは係数を表し(値の範囲が０から１である)、
2021515321.tif 000004
はユークリッド距離を表し、
ｐ、ｇ、ｐ′、ｇ′、ｐ″及びｇ″は歩行エネルギーマップの識別子を表し、ＸｐとＸｇは、第１のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐは第１の歩行エネルギーマップとも呼ばれ、Ｘｇは第２の歩行エネルギーマップとも呼ばれる)、Ｘｐ′とＸｇ′は第２のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐ′は第３の歩行エネルギーマップとも呼ばれ、Ｘｇ′は第４の歩行エネルギーマップとも呼ばれる)、Ｘｐ″とＸｇ″は第３のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐ″は第５の歩行エネルギーマップとも呼ばれ、Ｘｇ″は第６の歩行エネルギーマップとも呼ばれる)、そして、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応し、
Ｕ(Ｘｐ)からＵ(Ｘｇ″)は各歩行エネルギーマップの歩行特徴ベクトルを表す。
【００９４】
なお、第１のアイデンティティ損失関数における
2021515321.tif 000005
は、第１のトレーニングサブサンプルにおける２つの歩行特徴ベクトルのユークリッド距離を表す。ＸｐとＸｇは同じオブジェクトに対応しているので、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけるためは、
2021515321.tif 000006
ができるだけ小さくなる(０に近い)ように、フィルタパラメータを調整する。
Ｘｐ′とＸｇ′は異なるオブジェクトに対応しているので、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させるために、
2021515321.tif 000007
ができるだけ大きくなる(１に近い)ように、フィルタパラメータを調整する。
さらに、
2021515321.tif 000008
ができるだけ小さく、
2021515321.tif 000009
ができるだけ大きくなる場合、第１のアイデンティティ損失関数における
2021515321.tif 000010
も、できるだけ小さくなる。
同様に、
2021515321.tif 000011
ができるだけ小さく、
2021515321.tif 000012
ができるだけ大きい場合、第１のアイデンティティ損失関数における
2021515321.tif 000013
も、できるだけ小さくなる。
以上のように、上記の第１のアイデンティティ損失関数は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【００９５】
ステップＳ９０３は、トレーニングサンプルにおける第１から第３のトレーニングサブサンプルの組み合わせ方式が上記の第２の組み合わせ方式である場合に、第２のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
第２のアイデンティティ損失関数は、次のようになる。
2021515321.tif 000014
その中、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応する。
第２の組み合わせでは、ＸｐとＸｇは同じオブジェクトに対応し、Ｘｐ′とＸｇ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応するため、
2021515321.tif 000015
はできるだけ大きく、被減数として使用されることが望ましい。
第２のアイデンティティ損失関数は同様に、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【００９６】
ステップＳ９０４は、融合歩行特徴ベクトル損失関数を使用して、トレーニングサンプルの融合損失値を計算する。
一例では、各トレーニングサブサンプルに対応する融合損失サブ値を計算し、次に、各トレーニングサブサンプルの融合損失サブ値を累積して、融合損失値を得ることができる。
融合歩行特徴ベクトル損失関数は、様々な表現形態を有する。
融合損失値としてクロスエントロピーが計算される場合、一例では、あるトレーニングサブサンプルの融合損失サブ値(クロスエントロピー)を計算する融合歩行特徴ベクトル損失関数は、次のようになる。
Ｌｃ＝-Ｐ(ｘａｂ)ｌｏｇＱ(ｘａｂ)。
その中、ａ、ｂは、任意のトレーニングサブサンプルにおける１対の歩行エネルギーマップの識別子を表し、ｘａｂは当該トレーニングサブサンプルにおける１対の歩行エネルギーマップペアを表し、Ｐ(ｘａｂ)は当該１対の歩行エネルギーマップに対応するラベルの分布状況(実際結果／実際ラベル分布)を表し、Ｑ(ｘａｂ)はトレーニングされるディープニューラルネットワークの予測結果(予測された認識結果)を表す。
【００９７】
例えば、２つの歩行エネルギーマップａ及びｂが同じオブジェクトに対応する場合、実際のラベル分布は「１，０」であり、その中の「１」は、２つの歩行エネルギーマップが同じオブジェクトからのものである確率が１００％であることを表し、「０」は、２つの歩行エネルギーマップが異なるオブジェクトからのものである確率が０％であることを表す。
予測認識結果を「０.７，０.３」とすると、「１，０」と「０.７，０.３」のクロスエントロピーを求めることができる。
２つの歩行エネルギーマップａ及びｂが異なるオブジェクトに対応する場合、ラベルの実際分布は「０，１」であり、その中の「０」は、２つの歩行エネルギーマップが同じオブジェクトからのものである確率が０％であることを表し、「１」は、２つの歩行エネルギーマップが異なるオブジェクトからのものである確率が１００％であることを表す。
予測認識結果を「０.７，０.３」とすると、「０，１」と「０.７，０.３」のクロスエントロピーを求めることができる。
別の例では、融合歩行特徴ベクトル損失関数は、前述の異なる組み合わせによって、第１の融合歩行特徴ベクトル損失関数と第２の融合歩行特徴ベクトル損失関数を含み得る。
【００９８】
前述の第１の組み合わせに対応して、第１の融合歩行特徴ベクトル損失関数は、次のようになる。
2021515321.tif 000016
ただし、Ｌｃは融合損失値を表し、μとηｃは重み付け係数を表し、その値は０から１の間であり、δは緩和係数を表し、その値の範囲は０から１であり、||*||  +は、値を０と比較して、両方の大きい方を取ること、即ち、ｍａｘ(*、０)を表し、
ｘｐｇは歩行エネルギーマップｐ、ｇで構成される歩行エネルギーマップペアを表し、これによって類推して、ｘｐｇからｘｇｐ′は歩行エネルギーマップペアを表し、Ｃ(*)は２つの歩行エネルギーマップペアの間のラベル分布が同じである確率を計算するための確率計算関数である。
Ｃ(ｘｐｇ,ｘｐ″ｇ″)を例にとると、歩行エネルギーマップペアｘｐｇと歩行エネルギーマップペアｘｐ″ｇ″のラベル分布が同じである確率を計算し、Ｃ(ｘｐｇ,ｘｐｇ″)を例にとると、歩行エネルギーマップペアｘｐｇと歩行エネルギーマップペアｘｐｇ″のラベル分布が同じである確率を計算する。
【００９９】
前述の説明では、２つの歩行エネルギーマップが同じオブジェクトに対応する場合に、ラベル分布は「１，０」であり、さもなければ、ラベル分布は「０，１」である。
歩行エネルギーマップペアｘｐｇを例にとると、歩行エネルギーマップｐ、ｇが同じオブジェクトに対応する場合、ｘｐｇのラベル実際分布は「１，０」であり、歩行エネルギーマップｐ、ｇが異なるオブジェクトに対応する場合、ｘｐｇのラベル分布は「０，１」である。同様に、他の歩行エネルギーマップペアの実際ラベル分布を推測できる。
Ｄ[*]は、ユークリッド距離を表し、Ｄ[Ｃ(ｘｐｇ,ｘｐ″ｇ″),Ｃ(ｘｐｇ,ｘｐｇ″)]を例にとると、確率ａと確率ｂの距離を計算し、ここで、確率ａはｘｐｇとｘｐ″ｇ″のラベル分布が同じである確率を表し、確率ｂはｘｐｇとｘｐｇ″のラベル分布が同じである確率を表す。
理論的には、ｘｐｇとｘｐ″ｇ″のラベル分布が同じであり(例えば、いずれも「１，０」又は「０，１」である)、かつ、ｘｐｇとｘｐｇ″のラベル分布が同じである場合、Ｄ[Ｃ(ｘ  ｐｇ,ｘ  ｐ″ｇ″),Ｃ(ｘ  ｐｇ,ｘ  ｐｇ″)]は０である。
又は、ｘｐｇとｘｐ″ｇ″のラベル分布が異なり、かつ、ｘｐｇとｘｐ″ｇ″のラベル分布も異なる場合、Ｄ[Ｃ(ｘｐｇ,ｘｐ″ｇ″),Ｃ(ｘｐｇ,ｘｐｇ″)]は０である。
【０１００】
ｘｐｇとｘｐ″ｇ″のラベル分布が同じである(例えば、いずれも「１，０」又は「０，１」である)が、ｘｐｇとｘｐｇ″のラベル分布が異なる場合、又は、ｘｐｇとｘｐ″ｇ″のラベル分布が異なるが、ｘｐｇとｘｐｇ″のラベル分布が同じである場合、Ｄ[Ｃ(ｘ  ｐｇ,ｘ  ｐ″ｇ″),Ｃ(ｘ  ｐｇ,ｘ  ｐｇ″)]は大きければ大きいほど良い。
実際には、上記の第１の組み合わせでは、ｐ、ｇ、ｐ′は同じオブジェクトに対応し、「ｐ、ｇ′、ｐ″、ｇ″」、「ｇ、ｇ′、ｐ″、ｇ″」又は「ｇ′、ｐ″、ｇ″」は異なるオブジェクトに対応する。ｐ、ｇ、ｐ′から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「１，０」である歩行エネルギーマップペアが得られる。同様に、「ｐ、ｇ′、ｐ″、ｇ″」、「ｇ、ｇ′、ｐ″、ｇ″」又は「ｇ′、ｐ″、ｇ″」から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「０，１」である歩行エネルギーマップペアが得られる。歩行エネルギーマップペアの間のラベルの同じ又は異なる関係によって、それらをＣ関数における異なる位置に入力して、別の第１の融合歩行特徴ベクトル損失関数を取得することができる。
以上のように、Ｃ関数における２つの歩行エネルギーマップペアを１つの計算サンプルと見なすと、Ｄ[*]は２つの計算サンプルの間のラベル分布が同じである確率の距離を計算する。
【０１０１】
トレーニングでは、次のようなトレーニング目標を達成するように、フィルタパラメータを調整する必要がある。
２つの計算サンプルについて、第１の計算サンプルにおける２つの歩行エネルギーマップペアのラベル実際分布が同じであって、第２の計算サンプルにおける２つの歩行エネルギーマップペアのラベル実際分布が異なる場合、第１の計算サンプルに対応する第１の確率と第２の計算サンプルに対応する第２の確率は乖離し、さもなければ、第１の確率と第２の確率は近づける。ここで、第１の確率は、第１の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである確率であり、第２の確率は、第２の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである確率である。
【０１０２】
第２の組み合わせに対応して、トレーニング目標を満たす第２の融合歩行特徴ベクトル損失関数は、次のようになる。
2021515321.tif 000017
第２の組み合わせでは、ｐ、ｇ、ｐ′、ｇ′は同じオブジェクトからのものであり、「ｐ、ｐ″、ｇ″」又は「ｇ、ｐ″、ｇ″」は異なるオブジェクトに対応する。ｐ、ｇ、ｐ′、ｇ′から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベルが「１，０」である歩行エネルギーマップペアが得られる。同様に、「ｐ、ｐ″、ｇ″」又は「ｇ、ｐ″、ｇ″」から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベルが「０，１」である歩行エネルギーマップペアが得られる。歩行エネルギーペアの間のラベルの同じ又は異なる関係によって、それらをＣ関数における異なる位置に入力して、別の第２の融合歩行特徴ベクトル損失関数を取得する。
【０１０３】
上記の融合歩行特徴ベクトル損失関数は、一方では、各組の歩行エネルギーマップを分類することができ、他方では、各２組の歩行エネルギーマップの特点に基づき、同じカテゴリーからのものである場合に、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合に、特徴ベクトルをできるだけ乖離させる。
ステップＳ９０５は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を得る。
ステップＳ９０５は、前述のＳ６０４と同様であるので、ここでは繰り返さない。
ステップＳ９０６は、少なくとも１つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークにおけるフィルタパラメータを調整する。
ステップＳ９０６は、前述のステップＳ６０５と同様であるので、ここでは繰り返さない。
ステップＳ９０２-９０５は、前述のトレーニングユニット１３又はプロセッサ１によって実行され得る。
【０１０４】
なお、図８では、Ｆ１―Ｆ３は歩行エネルギーマップペアを表し、Ｄ(Ｃ(Ｆ１)，Ｃ(Ｆ２))におけるＤ(*)は距離を表し、Ｃは確率計算関数を表し、ＩＤ(＝)は、同じオブジェクトからの確率を表し、ＩＤ(≠)は、異なるオブジェクトからの確率を表す。
【０１０５】
本実施例では、各トレーニングサブサンプルが入力された後、ディープニューラルネットワークを利用して各歩行エネルギーマップの歩行特徴ベクトルを抽出し、そして、それらを融合してから、損失関数を使用して、トレーニングされるディープニューラルネットワークを調整する。一方では、各組の歩行エネルギーマップを分類し、他方では、各２組の特点に基づき、同じカテゴリーからのものである場合、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合、特徴ベクトルをできるだけ乖離させる。ネットワークトレーニングが完了した後、トレーニング済みのディープニューラルネットワークを歩行認識に使用することができる。
【０１０６】
本発明の実施例はさらに、ビデオ処理デバイスを保護請求する。当該ビデオ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。当該プロセッサは、メモリに格納されたプログラムを実行し、他のデバイスを呼び出すことによって、上記のビデオ処理方法を実行する。
【０１０７】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。前記命令は、本発明の任意の実施例によって提供されるビデオ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【０１０８】
歩行は一種の姿勢であるので、本発明の実施例は、姿勢認識を実現するために、イメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体を保護請求する。
【０１０９】
上記のイメージ処理方法は、
アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップ(又は、第１の姿勢マップ)を取得するステップと、
アイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップ(又は、第２の姿勢マップ)を取得するステップと、
第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップをディープニューラルネットワークに入力して、第１の姿勢認識を行うステップと、を含み、
さらに、第１の姿勢認識は、
第１及び第２の姿勢エネルギーマップに対応するアイデンティティ情報を抽出し、前記第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップの姿勢特徴によって融合姿勢特徴ベクトルを決定するステップであって、前記第１の姿勢エネルギーマップのアイデンティティ情報が前記第１の姿勢エネルギーマップの姿勢特徴を含み、前記第２の姿勢エネルギーマップのアイデンティティ情報が前記第２の姿勢エネルギーマップの姿勢特徴を含むステップと、
少なくとも融合姿勢特徴ベクトルに基づき、第１の姿勢エネルギーマップと第２の姿勢エネルギーマップの類似度を計算するステップと、を含む。
【０１１０】
本実施例におけるアイデンティティ情報、融合姿勢特徴ベクトルは、前記アイデンティティ情報及び融合歩行特徴ベクトルと同様であるので、ここでは繰り返さない。
なお、アイデンティティが認識されるべきオブジェクトは人間であってもよく、動物であってもよく、さらに、生命のない移動又は静止しているものであってもよい。
上記のイメージ処理装置は、ソフトウェア又はハードウェアの形でイメージ処理デバイスに適用されてもよい。具体的に、イメージ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(ＰＣ)であってもよく、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ｉｐａｄなどの端末であってもよい。
【０１１１】
ソフトウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
ハードウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、例示的に、端末又はサーバーのコントローラ／プロセッサであってもよい。
【０１１２】
上記のイメージ処理方法の他の適用シナリオは、図１０に例示的に示されている。イメージ処理デバイス１００１は、アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップを取得し、データベース１００２におけるアイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップに基づいて、第１の姿勢認識を行う。
【０１１３】
なお、ディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記のシナリオにはトレーニングデバイス１００３をさらに含んでもよい。勿論、トレーニングデバイス１００３の機能は、イメージ処理デバイス１００１によって実現されてもよい。トレーニングデバイス１００３は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用されることができる。
【０１１４】
イメージ処理装置の例示的な構成は、図１１に示すように、２の取得ユニット１１１と、姿勢認識ユニット１１２とを含む。
その中、第２の取得ユニット１１１は、アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップを取得し、アイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップを取得するために使用され、
姿勢認識ユニット１１２は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第２の取得ユニット１１１によって提供された第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップに対して、第１の姿勢認識を行う。
【０１１５】
第１の姿勢認識について、前述の説明を参照してください。ここでは、繰り返さない。
本発明の他の実施例では、図１１ｂを参照し、上記のイメージ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット１１３をさらに含んでもよい。
トレーニングプロセスには、第２の姿勢認識が含まれ、第２の姿勢認識は、第１の姿勢認識と同様であるので、ここでは繰り返さない。
【０１１６】
また、本実施例におけるトレーニングプロセスは、前述の実施例におけるトレーニングプロセスと同様であり、トレーニング目標は、前述の実施例におけるトレーニング目標と同様であり、式も同様であるので、ここでは繰り返さない。
イメージ処理デバイスの別の可能な構造の概略図について、図２ｃを参照することができ、ここでは繰り返さない。
本発明の実施例は、また、イメージ処理デバイスを保護請求する。当該イメージ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。このプロセッサは、メモリに格納されたプログラムを実行し、他の装置を呼び出すことによって、上記のイメージ処理方法を実行する。
【０１１７】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。前記命令は、本発明の実施例によって提供されるイメージ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【０１１８】
本明細書における各実施例は、漸進的に説明された。各実施例は、ともに他の実施例との違いを重要に説明して、各実施例の間の同じ又は類似する部分について、互いに参照することができる。実施例に開示された装置について、実施例に開示された方法に対応するため、説明は比較的簡単であり、関連部分について方法部分の説明を参照すればよい。
【０１１９】
専門家はさらに、本明細書に開示された実施例を結合して説明される各例におけるユニット及びアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、又はそれらの組み合わせによって実現され得ることを理解することができる。ハードウェアとソフトウェアの互換性を明確に説明するために、上記の説明では、機能に従って、各例の構成及びステップを一般的に説明した。これらの機能がハードウェア又はソフトウェアのどちらで実行されるかは、技術的解決策の特定の適用及び設計制約条件に依存する。当業者は、特定の適用ごとに異なる方法を使用して、説明された機能を実現することができるが、このような実現は本発明の範囲を超えるものと見なされるべきではない。
【０１２０】
本明細書に開示された実施例と結合して説明される方法又はアルゴリズムのステップは、ハードウェア、プロセッサによって実行されるソフトウェアユニット、又はそれらの組み合わせによって直接実施され得る。ソフトウェアユニットは、ランダムアクセスメモリ(ＲＡＭ)、メモリ、読み取り専用メモリ(ＲＯＭ)、電気的にプログラム可能なＲＯＭ、電気的に消去可能なプログラマブルＲＯＭ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ-ＲＯＭ、又は技術分野で知られている任意の他の形式の記憶媒体に配置できる。
【０１２１】
開示された実施例に関する上記の説明は、当業者が本発明を実施又は使用することを可能にする。これらの実施例に対する様々な修正は当業者には明らかであり、本明細書で定義された一般的な原理は、本発明の精神又は範囲から逸脱することなく、他の実施例で実現することができる。したがって、本発明は、本明細書に示されるこれらの実施例に限定されず、本明細書に開示された原理及び新規の特徴と一致する最も広い範囲に適合すべきである。
【図１ａ】
2021515321.tif 000024
【図１ｂ】
2021515321.tif 000025
【図１ｃ】
2021515321.tif 000026
【図１ｄ】
2021515321.tif 000027
【図２ａ】
2021515321.tif 000028
【図２ｂ】
2021515321.tif 000029
【図２ｃ】
2021515321.tif 000030
【図３】
2021515321.tif 000031
【図４】
2021515321.tif 000032
【図５ａ】
2021515321.tif 000033
【図５ｂ】
2021515321.tif 000034
【図５ｃ】
2021515321.tif 000035
【図６】
2021515321.tif 000036
【図７】
2021515321.tif 000037
【図８】
2021515321.tif 000038
【図９】
2021515321.tif 000039
【図１０】
2021515321.tif 000040
【図１１ａ】
2021515321.tif 000041
【図１１ｂ】
2021515321.tif 000042
【手続補正書】
【提出日】令和2年9月24日(2020.9.24)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１８年０４月１２日に中国特許庁に提出された、出願番号が２０１８１０３２７６３８.４であって、発明の名称が「ビデオ処理方法及び関連装置、イメージ処理方法及び関連装置」である中国特許出願に基づく優先権を主張するものであり、その全内容を本開示に参照により援用する。
【０００２】
本発明は、歩行認識技術分野に関し、具体的に、ビデオ処理方法、ビデオ処理装置、ビデオ処理デバイス及び記憶媒体、イメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体に関する。
【背景技術】
【０００３】
多くのシナリオで、歩行認識が必要である。例えば、公共の場所には屋外カメラがたくさんあるが、カメラは一般的に人から遠く離れており、撮影したイメージ又はビデオについて、顔によって歩行者認識を行うことができない。歩行認識技術は、人の歩行特徴ベクトルに基づいて歩行者認識を行うことができ、顔に基づいて認識する必要がなく、高精細な画質も必要としないので、歩行認識技術は１つの重要な研究の方向になった。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の実施例は、歩行認識を実現するためのメディア処理方法、メディア処理装置及び記憶媒体を提供し、さらに、本発明の実施例は、姿勢認識を実現するためのイメージ処理方法、イメージ処理デバイス及び記憶媒体を提供する。
【課題を解決するための手段】
【０００５】
本発明の実施例は、上記の目的を達成するために、以下の技術的解決策を提供する。
メディア処理装置に適用されるメディア処理方法であって、
処理対象ビデオを取得するステップであって、前記処理対象ビデオが、アイデンティティが認識されるべきオブジェクトを含むステップと、
前記処理対象ビデオに基づき第１の歩行エネルギーマップを生成するステップと、
第２の歩行エネルギーマップを取得するステップであって、前記第２の歩行エネルギーマップが、アイデンティティが既知のオブジェクトを含むビデオに基づき生成されるステップと、
ディープニューラルネットワークに基づき、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップに対して第１の歩行認識を行うステップと、
を含み、
前記第１の歩行認識は、
前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップのそれぞれに対応するアイデンティティ情報を抽出し、前記第１の歩行エネルギーマップ及び第２の歩行エネルギーマップの歩行特徴ベクトルによって融合歩行特徴ベクトルを決定するステップであって、前記第１の歩行エネルギーマップのアイデンティティ情報が前記第１の歩行エネルギーマップの歩行特徴ベクトルを含み、前記第２の歩行エネルギーマップのアイデンティティ情報が前記第２の歩行エネルギーマップの歩行特徴ベクトルを含むステップと、
少なくとも前記融合歩行特徴ベクトルに基づき、前記第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度を計算するステップと、
を含む方法。
【０００６】
この実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子及び歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定され、その後、少なくとも融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【０００７】
メディア処理装置であって、少なくともプロセッサとメモリを含み、前記プロセッサは、前記メモリに格納されたプログラムを実行し、他の装置を呼び出すことにより、上記のメディア処理方法を実行する。
【０００８】
本発明の実施例は、記憶媒体をさらに提供し、前記記憶媒体は、複数の命令を記憶し、前記命令は、本発明の実施例によって提供されるメディア処理方法のいずれかを実行するために、プロセッサによってロードされるように適合される。
【０００９】
本実施例で使用されるディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの融合姿勢特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と姿勢特徴ベクトルを含む)も抽出し、そして、融合姿勢特徴ベクトルは姿勢特徴ベクトルによって決定され、その後、少なくとも融合姿勢特徴ベクトルに基づき２つの姿勢エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する姿勢認識が実現される。
【図面の簡単な説明】
【００１０】
【図１】図１ａから図１ｄは、本発明の実施例によるビデオ処理適用シナリオの例示的な構造図である。
【図２】図２ａ及び図２ｂは、本発明の実施例によるビデオ処理装置の例示的な構造図であり、図２ｃは、本発明の実施例によるビデオ処理デバイスの例示的な構造図である。
【図３】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図４】本発明の実施例による歩行エネルギーマップの概略図である。
【図５】図５ａから図５ｄは、本発明の実施例による歩行特徴ベクトルを抽出する概略図である。
【図６】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図７】本発明の実施例によるトレーニングプロセスの概略図である。
【図８】本発明の実施例によるトレーニングプロセスの概略図である。
【図９】本発明の実施例によるビデオ処理方法の例示的なフローチャートである。
【図１０】本発明の実施例によるイメージ処理適用シナリオの例示的な構造図である。
【図１１】図１１ａから図１１ｄは、本発明の実施例によるイメージ処理装置の例示的な構造図である。
【発明を実施するための形態】
【００１１】
歩行認識は、人々の歩行姿勢によってアイデンティティを認識することを目的とした、新しいタイプの生体特徴認識技術である。歩行認識は、非接触長距離、及びカモフラージュが容易ではないという利点があり、高精細な画質も必要としない。そのため、セキュリティ保護、公安、公共交通などのシナリオで広く使用でき、適用の可能性が非常に大きくなる。
【００１２】
本発明の実施例は、リアルタイム又はオフライン歩行認識技術サービスを提供する必要がある様々なシナリオ(例えば、インテリジェントビデオ監視)に適した、メディア処理方法及び関連装置(メディア処理デバイス及び記憶媒体など)を提供する。
【００１３】
最初に、コアアイデアを説明する。
歩行認識は１つの検索問題として理解でき、照会対象の人物(アイデンティティが認識されるべきオブジェクト)のメディア(例えば、メディアがビデオである場合に、第１のビデオ又は処理対象ビデオと呼ばれ、第１のビデオにおけるビデオフレームにはアイデンティティが認識されるべきオブジェクトが含まれる)を与え、データベース内のどの既知のアイデンティティ情報を持つ人物(アイデンティティが既知のオブジェクト)のビデオ(第２のビデオとも呼ばれる)が、それに類似又は最も類似するかを照会する。
【００１４】
本発明の実施例によって提供されるメディア処理方法及び関連装置は、ディープニューラルネットワークに基づいて歩行認識を実現する。説明の便宜上、以下の実施例では、主にビデオをメディアのオプションの表現形式として説明する。
【００１５】
上記のディープニューラルネットワークは、歩行エネルギーマップに基づいて歩行認識を行うため、ディープニューラルネットワークによる歩行認識の前に、予め第１のビデオから第１の歩行エネルギーマップを抽出し、第２のビデオから第２の歩行エネルギーマップを抽出し、その後、第１の歩行エネルギーマップ及び第２の歩行エネルギーマップを当該ディープニューラルネットワークに入力し、ディープニューラルネットワークによって、２つの歩行エネルギーマップの類似度を、上記の処理対象ビデオ及び第２のビデオの類似度として出力する。
【００１６】
より具体的に、上記のディープニューラルネットワークは、入力された２つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、２つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの識別子、及び当該歩行エネルギーマップに基づいて抽出された歩行特徴ベクトルを含み得る。２つの歩行エネルギーマップの融合歩行特徴ベクトルは、２つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって決定される。
【００１７】
その後、上記のディープニューラルネットワークは、少なくとも抽出された融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度を計算する。
【００１８】
このことから分かるように、上記のディープニューラルネットワークは、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトの融合歩行特徴ベクトルを抽出するだけでなく、同時に、アイデンティティが認識されるべきオブジェクト及びアイデンティティが既知のオブジェクトのアイデンティティ情報(識別子と歩行特徴ベクトルを含む)を抽出し、そして、融合歩行特徴ベクトルは歩行特徴ベクトルによって決定される。その後、少なくとも融合歩行特徴ベクトルに基づき、２つの歩行エネルギーマップの類似度(即ち、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトの類似度)を計算し、これにより、アイデンティティが認識されるべきオブジェクトに対する歩行認識が実現される。
【００１９】
ディープニューラルネットワークは、ニューロンによって階層構造で構成され、各ニューロンレイヤーには複数のフィルタが含まれ、それらの間の重みとオフセット量(フィルタパラメータ)はトレーニングによって取得できる。
【００２０】
したがって、一例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。これについて後述する。
【００２１】
以下、コアアイデアを説明した後、歩行認識を実現するための本発明の実施例に係るビデオ処理装置、及び、ビデオ処理デバイスについて説明する。
【００２２】
上記のビデオ処理装置は、ソフトウェア又はハードウェアの形で、ビデオ処理デバイスに適用することができる。具体的に、ビデオ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(ＰＣ)であってもよいし、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ｉｐａｄなどの端末であってもよい。
【００２３】
ソフトウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
【００２４】
ハードウェアの形でビデオ処理デバイスに適用する場合に、上記のビデオ処理装置は、例えば、端末又はサーバーのコントローラ／プロセッサであってもよい。
【００２５】
図１ａに示すように、例として、上記のビデオ処理方法の適用シナリオでは、カメラ１０１は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、ビデオをビデオ処理デバイス１０２に提供し、ビデオ処理デバイス１０２は、データベース１０３におけるアイデンティティが既知のオブジェクトのビデオに基づいて、歩行認識を行う。このシナリオでは、ビデオ処理デバイス１０２は、歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【００２６】
図１ｂに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、ビデオ処理デバイス１０２は、移動している歩行者(アイデンティティが認識されるべきオブジェクト)のビデオを撮影し、データベース１０３におけるアイデンティティが既知のオブジェクトのビデオに基づいて歩行認識を行う。このシナリオでは、ビデオ処理デバイス１０２は、撮影装置、及び歩行エネルギーマップを抽出できるモジュール又は装置を備える必要がある。
【００２７】
さらに図１ｃに示すように、例として、上記のビデオ処理方法の他の適用シナリオでは、外部デバイス１０４は、アイデンティティが認識されるべきオブジェクトの歩行エネルギーマップ又はビデオをビデオ処理デバイス１０２へ提供し、ビデオ処理デバイス１０２は、データベース１０３に記憶された各アイデンティティが既知のオブジェクトの歩行エネルギーマップに基づいて歩行認識を行う。このシナリオでは、外部デバイスがビデオを提供する場合に、ビデオ処理デバイス１０２は、歩行エネルギーマップを抽出するモジュール又は装置を備える必要がある。
【００２８】
なお、上記のディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記の各シナリオでは、トレーニングデバイス１０５を含めることもできる。勿論、トレーニングデバイス１０５の機能は、ビデオ処理デバイス１０２によって実現することもできる。トレーニングデバイス１０５は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用され得る。
【００２９】
より具体的なシナリオ(クライアントサーバーシナリオ)では、図１ｄを参照し、ｗｅｂサーバー１０６、ビデオ処理サーバー１０７(即ち、ビデオ処理デバイス)、データベース１０３を含み得る。なお、トレーニングサーバー１０８(トレーニングデバイス)も含み得る。
【００３０】
ただし、ｗｅｂサーバー１０６は、フロントエンド(フォアグラウンド)であり、クライアントブラウザ(上記の外部デバイス)との通信を担当する。ビデオ処理サーバー１０７、データベース１０３、トレーニングサーバー１０８などは、バックエンドであり、ビデオ処理サーバー１０７は、クライアントブラウザにビデオ処理(歩行認識)サービスを提供することができる。トレーニングサーバー１０８は、ビデオ処理サーバー１０７によって使用されるビデオ処理アルゴリズムをトレーニングする(即ち、ディープニューラルネットワークをトレーニングする)ために、又は、トレーニング用のサンプルを提供するために使用され得る。
【００３１】
次に、ビデオ処理装置の内部構成について説明するが、ビデオ処理装置の例示的な構成は図２ａに示され、第１の取得ユニット１１と、歩行認識ユニット１２とを含む。
【００３２】
第１の取得ユニット１１は、処理対象ビデオを取得し、当該処理対象ビデオに基づき第１の歩行エネルギーマップを生成し、第２の歩行エネルギーマップを取得するために使用され、当該第２の歩行エネルギーマップは、アイデンティティが既知のオブジェクトを含むビデオに基づき生成され、
歩行認識ユニット１２は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第１の取得ユニット１１によって提供される第１の歩行エネルギーマップ及び第２の歩行エネルギーマップに対して第１の歩行認識を行うために使用されることができる。
【００３３】
本発明の他の実施例では、図２ｂを参照し、上記のビデオ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット１３をさらにを含んでもよい。
【００３４】
本明細書では、以下、ビデオ処理方法と組み合わせて、上記の各ユニットの機能を説明する。
【００３５】
図２ｃは、上記の実施例におけるビデオ処理デバイスの可能な構造の概略図を示す。バス、プロセッサ１、メモリ２、通信インタフェース３、入力デバイス４、及び出力デバイス５を含む。プロセッサ１、メモリ２、通信インタフェース３、入力デバイス４、及び出力デバイス５は、バスを介して互いに接続されている。なお、バスは、コンピュータシステムの各コンポーネントの間で情報を伝送するための経路を含み得る。
【００３６】
プロセッサ１は、例えば、汎用中央処理装置(ＣＰＵ)、ネットワークプロセッサ(Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｏｒ、ＮＰと略称する)、マイクロプロセッサなどの汎用プロセッサであってもよく、特定用途向け集積回路(ａｐｐｌｉｃａｔｉｏｎ-ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ、ＡＳＩＣ)、又は本発明解決策のプログラムの実行を制御するための１つ又は複数の集積回路であってもよい。また、デジタル信号プロセッサ(ＤＳＰ)、フィールドプログラマブルゲートアレイ(ＦＰＧＡ)又はその他のプログラマブルロジックデバイス、ディスクリートゲートまたはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントであってもよい。
【００３７】
メモリ２は、本発明の技術的解決策を実行するためのプログラム又はスクリプトを格納しており、オペレーティングシステム及び他の主要なサービスも格納することができる。具体的に、プログラムはプログラムコードを含むことができ、プログラムコードはコンピュータ操作命令を含む。スクリプトは、通常、テキスト(例えば、ＡＳＣＩＩ)で保存され、呼び出されたときにのみ解釈又はコンパイルされる。
【００３８】
より具体的に、メモリ２は、読み取り専用メモリ(ｒｅａｄ-ｏｎｌｙ  ｍｅｍｏｒｙ、ＲＯＭ)、静的情報及び命令を記憶できる他のタイプの静的記憶デバイス、ランダムアクセスメモリ(ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ、ＲＡＭ)、情報及び命令を記憶できる他のタイプの動的記憶デバイス、磁気ディスクメモリ、ｆｌａｓｈなどを含み得る。
【００３９】
入力デバイス４は、例えば、キーボード、マウス、カメラ、音声入力装置、タッチスクリーンなど、ユーザーによって入力されたデータと情報を受け取る装置を含み得る。
【００４０】
出力デバイス５は、例えば、ディスプレイスクリーン、スピーカなど、ユーザーへの情報の出力を可能にする装置を含み得る。
【００４１】
通信インタフェース３は、例えば、イーサネット、無線アクセスネットワーク(ＲＡＮ)、無線ローカルネットワーク(ＷＬＡＮ)などの他のデバイス又は通信ネットワークと通信するように、任意のトランシーバなどを使用する装置を含み得る。
【００４２】
図２ｃは、ビデオ処理デバイスの単純化された設計のみを示していることが理解され得る。実際の用途では、上記のビデオ処理デバイスは、任意の数の送信機、受信機、プロセッサ、コントローラ、メモリ、通信インタフェースなどを含むことができる。本発明を実現できる全てのサーバー/インテリジェント端末は、本発明の保護範囲内にある。
【００４３】
プロセッサ１は、メモリ２に格納されたプログラムを実行し、他のデバイスを呼び出すことによって、以下の実施例によって提供されるビデオ処理方法を実現することができる。
【００４４】
なお、図１ａ〜１ｄに示したビデオ処理装置の各ユニットの機能は、上記のプロセッサ１がメモリ２に格納されたプログラムを実行し、他のデバイスを呼び出すことによって実現することができる。
【００４５】
以下、以上の本発明に係る共通点を踏まえ、歩行認識を実現するための本発明の実施例について、さらに詳細に説明する。
【００４６】
図３は、上記のビデオ処理装置／デバイスによって実行されるビデオ処理方法の例示的なフローを示す。この方法は、少なくとも次のステップを含み得る。
３００部分：処理対象ビデオを取得し、当該処理対象ビデオに基づき第１の歩行エネルギーマップを生成し、第２の歩行エネルギーマップを取得する。
ただし、処理対象ビデオ(第１のビデオ)におけるビデオフレームは、アイデンティティが認識されるべきオブジェクトを含み、第２の歩行エネルギーマップは、アイデンティティが既知のオブジェクトのビデオ(第２のビデオ)に基づき生成されたものである。
【００４７】
第１の歩行エネルギーマップと第２の歩行エネルギーマップは、それぞれ対応する一意の識別子(ＩＤ)を持つことができる。１つの歩行エネルギーマップに対応するＩＤは、当該歩行エネルギーマップに対応するオブジェクトのアイデンティティを識別することができる。
【００４８】
歩行エネルギーマップの概略図については、図４を参照されたい。ビデオフレームに基づきマルチフレーム歩行シルエットを取得し、次に、マルチフレーム歩行シルエットを重ね合わせ、正規化処理を実行して、歩行エネルギーマップを取得することができる。
【００４９】
第１の歩行エネルギーマップと第２の歩行エネルギーマップを取得するには、多くの方法がある。
図１ａに示す適用シナリオを例として、カメラ１０１は、処理対象ビデオを撮影した後、処理対象ビデオをビデオ処理デバイス１０２に提供し、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する(又は、データベース１０３から第２の歩行エネルギーマップを取得する)。
【００５０】
図１ｂに示す適用シナリオを例として、ビデオ処理デバイス１０２のカメラによって処理対象ビデオを撮影した後、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する(又は、データベース１０３から第２の歩行エネルギーマップを取得する)。
【００５１】
図１ｃに示す適用シナリオを例として、外部デバイス１０４からビデオ処理デバイス１０２に処理対象ビデオを提供した後、ビデオ処理デバイス１０２は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、外部デバイス１０４からビデオ処理デバイス１０２に第１の歩行エネルギーマップを提供し、ビデオ処理デバイス１０２はデータベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、外部デバイス１０４からビデオ処理デバイス１０２に第１の歩行エネルギーマップを提供し、ビデオ処理デバイス１０２はデータベース１０３から第２の歩行エネルギーマップを取得する。
【００５２】
図１ｄに示す適用シナリオを例として、クライアントからビデオ処理サーバー１０７に処理対象ビデオを提供した後、ビデオ処理サーバー１０７は処理対象ビデオから第１の歩行エネルギーマップを抽出し、データベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー１０７に第１の歩行エネルギーマップを提供し、ビデオ処理サーバー１０７はデータベース１０３から第２のビデオを取得し、それから第２の歩行エネルギーマップを抽出して取得する。又は、クライアントからビデオ処理サーバー１０７に第１の歩行エネルギーマップを提供し、ビデオ処理サーバー１０７はデータベース１０３から第２の歩行エネルギーマップを取得する。
【００５３】
一例では、ビデオ処理装置の第１の取得ユニット１１によって３００部分を実行してもよく、又は、ビデオ処理デバイスの通信インタフェース３によって外部デバイス又はクライアントから提供された処理対象ビデオを受信してもよく、又は、入力デバイス４(例えば、カメラ)によって処理対象ビデオを撮影してもよく、又は、プロセッサ１によってメモリ２のギャラリーから処理対象ビデオを取得してもよい。
【００５４】
上記の識別子は、第１の取得ユニット１１又はプロセッサ１によって割り当てることができる。
３０１部分：ディープニューラルネットワークに基づき、第１の歩行エネルギーマップと第２の歩行エネルギーマップに対して第１の歩行認識を行う。
一例では、３０１部分の入力は、ビデオ処理装置の第１の取得ユニット１１によって実行されるか、又はプロセッサ１によって実行されることができる。
３０２Ａ部分：第１及び第２の歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、第１及び第２の歩行エネルギーマップの融合歩行特徴ベクトルを抽出する。
ここで、任意の歩行エネルギーマップのアイデンティティ情報は、当該歩行エネルギーマップの歩行特徴ベクトルを含んでもよい。さらに、当該歩行エネルギーマップの識別子を含んでもよい。
【００５５】
例えば、第１の歩行エネルギーマップのアイデンティティ情報は、第１の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよく、第２の歩行エネルギーマップのアイデンティティ情報は、第２の歩行エネルギーマップに対応する歩行特徴ベクトルを含んでもよい。
融合歩行特徴ベクトルは、第１及び第２の歩行エネルギーマップのそれぞれの歩行特徴ベクトルによって共同で決定される。本明細書では、融合歩行特徴ベクトルを取得する方法について後述する。
より具体的に、上記のディープニューラルネットワークは、アイデンティティ情報抽出レイヤーと、融合歩行特徴ベクトル抽出レイヤーとを含み得る。
ここで、上記のアイデンティティ情報抽出レイヤーは、少なくとも第１の抽出レイヤーと、第２の抽出レイヤーとを含み得る。
【００５６】
一例では、図５ａを参照して、第１の抽出レイヤーは、入力された各歩行エネルギーマップの第１のレベルの歩行特徴ベクトルを抽出し、第１のレベルの歩行特徴ベクトルを第２の抽出レイヤーに入力し、第２の抽出レイヤーは、２つの歩行エネルギーマップ(例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップ)のそれぞれの第２のレベルの歩行特徴ベクトルを抽出する。
上記の融合歩行特徴ベクトル抽出レイヤーは、２つの歩行エネルギーマップの第２のレベルの歩行特徴ベクトルを融合することで、第２のレベルの融合歩行特徴ベクトルを取得してもよい。
【００５７】
別の例では、図５ｂを参照して、融合歩行特徴ベクトル抽出レイヤーは、ディープニューラルネットワークに入力された２つの歩行エネルギーマップ(例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップ)の第１のレベルの歩行特徴ベクトルを融合することで、第１のレベルの融合歩行特徴ベクトルを取得し、第１のレベルの融合歩行特徴ベクトルに基づき第２のレベルの融合歩行特徴ベクトルを抽出してもよい。
【００５８】
この例では、融合歩行特徴ベクトル抽出レイヤーは、融合レイヤー(第１のレベルの歩行特徴ベクトルを融合することで第１のレベルの融合歩行特徴ベクトルを取得する)と、抽出レイヤー(第１のレベルの融合歩行特徴ベクトルに基づき第２のレベルの融合歩行特徴ベクトルを抽出して取得する)とをさらに含んでもよい。
【００５９】
一例では、上記の第１の抽出レイヤーと第２の抽出レイヤーは、イメージ特徴ベクトルを抽出するための複数の特徴ベクトル抽出レイヤーをさらに含み得る論理層であってもよく、入力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが低く、出力に近い特徴ベクトル抽出レイヤーで抽出された特徴ベクトルのレベルが高くなる。
【００６０】
例えば、図５ｃを参照して、アイデンティティ情報抽出レイヤーは、２つの歩行エネルギーマップの歩行特徴ベクトルをそれぞれ抽出するために、２つのチャネル(各チャネルがいずれも、第１の抽出レイヤーと第２の抽出レイヤーを含む)をそれぞれ含み得る。どのチャネルでも、まず、低レベルの歩行特徴ベクトルを抽出し、低レベルの歩行特徴ベクトルを組み合わせて、高レベルの歩行特徴ベクトルを抽出することができる。２つの歩行エネルギーマップで同じ操作を実行する必要があるため、第１の抽出レイヤーにおける２つのチャネルは重みを共有することができる。
【００６１】
例えば、チャネルにおける第１の特徴ベクトル抽出レイヤーによって抽出された歩行特徴ベクトルレベルは最低で、一般的に、エッジ、コーナー、カーブなどであり(ｃｏｖ-１６に対応し、ここで、「ｃｏｖ」が畳み込みを表し、１６がフィルタの数を表し、フィルタの数は抽出された歩行特徴ベクトルの次元を決定する)、第２の特徴ベクトル抽出レイヤーは、第１の抽出レイヤーから出力された歩行特徴ベクトルの組み合わせ特徴ベクトル(ｃｏｖ-６４に対応する)を抽出し、以下同様に類推される。抽出された歩行特徴ベクトルのレベルは、低レベルから中レベル、さらに高レベル／抽象(セマンティックレベル)であり、さらに、図５ｃにおける「ＦＣ」が接続レイヤーを表し、「ＦＣ-２０４８」が２０４８個のニューロンを有する接続レイヤーを表し、抽出された特徴ベクトルは２０４８次元である。勿論、低レベルと中レベルを第１のレベルと総称してもよい。
【００６２】
融合歩行特徴ベクトル抽出レイヤー(アイデンティティ情報抽出レイヤーの２つのチャネルとは独立した別のチャネルと見なすこともできる)について、低レベルの歩行特徴ベクトルを繋ぎ合わせて、低レベルの融合歩行特徴ベクトルを取得し、さらに、高レベル融合歩行特徴ベクトルが得られるまでに、より高いレベルの融合歩行特徴ベクトル(中レベル融合歩行特徴ベクトル)を抽出してもよい。
【００６３】
又は、融合歩行特徴ベクトル抽出レイヤーは、中レベル歩行特徴ベクトルを繋ぎ合わせて、中レベル融合歩行特徴ベクトルを取得し、さらにより高いレベルの融合歩行特徴ベクトルを抽出してもよい。
【００６４】
又は、融合歩行特徴ベクトル抽出レイヤーは、高レベル歩行特徴ベクトルを直接繋ぎ合わせて、高レベル融合歩行特徴ベクトルを取得してもよい。
【００６５】
図５ｃに示すように、低レベルの歩行特徴ベクトルと中レベル歩行特徴ベクトルを第１のレベルの歩行特徴ベクトルと総称してもよい。勿論、第１のレベルの歩行特徴ベクトルは、最終的な中レベル歩行特徴ベクトルを含むと考えることもできる。
【００６６】
勿論、融合歩行特徴ベクトル抽出レイヤーが低レベルの歩行特徴ベクトルを繋ぎ合わせて低レベルの融合歩行特徴ベクトルを取得する場合に、第１のレベルの歩行特徴ベクトルは、低レベルの歩行特徴ベクトルのみを含むことができる。
【００６７】
当業者は、必要に応じて、柔軟に設計することができる。ここでは、繰り返さない。
【００６８】
また、なお、図５ｃに示する例は、次のようにも理解できる。前段の６層ネットワーク構造は、それぞれ、１対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを抽出し、その後、２つの独立した操作に分割する。第１部分の操作は、第７層ネットワーク構造で、それぞれの歩行特徴ベクトルを融合し、融合歩行特徴ベクトルを取得し、さらに、融合歩行特徴ベクトルをより高いレベルで抽出することを含む。第２部分の操作は、１対の歩行エネルギーマップのそれぞれの歩行特徴ベクトルを引き続き抽出して、第２のレベルの融合歩行特徴ベクトル、又は最終的な高レベル歩行特徴ベクトルを取得することを含む。
【００６９】
本実施例では、上記のディープニューラルネットワークは、そのパラメータを調整するように、事前にトレーニングされてもよい。
さらに、本実施例のディープニューラルネットワークがトレーニングプロセス中にパラメータを調整するときに、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれているアイデンティティ情報も考慮される。このようにトレーニングされたディープニューラルネットワークは、より識別性を持つ歩行特徴ベクトルをより効果的に抽出できる。そして、融合歩行特徴ベクトルは２つの歩行エネルギーマップの歩行特徴ベクトルによって共同で決定されるため、融合歩行特徴ベクトルはそれに応じて識別性がより高くなり、より正確な類似度を得ることができる。
【００７０】
３０２Ｂ部分：少なくとも抽出された融合歩行特徴ベクトルに基づき、類似度を計算する。
類似度は、具体的にパーセンテージにすることができる。両者(アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクト)が同じオブジェクトに対応する確率のパーセンテージを表す。例えば、類似度が６０％である場合、両者が同じ人物である可能性は６０％である。
【００７１】
一例では、融合歩行特徴ベクトルのみに基づいて、類似度を計算してもよい。
【００７２】
別の例では、上記の融合歩行特徴ベクトルに基づき第１の類似度を計算し、２つの歩行エネルギーマップのアイデンティティ情報に基づき第２の類似度を計算し、次に、両者の加重和を求め(最も簡単なものは、加算して２で除算して平均を取る)、最終的な類似度を得ってもよい。
例えば、融合歩行特徴ベクトルに基づき計算した第１の類似度が８０％であり、アイデンティティ情報に基づき計算した第２の類似度が６０％であると仮定すると、最終的な類似度は、(８０％＋６０％)／２＝７０％になる。
類似度を計算する方法は多数あるので、ここでは繰り返さない。
【００７３】
上記の３０２Ａと３０２Ｂ部分は、ディープニューラルネットワークによって実行される第１の歩行認識である。一例では、３０２Ａと３０２Ｂ部分は、上記ビデオ処理装置の歩行認識ユニット１２、又はプロセッサ１によって実行されてもよい。
【００７４】
別の例では、図５ａと図５ｂを参照して、上記のディープニューラルネットワークは、類似度計算レイヤーを含んでもよく、３０２Ｂ部分は、類似度計算レイヤーによって実行されてもよい。
３０３部分：ディープニューラルネットワークは認識結果を出力する。この認識結果は、類似度、又は、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。
一例では、認識結果は上記の類似度を含み得る。
なお、認識結果は、入力された２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを示す情報を含み得る。例えば、値「１」は、両者が同じオブジェクトに属することを表し、値「０」は、両者が異なるオブジェクトに属することを表す。
より具体的に、ディープニューラルネットワークは、１組の(２つの)歩行エネルギーマップに対して第１の歩行認識を実行する度に、認識結果を１回出力することができる。
又は、ディープニューラルネットワークは、第１の歩行認識のバッチが完了した後に、認識結果を１回出力することができる。
【００７５】
例えば、オブジェクトＡのアイデンティティが認識されるべきであり、データベースにアイデンティティが既知のオブジェクトのビデオが１０個あり、１０個の第２の歩行エネルギーマップを取得することができると仮定する。ある順序に従って、ディープニューラルネットワークは、オブジェクトＡの第１の歩行エネルギーマップと１０個の第２の歩行エネルギーマップの類似度を１つずつ計算し、計算が完了した後、ディープニューラルネットワークは認識結果を出力する。すると、上記の認識結果は、１０個の類似度を含み得る。勿論、上記の認識結果は、２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを識別する情報をさらに含み得る。
【００７６】
別の例では、上記の認識結果は、アイデンティティが認識されるべきオブジェクトとアイデンティティが既知のオブジェクトが同じオブジェクトに属するかどうかに関する情報を含む。例えば、第１及び第２の歩行エネルギーマップが異なるオブジェクトに属する確率を含む。この確率は、「１―類似度」で計算される。例えば、第１の歩行エネルギーマップと第２の歩行エネルギーマップの類似度が８０％である場合、第１及び第２の歩行エネルギーマップが異なるオブジェクトに属する確率は２０％である。
【００７７】
第１及び第２の歩行エネルギーマップが同じオブジェクトに属するかどうかを判定する方法について、次の操作を実行することができる。
類似度が認識条件を満たす場合、第１の歩行エネルギーマップと第２の歩行エネルギーマップが同じオブジェクトに対応すると判定し、即ち、第２の歩行エネルギーマップに対応する一意の識別子は、当該アイデンティティが認識されるべきオブジェクトのアイデンティティを識別することができる。さもなければ、異なるオブジェクトに対応すると判定する。
上記の認識条件は、類似度が類似度閾値以上であるか、又は類似度が類似度閾値よりも大きいことを含む。
例えば、類似度閾値が８０％であると仮定すると、２つの歩行エネルギーマップの類似度が７０％である場合に、両者が同じ人物ではないと考えられ、２つの歩行エネルギーマップの類似度が８０％よりも大きい（又は等しい）場合に、両者が同じ人物であると考えられる。したがって、第２の歩行エネルギーマップに対応する一意の識別子は、アイデンティティが認識されるべきブジェクトのアイデンティティを識別することができる。
【００７８】
前述のように、データベースにアイデンティティが既知のオブジェクトのビデオ又は歩行エネルギーマップを記憶しており、本発明の他の実施例では、あるアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度が認識条件を満たすか、又は、全てのアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度が算出されるまでに、データベースにおけるアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度を１つずつ計算してもよい。
【００７９】
例えば、オブジェクトＡのアイデンティティが認識され、データベースにアイデンティティが既知のオブジェクトのビデオが１０個ある。ある順序に従って、類似度が上記の認識条件を満たすか、又は、１０個の類似度が算出されるまでに、オブジェクトＡの第１の歩行エネルギーマップと１０個のアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップの類似度を１つずつ計算する。
【００８０】
勿論、本発明の他の実施例では、全てのアイデンティティが既知のオブジェクトの第２の歩行エネルギーマップと第１の歩行エネルギーマップの類似度を計算し、次に、認識条件に基づき、２つの歩行エネルギーマップが同じオブジェクトに属するかどうかを判定してもよい。
【００８１】
なお、必要に応じて、ディープニューラルネットワークは、２つの歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。例えば、トレーニングプロセスでは、ディープニューラルネットワークは、損失値を計算するために、歩行エネルギーマップのそれぞれの歩行特徴ベクトルを出力してもよい。
【００８２】
以上のように、本実施例におけるディープニューラルネットワークは、トレーニングプロセスでは、アイデンティティ情報及び類似度に基づき、フィルタパラメータを調整し、つまり、パラメータが調整される場合に、異なる歩行エネルギーマップの融合歩行特徴ベクトルだけではなく、歩行エネルギーマップに暗黙的に含まれるアイデンティティ情報が考慮される。このようにして、より識別性を持つ歩行特徴ベクトルをより効果的に抽出できる。また、融合歩行特徴ベクトルは、２つの歩行エネルギーマップの歩行特徴ベクトルによって決定されるため、融合歩行特徴ベクトルはそれに応じて識別性がより高くなり、より正確の類似度を得ることができる。
【００８３】
以下では、ディープニューラルネットワークをトレーニングする方法を説明する。
なお、ディープニューラルネットワークには複数のフィルタがあり、トレーニングの主な目的はフィルタパラメータを調整することである。したがって、ニューラルネットワークのトレーニング又は最適化のプロセスは、フィルタパラメータを調整して損失関数の損失値を最小化するプロセスとしても理解できる(損失値が小さいほど、対応する予測／出力結果は実際の結果に近くなる)。
【００８４】
既存のトレーニングプロセスでは、採用される損失関数は主に分類損失を反映している。つまり、２つの歩行エネルギーマップのカテゴリー(ここで、カテゴリーは異なる人々を区別することを指す)を判断し、抽出された同じ人物に対応する歩行特徴ベクトルができるだけ類似しており、抽出された異なる人物からの歩行特徴ベクトルができるだけ乖離していることを確保できないため、抽出された歩行特徴ベクトルが優れた識別性を持つことを保証できない。
【００８５】
上記の問題を解决するために、本出願の実施例によって提供されるトレーニングプロセスのトレーニング目標は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけ、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させることを含む。
同時に、本出願の実施例はさらに、トレーニングによって上記のトレーニング目標を達成するために、新しい損失関数を提供する。
上記の新しい損失関数は、アイデンティティ情報損失関数と、融合歩行特徴ベクトル損失関数とを含む。
【００８６】
図６及び図７は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示している。このプロセスには、少なくとも次のステップが含まれる。
ステップＳ６００は、トレーニングサンプルを取得する。
さらに、各トレーニングサンプルは、ｎ個のトレーニングサブサンプルを含むことができ、任意のトレーニングサブサンプルは、２つの(１対の)アイデンティティが既知のオブジェクトの歩行エネルギーマップを含むことができる。上記ｎは、正の整数であってもよい。
具体的に、ステップＳ６００は、前述の取得ユニット１１、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ６０１は、ディープニューラルネットワークが、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第２の歩行認識を実行する。
【００８７】
第２の歩行認識は、トレーニングサブサンプルにおける２つの歩行エネルギーマップのそれぞれのアイデンティティ情報、及び、上記の２つの歩行エネルギーマップの融合歩行特徴ベクトルを抽出し、少なくとも抽出された融合歩行特徴ベクトルに基づき、上記の２つの歩行エネルギーマップの類似度を計算することを含み得る。
【００８８】
第２の歩行認識は、前述の第１の歩行認識と同様であり、具体的に、詳細については、上記３０２Ａと３０２Ｂ部分に関する説明を参照されたい。ここで、繰り返さない。
ステップＳ６０１は、前述の歩行認識ユニット１２、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ６０２は、歩行認識で抽出されたアイデンティティ情報に従って、アイデンティティ情報損失関数を使用して、トレーニングサンプルのアイデンティティ損失値を計算する。
さらに、アイデンティティ損失値が小さいほど、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルがより類似し、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルがより乖離することを示す。
ステップＳ６０３は、トレーニングサンプルの融合損失値を計算する。
ステップＳ６０２とステップＳ６０３の実行順序は、入れ替えてもよく、並列に実行してもよい。
ステップＳ６０４は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を取得する。
例えば、ａが融合損失値を表し、ｂがアイデンティティ損失値を表し、ｃが最終的な損失値を表すと、３つの関係は次のようになる。
ｃ＝ａ＋ηｕ・ｂ、又はｃ＝ηｃ・ａ＋ｂ、又はｃ＝ηｃ・ａ＋ηｕ・ｂ。
【００８９】
当業者は、必要に応じて、ηｕ、ηｃの値を柔軟に設計することができ、ここでは繰り返さない。
ステップＳ６０５は、少なくとも１つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークのフィルタパラメータを調整する。
実際に、時間を節約して効率を向上させるために、一般的は、複数のトレーニングサンプル(例えば、６４個のサンプル)をトレーニングした後、フィルタパラメータを1回調整する。即ち、各トレーニングサンプルの最終的な損失値を個別に計算した後、各最終的な損失値に基づきフィルタパラメータを調整することができる。
ステップＳ６０２から６０５は、前述のトレーニングユニット１３又はプロセッサ１によって実行され得る。
【００９０】
本実施例では、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標で、ディープニューラルネットワークをトレーニングし、抽出された同じ人物の歩行特徴ベクトルをできるだけ近づけ、抽出された異なる人物からの歩行特徴ベクトルをできるだけ乖離させることができ、これにより、抽出された歩行特徴ベクトルを良好に区別することができ、より正確な類似度を得ることができる。
【００９１】
前述の説明では、トレーニングサンプルは、ｎ個のトレーニングサブサンプルを含み得る。以下では、１つのトレーニングサンプルには３個のサブサンプルが含まれる(即ち、３対の歩行エネルギーマップが含まれる)ことを例として、トレーニングプロセスをより詳細に記載する。
１つのトレーニングサンプルには３個のサブサンプルが含まれる場合について、図８にトレーニングフレームワークを示している。図９は、上記の新しい損失関数に基づく例示的なトレーニングプロセスを示す。このプロセスは、少なくとも次のステップを含み得る。
ステップＳ９００は、トレーニングサンプルを取得する。
【００９２】
本実施例では、各トレーニングサンプルには、第１から第３のトレーニングサブサンプルが含まれ(第１及び第２、第３は、区別するためにのみ使用され、ディープニューラルネットワークへの入力の順序を表さない)、第１から第３のトレーニングサブサンプルの組み合わせ方式は、次の方式を含み得る。
第１の組み合わせ方式は、第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、第２のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応し、第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することである。
第２の組み合わせ方式は、第１のトレーニングサブサンプルにおける２つの歩行エネルギーマップが同じオブジェクトに対応し、第２のトレーニングサブサンプルの２つの歩行エネルギーマップが同一オブジェクトに対応し、第３のトレーニングサブサンプルにおける２つの歩行エネルギーマップが異なるオブジェクトに対応することである。
具体的に、ステップＳ９００は、前述の第１の取得ユニット１１、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ９０１：ディープニューラルネットワークは、トレーニングサンプルにおける各トレーニングサブサンプルに対して、第２の歩行認識を実行する。
第２の歩行認識を実行する方法については、前述の３０２Ａと３０２Ｂ部分に関する説明を参照されたい。ここでは繰り返さない。
ステップＳ９０１は、前述の歩行認識ユニット１２、又はトレーニングユニット１３、又はプロセッサ１によって実行され得る。
ステップＳ９０２は、トレーニングサンプルにおける第１から第３のトレーニングサブサンプルの組み合わせ方式が上記の第１の組み合わせ方式である場合に、第１のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
【００９３】
第１のアイデンティティ損失関数は、次のようになる。
2021515321.tif 000043
ただし、Ｌｕはアイデンティティ損失値を表し、ηは係数を表し(値の範囲が０から１である)、
2021515321.tif 000044
はユークリッド距離を表し、
ｐ、ｇ、ｐ′、ｇ′、ｐ″及びｇ″は歩行エネルギーマップの識別子を表し、ＸｐとＸｇは、第１のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐは第１の歩行エネルギーマップとも呼ばれ、Ｘｇは第２の歩行エネルギーマップとも呼ばれる)、Ｘｐ′とＸｇ′は第２のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐ′は第３の歩行エネルギーマップとも呼ばれ、Ｘｇ′は第４の歩行エネルギーマップとも呼ばれる)、Ｘｐ″とＸｇ″は第３のトレーニングサブサンプルにおける１対の歩行エネルギーマップを表し(Ｘｐ″は第５の歩行エネルギーマップとも呼ばれ、Ｘｇ″は第６の歩行エネルギーマップとも呼ばれる)、そして、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応し、
Ｕ(Ｘｐ)からＵ(Ｘｇ″)は各歩行エネルギーマップの歩行特徴ベクトルを表す。
【００９４】
なお、第１のアイデンティティ損失関数における
2021515321.tif 000045
は、第１のトレーニングサブサンプルにおける２つの歩行特徴ベクトルのユークリッド距離を表す。ＸｐとＸｇは同じオブジェクトに対応しているので、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルを近づけるためは、
2021515321.tif 000046
ができるだけ小さくなる(０に近い)ように、フィルタパラメータを調整する。
Ｘｐ′とＸｇ′は異なるオブジェクトに対応しているので、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルを乖離させるために、
2021515321.tif 000047
ができるだけ大きくなる(１に近い)ように、フィルタパラメータを調整する。
さらに、
2021515321.tif 000048
ができるだけ小さく、
2021515321.tif 000049
ができるだけ大きくなる場合、第１のアイデンティティ損失関数における
2021515321.tif 000050
も、できるだけ小さくなる。
同様に、
2021515321.tif 000051
ができるだけ小さく、
2021515321.tif 000052
ができるだけ大きい場合、第１のアイデンティティ損失関数における
2021515321.tif 000053
も、できるだけ小さくなる。
以上のように、上記の第１のアイデンティティ損失関数は、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【００９５】
ステップＳ９０３は、トレーニングサンプルにおける第１から第３のトレーニングサブサンプルの組み合わせ方式が上記の第２の組み合わせ方式である場合に、第２のアイデンティティ損失関数を使用して、当該トレーニングサンプルのアイデンティティ損失値を計算する。
第２のアイデンティティ損失関数は、次のようになる。
2021515321.tif 000054
ただし、ＸｐとＸｐ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応する。
第２の組み合わせでは、ＸｐとＸｇは同じオブジェクトに対応し、Ｘｐ′とＸｇ′は同じオブジェクトに対応し、ＸｐとＸｐ″は異なるオブジェクトに対応するため、
2021515321.tif 000055
はできるだけ大きく、被減数として使用されることが望ましい。
第２のアイデンティティ損失関数は同様に、同じオブジェクトの異なる歩行エネルギーマップから抽出された歩行特徴ベクトルが類似しており、異なるオブジェクトの歩行エネルギーマップから抽出された歩行特徴ベクトルが乖離しているというトレーニング目標を反映している。
【００９６】
ステップＳ９０４は、融合歩行特徴ベクトル損失関数を使用して、トレーニングサンプルの融合損失値を計算する。
一例では、各トレーニングサブサンプルに対応する融合損失サブ値を計算し、次に、各トレーニングサブサンプルの融合損失サブ値を累積して、融合損失値を得ることができる。
融合歩行特徴ベクトル損失関数は、様々な表現形態を有する。
融合損失値としてクロスエントロピーが計算される場合、一例では、あるトレーニングサブサンプルの融合損失サブ値(クロスエントロピー)を計算する融合歩行特徴ベクトル損失関数は、次のようになる。
Ｌｃ＝-Ｐ(ｘａｂ)ｌｏｇＱ(ｘａｂ)。
ただし、ａ、ｂは、任意のトレーニングサブサンプルにおける１対の歩行エネルギーマップの識別子を表し、ｘａｂは当該トレーニングサブサンプルにおける１対の歩行エネルギーマップペアを表し、Ｐ(ｘａｂ)は当該１対の歩行エネルギーマップに対応するラベルの分布状況(実際結果／実際ラベル分布)を表し、Ｑ(ｘａｂ)はトレーニングされるディープニューラルネットワークの予測結果(予測された認識結果)を表す。
【００９７】
例えば、２つの歩行エネルギーマップａ及びｂが同じオブジェクトに対応する場合、実際のラベル分布は「１，０」であり、その中の「１」は、２つの歩行エネルギーマップが同じオブジェクトからのものである確率が１００％であることを表し、「０」は、２つの歩行エネルギーマップが異なるオブジェクトからのものである確率が０％であることを表す。
予測認識結果を「０.７，０.３」とすると、「１，０」と「０.７，０.３」のクロスエントロピーを求めることができる。
２つの歩行エネルギーマップａ及びｂが異なるオブジェクトに対応する場合、ラベルの実際分布は「０，１」であり、その中の「０」は、２つの歩行エネルギーマップが同じオブジェクトからのものである確率が０％であることを表し、「１」は、２つの歩行エネルギーマップが異なるオブジェクトからのものである確率が１００％であることを表す。
予測認識結果を「０.７，０.３」とすると、「０，１」と「０.７，０.３」のクロスエントロピーを求めることができる。
別の例では、融合歩行特徴ベクトル損失関数は、前述の異なる組み合わせによって、第１の融合歩行特徴ベクトル損失関数と第２の融合歩行特徴ベクトル損失関数を含み得る。
【００９８】
前述の第１の組み合わせに対応して、第１の融合歩行特徴ベクトル損失関数は、次のようになる。
2021515321.tif 000056
ただし、Ｌｃは融合損失値を表し、μとηｃは重み付け係数を表し、その値は０から１の間であり、δは緩和係数を表し、その値の範囲は０から１であり、||*||  +は、値を０と比較して、両方の大きい方を取ること、即ち、ｍａｘ(*，０)を表し、
ｘｐｇは歩行エネルギーマップｐ、ｇで構成される歩行エネルギーマップペアを表し、これによって類推して、ｘｐｇからｘｇｐ′は歩行エネルギーマップペアを表し、Ｃ(*)は２つの歩行エネルギーマップペアの間のラベル分布が同じである確率を計算するための確率計算関数である。
Ｃ(ｘｐｇ,ｘｐ″ｇ″)を例にとると、歩行エネルギーマップペアｘｐｇと歩行エネルギーマップペアｘｐ″ｇ″のラベル分布が同じである確率を計算し、Ｃ(ｘｐｇ,ｘｐｇ″)を例にとると、歩行エネルギーマップペアｘｐｇと歩行エネルギーマップペアｘｐｇ″のラベル分布が同じである確率を計算する。
【００９９】
前述の説明では、２つの歩行エネルギーマップが同じオブジェクトに対応する場合に、ラベル分布は「１，０」であり、さもなければ、ラベル分布は「０，１」である。
歩行エネルギーマップペアｘｐｇを例にとると、歩行エネルギーマップｐ、ｇが同じオブジェクトに対応する場合、ｘｐｇのラベル実際分布は「１，０」であり、歩行エネルギーマップｐ、ｇが異なるオブジェクトに対応する場合、ｘｐｇのラベル分布は「０，１」である。同様に、他の歩行エネルギーマップペアの実際ラベル分布を推測できる。
Ｄ[*]は、ユークリッド距離を表し、Ｄ[Ｃ(ｘｐｇ,ｘｐ″ｇ″),Ｃ(ｘｐｇ,ｘｐｇ″)]を例にとると、確率ａと確率ｂの距離を計算し、ここで、確率ａはｘｐｇとｘｐ″ｇ″のラベル分布が同じである確率を表し、確率ｂはｘｐｇとｘｐｇ″のラベル分布が同じである確率を表す。
理論的には、ｘｐｇとｘｐ″ｇ″のラベル分布が同じであり(例えば、いずれも「１，０」又は「０，１」である)、かつ、ｘｐｇとｘｐｇ″のラベル分布が同じである場合、Ｄ[Ｃ(ｘ  ｐｇ,ｘ  ｐ″ｇ″),Ｃ(ｘ  ｐｇ,ｘ  ｐｇ″)]は０である。
又は、ｘｐｇとｘｐ″ｇ″のラベル分布が異なり、かつ、ｘｐｇとｘｐ″ｇ″のラベル分布も異なる場合、Ｄ[Ｃ(ｘｐｇ,ｘｐ″ｇ″),Ｃ(ｘｐｇ,ｘｐｇ″)]は０である。
【０１００】
ｘｐｇとｘｐ″ｇ″のラベル分布が同じである(例えば、いずれも「１，０」又は「０，１」である)が、ｘｐｇとｘｐｇ″のラベル分布が異なる場合、又は、ｘｐｇとｘｐ″ｇ″のラベル分布が異なるが、ｘｐｇとｘｐｇ″のラベル分布が同じである場合、Ｄ[Ｃ(ｘ  ｐｇ,ｘ  ｐ″ｇ″),Ｃ(ｘ  ｐｇ,ｘ  ｐｇ″)]は大きければ大きいほど良い。
実際には、上記の第１の組み合わせでは、ｐ、ｇ、ｐ′は同じオブジェクトに対応し、「ｐ、ｇ′、ｐ″、ｇ″」、「ｇ、ｇ′、ｐ″、ｇ″」又は「ｇ′、ｐ″、ｇ″」は異なるオブジェクトに対応する。ｐ、ｇ、ｐ′から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「１，０」である歩行エネルギーマップペアが得られる。同様に、「ｐ、ｇ′、ｐ″、ｇ″」、「ｇ、ｇ′、ｐ″、ｇ″」又は「ｇ′、ｐ″、ｇ″」から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベル分布が「０，１」である歩行エネルギーマップペアが得られる。歩行エネルギーマップペアの間のラベルの同じ又は異なる関係によって、それらをＣ関数における異なる位置に入力して、別の第１の融合歩行特徴ベクトル損失関数を取得することができる。
以上のように、Ｃ関数における２つの歩行エネルギーマップペアを１つの計算サンプルと見なすと、Ｄ[*]は２つの計算サンプルの間のラベル分布が同じである確率の距離を計算する。
【０１０１】
トレーニングでは、次のようなトレーニング目標を達成するように、フィルタパラメータを調整する必要がある。
２つの計算サンプルについて、第１の計算サンプルにおける２つの歩行エネルギーマップペアのラベル実際分布が同じであって、第２の計算サンプルにおける２つの歩行エネルギーマップペアのラベル実際分布が異なる場合、第１の計算サンプルに対応する第１の確率と第２の計算サンプルに対応する第２の確率は乖離し、さもなければ、第１の確率と第２の確率は近づく。ここで、第１の確率は、第１の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである確率であり、第２の確率は、第２の計算サンプルにおける２つの歩行エネルギーマップペアの間のラベル分布が同じである確率である。
【０１０２】
第２の組み合わせに対応して、トレーニング目標を満たす第２の融合歩行特徴ベクトル損失関数は、次のようになる。
2021515321.tif 000057
第２の組み合わせでは、ｐ、ｇ、ｐ′、ｇ′は同じオブジェクトからのものであり、「ｐ、ｐ″、ｇ″」又は「ｇ、ｐ″、ｇ″」は異なるオブジェクトに対応する。ｐ、ｇ、ｐ′、ｇ′から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベルが「１，０」である歩行エネルギーマップペアが得られる。同様に、「ｐ、ｐ″、ｇ″」又は「ｇ、ｐ″、ｇ″」から任意の２つの歩行エネルギーマップを選択して組み合わせて、ラベルが「０，１」である歩行エネルギーマップペアが得られる。歩行エネルギーペアの間のラベルの同じ又は異なる関係によって、それらをＣ関数における異なる位置に入力して、別の第２の融合歩行特徴ベクトル損失関数を取得する。
【０１０３】
上記の融合歩行特徴ベクトル損失関数は、一方では、各組の歩行エネルギーマップを分類することができ、他方では、各２組の歩行エネルギーマップの特点に基づき、同じカテゴリーからのものである場合に、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合に、特徴ベクトルをできるだけ乖離させる。
ステップＳ９０５は、融合損失値とアイデンティティ損失値の加重和を求めて、トレーニングサンプルの最終的な損失値を得る。
ステップＳ９０５は、前述のＳ６０４と同様であるので、ここでは繰り返さない。
ステップＳ９０６は、少なくとも１つのトレーニングサンプルの最終的な損失値に基づき、ディープニューラルネットワークにおけるフィルタパラメータを調整する。
ステップＳ９０６は、前述のステップＳ６０５と同様であるので、ここでは繰り返さない。
ステップＳ９０２-９０５は、前述のトレーニングユニット１３又はプロセッサ１によって実行され得る。
【０１０４】
なお、図８では、Ｆ１―Ｆ３は歩行エネルギーマップペアを表し、Ｄ(Ｃ(Ｆ１)，Ｃ(Ｆ２))におけるＤ(*)は距離を表し、Ｃは確率計算関数を表し、ＩＤ(＝)は、同じオブジェクトからの確率を表し、ＩＤ(≠)は、異なるオブジェクトからの確率を表す。
【０１０５】
本実施例では、各トレーニングサブサンプルが入力された後、ディープニューラルネットワークを利用して各歩行エネルギーマップの歩行特徴ベクトルを抽出し、そして、それらを融合してから、損失関数を使用して、トレーニングされるディープニューラルネットワークを調整する。一方では、各組の歩行エネルギーマップを分類し、他方では、各２組の特点に基づき、同じカテゴリーからのものである場合、特徴ベクトルをできるだけ近づけ、異なるカテゴリーからのものである場合、特徴ベクトルをできるだけ乖離させる。ネットワークトレーニングが完了した後、トレーニング済みのディープニューラルネットワークを歩行認識に使用することができる。
【０１０６】
本発明の実施例はさらに、ビデオ処理デバイスを保護請求する。当該ビデオ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。当該プロセッサは、メモリに格納されたプログラムを実行し、他のデバイスを呼び出すことによって、上記のビデオ処理方法を実行する。
【０１０７】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。命令は、本発明の任意の実施例によって提供されるビデオ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【０１０８】
歩行は一種の姿勢であるので、本発明の実施例は、姿勢認識を実現するためのイメージ処理方法、イメージ処理装置、イメージ処理デバイス及び記憶媒体を対象とすることができる。
【０１０９】
上記のイメージ処理方法は、
アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップ(又は、第１の姿勢マップ)を取得するステップと、
アイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップ(又は、第２の姿勢マップ)を取得するステップと、
第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップをディープニューラルネットワークに入力して、第１の姿勢認識を行うステップと、を含み、
さらに、第１の姿勢認識は、
第１及び第２の姿勢エネルギーマップに対応するアイデンティティ情報を抽出し、前記第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップの姿勢特徴によって融合姿勢特徴ベクトルを決定するステップであって、前記第１の姿勢エネルギーマップのアイデンティティ情報が前記第１の姿勢エネルギーマップの姿勢特徴を含み、前記第２の姿勢エネルギーマップのアイデンティティ情報が前記第２の姿勢エネルギーマップの姿勢特徴を含むステップと、
少なくとも融合姿勢特徴ベクトルに基づき、第１の姿勢エネルギーマップと第２の姿勢エネルギーマップの類似度を計算するステップと、を含む。
【０１１０】
本実施例におけるアイデンティティ情報、融合姿勢特徴ベクトルは、前記アイデンティティ情報及び融合歩行特徴ベクトルと同様であるので、ここでは繰り返さない。
なお、アイデンティティが認識されるべきオブジェクトは人間であってもよく、動物であってもよく、さらに、生命のない移動又は静止しているものであってもよい。
上記のイメージ処理装置は、ソフトウェア又はハードウェアの形でイメージ処理デバイスに適用されてもよい。具体的に、イメージ処理デバイスは、歩行認識サービスを提供するサーバー又はパーソナルコンピュータ(ＰＣ)であってもよく、例えば、デジタルカメラ、モバイル端末(例えば、スマートフォン)、ｉｐａｄなどの端末であってもよい。
【０１１１】
ソフトウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、独立したソフトウェアであってもよい。勿論、大規模システム(例えば、オペレーティングシステム)のサブシステム(サブコンポーネント)として使用して、歩行認識サービスを提供することもできる。
ハードウェアの形でイメージ処理デバイスに適用される場合、上記のイメージ処理装置は、例示的に、端末又はサーバーのコントローラ／プロセッサであってもよい。
【０１１２】
上記のイメージ処理方法の他の適用シナリオは、図１０に例示的に示されている。イメージ処理デバイス１００１は、アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップを取得し、データベース１００２におけるアイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップに基づいて、第１の姿勢認識を行う。
【０１１３】
なお、ディープニューラルネットワークニーズをトレーニングする必要がある場合に、上記のシナリオにはトレーニングデバイス１００３をさらに含んでもよい。勿論、トレーニングデバイス１００３の機能は、イメージ処理デバイス１００１によって実現されてもよい。トレーニングデバイス１００３は、ディープニューラルネットワークをトレーニングするために、又は、トレーニング用のサンプルを提供するために使用されることができる。
【０１１４】
イメージ処理装置の例示的な構成は、図１１に示すように、２の取得ユニット１１１と、姿勢認識ユニット１１２とを含む。
ただし、第２の取得ユニット１１１は、アイデンティティが認識されるべきオブジェクトの第１の姿勢エネルギーマップを取得し、アイデンティティが既知のオブジェクトの第２の姿勢エネルギーマップを取得するために使用され、
姿勢認識ユニット１１２は、ディープニューラルネットワークを含み、当該ディープニューラルネットワークは、第２の取得ユニット１１１によって提供された第１の姿勢エネルギーマップ及び第２の姿勢エネルギーマップに対して、第１の姿勢認識を行う。
【０１１５】
第１の姿勢認識については、前述の説明を参照されたい。ここでは、繰り返さない。
本発明の他の実施例では、図１１ｂを参照し、上記のイメージ処理装置は、トレーニングプロセスを実行するためのトレーニングユニット１１３をさらに含んでもよい。
トレーニングプロセスには、第２の姿勢認識が含まれ、第２の姿勢認識は、第１の姿勢認識と同様であるので、ここでは繰り返さない。
【０１１６】
また、本実施例におけるトレーニングプロセスは、前述の実施例におけるトレーニングプロセスと同様であり、トレーニング目標は、前述の実施例におけるトレーニング目標と同様であり、式も同様であるので、ここでは繰り返さない。
イメージ処理デバイスの別の可能な構造の概略図について、図２ｃを参照することができ、ここでは繰り返さない。
本発明の実施例は、また、イメージ処理デバイスを保護請求する。当該イメージ処理デバイスは、少なくとも、プロセッサと、メモリとを含む。このプロセッサは、メモリに格納されたプログラムを実行し、他の装置を呼び出すことによって、上記のイメージ処理方法を実行する。
【０１１７】
本発明の実施例はさらに、複数の命令が記憶される記憶媒体を保護請求する。命令は、本発明の実施例によって提供されるイメージ処理方法におけるステップを実行するために、プロセッサによってロードされるように適合される。
【０１１８】
本明細書における各実施例は、漸進的に説明された。各実施例は、ともに他の実施例との違いを重要に説明して、各実施例の間の同じ又は類似する部分について、互いに参照することができる。実施例に開示された装置について、実施例に開示された方法に対応するため、説明は比較的簡単であり、関連部分については方法部分の説明を参照されたい。
【０１１９】
専門家はさらに、本明細書に開示された実施例を結合して説明される各例におけるユニット及びアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、又はそれらの組み合わせによって実現され得ることを理解することができる。ハードウェアとソフトウェアの互換性を明確に説明するために、上記の説明では、機能に従って、各例の構成及びステップを一般的に説明した。これらの機能がハードウェア又はソフトウェアのどちらで実行されるかは、技術的解決策の特定の適用及び設計制約条件に依存する。当業者は、特定の適用ごとに異なる方法を使用して、説明された機能を実現することができるが、このような実現は本発明の範囲を超えるものと見なされるべきではない。
【０１２０】
本明細書に開示された実施例と結合して説明される方法又はアルゴリズムのステップは、ハードウェア、プロセッサによって実行されるソフトウェアユニット、又はそれらの組み合わせによって直接実施され得る。ソフトウェアユニットは、ランダムアクセスメモリ(ＲＡＭ)、メモリ、読み取り専用メモリ(ＲＯＭ)、電気的にプログラム可能なＲＯＭ、電気的に消去可能なプログラマブルＲＯＭ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ-ＲＯＭ、又は技術分野で知られている任意の他の形式の記憶媒体に配置できる。
【０１２１】
開示された実施例に関する上記の説明は、当業者が本発明を実施又は使用することを可能にする。これらの実施例に対する様々な修正は当業者には明らかであり、本明細書で定義された一般的な原理は、本発明の精神又は範囲から逸脱することなく、他の実施例で実現することができる。したがって、本発明は、本明細書に示されるこれらの実施例に限定されず、本明細書に開示された原理及び新規の特徴と一致する最も広い範囲に適合すべきである。
【国際調査報告】
2021515321.tif 000058
2021515321.tif 000059
2021515321.tif 000060
2021515321.tif 000061