JP7197550B2 - ビジュアルローカリゼーションとオドメトリに基づく経路追跡方法およびシステム - Google Patents

ビジュアルローカリゼーションとオドメトリに基づく経路追跡方法およびシステム Download PDF

Info

Publication number
JP7197550B2
JP7197550B2 JP2020187752A JP2020187752A JP7197550B2 JP 7197550 B2 JP7197550 B2 JP 7197550B2 JP 2020187752 A JP2020187752 A JP 2020187752A JP 2020187752 A JP2020187752 A JP 2020187752A JP 7197550 B2 JP7197550 B2 JP 7197550B2
Authority
JP
Japan
Prior art keywords
pose
estimated
odometry
graph
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020187752A
Other languages
English (en)
Other versions
JP2021076605A (ja
Inventor
ドンファン イ
ドクファ キム
Original Assignee
ネイバーラボス コーポレーション
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 ネイバーラボス コーポレーション filed Critical ネイバーラボス コーポレーション
Publication of JP2021076605A publication Critical patent/JP2021076605A/ja
Application granted granted Critical
Publication of JP7197550B2 publication Critical patent/JP7197550B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration by the use of histogram techniques
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20072Graph-based image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30261Obstacle

Description

以下の説明は、室内ナビゲーションのための経路追跡技術に関する。
移動ロボットは、与えられた環境内で自身の位置を把握しなければならないのはもちろん、以前に経験したことのない新たな環境に置かれた場合には、その周辺画面に対する地図を自ら作成しなければならない。
移動ロボットの地図作成とは、周辺に置かれている障害物や物体の位置や自由に移動可能な開放的な空間などを把握し、適切な方法によってこれを記憶する作業を意味する。
移動ロボットの地図作成技術の一例として、特許文献1(公開日2010年6月28日)には、周辺物体までの距離情報を利用して格子地図を作成した後、ランドマークの位置情報と連動させることにより、移動ロボットの位置認識のための最終格子地図を作成する技術が開示されている。
韓国公開特許第10-2010-0070922号公報
ビジュアルローカリゼーション(VL)(visual localization)技術とオドメトリ(odometry)技術とを結合した測位技術を提供する。
VLのポーズとオドメトリのポーズを利用して最適な経路を生成する方法とシステムとを提供する。
コンピュータシステムが実行する経路追跡方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記経路追跡方法は、前記少なくとも1つのプロセッサにより、カメラポーズ情報としてオドメトリによるポーズ推定結果とVLによるポーズ推定結果とを利用して経路(trajectory)を追跡する段階を含み、前記追跡する段階は、前記オドメトリによって推定された相対ポーズを前記VLによって推定された絶対ポーズを利用して補正する段階を含む、経路追跡方法を提供する。
一側面によると、前記補正する段階は、前記オドメトリによるポーズ推定時に発生する累積誤差を、前記VLによって推定されたポーズ値を利用して補正する段階を含んでよい。
また他の側面によると、前記補正する段階は、前記オドメトリによって推定された相対ポーズと前記VLによって推定された絶対ポーズとをノード(node)として定義し、ノード間のポーズ差をエッジ(edge)として定義したポーズグラフを最適化する段階を含んでよい。
また他の側面によると、前記最適化する段階は、前記ポーズグラフで任意の時点あるいは事前に定められた一定の周期として一定の時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値を利用して補正する段階を含んでよい。
また他の側面によると、前記最適化する段階は、前記ポーズグラフで任意の時点あるいは事前に定められた一定の周期として一定の時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値との誤差を最小化する方向に最適化する段階を含んでよい。
また他の側面によると、前記最適化する段階は、前記ポーズグラフに含まれたすべてのエッジに対して誤差を合算してポーズグラフ誤差関数(pose-graph error function)を定義する段階、および前記ポーズグラフ誤差関数に基づいて各ノードのポーズ値をガウス・ニュトーン(Gauss-Newton)法によって推定する段階を含んでよい。
前記経路追跡方法を前記コンピュータシステムに実行させるために非一時的なコンピュータ読み取り可能な記憶媒体に格納される、コンピュータプログラムを提供する。
前記経路追跡方法をコンピュータに実行させるためのプログラムが格納されている、非一時的なコンピュータ読み取り可能な記憶媒体を提供する。
コンピュータシステムであって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、カメラポーズ情報としてオドメトリによるポーズ推定結果とVLによるポーズ推定結果とを利用して経路を追跡するものであり、前記オドメトリによって推定された相対ポーズを前記VLによって推定された絶対ポーズを利用して補正することを特徴とする、コンピュータシステムを提供する。
本発明の実施形態によると、VLのポーズとオドメトリのポーズとを利用して経路最適化を実行することにより、適正な演算量によって正確度の高い測位結果を提供することができる。
本発明の実施形態によると、VL技術とオドメトリ技術とを融合した測位により、最小限のネットワークと低仕様のカメラとで断絶のない移動状況をリアルタイムで測位することが可能となる。
本発明の一実施形態における、ネットワーク環境の例を示した図である。 本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。 本発明の一実施形態における、VLを実行する過程を説明するための例示図である。 本発明の一実施形態における、VLを実行する過程を説明するための例示図である。 本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図である。 本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。 本発明の一実施形態における、VLのポーズとオドメトリのポーズとを表現したポーズグラフの例を示した図である。 本発明の一実施形態における、グラフ基盤のポーズ最適化過程を説明するための例示図である。 本発明の一実施形態における、グラフ基盤のポーズ最適化過程を説明するための例示図である。 本発明の一実施形態における、グラフ基盤のポーズ最適化過程を説明するための例示図である。 本発明の一実施形態における、最適化ポーズ(optimized pose)に対する実験結果を示した図である。
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。
本発明の実施形態は、カメラ基盤の測位技術に関する。
本明細書で具体的に開示する事項を含む実施形態は、ビジュアルローカリゼーション(VL)(visual localization)技術とオドメトリ(odometry)技術とを結合した測位技術を提供することができ、これにより、従来の測位技術の限界を克服して測位の演算量と正確度とを向上させることができ、より多様なデバイスでの活用を可能にすることができる。
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図1のように限定されることはない。
複数の電子機器110、120、130、140は、コンピュータシステムによって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、スマートフォン、携帯電話、ナビゲーション、PC(personal computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレット、ゲームコンソール、ウェアラブルデバイス、IoT(Internet of Things)デバイス、VR(Virtual Reality)デバイス、AR(Augmented Reality)デバイスなどがある。一例として、図1では、電子機器110の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器110は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータシステムのうちの1つを意味してよい。
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網、衛星網など)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
サーバ150、160は、それぞれ、複数の電子機器110、120、130、140とネットワーク170とを介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第1サービスを提供するシステムであってよく、サーバ160も、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第2サービスを提供するシステムであってよい。より具体的な例として、サーバ150は、複数の電子機器110、120、130、140においてインストールされて実行されるコンピュータプログラムであるアプリケーションを通じ、該当のアプリケーションが目的とするサービス(一例として、位置基盤サービス)を第1サービスとして複数の電子機器110、120、130、140に提供してよい。他の例として、サーバ160は、上述したアプリケーションのインストールおよび実行のためのファイルを複数の電子機器110、120、130、140に配布するサービスを第2サービスとして提供してよい。
図2は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。図2では、電子機器に対する例として電子機器110の内部構成およびサーバ150の内部構成について説明する。また、他の電子機器120、130、140やサーバ160も、上述した電子機器110またはサーバ150と同一または類似の内部構成を有してよい。
電子機器110およびサーバ150は、メモリ211、221、プロセッサ212、222、通信モジュール213、223、および入力/出力インタフェース214、224を含んでよい。メモリ211、221は、非一時的なコンピュータ読み取り可能な記憶媒体であって、RAM(random access memory)、ROM(read only memory)、ディスクドライブ、SSD(solid state drive)、フラッシュメモリ(flash memory)などのような非一時的大容量記憶装置を含んでよい。ここで、ROM、SSD、フラッシュメモリ、ディスクドライブのような非一時的大容量記憶装置は、メモリ211、221とは区分される別の非一時的記憶装置として電子機器110やサーバ150に含まれてもよい。また、メモリ211、221には、オペレーティングシステムや、少なくとも1つのプログラムコード(一例として、電子機器110においてインストールされて実行されるブラウザや、特定のサービスの提供のために電子機器110にインストールされたアプリケーションなどのためのコード)が格納されてよい。このようなソフトウェア構成要素は、メモリ211、221とは別のコンピュータ読み取り可能な記憶媒体からロードされてよい。このような別のコンピュータ読み取り可能な記憶媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記憶媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記憶媒体ではない通信モジュール213、223を通じてメモリ211、221にロードされてもよい。例えば、少なくとも1つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム(一例として、上述したサーバ160)がネットワーク170を介して提供するファイルによってインストールされるコンピュータプログラム(一例として、上述したアプリケーション)に基づいてメモリ211、221にロードされてよい。
プロセッサ212、222は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ211、221または通信モジュール213、223によって、プロセッサ212、222に提供されてよい。例えば、プロセッサ212、222は、メモリ211、221のような記憶装置に格納されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
通信モジュール213、223は、ネットワーク170を介して電子機器110とサーバ150とが互いに通信するための機能を提供してもよいし、電子機器110および/またはサーバ150が他の電子機器(一例として、電子機器120)または他のサーバ(一例として、サーバ160)と通信するための機能を提供してもよい。一例として、電子機器110のプロセッサ212がメモリ211のような記憶装置に格納されたプログラムコードにしたがって生成した要求が、通信モジュール213の制御にしたがってネットワーク170を介してサーバ150に伝達されてよい。これとは逆に、サーバ150のプロセッサ222の制御にしたがって提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール223とネットワーク170とを経て電子機器110の通信モジュール213を通じて電子機器110に受信されてよい。例えば、通信モジュール213を通じて受信されたサーバ150の制御信号や命令、コンテンツ、ファイルなどは、プロセッサ212やメモリ211に伝達されてよく、コンテンツやファイルなどは、電子機器110がさらに含むことのできる記憶媒体(上述した非一時的記憶装置)に格納されてよい。
入力/出力インタフェース214は、入力/出力装置215とのインタフェース接続のための手段であってよい。例えば、入力装置は、キーボード、マウス、マイクロフォン、カメラなどの装置を含んでよく、出力装置は、ディスプレイ、スピーカ、触覚フィードバックデバイスなどのような装置を含んでよい。他の例として、入力/出力インタフェース214は、タッチスクリーンのように入力および出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置215は、電子機器110と1つの装置とで構成されてもよい。また、サーバ150の入力/出力インタフェース224は、サーバ150に接続するかサーバ150が含むことのできる入力または出力のための装置(図示せず)とのインタフェースのための手段であってよい。より具体的な例として、電子機器110のプロセッサ212がメモリ211にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ150や電子機器120が提供するデータを利用して構成されるサービス画面やコンテンツが、入力/出力インタフェース214を通じてディスプレイに表示されてよい。
また、他の実施形態において、電子機器110およびサーバ150は、図2の構成要素よりも多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器110は、上述した入力/出力装置215のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、GPS(Global Positioning System)モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。より具体的な例として、電子機器110がスマートフォンである場合、一般的にスマートフォンが含んでいる加速度センサやジャイロセンサ、カメラモジュール、物理的な各種ボタン、タッチパネルを利用したボタン、入力/出力ポート、振動のための振動器などのような多様な構成要素が、電子機器110にさらに含まれるように実現されてよい。
先ず、イメージに基づいてポーズ(3軸位置値と3軸方向値を含む)を計算する、すなわち、VLを実行する過程について説明する。
図3~4は、VL過程を説明するための例示図である。
VLとは、1枚あるいは複数枚のイメージから絶対位置を探索する技術である。
サーバ150は、対象空間に対する地理的タグイメージ(geo-tagged images)を利用して3Dモデルに該当するVL用地図400を事前に構成して維持してよい。
図3に示すように、サーバ150は、電子機器(例えば、モバイル端末や移動ロボットなど)110が撮影したイメージをクエリイメージ301として受信する場合、VL用地図データベース(一例として、メモリ221)からクエリイメージ301と類似する参照イメージ302を抽出してよい。このとき、サーバ150は、ディープラーニング(deep learning)モデルを利用してクエリイメージ301からグローバルな特徴(フィーチャ)を抽出した後、抽出された特徴を利用して参照イメージ302を検索してよい。
図4に示すように、サーバ150は、参照イメージ302に対応する3Dモデル303とともに、クエリイメージ301を利用したローカリゼーションによってクエリイメージ301の6自由度ポーズ(位置および方向)を推定してよい。言い換えれば、サーバ150は、ポーズがタギングされたデータを利用してVLを実行することにより、VL用地図400上のクエリイメージ301に対応する地点として絶対座標を確認してよい。
このように、イメージに基づいてカメラポーズ(3軸位置値と3軸方向値とを含む)を計算するためには、すなわち、VLを実行するためには、事前にデータ収集装備を利用して対象空間をスキャンした後、これから得られた(ポーズがタギングされた)データを加工してVL用地図400を生成する。
言い換えれば、イメージ基盤の測位技術であるVLは、VL用地図400を事前に構築し、構築されたVL用地図400内で位置を推定する方法によって測位を行う。
このようなVL技術は、絶対位置を知ることができる上に、時間の経過によって誤差が累積するドリフト(drift)現象が発生しない反面、移動状況では精密な測位が困難である上に、多様な環境変化に対応しなければならないため、多くの演算量を必要とするし計算時間が長いという短所がある。
移動状況で精密な測位を行うために、リアルタイム位置追跡が可能なオドメトリ技術が使用されてよい。オドメトリ技術としては、VIO(visual-inertial odometry)やWO(Wheel odometry)などが含まれてよく、イメージあるいはタイヤの回転情報によって相対的な位置を計算する方法によって測位を行う。
このようなオドメトリ技術は、相対的なポーズを円滑に推定することが可能であり、演算量が比較的少なく、低仕様のコンピュータシステム、例えば、スマートフォンのような電子機器110、120、130、140での実行が可能である反面、相対的な位置変化量しか推定できないためドリフト現象が発生するという短所がある。
以下では、VL技術とオドメトリ技術とを結合した測位技術として、VLとオドメトリとに基づく経路追跡方法およびシステムの具体的な実施形態について説明する。
図5は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示したブロック図であり、図6は、本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
本実施形態に係るサーバ150は、位置基盤のサービスを提供するものであり、特に、VL技術とオドメトリ技術とを結合した測位技術に基づいて位置基盤サービスを提供するものである。
サーバ150のプロセッサ222は、図6に係る経路追跡方法を実行するための構成要素として、図5に示すように、相対ポーズ推定部510、絶対ポーズ推定部520、および経路最適化部530を含んでよい。実施形態によって、プロセッサ222の構成要素は、選択的にプロセッサ222に含まれても除外されてもよい。また、実施形態によって、プロセッサ222の構成要素は、プロセッサ222の機能の表現のために分離されても併合されてもよい。
このようなプロセッサ222およびプロセッサ222の構成要素は、図6の経路追跡方法が含む段階610~630を実行するようにサーバ150を制御してよい。例えば、プロセッサ222およびプロセッサ222の構成要素は、メモリ221が含むオペレーティングシステムのコードと、少なくとも1つのプログラムのコードとによる命令(instruction)を実行するように実現されてよい。
ここで、プロセッサ222の構成要素は、サーバ150に格納されたプログラムコードが提供する命令にしたがってプロセッサ222によって実行される、プロセッサ222の互いに異なる機能(functions)の表現であってよい。例えば、サーバ150が相対ポーズを推定するように上述した命令にしたがってサーバ150を制御するプロセッサ222の機能的表現として、相対ポーズ推定部510が利用されてよい。
プロセッサ222は、サーバ150の制御と関連する命令がロードされたメモリ221から必要な命令を読み取ってよい。この場合、前記読み取られた命令は、以下で説明する段610~630をプロセッサ222が実行するように制御するための命令を含んでよい。
段階610で、相対ポーズ推定部510は、VIOやWOのようなオドメトリ技術により、カメラポーズ情報(3軸位置値と3軸方向値とを含む)として相対ポーズを推定してよい。相対ポーズ推定部510は、電子機器110で発生するクエリ情報として連続的なセンサ情報(例えば、連続するイメージや、タイヤの回転情報など)を受信してよく、連続的なセンサ情報の相対的なポーズ関係を計算してよい。
段階620で、絶対ポーズ推定部520は、イメージを利用したローカリゼーション、すなわちVLにより、カメラポーズ情報として絶対ポーズを推定してよい。絶対ポーズ推定部520は、電子機器110で発生するクエリ情報としてクエリイメージを受信してよく、VLにより、受信されたクエリイメージの6自由度ポーズ(位置および方向)を推定してよい。絶対ポーズ推定部520は、ポーズがタギングされたデータを利用してVLを実行し、事前に構築しておいたVL用地図400上のクエリイメージに対応する地点、すなわち絶対ポーズを推定してよい。
段階630で、経路最適化部530は、段階610で推定された相対ポーズと段階620で推定された絶対ポーズとを利用してグラフ基盤のポーズ最適化によって最適化された経路を生成することにより、誤差が補正された最終ポーズとして経路を追跡してよい。オドメトリ技術だけでポーズを推定する場合には、ドリフト現象によって累積誤差が生じることがあり、VLによって推定されたポーズの場合には、オドメトリに比べて誤差範囲が大きくて推定値に対する信頼度が低下することがある。オドメトリ技術およびVL技術の短所を克服するために、経路最適化部530は、オドメトリによって推定された連続的なローカルポーズ情報とVLによって推定されたグローバルポーズ情報とを融合した最適化アルゴリズムを適用し、正確なポーズを推定することができる。
経路最適化部530は、オドメトリによるポーズ推定結果とVLによるポーズ推定結果とを利用してグラフ基盤のポーズ最適化によって最適化された経路を生成してよい。図7は、ポーズグラフ700の一例を示した図である。図7に示すように、ポーズグラフ700は、オドメトリによって推定された相対ポーズを示すノード(以下、「オドメトリノード」とする)701とVLによって推定された絶対ポーズを示すノード(以下、「VLノード」とする)702とで構成されてよく、相対ポーズ間の差と相対ポーズと絶対ポーズとの間の差は、該当のノードを連結するエッジ703として表現してよい。
オドメトリノード701およびオドメトリノード701のポーズの差、またはVLノード702およびオドメトリノード701のポーズの差を示すエッジ703の誤差は、数式(1)のように定義されてよい。
Figure 0007197550000001
ここで、xは、ポーズ情報を含むノードを意味し、
Figure 0007197550000002
は、エッジで連結されたノード間のポーズ情報(Rは、rotation、tは、translation)を意味する。また、
Figure 0007197550000003
は、変換行列(transformation matrix)を1×6ベクトルに変形する関数を意味するものであって、主に、らせん変位(screw displacement)技法を使用してよい。
らせん変位技法は、数式(2)のように定義してよい。
Figure 0007197550000004
ここで、Rは、回転行列(rotation matrix)であり、tは、併進ベクトル(translation vector)である。また、ξは、ツイストベクトル(twist vector)を意味し、wは、回転速度(rotation velocity)を、vは線速度(linear velocity)を意味する。
ポーズグラフ700に含まれたすべてのエッジ703に対して誤差を合算すれば、数式(3)のように、ポーズグラフ誤差関数(pose-graph error function)
Figure 0007197550000005
を定義することができる。
Figure 0007197550000006
ここで、Ωは、エッジの共分散(covariance)を意味する。
経路最適化部530は、数式(4)のように、ポーズグラフ誤差関数の誤差が減る方向に、ノード701、702のポーズ値
Figure 0007197550000007
をガウス・ニュトーン(Gauss-Newton)法によって再軌跡として推定してよい。
Figure 0007197550000008
最適化されたポーズグラフでは、相対ポーズ値xと絶対ポーズ値
Figure 0007197550000009
とがノード701、702として定義され、ノード間のポーズ差
Figure 0007197550000010
と共分散Ωは、エッジ703として定義されてよい。
図8~10は、相対ポーズxと絶対ポーズ
Figure 0007197550000011
とを利用した経路最適化過程を説明するための例示図である。
図8を参照すると、経路最適化部530は、t=0時点に推定された相対ポーズ値xに基づき、t=1時点に推定された相対ポーズ値xに対してt=1時点に推定された絶対ポーズ値lを要求してt=1時点の相対ポーズ値xを補正してよい。このとき、経路最適化部530は、t=1時点の相対ポーズ値xをt=1時点に取得した絶対ポーズ値lとの誤差を最小化する方向に最適化してよい。
図9を参照すると、経路最適化部530は、t=1時点の最適化されたポーズ値に基づき、t=2時点に推定された相対ポーズ値xに続いてt=3時点に推定された相対ポーズ値xに対してt=3時点に推定された絶対ポーズ値lを要求してt=3時点の相対ポーズ値xを補正してよい。このとき、経路最適化部530は、t=3時点の相対ポーズ値xをt=3時点に取得した絶対ポーズ値lとの誤差を最小化する方向に最適化してよい。
図10を参照すると、経路最適化部530は、t=3時点の最適化されたポーズ値に基づきながら、t=4時点に推定された相対ポーズ値x以後も前記と同じポーズ最適化過程を繰り返してよい。
経路最適化部530は、オドメトリから推定された相対ポーズxの累積誤差を補正するために、任意の時点あるいは事前に定められた周期にVLから推定された絶対ポーズ
Figure 0007197550000012
を要求してよい。
経路最適化部530は、相対ポーズxと絶対ポーズ
Figure 0007197550000013
とを利用したグラフ構造によってポーズ間の経路を最適化することで、ポーズの推定正確度を向上させてよい。
ポーズグラフの最適化によってポーズの推定正確度を向上させてよい。オドメトリから推定されたポーズである相対ポーズxは、VLから推定されたポーズ、すなわち絶対ポーズ
Figure 0007197550000014
の影響を受けるため、累積誤差に対する影響が補正される。
VLから推定されたポーズ値
Figure 0007197550000015
をそのままアプリケーションで活用するのではなく、VLから推定されたポーズ値
Figure 0007197550000016
に基づいて累積誤差が補正されたポーズ値xを活用することにより、ポーズの円滑化(smoothing)効果を得ることができる。
図11に示したポーズ推定結果グラフを見ると、本実施形態では、VLとオドメトリとを融合することによって最適化したポーズ(optimized pose)結果が検証データ(グラウンドトルース)(ground truth)に近い結果を得ることができることが分かる。
本実施形態では、VL技術およびオドメトリ技術、さらには最適化アルゴリズムを融合することによって、測位正確度を向上させることができる。さらに、移動状況を考慮した測位技術の1つとしてVOT(visual object tracking)技術が追加で活用されてよい。ここで、VOTとは、イメージ認識技術に基づいて物体の位置や方向を6自由度で推定することのできる技術である。VLの動作の可否またはVLのポーズ推定結果によってVOT技術を追加で利用することにより、6自由度ポーズを推定することができる。例えば、VLが正しく動作しなかったりVLのポーズ結果が不正確な環境であったりする場合には、VOT技術によって事前にポーズを把握した物体やマーカを利用して測位を行うことができる。
上述では、本実施形態に係る経路追跡方法がサーバ150で実行されるとして説明しているが、これに限定されてはならない。図6の経路追跡方法がサーバ150との連動によって電子機器110で実行されてもよいことはもちろん、相互の連動環境の一部過程はサーバ150で実行され、残りの過程は電子機器110で実行されることも可能である。例えば、VLを利用したポーズ推定は、サーバ150で実行されてよく、オドメトリを利用したポーズ推定は、電子機器110で実行されてよい。このとき、経路最適化過程は、サーバ150と電子機器110のいずれか1つで実行されてよい。
このように、本発明の実施形態によると、VLのポーズ結果とオドメトリのポーズ結果とを利用して経路最適化を実行することにより、適正な演算量で高い正確度の測位結果を提供することができる。また、本発明の実施形態によると、VL技術とオドメトリ技術とを融合した測位技術の場合、最小限のネットワークと低仕様のカメラだけでも移動状況で断絶のないリアルタイム測位が可能となることから、スマートフォンのようなモバイル機器はもちろん、移動ロボットや歩行ロボット、自動車などのような多様なデバイスに適用することができる。
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素の組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記憶媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で格納されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記憶媒体に格納されてよい。
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に格納されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して格納するものであっても、実行またはダウンロードのために一時格納するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記憶手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が格納されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記憶媒体または格納媒体が挙げられる。
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
222:プロセッサ
510:相対ポーズ推定部
520:絶対ポーズ推定部
530:経路最適化部

Claims (12)

  1. コンピュータシステムが実行する経路追跡方法であって、
    当該コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
    前記経路追跡方法は、
    前記少なくとも1つのプロセッサにより、カメラポーズ情報としてオブジェクトのオドメトリによるポーズ推定結果と前記オブジェクトのビジュアルローカリゼーション(VL)によるポーズ推定結果とを利用して前記オブジェクトの経路を追跡する段階を含み、
    前記追跡する段階は、
    前記オドメトリによって推定されたポーズ推定結果による前記オブジェクトの相対ポーズを前記VLによって推定されたポーズ推定結果による前記オブジェクトの絶対ポーズを利用して補正する段階を含み、
    前記補正する段階は、
    前記オドメトリによって推定された相対ポーズと前記VLによって推定された絶対ポーズとをノードとして定義し、ノード間のポーズ差をエッジとして定義したポーズグラフを最適化する段階を含む
    経路追跡方法。
  2. 前記補正する段階は、
    前記オドメトリによるポーズ推定時に発生する累積誤差を、前記VLによって推定されたポーズ値を利用して補正する段階を含む、
    請求項1に記載の経路追跡方法。
  3. 前記最適化する段階は、
    前記ポーズグラフで任意の時点あるいは事前に定められた一定の周期として一時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値を利用して補正する段階を含む、
    請求項に記載の経路追跡方法。
  4. 前記最適化する段階は、
    前記ポーズグラフで任意の時点あるいは事前に定められた周期として一時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値との誤差を最小化する方向に最適化する段階を含む、
    請求項に記載の経路追跡方法。
  5. 前記最適化する段階は、
    前記ポーズグラフに含まれたすべてのエッジに対して誤差を合算してポーズグラフ誤差関数を定義する段階、および
    前記ポーズグラフ誤差関数に基づいて各ノードのポーズ値をガウス・ニュートン法によって推定する段階を含む、
    請求項に記載の経路追跡方法。
  6. 請求項1~のうちのいずれか一項に記載の経路追跡方法を前記コンピュータシステムに実行させる、コンピュータプログラム。
  7. 請求項1~のうちのいずれか一項に記載の経路追跡方法をコンピュータに実行させるためのプログラムが格納されている、非一時的なコンピュータ読み取り可能な記憶媒体。
  8. コンピュータシステムであって、
    メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
    前記少なくとも1つのプロセッサは、
    カメラポーズ情報としてオブジェクトのオドメトリによるポーズ推定結果と前記オブジェクトのビジュアルローカリゼーション(VL)によるポーズ推定結果とを利用して前記オブジェクトの経路を追跡するものであって、
    前記オドメトリによって推定されたポーズ推定結果による前記オブジェクトの相対ポーズを前記VLによって推定されたポーズ推定結果による前記オブジェクトの絶対ポーズを利用して補正し、
    前記少なくとも1つのプロセッサは、
    前記オドメトリによって推定された相対ポーズと前記VLによって推定された絶対ポーズとをノードとして定義し、ノード間のポーズ差をエッジとして定義したポーズグラフを最適化することを特徴とする、
    コンピュータシステム。
  9. 前記少なくとも1つのプロセッサは、
    前記オドメトリによるポーズ推定時に発生する累積誤差を、前記VLによって推定されたポーズ値を利用して補正することを特徴とする、
    請求項に記載のコンピュータシステム。
  10. 前記少なくとも1つのプロセッサは、
    前記ポーズグラフで任意の時点あるいは事前に定められた一定の周期として一時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値を利用して補正することを特徴とする、
    請求項に記載のコンピュータシステム。
  11. 前記少なくとも1つのプロセッサは、
    前記ポーズグラフで任意の時点あるいは事前に定められた一定の周期として一時点に推定された相対ポーズ値を、該当の時点に推定された絶対ポーズ値との誤差を最小化する方向に最適化することを特徴とする、
    請求項に記載のコンピュータシステム。
  12. 前記少なくとも1つのプロセッサは、
    前記ポーズグラフに含まれたすべてのエッジに対して誤差を合算してポーズグラフ誤差関数を定義した後、前記ポーズグラフ誤差関数に基づいて各ノードのポーズ値をガウス・ニュートン法によって推定することを特徴とする、
    請求項に記載のコンピュータシステム。
JP2020187752A 2019-11-12 2020-11-11 ビジュアルローカリゼーションとオドメトリに基づく経路追跡方法およびシステム Active JP7197550B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2019-0144126 2019-11-12
KR1020190144126A KR102322000B1 (ko) 2019-11-12 2019-11-12 비주얼 로컬리제이션과 오도메트리를 기반으로 한 경로 추적 방법 및 시스템

Publications (2)

Publication Number Publication Date
JP2021076605A JP2021076605A (ja) 2021-05-20
JP7197550B2 true JP7197550B2 (ja) 2022-12-27

Family

ID=75847014

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020187752A Active JP7197550B2 (ja) 2019-11-12 2020-11-11 ビジュアルローカリゼーションとオドメトリに基づく経路追跡方法およびシステム

Country Status (3)

Country Link
US (1) US11620755B2 (ja)
JP (1) JP7197550B2 (ja)
KR (1) KR102322000B1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10859713B2 (en) * 2017-01-04 2020-12-08 Qualcomm Incorporated Position-window extension for GNSS and visual-inertial-odometry (VIO) fusion
KR102639524B1 (ko) * 2021-10-05 2024-02-22 국방과학연구소 전자 장치의 지도 병합 방법
CN114593735A (zh) * 2022-01-26 2022-06-07 奥比中光科技集团股份有限公司 一种位姿预测方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060012493A1 (en) 2002-12-17 2006-01-19 Karlsson L N Systems and methods for incrementally updating a pose of a mobile device calculated by visual simultaneous localization and mapping techniques
JP2008071352A (ja) 2006-09-13 2008-03-27 Samsung Electronics Co Ltd 移動ロボットの姿勢推定装置および方法
JP2019079171A (ja) 2017-10-23 2019-05-23 日本電産シンポ株式会社 移動体
JP2019190994A (ja) 2018-04-25 2019-10-31 日産自動車株式会社 自己位置推定方法及び自己位置推定装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100070922A (ko) 2008-12-18 2010-06-28 한국전자통신연구원 위치 인식을 위한 격자 지도 작성 장치 및 그 방법
AU2011305154B2 (en) * 2010-09-24 2015-02-05 Irobot Corporation Systems and methods for VSLAM optimization
US9709404B2 (en) * 2015-04-17 2017-07-18 Regents Of The University Of Minnesota Iterative Kalman Smoother for robust 3D localization for vision-aided inertial navigation
US9507346B1 (en) * 2015-11-04 2016-11-29 Zoox, Inc. Teleoperation system and method for trajectory modification of autonomous vehicles
EP3551967A2 (en) * 2016-12-09 2019-10-16 TomTom Global Content B.V. Method and system for video-based positioning and mapping
US11205274B2 (en) * 2018-04-03 2021-12-21 Altumview Systems Inc. High-performance visual object tracking for embedded vision systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060012493A1 (en) 2002-12-17 2006-01-19 Karlsson L N Systems and methods for incrementally updating a pose of a mobile device calculated by visual simultaneous localization and mapping techniques
JP2008071352A (ja) 2006-09-13 2008-03-27 Samsung Electronics Co Ltd 移動ロボットの姿勢推定装置および方法
JP2019079171A (ja) 2017-10-23 2019-05-23 日本電産シンポ株式会社 移動体
JP2019190994A (ja) 2018-04-25 2019-10-31 日産自動車株式会社 自己位置推定方法及び自己位置推定装置

Also Published As

Publication number Publication date
JP2021076605A (ja) 2021-05-20
KR20210057402A (ko) 2021-05-21
KR102322000B1 (ko) 2021-11-04
US11620755B2 (en) 2023-04-04
US20210142488A1 (en) 2021-05-13

Similar Documents

Publication Publication Date Title
JP7197550B2 (ja) ビジュアルローカリゼーションとオドメトリに基づく経路追跡方法およびシステム
KR102212825B1 (ko) 이미지를 기반으로 포즈 계산을 위한 지도의 최신성을 유지하는 방법 및 시스템
He et al. A review of monocular visual odometry
CN107436148B (zh) 一种基于多地图的机器人导航方法及装置
CN110246182B (zh) 基于视觉的全局地图定位方法、装置、存储介质和设备
KR102132675B1 (ko) 항공뷰를 통한 이동 기능을 제공하는 방법 및 시스템
EP2750110A1 (en) Information processing device, information processing method, and program
US10288437B2 (en) Routing with data version stitching
JP7131994B2 (ja) 自己位置推定装置、自己位置推定方法、自己位置推定プログラム、学習装置、学習方法及び学習プログラム
KR20210022016A (ko) 라이다와 카메라를 이용하여 이미지 특징점의 깊이 정보를 향상시키는 방법 및 시스템
US20240118083A1 (en) Localisation of mobile device using image and non-image sensor data in server processing
JP7138361B2 (ja) 3次元仮想空間モデルを利用したユーザポーズ推定方法および装置
US9804748B2 (en) Scale sensitive treatment of features in a geographic information system
US9679413B2 (en) Systems and methods to transition between viewpoints in a three-dimensional environment
US9329750B2 (en) Three-dimensional tilt and pan navigation using a single gesture
KR20210015516A (ko) 라이다와 카메라를 이용하여 이미지 특징점의 깊이 정보를 향상시키는 방법 및 시스템
Li et al. A novel edge-enabled SLAM solution using projected depth image information
US20220230350A1 (en) Position recognition method and system based on visual information processing
KR20210057586A (ko) 블라인드 워터마킹 기술을 이용한 카메라 기반 측위 방법 및 시스템
TWM637241U (zh) 運算裝置及模型產生系統
KR102358372B1 (ko) 영상의 스테레오 정합 방법 및 장치
US20230177723A1 (en) Method and apparatus for estimating user pose using three-dimensional virtual space model
CN116848493A (zh) 使用极线约束的光束平差
WO2015048474A1 (en) Updating filter parameters of a system
JP2022138036A (ja) 情報処理装置、情報処理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211019

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221014

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221014

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20221104

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20221108

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: 20221122

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221215

R150 Certificate of patent or registration of utility model

Ref document number: 7197550

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150