(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-02-24
(45)【発行日】2022-03-04
(54)【発明の名称】搬送システム、搬送装置、計算機、学習方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20220225BHJP
B66F 9/24 20060101ALI20220225BHJP
【FI】
G06T7/00 350B
B66F9/24 P
(21)【出願番号】P 2018246847
(22)【出願日】2018-12-28
【審査請求日】2021-02-22
(73)【特許権者】
【識別番号】000183222
【氏名又は名称】住友ナコ フォ-クリフト株式会社
(73)【特許権者】
【識別番号】305060567
【氏名又は名称】国立大学法人富山大学
(74)【代理人】
【識別番号】100105924
【氏名又は名称】森下 賢樹
(74)【代理人】
【識別番号】100116274
【氏名又は名称】富所 輝観夫
(72)【発明者】
【氏名】日南 敦史
(72)【発明者】
【氏名】鈴木 雄士
(72)【発明者】
【氏名】寺林 賢司
(72)【発明者】
【氏名】笹木 亮
【審査官】粕谷 満成
(56)【参考文献】
【文献】特開2003-34496(JP,A)
【文献】特開2020-040811(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
B66F 9/24
(57)【特許請求の範囲】
【請求項1】
特定部位を有するパレットと、
学習時において、前記パレットの所定位置に取り付けられるマーカと、
(i)学習時においてアクティブとなり、前記パレットを撮影して第1画像データを生成する第1センサと、(ii)学習時および通常使用時においてアクティブとなり、前記パレットを撮像して第2画像データを生成する第2センサと、(iii)通常使用時においてアクティブとなり、前記第2画像データの中から前記パレットの前記特定部位を検出できるように機械学習によって構成される識別器と、を有する搬送装置と、
学習時において、前記第1画像データにもとづいて前記第2画像データの中から前記マーカの位置を検出し、前記第2画像データから、前記パレットの特定部位を含む部分を教師データとして切り出し、前記教師データを使用して機械学習を行い、前記識別器に必要な情報を生成するプロセッサを含む計算機と、
を備えることを特徴とする搬送システム。
【請求項2】
前記マーカは立体マーカであり、前記第1センサは測距センサであることを特徴とする請求項1に記載の搬送システム。
【請求項3】
前記マーカは平面マーカであり、前記第1センサはカメラであることを特徴とする請求項1に記載の搬送システム。
【請求項4】
前記第1センサと前記第2センサは同一のセンサであることを特徴とする請求項1から3のいずれかに記載の搬送システム。
【請求項5】
複数の前記マーカが、前記パレットの前記特定部位に対して対称な位置に取り付けられることを特徴とする請求項1から4のいずれかに記載の搬送システム。
【請求項6】
前記特定部位は、前記パレットのセンターであることを特徴とする請求項1から5のいずれかに記載の搬送システム。
【請求項7】
学習時において、前記プロセッサは、前記第2画像データから、前記特定部位を含まない範囲を、前記特定部位でない教師データとして切り出すことを特徴とする請求項1から6のいずれかに記載の搬送システム。
【請求項8】
学習の完了を通知する手段をさらに備えることを特徴とする請求項1から7のいずれかに記載の搬送システム。
【請求項9】
前記マーカは、前記パレットの姿勢を特定可能な態様で、前記パレットに取り付けられることを特徴とする請求項1から8のいずれかに記載の搬送システム。
【請求項10】
前記パレットの種類ごとに、異なるマーカが取り付けられることを特徴とする請求項1から9のいずれかに記載の搬送システム。
【請求項11】
学習時において、フォークの前記パレットの穴への挿入をトリガとして、それより前に前記第1センサ、前記第2センサにより撮影された前記第1画像データ、前記第2画像データを取り込むことを特徴とする請求項1から10のいずれかに記載の搬送システム。
【請求項12】
前記搬送装置は、前記学習時のモードと前記通常使用時のモードを切り替えるスイッチをさらに備えることを特徴とする請求項1から11のいずれかに記載の搬送システム。
【請求項13】
パレットを搬送する搬送装置であって、
学習時においてアクティブとなり、所定位置にマーカが取り付けられた前記パレットを撮影して第1画像データを生成する第1センサと、
学習時および通常使用時においてアクティブとなり、前記パレットを撮像して第2画像データを生成する第2センサと、
通常使用時においてアクティブとなり、前記第2画像データの中から前記パレットの特定部位を検出できるように機械学習によって構成される識別器と、
を備えることを特徴とする搬送装置。
【請求項14】
パレットを搬送する搬送装置の機械学習に使用される計算機であって、
前記搬送装置は、
学習時においてアクティブとなり、所定位置にマーカが取り付けられた前記パレットを撮影して第1画像データを生成する第1センサと、
学習時および通常使用時においてアクティブとなり、前記パレットを撮像して第2画像データを生成する第2センサと、
通常使用時においてアクティブとなり、前記第2画像データの中から前記パレットの特定部位を検出できるように機械学習によって構成される識別器と、
を備え、
前記計算機はプロセッサを備え、前記プロセッサは、
前記第1画像データにもとづいて前記第2画像データの中から前記マーカの位置を検出するステップと、
前記第2画像データから、前記パレットの特定部位を含む部分を教師データとして切り出すステップと、
前記教師データを使用して機械学習を行い、前記識別器に必要な情報を生成するステップと、
を実行することを特徴とする計算機。
【請求項15】
パレットを搬送する搬送装置の学習方法であって、
前記搬送装置に搭載される第1センサによって、所定位置にマーカが取り付けられた前記パレットを撮影して第1画像データを生成するステップと、
前記搬送装置に搭載される第2センサによって、前記パレットを撮像して第2画像データを生成するステップと、
前記第1画像データにもとづいて前記第2画像データの中から前記マーカの位置を検出するステップと、
前記第2画像データから、前記パレットの特定部位を含む部分を教師データとして切り出すステップと、
前記教師データを使用して機械学習を行い、前記第1画像データの中から前記特定部位を検出可能な識別器に必要な情報を生成するステップと、
を備えることを特徴とする学習方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パレットを搬送対象とする搬送装置に関する。
【背景技術】
【0002】
フォークリフトなどの搬送装置は、予め決められた形状を有するパレットを搬送対象とする。パレットには、穴(フォークポケット)が設けられており、搬送装置には、フォークポケットに挿入可能なフォークが設けられる。
【0003】
搬送装置のオペレータは、フォークの高さを調節し、ステアリング操作を行いながら搬送装置を走行させて、フォークポケットにフォークを挿入する必要がある。
【0004】
ところが不慣れなオペレータにとって、フォークを、うまくフォークポケットに挿入することは容易でない。もし、フォークがフォークポケット以外の場所に衝突すると、パレット上の荷物が崩れるかもしれない。またフォークポケットにフォークが挿入されたとしても、フォークポケットの内壁にフォークがぶつかると、パレットがずれたり、フォークに好ましくない応力が加わるおそれがある。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明者らは、フォークリフトに、パレットの特定箇所を検出可能な検出装置を搭載することを検討した。検出装置は、画像を取得するセンサと、センサの出力画像にもとづいて特定箇所を検出可能に構成された識別器(あるいは分類器ともいう)を備える。識別器は、予め取得した教師データあるいは学習データにもとづいて、機械学習によって構成される。教師データは、典型的には、特定部位を含む画像データである。識別器に、十分な識別力を獲得させるためには、撮影方向や撮影距離を変えて撮影した膨大な数の教師データが必要となる。
【0007】
センサが取得する画像は、周囲の環境光などの影響を大きく受ける。したがって教師データの取得は実際にフォークリフトが使用される環境下において取得することが好ましい。具体的には、フォークリフトの使用環境下で、サービスマンやユーザ(以下、人間という)がパレットの画像を多数撮影し、人間が、各画像の中から手作業で特定部位を指定し、教師データとして計算機に与える必要があるため、人間の労力が大きく、学習に必要なコストが非常に高くなることを意味する。
【0008】
またフォークリフトが搬送対象とするパレットの種類が多い場合、パレット毎に教師データを用意する必要があるため、学習に要するコストはさらに跳ね上がる。
【0009】
本発明は係る課題に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、学習に必要な労力や時間を削減可能な搬送システム、搬送装置、計算機、学習方法の提供にある。
【課題を解決するための手段】
【0010】
本発明のある態様の搬送システムは、パレット、マーカ、搬送装置、計算機を備える。パレットは、搬送装置による搬送対象であり、特定部位を有する。マーカは、学習時において、パレットの所定位置に取り付けられる。搬送装置は、(i)学習時においてアクティブとなり、パレットを撮影して第1画像データを生成する第1センサと、(ii)学習時および通常使用時においてアクティブとなり、パレットを撮像して第2画像データを生成する第2センサと、(iii)通常使用時においてアクティブとなり、第2画像データの中からパレットの特定部位を検出できるように機械学習によって構成される識別器と、を有する。計算機は、プロセッサを含み、プロセッサは、学習時において、第1画像データにもとづいて第2画像データの中からマーカの位置を検出し、第2画像データから、パレットの特定部位を含む部分を教師データとして切り出し、教師データを使用して機械学習を行い、識別器に必要な情報を生成する。
【0011】
学習時において、パレットには、特定部位を基準とする所定の位置に、マーカが取り付けられる。そしてマーカを取り付けた状態で、搬送装置を実際に運用しながら、教師データの生成に必要な多数の画像データセットを自動的に蓄積できる。そして蓄積された多数の画像データセットそれぞれについて、マーカを頼りにして特定部位を自動で検出でき、教師データの生成を自動化することができる。これにより、学習に必要な労力や時間を削減できる。
【0012】
マーカは立体マーカであり、第1センサは測距センサであってもよい。これにより、マーカの形状にもとづいて、マーカを検出でき、それを頼りに、特定部位の位置を検出できる。
【0013】
マーカは平面マーカであり、第1センサはカメラであってもよい。これによりマーカのパターンや形状にもとづいて、マーカを検出でき、それを頼りに、特定部位の位置を検出できる。
【0014】
第1センサと第2センサは同一のセンサであってもよい。この場合、ハードウェアのコストを下げることができる。また、第1画像と第2画像は兼用することができるため、データ容量を削減できる。
【0015】
第1センサと第2センサは異なるセンサであってもよい。この場合、マーカは、第1センサによって検出可能であるが、第2センサによっては検出不能であってもよく、この場合、マーカを、特定部位に直接取り付けてもよい。
【0016】
複数のマーカが、パレットの特定部位に対して対称な位置に取り付けられてもよい。これにより、複数のマーカの位置関係から、特定部位の位置を推定することができる。
【0017】
特定部位は、パレットのセンターであってもよい。パレットには、フォークポケット(穴)が設けられており、隣接するフォークポケットの境界には、桁が存在する。この桁は、パレットのセンターに位置するため、パレットのセンターを特定部位とすることで、フォークポケットの位置検出を容易化できる。
【0018】
学習時において、プロセッサは、第2画像データから、特定部位を含まない範囲を、特定部位でない教師データとして切り出してもよい。
【0019】
搬送システムは、学習の完了を通知する手段をさらに備えてもよい。
【0020】
マーカは、パレットの姿勢を特定可能な態様で、パレットに取り付けられてもよい。たとえばマーカは、特定の方向を示す形状を有してもよい。あるいは複数のマーカを、方向性を有するように配置してもよい。
【0021】
パレットの種類ごとに、異なるマーカが取り付けられてもよい。これにより、複数種類のパレットについて、教師データの生成に必要な画像データを同時に取得できる。
【0022】
学習時において、フォークのパレットの穴への挿入をトリガとして、それより前に第1センサ、第2センサにより撮影された第1画像データ、第2画像データを取り込んでもよい。フォークのパレットの穴への挿入は、(i)フォークの一部がパレットの穴の接触したこと、あるいは(ii)フォークが穴へ完全に挿入されたことなどを含む。「それより前」とは、第1画像データにマーカが写っており、第2画像データに特定部位が写っている程度に、時間的に過去を意味する。これにより、無駄な画像データが蓄積されるのを防止できる。
【0023】
搬送装置は、学習時のモードと通常使用時のモードを切り替えるスイッチをさらに備えてもよい。
【0024】
本発明の別の態様はパレットを搬送する搬送装置に関する。搬送装置は、学習時においてアクティブとなり、所定位置にマーカが取り付けられたパレットを撮影して第1画像データを生成する第1センサと、学習時および通常使用時においてアクティブとなり、パレットを撮像して第2画像データを生成する第2センサと、通常使用時においてアクティブとなり、第2画像データの中からパレットの特定部位を検出できるように機械学習によって構成される識別器と、を備える。
【0025】
本発明の別の態様は、パレットを搬送する搬送装置の機械学習に使用される計算機に関する。搬送装置は、学習時においてアクティブとなり、所定位置にマーカが取り付けられた前記パレットを撮影して第1画像データを生成する第1センサと、学習時および通常使用時においてアクティブとなり、前記パレットを撮像して第2画像データを生成する第2センサと、通常使用時においてアクティブとなり、第2画像データの中からパレットの特定部位を検出できるように機械学習によって構成される識別器と、を備える。計算機はプロセッサを備える。プロセッサは、第1画像データにもとづいて第2画像データの中からマーカの位置を検出するステップと、第2画像データから、パレットの特定部位を含む部分を教師データとして切り出すステップと、教師データを使用して機械学習を行い、識別器に必要な情報を生成するステップと、を実行する。
【0026】
なお、以上の構成要素の任意の組み合わせや本発明の構成要素や表現を、方法、装置、システムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【0027】
本発明によれば、学習に必要な労力や時間を削減できる。
【図面の簡単な説明】
【0028】
【
図1】搬送装置の一態様であるフォークリフトの外観図を示す斜視図である。
【
図2】フォークリフトの操縦席の一例を示す図である。
【
図3】
図3(a)~(h)は、フォークリフトが搬送対象とするパレットを示す図である。
【
図4】実施の形態に係る搬送システムのブロック図である。
【
図5】第1画像データと第2画像データにもとづく教師データの生成を説明する図である。
【
図7】
図7(a)~(c)は、立体マーカを示す図である。
【
図8】
図8(a)~(c)は、平面マーカを示す図である。
【発明を実施するための形態】
【0029】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。
【0030】
図1は、搬送装置の一態様であるフォークリフトの外観図を示す斜視図である。フォークリフト600は、車体(シャーシ)602、フォーク604、可動部(昇降体あるいはリフト)606、マスト608、車輪610、612を備える。マスト608は車体602の前方に設けられる。可動部606は、油圧アクチュエータ(
図1に不図示)などの動力源によって駆動され、マスト608に沿って昇降する。可動部606には、荷物を支持するためのフォーク604が取り付けられている。フォークリフト600は、2本のフォーク604が図示しないパレットの穴(フォークポケット)に挿入された状態で、パレットを搬送する。フォーク604の根元には、キャリッジスイッチ620、フォークスイッチ622が設けられる。キャリッジスイッチ620は、フォーク604がパレットの穴に奥まで挿入されると、パレットによって押される。フォークスイッチ622は、パレットをすくったときに押される。
【0031】
図2は、フォークリフトの操縦席700の一例を示す図である。操縦席700は、イグニッションスイッチ702、ステアリングホイール704、リフトレバー706、アクセルペダル708、ブレーキペダル710、ダッシュボード714、前後進レバー712を備える。
【0032】
イグニッションスイッチ702は、フォークリフト600の起動用のスイッチである。ステアリングホイール704は、フォークリフト600の操舵を行うための操作手段である。リフトレバー706は、可動部606を上下に移動させるための操作手段である。アクセルペダル708は、走行用の車輪の回転を制御する操作手段であり、オペレータが踏み込み量を調節することでフォークリフト600の走行が制御される。オペレータがブレーキペダル710を踏み込むと、ブレーキがかかる。前後進レバー712は、フォークリフト600の走行方向を、前進と後進で切りかえるためのレバーである。そのほか、図示しないインチングペダルが設けられてもよい。
【0033】
オペレータは、車体の位置制御に関して、ステアリングホイール704とアクセルペダル708、ブレーキペダル710を操作し、フォーク604の位置制御に関して、リフトレバー706を操作する必要がある。
【0034】
図3(a)~(h)は、フォークリフト600が搬送対象とするパレットを示す図である。パレット800は、上板806、穴802、桁804を有する。パレット800の形状は、JIS規格により定められるほか、目的や用途に応じて多種多様な形状のものが存在する。
図3(a)~(h)はそれぞれ、JIS規格でS2,SU2,DP4,R4,RW2,D2,DU2,D4と表記される。
図3(a)~(h)に示すように、一概にパレットといっても、さまざまな形状、構造が存在しており、不慣れなオペレータにとって、複数の操作入力手段(704,706,708,710,706)を正確に操作して、フォークポケットに正確にフォークを挿入することは容易でない。
【0035】
以下では、パレットの荷すくい動作を支援可能な構成について説明する。
図4は、実施の形態に係る搬送システムのブロック図である。
【0036】
搬送システム400は、搬送装置であるフォークリフト300、パレット410、マーカ420、計算機430を備える。
【0037】
フォークリフト300は、運転支援のために、パレット410の特定部位412の位置を検出可能な識別器310を備える。識別器310は、演算処理装置(CPU)やメモリを有するマイコンと、マイコンが実行するソフトウェアプログラムで構成することができる。
【0038】
識別器310は機械学習によって構成される。学習済みの識別器310を用いて、特定部位412の位置を特定する動作を、通常動作と称し、そのときの信号や処理の流れを実線で示す。また識別器310を機械学習するために必要なデータを収集し、また機械学習を行う処理を、学習と称し、そのときの信号や処理の流れを一点鎖線で示す。識別器310の形式やアルゴリズムは特に限定されないが、一実施例において、識別器310は、線形SVM(Support Vector Machine)とHOG(Histograms of Oriented Gradients)特徴量の組み合わせで構成される。線形SVMは、入力が、2クラスのいずれかに属するかを判定可能な識別器として広く用いられる。
【0039】
パレット410は、穴414に加えて特定部位412を有する。特定部位412は、フォークリフト300が穴414を検出する際の手がかりとすべき部位である。たとえば、特定部位412は、2つの穴414の中央に位置する桁でありうる。桁の位置を検出できれば、フォークリフト300は、パレット410の寸法から穴414の位置を計算することができる。
【0040】
初めに、識別器310が学習済みであるとして、通常動作を説明する。通常動作に関連して、フォークリフト300は、第2センサ304および識別器310を備える。第2センサ304は、車体の前方、たとえばフォークあるいは可動部に取り付けられており、通常動作時においてアクティブとなり、車両前方のパレット410を撮像して第2画像データIMG2を生成する。
【0041】
学習済みの識別器310は、通常使用時においてアクティブとなり、第2画像データIMG2の中からパレット410の特定部位412の位置を検出する。フォークリフト300は、特定部位412の位置情報を運転支援に活用する。運転支援の一例として、たとえばフォークリフト300は、特定部位412の位置から、穴414の位置を計算する。そしてディスプレイを用いて、視覚的にオペレータに穴414の位置を知らせる。あるいはフォークリフト300は、穴414と、現在のフォークの位置関係から、フォークを、穴に干渉無く挿入可能であるか判定することができる。
【0042】
続いて、学習について説明する。本実施の形態において、学習は、フォークリフト300が実際に使用される環境下で、実際に搬送対象とするパレットを利用して行われる。学習に関連して、搬送システム400は、マーカ420および計算機430を備える。学習時において、マーカ420は、複数のパレット410それぞれの所定位置に取り付けられる。所定位置とは、特定部位412を特定可能な位置をいう。
図4においてマーカ420を単なる円として示すが、その限りでなく、マーカ420は、他の部分と区別できるような形状、色、パターン、それらの任意の組み合わせを有するものとする。
【0043】
たとえば
図4に示すように、複数のマーカ420を、特定部位412を中心として対象な位置に取り付けてもよい。これにより、2個のマーカ420の中点が、特定部位412の位置を表す。
【0044】
2個のマーカ420を同一高さに取り付けるとよい。これにより、2個のマーカ420を結ぶ線にもとづいて、パレット410の傾き(すなわち姿勢)を検出できる。
【0045】
フォークリフト300は、学習に関連して、第1センサ302およびデータ取得部320を備える。
【0046】
第1センサ302およびデータ取得部320は、着脱可能であってもよく、学習時にのみフォークリフト300の車体に取り付けてもよい。この場合、第1センサ302とデータ取得部320をユニット化(モジュール化)してもよい。
【0047】
あるいは第1センサ302およびデータ取得部320の少なくとも一方を、フォークリフト300に固定的に取り付けてもよい。
【0048】
なお、第1センサ302は、必ずしも第2センサ304と別のハードウェアであることを意味するものではなく、後述するようにそれらは同一のセンサであり得、この場合、第1センサ、第2センサの名称は、単なる機能・用途の違いを表しているに過ぎない。
【0049】
フォークリフト300は、学習モードと通常動作モードが手動で切り替えるための操作手段を有してもよい。オペレータが学習モードにセットすると、フォークリフト300は、以下で説明する動作を開始する。
【0050】
第1センサ302は、学習時(学習モード)においてアクティブとなり、パレット410を撮影して第1画像データIMG1を生成する。第1センサ302は、マーカ420に対して感度を有しており、第1画像データIMG1には、マーカ420が写る。
【0051】
第2センサ304は、学習時においてもアクティブとなり、パレット410を撮像して第2画像データIMG2を生成する。第2センサ304は、マーカ420に対して感度を有してもよいし、有しなくてもよい。
【0052】
第1センサ302および第2センサ304による撮像あるいは画像の取り込みは、フォークリフト300が、マーカが取り付けられたパレット410に接近し、正対したときに自動で行うとよい。
【0053】
たとえば第1センサ302、第2センサ304によって常時撮影を行うようにし、フォーク604が穴414に挿入されたことをトリガとして、それより前の所定時間(たとえば数秒)の間に撮影された画像データ、あるいはそれより前に撮影された所定数枚の画像データを取り込むようにしてもよい。フォーク604が穴414に挿入されたことは、
図1のキャリッジスイッチ620やフォークスイッチ622にもとづいて検出することができる。
【0054】
あるいはフォーク604の先端付近にセンサ(スイッチ)を設け、フォーク先端がパレット410と接触したことをトリガーとして、それ以降の数秒の間に撮影された画像データを取り込んでもよい。あるいは操縦席に、学習時の撮影のトリガとなるシャッターボタンを設けてもよい。
【0055】
これらの処理により、マーカ420および特定部位412を含む画像データを集中的に蓄積することができ、それらが写っていない無駄な画像データを削減できる。
図4に戻る。
【0056】
画像取り込み(あるいは撮影)のトリガーは、フォークリフト300の動作にもとづいて発生してもよい。たとえば、所定時間(たとえば数秒間)にわたる連続したリフトアップおよび停車(もしくは微速走行)が発生した場合、その直前あるいは直後に、フォークリフト300とパレット410が正対している可能性が高い。
【0057】
かくしてデータ取得部320は、学習モードにおいて、第1画像データIMG1と第2画像データIMG2のセットを取得する。データ取得部320は、記録媒体を内蔵し、第1画像データIMG1と第2画像データIMG2のセットを蓄積してもよい。フォークリフト300は、十分なデータの蓄積をオペレータやサービスマンに知らせる通知手段330を備えてもよい。
【0058】
十分なデータが蓄積された後、データ取得部320から、それまでに取得したデータが読み出され、計算機430に入力される。計算機430への入力は、オペレータが手動で行ってもよい。
【0059】
あるいはデータ取得部320は、有線あるいは無線のインタフェースを含んでもよく、第1画像データIMG1と第2画像データIMG2を含むデータを、計算機430に自動で、あるいはマニュアルで送信可能に構成されてもよい。
【0060】
計算機430は、データ取得部320によって取得されたデータの処理に用いられる。計算機430は、ネットワーク経由で接続されるサーバであってもよいし、ローカルのコンピュータであってもよい。あるいは、計算機430の機能を、フォークリフト300に搭載してもよい。
【0061】
計算機430は、プロセッサやメモリを含み、メモリにロードされたプログラムを実行することにより、予め決められた処理を実行する。プロセッサは、学習時において以下の処理を実行する。
【0062】
(i)第1画像データIMG1にもとづいて、第2画像データIMG2の中からマーカ420の位置を検出する。
(ii)第2画像データIMG2から、パレット410の特定部位412を含む部分を教師データとして切り出す。この教師データには、「特定部位」というラベル(タグ)が付与される。
【0063】
なお計算機430のプロセッサは、以下の処理を行ってもよい。
(iv)第2画像データIMG2から、特定部位412を含まない範囲を、ランダムに、あるいはある規則にしたがって、教師データとして切り出す。こうして得られる教師データには、「特定部位でない」というラベルが付与される。
【0064】
図5は、第1画像データと第2画像データにもとづく教師データの生成を説明する図である。第1画像データIMG1には、マーカ420が写っている。画像処理によってマーカ420の位置が特定され、マーカ420の位置情報にもとづいて、特定部位412の位置(たとえば中心座標p(u,v))あるいはその範囲が特定される。
【0065】
そして第2画像データIMG2における特定部位412の中心座標p’あるいはその範囲が特定される。第1センサ302と第2センサ304が別々のセンサである場合、視差や画素数の差分が考慮される。
【0066】
第2画像データIMG2における特定部位412が検出されると、それを包含する矩形領域が、「特定部位」のラベル付きの教師データIMG3として切り出される。
【0067】
なお、第2センサ304がマーカ420に対して感度を有する場合、第2画像データIMG2に、マーカ420が写ることとなる。この場合には、矩形領域のサイズは、特定部位412を含むが、マーカ420を含まないサイズとする。なぜなら、教師データIMG3がマーカ420を含むと、マーカ420を考慮した学習が行われてしまい、マーカ420を取り外したときの識別率が低下するからである。
【0068】
また、特定部位412を包含しない矩形領域が、「特定部位でない」のラベル付きの教師データIMG4として切り出される。
【0069】
以上が教師データの生成処理である。計算機430のプロセッサは、さらに以下の処理を実行する。
(iii)教師データIMG3,IMG4を使用して機械学習を行い、識別器310に必要な情報を生成する。
生成された情報(パラメータ)は、識別器310に書き戻される。これにより識別器310は、学習済みとなり、通常動作が可能となる。
【0070】
以上が搬送システム400の構成および動作である。この搬送システム400によれば、搬送システム400にマーカ420を取り付けた状態で、フォークリフト300を実際に運用しながら、教師データの生成に必要な多数の画像データIMG1,IMG2のセットを自動的に蓄積できる。そして蓄積された多数の画像データセットそれぞれについて、マーカ420を頼りにして特定部位412を自動で検出でき、教師データIMG3,IMG4の生成を自動化することができる。これにより、人間の作業を大幅に減らすことができ、学習に必要な労力や時間を削減できる。
【0071】
以下、第1センサと第2センサの組み合わせについて、いくつかの実施例をもとに説明する。
【0072】
(実施例1)
実施例1において、第1センサ302と第2センサ304は、いずれも測距センサである。この場合、2つのセンサを1個減らしてもよい。つまり、第1センサ302を省略して、学習時には、第2センサ304の出力を、第1画像および第2画像として処理を行えばよい。
【0073】
測距センサとしては、ToFカメラ、LiDAR、ストラクチャードライト法を用いたセンサ、ステレオカメラなどを用いることができる。測距センサは、車両前方に位置する構造物や物品等の3次元点群データを含む測距データを生成する。測距データは、距離画像に変換される。
図6は、距離画像の一例を示す図である。距離画像とは、縦横に複数ピクセルを有する画像データであって、画素値が距離を表すデータをいう。なお、測距センサの出力が距離画像である場合、変換処理は不要である。
【0074】
この実施例1において、マーカ420は測距センサによって検出可能でなければならず、従って立体マーカが用いられる。
図7(a)~(c)は、立体マーカを示す図である。
図7(a)には半球体のマーカ420が示される。
図7(b)のマーカは半円柱であり、
図7(c)のマーカは四角錐である。マーカの形状はこれらに限定されず、その他、球体、多角柱体、多角錘体、円錐などを用いることができる。マーカ420は、パレット410が存在する環境において、周囲に存在しない形状を選ぶとよい。
【0075】
(実施例2)
実施例2において、第1センサ302は単眼カメラであり、第2センサ304は測距センサである。この場合、マーカ420は、単眼カメラにより撮影可能な平面マーカあるいは立体マーカである。
図8(a)~(c)は、平面マーカを示す図である。
図8(a)のマーカ420は、三角形である。マーカの形状はそのほか、多角形や円形、楕円形、星形、任意のアルファベットや文字、それらの組み合わせであってもよい。マーカ420は、パレット410が存在する環境において、周囲に存在しない形状等を選ぶとよい。平面マーカは、たとえば白黒のストライプの画像エッジをマーカとして利用するような態様も含む。
【0076】
マーカ420は、その形状に特徴を有してもよいし、その模様やパターンに特徴を有してもよく、コードを用いてもよい。
図8(b)のマーカ420は、バーコードである。そのほか、QRコード(登録商標)など他のコードを用いてもよい。
図8(c)は、模様付きのマーカを示す。
【0077】
第1センサ302がカラーカメラである場合、平面マーカは、色情報を含むことができる。
【0078】
マーカ420を平坦な2次元とすれば、第2センサ304はマーカ420に対して不感となる。このことは、第2画像データIMG2には、マーカ420が写らないことを意味する。つまり教師データIMG3の矩形領域は、マーカ420を含んでも構わない。さらに言えば、マーカ420を、直接、特定部位412の位置に取り付けることも可能であり、マーカ420の位置から、特定部位412の位置を探す処理を省略できる。
【0079】
(実施例3)
実施例3において、第1センサ302は測距センサであり、第2センサ304は単眼カメラである。この場合、マーカ420は、測距センサによって撮影可能な立体マーカである。
【0080】
マーカ420を透明とすれば、第2センサ304をマーカ420に対して不感とすることができる。このことは、第2画像データIMG2には、マーカ420が写らないことを意味する。つまり教師データIMG3の矩形領域は、マーカ420を含んでも構わない。さらに言えば、マーカ420を、直接、特定部位412の位置に取り付けることも可能であり、マーカ420の位置から、特定部位412の位置を探す処理を省略できる。
【0081】
(実施例4)
実施例4において、第1センサ302と第2センサ304は、いずれも単眼カメラである。この場合、2つのセンサを1個減らしてもよい。つまり、第1センサ302を省略して、学習時には、第2センサ304の出力を、第1画像および第2画像として処理を行えばよい。
【0082】
マーカ420は、平坦な平面マーカを選ぶことができる。マーカ420は、その形状に特徴を有してもよいし、その模様やパターンに特徴を有してもよく、パレット410が存在する環境において、周囲に存在しない形状等を選ぶとよい。第1センサ302がカラーカメラである場合、平面マーカは、色情報を含むことができる。
【0083】
以上、本発明を実施例にもとづいて説明した。本発明は上記実施形態に限定されず、種々の設計変更が可能であり、様々な変形例が可能であること、またそうした変形例も本発明の範囲にあることは、当業者に理解されるところである。以下、こうした変形例を説明する。
【0084】
(変形例1)
フォークリフト300の使用環境において、複数の種類のパレットが併用されるケースがある。このようなケースでは、複数種類のパレットそれぞれについて、特定部位を検出できるように識別器310を学習させる必要がある。そこで、パレットの種類ごとに、異なる種類のマーカを取り付け、第1画像データIMG1からマーカ420を検出するときに、マーカ420の種類を併せて判定する。そして、第2画像データIMG2から切り出された教師データIMG3に、マーカ420の種類に対応するパレットの種類をタグ付けしておく。これにより、識別器310は、複数の種類のパレットについて、特定部位を判定可能になるとともに、そのパレットの種類を特定できるようになる。
【0085】
(変形例2)
識別器310を多層のニューラルネットワークで構成し、深層学習を用いてもよい。
【0086】
(変形例3)
マーカとして、自らが発光するアクティブマーカを用いてもよい。
【0087】
実施の形態では、データ取得部320において、第1画像データIMG1および第2画像データIMG2の蓄積を行い、教師データの切り出しは、計算機430において行うこととしたがその限りでない。データ取得部320がプロセッサなどの演算手段を有する場合、教師データの切り出しは、データ取得部320において行ってもよい。
【0088】
(変形例5)
実施の形態では搬送装置としてフォークリフトを例に説明したが、本発明の適用はその限りでなく、ハンドリフト(ハンドパレット)やAGV(Automatic Guided Vehicle)、フォークローダー(フォーク付きのホイルローダー)など、パレットを取り扱うさまざまな搬送装置に適用することができる。
【符号の説明】
【0089】
600 フォークリフト
602 車体
604 フォーク
606 可動部
608 マスト
610,612 車輪
700 操縦席
702 イグニッションスイッチ
704 ステアリングホイール
706 リフトレバー
708 アクセルペダル
710 ブレーキペダル
712 前後進レバー
714 ダッシュボード
300 フォークリフト
302 第1センサ
304 第2センサ
310 識別器
320 データ取得部
800 パレット
802 穴
804 桁
400 搬送システム
410 パレット
412 特定部位
414 穴
420 マーカ
430 計算機
IMG1 第1画像データ
IMG2 第2画像データ
IMG3 教師データ
IMG4 教師データ