(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024092716
(43)【公開日】2024-07-08
(54)【発明の名称】移動体システム及びオルソ画像地図生成方法
(51)【国際特許分類】
G05D 1/43 20240101AFI20240701BHJP
G06T 7/00 20170101ALI20240701BHJP
【FI】
G05D1/02 K
G06T7/00 C
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022208843
(22)【出願日】2022-12-26
(71)【出願人】
【識別番号】502129933
【氏名又は名称】株式会社日立産機システム
(74)【代理人】
【識別番号】110001689
【氏名又は名称】青稜弁理士法人
(72)【発明者】
【氏名】槙 修一
【テーマコード(参考)】
5H301
5L096
【Fターム(参考)】
5H301AA02
5H301BB05
5H301BB11
5H301CC03
5H301CC06
5H301CC10
5H301GG08
5H301GG09
5L096AA06
5L096AA09
5L096BA04
5L096CA02
5L096CA18
5L096FA66
5L096FA67
5L096FA69
(57)【要約】
【課題】移動体システムにおいて、確実かつ精度よくスケール付の画像地図データを生成する。
【解決手段】距離センサの位置姿勢とカメラの相対的位置姿勢とを比較することによりカメラ画像にスケール情報を付与するスケール調整部とカメラ画像の床面の情報を抽出する床面抽出部とを有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
床面を有する現場を移動する移動体に設けられた距離センサとカメラと、前記カメラで撮影したカメラ画像から前記床面のオルソ画像地図を生成するオルソ画像地図生成装置とを有する移動体システムであって、
前記オルソ画像地図生成装置は、
前記距離センサで計測した前記距離データを地図データと照合することにより前記距離センサの位置姿勢を検出する距離センサ位置姿勢検出部と、
前記カメラで撮影した前記カメラ画像から前記カメラの相対的位置姿勢を検出するカメラ相対位置姿勢検出部と、
前記距離センサの位置姿勢と前記カメラの相対的位置姿勢とを比較することにより前記カメラ画像にスケール情報を付与するスケール調整部と、
前記カメラ画像の前記床面の情報を抽出する床面抽出部と、
を有することを特徴とする移動体システム。
【請求項2】
前記カメラ相対位置姿勢検出部は、
前記カメラで撮影した複数枚の前記カメラ画像から前記カメラの相対的位置姿勢を検出し、
前記スケール調整部は、
前記カメラによる移動量と前記距離センサによる移動量とを比較することにより前記スケール情報を付与することを特徴とする請求項1に記載の移動体システム。
【請求項3】
前記スケール調整部は、
前記床面に記載された模様に関する情報を前記地図データ上に前記スケール情報として付与することを特徴とする請求項1に記載の移動体システム。
【請求項4】
前記スケール調整部は、
前記床面に記載された前記模様の情報として、前記現場における作業員のための安全通路の情報を前記地図データ上に前記スケール情報として付与することを特徴とする請求項3に記載の移動体システム。
【請求項5】
前記床面抽出部は、
前記カメラ画像に対して射影変換を行って複数の前記画像間の対応を取ることにより前記スケール情報が付与された前記床面の3次元点群データを復元して、前記床面の情報を抽出することを特徴とする請求項1に記載の移動体システム。
【請求項6】
前記床面抽出部は、
エッジ抽出された複数の前記カメラ画像を互いに重ね、重なっている前記床面上の前記模様を残すことにより、前記床面の情報を抽出することを特徴とする請求項3に記載の移動体システム。
【請求項7】
前記オルソ画像地図生成装置は、
前記距離センサの移動軌跡と前記カメラの移動軌跡とを比較することにより前記地図データの座標系と前記カメラの座標系とを同一の座標系上で表現する座標系調整部と、
前記地図データと前記カメラ画像の前記床面の情報とを合成して前記スケールが付与された前記オルソ画像地図を生成する画像地図合成部と、
を更に有することを特徴とする請求項1に記載の移動体システム。
【請求項8】
前記座標系調整部は、
前記距離センサによって算出されたセンサ位置を前記カメラのカメラ位置に変換した位置に基づいて前記距離センサの移動軌跡を求め、
前記距離センサの移動軌跡と前記カメラの移動軌跡とに対して測定時刻の対応を取り、
対応する前記測定時刻の位置同士が重なるように座標変換することにより前記地図データの座標系と前記カメラの座標系とを同一の座標系上で表現することを特徴とする請求項7に記載の移動体システム。
【請求項9】
前記移動体は、
前記現場を移動しながら前記カメラで一定の時間間隔で連続的に前記カメラ画像を撮影することを特徴とする請求項1に記載の移動体システム。
【請求項10】
床面を有する現場を移動する移動体に設けられたカメラで撮影したカメラ画像から前記床面のオルソ画像地図を生成するオルソ画像地図生成方法であって、
前記移動体に設けられた距離センサで計測した距離データを地図データと照合することにより前記距離センサの位置姿勢を検出する距離センサ位置姿勢検出ステップと、
前記カメラで撮影したカメラ画像から前記カメラの相対的位置姿勢を検出するカメラ相対位置姿勢検出ステップと、
前記距離センサで検出された前記距離センサの位置姿勢と前記カメラで検出された前記カメラの相対的位置姿勢とを比較することにより前記カメラ画像にスケール情報を付与するスケール調整ステップと、
前記カメラ画像の前記床面の情報を抽出する床面抽出ステップと、
を有することを特徴とするオルソ画像地図生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体システム及びオルソ画像地図生成方法に関する。
【背景技術】
【0002】
近年、工場内の物流の増加に伴いフォークリフト等にレーザスキャナやカメラ等のセンサを搭載し、SLAM(Simultaneous Localization And Mapping)技術を適用することで無人搬送車AGV(Automated Guided Vehicle)の無軌道化が行われている。
【0003】
本技術を活用したAGVは自律的に移動を行うことで搬送効率の改善を実現することが可能である。無軌道AGVは人と共存する環境で動作させる場合が多い。この場合、安全通路や一旦停止の標識など人の移動に関する指示が多くあり、これらを考慮した形でAGVの動作計画を作成する必要がある。
【0004】
本技術分野における先行技術文献として特許文献1がある。特許文献1では、レーザによる位置推定結果を単眼カメラの位置推定に利用することで、単眼カメラで取得した画像から地図データを生成する技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
単眼カメラで取得した画像からはスケールの情報が得られないが、特許文献1ではレーザで生成したスケール入りの地図データと比較することで、画像の寸法情報を算出している。
【0007】
しかしながら、必ずしもレーザで測定した構造物と画像でとらえられる特徴が一致しないため、確実かつ精度よくスケール付の画像地図データを生成することができない。
【0008】
本発明の目的は、移動体システムにおいて、確実かつ精度よくスケール付の画像地図データを生成することにある。
【課題を解決するための手段】
【0009】
本発明の一態様の移動体システムは、床面を有する現場を移動する移動体に設けられた距離センサとカメラと、前記カメラで撮影したカメラ画像から前記床面のオルソ画像地図を生成するオルソ画像地図生成装置とを有する移動体システムであって、前記オルソ画像地図生成装置は、前記距離センサで計測した前記距離データを地図データと照合することにより前記距離センサの位置姿勢を検出する距離センサ位置姿勢検出部と、前記カメラで撮影した前記カメラ画像から前記カメラの相対的位置姿勢を検出するカメラ相対位置姿勢検出部と、前記距離センサの位置姿勢と前記カメラの相対的位置姿勢とを比較することにより前記カメラ画像にスケール情報を付与するスケール調整部と、前記カメラ画像の前記床面の情報を抽出する床面抽出部とを有することを特徴とする。
【発明の効果】
【0010】
本発明の一態様によれば、移動体システムにおいて、確実かつ精度よくスケール付の画像地図データを生成することができる。
【図面の簡単な説明】
【0011】
【
図1】本発明の実施例の移動体システムの構成の一例を示す図である。
【
図2】移動体が動作する現場と距離センサでの測定例を示す図である。
【
図3】移動体が現場を測定している例を示す図である。
【
図5】取得した画像に射影変換を施した例を示す図である。
【
図6】床面の模様を抽出するための処理の例を示す図である。
【
図7】レーザセンサと単眼カメラの移動軌跡の比較の例を示す図である。
【
図8】レーザの地図データとオルソ画像を重ねて表示した画像の例を示す図である。
【
図10】レーザセンサと単眼カメラの移動軌跡の比較の他の例を示す図である。
【発明を実施するための形態】
【実施例0012】
本発明は、工場内で稼働するフォークリフトや無人搬送車AGV等の移動体の移動経路を定義するための技術に関するものである。
【0013】
以下、図面を用いて、本発明を実現するための実施例について説明する。本実施例においては、工場内でAGV等の移動体向けに画像地図データを生成する例を用いて説明する。
【0014】
図1は、本発明の実施例の移動体システムの構成の一例を示す図である。
【0015】
移動体(AGV)10には、位置を検出するための距離センサ105、カメラ101、カメラ101で撮影した画像から路面のオルソ画像地図を生成するオルソ画像地図生成装置104、オルソ画像地図生成装置104で生成された画像データを表示するためのディスプレイ102、駆動輪121を制御するための車両制御装置120が搭載されている。
【0016】
オルソ画像地図生成装置104は、カメラ相対位置姿勢検出部106、距離センサ位置姿勢検出部107、スケール調整部112、距離センサ位置変換部108、座標系調整部113、床面抽出部122、画像地図合成部110を有する。これらは、主にプロセッサ119によって処理される
更に、オルソ画像地図生成装置104は、メモリ118を有する。メモリ118には、プロセッサ119で処理する際の参照データとして、距離センサ105の位置姿勢検出に用いる地
図114と、距離センサ位置をカメラ位置に変換する際に用いるセンサ相対位置117が格納されている。
【0017】
距離センサ105は周囲環境にある物体との距離と測定方向を計測することが可能なセンサである。本実施例においては典型的な距離センサとして二次元のレーザスキャナを用いて説明を行う。二次元のレーザスキャナは、水平方向にレーザのパルスを照射して、物体に光が当たることで乱反射したレーザ光が返ってくるまでの時間を計測することで、物体との距離を算出するようなものである。
【0018】
距離センサ105の内部に備わっているモータ(図示せず)によってレーザパルスの照射方向を回転させ、照射方向と距離を取得することで、周囲の形状データを取得することができる。
【0019】
レーザスキャナの計測範囲は、例えば照射範囲270度、角度分解能(パルスの照射間隔)を0.25度として、1081点の距離データを25msec周期で取得することが可能なスキャナなどがあるが、これに限らず、照射範囲や角度分解能が異なっていても、複数の距離データと照射方向の組を取得できるセンサであれば本発明を適用することが可能である。
【0020】
また、二次元のレーザスキャナに限らず三次元で周囲の構造物との距離を計測できる三次元レーザスキャナやステレオカメラ等、周囲にある構造物との距離を異なる角度方向に対して複数取得できるものであれば本発明を適用することが可能である。
【0021】
距離センサ位置姿勢検出部107は、距離データと地
図114を照合することで距離センサ105の位置姿勢を検出する。
【0022】
カメラ相対位置姿勢検出部106は、カメラ101で撮影した画像からV-SLAMの技術を使用してカメラ101の位置姿勢を算出する。
【0023】
本実施例において、プロセッサ119はプログラムを実行するための演算装置であり、例えばCPU(Central Processing Unit)のようなものであるが、プログラムを実行できるものであればなんでもよく、FPGA(Field Programmable Gate Array)、CPLD(Complex Programmable Logic Device)や、ASIC(application specific integrated circuit)などで実現しても良い。
【0024】
車両制御装置120は、駆動輪121に指令を与えて移動体10を移動させるための制御装置である。これは地
図114を基準に大まかな移動経路を設定し、その移動経路にしたがって走行する機能を実現するためのものである。
【0025】
図2は、移動体10が運用されている現場環境を表している。床面には歩行者用の安全通路202、203などの情報が記載されているが、2次元のレーザは水平方向に照射されるため、路面に記載された情報を測定することができない。3次元のレーザスキャナであれば床面を測定することができるが、レーザの分解能では精度よく床面の模様を測定することが難しい。
【0026】
図2において、地
図114はレーザで測定可能な物体の表面の形状を表している。これらの構造物の位置は例えば占有格子地図と呼ばれる。占有格子地図において、空間を格子状に分割し、レーザで測定可能な構造物がある格子は1、構造物が無い格子は0といった形で画像のような形式で表現される。地
図114には原点204が定義されている。また、格子の1辺の長さにスケールが定義することで、地
図114に寸法の情報を持たせることが可能である。
【0027】
地
図114の表現方法については、レーザで測定した形状のデータと照合し、一致しているか否かを判定することが可能な表現方法であればなんでも良く、格子内の点群データをガウス分布で近似表現するNDT(Normal Distribution Transform)などを用いても良い。
【0028】
地図(地図データ)114は現場に配置されている構造物を一定の高さでスライスした断面図のようなものである。この地
図114はSLAM技術等によって作成することが可能であるが、精密なCADデータ等が存在する場合はこのデータを位置検出用の地
図114として用いることも可能である。
【0029】
距離センサ位置姿勢検出部107は、地
図114と距離センサ105の測定データ205を照合して、地
図114に定義された座標系204の上での位置および姿勢(x、y、θ)を算出する。距離センサ位置姿勢検出部107は、地
図114と距離データ205を高速に照合する機能によって実現され、例えばICP(Iterative Closest Point)法や、NDT法などを用いて行うことができる。また、解像度のことなる地図を使用した粗密探索などを行っても良い。
【0030】
図3は移動体10がカメラ101で台車201や白線202などがある現場環境を撮影している様子を表している。
【0031】
移動体10は移動しながら一定の時間間隔で連続的に画像307、308を記録している。カメラ位置姿勢検出部106は、このカメラ1-01で撮影した画像を用いて単眼Visual SLAMやSfM(Structure from Motion)といった技術を使用してカメラ101の位置と姿勢を検出する。
【0032】
Visual SLAMの一例としてはHARRIS特徴量や、SIFT特徴量などを用いて特徴点を抽出し、同じ特徴を持つ点(画素)の対応をとることで三角測量を行うものや、直接画素間の相関関数などを計算し、画素毎の対応をとる直接法などがある。また、DNN(Deep Neural Network)を使用して、カメラ101の位置と姿勢を推定する方式を用いても良い。
【0033】
本発明においては、上記のような2枚以上の画像から、それぞれの画像が撮影されたカメラ101の姿勢Rと位置t304を高精度に算出することができればどのような方法を用いても良い。ここで、Rは3次元の回転行列であり、tは3次元のベクトルを表すものとする。ただし単眼で推定した移動量t304は絶対的なスケールの情報を取得することができず、移動する方向のみを取得することができる。
【0034】
スケール調整部112は、移動量t304と距離センサ105による移動量305を比較することで、スケール調整パラメータを算出する。
【0035】
距離センサ位置変換部108は、距離センサ105の位置(x、y、θ)と、センサ相対位置117に基づいてカメラ101の位置姿勢を算出する。カメラ101は距離センサ105のセンサ座標系を基準として、位置bに取り付けられているとする。
【0036】
地
図114の座標系における距離センサの位置姿勢を(x、y、θ)として、3次元空間のZ軸を床面に対して垂直方向にとれば、距離センサ105の位置は列ベクトルを用いて[x、y、0]^T(Tはベクトルの転置を表す)と書くことができる。
【0037】
3次元の座標系における姿勢を表す回転行列U(θ)を使用し、カメラの相対位置d=[x、y、0]^Tとすれば、距離センサ105の座標からカメラ位置は次式で記述される。
【0038】
(数1)
この距離センサ105の移動量305から求めたカメラ位置の変位(数2)と、カメラ101の画像から求めた変位t(304)を比較することで、スケールの比を算出し、カメラ101の画像にスケールを入れていくことができる。
【0039】
(数2) m(d)=g_f(θ、d)-g_f-1(θ、d)
図4Aは取得されたカメラ画像307である。
図4Bは取得されたカメラ画像308である。
図4Aのカメラ画像307において、307pは画素もしくはポイントである。また、307eはエッジである。
図4Bのカメラ画像308において、308pは画素もしくはポイントである。また、308eはエッジである。
【0040】
この画像に行列Gを用いた射影変換(Homography)を行うことで2つの画像間の対応を取り、白線など床面に記載されている情報の3次元情報を復元する。
【0041】
射影変換は画像上の2次元座標を表すベクトルをp=[u,v,1]^Tとして、射影変換行列G=(g_ij)を用いて(数3)によって表すことができる。
【0042】
(数3)
また、Gは(数4)のように表現することができる。
【0043】
(数4)
ここで、nはカメラ101の姿勢に対する床面の法線ベクトルであり、Kはカメラ101の内部パラメータ行列である。法線ベクトルnはカメラ101と距離センサ105の相対位置から決まるベクトルである。内部パラメータKについては、予めキャリブレーションを行うことで算出することができる。
【0044】
いずれの値もあらかじめ計算することが可能であり、よって、R,tが求まっているので、Gを算出することが可能である。また、カメラ101は平面上を移動しているので、Rはnを回転軸とした回転行列となっているため、Rからnを算出することも可能である。
【0045】
図5は時刻tの画像308に対して射影変換を施した画像である。射影変換は床面の模様を抽出するための処理である、
(数2)のGを計算し、(数1)の変換を行えば床面部分は時刻t-1の画像307と丁度重なる変換となり、射影変換画像308hを得ることができる。
【0046】
図6は床面抽出部121の処理の模式図であり、エッジ抽出された画像307と画像308hを重ねたものである。
【0047】
台車部分601は床面上に無いため、時刻t-1の画像307上の台車と重ならないが、床面上にある模様602は同一平面上にあるので丁度重ねることができる。この性質から重なっている部分のみを残すことで、床面の模様のみ抽出することが可能となる。
【0048】
この変換によって時刻t―1の画像307と時刻tの画像308の各画素の対応も取ることができるので、この対応関係と、カメラ位置の相対関係から床面の3次元距離すなわち、実寸の床面模様の3次元座標を復元することができる。
【0049】
通常の特徴点を使用した方法においては、画像におけるコーナーの情報など画像間で1対1に対応がとれる場所が用いられるが、本発明を用いれば、エッジ307e、308eのように画素間の比較では、一意に対応が決まらない場所においても、平面を仮定することで対応をとることができ3次元の情報を復元することが可能である。
【0050】
図7はすべてのカメラ101のカメラ画像から算出されたカメラ101の移動軌跡702と、距離センサ105によって算出された位置をカメラ位置に変換した位置の移動軌跡705を示している。
【0051】
これらは測定された時刻の対応(時刻一対一対応703)がついており、対応する時刻の位置同士が重なるように座標変換することで、カメラ101の座標系701と距離センサ105の座標系204を同一の座標系上で表現することができる。
【0052】
ここで、304はカメラ101の移動量であり、305mは距離センサ105の移動量である。このように、距離センサ105の取り付け位置に対して、カメラ101の取り付け位置が定義されている距離センサ105の移動量をカメラ位置に変換した移動量に変換する。上記処理は、座標系調整部113とスケール調整部112により行われる。
【0053】
図8は座標系を調整した結果を表している。このように本発明を用いることで距離センサ105による地図(地図データ)114とカメラ101による床面の模様202、203を精度よく合成することができる。ここで、308Nは部分オルソ画像である。
【0054】
【0055】
最初に、カメラ相対位置姿勢検出部106が、2フレーム分の画像データとあらかじめ算出している相対位置姿勢R、tを読み込む(ステップ902)。
【0056】
次に、距離センサ位置変換部107が、カメラ位置の移動距離|t|と距離センサの移動距離dからスケール変換パラメータs(=m(d)/|t|)を求める。(ステップ903)
次に、床面抽出部122が、カメラ101の位置姿勢R、s×tと法線ベクトルnから射影変換行列Gを求める(ステップ904)。
【0057】
次に、床面抽出部122が、エッジ抽出された画像に対して射影変換Gを行い、互いに重なりあう部分のみを床面として抽出する(ステップ905)
次に、床面抽出部122が、姿勢R、移動量stと、Gによるエッジ画素の対応関係(ステップ905)を用いて、床面のスケール入り3次元点群データを復元する(ステップ906)。
【0058】
最後に、スケール調整部112と座標系調整部113が、距離センサ105の移動軌跡とカメラ101の移動軌跡を比較し、地
図114との座標系を合わせて合成する(ステップ907)
図10は、レーザセンサと単眼カメラの移動軌跡の比較の他の例を示す図である。
【0059】
図7においては、測定された時刻の対応(時刻一対一対応703)がついており、対応する時刻の位置同士が重なるように座標変換することで、カメラ101の座標系701と距離センサ105の座標系204を同一の座標系上で表現している。
【0060】
これに対して、
図10では、測定された時刻の対応(時刻一対一対応703)は不明であるが、距離センサの移動軌跡1001と単眼カメラの移動軌跡1002の重なりを評価することで、座標系の関係とスケールの情報も含めて算出することが可能である。具体的には、距離センサの移動軌跡1001を構成する位置と姿勢に対して、カメラの移動軌跡の最寄りの点との距離1003aと、カメラの移動軌跡1002を構成する位置と姿勢に対して、距離センサの移動軌跡1001との最寄りの点との距離1003bの総和を最小化することで、座標系の対応と、スケールの情報を算出することが可能である。また、互いのセンサは同時刻にレーザの照射とカメラでの撮像が行われている必要が無いことは言うまでもない。
【0061】
このように、カメラとレーザの測定時刻の情報を用いずとも移動軌跡の情報から、カメラ101の座標系701と距離センサ105の座標系204を同一の座標系上で表現することが可能である。
【0062】
上記実施例では、オルソ画像地図生成装置104は、移動体10の内部に設けられているが、本発明はこれに限定されず、オルソ画像地図生成装置104を通信回線で接続された外部サーバ(図示せず)に設けても良い。
【0063】
このように、上記実施例では、距離センサ105で計測した距離データを移動する環境の地
図114と照合することによって自身の位置を推定し、カメラ101で計測した複数枚の画像から自身の相対的な位置を推定し、距離センサで105もとめた自己位置姿勢とカメラ101で求めた自己位置姿勢を比較することにより画像データにスケール情報を付与する。
【0064】
上記実施例によれば、レーザによる地図データの代わりに、床面に記載された作業員のための交通標識などを地図データ上にスケール付の情報として記載可能となり、移動体の動作計画を効率的に作成することができる。
10:移動体、102:ディスプレイ、105:距離センサ、104:オルソ画像地図生成装置、119:プロセッサ(CPU)、106:カメラ相対位置姿勢検出部、107:距離センサ位置姿勢検出部、113:座標系調整部、112:スケール調整部、110:オルソ画像合成部、108:距離センサ位置変換部、118:メモリ(記憶装置)、114:地図、117:センサ相対位置、120:車両制御装置、121:駆動輪、201:台車、202:安全通路、204:地図の原点、307:時刻t―1の画像、308:時刻tの画像