(57)【要約】  異常検知装置において、対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成する疑似作業生成部と、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成する正常空間生成部と、前記正常空間データに基づいて前記対象物の異常を検知する比較部とを備える。
2017037896.tif 000002
【特許請求の範囲】
【請求項１】
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成する疑似作業生成部と、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成する正常空間生成部と、
前記正常空間データに基づいて前記対象物の異常を検知する比較部と
を備えることを特徴とする異常検知装置。
【請求項２】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる、前記第１及び第２の画像フレームのうち前記第２の画像フレームに対して、前記第１及び第２の画像フレームのうち前記第１の画像フレームに対して、又は、前記第１及び第２の画像フレームに対して、画像フレーム上、空間方向にランダムにシフトさせることで、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成することを特徴とする請求項１記載の異常検知装置。
【請求項３】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる、前記第１及び第２の画像フレームのうち前記第２の画像フレームに対して、前記第１及び第２の画像フレームのうち前記第１の画像フレームに対して、又は、前記第１及び第２の画像フレームに対して、前記第１の画像フレーム群に含まれる画像フレームを時間方向にランダムに選択することで、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成することを特徴とする請求項１記載の異常検知装置。
【請求項４】
前記疑似作業生成部は、前記撮像部のブレ量に応じた量、空間方向にランダムにシフトさせることを特徴とする請求項２記載の異常検知装置。
【請求項５】
前記疑似作業生成部は、前記撮像部のブレ量に応じた量、前記対象物の移動方向に応じた方向にランダムにシフトさせることを特徴とする請求項２記載の異常検知装置。
【請求項６】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる、前記第１及び第２の画像フレームのうち前記第２の画像フレーム、前記第１及び第２の画像フレームのうち前記第１の画像フレーム、又は、前記第１及び第２の画像フレームの各画素を、画像フレーム上、空間方向にランダムに移動させることを特徴とする請求項２記載の異常検知装置。
【請求項７】
前記撮像部のブレ量に応じた量は前記第１及び第２の画像フレームに含まれる各画像に対して０．０５画素から０．１画素の範囲内であることを特徴とする請求項４記載の異常検知装置。
【請求項８】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して前記第１の画像フレーム群に含まれる前記第１及び第３の画像フレームを選択することで前記第２の画像フレーム群に含まれる前記第１及び第３の画像フレームを生成、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して前記第１の画像フレーム群に含まれる前記第３及び第２の画像フレームを選択することで前記第２の画像フレーム群に含まれる前記第３及び第２の画像フレームを生成、又は、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して前記第１の画像フレーム群に含まれる前記第３及び第４の画像フレームを選択することで前記第２の画像フレーム群に含まれる前記第３及び第４の画像フレームを生成することを特徴とする請求項３記載の異常検知装置。
【請求項９】
前記疑似作業生成部は、前記対象物の移動時間の変動量の範囲内に含まれる画像フレームであって、かつ、時間方向の順番で、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを選択することを特徴とする請求項３記載の異常検知装置。
【請求項１０】
前記撮像部は、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームを第１のフレームレートで撮像し、
前記疑似作業生成部は、前記第１のフレームレートよりもフレームレートが低い第２のフレームレートであって、前記比較部において異常を検知する際に前記撮像部において前記対象物を撮像する際のフレームレートである前記第２のフレームレートとなるように、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを選択することを特徴とする請求項３記載の異常検知装置。
【請求項１１】
前記撮像部は、前記対象物を撮像して前記第１の画像フレーム群に含まれる前記第１の画像フレーム、前記第２の画像フレーム、及び第５の画像フレームを生成し、
前記疑似作業生成部は、
前記第１の画像フレーム群に含まれる、
前記第１の画像フレームと前記第２画像フレームと前記第５の画像フレームに対して、
前記第２の画像フレーム群に含まれる、
前記第１の画像フレームと前記第２の画像フレームと第６の画像フレーム、
前記第１の画像フレームと前記第３の画像フレームと第６の画像フレーム、
前記第３の画像フレームと前記第２の画像フレームと第６の画像フレーム、
前記第３の画像フレームと前記第４の画像フレームと第６の画像フレーム、
前記第１の画像フレームと前記第３の画像フレームと前記第５の画像フレーム、
前記第３の画像フレームと前記第２の画像フレームと前記第５の画像フレーム、又は
前記第３の画像フレームと前記第４の画像フレームと前記第５の画像フレーム、
を夫々生成し、
前記正常空間生成部は、前記第１の画像フレーム群に含まれる各画像フレームと前記第２の画像フレーム群に含まれる各画像フレームとに基づいて立体高次局所自己相関（ＣＨＬＡＣ：Cubic  Higher-order  Local  Auto  Correlation）によって特徴データを抽出して、抽出した特徴データを含む正常空間データを生成すること特徴とする請求項１記載の異常検知装置。
【請求項１２】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる全ての画像フレームに対して空間方向にランダムにシフトさせることを特徴とする請求項２記載の異常検知装置。
【請求項１３】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる一部の画像フレームをランダムに選択することを特徴とする請求項３記載の異常検知装置。
【請求項１４】
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、疑似作業生成部と、正常空間生成部とを含む異常検知装置における異常検知方法であって、
前記疑似作業生成部により、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成し、
前記正常空間生成部により、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成し、
前記比較部により、前記正常空間データに基づいて前記対象物の異常を検知する
ことを特徴とする異常検知方法。
【請求項１５】
異常検知装置のコンピュータに実行させる異常検知プログラムであって、
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成し、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成し、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成し、
前記正常空間データに基づいて前記対象物の異常を検知する
処理を前記コンピュータに実行させる異常検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常検知装置、異常検知方法、及び異常検知プログラムに関する。
【背景技術】
【０００２】
従来から、組立作業などＦＡ作業に用いられるロボットの異常を検知する異常検知装置がある。このような異常検知装置によってロボットの異常が検知され、例えば、その原因の特定や対策、改善などによって効率的なＦＡ作業を行うことが可能となる。【０００３】
このような異常検知装置においては、対象となるロボットの作業をカメラなどで撮像し、撮像した画像データに対して画像処理を行うことによってその異常を検出する場合がある。例えば、以下のような異常検知装置がある。すなわち、異常検知装置では、ロボットに対して正常作業を行わせて複数の画像フレームから特徴データ（又は動画特徴。以下、「動画特徴」と称する場合がある）を抽出し、複数の特徴データを含む正常空間データを生成する。そして、異常検知装置では、正常空間データと、ロボットの運用作業によって抽出した動画特徴とを比較して異常測度を算出する。異常検知装置は算出した異常測度が設定値を超えるとアラームなどで異常を知らせる。【０００４】
動画特徴の次元数（例えば動画特徴の種類数）は数百に及ぶ場合があり、異常検知装置では主成分分析（ＰＣＡ：Principal  Component  Analysis）などの手法によってその次元数を少なくさせることで動画特徴を効率的に取得できる。次元数を少なくさせることを、例えば、「縮約」と称する場合がある。例えば、動画特徴の次元数と同等以上の実作業をロボットに行わせることで、異常検知装置において動画特徴の次元数の縮約を効率的に行うことが可能になる。従って、動画特徴の次元数が数百ある場合、異常検知装置ではロボットに対して数百回繰り返し作業を行わせて画像データを取得する場合がある。【０００５】
画像処理に関する技術として、例えば、以下のような技術がある。すなわち、モデルパターンにＮ個の幾何学的変換を施して基準相対姿勢と３次元的に異なる相対姿勢での対象物の見え方を示す変換モデルパターンを作成し、画像データに対して変換モデルパターンを使用してパターンマッチングを行う画像処理装置がある。この技術によれば、位置、姿勢が不定の対象物を検出し、３次元位置及び／又は２次元姿勢を認識することができる、とされる。【０００６】
また、３次元疑似空間でのロボットのモデルの各部位の位置、傾きを変更してロボットの各関節の角度を計算してキーフレームデータを作成し、作成したキーフレームデータを多関節ロボットへ送信するロボットのモーション編集装置がある。この技術によれば、ロボットの多種のモーションデータを、より容易に作成するためのロボットのモーション編集装置などを提供することができる、とされる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−２９５２２３号公報
【特許文献２】特開２００８−２５４０７４号公報
【非特許文献】
【０００８】
【非特許文献１】「わかりやすい数学モデルによる多変量解析入門」、木下栄蔵著、近代科学社、１９９５年４月
【非特許文献２】「線形代数  基礎と応用」、新井仁之著、日本評論社、２００６年２月
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述したように、動画特徴の次元数が数百ある場合、異常検知装置ではロボットに対して数百回繰り返し作業を行わせて画像データを取得する場合がある。しかし、ＦＡ作業などの立ち上げの際にこのような数百回の作業をロボットに対して行わせるのは時間的に困難である。【００１０】
上述した画像処理装置については、例えば、基準相対姿勢と３次元的に異なる相対姿勢での対象物の見え方を示す変換モデルパターンを作成してパターンマッチングを行うものであって、ＦＡ作業などの立ち上げの際の時間的な困難さに対する解決策については何も開示されない。また、上述したモーション編集装置についても、例えば、作成したキーフレームデータを多関節ロボットへ送信するものであり、ＦＡ作業などの立ち上げの際の時間的な困難さに対する解決策については何も開示されない。【００１１】
そこで、一開示は、少ない作業数で精度の良い正常空間データを生成する異常検知装置、異常検知方法、及び異常検知プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
一態様によれば、異常検知装置において、対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成する疑似作業生成部と、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成する正常空間生成部と、前記正常空間データに基づいて前記対象物の異常を検知する比較部とを備える。
【発明の効果】
【００１３】
一開示によれば、少ない作業数で精度の良い正常空間データを生成する異常検知装置、異常検知方法、及び異常検知プログラムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は異常検知装置の構成例を表わす図である。
【図２】図２は異常検知装置の構成例を表わす図である。
【図３】図３（Ａ）は実画像フレーム、図３（Ｂ）は疑似画像フレームの例を夫々表す図である。
【図４】図４は動作例を表すフローチャートである。
【図５】図５（Ａ）から図５（Ｅ）は実作業の例を表わす図である。
【図６】図６（Ａ）から図６（Ｃ）はＣＨＬＡＣ特徴と正常空間の例を表す図である。
【図７】図７は正常空間のサイズの例を表わすグラフである。
【図８】図８は実作業による正常空間のサイズと、実作業と疑似作業による正常空間のサイズの例を夫々表すグラフである。
【図９】図９は線形性の例を表すグラフである。
【図１０】図１０（Ａ）から図１０（Ｄ）は実作業による異常測度の検出例を表す図である。
【図１１】図１１（Ａ）と図１１（Ｂ）は実作業と疑似作業による異常測度の検出例を表す図である。
【図１２】図１２（Ａ）は実画像フレーム、図１２（Ｂ）は疑似画像フレームの例を夫々表す図である。
【図１３】図１３は動作例を表すフローチャートである。
【図１４】図１４は異常検知装置のハードウェア構成例を表す図である。
【発明を実施するための形態】
【００１５】
以下、本実施の形態について図面を参照して詳細に説明する。本明細書における課題及び実施例は一例であり、本願の権利範囲を限定するものではない。特に、記載の表現が異なっていたとしても技術的に同等であれば、異なる表現であっても本願の技術を適用可能であり、権利範囲を限定するものではない。
【００１６】
［第１の実施の形態］
図１は第１の実施の形態における異常検知装置１０の構成例を表す図である。異常検知装置１０は、例えば、対象物２５０の同一作業を１又は複数回撮像して、複数の画像フレームを生成し、生成した複数の画像フレームに基づいて正常空間データを生成する。そして、異常検知装置１０は、対象物２５０の実際の作業を撮像して得た複数の画像フレームから特徴データを抽出し、抽出した特徴データと正常空間データとを比較して対象物２５０の異常を検知する。
【００１７】
異常検知装置１０は、撮像部１０１、疑似作業生成部１０７、正常空間生成部１０８、及び比較部１０９を備える。
【００１８】
撮像部１０１は、対象物２５０を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する。
【００１９】
疑似作業生成部１０７は、第１の画像フレーム群に含まれる第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、第１の画像フレーム及び第３の画像フレーム、第３及び第２の画像フレーム、又は、第３及び第４の画像フレームを夫々生成する。例えば、第１の画像フレーム群に含まれる第１及び第２の画像フレームは対象物２５０の正常作業又は実作業によって得た画像フレームであり、第２の画像フレーム群に含まれる各画像フレームは疑似作業によって得た画像フレームである。
【００２０】
正常空間生成部１０８は、第１の画像フレーム群に含まれる第１及び第２の画像フレームと、第２の画像フレーム群に含まれる、第１及び第３の画像フレーム、第３及び第２の画像フレーム、第３及び第４の画像フレームとに基づいて正常空間データを生成する。この場合、正常空間生成部１０８は、第１の画像フレーム群に含まれる各画像フレームと第２の画像フレーム群に含まれる各画像フレームとに基づいて特徴データを算出し、複数の特徴データを含む正常空間データを生成する。例えば、正常空間生成部１０８は、第１及び第２の画像フレーム群に含まれる各画像フレームに対して立体高次局所自己相関（ＣＨＬＡＣ：Cubic  Higher-order  Local  Auto  Correlation）によって特徴データを算出してもよい。
【００２１】
比較部１０９は、正常空間データに基づいて対象物の異常を検知する。例えば、比較部１０９は、対象物２５０の実際の作業を撮像して得た複数の画像フレームから特徴データを抽出し、抽出した特徴データと正常空間データとを比較して対象物２５０の異常を検知してもよい。
【００２２】
例えば、異常検知装置では、対象物２００に対してＮ（Ｎは１以上の整数）回作業を繰り返して、Ｎ個の第１の画像フレーム群を生成し、Ｎ個の第１の画像フレーム群に含まれる画像フレームに基づいて正常空間データを生成する場合がある。
【００２３】
一方、本第１の実施の形態の異常検知装置１０は、第１の画像フレーム群の各画像フレームから第２の画像フレーム群に含まれる各画像フレームを生成し、第１及び第２の画像フレーム群に含まれる各画像フレームに基づいて正常空間データを生成している。すなわち、異常検知装置１０では、例えば、疑似作業生成部１０７により第２の画像フレーム群に含まれる各画像データを生成し、これを利用して正常空間データを生成している。
【００２４】
従って、本第１の実施の形態の異常検知装置１０では、第１の画像フレーム群に含まれる画像フレームを得るための実作業をＮ回繰り返す場合と比較して、疑似作業によって画像フレームを生成することによって、実作業の作業をＮ回よりも低くすることができる。よって、異常検知装置１０は、対象物２５０に対する実作業の繰り返し回数を削減させることができる。
【００２５】
また、本第１の実施の形態の異常検知装置１０は、第２の画像フレーム群に含まれる各画像データは、第１の画像フレーム群に含まれる第１及び第２の画像フレームに対して、少なくとも一方が異なる画像フレームとなっている。このため、第１の画像フレーム群に含まれる各画像データのフレーム間差分と、第２の画像フレーム群に含まれる各画像データのフレーム間差分は異なるものとなる。これにより、本第１の実施の形態の異常検知装置１０は、例えば、所定数よりも多くの特徴データを算出することが可能となり、精度の良い正常空間データを生成することができる。
【００２６】
以上から、本第１の実施の形態の異常検知装置１０は、少ない作業数で精度の良い正常空間データを生成することができる。
【００２７】
［第２の実施の形態］
次に第２の実施の形態について説明する。
【００２８】
＜異常検知装置の構成例＞
図２は本第２の実施の形態における異常検知装置１０の構成例を表す図である。図２に示す異常検知装置１０は、組み立て作業などＦＡ作業を行うロボット２００に対する異常検知装置１０の例を表している。なお、第１の実施の形態の対象物２５０は、例えば、第２の実施の形態におけるロボット２００に対応する。
【００２９】
異常検知装置１０は、例えば、以下のような処理を行う。すなわち、異常検知装置１０は、ロボット２００に対して同一の作業を複数回行わせてその作業を撮像し、撮像した画像データに基づいて特徴データ（又は動画特徴。以下では「動画特徴」と称する場合がある）を算出し動画特徴を算出し、正常空間データを生成する。例えば、１又は複数の動画特徴を含むものを正常空間データと称する場合がある。
【００３０】
異常検知装置１０は、ロボット２００の運用中などにおいて、ロボット２００の運用作業も撮像し、撮像した画像データに基づいて動画特徴を算出する。異常検知装置１０は、運用中に算出した動画特徴と正常空間データとを逐次比較して、異常測度（又は異常値、或いは異常度。以下では、「異常測度」と称する場合がある）を算出する。そして、異常検知装置１０は、算出した異常測度が閾値を超えると、ロボット２００に対する異常であることを検知し、アラームなどを鳴らして異常を知らせるようにしている。一方、異常検知装置１０は、算出した異常測度が閾値以下のとき、ロボット２００は正常であることを検知する。
【００３１】
異常検知装置１０は、撮像素子１０１−１，１０１−２、撮像素子コントローラ１０２、照明器具１０３−１，１０３−２、照明コントローラ１０４、制御部１０５を備える。また、異常検知装置１０は、実作業入力部１０６、疑似作業生成部１０７、正常空間生成部１０８、比較部１０９、及び出力部１１０を備える。
【００３２】
なお、撮像素子１０１−１，１０１−２は、例えば、第１の実施の形態における撮像部１０１に対応する。
【００３３】
撮像素子（又は撮像部）１０１−１，１０１−２は、例えば、カメラであって、撮像素子コントローラ１０２から出力された制御信号に従ってロボット２００を撮像する。撮像素子１０１−１，１０１−２は、ロボット２００を撮像することで画像データを生成し、生成した画像データを撮像素子コントローラ１０２へ出力する。撮像素子１０１−１，１０１−２により生成された画像フレームには、例えば、画像データが含まれる。以下においては、画像データ、画像フレーム、或いは画像フレームデータについてはとくに区別しないで用いるものとする。なお、図２に示す撮像素子１０１−１，１０１−２は２つの例を示しているが、１つでもよいし、３つ以上あってもよい。
【００３４】
撮像素子コントローラ１０２は、制御部１０５から出力された制御信号に基づいて、撮像の開始や終了を指示するなどの制御信号を生成し、生成した制御信号を撮像素子１０１−１，１０１−２へ出力する。また、撮像素子コントローラ１０２は、撮像素子１０１−１，１０１−２から受け取った画像データを制御部１０５へ出力する。
【００３５】
照明器具１０３−１，１０３−２は、例えば、ライトであり、照明コントローラ１０４から出力された制御信号に従ってロボット２００へ光を照射する。照明器具１０３−１，１０３−２も１つでもよいし、３つ以上あってもよい。
【００３６】
照明コントローラ１０４は、制御部１０５から出力された制御信号に基づいて、照明器具１０３−１，１０３−２の光の照射のオンまたはオフなどを制御する制御信号を生成し、生成した制御信号を証明器具１０３−１，１０３−２へ出力する。
【００３７】
なお、異常検知装置１０においては、照明コントローラ１０４と照明器具１０３−１，１０３−２はなくてもよい。
【００３８】
制御部１０５は、撮像素子コントローラ１０２、照明コントローラ１０４、実作業入力部１０６を制御する。制御部１０５は、撮像を開始させたり終了させたりすることを指示する制御信号を生成し、生成した制御信号を撮像素子コントローラ１０２へ出力する。また、制御部１０５は撮像素子コントローラ１０２から出力された画像データを受け取り、受け取った画像データに対して処理を行ったり、当該画像データを実作業入力部１０６へ出力したりする。また、制御部１０５は、照明器具１０３−１，１０３−２の電源をオンにしたりオフにしたりすることを指示する制御信号を生成し、生成した制御信号を照明コントローラ１０４へ出力する。さらに、制御部１０５は、ロボット２００に対して実作業を行わせることを指示する制御信号を生成し、生成した制御信号を実作業入力部１０６へ出力する。
【００３９】
実作業入力部１０６は、制御部１０５から出力された制御信号に基づいてロボット２００を制御し、ロボット２００に対して対象作業を行わせる。実作業入力部１０６は、例えば、ロボット２００に対して対象作業を複数回行わせることができる。実作業入力部１０６は、制御部１０５から受け取った画像データを疑似作業生成部１０７へ出力する。
【００４０】
疑似作業生成部１０７は、実作業入力部１０６から受け取った画像フレームに対して、疑似的な画像フレームを生成する。疑似的な画像フレームを疑似画像フレームと称し、疑似画像フレームを生成することを疑似作業と称する場合がある。
【００４１】
図３（Ａ）及び図３（Ｂ）は疑似画像フレームの生成方法の例を表す図である。本第２の実施の形態においては、例えば、疑似作業生成部１０７は以下のようにして疑似画像フレームを生成する。
【００４２】
すなわち、撮像素子１０１−１，１０１−２において対象作業を撮像することで、第１の画像フレーム群に含まれる複数の画像フレームを生成する。疑似作業生成部１０７は第１の画像フレーム群に含まれる第１の画像フレーム（例えば図３における時間ｔ１の画像フレーム）に含まれる各画素について第１の方向へシフトさせた第３の画像フレームを生成する。また、疑似作業生成部１０７は、第１の画像フレーム群に含まれる第２の画像フレーム（例えば図３において時間ｔ２の画像フレーム）に含まれる各画素について第２の方向へシフトさせた第４の画像フレームを生成する。この場合、シフトする方向は、画像フレーム上の平面内における方向であって、各画像フレームにおいて空間的な方向となっている。また、疑似作業生成部１０７は、第１の方向と第２の方向をランダムに選択する。図３（Ｂ）の例では、疑似作業生成部１０７は、時間ｔ１の画像フレームに対して右方向にシフトさせた疑似画像フレームを生成し、時間ｔ２の画像フレームに対して上方向にシフトさせた疑似画像フレームを生成している。
【００４３】
このように、疑似作業生成部１０７は、第１の画像フレーム群に含まれる第１及び第２の画像フレームに対して、画像フレーム上、空間的にシフトさせた画像フレームを生成することで、第２の画像フレーム群に含まれる画像フレームを生成する。
【００４４】
なお、図３（Ａ）に示すように、撮像素子１０１−１，１０１−２において実際の作業を撮像して得られた画像フレームを、例えば、実画像フレームと称する場合がある。また、実画像フレームを得るために行った実際の作業を、例えば、実作業と称する場合がある。
【００４５】
図３（Ｂ）の例では、疑似作業生成部１０７は全ての実画像フレームに対してシフトする例を表している。例えば、疑似作業生成部１０７は、第１の画像フレーム群に含まれる２つの画像フレーム（例えばｔ１、ｔ２）のうち、一方（例えばｔ１）の画像フレームをシフトし他方をシフトしないようにしてもよい。或いは、疑似作業生成部１０７は、第１の画像フレーム群に含まれる３つの画像フレーム（例えばｔ１〜ｔ３）のうち、１つの画像フレーム（例えばｔ１）の画像フレームをシフトしそれ以外の画像フレームをシフトしないようにしてもよい。
【００４６】
疑似作業生成部１０７では、第１の画像フレーム群に含まれる複数の画像フレームに対して、２つの画像フレームや３つの画像フレームのうち、少なくとも１つの画像フレームに対してシフトして疑似画像フレームを生成してもよい。
【００４７】
このような疑似画像フレームの生成によって、実作業によって得た実画像フレームのフレーム間差分と、疑似作業によって得た疑似画像フレームのフレーム間差分は異なるものとなる。実作業によるフレーム間差分と疑似作業によるフレーム間差分とが異なることで、２つの作業によって得た複数のフレームによって動画特徴を算出する際に、所定数よりも多くの動画特徴を得ることが可能となり、異常測度の検出の精度を向上させることが可能となる。
【００４８】
図２に戻り、疑似作業生成部１０７は、実画像フレームと疑似画像フレームを正常空間生成部１０８へ出力する。
【００４９】
正常空間生成部１０８は、実画像フレームと疑似画像フレームに基づいて動画特徴を算出し、１又は複数の動画特徴を含む正常空間データを生成する。例えば、正常空間生成部１０８は、時間的に連続する３つの画像フレームの二値化データを用いて立体高次局所自己相関を演算することで動画特徴を得てもよい。このような算出によって得た動画特徴を、例えば、ＣＨＬＡＣ特徴と称する場合がある。
【００５０】
正常空間生成部１０８は、例えば、以下の式を用いてＣＨＬＡＣ特徴を算出する。
【００５１】
【数１】
2017037896.tif 000003
【００５２】
【数２】
2017037896.tif 000004
【００５３】
ここで、式（１）に示すｘはＣＨＬＡＣ特徴を表している。また、式（２）において、ＡはＺ枚の画像フレームから構成される３次元の画素集合であり、ｒはＡ中の１画素（位置ベクトル）、ａはｒからの変位ベクトル、ｆ（ｒ）は位置ｒの輝度値を表している。
【００５４】
正常空間生成部１０８は、例えば、内部メモリに式（２）を保持し、二値化処理された実作業データと疑似作業データの局所領域（３×３画素）の輝度値を式（２）に代入するなどによりＣＨＬＡＣ特徴を算出する。正常空間生成部１０８は、ＣＨＬＡＣ特徴を算出することで、１又は複数のＣＨＬＡＣ特徴を含む正常空間データを生成する。正常空間生成部１０８は、生成した正常空間データを比較部１０９へ出力する。
【００５５】
比較部１０９は、正常空間データと、ロボット２００の運用作業によって得た動画特徴とを比較して異常測度を算出し、算出した異常測度に基づいて異常検知を行う。例えば、比較部１０９は以下のような処理を行う。
【００５６】
すなわち、撮像素子１０１−１，１０１−２は、ＦＡ作業によるロボット２００の運用中において、ロボット２００の作業（又は動作）を撮像し、複数の画像フレームを生成する。比較部１０９は、撮像素子コントローラ１０２と制御部１０５を経由して、複数の画像フレームを受け取る。そして、比較部１０９は、複数の画像フレームに基づいて動画特徴を算出する。動画特徴は、正常空間生成部１０８と同様にＣＨＬＡＣ特徴を用いてもよく、その場合、比較部１０９は、３枚の画像フレームに対して、式（２）などを適宜用いて算出する。運用中におけるロボット２００の作業に対する動画特徴は、比較部１０９ではなく制御部１０５において算出されて比較部１０９へ出力されてもよい。
【００５７】
比較部１０９は、正常空間データと、ＦＡ作業の運用中に生成された動画特徴とを比較して、異常測度を算出する。異常測度としては、例えば、正常空間データとフレーム毎の動画特徴との距離を表すマハラビノス距離を用いてもよい。この場合、比較部１０９は以下の式を用いてマハラノビス距離DM(x)を算出してもよい。
【００５８】
【数３】
2017037896.tif 000005
【００５９】
ここで、μ＝（μ１，μ２，μ３，・・・，μｐ）は平均、Σは共分散行列（各変数間の共分散を配列した行列）、ｘは多変数ベクトルｘ＝（ｘ１，ｘ２，ｘ３，・・・，ｘｐ）を夫々表している。
【００６０】
比較部１０９は、内部メモリなどに式（３）を保持し、適宜式（３）に数値を代入してマハラビノス距離を算出する。比較部１０９は、算出したマハラビノス距離が設定値を超えると異常であることを検知し、マハラビノス距離が設定値以下のときは異常ではないことを検知する。比較部１０９は、異常の有無を示す検知結果を出力部１１０へ出力する。比較部１０９は、算出したマハラビノス距離を出力部１１０へ出力してもよい。異常測度としては、例えば、マハラビノス距離に代えてユークリッド距離であってもよい。
【００６１】
出力部１１０は、例えば、表示部或いはモニタなどであって、比較部１０９から出力された異常の有無や異常測度を表示する。この場合、出力部１１０は、異常測度などを適宜グラフ化して表示するようにしてもよい。
【００６２】
＜動作例＞
次に第２の実施の形態における動作例について説明する。図４は動作例を表すフローチャートである。図４は主に疑似作業生成部１０７で行われる動作例を表している。
【００６３】
異常検知装置１０は処理を開始すると（Ｓ１０）、対象カメラのシフト量を設定する（Ｓ１１）。シフト量は、例えば、実画像フレームに対してシフトさせる量のことである。
【００６４】
例えば、ロボット２００のＦＡ作業を撮像するカメラは工場などにおける設置環境によっては“ぶれ”が生じる場合がある。本処理においては、カメラが設置された環境における画素のブレ量を利用してシフト量を設定する。
【００６５】
発明者は、所定の実験室環境において、ロボット２００を静止状態にさせ、カメラを実際に動作させてロボット２００を撮像したときに画像フレーム間の変動量を算出した。その結果、０．０５画素から０．１画素程度の範囲内でブレ量が算出された。シフト量としては、例えば、０．０５画素から０．１画素の範囲内をその量としてもよい。例えば、カメラのブレ量に応じた変動範囲であればそれ以外の画素範囲内であってもよい。
【００６６】
例えば、疑似作業生成部１０７は、内部メモリにシフト量が記憶されており、内部メモリからシフト量を読み出すことで本処理（Ｓ１１）が行われても良い。或いは、異常検知装置１０を操作する操作者がキーボードを操作することでシフト量が入力されてもよい。
【００６７】
次に、異常検知装置１０は、実作業の動画フレーム（又は画像フレーム）を時系列に入力する（Ｓ１２）。例えば、制御部１０５は実作業入力部１０６を介してロボット２００に対して実作業を行わせて、撮像素子コントローラ１０２を介して撮像素子１０１−１，１０１−２によって生成された画像フレームを順次入力する。この場合、制御部１０５は入力した画像フレームを、実作業入力部１０６を介して疑似作業生成部１０７へ出力する。
【００６８】
次に、異常検知装置１０は入力フレームと後フレームとのフレーム間差分を用いて画像内の移動領域を算出する（Ｓ１３）。例えば、制御部１０５は入力画像フレームの局所領域（３×３画素）に着目し、当該局所領域のフレーム間の差分を計算することで移動領域を算出してもよい。この場合、制御部１０５は算出した移動領域を実作業入力部１０６及び疑似作業生成部１０７を介して正常空間生成部１０８へ出力する。
【００６９】
次に、異常検知装置１０は、得られた動き成分と対象カメラのシフト量に基づいて、画像シフト量をランダムに決定する（Ｓ１４）。画像シフト量には、例えば、Ｓ１１で設定したシフト量と、その変位方向が含まれる。例えば、疑似作業生成部１０７はランダムに変位方向を決定する。
【００７０】
この変位方向については、ロボットの実作業について撮像された画像フレーム間の変位方向が利用されてもよい。例えば、ロボットの実作業として上下方向に移動した場合、その上下方向を変位方向としてもよい。この場合、ロボット２００の変位方向に応じた方向にシフトさせて疑似画像フレームを生成した場合、ロボット２００の変位方向に関係なくランダムな方向にシフトさせた場合と比較して、ロボット２００の変位方向ではない方向への異常測度を向上させることができる。実測した結果、ロボット２００の変位方向に応じた方向にシフトさせて疑似画像フレームを生成した場合、ロボット２００の変位方向に関係なくランダムな方向にシフトさせた場合と比較して、異常測度について約２０％向上した結果を得ることができた。
【００７１】
なお、ロボット２００の変位方向に応じた方向に実画像フレームをシフトさせる場合でも、例えば上下方向など、複数の方向が変位方向となる。従って、異常検知装置１０では、ロボット２００の変位方向に応じた方向に変位させる場合でも、実画像フレームに対していずれの方向（例えば、上方向又は下方向など）にシフトさせるかはランダムな方向とすることができる。
【００７２】
ロボット２００の変位方向の検出については、例えば、オプティカルフローを用いた手法がある。
【００７３】
オプティカルフローを用いたロット２００の変位方向の検出は、例えば、疑似作業生成部１０７によって以下のようにして行われる。
【００７４】
すなわち、２枚の画像フレームが
【００７５】
【数４】
2017037896.tif 000006
【００７６】
【数５】
2017037896.tif 000007
【００７７】
で表されるものとする。この場合、式（４）は時間ｔにおける画像上の位置（ｘ，ｙ）の輝度を表し、式（５）は微小時間δｔ経過して位置の変位量がδｘ、δｙとなったときの画像の輝度を表している。この場合、式（４）＝式（５）と仮定して、かつ、δｘとδｙが微小量であることを仮定するとテイラー展開でき、高次の項を無視すると、
【００７８】
【数６】
2017037896.tif 000008
【００７９】
となる。式（６）において、Ｉｘ＝∂Ｉ／∂ｘ、Ｉｙ＝∂Ｉ／∂ｙ、Ｉｔ＝∂Ｉ／∂ｔであり、（ｕｘ，ｕｙ）はオプティカルフローのｘ、ｙ成分であり、ｕｘ＝δｘ／δｔ、ｕｙ＝δｙ／δｔである。
【００８０】
従って、疑似作業生成部１０７は、実作業により撮像された複数の入力フレームから時間的に連続する２枚の画像フレームを選択して、２枚の画像フレームの各画素の輝度などに基づいて式（６）から（ｕｘ，ｕｙ）を算出することで、ロボット２００の変位方向を算出する。そして、疑似作業生成部１０７は算出した変位方向に基づいて画像シフト量のシフト方向を決定してもよい。
【００８１】
次に、異常検知装置１０は、入力フレームに対して決定した画像シフト量を適用し、疑似画像フレームを生成する（Ｓ１６）。例えば、疑似作業生成部１０７は、入力画像フレームの各画素を画像シフト量分シフトさせて、疑似画像フレームを生成する。
【００８２】
次に、異常検知装置１０は、所定サンプル数の疑似画像フレームを生成したか否かを判別する（Ｓ１７）。所定サンプル数は、例えば、疑似作業の繰り返し回数に対応する。例えば、疑似作業生成部１０７内の内部メモリなどに所定サンプル数を保持し、Ｓ１６により生成した疑似画像フレームのフレーム数をカウントし、そのカウント値が所定サンプル数と同じか否かにより判別してもよい。
【００８３】
異常検知装置１０は、所定サンプル数の疑似画像を生成していないとき（Ｓ１７でＮｏ）、処理はＳ１４に移行して、上述した処理を繰り返す。例えば、疑似作業生成部１０７は生成した疑似画像フレームのフレーム数が所定サンプル数よりも少ないときはＳ１４へ移行して、所定サンプル数の疑似画像フレームを生成する。
【００８４】
一方、異常検知装置１０は、所定サンプル数の疑似画像を生成したとき（Ｓ１７）、入力画像について次の画像フレームがあるか否かを判別する（Ｓ１８）。例えば、疑似作業生成部１０７は、生成した疑似画像フレームのフレーム数が所定サンプル数と同じになったとき、次の画像フレームが入力されたか否かを判別する。
【００８５】
異常検知装置１０は、次の画像フレームがあれば（Ｓ１８でＹｅｓ）、Ｓ１２へ移行して、次の入力画像フレームに対して所定サンプル数の疑似画像フレームを生成するなどの処理を行う（Ｓ１２からＳ１７）。
【００８６】
異常検知装置１０は、次の画像フレームがなければ（Ｓ１８でＮｏ）、一連の処理を終了する（Ｓ１９）。
【００８７】
＜実測結果と効果＞
次に、実測結果とその効果について説明する。発明者は以下の２つの例について実測を行った。１番目の例は疑似作業を行わず実作業を行って正常空間データを作成した場合の例である。２番目の例は実作業と疑似作業を行って正常空間データを作成した場合の例である。
【００８８】
１番目の例ではロボット２００に対して実作業を３００回繰り返し行わせた。２番目の例ではロボット２００に対して実作業を５回、疑似作業を２９５回、繰り返し行わせた。２番目の例においては、実作業１回に対して疑似作業５９回行わせることで、実作業５回に対して疑似作業を５９×５＝２９５回行わせることができる。
【００８９】
図５（Ａ）から図５（Ｅ）は実作業の例を時系列に表している。図５（Ａ）から図５（Ｅ）に示すように、１回の実作業としては、約１．７秒かけてロボット２００のハンドを上下に移動させた。この実作業は１番目の例も２番目の例も同様である。撮像素子１０１−１，１０１−２によって１回の実作業につき約２５枚の画像フレームが生成された。
【００９０】
図６（Ａ）から図７は、１番目の例（実作業を３００回行わせた場合の例）の実測結果の例を表している。このうち、図６（Ａ）から図６（Ｃ）は、ロボット２００に対して実作業を３００回行わせた場合のＣＨＬＡＣ特徴の例と正常空間の例を表している。図６（Ａ）の上のグラフは実作業の１番目の画像フレームのＣＨＬＡＣ特徴を表している。図６（Ｂ）の上のグラフはＮ（Ｎは２≦Ｎ≦２２を満たす整数）番目の画像フレームのＣＨＬＡＣ特徴、図６（Ｃ）の上のグラフは２３番目の画像フレームのＣＨＬＡＣ特徴の例を夫々表している。ただし、この例では連続した３フレームを用いてＣＨＬＡＣ特徴を算出している。図６（Ａ）から図６（Ｃ）に示すＣＨＬＡＣ特徴の各グラフは、横軸が縮約次数、縦軸が頻度を表す。
【００９１】
図７は、ロボット２００に対して実作業を３００回行わせた場合の画像フレーム毎の正常空間の大きさの例を表す。縦軸が正常空間サイズ（又は縮約次数）、横軸がフレーム番号を表している。
【００９２】
図７に示すように、５番目から１０番目の画像フレーム（例えば図５（Ａ）や図５（Ｂ）など）の正常空間は他の画像フレームと比較してそのサイズが大きく、ロボット２００の動き量が多いことを表している。
【００９３】
一方、１２番目から１７番目の画像フレーム（例えば図５（Ｃ）など）の正常空間は他の画像フレームと比較してそのサイズは小さく、ロボット２００の動き量が小さいことを表している。図６（Ａ）から図６（Ｃ）に示すＣＨＬＡＣ特徴についても同様に、ロボット２００の動き量に応じてＣＨＬＡＣ特徴の大きさも変動し、図６（Ａ）から図６（Ｃ）の正常空間サイズの大きさも変動していることが理解される。
【００９４】
これに対して、図８は１番目の例と２番目の例（実作業を５回、疑似作業を２９５回行わせた場合の例）の比較結果の例を表している。１番目の例では実作業を５回繰り返しており、図８においては、各回（１回目の実作業は「実作業＃１」、２回目の実作業は「実作業＃２」など）の正常空間のサイズがグラフ上にプロットされている。一方、図８において、２番目の例（実作業５回と類似作業２９５回）の正常空間のサイズは三角点でプロットされている。
【００９５】
図８に示すように、類似作業を行うことなく実作業を行った場合の正常空間のサイズと、実作業と類似作業による正常空間のサイズはほぼ同じ結果を得た。
【００９６】
図９は類似作業を行うことなく実作業を行った場合の正常空間のサイズと、実作業と類似作業による正常空間のサイズとの線形性を表すグラフである。類似作業を行うことなく実作業を行った場合の正常空間のサイズを横軸、場実作業と類似作業を行った場合の正常空間のサイズを縦軸とすると、ｙ＝ｘの関数上にほぼプロットされ、両者のサイズがほぼ一致していることを表している。図９の例では、その一致度Ｒ２はＲ２＝０．９８６となった。なお、Ｒ２＝１の場合、ｙとｘが完全に一致（ｙ＝ｘ）していることを表している。
【００９７】
以上から、異常検知装置１０は、実作業と類似作業により得た正常空間のサイズは、類似作業を行うことなく実作業を行って得た正常空間のサイズとほぼ同じ結果を得た。また、この場合、正常空間の作成時間も、実作業３００回と比較して実作業は５回で済み、作業数も少なくさせることが可能となる。正常空間の作成時間は実測では、実作業のみと比較して、約１／４０に短縮できた。
【００９８】
次に異常検知結果について説明する。図１０（Ａ）から図１０（Ｄ）は１番目の例（実作業３００回）で正常空間を生成した場合の異常検知結果の例を表している。一方、図１１（Ａ）と図１１（Ｂ）は２番目の例（実作業５回と類似作業２９５回）で正常空間を生成した場合の異常検知結果の例を表している。
【００９９】
図１０（Ａ）はある特定のフレームＡのＣＨＬＡＣ特徴の例を表している。このフレームＡに対して全変位ベクトルに対してばらつきを付加させた。図１０（Ｂ）はフレームＡについてばらつきを付加させた場合のＣＨＬＡＣ特徴の例を表している。
【０１００】
図１０（Ｃ）は正常時の異常測度の時間推移の例を表している。横軸は時間、縦軸はマハラビノス距離を表す。異常か否かを表す閾値は「１」としている。これに対して、図１０（Ｄ）はフレームＡに対してばらつきを付加させた場合の異常測度の時間推移の例を表している。図１０（Ｄ）に示すように、フレームＡが現れる時間において、異常測度は閾値「１」を超え、異常が検知される結果となっている。
【０１０１】
一方、図１１（Ａ）に示すように、２番目の例の正常空間が用いられた場合、実作業３００回の正常空間の場合と同様に、正常時には閾値以上となる異常測度は検出されなかった。また、図１１（Ｂ）に示すように、図１０（Ｂ）と同様にフレームＡに対してばらつきを付加させて測定した場合、フレームＡが出現する時間において異常測度が閾値を超える結果を得た。
【０１０２】
異常検知についても、実作業と疑似作業とを組み合わせた場合、類似作業を行うことなく実作業を行った場合と比較して、ほぼ同じ検知感度を得た。従って、本第２の実施の形態における異常検知装置１０は、類似作業を行うことなく実作業を行った場合と同様に、精度の良い異常検知を行うことができる。
【０１０３】
従って、本第２の実施の形態における異常検知装置１０は、少ない作業数で精度の良い正常空間データを生成することができ、ＦＡ作業の立ち上げの際など短い時間で精度の良い正常空間データを生成することができる。
【０１０４】
［第３の実施の形態］
次に第３の実施の形態について説明する。第３の実施の形態は、例えば、疑似画像フレームを時間方向にランダムに選択して疑似作業を行う例である。本第３の実施の形態における異常検知装置１０の構成例は、第２の実施の形態と同様であって、その例を図２に示す。
【０１０５】
図１２（Ａ）と図１２（Ｂ）は第３の実施の形態において疑似画像フレームの生成例を表している。このうち、図１２（Ａ）は実作業により生成された実画像フレームの例、図１２（Ｂ）は疑似作業により生成された疑似画像フレームの例をそれぞれ表している。
【０１０６】
本第３の実施の形態においては、ＦＡ作業の運用時のフレームレートよりも高いフレームレートで実作業が撮像される。例えば、図１２（Ａ）の例は運用時の３倍のフレームレートで撮像された場合の例を表している。例えば、ｔ１からｔ９までの９枚の画像フレームのうち、ｔ５とｔ７、ｔ９の３枚の画像フレームが選択されることで、運用時のフレームレートとなるように画像フレームが間引かれて、この３枚の画像フレームから動画特徴が算出される。
【０１０７】
この場合において、本第３の実施の形態においては、ｔ５の実画像フレームに対して、所定範囲内にある実画像フレームのうちランダムにｔ４の実画像フレームが選択される。また、ｔ７の実画像フレームに対して、所定範囲内にある実画像フレームのうちランダムにｔ６の実画像フレームが選択される。さらに、ｔ９の実画像フレームに対して、所定範囲内にある実画像フレームのうちランダムにｔ９の画像フレームが選択される。選択されたｔ４、ｔ６、ｔ９の実画像フレームが疑似画像フレームとなる。この場合、異常検知装置１０では、実作業によるｔ５、ｔ７、ｔ９の３枚の実画像フレームと、疑似作業のよるｔ４、ｔ６、ｔ９の３枚の疑似画像フレームで正常空間データを生成する。
【０１０８】
この場合、所定範囲は、例えば、ロボット２００の移動時間の変動量に基づく範囲としている。ロボット２００に対して実作業を複数回繰り返して行わせる場合、様々な要因により、時間的な変動が生じる。例えば、ある作業をロボットに行わせる場合、１回目の作業と２回目の作業において、同一時間に開始させたとしても異なる時間に終了する場合がある。このように、ロボット２００には移動時間について同一作業であっても変動が生じる場合がある。そこで、その変動量を超えない範囲を所定範囲とし、異常検知装置１０ではその変動量の範囲内から実画像フレームをランダムに選択することで疑似画像フレームを生成する。
【０１０９】
発明者は、所定の環境において実作業（約１０秒）に対するロボット２００の変動時間について実験を行った。その結果、時間的な変動量は１００ｍｓ程度となった。例えば、異常検知装置１０は、対象となる実画像フレームに対して、前後１００ｍｓの範囲内（又は前後５０ｍｓの範囲内）にある複数の実画像フレームの中からランダムに実画像フレームを選択する。１００ｍｓという変動量は一例であって、それ以外の変動量であってもよい。
【０１１０】
図１３は本第３の実施の形態における動作例を表すフローチャートである。図１３は主に疑似作業生成部１０７で行われる動作例を表している。
【０１１１】
異常検知装置１０は処理を開始すると（Ｓ３０）、運用時のフレームレートよりも高いフレームレートで実作業を撮像する（Ｓ３１）。例えば、撮像素子１０１−１，１０１−２が実作業を撮像して実作業による複数の画像フレームを生成し、撮像素子コントローラ１０２を介して制御部１０５へ画像フレームを出力する。
【０１１２】
次に、異常検知装置１０は、ロボット２００の時間方向における変動量を設定する（Ｓ３２）。例えば、制御部１０５は、内部メモリなどに保持した変動量（例えば１００ｍｓ）を読み出すことで設定してもよいし、異常検知装置１０の操作者がキーボードを操作するなどにより変動量を入力することで設定してもよい。この場合、制御部１０５は、設定した変動量を、実作業入力部１０６を介して疑似作業生成部１０７へ出力する。
【０１１３】
次に、異常検知装置１０は、撮像した正常作業（又は実作業）からフレームレートに近い間隔でベースとなる第２の画像フレーム群を決定する（Ｓ３３）。例えば、制御部１０５は、３倍のフレームレートで実作業が撮像された場合、実作業による９枚の画像フレームから３枚の画像フレームを選択することで第２のフレーム群を決定する。この場合、制御部１０５は、第２の画像フレーム群に含まれる各画像フレームを、実作業入力部１０６を介して疑似作業生成部１０７へ順次出力する。
【０１１４】
次に、異常検知装置１０は、第２の画像フレーム群から時系列に動画フレーム（又は画像フレーム）を入力する。例えば、疑似作業生成部１０７は、制御部１０５から出力された画像フレームを順次入力する。
【０１１５】
次に、異常検知装置１０は、疑似画像作成のための画像シフト量を、時間方向の変動量に基づいてランダムに決定する（Ｓ３５）。例えば、疑似作業生成部１０７は、Ｓ２１で設定された変動量（例えば１００ｍｓ）を画像シフト量としてもよいし、その変動量を超えない範囲の量（例えば５０ｍｓ）を画像シフト量としてもよく、その変動量の選択をランダムに行う。
【０１１６】
次に、異常検知装置１０は、入力フレームに対して決定した画像シフト量を適用し、疑似画像候補を選択する（Ｓ３６）。例えば、疑似作業生成部１０７は、対象となる実画像フレーム（Ｓ３４）に対して、Ｓ３５で決定した変動量（例えば５０ｍｓ）に位置する実画像フレームを選択する。
【０１１７】
次に、異常検知装置１０は、疑似画像フレームとして選択した実画像フレームの時系列を確認して、時間的な整合性を確認する（Ｓ３７）。例えば、疑似作業生成部１０７は、Ｓ３６で選択した実画像フレームと、対象となる画像フレーム（Ｓ３４）よりも時間的に前にある画像フレームで選択した実画像フレームとを比較して、後者の実画像フレームの後に、前者の実画像フレームが位置しているか否かを確認する。
【０１１８】
異常検知装置１０は、選択した実画像フレームについて時間的な整合性が保たれていないことを確認したとき（Ｓ３７でＮＯ）、実画像フレームを再度、ランダムに選択する（Ｓ３５，Ｓ３６）。
【０１１９】
一方、異常検知装置１０は、選択した実画像フレームについて時間的な整合性が保たれていることを確認したとき（Ｓ３７でＹｅｓ）、異常検知装置１０は所定サンプル数の疑似画像フレームを生成したか否かを判別する（Ｓ３８）。例えば、第２の実施の形態と同様に、疑似作業生成部１０７は選択した実画像フレームについて、選択した実画像フレームのフレーム数をカウントし、そのカウント値が所定サンプル数に達したか否かにより判別してもよい。
【０１２０】
異常検知装置１０は、疑似画像フレームについて所定サンプル数の生成を終了していないとき（Ｓ３８でＮｏ）、Ｓ３５へ移行して、疑似画像フレームの生成を繰り返す（Ｓ３５〜Ｓ３７）。
【０１２１】
一方、異常検知装置１０は、疑似画像フレームについて所定サンプル数の生成を終了したとき（Ｓ３８でＹｅｓ）、次の入力画像フレームがあるか否かを判別する（Ｓ３９）。異常検知装置１０は、次の入力画像フレームがあれば（Ｓ３９でＹｅｓ）、Ｓ３４へ移行し上述の処理を繰り返す。一方、異常検知装置１０は、次の入力画像フレームがなければ（Ｓ３９でＮｏ）、一連の処理を終了する。
【０１２２】
その後、異常検知装置１０は、第２の実施の形態と同様に実作業フレームと疑似作業フレームに基づいて、ＣＨＬＡＣ特徴などを利用して動画特徴を算出して、正常空間データを生成する。そして、異常検知装置１０では、第２の実施の形態と同様に、正常空間データと、ロボット２００の運用中に生成した画像フレームから抽出した動画特徴とを比較して異常を検知する。
【０１２３】
図１２（Ａ）及び図１２（Ｂ）では、疑似作業生成部１０７は、３フレーム数の実作業フレームに対して３フレーム数の疑似画像フレームを選択する例について説明した。
【０１２４】
例えば、疑似作業生成部１０７は、第１の画像フレーム群に含まれる第１及び第２の画像フレームに対して、第１の画像フレーム群に含まれる、第１及び第３の画像フレーム、第３及び第２の画像フレーム、又は、第３及び第４の画像フレームをランダムに選択する。これにより、疑似作業生成部１０７は、第２の画像フレーム群に含まれる各画像フレームを生成してもよい。第１の画像フレーム群に含まれる各画像フレームは実作業により得た実画像フレームであって、第２の画像フレーム群に含まれる各画像フレームは疑似作業により得た疑似画像フレームとなる。この場合、疑似作業生成部１０７は、第２の画像フレーム群に含まれる各画像フレームは、ロボット２００の移動時間の変動量の範囲内に含まれ、時間方向の順番となっている。
【０１２５】
本第３の実施の形態においても、疑似作業生成部１０７により時間方向にランダムに実作業フレームを選択することで、実画像フレームのフレーム間差分と、疑似画像フレームのフレーム間差分は異なるものとなる。
【０１２６】
従って、異常検知装置１０は、２つの作業によって得た複数のフレームによって動画特徴を算出する際に所定数よりも多くの動画特徴を得ることができ、異常測度の検出の精度を向上させることが可能となる。
【０１２７】
また、異常検知装置１０は、疑似作業と実作業とを組み合わせてＮ回の実作業を繰り返した場合と同一の画像フレーム数を得ており、Ｎ回の実作業を繰り返す場合と比較して、実作業の作業数をＮ回よりも低くすることができる。
【０１２８】
従って、本異常検知装置１０は作業数の削減を図ることができ、ＦＡ作業の立ち上げの際の時間効率を考慮した上で、精度の高い正常空間データを得ることができる。
【０１２９】
［その他の実施の形態］
図１４は異常検知装置１０のハードウェア構成例を表す図である。異常検知装置１０は、実作業コントローラ１２０、モニタ１２１、ＣＰＵ（Central  Processing  Unit）１２２、ＲＯＭ（Read  Only  Memory）１２３、ＲＡＭ（Random  Access  Memory）１２４、及びメモリ１２５を備える。なお、カメラ１０１は、例えば、第２及び第３の実施の形態における撮像素子１０１−１、１０１−２に対応する。また、ライト１０３は、例えば、第２及び第３の実施の形態における照明器具１０３−１，１０３−２に対応している。
【０１３０】
ＣＰＵ１２２は、ＲＯＭ１２３に記憶されたプログラムを読み出してＲＡＭ１２４にロードし、ロードしたプログラムを実行することで、制御部１０５、疑似作業生成部１０７、正常空間生成部１０８、及び比較部１０９の機能を実行する。従って、第２及び第３の実施の形態における制御部１０５、疑似作業生成部１０７、正常空間生成部１０８、及び比較部１０９は、例えば、ＣＰＵ１２２に対応する。
【０１３１】
また、実作業コントローラ１２０は、例えば、第２及び第３の実施における実作業入力部１０６に対応する。さらに、モニタ１２１は、例えば、第２及び第３の実施の形態における出力部１１０に対応する。
【０１３２】
なお、ＣＰＵ１２２に代えて、ＭＰＵ（Micro  Processing  Unit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのコントローラが用いられても良い。
【０１３３】
上述した例において、動画特徴としてＣＨＬＡＣ特徴を例にして説明した。ＣＨＬＡＣ特徴以外にも、ＨＬＡＣ（Higher-order  Local  Auto  Correlation）特徴やＣＣＨＬＡＣ（Color  Cubic  Higher-order  Local  Auto  Correlation）特徴などの動画特徴が用いられても良い。また、例えば、ＣＨＬＡＣ特徴では３枚の画像フレームを用いて特徴データが抽出されるが、２枚の画像フレームを用いて特徴データが抽出される手法が用いられてもよい。また、４枚以上の画像フレームが用いられて動画特徴が抽出されてもよい。
【０１３４】
また、上述した異常検知装置１０は、ＦＡ作業の異常検知を行う場合の例について説明した。例えば、異常検知装置１０は異常侵入者や踏切障害、交通異常の検知などに用いられても良い。
【符号の説明】
【０１３５】
１０：異常検知装置                    １０１−１，１０１−２：撮像素子
１０２：撮像素子コントローラ          １０５：制御部
１０６：実作業入力部                  １０７：疑似作業生成部
１０８：正常空間生成部                １０９：比較部
１２２：ＣＰＵ
【図１】
2017037896.tif 000009
【図２】
2017037896.tif 000010
【図３】
2017037896.tif 000011
【図４】
2017037896.tif 000012
【図５】
2017037896.tif 000013
【図６】
2017037896.tif 000014
【図７】
2017037896.tif 000015
【図８】
2017037896.tif 000016
【図９】
2017037896.tif 000017
【図１０】
2017037896.tif 000018
【図１１】
2017037896.tif 000019
【図１２】
2017037896.tif 000020
【図１３】
2017037896.tif 000021
【図１４】
2017037896.tif 000022
【手続補正書】
【提出日】平成30年3月26日(2018.3.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成する疑似作業生成部と、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成する正常空間生成部と、
前記正常空間データに基づいて前記対象物の異常を検知する比較部と
を備えることを特徴とする異常検知装置。
【請求項２】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる、前記第１及び第２の画像フレームのうち前記第２の画像フレームに対して、前記第１及び第２の画像フレームのうち前記第１の画像フレームに対して、又は、前記第１及び第２の画像フレームに対して、画像フレーム上、空間方向にランダムにシフトさせることで、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成することを特徴とする請求項１記載の異常検知装置。
【請求項３】
前記疑似作業生成部は、前記第１の画像フレーム群に含まれる、前記第１及び第２の画像フレームのうち前記第２の画像フレームに対して、前記第１及び第２の画像フレームのうち前記第１の画像フレームに対して、又は、前記第１及び第２の画像フレームに対して、前記第１の画像フレーム群に含まれる画像フレームを時間方向にランダムに選択することで、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成することを特徴とする請求項１記載の異常検知装置。
【請求項４】
前記疑似作業生成部は、前記撮像部のブレ量に応じた量、空間方向にランダムにシフトさせることを特徴とする請求項２記載の異常検知装置。
【請求項５】
前記疑似作業生成部は、前記撮像部のブレ量に応じた量、前記対象物の移動方向に応じた方向にランダムにシフトさせることを特徴とする請求項２記載の異常検知装置。
【請求項６】
前記疑似作業生成部は、前記対象物の移動時間の変動量の範囲内に含まれる画像フレームであって、かつ、時間方向の順番で、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを選択することを特徴とする請求項３記載の異常検知装置。
【請求項７】
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成する撮像部と、疑似作業生成部と、正常空間生成部と、比較部とを含む異常検知装置における異常検知方法であって、
前記疑似作業生成部により、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成し、
前記正常空間生成部により、前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成し、
前記比較部により、前記正常空間データに基づいて前記対象物の異常を検知する
ことを特徴とする異常検知方法。
【請求項８】
異常検知装置のコンピュータに実行させる異常検知プログラムであって、
対象物を撮像して第１の画像フレーム群に含まれる第１及び第２の画像フレームを生成し、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームに対して、第２の画像フレーム群に含まれる、前記第１の画像フレーム及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームを夫々生成し、
前記第１の画像フレーム群に含まれる前記第１及び第２の画像フレームと、前記第２の画像フレーム群に含まれる、前記第１及び第３の画像フレーム、前記第３及び第２の画像フレーム、又は、前記第３及び第４の画像フレームとに基づいて、正常空間データを生成し、
前記正常空間データに基づいて前記対象物の異常を検知する
処理を前記コンピュータに実行させる異常検知プログラム。
【国際調査報告】
2017037896.tif 000023
2017037896.tif 000024
2017037896.tif 000025