JP2022095273A - Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program - Google Patents

Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program Download PDF

Info

Publication number
JP2022095273A
JP2022095273A JP2020208504A JP2020208504A JP2022095273A JP 2022095273 A JP2022095273 A JP 2022095273A JP 2020208504 A JP2020208504 A JP 2020208504A JP 2020208504 A JP2020208504 A JP 2020208504A JP 2022095273 A JP2022095273 A JP 2022095273A
Authority
JP
Japan
Prior art keywords
self
estimation
unit
image
database
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.)
Pending
Application number
JP2020208504A
Other languages
Japanese (ja)
Inventor
達也 古室
Tatsuya Komuro
紀彦 加藤
Norihiko Kato
貴彦 阪野
Atsuhiko BANNO
将志 横塚
Masashi Yokozuka
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.)
Toyota Industries Corp
National Institute of Advanced Industrial Science and Technology AIST
Original Assignee
Toyota Industries Corp
National Institute of Advanced Industrial Science and Technology AIST
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 Toyota Industries Corp, National Institute of Advanced Industrial Science and Technology AIST filed Critical Toyota Industries Corp
Priority to JP2020208504A priority Critical patent/JP2022095273A/en
Publication of JP2022095273A publication Critical patent/JP2022095273A/en
Pending legal-status Critical Current

Links

Images

Abstract

To provide a self-position estimating device capable of improving continuity of self-position estimation results and supporting traveling of an appropriate mobile body, a mobile body, a self-position estimating method, and a self-position estimating program.SOLUTION: A self-position estimating unit 26 acquires a plurality of prior estimation positions of a mobile body 50 on the basis of a plurality of data corresponding to a plurality of position information among databases, and estimates the self-location from the plurality of prior estimation positions. This allows the self-position estimating unit 26 to suppress a rapid change of estimation results due to data switching and the like by estimating the self-location using the plurality of data. For this reason, continuity of self-position estimation results is improved, thereby making it possible to support traveling of an appropriate mobile body.SELECTED DRAWING: Figure 14

Description

本発明は、自己位置推定装置、移動体、自己位置推定方法、及び自己位置推定プログラムに関する。 The present invention relates to a self-position estimation device, a moving body, a self-position estimation method, and a self-position estimation program.

従来の自己位置推定装置として、特許文献1に記載されたものが知られている。この自己位置推定装置は、事前に取得した画像と、移動体の走行中に取得した画像と、を用いることで、自己位置を推定している。ここで、画像から位置推定を行うことは、演算時間がかかるため、この自己位置推定装置は、機械センサ(オドメトリ)を使用することによって、演算中の自己位置の推定結果の補完を行っている。 As a conventional self-position estimation device, the one described in Patent Document 1 is known. This self-position estimation device estimates the self-position by using an image acquired in advance and an image acquired while the moving body is traveling. Here, since it takes a long time to estimate the position from the image, this self-position estimation device complements the estimation result of the self-position during the calculation by using a mechanical sensor (odometry). ..

特開2018-81008号公報Japanese Unexamined Patent Publication No. 2018-81080

ここで、画像から自己位置の推定を行った場合の推定精度が常に良いとは限らない。この場合、推定精度が低い自己位置の推定結果を用いて、移動体の走行支援を行った場合、適切な走行支援を行うことができず、移動体が経路から外れて走行を行ってしまう可能性がある。また、走行経路の各位置に対して、事前にデータベースを準備しておき、走行中にデータベース中のデータを用いて自己位置を推定する方法が採用される場合がある。しかし、当該方法では、データが設定されている位置から離れた位置で自己位置の推定を行った場合、推定精度が低下する可能性がある。更に、自己位置の推定に用いるデータを切り替える場所では、推定する自己位置が急に変化してしまい不連続になる可能性がある。 Here, the estimation accuracy when the self-position is estimated from the image is not always good. In this case, if the running support of the moving body is provided using the estimation result of the self-position with low estimation accuracy, it is possible that the moving body cannot provide appropriate running support and the moving body runs off the route. There is sex. Further, a method may be adopted in which a database is prepared in advance for each position of the traveling route and the self-position is estimated by using the data in the database during traveling. However, in this method, when the self-position is estimated at a position far from the position where the data is set, the estimation accuracy may decrease. Further, at the place where the data used for estimating the self-position is switched, the estimated self-position may change suddenly and become discontinuous.

従って、本発明は、自己位置の推定結果の連続性を向上し、適切な移動体の走行支援を行うことができる自己位置推定装置、移動体、自己位置推定方法、及び自己位置推定プログラムを提供することを目的とする。 Therefore, the present invention provides a self-position estimation device, a moving body, a self-position estimation method, and a self-position estimation program that can improve the continuity of the self-position estimation result and provide appropriate running support for the moving body. The purpose is to do.

本発明の一態様に係る自己位置推定装置は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定装置であって、画像を取得する画像取得部と、画像取得部で取得された画像から特徴を抽出する抽出部と、抽出部で抽出された特徴と、データベースとをマッチングさせることで移動体の自己位置を推定する推定部と、を備え、推定部は、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。 The self-position estimation device according to one aspect of the present invention is for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. By matching the image acquisition unit that acquires an image, the extraction unit that extracts features from the image acquired by the image acquisition unit, the features extracted by the extraction unit, and the database, which is a self-position estimation device. The estimation unit includes an estimation unit that estimates the self-position of the moving object, and the estimation unit acquires a plurality of pre-estimated positions of the moving object based on a plurality of data corresponding to a plurality of position information in the database, and a plurality of pre-estimated positions. Estimate the self-position from the pre-estimated position.

自己位置推定装置は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するためのものである。ここで、例えば、画像取得部は、データベースのデータが作成されたときの位置から離れた位置で画像を取得する場合がある。このような場合、自己位置の推定に用いるデータが、別の位置のデータに切り替わる。従って、推定部が一つのデータだけで自己位置を推定した場合、推定する自己位置が急に変化する可能性がある。これに対して、推定部は、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。これにより、推定部は、一つのデータのみならず、複数のデータを用いて自己位置を推定することで、データの切り替えなどによって推定結果が急に変化することを抑制できる。そのため、自己位置の推定結果の連続性を向上し、適切な移動体の走行支援を行うことができる。 The self-position estimation device is for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. Here, for example, the image acquisition unit may acquire an image at a position away from the position when the data in the database was created. In such a case, the data used for estimating the self-position is switched to the data at another position. Therefore, when the estimation unit estimates the self-position with only one data, the estimated self-position may change suddenly. On the other hand, the estimation unit acquires a plurality of pre-estimated positions of the moving body based on a plurality of data corresponding to a plurality of position information in the database, and estimates the self-position from the plurality of pre-estimated positions. As a result, the estimation unit can suppress sudden changes in the estimation result due to data switching or the like by estimating the self-position using not only one data but also a plurality of data. Therefore, it is possible to improve the continuity of the estimation result of the self-position and to support the running of an appropriate moving object.

推定部は、前回推定した自己位置に対して、少なくとも二つの最寄りのデータを選び、選択した少なくとも二つのデータに基づいて自己位置を推定してよい。これにより、推定部は、移動体の近くに存在するデータに基づいて自己位置の推定を行うことができるため、取得した画像の特徴とデータとをマッチングさせやすく、推定精度を向上することができる。 The estimation unit may select at least two nearest data with respect to the previously estimated self-position and estimate the self-position based on at least two selected data. As a result, the estimation unit can estimate the self-position based on the data existing near the moving object, so that it is easy to match the features of the acquired image with the data, and the estimation accuracy can be improved. ..

自己位置推定装置は、自己位置の推定精度を評価する評価部を更に備え、推定部は、評価部による評価が閾値以下となった場合に、複数の事前推定位置による自己位置の推定を実施してよい。これにより、推定部は、複数のデータを用いることによる自己位置の推定を必要なタイミングに絞って実施することができるため、演算の負荷を低減することができる。 The self-position estimation device further includes an evaluation unit that evaluates the estimation accuracy of the self-position, and the estimation unit estimates the self-position by a plurality of pre-estimated positions when the evaluation by the evaluation unit is below the threshold value. It's okay. As a result, the estimation unit can estimate the self-position by using a plurality of data only at the required timing, so that the calculation load can be reduced.

推定部は、事前推定位置の元になったデータとのマッチング率を各々の事前推定位置について算出し、最終的な自己位置の推定結果が、マッチング率の高い事前推定位置に偏るように推定を行ってよい。これにより、推定部は、マッチング率の高いデータを重み付けをした状態で自己位置の推定を行うことができるため、推定精度を向上することができる。 The estimation unit calculates the matching rate with the data that is the basis of the pre-estimated position for each pre-estimated position, and estimates so that the final self-position estimation result is biased toward the pre-estimated position with a high matching rate. You may go. As a result, the estimation unit can estimate the self-position in a state where the data having a high matching rate is weighted, so that the estimation accuracy can be improved.

本発明に係る移動体は、上述の自己位置推定装置を備える。 The moving body according to the present invention includes the above-mentioned self-position estimation device.

本発明に係る自己位置推定方法は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定方法であって、画像を取得する画像取得ステップと、画像取得ステップで取得された画像から特徴を抽出する抽出ステップと、抽出ステップで抽出された特徴と、データベースとをマッチングさせることで移動体の自己位置を推定する推定ステップと、を備え、推定ステップでは、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。 The self-position estimation method according to the present invention is for self-position estimation for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. It is a method of moving objects by matching the image acquisition step of acquiring an image, the extraction step of extracting features from the image acquired in the image acquisition step, the features extracted in the extraction step, and the database. The estimation step includes an estimation step for estimating a self-position, and in the estimation step, a plurality of pre-estimated positions of a moving object are acquired based on a plurality of data corresponding to a plurality of position information in a database, and a plurality of pre-estimated positions are acquired. Estimate the self-position from.

本発明に係る自己位置推定プログラムは、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定プログラムであって、画像を取得する画像取得ステップと、画像取得ステップで取得された画像から特徴を抽出する抽出ステップと、抽出ステップで抽出された特徴と、データベースとをマッチングさせることで移動体の自己位置を推定する推定ステップと、をコンピュータシステムに実行させ、推定ステップでは、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。 The self-position estimation program according to the present invention is a self-position estimation for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. It is a program, and it is a moving body by matching the image acquisition step to acquire the image, the extraction step to extract the features from the image acquired in the image acquisition step, the features extracted in the extraction step, and the database. An estimation step for estimating a self-position is performed by a computer system, and in the estimation step, a plurality of pre-estimated positions of a moving object are acquired based on a plurality of data corresponding to a plurality of position information in a database, and a plurality of pre-estimated positions are acquired. Estimate the self-position from the pre-estimated position of.

これらの移動体、自己位置推定方法、及び自己位置推定プログラムによれば、上述の自己位置推定装置と同様な効果を得ることができる。 According to these moving objects, a self-position estimation method, and a self-position estimation program, the same effect as the above-mentioned self-position estimation device can be obtained.

本発明によれば、自己位置の推定結果の連続性を向上し、適切な移動体の走行支援を行うことができる自己位置推定装置、移動体、自己位置推定方法、及び自己位置推定プログラムを提供することができる。 INDUSTRIAL APPLICABILITY According to the present invention, a self-position estimation device, a moving body, a self-position estimation method, and a self-position estimation program capable of improving the continuity of the self-position estimation result and performing appropriate running support for a moving body are provided. can do.

本発明の実施形態に係る自己位置推定装置を備える自己位置推定システムを示す概略図である。It is a schematic diagram which shows the self-position estimation system provided with the self-position estimation apparatus which concerns on embodiment of this invention. 本発明の実施形態に係る自己位置推定装置を備える移動体のブロック構成を示すブロック構成図である。It is a block block composition diagram which shows the block structure of the moving body which includes the self-position estimation apparatus which concerns on embodiment of this invention. データベース作成時の作業場の様子を示す概略図である。It is a schematic diagram which shows the state of the workplace at the time of creating a database. データベースの作成方法を示すフローチャートである。It is a flowchart which shows the creation method of a database. 特徴を抽出する方法を説明するための図である。It is a figure for demonstrating the method of extracting a feature. カメラで取得された画像、及び抽出された特徴を示す図である。It is a figure which shows the image acquired by a camera, and the extracted feature. 特徴の三次元座標を取得する方法を示す概念図である。It is a conceptual diagram which shows the method of acquiring the 3D coordinates of a feature. 移動体が自動走行を行うときの様子を示す概略図である。It is a schematic diagram which shows the state when a moving body performs automatic traveling. 図9は、移動体の自己位置の推定方法を示すフローチャートである。FIG. 9 is a flowchart showing a method of estimating the self-position of the moving body. データベースに登録されている位置情報に対応する位置からの距離と、自己位置の推定精度との関係を示すグラフである。It is a graph which shows the relationship between the distance from the position corresponding to the position information registered in a database, and the estimation accuracy of a self-position. 特徴点を評価するときの様子を示す概念図である。It is a conceptual diagram which shows the state at the time of evaluating a feature point. 走行経路における移動体の走行支援状況を示す概念図である。It is a conceptual diagram which shows the running support situation of a moving body in a running path. 自己位置の推定精度の評価、及び当該評価結果を用いた移動体の走行支援の方法を示すフローチャートである。It is a flowchart which shows the evaluation of the estimation accuracy of self-position, and the method of running support of a moving body using the evaluation result. 自己位置推定部による自己位置推定の内容を説明するための概念図である。It is a conceptual diagram for demonstrating the content of self-position estimation by a self-position estimation part. 自己位置推定部による自己位置推定の内容を示すフローチャートである。It is a flowchart which shows the content of the self-position estimation by the self-position estimation unit. 自己位置の推定結果を評価を行った実験結果を示す図である。It is a figure which shows the experimental result which evaluated the estimation result of self-position.

以下、本発明の実施形態について、図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本実施形態に係る自己位置推定装置1を備える自己位置推定システム100を示す概略図である。図1に示すように、自己位置推定システム100は、複数の移動体50のそれぞれに設けられた自己位置推定装置1と、管理部2と、を備える。 FIG. 1 is a schematic view showing a self-position estimation system 100 including a self-position estimation device 1 according to the present embodiment. As shown in FIG. 1, the self-position estimation system 100 includes a self-position estimation device 1 provided for each of a plurality of mobile bodies 50, and a management unit 2.

本実施形態では、移動体50として、フォークリフトが例示されている。図1には、移動体50としてのフォークリフトが、倉庫や工場などの作業場E(所定の領域)にて、荷物の積み卸しの作業を行っている様子が示されている。作業場Eでは、複数の棚60が配列されている。また、棚60と棚60との間に、移動体50が通過するための通路61が形成されている。自己位置推定装置1は、このような作業場E内における移動体50の自己位置を推定する装置である。自己位置推定装置1は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体50の自己位置を推定する。移動体50は、自己位置推定装置1で推定された自己位置を用いることで、作業場E内で自動走行することができる。なお、自己位置推定装置1の詳細な構成については後述する。管理部2は、作業場E内の複数の移動体50を管理するサーバーである。管理部2は、必要に応じて、複数の移動体50から所定の情報を受信し、複数の移動体50に対して所定の情報を送信する。 In this embodiment, a forklift is exemplified as the moving body 50. FIG. 1 shows a state in which a forklift as a moving body 50 is carrying out cargo loading / unloading work at a work place E (predetermined area) such as a warehouse or a factory. In the workplace E, a plurality of shelves 60 are arranged. Further, a passage 61 for the moving body 50 to pass through is formed between the shelves 60 and the shelves 60. The self-position estimation device 1 is a device that estimates the self-position of the moving body 50 in such a workplace E. The self-position estimation device 1 estimates the self-position of the moving body 50 by matching the features extracted from the acquired image with the database in which the position information and the features are associated in advance. The moving body 50 can automatically travel in the work place E by using the self-position estimated by the self-position estimation device 1. The detailed configuration of the self-position estimation device 1 will be described later. The management unit 2 is a server that manages a plurality of mobile bodies 50 in the workplace E. The management unit 2 receives predetermined information from the plurality of moving bodies 50 as necessary, and transmits predetermined information to the plurality of moving bodies 50.

図2は、本実施形態に係る自己位置推定装置1を備える移動体50のブロック構成を示すブロック構成図である。図2に示すように、移動体50は、走行部11と、カメラ12と、制御部20と、を備える。走行部11は、移動体50を走行させるための駆動力を発生するモータなどの駆動系である。カメラ12(画像取得部)は、移動体50の周囲の画像を取得する機器である。カメラ12は、取得した画像を自己位置推定部26へ送信する。 FIG. 2 is a block configuration diagram showing a block configuration of a mobile body 50 including the self-position estimation device 1 according to the present embodiment. As shown in FIG. 2, the moving body 50 includes a traveling unit 11, a camera 12, and a control unit 20. The traveling unit 11 is a drive system such as a motor that generates a driving force for traveling the moving body 50. The camera 12 (image acquisition unit) is a device that acquires an image around the moving body 50. The camera 12 transmits the acquired image to the self-position estimation unit 26.

制御部20は、移動体50を統括的に管理するECU[Electronic Control Unit]を備えている。ECUは、CPU[Central Processing Unit]、ROM[Read Only Memory]、RAM[Random Access Memory]、CAN[Controller Area Network]通信回路等を有する電子制御ユニットである。ECUでは、例えば、ROMに記憶されているプログラムをRAMにロードし、RAMにロードされたプログラムをCPUで実行することにより各種の機能を実現する。制御部20は、経路計画部21と、指令速度計算部22と、通信部23と、記憶部24と、自己位置推定部26(抽出部、推定部)と、オドメトリ計算部27と、自己位置決定部28と、評価部31と、切替部32と、を備える。このうち、記憶部24、自己位置推定部26、オドメトリ計算部27、自己位置決定部28、評価部31、切替部32、及びカメラ12によって自己位置推定装置1が構成される。 The control unit 20 includes an ECU [Electronic Control Unit] that collectively manages the moving body 50. The ECU is an electronic control unit having a CPU [Central Processing Unit], a ROM [Read Only Memory], a RAM [Random Access Memory], a CAN [Controller Area Network] communication circuit, and the like. In the ECU, for example, various functions are realized by loading the program stored in the ROM into the RAM and executing the program loaded in the RAM in the CPU. The control unit 20 includes a route planning unit 21, a command speed calculation unit 22, a communication unit 23, a storage unit 24, a self-position estimation unit 26 (extraction unit, estimation unit), an odometry calculation unit 27, and a self-position. A determination unit 28, an evaluation unit 31, and a switching unit 32 are provided. Of these, the self-position estimation device 1 is configured by the storage unit 24, the self-position estimation unit 26, the odometry calculation unit 27, the self-position determination unit 28, the evaluation unit 31, the switching unit 32, and the camera 12.

経路計画部21は、移動体50が移動する経路を計画する。経路計画部21は、作業場Eの中の出発位置と目的位置とを設定すると共に、目的位置までの経路を計画する。経路計画部21は、計画した経路の情報を指令速度計算部22へ送信する。指令速度計算部22は、走行部11に対する指令速度、すなわちモータに対する指令回転数を計算する。指令速度計算部22は、経路計画部21から送信された経路、及び自己位置決定部28から送信された自己位置に基づいて、指令回転数を計算する。通信部23は、走行部11との間で通信を行う。通信部23は、走行部11に対して走行に必要な制御信号を送信する。なお、通信部23は、図示されないエンコーダからのエンコーダ値を取得すると共に、当該エンコーダ値をオドメトリ計算部27に送信する。 The route planning unit 21 plans a route for the moving body 50 to move. The route planning unit 21 sets the departure position and the destination position in the work place E, and plans the route to the destination position. The route planning unit 21 transmits information on the planned route to the command speed calculation unit 22. The command speed calculation unit 22 calculates the command speed for the traveling unit 11, that is, the command rotation speed for the motor. The command speed calculation unit 22 calculates the command rotation speed based on the route transmitted from the route planning unit 21 and the self-position transmitted from the self-positioning unit 28. The communication unit 23 communicates with the traveling unit 11. The communication unit 23 transmits a control signal necessary for traveling to the traveling unit 11. The communication unit 23 acquires an encoder value from an encoder (not shown) and transmits the encoder value to the odometry calculation unit 27.

次に、自己位置推定装置1の各構成要素について説明する。記憶部24は、自己位置推定に必要なデータベースを記憶する。データベースは、予め位置情報と、当該位置で取得された画像から抽出された特徴と、を関連付けた情報群である。データベースは、ある位置情報と特徴とが関連づけられたデータを複数有している。記憶部24は、自己位置推定部26に対してデータベースを送信する。 Next, each component of the self-position estimation device 1 will be described. The storage unit 24 stores a database necessary for self-position estimation. The database is a group of information in which position information is associated with features extracted from an image acquired at the position in advance. The database has a plurality of data in which certain location information and features are associated with each other. The storage unit 24 transmits the database to the self-position estimation unit 26.

自己位置推定部26は、カメラ12で取得された画像から特徴を抽出する。また、自己位置推定部26は、カメラ12で取得された画像から抽出された特徴と、記憶部24から送信されたデータベースとをマッチングさせることで、移動体50の自己位置を推定する。自己位置推定部26は、推定した自己位置を自己位置決定部28へ送信する。 The self-position estimation unit 26 extracts features from the image acquired by the camera 12. Further, the self-position estimation unit 26 estimates the self-position of the moving body 50 by matching the features extracted from the image acquired by the camera 12 with the database transmitted from the storage unit 24. The self-position estimation unit 26 transmits the estimated self-position to the self-position determination unit 28.

オドメトリ計算部27は、通信部23から取得したエンコーダ値に基づいて、オドメトリによる自己位置を計算する。オドメトリ計算部27は、カメラ12の画像によることなく、容易な計算によって自己位置を取得することができる。オドメトリ計算部27は、オドメトリによる自己位置を自己位置決定部28へ送信する。自己位置決定部28は、自己位置推定部26からの自己位置と、オドメトリ計算部27からの自己位置を総合的に判断し、移動体50の自己位置を決定する。自己位置決定部28は、オドメトリ計算部27からの自己位置をベースとしつつ、画像を用いた自己位置推定部26からの自己位置推定結果を用いて、オドメトリ誤差を補正することで、自己位置を決定する。自己位置決定部28は、決定した自己位置を指令速度計算部22へ送信する。 The odometry calculation unit 27 calculates the self-position by the odometry based on the encoder value acquired from the communication unit 23. The odometry calculation unit 27 can acquire the self-position by a simple calculation without using the image of the camera 12. The odometry calculation unit 27 transmits the self-position by the odometry to the self-positioning unit 28. The self-positioning unit 28 comprehensively determines the self-position from the self-position estimation unit 26 and the self-position from the odometry calculation unit 27, and determines the self-position of the moving body 50. The self-positioning unit 28 corrects the self-position by correcting the odometry error by using the self-position estimation result from the self-position estimation unit 26 using an image while using the self-position from the odometry calculation unit 27 as a base. decide. The self-position determination unit 28 transmits the determined self-position to the command speed calculation unit 22.

ここで、図3~図6を参照して、データベースの作成方法について説明する。データベースの作成は、実際に移動体50が自己位置を推定しながら作業場Eで作業を行うよりも前段階において、予め行われる。データベースの作成は、作業場Eのうち、走行に重要なポイントにおいて画像を取得し、位置推定に必要な情報を算出してデータベース化して、作業場Eの地図に紐付けることによってなされる。重要なポイントは、例えば、図3において「1」~「12」までの番号が付された位置である。以降の説明においては、「1」の番号の位置を「第1重要ポイント」と称するものとする。他の番号が付された場所も同様に「第n重要ポイント」と称される。なお、ここでは、データベース作成のために、図2に示す移動体50を用いるものとして説明する。後述のように、自己位置推定部26が画像から特徴を抽出する機能や画像同士をマッチングする機能を有しているため、自己位置推定部26がデータベース作成のための各種処理を行うものとする。しかし、データベース作成のために用いられる機器は、特に限定されず、以降の処理を実行できる機器であれば、どのようなものを採用してもよい。 Here, a method of creating a database will be described with reference to FIGS. 3 to 6. The database is created in advance before the moving body 50 actually performs the work in the workplace E while estimating its own position. The database is created by acquiring images at points important for driving in the workplace E, calculating information necessary for position estimation, creating a database, and linking it to the map of the workplace E. An important point is, for example, a position numbered from "1" to "12" in FIG. In the following description, the position of the number "1" shall be referred to as the "first important point". Places with other numbers are also referred to as "nth important points". Here, it is assumed that the mobile body 50 shown in FIG. 2 is used for creating the database. As will be described later, since the self-position estimation unit 26 has a function of extracting features from images and a function of matching images with each other, it is assumed that the self-position estimation unit 26 performs various processes for creating a database. .. However, the device used for creating the database is not particularly limited, and any device that can execute the subsequent processing may be adopted.

図4は、データベースの作成方法を示すフローチャートである。まず、カメラ12は、データベースにしたい画像を1枚取得すると共に、その周辺の画像を1枚(複数でも可)取得する(ステップS10:画像取得ステップ)。例えば、第1重要ポイントにおける画像をデータベースにする場合、カメラ12は、第1重要ポイントで画像を1枚取得し、当該第1重要ポイントの近くから別の画像を取得する。次に、自己位置推定部26は、特徴を抽出できるように、画像の前処理を行う(ステップS20)。例えば、カメラ12は、広範囲を撮影できるように魚眼レンズを有する場合がある。このときは、画像中の物体が歪んで映っているため、前処理を行って、実際の見え方に近い画像に調整する。 FIG. 4 is a flowchart showing a method of creating a database. First, the camera 12 acquires one image to be stored in the database and one image (s) around the image (step S10: image acquisition step). For example, when the image at the first important point is used as a database, the camera 12 acquires one image at the first important point and another image from the vicinity of the first important point. Next, the self-position estimation unit 26 performs image preprocessing so that features can be extracted (step S20). For example, the camera 12 may have a fisheye lens so that it can capture a wide range. At this time, since the object in the image is distorted, preprocessing is performed to adjust the image to be close to the actual appearance.

次に、自己位置推定部26は、二枚の画像からそれぞれ特徴を抽出する(ステップS30:抽出ステップ)。ここで、図5を参照して、画像中の特徴の抽出の方法について説明する。図5は、特徴を抽出する方法を説明するための図である。図5(a)に示すように、自己位置推定部26は、判定画素Xと周囲画素(ここでは16画素)の輝度を比較することで、「明」「暗」「同」の三パターンに層別する。例えば、自己位置推定部26は、「判定画素(X)-周囲画素(i)>明暗閾値」という関係が成り立つ周囲画素は「明」と判定し、「判定画素(X)-周囲画素(i)<明暗閾値」という関係が成り立つ周囲画素は「暗」と判定し、「(判定画素(X)-周囲画素(i))の絶対値<明暗閾値」という関係が成り立つ周囲画素は「同」と判定する。 Next, the self-position estimation unit 26 extracts features from each of the two images (step S30: extraction step). Here, a method of extracting features in an image will be described with reference to FIG. FIG. 5 is a diagram for explaining a method of extracting features. As shown in FIG. 5A, the self-position estimation unit 26 compares the brightness of the determination pixel X and the surrounding pixels (here, 16 pixels) into three patterns of “bright”, “dark”, and “same”. Stratify. For example, the self-position estimation unit 26 determines that the peripheral pixel for which the relationship "determination pixel (X) -peripheral pixel (i)> light / dark threshold value" is established is "bright", and "determination pixel (X) -peripheral pixel (i). ) Peripheral pixels that hold the relationship <brightness threshold "are determined to be" dark ", and peripheral pixels that hold the relationship" (absolute value of (judgment pixel (X) -peripheral pixel (i)) <brightness threshold" are "same". Is determined.

ここで、自己位置推定部26は、「明」または「暗」の周囲画素の連続数がコーナー閾値以上となった場合、判定画素Xを画像中の特徴として抽出する。例えば、コーナー閾値を「12」とした場合、図5(b)の判定画素Xは「明」の周囲画素が12連続以上であるため、特徴として抽出される。図5(c)の判定画素Xは「明」の周囲画素が11連続しかないため、判定画素Xは特徴ではないものとして破棄される。これにより、図6に示すように、画像PC中の棚、床、天井、壁などの構造物のコーナー部などが特徴(特徴点FP)として抽出される。その他、荷物、設置物、移動体などが画像に写っている場合、それらの物体のコーナー部も特徴として抽出される。 Here, the self-position estimation unit 26 extracts the determination pixel X as a feature in the image when the number of consecutive "bright" or "dark" peripheral pixels is equal to or greater than the corner threshold value. For example, when the corner threshold is set to "12", the determination pixel X in FIG. 5B is extracted as a feature because the peripheral pixels of "bright" are 12 consecutive or more. Since the determination pixel X in FIG. 5C has only 11 consecutive "bright" peripheral pixels, the determination pixel X is discarded as a feature. As a result, as shown in FIG. 6, the corners of structures such as shelves, floors, ceilings, and walls in the image PC are extracted as features (feature points FP). In addition, when luggage, installation objects, moving objects, etc. are shown in the image, the corners of those objects are also extracted as features.

本明細書では、特徴として抽出された画素を「特徴点FP」と称する場合がある。なお、自己位置推定に用いられる画像中の特徴は、点である場合のみならず、線や所定形状などである場合もある。すなわち、特徴は、画像中において特徴的な部分として画像処理によって抽出可能な部分であり、且つ、他の画像で抽出したものとマッチング可能な部分であれば、どのような態様であるかは限定されない。 In the present specification, the pixel extracted as a feature may be referred to as "feature point FP". The feature in the image used for self-position estimation is not only a point but also a line or a predetermined shape. That is, the feature is limited as long as it is a part that can be extracted by image processing as a characteristic part in the image and can be matched with the part extracted by another image. Not done.

図4に戻り、自己位置推定部26は、二枚の画像同士の特徴をマッチングする(ステップS40)。そして、自己位置推定部26は、特徴の3次元復元を行い、データベースとして登録する。データベースでは、重要ポイント(画像が取得された位置)の位置情報と、画像中の特徴の画像座標と、特徴の3次元座標とが、関連付けられた形で登録されている。なお、位置情報には、撮影時のカメラ12の姿勢も含まれる。例えば、図7に示すように、重要ポイントにおける画像PC1中では、特徴点G,R,Bが抽出されており、それらの画像座標が特定されている。また、画像PC1が取得された場所の位置情報も特定されている。重要ポイントの周囲で取得された画像PC2中でも、特徴点G,R,Bが抽出されており、それらの画像座標が特定されている。また、画像PC2が取得された場所の位置情報も特定されている。周囲の撮影位置と、重要ポイントとの位置関係は、オドメトリ値を紐付けたり、画像から推定するなどの方法で把握される。自己位置推定部26は、画像PC1と画像PC2の特徴同士をマッチングする。これにより、自己位置推定部26は、三角測量の要領で、特徴点G,R,Bの三次元座標を取得することができる。 Returning to FIG. 4, the self-position estimation unit 26 matches the features of the two images (step S40). Then, the self-position estimation unit 26 performs three-dimensional restoration of the feature and registers it as a database. In the database, the position information of the important point (the position where the image is acquired), the image coordinates of the feature in the image, and the three-dimensional coordinates of the feature are registered in an associated form. The position information also includes the posture of the camera 12 at the time of shooting. For example, as shown in FIG. 7, feature points G, R, and B are extracted from the image PC1 at important points, and their image coordinates are specified. In addition, the position information of the place where the image PC1 is acquired is also specified. Feature points G, R, and B are also extracted from the image PC2 acquired around the important points, and their image coordinates are specified. In addition, the position information of the place where the image PC 2 is acquired is also specified. The positional relationship between the surrounding shooting position and the important point is grasped by a method such as associating an odometry value or estimating from an image. The self-position estimation unit 26 matches the features of the image PC 1 and the image PC 2 with each other. As a result, the self-position estimation unit 26 can acquire the three-dimensional coordinates of the feature points G, R, and B in the same manner as triangulation.

図4に戻り、ステップS50の処理が終了すると、一枚の画像のデータベース化が終了する。移動体50は、次の重要ポイントへ移動し、当該重要ポイントにてカメラ12で画像を取得して、再び図4の処理を行う。このようにして、作業場Eの全ての重要ポイントでの画像のデータベース化を行う。作成されたデータベースは、記憶部24に格納される。 Returning to FIG. 4, when the process of step S50 is completed, the database creation of one image is completed. The moving body 50 moves to the next important point, acquires an image with the camera 12 at the important point, and performs the process of FIG. 4 again. In this way, a database of images is created at all important points in the workplace E. The created database is stored in the storage unit 24.

次に、図8及び図9を参照して、移動体50の自動走行の方法、及び自動走行のための自己位置推定部26による自己位置推定方法について説明する。例えば、移動体50は、図8に示す現在位置STから、目標位置GLである第8重要ポイントまで自動走行するものとする。このとき、自己位置推定部26は、移動体50が現在どこに存在しているかを推定する。これにより、自己位置決定部28は、現在位置STが「第10重要ポイントから東へ2m」であると決定できる。そして、経路計画部21は、「第11重要ポイントまで東に48m、第8重要ポイントまで北へ16m」という経路を計画する。これにより、移動体が自動走行を行う。なお、自己位置推定部26は、自己位置の推定を行う際に、何個のデータを用いるかは限定されず、後述のように、複数の位置のデータを用いて自己位置の推定をしてもよいが、ここでは、内容の理解を促進するため、一つのデータを用いて自己位置推定する場合を例にして説明する。なお、複数のデータを用いて自己位置の推定を行う方法については、後述する。 Next, with reference to FIGS. 8 and 9, a method of automatic traveling of the moving body 50 and a self-position estimation method by the self-position estimation unit 26 for automatic traveling will be described. For example, it is assumed that the moving body 50 automatically travels from the current position ST shown in FIG. 8 to the eighth important point which is the target position GL. At this time, the self-position estimation unit 26 estimates where the moving body 50 currently exists. As a result, the self-positioning unit 28 can determine that the current position ST is "2 m east of the tenth important point". Then, the route planning unit 21 plans a route of "48 m east to the 11th important point and 16 m north to the 8th important point". As a result, the moving body automatically travels. The self-position estimation unit 26 is not limited in how many data are used when estimating the self-position, and as described later, the self-position estimation unit 26 estimates the self-position using the data of a plurality of positions. However, in order to promote understanding of the contents, a case of self-position estimation using one data will be described here as an example. The method of estimating the self-position using a plurality of data will be described later.

図9は、移動体50の自己位置の推定方法を示すフローチャートである。自己位置推定部26は、移動体50の自己位置を推定するために図9に示す処理を実行する。図9に示すように、自己位置推定部26は、カメラ12から移動体50の走行中の画像を取得する(ステップS110:画像取得ステップ)。例えば、カメラ12は、第10重要ポイント付近の現在位置STで画像を取得する(図8参照)。次に、自己位置推定部26は、特徴を抽出できるように、画像の前処理を行う(ステップS120)。次に、自己位置推定部26は、走行中の画像から特徴を抽出する(ステップS130:抽出ステップ)。なお、ステップS120,S130では、図4のステップS20,S30と同趣旨の処理がなされる。これにより、図6のような画像PCが取得された場合には、特徴点FPが取得される。 FIG. 9 is a flowchart showing a method of estimating the self-position of the moving body 50. The self-position estimation unit 26 executes the process shown in FIG. 9 in order to estimate the self-position of the moving body 50. As shown in FIG. 9, the self-position estimation unit 26 acquires a moving image of the moving body 50 from the camera 12 (step S110: image acquisition step). For example, the camera 12 acquires an image at the current position ST near the tenth important point (see FIG. 8). Next, the self-position estimation unit 26 performs image preprocessing so that features can be extracted (step S120). Next, the self-position estimation unit 26 extracts features from the moving image (step S130: extraction step). In steps S120 and S130, processing to the same effect as in steps S20 and S30 of FIG. 4 is performed. As a result, when the image PC as shown in FIG. 6 is acquired, the feature point FP is acquired.

次に、自己位置推定部26は、ステップS130で抽出した特徴と、データベースの画像の特徴とをマッチングさせる(ステップS140:推定ステップ)。そして、自己位置推定部26は、移動体50の自己位置を推定する(ステップS150:推定ステップ)。 Next, the self-position estimation unit 26 matches the features extracted in step S130 with the features of the image in the database (step S140: estimation step). Then, the self-position estimation unit 26 estimates the self-position of the moving body 50 (step S150: estimation step).

例えば、移動体50の走行中に、図6に示す画像PCに類似する画像が得られた場合、自己位置推定部26は、図6のものと類似する複数の特徴点FPを抽出することができる。そして、自己位置推定部26は、当該特徴点と、データベースの画像中の特徴点とを照らし合わせる。データベース作成時に第10重要ポイントで図6に示す画像PCが得られ、図6に示す複数の特徴点FPが抽出されていた場合、自己位置推定部26は、ステップS130で抽出された特徴点と、図6に示す特徴点FPとをマッチングさせることができる。なお、特徴点同士をマッチングさせる方法としては、例えば、特徴点の特徴量記述子を計算し、データベースの特徴点の中から最も距離が小さい特徴点をマッチングさせる方法が挙げられるが、方法は特に限定されず、公知の方法を用いればよい。 For example, when an image similar to the image PC shown in FIG. 6 is obtained while the moving body 50 is traveling, the self-position estimation unit 26 may extract a plurality of feature point FPs similar to those in FIG. can. Then, the self-position estimation unit 26 compares the feature points with the feature points in the image of the database. When the image PC shown in FIG. 6 is obtained at the tenth important point at the time of database creation and the plurality of feature point FPs shown in FIG. 6 are extracted, the self-position estimation unit 26 together with the feature points extracted in step S130. , Can be matched with the feature point FP shown in FIG. As a method of matching feature points, for example, a method of calculating a feature amount descriptor of a feature point and matching the feature point having the shortest distance from the feature points in the database can be mentioned, but the method is particularly suitable. A known method may be used without limitation.

ここで、走行中に撮影した場所が、第10重要ポイントからずれており、走行中に撮影したときの姿勢が、データベース作成時の撮影の姿勢からずれている場合、走行中に撮影された画像及び特徴点の画像座標は、図6の画像PC及び特徴点FPの画像座標から若干のずれが生じている。従って、ステップS150では、自己位置推定部26は、データベースから任意の3点の特徴点の座標を、走行中の画像の3点の特徴点に紐付ける。そして、自己位置推定部26は、公知の3点法の技術を用いて、移動体50の位置及び姿勢を推定する。なお、ステップS150に用いられる3点の特徴点は、画像中に多数存在する特徴点の中から、ランダムで選ばれる。 Here, if the location taken during driving deviates from the tenth important point and the posture taken during driving deviates from the posture taken during database creation, the image taken during driving The image coordinates of the feature points and the feature points are slightly deviated from the image coordinates of the image PC and the feature point FP in FIG. Therefore, in step S150, the self-position estimation unit 26 links the coordinates of any three feature points from the database to the three feature points of the moving image. Then, the self-position estimation unit 26 estimates the position and posture of the moving body 50 by using a known three-point method technique. The three feature points used in step S150 are randomly selected from a large number of feature points existing in the image.

次に、図2に示す評価部31、及び切替部32について詳細に説明する。評価部31は、自己位置推定部26の推定精度を評価する。ここで、図10を参照して、データベースに登録されている位置情報に対応する位置からの距離と、自己位置の推定精度との関係について説明する。図10のグラフ上段側の「走行」と示された直線上にプロットされたドットは、データベースに登録されている位置情報に対応する位置を示す。図10の下段側には、移動体50の走行範囲の各位置における、データベースに登録されている位置情報に対応する位置からの距離を示すグラフと、自己位置の推定結果の誤差が示されている。当該グラフは、事前に行われた実験の結果を示している。データベースに登録されている位置情報に対応する位置とは、前述の「第1~12重要ポイント」の位置であり、事前にデータベース作成のために画像を取得した位置である。走行中の撮影位置(すなわち、自己位置推定を行う位置)が、各重要ポイントから離れれば離れるほど、データベースに登録されているものから画像の見え方の変化が大きくなる。従って、図10に示すように、各重要ポイントからの距離が離れるほど、自己位置推定部26の推定精度が低下する。 Next, the evaluation unit 31 and the switching unit 32 shown in FIG. 2 will be described in detail. The evaluation unit 31 evaluates the estimation accuracy of the self-position estimation unit 26. Here, with reference to FIG. 10, the relationship between the distance from the position corresponding to the position information registered in the database and the estimation accuracy of the self-position will be described. The dots plotted on the straight line indicated as "running" on the upper side of the graph in FIG. 10 indicate the positions corresponding to the position information registered in the database. On the lower side of FIG. 10, a graph showing the distance from the position corresponding to the position information registered in the database at each position in the traveling range of the moving body 50 and the error of the estimation result of the self-position are shown. There is. The graph shows the results of prior experiments. The position corresponding to the position information registered in the database is the position of the above-mentioned "1st to 12th important points", and is the position where the image was acquired in advance for creating the database. The farther the shooting position (that is, the position for self-position estimation) during driving is from each important point, the greater the change in the appearance of the image from what is registered in the database. Therefore, as shown in FIG. 10, as the distance from each important point increases, the estimation accuracy of the self-position estimation unit 26 decreases.

具体的に、評価部31は、特徴とデータベースとのマッチングに基づいて推定精度を評価する。評価部31は、自己位置推定部26によって抽出された特徴点FPと、データベースに登録された画像の特徴点FPとのマッチングを行う。評価部31は、このときのマッチング成功数(またはマッチング成功割合)が高いときは自己位置推定部26の推定精度が高いと評価し、低いときは自己位置推定部26の推定精度が低いと評価する。評価部31は、マッチング成功数(マッチング成功割合)に対して、予め閾値を設定し、当該閾値以上のときに、推定精度が高いと評価する。なお、閾値は、固定値であってもよく、事前に取得した画像から推定した値であってもよい。 Specifically, the evaluation unit 31 evaluates the estimation accuracy based on the matching between the feature and the database. The evaluation unit 31 matches the feature point FP extracted by the self-position estimation unit 26 with the feature point FP of the image registered in the database. The evaluation unit 31 evaluates that the estimation accuracy of the self-position estimation unit 26 is high when the number of successful matchings (or the matching success rate) at this time is high, and evaluates that the estimation accuracy of the self-position estimation unit 26 is low when it is low. do. The evaluation unit 31 sets a threshold value in advance for the number of successful matchings (matching success rate), and evaluates that the estimation accuracy is high when the threshold value is equal to or higher than the threshold value. The threshold value may be a fixed value or a value estimated from an image acquired in advance.

具体的に、図11(a)に示すように、特徴点R,G,Bを用いて3点法で自己位置推定がなされた場合、評価部31は、当該3点の特徴点R,G,B以外の特徴点FPについてのマッチングの成否の判断を自動的に行う。図11(b)に示すように、3点の特徴点R,G,B以外の特徴点FPのマッチングの成否を判断するとき、データベースの画像PC1の画像座標中では、判定対象の特徴点FPは「特徴点FP1」で示され、走行中の画像PC2の画像座標中では、判定対象の特徴点FPは「特徴点FP2」で示される。評価部31は、特徴点FP1の三次元座標点を画像PC2上に再投影する。当該再投影された特徴点FP1は、画像PC2の画像座標中では「特徴点FP2a」と示される。評価部31は、特徴点FP2aと特徴点FP1との間の誤差の大きさを取得すると共に、当該誤差が閾値以下であるか否かを判定する。評価部31は、誤差が閾値以下である場合、判定対象に係る特徴点FPのマッチングが成功すると判定し、マッチング成功数のカウントを一つ増やす。一方、評価部31は、誤差が閾値より大きい場合、判定対象に係る特徴点FPのマッチングは失敗であると判定し、カウントしない。 Specifically, as shown in FIG. 11A, when the self-position estimation is performed by the three-point method using the feature points R, G, B, the evaluation unit 31 performs the three-point feature points R, G. , B The success or failure of matching is automatically determined for the feature point FP other than B. As shown in FIG. 11B, when determining the success or failure of matching of the feature points FP other than the three feature points R, G, and B, the feature point FP to be determined is in the image coordinates of the image PC1 of the database. Is indicated by "feature point FP1", and the feature point FP to be determined is indicated by "feature point FP2" in the image coordinates of the moving image PC2. The evaluation unit 31 reprojects the three-dimensional coordinate point of the feature point FP1 onto the image PC2. The reprojected feature point FP1 is indicated as "feature point FP2a" in the image coordinates of the image PC2. The evaluation unit 31 acquires the magnitude of the error between the feature point FP2a and the feature point FP1 and determines whether or not the error is equal to or less than the threshold value. When the error is equal to or less than the threshold value, the evaluation unit 31 determines that the matching of the feature point FPs related to the determination target is successful, and increments the count of the number of successful matchings by one. On the other hand, when the error is larger than the threshold value, the evaluation unit 31 determines that the matching of the feature point FP related to the determination target has failed and does not count.

切替部32は、評価部31による評価結果に基づいて、自己位置推定部26による自己位置の推定結果を走行支援に用いるか否かを切り替える。すなわち、切替部32は、評価部31による評価が高い推定結果の場合は、自己位置推定部26による推定結果を走行支援で用いられるようにする。具体的には、切替部32は、自己位置決定部28において、自己位置推定部26の推定結果が用いられるように設定を行う。これにより、自己位置決定部28は、画像を用いた自己位置推定部26からの自己位置推定結果を用いて、オドメトリ誤差を補正することで、自己位置を決定する。一方、切替部32は、評価部31による評価結果が低い推定結果の場合は、自己位置推定部26による推定結果が走行支援で用いられないようにする。すなわち、切替部32は、評価部31による評価結果が低い場合、移動体50の走行部11からの走行情報のみに基づく走行支援に切り替える。ここでの走行情報とは、走行部11からのエンコーダ値に基づくオドメトリである。具体的には、切替部32は、自己位置決定部28において、自己位置推定部26の推定結果が用いられないように設定を切り替える。これにより、自己位置決定部28は、画像を用いた自己位置推定部26からの自己位置推定結果を用いずに、オドメトリ誤差を補正することなく、自己位置を決定する。 The switching unit 32 switches whether or not to use the self-position estimation result by the self-position estimation unit 26 for driving support based on the evaluation result by the evaluation unit 31. That is, in the case of an estimation result that is highly evaluated by the evaluation unit 31, the switching unit 32 makes the estimation result by the self-position estimation unit 26 used for driving support. Specifically, the switching unit 32 is set so that the estimation result of the self-position estimation unit 26 is used in the self-position determination unit 28. As a result, the self-positioning unit 28 determines the self-position by correcting the odometry error using the self-position estimation result from the self-position estimation unit 26 using the image. On the other hand, when the evaluation result by the evaluation unit 31 is low, the switching unit 32 prevents the estimation result by the self-position estimation unit 26 from being used in the traveling support. That is, when the evaluation result by the evaluation unit 31 is low, the switching unit 32 switches to the traveling support based only on the traveling information from the traveling unit 11 of the moving body 50. The traveling information here is odometry based on the encoder value from the traveling unit 11. Specifically, the switching unit 32 switches the setting so that the estimation result of the self-position estimation unit 26 is not used in the self-position determination unit 28. As a result, the self-positioning unit 28 determines the self-position without correcting the odometry error without using the self-position estimation result from the self-position estimation unit 26 using the image.

図12は、走行経路における移動体50の走行支援状況を示す概念図である。図12の「走行」と示された直線上にプロットされたドットは、データベースに登録されている位置情報に対応する位置(各重要ポイント)を示す。移動体50は、重要ポイントに近い領域E1では、自己位置推定部26からの自己位置推定結果を用いて、オドメトリ誤差を補正することによる、走行支援によって走行する。一方、移動体50は、重要ポイントから遠い領域E2では、オドメトリのみに基づいた走行支援によって走行する。 FIG. 12 is a conceptual diagram showing a traveling support situation of the moving body 50 on the traveling route. The dots plotted on the straight line indicated as "running" in FIG. 12 indicate the positions (each important point) corresponding to the position information registered in the database. In the region E1 near the important point, the moving body 50 travels by traveling support by correcting the odometry error by using the self-position estimation result from the self-position estimation unit 26. On the other hand, the moving body 50 travels in the region E2 far from the important point by the traveling support based only on the odometry.

次に、図13を参照して、自己位置の推定精度の評価、及び当該評価結果を用いた移動体の走行支援の方法について説明する。図13は、自己位置の推定精度の評価、及び当該評価結果を用いた移動体の走行支援の方法を示すフローチャートである。この処理は、走行経路のある位置において、自己位置推定部26が自己位置を推定した後に実行される。 Next, with reference to FIG. 13, an evaluation of the estimation accuracy of the self-position and a method of supporting the traveling of the moving body using the evaluation result will be described. FIG. 13 is a flowchart showing an evaluation of the estimation accuracy of the self-position and a method of supporting the traveling of the moving body using the evaluation result. This process is executed after the self-position estimation unit 26 estimates the self-position at a certain position on the travel path.

まず、評価部31は、自己位置推定部26による自己位置推定の推定精度を評価する(ステップS210:評価ステップ)。評価部31は、自己位置推定部26で抽出された特徴のマッチング成功数(成功割合)に基づいて、評価を行う。 First, the evaluation unit 31 evaluates the estimation accuracy of the self-position estimation by the self-position estimation unit 26 (step S210: evaluation step). The evaluation unit 31 evaluates based on the number of successful matchings (success rate) of the features extracted by the self-position estimation unit 26.

次に、評価部31は、ステップS210における評価結果が高いか否かを判定する(ステップS220:評価ステップ)。ステップS220において、評価が高いと判定された場合、切替部32は、自己位置推定部26による推定結果を走行支援で用いられるように設定する(ステップS230:切替ステップ)。一方、ステップS220において、評価が低いと判定された場合、切替部32は、自己位置推定部26による推定結果が走行支援で用いられないようにし、オドメトリのみに基づいて走行支援が行われるように設定する(ステップS240:切替ステップ)。以上により、図13に示す処理が終了する。 Next, the evaluation unit 31 determines whether or not the evaluation result in step S210 is high (step S220: evaluation step). If it is determined in step S220 that the evaluation is high, the switching unit 32 sets the estimation result by the self-position estimation unit 26 to be used in the traveling support (step S230: switching step). On the other hand, when it is determined in step S220 that the evaluation is low, the switching unit 32 prevents the estimation result by the self-position estimation unit 26 from being used in the driving support, and the driving support is performed based only on the odometry. Set (step S240: switching step). As a result, the process shown in FIG. 13 is completed.

次に、図14~図16を参照して、自己位置推定部26が更に適切な自己位置を推定するための構成について説明する。図14は、自己位置推定部26による自己位置推定の内容を説明するための概念図である。図15は、自己位置推定部26による自己位置推定の内容を示すフローチャートである。図16は、自己位置の推定結果を評価を行った実験結果を示す図である。 Next, with reference to FIGS. 14 to 16, a configuration for the self-position estimation unit 26 to further estimate an appropriate self-position will be described. FIG. 14 is a conceptual diagram for explaining the content of self-position estimation by the self-position estimation unit 26. FIG. 15 is a flowchart showing the contents of self-position estimation by the self-position estimation unit 26. FIG. 16 is a diagram showing an experimental result in which the estimation result of the self-position was evaluated.

前述の実施形態においては、自己位置推定部26は、最寄りの一つのデータに基づいて自己位置を推定していた。これに対し、自己位置推定部26は、複数のデータを用いて自己位置を推定してよい。すなわち、自己位置推定部26は、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体50の事前推定位置を複数取得する。また、自己位置推定部26は、複数の事前推定位置から自己位置を推定する。自己位置推定部26は、前回推定した自己位置に対して、少なくとも二つの最寄りのデータを選び、選択した少なくとも二つのデータに基づいて自己位置を推定する。 In the above-described embodiment, the self-position estimation unit 26 estimates the self-position based on one of the nearest data. On the other hand, the self-position estimation unit 26 may estimate the self-position using a plurality of data. That is, the self-position estimation unit 26 acquires a plurality of pre-estimated positions of the moving body 50 based on a plurality of data corresponding to a plurality of position information in the database. Further, the self-position estimation unit 26 estimates the self-position from a plurality of pre-estimated positions. The self-position estimation unit 26 selects at least two nearest data with respect to the previously estimated self-position, and estimates the self-position based on at least two selected data.

まず、図15に示すように、自己位置推定部26は、マッチングの対象となる複数のデータを選択する(ステップS310:推定ステップ)。ここでは、自己位置推定部26は、前回推定した自己位置に対して、二つの最寄りのデータを選ぶ。具体的に、図14(a)に示すように、データベースは、移動体50の走行経路RLの各位置において、位置情報に対応する複数のデータを有している。図14(a)では四つのデータが設定されているので、データDT1,DT2,DT3,DT4と称する。例えば移動体50による前回の推定に係る自己位置LPがデータDT1に対応する位置とデータDT2に対応する位置との間に存在する場合、自己位置推定部26は、マッチングの対象となるデータとして、一番近いデータD1と、二番目に近いデータD2と、を選択する。 First, as shown in FIG. 15, the self-position estimation unit 26 selects a plurality of data to be matched (step S310: estimation step). Here, the self-position estimation unit 26 selects two nearest data with respect to the previously estimated self-position. Specifically, as shown in FIG. 14A, the database has a plurality of data corresponding to the position information at each position of the traveling path RL of the moving body 50. Since four data are set in FIG. 14A, they are referred to as data DT1, DT2, DT3, and DT4. For example, when the self-position LP related to the previous estimation by the moving body 50 exists between the position corresponding to the data DT1 and the position corresponding to the data DT2, the self-position estimation unit 26 sets the data to be matched as the data to be matched. Select the closest data D1 and the second closest data D2.

次に、図15に示すように、自己位置推定部26は、ステップS310で選択したデータに対してマッチングを行い、事前推定位置を複数取得する(ステップS320:推定ステップ)。なお、移動体50が現在位置で取得した画像から抽出した特徴と、各データとをマッチングする具体的な内容は、図9での説明において、自己位置を推定した方法と同様の方法が採用される。例えば、図14(a)では、自己位置推定部26は、データDT1とマッチングを行うことで、事前推定位置BP1を取得する。また、自己位置推定部26は、データDT2とマッチングを行うことで、事前推定位置BP2を取得する。マッチングの対象となるデータが異なっており、且つ各データを用いて推定した自己位置も実際の自己位置とは若干ずれるため、事前推定位置BP1と事前推定位置BP2は、互いに異なる位置に設定される。 Next, as shown in FIG. 15, the self-position estimation unit 26 performs matching with the data selected in step S310 and acquires a plurality of pre-estimated positions (step S320: estimation step). As for the specific content of matching the features extracted from the image acquired by the moving body 50 at the current position with each data, the same method as the method of estimating the self-position is adopted in the explanation with reference to FIG. To. For example, in FIG. 14A, the self-position estimation unit 26 acquires the pre-estimated position BP1 by matching with the data DT1. Further, the self-position estimation unit 26 acquires the pre-estimated position BP2 by matching with the data DT2. Since the data to be matched are different and the self-position estimated using each data is slightly different from the actual self-position, the pre-estimated position BP1 and the pre-estimated position BP2 are set to different positions. ..

次に、図15に示すように、自己位置推定部26は、ステップS320で取得した複数の事前推定位置から自己位置を推定する(ステップS330:推定ステップ)。自己位置推定部26は、複数の事前推定位置間の中間の位置に設定する。このとき、自己位置推定部26は、事前推定位置の元になったデータとのマッチング率を各々の事前推定位置について算出する。マッチング率とは、事前推定位置が、元になったデータに対してどの程度合致しているかの度合いを示す値であり、当該度合いを示すことができるものであれば、具体的な算出方法は特に限定されない。特に限定されるものではないが、マッチング率は、例えば、ステップS130で抽出された特徴点と、図6に示す特徴点FPとをマッチングさせた際の、各特徴点での偏差の和等、任意の指標を適用して算出される。また、自己位置推定部26は、最終的な自己位置の推定結果が、マッチング率の高い事前推定位置に偏るように推定を行う。例えば、二つの事前推定位置のマッチング率が等しい場合(1:1の比率)、自己位置は、二つの事前推定位置の中点に設定される。これに対して、一方の事前推定位置のマッチング率が高い場合、その比率に応じた分だけ、自己位置が中点よりも一方の事前推定位置に寄る。 Next, as shown in FIG. 15, the self-position estimation unit 26 estimates the self-position from the plurality of pre-estimated positions acquired in step S320 (step S330: estimation step). The self-position estimation unit 26 is set at an intermediate position between a plurality of pre-estimated positions. At this time, the self-position estimation unit 26 calculates the matching rate with the data that is the basis of the pre-estimated position for each pre-estimated position. The matching rate is a value indicating the degree to which the pre-estimated position matches the original data, and if the degree can be indicated, the specific calculation method is Not particularly limited. Although not particularly limited, the matching rate is, for example, the sum of the deviations at each feature point when the feature points extracted in step S130 and the feature point FP shown in FIG. 6 are matched. Calculated by applying any index. Further, the self-position estimation unit 26 estimates so that the final self-position estimation result is biased toward the pre-estimated position having a high matching rate. For example, if the matching ratios of the two pre-estimated positions are equal (1: 1 ratio), the self-position is set at the midpoint of the two pre-estimated positions. On the other hand, when the matching rate of one of the pre-estimated positions is high, the self-position is closer to the one of the pre-estimated positions than the midpoint by the amount corresponding to the ratio.

具体的に、図14(b)に示すように、事前推定位置BP1のデータDT1に対するマッチング率が90%であり、事前推定位置BP2のデータDT2に対するマッチング率が50%である。この場合、事前推定位置BP1のマッチング率が事前推定位置BP2のマッチング率よりも1.8倍高い。従って、推定される自己位置EPは、事前推定位置BP1と事前推定位置BP2との中点よりも、前記倍率の分だけ、事前推定位置BP1に近い位置に設定される。図14(c)に示すように、事前推定位置BP1のデータDT1に対するマッチング率が75%であり、事前推定位置BP2のデータDT2に対するマッチング率が70%である。この場合、事前推定位置BP1のマッチング率と事前推定位置BP2のマッチング率との間にほぼ差がない。従って、推定される自己位置EPは、若干事前推定位置BP1に寄るものの、事前推定位置BP1と事前推定位置BP2との中点とほぼ同じ位置に設定される。なお、マッチング率の比率をどのように自己位置の偏りに反映するかの具体的な演算方法は特に限定されず、マッチング率の高さを重さと見立てた重心を算出する等、任意の演算方法を採用してよい。以上により、図15に示す自己位置の推定の処理が完了する。 Specifically, as shown in FIG. 14B, the matching rate of the pre-estimated position BP1 with respect to the data DT1 is 90%, and the matching rate of the pre-estimated position BP2 with respect to the data DT2 is 50%. In this case, the matching rate of the pre-estimated position BP1 is 1.8 times higher than the matching rate of the pre-estimated position BP2. Therefore, the estimated self-position EP is set closer to the pre-estimated position BP1 by the magnification than the midpoint between the pre-estimated position BP1 and the pre-estimated position BP2. As shown in FIG. 14 (c), the matching rate of the pre-estimated position BP1 with respect to the data DT1 is 75%, and the matching rate of the pre-estimated position BP2 with respect to the data DT2 is 70%. In this case, there is almost no difference between the matching rate of the pre-estimated position BP1 and the matching rate of the pre-estimated position BP2. Therefore, the estimated self-position EP is set at substantially the same position as the midpoint between the pre-estimated position BP1 and the pre-estimated position BP2, although it is slightly closer to the pre-estimated position BP1. The specific calculation method for how the ratio of the matching rate is reflected in the bias of the self-position is not particularly limited, and an arbitrary calculation method such as calculating the center of gravity assuming that the high matching rate is the weight is not particularly limited. May be adopted. As a result, the process of estimating the self-position shown in FIG. 15 is completed.

なお、上述のように複数のデータを用いて自己位置の推定に対して、評価部31による評価が介在してもよい。例えば、通常の状態では自己位置推定部26は、一つのデータを用いて自己位置の推定を行い、推定精度が低下したときに、複数のデータを用いた自己位置推定を実行してよい。すなわち、評価部31は、一つのデータによる自己位置の推定精度と閾値とを比較する。そして、評価部31の評価が閾値を超えている場合は、当該自己位置を用いた走行支援が行われる。一方、評価部31による評価が閾値以下となった場合に、自己位置推定部26は、上述の複数の事前推定位置による自己位置の推定を実施する。なお、複数のデータを用いた自己位置の推定精度に対しても、評価のための閾値を設定してよい。これにより、複数のデータを用いて自己位置を推定しても推定精度が低いと評価された場合、オドメトリによる走行支援に切り替えてよい。 As described above, the evaluation unit 31 may intervene in the estimation of the self-position using a plurality of data. For example, in a normal state, the self-position estimation unit 26 may estimate the self-position using one data, and when the estimation accuracy is lowered, execute the self-position estimation using a plurality of data. That is, the evaluation unit 31 compares the estimation accuracy of the self-position based on one data with the threshold value. Then, when the evaluation of the evaluation unit 31 exceeds the threshold value, running support using the self-position is performed. On the other hand, when the evaluation by the evaluation unit 31 is equal to or less than the threshold value, the self-position estimation unit 26 estimates the self-position by the above-mentioned plurality of pre-estimated positions. It should be noted that a threshold value for evaluation may be set for the estimation accuracy of the self-position using a plurality of data. As a result, if it is evaluated that the estimation accuracy is low even if the self-position is estimated using a plurality of data, it may be switched to the running support by odometry.

次に、本実施形態に係る自己位置推定装置1、移動体50、自己位置推定方法、及び自己位置推定プログラムの作用・効果について説明する。 Next, the actions / effects of the self-position estimation device 1, the moving body 50, the self-position estimation method, and the self-position estimation program according to the present embodiment will be described.

自己位置推定装置1は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するためのものである。ここで、例えば、カメラ12は、データベースのデータが作成されたときの位置から離れた位置で画像を取得する場合がある。このような場合、自己位置の推定に用いるデータが、別の位置のデータに切り替わる。従って、自己位置推定部26が一つのデータだけで自己位置を推定した場合、推定する自己位置が急に変化する可能性がある。 The self-position estimation device 1 is for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. Here, for example, the camera 12 may acquire an image at a position away from the position when the data in the database was created. In such a case, the data used for estimating the self-position is switched to the data at another position. Therefore, when the self-position estimation unit 26 estimates the self-position with only one data, the estimated self-position may change suddenly.

例えば、図16(a)は、実際にフォークリフトに自己位置推定装置1を搭載して、自己位置を推定しながらフォークリフトが走行する走行経路RLを示す。走行経路の黒点はデータが作成されている位置を示す。なお、フォークリフトは、スタートポイントSPからゴールポイントGPまで走行する。まず、一つのデータのみを用いて自己位置を推定しながら、フォークリフトを走行経路RLに沿って走行させ、各位置において推定された自己位置を集計する実験を行った。このうち、仮想線で囲まれる区間の自己位置の推定結果を図16(b)に示す。図16(b)では、推定された自己位置によって描かれる自己位置推定軌跡ELが示されている。当該区間では、データDT1とデータDT2の中間位置CTにて、用いられれるデータが切り替わる。すなわち、中間位置CTよりもデータDT1側の領域では、当該データDT1に基づいた自己位置の推定が行われる。一方、中間位置CTよりもデータDT2側の領域では、当該データDT1に基づいた自己位置の推定が行われる。また、中間位置CT付近では、いずれのデータDT1,DT2からも距離が離れているため、推定精度も低下する。その結果、中間位置CTでは、用いられるデータが切り替わることによって、急に自己位置の推定結果が変化する。これにより、自己位置推定軌跡ELが切れてしまい、不連続になる。 For example, FIG. 16A shows a travel path RL in which a self-position estimation device 1 is actually mounted on a forklift and the forklift travels while estimating the self-position. The black dots on the travel route indicate the position where the data is created. The forklift travels from the start point SP to the goal point GP. First, an experiment was conducted in which the forklift was run along the travel path RL while estimating the self-position using only one data, and the estimated self-position at each position was totaled. Of these, FIG. 16B shows the estimation result of the self-position of the section surrounded by the virtual line. In FIG. 16B, the self-position estimation locus EL drawn by the estimated self-position is shown. In the section, the data used is switched at the intermediate position CT between the data DT1 and the data DT2. That is, in the region on the data DT1 side of the intermediate position CT, the self-position is estimated based on the data DT1. On the other hand, in the region on the data DT2 side of the intermediate position CT, the self-position is estimated based on the data DT1. Further, in the vicinity of the intermediate position CT, since the distance is far from any of the data DT1 and DT2, the estimation accuracy is also lowered. As a result, in the intermediate position CT, the estimation result of the self-position suddenly changes due to the switching of the data used. As a result, the self-position estimation locus EL is cut off and becomes discontinuous.

これに対して、自己位置推定部26は、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体50の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。これにより、自己位置推定部26は、一つのデータのみならず、複数のデータを用いて自己位置を推定することで、データの切り替えなどによって推定結果が急に変化することを抑制できる。そのため、自己位置の推定結果の連続性を向上し、適切な移動体の走行支援を行うことができる。 On the other hand, the self-position estimation unit 26 acquires a plurality of pre-estimated positions of the moving body 50 based on a plurality of data corresponding to a plurality of position information in the database, and self-positions from the plurality of pre-estimated positions. To estimate. As a result, the self-position estimation unit 26 estimates the self-position using not only one data but also a plurality of data, so that the estimation result can be suppressed from suddenly changing due to data switching or the like. Therefore, it is possible to improve the continuity of the estimation result of the self-position and to support the running of an appropriate moving object.

最寄りの二つのデータを用いて自己位置の推定を行う場合について、フォークリフトが図16(a)に示す走行経路RLを走行しながら、自己位置の推定結果を集計する実験を行った。このうち、仮想線で囲まれる区間の自己位置の推定結果を図16(c)に示す。図16(c)では、中間位置CTよりもデータDT1側の領域及びデータDT2側の領域の両方において、データDT1及びデータDT2に基づいた自己位置の推定が行われる。すなわち、フォークリフトがデータDT1の位置からデータDT2の位置へ走行するまでに、自己位置推定部26は、途中でデータが切り替わることなく、データDT1,DT2を用いて自己位置の推定を行うことができる。また、二つのデータDT1,DT2を用いることで、一つのデータの場合よりも推定精度を高くすることができる。従って、中間位置CTにおいても、自己位置推定軌跡ELが途切れることなく、連続した軌跡が描かれている。ここで、フォークリフトがDT2から先に進むと、データDT1に変えて、次のデータが用いられる。すなわち、データの切り替えが発生するが、データDT2の近傍の位置では、データDT2が近い位置に存在してるために、高い精度で自己位置を推定できる。そのため、データの切り替えが発生しても、自己位置の推定結果は大きく変動しない。以上より、ロバスト性を向上すると共に、自己位置の推定結果の連続性を向上できることが分かる。なお、図16(a)の走行経路RLを走行するときに一つのデータを用いて自己位置推定したときの推定精度の評価値は28mmであるのに対し、二つのデータを用いた場合は21mmまで低減することができた。なお、評価値とは真値と推定結果を比較した際の誤差のばらつきである。 In the case of estimating the self-position using the two nearest data, an experiment was conducted in which the estimation results of the self-position were aggregated while the forklift was traveling on the travel path RL shown in FIG. 16 (a). Of these, FIG. 16 (c) shows the estimation result of the self-position of the section surrounded by the virtual line. In FIG. 16 (c), the self-position is estimated based on the data DT1 and the data DT2 in both the area on the data DT1 side and the area on the data DT2 side of the intermediate position CT. That is, by the time the forklift travels from the position of the data DT1 to the position of the data DT2, the self-position estimation unit 26 can estimate the self-position using the data DT1 and DT2 without switching the data in the middle. .. Further, by using two data DT1 and DT2, the estimation accuracy can be improved as compared with the case of one data. Therefore, even in the intermediate position CT, a continuous locus is drawn without interruption of the self-position estimation locus EL. Here, when the forklift advances from DT2, the next data is used instead of the data DT1. That is, data switching occurs, but at a position near the data DT2, since the data DT2 exists at a close position, the self-position can be estimated with high accuracy. Therefore, even if data switching occurs, the estimation result of the self-position does not change significantly. From the above, it can be seen that the robustness can be improved and the continuity of the self-position estimation result can be improved. The evaluation value of the estimation accuracy when self-position estimation is performed using one data when traveling on the travel path RL in FIG. 16A is 28 mm, whereas the evaluation value of the estimation accuracy is 21 mm when two data are used. Was able to be reduced to. The evaluation value is a variation in error when the true value and the estimation result are compared.

自己位置推定部26は、前回推定した自己位置に対して、少なくとも二つの最寄りのデータを選び、選択した少なくとも二つのデータに基づいて自己位置を推定してよい。これにより、自己位置推定部26は、移動体50の近くに存在するデータに基づいて自己位置の推定を行うことができるため、取得した画像の特徴とデータとをマッチングさせやすく、推定精度を向上することができる。 The self-position estimation unit 26 may select at least two nearest data with respect to the previously estimated self-position and estimate the self-position based on at least two selected data. As a result, the self-position estimation unit 26 can estimate the self-position based on the data existing near the moving body 50, so that it is easy to match the features of the acquired image with the data and the estimation accuracy is improved. can do.

自己位置推定装置1は、自己位置の推定精度を評価する評価部31を更に備え、自己位置推定部26は、評価部31による評価が閾値以下となった場合に、複数の事前推定位置による自己位置の推定を実施してよい。これにより、自己位置推定部26は、複数のデータを用いることによる自己位置の推定を必要なタイミングに絞って実施することができるため、演算の負荷を低減することができる。 The self-position estimation device 1 further includes an evaluation unit 31 for evaluating the estimation accuracy of the self-position, and the self-position estimation unit 26 is self-determined by a plurality of pre-estimated positions when the evaluation by the evaluation unit 31 is equal to or less than the threshold value. Position estimation may be performed. As a result, the self-position estimation unit 26 can perform self-position estimation by using a plurality of data only at necessary timings, so that the calculation load can be reduced.

自己位置推定部26は、事前推定位置の元になったデータとのマッチング率を各々の事前推定位置について算出し、最終的な自己位置の推定結果が、マッチング率の高い事前推定位置に偏るように推定を行ってよい。これにより、自己位置推定部26は、マッチング率の高いデータを重み付けをした状態で自己位置の推定を行うことができるため、推定精度を向上することができる。 The self-position estimation unit 26 calculates the matching rate with the data that is the basis of the pre-estimated position for each pre-estimated position, so that the final self-position estimation result is biased to the pre-estimated position with a high matching rate. May make an estimate. As a result, the self-position estimation unit 26 can estimate the self-position in a state where the data having a high matching rate is weighted, so that the estimation accuracy can be improved.

本実施形態に係る移動体50は、上述の自己位置推定装置1を備える。 The moving body 50 according to the present embodiment includes the above-mentioned self-position estimation device 1.

本実施形態に係る自己位置推定方法は、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定方法であって、画像を取得する画像取得ステップと、画像取得ステップで取得された画像から特徴を抽出する抽出ステップと、抽出ステップで抽出された特徴と、データベースとをマッチングさせることで移動体の自己位置を推定する推定ステップと、を備え、推定ステップでは、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から前記自己位置を推定する。 In the self-position estimation method according to the present embodiment, the self-position for estimating the self-position of the moving body by matching the feature extracted from the acquired image with the database in which the position information and the feature are associated in advance. It is an estimation method, and it is a moving object by matching the image acquisition step of acquiring an image, the extraction step of extracting features from the image acquired in the image acquisition step, the features extracted in the extraction step, and the database. In the estimation step, a plurality of pre-estimated positions of a moving body are acquired based on a plurality of data corresponding to a plurality of position information in a database, and a plurality of pre-estimations are performed. The self-position is estimated from the position.

本発明に係る自己位置推定プログラムは、取得された画像から抽出された特徴と、予め位置情報と特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定プログラムであって、画像を取得する画像取得ステップと、画像取得ステップで取得された画像から特徴を抽出する抽出ステップと、抽出ステップで抽出された特徴と、データベースとをマッチングさせることで移動体の自己位置を推定する推定ステップと、をコンピュータシステムに実行させ、推定ステップでは、データベースのうちの複数の位置情報に対応する複数のデータに基づいて、移動体の事前推定位置を複数取得し、複数の事前推定位置から自己位置を推定する。 The self-position estimation program according to the present invention is a self-position estimation for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance. It is a program, and it is a moving body by matching the image acquisition step to acquire the image, the extraction step to extract the features from the image acquired in the image acquisition step, the features extracted in the extraction step, and the database. An estimation step for estimating a self-position is performed by a computer system, and in the estimation step, a plurality of pre-estimated positions of a moving object are acquired based on a plurality of data corresponding to a plurality of position information in a database, and a plurality of pre-estimated positions are acquired. Estimate the self-position from the pre-estimated position of.

これらの移動体50、自己位置推定方法、及び自己位置推定プログラムによれば、上述の自己位置推定装置と同様な効果を得ることができる。 According to the moving body 50, the self-position estimation method, and the self-position estimation program, the same effect as the above-mentioned self-position estimation device can be obtained.

本発明は、上述の実施形態に限定されるものではない。 The present invention is not limited to the above-described embodiment.

自己位置推定装置1は、上述の実施形態に加えて、更に追加の処理を行ってよい。例えば、評価部31は、データベースに登録されている位置情報に対応する位置からどの程度離れたら推定精度が低下するかを評価してよい。これにより、推定精度が下がりやすいエリアについては、データベースに登録される位置情報を増やすことなどが可能になる。当該処理は、特に、図4に示すデータベース作成の時に行われてよい。これにより、推定精度が下がりやすいエリア(例えば、たくさんの物が近くに存在するような環境)については、重要ポイントを多く設定することで、データベースを多く設定することができる。これにより、推定精度を向上できる。また、推定精度が下がりにくいエリア(例えば、開けた環境)については、重要ポイントを少なめに設定することができる。これにより、データ容量を低減できる。なお、当該処理は、移動体50の走行中に行われてもよく、必要に応じて、重要ポイントを後から増やして、データベースを新たに登録してよい。 The self-position estimation device 1 may perform additional processing in addition to the above-described embodiment. For example, the evaluation unit 31 may evaluate how far the estimation accuracy is from the position corresponding to the position information registered in the database. This makes it possible to increase the location information registered in the database for areas where the estimation accuracy tends to decrease. This process may be performed particularly at the time of creating the database shown in FIG. As a result, in an area where the estimation accuracy tends to decrease (for example, an environment where many objects exist nearby), a large number of databases can be set by setting many important points. As a result, the estimation accuracy can be improved. Further, in an area where the estimation accuracy is difficult to decrease (for example, an open environment), it is possible to set a small number of important points. As a result, the data capacity can be reduced. The process may be performed while the mobile body 50 is traveling, and if necessary, the important points may be increased later and the database may be newly registered.

また、評価部31は、移動体50の走行範囲の中で、推定精度が高いと評価した位置を、移動体50の位置合わせ用の位置としてよい。例えば、移動体50が自己位置を見失った場合、当該移動体50は、全てのデータベースに対し自己位置推定を行い、最も推定精度が高いと評価(例えば最もマッチング成功数が高い)された結果を自己位置と把握したうえで、走行に復帰することができる。 Further, the evaluation unit 31 may set a position evaluated as having high estimation accuracy in the traveling range of the moving body 50 as a position for positioning the moving body 50. For example, when the moving body 50 loses its self-position, the moving body 50 performs self-position estimation for all databases and evaluates the estimation accuracy as the highest (for example, the highest number of successful matches). It is possible to return to running after grasping the self-position.

また、評価部31は、移動体50の走行範囲の各位置における評価結果に基づいて、データベース自体の評価を行ってよい。例えば、データベースに登録された位置情報に対応する位置に近付いた場合であっても推定精度の評価が良くならない場合、データベース自体が作成に失敗している可能性がある。従って、評価部31がデータベース自体の評価を行うことで、当該状況に対する対策をとることが可能になる。例えば、管理者に警告を出したり、データベースを作成しなおすなどの処理が行われてよい。なお、データベース自体の評価は、事前のティーチング時に収集した画像を用いて行われてもよく、走行中に行われてもよい。 Further, the evaluation unit 31 may evaluate the database itself based on the evaluation results at each position in the traveling range of the moving body 50. For example, if the evaluation of the estimation accuracy does not improve even when the position corresponding to the position information registered in the database is approached, the database itself may have failed to be created. Therefore, when the evaluation unit 31 evaluates the database itself, it becomes possible to take measures against the situation. For example, a process such as issuing a warning to the administrator or recreating the database may be performed. The evaluation of the database itself may be performed using the images collected at the time of prior teaching, or may be performed during traveling.

また、評価部31は、移動体50の走行範囲の各位置における評価結果に基づいて、移動体50の経路からの乖離度合の評価を行ってよい。例えば、データベースに登録された位置情報に対応する位置に近付いた場合であっても推定精度の評価が良くならない場合、移動体50が経路自体から反れてしまっている可能性がある。従って、評価部31が移動体の経路からの乖離度合の評価を行うことで、当該状況に対する対策をとることが可能になる。この場合、一旦、移動体50を停止させ、停止した状態で自己位置推定を繰り返しおこなう。自己位置推定装置1は、繰り返し計算結果のばらつきが小さい場合は、位置推定精度が高いとみなし、オドメトリ補正を行う。自己位置推定装置1は、繰り返し計算結果のばらつきが大きい場合は、補正が困難であるとみなし、管理者に警告を出す。 Further, the evaluation unit 31 may evaluate the degree of deviation from the route of the moving body 50 based on the evaluation result at each position of the traveling range of the moving body 50. For example, if the evaluation of the estimation accuracy does not improve even when the position corresponding to the position information registered in the database is approached, the moving body 50 may be warped from the route itself. Therefore, the evaluation unit 31 evaluates the degree of deviation from the path of the moving body, so that it is possible to take measures against the situation. In this case, the moving body 50 is temporarily stopped, and the self-position estimation is repeated in the stopped state. When the variation in the iterative calculation result is small, the self-position estimation device 1 considers that the position estimation accuracy is high and performs odometry correction. When the variation of the iterative calculation result is large, the self-position estimation device 1 considers that the correction is difficult and issues a warning to the administrator.

上述の実施形態では、移動体50に自己位置推定装置の構成要素が全て含まれていた。これに代えて、管理部2が自己位置推定装置の一部の機能を有してもよい。 In the above embodiment, the moving body 50 includes all the components of the self-position estimation device. Instead of this, the management unit 2 may have some functions of the self-position estimation device.

1…自己位置推定装置、12…カメラ(画像取得部)、26…自己位置推定部(抽出部、推定部)、31…評価部、50…移動体。 1 ... Self-position estimation device, 12 ... Camera (image acquisition unit), 26 ... Self-position estimation unit (extraction unit, estimation unit), 31 ... Evaluation unit, 50 ... Moving object.

Claims (7)

取得された画像から抽出された特徴と、予め位置情報と前記特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定装置であって、
前記画像を取得する画像取得部と、
前記画像取得部で取得された前記画像から前記特徴を抽出する抽出部と、
前記抽出部で抽出された前記特徴と、前記データベースとをマッチングさせることで前記移動体の自己位置を推定する推定部と、を備え、
前記推定部は、
前記データベースのうちの複数の前記位置情報に対応する複数のデータに基づいて、前記移動体の事前推定位置を複数取得し、
複数の前記事前推定位置から前記自己位置を推定する、自己位置推定装置。
It is a self-position estimation device for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance.
An image acquisition unit that acquires the image and
An extraction unit that extracts the features from the image acquired by the image acquisition unit, and an extraction unit.
It is provided with an estimation unit that estimates the self-position of the moving body by matching the feature extracted by the extraction unit with the database.
The estimation unit is
A plurality of pre-estimated positions of the moving body are acquired based on a plurality of data corresponding to the plurality of the position information in the database.
A self-position estimation device that estimates the self-position from a plurality of the pre-estimated positions.
前記推定部は、前回推定した自己位置に対して、少なくとも二つの最寄りのデータを選び、選択した少なくとも二つのデータに基づいて前記自己位置を推定する、請求項1に記載の自己位置推定装置。 The self-position estimation device according to claim 1, wherein the estimation unit selects at least two nearest data with respect to the previously estimated self-position and estimates the self-position based on at least two selected data. 前記自己位置の推定精度を評価する評価部を更に備え、
前記推定部は、前記評価部による評価が閾値以下となった場合に、複数の前記事前推定位置による前記自己位置の推定を実施する、請求項1又は2に記載の自己位置推定装置。
Further equipped with an evaluation unit for evaluating the estimation accuracy of the self-position,
The self-position estimation device according to claim 1 or 2, wherein the estimation unit estimates the self-position by a plurality of the pre-estimated positions when the evaluation by the evaluation unit becomes equal to or less than a threshold value.
前記推定部は、
前記事前推定位置の元になった前記データとのマッチング率を各々の前記事前推定位置について算出し、
最終的な前記自己位置の推定結果が、前記マッチング率の高い前記事前推定位置に偏るように推定を行う、請求項1~3の何れか一項に記載の自己位置推定装置。
The estimation unit is
The matching rate with the data that is the basis of the pre-estimated position is calculated for each of the pre-estimated positions.
The self-position estimation device according to any one of claims 1 to 3, wherein the final self-position estimation result is estimated so as to be biased toward the pre-estimated position having a high matching rate.
請求項1~4の何れか一項に記載の自己位置推定装置を備える移動体。 A mobile body including the self-position estimation device according to any one of claims 1 to 4. 取得された画像から抽出された特徴と、予め位置情報と前記特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定方法であって、
前記画像を取得する画像取得ステップと、
前記画像取得ステップで取得された前記画像から前記特徴を抽出する抽出ステップと、
前記抽出ステップで抽出された前記特徴と、前記データベースとをマッチングさせることで前記移動体の自己位置を推定する推定ステップと、を備え、
前記推定ステップでは、
前記データベースのうちの複数の前記位置情報に対応する複数のデータに基づいて、前記移動体の事前推定位置を複数取得し、
複数の前記事前推定位置から前記自己位置を推定する、自己位置推定方法。
It is a self-position estimation method for estimating the self-position of a moving body by matching a feature extracted from an acquired image with a database in which position information and the feature are associated in advance.
The image acquisition step for acquiring the image and
An extraction step for extracting the feature from the image acquired in the image acquisition step, and an extraction step.
It comprises an estimation step of estimating the self-position of the moving body by matching the feature extracted in the extraction step with the database.
In the estimation step,
A plurality of pre-estimated positions of the moving body are acquired based on a plurality of data corresponding to the plurality of the position information in the database.
A self-position estimation method for estimating the self-position from a plurality of the pre-estimated positions.
取得された画像から抽出された特徴と、予め位置情報と前記特徴とを関連付けたデータベースとをマッチングさせることで移動体の自己位置を推定するための自己位置推定プログラムであって、
前記画像を取得する画像取得ステップと、
前記画像取得ステップで取得された前記画像から前記特徴を抽出する抽出ステップと、
前記抽出ステップで抽出された前記特徴と、前記データベースとをマッチングさせることで前記移動体の自己位置を推定する推定ステップと、をコンピュータシステムに実行させ、
前記推定ステップでは、
前記データベースのうちの複数の前記位置情報に対応する複数のデータに基づいて、前記移動体の事前推定位置を複数取得し、
複数の前記事前推定位置から前記自己位置を推定する、自己位置推定プログラム。
It is a self-position estimation program for estimating the self-position of a moving object by matching the features extracted from the acquired image with the database in which the position information and the features are associated in advance.
The image acquisition step for acquiring the image and
An extraction step for extracting the feature from the image acquired in the image acquisition step, and an extraction step.
The computer system is made to execute the estimation step of estimating the self-position of the moving object by matching the feature extracted in the extraction step with the database.
In the estimation step,
A plurality of pre-estimated positions of the moving body are acquired based on a plurality of data corresponding to the plurality of the position information in the database.
A self-position estimation program that estimates the self-position from a plurality of the pre-estimated positions.
JP2020208504A 2020-12-16 2020-12-16 Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program Pending JP2022095273A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020208504A JP2022095273A (en) 2020-12-16 2020-12-16 Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020208504A JP2022095273A (en) 2020-12-16 2020-12-16 Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program

Publications (1)

Publication Number Publication Date
JP2022095273A true JP2022095273A (en) 2022-06-28

Family

ID=82163004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020208504A Pending JP2022095273A (en) 2020-12-16 2020-12-16 Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program

Country Status (1)

Country Link
JP (1) JP2022095273A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014203144A (en) * 2013-04-02 2014-10-27 パナソニック株式会社 Autonomous mobile apparatus
JP2015093532A (en) * 2013-11-11 2015-05-18 株式会社明電舎 Self-position estimation device for train
JP2016024598A (en) * 2014-07-18 2016-02-08 パナソニックIpマネジメント株式会社 Control method of autonomous mobile apparatus
JP2016110576A (en) * 2014-12-10 2016-06-20 株式会社豊田中央研究所 Self position estimation device and mobile body with self position estimation device
JP2017083230A (en) * 2015-10-26 2017-05-18 トヨタ自動車株式会社 Self position estimation method
JP2020017173A (en) * 2018-07-27 2020-01-30 株式会社ダイヘン Moving entity
JP2020057307A (en) * 2018-10-04 2020-04-09 日本電産株式会社 System and method for processing map data for use in self-position estimation, and moving entity and control system for the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014203144A (en) * 2013-04-02 2014-10-27 パナソニック株式会社 Autonomous mobile apparatus
JP2015093532A (en) * 2013-11-11 2015-05-18 株式会社明電舎 Self-position estimation device for train
JP2016024598A (en) * 2014-07-18 2016-02-08 パナソニックIpマネジメント株式会社 Control method of autonomous mobile apparatus
JP2016110576A (en) * 2014-12-10 2016-06-20 株式会社豊田中央研究所 Self position estimation device and mobile body with self position estimation device
JP2017083230A (en) * 2015-10-26 2017-05-18 トヨタ自動車株式会社 Self position estimation method
JP2020017173A (en) * 2018-07-27 2020-01-30 株式会社ダイヘン Moving entity
JP2020057307A (en) * 2018-10-04 2020-04-09 日本電産株式会社 System and method for processing map data for use in self-position estimation, and moving entity and control system for the same

Similar Documents

Publication Publication Date Title
US11667036B2 (en) Workpiece picking device and workpiece picking method
US10043080B2 (en) Self-position calculating apparatus and self-position calculating method
KR20170088228A (en) Map building system and its method based on multi-robot localization
CN110789529B (en) Vehicle control method, device and computer-readable storage medium
US20180307241A1 (en) Localization with Negative Mapping
US10026196B2 (en) Apparatuses and methods for self-position calculation of a vehicle using a light projector and a camera
WO2020189154A1 (en) Item detection device, item detection method, and industrial vehicle
WO2023207803A1 (en) Multi-agent navigation control method and device based on gene regulatory network, and medium
JP2020118586A (en) Moving vehicle
JP2730457B2 (en) Three-dimensional position and posture recognition method based on vision and three-dimensional position and posture recognition device based on vision
CN110816522A (en) Vehicle attitude control method, apparatus, and computer-readable storage medium
CN110928311A (en) Indoor mobile robot navigation method based on linear features under panoramic camera
JP2022095273A (en) Self-position estimating device, mobile body, self-position estimating method, and self-position estimating program
JPS6317735A (en) Takeout device
WO2021132477A1 (en) Own-position estimating device, moving body, own-position estimating method, and own-position estimating program
CN110426038B (en) Robot navigation control method and device, computing equipment and computer storage medium
JP7285517B2 (en) Self-position estimation device, mobile object, self-position estimation method, and self-position estimation program
JP7468396B2 (en) Self-location estimation device, moving body, self-location estimation method, and self-location estimation program
CN113932825A (en) Robot navigation path width acquisition system, method, robot and storage medium
US20210078176A1 (en) Robot controller
EP4071574A1 (en) Self-position estimation device, moving body, self-position estimation method, and self-position estimation program
CN115562296B (en) Robot scheduling method, system and device based on hybrid control strategy
JP7300410B2 (en) Control device, moving body, movement control system, control method and program
JP7411208B2 (en) Map creation method, map creation device, location estimation method, and location estimation device
WO2020203043A1 (en) Drawing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240326