(57)【要約】【課題】複数種類の物品５から対象物５１を認識するまでに要する時間のばらつきが生じにくくすること。【解決手段】認識方法は、第１認識処理と、第２認識処理と、を含む。第１認識処理は、対象物５１を含む画像データから対象物５１の第１特徴を認識する。第２認識処理では、対象物５１となり得る複数種類の物品５の特徴に対応した複数の認識手段１２１が用意される。第２認識処理は、少なくとも第１認識処理において認識された第１特徴に応じて、複数の認識手段１２１から一の認識手段１２１を選択し、一の認識手段１２１により対象物５１の第２特徴を認識する。【選択図】図１
2020107142.tif 000002
【特許請求の範囲】
【請求項１】
対象物を含む画像データから前記対象物の第１特徴を認識する第１認識処理と、
前記対象物となり得る複数種類の物品の特徴に対応した複数の認識手段が用意され、少なくとも前記第１認識処理において認識された前記第１特徴に応じて、前記複数の認識手段から一の認識手段を選択し、前記一の認識手段により前記対象物の第２特徴を認識する第２認識処理と、を含む、
認識方法。
【請求項２】
前記第２特徴は、前記対象物の位置及び姿勢の少なくとも一方を含む、
請求項１記載の認識方法。
【請求項３】
前記第１特徴は、前記対象物の位置を含む、
請求項１又は２に記載の認識方法。
【請求項４】
前記第１認識処理及び前記第２認識処理は、いずれも前記対象物の位置を認識し、
前記対象物の位置を認識する精度は、前記第１認識処理よりも前記第２認識処理の方が高い、
請求項１〜３のいずれか１項に記載の認識方法。
【請求項５】
前記第２認識処理は、前記第１認識処理で用いられる前記画像データと同じ画像データを用いて、前記一の認識手段により前記対象物の前記第２特徴を認識する、
請求項１〜４のいずれか１項に記載の認識方法。
【請求項６】
前記第１認識処理は、前記対象物となり得る複数種類の物品の画像データを入力データとして機械学習することで得られる分類器を用いて、前記対象物の前記第１特徴を認識する、
請求項１〜５のいずれか１項に記載の認識方法。
【請求項７】
前記複数の認識手段の各々は、パターンマッチングに用いられるテンプレートである、
請求項１〜６のいずれか１項に記載の認識方法。
【請求項８】
前記複数の認識手段の各々は、前記対象物の前記第２特徴を認識するための認識アルゴリズムである、
請求項１〜６のいずれか１項に記載の認識方法。
【請求項９】
前記第２認識処理は、前記第１認識処理において認識された前記第１特徴に基づいて、前記画像データにおいて前記一の認識手段を適用する範囲を限定する、
請求項１〜８のいずれか１項に記載の認識方法。
【請求項１０】
対象物を含む画像データから前記対象物の第１特徴を認識する第１認識部と、
前記対象物となり得る複数種類の物品の特徴に対応した複数の認識手段が用意され、少なくとも前記第１認識部において認識された前記第１特徴に応じて、前記複数の認識手段から一の認識手段を選択し、前記一の認識手段により前記対象物の第２特徴を認識する第２認識部と、を備える、
認識システム。
【請求項１１】
請求項１〜９のいずれか１項に記載の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記対象物をピッキングするロボットを制御する、
ロボット制御方法。
【請求項１２】
前記対象物をピッキングするロボットを制御する制御部を備え、
前記制御部は、請求項１〜９のいずれか１項に記載の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記ロボットを制御する、
ロボット制御システム。
【請求項１３】
前記対象物をピッキングするロボットと、
前記ロボットを制御する制御部と、を備え、
前記制御部は、請求項１〜９のいずれか１項に記載の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記ロボットを制御する、
ロボットシステム。
【請求項１４】
１以上のプロセッサに、
請求項１〜９のいずれか１項に記載の認識方法を実行させるための、
認識プログラム。
【請求項１５】
１以上のプロセッサに、
請求項１１記載のロボット制御方法を実行させるための、
ロボット制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に認識方法、認識システム、ロボット制御方法、ロボット制御システム、ロボットシステム、認識プログラム、及びロボット制御プログラムに関する。より詳細には、本開示は、画像データから対象物を認識する認識方法、認識システム、ロボット制御方法、ロボット制御システム、ロボットシステム、認識プログラム、及びロボット制御プログラムに関する。
【背景技術】
【０００２】
特許文献１に記載のランダムピッキングシステムは、ロボットアームの先端に設けられたハンドにより、バラ積みされたワークを把持し取り出す装置である。ランダムピッキングシステムは、バラ積みされたワークを撮像する撮像装置と、バラ積みされたワークの画像データを基に、パターンマッチングを行って把持するワークを選出するワーク認識装置と、を含む。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１７０５６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載のランダムピッキングシステムでは、複数種類のワーク（物品）から特定のワーク（対象物）を認識する場合、複数種類のワークごとにパターンマッチングを行わなければならない。このため、ランダムピッキングシステムでは、複数種類のワークから特定のワークを認識する場合に、特定のワークを認識するまでに要する時間にばらつきが生じやすい、という問題があった。
【０００５】
本開示は、複数種類の物品から対象物を認識するまでに要する時間のばらつきが生じにくい認識方法、認識システム、ロボット制御方法、ロボット制御システム、ロボットシステム、認識プログラム、及びロボット制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本開示の一態様に係る認識方法は、第１認識処理と、第２認識処理と、を含む。前記第１認識処理は、対象物を含む画像データから前記対象物の第１特徴を認識する。前記第２認識処理では、前記対象物となり得る複数種類の物品の特徴に対応した複数の認識手段が用意される。前記第２認識処理は、少なくとも前記第１認識処理において認識された前記第１特徴に応じて、前記複数の認識手段から一の認識手段を選択し、前記一の認識手段により前記対象物の第２特徴を認識する。
【０００７】
本開示の一態様に係る認識システムは、第１認識部と、第２認識部と、を備える。前記第１認識部は、対象物を含む画像データから前記対象物の第１特徴を認識する。前記第２認識部では、前記対象物となり得る複数種類の物品の特徴に対応した複数の認識手段が用意される。前記第２認識部は、少なくとも前記第１認識部において認識された前記第１特徴に応じて、前記複数の認識手段から一の認識手段を選択し、前記一の認識手段により前記対象物の第２特徴を認識する。
【０００８】
本開示の一態様に係るロボット制御方法は、上記の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記対象物をピッキングするロボットを制御する。
【０００９】
本開示の一態様に係るロボット制御システムは、前記対象物をピッキングするロボットを制御する制御部を備える。前記制御部は、上記の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記ロボットを制御する。
【００１０】
本開示の一態様に係るロボットシステムは、上記の前記対象物をピッキングするロボットと、ロボットを制御する制御部と、を備える。前記制御部は、上記の認識方法により認識された前記対象物の前記第１特徴及び前記第２特徴に基づいて、前記ロボットを制御する。
【００１１】
本開示の一態様に係る認識プログラムは、１以上のプロセッサに、上記の認識方法を実行させるためのプログラムである。
【００１２】
本開示の一態様に係るロボット制御プログラムは、１以上のプロセッサに、上記のロボット制御方法を実行させるためのプログラムである。
【発明の効果】
【００１３】
本開示は、複数種類の物品から対象物を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【図面の簡単な説明】
【００１４】
【図１】図１は、本開示の一実施形態に係る読取方法を実行する際に用いられる認識システム、ロボット制御方法を実行する際に用いられるロボット制御システム、及びロボットシステムの構成を示す概要図である。
【図２】図２は、同上の認識システムが適用される複数種類の部品が収容された箱を撮像した画像データの一例を示す概要図である。
【図３】図３は、同上の認識システムの第１認識処理の一例の説明図である。
【図４】図４は、同上の認識システムの第２認識処理の一例の説明図である。
【図５】図５は、同上の認識システム及びロボット制御システムでの動作を示すフローチャートである。
【発明を実施するための形態】
【００１５】
（１）概要
本実施形態の認識方法を実行する際に用いられる認識システム１０は、図１に示すように、例えばロボット制御システム１００に適用される。ロボット制御システム１００は、対象物５１をピッキングするロボット（マニピュレータ）３を制御する制御部１３を備える。ロボット制御システム１００は、例えば工場又は物流センター等に導入され、人の作業をロボット３で代替する場合に用いられる。本開示でいう「対象物」は、複数種類の物品５のうち、ロボット３が取り扱う物品５のことをいう。対象物５１は、ロボット３による作業の進行にしたがって、時々刻々と変化する。例えば、基板７の組み立て工程においては、ロボット３が制御部１３から順次与えられる指令に応じた部品をピッキングして基板７に組み込む作業を行うので、対象物５１は、指令に応じて異なることになる。本開示でいう「基板に組み込む」とは、例えばリード部品の端子を基板７のスルーホールへ挿入したり、フラットケーブルのコネクタを基板７上のコネクタに接続したり等、部品を基板７に保持又は仮保持させることをいう。
【００１６】
本開示でいう複数種類の物品５の「種類」とは、例えば物品５の品種、物品５の形状、物品５のサイズ、物品５の模様、物品５における色彩の分布、又は物品５における輝度の分布等である。一例として、物品５が基板７に組み込む部品であれば、物品５の品種とは、コンデンサ、抵抗器、インダクタ、スイッチ、又はＩＣ（Integrated Circuit）チップ等の物品５の固有の機能により分類される区分である。つまり、「複数種類の物品」は、互いに品種が異なる複数の物品５を含む他に、同じ品種であって形状、サイズ、又は模様が互いに異なる複数の物品５を含み得る。本実施形態では、例えば２つの物品５が互いに同じコンデンサであっても、容量値が異なる場合には、２つの物品５の種類が互いに異なるとする。
【００１７】
本開示でいう「ピッキング」は、複数種類の物品５から対象物５１を選択して取り出す作業をいう。一例として、ロボット制御システム１００が物流センターに導入される場合には、ピッキングは、物流センターに置かれている複数種類の物品から搬送する対象物５１を選択して取り出す作業をいう。また、一例として、ロボット制御システム１００が基板７の組み立て工場に導入される場合には、ピッキングは、工場内にある複数種類の部品（物品５）が収容されている箱６から、基板７へ組み込む部品（対象物５１）を選択して取り出す作業をいう。
【００１８】
本実施形態の認識方法（認識システム１０）は、複数種類の物品５から対象物５１を認識するために用いられる。認識方法は、第１認識処理と、第２認識処理と、を含む。認識システム１０は、図１に示すように、第１認識部１１と、第２認識部１２と、を備えている。
【００１９】
第１認識処理（第１認識部１１）は、対象物５１を含む画像データＤ１から対象物５１の第１特徴を認識する。本実施形態では、画像データＤ１は、撮像部４（後述する）が箱６の上方から箱６を撮像することで得られる、箱６の２次元画像である。箱６には、対象物５１を含む複数種類の物品５が収容される。また、本実施形態では、対象物５１の第１特徴は、対象物５１の種類（つまり、対象物５１の品種、形状、サイズ、模様、対象物５１における色彩の分布、又は対象物５１における輝度の分布等）と、画像データＤ１における対象物５１の位置である。
【００２０】
第２認識処理（第２認識部１２）では、対象物５１となり得る複数種類の物品５の特徴に対応した複数の認識手段１２１が用意されている。本開示でいう「認識手段」は、例えばパターンマッチング、形状検出（一例として、コーナー検出、又はエッジ検出）等、対象物５１の特徴（ここでは、第２特徴）を認識するための認識アルゴリズムを含み得る。また、本開示でいう「認識手段」は、例えばパターンマッチング等の１つの認識アルゴリズムにて用いられる、対象物５１の特徴（ここでは、第２特徴）を認識するためのテンプレートＴ１を含み得る。
【００２１】
そして、第２認識処理（第２認識部１２）は、少なくとも第１認識処理（第１認識部１１）において認識された第１特徴に応じて、複数の認識手段１２１から一の認識手段１２１を選択し、一の認識手段１２１により対象物５１の第２特徴を認識する。本実施形態では、対象物５１の第２特徴は、画像データＤ１における対象物５１の姿勢（向きを含む）である。
【００２２】
つまり、第２認識処理（第２認識部１２）は、例えば対象物５１の種類に応じて、複数の認識アルゴリズムから一の認識アルゴリズムを選択する。そして、第２認識処理（第２認識部１２）は、選択した認識アルゴリズムにより対象物５１の第２特徴を認識する。また、第２認識処理（第２認識部１２）は、例えば対象物５１の種類に応じて、複数のテンプレートＴ１から一のテンプレートＴ１を選択する。そして、第２認識処理（第２認識部１２）は、選択したテンプレートＴ１を用いた認識アルゴリズム（例えば、パターンマッチング）により対象物５１の第２特徴を認識する。そして、ロボット制御システム１００の制御部１３は、上述の認識方法により認識された対象物５１の第１特徴及び第２特徴に基づいて、ロボット３を制御する。
【００２３】
上述のように、本実施形態では、第１認識処理（第１認識部１１）にて対象物５１の第１特徴を認識することから、第２認識処理（第２認識部１２）では第１特徴を踏まえて第２特徴のみを認識すればよい。このため、本実施形態では、第２認識処理のみで対象物５１の第１特徴及び第２特徴を認識する場合と比較して、対象物５１ごとに第２認識処理で要する時間がばらつきにくい。その結果、本実施形態では、複数種類の物品５から対象物５１を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【００２４】
（２）詳細
以下、本実施形態の認識システム１０及びロボット制御システム１００について図１及び図２を参照して詳しく説明する。本実施形態では、認識システム１０は、ロボット制御システム１００に組み込まれていることとして説明するが、ロボット制御システム１００とは別のシステムとして構成されていてもよい。また、本実施形態では、ロボット制御システム１００が基板７の組み立て工場に導入されていると仮定する。そして、本実施形態では、ロボット３は、基板７へ組み込む部品をピッキングすると仮定する。
【００２５】
また、本実施形態では、ロボット制御システム１００が１台のロボット３を制御すると仮定するが、ロボット制御システム１００は、複数台のロボット３を制御してもよい。そして、本実施形態では、認識システム１０は、複数種類の物品５が収容された１つの箱６から対象物５１を認識すると仮定するが、認識システム１０は、複数の箱６から対象物５１を認識してもよい。
【００２６】
（２．１）ロボット
まず、ロボット３について説明する。ロボット３は、図１に示すように、アーム３１と、ハンド３２と、撮像部４と、を備えている。本実施形態では、ロボット３は、工場内における所定の場所に固定されているが、例えばレール上を移動可能に構成されていたり、車輪により自律走行するように構成されていたりしてもよい。また、ロボット３は、ロボット制御システム１００の通信部２（後述する）との間で通信するための通信インタフェースを更に備えている。
【００２７】
アーム３１は、多関節のロボットアームであり、所定の範囲内を移動可能に構成されている。本実施形態では、所定の範囲には、少なくとも箱６から対象物５１を取り出すことが可能な領域と、基板７に対象物５１を組み込むことが可能な領域と、複数種類のハンド３２が収容されたハンド用の箱からハンド３２を取り出すことが可能な領域と、が含まれる。
【００２８】
ハンド３２は、アーム３１の先端に取り付けられており、対象物５１を挟み込むことにより、対象物５１を箱６から取り出すように構成されている。ハンド３２は、対象物５１を保持することが可能な態様であればよく、対象物５１を挟み込む態様の他に、例えば対象物５１をノズルにより吸着する態様であってもよい。本実施形態では、アーム３１の先端には、複数種類のハンド３２から選択された一のハンド３２を取り付けることが可能である。ロボット３は、制御部１３（後述する）からの指令に応じて、ハンド用の箱から一のハンド３２を選択して取り付ける作業を実行する。既にアーム３１の先端にハンド３２が取り付けられている場合は、ロボット３は、取り付けられているハンド３２と、指令に応じたハンド３２とを交換する作業を実行する。
【００２９】
撮像部４は、例えばＣＣＤ（Charge-Coupled Device）イメージセンサ等の固体撮像素子を有する。本実施形態では、撮像部４は、ロボット３のアーム３１の先端に取り付けられている。撮像部４は、制御部１３からの指令に応じて箱６の上方から箱６を撮像することにより、箱６に収容されている複数種類の物品５を撮像する。つまり、撮像部４は、少なくとも箱６の開口全体を撮像範囲とする。撮像部４で撮像されることで得られる画像データＤ１は、ロボット制御システム１００（及び認識システム１０）に送信される。
【００３０】
画像データＤ１の一例を図２に示す。図２に示すように、画像データＤ１は、箱６を上方から見た２次元画像である。図２では、画像データＤ１には、箱６を構成する壁（側壁）の画像が含まれているが、壁は含まれていなくてもよい。つまり、画像データＤ１には、少なくとも箱６の内側の領域全体（又は一部）が含まれていればよい。画像データＤ１には、箱６に収容された複数種類の物品５の画像が含まれている。図２に示す例では、複数種類の物品５には、コンデンサ、抵抗器、ＩＣチップ、又はスイッチ等が含まれている。また、図２に示す例では、複数種類の物品５には、同じコンデンサであるが、形状、サイズ、又は模様等が互いに異なるコンデンサが含まれている。複数種類の物品５は、いずれも制御部１３の指令に応じて、ロボット３がピッキングする対象物５１となり得る。
【００３１】
（２．２）ロボット制御システム及び認識システム
次に、ロボット制御システム１００（及び認識システム１０）について説明する。本実施形態では、ロボット制御システム１００は、ロボット３の設置場所から離れた遠隔地にあるサーバにより実現されている。本実施形態では、ロボット制御システム１００は工場内にあるが、工場外にあってもよい。ロボット制御システム１００は、図１に示すように、メインコンピュータ１と、通信部２と、を備えている。本実施形態では、通信部２はロボット制御システム１００（及び認識システム１０）の構成要素に含まれることとするが、通信部２は、ロボット制御システム１００（及び認識システム１０）の構成要素に含まれていなくてもよい。
【００３２】
メインコンピュータ１は、ハードウェアとしての１以上のプロセッサ及びメモリを主構成とするコンピュータシステムである。このメインコンピュータ１では、メモリに記録されたプログラムを１以上のプロセッサで実行することによって、種々の機能が実現される。プログラムは、メインコンピュータ１のメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能な光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。
【００３３】
メインコンピュータ１は、第１認識部１１と、第２認識部１２と、制御部１３と、を有している。具体的には、メインコンピュータ１は、１以上のプロセッサにより所定のプログラムを実行することで、第１認識部１１、第２認識部１２、及び制御部１３の各々の機能を実現する。
【００３４】
第１認識部１１は、対象物５１を含む画像データＤ１から対象物５１の第１特徴を認識する第１認識処理を実行する。本実施形態では、第１認識処理（第１認識部１１）は、対象物５１の第１特徴として、対象物５１の種類と、画像データＤ１における対象物５１の位置と、を認識している。つまり、本実施形態では、対象物５１の第１特徴は、対象物５１の位置を含んでいる。そして、本実施形態では、第１認識処理は、分類器を用いて、対象物５１の第１特徴を認識している。分類器は、対象物５１となり得る複数種類の物品５の画像データを入力データとして機械学習することで得られる。分類器は、例えばＳＶＭ（Support Vector Machine）等の線形分類器の他、ニューラルネットワークを用いた分類器、又は多層ニューラルネットワークを用いた深層学習（ディープラーニング）により生成される分類器を含み得る。
【００３５】
本実施形態では、第１認識部１１は、学習済みのニューラルネットワークを用いた分類器を有している。学習済みのニューラルネットワークは、例えばＣＮＮ（Convolutional Neural Network：畳み込みニューラルネットワーク）、又はＢＮＮ（Bayesian Neural Network：ベイズニューラルネットワーク）等を含み得る。第１認識部１１は、ＡＳＩＣ（Application Specific Integrated Circuit）又はＦＰＧＡ（Field-Programmable Gate Array）等の集積回路に、学習済みのニューラルネットワークを実装することで実現されている。
【００３６】
ここで、認識システム１０の使用前において、機械学習により、第１認識処理（第１認識部１１）で用いられる分類器を生成する学習フェーズについて説明する。学習フェーズにおける機械学習は、例えば学習用のセンターで実行される。学習用のセンターでは、１以上のプロセッサを用いて、第１認識処理で用いるニューラルネットワークの機械学習を行う。機械学習を行うに当たり、ニューラルネットワークの重み付け係数は、初期化されている。ここでいう「プロセッサ」は、例えばＣＰＵ（Central Processing Unit）及びＧＰＵ（Graphics Processing Unit）等の汎用のプロセッサの他に、ニューラルネットワークでの演算に特化した専用のプロセッサを含み得る。
【００３７】
ニューラルネットワークの機械学習は、学習用データセットを用いて行われる。本開示でいう「学習用データセット」は、ニューラルネットワークの入力層に入力される学習用の画像（以下、単に「学習用画像」という）と、学習用画像に対応する教師データとの組み合わせを１つの学習用データとした、複数の学習用データの集合である。学習用画像は、物品５が写った画像である。なお、画像における物品５の位置、大きさ、及び角度を変更した多数の学習用画像を、物品５ごとに用意するのが好ましい。学習用データセットには、認識システム１０（及びロボット制御システム１００）が取り扱う全ての種類の物品５についての学習用データが含まれる。また、学習用データにおいて、教師データは、学習用画像に写っている物品５が分類されるカテゴリの情報である。本実施形態では、カテゴリの情報は、物品５の種類である。
【００３８】
１以上のプロセッサは、複数の学習用データの各々について、ニューラルネットワークの入力層に学習用画像を入力して演算を実行する。そして、１以上のプロセッサは、ニューラルネットワークの出力層の複数のニューロンの出力値と、教師データとを用いて、バックプロパゲーション（誤差逆伝播法）処理を実行する。ここで、出力層の複数のニューロンは、それぞれ複数のカテゴリに対応している。バックプロパゲーション処理においては、１以上のプロセッサは、出力層の複数のニューロンのうち、教師データと対応するニューロンの出力値の最大化を図るように、ニューラルネットワークの重み付け係数を更新する。１以上のプロセッサは、全ての学習用データについてバックプロパゲーション処理を実行することにより、ニューラルネットワークの重み付け係数の最適化を図る。これにより、ニューラルネットワークの学習が完了する。
【００３９】
第１認識処理（第１認識部１１）による処理結果の一例を視覚的に表現した画像データＤ１を図３に示す。図３では、箱６に収容されている複数種類の物品５のうち、箱６の開口から視認し得る物品５の一部を図示している。したがって、実際には、箱６には、図３に示す物品５以外の多数の物品５が積み重なった状態で収容され得る。
【００４０】
図３に示すように、画像データＤ１に含まれる複数の物品５のうち第１認識処理により認識された１以上の物品５には、物品５の種類を表すラベルＡ１が付される。つまり、第１認識部１１は、第１認識処理により認識された１以上の物品５については、物品５の種類について認識していることから、ラベルＡ１を付すという処理が可能である。また、図３に示すように、第１認識処理により認識された１以上の物品５は、枠（バウンディングボックス：bounding box）Ｂ１で囲まれる。つまり、第１認識部１１は、第１認識処理により認識された１以上の物品５については、画像データＤ１における位置（座標）をも認識していることから、枠Ｂ１で囲むという処理が可能である。
【００４１】
第２認識部１２では、対象物５１となり得る複数種類の物品５の特徴に対応した複数の認識手段１２１が用意されている。これら複数の認識手段１２１は、例えばメインコンピュータ１のメモリにあらかじめ記憶されている。そして、第２認識部１２は、少なくとも第１認識処理（第１認識部１１）において認識された第１特徴に応じて、複数の認識手段１２１から一の認識手段１２１を選択し、一の認識手段１２１により対象物５１の第２特徴を認識する第２認識処理を実行する。本実施形態では、第２認識処理（第２認識部１２）は、対象物５１の第２特徴として、画像データＤ１における対象物５１の位置と、画像データＤ１における対象物５１の姿勢（向きを含む）と、を認識している。つまり、本実施形態では、対象物５１の第２特徴は、対象物５１の位置及び姿勢の少なくとも一方を含んでいる。
【００４２】
また、本実施形態では、第２認識部１２は、第１認識処理で認識された対象物５１の種類に応じて、複数のテンプレートＴ１から対象物５１に対応するテンプレートＴ１を選択し、選択したテンプレートＴ１を用いてパターンマッチングを実行する。つまり、本実施形態では、複数の認識手段１２１の各々は、パターンマッチングに用いられるテンプレートＴ１である。本実施形態では、テンプレートＴ１は、箱６を上方から見た場合の物品５の２次元画像であって、画像データＤ１と比較する際に用いられる。
【００４３】
第２認識処理（第２認識部１２）は、第１認識処理（第１認識部１１）で認識された１以上の物品５のうち、制御部１３からの指令に応じた対象物５１のある領域にテンプレートＴ１を適用することで、パターンマッチングを行う。具体的には、第２認識処理は、画像データＤ１における対象物５１のある領域内にて、テンプレートＴ１の移動及び回転を繰り返すことにより、テンプレートＴ１と一致する画素の集合を探索する。つまり、本実施形態では、第２認識処理（第２認識部１２）は、第１認識処理（第１認識部１１）において認識された第１特徴に基づいて、画像データＤ１において一の認識手段１２１（ここでは、テンプレートＴ１）を適用する範囲を限定している。ここでいう「範囲」は、一例として、対象物５１を囲む枠Ｂ１である。
【００４４】
本実施形態では、図４に示すように、テンプレートＴ１は、複数のサブテンプレートＴ１１により構成されている。複数のサブテンプレートＴ１１は、それぞれ対象物５１の互いに異なる特徴点を含む画像である。対象物５１の特徴点は、一例として、対象物５１の角等である。図４に示す例では、対象物５１であるコンデンサの特徴点は、コンデンサの頂部、及びコンデンサの一対の端子の先端である。第２認識処理（第２認識部１２）では、複数のサブテンプレートＴ１１の相対的な位置関係を崩さないようにして、テンプレートＴ１を移動又は回転させる。このように、本実施形態では、テンプレートＴ１は、対象物５１全体に対応する画素の集合ではなく、対象物５１の一部に対応する画素の集合で構成されている。もちろん、テンプレートＴ１は、対象物５１全体に対応する画素の集合で構成されていてもよい。
【００４５】
上述のように、本実施形態では、第１認識処理（第１認識部１１）及び第２認識処理（第２認識部１２）は、いずれも対象物５１の位置を認識している。そして、本実施形態では、第１認識処理にて画像データＤ１における対象物５１の大まかな位置を認識した後に、第２認識処理にて画像データＤ１における対象物５１のより正確な位置を認識している。つまり、本実施形態では、対象物５１の位置を認識する精度は、第１認識処理よりも第２認識処理の方が高くなっている。
【００４６】
また、本実施形態では、第１認識処理（第１認識部１１）及び第２認識処理（第２認識部１２）は、いずれも第１認識処理を実行する前に撮像部４で撮像することで得られた画像データＤ１を用いている。つまり、本実施形態では、第２認識処理は、第１認識処理で用いられる画像データＤ１と同じ画像データＤ１を用いて、一の認識手段１２１により対象物５１の第２特徴を認識する。
【００４７】
制御部１３は、ロボット３を制御するための指令を、通信部２を介してロボット３に与えることにより、ロボット３を制御する機能を有している。制御部１３は、一例として、メモリにあらかじめ記憶されている基板７の組み立て工程のスケジュールにしたがって、ロボット３に指定した対象物５１をピッキングさせる指令と、ロボット３にピッキングした対象物５１を基板７に組み込ませる指令と、を生成する。なお、制御部１３は、基板７の組み立て工程を管理する上位システムと通信することにより、上位システムからの指令に応じて、ロボット３を制御するための指令を生成し、生成した指令をロボット３に与えてもよい。また、制御部１３は、撮像部４を制御することにより、撮像部４に箱６を撮像させる機能を有している。
【００４８】
通信部２は、例えば無線通信モジュールを含んでいる。通信部２は、無線通信モジュールにより、例えば赤外線又は可視光等の光を媒体とする光無線通信、又は電波を媒体とする無線通信にて、無線ＬＡＮ（Local Area Network）等のネットワークを介してロボット３の通信インタフェースと通信する。通信部２は、例えばルータ等の通信機器を介してネットワークに接続されてもよい。
【００４９】
（３）動作
以下、本実施形態の認識システム１０及びロボット制御システム１００の動作の一例について、図５を用いて説明する。以下の説明では、認識システム１０は、ロボット制御システム１００の制御部１３から、ロボット３によるピッキングの対象物５１を指定する指令をあらかじめ受け取っていると仮定する。なお、ピッキングの対象物５１の順番は、あらかじめ決められていないと仮定する。つまり、指令では、全てのピッキングの対象物５１が指定されている。そして、ロボット３は、指定された全てのピッキングの対象物５１のうち、ピッキングしやすい位置にある一の対象物５１から順次ピッキングする。
【００５０】
まず、制御部１３は、ロボット３のアーム３１の先端が箱６の上方に位置するように、ロボット３を制御する。そして、制御部１３は、撮像部４を制御することにより、箱６に収容されている複数種類の物品５を撮像する（Ｓ１）。撮像部４で撮像されることで得られる画像データＤ１は、ロボット３の通信インタフェースを介して認識システム１０及びロボット制御システム１００に送信される。
【００５１】
画像データＤ１を取得すると、第１認識部１１は、画像データＤ１を分類器に入力することにより、第１認識処理を実行する（Ｓ２）。これにより、第１認識部１１は、画像データＤ１に含まれる複数種類の物品５のうち１以上の物品５の第１特徴（ここでは、物品５の種類）を認識する。言い換えれば、第１認識部１１は、画像データＤ１に含まれる対象物５１の第１特徴を認識する（Ｓ３）。第１認識部１１での処理結果は、第２認識部１２に与えられる。
【００５２】
第１認識部１１での処理結果を受けると、第２認識部１２は、第２認識処理を実行する（Ｓ４）。まず、第２認識処理において、第２認識部１２は、第１認識部１１で認識された対象物５１の第１特徴に基づいて、複数のテンプレートＴ１（認識手段１２１）から一のテンプレートＴ１を選択する（Ｓ５）。ここで選択されるテンプレートＴ１は、第１認識部１１で認識された対象物５１の種類に対応するテンプレートＴ１である。なお、第１認識部１１で複数の対象物５１が認識された場合、第２認識部１２は、複数の対象物５１のうち、ロボット３がピッキングしやすい位置にある対象物５１の種類に対応するテンプレートＴ１を選択することになる。
【００５３】
次に、第２認識処理において、第２認識部１２は、画像データＤ１に対して選択したテンプレートＴ１を適用することにより、パターンマッチングを行う。既に述べたように、本実施形態では、第１認識処理において画像データＤ１での対象物５１の位置をある程度認識しているので、第２認識部１２は、対象物５１の位置を含む範囲（例えば、図３で示す枠Ｂ１）でパターンマッチングを行う。これにより、第２認識部１２は、対象物５１の第２特徴（ここでは、対象物５１の位置及び姿勢）を認識する（Ｓ６）。第１認識部１１での処理結果、及び第２認識部１２での処理結果は、制御部１３に与えられる。
【００５４】
そして、制御部１３は、第１認識部１１での処理結果、及び第２認識部１２での処理結果に基づいて、ロボット３を制御することにより、ロボット３に箱６から対象物５１をピッキングさせる（Ｓ７）。ここで、第１認識処理及び第２認識処理により、対象物５１の種類、対象物５１の位置、及び対象物５１の姿勢等を認識しているので、制御部１３は、認識した情報に基づいてロボット３のアーム３１及びハンド３２を制御する。一例として、制御部１３は、対象物５１に応じたハンド３２を選択したり、対象物５１を挟み込むことが可能な位置までハンド３２を移動及び回転させたりする。
【００５５】
その後、制御部１３は、対象物５１をピッキングした状態のハンド３２が基板７の上方に位置するように、ロボット３を制御する。そして、制御部１３は、ロボット３を制御することにより、対象物５１を基板７の対応する部位へ組み込ませる（Ｓ８）。以降、ロボット３によるピッキングの対象物５１ごとに上記のＳ１〜Ｓ８の処理を繰り返す。
【００５６】
上述のように、本実施形態では、第１認識処理（第１認識部１１）にて対象物５１の第１特徴を認識することから、第２認識処理（第２認識部１２）では第１特徴を踏まえて第２特徴のみを認識すればよい。このため、本実施形態では、第２認識処理のみで対象物５１の第１特徴及び第２特徴を認識する場合と比較して、対象物５１ごとに第２認識処理で要する時間がばらつきにくい。その結果、本実施形態では、複数種類の物品５から対象物５１を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【００５７】
以下、比較例の認識方法との比較を交えて、上記の利点について説明する。比較例の認識方法は、第２認識処理（ここでは、パターンマッチング）のみで対象物５１の第１特徴及び第２特徴を認識する点で、本実施形態の認識方法と相違する。比較例の認識方法では、複数のテンプレートのうちの１つのテンプレートを用いて、画像データＤ１における対象物５１の位置及び姿勢の認識を試みる。この方法では、例えば画像データＤ１の四隅のうちの１つの隅を始点として、テンプレートと一致する画素の集合が見つかるまで、テンプレートの移動及び回転を繰り返す処理（以下、「探索処理」という）を実行する。テンプレートと一致する画素の集合が見つからない場合は、テンプレートを変更して探索処理を繰り返す。そして、比較例の認識方法では、テンプレートの変更を繰り返して対象物５１に対応するテンプレートが見つかるまでに要する時間、及びテンプレートと一致する画素の集合が見つかるまでに要する時間が対象物５１ごとに異なってくる。つまり、比較例の認識方法では、複数種類の物品５から対象物５１を認識するまでに要する時間のばらつきが生じやすい、という問題がある。
【００５８】
一方、本実施形態の認識方法では、まず第１認識処理（第１認識部１１）にて対象物５１の第１特徴（ここでは、対象物５１の種類）を認識する。これにより、第２認識処理（第２認識部１２）は、探索処理に用いるテンプレートＴ１として、対象物５１の種類に対応するテンプレートＴ１を選択することが可能である。そして、第２認識処理では、このテンプレートＴ１を用いて探索処理を実行することで、テンプレートＴ１に一致する画素の集合を見つけることが可能である。つまり、本実施形態では、第１認識処理を経ることで、１回の探索処理で対象物５１の第２特徴を認識することが可能である。このため、本実施形態では、第２認識処理で要する時間が、テンプレートＴ１と一致する画素の集合が見つかるまでに要する時間に相当することになるので、比較例の認識方法と比較して、対象物５１ごとの第２認識処理に要する時間のばらつきが生じにくい。また、第１認識処理に要する時間は、画像データＤ１全体に対する画像処理に要する時間に相当するため、対象物５１ごとにばらつきは殆ど生じない。その結果、本実施形態では、複数種類の物品５から対象物５１を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【００５９】
さらに、本実施形態では、第１認識処理にて対象物５１の第１特徴として対象物５１の位置を認識することから、第２認識処理にて一の認識手段１２１（ここでは、対象物５１に対応するテンプレートＴ１）を適用する範囲を限定することが可能である。このため、本実施形態では、第２認識処理のみで対象物５１の第１特徴及び第２特徴を認識する場合と比較して、第２認識処理で要する時間の短縮を図りやすい、という利点がある。
【００６０】
なお、第１認識処理（第１認識部１１）のみで対象物５１の第１特徴及び第２特徴を認識する態様も考えられる。しかしながら、この態様では、画像データＤ１において対象物５１がどの位置にあるかまでは認識可能であるが、実際の対象物５１の位置とのずれが生じ得る。このため、この態様では、本実施形態のように対象物５１を基板７へ組み込む作業においては、微小な部品である対象物５１をピッキングするのに十分な精度を得られない可能性がある。
【００６１】
そこで、本実施形態の認識方法では、第１認識処理に加えて、第１認識処理よりも対象物５１の位置の認識精度が高い第２認識処理を実行している。これにより、本実施形態では、第１認識処理のみで対象物５１の第１特徴及び第２特徴を認識する態様と比較して、画像データＤ１における対象物５１の位置の認識精度を向上することができる。その結果、本実施形態の認識方法は、対象物５１が微小な部品である場合にも、対象物５１をピッキングするのに十分な精度を得やすい、という利点がある。
【００６２】
（４）変形例
上述の実施形態は、本開示の様々な実施形態の一つに過ぎない。上述の実施形態は、本開示の目的を達成できれば、設計等に応じて種々の変更が可能である。また、認識システム１０と同様の機能は、（コンピュータ）プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。また、ロボット制御システム１００と同様の機能は、ロボット制御方法、（コンピュータ）プログラム、又はプログラムを記録した非一時的記録媒体等で具現化されてもよい。
【００６３】
一態様に係るロボット制御方法は、上述の認識方法により認識された対象物５１の第１特徴及び第２特徴に基づいて、対象物５１をピッキングするロボット３を制御する。
【００６４】
また、一態様に係る認識プログラムは、１以上のプロセッサに、上述の認識方法を実行させるためのプログラムである。
【００６５】
また、一態様に係るロボット制御プログラムは、１以上のプロセッサに、上述のロボット制御方法を実行させるためのプログラムである。
【００６６】
以下、上述の実施形態の変形例を列挙する。以下に説明する変形例は、上述の実施形態と適宜組み合わせて適用可能である。
【００６７】
本開示における認識システム１０（又はロボット制御システム１００）は、例えば、メインコンピュータ１等に、コンピュータシステムを含んでいる。コンピュータシステムは、ハードウェアとしてのプロセッサ及びメモリを主構成とする。コンピュータシステムのメモリに記録されたプログラムをプロセッサが実行することによって、本開示における認識システム１０（又はロボット制御システム１００）としての機能が実現される。プログラムは、コンピュータシステムのメモリに予め記録されてもよく、電気通信回線を通じて提供されてもよく、コンピュータシステムで読み取り可能なメモリカード、光学ディスク、ハードディスクドライブ等の非一時的記録媒体に記録されて提供されてもよい。コンピュータシステムのプロセッサは、半導体集積回路（ＩＣ）又は大規模集積回路（ＬＳＩ）を含む１ないし複数の電子回路で構成される。ここでいうＩＣ又はＬＳＩ等の集積回路は、集積の度合いによって呼び方が異なっており、システムＬＳＩ、ＶＬＳＩ（Very Large Scale Integration）、又はＵＬＳＩ（Ultra Large Scale Integration）と呼ばれる集積回路を含む。さらに、ＬＳＩの製造後にプログラムされる、ＦＰＧＡ（Field-Programmable Gate Array）、又はＬＳＩ内部の接合関係の再構成若しくはＬＳＩ内部の回路区画の再構成が可能な論理デバイスについても、プロセッサとして採用することができる。複数の電子回路は、１つのチップに集約されていてもよいし、複数のチップに分散して設けられていてもよい。複数のチップは、１つの装置に集約されていてもよいし、複数の装置に分散して設けられていてもよい。ここでいうコンピュータシステムは、１以上のプロセッサ及び１以上のメモリを有するマイクロコントローラを含む。したがって、マイクロコントローラについても、半導体集積回路又は大規模集積回路を含む１ないし複数の電子回路で構成される。
【００６８】
また、認識システム１０（又はロボット制御システム１００）における複数の機能が、１つの筐体内に集約されていることは認識システム１０（又はロボット制御システム１００）に必須の構成ではない。認識システム１０（又はロボット制御システム１００）の構成要素は、複数の筐体に分散して設けられていてもよい。さらに、認識システム１０（又はロボット制御システム１００）の少なくとも一部の機能は、例えば、サーバ装置及びクラウド（クラウドコンピューティング）等によって実現されてもよい。
【００６９】
上述の実施形態において、通信部２は、例えば有線通信にて、有線ＬＡＮ等のネットワークを介してロボット３の通信インタフェースと通信してもよい。つまり、ロボット制御システム１００（及び認識システム１０）とロボット３との間の通信方式は、無線通信方式であってもよいし、有線通信方式であってもよい。
【００７０】
上述の実施形態では、認識システム１０及びロボット制御システム１００はサーバで実現されているが、これに限らず、認識システム１０及びロボット制御システム１００はロボット３に設けられていてもよい。この場合、通信部２は不要である。
【００７１】
上述の実施形態では、ロボット３は、アーム３１と、ハンド３２と、を備えているが、これに限らず、ハンド３２のみを備えていてもよい。つまり、ロボット制御システム１００は、ハンド３２をロボット３として制御する構成であってもよい。
【００７２】
上述の実施形態では、撮像部４はロボット３に設けられているが、これに限定する趣旨ではない。例えば、撮像部４は、工場内におけるロボット３以外の場所であって、平面視で箱６全体を撮像することができる位置に設置されてもよい。
【００７３】
上述の実施形態において、ロボット制御システム１００は、ロボット３をさらに備えたロボットシステムであってもよい。つまり、ロボットシステムは、対象物５１をピッキングするロボット３と、ロボット３を制御する制御部１３と、を備える。そして、制御部１３は、上述の認識方法により認識された対象物５１の第１特徴及び第２特徴に基づいて、ロボット３を制御する。
【００７４】
上述の実施形態において、第２認識処理（第２認識部１２）で用意される複数の認識手段１２１の各々は、対象物５１の第２特徴を認識するための認識アルゴリズムであってもよい。例えば、第２認識処理では、複数の認識手段１２１として、パターンマッチング及び形状検出（一例として、コーナー検出、又はエッジ検出）等の認識アルゴリズムが用意されていてもよい。そして、第２認識処理は、第１認識処理（第１認識部１１）で認識された対象物５１の第１特徴に応じて、パターンマッチングを認識手段１２１として用いたり、形状検出を認識手段１２１として用いたりしてもよい。
【００７５】
上述の実施形態において、第１認識処理（第１認識部１１）で用いられる画像データＤ１と、第２認識処理（第２認識部１２）で用いられる画像データＤ１とは、互いに異なっていてもよい。例えば、第２認識処理を実行する前に、ロボット３を制御することで、対象物５１が撮像範囲の中心に位置するように撮像部４に撮像させてもよい。この場合、第２認識処理で用いる画像データＤ１では、対象物５１が撮像範囲の周縁に位置しないことから、対象物５１の画像が歪みにくく、対象物５１の第２特徴を認識しやすくなる、という利点がある。
【００７６】
上述の実施形態において、第１認識処理（第１認識部１１）及び第２認識処理（第２認識部１２）のうちの一方のみで対象物５１の位置を認識してもよい。一例として、第１認識処理にて対象物５１の種類を認識し、第２認識処理にて対象物５１の位置を認識する態様であってもよい。
【００７７】
上述の実施形態において、例えば箱６の中に対象物５１が埋もれているために第１認識処理にて対象物５１を認識できない場合が想定される。このような場合、例えばロボット３のハンド３２により箱６の中身を撹拌し、撹拌後に再度、第１認識処理を実行してもよい。この態様では、第１認識処理において対象物５１を認識する精度を向上することができる、という利点がある。
【００７８】
上述の実施形態において、第１認識処理は、学習済みのニューラルネットワークを用いた分類器を用いて対象物５１の第１特徴を認識しているが、これに限定する趣旨ではない。例えば、第１認識処理は、画像データＤ１の各画素の輝度を閾値と比較することにより、対象物５１の第１特徴を認識してもよい。
【００７９】
上述の実施形態において、別情報を加味して第１認識処理及び第２認識処理を実行してもよい。別情報は、一例として、物品５が工場で生産される部品であれば、部品の生産時間帯等である。つまり、第１認識処理及び第２認識処理を実行する際に、別情報として部品の生産時間帯を参照することで、対象物５１となり得る物品５の種類を、この生産時間帯に生産される部品に絞ることが可能である。
【００８０】
上述の実施形態では、認識システム１０は、ロボット３がピッキングする対象物５１を複数種類の物品５から認識するために用いられているが、この用途に限定する趣旨ではない。例えば、認識システム１０は、ロボット３のピッキングした部品の取付先である対象物５１を、基板７上にある複数種類の物品５から認識するために用いられてもよい。具体例として、ロボット３がピッキングした部品がフラットケーブルであれば、認識システム１０は、フラットケーブルのコネクタの接続先であるコネクタ（対象物５１）を、基板７上にある複数種類の部品（物品５）から認識するために用いられてもよい。この場合、制御部１３は、基板７の上方から基板７を撮像するように撮像部４を制御することで、画像データＤ１を取得すればよい。
【００８１】
（まとめ）
以上述べたように、第１の態様に係る認識方法は、第１認識処理と、第２認識処理と、を含む。第１認識処理は、対象物（５１）を含む画像データ（Ｄ１）から対象物（５１）の第１特徴を認識する。第２認識処理では、対象物（５１）となり得る複数種類の物品（５）の特徴に対応した複数の認識手段（１２１）が用意される。第２認識処理は、少なくとも第１認識処理において認識された第１特徴に応じて、複数の認識手段（１２１）から一の認識手段（１２１）を選択し、一の認識手段（１２１）により対象物（５１）の第２特徴を認識する。
【００８２】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【００８３】
第２の態様に係る認識方法では、第１の態様において、第２特徴は、対象物（５１）の位置及び姿勢の少なくとも一方を含む。
【００８４】
この態様によれば、対象物（５１）がどのような物体であるかを認識するだけでなく、対象物（５１）がどのように配置されているかをも認識することができる、という利点がある。
【００８５】
第３の態様に係る認識方法では、第１又は第２の態様において、第１特徴は、対象物（５１）の位置を含む。
【００８６】
この態様によれば、第１認識処理にて認識された対象物（５１）の位置に絞って第２認識処理を実行することが可能になるので、第２認識処理に要する時間の短縮を図りやすい、という利点がある。
【００８７】
第４の態様に係る認識方法では、第１〜第３のいずれかの態様において、第１認識処理及び第２認識処理は、いずれも対象物（５１）の位置を認識する。対象物（５１）の位置を認識する精度は、第１認識処理よりも第２認識処理の方が高い。
【００８８】
この態様によれば、第１認識処理のみで対象物（５１）の位置を認識する場合と比較して、対象物（５１）の位置を認識する精度を向上しやすい、という利点がある。また、この態様によれば、第２認識処理のみで対象物（５１）の位置を認識する場合と比較して、第２認識処理に要する時間の短縮を図りやすい、という利点がある。
【００８９】
第５の態様に係る認識方法では、第１〜第４のいずれかの態様において、第２認識処理は、第１認識処理で用いられる画像データ（Ｄ１）と同じ画像データ（Ｄ１）を用いて、一の認識手段（１２１）により対象物（５１）の第２特徴を認識する。
【００９０】
この態様によれば、第１認識処理と第２認識処理とで互いに異なる画像データ（Ｄ１）を撮像して取得する場合と比較して、１回の撮像により画像データ（Ｄ１）を取得すれば済む。このため、この態様によれば、画像データ（Ｄ１）の取得に要する時間の短縮を図りやすい、という利点がある。
【００９１】
第６の態様に係る認識方法では、第１〜第５のいずれかの態様において、第１認識処理は、対象物（５１）となり得る複数種類の物品（５）の画像データを入力データとして機械学習することで得られる分類器を用いて、対象物（５１）の第１特徴を認識する。
【００９２】
この態様によれば、分類器を用いない場合と比較して、対象物（５１）の第１特徴を認識しやすい、という利点がある。
【００９３】
第７の態様に係る認識方法では、第１〜第６のいずれかの態様において、複数の認識手段（１２１）の各々は、パターンマッチングに用いられるテンプレート（Ｔ１）である。
【００９４】
この態様によれば、対象物（５１）に応じた適切なテンプレート（Ｔ１）を用いて対象物（５１）の第２特徴を認識することができるので、対象物（５１）の第２特徴を認識しやすくなる、という利点がある。
【００９５】
第８の態様に係る認識方法では、第１〜第６のいずれかの態様において、複数の認識手段（１２１）の各々は、対象物（５１）の第２特徴を認識するための認識アルゴリズムである。
【００９６】
この態様によれば、対象物（５１）に応じた適切な認識アルゴリズムを用いて対象物（５１）の第２特徴を認識することができるので、対象物（５１）の第２特徴を認識しやすくなる、という利点がある。
【００９７】
第９の態様に係る認識方法では、第１〜第８のいずれかの態様において、第２認識処理は、第１認識処理において認識された第１特徴に基づいて、画像データ（Ｄ１）において一の認識手段（１２１）を適用する範囲を限定する。
【００９８】
この態様によれば、画像データ（Ｄ１）の全体に対して一の認識手段（１２１）を適用する場合と比較して、第２認識処理に要する時間の短縮を図りやすい、という利点がある。
【００９９】
第１０の態様に係る認識システム（１０）は、第１認識部（１１）と、第２認識部（１２）と、を備える。第１認識部（１１）は、対象物（５１）を含む画像データ（Ｄ１）から対象物（５１）の第１特徴を認識する。第２認識部（１２）では、対象物（５１）となり得る複数種類の物品（５）の特徴に対応した複数の認識手段（１２１）が用意される。第２認識部（１２）は、少なくとも第１認識部（１１）において認識された第１特徴に応じて、複数の認識手段（１２１）から一の認識手段（１２１）を選択し、一の認識手段（１２１）により対象物（５１）の第２特徴を認識する。
【０１００】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１０１】
第１１の態様に係るロボット制御方法は、第１〜第９のいずれかの態様の認識方法により認識された対象物（５１）の第１特徴及び第２特徴に基づいて、対象物（５１）をピッキングするロボット（３）を制御する。
【０１０２】
この態様によれば、複数の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１０３】
第１２の態様に係るロボット制御システム（１００）は、対象物（５１）をピッキングするロボット（３）を制御する制御部（１３）を備える。制御部（１３）は、第１〜第９のいずれかの認識方法により認識された対象物（５１）の第１特徴及び第２特徴に基づいて、ロボット（３）を制御する。
【０１０４】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１０５】
第１３の態様に係るロボットシステムは、対象物（５１）をピッキングするロボット（３）と、ロボット（３）を制御する制御部（１３）と、を備える。制御部（１３）は、第１〜第９のいずれかの態様の認識方法により認識された対象物（５１）の第１特徴及び第２特徴に基づいて、ロボット（３）を制御する。
【０１０６】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１０７】
第１４の態様に係る認識プログラムは、１以上のプロセッサに、第１〜第９のいずれかの態様の認識方法を実行させるためのプログラムである。
【０１０８】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１０９】
第１５の態様に係るロボット制御プログラムは、１以上のプロセッサに、第１１の態様に係るロボット制御方法を実行させるためのプログラムである。
【０１１０】
この態様によれば、複数種類の物品（５）から対象物（５１）を認識するまでに要する時間のばらつきが生じにくい、という利点がある。
【０１１１】
第２〜第９の態様に係る方法については、認識方法に必須の方法ではなく、適宜省略可能である。
【符号の説明】
【０１１２】
１０  認識システム
１１  第１認識部
１２  第２認識部
１２１  認識手段
３  ロボット
５  物品
５１  対象物
１００  ロボット制御システム
Ｄ１  画像データ
Ｔ１  テンプレート
【図１】
2020107142.tif 000003
【図２】
2020107142.tif 000004
【図３】
2020107142.tif 000005
【図４】
2020107142.tif 000006
【図５】
2020107142.tif 000007