JP2017207942A - Image processing apparatus, self position estimation method and program - Google Patents

Image processing apparatus, self position estimation method and program Download PDF

Info

Publication number
JP2017207942A
JP2017207942A JP2016100158A JP2016100158A JP2017207942A JP 2017207942 A JP2017207942 A JP 2017207942A JP 2016100158 A JP2016100158 A JP 2016100158A JP 2016100158 A JP2016100158 A JP 2016100158A JP 2017207942 A JP2017207942 A JP 2017207942A
Authority
JP
Japan
Prior art keywords
self
mark
image
feature point
unit
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
JP2016100158A
Other languages
Japanese (ja)
Inventor
康子 橋本
yasuko Hashimoto
康子 橋本
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2016100158A priority Critical patent/JP2017207942A/en
Publication of JP2017207942A publication Critical patent/JP2017207942A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve an estimation accuracy of a self position.SOLUTION: An image processing apparatus includes: a feature point tracking part configured to track a feature point extracted from an image of a photographed subject; a mark recognition part configured to recognize a mark previously arranged in the image; and a self position estimation part configured to estimate a first self position according to a tracking result of the feature point, estimate a second self position according to the mark, and adopt one of the first self position and the second self position as a self position according to predetermined conditions.SELECTED DRAWING: Figure 2

Description

本発明は、画像処理装置、自己位置推定方法、及び、プログラムに関する。   The present invention relates to an image processing device, a self-position estimation method, and a program.

自動車及びロボット等の移動体に自立運転させるための技術として、未知の環境下で自立的に地図構築及び自己位置の推定を行う技術(例えば、SLAM:Simultaneous Localization And Mapping)が知られている。   As a technique for allowing a mobile body such as an automobile and a robot to autonomously operate, a technique for autonomously building a map and estimating a self-position in an unknown environment (for example, SLAM: Simulaneous Localization And Mapping) is known.

上述の技術では、カメラで撮影された時間の異なる時系列の複数の画像等から複数の特徴点を抽出し、当該複数の特徴点を追跡したベクトルによって(例えば、オプティカルフロー)、自己位置を推定する。しかしながら、時系列で特徴点を追跡すると、追跡誤差が蓄積されて、自己位置の推定誤差が大きくなる。このような場合、RFID及びランドマークによって自己位置を推定する技術が知られている。   In the above-described technique, a plurality of feature points are extracted from a plurality of time-series images taken with a camera at different times, and the self-position is estimated by a vector obtained by tracking the plurality of feature points (for example, optical flow). To do. However, tracking feature points in time series accumulates tracking errors and increases self-position estimation errors. In such a case, a technique for estimating the self-position using an RFID and a landmark is known.

しかしながら、上述の技術では、カメラがランドマークに対して相対移動している場合、ランドマークを撮像した画像によって自己位置を推定すると、モーションブラー等の影響によって誤差が生じ、自己位置の推定精度が低いといった課題がある。   However, in the above-described technique, when the camera is moving relative to the landmark, if the self-position is estimated from an image obtained by capturing the landmark, an error occurs due to the effect of motion blur and the self-position estimation accuracy is reduced. There is a problem of low.

本発明は、上記に鑑みてなされたものであって、自己位置の推定精度を向上させることを目的とする。   The present invention has been made in view of the above, and an object thereof is to improve self-position estimation accuracy.

上述した課題を解決し、目的を達成するために、本発明は、画像処理装置は、撮影された被写体の画像から抽出された前記被写体の特徴点を追跡する特徴点追跡部と、前記画像内の予め設けられたマークを認識するマーク認識部と、前記特徴点の追跡結果に基づいて第1自己位置を推定し、前記マークに基づいて第2自己位置を推定し、予め定められた条件に基づいて、前記第1自己位置及び前記第2自己位置のいずれか一方を自己位置として採用する自己位置推定部と、を備える。   In order to solve the above-described problems and achieve the object, the present invention provides an image processing apparatus, a feature point tracking unit that tracks a feature point of the subject extracted from an image of the photographed subject, A mark recognizing unit for recognizing a predetermined mark, a first self-position is estimated based on the tracking result of the feature point, a second self-position is estimated based on the mark, and a predetermined condition is satisfied. And a self-position estimating unit that employs one of the first self-position and the second self-position as a self-position.

本発明は、自己位置の推定精度を向上できる。   The present invention can improve the self-position estimation accuracy.

図1は、実施形態の画像処理装置を有する画像処理システムの全体構成図である。FIG. 1 is an overall configuration diagram of an image processing system having an image processing apparatus according to an embodiment. 図2は、画像処理装置の機能を示すブロック図である。FIG. 2 is a block diagram illustrating functions of the image processing apparatus. 図3は、フレーム画像である画像の一例を示す図である。FIG. 3 is a diagram illustrating an example of an image that is a frame image. 図4は、(n−1)番目のフレーム画像である画像の一例を示す図の一部である。FIG. 4 is a part of a diagram illustrating an example of an image that is the (n−1) -th frame image. 図5は、n番目のフレーム画像である画像の一例を示す図の一部である。FIG. 5 is a part of a diagram illustrating an example of an image that is an nth frame image. 図6は、(n−1)番目の画像とn番目の画像との間での特徴点の追跡を説明する図である。FIG. 6 is a diagram illustrating the tracking of feature points between the (n−1) th image and the nth image. 図7は、マークの認識で扱う座標系とカメラの位置推定について説明する図である。FIG. 7 is a diagram for explaining the coordinate system handled in mark recognition and camera position estimation. 図8は、ピンホールカメラによる座標系とカメラの位置推定について説明する図である。FIG. 8 is a diagram for explaining the coordinate system and camera position estimation by the pinhole camera. 図9は、マークによるカメラの位置の推定における左右方向(または水平方向)の誤差を説明する図である。FIG. 9 is a diagram for explaining an error in the left-right direction (or horizontal direction) in the estimation of the camera position by the mark. 図10は、マークによるカメラの位置の推定における上下方向(または鉛直方向)の誤差を説明する図である。FIG. 10 is a diagram for explaining an error in the vertical direction (or vertical direction) in the estimation of the camera position by the mark. 図11は、画像処理装置による自己位置推定処理のフローチャートである。FIG. 11 is a flowchart of self-position estimation processing by the image processing apparatus. 図12は、別の自己位置の推定を説明する図である。FIG. 12 is a diagram illustrating another self-position estimation. 図13は、飛行可能な移動体の自己位置の推定を説明するための上方から見た平面図である。FIG. 13 is a plan view seen from above for explaining the estimation of the self-position of a movable object that can fly. 図14は、飛行可能な移動体の自己位置の推定を説明するための側方から見た図である。FIG. 14 is a side view for explaining the estimation of the self-position of a movable object that can fly. 図15は、本実施形態に係る画像処理装置のハードウェア構成を模式的に示すブロック図である。FIG. 15 is a block diagram schematically illustrating a hardware configuration of the image processing apparatus according to the present embodiment.

以下の例示的な実施形態や変形例には、同様の構成要素が含まれている。よって、以下では、同様の構成要素には共通の符号が付されるとともに、重複する説明が部分的に省略される。実施形態や変形例に含まれる部分は、他の実施形態や変形例の対応する部分と置き換えて構成されることができる。また、実施形態や変形例に含まれる部分の構成や位置等は、特に言及しない限りは、他の実施形態や変形例と同様である。   Similar components are included in the following exemplary embodiments and modifications. Therefore, below, the same code | symbol is attached | subjected to the same component, and the overlapping description is partially abbreviate | omitted. Portions included in the embodiments and modifications can be configured by replacing corresponding portions in other embodiments and modifications. In addition, the configuration, position, and the like of the parts included in the embodiments and modifications are the same as those in the other embodiments and modifications unless otherwise specified.

<実施形態>
図1は、実施形態の画像処理装置16を有する画像処理システム10の全体構成図である。図1に示すように、画像処理システム10は、マークMKと、カメラ14と、画像処理装置16とを備える。
<Embodiment>
FIG. 1 is an overall configuration diagram of an image processing system 10 having an image processing apparatus 16 according to an embodiment. As shown in FIG. 1, the image processing system 10 includes a mark MK, a camera 14, and an image processing device 16.

マークMKは、ランドマークとも呼ばれ、駐車場等の壁または柱等の建造物90に予め設けられた図形等である。マークMKは、カメラ14によって撮影可能な位置に設けられている。マークMKは、画像処理装置16によって認識が容易な標識、文字及び数字等であってもよい。   The mark MK is also called a landmark, and is a figure or the like provided in advance on a building 90 such as a wall or a pillar of a parking lot or the like. The mark MK is provided at a position where it can be photographed by the camera 14. The mark MK may be a sign, a character, a number, or the like that can be easily recognized by the image processing device 16.

カメラ14は、例えば、自動車等の移動体92に設けられている。移動体92は、飛行機、オートバイク、掃除機等の電気製品、農機具等であってもよい。カメラ14は、矢印で示す移動体92の内部の前方、例えば、バックミラー等に設けられている。カメラ14は、移動体92の前方の被写体を撮影して、画像(例えば、フレーム画像)を生成する。カメラ14は、移動体92の後方に設けられていてもよい。この場合、カメラ14は、移動体92の後方の被写体を撮影して画像を生成する。   The camera 14 is provided on a moving body 92 such as an automobile. The moving body 92 may be an airplane, a motorcycle, an electric product such as a vacuum cleaner, an agricultural tool, or the like. The camera 14 is provided in front of the moving body 92 indicated by an arrow, for example, a rearview mirror. The camera 14 captures a subject in front of the moving body 92 and generates an image (for example, a frame image). The camera 14 may be provided behind the moving body 92. In this case, the camera 14 captures a subject behind the moving body 92 and generates an image.

画像処理装置16は、カメラ14とともに移動体92に設けられていてもよく、移動体92と異なる場所に設けられていてもよい。画像処理装置16は、カメラ14と情報を送受信可能に接続されている。画像処理装置16は、カメラ14から画像を受信する。画像処理装置16は、受信した画像から建造物90等の特徴点PTを抽出するとともに、マークMKを認識して、自己の位置である自己位置SPを推定する。特徴点PTは、例えば、画像内に含まれる建造物90等の被写体の角等のように際立って認識される点である。   The image processing device 16 may be provided in the moving body 92 together with the camera 14, or may be provided in a place different from the moving body 92. The image processing device 16 is connected to the camera 14 so that information can be transmitted and received. The image processing device 16 receives an image from the camera 14. The image processing device 16 extracts the feature point PT of the building 90 or the like from the received image, recognizes the mark MK, and estimates the self position SP that is the self position. The feature point PT is a point that is conspicuously recognized, such as a corner of a subject such as a building 90 included in the image.

図2は、画像処理装置16の機能を示すブロック図である。図2に示すように、画像処理装置16は、画像取得部20と、フレームメモリ22と、画像補正部24と、画像メモリ26と、特徴点抽出部28と、特徴点格納メモリ30と、特徴点追跡部32と、追跡結果格納メモリ34と、マーク認識部36と、マーク情報格納メモリ38と、マーク認識結果格納メモリ40と、自己位置推定部42とを備える。画像取得部20、フレームメモリ22、画像補正部24、画像メモリ26、特徴点抽出部28、特徴点格納メモリ30、特徴点追跡部32、追跡結果格納メモリ34、マーク認識部36、マーク情報格納メモリ38、マーク認識結果格納メモリ40、自己位置推定部42は、ソフトウェアで構成してもよく、ハードウェアで構成してもよく、一部をソフトウェアで構成して残りをハードウェアで構成してもよい。   FIG. 2 is a block diagram illustrating functions of the image processing device 16. As shown in FIG. 2, the image processing device 16 includes an image acquisition unit 20, a frame memory 22, an image correction unit 24, an image memory 26, a feature point extraction unit 28, a feature point storage memory 30, and a feature. A point tracking unit 32, a tracking result storage memory 34, a mark recognition unit 36, a mark information storage memory 38, a mark recognition result storage memory 40, and a self-position estimation unit 42 are provided. Image acquisition unit 20, frame memory 22, image correction unit 24, image memory 26, feature point extraction unit 28, feature point storage memory 30, feature point tracking unit 32, tracking result storage memory 34, mark recognition unit 36, mark information storage The memory 38, the mark recognition result storage memory 40, and the self-position estimation unit 42 may be configured by software, may be configured by hardware, a part is configured by software, and the rest is configured by hardware. Also good.

画像取得部20は、カメラ14と接続されている。画像取得部20は、カメラ14によって撮影されたフレーム画像等の画像IGを取得する。画像取得部20は、画像IGをフレームメモリ22に格納する。画像取得部20は、フレームメモリ22に格納した画像IGに関する情報(例えば、格納した画像IGのライン数)等を画像補正部24へ出力する。   The image acquisition unit 20 is connected to the camera 14. The image acquisition unit 20 acquires an image IG such as a frame image captured by the camera 14. The image acquisition unit 20 stores the image IG in the frame memory 22. The image acquisition unit 20 outputs information about the image IG stored in the frame memory 22 (for example, the number of lines of the stored image IG) and the like to the image correction unit 24.

画像補正部24は、画像取得部20から取得した画像IGに関するライン数等の情報に基づいて、フレームメモリ22から画像IGを読み出す。尚、画像補正部24は、画像IGの全てではなく、一部をフレームメモリ22から読み出してもよい。例えば、画像補正部24は、予め定められたライン数の画像IGがフレームメモリ22に格納されると、当該画像IGを読み出してもよい。画像補正部24は、読み出した画像IGに歪み補正等の補正処理を実行する。画像補正部24は、補正した画像IGを画像メモリ26に格納する。   The image correction unit 24 reads the image IG from the frame memory 22 based on information such as the number of lines related to the image IG acquired from the image acquisition unit 20. Note that the image correction unit 24 may read a part of the image IG instead of the entire image IG from the frame memory 22. For example, the image correction unit 24 may read the image IG when the image IG having a predetermined number of lines is stored in the frame memory 22. The image correction unit 24 executes correction processing such as distortion correction on the read image IG. The image correction unit 24 stores the corrected image IG in the image memory 26.

特徴点抽出部28は、画像メモリ26から補正された画像IGを読み出す。尚、特徴点抽出部28は、画像IGの全てではなく、画像IGの一部を画像メモリ26から読み出してもよい。例えば、特徴点抽出部28は、画像IGのうち、予め定められたライン数の画像IGの一部が画像メモリ26に格納されると、当該格納された一部の画像IGを読み出してもよい。特徴点抽出部28は、読み出した建造物90等の被写体の画像IGから一または複数の特徴点PTを抽出する。特徴点抽出部28は、例えば、既知のハリス(Harris)またはモラベック(Moravec)等のコーナー検出法によって画像IGから特徴点PTを抽出する(例えば、http://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%BC%E3%83%8A%E3%83%BC%E6%A4%9C%E5%87%BA%E6%B3%95参照)。特徴点抽出部28は、抽出した特徴点PTを特徴点格納メモリ30に格納する。   The feature point extraction unit 28 reads the corrected image IG from the image memory 26. Note that the feature point extraction unit 28 may read a part of the image IG from the image memory 26 instead of the entire image IG. For example, when a part of the image IG having a predetermined number of lines in the image IG is stored in the image memory 26, the feature point extraction unit 28 may read the stored part of the image IG. . The feature point extraction unit 28 extracts one or a plurality of feature points PT from the read image IG of the subject such as the building 90. The feature point extraction unit 28 extracts the feature point PT from the image IG by a corner detection method such as known Harris or Moravec (for example, http://en.wikipedia.org/wiki/ % E3% 82% B3% E3% 83% BC% E3% 83% 8A% E3% 83% BC% E6% A4% 9C% E5% 87% BA% E6% B3% 95). The feature point extraction unit 28 stores the extracted feature points PT in the feature point storage memory 30.

特徴点追跡部32は、撮影された建造物90等の被写体の画像IGから特徴点抽出部28によって抽出された被写体の特徴点PTを追跡する。例えば、特徴点追跡部32は、時間的に1つ前の画像IGから抽出された特徴点PTを追跡結果格納メモリ34から読み出す。特徴点追跡部32は、1つ前の画像IGに含まれる予め定められた必要画素の範囲の画像IGを画像メモリ26から取得する。特徴点追跡部32は、特徴点PT及び1つ前の画像IGに基づいて、後述するテンプレートパッチTPを作成する。特徴点追跡部32は、現在の画像IGを画像メモリ26から読み出す。特徴点追跡部32は、テンプレートパッチTPと、現在の画像IGとに基づいて、ブロックマッチングにより特徴点PTを検索して追跡する。特徴点追跡部32は、特徴点PTを追跡できた場合、追跡できた旨の結果であるオプティカルフローFLを含む追跡結果を追跡結果格納メモリ34に格納して更新する。一方、特徴点追跡部32は、特徴点PTを追跡できなかった場合、特徴点格納メモリ30から読み出した特徴点PTを追跡結果格納メモリ34に格納する。   The feature point tracking unit 32 tracks the feature point PT of the subject extracted by the feature point extraction unit 28 from the photographed image IG of the subject such as the building 90. For example, the feature point tracking unit 32 reads out the feature point PT extracted from the previous image IG from the tracking result storage memory 34. The feature point tracking unit 32 acquires, from the image memory 26, an image IG in a predetermined necessary pixel range included in the previous image IG. The feature point tracking unit 32 creates a template patch TP, which will be described later, based on the feature point PT and the previous image IG. The feature point tracking unit 32 reads the current image IG from the image memory 26. The feature point tracking unit 32 searches and tracks the feature point PT by block matching based on the template patch TP and the current image IG. When the feature point tracking unit 32 can track the feature point PT, the tracking result storage memory 34 updates the tracking result including the optical flow FL, which is a result indicating that the feature point PT has been tracked. On the other hand, when the feature point tracking unit 32 cannot track the feature point PT, the feature point tracking unit 32 stores the feature point PT read from the feature point storage memory 30 in the tracking result storage memory 34.

マーク認識部36は、画像IG内の建造物90等の被写体に予め設けられたマークMKを認識する。例えば、マーク認識部36は、特徴点格納メモリ30に特徴点PTが格納されると、マーク情報格納メモリ38からマークMKに予め設定されたパターン情報及び位置情報を読み出すとともに、特徴点格納メモリ30から特徴点PTを取得する。マーク認識部36は、特徴点PT及びパターン情報に基づいて、画像IG内のマークMKを認識する。マーク認識部36は、マークMKの認識結果及び位置情報をマーク認識結果格納メモリ40に格納する。尚、マーク認識部36はマークMKを認識する処理を、特徴点追跡部32が特徴点PTを追跡する処理と同時に実行してもよい。   The mark recognition unit 36 recognizes a mark MK provided in advance on a subject such as a building 90 in the image IG. For example, when the feature point PT is stored in the feature point storage memory 30, the mark recognition unit 36 reads pattern information and position information set in advance for the mark MK from the mark information storage memory 38, and at the same time, the feature point storage memory 30. To obtain the feature point PT. The mark recognition unit 36 recognizes the mark MK in the image IG based on the feature point PT and the pattern information. The mark recognition unit 36 stores the recognition result and position information of the mark MK in the mark recognition result storage memory 40. Note that the mark recognition unit 36 may execute the process of recognizing the mark MK simultaneously with the process of the feature point tracking unit 32 tracking the feature point PT.

自己位置推定部42は、追跡結果格納メモリ34から追跡結果を読み出す。自己位置推定部42は、追跡結果に基づいて第1自己位置を推定する。自己位置推定部42は、マーク認識結果格納メモリ40からマークMKの認識結果及び位置情報を読み出す。自己位置推定部42は、認識されたマークMKに基づいて第2自己位置を推定する。例えば、自己位置推定部42は、予め設定されたマークMKの位置情報に基づいて、第2自己位置を推定する。自己位置推定部42は、予め定められた条件に基づいて、推定した2つの第1自己位置及び第2自己位置のいずれか一方を自己位置SPとして採用する。   The self-position estimation unit 42 reads the tracking result from the tracking result storage memory 34. The self-position estimating unit 42 estimates the first self-position based on the tracking result. The self-position estimation unit 42 reads the recognition result and position information of the mark MK from the mark recognition result storage memory 40. The self-position estimating unit 42 estimates the second self-position based on the recognized mark MK. For example, the self-position estimating unit 42 estimates the second self-position based on preset position information of the mark MK. The self-position estimating unit 42 employs one of the two estimated first self-positions and second self-positions as the self-position SP based on a predetermined condition.

図3は、フレーム画像である画像IG0の一例を示す図である。図4は、(n−1)番目のフレーム画像である画像IG1の一部の一例を示す図である。図5は、n番目のフレーム画像である画像IG2の一部の一例を示す図である。図6は、(n−1)番目の画像IG1とn番目の画像IG2との間での特徴点PTの追跡を説明する図である。図3から図6は、移動体92が道路94上を直進している状態における画像IGの例である。   FIG. 3 is a diagram illustrating an example of an image IG0 that is a frame image. FIG. 4 is a diagram illustrating an example of a part of the image IG1 which is the (n−1) th frame image. FIG. 5 is a diagram illustrating an example of a part of the image IG2 which is the nth frame image. FIG. 6 is a diagram for explaining the tracking of the feature point PT between the (n−1) th image IG1 and the nth image IG2. 3 to 6 are examples of the image IG in a state where the moving body 92 is traveling straight on the road 94.

画像取得部20が図3に示すn番目の画像IG0をカメラ14から取得して、画像補正部24が補正した画像IG0を画像メモリ26に格納した場合について説明する。この場合、例えば、特徴点抽出部28は、図4に示す(n−1)番目の画像IG1から特徴点PT1、PT2を抽出して、特徴点格納メモリ30に格納する。特徴点PT1、PT2は、例えば、道路94の傍の建造物90A、90Bのコーナー(または、角)である。   The case where the image acquisition unit 20 acquires the nth image IG0 shown in FIG. 3 from the camera 14 and stores the image IG0 corrected by the image correction unit 24 in the image memory 26 will be described. In this case, for example, the feature point extraction unit 28 extracts the feature points PT1 and PT2 from the (n−1) th image IG1 illustrated in FIG. 4 and stores them in the feature point storage memory 30. The feature points PT1 and PT2 are, for example, corners (or corners) of the buildings 90A and 90B near the road 94.

特徴点追跡部32は、(n−1)番目の特徴点PT1、PT2を追跡結果格納メモリ34から取得する。特徴点追跡部32は、(n−1)番目の画像IG0のうち、(n−1)番目の特徴点PT1、PT2の周辺の数ラインの範囲の図4に示す画像IG1を画像メモリ26から読み出す。特徴点追跡部32は、(n−1)番目の特徴点PT1、PT2を中心として、左右及び上下に数画素の範囲の矩形状のテンプレートパッチTP1、TP2を(n−1)番目の画像IG1から抽出する。テンプレートパッチTP1、TP2は、円形状であってもよい。   The feature point tracking unit 32 acquires the (n−1) th feature points PT1 and PT2 from the tracking result storage memory 34. The feature point tracking unit 32 extracts, from the image memory 26, the image IG1 shown in FIG. 4 in the range of several lines around the (n-1) th feature point PT1 and PT2 in the (n-1) th image IG0. read out. The feature point tracking unit 32 converts the rectangular template patches TP1 and TP2 in the range of several pixels left and right and up and down around the (n-1) th feature point PT1 and PT2 to the (n-1) th image IG1. Extract from Template patches TP1 and TP2 may be circular.

特徴点追跡部32は、図5に示すn番目の画像IG2を画像メモリ26から取得する。特徴点追跡部32は、類似度を用いたブロックマッチングによって、テンプレートパッチTP1、TP2に類似する領域をn番目の画像IG2から検索する。例えば、特徴点追跡部32は、ブロックマッチングとして、パターンマッチング(例えば、正規化相関)またはテンプレートマッチング(例えば、http://imagingsolution.blog107.fc2.com/blog-entry-186.html参照)等を実行する。特徴点追跡部32は、画像IG2のうち、特徴点PT1と同じ座標の位置PT1’を含む領域AR1の内部でブロックマッチングによる検索を実行してもよい。特徴点追跡部32は、領域AR1内において、左上端から右方向に検索して、領域AR1の右端に達した後は1ライン下の左端に移動して、再度右方向に検索する。特徴点追跡部32は、この順序で画像IG2の領域AR1内の検索を順次続ける(いわゆる、ラスタスキャン)。特徴点追跡部32は、(n−1)番目のテンプレートパッチTP1、TP2に類似する領域を、テンプレートパッチTP3、TP4としてn番目の画像IG2から抽出する。特徴点追跡部32は、テンプレートパッチTP3、TP4の中心をn番目の特徴点PT3、PT4とする。図6に示すように、特徴点追跡部32は、(n−1)番目における特徴点PT1、PT2からn番目の特徴点PT3、PT4へと延びるベクトルであるオプティカルフローFL1、FL2を追跡結果として、n番目の特徴点PT3、PT4とともに、追跡結果格納メモリ34に格納する。   The feature point tracking unit 32 acquires the nth image IG2 shown in FIG. The feature point tracking unit 32 searches the nth image IG2 for a region similar to the template patches TP1 and TP2 by block matching using the similarity. For example, the feature point tracking unit 32 performs pattern matching (for example, normalized correlation) or template matching (for example, see http://imagingsolution.blog107.fc2.com/blog-entry-186.html) as block matching. Execute. The feature point tracking unit 32 may execute a search by block matching in the area AR1 including the position PT1 'having the same coordinates as the feature point PT1 in the image IG2. In the area AR1, the feature point tracking unit 32 searches from the upper left end to the right, and after reaching the right end of the area AR1, moves to the left end one line below and searches again in the right direction. The feature point tracking unit 32 sequentially continues searching in the area AR1 of the image IG2 in this order (so-called raster scan). The feature point tracking unit 32 extracts regions similar to the (n−1) th template patches TP1 and TP2 from the nth image IG2 as template patches TP3 and TP4. The feature point tracking unit 32 sets the centers of the template patches TP3 and TP4 as the nth feature points PT3 and PT4. As shown in FIG. 6, the feature point tracking unit 32 uses the optical flows FL1 and FL2 which are vectors extending from the (n−1) th feature points PT1 and PT2 to the nth feature points PT3 and PT4 as tracking results. The nth feature points PT3 and PT4 are stored in the tracking result storage memory 34.

図7は、マークMKの認識で扱う座標系とカメラ14の位置推定について説明する図である。自己位置推定部42は、三次元のマーク座標系(図7に示すXmYmZm空間)、二次元の画像座標系(図7に示すuv空間)、及び、三次元のカメラ座標系(図7に示すXcYcZc空間)に基づいて、マークMKを認識する。マークMKの位置は、マークMKごとに予めマーク情報格納メモリ38に登録されている。カメラ14の内部パラメータ(カメラ14の焦点距離、主点(画像中心)及びレンズ歪み係数等)は、既知であり、予め登録されているとする。自己位置推定部42は、マークMKの位置及びカメラ14の内部パラメータを逆変換することにより、マーク座標系上のカメラ14の位置を推定する(例えば、http://www.hitl.washington.edu/artoolkit/documentation/tutorialcamera.htm、及び、http://im-lab.net/artoolkit-overview/参照)。   FIG. 7 is a diagram for explaining the coordinate system handled in the recognition of the mark MK and the position estimation of the camera 14. The self-position estimation unit 42 includes a three-dimensional mark coordinate system (XmYmZm space shown in FIG. 7), a two-dimensional image coordinate system (uv space shown in FIG. 7), and a three-dimensional camera coordinate system (shown in FIG. 7). The mark MK is recognized based on the (XcYcZc space). The position of the mark MK is registered in advance in the mark information storage memory 38 for each mark MK. It is assumed that internal parameters of the camera 14 (focal length, principal point (image center), lens distortion coefficient, and the like of the camera 14) are known and registered in advance. The self-position estimation unit 42 estimates the position of the camera 14 on the mark coordinate system by inversely transforming the position of the mark MK and the internal parameters of the camera 14 (for example, http://www.hitl.washington.edu /artoolkit/documentation/tutorialcamera.htm and http://im-lab.net/artoolkit-overview/).

図8は、ピンホールカメラモデルによる座標系とカメラ14の位置推定について説明する図である。図8に示すように、自己位置推定部42は、ピンホールカメラモデルに基づいて、カメラ14の位置及び姿勢を推定してもよい。ピンホールカメラモデルは、例えば、三次元空間と、二次元の画像平面との幾何学的な相対関係を表したモデルによって、三次元の世界座標系(図8に示すXwYwZw空間)、三次元のカメラ座標系(図8に示すXcYcZc空間)、及び、二次元の画像座標系(図8に示すXiYi空間)を定義する。自己位置推定部42は、当該モデルによって、複数の特徴点PTと、キャリブレーションにより算出したカメラ14の内部パラメータに基づいて、PnP問題を解くことにより、外部パラメータ(世界座標系からカメラ座標系への変換行列)を算出して、カメラ14の位置を推定する(例えば、“OpenCV3 プログラミングブック /藤本雄一郎 他/(株)マイナビ出版”の111頁〜参照)。   FIG. 8 is a diagram for explaining the coordinate system based on the pinhole camera model and the position estimation of the camera 14. As shown in FIG. 8, the self-position estimation unit 42 may estimate the position and orientation of the camera 14 based on a pinhole camera model. The pinhole camera model is a three-dimensional world coordinate system (XwYwZw space shown in FIG. 8), a three-dimensional space model, for example, by a model representing a geometric relative relationship between a three-dimensional space and a two-dimensional image plane. A camera coordinate system (XcYcZc space shown in FIG. 8) and a two-dimensional image coordinate system (XiYi space shown in FIG. 8) are defined. The self-position estimation unit 42 solves the PnP problem based on the model based on the plurality of feature points PT and the internal parameters of the camera 14 calculated by the calibration, thereby obtaining external parameters (from the world coordinate system to the camera coordinate system). And the position of the camera 14 is estimated (see, for example, “OpenCV3 Programming Book / Yuichiro Fujimoto et al./Page 111 of Mynavi Publishing Co., Ltd.”).

図9は、マークMKによるカメラ14の位置推定における左右方向(または水平方向)の誤差を説明する図である。カメラ14の位置推定における誤差は、ローリングシャッター現象及びモーションブラー等に起因する。図9は、ほぼ上方から見た平面図である。カメラ14上に示すXc及びZcは、図7におけるカメラ座標系の座標軸を示す。座標軸Xcは移動体92の左右方向を示す。座標軸Zcは移動体92の前後方向を示す。図9においては、実際のマークMKは、実線で示すように、カメラ14及び移動体92の前方の位置PS0に存在する。マークMK上に示すXm及びZmは、図7に示すマーク座標系を示す。   FIG. 9 is a diagram for explaining the error in the left-right direction (or horizontal direction) in the position estimation of the camera 14 by the mark MK. Errors in the position estimation of the camera 14 are caused by a rolling shutter phenomenon, motion blur, and the like. FIG. 9 is a plan view as seen from above. Xc and Zc shown on the camera 14 indicate coordinate axes of the camera coordinate system in FIG. A coordinate axis Xc indicates the horizontal direction of the moving body 92. A coordinate axis Zc indicates the front-rear direction of the moving body 92. In FIG. 9, the actual mark MK is present at a position PS0 in front of the camera 14 and the moving body 92, as indicated by the solid line. Xm and Zm shown on the mark MK indicate the mark coordinate system shown in FIG.

移動体92に取り付けられたカメラ14が、前方の位置PS0に存在するマークMKを撮影する。カメラ14は、ローリングシャッター現象またはモーションブラー等の影響で、マークMKを投影面PPaに示す像MKaのように左右方向に歪んだ形状(例えば、菱形)のマークとして撮影する場合がある。尚、投影面PPaは、撮影されたマークMKを投影した面である。   The camera 14 attached to the moving body 92 captures the mark MK present at the front position PS0. The camera 14 may shoot the mark MK as a mark distorted in the left-right direction (for example, a rhombus) like the image MKa shown on the projection plane PPa due to the influence of a rolling shutter phenomenon or motion blur. The projection plane PPa is a plane on which the photographed mark MK is projected.

この場合、自己位置推定部42は、歪んだ像MKaを含む画像IGによって、マークMKを位置PS1に存在すると誤認識して、カメラ14を位置PS2に存在すると誤って推定する。自己位置推定部42は、既知のマークMKの位置PS0を基準として、誤認識したマークMKの位置PS1とカメラ14の位置PS2との位置関係から算出した一点鎖線で示すベクトルVC1を適用することにより、カメラ14が位置PS3に存在すると推定する。従って、自己位置推定部42は、実際の位置PS4から左右方向にずれた位置PS3にカメラ14が存在すると推定する。   In this case, the self-position estimation unit 42 erroneously recognizes that the mark MK exists at the position PS1 and erroneously estimates that the camera 14 exists at the position PS2 based on the image IG including the distorted image MKa. The self-position estimation unit 42 applies the vector VC1 indicated by the alternate long and short dash line calculated from the positional relationship between the position PS1 of the misrecognized mark MK and the position PS2 of the camera 14 based on the position PS0 of the known mark MK. , It is estimated that the camera 14 exists at the position PS3. Accordingly, the self-position estimation unit 42 estimates that the camera 14 exists at the position PS3 that is shifted in the left-right direction from the actual position PS4.

自己位置推定部42がこれらの誤って推定したカメラ14の位置PS3の推定結果を削除するために、正しい推定結果と判定する判定範囲JR1を予め設定することが好ましい。判定範囲JR1は、予め定められた条件の一例である。自己位置推定部42は、判定範囲JR1内と推定したカメラ14の位置を第2自己位置として採用する。自己位置推定部42は、判定範囲JR1外と推定したカメラ14の位置を破棄する。判定範囲JR1は、例えば、カメラ座標系から見たカメラ14の位置をXmベクトル及びZmベクトルで表して設定される。   In order for the self-position estimation unit 42 to delete these erroneously estimated results of the position PS3 of the camera 14, it is preferable to set in advance a determination range JR1 that is determined as a correct estimation result. The determination range JR1 is an example of a predetermined condition. The self-position estimation unit 42 employs the position of the camera 14 estimated to be within the determination range JR1 as the second self-position. The self-position estimation unit 42 discards the position of the camera 14 estimated to be outside the determination range JR1. The determination range JR1 is set, for example, by representing the position of the camera 14 viewed from the camera coordinate system with an Xm vector and a Zm vector.

図10は、マークMKによるカメラ14の位置推定における上下方向(または鉛直方向)の誤差を説明する図である。カメラ14の位置推定における誤差は、ローリングシャッター現象及びモーションブラー等に起因する。図10は、ほぼ右方向から見た平面図である。カメラ14上に示すYc及びZcは、図7におけるカメラ座標系の座標軸を示す。座標軸Ycは移動体92の上下方向を示す。座標軸Zcは移動体92の前後方向を示す。図10においては、実際のマークMKは、実線で示すように、カメラ14及び移動体92の前方の位置PS5に存在する。マークMK上に示すYm及びZmは、図7に示すマーク座標系の座標軸を示す。   FIG. 10 is a diagram for explaining an error in the vertical direction (or vertical direction) in the position estimation of the camera 14 by the mark MK. Errors in the position estimation of the camera 14 are caused by a rolling shutter phenomenon, motion blur, and the like. FIG. 10 is a plan view seen from the substantially right direction. Yc and Zc shown on the camera 14 indicate coordinate axes of the camera coordinate system in FIG. A coordinate axis Yc indicates the vertical direction of the moving body 92. A coordinate axis Zc indicates the front-rear direction of the moving body 92. In FIG. 10, the actual mark MK is present at a position PS5 in front of the camera 14 and the moving body 92, as indicated by a solid line. Ym and Zm indicated on the mark MK indicate coordinate axes of the mark coordinate system shown in FIG.

移動体92に取り付けられたカメラ14が、前方の位置PS5に存在するマークMKを撮影する。カメラ14は、ローリングシャッター現象またはモーションブラー等の影響で、マークMKを投影面PPbに示す像MKbのように上下に歪んだ形状(例えば、台形)で撮影する場合がある。尚、投影面PPbは、撮影されたマークMKを投影した面である。   The camera 14 attached to the moving body 92 captures the mark MK present at the front position PS5. The camera 14 may shoot the mark MK in a vertically distorted shape (for example, a trapezoid) like the image MKb shown on the projection plane PPb due to the influence of a rolling shutter phenomenon or motion blur. The projection plane PPb is a plane on which the photographed mark MK is projected.

この場合、自己位置推定部42は、マークMKを位置PS6に存在すると誤認識して、カメラ14を位置PS7に存在すると誤って推定する。自己位置推定部42は、既知のマークMKの位置PS5を基準として、誤認識したマークMKの位置PS6とカメラ14の位置PS7との位置関係から算出したベクトルVC2を適用することにより、カメラ14が位置PS8に存在すると推定する。従って、自己位置推定部42は、実際の位置PS9から上下方向にずれた位置PS8にカメラ14が存在すると推定する。   In this case, the self-position estimation unit 42 erroneously recognizes that the mark MK exists at the position PS6 and erroneously estimates that the camera 14 exists at the position PS7. The self-position estimation unit 42 applies the vector VC2 calculated from the positional relationship between the position PS6 of the misrecognized mark MK and the position PS7 of the camera 14 with reference to the position PS5 of the known mark MK, so that the camera 14 Presumed to be at position PS8. Accordingly, the self-position estimating unit 42 estimates that the camera 14 exists at the position PS8 that is shifted in the vertical direction from the actual position PS9.

自己位置推定部42がこれらの誤って推定したカメラ14の位置推定の結果を削除するために、正しい推定結果と判定する判定範囲JR2を予め設定することが好ましい。判定範囲JR2は、予め定められた条件の別の例である。自己位置推定部42は、判定範囲JR2内と推定したカメラ14の位置を第2自己位置として採用する。自己位置推定部42は、判定範囲JR2外と推定したカメラ14の位置を破棄する。判定範囲JR2は、例えば、カメラ座標系から見たカメラ14の位置をYmベクトル及びZmベクトルで表して設定される。   In order for the self-position estimation unit 42 to delete these erroneously estimated position estimation results of the camera 14, it is preferable to set in advance a determination range JR <b> 2 that is determined to be a correct estimation result. The determination range JR2 is another example of a predetermined condition. The self-position estimation unit 42 employs the position of the camera 14 estimated to be within the determination range JR2 as the second self-position. The self-position estimating unit 42 discards the position of the camera 14 estimated to be outside the determination range JR2. The determination range JR2 is set, for example, by representing the position of the camera 14 viewed from the camera coordinate system with a Ym vector and a Zm vector.

図11は、画像処理装置16による自己位置推定処理のフローチャートである。   FIG. 11 is a flowchart of self-position estimation processing by the image processing device 16.

図11に示すように、自己位置推定処理では、まず、画像処理装置16が初期化を実行する(S102)。例えば、画像処理装置16の自己位置推定部42が、判定範囲JR1、JR2を設定する。例えば、自己位置推定部42は、移動体92の走行する道路94の幅等を基準として、図9に示す判定範囲JR1のXc方向の範囲を設定する。自己位置推定部42は、移動体92に取り付けられたカメラ14の高さ等を基準として、図10に示す判定範囲JR2のYc方向の範囲を設定する。   As shown in FIG. 11, in the self-position estimation process, first, the image processing device 16 executes initialization (S102). For example, the self-position estimation unit 42 of the image processing device 16 sets the determination ranges JR1 and JR2. For example, the self-position estimation unit 42 sets a range in the Xc direction of the determination range JR1 shown in FIG. 9 with reference to the width of the road 94 on which the moving body 92 travels. The self-position estimating unit 42 sets a range in the Yc direction of the determination range JR2 illustrated in FIG. 10 with reference to the height of the camera 14 attached to the moving body 92 and the like.

画像取得部20は、カメラ14からフレーム画像を画像IGとして取得して、フレームメモリ22に格納する(S104)。画像補正部24は、フレームメモリ22に格納された画像IGを補正して、画像メモリ26に格納する(S106)。   The image acquisition unit 20 acquires a frame image from the camera 14 as an image IG and stores it in the frame memory 22 (S104). The image correction unit 24 corrects the image IG stored in the frame memory 22 and stores it in the image memory 26 (S106).

特徴点抽出部28は、画像メモリ26に格納された補正後の画像IGから特徴点PTを抽出して、特徴点格納メモリ30に格納する(S108)。特徴点追跡部32は、追跡結果に含まれる1つ前の特徴点PTからテンプレートパッチTPを生成して、画像メモリ26に格納された補正後の画像IGに基づいて、特徴点PTを追跡する(S110)。特徴点追跡部32は、特徴点PTのオプティカルフローFLを含む追跡結果を追跡結果格納メモリ34に格納する(S112)。   The feature point extraction unit 28 extracts the feature point PT from the corrected image IG stored in the image memory 26 and stores it in the feature point storage memory 30 (S108). The feature point tracking unit 32 generates a template patch TP from the previous feature point PT included in the tracking result, and tracks the feature point PT based on the corrected image IG stored in the image memory 26. (S110). The feature point tracking unit 32 stores the tracking result including the optical flow FL of the feature point PT in the tracking result storage memory 34 (S112).

マーク認識部36は、マーク情報格納メモリ38から取得したマークMKのパターン情報及び位置情報に基づいて、特徴点格納メモリ30に格納された複数の特徴点PTを含む特徴点群からマークMKを認識して検出し、マークMKの認識結果とともに、マークMKの位置情報をマーク認識結果格納メモリ40に格納する(S114)。   The mark recognition unit 36 recognizes the mark MK from the feature point group including the plurality of feature points PT stored in the feature point storage memory 30 based on the pattern information and position information of the mark MK acquired from the mark information storage memory 38. Then, the position information of the mark MK is stored in the mark recognition result storage memory 40 together with the recognition result of the mark MK (S114).

自己位置推定部42は、追跡結果格納メモリ34に格納された特徴点PTのオプティカルフローFLによる追跡結果に基づいて、移動体92及びカメラ14の位置を推定して、当該位置を第1自己位置と推定する(S116)。自己位置推定部42は、認識したマークMKの位置情報及び認識結果に基づいて、移動体92及びカメラ14の位置を推定して、当該位置を第2自己位置と推定する(S118)。   The self-position estimation unit 42 estimates the positions of the moving body 92 and the camera 14 based on the tracking result of the feature point PT stored in the tracking result storage memory 34 by the optical flow FL, and determines the position as the first self-position. (S116). The self-position estimation unit 42 estimates the positions of the moving body 92 and the camera 14 based on the position information of the recognized mark MK and the recognition result, and estimates the position as the second self-position (S118).

自己位置推定部42は、予め設定された判定範囲JR1、JR2に基づいて、第1自己位置及び第2自己位置のいずれかを採用することにより、自己位置を補正する(S120)。例えば、自己位置推定部42は、特徴点PTを追跡したオプティカルフローFLによる第1自己位置を自己位置SPとして採用する。この状態で、自己位置推定部42は、マークMKの位置情報及び認識結果による第2自己位置が判定範囲JR1、JR2内であれば、第2自己位置を自己位置SPとして採用することにより、第1自己位置による自己位置SPをリセットして補正する。この後、自己位置推定部42は、第2自己位置を採用した自己位置SPを起点として、特徴点PTの追跡による第1自己位置を採用して自己位置SPの推定を継続する。尚、自己位置推定部42は、第2自己位置が判定範囲JR1、JR2内であることに加えて、第1自己位置の位置ずれの大きさ、及び、第1自己位置の推定回数等によって、第2自己位置を自己位置SPとして採用するか否かを判定してもよい。   The self-position estimating unit 42 corrects the self-position by adopting either the first self-position or the second self-position based on the preset determination ranges JR1 and JR2 (S120). For example, the self-position estimation unit 42 employs the first self-position based on the optical flow FL tracking the feature point PT as the self-position SP. In this state, the self-position estimating unit 42 adopts the second self-position as the self-position SP if the second self-position based on the position information of the mark MK and the recognition result is within the determination ranges JR1 and JR2. The self position SP by one self position is reset and corrected. Thereafter, the self-position estimation unit 42 continues to estimate the self-position SP using the first self-position based on the tracking of the feature point PT with the self-position SP adopting the second self-position as a starting point. In addition to the fact that the second self-position is within the determination ranges JR1 and JR2, the self-position estimating unit 42 determines the position deviation of the first self-position, the estimated number of times of the first self-position, and the like. It may be determined whether or not the second self position is adopted as the self position SP.

この後、画像処理装置16は、フレーム画像である画像IGがまだある場合(S122:Yes)、ステップS104以降を繰り返す。画像処理装置16は、全ての画像IGに対して処理を実行した場合(S122:No)、自己位置推定処理を終了する。   Thereafter, when there is still an image IG that is a frame image (S122: Yes), the image processing device 16 repeats Step S104 and the subsequent steps. When the image processing apparatus 16 has performed the process on all the images IG (S122: No), the self-position estimation process ends.

上述したように、画像処理装置16では、自己位置推定部42が、マークMKに基づいて推定した第2自己位置が予め定められた条件を満たしている場合、第2自己位置を自己位置SPとして採用して、第1自己位置による自己位置SPを補正している。これにより、画像処理装置16は、自己位置SPの推定精度を向上させることができる。特に、画像処理装置16では、自己位置推定部42が、特徴点PTを追跡したオプティカルフローFLによって推定した第1自己位置を自己位置SPとして採用している状態で、マークMKに基づいて推定した第2自己位置が予め定められた条件を満たすと、第2自己位置によって自己位置SPをリセットして補正する。これにより、画像処理装置16は、第1自己位置による自己位置の位置ずれが大きくなっても、第2自己位置によって位置ずれをリセットしてなくすことにより、自己位置SPの推定精度を向上させることができる。また、画像処理装置16は、第2自己位置が明らかに異常の場合(例えば、移動体92が自動車等の場合に第2自己位置が空中または地中等と推定された場合)、第2自己位置を予め定められた条件によって排除できるので、自己位置SPの推定精度を向上できる。   As described above, in the image processing device 16, when the second self-position estimated based on the mark MK satisfies the predetermined condition, the self-position estimation unit 42 sets the second self-position as the self-position SP. Employing this, the self-position SP due to the first self-position is corrected. As a result, the image processing device 16 can improve the estimation accuracy of the self-position SP. In particular, in the image processing device 16, the self-position estimation unit 42 estimates based on the mark MK in a state where the first self-position estimated by the optical flow FL tracking the feature point PT is adopted as the self-position SP. When the second self-position satisfies a predetermined condition, the self-position SP is reset and corrected by the second self-position. As a result, the image processing device 16 can improve the estimation accuracy of the self-position SP by eliminating the misalignment by the second self-position even if the self-position misalignment due to the first self-position becomes large. Can do. In addition, when the second self-position is clearly abnormal (for example, when the second self-position is estimated to be in the air or underground when the moving body 92 is an automobile or the like), the image processing apparatus 16 Can be eliminated by a predetermined condition, so that the estimation accuracy of the self-position SP can be improved.

図12は、別の自己位置の推定を説明する図である。図12に示す例では、第1マークMK1が建造物90の1階に設けられ、第2マークMK2が建造物90の2階に設けられている。マーク情報格納メモリ38は、位置の基準となる基準位置P0に対するマークMK1、MK2の位置に関する位置情報を格納している。例えば、マーク情報格納メモリ38は、基準位置P0からマークMK1、MK2の中心までのそれぞれの高さHD1、HD2の情報を含む位置情報を格納している。画像処理装置16は、自動車等の飛行できない移動体92に設けられているとする。従って、画像処理装置16は、水平方向に移動しつつ、撮影された画像IGに基づいて、第2自己位置を推定する。   FIG. 12 is a diagram illustrating another self-position estimation. In the example shown in FIG. 12, the first mark MK1 is provided on the first floor of the building 90, and the second mark MK2 is provided on the second floor of the building 90. The mark information storage memory 38 stores position information regarding the positions of the marks MK1 and MK2 with respect to the reference position P0 serving as a position reference. For example, the mark information storage memory 38 stores position information including information on the heights HD1 and HD2 from the reference position P0 to the centers of the marks MK1 and MK2. It is assumed that the image processing device 16 is provided in a movable body 92 that cannot fly such as an automobile. Accordingly, the image processing device 16 estimates the second self-position based on the captured image IG while moving in the horizontal direction.

自己位置推定部42は、水平方向に移動しつつ撮影された画像IGから認識された第1マークMK1の高さHD1の情報に基づいて移動体92aの高さを含む第2自己位置を推定する。自己位置推定部42は、自己位置SPの高さが第1基準高さSH1を中心とした第1高さ範囲HA1内に収まる場合、移動体92aの自己位置SPが1階であることを示す情報を第2自己位置の推定結果に付加する。自己位置推定部42は、第2マークMK2の高さHD2の情報に基づいて移動体92bの高さを含む第2自己位置を推定する。自己位置推定部42は、自己位置SPの高さが第2基準高さSH2を中心とした第2高さ範囲HA2内に収まる場合、移動体92bの自己位置SPが2階であることを示す情報を第2自己位置の推定結果に付加する。これにより、自己位置推定部42は、GPS(Global Positioning System)及びオプティカルフローFL等では得られない高さ方向の情報を得ることができる。このように、自己位置推定部42は、当該自己の高さに基づいて、マークMKによる第2自己位置を推定する。   The self-position estimating unit 42 estimates the second self-position including the height of the moving body 92a based on the information of the height HD1 of the first mark MK1 recognized from the image IG photographed while moving in the horizontal direction. . The self-position estimation unit 42 indicates that the self-position SP of the moving body 92a is on the first floor when the height of the self-position SP falls within the first height range HA1 centered on the first reference height SH1. Information is added to the second self-position estimation result. The self-position estimating unit 42 estimates the second self-position including the height of the moving body 92b based on the information on the height HD2 of the second mark MK2. The self-position estimation unit 42 indicates that the self-position SP of the moving body 92b is on the second floor when the height of the self-position SP falls within the second height range HA2 centered on the second reference height SH2. Information is added to the second self-position estimation result. Thereby, the self-position estimation part 42 can acquire the information of the height direction which cannot be obtained by GPS (Global Positioning System), optical flow FL, etc. FIG. As described above, the self-position estimation unit 42 estimates the second self-position based on the mark MK based on the height of the self.

自己位置推定部42は、駐車場等の建造物90の水平方向を走行して移動する移動体92の自己位置SPを推定する場合、基準位置P0に対する基準高さSH1、SH2がマークMK1、MK2からの距離に関わらずほぼ一定のため、自己位置SPの高さのみを基準に第2自己位置を推定することができる。   When the self-position estimation unit 42 estimates the self-position SP of the moving body 92 that travels in the horizontal direction of the building 90 such as a parking lot and moves, the reference heights SH1 and SH2 with respect to the reference position P0 are marks MK1 and MK2. The second self-position can be estimated based only on the height of the self-position SP because the distance is substantially constant regardless of the distance from the head.

図13は、飛行可能な移動体92c、92dの自己位置の推定を説明するための上方から見た平面図である。図14は、飛行可能な移動体92c、92dの自己位置の推定を説明するための側方から見た図である。飛行可能な移動体92c、92dの一例は、UAV(Unmanned Aerial Vehicle/Unmanned Air Vehicle)である。マークMK3、MK4、MK5は、建造物90の壁90a、柱90b等に設けられている。   FIG. 13 is a plan view seen from above for explaining the estimation of the self-positions of the movable bodies 92c and 92d that can fly. FIG. 14 is a side view for explaining the estimation of the self-positions of the movable bodies 92c and 92d that can fly. An example of the movable bodies 92c and 92d that can fly is a UAV (Unmanned Aerial Vehicle / Unmanned Air Vehicle). The marks MK3, MK4, and MK5 are provided on the wall 90a, the pillar 90b, and the like of the building 90.

図13及び図14に示すように、第1移動体92cの自己位置推定部42は、認識したマークMK1の高さ、マークMK1までの距離及びマークMK1の中心からのずれに基づいて、第2自己位置を推定する。自己位置推定部42は、推定した第2自己位置が予め定められた判定範囲JR3内であれば、当該第2自己位置によって、第1自己位置を採用している自己位置SPをリセットして補正する。尚、予め定められた判定範囲JR3は、X方向、Y方向及びZ方向の位置情報を含む直方体または立方体で規定される。自己位置推定部42は、推定した第2自己位置が判定範囲JR3外であれば、第2自己位置を採用することなく、壁90a及び柱90b等の画像から抽出した特徴点PTに基づいて推定した第1自己位置を自己位置SPとして採用する。   As shown in FIGS. 13 and 14, the self-position estimation unit 42 of the first moving body 92c performs the second operation based on the recognized height of the mark MK1, the distance to the mark MK1, and the deviation from the center of the mark MK1. Estimate self-position. If the estimated second self-position is within the predetermined determination range JR3, the self-position estimation unit 42 resets and corrects the self-position SP adopting the first self-position according to the second self-position. To do. Note that the predetermined determination range JR3 is defined by a rectangular parallelepiped or a cube including position information in the X direction, the Y direction, and the Z direction. If the estimated second self-position is outside the determination range JR3, the self-position estimation unit 42 estimates based on the feature points PT extracted from the images of the wall 90a, the pillar 90b, and the like without adopting the second self-position. The first self-position is used as the self-position SP.

第2移動体92dの自己位置推定部42は、マークMK2の高さ、マークMK2までの距離及びマークMK2の中心からのずれに基づいて第2自己位置を推定する。自己位置推定部42は、推定した当該第2自己位置が予め定められた判定範囲JR4内の場合、第2移動体92dは旋回して、認識した別のマークMK3に基づいて、第2自己位置を推定してもよい。この場合、第2移動体92dの自己位置推定部42は、自己位置SPが判定範囲JR4内であれば、当該第2自己位置によって自己位置SPをリセットして補正してよい。これにより、画像処理装置16は、より自己位置SPの推定精度を向上できる。   The self-position estimating unit 42 of the second moving body 92d estimates the second self-position based on the height of the mark MK2, the distance to the mark MK2, and the deviation from the center of the mark MK2. When the estimated second self-position is within the predetermined determination range JR4, the self-position estimation unit 42 turns and moves the second mobile body 92d based on another recognized mark MK3. May be estimated. In this case, if the self position SP is within the determination range JR4, the self position estimation unit 42 of the second moving body 92d may reset and correct the self position SP by the second self position. Thereby, the image processing apparatus 16 can further improve the estimation accuracy of the self-position SP.

図15は、本実施形態に係る画像処理装置16のハードウェア構成を模式的に示すブロック図である。図15に示すように、本実施形態に係る画像処理装置16は、CPU(Central Processing Unit)50と、RAM(Random Access Memory)52と、ROM(Read Only Memory)54と、HDD(Hard Disk Drive)56と、I/F58と、バス60とを備えるコンピュータである。CPU50、RAM52、ROM54、HDD56及びI/F58は、バス60を介して、接続されている。また、I/F58にはLCD(Liquid Crystal Display)等の表示部62及び操作部64が接続されている。   FIG. 15 is a block diagram schematically showing a hardware configuration of the image processing apparatus 16 according to the present embodiment. As shown in FIG. 15, the image processing apparatus 16 according to the present embodiment includes a CPU (Central Processing Unit) 50, a RAM (Random Access Memory) 52, a ROM (Read Only Memory) 54, and an HDD (Hard Disk Drive). ) 56, I / F 58, and bus 60. The CPU 50, RAM 52, ROM 54, HDD 56 and I / F 58 are connected via a bus 60. Further, a display unit 62 such as an LCD (Liquid Crystal Display) and an operation unit 64 are connected to the I / F 58.

CPU50はプロセッサ等の演算手段である。CPU50は、画像処理装置16の制御全般を司る。RAM52は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU50が情報を処理する際の作業領域として用いられる。ROM54は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムを格納する。HDD56は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)、各種の制御プログラム、及び、アプリケーション・プログラム等を格納する。   The CPU 50 is a calculation means such as a processor. The CPU 50 governs overall control of the image processing device 16. The RAM 52 is a volatile storage medium capable of reading and writing information at high speed, and is used as a work area when the CPU 50 processes information. The ROM 54 is a read-only nonvolatile storage medium and stores programs such as firmware. The HDD 56 is a nonvolatile storage medium capable of reading and writing information, and stores an OS (Operating System), various control programs, application programs, and the like.

I/F58は、バス60と各種のハードウェアやネットワーク等を接続し制御する。表示部62は、利用者が画像処理装置16の状態を確認するための視覚的利用者インタフェースである。操作部64は、キーボード、マウス、各種のハードボタン、タッチパネル等、ユーザが画像処理装置16に情報を入力するためのユーザインタフェースである。   The I / F 58 connects and controls the bus 60 and various hardware and networks. The display unit 62 is a visual user interface for the user to check the state of the image processing apparatus 16. The operation unit 64 is a user interface for a user to input information to the image processing apparatus 16 such as a keyboard, a mouse, various hard buttons, and a touch panel.

本実施の形態の画像処理装置16が実行する自己位置推定プログラムは、上述した各部(画像取得部20、フレームメモリ22、画像補正部24、画像メモリ26、特徴点抽出部28、特徴点格納メモリ30、特徴点追跡部32、追跡結果格納メモリ34、マーク認識部36、マーク情報格納メモリ38、マーク認識結果格納メモリ40、自己位置推定部42)を含むモジュール構成となっている。実際のハードウェアとしてはCPU50が上記ROM54から自己位置推定プログラムを読み出して実行することにより、上記各部が主記憶装置上にロードされる。これにより、画像取得部20、フレームメモリ22、画像補正部24、画像メモリ26、特徴点抽出部28、特徴点格納メモリ30、特徴点追跡部32、追跡結果格納メモリ34、マーク認識部36、マーク情報格納メモリ38、マーク認識結果格納メモリ40、自己位置推定部42が主記憶装置上に生成されて、これらの機能がコンピュータに実現されるようになっている。   The self-position estimation program executed by the image processing apparatus 16 according to the present embodiment includes the above-described units (image acquisition unit 20, frame memory 22, image correction unit 24, image memory 26, feature point extraction unit 28, feature point storage memory). 30, a feature point tracking unit 32, a tracking result storage memory 34, a mark recognition unit 36, a mark information storage memory 38, a mark recognition result storage memory 40, and a self-position estimation unit 42). As actual hardware, the CPU 50 reads out and executes the self-position estimation program from the ROM 54, whereby the above-described units are loaded onto the main storage device. Accordingly, the image acquisition unit 20, the frame memory 22, the image correction unit 24, the image memory 26, the feature point extraction unit 28, the feature point storage memory 30, the feature point tracking unit 32, the tracking result storage memory 34, the mark recognition unit 36, A mark information storage memory 38, a mark recognition result storage memory 40, and a self-position estimation unit 42 are generated on the main storage device, and these functions are realized in a computer.

例えば、本実施の形態の画像処理装置16で実行される自己位置推定プログラムは、ROM54等に予め組み込まれて提供される。本実施の形態の画像処理装置16で実行される自己位置推定プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。   For example, the self-position estimation program executed by the image processing device 16 of the present embodiment is provided by being incorporated in advance in the ROM 54 or the like. The self-position estimation program executed by the image processing apparatus 16 according to the present embodiment is a file in an installable or executable format, and is a CD-ROM, flexible disk (FD), CD-R, DVD (Digital Versatile Disk). ) Or the like may be recorded and provided on a computer-readable recording medium.

さらに、本実施の形態の画像処理装置16で実行される自己位置推定プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態の画像処理装置16で実行される自己位置推定プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。   Furthermore, the self-position estimation program executed by the image processing apparatus 16 according to the present embodiment may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. good. Further, the self-position estimation program executed by the image processing apparatus 16 of the present embodiment may be provided or distributed via a network such as the Internet.

上述した各実施形態の構成の機能、接続関係、個数等は適宜変更してよい。上述した各実施形態は、適宜組み合わせてもよい。上述したフローチャートのステップの順序は適宜変更してよい。   The function, connection relationship, number, and the like of the configuration of each embodiment described above may be changed as appropriate. Each embodiment mentioned above may be combined suitably. You may change suitably the order of the step of the flowchart mentioned above.

例えば、画像取得部20は、カメラ14によって撮影された画像を取得したが、測距装置等によって撮影された測距画像等を取得してもよい。   For example, the image acquisition unit 20 acquires an image captured by the camera 14, but may acquire a distance measurement image captured by a distance measuring device or the like.

上述の実施形態では、自己位置推定部42が、特徴点PTのオプティカルフローFLによる第1自己位置を採用した自己位置SPを、第2自己位置によって補正する例をあげたが、実施形態はこれに限定されない。例えば、自己位置推定部42は、第2自己位置を自己位置SPとして採用しつつ、第2自己位置が判定範囲JR1、JR2外の場合に、第1自己位置を自己位置SPとして採用することにより、自己位置SPを補正してもよい。   In the above-described embodiment, the self-position estimating unit 42 corrects the self-position SP using the first self-position based on the optical flow FL of the feature point PT by the second self-position. It is not limited to. For example, the self-position estimating unit 42 adopts the first self-position as the self-position SP when the second self-position is outside the determination ranges JR1 and JR2 while adopting the second self-position as the self-position SP. The self position SP may be corrected.

上述の実施形態では、(n−1)番目の特徴点PTを追跡結果格納メモリ34に格納して、テンプレートパッチTPを生成する例を示したが、予め(n−1)番目の特徴点PTに基づいてテンプレートパッチTPを生成して、追跡結果格納メモリ34に格納してもよい。   In the above-described embodiment, the example in which the (n−1) th feature point PT is stored in the tracking result storage memory 34 and the template patch TP is generated has been described, but the (n−1) th feature point PT is previously stored. The template patch TP may be generated based on the above and stored in the tracking result storage memory 34.

上述の実施形態は、例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。実施形態および実施形態の変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   The above-described embodiments have been presented by way of example and are not intended to limit the scope of the present invention. The novel embodiment can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. The embodiments and modifications of the embodiments are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

16…画像処理装置
32…特徴点追跡部
36…マーク認識部
42…自己位置推定部
92…移動体
FL…オプティカルフロー
HD1…高さ
HD2…高さ
IG…画像
MK…マーク
PT…特徴点
SP…自己位置
16 ... Image processing device 32 ... Feature point tracking unit 36 ... Mark recognition unit 42 ... Self-position estimation unit 92 ... Moving body FL ... Optical flow HD1 ... Height HD2 ... Height IG ... Image MK ... Mark PT ... Feature point SP ... Self-position

特許第4369439号公報Japanese Patent No. 4369439

Claims (9)

撮影された被写体の画像から抽出された前記被写体の特徴点を追跡する特徴点追跡部と、
前記画像内の予め設けられたマークを認識するマーク認識部と、
前記特徴点の追跡結果に基づいて第1自己位置を推定し、前記マークに基づいて第2自己位置を推定し、予め定められた条件に基づいて、前記第1自己位置及び前記第2自己位置のいずれか一方を自己位置として採用する自己位置推定部と、
を備える画像処理装置。
A feature point tracking unit that tracks feature points of the subject extracted from the image of the photographed subject;
A mark recognition unit for recognizing a mark provided in advance in the image;
A first self-position is estimated based on the tracking result of the feature points, a second self-position is estimated based on the mark, and the first self-position and the second self-position are determined based on a predetermined condition. A self-position estimation unit that employs one of
An image processing apparatus comprising:
前記自己位置推定部は、予めパターン情報が設定された前記マークの位置情報に基づいて、前記第2自己位置を推定する
請求項1に記載の画像処理装置。
The image processing apparatus according to claim 1, wherein the self-position estimation unit estimates the second self-position based on position information of the mark in which pattern information is set in advance.
前記自己位置推定部は、水平方向に移動しつつ撮影された前記画像から前記マークを認識して、自己の高さに基づいて前記第2自己位置を推定する
請求項1または2に記載の画像処理装置。
3. The image according to claim 1, wherein the self-position estimation unit recognizes the mark from the image captured while moving in the horizontal direction, and estimates the second self-position based on a height of the self. Processing equipment.
前記自己位置推定部は、前記マークの高さ情報を含むマーク情報に基づいて、前記第2自己位置の高さを推定する
請求項1から3のいずれか1項に記載の画像処理装置。
The image processing apparatus according to any one of claims 1 to 3, wherein the self-position estimating unit estimates the height of the second self-position based on mark information including height information of the mark.
前記自己位置推定部は、前記マークの高さ情報及び前記マークまでの距離と、前記マークの中心からのずれに基づいて、前記第2自己位置を推定する
請求項1から4のいずれか1項に記載の画像処理装置。
The said self-position estimation part estimates the said 2nd self-position based on the height information of the said mark, the distance to the said mark, and the shift | offset | difference from the center of the said mark. An image processing apparatus according to 1.
前記自己位置推定部は、一のマークから推定した前記第2自己位置が予め定められた範囲内の場合、他のマークに基づいて前記第2自己位置を補正する
請求項1から5のいずれか1項に記載の画像処理装置。
The said self-position estimation part correct | amends the said 2nd self-position based on another mark, when the said 2nd self-position estimated from one mark is in the predetermined range. The image processing apparatus according to item 1.
前記自己位置推定部は、前記第1自己位置を前記自己位置として採用している状態で、前記第2自己位置が前記予め定められた条件を満たしている場合、前記第2自己位置を前記自己位置として採用して補正する
請求項1から6のいずれか1項に記載の画像処理装置。
The self-position estimation unit adopts the second self-position when the second self-position satisfies the predetermined condition in a state where the first self-position is adopted as the self-position. The image processing apparatus according to claim 1, wherein the position is corrected by being adopted as a position.
撮影された被写体の画像から抽出された前記被写体の特徴点を追跡する特徴点追跡段階と、
前記画像内の予め設けられたマークを認識するマーク認識段階と、
前記特徴点の追跡結果に基づいて第1自己位置を推定し、前記マークに基づいて第2自己位置を推定し、予め定められた条件に基づいて、前記第1自己位置及び前記第2自己位置のいずれか一方を自己位置として採用する自己位置推定段階と、
を備える自己位置推定方法。
A feature point tracking step for tracking feature points of the subject extracted from the image of the photographed subject;
A mark recognition stage for recognizing a pre-set mark in the image;
A first self-position is estimated based on the tracking result of the feature points, a second self-position is estimated based on the mark, and the first self-position and the second self-position are determined based on a predetermined condition. A self-position estimation stage that employs either one of
A self-position estimation method comprising:
撮影された被写体の画像から抽出された前記被写体の特徴点を追跡する特徴点追跡機能と、
前記画像内の予め設けられたマークを認識するマーク認識機能と、
前記特徴点の追跡結果に基づいて第1自己位置を推定し、前記マークに基づいて第2自己位置を推定し、予め定められた条件に基づいて、前記第1自己位置及び前記第2自己位置のいずれか一方を自己位置として採用する自己位置推定機能と、
をコンピュータに実現させるプログラム。
A feature point tracking function for tracking feature points of the subject extracted from the image of the photographed subject;
A mark recognition function for recognizing a mark provided in advance in the image;
A first self-position is estimated based on the tracking result of the feature points, a second self-position is estimated based on the mark, and the first self-position and the second self-position are determined based on a predetermined condition. A self-position estimation function that adopts either one as self-position,
A program that makes a computer realize.
JP2016100158A 2016-05-19 2016-05-19 Image processing apparatus, self position estimation method and program Pending JP2017207942A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016100158A JP2017207942A (en) 2016-05-19 2016-05-19 Image processing apparatus, self position estimation method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016100158A JP2017207942A (en) 2016-05-19 2016-05-19 Image processing apparatus, self position estimation method and program

Publications (1)

Publication Number Publication Date
JP2017207942A true JP2017207942A (en) 2017-11-24

Family

ID=60417123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016100158A Pending JP2017207942A (en) 2016-05-19 2016-05-19 Image processing apparatus, self position estimation method and program

Country Status (1)

Country Link
JP (1) JP2017207942A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019130931A1 (en) * 2017-12-26 2019-07-04 パナソニックIpマネジメント株式会社 Position measurement device and vehicle
JP2019117585A (en) * 2017-12-27 2019-07-18 株式会社ダイヘン Mobile body
JP2019117584A (en) * 2017-12-27 2019-07-18 株式会社ダイヘン Mobile body
DE102019131565A1 (en) 2018-12-13 2020-06-18 Denso Ten Limited IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD
WO2021002001A1 (en) * 2019-07-04 2021-01-07 三菱電機株式会社 Moving body positioning device and moving body positioning system
JP2023520278A (en) * 2021-02-25 2023-05-17 シェンチェン テトラス.エーアイ テクノロジー カンパニー リミテッド Positioning method, device, electronic device, storage medium, program and product

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019130931A1 (en) * 2017-12-26 2019-07-04 パナソニックIpマネジメント株式会社 Position measurement device and vehicle
JP2019117585A (en) * 2017-12-27 2019-07-18 株式会社ダイヘン Mobile body
JP2019117584A (en) * 2017-12-27 2019-07-18 株式会社ダイヘン Mobile body
JP7021943B2 (en) 2017-12-27 2022-02-17 株式会社ダイヘン Mobile
JP7021942B2 (en) 2017-12-27 2022-02-17 株式会社ダイヘン Mobile
DE102019131565A1 (en) 2018-12-13 2020-06-18 Denso Ten Limited IMAGE PROCESSING DEVICE AND IMAGE PROCESSING METHOD
WO2021002001A1 (en) * 2019-07-04 2021-01-07 三菱電機株式会社 Moving body positioning device and moving body positioning system
JPWO2021002001A1 (en) * 2019-07-04 2021-10-28 三菱電機株式会社 Mobile positioning device and mobile positioning system
JP7006847B2 (en) 2019-07-04 2022-01-24 三菱電機株式会社 Mobile positioning device and mobile positioning system
CN114127506A (en) * 2019-07-04 2022-03-01 三菱电机株式会社 Mobile positioning device and mobile positioning system
JP2023520278A (en) * 2021-02-25 2023-05-17 シェンチェン テトラス.エーアイ テクノロジー カンパニー リミテッド Positioning method, device, electronic device, storage medium, program and product
JP7387002B2 (en) 2021-02-25 2023-11-27 シェンチェン テトラス.エーアイ テクノロジー カンパニー リミテッド Positioning methods, devices, electronic devices, storage media, programs and products

Similar Documents

Publication Publication Date Title
JP2017207942A (en) Image processing apparatus, self position estimation method and program
CN110411441B (en) System and method for multi-modal mapping and localization
US8588471B2 (en) Method and device of mapping and localization method using the same
US10917593B2 (en) Camera calibration device that estimates internal parameter of camera
WO2018142900A1 (en) Information processing device, data management device, data management system, method, and program
JP5870273B2 (en) Object detection apparatus, object detection method, and program
KR101776621B1 (en) Apparatus for recognizing location mobile robot using edge based refinement and method thereof
KR101633620B1 (en) Feature registration apparatus for image based localization and method the same
WO2016035324A1 (en) Method for estimating motion, mobile agent and non-transitory computer-readable medium encoded with a computer program code for causing a processor to execute a method for estimating motion
JP5803367B2 (en) Self-position estimation apparatus, self-position estimation method and program
JP2006252473A (en) Obstacle detector, calibration device, calibration method and calibration program
KR20110097140A (en) Apparatus for estimating location of moving robot and method thereof
JP5819257B2 (en) Moving object position estimation method and moving object
JP6187671B2 (en) Self-position calculation device and self-position calculation method
JP5710752B2 (en) Detection apparatus, method and program
JP6499047B2 (en) Measuring device, method and program
JP7147753B2 (en) Information processing device, information processing method, and program
KR102103944B1 (en) Distance and position estimation method of autonomous vehicle using mono camera
JP6479296B2 (en) Position / orientation estimation apparatus and position / orientation estimation method
JP4132068B2 (en) Image processing apparatus, three-dimensional measuring apparatus, and program for image processing apparatus
JPWO2012133371A1 (en) Imaging position and imaging direction estimation apparatus, imaging apparatus, imaging position and imaging direction estimation method, and program
JP2016148956A (en) Positioning device, positioning method and positioning computer program
Goronzy et al. QRPos: Indoor positioning system for self-balancing robots based on QR codes
KR102195040B1 (en) Method for collecting road signs information using MMS and mono camera
WO2017090097A1 (en) Outside recognition device for vehicle