JP7482453B2 - 測位装置及び移動体 - Google Patents

測位装置及び移動体 Download PDF

Info

Publication number
JP7482453B2
JP7482453B2 JP2020562954A JP2020562954A JP7482453B2 JP 7482453 B2 JP7482453 B2 JP 7482453B2 JP 2020562954 A JP2020562954 A JP 2020562954A JP 2020562954 A JP2020562954 A JP 2020562954A JP 7482453 B2 JP7482453 B2 JP 7482453B2
Authority
JP
Japan
Prior art keywords
orientation
marker
attitude
vehicle
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020562954A
Other languages
English (en)
Other versions
JPWO2020137311A1 (ja
Inventor
拓実 小島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JPWO2020137311A1 publication Critical patent/JPWO2020137311A1/ja
Application granted granted Critical
Publication of JP7482453B2 publication Critical patent/JP7482453B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/005Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 with correlation of navigation data from several sources, e.g. map or contour matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/457Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by analysing connectivity, e.g. edge linking, connected component analysis or slices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • G06V20/588Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • G06T2207/30208Marker matrix
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Electromagnetism (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本開示は、車両などの移動体の位置を測定する測位装置と、そのような測位装置を備えた移動体とに関する。
荷物運搬用の車両を用いて予め決められた領域内又は予め決められた地点間で荷物を移動させるとき、車両の位置を測定して追跡することが求められる場合がある。例えば、特許文献1は、GPS、無線LAN測位、赤外線測位などの測位技術を用いて車両の位置を測位する荷物所在管理装置を開示している。
屋外で移動する車両を測位する場合、一般的には、GPSを用いた測位方法が使用される。一方、倉庫又は工場などの屋内では、GPS衛星からの電波を受信できないので、GPSを用いた測位方法は使用できない。屋内の測位方法として、例えば、UWB(ultra wide band)、Wi-Fi、又はBLE(Bluetooth(登録商標) Low Energy)などの無線信号を用いたものがある。しかしながら、無線信号を用いた測位方法は、無線信号を送信するための多数の無線送信機を車両の移動範囲に設置する必要があるので、初期導入コストが高い。また、屋内の測位方法として、PDR(Pedestrian Dead Reckoning:歩行者自律航法)と呼ばれるものがある。しかしながら、PDRは位置を高精度に測定することが困難である。
無線信号を送信するための多数の無線送信機を必要とすることなく、車両などの移動体の位置を高精度に測定して追跡するために、例えば、非特許文献1に開示されるように、Visual-SLAM(Visual Simultaneous Localization and Mapping)と呼ばれる技術がある。Visual-SLAMによれば、撮影装置を備えた移動体がその周囲を撮影しながら移動し、撮影された複数の画像における特徴点の移動量に基づいて移動体の移動量が計算される。これにより、移動体の現在の位置を推定したり、移動体の軌跡に基づいて地図を生成したりすることができる。
特開2011-219229号公報
R. Mur-Artal, et al., "ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras", IEEE Transactions on Robotics, Volume: 33, Issue: 5, Oct. 2017
工場及び倉庫等など、日々背景が変化するシーンにおいては、事前に作成した地図を用いて現在の位置を特定することは困難である。この場合、Visual-SLAMによって得られる移動体の位置は、ある基準位置(例えば、移動体が移動を開始した位置)に対する相対位置として計算されるので、時間の経過に従って誤差が累積的に増大する。従って、撮影装置を用いて、従来よりも小さな誤差で移動体の位置を測定することができる測位装置が求められる。
本開示の目的は、撮影装置を用いて移動体の位置を測定する測位装置であって、従来よりも小さな誤差で移動体の位置を測定することができる測位装置を提供することにある。
本開示の一態様によれば、
移動体に搭載された撮影装置によって撮影された複数の画像に基づいて、所定の基準位置及び基準姿勢に対する前記移動体の相対位置及び相対姿勢を示す前記移動体の第1の位置及び第1の姿勢を計算する第1の計算器と、
予め決められた位置に配置されて視覚的に識別可能な複数のマーカーの識別子、位置、及び姿勢の情報と、前記移動体のための通路を含むマップの情報とを格納する記憶装置と、
前記撮影装置によって撮影された画像から前記複数のマーカーのうちの1つを抽出し、抽出された前記1つのマーカーの位置及び姿勢に基づいて、前記マップにおける前記移動体の位置及び姿勢を示す前記移動体の第2の位置及び第2の姿勢を計算し、前記1つのマーカーを原点とするマーカー座標系における前記移動体の位置及び姿勢に基づいて、前記1つのマーカーの面の法線に対する前記移動体の方向への角度を計算する第2の計算器と、
前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記移動体の補正された位置及び補正された姿勢を生成する補正器とを備え、
前記補正器は、前記角度が第1の閾値以下である前記マーカーの位置及び姿勢に基づいて計算される前記第2の位置及び前記第2の姿勢を使用せず、前記角度が前記第1の閾値より大きい前記マーカーの位置及び姿勢に基づいて計算される前記第2の位置及び前記第2の姿勢を使用して、前記補正された位置及び前記補正された姿勢を生成する。
これらの概括的かつ特定の態様は、システム、方法、コンピュータプログラム並びにシステム、方法及びコンピュータプログラムの任意の組み合わせにより実現してもよい。
本開示の一態様によれば、第2の位置及び第2の姿勢に基づいて第1の位置及び第1の姿勢を補正することにより、移動体の位置及び姿勢を高精度に測定することができる。また、本開示の一態様によれば、認識されたマーカーを信頼できるか否かを判断し、マーカーを信頼できるときのみ、第2の位置及び第2の姿勢に基づいて移動体の位置及び姿勢を補正することにより、移動体の位置及び姿勢をより高精度に測定することができる。
第1の実施形態に係る車両1の構成を示す概略図である。 図1の車両1を含む測位システムの構成を示すブロック図である。 図2の測位装置12の構成を示すブロック図である。 図1の車両1が移動する通路101を含む倉庫100のマップである。 図4のマーカー4の例を示す図である。 図3の記憶装置35に格納されたマーカー情報の例を示すテーブルである。 図1の撮影装置11によって撮影された画像40の例を示す図である。 図2の測位装置12によって実行される測位処理を示すフローチャートである。 図8のステップS2(相対位置計算処理)のサブルーチンを示すフローチャートである。 図3の画像処理器31によって抽出される特徴点であって、(a)は時刻nにおける画像40(n)から抽出される特徴点F1,F2を示し、(b)は時刻n’における画像40(n’)から抽出される特徴点F1’,F2’を示す図である。 図8のステップS3(絶対位置計算処理)のサブルーチンを示すフローチャートである。 マーカー座標系におけるマーカー4の頂点の座標を示す図である。 図1の撮影装置11によって撮影された画像40におけるマーカー4の頂点の座標を示す図である。 図8のステップS4(補正処理)のサブルーチンを示すフローチャートである。 図14のステップS31において計算される補正移動量を説明する図である。 図14のステップS33において計算される補正回転量を説明する図である。 図11のステップS24(マーカー評価処理)のサブルーチンを示すフローチャートである。 図1の撮影装置11によって撮影された画像40の例を示す図である。 図3の画像認識器33によって検出されたマーカー4と、マーカー4であると誤検出されたオブジェクトとを含むテーブルである。 図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適したマーカー4を含む画像40の例を示す図である。 図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適さないマーカー4を含む画像40の例を示す図である。 マーカー座標系における撮影装置11の位置の反転を説明する図である。 図3の位置計算器34によって計算されたマーカー座標系における撮影装置11の位置の変化を示すテーブルである。 図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適した幅を有するマーカー4の像の例を示す図である。 図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適した幅をもたないマーカー4の像の例を示す図である。 図17のステップS43における閾値を変化させたときの車両1の絶対位置の誤差を示すグラフである。 マーカー座標系において、車両1の絶対位置及び絶対姿勢の計算に適したマーカー4の像を撮影可能な角度及び距離を説明する図である。 車両1の絶対位置及び絶対姿勢の計算に適したマーカー4の像を撮影するときの角度の条件を説明する図である。 図28の撮影装置11によって撮影されたマーカー4を含む画像の例を示す図である。 第1の実施形態の比較例に係る補正処理を実行することによって計算された車両1の軌跡103を示す図である。 図17のマーカー評価処理を実行することによって計算された車両1の軌跡104を示す図である。 第2の実施形態に係る測位装置12Bの構成を示すブロック図である。
以下、本開示に係る実施形態について図面を参照して説明する。なお、以下の各実施形態において、同様の構成要素については同一の符号を付している。
[第1の実施形態]
図1~図24を参照して、第1の実施形態に係る測位装置及びそれを備えた移動体について説明する。
[第1の実施形態の構成]
[全体構成]
図1は、第1の実施形態に係る車両1の構成を示す概略図である。車両1は、例えばフォークリフト又はトラックなど、有人の乗物であってもよい。また、車両1は、荷物3を搭載する荷台1aを備える。車両1は、荷物3を荷台1aに積み卸しするための昇降機構1bをさらに備えてもよい。また、車両1は、前進、後進、操舵、及び停止などのユーザ操作を受けるコンソール1cを備える。また、車両1の車体には、車両1に対して予め決められた向き(前方、後方、側方、上方、及び/又は下方)を撮影するように、撮影装置11が設置されている。
図2は、図1の車両1を含む測位システムの構成を示すブロック図である。図2の測位システムは、少なくとも1つの車両1と、サーバ装置2とを含む。各車両1は、撮影装置11によって撮影された画像に基づいて、その位置を測定する測位装置12を備える。サーバ装置2は、各車両1からそれらの位置を取得し、各車両1の位置を記録する。
[車両1の構成]
車両1は、撮影装置11、測位装置12、通信装置13、表示装置14、及び駆動機構15を備える。
撮影装置11は、車両1の移動中に、所定時間ごとに、車両1に対して予め決められた向きにおける被写体の画像を生成する。撮影装置11は、例えば、少なくとも1つのカメラを含む。撮影装置11は、所定時間ごとに静止画像を撮影してもよく、動画像の一連のフレームから所定時間ごとにフレームを抽出してもよい。撮影装置11は、撮影した画像を測位装置12に送る。撮影装置11は、各画像に、当該画像を撮影した時刻のタイムスタンプを付与する。
測位装置12は、撮影装置11によって撮影された画像に基づいて、車両1の位置を測定する。測位装置12は、撮影装置11によって撮影された複数の画像から特徴点を抽出し、抽出された特徴点を画像間で対応付けし、画像間の特徴点の変化量に基づいて、所定の基準位置及び基準姿勢に対する車両1の相対位置及び相対姿勢を計算する。また、測位装置12は、撮影装置11によって撮影された画像から、予め決められた位置に配置されて視覚的に識別可能な複数のマーカーのうちの1つを抽出し、抽出された1つのマーカーに基づいて、予め与えられたマップにおける車両1の絶対位置及び絶対姿勢を計算する。測位装置12はさらに、絶対位置及び絶対姿勢に基づいて相対位置及び相対姿勢を補正する。
本明細書において、車両1の「姿勢」は、例えば、所定の座標系(後述する「世界座標系」又は「マーカー座標系」)の座標軸に対する車両1の進行方向の角度を示す。
通信装置13は、Wi-Fi又はBluetoothなどのモジュール及びその制御プログラムを備え、サーバ装置2と無線で通信する。通信装置13は、測位装置12によって計算された車両1の位置及び姿勢をサーバ装置2に送信する。
表示装置14は、車両1の位置をマップの上に表示してもよい。また、表示装置14は、車両1の動作に関する警報などを表示してもよい。
駆動機構15は、車両1のエンジン又はモータ、操舵装置、制動装置、及びそれらの制御装置などを含む。駆動機構15は、例えば、コンソール1cを介してユーザによって制御される。
[サーバ装置2の構成]
図2のサーバ装置2は、処理装置21、通信装置22、入力装置23、記憶装置24、及び表示装置25を備える。処理装置21は、例えば、プロセッサ及びメモリなどを含む汎用のコンピュータである。通信装置22は、車両1の通信装置13と通信可能に接続される。入力装置23は、キーボード及びポインティングデバイスなどを含む。記憶装置24は、車両1から受信した車両1の位置及び姿勢を記録する。表示装置25は、車両1から受信した車両1の位置及び姿勢を表示する。処理装置21は、通信装置22を介して各車両1からそれらの位置を取得し、各車両1の位置を記憶装置24に記録し、また、各車両1の位置を表示装置25に表示する。
表示装置25は、車両1の測位装置12によって計算された車両1の位置及び姿勢を表示する。処理装置21は、車両1の移動範囲(倉庫又は工場など)のマップを予め取得し、測位装置12によって計算された車両1の位置及び姿勢をこのマップ上に重畳して表示装置25に表示してもよい。それに代わって、処理装置21は、車両1の移動経路に基づいて処理装置21自体によりマップを生成し、このマップを表示装置25に表示してもよい。
[測位装置12の構成]
図3は、図2の測位装置12の構成を示すブロック図である。測位装置12は、画像処理器31、相対位置計算器32、画像認識器33、絶対位置計算器34、記憶装置35、及び補正器36を備える。
記憶装置35は、予め決められた位置に配置されて視覚的に識別可能な複数のマーカー4の識別子、位置、及び姿勢の情報と、車両1のための通路を含むマップ(例えば、図4を参照して説明する倉庫100のマップ)の情報とを格納する。マーカー4の位置は、所定の基準位置に対する相対位置として表されてもよく、及び/又は、マップに関連付けて表されてもよい。
図4は、図1の車両1が移動する通路101を含む倉庫100のマップである。倉庫100は、複数の通路101及び複数の棚102などの構造物を含む。倉庫100における予め決められた複数の位置に、複数のマーカー4が予め配置される。図1の車両1は、通路101を移動して、ある棚102から他の棚102に荷物3を搬送する。車両1及び各マーカー4の位置は、倉庫100の全体に対して決められた世界座標系(Xw,Yw,Zw)によって表される。
図5は、図4のマーカー4の例を示す図である。図5の例では、マーカー4は正方形の平板として形成される。マーカー4は、その1つの面において、マーカー4自体の識別子を符号化した視覚的に識別可能なパターンを有する。図5の例では、マーカー4は、縦横に7×7個の白又は黒の正方形のセルからなるパターンを有する。マーカー4のパターンはさらに、例えば拡張現実の分野で使用されるマーカー(「ARマーカー」ともいう)のように、マーカー4を撮影した画像からマーカー4自体の姿勢を検出可能であるように形成される。各マーカー4は、その任意の点(例えば、中心、又は1つの頂点)を原点とするマーカー座標系(Xm,Ym,Zm)を有する。図5の下段及び他の図面では、Xm-Ym面に沿った面の中央における矢印によってマーカー4の正面(Zm軸の正の向き)を示す。
図6は、図3の記憶装置35に格納されたマーカー情報の例を示すテーブルである。図6の例では、図4に示す2つのマーカー4の情報を示す。各マーカー4は、識別子001、002を有する。この識別子は、マーカー4のパターンに符号化されている。また、各マーカー4は、世界座標系(Xw,Yw,Zw)において所定の座標を有する。また、各マーカー4は、その正面(Zm軸の正の向き)がXw-Yw面内においてXw軸を基準として角度θ(すなわち方位角)を有するような姿勢で配置される。各マーカー4の姿勢は、方位角及び仰角によって表されてもよい。また、各マーカー4は、30cm×30cmのサイズを有する。
記憶装置35は、すべてのマーカー4について、例えば、図6に示すような項目を含むマーカー情報を格納する。また、記憶装置35は、すべての通路101について、その向き、寸法、及び配置を含むマップ情報を格納する。
図7は、図1の撮影装置11によって撮影された画像40の例を示す図である。画像40は複数の特徴点41を含む。特徴点41は、輝度値あるいは色が周囲の画素と区別でき、その位置を正確に決定することができる点である。特徴点41は、例えば、車両1が移動する通路101又は棚102などの構造物の頂点又はエッジ、床、壁、又は天井の模様から検出される。また、車両1がマーカー4の近傍を通過するとき、画像40はマーカー4を含む。画像40における特徴点41及びマーカー4の位置は、例えば、画像40の任意の点(例えば、左上のコーナー)を原点とする画像座標系(Xi,Yi)によって表される。
再び図3を参照すると、画像処理器31は、所定時間だけ離れた複数の時刻において撮影装置11によってそれぞれ撮影された複数の画像から、対応する特徴点の座標を抽出する。相対位置計算器32は、時間的に隣接した2つの画像における特徴点の移動量に基づいて、車両1の移動量を計算する。これにより、相対位置計算器32は、複数の画像の特徴点の座標に基づいて、所定の基準位置及び基準姿勢(例えば、車両1が移動を開始したときの位置及び姿勢)に対する車両1の相対位置及び相対姿勢を計算する。相対位置計算器32は、例えば、Visual-SLAM又はVisual-Odometryなど、公知の画像処理及び測位の技術を用いて、車両1の相対位置及び相対姿勢を計算してもよい。基準位置及び基準姿勢は、記憶装置35に格納されたマップの情報に関連付けられる。また、相対位置計算器32は、相対位置及び相対姿勢に、それらの計算に関連付けられた画像(時間的に隣接した2つの画像のうちの後者)のタイムスタンプを付与する。
相対位置計算器32は、計算した車両1の位置を、例えば、直交座標(XYZ座標)により表してもよい。相対位置計算器32は、計算した車両1の位置及び時刻に基づいて、車両1の速度及び/又は加速度を計算してもよい。相対位置計算器32は、計算した車両1の姿勢を、ロール(左右の傾き)、ピッチ(前後の傾き)、及びヨー(床面に垂直な軸(すなわち、図4のZw軸)の周りの回転)により表してもよい。これにより、地面に平行な水平面内における車両1の向きだけでなく、車両1の車体の傾斜を表したり、車両1の高さ方向の移動を表したりすることができる。
本明細書では、画像処理器31及び相対位置計算器32を合わせて、「第1の計算器」ともいう。また、本明細書では、相対位置及び相対姿勢を「第1の位置」及び「第1の姿勢」ともいう。
画像認識器33は、撮影装置11によって撮影された画像から、予め決められた位置に配置されて視覚的に識別可能な複数のマーカー4のうちの1つを抽出する。絶対位置計算器34は、抽出された1つのマーカー4の位置及び姿勢に基づいて、記憶装置35に格納されたマーカー4の情報及びマップの情報を参照することにより、マップ(すなわち世界座標系)における車両1の位置及び姿勢を示す車両1の絶対位置及び絶対姿勢を計算する。また、絶対位置計算器34は、絶対位置及び絶対姿勢に、それらの計算に関連付けられた画像のタイムスタンプを付与する。
本明細書では、画像認識器33及び絶対位置計算器34を合わせて、「第2の計算器」ともいう。また、本明細書では、絶対位置及び絶対姿勢を「第2の位置」及び「第2の姿勢」ともいう。
補正器36は、絶対位置及び絶対姿勢に基づいて相対位置及び相対姿勢を補正し、車両1の補正された位置及び補正された姿勢を生成する。補正器36は、相対位置及び相対姿勢のタイムスタンプと、絶対位置及び絶対姿勢のタイムスタンプとに基づいて、絶対位置及び絶対姿勢を相対位置及び相対姿勢と同期させる。補正器36は、例えば、予め決められた閾値より小さい時間差を有し、最も近接したタイムスタンプを有する相対位置及び相対姿勢と絶対位置及び絶対姿勢とを、同じ画像から計算されたものとみなしてもよい。
測位装置12の各構成要素31~36のうちの少なくとも一部が一体化されてもよい。例えば、画像処理器31及び画像認識器33を一体化してもよい。また、測位装置12の各構成要素31~36は、専用回路として実装されてもよく、汎用のプロセッサによって実行されるプログラムとして実装されてもよい。
[第1の実施形態の動作]
補正器36は、前述のように、Visual-SLAMなどを用いて特徴点41に基づいて計算された相対位置及び相対姿勢を、マーカー4に基づいて計算された絶対位置及び絶対姿勢に基づいて補正する。この補正処理は、車両1の絶対位置及び絶対姿勢が正しいことを前提とし、従って、マーカー4を撮影した画像からマーカー4の姿勢が正しく認識されていることを前提としている。しかしながら、マーカー4ではないオブジェクトがマーカー4として誤検出されることがある。また、マーカー4の姿勢を正しく認識するためには、マーカー4を適切な角度及び適切な距離から撮影する必要がある。マーカー4を撮影した画像から認識されたマーカー4自体の位置及び姿勢に誤差があると、車両1の絶対位置及び絶対姿勢にも誤差が生じ、測位装置12によって計算される車両1の位置及び/又は姿勢の精度が低下するおそれがある。
このため、第1の実施形態に係る測位装置12では、絶対位置計算器34は、マーカー4を適切な角度及び適切な距離から撮影しているか否か、すなわち、認識されたマーカー4を信頼できるか否かを判断し、マーカー4を信頼できるときのみ、マーカー4の位置及び姿勢に基づいて計算される車両1の絶対位置及び絶対姿勢を補正器36に送る。その結果、補正器36は、マーカー4を信頼できるときのみ、絶対位置及び絶対姿勢に基づいて車両1の位置及び姿勢を補正する。これにより、正しく認識されたマーカー4の位置及び姿勢に基づいて、車両1の位置及び姿勢を正しく補正し、従って、車両1の位置及び姿勢を高精度に測定することができる。
以下、測位装置12の動作について詳細に説明する。
[測位処理の全体]
図8は、図2の測位装置12によって実行される測位処理を示すフローチャートである。
ステップS1において、測位装置12は、撮影装置11によって撮影された画像を取得する。ステップS2において、画像処理器31及び相対位置計算器32は、相対位置計算処理を実行し、車両1の相対位置及び相対姿勢を計算する。ステップS3において、画像認識器33及び絶対位置計算器34は、絶対位置計算処理を実行し、車両1の絶対位置及び絶対姿勢を計算する。ステップS2及びS3は、図8に示すように並列に実行されてもよく、逐次に実行されてもよい。ステップS4において、補正器36は、補正処理を実行し、絶対位置及び絶対姿勢に基づいて相対位置及び相対姿勢を補正し、車両1の補正された位置及び補正された姿勢を生成する。ステップS5において、補正器36は、車両1の補正された位置及び補正された姿勢を、通信装置13及び表示装置14に出力する。
[相対位置計算処理]
図9は、図8のステップS2(相対位置計算処理)のサブルーチンを示すフローチャートである。
ステップS11において、画像処理器31は、所定時間だけ離れた第1及び第2の時刻にそれぞれ撮影された(例えば、時間的に隣接したフレームの)第1及び第2の画像を取得する。
ステップS12において、画像処理器31は、第1の画像から特徴点を検出する。画像から特徴点を検出するために、例えば、FAST(Features from Accelerated Segment Test)のような画像処理技術を使用してもよい。
ステップS13において、画像処理器31は、第2の画像から、第1の画像の特徴点に対応する特徴点を検出する。画像間で対応する特徴点を検出するために、例えば、KLT(Kanade-Lucas-Tomasi)トラッカーのような公知の画像処理技術を使用してもよい。
図10は、図3の画像処理器31によって抽出される特徴点を示す図である。図10(a)は時刻nにおける画像40(n)から抽出される特徴点F1,F2を示す。図10(b)は時刻n’における画像40(n’)から抽出される特徴点F1’,F2’を示す。図10(a)の画像40(n)の画像座標系において、特徴点F1は座標(xi1,yi1)を有し、特徴点F2は座標(xi2,yi2)を有する。図10(b)の画像40(n’)の画像座標系において、特徴点F1’は座標(xi1’,yi1’)を有し、特徴点F2’は座標(xi2’,yi2’)を有する。図10(b)の特徴点F1’,F2’は、図10(a)の特徴点F1,F2にそれぞれ対応する。
図9のステップS14において、画像処理器31は、第1及び第2の画像における対応する特徴点の座標の組を取得する。画像処理器31は、例えば、特徴点F1,F1’の座標の組(xi1,yi1,xi1’,yi1’)を取得し、特徴点F2,F2’の座標の組(xi2,yi2,xi2’,yi2’)を取得する。
ステップS15において、相対位置計算器32は、ステップS14において取得された特徴点の座標に基づいて、例えば5点アルゴリズムを用いて、3×3個の要素からなる基礎行列Eを計算する。
ステップS16において、相対位置計算器32は、基礎行列Eに対して特異値分解を行うことにより、第1及び第2の画像を撮影した時刻の間における車両1の移動を表す回転行列R及び並進ベクトルtを計算する。回転行列Rは、第1及び第2の画像を撮影した時刻の間における車両1の姿勢の変化を示す。並進ベクトルtは、第1及び第2の画像を撮影した時刻の間における車両1の位置の変化を示す。
回転行列R及び並進ベクトルtの計算は、例えば、以下のように定式化される。
基礎行列Eは、特異値分解を行うことにより、E=UΣVとして表される。ここで、Σは、3×3個の要素からなる対角行列Σであり、U,Vは、3×3個の要素からなる直交行列である。
回転行列Rは、3×3個の要素からなる次式の行列Wを用いて、R=UW-1により計算される。
Figure 0007482453000001
また、並進ベクトルtを計算するために、3×3個の要素からなる行列T=VWΣVが計算される。行列Tは、E=TRを満たし、次式で表される。
Figure 0007482453000002
並進ベクトルtは、行列Tの成分により、t=(t,t,tとして表される。
ステップS17において、相対位置計算器32は、車両1の相対位置及び相対姿勢を計算して出力する。直前の時刻n-1において車両1が相対位置t(n-1)及び相対姿勢R(n-1)を有するとき、現在の時刻nにおいて、車両1の相対位置t(n)は、ステップS16において計算された並進ベクトルtを用いて、t(n)=t(n-1)+tR(n-1)により表される。また、現在の時刻nにおいて、車両1の相対姿勢R(n)は、ステップS16において計算された回転行列Rを用いて、R(n)=RR(n-1)で表される。このように、相対位置計算器32は、複数の並進ベクトルを累積的に加算し、複数の回転行列を累積的に乗算することにより、所定の基準位置及び基準姿勢に対する車両1の相対位置及び相対姿勢を計算する。
[絶対位置計算処理]
図11は、図8のステップS3(絶対位置計算処理)のサブルーチンを示すフローチャートである。
ステップS21において、画像認識器33は、画像からマーカー4を検出する。ここで、画像認識器33は、画像座標系において四角形のマーカー4の4つの頂点(コーナー)の座標を検出し、また、マーカー4のパターンを復号してマーカー4の識別子を取得する。なお、画像認識器33は、マーカー4の4つの頂点に代えて、予め決められたいくつかの点の座標を検出してもよい。
図12は、マーカー座標系におけるマーカー4の頂点の座標を示す図である。マーカー座標系(Xm,Ym,Zm)において、マーカー4の4つの頂点は、座標(xm0,ym0,zm0)、(xm1,ym1,zm1)、(xm2,ym2,zm2)、及び(xm3,ym3,zm3)をそれぞれ有する。マーカー4の寸法は既知であるので、マーカー座標系におけるマーカー4の4つの頂点の座標もまた既知である。例えば、図12のマーカー4の左上の頂点がマーカー座標系(Xm,Ym,Zm)の原点であり、かつ、マーカー4が30cm×30cmのサイズを有する場合、マーカー4の頂点は、例えば、座標(xm0,ym0,zm0)=(0,0,0)、(xm1,ym1,zm1)=(0.3,0,0)、(xm2,ym2,zm2)=(0,0.3,0)、及び(xm3,ym3,zm3)=(0.3,0.3,0)を有する。
図13は、図1の撮影装置11によって撮影された画像40におけるマーカー4の頂点の座標を示す図である。画像座標系(Xi,Yi)において、マーカー4の4つの頂点は、座標(xi0,yi0)、(xi1,yi1)、(xi2,yi2)、及び(xi3,yi3)をそれぞれ有する。
図11のステップS22において、絶対位置計算器34は、ステップS21において検出されたマーカー4の座標に基づいて、撮影装置11を原点とする3次元座標系(カメラ座標系)におけるマーカー4の位置及び姿勢(すなわち、撮影装置11から見たマーカー4の位置及び姿勢)を計算する。例えば、絶対位置計算器34は、2次元の画像座標系におけるマーカー4の4つの頂点の座標と、3次元のマーカー座標系におけるマーカー4の4つの頂点の座標とに基づいて、PnP(perspective n point)問題を解くことにより、撮影装置11から見たマーカー4の位置及び姿勢を計算する。
ステップS23において、絶対位置計算器34は、マーカー座標系における撮影装置11の位置及び姿勢(すなわち、マーカー4から見た撮影装置11の位置及び姿勢)を計算する。ここで、撮影装置11から見たマーカー4の位置を並進ベクトルtにより示し、撮影装置11から見たマーカー4の姿勢を回転行列Rにより示す。この場合、マーカー4から見た撮影装置11の姿勢は、R-1により表され、マーカー4から見た撮影装置11の位置は、-R-1tにより表される。
ステップS24において、絶対位置計算器34は、マーカー評価処理(図17~図29を参照して後述する)を実行し、マーカー4を適切な角度及び適切な距離から撮影しているか否か、すなわち、認識されたマーカー4を信頼できるか否かを判断する。認識されたマーカー4を信頼できると判断したとき、ステップS25からステップS26に進み、そうでないとき、図8のステップS4に進む。
ステップS26において、絶対位置計算器34は、ステップS21において検出されたマーカー4の識別子に基づいて、記憶装置35から、世界座標系におけるマーカー4の位置及び姿勢(すなわち、マーカー4の絶対位置及び絶対姿勢)を読み出す。
ステップS27において、絶対位置計算器34は、ステップS23において計算されたマーカー座標系における撮影装置11の位置及び姿勢と、ステップS26において読み出された世界座標系におけるマーカー4の位置及び姿勢とに基づいて、世界座標系における車両1の位置及び姿勢(すなわち、車両1の絶対位置及び絶対姿勢)を計算する。マーカー座標系における撮影装置11の位置及び姿勢に対して、世界座標系におけるマーカー4の位置及び姿勢をオフセット値として加算することにより、世界座標系における車両1の位置及び姿勢が得られる。
[補正処理]
図14は、図8のステップS4(補正処理)のサブルーチンを示すフローチャートである。
図14の補正処理を行うとき、補正器36は、初期状態では、以前に計算された最新の絶対位置及び絶対姿勢を内部に保持している。
ステップS31において、補正器36は、車両1の相対位置及び絶対位置に基づいて、車両1の補正移動量を計算する。
図15は、図14のステップS31において計算される補正移動量を説明する図である。図15は、測位装置12によって計算される車両1の位置を示す。時刻n-2~n+2において、車両1は相対位置P(n-2)~P(n+2)を有する。車両1が相対位置P(n)に到来したとき、測位装置12はマーカー4を検出する。このとき、マップ上では相対位置P(n)がマーカー4から遠隔していても、実際には、車両1はマーカー4の近傍に位置していると考えられる。従って、測位装置12は、相対位置P(n)とマーカー4の位置との差を補正移動量τとして計算する。測位装置12は、相対位置P(n)に補正移動量τを加算して、補正された位置P’(n)を得る。その後も同様に、測位装置12は、相対位置P(n+1),P(n+2),…に補正移動量τを加算して、補正された位置P’(n+1),P’(n+2),…を得る。
図14のステップS32において、補正器36は、車両1の補正移動量を車両1の相対位置に加算する。
ステップS33において、補正器36は、車両1の相対姿勢及び絶対姿勢に基づいて、車両1の補正回転量を計算する。
図16は、図14のステップS33において計算される補正回転量を説明する図である。図16は、測位装置12によって計算された車両1の位置P,P’及び姿勢A,A’を示す。時刻n-2~n+2において、車両1は相対位置P(n-2)~P(n+2)及び相対姿勢A(n-2)~A(n+2)を有する。図16において、太矢印は車両1の姿勢を示す。車両1が相対位置P(n)に到来したとき、測位装置12はマーカー4を検出し、車両1の絶対姿勢を計算する。測位装置12は、相対位置P(n)を回転の中心として、相対姿勢A(n)と絶対姿勢との差を補正回転量ρとして計算する。測位装置12は、相対姿勢A(n)に補正回転量ρを加算して、補正された姿勢A’(n)を得る。その後も同様に、測位装置12は、相対姿勢A(n+1),A(n+2),…に補正回転量ρを加算して、補正された姿勢A’(n+1),A’(n+2),…を得る。
ステップS33において、補正器36は、予め決められた時間長にわたって計算された(又は、予め決められた個数の連続した画像に対応する)複数の相対姿勢の平均値と、絶対姿勢との差を、車両1の補正回転量として計算してもよい。車両1の相対姿勢の瞬時値だけでは、車両1の実際の進行方向(例えば、車両1が通路101に沿って移動しているのか否か)を判断することができない。また、車両1の相対姿勢は誤差を含む可能性がある。従って、複数の相対姿勢の平均値を用いることにより、車両1の実際の進行方向を正確に判断することができる。
図14のステップS34において、補正器36は、車両1の補正回転量を車両1の相対姿勢に加算する。
[マーカー評価処理]
図17は、図11のステップS24(マーカー評価処理)のサブルーチンを示すフローチャートである。
ステップS41において、絶対位置計算器34は、撮影装置11によって連続的に撮影された画像であって、同一の識別子を有するマーカー4がそれぞれ抽出された画像の個数をカウントする。さらに、ステップS41において、絶対位置計算器34は、撮影装置11によって連続的に撮影された予め決められた個数の画像からそれぞれ抽出された予め決められた個数のマーカー4が同一の識別子を有するか否かを判断し、YESのときはステップS42に進み、NOのときはステップS47に進む。
図18は、図1の撮影装置11によって撮影された画像40の例を示す図である。倉庫又は工場のような複雑な背景を含む環境下でマーカー4を撮影する場合、何らかのオブジェクト5を、マーカーとして、すなわち、マーカーの識別子(例えば、ID:668)を有する視覚的に識別可能な領域として誤認識する可能性がある。特に、マーカー4のパターンがシンプルである場合、他のオブジェクト5をマーカーとして誤認識しやすくなる。
図19は、図3の画像認識器33によって検出されたマーカー4と、マーカー4であると誤検出されたオブジェクトとを含むテーブルである。図19のテーブルの各行は、撮影装置11によって撮影された各画像から抽出された、マーカー4の候補(マーカー4又は誤検出されたオブジェクト)を示す。1つの画像から1つ又は複数のマーカー4の候補が検出されることがあり、また、ある画像からマーカー4の候補が検出されないこともある。図19のテーブルは、各マーカー4の候補について、識別子(ID)(1列目)、当該マーカー4の候補を含む画像を撮影した時刻(2列目)、位置(3~5列目)、及び角度(6列目)を示す。画像認識器33があるマーカー4を検出しているとき、このマーカー4に近接したオブジェクト5を一時的にマーカーとして誤認識する可能性がある。しかしながら、ある画像においてオブジェクト5がマーカー4として誤検出しても、連続した複数の画像にわたって同様にオブジェクト5をマーカー4として誤検出する可能性は非常に低いと考えられる。従って、ある画像において、ある識別子(例えば、ID:668)を有するオブジェクト5を検出しても、それが連続した複数の画像で検出されなければ、オブジェクト5はマーカー4ではないと判断できる。一方、撮影装置11によって連続的に撮影された複数の画像から同一の識別子(例えば、ID:010)のマーカー4が検出された場合、マーカー4を検出していると判断することができる。
図17のステップS41の閾値(予め決められた個数)は、例えば「3」に設定されるが、他の任意の値に設定されてもよい。
図17のステップS42において、絶対位置計算器34は、撮影装置11によって連続的に撮影された予め決められた個数の画像からそれぞれ抽出された同一の識別子を有する予め決められた個数のマーカー4をそれぞれ原点とする予め決められた個数のマーカー座標系において、撮影装置11(すなわち車両1)の位置及び姿勢を計算する。さらに、ステップS42において、絶対位置計算器34は、予め決められた個数(閾値)の画像にわたって、マーカー座標系における撮影装置11(すなわち車両1)の座標が連続して同符号を有するか否かを判断し、YESのときはステップS43に進み、NOのときはステップS47に進む。
図20は、図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適したマーカー4を含む画像40の例を示す図である。図21は、図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適さないマーカー4を含む画像40の例を示す図である。画像40において、例えば矩形のマーカー4の対辺が互いに異なる長さを有するとき、撮影装置11がマーカー4をどこから撮影しているのか、すなわち、マーカー座標系における撮影装置11の位置を明確に決定することができる。例えば、図20に示すように、マーカー4の右辺が左辺よりも長いとき、マーカー4の右側からマーカー4を撮影していると判断することができる。一方、画像40において、例えば矩形のマーカー4の対辺が互いに同じ長さを有するとき、マーカー座標系における撮影装置11の位置を決定することは困難である。例えば、図21に示すように、マーカー4の右辺及び左辺の長さが同じであるとき、マーカー4の右側からマーカー4を撮影しているのか、マーカー4の左側からマーカー4を撮影しているのか、判断することができない。
図22は、マーカー座標系における撮影装置11の位置の反転を説明する図である。図23の例では、マーカー4の法線に対して右側に位置した撮影装置11aのXm座標は正であり、マーカー4の法線に対して左側に位置した撮影装置11bのXm座標は負である。
図23は、図3の位置計算器34によって計算されたマーカー座標系における撮影装置11の位置の変化を示すテーブルである。図23のテーブルの各行は、撮影装置11によって撮影された各画像に対応し、各1つの画像に含まれる1つのマーカー4の識別子と、このマーカー4を原点とするマーカー座標系における撮影装置11の位置及び姿勢とを示す。正方形のマーカー4の対辺が互いに同じ長さを有し、マーカー座標系における撮影装置11の位置を決定することが困難である場合、マーカー座標系における撮影装置11の座標の符号が変動しやすくなる。従って、マーカー座標系における撮影装置11の座標の符号が頻繁に変化するとき、マーカー4を含む画像40は、車両1の絶対位置及び絶対姿勢の計算に適さないと判断することができる。一方、予め決められた個数の画像にわたって、マーカー座標系における撮影装置11の座標が連続して同符号を有するとき、マーカー4を含む画像40は、車両1の絶対位置及び絶対姿勢の計算に適していると判断することができる。
図23の例では、2~4行目において、Xm座標の符号が交互に反転しているので、対応する画像は、車両1の絶対位置及び絶対姿勢の計算に適さない。一方、4~6行目では、Xm、Ym、及びZm座標が同符号を有するので、対応する画像は、車両1の絶対位置及び絶対姿勢の計算に適している。
図17のステップS42の閾値(予め決められた個数)は、例えば「3」に設定されるが、他の任意の値に設定されてもよい。
図17のステップS43において、絶対位置計算器34は、撮影装置11によって撮影された画像におけるマーカー4のサイズを計算する。さらに、ステップS43において、絶対位置計算器34は、撮影装置11によって撮影された画像におけるマーカー4のサイズが予め決められた閾値より大きいか否かを判断し、YESのときはステップS44に進み、NOのときはステップS47に進む。
図24は、図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適した幅を有するマーカー4の像の例を示す図である。図25は、図1の撮影装置11によって撮影され、車両1の絶対位置及び絶対姿勢の計算に適した幅をもたないマーカー4の像の例を示す図である。図24及び図25は、撮影装置11によって撮影された画像におけるマーカー4のサイズ(画素数)を示す。図24及び図25の例では、マーカー4のサイズは、各頂点からその対辺までの画素数によって表される。マーカー4のパターンを正しく認識するためには、撮影装置11によって撮影された画像において、マーカー4が十分なサイズ(画素数)を有する必要がある。例えば、図5に示すマーカー4は、縦横に7×7個の白又は黒の正方形のセルからなるパターンを有する。この場合、図24のマーカー4の画素数は、そのパターンの各セルを認識するために十分である。一方、図25のマーカー4の画素数は、明らかに、そのパターンの各セルを認識するためには不十分である。
図26は、図17のステップS43における閾値を変化させたときの車両1の絶対位置の誤差を示すグラフである。図26によれば、閾値を14以上に設定したとき、誤差が小さくなることがわかる。従って、撮影装置11によって撮影された画像におけるマーカー4のサイズが予め決められた閾値より小さいとき、マーカー4を含む画像40は、車両1の絶対位置及び絶対姿勢の計算に適さないと判断することができる。一方、撮影装置11によって撮影された画像におけるマーカー4のサイズが予め決められた閾値より大きいとき、マーカー4を含む画像40は、車両1の絶対位置及び絶対姿勢の計算に適していると判断することができる。
マーカー4のサイズは、各頂点からその対辺までの距離(画素数)に代えて、各辺の長さ、各辺の長さの合計、対角線の長さ、又はマーカーの面積によって表されてもよい。
図17のステップS44において、絶対位置計算器34は、1つのマーカー4を原点とするマーカー座標系における車両1の位置及び姿勢に基づいて、1つのマーカー4の面の法線に対する車両1の方向への角度を計算する。さらに、ステップS44において、絶対位置計算器34は、マーカー座標系において1つのマーカー4の面の法線に対する撮影装置11(すなわち車両1)の方向への角度が予め決められた閾値αthより大きいか否かを判断し、YESのときはステップS45に進み、NOのときはステップS47に進む。なお、撮影装置11と車両1の方向が異なる場合、絶対位置計算器34は、撮影装置11とマーカー4の面の法線の角度が閾値αthより大きいか否かを判断し、YESのときはステップS45に進み、NOのときはステップS47に進む。
図27は、マーカー座標系において、車両1の絶対位置及び絶対姿勢の計算に適したマーカー4の像を撮影可能な角度及び距離を説明する図である。ステップS42に関連して前述したように、画像40において、例えば矩形のマーカー4の対辺が互いに異なる長さを有するとき、マーカー座標系における撮影装置11の位置を明確に決定することができる。従って、撮影装置11は、マーカー4の法線方向(正面)からではなく、マーカー4の法線方向から十分に傾斜した方向から、マーカー4を撮影する。
図28は、車両1の絶対位置及び絶対姿勢の計算に適したマーカー4の像を撮影するときの角度の条件を説明する図である。図29は、図28の撮影装置11によって撮影されたマーカー4を含む画像の例を示す図である。図28において、αは、マーカー4の面の法線に対する撮影装置11の方向への角度を示す。角度αは、α=arccos(a/b)を満たす。ここで、a及びbは、図29に示すように、撮影装置11によって撮影された画像40におけるマーカー4のサイズを示す。a:b=1:1に近づくと、精度が低下する。角度αの正負は、図29の台形の向きから判定可能である。ただし、撮影装置11がマーカー4を正面から撮影するとき、また、撮影装置11からマーカー4までの距離dが増大したとき、角度αの正負の判定は不安定になる。βは、撮影装置11の光軸に対するマーカー4の方向の角度である。言い換えると、角度βは、撮影装置11によって撮影された画像40におけるマーカー4の位置を示す。撮影装置11からマーカー4までの距離dは、d=1/bを満たす。求めた結果としては、β>d>αの順に高精度になる。
図17のステップS44の閾値αthは、例えば「45度」に設定されるが、他の任意の値に設定されてもよい。また、この閾値αthは、撮影装置11からマーカー4までの距離に応じて変動してもよい。
マーカー4の面の法線に対する撮影装置11の方向への角度が90度に近づくとき、撮影装置11によって撮影された画像におけるマーカー4のサイズaが小さくなり、ステップS43の条件を満たすことが困難になる。マーカー4の面の法線に対する撮影装置11の方向への角度は、ステップS43及びS44の両方の条件を満たす必要がある。
図17のステップS45において、絶対位置計算器34は、撮影装置11によって撮影された画像に基づいて車両1からマーカー4までの距離を計算する。さらに、ステップS45において、絶対位置計算器34は、撮影装置11(すなわち車両1)からマーカー4までの距離が予め決められた閾値より小さいか否かを判断し、YESのときはステップS46に進み、NOのときはステップS47に進む。
再び図27を参照すると、撮影装置11は、マーカー4に対して距離Dthより短い位置において、マーカー4を撮影する。撮影装置11からマーカー4までの距離が大きいと、測位装置12によって計算される車両1の位置及び姿勢の精度が低下する。
図17のステップS45の閾値Dthは、マーカー4がA2サイズを有する場合、例えば「6m」に設定されるが、他の任意の値に設定されてもよい。また、この閾値Dthは、マーカー4のサイズに応じて変動してもよい。
図17のステップS46において、絶対位置計算器34は、マーカー4を信頼できると判断する。この場合、絶対位置計算器34は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を補正器36に送る。一方、ステップS47において、絶対位置計算器34は、マーカー4を信頼できないと判断する。この場合、絶対位置計算器34は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を送らない。
このように図17のマーカー評価処理を実行することにより、絶対位置計算器34は、マーカー4を適切な角度及び適切な距離から撮影しているか否か、すなわち、認識されたマーカー4を信頼できるか否かを判断する。その結果、図8のステップS4の補正処理において、補正器36は以下のように動作する。
マーカー4が予め決められた閾値に等しい個数の画像にわたって同一の識別子をもたないとき(ステップS41がNO)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を用いて位置及び姿勢を補正しない。一方、マーカー4が閾値以上の個数の画像にわたって同一の識別子を有するとき(ステップS41がYES)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
予め決められた閾値に等しい個数の画像にわたって各マーカー座標系における車両1の座標が同じ符号をもたないとき(ステップS42がNO)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を用いて位置及び姿勢を補正しない。一方、閾値以上の個数の画像にわたって各マーカー座標系における車両1の座標が同じ符号を有するとき(ステップS42がYES)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
マーカー4が予め決められた閾値以下のサイズを有するとき(ステップS43がNO)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を用いて位置及び姿勢を補正しない。一方、マーカー4が閾値より大きいサイズを有するとき(ステップS43がYES)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
1つのマーカー4の面の法線に対する車両1の方向への角度が予め決められた閾値以下であるとき(ステップS44がNO)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を用いて位置及び姿勢を補正しない。一方、1つのマーカー4の面の法線に対する車両1の方向への角度が閾値より大きいとき(ステップS44がYES)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
マーカー4が車両1から予め決められた閾値以上の距離を有するとき(ステップS45がNO)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を用いて位置及び姿勢を補正しない。一方、マーカー4が車両1から閾値より小さい距離を有するとき(ステップS45がYES)、補正器36は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
本明細書では、ステップS44の閾値を「第1の閾値」ともいう。また、本明細書では、ステップS41の閾値を「第2の閾値」ともいう。また、本明細書では、ステップS42の閾値を「第3の閾値」ともいう。また、本明細書では、ステップS43の閾値を「第4の閾値」ともいう。また、本明細書では、ステップS45の閾値を「第5の閾値」ともいう。
図30は、第1の実施形態の比較例に係る補正処理を実行することによって計算された車両1の軌跡103を示す図である。図31は、図17のマーカー評価処理を実行することによって計算された車両1の軌跡104を示す図である。図30~図31では、説明のため、各マーカー4の一辺に設けた突起によりマーカー4の正面(図5のZm軸)を示すが、実際には、このような突起はない。図30によれば、領域111、113、及び114において、マーカー座標系における撮影装置11の位置を正しく決定できなかったことに起因して、図22に示すように撮影装置11の位置がマーカー4の法線に対して反転し、計算された車両1の位置の誤差が生じている。また、図30によれば、領域112、115、及び116において、計算された車両1の位置の精度が低下している。また、領域117では、マーカー4ではないオブジェクトをマーカー4として誤検出したことにより、大幅な誤差が生じている。一方、図31によれば、測位装置12は、適切な角度及び適切な距離から撮影されたマーカー4に基づいて計算された絶対位置及び絶対姿勢のみに基づいて相対位置及び相対姿勢を補正しているので、車両1の位置及び姿勢を高精度に測定することができる。
第1の実施形態によれば、Visual-SLAMなどを用いて特徴点41に基づいて計算された相対位置及び相対姿勢を、マーカー4に基づいて計算された絶対位置及び絶対姿勢に基づいて補正することにより、車両1の位置及び姿勢を高精度に測定することができる。また、第1の実施形態によれば、認識されたマーカー4を信頼できるか否かを判断し、マーカー4を信頼できるときのみ、絶対位置及び絶対姿勢に基づいて車両1の位置及び姿勢を補正することにより、車両1の位置及び姿勢をより高精度に測定することができる。
第1の実施形態によれば、撮影装置11を用いることにより、倉庫又は工場など、GPS衛星からの電波を受信できない屋内であっても、車両1の位置を安価に測定することができる。無線信号を送信するための多数の無線送信機を設置する必要がないので、初期導入コストを低減できる。
第1の実施形態によれば、測位結果から得られる車両1の移動経路に基づいて、業務改善を行うことができる。
第1の実施形態によれば、車両1の移動距離に基づいて、保守の要否、リース契約の更改の要否、などに活用することができる。
第1の実施形態によれば、車両1の移動のヒートマップに基づいて、倉庫又は工場における通路又は棚などの配置を最適化することができる。
第1の実施形態によれば、各車両1の軌跡の違いに基づいて、各車両1が移動中に互いにすれ違う場所を可視化することができ、経路及び通路幅を見直して安全性を向上させることができる。
[第1の実施形態の変形例]
図17のステップS41~S45は、他の任意の順序で実行されてもよい。処理の順序によって結果は変わらないが、処理速度に違いが生じる。例えば、ステップS44よりも前にステップS42を実行することにより、撮影装置11がマーカー4の正面に位置する場合を効率的に除去することができる。また、ステップS41~S45のうちの一部のみが実行されてもよい。
図11のステップS24~S25は、絶対位置計算器34に代えて、補正器36によって実行されてもよい。この場合、絶対位置計算器34は、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を常に補正器36に送る。補正器36は、マーカー4を信頼できるときのみ、絶対位置及び絶対姿勢に基づいて車両1の位置及び姿勢を補正する。
上述した例では、補正器36が、相対位置及び相対姿勢を絶対位置及び絶対姿勢によって上書きせず、絶対位置及び絶対姿勢を相対位置及び相対姿勢と別個に管理する場合について説明した。それに代わって、補正器36が相対位置及び相対姿勢を絶対位置及び絶対姿勢によって上書きし、その後、この絶対位置及び絶対姿勢を新たな基準位置及び基準姿勢として、相対位置及び相対姿勢を計算してもよい。
撮影装置11は、被写体の画像を生成するとともに、撮影装置11から被写体の各点までの距離を検出するように構成されてもよい。撮影装置11は、被写体までの距離を検出するため、例えば、RGB-Dカメラなどのデプスセンサ、又はToF(Time of Flight)センサを含んでもよい。それに代わって、撮影装置11は、被写体までの距離を検出するため、所定距離だけ互いに離れた配置された2つのカメラを含むステレオカメラであってもよい。
撮影装置11が距離を検出する場合、相対位置計算器32は、公知のICP(iterative closest point)アルゴリズムなどを用いて、車両1の相対位置及び相対姿勢を計算してもよい。
図9の相対位置計算処理では、FAST及びKLTトラッカーを用いる例を説明したが、他の方法を用いてもよい。例えば、画像処理で一般的であるSIFT(Scale Invariant Feature Transform)又はORB(Oriented FAST and Rotated BRIEF)を用いた特徴点検出処理及び特徴点マッチング処理などを用いてもよい。
マーカー4が通路101の直線区間の中間に配置されている場合、絶対位置及び絶対姿勢を高精度に計算できると期待される。一方、マーカー4が通路101の交差点又は出入口の付近に配置されている場合、車両1はマーカー4の近傍を直進するとは限らず、計算された絶対位置及び絶対姿勢の誤差が大きくなる可能性がある。従って、複数のマーカー4のうちの一部は、絶対位置及び絶対姿勢を計算するために(すなわち、位置及び姿勢を補正するために)使用されない補助マーカーであってもよい。補助マーカーは、例えば、車両1の出発地、目的地、又は他のチェックポイントとなりうる何らかの構造物(倉庫100の出入口、通路101の交差点、特定の棚102、など)の近傍に配置される。補助マーカーは、車両1から撮影可能であるならば、通路101に沿って配置されなくてもよい。測位装置12は、補助マーカーを検出することにより、車両1が特定のチェックポイントに到達したことを認識することができる。この場合、記憶装置35に格納されたマーカー情報のテーブルは、各マーカー4が補助マーカーであるか否かを示す項目をさらに含む。また、この場合、マーカー情報のテーブルは、補助マーカーについては、その位置及び姿勢の情報をもたなくてもよい。また、マーカー情報のテーブルは、各マーカー4が補助マーカーであるか否かを示す項目に代えて、当該マーカー4に基づいて計算される絶対位置及び絶対姿勢の信頼度を示す項目を含んでもよい。
車両1及びサーバ装置2は、通信装置13、22に代えて、SDカードなど、着脱可能な記憶媒体を用いてもよい。車両において計算した当該車両の位置及び姿勢を記憶媒体に書き込み、サーバ装置2において、この記憶媒体から車両の位置及び姿勢を読み出してもよい。
車両1は、例えば無人搬送車(AGV)又はパレット搬送ロボットなど、無人の荷物運搬装置であってもよい。この場合、車両1は、サーバ装置2の制御下で駆動機構15を制御して移動する。
[第1の実施形態の効果等]
第1の実施形態によれば、測位装置12は、相対位置計算器32、記憶装置35、絶対位置計算器34、及び補正器36を備える。相対位置計算器32は、車両1に搭載された撮影装置11によって撮影された複数の画像に基づいて、所定の基準位置及び基準姿勢に対する車両1の相対位置及び相対姿勢を計算する。記憶装置35は、予め決められた位置に配置されて視覚的に識別可能な複数のマーカー4の識別子、位置、及び姿勢の情報と、車両1のための通路を含むマップの情報とを格納する。絶対位置計算器34は、撮影装置11によって撮影された画像から複数のマーカー4のうちの1つを抽出し、抽出された1つのマーカー4の位置及び姿勢に基づいて、マップにおける車両1の位置及び姿勢を示す車両1の絶対位置及び絶対姿勢を計算する。また、絶対位置計算器34は、1つのマーカー4を原点とするマーカー座標系における車両1の位置及び姿勢に基づいて、1つのマーカー4の面の法線に対する車両1の方向への角度を計算する。補正器36は、絶対位置及び絶対姿勢に基づいて相対位置及び相対姿勢を補正し、移動体の補正された位置及び補正された姿勢を生成する。補正器36は、角度が第1の閾値以下であるマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、角度が第1の閾値より大きいマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、マーカー4の面の法線に対する車両1の方向への角度が第1の閾値より大きいときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、絶対位置計算器34は、撮影装置11によって連続的に撮影された画像であって、同一の識別子を有するマーカー4がそれぞれ抽出された画像の個数をカウントしてもよい。この場合、補正器36は、マーカー4が第2の閾値に等しい個数の画像にわたって同一の識別子をもたないとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、マーカー4が第2の閾値以上の個数の画像にわたって同一の識別子を有するとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、マーカー4が第2の閾値以上の個数の画像にわたって同一の識別子を有するときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、絶対位置計算器34は、撮影装置11によって連続的に撮影された複数の画像からそれぞれ抽出された同一の識別子を有する複数のマーカー4をそれぞれ原点とする各マーカー座標系において、車両1の位置及び姿勢を計算してもよい。この場合、補正器36は、第3の閾値に等しい個数の画像にわたって各マーカー座標系における車両1の座標が同じ符号をもたないとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、第3の閾値以上の個数の画像にわたって各マーカー座標系における車両1の座標が同じ符号を有するとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、第3の閾値以上の個数の画像にわたって各マーカー座標系における車両1の座標が同じ符号を有するときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、絶対位置計算器34は、撮影装置11によって撮影された画像におけるマーカー4のサイズを計算してもよい。この場合、補正器36は、第4の閾値以下のサイズを有するマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、第4の閾値より大きいサイズを有するマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、マーカー4が第4の閾値より大きいサイズを有するときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、絶対位置計算器34は、撮影装置11によって撮影された画像に基づいて車両1からマーカー4までの距離を計算してもよい。この場合、補正器36は、車両1から第5の閾値以上の距離を有するマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、車両1から第5の閾値より小さい距離を有するマーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、マーカー4が車両1から第5の閾値より小さい距離を有するときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、測位装置12は、相対位置計算器32、記憶装置35、絶対位置計算器34、及び補正器36を備える。相対位置計算器32は、車両1に搭載された撮影装置11によって撮影された複数の画像に基づいて、所定の基準位置及び基準姿勢に対する車両1の相対位置及び相対姿勢を計算する。記憶装置35は、予め決められた位置に配置されて視覚的に識別可能な複数のマーカー4の識別子、位置、及び姿勢の情報と、車両1のための通路を含むマップの情報とを格納する。絶対位置計算器34は、撮影装置11によって撮影された画像から複数のマーカー4のうちの1つを抽出し、抽出された1つのマーカー4の位置及び姿勢に基づいて、マップにおける車両1の位置及び姿勢を示す車両1の絶対位置及び絶対姿勢を計算する。また、絶対位置計算器34は、撮影装置11によって連続的に撮影された画像であって、同一の識別子を有するマーカー4がそれぞれ抽出された画像の個数をカウントする。補正器36は、絶対位置及び絶対姿勢に基づいて相対位置及び相対姿勢を補正し、移動体の補正された位置及び補正された姿勢を生成する。補正器36は、マーカー4が第2の閾値に等しい個数の画像にわたって同一の識別子をもたないとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用せず、マーカー4が第2の閾値以上の個数の画像にわたって同一の識別子を有するとき、マーカー4の位置及び姿勢に基づいて計算される絶対位置及び絶対姿勢を使用して、補正された位置及び補正された姿勢を生成する。
これにより、補正器36は、マーカー4が第2の閾値以上の個数の画像にわたって同一の識別子を有するときのみ、マーカー4の位置及び姿勢に基づいて車両1の位置及び姿勢を補正する。
第1の実施形態によれば、撮影装置11と、測位装置12とを備えた車両1が提供されてもよい。
第1の実施形態によれば、Visual-SLAMなどを用いて特徴点41に基づいて計算された相対位置及び相対姿勢を、マーカー4に基づいて計算された絶対位置及び絶対姿勢に基づいて補正することにより、車両1の位置及び姿勢を高精度に測定することができる。また、第1の実施形態によれば、認識されたマーカー4を信頼できるか否かを判断し、マーカー4を信頼できるときのみ、絶対位置及び絶対姿勢に基づいて車両の位置及び姿勢を補正することにより、車両1の位置及び姿勢をより高精度に測定することができる。
[第2の実施形態]
図32を参照して、第2の実施形態に係る測位装置及びそれを備えた移動体について説明する。
[第2の実施形態の構成]
図32は、第2の実施形態に係る測位装置12Bの構成を示すブロック図である。第1の実施形態に係る車両1は、図3の測位装置12に代えて、測位装置12Bを備えてもよい。測位装置12Bは、図3の測位装置12の各構成要素に加えて、画像認識器37及びデータ合成器38を備える。
画像認識器37は、撮影装置11によって撮影された画像から予め決められた対象物を認識する。画像認識器37は人物(例えば、車両1の運転手、車両1の周りの人物)を認識してもよい。画像認識器37は、予め学習された特定の荷物3を認識してもよい。画像処理器31、画像認識器33、及び画像認識器37は、同一の撮影装置11から画像を取得してもよい。それに代わって、画像認識器37は、画像処理器31及び画像認識器33に供給される画像(すなわち、車両1の位置及び姿勢を測定するための画像)を撮影する撮影装置11とは異なる撮影装置を用いて、人物及び/又は荷物3を含む画像を撮影してもよい。この場合、撮影装置11は、例えば、車両1の前方の通路101を撮影するように設けられ、他の撮影装置は、例えば、車両1の運転席手又は荷台を撮影するように設けられてもよい。撮影装置11と他の撮影装置とは、予め互いに同期される。
データ合成器38は、補正器36から、車両1の補正された位置及び補正された姿勢のデータを、当該位置及び姿勢に対応する画像を撮影装置11により撮影した時刻(又は、当該位置及び姿勢を計算した時刻)のタイムスタンプとともに取得する。データ合成器38は、画像認識器37によって認識された対象物の画像認識データを、車両1の位置及び姿勢のデータに合成する。また、データ合成器38は、車両1に搭載された1つ又は複数のセンサを含むセンサ群16Bによって生成されたセンサデータを取得し、センサデータを、車両1の位置及び姿勢のデータに合成する。データ合成器38は、車両1の加速度及び角速度の少なくとも一方を含むセンサデータを取得してもよい。また、データ合成器38は、車両1によって搬送される荷物3の重さを含むセンサデータを取得してもよい。センサ群16Bの各センサは、センサデータに、当該センサデータを取得した時刻のタイムスタンプを付与する。データ合成器38は、車両1の位置及び姿勢のデータのタイムスタンプと、画像認識データのタイムスタンプと、センサデータのタイムスタンプとに基づいて、これらのデータを互いに同期させて合成する。
データ合成器38は、これらのデータのタイムスタンプが互いに不一致しているとき、画像認識データ又はセンサデータを、それに最も近接したタイムスタンプを有する車両1の位置及び姿勢のデータに関連付けてもよい。また、データ合成器38は、これらのデータのタイムスタンプが互いに不一致しているとき、線形補間又は内分などを用いて車両1の位置及び姿勢のデータを補間し、画像認識データ又はセンサデータを、それに対応するタイムスタンプを有する補間された車両1の位置及び姿勢のデータに関連付けてもよい。
データ合成器38を備えたことにより、車両1の作業に関連するさまざまなデータを、車両1の位置及び軌跡に関連付けて記録することができる。例えば、画像認識された人物を記録することにより、車両1の作業に関連する人物を追跡することができる。画像認識された荷物3を記録することにより、車両1によって搬送される荷物3を追跡することができる。車両1の加速度及び角速度を記録することにより、倉庫の路面の凹凸などを検出することができる。荷物3の重さを記録することにより、車両1の仕事量をモニタリングすることができる。
[第2の実施形態の効果等]
第2の実施形態によれば、車両1に搭載された1つ又は複数のセンサによって生成されたセンサデータを取得し、センサデータを、補正された位置及び補正された姿勢のデータに合成するデータ合成器38をさらに備えてもよい。
第2の実施形態によれば、データ合成器38は、車両1の加速度及び角速度の少なくとも一方を含むセンサデータを取得してもよい。
第2の実施形態によれば、データ合成器38は、車両1によって搬送される荷物3の重さを含むセンサデータを取得してもよい。
第2の実施形態によれば、測位装置12Bは、撮影装置11によって撮影された画像から予め決められた対象物を認識する画像認識器37をさらに備えてもよい。この場合、データ合成器38は、画像認識器37によって認識された対象物の情報を、補正された位置及び補正された姿勢のデータに合成する。
第2の実施形態によれば、画像認識器37は人物を認識してもよい。
第2の実施形態によれば、画像認識器37は、予め学習された特定の荷物3を認識してもよい。
第2の実施形態によれば、車両1の作業に関連するさまざまなデータを、車両1の位置及び軌跡に関連付けて記録することができる。
第2の実施形態によれば、車両1は、車両1の位置及び姿勢を測定するための画像を撮影する撮影装置11と、他の対象物を撮影する他の撮影装置とを備えてもよい。この場合、データ合成器38は、撮影装置11によって撮影された画像に基づいて生成された車両1の位置及び姿勢のデータと、他の撮影装置によって撮影された画像に基づいて生成された画像認識データとを、互いに関連付けることができる。車両1の位置及び姿勢のデータと、車両1の移動中に撮影された他の対象物の画像認識データとが関連付けられていると、マップにおける車両1の位置及び軌跡に基づいて業務分析を行う際に非常に有用である。例えば、ある人物の不審な行動を目視等で検出したとき、その人物の位置をマップにおいて参照することで、その位置の近傍において、及び/又は、その人物に関連して、過去に撮影された画像又は映像を検索して読み出すことができる。
[他の実施形態]
なお、第1~第3の実施形態において、測位装置は、フォークリフト又はトラックなどの四輪の車両に設けられてもよく、1~3輪、5輪以上の車両に設けられてもよい。また、第1~第3の実施形態において、測位装置は、車輪の個数及び/又は車輪の有無と関係なく、飛行機、ヘリコプタ、ドローン、ホバークラフトなど、車輪のない移動体に設けられてもよい。本実施形態に係る測位装置は、車輪の回転数から移動体の位置を推定するのでなく、撮影装置によって撮影された画像に基づいて移動体の位置を推定することができる。
本開示の各態様に係る測位装置によれば、倉庫又は工場などにおいて移動体の位置を測定することができる。これにより、移動体の軌跡(動線)を追跡すること、移動体をルーティングすること、倉庫又は工場における荷物などの配置を最適化すること、稼働率をモニタリングすること、作業効率を改善すること、などが可能である。
1…車両、
1a…荷台、
1b…昇降機構、
1c…コンソール、
2…サーバ装置、
3…荷物、
4…マーカー、
11…撮影装置、
12,12B…測位装置、
13…通信装置、
14…表示装置、
15…駆動機構、
16B…センサ群、
21…処理装置、
22…通信装置、
23…入力装置、
24…記憶装置、
25…表示装置、
31…画像処理器(特徴点)、
32…相対位置計算器、
33…画像認識器(マーカー)、
34…絶対位置計算器、
35…記憶装置、
36,36A…補正器、
37…画像認識器(人物、荷物)、
38…データ合成器、
40…画像、
41…特徴点、
100…倉庫、
101…通路、
102…棚、
103,104…軌跡。

Claims (17)

  1. 移動体に搭載された撮影装置によって撮影された複数の画像に基づいて、所定の基準位置及び基準姿勢に対する前記移動体の相対位置及び相対姿勢を示す前記移動体の第1の位置及び第1の姿勢を計算する第1の計算器と、
    予め決められた位置に配置されて1つの面をそれぞれ有する視覚的に識別可能な複数の正方形のマーカーの識別子、位置、及び姿勢の情報と、前記移動体のための通路を含むマップの情報とを格納する記憶装置と、
    前記撮影装置によって撮影された画像から前記複数のマーカーのうちの1つを抽出し、抽出された前記1つのマーカーの位置及び姿勢に基づいて、前記マップにおける前記移動体の位置及び姿勢を示す前記移動体の第2の位置及び第2の姿勢を計算し、前記1つのマーカーを原点とするマーカー座標系における前記移動体の位置及び姿勢に基づいて、前記1つのマーカーの面の法線に対する前記撮影装置の方向への角度を計算する第2の計算器と、
    前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記移動体の第3の位置及び第3の姿勢を生成する補正器とを備え、
    前記補正器は、前記計算された角度が第1の閾値以下である場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記計算された角度が前記第1の閾値より大きい場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    測位装置。
  2. 前記第2の計算器は、前記撮影装置によって連続的に撮影された画像であって、同一の識別子を有するマーカーがそれぞれ抽出された画像の個数をカウントし、
    前記補正器は、前記マーカーが第2の閾値に等しい個数の画像にわたって同一の識別子をもたない場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記マーカーが前記第2の閾値以上の個数の画像にわたって同一の識別子を有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項1記載の測位装置。
  3. 前記第2の計算器は、前記撮影装置によって連続的に撮影された複数の画像からそれぞれ抽出された同一の識別子を有する複数のマーカーをそれぞれ原点とする各マーカー座標系において、前記移動体の位置及び姿勢を計算し、
    前記補正器は、第3の閾値に等しい個数の画像にわたって前記各マーカー座標系における前記移動体の座標が同じ符号をもたない場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記第3の閾値以上の個数の画像にわたって前記各マーカー座標系における前記移動体の座標が同じ符号を有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項1又は2記載の測位装置。
  4. 前記第2の計算器は、前記撮影装置によって撮影された画像における前記マーカーのサイズを計算し、
    前記補正器は、前記マーカーが第4の閾値以下のサイズを有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記マーカーが前記第4の閾値より大きいサイズを有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項1~3のうちの1つに記載の測位装置。
  5. 前記第2の計算器は、前記撮影装置によって撮影された画像に基づいて前記移動体から前記マーカーまでの距離を計算し、
    前記補正器は、前記移動体から前記マーカーまでの距離が第5の閾値以上である場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記移動体から前記マーカーまでの距離が前記第5の閾値より小さい場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項1~4のうちの1つに記載の測位装置。
  6. 移動体に搭載された撮影装置によって撮影された複数の画像に基づいて、所定の基準位置及び基準姿勢に対する前記移動体の相対位置及び相対姿勢を示す前記移動体の第1の位置及び第1の姿勢を計算する第1の計算器と、
    予め決められた位置に配置されて視覚的に識別可能な複数のマーカーの識別子、位置、及び姿勢の情報と、前記移動体のための通路を含むマップの情報とを格納する記憶装置と、
    前記撮影装置によって撮影された画像から前記複数のマーカーのうちの1つを抽出し、抽出された前記1つのマーカーの位置及び姿勢に基づいて、前記マップにおける前記移動体の位置及び姿勢を示す前記移動体の第2の位置及び第2の姿勢を計算し、前記撮影装置によって連続的に撮影された画像であって、同一の識別子を有するマーカーがそれぞれ抽出された画像の個数をカウントする第2の計算器と、
    前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記移動体の第3の位置及び第3の姿勢を生成する補正器とを備え、
    前記補正器は、前記マーカーが第2の閾値に等しい個数の画像にわたって同一の識別子をもたない場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記マーカーが前記第2の閾値以上の個数の画像にわたって同一の識別子を有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    測位装置。
  7. 前記第2の計算器は、前記撮影装置によって連続的に撮影された複数の画像からそれぞれ抽出された同一の識別子を有する複数のマーカーをそれぞれ原点とする各マーカー座標系において、前記移動体の位置及び姿勢を計算し、
    前記補正器は、第3の閾値に等しい個数の画像にわたって前記各マーカー座標系における前記移動体の座標が同じ符号をもたない場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記第3の閾値以上の個数の画像にわたって前記各マーカー座標系における前記移動体の座標が同じ符号を有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項6記載の測位装置。
  8. 前記第2の計算器は、前記撮影装置によって撮影された画像における前記マーカーのサイズを計算し、
    前記補正器は、前記マーカーが第4の閾値以下のサイズを有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記マーカーが前記第4の閾値より大きいサイズを有する場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項6又は7記載の測位装置。
  9. 前記第2の計算器は、前記撮影装置によって撮影された画像に基づいて前記移動体から前記マーカーまでの距離を計算し、
    前記補正器は、前記移動体から前記マーカーまでの距離が第5の閾値以上である場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正することなく、前記第1の位置及び前記第1の姿勢を前記第3の位置及び前記第3の姿勢として生成し、前記移動体から前記マーカーまでの距離が前記第5の閾値より小さい場合、前記第2の位置及び前記第2の姿勢に基づいて前記第1の位置及び前記第1の姿勢を補正し、前記第3の位置及び前記第3の姿勢を生成する、
    請求項6~8のうちの1つに記載の測位装置。
  10. 前記移動体に搭載された1つ又は複数のセンサによって生成されたセンサデータを取得し、前記センサデータを、前記第3の位置及び前記第3の姿勢のデータに合成するデータ合成器をさらに備えた、
    請求項1~9のうちの1つに記載の測位装置。
  11. 前記データ合成器は、前記移動体の加速度及び角速度の少なくとも一方を含むセンサデータを取得する、
    請求項10記載の測位装置。
  12. 前記データ合成器は、前記移動体によって搬送される荷物の重さを含むセンサデータを取得する、
    請求項10又は11記載の測位装置。
  13. 前記測位装置は、前記撮影装置によって撮影された画像から予め決められた対象物を認識する画像認識器をさらに備え、
    前記データ合成器は、前記画像認識器によって認識された対象物の情報を、前記第3の位置及び前記第3の姿勢のデータに合成する、
    請求項10~12のうちの1つに記載の測位装置。
  14. 前記画像認識器は人物を認識する、
    請求項13記載の測位装置。
  15. 前記画像認識器は、予め学習された特定の荷物を認識する、
    請求項13記載の測位装置。
  16. 撮影装置と、
    請求項1~15のうちの1つに記載の測位装置とを備えた、
    移動体。
  17. 前記補正器は、前記第1の位置及び前記第1の姿勢と、当該第1の位置及び当該第1の姿勢が計算された画像と同じ画像から計算された前記第2の位置及び前記第2の姿勢とに基づいて、前記第3の位置及び前記第3の姿勢を生成する、
    請求項1~15のうちの1つに記載の測位装置。
JP2020562954A 2018-12-28 2019-11-26 測位装置及び移動体 Active JP7482453B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018247829 2018-12-28
JP2018247829 2018-12-28
PCT/JP2019/046185 WO2020137311A1 (ja) 2018-12-28 2019-11-26 測位装置及び移動体

Publications (2)

Publication Number Publication Date
JPWO2020137311A1 JPWO2020137311A1 (ja) 2020-07-02
JP7482453B2 true JP7482453B2 (ja) 2024-05-14

Family

ID=71127162

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020562954A Active JP7482453B2 (ja) 2018-12-28 2019-11-26 測位装置及び移動体

Country Status (4)

Country Link
US (1) US20210312661A1 (ja)
EP (1) EP3904993B1 (ja)
JP (1) JP7482453B2 (ja)
WO (1) WO2020137311A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021157136A1 (ja) * 2020-02-07 2021-08-12 パナソニックIpマネジメント株式会社 測位システム
DE102021130631A1 (de) * 2021-11-23 2023-05-25 Still Gesellschaft Mit Beschränkter Haftung Verfahren und System zur Navigation eines Flurförderzeugs

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281676A (ja) 2002-03-25 2003-10-03 Fujitsu Ltd 経路検索装置とその経路検索方法、並びに配送計画システムとその配送計画方法
US20060184013A1 (en) 2004-12-14 2006-08-17 Sky-Trax Incorporated Method and apparatus for determining position and rotational orientation of an object
JP2013235351A (ja) 2012-05-07 2013-11-21 Sharp Corp 自走式電子機器
JP2017139941A (ja) 2016-02-05 2017-08-10 株式会社東芝 充電装置および位置ずれ検出方法
EP3308911A1 (en) 2015-06-12 2018-04-18 LG Electronics Inc. Mobile robot and method of controlling same
WO2018179960A1 (ja) 2017-03-27 2018-10-04 日本電産株式会社 移動体および自己位置推定装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4976756B2 (ja) * 2006-06-23 2012-07-18 キヤノン株式会社 情報処理方法および装置
JP2011219229A (ja) 2010-04-12 2011-11-04 Hitachi Ltd 荷物所在管理装置
JP5556508B2 (ja) * 2010-08-30 2014-07-23 株式会社デンソー 物体検出装置
KR102016551B1 (ko) * 2014-01-24 2019-09-02 한화디펜스 주식회사 위치 추정 장치 및 방법
KR102317247B1 (ko) * 2015-06-15 2021-10-26 한국전자통신연구원 영상정보를 이용한 증강현실 기반 손 인터랙션 장치 및 방법
US10268924B2 (en) * 2016-12-05 2019-04-23 Sap Se Systems and methods for integrated cargo inspection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003281676A (ja) 2002-03-25 2003-10-03 Fujitsu Ltd 経路検索装置とその経路検索方法、並びに配送計画システムとその配送計画方法
US20060184013A1 (en) 2004-12-14 2006-08-17 Sky-Trax Incorporated Method and apparatus for determining position and rotational orientation of an object
JP2013235351A (ja) 2012-05-07 2013-11-21 Sharp Corp 自走式電子機器
EP3308911A1 (en) 2015-06-12 2018-04-18 LG Electronics Inc. Mobile robot and method of controlling same
JP2017139941A (ja) 2016-02-05 2017-08-10 株式会社東芝 充電装置および位置ずれ検出方法
WO2018179960A1 (ja) 2017-03-27 2018-10-04 日本電産株式会社 移動体および自己位置推定装置

Also Published As

Publication number Publication date
WO2020137311A1 (ja) 2020-07-02
EP3904993B1 (en) 2023-10-04
EP3904993A1 (en) 2021-11-03
EP3904993A4 (en) 2022-06-01
US20210312661A1 (en) 2021-10-07
JPWO2020137311A1 (ja) 2020-07-02

Similar Documents

Publication Publication Date Title
JP7336752B2 (ja) 測位装置及び移動体
US20210101747A1 (en) Positioning apparatus capable of measuring position of moving body using image capturing apparatus
US20220036574A1 (en) System and method for obstacle avoidance
US20220366596A1 (en) Positioning system for measuring position of moving body using image capturing apparatus
US10878288B2 (en) Database construction system for machine-learning
US8259998B2 (en) Image processing device for vehicle
US20220366599A1 (en) Positioning system and moving body for measuring position of moving body using image capturing apparatus
US20160238394A1 (en) Device for Estimating Position of Moving Body and Method for Estimating Position of Moving Body
KR102006291B1 (ko) 전자 장치의 이동체 포즈 추정 방법
EP3998451B1 (en) Navigation method, mobile carrier, and navigation system
JP7482453B2 (ja) 測位装置及び移動体
CN101802738A (zh) 用来检测环境的系统
JP7067574B2 (ja) 距離推定装置及び距離推定用コンピュータプログラム
JP7486095B2 (ja) 車両監視方法、車両監視装置、車両、及び車両監視システム
WO2019130931A1 (ja) 測位装置及び車両
CN113632029B (zh) 信息处理装置、程序及信息处理方法
CN113011212A (zh) 图像识别方法、装置及车辆
US11715229B2 (en) Moving body and system
JP7278637B2 (ja) 自走式移動装置
US20170178330A1 (en) System and method for interior mobile mapping

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A5211

Effective date: 20210531

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230718

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230908

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240220

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20240229

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240418