(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-13
(45)【発行日】2024-06-21
(54)【発明の名称】搬送装置の学習に使用する教師データの生成方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20240614BHJP
B66F 9/24 20060101ALI20240614BHJP
G06T 7/60 20170101ALI20240614BHJP
【FI】
G06T7/00 300F
B66F9/24 L
G06T7/60 150
(21)【出願番号】P 2021055228
(22)【出願日】2021-03-29
【審査請求日】2023-06-29
(73)【特許権者】
【識別番号】000183222
【氏名又は名称】住友ナコ フォ-クリフト株式会社
(73)【特許権者】
【識別番号】305060567
【氏名又は名称】国立大学法人富山大学
(74)【代理人】
【識別番号】100105924
【氏名又は名称】森下 賢樹
(74)【代理人】
【識別番号】100116274
【氏名又は名称】富所 輝観夫
(72)【発明者】
【氏名】日南 敦史
(72)【発明者】
【氏名】笹木 亮
(72)【発明者】
【氏名】寺林 賢司
(72)【発明者】
【氏名】浅野 良太
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2020-23397(JP,A)
【文献】特開2020-107174(JP,A)
【文献】特開2014-106543(JP,A)
【文献】米国特許出願公開第2020/0098127(US,A1)
【文献】独国特許出願公開第102019124809(DE,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
B66F 9/24
(57)【特許請求の範囲】
【請求項1】
パレットを搬送する搬送装置の学習に使用する教師データの生成方法であって、
前記搬送装置は、
光を照射して反射光を測定するアクティブ型の距離画像センサと、
(i)前記距離画像センサの出力にもとづいて画素値が距離を表す距離画像を取得可能であり、(ii)前記距離画像にもとづいて、パレットまたは前記パレットの特定部位である検出対象を特定できるように、前記教師データを利用して機械学習により構成された識別器を有する演算部と、
を備えるものであり、
前記生成方法は、
前記パレットの3次元モデルを生成するステップAと、
3次元の仮想空間中に前記パレットの3次元モデルを配置し、前記パレットを前記距離画像センサによって測定したときに得られるであろう仮想距離画像を生成するステップB1と、
前記距離画像センサが受光するであろう前記反射光の強度分布を示す輝度画像を生成するステップB2と、
前記輝度画像にもとづいて、前記仮想距離画像を修正するステップB3と、
修正後の前記仮想距離画像にもとづいた前記教師データを生成するステップCと、
を備えることを特徴とする生成方法。
【請求項2】
前記輝度画像は、計測対象による、拡散反射と鏡面反射を考慮して生成されることを特徴とする請求項1に記載の生成方法。
【請求項3】
前記ステップB3において、前記輝度画像の画素値にもとづいて、前記仮想距離画像の画素値に誤差を重畳することを特徴とする請求項1または2に記載の生成方法。
【請求項4】
前記ステップB3において、前記輝度画像の画素値にもとづいて、前記仮想距離画像の画素値を、欠損データに置換することを特徴とする請求項1から3のいずれかに記載の生成方法。
【請求項5】
パレットを搬送する搬送装置の学習に使用する教師データの生成方法であって、
前記搬送装置は、
光を照射して反射光を測定するアクティブ型の距離画像センサと、
(i)前記距離画像センサの出力にもとづいて画素値が距離を表す距離画像を取得可能であり、(ii)前記距離画像にもとづいて、パレットまたは前記パレットの特定部位である検出対象を特定できるように、前記教師データを利用して機械学習により構成された識別器を有する演算部と、
を備えるものであり、
前記生成方法は、
前記パレットの3次元モデルを生成するステップAと、
3次元の仮想空間中に前記パレットの3次元モデルを配置し、前記パレットを前記距離画像センサによって測定したときに得られるであろう仮想距離画像を生成するステップB1と、
前記仮想空間中に存在するエッジを示すエッジ画像を生成するステップB2と、
前記エッジ画像にもとづいて、前記仮想距離画像を修正するステップB3と、
修正後の前記仮想距離画像にもとづいた前記教師データを生成するステップCと、
を備えることを特徴とする生成方法。
【請求項6】
前記距離画像センサから物点までの距離z、観測方向θ、測定面の方向φと、前記距離画像の画素値の誤差との関係を定義するステップB4と、
前記仮想距離画像を、前記関係にもとづいて補正するステップB5と、
をさらに備えることを特徴とする請求項1から5のいずれかに記載の生成方法。
【請求項7】
前記関係は物点を含む表面の材質、および/または、色ごとに定義されることを特徴とする請求項6に記載の生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パレットを搬送対象とする搬送装置に関する。
【背景技術】
【0002】
フォークリフトなどの搬送装置は、予め決められた形状を有するパレットを搬送対象とする。パレットには、穴(フォークポケット)が設けられており、搬送装置には、フォークポケットに挿入可能なフォークが設けられる。
【0003】
搬送装置のオペレータは、フォークの高さを調節し、ステアリング操作を行いながら搬送装置を走行させて、フォークポケットにフォークを挿入する必要がある。
【0004】
ところが不慣れなオペレータにとって、フォークを、うまくフォークポケットに挿入することは容易でない。もし、フォークがフォークポケット以外の場所に衝突すると、パレット上の荷物が崩れるかもしれない。またフォークポケットにフォークが挿入されたとしても、フォークポケットの内壁にフォークがぶつかると、パレットがずれたり、フォークに好ましくない応力が加わるおそれがある。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明者らは、フォークリフトに、パレットの特定箇所を検出可能な検出装置を搭載することを検討した。検出装置は、画像を取得するセンサと、センサの出力画像にもとづいて特定箇所を検出可能に構成された識別器(あるいは分類器ともいう)を備える。識別器は、予め取得した教師データあるいは学習データにもとづいて、機械学習によって構成される。教師データは、典型的には、特定部位を含む画像データである。識別器に、十分な識別力を獲得させるためには、撮影方向や撮影距離を変えて撮影した膨大な数の教師データが必要となる。
【0007】
フォークリフトが搬送対象とするパレットの種類が多い場合、パレット毎に教師データを用意する必要があるため、学習に要するコストが跳ね上がる。特に、さまざまな種類のパレットについて、フォークリフトの使用環境下で、サービスマンやユーザ(以下、人間という)がパレットの画像を多数撮影し、教師データを生成することとすると、人間の労力が大きく、学習に必要なコストが非常に高くなることを意味する。
【0008】
本発明は係る課題に鑑みてなされたものであり、そのある態様の例示的な目的のひとつは、学習に必要な労力や時間を削減可能な技術の提供にある。
【課題を解決するための手段】
【0009】
本発明のある態様は、パレットを搬送する搬送装置の学習に使用する教師データの生成方法に関する。搬送装置は、光を照射して反射光を測定するアクティブ型の距離画像センサと、(i)距離画像センサの出力にもとづいて画素値が距離を表す距離画像を取得可能であり、(ii)距離画像にもとづいて、パレットまたはパレットの特定部位である検出対象を特定できるように、教師データを利用して機械学習により構成された識別器を有する演算部と、を備える。教師データの生成方法は、以下の処理を含む。
ステップA) パレットの3次元モデルを生成する。
ステップB1) 3次元の仮想空間中にパレットの3次元モデルを配置し、パレットを距離画像センサによって測定したときに得られるであろう仮想距離画像を生成する。
ステップB2) 距離画像センサが受光するであろう反射光の強度分布を示す輝度画像を生成する。
ステップB3) 輝度画像にもとづいて、仮想距離画像を修正する。
ステップC) 修正後の仮想距離画像にもとづいた教師データを生成する。
【0010】
この搬送装置は、TOF(Time Of Flight)センサ、LiDAR(Light Detection and Ranging)、ストラクチャドライトカメラなどの、アクティブ型の距離画像センサにより得られる3次元点群データを、2次元の距離画像にマッピングし、距離画像を入力とする識別器を構成することにより、パレットあるいはその部位の特定の精度を高めることができる。
【0011】
ここで、パレットの形状や材質は多岐にわたるところ、あらゆるパレットについて、あらゆる状況を想定して、パレットの実物を距離画像センサによって撮影し、識別器の学習に用いる教師データを用意することは容易ではない。この態様によれば、3次元モデルを活用することで教師データを効率的に生成でき、学習を効率化できる。
【0012】
本発明者らは、実際の距離画像センサによって生成される距離画像の精度は、距離画像センサの撮像素子/受光素子が受ける反射光の強度の影響を受けることを見いだした。そこで、ステップB2)において、仮想的な輝度画像を生成し、ステップB3)において、仮想距離画像に対して、輝度画像にもとづくノイズ(誤差)を重畳したり、あるいは仮想距離画像の一部の画素を欠損データと置換することにより、実際の距離画像センサが生成する距離画像に近い画像を生成することができる。
【0013】
輝度画像は、計測対象による、拡散反射と鏡面反射を考慮して生成されてもよい。
【0014】
ステップB3において、輝度画像の画素値にもとづいて、仮想距離画像の画素値に誤差を重畳してもよい。たとえば、輝度が極端に大きい領域あるいは輝度が極端に小さい領域は、輝度画像に画素値に応じた不確からしさを、仮想距離画像の画素値に重畳してもよい。
【0015】
誤差特性は、輝度画像の画素値と標準偏差の関係として定めてもよい。この場合、元の仮想距離画像の画素値を平均値および輝度画像の画素値にもとづく標準偏差を、乱数関数に与え、その結果得られる乱数を、補正後の仮想距離画像の画素値とすることができる。
【0016】
ステップB3において、輝度画像の画素値にもとづいて、仮想距離画像の画素値を、欠損データに置換してもよい。距離画像センサの種類によっては、それが生成する距離画像が、距離情報が得られなかったことを示す欠損データ(欠損値)を含む場合がある。本発明者らは、この欠損データが、物体のエッジにおいて頻繁に発生する傾向があることを認識した。また距離画像センサの撮像素子/受光素子に入射する反射光が弱すぎる箇所や反対に強すぎる箇所にも、欠損データが発生しうることを認識した。そこで、輝度画像を参照することで、欠損データが発生しうる箇所を推定し、仮想距離画像の画素値を、欠損データに置換することで、実際の距離画像に近い画像を生成できる。
【0017】
本開示の別の態様もまた、教師データの生成方法である。教師データの生成方法は、以下の処理を含む。
A) パレットの3次元モデルを生成する。
B1) 3次元の仮想空間中にパレットの3次元モデルを配置し、パレットを距離画像センサによって測定したときに得られるであろう仮想距離画像を生成する。
B2) 仮想空間中に存在するエッジを示すエッジ画像を生成する。
B3) エッジ画像にもとづいて、仮想距離画像を修正する。
C) 修正後の仮想距離画像にもとづいた教師データを生成する。
【0018】
欠損データは、物体のエッジにおいて頻繁に発生する傾向がある。そこでエッジの位置を計算し、仮想距離画像のエッジに対応する箇所を欠損データに置換することにより、実際の距離画像に近い画像を生成できる。
【0019】
教師データの生成方法は、以下の処理を含んでもよい。
B4) 距離画像センサから物点までの距離z、観測方向θ、測定面の方向φと、距離画像の画素値dの誤差との関係を定義する。
B5) 仮想距離画像を、関係にもとづいて補正する。
本発明者らは、距離画像データの画素値は、距離画像センサと物点の距離z、距離画像センサから物点を望む観測方向θ、測定面の方向φに応じた誤差を有することを認識した。具体的には、θが小さいほど、言い換えると、中心に近いほど画素値は正確である一方、中心から遠ざかるにしたがって、距離を示す画素値の誤差が大きくなる。また、物点までの距離が遠いほど、画素値は不正確となり、誤差が大きくなる。また測定面の方向φが、物点から距離画像センサに向かうベクトルからずれるほど、誤差は大きくなる。処理B4,B5によって、物点と距離画像センサの空間的な位置関係にもとづく誤差特性を加味した教師データを生成できる。
【0020】
上記関係は物点を含む表面の材質、および/または、色ごとに定義されてもよい。これにより、より正確に、距離画像センサの誤差特性を表現できる。
【0021】
なお、以上の構成要素の任意の組み合わせや本発明の構成要素や表現を、方法、装置、システムなどの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【0022】
本発明によれば、学習に必要な労力や時間を削減できる。
【図面の簡単な説明】
【0023】
【
図1】搬送装置の一態様であるフォークリフトの外観図を示す斜視図である。
【
図2】フォークリフトの操縦席の一例を示す図である。
【
図3】
図3(a)~(h)は、フォークリフトが搬送対象とするパレットを示す図である。
【
図4】実施の形態に係るフォークリフトの機能ブロック図である。
【
図5】
図5(a)、(b)は、距離画像センサの設置箇所を説明する図である。
【
図7】
図7(a)、(b)は、検出対象である特定部位を模式的に示す図である。
【
図8】
図7(a)の特定部位の距離画像を示す図である。
【
図9】識別器の学習に用いる教師データの生成のフローチャートである。
【
図10】パレットおよび距離画像センサのモデルが配置される3次元の仮想空間を示す図である。
【
図11】
図11(a)~(c)は、背景距離画像にもとづく教師データの生成を説明する図である。
【
図12】アクティブ型の距離画像センサを用いる場合の教師データの生成方法のフローチャートである。
【
図14】
図14(a)~(c)は、
図12のフローチャートにもとづく教師データの生成を示す図である
【
図15】IR輝度画像の画素値と、仮想距離画像に重畳する誤差の関係の一例を示す図である。
【
図16】
図16(a)、(b)は、
図15の関係にもとづく仮想距離画像の補正を示す図である。
【
図17】IR輝度画像の画素値と、欠損データの発生率の測定結果を示す図である。
【
図18】距離画像センサと物点Pの位置関係を示す図である。
【
図19】
図19(a)は、距離zと距離画像の画素値の誤差の測定結果を示す図であり、
図19(b)は、観測方向θと距離画像の画素値誤差の測定結果を示す図である。
【発明を実施するための形態】
【0024】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。
【0025】
図1は、搬送装置の一態様であるフォークリフトの外観図を示す斜視図である。フォークリフト600は、車体(シャーシ)602、フォーク604、昇降体(リフト)606、マスト608、車輪610、612を備える。マスト608は車体602の前方に設けられる。昇降体606は、油圧アクチュエータ(
図1に不図示)などの動力源によって駆動され、マスト608に沿って昇降する。昇降体606には、荷物を支持するためのフォーク604が取り付けられている。フォークリフト600は、2本のフォーク604が図示しないパレットの穴(フォークポケット)に挿入された状態で、パレットを搬送する。
【0026】
図2は、フォークリフトの操縦席700の一例を示す図である。操縦席700は、イグニッションスイッチ702、ステアリングホイール704、リフトレバー706、アクセルペダル708、ブレーキペダル710、ダッシュボード714、前後進レバー712を備える。
【0027】
イグニッションスイッチ702は、フォークリフト600の起動用のスイッチである。ステアリングホイール704は、フォークリフト600の操舵を行うための操作手段である。リフトレバー706は、昇降体606を上下に移動させるための操作手段である。アクセルペダル708は、走行用の車輪の回転を制御する操作手段であり、オペレータが踏み込み量を調節することでフォークリフト600の走行が制御される。オペレータがブレーキペダル710を踏み込むと、ブレーキがかかる。前後進レバー712は、フォークリフト600の走行方向を、前進と後進で切りかえるためのレバーである。そのほか、図示しないインチングペダルが設けられてもよい。
【0028】
オペレータは、車体の位置制御に関して、ステアリングホイール704とアクセルペダル708、ブレーキペダル710を操作し、フォーク604の位置制御に関して、リフトレバー706を操作する必要がある。
【0029】
図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)を正確に操作して、フォークポケットに正確にフォークを挿入することは容易でない。
【0030】
以下では、パレットの荷すくい動作を支援可能な構成について説明する。
図4は、実施の形態に係るフォークリフト300の機能ブロック図である。
図4には、荷すくい動作の支援に関連するブロックのみが示され、その他のブロックは省略している。
【0031】
フォークリフト300は、距離画像センサ302、カメラ303、通知手段304、コントローラ310を備える。距離画像センサ302は、フォークリフト300の前方に取り付けられ、車両前方の距離情報を取得する。その限りでないが距離画像センサ302としては、ToFカメラ、LiDAR、ストラクチャードライト法を用いたセンサ、ステレオカメラなどを用いることができる。距離画像センサ302は、車両前方に位置する構造物や物品等の3次元点群データを含む測距データD1を生成する。
【0032】
図5(a)、(b)は、距離画像センサ302の設置箇所を説明する図である。
図5(a)は、上から見た図である。フォークを挿入すべき穴の位置を検出する必要があることから、左右方向に関して、距離画像センサ302は、2本のフォークの中央に配置することが好ましい。これにより、フォークをパレットに挿入する際に、距離画像センサ302によって、パレットを正面から撮影することが可能となる。特に、後述のように桁を含む特定部位を検出対象とする場合に、フォークの中央に距離画像センサ302を配置しておくことで、特定部位の距離画像をうまく撮影することができる。
【0033】
図5(b)は横から見た図である。上下方向に関しては、302cで示すようにフォーク604と同じ高さとしてもよいが、それよりわずかに上側の位置302a(あるいは下側の位置302b)に設けるとよい。これにより、パレット800の上板806の上面S1(あるいは上板806の下面S2)を確実に捉えることが可能となるからである。また、この位置は、フォークの高さの最終的な調整の局面において、フォークやその他の車両構造物に遮蔽されにくいという利点もある。
【0034】
図4に戻る。カメラ303は、フォークリフト300の前方を撮影する。カメラ303の撮影した画像データD3は、ディスプレイ306に表示される。なお
図4においては、カメラ303と距離画像センサ302を別個の機能ブロックとして示すが、必ずしもハードウェアとして距離画像センサ302と独立していることを意味するものでなく、距離画像センサ302は、カメラ303を兼ねていてもよい。たとえば距離画像センサ302がTOFカメラやステレオカメラである場合、それから1次的に得られる単眼画像(赤外線強度分布や可視光モノクロ画像、可視光カラー画像)を、画像データD3として用いることができる。
【0035】
コントローラ310は、フォークリフト300を統合的に制御する。コントローラ310は、距離画像取得部330および識別器340を備える。距離画像取得部330は、点群データを含む測距データD1にもとづいて、距離画像D2を生成する。距離画像D2とは、縦横に複数ピクセルを有する画像データであって、画素値が距離を表すデータをいう。
図6は、距離画像の一例を示す図である。なお、距離画像センサ302の出力が距離データである場合、距離画像取得部330の処理は簡略化され、あるいは省略される。
【0036】
図4に戻る。識別器340は、距離画像D2にもとづいて、パレットまたはパレットの特定部位を特定できるように、機械学習により構成される。
【0037】
処理部350は、識別器340の検出結果にもとづいて、パレットの穴の位置を特定する。そして検出した結果にもとづいて、通知手段304を制御し、オペレータに通知する。通知手段304は、ディスプレイ306やスピーカ308を含みうる。ディスプレイ306は、視覚的にパレットの穴の位置やその他の情報をオペレータに通知するために用いられる。スピーカ308は、オペレータに聴覚的にパレットの位置やその他の情報を通知するために用いることができる。通知手段304による通知については後述する。
【0038】
識別器340および処理部350は、演算処理装置(CPU)やメモリを有するマイコン320と、マイコン320が実行するソフトウェアプログラムで構成することができる。さらに距離画像取得部330も、マイコン320の機能として実装することができる。したがって距離画像取得部330、識別器340、処理部350は、必ずしも別個のハードウェアとして認識されるものではなく、演算処理装置とソフトウェアプログラムの組み合わせにより実現される機能を表す。
【0039】
あるいは距離画像取得部330と識別器340を別個のハードウェアで構成してもよい。たとえば距離画像センサ302とマイコン320のインタフェースとして、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などのハードウェア(チップ)が搭載される場合がある。この場合、距離画像取得部330の処理を、このハードウェアに実行させてもよい。
【0040】
以上がフォークリフト300の構成である。このフォークリフト300によれば、距離画像センサにより得られる距離画像を入力とする識別器を機械学習により構成することにより、パレットあるいはその部位の特定の精度を高めることができる。そして得られた検出結果を、搬送装置の動作に反映させ、あるいはオペレータに通知することにより、オペレータの操作を支援することができる。
【0041】
なお、パレットやその特定部位を検出する別の方法として、3次元点群データを用いて、特徴的な部位をパターンマッチングによって検出する方法も考えられる。ところがこの方法は、対象物を常に同じ方向から測定する必要があり、特徴的な部位の3次元点群データを高密度に精度よく測ることが難しいという問題点がある。
【0042】
続いて識別器340の具体例と、その学習について説明する。一実施例において、識別器340は、線形SVM(Support Vector Machine)とHOG(Histograms of Oriented Gradients)特徴量の組み合わせで構成される。線形SVMは、入力が、2クラスのいずれかに属するかを判定可能な識別器として広く用いられる。一般的な画像処理の分野において、線形SVMの入力は、画素値が輝度である画像データであるが、本実施の形態では、距離画像を入力としたところが異なっている。
【0043】
線形SVMは、2個の穴のペアを直接検出するように学習することもできる。ただし、
図3(a)~(h)に示したように、穴の形状やサイズは、パレットの種類によってさまざまである。具体的には、穴の横幅は、パレットによって異なっている。またパレットは下板を有するものもあれば、有しないものもあり、したがって穴は下側が開放されている場合と閉じている場合がある。このことから、穴を直接的な識別対象として学習した識別器では、十分に高い識別率が得られない場合がある。
【0044】
そこで本発明者らは、さらなる識別率の改善のために、パレット800の穴802と穴802を区切る桁804に着目し、桁804を含む一部分(特定部位)を検出対象として識別器340を構成することとした。桁804は、パレット800の規格によらずに、パレットの必須の構成要素であり、検出対象として好適であり、高い識別率が期待できる。
【0045】
図7(a)、(b)は、検出対象である特定部位801を模式的に示す図である。特定部位801は、上板806の一部と、下板808の一部と、桁804および2つの穴802を含む。この特定部位801は、向かい合わせの2個のコの字形状を含むものと把握できる。
図8は、
図7(a)の特定部位801の距離画像を示す図である。
【0046】
なお
図3(b)等に示すように、下板が存在しないパレットも存在する。そこで
図7(b)に示すように、下板808を除いたT字形状を特定部位801として識別器340を学習させてもよい。
【0047】
処理部350には、パレットの幾何学的な情報が保持されている。処理部350は、識別器340が特定した特定部位801の位置と、幾何学的な情報にもとづいて、演算処理によって、フォークを挿入すべき2個の穴の位置を特定することができる。たとえば、幾何学的な情報は、パレットのセンターの位置(座標)と、穴の位置の相対的な位置関係を含みうる。処理部350は、識別器340の出力にもとづいて、パレット800のセンター位置を検出し、センター位置から、左右に所定量オフセットした位置を、フォークを挿入すべき穴の位置とすることができる。
【0048】
図7(c)は、別のパレットの一部分を示す図である。パレットは、3個の(あるいはそれより多い)穴を有する場合もあり、その場合、1個のパレットが、2個の(あるいはそれより多い)桁を含み、1個のパレットについて、2個の特定部位801が隣接して検出される場合もありえる。この場合、2個の特定部位801のセンター(すなわち2個の桁804のセンター)を、パレット800全体のセンター位置と判定してもよい。
【0049】
(識別器の学習)
続いて、識別器340の学習について説明する。
【0050】
図9は、識別器340の学習に用いる教師データの生成のフローチャートである。はじめに、パレット800の3次元モデルMpが生成される(S100)。パレットの3次元モデルMpは、パレットの3次元CADデータに相当する。
【0051】
また距離画像センサ302のモデルMsが生成される(S102)。距離画像センサ302のモデルは、距離画像センサ302の画角や入出力特性を記述したものであり、画角、解像度、計測精度、温度、フレームレート、応答特性などを考慮して生成することができる。応答特性は、波長感度特性やトランジェントな応答特性を含みうる。距離画像センサ302のモデルは、
図12以降を参照して説明するような、IR輝度画像、物体のエッジ、物点までの距離、観測方向、測定面の方向などにもとづく誤差や欠損を考慮したものとすることができる。
【0052】
パレット800の3次元モデルMpと、距離画像センサ302のモデルMsが、計算機シミュレータの3次元の仮想空間中に配置される(S104)。その状態で距離画像センサ302のモデルMsの出力を、仮想距離画像I1として取得し(S106)、仮想距離画像I1にもとづいた教師データI2を生成する(S108)。
【0053】
処理S106~S108は、パレットと距離画像センサのモデルMp,Msの相対的な位置関係を変化させながら繰り返される(S110)。
【0054】
図10は、パレットおよび距離画像センサのモデルMp,Msが配置される3次元の仮想空間900を示す図である。ここでは距離画像センサ302のモデルMsが原点に配置されるものとする。破線は距離画像センサ302の視野を表す。
図8のステップS110では、パレット800のモデルMpの位置(x、y、z)を変化させる。ステップS110においては、位置(x,y,z)に加えて、姿勢(θp,θy,θr)を変化させてもよい。
【0055】
以上が、実施の形態に係る教師データの生成方法である。
【0056】
パレットの形状や材質は多岐にわたるところ、あらゆるパレットについて、あらゆる状況を想定して、パレットの実物を距離画像センサによって撮影し、識別器の学習に用いる教師データを用意することは容易ではない。この態様によれば、3次元モデルを活用することで教師データを効率的に生成でき、学習を効率化できる。
【0057】
(背景情報の追加)
図8の処理S106において、仮想距離画像I1に、背景距離画像I3を重畳して、教師データI2を生成してもよい。
【0058】
図11(a)~(c)は、背景距離画像にもとづく教師データの生成を説明する図である。
図11(a)は、
図10において得られるパレット800の仮想距離画像I1である。
図11(b)は、背景距離画像I3を表す。背景距離画像I3としては、パレットが実際に使用される環境において、実際の距離画像センサ302により撮影された実際の背景の距離画像を用いるとよい。
【0059】
図11(a)のパレットの仮想距離画像I1と、
図11(b)の背景距離画像I3を合成すると、
図11(c)の合成距離画像が得られる。この合成距離画像の一部あるいは全部を、教師データとして用いることができる。
【0060】
パレットの仮想距離画像I1と、背景距離画像I3を重畳して教師データを生成することで、実際にパレットが使用される環境における識別率を改善できる。
【0061】
なお、背景距離画像I3は、距離画像センサ302の実測により生成したものを用いてもよい。距離画像センサ302のセンシングは、環境光などの影響を大きく受けるところ、背景については、実際の撮影画像を用いることにより、環境光の影響を考慮した教師データを生成でき、識別率を改善する効果が期待される。
【0062】
あるいは、3次元の仮想空間中に背景となる物体の3次元モデルを配置して、距離画像センサ302のモデルMsを用いて、背景の仮想距離画像を生成し、パレットの仮想距離画像と背景の仮想距離画像を重畳して教師データとしてもよい。
【0063】
あるいは、3次元の仮想空間中に、背景となる物体の3次元モデルとパレットの3次元モデルを配置して、それらを含む仮想距離画像を生成し、その一部あるいは全部を教師データとしてもよい。
【0064】
(誤差モデル)
これまでの説明では、距離画像センサ302のモデルMsのみを考慮した計測モデルを説明したが、より正確な教師データを生成するために、誤差モデルMERRを導入するとよい。
【0065】
誤差モデルMERRは、(i)計測対象までの距離、(ii)計測面の方向、(iii)計測対象の材質の少なくともひとつが距離画像センサの出力に与える影響を記述するものである。距離画像センサの出力に与える影響は、計測対象までの距離、計測面の方向、計測対象の材質の順で大きいため、誤差モデルMERRは、少なくとも計測対象までの距離を考慮して作成するとよく、より好ましくは計測対象までの距離と、計測面の方向の両方を考慮して作成するとよく、さらに精度を高めたい場合は、3個すべてを考慮して作成するとよい。
【0066】
(i) 計測対象までの距離
距離画像センサの入出力特性を考える。理想的な距離画像センサでは、出力である距離画像の画素値pvは、入力である距離dに対して線形に変化する。
pv=a1×d …(1)
【0067】
しかしながら実際の距離画像センサでは、そのセンサの方式や、製品の種類により、傾きa1が異なる場合がある。あるいは、式(2)に示すように、非線形な項が含まれる場合や、オフセット項a0が含まれる場合もある。
pv=a0+a1×d+a2×d2+・・・ …(2)
そこで誤差モデルMERRでは、距離画像センサと計測対象の距離dと、距離画像における画素値pvの関係を記述する。
【0068】
(ii) 計測面の方向
式(2)で表される入出力特性は、計測面の方向に応じて変化する場合がある。たとえば距離画像センサ302の正面の物体に対しては、ある係数のセットS1[a0,a1,…]を有する入出力特性が得られているとする。この場合に、別の方向に対して、入出力特性が同じセットS1で記述できるとは限らず、別の係数のセットS2[a0,a1,…]を有する入出力特性が得られる場合がある。そこで誤差モデルMERRは、計測面の方向を考慮して作成するとよい。
【0069】
(iii) 材料
距離画像センサ302のセンシングの方式、使用波長などによって、同じ距離にある物体を同一の距離画像センサ302によって測定しても、物体の材料が異なると、距離画像センサ302の出力に基づく距離画像の画素値が同一にならない場合がある。
【0070】
ここでパレット800の材料や表面の材質は、樹脂や木材、金属、あるいはそれら塗装したものなど多岐にわたる。この認識にもとづき、距離画像センサ302のモデルMsは、測定対象の材料(材質)の違いが、距離画像センサ302の出力に与える影響を考慮して生成されている。すなわち材料ごとに、距離画像センサ302の入出力特性を予め測定しておき、それを考慮した誤差モデルMERRを用意する。パレット800のモデルMpは、パレット800の部分ごとの、あるいは全体の材料が指定可能となっている。これにより、より正確な教師データを生成できる。
【0071】
(環境モデル)
計測モデルには、誤差モデルMERRに加えて、あるいはそれに代えて、環境モデルMENVを導入することができる。環境モデルMENVは、環境光、周囲温度の少なくともひとつが距離画像センサの出力に与える影響を記述するものである。
【0072】
多くの距離画像センサ302は、物体に光を照射し、その反射光を測定することにより、物体までの距離をセンシングするアクティブセンサである。ここで、距離画像センサ302が使用される環境に、光と同じ波長の環境光が存在すると、距離画像センサ302の出力にもとづく距離画像にノイズが重畳されることとなる。環境モデルMENVを導入すると、仮想距離画像I1に、環境光に依存するノイズを重畳することができ、教師データを、より実環境で得られる距離画像に近づけることができる。
【0073】
また周囲温度の影響によって、計測誤差が変化する。そこで環境モデルに、周囲温度が与える影響を記述するとよい。
【0074】
(アクティブ型の距離画像センサの誤差モデル)
距離画像センサ302として、赤外、近赤外光(以下、IR光という)を光として物体に照射し、IR反射光を測定するアクティブ型のセンサを用いる場合の教師データの生成について説明する。
【0075】
図12は、アクティブ型の距離画像センサを用いる場合の教師データの生成方法のフローチャートである。このフローチャートは、
図9のフローチャートに加えて、処理S120,S122を含む。なお、
図12には示さないが、教師データには背景画像を追加してもよい。
【0076】
処理S120では、距離画像センサ302が受光するであろうIR反射光の強度分布(IR輝度分布)を示すIR輝度画像I4を生成する。IR輝度画像I4の解像度は、距離画像センサ302の解像度(つまり、仮想距離画像I1の解像度)と同一としてもよいし、異なっていてもよいが、仮想距離画像I1の画素と、IR輝度画像I4の画素は対応付けが可能である。
【0077】
続く処理S122では、IR輝度画像I4にもとづいて、仮想距離画像I1を修正する。続く処理S108において、修正後の仮想距離画像I1’にもとづいた教師データI2が生成される。
【0078】
図13は、IR輝度画像I4の生成を説明する図である。光源400は、距離画像センサ302のIR光を照射する光源に対応し、カメラ402は、距離画像センサ302の撮像素子や受光素子に対応する。
【0079】
カメラ402は、光源400が放射した光のうち、物体OBJが反射した光を測定する。
図13では、光源400とカメラ402は、異なる位置に設けられ、照明方向(ベクトル)Lvと観測方向Vvが異なる場合が示されているが、実際の距離画像センサ302では、光源400とカメラ402は、実質的に同じ場所に、実質的に同じ方向を向いて配置されており、したがって照明方向Lvと観測方向Vvの向きはほぼ一致する。Nvは、反射点における法線を向く法線ベクトルである。
【0080】
カメラ402が測定する反射光には、物体OBJによる拡散反射光と、鏡面反射光が含まれる。拡散反射光は、照射方向および観測方向に依存せず、等方的に発生する。カメラ402が観測する光強度は、カメラ402と物体OBJまでの距離r、物体OBJの表面の拡散反射率kdなどにもとづいて計算することができる。拡散反射率kdは物体OBJの表面の材質などに応じて決まるものであり、パラメータとして与えられる。
【0081】
鏡面反射光は、観測方向Vvが正反射方向(ベクトル)Rvと一致するときに最も強くなり、観測方向Vvが正反射方向Rvから離れるに従って小さくなる。反射光の指向性は、表面粗さnなどの反射面の表面性状と偏光特性に応じて定まる。反射光強度Isは、鏡面反射率ks、距離r、物体OBJの表面粗さnなどをパラメータとして計算することができる。
【0082】
IR輝度画像I4の生成は以下のように計算できる。
3次元の仮想空間中に配置されるパレット800やその周辺の物体について、それぞれの反射特性を規定するパラメータ、具体的には、拡散反射率kd、鏡面反射率ks、表面粗さnなどを与える。そして公知のシェーディング(レンダリング)の手法を用いて、距離画像センサ302の撮像素子が受けるIR反射光の強度分布を計算し、IR輝度画像I4を生成する。
【0083】
図14(a)~(c)は、
図12のフローチャートにもとづく教師データの生成を示す図である。
図14(a)は、仮想の三次元空間に、パレット800やその他の物体のモデルが配置される様子が示される。
図14(b)の上段は、
図14(a)のモデルにもとづいて生成される誤差を含まない仮想距離画像I1を示している。
図14(c)は、
図14(a)のモデルにもとづいて生成されるIR輝度画像I4を示す。
図14(b)の下段には、IR輝度画像I4にもとづく補正後の仮想距離画像I1’が示される。
図14(b)の補正後の仮想距離画像I1’のある画素の画素値dと、
図14(a)の補正前の仮想距離画像I1の対応する画素値d’の差分d’-dは、IR輝度画像I4の対応する画素値αと相関を有している。
d’-d=f(α)
【0084】
以上が、アクティブセンサを用いる場合の教師データの生成方法である。続いてその利点を説明する。
【0085】
本発明者らは、実際の距離画像センサによって生成される距離画像の精度は、距離画像センサ302の撮像素子/受光素子が受ける反射光の強度の影響を受けることを見いだした。そこで、処理S120において、仮想的なIR輝度画像を生成し、処理S122において、仮想距離画像I1に対して、IR輝度画像I4にもとづくノイズを重畳したり、あるいは仮想距離画像I1の一部の画素を欠損データと置換することにより、実際の距離画像センサが生成する距離画像に近い画像を生成することができる。
【0086】
続いて、IR輝度画像I4にもとづく、仮想距離画像I1の補正処理の具体例を説明する。
【0087】
(実施例1)
一実施例において、IR輝度画像I4の画素値にもとづいて、仮想距離画像I1の画素値に誤差を重畳してもよい。
図15は、IR輝度画像I4の画素値と、距離の誤差の関係の一例を示す図である。横軸はIR輝度画像I4の画素値αであり、縦軸は距離の誤差δを標準偏差SDで示したものである。
【0088】
プロットはある距離画像センサ302について得られた実測値を表し、実線はフィッティングした関数f(α)を示す。
SD=f(α)=1316α-0.98+0.88
【0089】
一例として、IR輝度画像I4の画素値αが400である場合、標準偏差SDは5mmである。つまり、IR輝度画像I4の画素値αが400である画素について、仮想距離画像I1の画素値(距離)は、統計的に標準偏差が5mmである正規分布に従った誤差を有することを意味する。
【0090】
この例では、IR反射光の強度が小さいほど、重畳される誤差が大きくなる。これは、IR反射光の輝度が小さいほど、言い換えると、物点までの距離が遠い場合や、物点の反射率が非常に低い場合などは、距離画像センサ302による測距が不正確であるものとして、大きな誤差が重畳される。
【0091】
仮想距離画像I1のある画素[x,y]に着目し、その画素値(つまり距離)がdであるとする。IR輝度画像I4の同じ画素の画素値(つまり反射光強度)がαであるとき、補正後の仮想距離画像I1の同じ画素[x,y]の画素値dは、標準偏差SDにもとづく統計的な誤差δを重畳することにより、以下のように補正される。
d’=d+δd
δdの生成には、平均値および標準偏差を指定可能な乱数発生を用いればよい。
【0092】
図16(a)、(b)は、
図15の関係にもとづく仮想距離画像の補正を示す図である。
図16(a)、(b)はそれぞれ、補正前、補正後の仮想距離画像のうち、パレット800の桁804を含む中央部分を抜き出して示したものである。
【0093】
パレット800の穴およびその周辺は、IR輝度画像I4の画素値が小さい。このようなIR輝度画像I4の画素値が小さい部分については、仮想距離画像の画素値(距離)にノイズが重畳されることとなる。
【0094】
以上の処理により、実際の距離画像センサ302により測定される距離画像に近い教師データを得ることができる。
【0095】
なお、距離画像センサ302の測距方式によっては、IR反射光の強度が高すぎる場合にも、距離が不正確になる場合がある。この場合には、IR輝度画像I4の画素値が小さい部分のみでなく、IR輝度画像I4の画素値が大きい部分についても、仮想距離画像I1の画素値に誤差を重畳してもよい。つまり、関数fを修正すればよい。
【0096】
(実施例2)
IR輝度画像I4の画素値αにもとづいて、仮想距離画像I1の画素値dを、欠損データに置換してもよい。距離画像センサ302の種類によっては、それが生成する距離画像が、距離情報が得られなかったことを示す欠損データ(欠損値)を含む場合がある。
【0097】
本発明者らは、欠損データが、物体のエッジにおいて頻繁に発生する傾向があることを認識した。また距離画像センサ302の撮像素子/受光素子に入射する反射光が弱すぎる箇所や反対に強すぎる箇所にも、欠損データが発生しうることを認識した。
【0098】
図17は、IR輝度画像I4の画素値と、欠損データの発生率の測定結果を示す図である。
図17から、欠損データの発生確率は、IR輝度画像I4の画素値に依存すること、具体的には、IR輝度画像I4の画素値が小さい箇所、あるいは大きい箇所に置いて、欠損データの発生確率が高くなることが分かる。
【0099】
そこで実施例2では、IR輝度画像I4を参照し、画素値αにもとづいて欠損データが発生しうる箇所(画素)を推定し、仮想距離画像I1の当該画素の画素値を、欠損データに置換する。欠損データは、確率的に発生するため、欠損データに置換するかは、乱数などを用いて決定してもよい。なお、物体のエッジ部分では、必然的にIR輝度画像I4の画素値は小さくなるため、実施例2では、物体のエッジにおいて生ずる欠損データも、表現できている。
【0100】
実施例2によれば、実際の距離画像に含まれる欠損データの発生をエミュレートでき、実際の距離画像に近い教師データを生成できる。
【0101】
(実施例3)
実施例3では、IR輝度画像I4にもとづいて欠損データを発生した。実施例3では、物体のエッジ(輪郭)を計算によって求め、仮想距離画像I1のうち、エッジに対応する部分の画素を、欠損データに置換する。
【0102】
たとえば、エッジの部分を示すエッジ画像I5を生成する。エッジ画像I5は、三次元のモデリングデータから容易に生成することができる。そして、仮想距離画像I1のうち、エッジ画像I5がエッジであることを示す画素については、その画素値を、所定の確率で欠損データに置換する。所定の確率は、実測データにもとづいて求めることができ、ある測距センサでは、85%であった。
【0103】
実施例3によれば、実際の距離画像に含まれる欠損データの発生をエミュレートでき、実際の距離画像に近い教師データを生成できる。
【0104】
(実施例4)
図18は、距離画像センサ302と物点Pの位置関係を示す図である。本発明者らは、距離画像センサ302が生成する距離画像の画素値(すなわち物点までの距離z)は、物体zまでの距離、観測方向θ、測定面の方向φ、物体の材質に応じた誤差を有する傾向を見いだした。観測方向θは、距離画像センサ302から物点Pに向かうベクトルの向きである。測定面の方向φは、物点における法線ベクトルの向きである。
【0105】
図19(a)は、距離zと距離画像の画素値の誤差の測定結果を示す図であり、
図19(b)は、観測方向θと距離画像の画素値誤差の測定結果を示す図である。
図19(a)、(b)は、ある材質を測定するときの誤差であり、別の材質の場合には、別の誤差特性が得られる可能性があり、また表面の色が異なれば、別の誤差特性が得られる可能性もある。
【0106】
実施例4では、距離z、方向θ、φを入力(引数)とし、誤差を出力とする関数σ(z,θ,φ)を、材質の種類ごと(あるいは色ごと、あるいは材質と色の組み合わせごと)に定義しておく。なお、方向θ、φはベクトルデータであってもよい。そして、3次元モデルに基づいて、物点までの距離zおよび観測方向θ、測定面の方向φを計算し、関数σに入力し、誤差を生成する。
【0107】
実施例4によれば、実際の距離画像に含まれる誤差をエミュレートでき、実際の距離画像に近い教師データを生成できる。
【0108】
実施例1~実施例4で説明した誤差のモデリング手法は、任意の組み合わせで使用することができ、すべての実施例を組み合わせて、教師データを生成してもよい。
【0109】
以上、本発明を実施例にもとづいて説明した。本発明は上記実施形態に限定されず、種々の設計変更が可能であり、様々な変形例が可能であること、またそうした変形例も本発明の範囲にあることは、当業者に理解されるところである。以下、こうした変形例を説明する。
【0110】
実施の形態では搬送装置としてフォークリフトを例に説明したが、本発明の適用はその限りでなく、ハンドリフト(ハンドパレット)やAGV(Automatic Guided Vehicle)、フォークローダー(フォーク付きのホイルローダー)など、パレットを取り扱うさまざまな搬送装置に適用することができる。
【符号の説明】
【0111】
600 フォークリフト
602 車体
604 フォーク
606 昇降体
608 マスト
610 前輪
612 後輪
700 操縦席
702 イグニッションスイッチ
704 ステアリングホイール
706 リフトレバー
708 アクセルペダル
710 ブレーキペダル
712 前後進レバー
714 ダッシュボード
300 フォークリフト
302 距離画像センサ
303 カメラ
304 通知手段
306 ディスプレイ
308 スピーカ
310 コントローラ
320 マイコン
330 距離画像取得部
340 識別器
350 処理部
360 パターンマッチング部
362 テンプレート画像生成部
D1 測距データ
D2 距離画像
D3 画像データ
D4 部分距離画像
D5 位置情報
D6 テンプレート画像
800 パレット
801 特定部位
802 穴
804 桁