(57)【特許請求の範囲】
【請求項１】
路面上を走行可能かつ旋回可能な車両本体の動作態様を推定する車両動作推定装置であって、
被写体である前記路面を撮影することによって、前記車両本体の前後方向に対応する第１座標軸および前記車両本体の左右方向に対応する第２座標軸に沿って並ぶ複数の画素で構成された二次元画像を取得するカメラと、
前記カメラで取得した前記二次元画像から、前記車両本体の左右方向の少なくとも一方において前記車両本体に並ぶ場所に対応する第１領域を抽出する第１領域抽出部と、
前記カメラで取得した前記二次元画像から、前記車両本体の前後方向の少なくとも一方において前記車両本体に並ぶ場所に対応する第２領域を抽出する第２領域抽出部と、
前記第１領域に含まれる被写体の変位量であって前記第１座標軸に平行な方向における変位量を算出する第１変位量算出部と、
前記第２領域に含まれる被写体の変位量であって前記第２座標軸に平行な方向における変位量を算出する第２変位量算出部と、
前記第１変位量算出部によって算出された変位量と、前記第２変位量算出部によって算出された変位量とに基づいて、前記車両本体の動作態様を推定する動作態様推定部とを備え、
前記カメラは、鉛直方向から見て３６０°の範囲を撮影可能な全方位カメラにより構成され、
前記第１領域抽出部および前記第２領域抽出部が、同一の前記全方位カメラで取得した前記二次元画像から前記第１領域および前記第２領域を抽出する
ことを特徴とする車両動作推定装置。
【請求項２】
前記第１領域抽出部および前記第２領域抽出部は、前記二次元画像において前記第１座標軸に平行な２辺と前記第２座標軸に平行な２辺とによって囲まれる矩形状領域を抽出する
ことを特徴とする請求項１に記載の車両動作推定装置。
【請求項３】
前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量であるとき、前記車両本体が前記前後方向に走行せずに停止していると推定する
ことを特徴とする請求項１または２に記載の車両動作推定装置。
【請求項４】
前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量でなく、かつ、前記第１変位量算出部によって算出された変位量に対する前記第２変位量算出部によって算出された変位量の割合が所定の判定境界値未満であるとき、前記車両本体が前方または後方に走行していると推定する
ことを特徴とする請求項３に記載の車両動作推定装置。
【請求項５】
前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量でなく、かつ、前記第１変位量算出部によって算出された変位量に対する前記第２変位量算出部によって算出された変位量の割合が所定の判定境界値以上であるとき、前記車両本体が右方または左方に旋回していると推定する
ことを特徴とする請求項３または４に記載の車両動作推定装置。
【請求項６】
ヘッドガードが設けられた前記車両本体と、
請求項１〜５のいずれか一項に記載の車両動作推定装置とを備える荷役車両であって、
前記カメラは、前記ヘッドガードに設けられている
ことを特徴とする荷役車両。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラを用いて車両本体の動作態様を推定する車両動作推定装置およびこの装置を備える荷役車両に関するものである。
【背景技術】
【０００２】
近年、一般的な乗用車において、車両の前方または後方の画像をカメラで撮影し、その映像を運転支援等に利用することが行われている。また、カメラによって撮影された画像に基づいて、車両の走行速度および走行方向を含む動作態様を推定する装置が開発されている（例えば特許文献１参照）。
【０００３】
特許文献１には、移動体に設けられたカメラで路面を撮影し、当該カメラで撮影されたカメラ画像に基づいて、微小時間間隔Δｔにおける移動体の移動量を表す変位ベクトルΔＳを推定する移動量推定装置が記載されている。この移動量推定装置は、カメラ画像を、移動体の進行方向の単位ベクトルｅに対して垂直な方向を法線方向とする平面Λ上の映像パターン（路面画像）に変換する幾何変換手段と、平面Λ上での映像パターン全体の移動量を表す変位ベクトルΔｓ１を算出する面上移動量算出手段と、変位ベクトルΔｓ１を移動体の移動量を表す変位ベクトルΔＳに変換する移動量変換手段とを有している。また、特許文献１の［００３８］には、計算コストを下げるために、路面画像をＹ軸に射影することによって路面画像を１次元パターンにして、その１次元パターンの軸方向への時間的な動きに基づいて移動量を推定することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１７８３０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１の移動量推定装置では、カメラ画像の全体に対して幾何変換を行うため、カメラ画像である二次元画像が大きくなると、移動体である車両本体の動作態様を推定するための負荷が大きくなる。また、二次元画像から変換された１次元パターンに基づいて車両本体の移動量を推定する構成によれば、動作態様を推定するための負荷を低減することはできるものの、車両本体の走行と旋回とを区別して推定することができなくなり、車両本体の動作態様を精度良く推定することができない。すなわち、車両本体の動作態様を推定するための負荷の低減と推定精度の向上との両立を図ることができないという問題があった。
【０００６】
本発明は、上記事情に鑑みてなされたものであって、カメラを用いた車両本体の動作態様の推定において、動作態様を推定するための負荷の低減と推定精度の向上との両立を図ることができる車両動作推定装置および荷役車両を提供することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、請求項１に記載の本発明の車両動作推定装置は、路面上を走行可能かつ旋回可能な車両本体の動作態様を推定する車両動作推定装置であって、被写体である前記路面を撮影することによって、前記車両本体の前後方向に対応する第１座標軸および前記車両本体の左右方向に対応する第２座標軸に沿って並ぶ複数の画素で構成された二次元画像を取得するカメラと、前記カメラで取得した前記二次元画像から、前記車両本体の左右方向の少なくとも一方において前記車両本体に並ぶ場所に対応する第１領域を抽出する第１領域抽出部と、前記カメラで取得した前記二次元画像から、前記車両本体の前後方向の少なくとも一方において前記車両本体に並ぶ場所に対応する第２領域を抽出する第２領域抽出部と、前記第１領域に含まれる被写体の変位量であって前記第１座標軸に平行な方向における変位量を算出する第１変位量算出部と、前記第２領域に含まれる被写体の変位量であって前記第２座標軸に平行な方向における変位量を算出する第２変位量算出部と、前記第１変位量算出部によって算出された変位量と、前記第２変位量算出部によって算出された変位量とに基づいて、前記車両本体の動作態様を推定する動作態様推定部とを備え、前記カメラは、鉛直方向から見て３６０°の範囲を撮影可能な全方位カメラにより構成され、前記第１領域抽出部および前記第２領域抽出部が、同一の前記全方位カメラで取得した前記二次元画像から前記第１領域および前記第２領域を抽出することを特徴とする。
【０００８】
また、請求項２に記載の車両動作推定装置は、請求項１に記載の車両動作推定装置において、前記第１領域抽出部および前記第２領域抽出部は、前記二次元画像において前記第１座標軸に平行な２辺と前記第２座標軸に平行な２辺とによって囲まれる矩形状領域を抽出することを特徴とする。
【０００９】
また、請求項３に記載の車両動作推定装置は、請求項１または２に記載の車両動作推定装置において、前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量であるとき、前記車両本体が前記前後方向に走行せずに停止していると推定することを特徴とする。
【００１０】
また、請求項４に記載の車両動作推定装置は、請求項３に記載の車両動作推定装置において、前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量でなく、かつ、前記第１変位量算出部によって算出された変位量に対する前記第２変位量算出部によって算出された変位量の割合が所定の判定境界値未満であるとき、前記車両本体が前方または後方に走行していると推定することを特徴とする。
【００１１】
また、請求項５に記載の車両動作推定装置は、請求項３または４に記載の車両動作推定装置において、前記動作態様推定部は、前記第１変位量算出部によって算出された変位量が所定の停止判定量でなく、かつ、前記第１変位量算出部によって算出された変位量に対する前記第２変位量算出部によって算出された変位量の割合が所定の判定境界値以上であるとき、前記車両本体が右方または左方に旋回していると推定することを特徴とする。
【００１２】
また、請求項６に記載の荷役車両は、ヘッドガードが設けられた前記車両本体と、請求項１〜５のいずれか一項に記載の車両動作推定装置とを備える荷役車両であって、前記カメラは、前記ヘッドガードに設けられていることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、カメラを用いた車両本体の動作態様の推定において、動作態様を推定するための負荷の低減と推定精度の向上との両立を図ることができる車両動作推定装置および荷役車両を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態に係る荷役車両の外観を簡略化して示す図であって、（Ａ）は側面図であり、（Ｂ）は平面図である。
【図２】同実施形態に係る荷役車両の構成を示すブロック図である。
【図３】同実施形態に係るカメラによって撮影される画像の一例を示す模式図である。
【図４】（Ａ）および（Ｂ）は、同実施形態に係る車両本体が前進する様子を示す模式図であって、（Ｃ）は、車両本体の前進に伴う第１領域および第２領域に含まれる被写体の変位を示す模式図である。
【図５】（Ａ）および（Ｂ）は、同実施形態に係る車両本体が右方に旋回する様子を示す模式図であって、（Ｃ）は、車両本体の旋回に伴う第１領域および第２領域に含まれる被写体の変位を示す模式図である。
【図６】第１領域に含まれる被写体の変位量および第２領域に含まれる被写体の変位量の組み合わせが座標で表現される直交座標系の図である。
【図７】同実施形態に係る車両動作推定処理の流れを示すフローチャートである。
【図８】同実施形態に係る車両動作推定処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１５】
図面を参照しながら、本発明の一実施形態を説明する。なお、図面において、矢印Ｘで示す前後方向Ｘと、矢印Ｙで示す左右方向Ｙと、矢印Ｚで示す上下方向Ｚとは、互いに直交する方向である。
【００１６】
図１に示すように、リーチ式のフォークリフト１は、車両本体１０、走行装置２０、荷役装置３０、操作装置４０、およびカメラ５０等を備えた荷役車両である。
車両本体１０は、走行装置２０および荷役装置３０の動力源であるバッテリー（図示略）を収納する。また、車両本体１０には、フォークリフト１を運転するオペレータ（図示略）が搭乗する搭乗部１１と、搭乗部１１の上方に配置されたヘッドガード１２とが設けられている。ヘッドガード１２は、格子状の構造物により構成されており、車両本体１０に立たせて設けられたステー１２Ａにより支持されている。なお、図１（Ｂ）においては、ヘッドガード１２の図示は省略されている。車両本体１０は、走行装置２０が動作することによって、路面Ｓ上を走行可能かつ旋回可能に構成されている。
【００１７】
走行装置２０は、前輪２１、後輪２２、後輪２２を駆動させる走行用モーター（図示略）、および後輪２２の向きを変える転舵装置（図示略）等を備えている。また、荷役装置３０は、車両本体１０の前方に設けられており、上下方向Ｚに伸縮可能なマスト３１と、マスト３１に沿って昇降可能なフォーク３２とを備えている。走行装置２０および荷役装置３０は、操作装置４０を用いて入力されるオペレータからの指示に基づいて動作する。
【００１８】
操作装置４０は、車両本体１０に設けられており、ステアリングハンドル４１、および走行用レバー４２等を備えている。オペレータがステアリングハンドル４１を回転させると、後輪２２の向きを変える指示がフォークリフト１に入力される。また、オペレータが走行用レバー４２を前方または後方へ傾けると、後輪２２を駆動する指示がフォークリフト１に入力される。
【００１９】
カメラ５０は、ヘッドガード１２に設けられており、鉛直方向から見て３６０°の範囲を撮影可能な全方位カメラにより構成されている。カメラ５０は、搭乗部１１の上方から、カメラ５０の下方に存在する被写体である路面Ｓ等を撮影する。カメラ５０は、路面Ｓをカラーで撮影し、互いに直交する第１座標軸および第２座標軸に沿って並ぶ複数の画素で構成された二次元画像を取得する。カメラ５０は、路面Ｓが写った上記画像を微小時間間隔（例えば約３３ミリ秒間隔）で繰り返し取得する。
【００２０】
図２を参照して、カメラ５０で取得した二次元画像（以下、「カメラ画像」という）から車両本体１０の動作態様を推定するための構成を説明する。
図２に示すように、フォークリフト１は、車両動作推定装置２、制御部７１、記憶部７２、および表示部７３を備えている。
【００２１】
車両動作推定装置２は、カメラ５０、前処理部６１、第１領域抽出部６２Ａ、第２領域抽出部６２Ｂ、第１変位量算出部６３Ａ、第２変位量算出部６３Ｂ、および動作態様推定部６４により構成されている。車両動作推定装置２は、カメラ５０を用いて車両本体１０の動作態様を推定する。
【００２２】
前処理部６１は、カメラ画像に対して所定の前処理を施す集積回路により構成される。前処理部６１は、カメラ画像に係る画像データに対して、カラー画像をグレースケール画像に変換する処理等を施す。グレースケール画像を構成する画素の各々は、例えば０〜２５５の範囲に含まれる画素値を有している。画素値は階調度を表す。
【００２３】
第１領域抽出部６２Ａおよび第２領域抽出部６２Ｂは、カメラ画像に係る画像データを部分的に抽出する集積回路により構成される。第１領域抽出部６２Ａは、カメラ画像の一部分である第１領域Ｗ１（図３参照）をカメラ画像から抽出し、第２領域抽出部６２Ｂは、カメラ画像の一部分である第２領域Ｗ２（図３参照）をカメラ画像から抽出する。すなわち、第１領域抽出部６２Ａは、第１領域Ｗ１に含まれている被写体に係る画像データを抽出し、第２領域抽出部６２Ｂは、第２領域Ｗ２に含まれている被写体に係る画像データを抽出する。第１領域Ｗ１および第２領域Ｗ２については、図３を用いて後述する。
【００２４】
第１変位量算出部６３Ａおよび第２変位量算出部６３Ｂは、微小時間間隔をあけて取得した２つのカメラ画像に係る画像データに基づいて、被写体の変位量を算出する集積回路により構成される。第１変位量算出部６３Ａは、第１領域Ｗ１に含まれる被写体の変位量であってカメラ画像の第１座標軸に平行な方向における変位量（以下、「シフト量Δｘ」という）を算出し、第２変位量算出部６３Ｂは、第２領域Ｗ２に含まれる被写体の変位量であってカメラ画像の第２座標軸に平行な方向における変位量（以下、「シフト量Δｙ」という）を算出する。シフト量Δｘ，Δｙ、並びにシフト量Δｘ，Δｙの具体的な算出方法については、図４および図５を用いて後述する。
【００２５】
動作態様推定部６４（以下、「推定部６４」という）は、第１変位量算出部６３Ａによって算出されたシフト量Δｘと、第２変位量算出部６３Ｂによって算出されたシフト量Δｙとに基づいて、車両本体１０の動作態様を推定する集積回路により構成される。具体的には、推定部６４は、シフト量Δｘ，Δｙに基づいて、車両本体１０の動作態様が下記の態様１〜５のいずれかであることを判定する。
［態様１］車両本体１０が停止している
［態様２］車両本体１０が前進している
［態様３］車両本体１０が後進している
［態様４］車両本体１０が右方に旋回している
［態様５］車両本体１０が左方に旋回している
シフト量Δｘ，Δｙに基づく車両本体１０の動作態様の具体的な推定方法については、図６を用いて後述する。また、推定部６４は、車両本体１０が前進または後進していると推定したとき、シフト量Δｘに基づいて、車両本体１０の走行速度を推定する。車両本体１０の走行速度は、シフト量Δｘと所定の速度変換レートとの積を算出することにより推定される。
【００２６】
制御部７１は、車両動作推定装置２によって推定された車両動作１０の動作態様等に基づいて、記憶部７２および表示部７３を制御する集積回路により構成される。具体的には、制御部７１は、車両本体１０の動作態様および走行速度を、記憶部７２に記憶させるとともに表示部７３に表示させる。また、制御部７１は、記憶部７２に記憶させた車両本体１０の走行速度、すなわち車両動作推定装置２によって推定された車両本体１０の過去の走行速度に基づいて、車両本体１０の平均走行速度を算出するとともに、当該平均走行速度を表示部７３に表示させる。
【００２７】
記憶部７２は、車両動作推定装置２によって推定された車両本体１０の動作態様および走行速度を記憶するメモリにより構成される。また、表示部７３は、車両動作推定装置２によって推定された車両本体１０の走行速度を表示するディスプレイにより構成されている。
【００２８】
図３を参照して、カメラ画像、第１領域Ｗ１および第２領域Ｗ２を説明する。
カメラ画像は、第１座標軸としてのｘ軸および第２座標軸としてのｙ軸に沿って並ぶ複数の画素で構成される。ｘ軸は、車両本体１０の前後方向Ｘに対応しており、ｙ軸は、車両本体１０の左右方向Ｙに対応している。
【００２９】
カメラ画像の中央には、ヘッドガード１２の下方に位置する搭乗部１１に搭乗しているオペレータが写る。また、カメラ画像には、車両本体１０が走行する路面Ｓが写るとともに、ヘッドガード１２、ステー１２Ａ、およびマスト３１等のフォークリフト１の一部が写る。
【００３０】
第１領域Ｗ１および第２領域Ｗ２の各々は、カメラ画像において路面Ｓが写る領域であって、カメラ画像においてｘ軸に平行な２辺とｙ軸に平行な２辺とによって囲まれる矩形状領域である。第１領域Ｗ１および第２領域Ｗ２は、カメラ画像に含まれ互いに離れている。第１領域Ｗ１は、車両本体１０の左方において車両本体１０に並ぶ場所に対応しており、第２領域Ｗ２は、車両本体１０の後方において車両本体１０に並ぶ場所に対応している。
【００３１】
図４および図５を参照して、シフト量Δｘ，Δｙ、およびシフト量Δｘ，Δｙの具体的な算出方法について説明する。なお、図４および図５において、路面Ｓにおける第１領域Ｗ１および第２領域Ｗ２に対応する場所は、矩形状に簡略化されている。車両本体１０の動作に伴って路面Ｓにおける第１領域Ｗ１および第２領域Ｗ２に対応する場所は変化するが、カメラ画像における第１領域Ｗ１および第２領域Ｗ２の位置は変化しない。
【００３２】
シフト量Δｘは、第１領域Ｗ１に含まれる被写体がｘ軸に平行な方向に動いた度合いを表し、例えば、図４および図５における仮想点Ｐｘの車両本体１０に対する相対的な移動量を表す。また、シフト量Δｙは、第２領域Ｗ２に含まれる被写体がｙ軸に平行な方向に動いた度合いを表し、例えば、図４および図５における仮想点Ｐｙの車両本体１０に対する相対的な移動量を表す。
【００３３】
図４を参照して、車両本体１０が前方に走行したときに生じるシフト量Δｘを説明する。図４（Ａ）は、車両本体１０が前進する直前の様子を示しており、図４（Ｂ）は、車両本体１０が前進した直後の様子を示している。図４（Ａ）および図４（Ｂ）に示すように車両本体１０が前進すると、カメラ画像に含まれる第１領域Ｗ１において、被写体である仮想点Ｐｘの位置がｘ軸に平行な方向に変化する。図４（Ａ）の仮想点Ｐｘを「仮想点Ｐｘ１」とし、図４（Ｂ）の仮想点Ｐｘを「仮想点Ｐｘ２」としたとき、図４（Ｃ）に示すように、シフト量Δｘは、第１領域Ｗ１内での仮想点Ｐｘ１と仮想点Ｐｘ２とのｘ軸に平行な方向における間隔を表す。なお、図４（Ａ）の仮想点Ｐｙを「仮想点Ｐｙ１」とし、図４（Ｂ）の仮想点Ｐｙを「仮想点Ｐｙ２」としたとき、図４（Ｃ）に示すように、第２領域Ｗ２内での仮想点Ｐｙ１と仮想点Ｐｙ２とのｙ軸に平行な方向における間隔は生じないため、シフト量Δｙは０である。車両本体１０が前方に走行したときのシフト量Δｘは、正の値で表すことができ、車両本体１０が後方に走行したときのシフト量Δｘは、負の値で表すことができる。
【００３４】
次に、図５を参照して、車両本体１０が右方に旋回したときに生じるシフト量Δｘ，Δｙを説明する。図５（Ａ）は、車両本体１０が右方に旋回する直前の様子を示しており、図５（Ｂ）は、車両本体１０が右方に旋回した直後の様子を示している。図５（Ａ）および図５（Ｂ）に示すように車両本体１０が右方に旋回すると、カメラ画像に含まれる第１領域Ｗ１において、被写体である仮想点Ｐｘの位置が変化するとともに、カメラ画像に含まれる第２領域Ｗ２において、被写体である仮想点Ｐｙの位置が変化する。図５（Ａ）の仮想点Ｐｘを「仮想点Ｐｘ３」とし、図５（Ｂ）の仮想点Ｐｘを「仮想点Ｐｘ４」としたとき、シフト量Δｘは、図５（Ｃ）に示すように、第１領域Ｗ１内での仮想点Ｐｘ３と仮想点Ｐｘ４とのｘ軸に平行な方向における間隔を表す。また、図５（Ａ）の仮想点Ｐｙを「仮想点Ｐｙ３」とし、図５（Ｂ）の仮想点Ｐｙを「仮想点Ｐｙ４」としたとき、シフト量Δｙは、図５（Ｃ）に示すように、第２領域Ｗ２内での仮想点Ｐｙ３と仮想点Ｐｙ４とのｙ軸に平行な方向における間隔を表す。車両本体１０が右方に旋回したときのシフト量Δｘ，Δｙは、それぞれ正の値で表すことができ、車両本体１０が左方に旋回したときのシフト量Δｘ，Δｙは、それぞれ負の値で表すことができる。
【００３５】
以上のように、シフト量Δｘは仮想点Ｐｘのｘ座標の変位量で表すことができ、シフト量Δｙは仮想点Ｐｙのｙ座標の変位量で表すことができ、シフト量Δｘ，Δｙは、画素数によって表すことができる。シフト量Δｘを算出するために、第１変位量算出部６３Ａは、微小時間間隔で抽出された２つの第１領域Ｗ１に写る被写体を合致させることを試みる。具体的には、第１変位量算出部６３Ａは、２つの第１領域Ｗ１のうち一方をｘ軸に平行な方向に移動させて、２つの第１領域Ｗ１に写る被写体の一致度を算出する。そして、第１変位量算出部６３Ａは、被写体の一致度が高くなる第１領域Ｗ１の移動量をシフト量Δｘとする。また、上記シフト量Δｙを算出するために、第２変位量算出部６３Ｂは、微小時間間隔で抽出された２つの第２領域Ｗ２に写る被写体を合致させることを試みる。具体的には、第２変位量算出部６３Ｂは、２つの第２領域Ｗ２のうち一方をｙ軸に平行な方向に移動させて、２つの第２領域Ｗ２に写る被写体の一致度を算出する。そして、第２変位量算出部６３Ｂは、被写体の一致度が高くなる第２領域Ｗ２の移動量をシフト量Δｙとする。２つの第１領域Ｗ１または２つの第２領域Ｗ２に写る被写体の一致度は、各画素値の差に基づいて算出することができる。また、第１変位量算出部６３Ａおよび第２変位量算出部６３Ｂは、被写体を合致させることができないとき、すなわち被写体の一致度が低ければ、シフト量Δｘ，Δｙとして無効値（例えば、９９）を算出する。
【００３６】
図６を参照して、シフト量Δｘ，Δｙに基づく車両本体１０の動作態様の具体的な推定方法について説明する。
シフト量Δｘ，Δｙの組み合わせによって表現される座標（以下、「シフト量座標」という）が、図６に示す停止判定領域に位置する場合、車両本体１０が停止していると推定される。また、シフト量座標が、図６に示す前進判定領域に位置する場合、車両本体１０が前進していると推定され、図６に示す後進判定領域に位置する場合、車両本体１０が後進していると推定される。また、シフト量座標が、図６に示す右旋回判定領域に位置する場合、車両本体１０が右方に旋回していると推定され、図６に示す左旋回判定領域に位置する場合、車両本体１０が左方に旋回していると推定される。
【００３７】
具体的には、推定部６４は、シフト量Δｘが所定の停止判定量である０であるとき、シフト量Δｙに関わらず、車両本体１０が前後方向Ｘに走行せずに停止していると推定する。また、推定部６４は、シフト量Δｘ，Δｙが有効値であること、並びにシフト量Δｘが停止判定量でないことを前提として、下記の条件１〜５のいずれが成立するかを判断することによって、車両本体１０の動作態様を推定する。なお、シフト量Δｘの有効値は、ｘｍｎ〜ｘｍｘ（図６参照）の範囲に含まれ値であって、シフト量Δｙの有効値は、ｙｍｎ〜ｙｍｘ（図６参照）の範囲に含まれる値である。また、下記の条件１〜５において、所定の直進判定量は−ｙａ〜＋ｙａ（図６参照）の範囲に含まれる値であり、ターンレートはシフト量Δｘに対するシフト量Δｙの割合（すなわち、Δｙ／Δｘ）であり、所定の判定下限値は−０．５であり、所定の判定境界値は０．５であり、所定の判定上限値は１．５である。
［条件１］シフト量Δｘが正の値であり、かつ、シフト量Δｙが直進判定量である
［条件２］シフト量Δｘが正の値であり、かつ、ターンレートが判定下限値以上であり、かつ、ターンレートが判定境界値未満である
［条件３］シフト量Δｘが正の値であり、かつ、シフト量Δｙが直進判定値ではなく、かつ、ターンレートが判定境界値以上であり、かつ、ターンレートが判定上限値以下である
［条件４］シフト量Δｘが負の値であり、かつ、シフト量Δｙが直進判定量である
［条件５］シフト量Δｘが負の値であり、かつ、ターンレートが判定下限値以上であり、かつ、ターンレートが判定境界値未満である
［条件６］シフト量Δｘが負の値であり、かつ、シフト量Δｙが直進判定値ではなく、かつ、ターンレートが判定境界値以上であり、かつ、ターンレートが判定上限値以下である
【００３８】
推定部６４は、条件１または条件２が成立するとき、車両本体１０が前進していると推定し、条件３が成立するとき、車両本体１０が右方に旋回していると推定する。また、推定部６４は、条件４または条件５が成立するとき、車両本体１０が後進していると推定し、条件６が成立するとき、車両本体１０が左方に旋回していると推定する。ｘｍｎ〜ｘｍｘの範囲およびｙｍｎ〜ｙｍｘの範囲は、例えば−２０〜＋２０［単位：ピクセル］の範囲である。また、直進判定量である−ｙａ〜＋ｙａの範囲は、例えば−３〜＋３［単位：ピクセル］の範囲である。車両本体１０が前進または後進していることは、シフト量Δｙだけでなくターンレートにも基づいて推定されるため、図６に示すように、シフト量Δｘがｘｍｎ〜−ｘａの範囲および＋ｘａ〜ｘｍｘの範囲においては、シフト量Δｙが直進判定量でないとき（すなわちシフト量Δｙが−ｙａ〜＋ｙａの範囲に含まれないとき）も、車両本体１０は前進または後進していると推定されることもある。
【００３９】
図７および図８を参照して、車両動作推定装置２が行う車両動作推定処理の流れを説明する。なお、図７に示す車両動作推定処理は、微小時間間隔で取得された２つの二次元画像から、第１領域Ｗ１および第２領域Ｗ２が抽出されたことを前提としてスタートする。
【００４０】
図７に示すように、第１変位量算出部６３Ａおよび第２変位量算出部６３Ｂが、シフト量Δｘ，Δｙを算出し（ステップＳ１０）、次いで、推定部６４が、シフト量Δｘが有効値であるか否かを判断する（ステップＳ１）。シフト量Δｘが無効値であるとステップＳ１で判断された場合、後述するステップＳ３１の処理が行われる。
【００４１】
シフト量Δｘが有効値であるとステップＳ１で判断された場合、推定部６４は、シフト量Δｘが停止判定量であるか否かを判断する（ステップＳ２）。シフト量Δｘが停止判定量であるとステップＳ２で判断された場合、推定部６４は、車両本体１０が停止していると推定する（ステップＳ１１）。
【００４２】
シフト量Δｘが停止判定量でないとステップＳ２で判断された場合、推定部６４は、シフト量Δｙが有効値であるか否かを判断する（ステップＳ３）。シフト量Δｙが無効値であるとステップＳ３で判断された場合、後述するステップＳ３１の処理が行われる。
【００４３】
シフト量Δｙが有効値であるとステップＳ３で判断された場合、推定部６４は、シフト量Δｙが直進判定量であるか否かを判断する（ステップＳ４）。シフト量Δｙが直進判定量であるとステップＳ４で判断された場合、後述するステップＳ８の処理が行われる。
【００４４】
シフト量Δｙが直進判定量でないとステップＳ４で判断された場合、推定部６４は、ターンレートが旋回判定量であるか否かを判断する（ステップＳ５）。旋回判定量は、上述の判定境界値から判定上限値までの範囲、すなわち０．５〜１．５の範囲に含まれる値である。ターンレートが旋回判定量でないとステップＳ５で判断された場合、すなわちターンレートが０．５〜１．５に含まれないと判断された場合、後述するステップＳ７の処理が行われる。
【００４５】
ターンレートが旋回判定量であるとステップＳ５で判断された場合、すなわちターンレートが０．５〜１．５に含まれると判断された場合、推定部６４は、シフト量Δｘが正の値であるか否かを判断する（ステップＳ６）。シフト量Δｘが正の値であるとステップＳ６で判断された場合、推定部６４は、車両本体１０が右方に旋回していると推定する（ステップＳ１２）。一方、シフト量Δｘが負の値であるとステップＳ６で判断された場合、推定部６４は、車両本体１０が左方に旋回していると推定する（ステップＳ１３）。
【００４６】
図８に示すように、ターンレートが旋回判定量でないとステップＳ５で判断された場合、推定部６４は、ターンレートが微旋回判定量であるか否かを判断する（ステップＳ７）。微旋回判定量は、上述の判定下限値から判定境界値までの範囲、すなわち−０．５〜０．５の範囲に含まれる値である。ターンレートが微旋回判定量でないとステップＳ７で判断された場合、すなわちターンレートが−０．５〜０．５に含まれないと判断された場合、後述するステップＳ３１の処理が行われる。
【００４７】
シフト量Δｙが直進判定量であるとステップＳ４で判断された場合、並びに、ターンレートが微旋回判定量であるとステップＳ７で判断された場合、すなわちターンレートが−０．５〜０．５に含まれると判断された場合、推定部６４は、シフト量Δｘが正の値であるか否かを判断する（ステップＳ８）。シフト量Δｘが正の値であるとステップＳ８で判断された場合、推定部６４は、車両本体１０が前進していると推定する（ステップＳ１４）。一方、シフト量Δｘが負の値であるとステップＳ８で判断された場合、推定部６４は、車両本体１０が後進していると推定する（ステップＳ１５）。
【００４８】
そして、車両本体１０が前進または後進しているとステップＳ１４，Ｓ１５で推定された場合、推定部６４は、シフト量Δｘに基づいて車両本体１０の走行速度を推定する（ステップＳ２１）。
【００４９】
シフト量Δｘまたはシフト量Δｙが無効値であるとステップＳ１，Ｓ３で判断された場合、並びに、ターンレートが微旋回判定量であるとステップＳ７で判断された場合、推定部６４は、ステップＳ１０において算出されたシフト量Δｘ，Δｙに基づく車両本体１０の動作態様を推定することを禁止する。この場合、推定部６４は車両本体１０の動作態様は変化していないものと推定する。すなわち、シフト量座標が図６に示す停止判定領域、前進判定領域、後進判定領域、右旋回判定領域、および左旋回判定領域のいずれの領域にも位置しないシフト量Δｘ，Δｙに基づいては、車両本体１０の動作態様の推定が行われない。
【００５０】
上記実施形態においては以下の効果が得られる。
（１）車両動作推定装置２は、カメラ５０と、第１領域抽出部６２Ａと、第２領域抽出部６２Ｂと、第１変位量算出部６３Ａと、第２変位量算出部６３Ｂと、動作態様推定部６４とを備える。この構成によれば、カメラ５０で取得した二次元画像の一部分である第１領域Ｗ１および第２領域Ｗ２に含まれる被写体の変位量（シフト量Δｘ，Δｙ）に基づいて車両本体１０の動作態様が推定されるため、二次元画像の全体の変位量に基づいて車両本体１０の動作態様が推定される構成に比べて、車両本体１０の動作態様を推定するための負荷を低減することが可能である。また、第１座標軸（ｘ軸）に平行な方向における変位量（シフト量Δｘ）と第２座標軸（ｙ軸）に平行な方向における変位量（シフト量Δｙ）とに基づいて車両本体１０の動作態様が推定されるため、二次元画像から変換された一次元パターンに基づいて車両本体１０の動作態様が推定される構成に比べて、車両本体１０の動作態様を精度良く推定することができる。したがって、車両本体１０の動作態様を推定するための負荷の低減と推定精度の向上との両立を図ることができる。これによって、ＧＰＳや無線設備を用いずに、倉庫内においても車両本体１０の位置および走行速度の情報を得ることが可能となる。
【００５１】
（２）第１領域抽出部６２Ａおよび第２領域抽出部６２Ｂは、二次元画像において第１座標軸（ｘ軸）に平行な２辺と第２座標軸（ｙ軸）に平行な２辺とによって囲まれる矩形状領域（第１領域Ｗ１および第２領域Ｗ２）を抽出する。この構成によれば、第１領域Ｗ１に含まれる被写体の変位量であって第１座標軸に平行な方向における変位量（シフト量Δｘ）、および第２領域Ｗ２に含まれる被写体の変位量であって第２座標軸に平行な方向における変位量（シフト量Δｙ）を、簡易な演算で算出することが可能となる。
【００５２】
（３）動作態様推定部６４は、第１変位量算出部６３Ａによって算出された変位量（シフト量Δｘ）が所定の停止判定量（０）であるとき、車両本体１０が前後方向Ｘに走行せずに停止していると推定する。この構成によれば、第２領域Ｗ２に含まれる被写体の変位量（シフト量Δｙ）を精度良く算出することができない場合であっても、車両本体１０が停止しているか否かを第１領域Ｗ１に含まれる被写体の変位量に基づいて推定することができる。
【００５３】
（４）動作態様推定部６４は、第１変位量算出部６３Ａによって算出された変位量（シフト量Δｘ）が所定の停止判定量（０）でなく、かつ、第１変位量算出部６３Ａによって算出された変位量に対する第２変位量算出部６３Ｂによって算出された変位量（シフト量Δｙ）の割合（ターンレート）が所定の判定境界値未満であるとき、車両本体１０が前方または後方に走行していると推定する。この構成によれば、第１座標軸（ｘ軸）に平行な方向における被写体の変位量が、第２座標軸（ｙ軸）に平行な方向における被写体の変位量に比べて十分大きくなることによって、車両本体１０が前方または後方に走行してるいことを推定することができる。
【００５４】
（５）動作態様推定部６４は、第１変位量算出部６３Ａによって算出された変位量（シフト量Δｘ）が所定の停止判定量（０）でなく、かつ、第１変位量算出部６３Ａによって算出された変位量に対する第２変位量算出部６３Ｂによって算出された変位量（シフト量Δｙ）の割合（ターンレート）が所定の判定境界値以上であるとき、車両本体１０が右方または左方に旋回していると推定する。この構成によれば、第２座標軸（ｙ軸）に平行な方向における被写体の変位量が増加することによって、車両本体１０が右方または左方に旋回していることを推定することができる。
【００５５】
（６）フォークリフト１は、車両本体１０と、車両動作推定装置２とを備え、カメラ５０は、ヘッドガード１２に設けられ、鉛直方向から見て３６０°の範囲を撮影可能な全方位カメラにより構成されている。この構成によれば、ヘッドガード１２の下方をカメラ５０で撮影することによって、複数のカメラを用いることなく、第１領域Ｗ１および第２領域Ｗ２に対応する場所を含んでいる広範囲の路面が写った二次元画像を取得することができる。
【００５６】
本発明は、上記実施形態に限定されるものではなく、上記実施形態の構成を適宜変更することもできる。例えば、上記構成を以下のように変更して実施することもでき、以下の変更を組み合わせることもできる。
【００５７】
・車両本体１０の動作態様を推定するための負荷の低減と推定精度の向上との両立を図ることができるのであれば、車両動作推定処理の流れや、上記態様１〜５が推定されるための条件を適宜変更してもよい。例えば、停止判定量は、０を含む所定範囲に含まれる値であってもよく、判定下限値および判定境界値および判定上限値を適宜変更してもよく、直進判定量および旋回判定量および微旋回判定量の範囲を適宜変更してもよい。
【００５８】
・第１座標軸（ｘ軸）に平行な方向における被写体の変位量を算出することができるのであれば、第１領域Ｗ１の配置および形状および大きさを適宜変更してもよい。また、第２座標軸（ｙ軸）に平行な方向における被写体の変位量を算出することができるのであれば、第２領域Ｗ２の配置および形状および大きさを適宜変更してもよい。例えば、第１領域Ｗ１を、車両本体１０の右方において車両本体１０に並ぶ場所に対応させることもでき、第２領域Ｗ２を、車両本体１０の前方において車両本体１０に並ぶ場所に対応させることもできる。すなわち、第１領域抽出部６２Ａによって抽出される第１領域Ｗ１は、車両本体１０の左右方向Ｙの少なくとも一方において車両本体１０に並ぶ場所に対応していればよい。また、第２領域抽出部６２Ｂによって抽出される第２領域Ｗ２は、車両本体１０の前後方向Ｘの少なくとも一方において車両本体１０に並ぶ場所に対応していればよい。
【００５９】
・被写体である路面Ｓを撮影することができるのであれば、カメラ５０に係る構成を適宜変更してもよい。例えば、カメラ５０の配置および個数を変更することもできる。また、カメラ５０を、全方位カメラ以外のカメラにより構成することもできる。
【００６０】
・フォークリフト１の車両本体１０および走行装置２０および荷役装置３０および操作装置４０に係る構成を適宜変更することもできる。例えば、カウンターバランス式のフォークリフトに本発明を適用することもでき、フォーク３２を備えない荷役車両に本発明を適用することもできる。
【符号の説明】
【００６１】
１  フォークリフト（荷役車両）
２  車両動作推定装置
１０  車両本体
１１  搭乗部
１２  ヘッドガード
２０  走行装置
２１  前輪
２２  後輪
３０  荷役装置
３１  マスト
３２  フォーク
４０  操作装置
４１  ステアリングハンドル
４２  走行用レバー
５０  カメラ
６１  前処理部
６２Ａ  第１領域抽出部
６２Ｂ  第２領域抽出部
６３Ａ  第１変位量算出部
６３Ｂ  第２変位量算出部
６４  動作態様推定部
７１  制御部
７２  記憶部
７３  表示部
Ｓ  路面（被写体）
Ｗ１  第１領域
Ｗ２  第２領域
Ｘ  前後方向
Ｙ  左右方向
Ｚ  上下方向
Δｘ  シフト量（第１領域に含まれる被写体の変位量であって第１座標軸に平行な方向における変位量）
Δｙ  シフト量（第２領域に含まれる被写体の変位量であって第２座標軸に平行な方向における変位量）
【図１】
0005904608.tif 000002
【図２】
0005904608.tif 000003
【図３】
0005904608.tif 000004
【図４】
0005904608.tif 000005
【図５】
0005904608.tif 000006
【図６】
0005904608.tif 000007
【図７】
0005904608.tif 000008
【図８】
0005904608.tif 000009