(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024113326
(43)【公開日】2024-08-22
(54)【発明の名称】物品検出装置、物品検出方法、及び産業車両
(51)【国際特許分類】
G06T 7/70 20170101AFI20240815BHJP
【FI】
G06T7/70 Z
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023018218
(22)【出願日】2023-02-09
(71)【出願人】
【識別番号】000125370
【氏名又は名称】学校法人東京理科大学
(71)【出願人】
【識別番号】301021533
【氏名又は名称】国立研究開発法人産業技術総合研究所
(71)【出願人】
【識別番号】000003218
【氏名又は名称】株式会社豊田自動織機
(74)【代理人】
【識別番号】100088155
【弁理士】
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【弁理士】
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100124062
【弁理士】
【氏名又は名称】三上 敬史
(74)【代理人】
【識別番号】100148013
【弁理士】
【氏名又は名称】中山 浩光
(74)【代理人】
【識別番号】100162640
【弁理士】
【氏名又は名称】柳 康樹
(72)【発明者】
【氏名】喜多 泰代
(72)【発明者】
【氏名】藤枝 佑大
(72)【発明者】
【氏名】松田 一朗
(72)【発明者】
【氏名】喜多 伸之
(72)【発明者】
【氏名】小出 幸和
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA09
5L096FA26
5L096FA32
5L096FA67
5L096FA69
5L096GA51
(57)【要約】
【課題】荷役対象である物品を、物品との位置関係によらずに検出することができる物品検出装置、物品検出方法、及び産業車両を提供する。
【解決手段】姿勢検出部109は、ヨー角検出用情報画像において、パレット61における予め推定された特徴部位の境界部をヨー角検出用情報画像の任意の位置に配置する。姿勢検出部109は、特徴部位が存在する第1の領域E1と、特徴部位が存在しないとされる第2の領域E2とを跨ぐように、ヨー角検出用情報画像を走査して視覚的パラメータの変化を取得する。姿勢検出部109は、視覚的パラメータの変化に基づいてパレット61の境界部を示す表記情報を算出し、表記情報に基づいて特徴線FLを検出する。これにより、ヨー角検出用情報画像内に、パレット61の境界部が存在し得る箇所に表記情報で表記することができる。これにより、正確に特徴線FLを検出することができる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
荷役する物品を検出する物品検出装置であって、
前記物品検出装置の周囲を撮影した周囲画像を取得する画像取得部と、
前記周囲画像に基づいて、前記物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成部と、
前記第1の情報画像に基づいて、前記荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算部と、
前記演算部の演算結果に基づいて、前記荷役対象部位の前記姿勢を検出する姿勢検出部と、を備え、
前記情報画像作成部は、前記周囲画像が取得された位置で取得される前記情報を、前記物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、
前記姿勢検出部は、
前記第2の情報画像において、前記物品における予め推定された特徴部位の境界部を前記第2の情報画像の任意の位置に配置し、
前記特徴部位が存在する第1の領域と、前記特徴部位が存在しないとされる第2の領域とを跨ぐように、前記第2の情報画像を走査して視覚的パラメータの変化を取得し、
前記視覚的パラメータの変化に基づいて前記物品の前記境界部を示す表記情報を算出し、
前記表記情報に基づいて前記特徴線を検出し、
前記特徴線と前記第2の情報画像中の基準線との角度の差分に基づいて、前記姿勢を検出する、物品検出装置。
【請求項2】
前記視覚的パラメータは、前記第2の情報画像がモノクロで表現されている場合の濃淡値である、請求項1に記載の物品検出装置。
【請求項3】
前記表記情報は、点群であり、
前記姿勢検出部は、前記点群に対してRANSACを適用することで前記特徴線を検出する、請求項1に記載の物品検出装置。
【請求項4】
前記物品はパレットであり、
前記特徴部位は、前記第1の情報画像で検知された前記パレットの存在候補から推定される前記パレットの端部である、請求項1に記載の物品検出装置。
【請求項5】
前記物品はパレットであり、
前記特徴部位は第1の情報画像で検知された前記パレットの存在候補から推定される前記パレットの穴部の影の端部である、請求項1に記載の物品検出装置。
【請求項6】
前記姿勢検出部は、前記第1の領域から選択された第1の局所領域における前記視覚的パラメータの取得結果と、前記第2の領域から選択された第2の局所領域における前記視覚的パラメータの取得結果との平均値を、前記視覚的パラメータの変化を判定する閾値として用いる、請求項1に記載の物品検出装置。
【請求項7】
荷役する物品を検出する物品検出方法であって、
周囲を撮影した周囲画像を取得する画像取得ステップと、
前記周囲画像に基づいて、前記物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成ステップと、
前記第1の情報画像に基づいて、前記荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算ステップと、
前記演算ステップでの演算結果に基づいて、前記荷役対象部位の前記姿勢を検出する姿勢検出ステップと、を備え、
前記姿勢検出ステップでは、
周囲画像が取得された位置で取得される情報を、前記物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、
前記第2の情報画像の作成において、前記物品における予め推定された特徴部位の境界部を前記第2の情報画像の任意の位置に配置し、
前記特徴部位が存在する第1の領域と、前記特徴部位が存在しないとされる第2の領域とを跨ぐように、前記第2の情報画像を走査して視覚的パラメータの変化を取得し、
前記視覚的パラメータの変化に基づいて前記物品の前記境界部を示す表記情報を算出し、
前記表記情報に基づいて前記特徴線を検出し、
前記特徴線と前記第2の情報画像中の基準線との角度の差分に基づいて、前記姿勢を検出する、物品検出方法。
【請求項8】
請求項1~6の何れか一項に記載の物品検出装置を備える産業車両。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物品検出装置、物品検出方法、及び産業車両に関する。
【背景技術】
【0002】
従来の物品検出装置としては、例えば特許文献1に記載されている技術が知られている。特許文献1に記載の物品検出装置は、多層積みされたパレットをフォークリフトで取り出して搬送させる場合に、パレットの存在位置及びフォークの挿入位置の認識のために用いられる。この物品検出装置は、荷役対象であるパレットの位置を物品の全体の輪郭に対する相対的関係が既知な物品の特徴部から検出することで、当該パレットの前面の位置及び姿勢を演算している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の技術は、正面方向から荷役対象であるパレットに近づいた後に、その位置を検出する場合には有効だが、近年、正面方向に限らず、パレットから離れた位置から周囲を観測し、対象となるパレットを検出し、その位置と姿勢を算出することが求められている。車体が荷役する物品の近傍に近付く前に、物品検出装置が物品の荷役対象部位の位置や姿勢を把握しておくことで、車体はスムーズに荷役を行えるような軌道で、物品に近付くことができる。
【0005】
ここで、荷役対象である物品の位置を検出するにあたり、物品の姿勢(ヨー角)を正確に検出する必要があった。
【0006】
従って、本発明は、荷役対象である物品の姿勢を正確に検出できる物品検出装置、物品検出方法、及び産業車両を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様に係る物品検出装置は、荷役する物品を検出する物品検出装置であって、物品検出装置の周囲を撮影した周囲画像を取得する画像取得部と、周囲画像に基づいて、物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成部と、第1の情報画像に基づいて、荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算部と、演算部の演算結果に基づいて、荷役対象部位の姿勢を検出する姿勢検出部と、を備え、情報画像作成部は、周囲画像が取得された位置で取得される情報を、物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、姿勢検出部は、第2の情報画像において、物品における予め推定された特徴部位の境界部を第2の情報画像の任意の位置に配置し、特徴部位が存在する第1の領域と、特徴部位が存在しないとされる第2の領域とを跨ぐように、第2の情報画像を走査して視覚的パラメータの変化を取得し、視覚的パラメータの変化に基づいて物品の境界部を示す表記情報を算出し、表記情報に基づいて特徴線を検出し、特徴線と第2の情報画像中の基準線との角度の差分に基づいて、姿勢を検出する。
【0008】
この物品検出装置は、物品検出装置の周囲を撮影した周囲画像を取得する画像取得部と、周囲画像に基づいて、物品の荷役対象部位に関する情報を認識し易い状態に変換した情報画像を作成する情報画像作成部と、を備えている。例えば、物品検出装置と物品との距離や位置関係により、物品検出装置の周囲の様子を示した周囲画像からは、直接的に物品を検出しにくい場合がある。これに対し、情報画像作成部は、物品検出装置の周囲を撮影した周囲画像に基づいて、物品の荷役対象部位を検出するのに適した情報画像を作成できる。また、物品検出装置は、情報画像に基づいて、荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算部を備える。このように、演算部は、物品の荷役対象部位を検出するのに適した情報画像を介して演算を行うことで、物品検出装置が物品の近傍に近付く前段階で、荷役対象部位の位置及び姿勢の少なくとも一方を演算できる。ここで、物品検出装置は、演算部の演算結果に基づいて、荷役対象部位の姿勢を検出する姿勢検出部と、を備える。情報画像作成部は、周囲画像が取得された位置で取得される情報を、物品の特徴線を含む水平面に対して投影した第2の情報画像を作成する。当該第2の情報画像は、水平面を投影面とした情報画像である。そのため、第2の情報画像中の物品の特徴線は、物品の姿勢のうち水平面内での方位角であるヨー角を検出し易い線となる。姿勢検出部は、第2の情報画像から特徴線を検出し、当該特徴線と第2の情報画像中の基準線との角度の差分に基づいて、姿勢を検出する。当該角度の差分により、演算部の演算結果に係る物品の姿勢を修正することができる。ここで、姿勢検出部は、第2の情報画像において、物品における予め推定された特徴部位の境界部を第2の情報画像の任意の位置に配置する。このように、特徴線の候補となる特徴部位の境界部を、特徴線の検出が行い易い任意の位置に配置する。姿勢検出部は、特徴部位が存在する第1の領域と、特徴部位が存在しないとされる第2の領域とを跨ぐように、第2の情報画像を走査して視覚的パラメータの変化を取得する。これにより、特徴部位の境界部付近における視覚的パラメータの変化の情報を漏れなく取得することができる。姿勢検出部は、視覚的パラメータの変化に基づいて物品の境界部を示す表記情報を算出し、表記情報に基づいて特徴線を検出する。これにより、第2の情報画像内に、物品の境界部が存在し得る箇所に表記情報で表記することができる。これにより、正確に特徴線を検出することができる。以上より、荷役対象である物品の姿勢を正確に検出できる。
【0009】
視覚的パラメータは、第2の情報画像がモノクロで表現されている場合の濃淡値であってよい。この場合、モノクロの画像においては濃淡値の変化が取得し易いため、演算の負荷を軽減することができる。
【0010】
表記情報は、点群であり、姿勢検出部は、点群に対してRANSACを適用することで特徴線を検出してよい。RANSACは、外れ値が存在している場合の対応に強いため、特徴線の検出を堅牢にすることができる。
【0011】
物品はパレットであり、特徴部位は、第1の情報画像で検知されたパレットの存在候補から推定されるパレットの端部であってよい。パレットの端部は、直線状の形状を有するため、特徴線として検出しやすい。
【0012】
物品はパレットであり、特徴部位は第1の情報画像で検知されたパレットの存在候補から推定されるパレットの穴部の影の端部であってよい。パレットの穴部が影になり直線状になりやすいため、特徴線として検出しやすい。
【0013】
姿勢検出部は、第1の領域から選択された第1の局所領域における視覚的パラメータの取得結果と、第2の領域から選択された第2の局所領域における視覚的パラメータの取得結果との平均値を、視覚的パラメータの変化を判定する閾値として用いてよい。
【0014】
本発明の一態様に係る物品検出方法は、荷役する物品を検出する物品検出方法であって、周囲を撮影した周囲画像を取得する画像取得ステップと、周囲画像に基づいて、物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成ステップと、第1の情報画像に基づいて、荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算ステップと、演算ステップでの演算結果に基づいて、荷役対象部位の姿勢を検出する姿勢検出ステップと、を備え、姿勢検出ステップでは、周囲画像が取得された位置で取得される情報を、物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、第2の情報画像の作成において、物品における予め推定された特徴部位の境界部を第2の情報画像の任意の位置に配置し、特徴部位が存在する第1の領域と、特徴部位が存在しないとされる第2の領域とを跨ぐように、第2の情報画像を走査して視覚的パラメータの変化を取得し、視覚的パラメータの変化に基づいて物品の境界部を示す表記情報を算出し、表記情報に基づいて特徴線を検出し、特徴線と第2の情報画像中の基準線との角度の差分に基づいて、姿勢を検出する。
【0015】
この物品検出方法によれば、上述の物品検出装置と同趣旨の作用・効果を得ることができる。
【0016】
本発明の一態様に係る産業車両は、上述の物品検出装置を備える。
【0017】
この産業車両によれば、上述の物品検出装置と同趣旨の作用・効果を得ることができる。
【発明の効果】
【0018】
本発明によれば、荷役対象である物品を、物品との位置関係によらずに検出することができる物品検出装置、物品検出方法、及び産業車両を提供することができる。
【図面の簡単な説明】
【0019】
【
図1】本発明の実施形態に係る物品検出装置を備えるフォークリフトの側面図である。
【
図2】
図1に示す物品検出装置及びそれに関わる構成要素を示すブロック構成図である。
【
図3】フォークリフトがパレットを荷役するまでの動作を示す概略平面図である。
【
図4】撮影部と棚及びパレットとの時系列に従った位置関係を示す概略平面図である。
【
図6】(a)は、
図4において二点鎖線で示す撮影部の位置にて取得された投影画像を示し、(b)は、
図4において実線で示す撮影部の位置にて取得された投影画像を示す。
【
図7】(a)は、棚に対して特徴面が設定された様子を示す斜視図であり、(b)は、特徴面と複数の視点V1,V2,V3との位置関係を示す概略平面図である。
【
図9】撮影部と棚及びパレットとの時系列に従った位置関係を示す概略平面図である。
【
図10】(a)は、撮影部が
図9の二点鎖線の位置に存在するときに得られる情報画像であり、(b)は、撮影部が
図9の実線の位置に存在するときに得られる情報画像である。
【
図11】(a)はパレットの実寸情報の一例であり、(b)は、テンプレートマッチングを行う時の情報画像の様子を示す図である。
【
図12】移動しながら撮影した周囲画像について、パレット前面の位置及び姿勢を演算し特定した結果を特徴面とともに示した画像である。
【
図13】撮影部と棚及びパレットとの時系列に従った位置関係を示す概略平面図である。
【
図14】ヨー角θ、奥行距離Dを変動させたときの一致度の分布の一例を示すグラフである。
【
図15】(a)は、下面を含む水平面を投影面としてヨー角検出用情報画像を作成する様子を示し、(b)は、下面を含む水平面を投影面としたヨー角検出用情報画像の一例を示す。
【
図16】(a)は、下面を含む水平面を投影面としてヨー角検出用情報画像を作成する様子を示し、(b)は、下面を含む水平面を投影面としたヨー角検出用情報画像の一例を示す。
【
図17】特徴線を検出するための処理内容を示す概念図である。
【
図18】特徴線を検出するための処理内容を示す概念図である。
【
図19】特徴線を検出するための処理内容を示す概念図である。
【
図20】カメラとパレットの位置関係を示す図である。
【
図21】特徴線を検出するための処理内容を示す概念図である。
【
図22】物品検出方法の内容を示すフロー図である。
【
図23】実施例と比較例の推定結果の比較を行ったグラフである。
【発明を実施するための形態】
【0020】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【0021】
図1は、本発明の実施形態に係る物品検出装置を備える産業車両の側面図である。なお、以降の説明においては「左」「右」を用いて説明するが、これらは車両の後方から前方を見た時を基準としたときの「左」「右」に対応するものとする。
図1に示すように、本実施形態では、物品を荷役する産業車両として、フォークリフト50が例示されている。フォークリフト50は、車体51と、撮影部32と、物品検出装置100と、を備える。フォークリフト50は、移動体2、及び荷役装置3を備える。本実施形態におけるフォークリフト50はリーチ式のフォークリフトで、運転席12に搭乗する運転手による手動運転と、後述する制御部110による自動運転とを切り替え可能である。あるいは、フォークリフト50は制御部110による完全な自動運転が可能なものであってもよい。
【0022】
移動体2は、前方へ延出する左右一対のリーチレグ4を備える。左右の前輪5は、左右のリーチレグ4にそれぞれ回転可能に支持されている。後輪6は、後一輪であって、操舵輪を兼ねた駆動輪である。移動体2の後部は、立席タイプの運転席12となっている。運転席12の前側にあるインストルメントパネル9には、荷役操作のための荷役レバー10、及び前後進操作のためのアクセルレバー11が設けられている。また、インストルメントパネル9の上面にはステアリング13が設けられている。
【0023】
荷役装置3は、移動体2の前側に設けられる。荷役レバー10のうちのリーチレバー操作時には、リーチシリンダ(不図示)が伸縮駆動することによって、荷役装置3がリーチレグ4に沿って所定ストローク範囲内で前後方向に移動する。また、荷役装置3は、2段式のマスト23、リフトシリンダ24、ティルトシリンダ(不図示)及びフォーク25を備える。荷役レバー10のうちのリフトレバー操作時には、リフトシリンダ24が伸縮駆動することによりマスト23が上下方向にスライド伸縮し、これに連動してフォーク25が昇降する。
【0024】
次に、
図2を参照して、本実施形態に係るフォークリフト50の物品検出装置100について更に詳細に説明する。
図2は、本実施形態に係る物品検出装置100及びそれに関わる構成要素を示すブロック構成図である。
図2に示すように、物品検出装置100は、制御部110を備えている。物品検出装置100の制御部110は、荷役駆動系30と、走行駆動系31と接続されており、これらに制御信号を送信する。荷役駆動系30は、荷役装置3を作動させるための駆動力を発生する駆動系である。走行駆動系31は、移動体2を走行させるための駆動力を発生する駆動系である。
【0025】
制御部110は、撮影部32と接続されており、撮影部32で撮影された画像を取得する。撮影部32は、フォークリフト50の車体51の周囲を撮影する。撮影部32は、
図1に示す例では車体51の天井部に設けられているが、車体51の周囲を撮影できる位置であればどこに設けられてもよい。この撮影部32の具体的な構成については、後述する。制御部110は、表示部33と接続されており、各種画像データを表示部33へ出力する。なお、制御部110による完全な自動運転が可能なフォークリフト50の場合は、表示部33や荷役レバー10、アクセルレバー11、ステアリング13は備えなくてもよい。
【0026】
物品検出装置100は、荷役する物品を検出する装置である。また、物品検出装置100の制御部110は、フォークリフト50を自動操縦するための制御を行う。制御部110は、フォークリフト50が荷役する物品に近接する前段階から、物品を検出して、当該物品の荷役対象部位の位置及び姿勢を把握する。これにより、制御部110は、フォークリフト50が物品をスムーズに荷役できるように、物品に近接し、且つ、フォーク25を荷役対象部位に挿入できるように制御する。
【0027】
図3は、フォークリフト50がパレット61を荷役するまでの動作を示す概略平面図である。
図3に示すように、フォークリフト50が、棚60に配置されたパレット61(荷役する物品)を荷役する場合について説明する。制御部110は、フォークリフト50が棚60に近付くように走行制御する。このとき、制御部110は、フォークリフト50が棚60に対して、当該棚60の横側から近付くように制御する(軌道TL1参照)。制御部110は、フォークリフト50が棚60の手前側で旋回するように制御する(軌道TL2参照)。このとき、フォークリフト50は、棚60の前面60a及びパレット61の前面61a(荷役対象部位)と対向するような姿勢となる。そして、制御部110は、フォークリフト50が棚60のパレット61の前面61aに直線的に近付き、パレット61の前面61aで開口する穴部にフォーク25を挿入するように制御する。このような制御を行う場合、制御部110は、旋回する前段階、すなわち軌道TL1を走行している段階からパレット61を検出しておき、当該パレット61の前面61aの位置及び姿勢を取得しておく。棚60に複数のパレット61が配置されている場合、制御部110は、今回の荷役動作では、どのパレット61を取り出すかを予め把握しておき、棚60の中から対象となるパレット61を検出する。また、制御部110は、検出したパレット61の位置及び姿勢を検出する。当該検出結果に基づいて、制御部110は、フォークリフト50がパレット61の前面61aの穴部にフォーク25をスムーズに挿入できるように、フォークリフト50の旋回位置や、旋回軌道を制御する。
【0028】
制御部110は、装置を統括的に管理するECU[Electronic Control Unit]を備えている。ECUは、CPU[Central Processing Unit]、ROM[Read Only Memory]、RAM[Random Access Memory]、CAN[Controller Area Network]通信回路等を有する電子制御ユニットである。ECUでは、例えば、ROMに記憶されているプログラムをRAMにロードし、RAMにロードされたプログラムをCPUで実行することにより各種の機能を実現する。ECUは、複数の電子ユニットから構成されていてもよい。
図2に示すように、制御部110は、画像取得部101と、特徴面設定部102と、情報画像作成部103と、演算部104と、調整部106と、運転制御部107と、記憶部108と、姿勢検出部109と、を備える。
【0029】
画像取得部101は、フォークリフト50の車体51の周囲を撮影した周囲画像を取得する。画像取得部101は、撮影部32で撮影された周囲画像を時系列に取得する。撮影部32は、所定の時間間隔で撮影を行うことで、時間の経過と共に複数の画像を撮影する。従って、画像取得部101が取得する周囲画像の列は、時間の経過に伴い、各時刻における周囲の様子を時系列で示した画像の集合として取り扱うことができる。フォークリフト50は、時間の経過に伴い、棚60に近付いてゆく。従って、
図4に示すように、撮影部32は、時間の経過に伴い、徐々に棚60に近付いてゆく。画像取得部101が取得する周囲画像は、画像内の棚60及びパレット61が進行に伴って徐々に大きくなるような画像となる。なお、
図4は、撮影部32と棚60及びパレット61との時系列に従った位置関係を示す概略平面図である。
図4では、制御部110の制御内容の理解を促進するために、パレット61の前面61aと、棚60の前面60aに対する傾斜角がデフォルメされて示されている。以降の図においても同様にデフォルメされた様子が示されている。
【0030】
周囲画像は、魚眼カメラで取得された画像である。すなわち、撮影部32は、魚眼カメラによって構成されている。魚眼カメラは、一般的な魚眼レンズを有することで、単眼で略180°の広視野で撮影を行うことができるカメラである。
図5は、周囲画像の一例を示す図である。周囲画像は広視野で撮影されるため、
図5に示すように、縁部に近い部分ほど、大きく湾曲するような画像となる。なお、
図5では、パレット61を配置した棚60以外の周囲の構造物は省略されている。また、棚60には中段にパレット61Aのみが配置され、上段にパレット61Bのみが配置されている。ただし、棚60には、多数のパレット61が配置されてよい。また、パレット61A,61B上の荷物は省略されている。フォークリフト50が軌道TL1を走行しているとき(
図3参照)、棚60は、撮影部32に対して、斜め前方に配置される。また、棚60の前面60a及びパレット61の前面61aは、撮影部32の進行方向と略平行に広がるような配置となる。周囲画像中では、棚60及びパレット61は、縁部側に湾曲した状態で表示される。
【0031】
なお、撮影部32を構成するカメラのレンズは魚眼レンズに限定されない。撮影部32は、フォークリフト50が棚60から離れた位置、及び棚60に近接した位置の両方にて、パレット61の画像を取得できる程度の画角を有していればよい。すなわち、撮影部32は、フォークリフト50の前方の様子及び横側の様子を同時に撮影できるような広視野のカメラであればよい。なお、撮影部32は、広視野で画像を撮影できればよく、広角カメラが採用されてもよい。また、撮影部32は、複数方向に向けられた複数のカメラを組み合わせることで、広視野の画像を撮影してもよい。
【0032】
特徴面設定部102は、パレット61の前面61aの特徴が投影される特徴面SF(
図7及び
図9参照)を設定する。特徴面SFの詳細な説明については後述する。
【0033】
情報画像作成部103は、周囲画像に基づいて、パレット61の前面61aに関する情報を認識し易い状態に変換した情報画像(第1の情報画像)を作成する。情報画像作成部103は、特徴面SFを用いて情報画像を作成する。上述のように、撮影部32から直接取得できる周囲画像は、
図5に示すように棚60及びパレット61が湾曲して示されるような画像である。また、周囲画像中では、棚60及びパレット61の写る大きさは、撮影部32からの距離によって変動する。従って、周囲画像から直接的に、荷役対象のパレット61を検出することは困難である。そこで、情報画像作成部103は、荷役対象のパレット61の前面61aを検出し易いように、当該前面61aの形状的特徴や寸法的特徴などの情報が明確に示される情報画像を作成する。このように、パレット61の前面61aに関する情報を認識し易い状態とは、これらの情報を情報画像から画像認識処理によって取得する場合の演算負荷が、少なくとも周囲画像から画像認識処理によって取得する場合の演算処理に比して、軽くできる状態であることを意味する。また、仮に演算の負荷を同じとした場合、情報画像から当該情報を取得する場合は、周囲画像から取得する場合よりも、正確に情報を取得することができる。
【0034】
ここで、情報画像は、特徴面SFが荷役対象であるパレット61の前面61a自体に設定されたときに、最も正確に前面61aの形状的特徴及び寸法的特徴を示すことができる(原理は後述する)。しかしながら、荷役対象であるパレット61を特定できていない段階では、当該パレット61の前面61a自体に特徴面SFを設定することは出来ない。従って、特徴面設定部102は、パレット61の前面61aを近似可能な周辺の構造物の部位に対して、特徴面SFを設定する。ここでは、各パレット61の前面61aが、棚の前面60aと略一致するか、近接した位置にて略平行な状態で配置されることに基づき、
図7(a)に示すように、棚60の前面60aに対して特徴面SFを設定する。
【0035】
図7及び
図8を参照して、特徴面SF及び情報画像について詳細に説明する。
図7(a)は、棚60に対して特徴面SFが設定された様子を示す斜視図である。
図7(b)は、特徴面SFと複数の視点V1,V2,V3との位置関係を示す概略平面図である。
図8は、特徴面SFを用いて作成された情報画像を示す。
【0036】
特徴面SFは、情報画像を作成するために三次元空間上に仮想的に設定される平面状の投影面である。なお、特徴面SFに関する位置や姿勢は、設定する段階で既知となっている情報である。情報画像は、周囲画像が取得された位置で取得される情報を、認識し易い状態に変換した画像である。周囲画像が取得された位置で取得される情報は、当該位置から見たときの棚60及びパレット61の各部位の位置や大きさなどの情報を含む。情報画像作成部103は、周囲画像を特徴面SFに投影することによって、情報画像を作成する。画像取得部101は、時系列に従って複数の周囲画像を取得しているため、情報画像作成部103も、周囲画像と同じ量の複数の情報画像を作成できる。
【0037】
特徴面SFは、パレット61の前面61aの特徴が投影される投影面である。従って、特徴面SFは、当該特徴面SFに投影された情報画像の中に、パレット61の前面61aの特徴が示されるように設定される。すなわち、特徴面SFは、パレット61の前面61aの特徴を的確に示すことができるような箇所に設定された投影面である。このように設定された特徴面SFに投影されたパレット61の前面61aの情報画像では、前面61aの特徴を示す情報が、画像認識処理で容易に認識できるような態様で示されることになる。前面61aの特徴とは、画像中において他の物品と区別できるような、前面61aに独特の外観的特徴のことを意味する。前面61aの特徴を示す情報とは、当該前面61aを特定することができる形状情報や寸法情報などである。
【0038】
例えば、パレット61の前面61aは、幅方向に延びる長方形の形状を有し、二つの穴部62を有するという特徴がある。このようなパレット61の前面61a及び穴部62は、周囲画像中では歪んで表示されるため(
図5参照)、形状を特定し難いことに加え、寸法も把握することが難しく、画像認識処理によって特徴として検出することが困難である。これに対し、特徴面SFに投影された画像では、このようなパレット61の前面61a及び穴部62の形状が崩れることなく正確に示される(
図11(a)参照)。また、特徴面SFに投影された画像では、パレット61の前面61aを特定するための寸法L1,L2,L3も測定可能な態様で示されている(寸法の具体的な特定方法は後述)。特徴面SFに投影された画像中では、パレット61の前面61aの特徴が的確に示されている。すなわち、特徴面SFに投影された画像中では、前面61aの特徴を示す情報が、画像認識処理によって容易に認識できるように変換された形で表示されている。このように、特徴面設定部102は、パレット61の前面61aの特徴を示す情報を認識し易くなるような箇所に、特徴面SFを設定する。
【0039】
ここで、情報画像は、特徴面SFが荷役対象のパレット61の前面61a自体に設定されたときに、最も正確に前面61aの形状的特徴及び寸法的特徴を示すことができる。しかしながら、荷役対象のパレット61を特定できていない段階(物品の状態が未知の場合)では、当該パレット61の前面61a自体に特徴面SFを設定することは出来ない。従って、特徴面設定部102は、パレット61周辺の構造物の部位に対して、特徴面SFを設定する。特徴面設定部102は、
図7(a)に示すように、棚60の前面60aに対して特徴面SFを設定する。各パレット61の前面61aは、前面60aに設定された特徴面SFと略一致するか、近接した位置にて略平行な状態で配置される。よって、棚60の前面60aに設定された特徴面SFに投影された情報画像は、各パレット61の前面61aの特徴を十分に示す画像となる。
【0040】
図7(b)に示すように、特徴面SF上に存在しているものは、どの視点から投影した画像であっても、実際にものが存在する位置に投影される。具体的には、棚60の前面60aの一方の端部P1及び他方の端部P2は、特徴面SF上に存在している。よって、視点V1,V2,V3のいずれの視点から投影しても、情報画像中の端部P1,P2の位置は一定である。それに対し、棚60の後面の端部P3は、視点V1から投影した場合、特徴面SF上の投影点P4の位置に投影される。そして、端部P3は、視点V2から投影した場合、特徴面SF上の投影点P4とは異なる投影点P5の位置に投影される。このように、三次元空間上で特徴面SF上に存在していないものは、情報画像中の位置も、視点によって変化する。一方、三次元空間上で特徴面SF上に存在するものは、視点によらず情報画像中で実際の形状的特徴や寸法的特徴などを維持する。なお、実際の撮影部32は、棚60を通り過ぎた視点V3の位置までは移動しないが、説明のために視点V3を例示した。
【0041】
図8において、ハッチングが示されている箇所は、特徴面SF上、又は特徴面SFに近接する位置に存在する箇所である。当該箇所は、視点が変わったとしても情報画像中での位置は略一定となる。ここでは、棚60の前面60a、及び各パレット61A,61Bの前面61Aa,61Baは、視点によらず、情報画像中で一定の位置及び大きさで示される。ここで、情報画像作成部103は、情報画像に対し、一つの画素に相当する寸法を対応付けている。すなわち、情報画像中の一画素が、実際の寸法としてはどの程度の大きさを示すかが一義的に決められている。よって、棚60の前面60a、及び各パレット61A,61Bの前面61Aa,61Baは、どの視点から投影したときの情報画像であるかに関わらず、情報画像中の大きさが一定となる。その一方、三次元空間上で特徴面SF上に存在していないものは、視点の変化によって情報画像中の位置が変動する。例えば、
図8のハッチングを付した以外の箇所のうち、実線で示すものは、視点V1から見た時の様子を示し、一点鎖線は、視点V2から見た時の様子を示し、二点鎖線は、視点V3から見た時の様子を示す。
【0042】
次に、
図4及び
図6を参照して、特徴面設定部102がどのようにして棚60の前面に特徴面SFを設定するかについて説明する。
図4に示すように、特徴面設定部102は、周囲画像を撮影する場所の移動と同期して移動する移動平面DFを投影面とする。周囲画像を撮影する場所の移動とは、フォークリフト50の移動に伴う撮影部32の移動である。移動平面DFは、撮影部32から所定距離だけ前方に配置され、棚60の前面60aと対向する向きに設定されている。なお、移動平面DFは、特徴面SFとの区別を図面上でも明らかにするため、棚60の前面60aに対して傾斜するように設定されているが、傾斜していなくてもよい。特徴面設定部102は、撮影部32の視点から見た時の棚60及びパレット61を移動平面DFに投影したときの投影画像を取得する。撮影部32は、時間の経過と共に移動するため、特徴面設定部102は、移動平面DFに投影された投影画像を時系列で複数取得することができる。これにより、時系列で連続的に撮影された周囲画像の一つ一つは、それぞれの撮影された時刻における位置に対応して取得されることになる。
図6(a)は、
図4において二点鎖線で示す撮影部32の位置にて取得された投影画像を示す。
図6(b)は、
図4において実線で示す撮影部32の位置にて取得された投影画像を示す。
図6に示すように、投影画像中の棚60及びパレット61A,61Bは、撮影部32の移動に伴って投影画像中でも移動する。これらの複数の投影画像は、異なる位置で撮影された複数の画像から三次元形状を復元する既知の手法と同様にして、三次元の形状に関する情報を取得するのに用いることが可能である。なお、三次元形状を復元する際に用いられる複数の画像は、それぞれが異なる位置で撮影されていればよく、時系列で複数獲得された複数の周囲画像に限定されない。例えば、複数のカメラを用いた場合、同じ時刻に撮影された2枚以上の画像において、それぞれのカメラの位置における幾何学的関係に基づいて三次元形状を復元してもよい。
【0043】
特徴面設定部102は、上記複数の投影画像に基づいて、パレット61及び棚60に関する三次元の復元形状を生成する。特徴面設定部102は、時系列の周囲画像及び移動平面DFを用いて得られた複数の投影画像から、三次元の復元形状を生成する。特徴面設定部102は、SFM[Structure From Motion]を用いた公知の方法で、棚60及びパレット61の三次元の形状を復元する。また、特徴面設定部102は、復元形状に基づいて特徴面SFを設定する。特徴面設定部102は、公知のRANSAC[Random Sampling Consensus]を用いた平面の検出方法で、復元形状中の棚60の前面60aの三次元面の方程式を算出し、特徴面SFに設定する。
【0044】
情報画像作成部103は、上述のように特徴面設定部102が特徴面SFを設定したら、周囲画像を取得した位置で得られた情報を特徴面SFに投影することで情報画像を作成する。
図9は、撮影部32と棚60及びパレット61との時系列に従った位置関係を示す概略平面図である。
図9に示すように、特徴面SFは、撮影部32がどの位置に存在していても、常に棚60の前面60aの位置に設定される。これにより、情報画像作成部103は、
図10に示すような情報画像を作成することができる。
図10(a)は、撮影部32が
図9の二点鎖線の位置に存在するときに得られる情報画像である。
図10(b)は、撮影部32が
図9の実線の位置に存在するときに得られる情報画像である。
図10(a)の情報画像と
図10(b)の情報画像とでは、特徴面SF上の棚60の前面60a及び特徴面SF近傍のパレット61A,61Bの前面61Aa,61Baは、略同じ位置にて略同じ大きさで示される。
【0045】
演算部104は、情報画像に基づいて、荷役対象のパレット61を検出する。また、演算部104は、情報画像に基づいて、荷役対象のパレット61の前面61aの位置及び姿勢を演算する。ここで、前面61aの「位置」及び「姿勢」とは、ある時点における撮影部32に対する前面61aの相対的な三次元位置及び姿勢(カメラ座標系における位置及び姿勢)と、絶対座標系における前面61aの三次元位置及び姿勢と、の両方の意味を含んでいる。本実施形態では、演算部104が、相対的な位置及び姿勢を演算する場合について説明する。すなわち、演算部104は、ある情報画像から位置及び姿勢を演算した場合、当該情報画像の元となる周囲画像の撮影が行われた場所から前面61aの基準点の距離を演算する。前面61aの基準点は、どこに設定されてもよく、前面61aの端部や中央位置などに設定されてよい。また、演算部104は、周囲画像の撮影が行われたときの撮影部32の光軸に対して、前面61aがどの程度の角度をなして配置されているかを演算する。なお、演算部104が絶対座標系での撮影部32の位置及び姿勢を把握している場合は、絶対座標系での前面61aの位置及び姿勢を演算することができる。
【0046】
演算部104は、情報画像の画素とパレット61の前面61aの寸法との関係に基づいて、パレット61に関する演算を行う。すなわち、情報画像中では、一画素に相当する実際の寸法が一義的に決められている。よって、演算部104は、荷役対象のパレット61の前面61aの実寸情報を記憶部108から読み出し、当該実寸情報と適合する物を情報画像中から抽出することで、前面61aを検出することができる。
【0047】
演算部104は、情報画像から検出されたパレット61の前面61aのエッジ部に関する情報と、記憶部108に予め記憶された前面61aの実寸情報とのテンプレートマッチングを実施する。
図11(a)はパレット61の実寸情報の一例である。
図11(b)は、テンプレートマッチングを行う時の情報画像の様子を示す図である。
図11(a)に示すように、実寸情報とは、パレット61の実物におけるエッジ部に相当する部分の寸法関係に基づいて設定されるエッジテンプレートであり、一例として、パレット61の前面61aの幅寸法L1と、高さ寸法L2と、穴部62間の寸法L3と、が含まれる。テンプレートマッチングを行う場合、演算部104は、
図11(a)のように検出対象となるパレット61の前面61aのエッジ部を検出すると共に、
図11(b)のように情報画像中に存在する構造物などの物のエッジ部を検出する。演算部104は、公知の画像処理の方法を利用することで、画像中のエッジ部を検出する。このとき、演算部104は、水平方向に延びるエッジ部と、上下方向に延びるエッジ部と、を区別する。
図11では、水平方向に延びるエッジ部を実線で示し、上下方向に延びるエッジ部を二点鎖線で示す。演算部104は、パレット61の前面61aのテンプレートを情報画像中でスキャニングすることで、情報画像中でテンプレートにマッチするオブジェクトを抽出する。演算部104は、抽出されたオブジェクトを荷役対象のパレット61の前面61aとして検出する。なお、演算部104は、
図11(b)中のパレット61Aを検出するときは、記憶部108からパレット61Aの実寸情報を読み出し、パレット61Bを検出するときは、記憶部108からパレット61Bの実寸情報を読み出す。
【0048】
上述のように、演算部104が情報画像の中で荷役対象のパレット61の前面61aを検出した時、パレット61の前面61aと情報画像を生成した時の特徴面は略一致している。特徴面SFの三次元位置及び姿勢は既知であるため、情報画像中のパレット61の検出位置に基づいてパレット61の三次元位置及び姿勢を演算でき、荷役対象のパレット61の前面61aを特定することができる。
図12は、パレット61A,61Bの前面61Aa,61Baの位置及び姿勢を演算し特定した結果を特徴面SFとともに抽出して示した図である。
図12(a)は撮影部32が荷役対象のパレット61Aから4m離れた位置での結果を示す。
図12(b)は3m、
図12(c)は2m、
図12(d)は1m離れた位置での結果を示す。演算部104は、周囲画像から得られる情報に基づいて、各撮影位置でのパレット61Aの前面61Aaの位置及び姿勢を演算することができる。
【0049】
調整部106は、情報画像を作成するための条件を調整することで、演算部104での演算精度を向上する。本実施形態では、調整部106は、情報画像を作成するための条件として、当該情報画像を作成するときに用いられる特徴面SFの位置及び傾きを調整している。具体的には、情報画像を作成した時の特徴面SFに関する三次元面の方程式を調整することで、演算部104での演算精度を向上する。上述の情報画像作成部103は、荷役対象のパレット61を検出していない状態であったため、棚60の前面60aと同一平面、又は当該平面の近傍に荷役対象のパレット61の前面61aが存在するものとして、棚60の前面60aに対して特徴面SFを設定した。この場合、
図9に示すように、荷役対象のパレット61が特徴面SFから離間していたり、特徴面SFに対して傾斜している場合もある。このとき、情報画像中に示されるパレット61の前面61aは、実際の前面61aの形状や大きさと僅かにずれてしまう。従って、調整部106は、荷役対象のパレット61が検出された後、
図13に示すような、当該パレット61の前面61aと一致する特徴面SFを求める。具体的には、情報画像を作成した時の三次元面の方程式を構成するパラメータを変動させ、情報画像内のパレット61の前面61aの位置や姿勢を演算し直し、エッジテンプレートとの一致度が最大となる情報画像を与えるパラメータを求める。求めた特徴面SFは棚60の前面60aよりも正確にパレット61の前面61aに一致する。従って、演算部104は、高い演算精度で、パレット61の前面61aの位置及び姿勢を演算できる。また、調整部106は、棚60の前面60aに対して設定した特徴面SFよりも狭い範囲の特徴面SFをパレット61の前面61aに対して設定する。従って、調整後の特徴面SFを用いて作成した情報画像は、パレット61の前面61aを拡大した画像となる。よって、演算部104は、高い演算精度で、パレット61の前面61aの位置及び姿勢を演算できる。なお、位置と傾きの両方の調整だけでなく、位置だけを調整してもよいし、傾きだけを調整してもよい。
【0050】
ここで、
図14にθ、Dを変動させたときの一致度の分布の一例を示す。三次元グラフの一方の水平軸のパラメータは、パレット61の前面61a(特徴面SF)の水平面内での姿勢、すなわちヨー角を示す「θ」であり、他方の水平軸はパレット61の前面61a(特徴面SF)の奥行距離を示す「D」であり、垂直軸のパラメータは一致度である。なお、以降の説明では、パレット61の前面61aの姿勢を「ヨー角」と表現する場合がある。パレット61の前面61a(特徴面SF)の位置及び姿勢に関連するパラメータを変動させると、一致度が変動することで、
図14に示すような山を描くような分布が得られる。当該分布の中には、一致度が最も高くなる極大値が存在する。調整部106は、極大値を探索し、当該極大値に対応するパラメータを取得することで、一致度を最も高くすることができる条件で位置及び姿勢を把握する。しかし、
図14に示すように、ヨー角が変化することによる一致度の変化と、奥行距離が変化することによる一致度の変化とは紛らわしく、一致度の極大値は鈍い状態で現れる。そのため、調整部106によって調整されたパレット61の前面61aの位置及び姿勢の演算結果の精度は低下するおそれがある。また、調整部106が精度良く演算しようとすると、演算時間が増大してしまう。従って、より高い精度でヨー角を一意に検出する姿勢検出部109が望まれる。
【0051】
姿勢検出部109は、演算部104の演算結果に基づいて、パレット上面もしくは下面の水平面に投影したヨー角検出用情報画像を作成することにより、演算部104の演算結果に係るヨー角に誤差が含まれていた場合、当該演算結果を修正する。
【0052】
姿勢検出部109は、ヨー角検出用情報画像(第2の情報画像)を作成するように、情報画像作成部103へ指令を出す。これにより、情報画像作成部103は、周囲画像が取得された位置で取得される情報を、パレット61の特徴線を含む水平面に対して投影したヨー角検出用情報画像を作成する。ここで、パレット61の特徴線とは、パレット61のヨー角を検出することができる直線であって、画像中で認識し易い直線である。具体的に、撮影部32よりも下側のパレット61では、画像中において、前面61aと下面61cとの交線が、床面などの背景との境界線となるため(例えば
図17(a)参照)、画像中で認識し易い。従って、
図15(a)に示すように、前面61aと下面61cとの交線を特徴線FLとすることができる。なお、演算部104の演算結果によって、撮影カメラ座標系におけるパレット61の位置が既知である。従って、制御部110は、パレット61が撮影部32よりも下側に存在するか、上側に存在するかを認識できる。
【0053】
情報画像作成部103は、撮影部32よりも下側のパレット61については、パレット61の下面61cを含む水平面を投影面としたヨー角検出用情報画像を作成する。
図15(b)は、下面61cを含む水平面を投影面としたヨー角検出用情報画像の一例を示す。情報画像作成部103は、演算部104の演算結果に係るパレット61の位置及びヨー角に基づいて、ヨー角検出用情報画像を作成する。情報画像作成部103は、上述の
図7及び
図8を用いて説明したものに対し、投影面を棚60の前面60aからパレット61の下面61cとした点以外は、同様の方法によって、ヨー角検出用情報画像を作成する。
【0054】
なお、撮影部32よりも上側のパレット61では、画像中において、前面61aと上面61bとの交線が、上側の構造物(パレットに積載された荷物など)の背景との境界線となるため、画像中で認識し易い。従って、前面61aと上面61bとの交線を特徴線FLとすることができる。情報画像作成部103は、撮影部32より上側のパレット61については、パレット61の上面61bを含む水平面を投影面としたヨー角検出用情報画像を作成する。
【0055】
情報画像作成部103は、演算結果が調整部106によって調整された場合、調整後の演算結果を用いる。具体的に、情報画像作成部103は、演算結果から特徴線FLの位置と姿勢を把握する。そして、情報画像作成部103は、把握した情報に基づき特徴線FLが画像中の中央垂線上に配置されるようにヨー角検出用情報画像を作成する。このときの中央垂線は、パレット61のヨー角を検出するための基準線SL(基準線)となる。
【0056】
ここで、
図15及び
図16では、演算部104の演算結果から位置及びヨー角を推定されたパレット61を「61V」で示し、実際のパレット61を「61R」で示す。
図15は、推定に係るパレット61Vと、実際のパレット61Rとの位置及びヨー角が一致している様子を示す。
図16は、推定に係るパレット61Vと、実際のパレット61Rとでヨー角が異なっている様子を示す。
【0057】
図15(b)に示すように、推定に係るパレット61Vと実際のパレット61Rとの位置及びヨー角が一致している場合、実際のパレット61Rの特徴線FLは、基準線SL上に配置される。一方、
図16(b)に示すように、推定に係るパレット61Vと実際のパレット61Rとのヨー角がずれている場合、実際のパレット61Rの特徴線FLは、基準線SLに対して傾斜した状態で配置される。当該特徴線FLと基準線SLとの角度の差分が、演算結果に係るヨー角と、実際のパレット61Rのヨー角との差分となる。
【0058】
以上より、姿勢検出部109は、ヨー角検出用情報画像から特徴線FLを検出し、当該特徴線FLとヨー角検出用情報画像中の基準線SLとの角度の差分に基づいて、パレット61のヨー角を検出する。
【0059】
具体的に、姿勢検出部109は、ヨー角検出用情報画像において、パレット61における予め推定された特徴部位の境界部をヨー角検出用情報画像の任意の位置に配置する。本実施形態では、境界部をヨー角検出用情報画像の中央に配置する。なお、ここで述べる「任意の位置に配置する」とは、推定された特徴部位の境界部EGから特徴線FLを検出する際に、特徴部位が存在する領域と、特徴部位が存在しないとされる領域と、を認識しやすくすることができる位置に配置することである。本実施形態において、特徴部位は、情報画像で検知されたパレット61の存在候補から推定されるパレット61の端部61xである。また、端部61xのエッジ部61xaが境界部EGに該当する。ヨー角検出用情報画像は、モノクロで表現されている。
図17(a)に示すように、パレット61の前面61aの下端付近が特定部位としての端部61xである。従って、前面61aのエッジ部61xaが、ヨー角検出用情報画像の基準線SL付近に配置される。なお、この時点では、パレット61の姿勢検出精度は高くないため、その情報に基づいて投影された前面61aのエッジ部61xaは基準線SLからずれたり傾いたりする場合がある。特徴部位であるパレット61の端部61xが存在する領域を第1の領域E1とする。また、特徴部位が存在しないとされる領域、すなわちパレット61の背景の領域を第2の領域E2とする。
【0060】
図17(b)に示すように、姿勢検出部109は、第1の領域E1から選択された第1の局所領域LE1、及び第2の領域E2から選択された第2の局所領域LE2を設定する。第1の局所領域LE1と第2の局所領域LE2とは、基準線SLを挟んで互いに対向するように設定される。また、第1の局所領域LE1及び第2の局所領域LE2は、基準線SLから所定の画素分だけ離間した位置に設定される。第1の局所領域LE1及び第2の局所領域LE2は、基準線SLが延びる方向において、当該基準線SLの略中央位置に設定される。
【0061】
姿勢検出部109は、第1の局所領域LE1における視覚的パラメータの取得結果と、第2の局所領域LE2における視覚的パラメータの取得結果との平均値を、視覚的パラメータの変化を判定する閾値として用いる。視覚的パラメータは画素値である。視覚的パラメータは、ヨー角検出用情報画像がモノクロで表現されている場合の濃淡値である。濃淡値は、RGB等の各種成分の輝度を示す値である。
【0062】
図18(a)に示すように、姿勢検出部109は、第1の領域E1と、第2の領域E2とを跨ぐように、ヨー角検出用情報画像を走査して視覚的パラメータの変化を取得する。姿勢検出部109は、図面のヨー角検出用情報画像における右側上部からスタートして、各位置における濃淡値を取得しながらスキャニングを行う。一行あたりのスキャニングは、第2の領域E2から第1の領域E1へ跨ぐように行われる。姿勢検出部109は、視覚的パラメータの変化に基づいてパレット61のエッジ部61xaを示す表記情報を算出する。姿勢検出部109は、スキャニングの各行において、濃淡値が閾値を最初に下回る(上回る)画素の位置をエッジ部61xa上の画素として検出し、表記情報を配置する。
図18(b)に示すように、表記情報は境界候補点となる点群PGである。姿勢検出部109は、検出した画素に点をプロットする。これにより、プロットされた点によって、エッジ部61xaを示す点群PGが形成される。
【0063】
図19に示すように、姿勢検出部109は、表記情報である点群PGに基づいて特徴線FLを検出する。姿勢検出部109は、点群PGに対してRANSACを適用することで特徴線FLを検出する。
【0064】
姿勢検出部109は、特徴線FLとヨー角検出用情報画像中の基準線SLとの角度の差分に基づいて、姿勢を検出する、姿勢検出部109は、特徴線FLと基準線SLとの角度の差分を演算する。姿勢検出部109は、演算したヨー角の差分を解消するように、ヨー角を修正する。これにより、ヨー角検出用情報画像は、特徴線FLが基準線SLと一致するような情報画像に修正される。演算部104は、修正後のヨー角でパレット61の前面61aの姿勢を決定する。次に、演算部104は、パレット61の前面61aを特徴面SFとする情報画像から、当該前面61aの三次元の位置を算出する。
【0065】
運転制御部107は、演算部104によって演算されたパレット61の前面61aの位置及び姿勢に関する情報に基づいて、車体51の位置や姿勢を制御する。運転制御部107は、姿勢検出部109によってヨー角を修正した上で推定された位置及び姿勢に基づいて制御を行う。運転制御部107は、軌道TL1を走行している時点で荷役対象のパレット61の前面61aの位置及び姿勢を把握しているため、フォークリフト50がパレット61の前面61aの穴部にフォーク25をスムーズに挿入できるように、フォークリフト50の旋回位置や、旋回軌道(軌道TL2)を制御する。なお、運転制御部107は、物品検出装置100の制御部110とは別個の制御ユニットとして構成されていてもよい。この場合、物品検出装置100の制御部110は、演算結果を運転制御部107の制御ユニットへ出力し、運転制御部107は、物品検出装置100の演算結果に基づいて運転制御を行う。
【0066】
次に、
図22を参照して、本実施形態に係る物品検出方法の内容について説明する。
図22は、物品検出方法の処理内容を示すフロー図である。
図22に示す処理内容は、物品検出装置100の制御部110によって実行される。ただし、
図22に示す処理内容は一例に過ぎず、これに限定されるものではない。
【0067】
図22に示すように、制御部110の画像取得部101は、車体51の周囲を撮影した周囲画像を取得する画像取得ステップを実行する(ステップS10)。画像取得ステップS10において、画像取得部101は、撮影部32で撮影された画像を周囲画像として取得する。次に、特徴面設定部102は、周囲画像を撮影する場所の移動と同期して移動する移動平面DFに投影される投影画像を取得する投影画像取得ステップを実行する(ステップS20)。次に、特徴面設定部102は、荷役対象のパレット61の前面61aの特徴が示される特徴面SFを設定する特徴面設定ステップを実行する(ステップS30)。特徴面設定部102は、周囲画像から作成された移動平面DFの投影画像に基づいて、パレット61及び棚60に関する三次元の復元形状を生成し、復元形状に基づいて棚60の前面60aに特徴面SFを設定する(
図9参照)。
【0068】
情報画像作成部103は、周囲画像に基づいて、パレット61の前面61aに関する情報を認識し易い状態に変換した情報画像を作成する情報画像作成ステップを実行する(ステップS40)。情報画像作成ステップS40では、情報画像作成部103は、特徴面SFを用いて情報画像を作成する。情報画像作成部103は、情報画像に対し、一つの画素に相当する寸法を対応付けている。
【0069】
演算部104は、情報画像に基づいて、荷役対象のパレット61を検出するパレット検出ステップを実行する(ステップS50)。演算部104は、情報画像に基づいて、パレット61の前面61aの位置及び姿勢を演算する演算ステップを実行する(ステップS60)。演算ステップS60において、演算部104は、情報画像の画素とパレット61の前面61aの寸法との関係に基づいて、演算を行う。演算部104は、情報画像から検出されたパレット61の前面61aのエッジ部に関する情報と、記憶部108に予め記憶された前面61aの実寸情報とのテンプレートマッチングを実施する(
図11参照)。これにより、演算部104は、荷役対象のパレット61を検出し、前面61aの位置及び姿勢を演算する。
【0070】
制御部110は、演算部104による演算の高精度化を図るための高精度化処理ステップを実行する(ステップS70)。高精度化処理ステップS70では、調整部106は、情報画像を作成した時の特徴面SFに関する三次元面の方程式のパラメータを調整する。調整部106は、エッジテンプレートと一致度が最大となるパラメータを求め最も一致する情報画像を算出する三次元面の方程式を検出し、特徴面SFを設定する(
図13参照)。そして、情報画像作成部103は、調整された特徴面SFを用いて情報画像を作成する。演算部104は、調整された特徴面SFを用いて作成された情報画像に基づいて、パレット61の前面61aの位置及び姿勢を演算する。
【0071】
姿勢検出部109は、高精度化処理ステップS70で高精度化された演算ステップS60での演算結果に基づいて、パレット61の前面61aの姿勢を検出する姿勢検出ステップを実行する(ステップS80)。姿勢検出ステップS80では、情報画像作成部103は、周囲画像が取得された位置で取得される情報を、パレット61の特徴線FLを含む水平面に対して投影したヨー角検出用情報画像を作成する。また、姿勢検出ステップS80では、姿勢検出部109は、ヨー角検出用情報画像から特徴線FLを検出し、当該特徴線FLとヨー角検出用情報画像中の基準線SLとの角度の差分に基づいて、姿勢を検出する。姿勢検出部109は、角度の差分に基づいてヨー角を修正する。これにより、演算部104は、修正されたヨー角にて姿勢を決定し、当該ヨー角に基づいてパレット61の前面61aの位置を算出する。
【0072】
なお、
図20に示すように、撮影部32の高さよりも低い位置に存在するパレット61(61A,61B)については下面投影を行い、高い位置に存在するパレット61(61C)については上面投影を行う。撮影部32の高さよりも低い位置に存在するパレット61については、パレット61と床面との濃淡値の差が出やすいので、特徴部位をパレットの端部とした。
【0073】
しかし、
図21に示すように、撮影部32の高さよりも高い位置に存在するパレット61は、背景がパレットと同様な濃度値を持つ荷物などでその境界が不明瞭な場合がある。そのような場合は、特徴部位として情報画像で検知されたパレット61の存在候補から推定されるパレット61の穴部62の影の端部62xを用いることができる。端部62xのエッジ部62xaが境界部EGに該当する。パレット61は、穴部62を一対有している。従って、第1の局所領域LE1及び第2の局所領域LE2の組は、各穴部62のエッジ部62xaに対してそれぞれ設定される。以降の処理については、
図18及び
図19に示した処理と同様である。
【0074】
運転制御部107は、演算部104によって演算されたパレット61の前面61aの位置及び姿勢に関する情報に基づいて、車体51の位置や姿勢を制御する運転制御ステップを実行する(ステップS90)。運転制御ステップS90では、運転制御部107は、フォークリフト50がパレット61の前面61aの穴部にフォーク25をスムーズに挿入できるように、フォークリフト50の旋回位置や、旋回軌道(軌道TL2)を制御する。以上により、
図22に示す処理が完了する。なお、上記処理の中から適宜処理を省略してもよい。例えば、高精度化処理ステップS70を省略してもよい。また、姿勢検出ステップS80を先に実行し、高精度化処理ステップS70を後から実行してもよい。
【0075】
次に、本実施形態に係る物品検出装置100、物品検出方法、及びフォークリフト50の作用・効果について説明する。
【0076】
本実施形態に係る物品検出装置100は、物品検出装置100の周囲を撮影した周囲画像を取得する画像取得部101と、周囲画像に基づいて、パレット61の前面61aに関する情報を認識し易い状態に変換した情報画像を作成する情報画像作成部103と、を備えている。例えば、物品検出装置100とパレット61との距離や位置関係により、物品検出装置100の周囲の様子を示した画像からは、直接的に物品を検出しにくい場合がある。具体的には、
図5に示すように、魚眼カメラの周囲画像では、棚60及びパレット61が湾曲した状態で示されている。当該周囲画像からは、直接的にパレット61を特定しにくい。これに対し、情報画像作成部103は、物品検出装置100の周囲を撮影した周囲画像に基づいて、パレット61の前面61aを検出するのに適した情報画像を作成できる。具体的には、
図10に示すように、情報画像中では、パレット61の前面61aは、正面から撮影したような形状で示され、且つ、撮影位置によらず一定の大きさにて示される。また、物品検出装置100は、情報画像に基づいて、パレット61の前面61aの位置及び姿勢を演算する演算部104を備える。このように、演算部104は、パレット61の前面61aを検出するのに適した情報画像を介して演算を行うことで、物品検出装置100がパレット61の近傍に近付く前段階で、前面61aの位置及び姿勢を演算できる。従って、荷役対象である物品を、物品との位置関係によらずに検出することができる。
【0077】
ここで、物品検出装置100は、演算部104の演算結果に基づいて、パレット61の前面61aの姿勢を検出する姿勢検出部109と、を備える。情報画像作成部103は、周囲画像が取得された位置で取得される情報を、パレット61の特徴線FLを含む水平面に対して投影したヨー角検出用情報画像を作成する。当該ヨー角検出用情報画像は、水平面を投影面とした情報画像である。そのため、ヨー角検出用情報画像中のパレット61の特徴線FLは、パレット61の姿勢のうち水平面内での方位角であるヨー角を検出し易い線となる。姿勢検出部109は、ヨー角検出用情報画像から特徴線FLを検出し、当該特徴線FLとヨー角検出用情報画像中の基準線SLとの角度の差分に基づいて、姿勢を検出する。当該角度の差分により、演算部104の演算結果に係るパレット61の姿勢を修正することができる。
【0078】
また、姿勢検出部109は、ヨー角検出用情報画像において、パレット61における予め推定された特徴部位の境界部をヨー角検出用情報画像の任意の位置に配置する。本実施形態では、特徴線FLの候補となる特徴部位の境界部をヨー角検出用情報画像の中央に配置することで、特徴部位であるパレット61の端部61xが存在する領域である第1の領域E1と、特徴部位が存在しないとされる領域である第2の領域E2とを区別しやすくなるため、特徴線FLの検出が行い易くなる。姿勢検出部109は、特徴部位が存在する第1の領域E1と、特徴部位が存在しないとされる第2の領域E2とを跨ぐように、ヨー角検出用情報画像を走査して視覚的パラメータの変化を取得する。これにより、特徴部位の境界部付近における視覚的パラメータの変化の情報を漏れなく取得することができる。姿勢検出部109は、視覚的パラメータの変化に基づいてパレット61の境界部を示す表記情報を算出し、表記情報に基づいて特徴線FLを検出する。これにより、ヨー角検出用情報画像内に、パレット61の境界部が存在し得る箇所に表記情報で表記することができる。これにより、正確に特徴線FLを検出することができる。以上より、荷役対象であるパレット61の姿勢を正確に検出できる。
【0079】
視覚的パラメータは、第2の情報画像がモノクロで表現されている場合の濃淡値であってよい。この場合、モノクロの画像においては濃淡値の変化が取得し易いため、演算の負荷を軽減することができる。
【0080】
表記情報は、点群であり、姿勢検出部109は、点群に対してRANSACを適用することで特徴線FLを検出してよい。RANSACは、外れ値が存在している場合の対応に強いため、特徴線FLの検出を堅牢にすることができる。
【0081】
物品はパレット61であり、特徴部位は、第1の情報画像で検知されたパレット61の存在候補から推定されるパレット61の端部61xであってよい。パレット61の端部61xは、直線状の形状を有するため、特徴線FLとして検出しやすい。
【0082】
物品はパレット61であり、特徴部位は第1の情報画像で検知されたパレット61の存在候補から推定されるパレット61の穴部62の影の端部62xであってよい。パレット61の穴部62が影になり直線状になりやすいため、特徴線FLとして検出しやすい。
【0083】
姿勢検出部109は、第1の領域E1から選択された第1の局所領域LE1における視覚的パラメータの取得結果と、第2の領域E2から選択された第2の局所領域LE2における視覚的パラメータの取得結果との平均値を、視覚的パラメータの変化を判定する閾値として用いてよい。
【0084】
本実施形態の一態様に係る物品検出方法は、荷役するパレット61を検出する物品検出方法であって、周囲を撮影した周囲画像を取得する画像取得ステップと、周囲画像に基づいて、パレット61の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成ステップと、第1の情報画像に基づいて、荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算ステップと、演算ステップでの演算結果に基づいて、荷役対象部位の姿勢を検出する姿勢検出ステップと、を備え、姿勢検出ステップでは、周囲画像が取得された位置で取得される情報を、パレット61の特徴線FLを含む水平面に対して投影したヨー角検出用情報画像を作成し、ヨー角検出用情報画像から特徴線FLを検出し、当該特徴線FLとヨー角検出用情報画像中の基準線SLとの角度の差分に基づいて、姿勢を検出する。
【0085】
この物品検出方法によれば、上述の物品検出装置100と同趣旨の作用・効果を得ることができる。
【0086】
本実施形態に係るフォークリフト50は、上述の物品検出装置100を備える。
【0087】
このフォークリフト50によれば、上述の物品検出装置と同趣旨の作用・効果を得ることができる。
【0088】
図23は、本発明を用いてパレット61のヨー角の修正を行った場合の実験結果について説明する。
図23(a)は、
図20のパレット61Aについてのヨー角の推定結果、
図23(b)は、
図20のパレット61Bについてのヨー角の推定結果を示すグラフである。
図23(a)(b)の実施例に係るグラフG1,G3は上述の実施形態に係る物品検出方法で推定したヨー角を示す。
図23(a)(b)の比較例に係るグラフG2,G4は上述の実施形態に係る物品検出方法の途中の初期投影時に推定したヨー角を示す。初期投影時に推定したヨー角とは、上述の実施形態のうち、演算ステップS60の段階で推定した推定結果である。なお、複数(ここでは9枚)の画像を用いて推定を行った。この9枚において、カメラに対するヨー角は変えずに実験を行っているため、ヨー角がほぼ一定となるのが正解であり、
図23に示すように、何れのパレット61A,61Bにおいても、実施例に係るグラフG1,G3の方がバラツキが少なかった。
【0089】
本発明は、上述の実施形態に限定されるものではない。
【0090】
例えば、上述の実施形態では、産業車両としてリーチ式のフォークリフトを例示したが、カウンタバランス式のフォークリフトや、車体の向きを変えずに棚への荷役が可能なフォークリフトなどの産業車両に上述の物品検出装置100が適用されてもよい。また、荷役対象の物品としてパレット61を例示したが、段ボールなどを荷役対象の物品としてもよい。また、上述の物品検出装置は、産業車両に限らず、自動倉庫の物品搬送手段などに採用されてもよい。
【0091】
[形態1]
荷役する物品を検出する物品検出装置であって、
前記物品検出装置の周囲を撮影した周囲画像を取得する画像取得部と、
前記周囲画像に基づいて、前記物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成部と、
前記第1の情報画像に基づいて、前記荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算部と、
前記演算部の演算結果に基づいて、前記荷役対象部位の前記姿勢を検出する姿勢検出部と、を備え、
前記情報画像作成部は、前記周囲画像が取得された位置で取得される前記情報を、前記物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、
前記姿勢検出部は、
前記第2の情報画像において、前記物品における予め推定された特徴部位の境界部を前記第2の情報画像の任意の位置に配置し、
前記特徴部位が存在する第1の領域と、前記特徴部位が存在しないとされる第2の領域とを跨ぐように、前記第2の情報画像を走査して視覚的パラメータの変化を取得し、
前記視覚的パラメータの変化に基づいて前記物品の前記境界部を示す表記情報を算出し、
前記表記情報に基づいて前記特徴線を検出し、
前記特徴線と前記第2の情報画像中の基準線との角度の差分に基づいて、前記姿勢を検出する、物品検出装置。
[形態2]
前記視覚的パラメータは、前記第2の情報画像がモノクロで表現されている場合の濃淡値である、形態1に記載の物品検出装置。
[形態3]
前記表記情報は、点群であり、
前記姿勢検出部は、前記点群に対してRANSACを適用することで前記特徴線を検出する、形態1又は2に記載の物品検出装置。
[形態4]
前記物品はパレットであり、
前記特徴部位は、前記第1の情報画像で検知された前記パレットの存在候補から推定される前記パレットの端部である、形態1~3の何れか一項に記載の物品検出装置。
[形態5]
前記物品はパレットであり、
前記特徴部位は第1の情報画像で検知された前記パレットの存在候補から推定される前記パレットの穴部の影の端部である、形態1~3の何れか一項に記載の物品検出装置。
[形態6]
前記姿勢検出部は、前記第1の領域から選択された第1の局所領域における前記視覚的パラメータの取得結果と、前記第2の領域から選択された第2の局所領域における前記視覚的パラメータの取得結果との平均値を、前記視覚的パラメータの変化を判定する閾値として用いる、形態1~5の何れか一項に記載の物品検出装置。
[形態7]
荷役する物品を検出する物品検出方法であって、
周囲を撮影した周囲画像を取得する画像取得ステップと、
前記周囲画像に基づいて、前記物品の荷役対象部位に関する情報を認識し易い状態に変換した第1の情報画像を作成する情報画像作成ステップと、
前記第1の情報画像に基づいて、前記荷役対象部位の位置及び姿勢の少なくとも一方を演算する演算ステップと、
前記演算ステップでの演算結果に基づいて、前記荷役対象部位の前記姿勢を検出する姿勢検出ステップと、を備え、
前記姿勢検出ステップでは、
周囲画像が取得された位置で取得される情報を、前記物品の特徴線を含む水平面に対して投影した第2の情報画像を作成し、
前記第2の情報画像の作成において、前記物品における予め推定された特徴部位の境界部を前記第2の情報画像の任意の位置に配置し、
前記特徴部位が存在する第1の領域と、前記特徴部位が存在しないとされる第2の領域とを跨ぐように、前記第2の情報画像を走査して視覚的パラメータの変化を取得し、
前記視覚的パラメータの変化に基づいて前記物品の前記境界部を示す表記情報を算出し、
前記表記情報に基づいて前記特徴線を検出し、
前記特徴線と前記第2の情報画像中の基準線との角度の差分に基づいて、前記姿勢を検出する、物品検出方法。
[形態8]
形態1~6の何れか一項に記載の物品検出装置を備える産業車両。
【符号の説明】
【0092】
32…撮影部、50…フォークリフト(産業車両)、51…車体、61…パレット(物品)、61a…前面(荷役対象部位)、100…物品検出装置、101…画像取得部、103…情報画像作成部、104…演算部、109…姿勢検出部、110…制御部。