JP7220591B2 - 自己位置推定装置、自己位置推定方法及びプログラム - Google Patents
自己位置推定装置、自己位置推定方法及びプログラム Download PDFInfo
- Publication number
- JP7220591B2 JP7220591B2 JP2019041991A JP2019041991A JP7220591B2 JP 7220591 B2 JP7220591 B2 JP 7220591B2 JP 2019041991 A JP2019041991 A JP 2019041991A JP 2019041991 A JP2019041991 A JP 2019041991A JP 7220591 B2 JP7220591 B2 JP 7220591B2
- Authority
- JP
- Japan
- Prior art keywords
- self
- position estimation
- key frame
- map
- keyframe
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 55
- 238000012545 processing Methods 0.000 claims description 139
- 230000008569 process Effects 0.000 claims description 46
- 230000015654 memory Effects 0.000 claims description 26
- 230000002265 prevention Effects 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 10
- 230000004807 localization Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 25
- 230000009466 transformation Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 17
- 238000001514 detection method Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000003860 storage Methods 0.000 description 8
- 238000012217 deletion Methods 0.000 description 7
- 230000037430 deletion Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000009499 grossing Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B66—HOISTING; LIFTING; HAULING
- B66F—HOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD
- B66F9/00—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes
- B66F9/06—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes movable, with their loads, on wheels or the like, e.g. fork-lift trucks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B66—HOISTING; LIFTING; HAULING
- B66F—HOISTING, LIFTING, HAULING OR PUSHING, NOT OTHERWISE PROVIDED FOR, e.g. DEVICES WHICH APPLY A LIFTING OR PUSHING FORCE DIRECTLY TO THE SURFACE OF A LOAD
- B66F9/00—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes
- B66F9/06—Devices for lifting or lowering bulky or heavy goods for loading or unloading purposes movable, with their loads, on wheels or the like, e.g. fork-lift trucks
- B66F9/075—Constructional features or details
- B66F9/0755—Position control; Position detectors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/3415—Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/343—Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/14—Transformations for image registration, e.g. adjusting or mapping for alignment of images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Structural Engineering (AREA)
- Multimedia (AREA)
- Civil Engineering (AREA)
- Life Sciences & Earth Sciences (AREA)
- Geology (AREA)
- Mechanical Engineering (AREA)
- Aviation & Aerospace Engineering (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Image Analysis (AREA)
Description
ORB-SLAMによる自己位置推定処理では、カメラから取得された視界画像(フレーム)によって観測された特徴点と、地図上に記録された特徴点とを整合(マッチング)することで、その視界画像取得時のカメラの世界座標上における位置及び姿勢を推定する。この際、カメラから取得された視界画像に対し、特徴点の位置関係が最も近いキーフレーム(カレントキーフレーム)を特定し、このカレントキーフレームを足掛かりとすることで自己位置推定処理の高速化を図ることができる。
カメラから取得された視界画像によって観測された特徴点と、地図上に記録された特徴点との整合数が少ない(つまり、取得した視界画像に、地図上に記録された特徴点がほとんど映っていない)場合などにおいては、自己位置推定処理に失敗し、自己の位置及び姿勢を見失う(ロストする)ことが知られている。ORB-SLAMにおいては、自己の位置及び姿勢を見失うことなく、安定した自己位置推定処理を行うことが求められている。
以下、第1の実施形態に係る自己位置推定装置、及び、これを備える移動体について、図1~図7を参照しながら説明する。
図1は、第1の実施形態に係るフォークリフトの全体構成を示す図である。
図1に示すフォークリフト1は、移動体の一態様であり、予め定められたルートに沿って目標地点まで自律走行する無人フォークリフトである。
このレーザスキャナは、LiDARに利用されるセンサであって、広範囲に渡って走査されるレーザの反射に基づき、レーザスキャナの周囲に配置された構造物との間隔を測距可能なセンサである。レーザスキャナによって得られた広範囲に渡る測距を利用したSLAMであるLiDAR-SLAMにより、ORB-SLAMによる自己位置推定処理よりも高い精度でフォークリフト1の位置及び姿勢を推定することができる。
図2は、第1の実施形態に係る自己位置推定装置の機能構成を示す図である。
図2に示すように、自己位置推定装置10は、CPU100と、メモリ101と、ストレージ102と、通信インタフェース103とを備えている。
CPU100は、自己位置推定装置10の動作全体を司るプロセッサであって、予め用意されたプログラムに従って動作することで種々の機能を発揮する。
メモリ101は、例えばDRAM等いわゆる主記憶装置であって、CPU100がプログラムに従って高速で動作するために必要な記憶領域である。
ストレージ102は、例えばHDD、SSD等のいわゆる補助記憶装置であって、自己位置推定装置10の処理に必要な情報が予め記録されている。
通信インタフェース103は、カメラ11、タイヤ回転角センサ12、舵角センサ13、ジャイロセンサ14等と通信するための接続インタフェースである。
CPU100は、予め用意されたプログラムに従って動作することで、視界画像取得部1000(取得部)、自己位置推定処理部1001(推定部)、キーフレーム登録部1002(登録部)、地図読出部1003(読出部)、及び、リローカリゼーション処理部1004(処理部)としての機能を発揮する。
図3は、第1の実施形態に係るキーフレームテーブルの例を示す図である。
キーフレーム登録部1002は、地図作成時において、所定の条件を満たした視界画像を、キーフレームとして、キーフレームテーブルに登録する。
図3に示すように、キーフレームテーブルは、「キーフレーム番号」、「視界画像」、「画像上の特徴点の位置」、「対応する地図上の特徴点」、「移動体の位置、姿勢」及び「変換行列」が関連付けられて記録される。
「キーフレーム番号」は、キーフレームを特定するために割り振られる識別番号である。
「視界画像」は、視界画像そのものの画像データである。なお、他の実施形態においては視界画像の画像データが記録される態様に限定されず、画像データよりも容量が小さく、かつ、画像の類似度を測るのに適した別の形式で記録される態様であってもよい。例えば、BoW(Bag of Words)と呼ばれる、特徴ベクトルの統計情報であってもよい。
「画像上の特徴点の位置」は、視界画像よって観測された特徴点の画像上の位置(ピクセル座標(px、py)で特定される位置)である。図3に示すキーフレームテーブルによれば、例えば、キーフレーム番号“n”のキーフレーム(視界画像)からは、特徴点q1_n、q2_n、q3_n、・・が観測され、それぞれ、視界画像上の位置(px、py)で特定されている。
「対応する地図上の特徴点」は、キーフレームによって観測された特徴点に対応する地図M上の特徴点を示す。図3に示すキーフレームテーブルによれば、例えば、キーフレーム番号“n”のキーフレームによって観測された特徴点q1_n、q2_n、q3_n、・・は、地図Mの世界座標上にプロットされた特徴点Q2、Q4、Q5、・・にそれぞれ対応する。地図M上の各特徴点Q2、Q4、Q5、・・は、それぞれ、世界座標値(X,Y,Z)で規定される。
「移動体の位置、姿勢」は、各キーフレームを取得した際のフォークリフト1(カメラ11)の地図M上の位置及び姿勢が記録される。図3に示すキーフレームテーブルには、例えば、キーフレーム番号“n”のキーフレームを取得した際のフォークリフト1の位置Pn(X,Y,Z)及び姿勢An(θx,θy,θz)が記録されている。なお、後述するように、ここに記録されるフォークリフト1の位置Pn(X,Y,Z)及び姿勢An(θx,θy,θz)は、ORB-SLAMによる自己位置推定処理によって推定された位置及び姿勢ではなく、LiDAR-SLAMによる自己位置推定処理によって推定された位置及び姿勢が記録される。したがって、ORB-SLAMによる自己位置推定処理の結果よりも精度の高い結果として得られる。以下の説明においては、この項に記録された位置及び姿勢を、フォークリフト1の位置及び姿勢の真値として扱う。
「変換行列」は、ORB-SLAMによる自己位置推定処理の結果を、真値に変換するための変換行列である。変換行列は、各キーフレームに紐づけて記録される。図3に示すキーフレームテーブルには、例えば、キーフレーム番号“n”のキーフレームに紐づく変換行列Tnが記録されている。この変換行列Tnは、キーフレーム番号“n”のキーフレームを取得した際のフォークリフト1のORB-SLAMによる自己位置推定処理の結果の、真値からの偏差(ずれ)を補正するように算出された変換行列である。
図4は、第1の実施形態に係る地図の例を示す図である。
地図Mは、キーフレームテーブル(図3)に基づいて作成され、図4に示すような、世界座標を基準とする各種情報群として記録される。
地図作成時において、自己位置推定装置10は、走行ルートRの走行中にカメラ11から取得される視界画像のうち、所定の条件を満たしたものをキーフレームKFとしてキーフレームテーブル(図3)に登録する。ここで、走行ルートRは、例えば、フォークリフト1の実運用時において走行することが予定されている走行ルートである。
図4に示すように、地図Mには、各キーフレームKF取得時のフォークリフト1の位置及び姿勢の真値である位置P(X,Y,Z)及び姿勢A(θx,θy,θz)と、各キーフレームKFによって観測された特徴点Qの世界座標上の位置(X,Y,Z)とが記録される。図3で説明したように、世界座標上にプロットされた各特徴点Qは、当該特徴点Qを観測したキーフレームKFと紐づけられている。なお、図4に示す構造物Gは、キーフレームKFに映り込む構造物である。各特徴点Qは、キーフレームKFに映り込んだ構造物G等に基づいて観測される。
図5は、第1の実施形態に係る変換行列を説明する図である。
図3に示すキーフレームテーブルの「変換行列」(Tn-1、Tn、Tn+1、・・)は、以下のようにして求められる。
図5において、ある時点に取得された視界画像をキーフレームKFn-1としてキーフレームテーブル(図3)に登録する場合の処理を考える。この場合、自己位置推定装置10は、当該視界画像取得時のフォークリフト1の位置及び姿勢を、作成中の地図Mに基づくORB-SLAMにより推定する。図5において、この推定結果を位置Pn-1’、姿勢An-1’とする。他方、自己位置推定装置10は、地図作成時に搭載されているレーザスキャナを通じて、キーフレームKFn-1取得時のフォークリフト1の位置及び姿勢の真値を取得することができる。図5において、フォークリフト1の位置及び姿勢の真値を位置Pn-1、姿勢An-1とする。自己位置推定装置10は、キーフレームKFn-1を登録する際、位置Pn-1’、姿勢An-1’を真値である位置Pn-1、姿勢An-1に写像するための変換行列Tn-1を算出し、これをキーフレームKFn-1に紐づけてキーフレームテーブルに記録する。
自己位置推定装置10は、新たなキーフレームKFn、KFn+1、・・を登録する度に、各キーフレームKFn、KFn+1、・・に対応する変換行列Tn、Tn+1、・・を算出し、キーフレームテーブルに記録する。
図6は、第1の実施形態に係る自己位置推定装置による地図作成時の処理フローを示す図である。
図6に示す処理フローは、地図作成時におけるフォークリフト1の走行中に繰り返し実行される。この時点では、作成途中の地図Mが既にメモリ101上に読み込まれているものとする。
自己位置推定装置10の自己位置推定処理部1001は、ステップS00で取得された視界画像と、作成途中の地図Mとに基づいてORB-SLAMによる自己位置推定処理を行う。ここで、自己位置推定処理部1001は、ステップS00で取得された視界画像によって観測された特徴点と、地図M上に記録された特徴点とを整合(マッチング)することで、その視界画像取得時のカメラの世界座標上における位置及び姿勢を推定する。この際、自己位置推定処理部1001は、ステップS00で取得された視界画像に対し、特徴点の位置関係が最も近いキーフレーム(カレントキーフレーム)を1つ特定する。そして、自己位置推定処理部1001は、このカレントキーフレーム、及び、当該カレントキーフレームと時系列で前後する他のキーフレームに紐づけられた地図上の特徴点を参照しながら、視界画像によって観測された特徴点と整合するものを検索する。このようにすることでORB-SLAMによる自己位置推定処理の高速化を図ることができる。
ORB-SLAMによる自己位置推定処理が成功した場合(ステップS02;YES)、ステップS00で取得した視界画像をキーフレームとして登録すべきか否かの判定処理(ステップS05~ステップS07)に進む。当該処理の詳細については後述する。
ORB-SLAMによる自己位置推定処理が失敗した場合(ステップS02;NO)、自己位置推定装置10のリローカリゼーション処理部1004は、リローカリゼーションを行う(ステップS03)。本実施形態に係るリローカリゼーション処理部1004は、キーフレームテーブルに登録されている全てのキーフレームを対象に探索を行う。
リローカリゼーション処理部1004は、ステップS03のリローカリゼーションに成功したか否かを判定する(ステップS04)。リローカリゼーションに失敗した場合(ステップS04;NO)、リローカリゼーション処理部1004は、ステップS04に戻り、リローカリゼーションを引き続き実行する。リローカリゼーションにより位置及び姿勢を推定できた(成功した)場合(ステップS04;YES)、自己位置推定装置10は上記判定処理(ステップS05~ステップS07)に進む。
ステップS00で取得された視界画像に新たな特徴点が所定数以上観測された場合(ステップS05;YES)、キーフレーム登録部1002は、ステップS00で取得された視界画像をキーフレームとして登録する(ステップS08)。
ORB-SLAMによる自己位置推定処理で推定された位置がカレントキーフレームの位置から所定の距離閾値以上離れていた場合(ステップS06;YES)、キーフレーム登録部1002は、ステップS00で取得された視界画像をキーフレームとして登録する(ステップS08)。
視界画像取得時におけるフォークリフト1の角速度が所定の角速度閾値以上となっていた場合(ステップS07;YES)、キーフレーム登録部1002は、ステップS00で取得された視界画像をキーフレームとして登録する(ステップS08)。
また、キーフレーム登録部1002は、キーフレームとしての登録後、更に、バンドル処理等の後処理を実施する。
図7は、第1の実施形態に係る自己位置推定装置による実運用時の処理フローを示す図である。
地図完成後の実運用時において、自己位置推定装置10は、以下に示すステップSa0~ステップSa3の流れで、ORB-SLAMによる自己位置推定処理を行う。
次に、自己位置推定処理部1001は、視界画像Faによって観測された特徴点と、作成済みの地図Mとに基づいてORB-SLAMによる自己位置推定処理を行う(ステップSa1)。この処理で推定されたフォークリフト1の位置及び姿勢をそれぞれ、位置Pa’、姿勢Aa’とする。
次に、自己位置推定処理部1001は、キーフレームテーブルに登録されているキーフレームのうち、ステップSa0で取得された視界画像Faと、特徴点の位置関係が最も近いキーフレームであるカレントキーフレームを特定する(ステップSa2)。ここで特定されたカレントキーフレームが、キーフレーム番号“n”のキーフレーム(キーフレームKFn)であったとする。
次に、自己位置推定装置10は、ORB-SLAMによって推定された位置Pa’、姿勢Aa’に対し、カレントキーフレーム(キーフレームKFn)に紐づく変換行列Tnを乗じて、最終的な位置Pa及び姿勢Aaを演算する。
以上の通り、第1の実施形態に係る自己位置推定装置10は、例えば、図6のステップS06、ステップS07の処理のように、フォークリフト1の移動が、当該フォークリフト1の位置及び姿勢の少なくともいずれかについて予め規定された条件を満たした場合に、視界画像をキーフレームとして登録することを特徴とする。
即ち、ステップS05の判定処理は、視界画像において地図M上に記録されていない新たな特徴点が所定数以上観測されたか否かに基づいて、当該視界画像をキーフレームとして登録するか否かを判定するものである。この場合、例えば、カメラ11が向く方向に直進する場合などにおいては、前回のキーフレームと比較して新たな特徴点が観測されにくくなるため、キーフレームの間隔が疎になりやすい。キーフレームの間隔が疎になると地図M上に記録される特徴点の数も減るため、ロストしやすくなることが想定される。
また、フォークリフト1の旋回移動時には短時間で視界が大きく変わるため、ロストしやすくなることが知られている。そのため、安定した自己位置推定を実現するためには、特に、フォークリフト1の旋回位置周辺において充分に密な間隔でキーフレームが登録されていることが望まれる。
更に、キーフレームの間隔が疎になると、カレントキーフレームとの距離が離れてしまうため、各キーフレームに紐づく変換行列による自己位置推定処理の補正精度も低下する。したがって、変換行列による補正精度を高める観点からも、適切な密度でキーフレームが登録されていることが好ましい。
このようにすることで、例えば、キーフレームが疎となりやすい直進時や、キーフレームをより密とすべき旋回時など、条件に応じた特定の移動態様が発生した場合に、従来よりもキーフレームが登録されやすくなる。したがって、フォークリフト1の移動に応じた適切な間隔でキーフレームが挿入されることとなり、カメラを用いた自己位置推定処理の安定化を図ることができる。
このようにすることで、特に直進時など、新たな特徴点が観測されにくい状況にあったとしても、距離判定閾値以下の間隔でキーフレームが登録されることとなり、キーフレームが疎となることを抑制することができる。
このようにすることで、旋回角速度が所定の角速度閾値以上となった場合には、その分だけ密にキーフレームが登録されることとなり、旋回時にロストすることを抑制することができる。
ORB-SLAMによる地図作成時において、あるキーフレームに含まれる特徴点が十分多くの他のキーフレームによって観測されている場合、データ量削減の観点から、そのキーフレームを削除する間引き処理を行う場合がある。この間引き処理によって、キーフレームの密度が低減してしまうことを防止するため、本実施形態の変形例に係る自己位置推定装置10は、地図作成時において、図8に示すような処理を行ってもよい。
図8は、第1の実施形態の変形例に係る自己位置推定装置による地図作成時の処理フローを示す図である。
「prev2」で指し示されるキーフレームの位置と「latest」で指し示されるキーフレームの位置との距離が所定距離未満であった場合(ステップS11;NO)、次に、キーフレーム登録部1002は、「prev2」で指し示されるキーフレームの姿勢と「latest」で指し示されるキーフレームの姿勢との角度が所定角度以上か否かを判定する(ステップS12)。
「prev2」で指し示されるキーフレームの姿勢と「latest」で指し示されるキーフレームの姿勢との角度が所定角度未満であった場合(ステップS12;NO)、次に、キーフレーム登録部1002は、カレントキーフレームが「prev1」で指し示されるキーフレームか否かを判定する(ステップS13)。
したがって、上記の3つの条件の全てを満たした場合(ステップS11;NO、ステップS12;NO、かつ、ステップS13;YES)、自己位置推定装置10は、「prev1」のキーフレームに付されている削除防止フラグを削除し、「latest」で指し示されるキーフレームのポインタを「prev1」に置き換える(ステップS14)。
この後、キーフレーム登録部1002は、次のキーフレームを登録し、当該キーフレームに「latest」のポインタを割り当てる(ステップS15)。
この後、キーフレーム登録部1002は、次のキーフレームを登録し、当該キーフレームに「latest」のポインタを割り当てる(ステップS17)。
そして、キーフレーム登録部1002は、消去防止フラグを付するか否かの判断を行う対象キーフレーム(prev1)に対し、当該対象キーフレームよりも1つ前に登録されたキーフレーム(prev2)と、当該対象キーフレームよりも1つ後に登録されたキーフレーム(latest)との位置及び姿勢の関係に基づいて、当該対象キーフレームに消去防止フラグを付するか否かを判定する。
このようにすることで、キーフレーム密度に大きな影響を及ぼす可能性のあるキーフレームに削除防止フラグが設定されるので、間引き処理を行った後においても、フォークリフト1の位置、姿勢に応じた適切なキーフレームの密度を確保することができる。
以下、第2の実施形態に係る自己位置推定装置、及び、これを備える移動体について、図9、図10を参照しながら説明する。
図9は、第2の実施形態に係る地図読出部の処理を説明する図である。
第1の実施形態に係る地図読出部1003は、実運用時において、メモリ101上に地図Mの全てをロードする(読み出す)が、第2の実施形態に係る地図読出部1003は、地図Mの一部の領域をメモリ上に読み出す点で、第1の実施形態と相違する。
図10は、第2の実施形態に係る地図読出部の処理を説明する図である。
第2の実施形態の変形例に係る地図読出部1003は、実運用時において、特定の走行ルートに対応する読出領域MRに属するキーフレームのみをメモリ101上にロードする。図10において、読出領域MRは、走行ルートRに対応して規定されたものである。フォークリフト1が走行予定とする走行ルート(例えば走行ルートR)が変更された場合、地図読出部1003は、読出領域MRを、変更後の走行ルート(例えばルートR’)に対応するものに変更する。地図読出部1003は、第2の実施形態と同様に、読出領域MRに属するキーフレームKFaをメモリ101上にロードし、当該読出領域MRに属さないキーフレームKFbをメモリ101上からアンロードする。
以下、第3の実施形態に係る自己位置推定装置、及び、これを備える移動体について、図11、図12を参照しながら説明する。
図11は、第3の実施形態に係るリローカリゼーション処理部の処理フローを示す図である。
図12は、第3の実施形態に係るリローカリゼーション処理部の処理を説明する図である。
図11に示す処理フローは、地図作成時又は実運用時において、自己位置推定処理の失敗(ロスト)が発生した際に、第3の実施形態に係るリローカリゼーション処理部1004が実行するリローカリゼーションの処理の流れを示す。
次に、リローカリゼーション処理部1004は、キーフレームテーブル(図3)に登録された全てのキーフレームのうちいずれか1つを選択する(ステップS31)。
次に、リローカリゼーション処理部1004は、ステップS31で選択したキーフレームが、ロスト発生直前に推定されたフォークリフトの位置を基準にして、フォークリフト1の最大速度の制約を満たす範囲に存在するか否かを判定する(ステップS32)。
全てのキーフレームについて選択されていない場合(ステップS37;NO)、リローカリゼーション処理部1004は、次のキーフレームを選択し(ステップS38)、当該キーフレームについてステップS32~ステップS36の処理を行う。
以下、第4の実施形態に係る自己位置推定装置、及び、これを備える移動体について、図13を参照しながら説明する。
図13は、第4の実施形態に係る自己位置推定処理部の機能を説明する図である。
第4の実施形態に係る自己位置推定処理部1001は、フォークリフト1の位置及び姿勢の軌跡が平滑化されるように、自己位置推定処理によって推定される位置及び姿勢を修正する。
そこで、本実施形態に係る自己位置推定処理部1001は、自己位置推定処理によって推定された位置及び姿勢に対し、所定の平滑化処理を行う。自己位置推定処理部1001は、この平滑化処理を施して得られた位置及び姿勢を、フォークリフト1の位置及び姿勢として出力する。この平滑化処理は、例えば、移動平均フィルタ等を用いて実装することができる。
以上、第1~第4の実施形態に係る自己位置推定装置10及びこれを備える移動体(フォークリフト1)について詳細に説明したが、自己位置推定装置10及び移動体の具体的な態様は、上述のものに限定されることはなく、要旨を逸脱しない範囲内において種々の設計変更等を加えることは可能である。
10 自己位置推定装置
100 CPU
1000 視界画像取得部(取得部)
1001 自己位置推定処理部(推定部)
1002 キーフレーム登録部(登録部)
1003 地図読出部(読出部)
1004 リローカリゼーション処理部(処理部)
101 メモリ
102 ストレージ
103 通信インタフェース
11 カメラ
12 タイヤ回転角センサ
13 舵角センサ
14 ジャイロセンサ
M 地図
Claims (16)
- 移動体に搭載されたカメラから視界画像を取得する取得部と、
前記視界画像上における特徴点の位置と、世界座標上における複数の特徴点の位置が記録されてなる地図とに基づいて、前記世界座標上における前記移動体の位置及び姿勢を推定する自己位置推定処理を行う推定部と、
前記視界画像を、当該視界画像上に含まれる新たな特徴点を前記地図に追加するためのキーフレームとして登録する登録部と、
を備え、
前記登録部は、移動中の前記移動体の角速度が所定の角速度閾値以上となった場合に、前記視界画像をキーフレームとして登録する
自己位置推定装置。 - 前記登録部は、前記移動体の位置と、当該位置に紐づけられる1つの前記キーフレームとの距離が所定の距離閾値以上離れている場合に、前記視界画像をキーフレームとして登録する
請求項1に記載の自己位置推定装置。 - 前記登録部は、消去防止フラグの有無に基づいて、登録済の複数の前記キーフレームに対する間引き処理を行い、
複数の前記キーフレームの1つである対象キーフレームに対し、当該対象キーフレームよりも1つ前に登録されたキーフレームと、当該対象キーフレームよりも1つ後に登録されたキーフレームとの位置及び姿勢の少なくともいずれかの関係に基づいて、当該対象キーフレームに前記消去防止フラグを付するか否かを判定する
請求項1または請求項2に記載の自己位置推定装置。 - 前記地図のうちの一部の領域をメモリ上に読み出す読出部を更に備える
請求項1から請求項3のいずれか一項に記載の自己位置推定装置。 - 前記読出部は、前記地図のうち、前記移動体の位置を基準とする前記一部の領域をメモリ上に読み出す
請求項4に記載の自己位置推定装置。 - 前記読出部は、前記地図のうち、前記移動体の幅方向と比較して前記移動体の前後方向に広い前記一部の領域をメモリ上に読み出す
請求項5に記載の自己位置推定装置。 - 前記読出部は、前記地図のうち、特定の走行ルートに対応する前記一部の領域をメモリ上に読み出す
請求項4から請求項6のいずれか一項に記載の自己位置推定装置。 - 前記自己位置推定処理に失敗した場合に前記キーフレームを探索するリローカリゼーションを行う処理部を備え、
前記処理部は、前記移動体のハードウェアの制約条件に基づいて探索範囲を特定するとともに、当該探索範囲に含まれるキーフレームを探索する
請求項1から請求項7のいずれか一項に記載の自己位置推定装置。 - 前記処理部は、前記自己位置推定処理で推定された位置と、前記移動体の最大速度とに基づいて、当該移動体の現在の位置としてとりうる範囲を前記探索範囲として特定する
請求項8に記載の自己位置推定装置。 - 前記処理部は、前記自己位置推定処理で推定された姿勢と、前記移動体の最大角速度とに基づいて、当該移動体の現在の姿勢としてとり得る範囲を前記探索範囲として特定する
請求項8又は請求項9に記載の自己位置推定装置。 - 前記処理部は、前記自己位置推定処理で推定された位置を基準とする、オドメトリによる推定位置の誤差とみなせる範囲を前記探索範囲として特定する
請求項8から請求項10のいずれか一項に記載の自己位置推定装置。 - 前記処理部は、前記自己位置推定処理で推定された姿勢を基準とする、ジャイロセンサによる推定姿勢の誤差とみなせる範囲を前記探索範囲として特定する
請求項8から請求項11のいずれか一項に記載の自己位置推定装置。 - 前記推定部は、前記世界座標上における前記移動体の位置及び姿勢の軌跡が平滑化されるように、前記自己位置推定処理によって推定された位置及び姿勢を修正する
請求項1から請求項12のいずれか一項に記載の自己位置推定装置。 - 前記推定部は、移動平均フィルタを用いて、前記自己位置推定処理によって推定された位置及び姿勢を修正する
請求項13に記載の自己位置推定装置。 - 移動体に搭載されたカメラから視界画像を取得するステップと、
前記視界画像上における特徴点の位置と、世界座標上における複数の特徴点の位置が記録されてなる地図とに基づいて、前記世界座標上における前記移動体の位置及び姿勢を推定する自己位置推定処理を行うステップと、
前記視界画像を、当該視界画像上に含まれる新たな特徴点を前記地図に追加するためのキーフレームとして登録するステップと、
を有し、
前記キーフレームとして登録するステップでは、移動中の前記移動体の角速度が所定の角速度閾値以上となった場合に、前記視界画像をキーフレームとして登録する
自己位置推定方法。 - 自己位置推定装置のコンピュータに、
移動体に搭載されたカメラから視界画像を取得するステップと、
前記視界画像上における特徴点の位置と、世界座標上における複数の特徴点の位置が記録されてなる地図とに基づいて、前記世界座標上における前記移動体の位置及び姿勢を推定する自己位置推定処理を行うステップと、
前記視界画像を、当該視界画像上に含まれる新たな特徴点を前記地図に追加するためのキーフレームとして登録するステップと、
を実行させ、
前記キーフレームとして登録するステップでは、移動中の前記移動体の角速度が所定の角速度閾値以上となった場合に、前記視界画像をキーフレームとして登録する
プログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019041991A JP7220591B2 (ja) | 2019-03-07 | 2019-03-07 | 自己位置推定装置、自己位置推定方法及びプログラム |
CN202010084076.2A CN111664857B (zh) | 2019-03-07 | 2020-02-10 | 自己位置估算装置、自己位置估算方法及记录介质 |
DE102020103252.8A DE102020103252A1 (de) | 2019-03-07 | 2020-02-10 | Selbstlokalisierungsvorrichtung, selbstlokalisierungsverfahren und programm |
US16/787,258 US11216973B2 (en) | 2019-03-07 | 2020-02-11 | Self-localization device, self-localization method, and non-transitory computer-readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019041991A JP7220591B2 (ja) | 2019-03-07 | 2019-03-07 | 自己位置推定装置、自己位置推定方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020144710A JP2020144710A (ja) | 2020-09-10 |
JP7220591B2 true JP7220591B2 (ja) | 2023-02-10 |
Family
ID=72146736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019041991A Active JP7220591B2 (ja) | 2019-03-07 | 2019-03-07 | 自己位置推定装置、自己位置推定方法及びプログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US11216973B2 (ja) |
JP (1) | JP7220591B2 (ja) |
CN (1) | CN111664857B (ja) |
DE (1) | DE102020103252A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102020126401A1 (de) | 2020-10-08 | 2022-04-14 | Jungheinrich Aktiengesellschaft | Verfahren zur Bestimmung von Abstandswerten zu einem Flurförderzeug sowie ein solches |
KR102484772B1 (ko) * | 2020-11-03 | 2023-01-05 | 네이버랩스 주식회사 | 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템 |
KR102525281B1 (ko) * | 2020-11-12 | 2023-04-25 | 네이버랩스 주식회사 | 이미지 기반 측위 방법 및 시스템 |
CN113052882B (zh) * | 2021-03-26 | 2023-11-24 | 上海商汤智能科技有限公司 | 图像配准方法及相关装置、电子设备、存储介质 |
JP2023114238A (ja) * | 2022-02-04 | 2023-08-17 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および情報処理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012185619A (ja) | 2011-03-04 | 2012-09-27 | Toyota Motor Corp | 移動体マップ装置、その処理方法及びプログラム |
JP2018156538A (ja) | 2017-03-21 | 2018-10-04 | カシオ計算機株式会社 | 自律移動装置、画像処理方法及びプログラム |
JP2018173882A (ja) | 2017-03-31 | 2018-11-08 | 富士通株式会社 | 情報処理装置、方法、及びプログラム |
WO2019082670A1 (ja) | 2017-10-25 | 2019-05-02 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、及び、移動体 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0461577B1 (en) * | 1990-06-11 | 1998-12-02 | Hitachi, Ltd. | Apparatus for generating object motion path |
JPH07230315A (ja) * | 1994-02-16 | 1995-08-29 | Fuji Heavy Ind Ltd | 自律走行車の走行制御装置 |
JPH07264471A (ja) * | 1994-03-19 | 1995-10-13 | Sony Corp | 特殊効果装置 |
JP2009210269A (ja) * | 2008-02-29 | 2009-09-17 | Sanyo Electric Co Ltd | ナビゲーション装置及び該装置における地点登録方法 |
JP5776332B2 (ja) | 2011-05-27 | 2015-09-09 | 富士通株式会社 | 地図処理方法及びプログラム、並びにロボットシステム |
JP5800613B2 (ja) * | 2011-07-08 | 2015-10-28 | 株式会社日立産機システム | 移動体の位置・姿勢推定システム |
US9183631B2 (en) * | 2012-06-29 | 2015-11-10 | Mitsubishi Electric Research Laboratories, Inc. | Method for registering points and planes of 3D data in multiple coordinate systems |
US9740942B2 (en) * | 2012-12-12 | 2017-08-22 | Nissan Motor Co., Ltd. | Moving object location/attitude angle estimation device and moving object location/attitude angle estimation method |
KR101463145B1 (ko) * | 2013-01-10 | 2014-11-20 | 주식회사 한터기술 | 운행열차의 위치안내 중 음영구간을 해소하는 방법과 이를 적용한 열차위치 안내시스템 |
JP6849330B2 (ja) | 2015-08-28 | 2021-03-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 地図生成方法、自己位置推定方法、ロボットシステム、およびロボット |
WO2017038012A1 (ja) | 2015-08-28 | 2017-03-09 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | 地図生成方法、自己位置推定方法、ロボットシステム、およびロボット |
CN105744164B (zh) * | 2016-02-24 | 2019-01-29 | 惠州Tcl移动通信有限公司 | 一种移动终端拍照方法及系统 |
US9964955B2 (en) * | 2016-08-04 | 2018-05-08 | Canvas Technology, Inc. | System and methods of determining a geometric pose of a camera based on spatial and visual mapping |
CN106373141B (zh) * | 2016-09-14 | 2019-05-28 | 上海航天控制技术研究所 | 空间慢旋碎片相对运动角度和角速度的跟踪系统和跟踪方法 |
CN106446815B (zh) * | 2016-09-14 | 2019-08-09 | 浙江大学 | 一种同时定位与地图构建方法 |
US20200158517A1 (en) * | 2017-01-19 | 2020-05-21 | Mindmaze Holding Sa | System, methods, device and apparatuses for preforming simultaneous localization and mapping |
JP6760114B2 (ja) | 2017-01-31 | 2020-09-23 | 富士通株式会社 | 情報処理装置、データ管理装置、データ管理システム、方法、及びプログラム |
JP6842039B2 (ja) * | 2017-03-02 | 2021-03-17 | 富士通株式会社 | カメラ位置姿勢推定装置、方法およびプログラム |
CN107063264A (zh) * | 2017-04-13 | 2017-08-18 | 杭州申昊科技股份有限公司 | 一种适用于大规模变电站环境的机器人地图创建方法 |
JP6762913B2 (ja) * | 2017-07-11 | 2020-09-30 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
JP7257737B2 (ja) * | 2017-09-05 | 2023-04-14 | ソニーグループ株式会社 | 情報処理装置、自己位置推定方法、及び、プログラム |
CN108090958B (zh) * | 2017-12-06 | 2021-08-27 | 上海阅面网络科技有限公司 | 一种机器人同步定位和地图构建方法和系统 |
JP2019149621A (ja) * | 2018-02-26 | 2019-09-05 | ソニー株式会社 | 情報処理装置、情報処理方法、およびプログラム |
CN108520559B (zh) * | 2018-04-04 | 2022-04-05 | 西安因诺航空科技有限公司 | 一种基于双目视觉的无人机定位导航的方法 |
CN109556596A (zh) * | 2018-10-19 | 2019-04-02 | 北京极智嘉科技有限公司 | 基于地面纹理图像的导航方法、装置、设备及存储介质 |
-
2019
- 2019-03-07 JP JP2019041991A patent/JP7220591B2/ja active Active
-
2020
- 2020-02-10 DE DE102020103252.8A patent/DE102020103252A1/de active Pending
- 2020-02-10 CN CN202010084076.2A patent/CN111664857B/zh active Active
- 2020-02-11 US US16/787,258 patent/US11216973B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012185619A (ja) | 2011-03-04 | 2012-09-27 | Toyota Motor Corp | 移動体マップ装置、その処理方法及びプログラム |
JP2018156538A (ja) | 2017-03-21 | 2018-10-04 | カシオ計算機株式会社 | 自律移動装置、画像処理方法及びプログラム |
JP2018173882A (ja) | 2017-03-31 | 2018-11-08 | 富士通株式会社 | 情報処理装置、方法、及びプログラム |
WO2019082670A1 (ja) | 2017-10-25 | 2019-05-02 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、及び、移動体 |
Also Published As
Publication number | Publication date |
---|---|
US11216973B2 (en) | 2022-01-04 |
JP2020144710A (ja) | 2020-09-10 |
CN111664857B (zh) | 2023-09-19 |
CN111664857A (zh) | 2020-09-15 |
DE102020103252A1 (de) | 2020-09-10 |
US20200286257A1 (en) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7220591B2 (ja) | 自己位置推定装置、自己位置推定方法及びプログラム | |
US20200378767A1 (en) | Methods, apparatus, and systems for localization and mapping | |
JP5854655B2 (ja) | 無人機、特に自動操縦下でホバリング飛行を行うことができる無人機の水平速度を評価する方法 | |
US8407000B2 (en) | Image augmented inertial navigation system (IAINS) and method | |
US7696894B2 (en) | Method for determining a relative position of a mobile unit by comparing scans of an environment and mobile unit | |
CN112179330A (zh) | 移动设备的位姿确定方法及装置 | |
Michot et al. | Bi-objective bundle adjustment with application to multi-sensor slam | |
CN114623817B (zh) | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 | |
US11768503B2 (en) | Position estimation device, control device, industrial vehicle, logistics support system, position estimation method, and program | |
CN111540011A (zh) | 基于混合度量-拓扑相机的定位 | |
CN108592919B (zh) | 制图与定位方法、装置、存储介质和终端设备 | |
WO2022183665A1 (zh) | 初始化方法及装置、电子设备、存储介质和程序产品 | |
JP2022022715A (ja) | 位置推定装置、車両、位置推定方法およびプログラム | |
CN115436955A (zh) | 室内外环境定位方法 | |
CN111882494B (zh) | 位姿图处理方法、装置、计算机设备和存储介质 | |
JP7144491B2 (ja) | フォークリフト、位置推定方法、及びプログラム | |
US20210318690A1 (en) | Positioning device | |
Sabatini et al. | Vision-based pole-like obstacle detection and localization for urban mobile robots | |
JP7540909B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
CN114463373A (zh) | 跟踪方法、装置、设备及存储介质 | |
KR102624644B1 (ko) | 벡터 맵을 이용한 이동체의 맵 매칭 위치 추정 방법 | |
CN112630745B (zh) | 一种基于激光雷达的环境建图方法和装置 | |
JP2022138036A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2023110697A (ja) | 情報処理装置、移動体、コンピュータプログラム及び情報処理方法。 | |
JPH07121235A (ja) | 移動ロボットの自己位置認識方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221025 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221026 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221125 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230131 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7220591 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |