(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-25
(45)【発行日】2024-04-02
(54)【発明の名称】行動認識方法、行動認識プログラム及び行動認識装置
(51)【国際特許分類】
G06T 7/20 20170101AFI20240326BHJP
G06F 18/23 20230101ALI20240326BHJP
G06N 20/00 20190101ALI20240326BHJP
【FI】
G06T7/20 300
G06F18/23
G06N20/00 160
(21)【出願番号】P 2020107485
(22)【出願日】2020-06-23
【審査請求日】2023-03-09
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】齊藤 孝広
【審査官】淀川 滉也
(56)【参考文献】
【文献】特開2019-191981(JP,A)
【文献】中国特許出願公開第103268495(CN,A)
【文献】中国特許出願公開第111209347(CN,A)
【文献】国際公開第2012/128096(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/20
G06F 18/23
G06N 20/00
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
映像のフレームごとに複数の関節の位置を含む骨格情報を抽出し、
前記骨格情報から第1動作特徴量を算出し、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出し、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する、
処理をコンピュータが実行する行動認識方法。
【請求項2】
前記認識対象とする上位行動ごとに前記上位行動に対応する基本動作の組合せから抽出される第3動作特徴量のうち前記特徴量空間の定義に用いる前記第2動作特徴量を選択し、
前記第2動作特徴量で定義される特徴量空間上に前記上位行動が観測され得る範囲をマッピングする処理を前記コンピュータがさらに実行する請求項1に記載の行動認識方法。
【請求項3】
前記選択する処理は、前記基本動作の組合せから抽出される第3動作特徴量の中から、前記認識対象とする上位行動の各々を区別できる第4動作特徴量を前記第2動作特徴量として所定の特徴量選択のアルゴリズムにしたがって選択する処理を含む請求項2に記載の行動認識方法。
【請求項4】
前記上位行動が観測され得る範囲は、所定の参照映像のうち前記上位行動が前記特徴量空間上で観測される区間で得られる第2動作特徴量の最大値および最小値に基づいて設定される請求項2または3に記載の行動認識方法。
【請求項5】
前記マッピング領域は、前記マッピング領域の境界線を形成する頂点の座標により定義される請求項1~4のいずれか1つに記載の行動認識方法。
【請求項6】
前記更新を実行する処理は、前記プロット位置からマンハッタン距離で前記最小距離に位置する頂点の座標により定義される領域を拡張する処理を含む請求項5に記載の行動認識方法。
【請求項7】
映像のフレームごとに複数の関節の位置を含む骨格情報を抽出し、
前記骨格情報から第1動作特徴量を算出し、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出し、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する、
処理をコンピュータに実行させる行動認識プログラム。
【請求項8】
映像のフレームごとに複数の関節の位置を含む骨格情報を抽出する抽出部と、
前記骨格情報から第1動作特徴量を算出する第1算出部と、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出する第2算出部と、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する更新部と、
を有する行動認識装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、行動認識方法、行動認識プログラム及び行動認識装置に関する。
【背景技術】
【0002】
映像から行動を認識する技術が知られている。例えば、複雑な行動を構成する要素となる基本動作の組合せが定義されたルールにしたがって映像の基本動作の認識結果から目的とする行動を認識するものがある。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2018-147153号公報
【文献】特開2005-202653号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、認識対象とする行動には、大量のバリエーションが存在し得る。それ故、上記の技術では、ルールの作成時点で目的とする行動の認識漏れがないルールの作成は困難である。
【0005】
1つの側面では、本発明は、運用に即したルールの更新を実現できる行動認識方法、行動認識プログラム及び行動認識装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
一態様の行動認識方法では、映像のフレームごとに複数の関節の位置を含む骨格情報を抽出し、前記骨格情報から第1動作特徴量を算出し、認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出し、前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する、処理をコンピュータが実行する。
【発明の効果】
【0007】
運用に即したルールの更新を実現できる。
【図面の簡単な説明】
【0008】
【
図1】
図1は、実施例1に係る行動認識サービスの一例を示す図である。
【
図2】
図2は、判定条件データの一例を示す図である。
【
図6】
図6は、第2ルールの更新方法の一例を示す模式図である。
【
図7】
図7は、実施例1に係る行動認識装置の機能的構成の一例を示すブロック図である。
【
図9】
図9は、第2ルールの他の一例を示す図である。
【
図12】
図12は、実施例1に係るルール変換処理の手順を示すフローチャートである。
【
図13】
図13は、実施例1に係るルール更新処理の手順を示すフローチャートである。
【
図14】
図14は、上位行動の認識結果の補正例を示す図である。
【
図15】
図15は、コンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して本願に係る行動認識方法、行動認識プログラム及び行動認識装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0010】
[行動認識サービスの一例]
図1は、実施例1に係る行動認識サービスの一例を示す図である。
図1に示す行動認識サービス1は、カメラ2の映像から被写体、例えば人の行動を認識するサービスを提供するものである。このような行動認識サービス1では、あくまで一例として、複数の動作が組み合わさることで複雑化する上位行動、例えば作業行動や不審行動、購買行動などが認識対象とされる。
【0011】
上記の行動認識サービス1を除けば、「上位行動」の認識には、その行動が含まれる映像などを学習データとして大量に準備する必要がある。このような大量の学習データの準備は実質的に困難であったり、あるいは大量の学習データの準備ができたとしても時間と手間がかかったりといった一面があるので、現場への導入が困難である側面がある。
【0012】
このような大量の学習データの準備を不要化する側面から、上記の行動認識サービス1では、日常の生活で行われる「基本動作」の組合せが規定されたルールにしたがって上位行動を認識する。
【0013】
図1に示すように、行動認識サービス1には、オブジェクト認識機能3、基本動作認識機能4、上位行動認識機能5などが含まれ得る。
【0014】
オブジェクト認識機能3は、カメラ2により撮像される映像からオブジェクトを認識する機能である。ここで言う「オブジェクト」とは、行動認識の対象とする映像の被写体を指し、例えば、行動認識の対象とする人が含まれ得る。人以外にも、オブジェクトには、行動認識に関連する物体、例えば人が使用する道具や環境に配置される備品、商品あるいは設備なども含まれてもよい。あくまで一例として、オブジェクト認識機能3は、映像のフレームごとにオブジェクトを認識する。その上で、オブジェクト認識機能3は、オブジェクトに骨格検出、あるいは姿勢検出(姿勢推定)とも呼ばれる処理を行うことにより、各関節の位置を含む骨格情報を抽出する。
【0015】
基本動作認識機能4は、各フレームの骨格情報から基本動作を認識する機能である。ここで言う「基本動作」には、人の全身に動きが現れる「全身行動」や人の身体の一部に動きが現れる「部分行動」などが含まれ得る。このうち、「全身行動」の例として、「歩く」や「走る」、「止まっている」などの行動が挙げられる。また、「部分行動」の例として、「右手を上げる」や「下を向く」、「前を向く」などの行動が挙げられる。これら「全身行動」や「部分行動」は、日常で行われる「基本動作」であるので、「上位行動」に比べれば単純な動作である。それ故、「基本動作」はその映像の収集が容易であると共に、学習済みのモデルにより高精度な認識を実現し得る。さらに、「基本動作」には、「物を持つ」、「物を見る」といった対象物に対する動作、さらには、「映像中の関心領域、いわゆるROI(Region of Interest)への身体部位が入る」といった場所に対する動作が含まれ得る。
【0016】
このような「基本動作」の認識には、映像のフレーム単位で関節間の位置関係から姿勢を表す特徴量として算出される姿勢特徴量やその時間変化情報を用いることができる。以下、「姿勢特徴量」および「時間変化情報」のことを合わせて「動作特徴量」と記載する場合がある。なお、ここでは、あくまで一例として、基本動作の認識に特徴量を用いる例を挙げるが、ディープラーニング等の機械学習のアルゴリズムにしたがって基本動作が学習済みであるモデルによっても実現され得る。
【0017】
図2は、判定条件データの一例を示す図である。
図2に示すように、判定条件データ4Aは、基本動作を識別する識別情報の一例である「基本動作ID(IDentification)」ごとに姿勢特徴量および時間変化情報の2種類の動作特徴量の判定条件が定義される。より具体的には、判定条件データ4Aには、基本動作IDごとに動作名、動作種別および判定条件が対応付けられたデータが採用される。ここで言う「動作名」は、基本動作の名称を指す。また、「動作種別」は、基本動作を分類する種類を指し、ここでは、あくまで一例として、動作が「継続」または「瞬間」の2種類のうちいずれに該当するのかにより分類される。例えば、「~ている」と「~する」とが表す状況が同一である動作は「継続」に分類される。また、「~ている」でその動作の終了状態、例えば結果や完了を意味する動作は「瞬間」に分類される。このような分類は、「瞬間」の基本動作を次のような弁別を可能にする。例えば、「しゃがんでいる」という状態の認識を目的とする場合、姿勢特徴量が判定条件を満たすか否かを判定し、また、「しゃがむ」という姿勢変化の認識を目的とする場合、時間変化情報が判定条件を満たすか否かを判定するといった用途が可能となる。
【0018】
例えば、
図2に示す基本動作のうち全身行動を例に挙げる。全身行動のうち動作種別が「継続」に分類される基本動作には、「歩く」および「走る」が含まれる。例えば、基本動作「歩く」は、全身の関節の位置が姿勢“walk”に該当し、かつ全身の関節の位置の移動速度が4.0以下であるといった判定条件を満たすか否かにより認識される。このように複数の関節の位置の移動速度が用いられる場合、平均値や中央値、最頻値などの統計値を閾値と比較する代表値として用いることができる。また、基本動作「走る」は、全身の関節の位置が姿勢“run”に該当し、かつ全身の関節の位置の移動速度が4.0を超えるといった判定条件を満たすか否かにより認識される。
【0019】
また、全身行動のうち動作種別が「瞬間」に分類される基本動作には、「しゃがむ」および「座る」が含まれる。このうち、基本動作「しゃがむ」を例に挙げると、「しゃがんでいる」という状態が認識される場合、姿勢特徴量の判定条件が適用される一方で、「しゃがむ」という姿勢変化が認識される場合、時間変化情報の判定条件が適用される。例えば、「しゃがんでいる」という状態は、全身の関節の位置が姿勢“squat”に該当するか否かにより認識される。一方、「しゃがむ」という姿勢変化は、全身の姿勢特徴量の状態変化の有無により判定される。すなわち、全身の関節の位置が姿勢“squat”に該当しない状態から全身の関節の位置が姿勢“squat”に該当する状態へ変化したか否かにより、「しゃがむ」という姿勢変化が認識される。
【0020】
次に、
図2に示す基本動作のうち部分行動の一例として「右手を前に伸ばす」および「左手を前に伸ばす」が含まれる。このうち、基本動作「右手を前に伸ばす」を例に挙げると、「右手を前に伸ばしている」という状態は、右肘の曲がり角が150度を超え、かつ右手首の相対位置が“front”であるか否かにより認識される。また、「右手を前に伸ばす」という姿勢変化は、右肘の曲がり角が150度以下である状態、あるいは右手首の相対位置が“front”でない状態から、右肘の曲がり角が150度を超え、かつ右手首の相対位置が“front”である状態へ変化したか否かにより認識される。
【0021】
さらに、
図2に示す基本動作のうち部分行動の一例として「上半身を動かす」、「足をばたつかせる」、「キョロキョロする」および「ウロウロする」が含まれる。例えば、基本動作「上半身を動かす」は、上半身の姿勢変化量の閾値判定により認識される。また、基本動作「足をばたつかせる」は、下半身の姿勢変化量の閾値判定により認識される。また、基本動作「キョロキョロする」は、頭部の向きの変化量の閾値判定により認識される。また、基本動作「ウロウロする」は、移動方向の変化量の閾値判定により認識される。
【0022】
上位行動認識機能5は、上位行動を認識する機能である。あくまで一例として、上位行動認識機能5は、基本動作の認識結果と、ルール7とを照合し、ルール7を満たす場合、目的とする上位行動が認識される。
【0023】
あくまで一例として、ルール7には、IF-THEN形式で認識対象とする上位行動に対応する基本動作の組合せが定義され得る。IF-THEN形式で基本動作の組合せを定義する場合、ANDやORなどの論理演算を採用することができる。例えば、「IF 基本動作A&基本動作B THEN 上位行動X」と記述された場合、基本動作Aおよび基本動作Bが同時に認識された場合、上位行動Xと認識する。この他、基本動作の組合せパターンには、連鎖、すなわち行動のシーケンスを採用することもできる。例えば、「IF 基本動作A→基本動作B THEN 上位行動Y」と記述された場合、基本動作Aが認識された後に基本動作Bが認識された場合、これら一連の動作を上位行動Yと認識する。
【0024】
ここで、上記の行動認識サービス1では、システム定義のみならず、ユーザ定義によりルール7を設定させることができる。例えば、上記の行動認識サービス1を提供する事業者側のシステムエンジニアや上記の行動認識サービス1の顧客などのユーザUにルール7を編集させることにより、ユーザUによるカスタマイズが可能である。
【0025】
[行動認識サービスの適用例]
次に、本実施例に係る行動認識サービス1の適用例について説明する。あくまで一例として、本実施例に係る行動認識サービス1が食品工場の現場で行われる「選別作業」、「回収作業」、「空トレイ設置」および「トレイ運搬」の4種類の作業の分析、例えば生産性および作業時間内訳の提示に適用される例を挙げる。
【0026】
図3は、映像の一例を示す図である。
図3には、あくまで一例として、作業者W1が「選別作業」を行う様子が撮像された映像20が示されている。さらに、
図3には、「選別作業」が行われるAテーブルに設定されるROIと、「回収作業」および「空トレイ設置」が行われるAトレイに設定されるROIとが太線で示されている。
図3に示すように、「選別作業」では、カット後のタマネギが置かれたAテーブル上でタマネギに混じった皮などのゴミが除去された上でタマネギが選別される。続いて、「回収作業」では、選別されたタマネギが空トレイ上のビニール袋へ重量計測器m1の計測値が所定の値に達するまで回収される。そして、「空トレイ設置」では、タマネギ回収済みのトレイが縦方向へ積み重ねられると共にビニール袋が広げられた空トレイが新たに設置される。その後、「トレイ運搬」では、所定の段数まで積み重ねられたトレイが所定の収集場所まで運搬される。
【0027】
[課題の一側面]
上記の背景技術の欄でも説明した通り、認識対象とする行動には、大量のバリエーションが存在し得る。それ故、ルールの作成時点で目的とする行動の認識漏れがないルールの作成は困難である。
【0028】
上記の課題を説明する側面から、目的とする上位行動として「トレイ運搬」が認識される場合における認識漏れの発生事例を挙げる。
図4は、映像の一例を示す図である。
図4には、あくまで一例として、作業者W1が「トレイ運搬」を行う様子が撮像された映像21が示されている。さらに、
図4には、作業者W1がオブジェクトとして認識された領域、例えばバウンディングボックスが太線で示されている。例えば、
図4に示す映像21から上位行動「トレイ運搬」を認識するルールの一例として、下記の(R1)に示すIF-THENルールを記述することができる。
【0029】
上位行動「トレイ運搬」:IF 基本動作「両手を前に伸ばす」&基本動作「歩く」 THEN 行動=「トレイ運搬」・・・(R1)
【0030】
しかしながら、上記のIF-THENルールでは、「肘を曲げた状態で」、「片手で」、あるいは「バックする」といった動作パターンでトレイが運搬される場合、上位行動「トレイ運搬」と認識できず、認識漏れが発生する。なぜなら、
図3の映像21に示された動作パターンも「トレイ運搬」の1つの態様ではあるが、それが「トレイ運搬」の全てではなく、「トレイ運搬」の動作パターンには大量のバリエーションが存在し得るからである。すなわち、「トレイ運搬」の動作パターンには、肘を伸ばさない、両手でない、さらには、前進しないといったバリエーションが存在し得る。このようなバリエーションの全てをルールの作成時点で網羅するのは困難であるので、認識漏れのないルールを作成するのは困難である。
【0031】
[課題解決のアプローチの一側面]
そこで、本実施例に係る行動認識サービス1では、(イ)運用中に上位行動の認識漏れを検知し、(ロ)認識漏れの動作パターンを上位行動として認識するルールの更新を行うアプローチを採用する。
【0032】
ここで、ルールの一例として挙げたIF-THENルールは、基本動作の組合せで記述されるので、可読性が高い一面を有するが、(イ)認識漏れの検知や(ロ)ルール更新の自動化には不向きな一面を有する。
【0033】
すなわち、基本動作の認識結果とルールとの照合の結果、限り限りまたは紙一重で上位行動と認識されなかった事例を認識漏れとみなすことができれば(イ)認識漏れの検知を実現し得るが、そのような事例の評価はIF-THENルールでは困難である。例えば、上位行動「トレイ運搬」の認識漏れの例で言えば、「両手を伸ばす」と、「片手のみを伸ばす」との違いを定量的に数値化することは困難である上、認識対象とする上位行動によって異なる。このため、IF-THENルールの下で(イ)認識漏れの検知を実現するのは現実的でない。
【0034】
また、1つの動作パターンを上位行動として認識させるルール更新の方法は、1つとは限らず、多数存在し得るので、(ロ)ルール更新の方法を適切に決めることも困難である。例えば、上位行動「トレイ運搬」の認識漏れの例で言えば、「両手を伸ばす」or「片手を伸ばす」といった論理和をとるといったルール更新で認識漏れを抑止するアプローチが挙げられる。この他、基本動作の認識において「両手を伸ばす」の判定条件に用いる閾値を150度よりも緩めるといったルール更新で認識漏れを抑止するアプローチも挙げられる。どちらのルール更新、あるいは両方のルール更新を実施するのが妥当であるかは
図3に示された映像21のみでは確定できない。
【0035】
これらのことから、本実施例に係る行動認識サービス1では、特徴量空間の下で(イ)認識漏れの検知および(ロ)ルール更新を実現する。
【0036】
上記の特徴量空間は、次のようにして作成できる。あくまで一例として、認識対象とする上位行動ごとに当該上位行動に対応する基本動作の組合せから各基本動作の認識に用いられる動作特徴量を抽出する。例えば、4種類の上位行動のうち「トレイ運搬」を例に挙げれば、上記(R1)に示す通り、基本動作「両手を前に伸ばす」および基本動作「歩く」の認識に用いる動作特徴量が
図2に示す判定条件データ4Aから検索される。これによって、「左肘と右肘の曲がり角の最小値」および「移動速度」の2種類の動作特徴量が抽出される。この際、動作特徴量「左肘と右肘の曲がり角の最小値」は、「両手を前に伸ばす」→「右肘曲がり角」&「左肘曲がり角」→「右肘曲がり角」と「左肘曲がり角」の最小値といった論理演算で自動的に抽出できる。
【0037】
このように認識対象とする上位行動ごとに抽出された動作特徴量は、その全てがベクトル表現され得る特徴量空間の作成に用いることもできるが、必ずしも全ての動作特徴量を特徴量空間の作成に用いずともよい。例えば、決定木や線形判別分析などに代表される特徴量選択のアルゴリズムにしたがって各上位行動を区別できる動作特徴量に絞り込むこともできる。
【0038】
以下の説明では、あくまで一例として、「選別作業」、「回収作業」、「空トレイ設置」および「トレイ運搬」の4種類の上位行動を区別できる動作特徴量として、「移動速度」および「上半身姿勢変化量」が選択された例を挙げる。さらに、以下では、各種の基本動作の認識に用いられる動作特徴量の中でも特徴量空間の定義に用いる動作特徴量として選択されたもののことを「選択特徴量」と記載する場合がある。
【0039】
このように作成された特徴量空間には、「選別作業」、「回収作業」、「空トレイ設置」および「トレイ運搬」の4種類の上位行動ごとに当該上位行動が所定の特徴量空間上で観測され得る範囲がマッピングされる。
【0040】
ここで、上位行動の観測範囲のマッピングは、あくまで一例として、上位行動が観測される映像、例えばルールの作成時に参照される参照映像を用いて自動化できる。この場合、参照映像のうち上位行動が観測される区間で算出される選択特徴量の最大値および最小値が抽出される。例えば、上位行動の認識が10秒ごとに直近の10秒間の基本動作の認識結果を用いて行われる場合、当該上位行動が認識された時点から直近の10秒間で算出された選択特徴量の最大値および最小値が抽出される。このように抽出された選択特徴量の最大値および最小値を境界とする上位行動の観測範囲が特徴量空間上へ上位行動ごとにマッピングされる。
【0041】
このように、上位行動の観測範囲が特徴量空間上にマッピングされることで、上位行動を認識するルールをIF-THEN形式の記述から特徴量空間上の動作特徴量の記述へ変換することができる。以下、IF-THEN形式で認識対象とする上位行動に対応する基本動作の組合せが定義されたルールと、特徴量空間上に上位行動の観測範囲のマッピング領域が定義されたルールとを区別する。この側面から、前者のことを「第1ルール」と記載すると共に、後者のことを「第2ルール」と記載する場合がある。
【0042】
このような特徴量空間が作成された状況の下、本実施例に係る行動認識サービス1の運用が開始される。本実施例に係る行動認識サービス1は、運用中に基本動作の認識時に算出される動作特徴量のうち選択特徴量を特徴量空間上へプロットする。そして、本実施例に係る行動認識サービス1は、運用中の選択特徴量のプロット位置が上位行動の観測範囲のマッピング領域のいずれにも含まれない場合、マッピング領域ごとに当該マッピング領域およびプロット位置の間の距離を算出する。
【0043】
ここで、本実施例に係る行動認識サービス1は、マッピング領域ごとに算出された距離のうち、最小距離の他の距離に対する乖離度が所定の基準を満たすか否かを判定する。このとき、最小距離の他の距離に対する乖離度が所定の基準を満たす場合、運用中の選択特徴量のプロット位置が上位行動の観測範囲のいずれか1つのマッピング領域にだけ十分近く、かつ他のマッピング領域から十分離れていることが明らかである。このため、運用中の選択特徴量のプロット位置は、限り限りまたは紙一重で上位行動と認識されなかった認識漏れの事例である可能性が高いので、(イ)認識漏れの検知を実現できる。この場合、本実施例に係る行動認識サービス1は、プロット位置からの距離が最小距離であるマッピング領域をプロット位置に基づいて拡張する更新を行う。
【0044】
図5は、特徴量空間の一例を示す図である。
図5には、あくまで一例として、選択特徴量「移動速度」および選択特徴量「上半身姿勢変化量」を含む2次元の特徴量空間が例示されている。さらに、
図5には、「選別作業」、「回収作業」、「空トレイ設置」および「トレイ運搬」の4種類の上位行動の観測範囲がマッピングされたマッピング領域W1~W4が示されると共に、運用中の選択特徴量がプロットされたプロット位置P1が示されている。
【0045】
図5に示すように、運用中の選択特徴量のプロット位置P1が上位行動の観測範囲のマッピング領域W1~W4のいずれにも含まれない場合、プロット位置P1およびマッピング領域W1~W4の間の距離が算出される。このように4つの距離が算出された後、最小距離の他の距離に対する乖離度が所定の基準を満たすか否かの判定の一例として、下記の式(1)にしたがって各距離の総和に対する最小距離の割合が所定の閾値未満であるか否かを判定することができる。
【0046】
最小距離/Σ距離<Th1・・・(1)
【0047】
ここでは、距離のあくまで一例として、マンハッタン距離を用いる例を挙げる。さらに、あくまで一例として、プロット位置P1およびマッピング領域W1~W4の間の距離が下記の値である場合を例に挙げる。すなわち、プロット位置P1およびマッピング領域W1の間の距離が「5.2」であり、プロット位置P1およびマッピング領域W2の間の距離が「5.4」であることとする。さらに、プロット位置P1およびマッピング領域W3の間の距離が「0.1」であり、プロット位置P1およびマッピング領域W4の間の距離が「7.3」であると仮定する。
【0048】
P1およびW1の距離=5.2
P1およびW2の距離=5.4
P1およびW3の距離=0.1
P1およびW4の距離=7.3
【0049】
上記の例で言えば、プロット位置P1およびマッピング領域W3の間の距離「0.1」が最小距離となる。それ故、上記の式(1)へ各距離を代入すると、「0.1/(5.2+5.4+0.1+7.3)」の計算の結果、各距離の総和に対する最小距離の割合は、「0.0056」と算出される。その上で、各距離の総和に対する最小距離の割合「0.0056」が所定の閾値Th1よりも小さいか否かが判定される。例えば、閾値Th1を「0.01」としたとき、各距離の総和に対する最小距離の割合「0.0056」は、閾値Th1「0.01」を下回る。
【0050】
このような判定結果によって、運用中の選択特徴量のプロット位置P1が上位行動「空トレイ設置」の観測範囲のマッピング領域W3にだけ十分近く、かつ他のマッピング領域W1、W2及びW4から十分離れていることが判明する。このため、運用中の選択特徴量のプロット位置P1は、限り限りまたは紙一重で上位行動「空トレイ設置」と認識されなかった認識漏れの事例である可能性が高いと識別できる。この場合、本実施例に係る行動認識サービス1は、プロット位置P1からの距離が最小距離であるマッピング領域W3をプロット位置P1に基づいて拡張する第2ルールの更新を行う。
【0051】
図6は、第2ルールの更新方法の一例を示す模式図である。
図6には、特徴量空間上にマッピングされた4つのマッピング領域のうち上位行動「空トレイ設置」の観測範囲のマッピング領域W3が抜粋されている。さらに、
図6には、運用中の選択特徴量のプロット位置P1がバツ印で示されている。この場合、上位行動「空トレイ設置」のマッピング領域は、上位行動「空トレイ設置」の観測範囲のマッピング領域W3に加えて、
図6に示す塗りつぶしの領域が拡張される。すなわち、運用中の選択特徴量のプロット位置P1からマンハッタン距離で「0.1」以内に対応する三角形の領域が拡張される。このような拡張によって、上記の(ロ)ルール更新が実現される。
【0052】
以上のように、本実施例に係る行動認識サービス1は、特徴量空間に上位行動の観測範囲がマッピングされた領域の何れか1つに運用中の動作特徴量のプロット位置が近い場合、プロット位置に基づいて最寄りの領域を拡張する。したがって、本実施例に係る行動認識サービス1によれば、運用に即したルールの更新を実現できる。
【0053】
[行動認識装置の機能的構成]
図7は、実施例1に係る行動認識装置10の機能的構成の一例を示すブロック図である。
図7に示す行動認識装置10は、上記の行動認識サービス1を提供するコンピュータの一例に対応する。
【0054】
一実施形態として、行動認識装置10は、パッケージソフトウェア又はオンラインソフトウェアとして、上記の行動認識サービス1を実現する行動認識プログラムを任意のコンピュータにインストールさせることによって実装できる。例えば、行動認識装置10は、SaaS(Software as a Service)型のアプリケーションとして実装することで、上記の行動認識サービス1をクラウドサービスとして提供することとしてもかまわない。これに限定されず、行動認識装置10は、上記の行動認識サービス1に対応する機能をオンプレミスに提供するサーバとして実装することができる。
【0055】
さらに、行動認識装置10には、
図7に示すように、撮像装置の一例に対応するカメラ2が接続され得る。これら行動認識装置10及びカメラ2の間は、任意のネットワークを介して通信可能に接続され得る。例えば、ネットワークは、有線または無線を問わず、インターネットやLAN(Local Area Network)などの任意の種類の通信網であってかまわない。なお、
図1や
図7には、説明の便宜上、1つの行動認識装置10につき1つのカメラ2が接続される例を挙げたが、1つの行動認識装置10につき複数のカメラ2が接続されることを妨げない。
【0056】
図7に示すように、行動認識装置10は、映像取得部11と、オブジェクト認識部13と、基本動作認識部14と、ルール変換部15と、第1ルール記憶部16Aと、参照映像記憶部16Bと、第2ルール記憶部17と、上位行動認識部18とを有する。なお、行動認識装置10は、
図7に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば入出力インタフェイスや通信インタフェイスなどに対応する機能が含まれてもかまわない。
【0057】
図7に示す映像取得部11、オブジェクト認識部13、基本動作認識部14、ルール変換部15及び上位行動認識部18などの機能部は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などのハードウェアプロセッサにより仮想的に実現される。すなわち、プロセッサは、図示しない記憶装置、例えばHDD(Hard Disk Drive)、光ディスクやSSD(Solid State Drive)などからOS(Operating System)の他、上記の行動認識サービス1がパッケージ化された行動認識プログラムなどのプログラムを読み出す。その上で、プロセッサは、上記の行動認識プログラムを実行することにより、RAM(Random Access Memory)等のメモリ上に上記の機能部に対応するプロセスを展開する。このように、上記の行動認識プログラムが実行される結果、上記の機能部がプロセスとして仮想的に実現される。ここでは、プロセッサの一例として、CPUやMPUを例示したが、汎用型および特化型を問わず、任意のプロセッサにより上記の機能部が実現されることとしてもかまわない。この他、上記の機能部または機能部の一部は、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤードロジックによって実現されることとしてもかまわない。
【0058】
上記の第1ルール記憶部16A、参照映像記憶部16B及び第2ルール記憶部17などの記憶部は、HDDや光ディスク、SSDなどの補助記憶装置として実現したり、補助記憶装置が有する記憶領域の一部を割り当てることにより実現したりすることができる。
【0059】
映像取得部11は、映像を取得する処理部である。一実施形態として、映像取得部11は、カメラ2から伝送される映像をフレーム単位で取得することができる。ここで、映像取得部11が映像を取得する情報ソースは、任意の情報ソースであってよく、カメラ2に限定されない。例えば、映像取得部11は、映像を蓄積するハードディスクや光ディスクなどの補助記憶装置またはメモリカードやUSB(Universal Serial Bus)メモリなどのリムーバブルメディアから映像を取得することもできる。この他、映像取得部11は、カメラ2以外の外部装置からネットワークNWを介して映像を取得することもできる。
【0060】
オブジェクト認識部13は、映像からオブジェクトを認識する処理部である。オブジェクト認識部13は、抽出部の一例に対応し得る。オブジェクト認識部13は、
図1に示すオブジェクト認識機能3に対応し得る。一実施形態として、オブジェクト認識部13は、映像取得部11により取得される映像のフレームごとにオブジェクトを認識する。このようなオブジェクト認識は、ディープラーニング等の機械学習のアルゴリズムにしたがってオブジェクトが学習済みであるモデルにより実現され得る。その上で、オブジェクト認識機能3は、オブジェクトに骨格検出、あるいは姿勢検出(姿勢推定)とも呼ばれる処理を行うことにより、各関節の位置、例えば2次元または3次元の座標などを含む骨格情報を抽出する。
【0061】
基本動作認識部14は、各フレームの骨格情報から基本動作を認識する処理部である。ここで、基本動作認識部14は、
図1に示す基本動作認識機能4に対応し得るが、必ずしも基本動作認識機能4の全てが備わらずともよい。すなわち、本実施例に係る行動認識サービス1では、第1ルールに定義されるIF-THEN形式のルールに基づいて上位行動を認識せずとも、第2ルールに定義される特徴量空間上のマッピング領域に基づいて上位行動を認識できる。このような側面から、基本動作認識部14は、映像取得部11により取得される映像のフレームごとに動作特徴量の算出が実行されればよい。なお、基本動作認識部14は、算出部の一例に対応し得る。
【0062】
一実施形態として、基本動作認識部14は、上記の動作特徴量の1つとして、映像取得部11により映像が取得された最新のフレームにおける各関節の位置から姿勢特徴量を算出できる。さらに、基本動作認識部14は、最新のフレームから所定のフレーム数または期間を遡って得られる姿勢特徴量の時系列データから時間変化情報を算出する。この際、基本動作認識部14は、あくまで一例として、
図2の判定条件データ2Aに示された全ての基本動作に関する動作特徴量を算出することもできるが、必ずしも全ての基本動作に関する動作特徴量を算出せずともかまわない。例えば、基本動作認識部14は、第1ルールに定義された上位行動の認識に用いられる基本動作に関する動作特徴量、あるいは第2ルールで特徴量空間の定義に用いられる選択特徴量に絞り込んで動作特徴量を算出することもできる。
【0063】
ルール変換部15は、第1ルールを第2ルールへ変換する処理部である。ルール変換部15によるルール変換は、あくまで一例として、本実施例に係る行動認識サービス1の運用を開始する前に実行できるが、運用開始後に実行されることも妨げはしない。
図7に示すように、ルール変換部15は、選択部15Aと、マッピング部15Bとを有する。
【0064】
選択部15Aは、特徴量空間の定義に用いる動作特徴量、すなわち上記の選択特徴量を選択する処理部である。一実施形態として、選択部15Aは、第1ルール記憶部16Aに記憶された第1ルールを参照する。第1ルール記憶部16Aには、IF-THEN形式で認識対象とする上位行動に対応する基本動作の組合せが定義された第1ルール、例えば
図1に示すルール7が記憶される。このような第1ルール記憶部16Aを参照して、選択部15Aは、認識対象とする上位行動ごとに当該上位行動に対応する基本動作の組合せから各基本動作の認識に用いられる動作特徴量を抽出する。例えば、4種類の上位行動のうち「トレイ運搬」を例に挙げれば、上記(R1)に示す通り、基本動作「両手を前に伸ばす」および基本動作「歩く」の認識に用いる動作特徴量が
図2に示す判定条件データ4Aから検索される。これによって、「左肘と右肘の曲がり角の最小値」および「移動速度」の2種類の動作特徴量が抽出される。この際、動作特徴量「左肘と右肘の曲がり角の最小値」は、「両手を前に伸ばす」→「右肘曲がり角」&「左肘曲がり角」→「右肘曲がり角」と「左肘曲がり角」の最小値といった論理演算で自動的に抽出できる。
【0065】
このように認識対象とする上位行動ごとに抽出された動作特徴量は、その全てを特徴量空間の定義に用いることもできるが、必ずしも全ての種類の動作特徴量を特徴量空間の作成に用いずともよく、一部に絞り込むこともできる。
【0066】
あくまで一例として、選択部15Aは、認識対象とする上位行動ごとに抽出された動作特徴量の中から、決定木分析や線形判別分析などに代表される特徴量選択のアルゴリズムにしたがって各上位行動を区別できる動作特徴量を選択する。例えば、決定木分析の場合、参照映像記憶部16Bに記憶された参照映像が用いられる。参照映像記憶部16Bには、認証対象とする上位行動ごとに当該上位行動が観測される参照映像が保存される。このように認識対象とする上位行動ごとに用意された参照映像をルートノードとし、ノードを分割する動作特徴量の素性および閾値の選択を繰り返すことにより、参照映像を上位行動のラベルに分類する決定木が生成される。このような決定木の分岐でノードの分割に選択された素性の動作特徴量を選択特徴量として用いることができる。
【0067】
マッピング部15Bは、認識対象とする上位行動ごとに当該上位行動が観測され得る範囲を、選択部15Aにより選択された選択特徴量で定義される特徴量空間上にマッピングする処理部である。
【0068】
ここで、上位行動の観測範囲のマッピングは、あくまで一例として、参照映像記憶部16Bに記憶された参照映像を用いて自動化できる。このような参照映像のうち上位行動が観測される区間で算出される選択特徴量の最大値および最小値が抽出される。例えば、上位行動の認識が10秒ごとに直近の10秒間の基本動作の認識結果を用いて行われる場合、当該上位行動が認識された時点から直近の10秒間で算出された選択特徴量の最大値および最小値が抽出される。このように抽出された選択特徴量の最大値および最小値を境界とする上位行動の観測範囲が特徴量空間上へ上位行動ごとにマッピングされる。
【0069】
これによって、IF-THEN形式で認識対象とする上位行動に対応する基本動作の組合せが定義された第1ルールを、特徴量空間上に上位行動の観測範囲のマッピング領域が定義された第2ルールへ変換できる。このように、上位行動ごとに当該上位行動の観測範囲が特徴量空間にマッピングされたマッピング領域は、第2ルールとして第2ルール記憶部17に保存される。例えば、第2ルールは、マッピング領域ごとに当該マッピング領域の境界線を形成する頂点の座標により定義することができる。
【0070】
図8は、第2ルールの一例を示す図である。
図8には、選択特徴量「移動速度」及び「上半身姿勢変化量」を含む2次元の特徴量空間上に「選別作業」、「回収作業」、「空トレイ設置」及び「トレイ運搬」の4種類の上位行動の観測範囲に対応するマッピング領域W1~W4が第2ルールとして定義される例が示されている。さらに、
図8には、4種類の上位行動の観測範囲に対応するマッピング領域W1~W4が左下の頂点を始点とし、そこから反時計回りに頂点の座標を列挙することにより第2ルールが定義される例が示されている。
【0071】
図8に示すように、上位行動「選別作業」のマッピング領域W1は、左下の頂点(0.2,0)、右下の頂点(1,0)、右上の頂点(1,0.05)および左上の頂点(0.2,0.05)により定義される。上位行動「回収作業」のマッピング領域W2は、左下の頂点(2,7)、右下の頂点(2.8,7)、右上の頂点(2.8,8.2)および左上の頂点(2,8.2)により定義される。上位行動「空トレイ設置」のマッピング領域W3は、左下の頂点(1.1,4.2)、右下の頂点(1.8,4.2)、右上の頂点(1.8,5.2)および左上の頂点(1.1,5.2)により定義される。上位行動「トレイ運搬」のマッピング領域W4は、左下の頂点(0.01,0.81)、右下の頂点(0.3,0.81)、右上の頂点(0.3,1.1)および左上の頂点(0.01,1.1)により定義される。
【0072】
なお、
図8には、あくまで一例として、特徴量空間が2次元である例を挙げたが、これに限定されず、特徴量空間の次元数は任意であってかまわない。例えば、特徴量空間が3次元以上である場合、マッピング領域の境界面をポリゴンによって定義することができる。これによって、n次元の特徴量空間中の任意の部分領域を多角形で表現することが可能である。
【0073】
また、ここでは、上位行動の観測範囲のマッピングが参照映像を用いて行われる例を挙げたが、これに限定されず、上位行動の観測範囲のマッピングがユーザ設定により行われることとしてもかまわない。この場合、ユーザ設定の案内として、認識対象とする上位行動ごとに当該上位行動に対応するルールに定義された基本動作の認識に用いる動作特徴量のうち選択特徴量に関する判定条件、例えば閾値を
図2の判定条件データ4Aから検索して表示させることもできる。
【0074】
上位行動認識部18は、上位行動を認識する処理部である。
図7に示すように、上位行動認識部18は、ルール照合部18A、ルール更新部18Bおよび認識結果出力部18Cをさらに有する。
【0075】
ルール照合部18Aは、基本動作認識部14により算出された選択特徴量と、第2ルール記憶部17に記憶された第2ルールとを照合する処理部である。一実施形態として、ルール照合部18Aは、基本動作認識部14により算出された選択特徴量のプロット位置が第2ルール記憶部17に第2ルールとして記憶されたマッピング領域のいずれかに含まれるか否かを判定する。以下、基本動作認識部14により算出される選択特徴量は、運用開始前に定義され得る第2ルールと対比する側面から、「運用中の選択特徴量」と記載する場合がある。このとき、運用中の選択特徴量のプロット位置がいずれかのマッピング領域に含まれる場合、認識漏れがないと判明する一方で、運用中の選択特徴量のプロット位置がいずれのマッピング領域にも含まれない場合、認識漏れが発生している余地が残る。
【0076】
ルール更新部18Bは、第2ルール記憶部17に記憶された第2ルールを更新する処理部である。一実施形態として、ルール更新部18Bは、運用中の選択特徴量のプロット位置がいずれのマッピング領域にも含まれない場合、マッピング領域ごとに当該マッピング領域およびプロット位置の間の距離を算出する。このように4つの距離が算出された後、最小距離の他の距離に対する乖離度が所定の基準を満たすか否かの判定の一例として、上記の式(1)にしたがって各距離の総和に対する最小距離の割合が所定の閾値未満であるか否かを判定することができる。
【0077】
ここで、最小距離の他の距離に対する乖離度が所定の基準を満たす場合、運用中の選択特徴量のプロット位置が上位行動の観測範囲のいずれか1つのマッピング領域にだけ十分近く、かつ他のマッピング領域から十分離れていることが明らかである。この場合、運用中の選択特徴量のプロット位置は、限り限りまたは紙一重で上位行動と認識されなかった認識漏れの事例である可能性が高いので、認識漏れと識別する。一方、最小距離の他の距離に対する乖離度が所定の基準を満たさない場合、運用中の選択特徴量のプロット位置が上位行動の観測範囲のいずれか1つのマッピング領域だけに十分近くないことが明らかである。この場合、いずれの上位行動にも該当しない動作パターンで認識漏れではないと識別できる。
【0078】
ここで、ルール更新部18Bは、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が上記の閾値未満である場合、プロット位置からの距離が最小距離であるマッピング領域をプロット位置に基づいて拡張する更新を行う。
【0079】
図9は、第2ルールの他の一例を示す図である。
図9には、
図8に示された第2ルールに定義されたマッピング領域W1~W4のうち上位行動「空トレイ設置」の観測範囲のマッピング領域W3を対象に
図6に示された拡張が実施された例について説明する。
図6に示された通り、運用中の選択特徴量のプロット位置P1からマンハッタン距離で「0.1」以内に対応する三角形の領域が拡張される場合、
図8に示された第2ルールから
図9に示す第2ルールへ更新される。より具体的には、上位行動「空トレイ設置」のマッピング領域W3には、
図6に示された三角形の領域に対応する各頂点の座標が追加される。すなわち、
図9に網掛けで示された通り、上位行動「空トレイ設置」のマッピング領域W3を定義する頂点には、三角形の頂点の座標(1.5,4.2)、(1.6,4.1)および(1.7,4.2)が追加される。
【0080】
これによって、運用中の選択特徴量のプロット位置P1(1.6,4.1)に対応する動作パターンのみならず、プロット位置P1よりもマッピング領域W3に近い動作パターンのバリエーションを新マッピング領域に含める拡張を実現できる。さらに、マンハッタン距離をルール更新に用いる場合、2次元の特徴量空間に限定されず、3次元以上の特徴量空間でもマッピング領域を拡張する領域の境界面をポリゴンによって定義できるので、第2ルールの記述の拡張性を高めることができる。
【0081】
認識結果出力部18Cは、上位行動の認識結果を出力する処理部である。1つの側面として、認識結果出力部18Cは、運用中の選択特徴量のプロット位置がいずれかのマッピング領域に含まれる場合、当該プロット位置が含まれるマッピング領域に対応する上位行動のラベルを認識結果として出力する。他の側面として、認識結果出力部18Cは、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が上記の閾値以上である場合、いずれの上位行動のラベルも出力しない。更なる側面として、認識結果出力部18Cは、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が上記の閾値未満である場合、当該プロット位置からの距離が最小距離であるマッピング領域に対応する上位行動のラベルを認識結果として出力する。
【0082】
上記の上位行動の認識結果は、任意の出力先へ出力され得る。ここで言う「出力先」は、任意のハードウェアやソフトウェアでよい。例えば、上位行動の認識結果は、上位行動の認識結果に応じて任意のバックエンドの処理、例えば作業効率の分析処理などを実行するサービスや機能へ出力することができる。この他、上位高度の認識結果は、上記の行動認識サービス1のユーザUにより設定された表示デバイスや音声出力デバイス、情報処理装置あるいは携帯端末装置などであってもよい。その通知形態もWebやメールなどの任意であってよい。
【0083】
[上位行動の認識結果の活用例]
図10及び
図11を用いて、上位行動の認識結果の活用例を説明する。
図10及び
図11は、分析結果の一例を示す図である。
図10及び
図11には、食品工場の現場で行われる「選別作業」、「回収作業」、「空トレイ設置」および「トレイ運搬」の4種類の上位行動の認識結果が作業者「ID0001」~「ID0006」の6名の作業員ごとに分析された結果が示されている。
図10には、上記の4種類の上位行動の認識結果を用いる分析の一例として、生産性、例えば単位時間あたりに処理されるトレイの数量が分析された結果が示されている。さらに、
図11には、上記の4種類の上位行動の認識結果を用いる分析の一例として、各上位行動に対応する作業時間の内訳が分析された結果が示されている。
【0084】
図10及び
図11に示す分析結果は、上記の行動認識サービス1のユーザUにより設定された任意の端末装置に出力され得る。例えば、作業台Bを担当したID0003及びID0004の作業者の生産性が高いが、これはトレイ運搬作業や回収作業の割合が低いことに起因しているといった知見を提示できる。一方、空トレイ設置の割合も大きいが、これは選別作業を多くこなした結果であるといった知見を提示できる。さらに、作業台Cの担当者であるID0005及びID0006の作業者の生産性の違いは、回収作業の効率に起因しており、ID0005は他の作業者よりも回収作業に時間がかかる傾向がみられ、この作業中に何らかの無駄がある可能性を示唆できる。これら
図10及び
図11に示す分析結果により、上記の行動認識サービス1のユーザUを始めとする関係者に生産性向上に資する知見を提示することができる。
【0085】
[処理の流れ]
次に、本実施例に係る行動認識装置10の処理の流れについて説明する。ここでは、行動認識装置10により実行される(1)ルール変換処理を説明した後に、(2)ルール更新処理を説明することとする。
【0086】
(1)ルール変換処理
図12は、実施例1に係るルール変換処理の手順を示すフローチャートである。この処理は、あくまで一例として、本実施例に係る行動認識サービス1の運用を開始する前の任意のタイミング、例えば第1ルールおよび参照映像の保存後に実行できるが、運用開始後に実行されることも妨げない。
【0087】
図12に示すように、選択部15Aは、第1ルール記憶部16Aに記憶された第1ルールを参照して、認識対象とする上位行動ごとに当該上位行動に対応する基本動作の組合せから各基本動作の認識に用いられる動作特徴量を抽出する(ステップS101)。
【0088】
続いて、選択部15Aは、ステップS101で認識対象とする上位行動ごとに抽出された動作特徴量の中から、決定木分析や線形判別分析等に代表される特徴量選択のアルゴリズムにしたがって各上位行動を区別できる動作特徴量を選択する(ステップS102)。
【0089】
そして、マッピング部15Bは、参照映像記憶部16Bに記憶された参照映像のうち上位行動が認識される区間で観測される選択特徴量の最大値および最小値を上位行動ごとに抽出する(ステップS103)。
【0090】
その後、マッピング部15Bは、ステップS103で抽出された選択特徴量の最大値および最小値を境界とする上位行動の観測範囲をステップS102で得られた選択特徴量により定義される特徴量空間上へ上位行動ごとにマッピングする(ステップS104)。
【0091】
その上で、マッピング部15Bは、上位行動ごとに当該上位行動の観測範囲が特徴量空間にマッピングされたマッピング領域を第2ルールとして第2ルール記憶部17に保存し(ステップS105)、処理を終了する。
【0092】
(2)ルール更新処理
図13は、実施例1に係るルール更新処理の手順を示すフローチャートである。この処理は、運用中に所定の周期、例えば10秒ごとに繰り返して実行することができる。
図13に示すように、映像取得部11は、カメラ2等から映像のフレームが取得する(ステップS301)。すると、オブジェクト認識部13は、ステップS301で取得された映像から認識されたオブジェクトの骨格検出を行うことにより、各関節の位置を含む骨格情報を抽出する(ステップS302)。
【0093】
続いて、基本動作認識部14は、ステップS301で取得された最新のフレームにおける各関節の位置から姿勢特徴量を算出すると共に、最新のフレームから所定の期間、例えば10秒間を遡って得られる姿勢特徴量の時系列データから時間変化情報を算出することにより、選択特徴量を算出する(ステップS303)。
【0094】
そして、ルール照合部18Aは、ステップS303で算出された選択特徴量のプロット位置が第2ルール記憶部17に第2ルールとして記憶されたマッピング領域のいずれかに含まれるか否かを判定する(ステップS304)。
【0095】
ここで、運用中の選択特徴量のプロット位置がいずれのマッピング領域にも含まれない場合(ステップS304No)、ルール更新部18Bは、次のような処理を実行する。すなわち、ルール更新部18Bは、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が所定の閾値未満であるか否かを判定する(ステップS305)。
【0096】
このとき、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が上記の閾値未満である場合(ステップS305Yes)、ルール更新部18Bは、プロット位置からの距離が最小距離であるマッピング領域をプロット位置に基づいて拡張する更新を行う(ステップS306)。この場合、認識結果出力部18Cは、当該プロット位置からの距離が最小距離であるマッピング領域に対応する上位行動のラベルを認識結果として出力し(ステップS307)、処理を終了する。
【0097】
一方、プロット位置と各マッピング領域との各距離の総和に対する最小距離の割合が上記の閾値未満でない場合(ステップS305No)、いずれの上位行動のラベルも出力されず、処理が終了する。
【0098】
また、運用中の選択特徴量のプロット位置がいずれかのマッピング領域に含まれる場合(ステップS304Yes)、認識結果出力部18Cは、当該プロット位置が含まれるマッピング領域に対応する上位行動のラベルを認識結果として出力し(ステップS307)、処理を終了する。
【0099】
[効果の一側面]
上述してきたように、本実施例に係る行動認識装置10は、特徴量空間に上位行動の観測範囲がマッピングされた領域の何れか1つに運用中の動作特徴量のプロット位置が近い場合、プロット位置に基づいて最寄りの領域を拡張する。したがって、本実施例に係る行動認識装置10によれば、運用に即したルールの更新を実現できる。
【実施例2】
【0100】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【0101】
[スタビライザ処理]
上位行動の認識結果には、いずれの上位行動にも対応しないラベル「出力なし」が含まれる場合がある。例えば、行動認識装置10は、上記のラベル「出力なし」を下記のルールにしたがって補正する補正部をさらに有することとしてもよい。例えば、補正部は、ラベル「出力なし」の前後のタイミングで出力されるラベルを比較する。この結果、前後のタイミングのラベルが同一である場合、ラベル「出力なし」に対応するタイミングも前後のタイミングのラベルと同一の上位行動が行われた可能性が高まる。この場合、補正部は、ラベル「出力なし」を前後のタイミングで出力されるラベルと同一のラベルに補正する。また、前後のタイミングのラベルが異なる場合、作業が切り替わったタイミングである可能性が高まる。この場合、補正部は、ラベル「出力なし」を前後のタイミングで出力されるラベルが所定の割合ずつ含む特殊ラベルに補正する。
【0102】
図14は、上位行動の認識結果の補正例を示す図である。
図14には、任意の開始時間から上位行動の認識結果が得られた時点までに経過した時間ごとに上位行動の認識結果が示されている。さらに、
図14には、上位行動が10秒ごとに直近の10秒間の映像から算出される選択特徴量に基づいて認識される場合の認識結果の一例が示されている。さらに、さらに、
図14には、上位行動の認識結果として、上位行動のラベルを示す文字列のうち先頭の1文字が記述される例を挙げ、例えば、「選」は、選別作業を指し、「回」は、回収作業を指し、「空」は、空トレイ設置を指し、「運」は、運搬作業を指すこととする。
【0103】
図14に示すように、ラベル「出力なし」は、上位行動の認識結果のうち3つ存在し、60sec、170sec及び250secの3つの時間で「出力なし」となる。例えば、60secのラベルが補正される場合、50secのラベル「選」と70secのラベル「選」とが比較される。この場合、両者のラベルが同一であるので、60secのラベルは「出力なし」から「選」へ補正される。また、170secのラベルが補正される場合、160secのラベル「選」と180secのラベル「回」とが比較される。この場合、両者のラベルが異なる。このため、170secのラベルは、「出力なし」から、160secのラベル「選」と180secのラベル「回」とを均等に含む特殊ラベル「選/回」へ補正される。さらに、250secのラベルが補正される場合、240secのラベル「ト」と260secのラベル「ト」とが比較される。この場合、両者のラベルが同一であるので、250secのラベルは「出力なし」から「ト」へ補正される。このような補正によって、
図10に示す生産性の分析や
図11に示す作業時間内訳の分析などの各種の分析処理の精度低下を抑制できる。
【0104】
なお、前後のタイミングで出力されるラベルの割合は、均等に設定できる他、ラベル「出力なし」が出力されるタイミングで算出された選択特徴量のプロット位置と、前後のタイミングのラベルに対応するマッピング領域との距離に基づいて決定することもできる。この場合、距離が小さくなるに連れて割合を高く設定する一方で、距離が大きくなるに連れて割合を低く設定することができる。例えば、ラベル「出力なし」の前のタイミングで出力される第1ラベルに対応するマッピング領域までの第1距離と、ラベル「出力なし」の後のタイミングで出力される第2ラベルに対応するマッピング領域までの第2距離との比が4対1である場合を例に挙げる。この場合、第1距離と第2距離との比を入れ替えることにより、第1ラベルの割合を「0.2」と設定すると共に第2ラベルの割合を「0.8」に設定することができる。
【0105】
[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、映像取得部11、オブジェクト認識部13、基本動作認識部14、ルール変換部15または上位行動認識部18を行動認識装置10の外部装置としてネットワーク経由で接続するようにしてもよい。また、映像取得部11、オブジェクト認識部13、基本動作認識部14、ルール変換部15または上位行動認識部18を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の行動認識装置10の機能を実現するようにしてもよい。また、第1ルール記憶部16A、参照映像記憶部16Bおよび第2ルール記憶部17に記憶される第1ルール、参照映像および第2ルールの全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の行動認識装置10の機能を実現するようにしてもかまわない。
【0106】
[行動認識プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、
図15を用いて、実施例1及び実施例2と同様の機能を有する行動認識プログラムを実行するコンピュータの一例について説明する。
【0107】
図15は、コンピュータのハードウェア構成例を示す図である。
図15に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110~180の各部はバス140を介して接続される。
【0108】
HDD170には、
図15に示すように、上記の実施例1で示した映像取得部11、オブジェクト認識部13、基本動作認識部14、ルール変換部15及び上位行動認識部18と同様の機能を発揮する行動認識プログラム170aが記憶される。この行動認識プログラム170aは、
図7に示した映像取得部11、オブジェクト認識部13、基本動作認識部14、ルール変換部15及び上位行動認識部18の各構成要素と同様、統合又は分離してもかまわない。すなわち、HDD170には、必ずしも上記の実施例1で示した全てのデータが格納されずともよく、処理に用いるデータがHDD170に格納されればよい。
【0109】
このような環境の下、CPU150は、HDD170から行動認識プログラム170aを読み出した上でRAM180へ展開する。この結果、行動認識プログラム170aは、
図15に示すように、行動認識プロセス180aとして機能する。この行動認識プロセス180aは、RAM180が有する記憶領域のうち行動認識プロセス180aに割り当てられた領域にHDD170から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、行動認識プロセス180aが実行する処理の一例として、
図12及び
図13に示す処理などが含まれる。なお、CPU150では、必ずしも上記の実施例1で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【0110】
なお、上記の行動認識プログラム170aは、必ずしも最初からHDD170やROM160に記憶されておらずともかまわない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD-ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に行動認識プログラム170aを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から行動認識プログラム170aを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに行動認識プログラム170aを記憶させておき、コンピュータ100がこれらから行動認識プログラム170aを取得して実行するようにしてもよい。
【0111】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0112】
(付記1)映像のフレームごとに複数の関節の位置を含む骨格情報を抽出し、
前記骨格情報から第1動作特徴量を算出し、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出し、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する、
処理をコンピュータが実行する行動認識方法。
【0113】
(付記2)前記認識対象とする上位行動ごとに前記上位行動に対応する基本動作の組合せから抽出される第3動作特徴量のうち前記特徴量空間の定義に用いる前記第2動作特徴量を選択し、
前記第2動作特徴量で定義される特徴量空間上に前記上位行動が観測され得る範囲をマッピングする処理を前記コンピュータがさらに実行する付記1に記載の行動認識方法。
【0114】
(付記3)前記選択する処理は、前記基本動作の組合せから抽出される第3動作特徴量の中から、前記認識対象とする上位行動の各々を区別できる第4動作特徴量を前記第2動作特徴量として所定の特徴量選択のアルゴリズムにしたがって選択する処理を含む付記2に記載の行動認識方法。
【0115】
(付記4)前記上位行動が観測され得る範囲は、所定の参照映像のうち前記上位行動が前記特徴量空間上で観測される区間で得られる第2動作特徴量の最大値および最小値に基づいて設定される付記2に記載の行動認識方法。
【0116】
(付記5)前記マッピング領域は、前記マッピング領域の境界線を形成する頂点の座標により定義される付記1に記載の行動認識方法。
【0117】
(付記6)前記更新を実行する処理は、前記プロット位置からマンハッタン距離で前記最小距離に位置する頂点の座標により定義される領域を拡張する処理を含む付記5に記載の行動認識方法。
【0118】
(付記7)映像のフレームごとに複数の関節の位置を含む骨格情報を抽出し、
前記骨格情報から第1動作特徴量を算出し、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出し、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する、
処理をコンピュータに実行させる行動認識プログラム。
【0119】
(付記8)前記認識対象とする上位行動ごとに前記上位行動に対応する基本動作の組合せから抽出される第3動作特徴量のうち前記特徴量空間の定義に用いる前記第2動作特徴量を選択し、
前記第2動作特徴量で定義される特徴量空間上に前記上位行動が観測され得る範囲をマッピングする処理を前記コンピュータにさらに実行させる付記7に記載の行動認識プログラム。
【0120】
(付記9)前記選択する処理は、前記基本動作の組合せから抽出される第3動作特徴量の中から、前記認識対象とする上位行動の各々を区別できる第4動作特徴量を前記第2動作特徴量として所定の特徴量選択のアルゴリズムにしたがって選択する処理を含む付記8に記載の行動認識プログラム。
【0121】
(付記10)前記上位行動が観測され得る範囲は、所定の参照映像のうち前記上位行動が前記特徴量空間上で観測される区間で得られる第2動作特徴量の最大値および最小値に基づいて設定される付記8に記載の行動認識プログラム。
【0122】
(付記11)前記マッピング領域は、前記マッピング領域の境界線を形成する頂点の座標により定義される付記7に記載の行動認識プログラム。
【0123】
(付記12)前記更新を実行する処理は、前記プロット位置からマンハッタン距離で前記最小距離に位置する頂点の座標により定義される領域を拡張する処理を含む付記11に記載の行動認識プログラム。
【0124】
(付記13)映像のフレームごとに複数の関節の位置を含む骨格情報を抽出する抽出部と、
前記骨格情報から第1動作特徴量を算出する第1算出部と、
認識対象とする上位行動に関する第2動作特徴量が観測され得る範囲が前記上位行動ごとにマッピングされた複数のマッピング領域を有する特徴量空間に前記第1動作特徴量をプロットすることで、前記特徴量空間に対して前記第1動作特徴量がプロットされた位置であるプロット位置を算出する第2算出部と、
前記複数のマッピング領域それぞれと前記プロット位置との距離のうち最小距離の他の距離に対する乖離度が所定の基準を満たす場合、前記プロット位置から前記最小距離にあるマッピング領域を前記プロット位置に基づいて拡張する更新を実行する更新部と、
を有する行動認識装置。
【0125】
(付記14)前記認識対象とする上位行動ごとに前記上位行動に対応する基本動作の組合せから抽出される第3動作特徴量のうち前記特徴量空間の定義に用いる前記第2動作特徴量を選択する選択部と、
前記第2動作特徴量で定義される特徴量空間上に前記上位行動が観測され得る範囲をマッピングするマッピング部とをさらに有する付記13に記載の行動認識装置。
【0126】
(付記15)前記選択部は、前記基本動作の組合せから抽出される第3動作特徴量の中から、前記認識対象とする上位行動の各々を区別できる第4動作特徴量を前記第2動作特徴量として所定の特徴量選択のアルゴリズムにしたがって選択する付記14に記載の行動認識装置。
【0127】
(付記16)前記上位行動が観測され得る範囲は、所定の参照映像のうち前記上位行動が前記特徴量空間上で観測される区間で得られる第2動作特徴量の最大値および最小値に基づいて設定される付記14に記載の行動認識装置。
【0128】
(付記17)前記マッピング領域は、前記マッピング領域の境界線を形成する頂点の座標により定義される付記13に記載の行動認識装置。
【0129】
(付記18)前記更新部は、前記プロット位置からマンハッタン距離で前記最小距離に位置する頂点の座標により定義される領域を拡張する処理を含む付記17に記載の行動認識装置。
【符号の説明】
【0130】
10 行動認識装置
11 映像取得部
13 オブジェクト認識部
14 基本動作認識部
15 ルール変換部
15A 選択部
15B マッピング部
16A 第1ルール記憶部
16B 参照映像記憶部
17 第2ルール記憶部
18 上位行動認識部
18A ルール照合部
18B ルール更新部
18C 認識結果出力部