(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023042970
(43)【公開日】2023-03-28
(54)【発明の名称】壁検出装置、搬送車両及び壁検出方法
(51)【国際特許分類】
G06T 7/521 20170101AFI20230320BHJP
G06T 7/00 20170101ALI20230320BHJP
B66F 9/24 20060101ALI20230320BHJP
【FI】
G06T7/521
G06T7/00 650Z
B66F9/24 L
【審査請求】未請求
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2021150413
(22)【出願日】2021-09-15
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】五十川 賢造
(72)【発明者】
【氏名】小野 利幸
【テーマコード(参考)】
3F333
5L096
【Fターム(参考)】
3F333AA02
3F333AA20
3F333FA11
3F333FD15
3F333FE05
3F333FE10
5L096AA09
5L096BA08
5L096CA18
5L096DA02
5L096FA09
5L096FA32
5L096FA33
5L096FA52
5L096FA66
5L096FA67
5L096GA51
5L096HA13
5L096JA11
(57)【要約】 (修正有)
【課題】必ずしも単純な形状ではない壁面に挟まれた領域に進入する際に、壁面に接触するリスクを低減させる壁検出装置を提供する。
【解決手段】水平断面が凹凸状の波板で作られた、互いに対向する側壁(第一壁、第二壁)をもつコンテナの奥に進入する搬送車両に搭載される壁検出装置100であって、取得部101及び検出部102を備える。取得部101は、互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得する。検出部102は、第一壁の概形を表す第一の平面及び第二壁の概形を表す第二の平面を表現し、且つ、第一の平面と第二の平面とが互いに平行であることを表現するモデルと、取得された点群とに基づいて、第一の平面に対応する第一の検出壁と、第二の平面に対応する第二の検出壁とを検出する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得する取得部と、
前記第一壁の概形を表す第一の平面及び前記第二壁の概形を表す第二の平面を表現し且つ前記第一の平面と前記第二の平面とが互いに平行であることを表現するモデルと、前記取得された点群とに基づいて、前記第一の平面に対応する第一の検出壁と、前記第二の平面に対応する第二の検出壁とを検出する検出部と、
を備えた壁検出装置。
【請求項2】
前記検出部は、前記第一壁に対応する前記複数の点から前記第一の平面を検出し、前記第二壁に対応する前記複数の点から前記第二の平面を検出し、前記第一の平面と前記第二の平面とを互いに平行となるように補正することにより、前記第一の検出壁及び前記第二の検出壁を検出する、請求項1に記載の壁検出装置。
【請求項3】
前記検出部は、前記第一の検出壁を前記第二の検出壁側に平行移動させて第一の修正壁に修正し、前記第二の検出壁を前記第一の検出壁側に平行移動させて第二の修正壁に修正する修正部を備え、
前記第一の修正壁と前記第二の修正壁との間の前記点群内の点の数は、前記第一の検出壁と前記第二の検出壁との間の前記点群内の点の数より少ない、
請求項1又は2に記載の壁検出装置。
【請求項4】
前記修正部は
前記第一壁に対応する前記複数の点のうち、前記第一の検出壁より前記第二の検出壁側で得られた複数の点と前記第一の検出壁との間の第一距離の第一平均値に基づいて、前記第一の検出壁を平行移動させ、
前記第二壁に対応する前記複数の点のうち、前記第二の検出壁より前記第一の検出壁側で得られた複数の点と前記第二の検出壁との間の第二距離の第二平均値に基づいて、前記第二の検出壁を平行移動させる、
請求項3に記載の壁検出装置。
【請求項5】
前記修正部は、
前記第一距離の分散又は標準偏差に所定の正の定数を乗じた値を前記第一平均値に加算し、得られた加算結果だけ前記第一の検出壁を平行移動させ、
前記第二距離の分散又は標準偏差に所定の正の定数を乗じた値を前記第二平均値に加算し、得られた加算結果だけ前記第二の検出壁を平行移動させる、
請求項4に記載の壁検出装置。
【請求項6】
前記修正部は、
前記第一壁に対応する前記複数の点のうち、最も前記第二の検出壁側に外れた点の位置に前記第一の検出壁を平行移動させ、
前記第二壁に対応する前記複数の点のうち、最も前記第一の検出壁側に外れた点の位置に前記第二の検出壁を平行移動させる、
請求項3に記載の壁検出装置。
【請求項7】
前記取得部は、センサを有し、当該センサにより前記複数の点の各々と当該センサとの間の距離を測定することにより前記点群を取得し、
前記検出部は、前記点群内の複数の点を、前記第一の平面から所定距離内の複数の点からなる第一の点群と、前記第二の平面から所定距離内の複数の点からなる第二の点群とに分類し、前記第一の点群内の複数の点を前記第一壁に対応付けし、前記第二の点群内の複数の点を前記第二壁に対応付けし、前記第一の点群と前記第二の点群と前記モデルとに基づいて、前記第一の検出壁と前記第二の検出壁とを検出し、
前記所定距離は、前記センサの公差と、前記第一壁及び前記第二壁における設計上の凹凸の高さとのうちの大きい方の値以上である、
請求項1乃至6のいずれか一項に記載の壁検出装置。
【請求項8】
前記モデルは、前記第一の平面の奥側端と前記第二の平面の奥側端とにそれぞれ直交する第三の平面を更に表現し、
前記検出部は、前記モデルと、前記取得した点群とに基づいて、前記第一の検出壁と、前記第二の検出壁と、前記第三の平面に対応する第三の検出壁とを検出する、
請求項1乃至7のいずれか一項に記載の壁検出装置。
【請求項9】
前記検出部は、前記第一の検出壁と前記第二の検出壁との間の距離が閾値以上の場合、前記第一壁と前記第二壁とをもつコンテナ又は通路が存在しない旨を出力する、
請求項1乃至8のいずれか一項に記載の壁検出装置。
【請求項10】
前記検出部は、前記第一の検出壁と前記第二の検出壁との複数の組合せが得られた場合、前記複数の組合せのうち、最も長い線分を含む組合せを選択することにより前記第一の検出壁及び前記第二の検出壁を検出する、
請求項1乃至9のいずれか一項に記載の壁検出装置。
【請求項11】
前記座標列は、二次元座標の座標列であり、
前記モデルは、前記第一の平面の水平断面を表す第一直線の傾きと前記第二の平面の水平断面を表す第二直線の傾きとが同一であることにより、前記第一の平面と前記第二の平面とが互いに平行であることを表現する、
請求項1乃至10のいずれか一項に記載の壁検出装置。
【請求項12】
前記座標列は、三次元座標の座標列であり、
前記モデルは、前記第一の平面の法線ベクトルと前記第二の平面の法線ベクトルとが同一であることにより、前記第一の平面と前記第二の平面とが互いに平行であることを表現する、
請求項1乃至10のいずれか一項に記載の壁検出装置。
【請求項13】
前記取得部とは反対方向に向けて設けられ、前記第一壁と前記第二壁とに対応する複数の点の座標列である点群を取得する、他の取得部と、
前記検出部に設けられた選択部と、
を更に備え、
前記検出部は、前記取得部により取得された点群と、前記他の取得部により取得された点群とに基づいて、前記第一の検出壁と前記第二の検出壁との複数の組合せを検出し、
前記選択部は、前記複数の組合せのうち、最も長い検出壁を含む組合せを選択し、
前記検出部は、前記選択された組合せである前記第一の検出壁及び前記第二の検出壁を検出する、
請求項1乃至12のいずれか一項に記載の壁検出装置。
【請求項14】
請求項1乃至13のいずれか一項に記載の壁検出装置を搭載した、自走可能な搬送車両。
【請求項15】
互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得することと、
前記第一壁の概形を表す第一の平面及び前記第二壁の概形を表す第二の平面を表現し且つ前記第一の平面と前記第二の平面とが互いに平行であることを表現するモデルと、前記取得された点群とに基づいて、前記第一の平面に対応する第一の検出壁と、前記第二の平面に対応する第二の検出壁とを検出することと、
を備えた壁検出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、壁検出装置、搬送車両及び壁検出方法に関する。
【背景技術】
【0002】
大型の搬送車両において、荷積み用のロボットアームや搬送用のコンベヤが搭載され、荷物を搬送可能なバンニングロボットが知られている。この種の搬送車両は、コンテナや通路などの側壁に挟まれた領域に進入し、コンベヤ及びロボットアームを介して荷物を進入先に搬送するので、物流の自動化及び少人化に有用である。また例えば、他の種類の搬送車両としては、コンテナや通路などの側壁に挟まれた領域に進入し、昇降可能なフォークを介して荷物を進入先に搬送するフォークリフトが知られている。
【0003】
一方、これらの搬送車両は、大型化に伴い、コンテナや通路に接触するリスクが増大する。このため、搬送車両は、レーザレンジファインダ(LRF)等のセンサを有する壁検出装置が搭載される場合がある。壁検出装置は、センサと側壁との距離を検出して壁面を表すパラメタを出力することにより、壁検出を実行して、壁面に接触するリスクを低減させる。このような壁検出装置は、壁面の間隔が搬送車両の幅に近いほど、また、搬送車両及び通路が長いほど、壁面のパラメタに高い精度が要求される。
【0004】
しかしながら、コンテナや通路などの壁面は必ずしも単純な形状ではない。例えば、コンテナの壁は、剛性を高めるための波板で構成される場合がある。また、通路の壁は、ドアノブや手すり等の突起が存在する場合がある。なお、このように様々な壁面の正確な形状を事前にモデル化することは不可能である。
【0005】
従って、壁検出装置に対しては、必ずしも単純な形状ではない壁面に挟まれた領域に進入する際に、壁面に接触するリスクを低減させることが望まれている。
【先行技術文献】
【特許文献】
【0006】
【非特許文献】
【0007】
【非特許文献1】M. A. Fischler et al., “Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography,” Communications of the ACM, vol. 24, no. 6, 1981.
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明が解決しようとする課題は、必ずしも単純な形状ではない壁面に挟まれた領域に進入する際に、壁面に接触するリスクを低減させる壁検出装置、搬送車両及び壁検出方法を提供することである。
【課題を解決するための手段】
【0009】
実施形態に係る壁検出装置は、取得部及び検出部を備えている。前記取得部は、互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得する。前記検出部は、前記第一壁の概形を表す第一の平面及び前記第二壁の概形を表す第二の平面を表現し且つ前記第一の平面と前記第二の平面とが互いに平行であることを表現するモデルと、前記取得された点群とに基づいて、前記第一の平面に対応する第一の検出壁と、前記第二の平面に対応する第二の検出壁とを検出する。
【図面の簡単な説明】
【0010】
【
図1】第1の実施形態に係る壁検出装置を搭載した搬送車両及びその使用状況を表す平面図。
【
図2】第1の実施形態に係る壁検出装置の構成を表すブロック図。
【
図3】第1の実施形態に係る取得部を説明するための模式図。
【
図4】第1の実施形態における動作を説明するためのフローチャート。
【
図5】第1の実施形態における動作の具体例を示すフローチャート。
【
図6】第1の実施形態における動作を説明するための模式図。
【
図7】第1の実施形態における動作を説明するための模式図。
【
図8】第2の実施形態における動作を説明するためのフローチャート。
【
図9】第2の実施形態における点群と側壁の関係を表す図。
【
図10】第2の実施形態における初期抽出結果を表す図。
【
図11】第2の実施形態における二次抽出結果を表す図。
【
図12】第1及び第2の実施形態の変形例に係る壁検出装置を搭載した搬送車両及びその使用状況を表す平面図。
【
図13】第1及び第2の実施形態の変形例に係る壁検出装置の構成を表すブロック図。
【
図14】第3の実施形態に係る壁検出装置のハードウェア構成を表すブロック図。
【
図15】第3の実施形態の変形例に係る壁検出装置のハードウェア構成を表すブロック図。
【発明を実施するための形態】
【0011】
以下、図面を参照して各実施形態について説明する。以下の説明は、単純な形状ではない壁面として、波板で構成された壁面を例に挙げて述べる。波板は、周期的な凹凸の断面形状をもつ板であり、例えば、コンテナ等に用いられている。また、波板の凹凸の高さは、コンテナの外寸及び内寸に対応している。コンテナの外寸及び内寸は、例えば、ISO(International Organization for Standardization)の規格に基づいている。コンテナ内の波板の凹凸の高さは、不明であるが、内寸と外寸との差分として推測することが可能である。
【0012】
(第1の実施形態)
図1は、第1の実施形態に係る壁検出装置を搭載した搬送車両及びその使用状況を表す平面図である。壁検出装置100は、水平断面が凹凸状の波板で作られた側壁201,202をもつコンテナ200の奥に進入する搬送車両300に搭載される。壁検出装置100の取得部101は、搬送車両300の進行方向先端中央部に配置されている。
【0013】
ここで、壁検出装置100は、
図2に示すように、壁面の表面の座標列である点群を取得する取得部101と、点群から平行な2壁面を検出する検出部102を備えている。検出部102は、修正部103を更に備えている。修正部103は、当該検出した2壁面である検出壁の位置を搬送車両300が壁面に接触せずに移動できる範囲に修正した修正壁104に変更する。
【0014】
詳しくは、取得部101は、互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得する。例えば、取得部101は、例えば、光学式のセンサを有している。当該センサは、測定光を対象物(壁)に照射し、対象物からの反射光を受光することで当該センサと対象物との間の距離を測定する。取得部101が有する光学式のセンサとしては、例えば、二次元座標の座標列である点群を取得するためのレーザレンジファインダ(LRF)や、三次元座標の座標列である点群を取得するためのToF(time-of-flight camera)カメラ等が適宜、使用可能となっている。なお、取得部101としては、光学式のセンサに限らず、超音波式のセンサを有してもよい。当該センサは、超音波を対象物(壁)に送信し、対象物からの反射波を受信することで当該センサと対象物との間の距離を測定してもよい。但し、本実施形態では、取得部101がレーザレンジファインダ(LRF)を有する場合を例に挙げて述べる。例えば、
図3に示すように、取得部101のレーザレンジファインダ101aは、水平方向に対する照射角度を変更しながらレーザ光101bを周辺に照射する。なお、レーザ光101bは、レーザレンジファインダ101aに近い側では側壁201(第一壁)の凹凸の奥に到達し、遠い側では凹凸の中心線251よりも浅い部分にしか到達しない。また、照射されたレーザ光101bは、側壁201の表面の点p
201(0), p
201(1),・・・,p
201(N
201-2), p
201(N
201-1)で反射される。レーザレンジファインダ101aはその反射光を受光し、各々の点p
201とレーザレンジファインダ101aの相対距離を算出する。以下、相対距離と照射角度の対から得られる複数の点の座標列を点群と呼ぶ。なお、正面の照射角度を基準としたとき、正面左側の照射角度に対応する点群が側壁201(第一壁)に対応し、正面右側の照射角度に対応する点群が側壁202(第二壁)に対応する。なお、この側壁201に関する説明は、符号201を符号202に変更することで、側壁202についても同様に適用される。また、取得部101は、点群取得部と呼んでもよい。
【0015】
一方、検出部102は、第一壁の概形を表す第一の平面及び第二壁の概形を表す第二の平面を表現し且つ第一の平面と第二の平面とが互いに平行であることを表現するモデルと、当該取得された点群とに基づいて、第一の平面に対応する第一の検出壁と、第二の平面に対応する第二の検出壁とを検出する。ここで、モデルは、点群が二次元座標の座標列の場合、例えば、第一の平面の水平断面を表す第一直線の傾きと第二の平面の水平断面を表す第二直線の傾きとが同一であることにより、第一の平面と第二の平面とが互いに平行であることを表現してもよい。
【0016】
また例えば、検出部102は、第一壁に対応する複数の点から第一の平面を検出し、第二壁に対応する複数の点から第二の平面を検出し、第一の平面と第二の平面とを互いに平行となるように補正することにより、第一の検出壁及び第二の検出壁を検出する。
【0017】
具体的には例えば、検出部102は、センサにより取得された点群内の複数の点を、第一の平面から所定距離内の複数の点からなる第一の点群と、第二の平面から所定距離内の複数の点からなる第二の点群とに分類し、第一の点群内の複数の点を第一壁に対応付けし、第二の点群内の複数の点を第二壁に対応付けする。また、検出部102は、第一の点群と第二の点群と当該モデルとに基づいて、第一の検出壁と第二の検出壁とを検出する。なお、所定距離は、当該センサの公差と、第一壁及び第二壁における設計上の凹凸の高さとのうちの大きい方の値以上であることが望ましい。例えば、所定距離は、当該公差と、当該凹凸の高さのうちの大きい方の値としてもよく、当該公差と、当該凹凸の高さとを加算した値としてもよい。また例えば、所定距離は、当該公差と、当該凹凸の高さとを加算した値を定数倍(例、2倍)した値としてもよい。
【0018】
補足すると、センサであるレーザレンジファインダ101aから取得した点群は、取得した直後ではどの壁からの反射に対応する点群かが分からない。そのため、非特許文献1記載の技術では、コンテナ壁の検出と、検出された壁に対する点の対応付けを並列的に実行している。この対応付けの際、一枚の壁からの反射で得られた点がどの範囲にバラつくかの目安が必要となるので、この目安を所定距離(後述する最大距離Lmax)の範囲内として与えている。
【0019】
修正部103は、第一の検出壁を第二の検出壁側に平行移動させて第一の修正壁に修正し、第二の検出壁を第一の検出壁側に平行移動させて第二の修正壁に修正する。この場合、第一の修正壁と第二の修正壁との間の点群内の点の数は、第一の検出壁と第二の検出壁との間の点群内の点の数より少ない。なお、
図2中、修正壁104は、第一の修正壁及び第二の修正壁を表している。また、修正部103は、例えば、第一壁に対応する複数の点のうち、最も第二の検出壁側に外れた点の位置に第一の検出壁を平行移動させてもよい。同様に、修正部103は、第二壁に対応する複数の点のうち、最も第一の検出壁側に外れた点の位置に第二の検出壁を平行移動させてもよい。但し、第一の検出壁と第二の検出壁とをそれぞれ平行移動させる方法は、これに限定されない。
【0020】
一方、搬送車両300は、壁検出装置100を搭載した、自走可能な搬送装置である。詳しくは、搬送車両300は、倉庫などの広い領域に限らず、コンテナ内又は通路内のように壁面に挟まれた領域を自走可能で、且つ荷物を搬送可能な車両である。搬送車両300としては、例えば、バンニングロボット及びフォークリフト等といった車両のように、ロボットアーム又はフォーク等の荷役装置を備えた車両が、適宜、使用可能となっている。なお、バンニングロボットは、荷積み用のロボットアームと、搬送用のコンベヤとを有し、荷物を搬送可能な車両である。また、搬送車両300は、壁検出装置100により得られた第一及び第二の検出壁(又は第一及び第二の修正壁)に基づいて、進行方向(車輪の向き)を制御する制御部を備えてもよい。制御部は、例えば、搬送車両300の長手方向(前後方向)に沿った車両中心軸が2つの壁面間の中心で且つ壁面と平行になるように進行方向を制御する。このような制御部を備えた場合、搬送車両300の操作者は、操舵をせずに、前進指示又は後退指示を入力するだけで、搬送車両300を前進又は後退させることが可能となる。
【0021】
次に、以上のように構成された壁検出装置及び搬送車両の動作について
図4及び
図5のフローチャート並びに
図6及び
図7の模式図を用いて説明する。以下の説明は、始めに動作の概要を述べ、続いて動作の具体例を述べる。
【0022】
(動作の概要)
壁検出装置100の取得部101は、例えばセンサにより、
図4に示すように、側壁201、202の壁面から複数の点の座標の集合である点群を取得する(ステップS10)。
【0023】
ステップS10の後、検出部102は、例えば非特許文献1の手法を用い、当該点群から、2つ以上の壁の初期位置と初期姿勢を検出する(ステップS20)。
【0024】
ステップS20の後、検出部102は、2つ以上の壁の相対位置が事前に与えられた制約に従うという条件を利用し、2つの壁の位置と姿勢を算出(再推定)することにより、2つ以上の検出壁を取得する(ステップS30)。なお、検出部102は、複数の壁の配置の制約に基づいて壁の位置と姿勢を算出することにより、壁の位置と姿勢の推定精度を高めている。
【0025】
ステップS30の後、修正部103は、当該2つ以上の壁の相対位置を修正して修正壁104を得る(ステップS40)。これにより、搬送車両300は、修正壁104の間を進入可能となる。このような修正壁104を得るための検出壁の移動量は、修正壁104に囲まれた領域内での点群をなす点が十分に少なくなる距離とする。これにより、壁検出装置100を搭載した搬送車両300の移動範囲を修正壁104に挟まれた領域内に限定すれば、搬送車両300が側壁201、202の間に進入する際に、側壁201、202に接触するリスクを低減させることができる。
【0026】
ステップS40の後、壁検出装置100は、壁検出が終了したか否かを判定し(ステップS50)、壁検出が終了するまでステップS10~S50の処理を繰り返し実行する。壁検出が終了したことは、例えば、取得部101により取得した点群に基づき、レーザレンジファインダ101aと、行き止まりを表す前方の壁との間の距離が閾値以下であることにより判定してもよい。あるいは、行き止まりの検出に限らず、操作者の操作に応じた終了指示の入力により判定してもよい。
【0027】
(動作の具体例)
次に、動作の概要に対する具体例について説明する。なお、
図4に示したステップS20、S30、S40の具体例が
図5に示すステップS21、S31、S41である。
【0028】
壁検出装置100は、
図5に示すように、取得部101としてのレーザレンジファインダ101aから側壁201と側壁202の表面の点の座標列である点群を取得する(ステップS10)。このとき、
図6に示すように、側壁201の凹凸とレーザ光101bの照射角度との組み合わせによって、レーザ光101bが凹凸の奥まで到達する度合いが異なる。すなわち、レーザ光101bが凹凸の奥まで到達し、点p
201(0)の様な凹凸の表面の点から点p
201(1)の様な凹凸の奥の点まで得られる場合と、レーザ光101bが凹凸の奥に到達せずに点p
201(N
201-2)の様な凹凸の表面の点しか得られない場合とが同時に生じる。この結果、点群は三角形281の様にレーザレンジファインダ101aに近づくに従い、側壁201の凹凸の高さに応じて広がる分布を有する。このような点群がステップS10において取得される。なお、側壁201における三角形281の分布に関する説明は、側壁202における三角形282の分布についても同様である。但し、三角形281、282の分布は、大まかには同様であるが、正確には、側壁201、202の凹凸に対するレーザ光101bの到達状況に対応して、互いに独立した形状となる。
【0029】
ステップS10の後、検出部102は、取得した点群から例えば非特許文献1の手法を使用して、以下の式(1)~(4)に示すように、側壁201、202毎に、点群の構成要素である点の集合と、側壁201、202をモデル化した直線とを得る(ステップS21)。非特許文献1の実施にあたっては、検出された直線とそれに対応付ける点との最大距離Lmaxをあらかじめ検出部102に与える必要がある。この最大距離Lmaxは、壁面からの距離があらかじめ与えられたセンサの測定誤差(公差)、コンテナ壁面の凹凸の高さのうちの大きな方の値以上であることが望ましい。これより小さい値とすると、凹凸のあるコンテナ面は一つの直線として検出されず、バラバラな細かい線に分割されてしまう。
【0030】
なお、設計上の凹凸の高さは、例えば、第一壁及び第二壁が波板であれば、ISOの規格に基づくコンテナの外寸と内寸との差分から予め推測可能である。また、第一壁及び第二壁がドアノブや手すり等の突起を有する通路であれば、予め実測した突起の高さを設計上の凹凸の高さとして使用可能である。
【0031】
【0032】
但し、p201(i)は、側壁201に対応する点群の構成要素である点の集合である。f201(x)は、側壁201の位置と向きをモデル化した直線である。p202(j)は、側壁202に対応する点群の構成要素である点の集合である。f202(x)は、側壁202の位置と向きをモデル化した直線である。
【0033】
なお、側壁201、202をモデル化した直線f
201(x)、f
202(x)は、非特許文献1に記載の手法に限らず、例えば、回帰分析を用いて算出可能となっている。この場合、直線f
201(x)、f
202(x)は、
図6中、回帰直線291、292に相当する。また、回帰直線291は、三角形281に分布する点群の中央を通るため、
図3に示した凹凸の中心線251と一致しない。これは、側壁202における回帰直線292についても同様である。なお、回帰直線291、292は、互いに独立した形状の三角形281、282の分布に対応して、互いに独立した傾きを有する。このような2本の回帰直線291、292は、レーザレンジファインダ101aに近づくに従って互いに間隔が広がり、レーザレンジファインダ101aから離れるに従って互いに間隔が狭まる状況にある。すなわち、既存の手法では、レーザレンジファインダ101aとコンテナ200との相対位置、及び側壁201、202の凹凸の高さによって点群の分布が三角形状になることから、回帰直線291、292がハの字形状(逆V字形状)に開いた状況となる。
【0034】
従って、この状況において、回帰直線291に沿って長い搬送車両300を進入させると、点p201(0)の付近で側壁201と接触してしまう。なお、この接触を回避するために、仮に、回帰直線291を点p201(0)上まで平行移動させた直線(図示せず)で搬送車両300の停止領域を設定したとしても、奥の方の点p201(N201-2)付近では、停止領域が狭いため、搬送車両300が通過できなくなってしまう。また、ステップS21で得られた直線f201(x)、f202(x)は、上述した回帰直線291、292と同じ状況にあり、互いに別々の傾きa201、a202を有する。従って、仮に、直線f201(x)、f202(x)の傾きa201、a202を修正するにしても、別々の修正動作が必要となる。
【0035】
図5に戻り、ステップS21の後、検出部102は、以下の式(5)に示すように、側壁201と側壁202を平行な2直線f’
201(x)、f’
202(x)でモデル化する。なお、2直線f’
201(x)、f’
202(x)は、互いに等しい傾きa’と、互いに異なる切片b’
201、b’
202とをもっている。また、検出部102は、以下の式(6)~(7)に示すように、点群と各々の直線f’
201(x)、f’
202(x)との誤差に対応する値をE
201(a’, b’
201)、E
202(a’, b’
202)とし、2直線f’
201(x)、f’
202(x)が点群に最も適合する傾きと切片のパラメタE(a’, b’
201, b’
202)をコスト関数とする。このとき、検出部102は、以下の式(8)に示すように、コストを最小化するパラメタ(A, B
201, B
202)を再推定(算出)する(ステップS31)。
【0036】
【0037】
前述した通り、回帰直線291、292は直線f
201(x)、f
202(x)に相当する。また、側壁201の点だけでは直線f
201(x)を
図3に示す中心線251に近づけることはできない。しかしながら、ステップS31では、2つの側壁201、202の点を用いて傾きAを再推定することで、中心線251に近づけた直線f’
201(x)が得られる。また、同じ傾きAをもつ直線f’
202(x)についても同様である。ステップS31で得られた直線f’
201(x)、f’
202(x)は、ステップS30で述べた検出壁に相当する。
【0038】
ステップS31の後、修正部103は、検出壁に相当する2直線f’201(x)、f’202(x)の間隔を狭めるため、側壁201上の点p201(i)のうち、最も側壁202側に外れた点を探す。y201(i)<Ax201(i)+B201(i)を満たす点p201(i)は、直線f’201(x)より直線f’202(x)側に存在する。点p201(i)と直線f’201(x)との間の距離は、以下の式(9)に示すように、d201(i)で表される。
【0039】
【0040】
このため、以下の式(10)~(11)に示すように、y201(i)<Ax201(i)+B201(i)を満たす点p201(i)と直線f’201(x)との間の距離D201(i)に基づき、D201(i)の最大値をとる点p201(i)を指すインデックスI201が得られる。インデックスI201は、点p201(i)のうち、最も側壁202側に外れた点を指す。
【0041】
【0042】
修正部103は、インデックスI201を用い、以下の式(12)に示すように、直線f’201(x)を側壁202側に寄せた修正壁104のモデルf”201(x)を得る。
【0043】
【0044】
同様に、修正部103は、以下の式(13)~(16)に示すように、側壁202上の点p202(j)から、直線f’202(x)を側壁201側に寄せた修正壁104のモデルf”202(x)を得る(ステップS41)。
【0045】
【0046】
ステップS41で得られた修正壁104のモデルf”
201(x),f”
202(x)は、
図7に模式的に示すように、検出壁に相当する2直線f’
201(x)、f’
202(x)を最も内側の点まで平行移動させたため、修正壁104の間に側壁201、側壁202の点が存在しない。従って、搬送車両300の外接矩形がモデルf”
201(x),f”
202(x)に挟まれた領域で移動する限りにおいて搬送車両300はコンテナ200の側壁201、202に接触しない。また、修正壁104のモデルf”
201(x),f”
202(x)は、平行な2直線でモデル化された検出壁に平行なため、修正壁104に挟まれた領域がコンテナ200の奥で狭まることがない。なお、修正壁104のモデルf”
201(x),f”
202(x)は、モデル化した修正壁104であるため、修正壁104と呼んでもよい。いずれにしても、搬送車両300は、ステップS41で得られた修正壁104の間を側壁201、202に接触せずに進行することができる。
【0047】
ステップS41の後、壁検出装置100は、壁検出が終了したか否かを判定し(ステップS50)、壁検出が終了するまでステップS10~S50の処理を繰り返し実行する。
【0048】
上述したように第1の実施形態によれば、取得部101は、互いに対向する第一壁と第二壁とに対応する複数の点の座標列である点群を取得する。検出部102は、モデルと、取得された点群とに基づいて、第一の平面に対応する第一の検出壁と、第二の平面に対応する第二の検出壁とを検出する。ここで、当該モデルは、第一壁の概形を表す第一の平面及び第二壁の概形を表す第二の平面を表現し且つ第一の平面と第二の平面とが互いに平行であることを表現する。従って、互いに平行にモデル化した第一の検出壁及び第二の検出壁を検出する構成により、必ずしも単純な形状ではない壁面に挟まれた領域に進入する際に、壁面に接触するリスクを低減させることができる。補足すると、側壁201の概形と側壁202の概形とが互いに平行であるというコンテナ200の形状の知見を生かしたモデルを用いるため、側壁201、202が波板の凹凸形状を有していても、第一及び第二の検出壁を精度良く検出することができる。また、波板の凹凸を有する壁面やドアノブを有する壁面のように、正確な形状を事前にモデル化することが不可能な壁面をセンサで測定したデータから、壁面に接触せずに移動できる範囲を算出することが可能となる。例えば、搬送車両300が移動できる範囲は、第一及び第二の検出壁に挟まれた範囲として算出することが可能である。
【0049】
また、第1の実施形態によれば、座標列が二次元座標の座標列であり、当該モデルは、第一の平面の水平断面を表す第一直線の傾きと第二の平面の水平断面を表す第二直線の傾きとが同一であることにより、第一の平面と第二の平面とが互いに平行であることを表現する。従って、互いに平行な平面を表すモデルを、比較的、容易に実装できる。
【0050】
また、第1の実施形態によれば、検出部102は、第一壁に対応する複数の点から第一の平面を検出し、第二壁に対応する複数の点から第二の平面を検出し、第一の平面と第二の平面とを互いに平行となるように補正することにより、第一の検出壁及び第二の検出壁を検出する。従って、補正する前の第一の平面及び第二の平面を検出する処理については、例えば、非特許文献1に記載の手法や回帰分析などの手法を使用可能なため、比較的、容易に実装することができる。
【0051】
具体的には、第1の実施形態によれば、取得部101は、センサを有し、当該センサにより複数の点の各々と当該センサとの間の距離を測定することにより点群を取得する。検出部102は、当該点群内の複数の点を、第一の平面から所定距離内の複数の点からなる第一の点群と、第二の平面から所定距離内の複数の点からなる第二の点群とに分類し、当該第一の点群内の複数の点を第一壁に対応付けし、第二の点群内の複数の点を第二壁に対応付けする。なお、当該所定距離は、当該センサの公差と、第一壁及び第二壁における設計上の凹凸の高さとのうちの大きい方の値以上である。しかる後、検出部102は、第一の点群と第二の点群とモデルとに基づいて、第一の検出壁と第二の検出壁とを検出する。このように、取得した直後の点群を第一壁又は第二壁に対応付けする際に、センサの公差や壁の凹凸に基づく所定距離を基準とするので、実装するセンサや壁の凹凸に適合した壁検出装置を実現することができる。
【0052】
また、第1の実施形態によれば、検出部102は修正部103を備えている。修正部103は、第一の検出壁を第二の検出壁側に平行移動させて第一の修正壁に修正し、第二の検出壁を第一の検出壁側に平行移動させて第二の修正壁に修正する。このとき、第一の修正壁と第二の修正壁との間の点群内の点の数は、第一の検出壁と第二の検出壁との間の点群内の点の数より少ない。従って、第一及び第二の修正壁との間を進入する際には、第一及び第二の検出壁との間を進入する場合よりも、壁面に接触するリスクを低減できる。補足すると、第1の実施形態によれば、第一及び第二の検出壁を平行移動させればよいので、壁面の検出精度を向上させるための処理が容易である。これに対し、既存の手法の回帰直線291、292によれば、回帰直線291、292の傾きを別々に修正する必要があり、且つ修正後の回帰直線291、292が互いに平行になるとは限らないので、壁面の検出精度を向上させるための処理の負荷が高い。
【0053】
また、第1の実施形態によれば、修正部103は、第一壁に対応する複数の点のうち、最も第二の検出壁側に外れた点の位置に第一の検出壁を平行移動させ、第二壁に対応する複数の点のうち、最も第一の検出壁側に外れた点の位置に第二の検出壁を平行移動させる。従って、第一の修正壁と第二の修正壁との間隔を最も内側の点に合わせて修正するので、第一及び第二の修正壁との間を進入する際に、より一層、壁面に接触するリスクを低減させることができる。
【0054】
(第1の実施形態の変形例)
続いて、第1の実施形態の変形例について述べる。この変形例は、以下の各実施形態についても同様に適用できる。
【0055】
第1実施形態の変形例は、修正部103が、点群と検出壁との距離の頻度分布の標準偏差に基づいて検出壁を移動させる。
【0056】
補足すると、取得部101のセンサから得られる点群の各点はノイズによって揺らぐ。そのため、式(11)や式(15)の様に単純な最大値演算を用いると、修正壁104の位置がノイズによって変動する。搬送車両300の制御を行う際には、センサを常時稼働させ、壁面の位置を常時測定し、搬送車両300の移動量や移動方向にフィードバックをかける運用が、壁面との接触を回避する観点から好ましい。このとき、修正壁104の位置の時間変動が大きいと、搬送車両300の制御に悪影響を与える。
【0057】
従って、第1の実施形態の変形例では、修正壁104の位置を安定させるために、点群と検出壁との距離の頻度分布の標準偏差に基づいて検出壁を移動させるように、修正部103を変形させている。
【0058】
具体的には、修正部103は、修正壁を生成するために検出壁を、式(9)や式(13)で表されるような点群と検出壁の間の距離d201(i),d202(j)の出現頻度分布の標準偏差σに所定の正の定数αを乗じた距離だけ平行移動させる。側壁201、202の凹凸の高さがセンサノイズに比べて十分小さい条件を満たす場合、出現頻度分布はガウス分布に近づく可能性がある。ガウス分布に従い発生する乱数がその標準偏差σの定数倍を超える確率は予め計算されており、定数αの大きさを調節することで接触のリスクをコントロールできる。但し、側壁201、202の凹凸の高さとセンサノイズの大きさとが上記の条件を満たさないケースでは、他の手法で修正壁104を得る必要がある。
【0059】
なお、本変形例は、距離d201(i),d202(j)の出現頻度分布の標準偏差σに所定の正の定数αを乗じた距離(ασ)だけ検出壁を平行移動させる場合に限定されない。例えば、距離d201(i),d202(j)の出現頻度分布の平均値Lだけ検出壁を平行移動させてもよい。また例えば、距離d201(i),d202(j)の出現頻度分布の標準偏差σに所定の正の定数αを乗じた距離を当該平均値Lに加算した距離(L+ασ)だけ検出壁を平行移動させてもよい。また、標準偏差σに代えて分散Vを用いてもよい。
【0060】
(第2の実施形態)
次に、第2の実施形態に係る壁検出装置及び搬送車両について説明する。以下の説明は、前述した構成要素と同様の部分については重複した説明を省略し、主に、異なる部分について述べる。
【0061】
第2の実施形態は、修正部103が、側壁201、202の凹凸の凸部に関する複数の点を抽出し、抽出した複数の点と検出壁との間の距離の平均値に基づいて、検出壁を移動させる構成となっている。距離の平均値に基づく移動量としては、距離の平均値としてもよく、距離の分布の標準偏差又は分散の定数倍を距離の平均値に加えた値としてもよい。
【0062】
すなわち、修正部103は、第一壁に対応する複数の点のうち、第一の検出壁より第二の検出壁側で得られた複数の点と第一の検出壁との間の第一距離の第一平均値に基づいて、第一の検出壁を平行移動させる。また、修正部103は、第二壁に対応する複数の点のうち、第二の検出壁より第一の検出壁側で得られた複数の点と第二の検出壁との間の第二距離の第二平均値に基づいて、第二の検出壁を平行移動させる。
【0063】
ここで、修正部103は、第一距離の分散又は標準偏差に所定の正の定数を乗じた値を第一平均値に加算し、得られた加算結果だけ第一の検出壁を平行移動させてもよい。同様に、修正部103は、第二距離の分散又は標準偏差に所定の正の定数を乗じた値を第二平均値に加算し、得られた加算結果だけ第二の検出壁を平行移動させてもよい。
【0064】
また、第一壁に対応する複数の点のうち、第一の検出壁より第二の検出壁側で得られた複数の点は、第一の検出壁より第二の検出壁側の初期抽出境界より第二の検出壁側で抽出した各点と、当該抽出した各点に挟まれた点とを合わせた点の集合としてもよい。
【0065】
同様に、第二壁に対応する複数の点のうち、第二の検出壁より第一の検出壁側で得られた複数の点は、第二の検出壁より第一の検出壁側の初期抽出境界より第一の検出壁側で抽出した各点と、当該抽出した各点に挟まれた点とを合わせた点の集合としてもよい。
【0066】
他の構成は、第1の実施形態と同様である。
【0067】
次に、以上のように構成された壁検出装置及び搬送車両の動作について
図8のフローチャート及び
図9乃至
図11の図を用いて説明する。なお、
図9乃至
図11を用いたステップS41a-1~ST41a-4の動作については、主に、側壁201を例に挙げて述べるが、側壁202に関しても同様に実行される。
【0068】
いま、前述同様にステップS10が実行され、側壁201に対応する点群の各点p201(i)と、側壁202に対応する点群の各点p202(j)とが取得される。
【0069】
また、前述同様にステップS21、S31が実行され、検出壁に相当する平行な2直線f’201(x)、f’202(x)が検出される。
【0070】
図9は、点群と側壁201との関係を表す図であり、側壁201の一部を拡大して当該関係を示している。また、側壁201の一部としては、凹凸の奥までレーザ光101bが到達する、レーザレンジファインダ101aに近い方を示している。
図9中、側壁201に対応する点群の各点p
201(i)は、側壁201の表面付近にノイズに起因するばらつきをもって存在する。点群の各点p
201(i)はレーザレンジファインダ101aの照射角度に応じたインデックスが付され、インデックスの順に破線でつながれて表示されている。検出壁を表す直線f’
201(x)は、側壁201の凸部と凹部の間を通る直線として得られる。ここで、点群の各点p
201(i)は、ノイズによって位置が揺らぐため、凸部から得られた点が検出壁を通り越した凹部側で観測される場合があり、またその逆の場合もある。
【0071】
ここで、搬送車両300と壁面との接触を回避する観点から、側壁201の凸部を結ぶ直線が修正壁として得られることが理想的である。これに伴い、点群の各点p201(i)のうち、側壁201の凹部から得られる点を除外し、凸部から得られる点を選別(抽出)する必要がある。この選別は、例えば、各点p201(i)が検出壁よりもコンテナ中央側にあるか否かを基準にしてもよい。但し、側壁201の凹凸の高さに比べ、センサノイズが大きい場合には、凹部から得られる点が検出壁よりもコンテナ中央側に混入し得るため、この基準では誤判別が生じる。
【0072】
従って、修正部103は、ステップS31の後、ステップS41の変形例であるステップS41a-1~S41a-4により、側壁201の凸部の位置を表す点群である内壁候補点を取得し、内壁候補点に基づいて検出壁を平行移動させ、内壁である修正壁を得る。
【0073】
すなわち、修正部103は、
図10に示すように、検出壁を表す直線f’
201(x)からコンテナ中央に向けて所定の距離移動した場所に初期境界801を引く(ステップS41a-1)。なお、
図9乃至
図11中、コンテナ中央側は、y座標が小さい側である。
【0074】
ステップS41a-1の後、修正部103は、点群の各点p201(i)のうち、初期境界801からみてコンテナ中央側にある点を初期抽出結果802として抽出する(ステップS41a-2)。
【0075】
ステップS41a-2の後、修正部103は、
図11に示すように、点群の各点p
201(i)のうち、初期抽出結果802(四角形の点)に挟まれた点を二次抽出結果803(三角形の点)として抽出する(ステップS41a-3)。補足すると、2つの初期抽出結果802が二次抽出結果803の点を挟む場合、一方の初期抽出結果802の点から、破線を左右に所定の閾値で示された点の数だけ移動した範囲内に、他方の初期抽出結果802の点が存在する状況となる。また、修正部103は、側壁201の凸部の位置を表す内壁候補点を抽出結果804として取得する。抽出結果804は、初期抽出結果802の各点と、二次抽出結果803の各点とを合わせた各点である。なお、以上のステップS41a-1~S41a-3は、側壁201に限らず、側壁202についても同様に実行される。
【0076】
ステップS41a-3の後、修正部103は、抽出結果804に基づいて、検出壁を表す2直線f’201(x)、f’202(x)を狭めることにより(ステップS41a-4)、修正壁104のモデルf”201(x)、f”202(x)を得る。
【0077】
具体的には例えば、修正部103は、側壁201に関する抽出結果804と検出壁(f’201(x))との間の第一距離の分布P1の第一平均値L1を算出し、検出壁を第一平均値L1だけコンテナ中央側に平行移動させる。同様に、修正部103は、側壁202に関する抽出結果804と検出壁(f’202(x))との間の第二距離の分布P2の第二平均値L2を算出し、検出壁を第二平均値L2だけコンテナ中央側に平行移動させる。これにより、修正壁104が安定して側壁201、202の凸部先端付近を通るように得られる。
【0078】
あるいは、修正部103は、当該分布P1の標準偏差σ1を算出し、標準偏差σ1に所定の正の定数αを乗じた値を第一平均値L1に加算し、得られた加算結果(L1+α・σ1)だけ検出壁を平行移動させてもよい(例、α=2又は3)。同様に、修正部103は、当該分布P2の標準偏差σ2を算出し、標準偏差σ2に所定の正の定数αを乗じた値を第二平均値L2に加算し、得られた加算結果(L2+α・σ2)だけ検出壁を平行移動させてもよい。標準偏差の定数倍を平均値に加算した場合、壁面との衝突のリスクをさらに軽減できる。なお、標準偏差σに代えて分散Vを用いてもよい。
【0079】
ステップS41a-4の後、前述同様に、ステップS50が実行される。
【0080】
上述したように第2の実施形態によれば、修正部103は、第一壁に対応する複数の点のうち、第一の検出壁より第二の検出壁側で得られた複数の点と第一の検出壁との間の第一距離の第一平均値に基づいて、第一の検出壁を平行移動させる。また、修正部103は、第二壁に対応する複数の点のうち、第二の検出壁より第一の検出壁側で得られた複数の点と第二の検出壁との間の第二距離の第二平均値に基づいて、第二の検出壁を平行移動させる。
【0081】
従って、式(11)や式(15)に示す最大値を用いた平行移動に代えて、平均値を用いた平行移動を行う構成により、検出壁の移動量に対するノイズの影響を抑制できるので、第1の実施形態の効果に加え、修正壁104の位置を安定させることができる。
【0082】
また、第2の実施形態によれば、修正部103は、第一距離の分散又は標準偏差に所定の正の定数を乗じた値を第一平均値に加算し、得られた加算結果だけ第一の検出壁を平行移動させてもよい。同様に、修正部103は、第二距離の分散又は標準偏差に所定の正の定数を乗じた値を第二平均値に加算し、得られた加算結果だけ第二の検出壁を平行移動させてもよい。この場合、前述した作用効果に加え、壁面との衝突のリスクをさらに軽減できる。
【0083】
また、第2の実施形態によれば、第一壁に対応する複数の点のうち、第一の検出壁より第二の検出壁側で得られた複数の点は、第一の検出壁より第二の検出壁側の初期抽出境界より第二の検出壁側で抽出した各点と、当該抽出した各点に挟まれた点とを合わせた点の集合としてもよい。同様に、第二壁に対応する複数の点のうち、第二の検出壁より第一の検出壁側で得られた複数の点は、第二の検出壁より第一の検出壁側の初期抽出境界より第一の検出壁側で抽出した各点と、当該抽出した各点に挟まれた点とを合わせた点の集合としてもよい。この場合、前述した作用効果に加え、側壁201、202の凹凸のうち、凸部から得られる点を抽出する構成により、検出壁の移動量に対するノイズの影響を、より一層、抑制することができる。
【0084】
(第1及び第2の実施形態の変形例)
第1及び第2の実施形態は、以下のように変更して実施してもよい。
【0085】
すなわち、第1及び第2の実施形態では、側壁201、202をモデル化した平行な2直線f’201(x)、f’202(x)を用いていたが、これに限定されない。例えば、2直線f’201(x)、f’202(x)に加え、コンテナの奥の壁を、当該2直線f’201(x)、f’202(x)の奥側の端点と近い距離に端点を持つ第3の直線f’203(x)としてモデル化し加えてもよい。この場合、式(5)に示した2関数に対し、以下の式(17)に示す関数を加入させればよい。
【0086】
【0087】
換言すると、モデルは、前述した第一及び第二の平面に関する表現に加え、第一の平面の奥側端と第二の平面の奥側端とにそれぞれ直交する第三の平面を更に表現する。また、検出部102は、当該モデルと、取得した点群とに基づいて、第一の検出壁と、第二の検出壁と、第三の平面に対応する第三の検出壁とを検出する。これにより、第1及び第2の実施形態の効果に加え、奥の壁に接触するリスクを低減させることができる。例えば、奥の壁である第三の検出壁との距離が閾値以下になると、警報を出力する制御や、搬送車両300の進行を停止させる制御などが可能となる。
【0088】
次に、第1及び第2の実施形態では、側壁201、202が存在し、この側壁201、202に対応する第一の検出壁及び第二の検出壁を検出しているが、これに限定されない。例えば、コンテナの2壁の間隔が既知の場合、検出壁の間隔が既知の間隔とかけ離れているのであればコンテナが存在しないと判定するように、コンテナの存在判定を行ってもよい。なお、コンテナの存在判定に代えて、通路の存在判定を行ってもよい。換言すると、検出部102は、第一の検出壁と第二の検出壁との間の距離が閾値以上の場合、第一壁と第二壁とをもつコンテナ又は通路が存在しない旨を出力する。これにより、第1及び第2の実施形態の効果に加え、検出壁を修正壁に修正する演算処理や、搬送車両300を制御する処理などを省略でき、処理の負荷を軽減することができる。
【0089】
次に、第1及び第2の実施形態では、第一の検出壁と第二の検出壁との組合せが一つだけ検出された場合について述べたが、これに限定されない。すなわち、第一の検出壁と第二の検出壁との複数の組合せが検出されてもよい。例えば、検出部102は、第一の検出壁と第二の検出壁との複数の組合せが得られた場合、当該複数の組合せのうち、最も長い線分を含む組合せを選択することにより第一の検出壁及び第二の検出壁を検出する。これにより、第1及び第2の実施形態の効果に加え、第一及び第二の検出壁として、複数の候補が得られた場合の絞り込みを行うことができる。
【0090】
次に、第1及び第2の実施形態では、取得部101が、2次元の点群を取得するレーザレンジファインダ101aを用いたが、これに限定されない。例えば、取得部101は、ToF(time-of-flight camera)カメラなどの3次元点群を取得するセンサを用いてもよい。この場合、2枚の壁のモデルが3次元平面のモデルとなり、式(5)の様にモデル間でxの係数a’を共有する代わりに、3次元平面の法線ベクトルが平行であるという制約を導入すればよい。換言すると、点群の座標列が三次元座標の座標列であり、モデルは、第一の平面の法線ベクトルと第二の平面の法線ベクトルとが同一であることにより、第一の平面と第二の平面とが互いに平行であることを表現する。この方法であれば、前述した変形例の奥の壁に加え、天井や床を平面でモデル化しコンテナを直方体として扱ってもよい。逆に、倉庫の隅などを想定すれば2枚の直交する壁をモデルとして使うなど検出壁の枚数は2枚までは減らしてよい。2つ以上の平面とその配置に関する幾何学的制約が分かっていれば、変形例の実施が可能である。
【0091】
また、各実施形態では、搬送車両300の前方に一つの取得部101を設置しているが、これに限定されない。例えば、搬送車両300の前方の他に、搬送車両300の後方にも取得部101を設置してもよい。あるいは、搬送車両300の前方及び後方の他に、他の部分にも取得部101を設置してもよい。具体的には例えば、壁検出装置100は、
図12及び
図13に示すように、他の取得部101と、検出部102に設けられた選択部105と、を更に備えている。ここで、他の取得部101は、前述した進行方向先端中央部に配置した取得部101とは反対方向(後退方向)に向けて設けられ、第一壁と第二壁とに対応する複数の点の座標列である点群を取得する。これに伴い、検出部102は、取得部101により取得された点群と、他の取得部101により取得された点群とに基づいて、第一の検出壁と第二の検出壁との複数の組合せを検出する。選択部105は、当該複数の組合せのうち、最も長い検出壁を含む組合せを選択する。検出部102は、選択された組合せである第一の検出壁及び第二の検出壁を検出する。このように、各々の取得部101毎に取得した点群から個別に検出壁を取得し、最も長い検出壁を選択して検出結果に用いることで、コンテナ進入時の取得部101の切り替えを自動で行うことができる。
【0092】
なお、各実施形態は、壁検出装置100を専用の装置として実施する構成に限らず、各実施形態のアルゴリズムを実施するプログラムをインストールしたPC(personal computer)等のコンピュータとして壁検出装置100を実施してもよい。壁検出装置100をコンピュータとして実施する例については、以下の第3の実施形態に述べる。
【0093】
<第3の実施形態>
図14は、第3の実施形態に係る壁検出装置のハードウェア構成を例示するブロック図である。第3の実施形態は、第1及び第2の実施形態の具体例であり、取得部101に接続された検出部102をコンピュータにより実現した形態となっている。
【0094】
壁検出装置100は、ハードウェアとして、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、プログラムメモリ13、補助記憶装置14及び入出力インタフェース15を備えている。CPU11は、バスを介して、RAM12、プログラムメモリ13、補助記憶装置14、および入出力インタフェース15と通信する。すなわち、本実施形態の壁検出装置100は、このようなハードウェア構成のコンピュータにより実現されている。
【0095】
CPU11は、汎用プロセッサの一例である。RAM12は、ワーキングメモリとしてCPU11に使用される。RAM12は、SDRAM(Synchronous Dynamic Random Access Memory)などの揮発性メモリを含む。プログラムメモリ13は、各実施形態に応じた各部を実現するためのプログラムを記憶する。このプログラムは、例えば、前述した検出部102の各機能をコンピュータに実現させるためのプログラムとしてもよい。検出部102の各機能のいずれかは、修正部103又は選択部105の機能であってもよい。また、プログラムメモリ13として、例えば、ROM(Read-Only Memory)、補助記憶装置14の一部、またはその組み合わせが使用される。補助記憶装置14は、データを非一時的に記憶する。補助記憶装置14は、HDD(hard disc drive)またはSSD(solid state drive)などの不揮発性メモリを含む。
【0096】
入出力インタフェース15は、取得部101としてのセンサを含む他のデバイスと接続するためのインタフェースである。また、入出力インタフェース15は、
図15に示すように、取得部101としてのセンサに加え、他の取得部101としてのセンサを含む他のデバイスと接続するためのインタフェースであってもよい。いずれにしても、入出力インタフェース15は、例えば、センサ、キーボード、マウス及びディスプレイとの接続に使用される。
【0097】
プログラムメモリ13に記憶されているプログラムはコンピュータ実行可能命令を含む。プログラム(コンピュータ実行可能命令)は、処理回路であるCPU11により実行されると、CPU11に所定の処理を実行させる。例えば、プログラムは、CPU11により実行されると、CPU11に
図3の各部に関して説明された一連の処理を実行させる。例えば、プログラムに含まれるコンピュータ実行可能命令は、CPU11により実行されると、CPU11に壁検出方法を実行させる。壁検出方法は、前述した取得部101及び検出部102の各機能に対応する各ステップを含んでもよい。また、壁検出方法は、
図4、
図5、
図8に示した各ステップを適宜、含んでもよい。
【0098】
プログラムは、コンピュータ読み取り可能な記憶媒体に記憶された状態でコンピュータである壁検出装置に提供されてよい。この場合、例えば、壁検出装置は、記憶媒体からデータを読み出すドライブ(図示せず)をさらに備え、記憶媒体からプログラムを取得する。記憶媒体としては、例えば、磁気ディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-Rなど)、光磁気ディスク(MOなど)、半導体メモリなどが適宜、使用可能である。記憶媒体は、非一時的なコンピュータ読み取り可能な記憶媒体(non-transitory computer readable storage medium)と呼んでもよい。また、プログラムを通信ネットワーク上のサーバに格納し、壁検出装置が入出力インタフェース15を使用してサーバからプログラムをダウンロードするようにしてもよい。
【0099】
プログラムを実行する処理回路は、CPU11などの汎用ハードウェアプロセッサに限らず、ASIC(Application Specific Integrated Circuit)などの専用ハードウェアプロセッサを用いてもよい。処理回路(処理部)という語は、少なくとも1つの汎用ハードウェアプロセッサ、少なくとも1つの専用ハードウェアプロセッサ、または少なくとも1つの汎用ハードウェアプロセッサと少なくとも1つの専用ハードウェアプロセッサとの組み合わせを含む。
図14及び
図15に示す例では、CPU11、RAM12、およびプログラムメモリ13が処理回路に相当する。
【0100】
以上述べた少なくとも一つの実施形態によれば、必ずしも単純な形状ではない壁面に挟まれた領域に進入する際に、壁面に接触するリスクを低減させることができる。
【0101】
なお、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0102】
11…CPU、12…RAM、13…プログラムメモリ、14…補助記憶装置、15…入出力インタフェース、100…壁検出装置、101…取得部、101a…レーザレンジファインダ、101b…レーザ光、102…検出部、103…修正部、104…修正壁、200…コンテナ、201,202…側壁、251…中心線、281,282…三角形、291,292…回帰直線、300…搬送車両、801…初期境界、802…初期抽出結果、803…二次抽出結果、804…抽出結果、f’201(x),f’202(x) …検出壁、f’’201(x),f’’202(x) …修正壁、p201(0),p201(1),p201(N201-2),p201(N201-1),p202(0),p202(1),p202(N202-2),p202(N202-1) …点。