(57)【要約】【課題】作業順序が規定された組立作業の分析を正確に行う組立作業分析装置を提供する。【解決手段】組立作業分析装置５は、作業者による作業を構成する複数の動作の順序とリスタートが可能な動作とを規定する作業標準書を記憶するメモリ５０６と、分析部５０２とを備える。組立作業分析装置５は、カメラ５７から作業者による作業を撮影した映像を取得する。分析部５０２は、取得した映像から作業者による動作を検知して、リスタートが可能な動作により、検知した動作の順序と、作業情報に規定された動作の順序とをそれぞれ分割する。分析部５０２は、検知した動作の順序の分割結果と、作業情報に規定された動作の順序の分割結果とにより、作業者による作業が正しいか否かを判断する。【選択図】図５
2019053527.tif 000002
【特許請求の範囲】
【請求項１】
作業者による作業を撮影した映像を取得する映像取得手段と、
前記作業を構成する複数の動作の順序とリスタートが可能な動作とを規定する作業情報を記憶する記憶手段と、
前記映像から前記作業者による動作を検知して、前記リスタートが可能な動作により、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割し、分割した前記検知した動作の順序と、分割した前記作業情報に規定された動作の順序とにより、前記作業者による作業が正しいか否かを判断する分析手段と、を備えることを特徴とする、
組立作業分析装置。
【請求項２】
前記映像の前記動作が生じるべき場所に動作エリアが設けられており、
前記記憶手段は、前記複数の動作の順序を表す参照ラベル列を記憶しており、
前記分析手段は、前記映像により、前記動作エリアに前記作業者の手が進入することで当該動作が行われたことを検知して、検知した順に動作を並べた検知ラベル列を生成し、前記参照ラベル列及び前記検知ラベル列を前記リスタートが可能な動作によりそれぞれ分割して生成したサブシーケンスにより前記判断を行うことを特徴とする、
請求項１に記載の組立作業分析装置。
【請求項３】
前記分析手段は、１以上の前記リスタートが可能な動作のうち、前記検知した動作において１つだけ発生している動作により、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割することを特徴とする、
請求項１又は２に記載の組立作業分析装置。
【請求項４】
前記リスタートが可能な動作は、所定のセンサにより検知される動作であることを特徴とする、
請求項１〜３のいずれか１項に記載の組立作業分析装置。
【請求項５】
前記リスタートが可能な動作は、作業が行われる主なエリアから所定距離だけ離れている場所で発生する動作であることを特徴とする、
請求項１〜３のいずれか１項に記載の組立作業分析装置。
【請求項６】
前記分析手段は、前記検知した動作における前記リスタートが可能な動作の個数を確認し、確認した個数が所定数以下の場合に、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割することを特徴とする、
請求項５に記載の組立作業分析装置。
【請求項７】
前記分析手段は、前記検知した動作における前記リスタートが可能な動作の順序に基づいて、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割することを特徴とする、
請求項１〜６のいずれか１項に記載の組立作業分析装置。
【請求項８】
前記分析手段による判断の結果を報知する報知手段をさらに備えることを特徴とする、
請求項１〜７のいずれか１項に記載の組立作業分析装置。
【請求項９】
前記分析手段は、シーケンスマッチングにより検知した動作の順序と前記作業情報に規定された動作の順序との比較を行い、前記作業者による作業が正しいか否かを判断することを特徴とする、
請求項１〜８のいずれか１項に記載の組立作業分析装置。
【請求項１０】
作業者による作業を撮影する撮影装置に接続される情報処理装置により実行される方法であって、
前記作業を構成する複数の動作の順序とリスタートが可能な動作とを規定する作業情報を所定の記憶手段に記憶しておき、
前記撮影装置より撮影された映像から前記作業者による動作を検知して、
前記リスタートが可能な動作により、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割し、
分割した前記検知した動作の順序と、分割した前記作業情報に規定された動作の順序とにより、前記作業者による作業が正しいか否かを判断することを特徴とする、
組立作業分析方法。
【請求項１１】
作業者による作業を撮影する撮影装置に接続されるコンピュータを、
前記撮影装置により撮影された映像を取得する映像取得手段、
前記作業を構成する複数の動作の順序とリスタートが可能な動作とを規定する作業情報を記憶する記憶手段、
前記映像から前記作業者による動作を検知して、前記リスタートが可能な動作により、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割し、分割した前記検知した動作の順序と、分割した前記作業情報に規定された動作の順序とにより、前記作業者による作業が正しいか否かを判断する分析手段、
として機能させるためのコンピュータプログラム。
【請求項１２】
請求項１１記載のコンピュータプログラムを記憶する、コンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工場等における組立作業の映像を用いて組立作業が正しく行われているかを分析する技術に関する。
【背景技術】
【０００２】
工場において組立作業が正しく行われているかを分析する手法として、組立作業のシーンを撮影した映像を用いる方法がある。組立作業分析装置は、映像中の作業員の動きを解析し、解析結果を、作業内容を定める作業標準書の記載内容に照らし合わせて組立作業が正しく行われているかを分析する。特許文献１では、映像中の組立作業が発生する箇所に矩形を設定し、該矩形内に作業者の手が進入したか否かで組立作業が行われたかの判断を行う技術を開示する。この技術では、組立作業の個別作業が行われたか否かにより、組立作業が正しく行われたかが判断される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−２０９６９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
作業標準書が作業順序を規定する場合、作業者による組立作業が正しいか否かを判断するには、作業の順序を判断しなければならない。作業順序が規定された組立作業の分析は、個別作業が行われたか否かの判断だけでは正確に行われず、個別作業の発生順序を分析する必要がある。作業順序の判断手法には、ＤＰ（Dynamic Programming）マッチングに代表されるような、シーケンスの並びのあいまいさを許容するシーケンスマッチングが知られている。
しかし、「通常とは異なる腕の動きに起因した手の矩形への進入」などのように、個別作業と判断するべきではない手の矩形への進入が多発する場合、シーケンスマッチングが正確に機能しないことがある。その結果、作業順序が規定された組立作業の分析が失敗することがある。
【０００５】
本発明は、上記の問題に鑑み、作業順序が規定された組立作業の分析を正確に行う組立作業分析装置を提供することを主たる目的とする。
【課題を解決するための手段】
【０００６】
本発明の組立作業分析装置は、作業者による作業を撮影した映像を取得する映像取得手段と、前記作業を構成する複数の動作の順序とリスタートが可能な動作とを規定する作業情報を記憶する記憶手段と、前記映像から前記作業者による動作を検知して、前記リスタートが可能な動作により、前記検知した動作の順序と、前記作業情報に規定された動作の順序とをそれぞれ分割し、分割した前記検知した動作の順序と、分割した前記作業情報に規定された動作の順序とにより、前記作業者による作業が正しいか否かを判断する分析手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、作業順序が規定された組立作業の分析を正確に行うことが可能となる。
【図面の簡単な説明】
【０００８】
【図１】作業場の説明図。
【図２】組立作業分析装置による処理のアルゴリズムの説明図。
【図３】（ａ）〜（ｃ）はＤＰマッチングの説明図。
【図４】（ａ）、（ｂ）はＤＰマッチングの技術的課題の説明図。
【図５】（ａ）、（ｂ）は組立作業分析装置の構成例示図
【図６】工程の定義のフォーマットの例示図。
【図７】分析部による分析処理を表すフローチャート。
【図８】１サイクルの分析処理を表すフローチャート。
【図９】シーケンスマッチング（ＤＰマッチング）処理を表すフローチャート。
【図１０】サブシーケンスへの分割の説明図。
【図１１】ＤＰマッチングの結果の説明図。
【図１２】作業場の説明図。
【図１３】シーケンスマッチング（ＤＰマッチング）処理を表すフローチャート。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、実施形態を詳細に説明する。
【００１０】
図１は、工場において組み立て作業を行う作業場の説明図である。作業場には、作業者１８が作業を行うための作業台１１が配置される。作業台１１上にはワークベンチ１２が設けられ、ワークベンチ１２上に組立対象物１３が配置される。作業台１１は、作業者１８から見て奥側にシールケース１４及びビスケース１５が設けられる。作業者１８の近傍には、ドライバ受け１７及びゴミ箱１６が配置される。作業場の上部には、不図示のカメラが設けられる。カメラは、作業者１８及びゴミ箱１６を含む作業台１１の周辺を撮影する。
【００１１】
この作業場では、複写機の内部に組み込む現像器や定着器などの組立対象物１３が、ワークベンチ１２に置かれて組み立てられる。作業者１８は、組立対象物１３の組み立てに関する作業標準書に従って組立作業を行う。作業者が作業標準書に従って組立作業を行ったかどうかは、組立作業分析装置によりカメラが撮影した映像から判定される。
【００１２】
本実施形態による組立作業の流れと、組立作業分析装置で用いられるアルゴリズムの概要について説明する。本実施形態における組立作業は、組立対象物１３に対するシールの貼付（作業０）及びビス締め（作業１）の２つの作業工程を含む。作業０は、作業者１８が、シールケース１４からシールを取り、該シールを組立対象物１３の左半分に貼り付け、該シールの裏紙をゴミ箱１６に捨てる、という一連の作業である。作業１は、作業者１８が、ドライバ受け１７から右手でドライバを取り、ビスケース１５から左手でビスを取り、組立対象物１３の中央の黒丸のビス穴にビスを締め、ドライバをドライバ受け１７に戻す、という一連の作業である。
【００１３】
これらの作業０、１は、作業標準書に規定される。作業者１８は、この順序で組立作業を進めなければならない。なお以降の説明では、作業を構成する組立作業の１つ１つを「動作」と呼ぶ。以下に示すように、各作業は、複数の「動作」から構成されることになる。
・作業０：シール貼付
動作０：シール取得、動作１：シール右端貼付、動作２：シール左端貼付、動作３：シール裏紙破棄
・作業１：ビス締め
動作０：ドライバ取得、動作１：ビス取得、動作２：ビス締め、動作３：ドライバ戻し
【００１４】
本実施形態の組立作業分析装置で用いられるアルゴリズムは、作業場の上部に設置されるカメラで撮影された組立作業の映像を用いて行われる。組立作業分析装置は、該映像の各フレームにおいて作業者１８の手の位置を検知し、組立作業の流れに従って手が動いていれば組立作業が正しく行われていると判断する。この処理を実現するためのアルゴリズムの大まかな処理は、動作が発生する領域における手の検知及び手を検知した領域の順番と、作業標準書と、の比較によるシーケンスマッチングである。
【００１５】
図２は、組立作業分析装置による処理のアルゴリズムの説明図である。組立作業分析装置は、映像の各フレームにおいて動作が生じるべき場所に動作エリア（以下、「ＡＡ（Action Area）」と呼ぶ。）を設けて、ＡＡに進入する作業者１８の手の検知を行う。図２では、ＡＡは、点線の矩形で表される。また、各ＡＡには、ラベルとして動作エリア番号（以下、「ＡＡＮ（Action Area Number）」と呼ぶ。）が割り当てられる。図２では、ＡＡＮは、下線付きの数字で表される。
【００１６】
組立作業分析装置は、手が領域（矩形）内に進入したＡＡのＡＡＮを検知する。組立作業の最初から最後までで手が進入したＡＡのＡＡＮの列を「出現ＡＡＮ列」、作業標準書に記載されている動作の順序に基づいてＡＡＮを並べた列を「参照ＡＡＮ列」と呼ぶ。組立作業分析装置は、出現ＡＡＮ列と参照ＡＡＮ列とを比較して、出現ＡＡＮ列のＡＡＮが参照ＡＡＮ列のＡＡＮの通りに並んでいるかを検証する。
【００１７】
組立作業分析装置は、出現ＡＡＮ列のＡＡＮが参照ＡＡＮ列の通りに並ぶ場合、組立作業が正しく行われたと判断し、そうでなければ組立作業が正しく行われていないと判断する。組立作業分析装置は、この検証をシーケンスマッチングを用いて行う。シーケンスマッチングは、２つの時系列データがすべて一致していなくても、時系列データを構成するラベルの発生順序が概略似ていれば２つの時系列データは同一であるとみなす、あいまいなマッチング手法である。作業者１８の手は、次の動作への移動時などに、動作を行わないにもかかわらずＡＡに進入することがある。この場合、正しく組立作業を行っていても、時系列データである出現ＡＡＮ列（検知ラベル列）が参照ＡＡＮ列（参照ラベル列）にすべて一致することはない。このように動作を行わないにもかかわらずＡＡに進入することで検知されるラベルはノイズとなる。そのために本実施形態の組立分析装置は、シーケンスマッチングを行う。
【００１８】
本実施形態では、ＤＰマッチングと呼ばれるシーケンスマッチングを用いる。ＤＰマッチングは、参照ラベル列及び検知ラベル列の２つの時系列データの類似度を測定する手法である。ＤＰマッチングは、マッチングのコストが最も小さくなるように参照時系列データ（参照ラベル列）のラベルに、観測時系列データ（検知ラベル列）のラベルを紐づけていく。その過程でＤＰマッチングは、ノイズとなるラベルをノイズとみなして処理をするため、本実施形態のシーケンスマッチングとして用いることができる。参照ＡＡＮ列（参照ラベル列）は、参照時系列データである。出現ＡＡＮ列（検知ラベル列）は、観測時系列データである。
【００１９】
図３は、ＤＰマッチングの説明図である。図３（ａ）は、参照時系列データ及び観測時系列データを例示する。参照時系列データは「１，２，３，４」である。観測時系列データは「１，２，４，３，４」である。観測時系列データで３番目に検知された「４」はノイズであり、図３では下線付きで表される。
【００２０】
図３（ａ）の例では、左下から右上に向かってラベルの紐付けが行われる。各セルには、左下から、該当のセルを共有する参照、観測の各時系列のラベルを紐づけるまでの最低コストが記される。各セルの最低コストは、最低コストを算出済みの下、左下、左の３つのセルから算出される。これを繰り返すという簡易な処理により、左下から右上までを紐づけていく上での最低コストが導出される。なお、３つのセルのうち、いずれのセルを採用したかを記録しておくために、最終的な右上の最低コストが、どのような経路を通って導出されたががわかるようになっている。
【００２１】
詳細な計算は省略するが、図３（ａ）の参照時系列データ及び観測時系列データに対してＤＰマッチングを行った結果は、図３（ｂ）となる。図３（ｂ）の濃いセルをたどる経路が最低コストを実現した経路となる。図３（ｃ）は、紐付けの結果の具体例を示す。ノイズである「４」は、参照時系列データの「４」ではなく、「２」に付随したノイズとして紐づけられている。コストの設計方法等、ＤＰマッチングの詳細については公知であるために説明を省略する。
【００２２】
このようなＤＰマッチングは、観測時系列データにノイズが多数含まれる場合に、ノイズではないラベル（正ラベル）を正しく紐付けることができない、という技術課題がある。図４は、このようなＤＰマッチングの技術的課題の説明図である。
【００２３】
図４（ａ）の場合、観測時系列データは、正ラベル「３」、「４」の後に、ノイズ「３」が３つ続いている。この場合、正ラベル「４」を正しく紐づけると３つのノイズ「３」が参照時系列データの「４」もしくは「５」に紐づけられることになり、大きなコストが発生してしまう。そのため、ＤＰマッチングでは、３つのノイズ「３」が、正ラベル「３」及び「４」とセットにされた上で、参照時系列データの「３」に紐づけられる。その結果、正ラベル「４」が正しく紐づけられなくなる。このことが、出現ＡＡＮ列と参照ＡＡＮ列との間のＤＰマッチングにおいて発生すると、「４」に相当する動作は、行われたにも関わらず、参照ＡＡＮ列の「４」に紐づかないために「非実施」と判定されてしまう。
【００２４】
そこで本実施形態では、「ノイズの発生確率が極端に低いラベル（ノイズ低発生ラベル）におけるＤＰマッチングのリスタート」、という考えを導入する。これは、ノイズの発生確率が極端に低いラベルが、観測時系列データで多くの場合１回しか出現しない点に着目した考えである。つまり、ＤＰマッチングを行っている過程で当該ラベルが出現した際には、ＤＰマッチングを適用せずに紐付けをした上で、ＤＰマッチングをリスタートする。図４（ｂ）の例では、「４」のノイズの発生確率が極端に低いため、「４」の直前でＤＰマッチングが打ち切られ、「４」を紐づけた上でＤＰマッチングがリスタートされる。本実施形態では、ドライバとドライバ受け１７にはセンサが設けられており、ドライバの取り出しは、手の検知ではなく、センサにより行われる。ドライバ取り出しに相当するラベルに関してはノイズが発生する可能性が低くなるために、ドライバ取り出しでＤＰマッチングをリスタートする。以下、詳細を述べる。
【００２５】
（組立作業分析装置の構成）
図５は、本実施形態の組立作業分析装置の構成例示図である。図５（ａ）は、組立作業分析装置５のハードウェア構成図である。組立作業分析装置５は、ＣＰＵ（Central Processing Unit）５０、ＲＯＭ（Read Only Memory）５１、及びＲＡＭ（Random Access Memory）５２を備える情報処理装置である。ＣＰＵ５０、ＲＯＭ５１、ＲＡＭ５２は、バスＢにより接続される。バスＢには、Ｉ／Ｏインタフェース５３、入力インタフェース（Ｉ／Ｆ）５４、出力インタフェース（Ｉ／Ｆ）５５、及びストレージ５６が接続される。Ｉ／Ｏインタフェース５３には、カメラ５７が接続される。入力インタフェース５４には、ＵＩ５８が接続される。出力インタフェース５５には、ディスプレイ５９が接続される。ストレージ５６は、大容量記憶装置であり、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）により実現される。
【００２６】
カメラ５７は、作業場内を俯瞰できる位置に設けられ、作業者１８及びゴミ箱１６を含む作業台１１の周辺を撮影する撮影装置である。カメラ５７は、Ｉ／Ｏインタフェース５３を介してＣＰＵ５０により動作が制御される。カメラ５７が撮影した映像は、Ｉ／Ｏインタフェース５３を介して組立作業分析装置５に入力される。ＵＩ５８は、ユーザにより操作される入力装置であり、各種キーボタンやタッチパネルにより構成される。ユーザは、ＵＩ５８により、組立作業の分析の開始、終了の指示を組立作業分析装置５に対して行う。ＵＩ５８は、入力インタフェース５４を介して指示やデータ等を組立作業分析装置５に入力する。ディスプレイ５９は、ユーザに対して情報を報知するための出力装置である。ディスプレイ５９は、出力インタフェース５５を介して組立作業分析装置５の制御により画像を表示する。
【００２７】
ＣＰＵ５０は、ＲＯＭ５１に格納されるコンピュータプログラムを、ＲＡＭ５２を作業領域に用いて実行することで、情報処理装置を組立作業分析装置５として機能させる。図５（ｂ）は、組立作業分析装置５の機能ブロック図である。ＣＰＵ５０がコンピュータプログラムを実行することで、組立作業分析装置５は、制御部５００、映像取得部５０１、分析部５０２、映像処理部５０３、入力部５０４、出力部５０５、及びメモリ５０６として機能する。なお、これらの各機能ブロックは、ハードウェアにより実現されてもよい。
【００２８】
制御部５００は、組立作業分析装置５、カメラ５７、ディスプレイ５９の動作を制御する。映像取得部５０１は、制御部５００の指示によりカメラ５７の動作を制御し、カメラ５７から作業者１８及びゴミ箱１６を含む作業台１１の周辺を撮影した映像を取得する。入力部５０４は、ＵＩ５８からの指示、データ等の入力を受け付けて制御部５００へ送信する。出力部５０５は、制御部５００の制御により、ディスプレイ５９に画像を表示する。
【００２９】
メモリ５０６は、分析対象とする組立作業の工程の定義を格納する。制御部５００は、ＵＩ５８により組立作業の分析の開始が指示されると、メモリ５０６に分析対象とする工程の定義をロードする。工程の定義は、作業工程の最初から最後までの動作の順序を示したものであり、例えば工程の作業内容を示した作業標準書、或いは動作の順序などを所定のフォーマットに書き出したファイル（作業情報）である。図６は、工程の定義のフォーマットの例示図である。このフォーマットには、動作の順序、動作が発生する動作エリアの番号（ＡＡＮ）、ＤＰマッチングのリスタートを行うことができる動作等が記されている。リスタートを行うことができる動作は、１以上であればよい。図６では２つの動作がリスタートを行うことができる動作となっている。ＵＩ５８により作業標準書が入力される場合、制御部５００は、入力された作業標準書から図６に示した情報を取得して、メモリ５０６に格納する。また、制御部５００は、組立作業の分析が開始されると、映像取得部５０１が取得した映像のフレーム毎の画像（データ）をメモリ５０６に一時格納する。
【００３０】
映像処理部５０３は、制御部５００により制御され、メモリ５０６に格納されたフレーム毎の画像に各種映像処理を加えて保存用のファイル（Motion JPEG, H.264等）を生成し、ストレージ５６へ保存する。
【００３１】
分析部５０２は、制御部５００により制御され、ストレージ５６に格納されたフレームのデータを読み出して、１サイクルの全フレームに対して動作の検知を行い、全動作検知の結果を用いて組立作業の分析を行う。なお「サイクル」とは、工程の定義に記載された１回分の組立作業であり、組立作業を１サイクル行うと１つの組立対象物が完成する。
【００３２】
制御部５００は、分析部５０２による分析結果を出力部５０５によりディスプレイ５９に出力させる。組立作業に問題がなかった場合、出力部５０５から何も出力されず、問題があった場合（例えば行われなかった動作があった場合）、出力部５０５はその旨を出力する。具体的には、サイクルの組立作業開始時刻、終了時刻と併せて、行われなかった動作名を出力する。分析結果の出力は、ディスプレイ５９への表示だけではなく、警告音を鳴らす、監督者が所持する携帯端末のディスプレイに表示する、といった方法であってもよい。ユーザは、ディスプレイ５９に出力された分析結果により、工程定義に沿って組立作業が行われなかった組立対象物の完成品を特定し、組立作業のやり直し指示等を行う。
【００３３】
（分析処理）
図７は、分析部５０２による分析処理を表すフローチャートである。分析部５０２は、制御部５００の制御により以下の処理を行う。
分析部５０２は、メモリ５０６から、格納されている工程の定義に関する情報を取得する（Ｓ６０１）。分析部５０２は、ストレージ５６に格納されたフレームのデータを読み出して、１サイクルの分析を行う（Ｓ６０２）。Ｓ６０２の処理の詳細は後述する。ＵＩ５８によりユーザ（監督者）から分析処理の中止が指示されるまで、分析部５０２は、１サイクルの分析処理を繰り返し行う（Ｓ６０３：N）。分析処理の中止が指示されると（Ｓ６０３：Y）、分析部５０２は、分析処理を終了する。
【００３４】
図８は、Ｓ６０２の１サイクルの分析処理を表すフローチャートである。
分析処理を開始すると、分析部５０２は、作業者からサイクルの組立作業開始の合図があるかを判定する（Ｓ７０１）。組立作業開始の合図は、例えば、作業場に設置されているボタン（不図示）の押下により行われる。組立作業分析装置５は、このボタンの押下を検知する。組立作業開始の合図がある場合（Ｓ７０１：Y）、分析部５０２は、ストレージ５６から１フレーム分の画像を取得する（Ｓ７０２）。
【００３５】
分析部５０２は、フレーム内の作業者の手を検知する（Ｓ７０３）。分析部５０２は、検知した手がＡＡ内に進入しているか否かを判断する（Ｓ７０４）。手がＡＡ内に進入している場合（Ｓ７０４：Y）、分析部５０２は、該ＡＡに対応した動作が行われたと判断する。この場合、分析部５０２は、メモリ５０６に該ＡＡのＡＡＮを記録する（Ｓ７０５）。ＡＡＮの記録後、或いは手がＡＡ内に進入していない場合（Ｓ７０４：N）、分析部５０２は、サイクル終了の合図があるかを確認する（Ｓ７０６）。組立作業開始の合図と同様に、サイクル終了の合図は、作業場に設置されているボタン（不図示）の押下により行われる。組立作業分析装置５は、このボタンの押下を検知することでサイクル終了の合図を確認する。サイクル終了の合図が無い場合（Ｓ７０６：N）、分析部５０２は、Ｓ７０２以降の処理を、ストレージ５６から次の１フレーム分の画像を取得して行う。Ｓ７０２〜Ｓ７０５の処理を繰り返すことで、手が進入したＡＡのＡＡＮの列である出現ＡＡＮ列がメモリ５０６に記憶される。
【００３６】
サイクル終了の合図が有る場合（Ｓ７０６：Y）、分析部５０２は、メモリ５０６に記録されているＡＡＮ列に対してシーケンスマッチングを行う（Ｓ７０７）。Ｓ７０７の処理の詳細は後述する。分析部５０２によるシーケンスマッチングが終了すると、制御部５００は、分析部５０２からシーケンスマッチングの結果を取得する。制御部５００は、出力部５０５によりディスプレイ５９にシーケンスマッチングの結果を出力する（Ｓ７０８）。以上により、Ｓ６０２の１サイクルの分析処理が終了する。
【００３７】
図９は、Ｓ７０７のシーケンスマッチング（ＤＰマッチング）処理を表すフローチャートである。
分析部５０２は、まず、工程定義に示されているリスタートのＡＡＮに基づいて、参照ＡＮＮ列及び出現ＡＡＮ列の各シーケンスを分割して複数のサブシーケンスを生成し、分割したサブシーケンスの個数を算出する（Ｓ８０１）。ここでは、サブシーケンスの個数をＮとする。図１０は、サブシーケンスへの分割の説明図である。参照ＡＡＮ列である参照時系列データが、サブシーケンスである「０，１，２，３」と、「４，５，６，７，５…」とに分割されている。出現ＡＡＮ列である観測時系列データが、サブシーケンスである「０，１，２，２，３，３」と、「４，３，３，３，５，２，３，６，７，５…」とに分割されている。
【００３８】
分析部５０２は、サブシーケンスのカウンタi_subを初期化（i_sub=0）する（Ｓ８０２）。分析部５０２は、i_sub番目のサブシーケンスのＤＰマッチングを行い、メモリ５０６へＤＰマッチングの結果を書き込む（Ｓ８０３）。図１１は、ＤＰマッチングの結果の説明図である。ＤＰマッチングの結果は、作業中の動作毎に、マッチングした動作を検知できたかどうか（True/False）で出力される。
【００３９】
分析部５０２は、サブシーケンスのカウンタi_subをインクリメントして（Ｓ８０４）、インクリメントしたカウンタi_subとＮとを比較する（Ｓ８０５）。カウンタi_subがＮ未満である場合（Ｓ８０５：Y）、分析部５０２は、未処理のサブシーケンスが残っていると判断する。この場合、分析部５０２は、Ｓ８０３以降の処理を繰り返し、すべてのサブシーケンスに対してＤＰマッチングを行う。カウンタi_subがＮ以上である場合（Ｓ８０５：N）、分析部５０２は、すべてのサブシーケンスに対してＤＰマッチングが終了していると判断して、Ｓ７０７のシーケンスマッチング処理を終了する。
【００４０】
以上のような本実施形態の組立作業分析装置５は、「ノイズの発生確率が極端に低いラベル（動作エリア）においてシーケンスマッチング（ＤＰマッチング）をリスタートする」という考えを導入することで、組立分析処理の精度を向上させている。
【００４１】
（変形例１）
上記の実施形態では、シーケンスマッチングをリスタートさせるＡＡが、動作の発生をセンサで検知する動作のＡＡである。しかし、ノイズの発生確率が極端に低いＡＡは、センサで動作を検知できるＡＡに限られない。図１２は、この場合の工場において組み立て作業を行う作業場の説明図である。作業が行われる主なエリアであるワークベンチ１２から所定距離だけ離れているＡＡ（図１２ではドライバ受け１７）では、通常とは異なる腕の動きが発生することは少ない。そのために該ＡＡではノイズが発生しにくい。ただし、センサと異なり、ノイズがまったく発生しないということはない。例えば作業者が疲れを取るために腕を伸ばした際には、その動きがノイズを発生させる場合がある。
【００４２】
そのようなことを鑑み、ごく稀にノイズの発生が想定されるＡＡのＡＡＮについては、一定の制約の下でリスタートに用いる。具体的には、当該ＡＡＮが出現ＡＡＮ列に１つだけ存在していればノイズではないとし、リスタートとして用いる。しかし、当該ＡＡＮが出現ＡＡＮ列に複数存在している場合、いずれがノイズでいずれが正しいＡＡＮであるかの識別が困難であるため、リスタートが行われない。この変形例では、図８のＳ７０７のシーケンスマッチングのみが、上記の実施形態とは異なる。そのために、Ｓ７０７の処理についてのみ説明する。
【００４３】
図１３は、この変形例におけるＳ７０７のシーケンスマッチング（ＤＰマッチング）処理を表すフローチャートである。
分析部５０２は、まず、出現ＡＡＮ列におけるリスタート可能なＡＡＮの個数（Ｍ）を確認する（Ｓ１２０１）。ここでは、説明を簡易にするためリスタート可能なＡＡＮは１種類のみとする（例えば「４」）。
【００４４】
分析部５０２は、リスタート可能なＡＡＮの個数（Ｍ）が所定数（ここでは「１」）より大きいか否かを判断する（Ｓ１２０２）。確認した個数（Ｍ）が所定数より多い場合（Ｓ１２０２：Y）、分析部５０２は、出現ＡＡＮ列中の該当ＡＡＮのいずれが正しいＡＡＮであるかを特定することができない。この場合、分析部５０２は、サブシーケンス分割を行わずにＤＰマッチングを行う（Ｓ１２０３）。
【００４５】
確認した個数（Ｍ）が所定数以下の場合（Ｓ１２０２：N）、分析部５０２は、唯一発生しているリスタートのＡＡＮはノイズではないと判断する。この場合、分析部５０２は、図９と同様の処理により、シーケンスマッチングを行う。
【００４６】
このように組立作業分析装置５は、ワークベンチ１２から離れているＡＡＮをリスタート可能なＡＡＮとしてシーケンスマッチングを行うことができる。
【００４７】
（変形例２）
変形例１では、出現ＡＡＮ列中にリスタート可能なＡＡＮが複数発生している場合、サブシーケンス分割しない処理を説明した。しかし、リスタート可能なＡＡＮが複数発生している場合の処理は、これに限られることはない。例えば、ワークベンチ１２から離れた位置に２種類以上のＡＡＮがあり、いずれも出現ＡＡＮ列中に複数出現している場合、工程定義上の該当するＡＡＮの順序に基づいて、サブシーケンス分割してもよい。具体的には、工程定義（参照ＡＡＮ列）において「４」と「５」はその順番で発生するものとされていて、出現ＡＡＮ列において、以下の通り、「４」と「５」のいずれもが２個発生したとする。
0, 0, 1, 0, 2, 3, 3, 3, 4, 5, 6, 6, 6, 7,…, 5, …, 9, 0, 1, 4,…
【００４８】
工程定義上「４」及び「５」はこの順序どおりに発生するものとされており、ノイズの発生が非常に少ないとされている。これらのノイズが、工程定義の順番どおりに出現する可能性はさらに少なくなると考えられる。それゆえ、上記した出現ＡＡＮ列では、９番目の「４」と１０番目の「５」は、ノイズではないと判断され、この組を持ってＤＰマッチングがリスタートされる。
【００４９】
１サイクル全体の出現ＡＡＮ列が生成された段階でＤＰマッチングする他に、サブシーケンスを単位として出現ＡＡＮ列が生成された段階で、逐次ＤＰマッチングを行ってもよい。また、シーケンスマッチングの手法としては、ＤＰマッチングに限られることはない。
【００５０】
以上のような本実施形態の組立作業分析装置５は、注目すべきでない手の進入がほとんど発生しない矩形（ラベル）を特定し、そのラベルでシーケンスを区切るという手法を導入する。そのために、問題となる手の進入の多発に起因した影響がシーケンス全体に及ぶことが防止される。その結果として、シーケンスマッチングの精度が向上するため、組立作業の分析精度が向上し、組立作業の監督者は的確に組立作業のやり直しなどの指示を出せるようになる。
【００５１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019053527.tif 000003
【図２】
2019053527.tif 000004
【図３】
2019053527.tif 000005
【図４】
2019053527.tif 000006
【図５】
2019053527.tif 000007
【図６】
2019053527.tif 000008
【図７】
2019053527.tif 000009
【図８】
2019053527.tif 000010
【図９】
2019053527.tif 000011
【図１０】
2019053527.tif 000012
【図１１】
2019053527.tif 000013
【図１２】
2019053527.tif 000014
【図１３】
2019053527.tif 000015