JP2020057358A - ポーズ情報を取得する方法及び装置 - Google Patents

ポーズ情報を取得する方法及び装置 Download PDF

Info

Publication number
JP2020057358A
JP2020057358A JP2019114797A JP2019114797A JP2020057358A JP 2020057358 A JP2020057358 A JP 2020057358A JP 2019114797 A JP2019114797 A JP 2019114797A JP 2019114797 A JP2019114797 A JP 2019114797A JP 2020057358 A JP2020057358 A JP 2020057358A
Authority
JP
Japan
Prior art keywords
information
vertex
rotation information
frames
rotation
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.)
Granted
Application number
JP2019114797A
Other languages
English (en)
Other versions
JP7365148B2 (ja
Inventor
暉龍 鄭
Hwi Ryong Jung
暉龍 鄭
▲ちょる▼友 姜
Chul Woo Kang
▲ちょる▼友 姜
惠媛 文
Hye Won Moon
惠媛 文
景夫 鄭
Kyung Boo Jung
景夫 鄭
性勳 洪
Sung-Hoon Hong
性勳 洪
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2020057358A publication Critical patent/JP2020057358A/ja
Application granted granted Critical
Publication of JP7365148B2 publication Critical patent/JP7365148B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
    • G01C21/1656Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments with passive imaging devices, e.g. cameras
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/80Geometric correction
    • 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/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/20Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of display used
    • B60R2300/205Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of display used using a head-up display
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R2300/00Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle
    • B60R2300/30Details of viewing arrangements using cameras and displays, specially adapted for use in a vehicle characterised by the type of image processing
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0141Head-up displays characterised by optical features characterised by the informative content of the display
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0183Adaptation to parameters characterising the motion of the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Automation & Control Theory (AREA)
  • Optics & Photonics (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Mechanical Engineering (AREA)
  • Signal Processing (AREA)

Abstract

【課題】視覚的慣性距離計(Visual Inertial Odometry;VIO)基盤のポーズ情報を取得する方法及び装置を提供する。【解決手段】ポーズ情報を取得する方法及び装置は、第1センサで撮影されたフレームから第1頂点を選択し、第2センサで検出された動き情報に基づいてフレーム間の回転情報を推定し、第1頂点のうち動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて推定された回転情報を補正し、第3頂点及び補正された回転情報に基づいて、フレーム間の移動情報を算出し、補正された回転情報及び移動情報を出力する。【選択図】図2

Description

実施形態は、視覚的慣性距離計(Visual Inertial Odometry;VIO)基盤のポーズ情報を取得する方法及び装置に関する。
映像に基づいた測位方法には、例えば、SfM(Structure from Motion)、SLAM(Simultaneous Localization and Mapping)、VO(Visual Odometry)などのように様々な方法が存在する。このような測位方法は、ホモグラフィを用いて映像を撮影したカメラの位置及び撮影された映像における各ピクセルの深度値を算出して測位を行う。ホモグラフィは、カメラで撮影した連続的な一連の映像のピクセル間の相関関係を示す。しかし、このような測位方法では、動的オブジェクトの動きを追跡することで発生するトラッキング損失及び/又はトラッキング性能の低下による正確度の減少が発生する虞がある。それだけではなく、映像から特徴点を選択するとき外れ値(Outlier)になる領域、言い換えれば、動的オブジェクトに対応する領域を繰り返し選択及び/又は除去するために多くのリソースが費やされる。
米国特許出願公開第2003/0218672号明細書
一実施形態の目的は、カメラが撮影した映像情報と慣性測位装置(例えば、IMUセンサ)が検出した動き情報とをともに活用することで、カメラの動き(静的オブジェクトの動き)と動的オブジェクトの動きとを区分してポーズ情報をより正確に算出することにある。
一実施形態の目的は、慣性測位装置は、映像とは関係がなく動き情報を提供するため、動き情報を映像情報と結合することで、ポーズ情報の正確度及び演算速度を向上させることにある。
一実施形態の目的は、6自由度ポーズ情報のうち、回転情報(VIO’s Rotation)を取得する過程と移動情報(VIO’s Translation)を取得する過程とを分離して行うことで、回転情報の正確度を向上させることにある。
一実施形態の目的は、回転情報の算出時にIMUセンサで検出された動き情報をフィルタを介して受信し、フィルタを介して伝えられる動き情報(に基づいて推定された回転情報)を映像情報によって推定された回転情報を補正するために利用することで、回転情報の正確度を向上させることにある。
一側面によれば、ポーズ情報を取得する方法は、第1センサで撮影された複数のフレームから第1頂点を選択するステップと、第2センサで検出された動き情報に基づいて、前記フレーム間の回転情報を推定するステップと、前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて、前記推定された回転情報を補正するステップと、前記第3頂点及び前記補正された回転情報に基づいて、前記フレーム間の移動情報を取得するステップと、前記補正された回転情報及び前記移動情報を出力するステップとを含む。
前記回転情報を推定するステップは、前記動き情報に基づいて、前記複数のフレームに対応する自体運動の状態を推定するステップと、前記推定された状態に基づいて、前記フレーム間の回転情報を推定するステップとを含み得る。
前記状態を推定するステップは、第1視点の状態と第2視点の動き情報に基づいて、第2視点の状態を推定するステップを含み得る。
前記自体運動の状態は、前記回転情報を推定するための第1状態及び前記移動情報を推定するための第2状態を含み得る。
前記フレーム間の回転情報を推定するステップは、カルマンフィルタ、拡張されたカルマンフィルタ、繰り返し拡張されたカルマンフィルタ、無香料カルマンフィルタ、及び粒子フィルタのいずれか1つを用いて前記フレーム間の回転情報を推定するステップを含み得る。
前記第2頂点は、前記回転情報に基づいて識別され得る。
前記推定された回転情報を補正するステップは、前記推定された回転情報に基づいて、前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去するステップと、前記第3頂点に基づいて、前記フレーム間の回転情報を推定するステップと、前記第3頂点に基づいて推定された回転情報を用いて、前記動き情報に基づいて推定された回転情報を補正するステップとを含み得る。
前記フレームは、第1視点で撮影された第1フレーム及び第2視点で撮影された第2フレームを含み、前記第2頂点を除去するステップは、前記第1視点で推定された第1回転情報と、前記第2視点で推定された第2回転情報間の回転変化量を算出するステップと、前記回転変化量に基づいて前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去するステップとを含み得る。
前記第3頂点に基づいて前記回転情報を推定するステップは、前記第3頂点に対してPNP関数、ガウス・ニュートン最適化(Gauss Newton optimization)関数、及びレーベンバーグ・マーカート最適化(levenberg marquardt optimization)関数のいずれか1つを適用して前記回転情報を推定するステップを含み得る。
前記推定された回転情報を補正するステップは、前記第3頂点に基づいて推定された回転情報と前記動き情報に基づいて推定された回転情報の間の差に基づいて、前記フレームのうち少なくとも1つに対応する自体運動の状態を更新するステップを含み得る。
前記移動情報を出力するステップは、前記補正された回転情報に基づいて、前記第3頂点が属するフレーム間の強度差に関するエネルギー関数が決定された目標値よりも小さくなるように前記移動情報を決定するステップを含み得る。
電気エネルギー関数は、ガウス・ニュートン最適化関数、及びレーベンバーグ・マーカート最適化関数のいずれか1つを含み得る。
前記第1頂点を選択するステップは、前記複数のフレームを分割するブロックごとに前記第1頂点を選択するステップと、前記複数のフレームに含まれたクラスごとに前記第1頂点を選択するステップと、のうち少なくとも1つを含み得る。
前記ブロックごとに前記第1頂点を選択するステップは、前記フレームそれぞれを一定の大きさのブロックに均等に分割するステップと、前記均等に分割されたブロックそれぞれから前記第1頂点を選択するステップとを含み得る。
前記クラスごとに前記第1頂点を選択するステップは、前記フレームそれぞれに含まれたピクセルの強度傾斜度の大きさ、方向、及び前記ピクセルと周辺ピクセルとの強度関係のうち少なくとも1つに基づいて複数のクラスに対応する候補頂点を決定するステップと、前記複数のクラスそれぞれに含まれた候補頂点から前記第1頂点を選択するステップとを含み得る。
前記第1頂点を選択するステップは、前記フレームそれぞれの中心にある頂点に第1加重値を与えるステップと、前記フレームそれぞれの中心から外郭に行くほど次第に前記頂点に前記第1加重値に比べて少ない第2加重値を与えるステップと、前記第1加重値及び前記第2加重値に基づいて、前記頂点のうち前記第1頂点を選択するステップとを含み得る。
一実施形態によると、ポーズ情報を出力する装置は、複数のフレームを撮影する第1センサと、動き情報を検出する第2センサと、前記複数のフレームから第1頂点を選択し、前記動き情報に基づいて前記フレーム間の回転情報を推定し、前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて前記推定された回転情報を補正し、前記第3頂点及び前記補正された回転情報に基づいて前記フレーム間の移動情報を算出する、少なくとも1つのプロセッサを含む。
前記プロセッサは、前記動き情報に基づいて、前記複数のフレームに対応する自体運動の状態を推定し、前記推定された状態に基づいて、前記フレーム間の回転情報を推定し得る。
前記プロセッサは、前記推定された回転情報に基づいて、前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去し、前記第1頂点のうち前記第2頂点を除いた第3頂点に基づいて、前記フレーム間の回転情報を推定し、前記第3頂点に基づいて推定された回転情報を用いて、前記動き情報に基づいて推定された回転情報を補正し得る。
前記プロセッサは、前記補正された回転情報に基づいて、前記第3頂点が属するフレーム間の強度差に関するエネルギー関数が決定された目標値よりも小さくなるように前記移動情報を決定し得る。
前記フレームそれぞれは車両前方の走行映像を含み得る。
一実施形態によると、ポーズ検出装置は、映像フレームをキャプチャーする第1センサと、動き情報を検出する第2センサと、ヘッドアップディスプレイ(HUD)と、前記映像フレームから第1頂点を選択し、前記動き情報に基づいて前記映像フレーム間の回転情報を推定し、前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて前記推定された回転情報を補正し、前記第3頂点と前記補正された回転情報に基づいて前記映像フレーム間の変換情報を取得し、前記補正された回転情報及び前記変換情報に基づいて、前記ヘッドアップディスプレイ上に仮想オブジェクトをレンダリングするプロセッサを含む。
ポーズ検出装置は、前記映像フレーム、前記動き情報、前記回転情報、前記補正された回転情報、前記変換情報、及び実行されるとき前記回転情報及び前記変換情報のうち任意の1つ又は任意の組合せを決定するようにプロセッサを構成する命令語を含むメモリをさらに含み得る。
一側面によれば、カメラが撮影した映像情報と慣性測位装置(例えば、IMUセンサ)が検出した動き情報をともに活用することで、カメラの動き(静的オブジェクトの動き)と動的オブジェクトの動きとを区分してポーズ情報をより正確に算出することができる。
一側面によれば、慣性測位装置は、映像とは関係がなく動き情報を提供するため、動き情報を映像情報と結合することで、ポーズ情報の正確度及び演算速度を向上させることができる。
一側面によれば、6自由度ポーズ情報のうち回転情報(VIO’s Rotation)を取得する過程と移動情報(VIO’s Translation)を取得する過程を分離して行うことで、回転情報の正確度を向上させることができる。
一側面によれば、回転情報の算出時にIMUセンサで検出された動き情報をフィルタを介して受信し、フィルタを介して伝えられる動き情報(に基づいて推定された回転情報)を映像情報によって推定された回転情報を補正するために利用することで、回転情報の正確度を向上させることができる。
一実施形態に係るポーズ情報を出力する過程を説明するための図である。 一実施形態に係るポーズ情報を取得する方法を示したフローチャートである。 一実施形態によりフレーム間の回転情報を推定する方法を示したフローチャートである。 実施形態によりフレーム間の回転情報を推定する方法を説明するための図である。 実施形態によりフレーム間の回転情報を推定する方法を説明するための図である。 実施形態により推定された回転情報を補正する方法を説明するための図である。 実施形態により推定された回転情報を補正する方法を説明するための図である。 一実施形態によりフレーム間の移動情報を算出する方法を説明するための図である。 一実施形態により複数のフレームから第1頂点を選択する方法を説明するための図である。 一実施形態により複数のフレームから第1頂点を選択する方法を説明するための図である。 一実施形態により複数のフレームから第1頂点を選択する方法を説明するための図である。 一実施形態により複数のフレームから第1頂点を選択する方法を説明するための図である。 一実施形態により複数のフレームから第1頂点を選択する方法を説明するための図である。 他の実施形態に係るポーズ情報を取得する方法を示したフローチャートである。 一実施形態係るポーズ情報を出力する装置のブロック図である。
下記で説明する実施形態は様々な変更が加えられることができる。特許出願の範囲がこのような実施形態によって制限も限定もされることはない。各図面に提示された同じ参照符号は同じ部材を示す。
本明細書で開示されている特定の構造的又は機能的な説明は単に実施形態を説明するための目的として例示されたものであり、実施形態は様々な異なる形態で実施され、本明細書に説明された実施形態に限定されることはない。
本明細書で用いた用語は、単に特定の実施形態を説明するために用いられるものであって、本発明を限定しようとする意図はない。単数の表現は、文脈上、明白に異なる意味をもたない限り複数の表現を含む。本明細書において、「含む」又は「有する」等の用語は明細書上に記載した特徴、数字、ステップ、動作、構成要素、部品又はこれらを組み合わせたものが存在することを示すものであって、1つ又はそれ以上の他の特徴や数字、ステップ、動作、構成要素、部品、又はこれを組み合わせたものなどの存在又は付加の可能性を予め排除しないものとして理解しなければならない。
異なる定義がされない限り、技術的であるか又は科学的な用語を含むここで用いる全ての用語は、本実施形態が属する技術分野で通常の知識を有する者によって一般的に理解されるものと同じ意味を有する。一般的に用いられる予め定義された用語は、関連技術の文脈上で有する意味と一致する意味を有するものと解釈すべきであって、本明細書で明白に定義しない限り、理想的又は過度に形式的な意味として解釈されることはない。
また、添付図面を参照して説明することにおいて、図面符号に関係なく同じ構成要素は同じ参照符号を付与し、これに対する重複する説明は省略する。実施形態の説明において関連する公知技術に対する具体的な説明が実施形態の要旨を不要に曖昧にすると判断される場合、その詳細な説明は省略する。
図1は、一実施形態に係る出力装置がポーズ情報を出力する過程を説明するための図である。図1を参照すると、一実施形態により視覚的慣性距離計(Visual Inertial Odometry;VIO)基盤のポーズ情報を出力する装置(以下、「出力装置」)100の構成及び動作が示されている。ポーズ情報は、出力装置の回転に関する回転情報、出力装置の移動に関する移動情報、又はその組合せを含み得る。
一般的に、視覚距離計(Visual Odometry)は、視覚的機能を用いてポーズ情報を推定する。しかし、映像内の動的オブジェクトが存在する場合、ポーズ情報を正確に推定できない。カメラで撮影された映像情報のみを用いて、カメラが動いているか、そうでなければ、周辺オブジェクトが動いているかを区分することは困難であるためである。また、視覚距離計を用いて突然の動きを推定することは困難である。これに対して、IMU(Inertial Measurement Unit)センサのような慣性測定装置は、突然の動きを円満に検出する一方、誤差が累積される特性に起因して、長い時間間隔での動きを持続的に検出することには適していない。
したがって、一実施形態では、カメラが撮影した映像情報と慣性測定装置が検出した動き情報をともに活用することで、カメラの動き(又は、カメラの動きによる映像内の静的オブジェクトの動き)と動的オブジェクトの動きを区分してポーズ情報をより正確に算出できる。慣性測定装置は、映像に関わらず動き情報を提供することができるため、一実施形態では、動き情報と映像情報を全て利用することによりポーズ情報の正確度及び演算速度を向上させることができる。
一実施形態に係る出力装置100は、第1センサ110、第2センサ120、フィルタ140、頂点選択部130、回転情報取得部150、及び移動情報取得部160を含む。ここで、フィルタ140、頂点選択部130、回転情報取得部150、及び移動情報取得部160の動作は、出力装置100のプロセッサによって実行される。より具体的に、プロセッサは、例えば、次の図10に示すプロセッサ1030であり得る。
出力装置100は、視覚的慣性距離計(VIO)基盤で映像フレーム間の6自由度(6−Degree of Freedom(DOF))ポーズの変化量を算出することでポーズ情報を出力する。ここで、6自由度ポーズは、3次元の移動情報(translation;T)と3次元の回転情報(orientation;R)を含む。移動情報Tは位置変化(例えば、並進運動)として理解され、回転情報Rはオリエンテーション変化(例えば、回転運動)として理解される。
第1センサ110は、複数の映像フレームを撮影する。第1センサ110は、例えば、カメラ、イメージセンサ又はビジョンセンサである。第1センサ110は、例えば、車両のウインドシールド、ダッシュボード、バックミラーなどのように車両の様々な位置に配置される。第1センサ110は、車両前方の走行映像を撮影する。第1センサ110は、例えば、第1視点で第1フレームを撮影し、第n視点で他のフレームを撮影する。
本明細書で説明された車両は、例えば、自動車、トラック、トラクター、スクーター、バイク、サイクル、水陸両用自動車、雪上車、ボート、公共交通車両、バス、モノレール、列車、トラム、自律又は自動運転車両、無人車、電気自動車(EV)、ハイブリッドカー、スマート移動装置、又は無人航空機の1つ以上などのような運送、伝達、又は通信の任意のモードを示す。一例として、スマート移動装置は、例えば、電気輪、電気キックボード及び電気自転車のような移動性装置を含む。例えば、車両には、動力装置のある車両(例えば、耕うん機又はバイク)、自転車、又は、手車のように動力及び非動力車両が含まれる。
本明細書で説明された車両の他に、ここで説明された方法及び装置は、例えば、スマートフォン、歩行補助装置、着用可能装置、セキュリティー装置、ロボット、移動端末、及び様々なIoT(Internet of Things)装置に含まれる。
第2センサ120は、動き情報を検出する。第2センサ120は、単数であってもよく、複数であってもよい。第2センサ120は、例えば、IMUセンサ、GPS(Global Positioning System)センサ、OBDなどを含む。第2センサ120は第1視点で第1動き情報を検出し、第2視点で第2動き情報を検出し、第n視点で第3動き情報を検出する。
頂点選択部130は、第1センサ110で撮影された複数のフレームからポーズ情報の算出のために使用される領域を選択する。例えば、頂点選択部130は、フレームから視覚的慣性距離計(VIO)の算出領域に該当する頂点(例えば、第1頂点)を選択する。
頂点選択部130は、様々な方式に基づいて頂点を選択する。頂点選択部130は、例えば、複数のフレームの領域で均等に頂点を選択する。又は、頂点選択部130は、例えば、ブロブ(blob)、エッジ(edge)、コーナー(corner)などのように複数のフレームに含まれた様々なクラスごとに頂点を選択する。その他にも、頂点選択部130は、複数のフレームを撮影するカメラのレンズによって歪曲された映像を復元するとき発生する誤差により、映像の中心で縁(外郭)に行くほど次第に映像の中心に比べて少ない数の頂点を選択する。頂点選択部130の動作について、次の図7ないし図8を参照して具体的に説明する。
フィルタ140は、第2センサ120で検出された動き情報に基づいて、複数のフレームに対応する自体運動の状態を推定する。自体運動は、環境内装置の3次元モーションであって、例えば、出力装置の回転モーション及び移動モーションを含む。フィルタ140は、例えば、観測値又は観察された値である動き情報に基づいて自体運動の状態を推定する。フィルタ140は、推定された状態に基づいて自体運動に関する情報を出力する。例えば、フィルタ140は、推定した状態に基づいて、フレーム間の回転情報Rinitialを推定する。フィルタ140は、回転情報Rinitialを回転情報取得部150に送信する。
ここで、第1センサ110が複数の映像フレームを撮影する視点と第2センサ120が動き情報を検出する視点との間には同期が合わない場合もある。例えば、第1センサ110が複数のフレームを撮影する視点間の間隔が第2センサ120が動き情報を検出する視点間の間隔に比べて時間が長いこともある。
フィルタ140は、第2センサ120が動き情報を検出した複数の視点のうち、第1センサ110が複数のフレームを撮影した視点に対応する一部の視点を選択し、選択された視点間の回転情報を推定及び送信する。
フィルタ140は、第2センサ120で検出された動き情報に基づいて、例えば、速度、IMUバイアス(例えば、角速度、加速度)、絶対位置などを推定する。ここで、動き情報は、例えば、IMUセンサのジャイロスコープによって検出されるピッチ(Pitch)、ロール(Roll)ヨー(Yaw)の3軸回転情報と加速度センサによって検出される3次元空間で前後、上下、左右の3軸への移動情報、GPS位置、OBDホイールオドメーター(wheel odometry)、操向角情報、姿勢情報などを含む。フィルタ140の動作については、下記の図4A及び図4Bを参照してより具体的に説明する。
回転情報取得部150は、フィルタ140から回転情報Rinitialを受信する。例えば、回転情報取得部150は、回転情報Rinitialを用いて頂点選択部130で選択された第1頂点から外れ値に該当する第2頂点を除く。例えば、回転情報取得部150は、第1頂点から第2頂点を除いた残りである第3頂点に基づいて回転情報Restimateを推定する。例えば、回転情報取得部150は、推定された回転情報Restimateをフィルタ140に送信する。ここで、外れ値に該当する第2頂点は、動的オブジェクトに該当する頂点であり得る。
以下、「第1頂点」は、第1センサ110によって撮影された複数のフレーム内のポーズ情報の算出のための領域から選択された頂点である。「第2頂点」は、第1頂点のうち動的オブジェクトに該当する頂点、言い換えれば、複数のフレームに含まれた静的オブジェクトの動きを把握するために除去されなければならない頂点である。第2頂点は、一実施形態でポーズ情報の算出のために排除されなければならない点で「外れ値(Outlier)」のように呼んでもよい。「第3頂点」は、第1頂点から第2頂点を除去して残った残りの頂点、言い換えれば、静的オブジェクトに該当する頂点である。第3頂点は「インライヤー(Inlier)」と呼んでもよい。
回転情報取得部150は、外れ値除去過程153及び回転情報評価過程156を行う。
外れ値除去153で、回転情報取得部150はフィルタ140から受信した、動き情報に基づいて推定された回転情報Rinitialに基づいて、第1頂点のうち外れ値(動的オブジェクトに該当する第2頂点)を除去する。
また、回転情報評価156で、回転情報取得部150は、外れ値除去153により伝えられた第3頂点に基づいて、フレーム間の回転情報Restimateを推定する。例えば、視覚情報に基づいて回転情報を評価(又は、推定)するために、回転情報取得部150は、映像内頂点のピクセル強度を直接的に使用する方法を用いることができる。一実施形態において、映像内頂点のピクセル強度を直接使用する方法について例を挙げて説明するが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、例えば、映像から抽出された特徴を使用するよう、視覚情報に基づいて回転情報を評価(又は、推定)する他の方法が使用されてもよい。
回転情報取得部150は、第3頂点に基づいて推定された回転情報Restimateをフィルタ140に伝達する。回転情報取得部150の動作については、下記の図5Bを参照してより具体的に説明する。
フィルタ140は、回転情報取得部150から回転情報Restimateを受信する。フィルタ140は回転情報Restimateを用いて回転情報Rinitialを補正し、最終的な回転情報R*を出力する。例えば、回転情報取得部150から第3頂点に基づいて推定された回転情報Restimateを受信したフィルタ140は、回転情報Restimateと動き情報に基づいて推定された回転情報Rinitialの間の差に基づいて自体運動の状態を更新する。フィルタ140は、更新された状態に基づいて最終的な回転情報R*を出力する。回転情報は、クォータニオン(quaternion)又はマトリックスなどの形態に表現される。
実施形態によると、第2センサ120に基づいて回転情報Rinitialを推定するフィルタ140の動作と、第1センサ110に基づいて回転情報Restimateを推定する回転情報取得部150の動作とが互いに区分される。したがって、図1に示された例は、慣性情報の処理と視覚情報の処理が互いに緩く結合された(loosely−coupled)システムの特性を提供する。
また、実施形態によると、回転情報Rinitialに基づいて回転情報Restimateの推定のための頂点を選択し、回転情報Restimateに基づいて回転情報Rinitialを補正することで、最終回転情報R*が出力される。したがって、図1に示された例は、慣性情報の処理と視覚情報の処理が互いに密着結合されたシステムの特性を提供する。
その結果、実施形態は、互いに緩く結合されたシステムの長所と互いに密着結合されたシステム両方の長所を全て含む技術を提供できる。例えば、第1センサ110の映像フレームだけで除去し難い動的オブジェクト領域の第2頂点をフィルタ140を介して統合された第2センサ120の状態情報を用いて除去することにより、演算速度が改善される。また、視覚情報基盤の推定結果が慣性情報基盤のフィルタにフィードバックされ、推定の正確度が改善される。
移動情報取得部160は、移動情報の変化量を算出する。移動情報取得部160は、第3頂点及びフィルタで最終的に補正された回転情報R*に基づいて、フレーム間の移動情報T*を算出する。移動情報取得部160の動作について、次の図6を参照してより具体的に説明する。
出力装置100は、回転情報R*及び移動情報T*を出力する。
実施形態は、スマート車両などの拡張現実ナビゲーションシステムで仮想オブジェクトのためのポーズ情報を提供したり、自律走行車両のステアリングを助けるための視覚情報を生成したり、又は、車両の走行のための様々な制御情報を提供するために活用される。また、実施形態は、車両内走行補助又は完全自律走行のために設けられたHUD(Head Up Display)などの知能システムを含む機器に視覚情報を提供し、安全かつ快適な走行のために使用される。実施形態は、例えば、自律走行自動車、知能型自動車、スマートフォン、及びモバイル機器などに適用され得る。
図2は、一実施形態に係るポーズ情報を取得する方法を示したフローチャートである。図2に示す動作は、図2に示された順序及び方式で実行されることができるが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、一部動作の順序が変更されたり、一部の動作が省略されてもよい。図2に示された多くの動作が並列的又は同時に実行されてもよい。図2に示す1つ以上のブロック及び前記ブロックの組合せは、特定の機能を行う特殊目的のハードウェア基盤コンピュータ、又は、特殊目的のハードウェア及びコンピュータ命令の組合せによって実現される。次の図2の説明に加えて、図1に示す説明も図2に適用でき、参照によって結合されてもよい。したがって、前記の説明はここで繰り返すことはない。
図2を参照すると、一実施形態に係るポーズ情報を出力する装置(以下、「出力装置」)は、第1センサで撮影された複数のフレームから第1頂点を選択する(S210)。出力装置が第1頂点を選択する方法については、次の図7〜図8を参照して具体的に説明する。
出力装置は、第2センサで検出された動き情報に基づいて、フレーム間の回転情報を推定する(S220)。出力装置は、例えば、カルマンフィルタ(Kalman Filter)、拡張されたカルマンフィルタ(Extended Kalman Filter)、繰り返し拡張されたカルマンフィルタ(Iterated Extended Kalman Filter)、無香料カルマンフィルタ(Unscented Kalman Filter)及び粒子フィルタ(Particle Filter)などを用いてフレーム間の回転情報を推定する。出力装置が自体運動の状態に基づいて、フレーム間の回転情報を推定する方法については、次の図3〜図4を参照して具体的に説明する。
出力装置は、第1頂点のうち動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて、推定された回転情報を補正する(S230)。出力装置が推定された回転情報を補正する方法については、次の図5を参照して具体的に説明する。
出力装置は、第3頂点及び補正された回転情報に基づいて、フレーム間の移動情報を算出する(S240)。出力装置は、補正された回転情報に基づいて、第3頂点が属するフレーム間の強度差に関するエネルギー関数が目標値よりも小さくなるよう移動情報を決定する。エネルギー関数は、複数の関数、例えば、非線型関数を地域的に線形関数に近似して解を求めるガウス・ニュートン最適化(Gauss Newton optimization)関数、及び初期の解が与えられれば初期の解から始めて繰り返し最適化された解を求めるレーベンバーグ・マーカート最適化(levenberg marquardt optimization)関数などを含む。ガウス・ニュートン最適化は、関数の傾斜と曲率を共に考慮しながら解を求める。出力装置が移動情報を算出する過程については、次の図6を参照して具体的に説明する。
出力装置は、ステップS230で補正された回転情報、及びステップS240で算出された移動情報を出力する(S250)。
図3は、一実施形態によりフレーム間の回転情報を推定する方法を示したフローチャートである。図3に示す動作は、図3に示された順序及び方式で実行され得るが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、一部動作の順序が変更されたり、一部動作が省略されてもよい。図3に示された多くの動作が並列的又は同時に実行されてもよい。図3に示す1つ以上のブロック及び前記ブロックの組合せは、特定の機能を行う特殊目的のハードウェア基盤コンピュータ、又は、特殊目的のハードウェア及びコンピュータ命令の組合せによって実現される。次の図3の説明に加えて、図1乃至2の説明も図3に適用でき、参照によって結合されてもよい。したがって、前記説明はここで繰り返すことはない。
図3を参照すると、一実施形態に係る出力装置は、動き情報に基づいて、複数のフレームに対応する自体運動の状態を推定する(S310)。出力装置は、例えば、第1視点の状態と第2視点の動き情報に基づいて、第2視点の状態を推定する。第2視点は現在の視点に該当し、第1視点は以前の視点に該当する。一実施形態によれば、自体運動の状態は、例えば、回転情報を推定するための第1状態及び移動情報を推定するための第2状態を含む。この場合、第1状態に応じて回転情報が推定され、第2状態に応じて移動情報が推定される。
出力装置は、ステップS310で推定された状態に基づいて、フレーム間の回転情報を推定する(S320)。一実施形態に係る出力装置のフィルタ140が自体運動の状態を推定し、フレーム間の回転情報を推定する方法については、次の図4A及び図4Bを参照して具体的に説明する。
図4Aは、一実施形態によりフレーム間の回転情報を推定する方法を説明するための図である。図4Aを参照すると、複数のフレームに対応してフィルタ140が推定した自体運動の状態Statei−1、State、State’が示されている。
フィルタ140は、センサ入力Iに基づいて、フレームに対応する自体運動の状態を推定する。ここで、センサ入力Iは、前述した第2センサで検出された動き情報に該当する。
フィルタ140は、i−1視点の状態Statei−1とi視点の動き情報Iに基づいて、i視点の状態Stateを推定する。フィルタ140は、推定された状態i−1視点の状態Statei−1、i視点の状態Stateに基づいて、フレーム間の回転情報Rinitialを「推定(Estimate)」する。一実施形態によれば、回転情報Rinitialはi−1視点の状態Statei−1の出力値とi視点の状態Stateの出力値の間の回転変化量ΔRに算出される。この場合、i−1視点の状態Statei−1は、第1センサ110によって第1フレームが撮影された視点に対応し、i視点の状態Stateは、第1センサ110によって第2フレームが撮影された視点に対応する。
フィルタ140は、回転情報取得部150から第3頂点に基づいて推定された回転情報Restimateを受信する。ここで、第3頂点に基づいて推定された回転情報Restimateは、回転情報Rinitialを補正するために用いてもよい。回転情報Restimateは、例えば、i−1視点で撮影された第1フレームとi視点で撮影された第2フレーム間の回転変化量ΔRに該当する。
フィルタ140は、回転情報Restimateを用いて回転情報Rinitialを「補正(Correct)」し、最終的な回転情報R*を出力する。より具体的に、フィルタ140は、第3頂点に基づいて推定された回転情報Restimateと動き情報に基づいて推定された回転情報Rinitialの間の差に基づいて、i視点の自体運動の状態Stateを状態State’に更新する。フィルタ140は、更新された状態State’に基づいて最終的な回転情報R*を出力する。例えば、最終回転情報R*は、状態Statei−1の出力値Oi−1と状態State’の出力値O’の間の回転変化量ΔRに算出される。
図4Bは、一実施形態に係るカルマンフィルタで回転情報を推定する方法を説明するための図である。図4Bを参照すると、カルマンフィルタでフレーム間の回転情報Rinitialを「推定(Estimate)」する推定過程410、及び回転情報Rinitialを「補正(Correct)」する補正過程430が示されている。一実施形態では、説明の便宜のためにフィルタ140の一実施に該当するカルマンフィルタの動作について説明するが、必ずこれに限定されることはない。カルマンフィルタの他にも、例えば、粒子フィルタなどのように様々なフィルタが記述された例示的な実施形態の思想及び範囲を逸脱することなく使用されてもよい。
推定過程410で、カルマンフィルタ(以下、「フィルタ」)の動作は次の通りである。
フィルタは、以前状態x^ k-1と現在入力ukに基づいて、現在状態x^- kを決定する。フィルタは、誤差の共分散(error covariance)値P- kも共に算出する。推定過程410で、現在状態x^- kに基づいて出力値
Figure 2020057358
が決定されるが、フィルタで推定される状態は、隠れ値であるため状態を直接的に補正することが難しい。
フィルタは、補正過程430により、観測値zkと推定過程410の出力値
Figure 2020057358
との差に基づいて状態を補正する。ここで、状態が補正される程度は、誤差の共分散P- kに基づいたカルマン利益Kkにより決定される。誤差の共分散P- kもカルマン利益KkによってPkに更新される。
前述した過程について、図1に示された出力装置の例示に適用すれば次の通りである。
例えば、IMUセンサは、動き情報に該当する角速度wと加速度aを検出する。ここで、フィルタの自体運動の状態には、回転情報Rinitialを推定するためのr状態と、移動情報Tinitialを推定するためのt状態とが別々に存在する。
第1視点で、IMUセンサから動き情報w、aが検出されれば、フィルタは、動き情報w、aに基づいてr状態とt状態を更新する。フィルタは、動き情報w、aに基づいてr状態とt状態をr状態とt状態に更新する。
第2視点で、IMUセンサから動き情報w、aが検出されれば、フィルタは動き情報w、aに基づいてr状態とt状態をr状態とt状態に更新する。
同じ方式で、第n視点でIMUセンサから動き情報w、aが検出されれば、フィルタは、動き情報w、aに基づいてrn−1状態とt
n−1状態をr状態とt状態に更新する。IMUセンサの動作が開始する初期視点(第0視点)に回転情報Rと移動情報Tは、初期化(例えば、0に設定)される。一実施形態では、各視点で推定された回転情報間の変化量及び移動情報間の変化量を用いるため、初期化値は以後の動作に影響を及ぼさない場合がある。
また、カメラは、第1視点で第1フレームを撮影し、第n視点で第2フレームを撮影するものと仮定する。この場合、フィルタは、第1視点でr状態による出力値Oと第n視点でr状態による出力値Oの間のO変化量を算出し、Rinitialを出力する。
出力装置は、Rinitialを用いて映像情報から動的オブジェクトに該当する外れ値を除去し、外れ値が除去された頂点(第3頂点)に対してPNP関数を適用してRestimateを算出する。Restimateは、フィルタの観測値にフィードバックされる。
出力装置は、第n視点のr状態を補正することによって、第n視点で推定された出力O=O+Rinitialのように表現される。また、Z=O+Restimateのように表現される。
したがって、第n視点のr状態を補正するために、観測値Zと出力値Oの間の差を用いてもよい。ここで、Z−O=Restimate−Rinitialであるため、出力装置は、この値(Restimate−Rinitial)を用いてr状態を補正する。ここで、補正されたr状態に応じて出力値O’が決定される。
図5Aは、一実施形態により推定された回転情報を補正する方法を示したフローチャートである。図5Aに示す動作は、図5Aに示された順序及び方式で実行されるが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、一部動作の順序が変更されたり、一部動作が省略されてもよい。図5Aに示された多くの動作が並列的に又は同時に実行されてもよい。図5Aに示す1つ以上のブロック及び前記ブロックの組合せは、特定機能を行う特殊目的のハードウェア基盤コンピュータ、又は、特殊目的のハードウェア及びコンピュータ命令の組合せによって実現される。次の図5Aの説明に加えて、図1ないし図4Bの説明についても図5Aに適用でき、参照によって結合されてもよい。したがって、前記説明はここで繰り返すことはない。
図5Aを参照すると、出力装置は、推定された回転情報に基づいて、第1頂点のうち動的オブジェクトに該当する第2頂点を除去する(S510)。出力装置は、第1視点と第2視点との間の回転情報Rinitialを推定する。出力装置は、回転情報initialに基づいて第1頂点のうち動的オブジェクトに該当する第2頂点を除去する。
出力装置は、第3頂点に基づいて、フレーム間の回転情報Restimateを推定する(S520)。第3頂点は、第1頂点のうち第2頂点を除いた残りの頂点であり得る。出力装置は、第3頂点に対して、例えば、PNP関数、ガウス・ニュートン最適化関数、及びレーベンバーグ・マーカート最適化関数などを適用して回転情報Restimateを推定する。
出力装置は、第3頂点に基づいて推定された回転情報Restimateを用いて、動き情報に基づいて推定された回転情報Rinitialを補正する(S530)。出力装置は、第3頂点に基づいて推定された回転情報estimateと、動き情報に基づいて推定された回転情報Rinitialの間の差に基づいて、フレームのうち少なくとも1つに対応する自体運動の状態を更新し得る。出力装置は、更新された自体運動の状態に応じて最終回転情報R*を推定する。
図5Bは、一実施形態により推定された回転情報を補正する方法を説明するための図である。図5Bを参照すると、回転情報を補正するための頂点選択部130、フィルタ140、及び回転情報取得部150間の動作が示されている。
例えば、回転情報取得部150は、頂点選択部130から第1頂点を受信し、フィルタ140から回転情報Rinitialを受信する。例えば、回転情報取得部150は、第1頂点と回転情報Rinitialに基づいて外れ値除去過程153及び回転情報評価過程156を行う。
例えば、外れ値除去過程153で、回転情報取得部150は、フィルタ140から受信した、動き情報に基づいて推定された回転情報Rinitialに基づいて、第1頂点のうち外れ値を除去する。外れ値除去過程153の実行によって、第1頂点のうち外れ値が除去された第3頂点が取得される。
一実施形態によれば、回転情報取得部150は、フィルタ140から移動情報Tinitialをさらに受信する。例えば、回転情報取得部150は、回転情報Rinitialと移動情報Tinitialに基づいて、フレームそれぞれに含まれた頂点のマッチング関係を取得し得る。マッチング関係は、回転情報評価過程156で活用される。
回転情報評価過程156で、回転情報取得部150は、外れ値除去153によって伝えられた第3頂点に基づいてフレーム間の回転情報を推定する。
回転情報取得部150は、第3頂点に基づいて回転情報Rinitialの補正のための回転情報Restimateをフィルタ140に送信する。回転情報取得部150は、第3頂点に基づいて推定された回転情報Restimateが動き情報に基づいて推定された回転情報Rinitialとどれ程差があるか、又は、どれ程の誤差を有するかによって回転情報を評価する。
回転情報取得部150は、第3頂点に基づいて推定された回転情報Restimateをフィルタ140に伝達する。フィルタ140は、回転情報Restimateを用いて回転情報Rinitialを補正して最終的な回転情報R*を出力し得る。
図6は、一実施形態によりフレーム間の移動情報を算出する方法を説明するための図である。図6を参照すると、移動情報を算出するためのフィルタ140、回転情報取得部150、及び移動情報取得部160間の動作が示されている。
移動情報取得部160は、フレーム間の移動情報、言い換えれば、移動情報の変化量を算出する。移動情報取得部160は、回転情報取得部150から受信した第3頂点及びフィルタ140で最終的に補正された回転情報R*に基づいて、フレーム間の移動情報T*を算出する。
移動情報取得部160は、回転情報R*に基づいて第3頂点が属するフレーム間の強度差に関するエネルギー関数が決定された目標値よりも小さくなるよう移動情報を決定する。ここで、エネルギー関数は、「光度計エラー関数(photometric error function)」とも呼ばれてもよい。エネルギー関数は、例えば、ガウス・ニュートン最適化関数、及びレーベンバーグ・マーカート最適化関数のいずれか1つであり得る。
図7は、一実施形態によりフレームから第1頂点を選択する過程を説明するための図である。
図7に示す動作は、図7に示された順序及び方式で実行されるが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、一部動作の順序が変更されたり、一部動作が省略されてもよい。図7に示された多くの動作が並列的又は同時に実行されてもよい。図7に示す1つ以上のブロック及び前記ブロックの組合せは、特定機能を行う特殊目的のハードウェア基盤コンピュータ、又は、特殊目的のハードウェア及びコンピュータ命令の組合せによって実現される。次の図2に示す説明に加えて、図1ないし図6の説明についても図7に適用でき、参照によって結合されてもよい。したがって、前記説明はここで繰り返すことはない。
図7を参照すると、一実施形態に係る頂点選択部130がバケット(Bucketing)方法710、候補選択(Candidate Selection)方法720、細心な選択(Careful Selection)方法730、及び放射型加重値(Radial Weighting)方法740により第1頂点を選択する過程が示されている。一実施形態の一実施として、頂点選択部130が前述した4種類の選択方法を順次行って第1頂点を選択することについて説明するが、必ずこれに限定されることはない。前述した4種類の選択方法は必要に応じて、選択方法のうち一部の方法のみが使用されてもよく、また、順次的な遂行順序が図7と異なってもよい。また、前述した4種類の選択方法は、実現形態により互いに結合されたり区分されてもよい。
頂点選択部130がバケット方法710によって、複数のフレームの領域を一定の大きさのブロックに均等に分割し、各ブロックから均等に頂点を選択する。頂点選択部は、候補選択方法720により、ブロブ、エッジ、コーナーなどのようなクラスごとに頂点を選択してもよい。頂点選択部130は、細心な選択方法730により、ブロック及びクラスごとに頂点が均等に選択されるようにする。
最後に、頂点選択部130は、フレームを撮影するカメラのレンズによる映像の歪曲を復元する過程で発生する誤差を勘案して頂点を選択し得る。頂点選択部130は、放射型加重値方法740により、各ブロックごと及び各クラスごとに均等に選択された頂点のうち、映像の中心にある頂点に大きい加重値を与え、中心から郊外にある頂点には小さい加重値を与えることで、映像の中心にある頂点が多く選択されるようにする。
バケット方法710、候補選択方法720、細心な選択方法730、及び放射型加重値方法740による具体的な動作については、次の図8A〜図8Dを参照して具体的に説明する。
図8は、実施形態によりフレームから第1頂点を選択する方法を説明するための図である。
図8Aを参照すると、バケット(Bucketing)方法によって第1頂点を選択する方法が示されている。バケット方法は、フレーム810の各領域で第1頂点を均等に選択することで、視覚的慣性距離計(VIO)の性能向上に役に立つ方法である。一実施形態に係る出力装置は、例えば、フレーム810それぞれをフレーム820のように一定の大きさのブロック(又は、バケット(bucket))に均等に分割し得る。出力装置は、均等に分割されたブロックそれぞれから決定した数以上の第1頂点を選択する。
図8Bを参照すると、候補選択(Candidate Selection)方法によって第1頂点を選択する方法が示されている。一実施形態に係る出力装置は、例えば、フレームそれぞれに含まれたピクセルの強度傾斜度の大きさ、方向、及びピクセルと周辺ピクセルとの強度関係のうち少なくとも1つに基づいて、複数のクラスに対応する候補頂点を決定する。ここで、複数のクラスは、例えば、コーナー、ブロブ、エッジなどを含む。ここで、ピクセルの強度傾斜度の大きさが大きいほど良い頂点に該当する。出力装置は、複数のクラスそれぞれに含まれた候補頂点から第1頂点を選択する。出力装置は、例えば、該当ピクセルの強度傾斜度の方向と周辺ピクセルの強度との関係を考慮して、フレーム830のようにコーナー、ブロブ、エッジなどの様々なクラスの候補頂点から第1頂点を選択し得る。
図8Cを参照すると、細心な選択(Careful Selection)方法によって第1頂点を選択する方法が示されている。細心な選択方法は、上記で図8Bを参照して候補選択により選択された候補頂点を視覚的慣性距離計(VIO)の性能を最適化できる方向として、さらに選別した方法である。
一実施形態に係る出力装置は、第1頂点の選別時に複数のフレームを分割するブロックごと及びフレームに含まれたクラスごとに候補頂点のうち第1頂点を選択する。ここで、出力装置は、フレームの全ての領域及び全てのクラスで均等に第1頂点が選択されるよう、相対的に選択された頂点の個数の低いブロックに優先権を与える。また、出力装置は、該当ブロック内でも相対的に少なく選択されたクラスに該当する頂点を優先的に選択する。
図8Dを参照すると、放射型加重値(Radial Weighting)方法によって第1頂点を選択する方法が示されている。一般的に、映像をレンズによるバレル歪曲(barrel distortion)を除去する歪曲の除去過程を経た後、視覚的慣性距離計(VIO)で用いられる。ここで、歪曲の除去過程は、近似アルゴリズムによって実行されるため、映像の縁に行くほど誤差が大きくなる。したがって、映像の縁に行くほど相対的に少ない個数の頂点を使用することで、時間慣性距離計の性能を向上させることができる。
放射型加重値方法は、前述した過程により選択された第1頂点が映像の中心から遠く位置するほど、少ない数が選択されるように調整する方法である。
出力装置は、複数のフレーム850それぞれの中心にある頂点に第1加重値を与える。出力装置は、フレームそれぞれの中心から外郭に行くほど、次第に頂点に第1加重値に比べて少ない第2加重値を与える。例えば、第1加重値が0.8又は0.9であれば、第2加重値は0.7よりも小さい値を有する。出力装置は、第1加重値及び第2加重値に基づいて、頂点のうち第1頂点を選択する。出力装置は、第2加重値が付与された頂点と比較してさらに高い第1加重値が割り当てられた頂点をさらに多く選択し得る。
図9は、他の実施形態に係るポーズ情報を取得する方法を示したフローチャートである。図9に示す動作は、図9に示された順序及び方式で実行されるが、説明された例示的な実施形態の思想及び範囲を逸脱することなく、一部動作の順序が変更されたり、一部動作が省略されてもよい。図9に示された多くの動作が並列的又は同時に実行されてもよい。図9に示す1つ以上のブロック及び前記ブロックの組合せは、特定機能を行う特殊目的のハードウェア基盤コンピュータ、又は、特殊目的のハードウェア及びコンピュータ命令の組合せによって実現される。次の図9の説明に加えて、図1ないし図8Aの説明についても図9に適用でき、参照によって結合れてもよい。したがって、前記説明はここで繰り返すことはない。
図9を参照すると、一実施形態に係る出力装置は、第1センサで撮影された映像を検索する(S910)。例えば、カメラがモノカメラ(Mono camera)である場合、出力装置は、単一ビューポイントに該当する映像を取得する。カメラがステレオカメラの場合、出力装置は、左側と右側のビューポイントに該当する映像を取得する。出力装置は、ステップS910で検索した映像から第1頂点を選択する(S920)。
出力装置は、第2センサで検出された動き情報に基づいて、フィルタの6自由度ポーズ変化量を推定する(S930)。出力装置は、ステップS930で推定したポーズ変化量に基づいて第1頂点のうち、動的オブジェクトに該当する第2頂点、言い換えれば、外れ値を除去する(S940)。
出力装置は、第1頂点のうち第2頂点を除いた第3頂点、言い換えれば、インライヤーに基づいて現在フレームの回転情報を評価して回転情報を算出する(S950)。出力装置は、ステップS950で算出した回転情報に基づいて、フィルタの状態を更新する(S960)。ここで、フィルタの状態は、現在フレームに対応する自体運動の状態に該当する。
出力装置は、ステップS960で更新された状態値を用いてフィルタの回転情報を推定する(S970)。出力装置は、フィルタの回転情報に基づいて視覚距離計の移動情報を評価(又は、推定)する(S980)。出力装置は、インライヤーを対象に予め推定された回転情報を用いて、移動情報を推定する。
図10は、一実施形態係るポーズ情報を出力する装置のブロック図である。図10を参照すると、一実施形態に係る出力装置1000は、第1センサ1013及び第2センサ1016を含むセンサ1010及びプロセッサ1030を含む。出力装置1000は、メモリ1050、通信インターフェース1070、及びディスプレイ1090をさらに含む。センサ1010、プロセッサ1030、メモリ1050、通信インターフェース1070、及びディスプレイ1090は、通信バス1005を介して通信する。
第1センサ1013は、例えば、イメージセンサ、又は、ビジョンセンサであってもよい。第1センサ1013は、例えば、車両の走行映像に該当する複数のフレームを撮影する。第2センサ1016は、動き情報を検出する。第2センサ1016は、例えば、加速度センサ、ジャイロセンサ、GPS(Global Positioning System)センサ、IMUセンサ、レーダー(Radar)、ライダー(Lidar)などを含む。第2センサ1016は、例えば、GPS座標、位置、姿勢などのような測位情報の他にも、速度、加速度、角速度、走行方向、車両のハンドルステアリング角度、及び車両の速度などの検出情報を検出する。
プロセッサ1030は、図1〜図9を参照して前述した動作を行う。
メモリ1050は、第1センサ1013で撮影された複数のフレーム及び/又は第2センサ1016で検出された動き情報を格納する。また、メモリ1050は、プロセッサ1030によって推定された回転情報、補正された回転情報及び移動情報を格納する。メモリ1050は、上述したプロセッサ1030での処理過程で生成される様々な情報を格納する。その他にも、メモリ1050は、各種のデータとプログラムなどを格納する。メモリ1050は、揮発性メモリ又は不揮発性メモリを含む。メモリ1050は、ハードディスクなどのような大容量格納媒体を備えて各種データを格納する。メモリ1050に対する具体的な内容は以下で説明する。
出力装置1000は、通信インターフェース1070を介してフレーム及び/又は動き情報を含む様々なセンサの検出情報を取得する。実施形態により、通信インターフェース1070は、出力装置1000の外部に存在する他のセンサから検出情報を受信する。
プロセッサ1030は、通信インターフェース1070及び/又はディスプレイ装置1090を介して補正された回転情報及び/又は移動情報を出力したり、又は、補正された回転情報及び/又は移動情報に基づいて仮想オブジェクトをディスプレイ装置1090に表示することで、拡張現実サービスを提供する。プロセッサ1030は、補正された回転情報及び/又は移動情報に基づいて仮想オブジェクトをディスプレイ装置1090上にレンダリングしてもよく、撮影されたフレームと共に表示してもよい。
プロセッサ1030は、目的とする動作を実行させるための物理的な構造を有する回路を有するハードウェアで具現されたデータ処理装置であり得る。例えば、目的とする動作は、プログラムに含まれたコード又は命令を含む。例えば、ハードウェアで具現されたデータ処理装置は、マイクロプロセッサー、中央処理装置、プロセッサコア、マルチ・コアプロセッサ、マルチプロセッサ、ASIC(Application−Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)を含む。
プロセッサ1030はプログラムを実行し、出力装置1000を制御する。プロセッサ1030によって実行されるプログラムコードは、メモリ1050に格納される。プロセッサ1030に対する具体的な内容は以下で説明する。
ディスプレイ1090は、プロセッサ1030によって決定された車両の補正された回転情報及び/又は移動情報を表示する。ディスプレイ1090は、補正された回転情報及び/又は車両の移動情報に基づいてディスプレイ1090上に仮想オブジェクトを表示する。一実施形態に係るディスプレイ1090は、ユーザインターフェースをレンダリングし、/又はユーザ入力を受信する能力を提供する1つ以上のハードウェア構成要素を含む物理的構造である。例えば、車両の補正された位置は、ヘッドアップディスプレイ(HUD)装置を用いてウインドシールドガラス又は車両の個別画面に表示されたり、拡張現実ヘッドアップディスプレイ(AR HUD)に表示される。一例として、出力装置1000は、車両の電子制御ユニット(electronic control unit;ECU)又は車両制御ユニット(vehicle control unit;VCU)に位置把握情報を送信する。電子制御ユニット又は車両制御ユニットは、車両のディスプレイ装置1350に位置把握情報を表示する。ただし、車両の補正された位置の表示は前述した例に限定されず、車両内の他の計器盤、車両インフォテインメントシステム、スクリーン又は車両のディスプレイパネルがディスプレイ機能を行うことができる。
例えば、スマートフォン、及びメガネ式ディスプレイ(eye glass display;EGD)などのように出力装置1000に動作可能に接続された他のディスプレイが、前述した例示的な実施形態の思想及び範囲を逸脱することなく使用され得る。出力装置1000は、例えば、前述したポーズ情報を取得する方法を行う装置として、例えば、車両であってもよく、ナビゲーション、スマートフォンなどのようなユーザ装置であってもよい。
出力装置100、出力装置1000、フィルタ140、ポイント選択器130、回転情報取得部、VIO回転取得部150、移動情報取得部、VIO移動取得部160、装置、ユニット、モジュール、装置及びここで説明された異なる構成要素はハードウェア構成要素によって実現され得る。
実施形態に係る方法は、様々なコンピュータ手段を介して実施されるプログラム命令の形態で具現され、コンピュータ読み取り可能な記録媒体に記録される。記録媒体は、プログラム命令、データファイル、データ構造などを単独又は組み合せて含む。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク及び磁気テープのような磁気媒体、CD−ROM、DYIJDのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びROM、RAM、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行される高級言語コードを含む。ハードウェア装置は、本発明に示す動作を実行するために1つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
上述したように実施形態をたとえ限定された図面によって説明したが、当技術分野で通常の知識を有する者であれば、上記の説明に基づいて様々な技術的な修正及び変形を適用することができる。例えば、説明された技術が説明された方法と異なる順で実行されるし、及び/又は説明されたシステム、構造、装置、回路などの構成要素が説明された方法と異なる形態で結合又は組み合わせられてもよいし、他の構成要素又は均等物によって置き換え又は置換されたとしても適切な結果を達成することができる。
したがって、本発明の範囲は、開示された実施形態に限定されて定められるものではなく、特許請求の範囲及び特許請求の範囲と均等なものなどによって定められるものである。
1000:出力装置
1010:センサ
1013:第1センサ
1016:第2センサ
1030:プロセッサ
1050:メモリ
1070:通信インターフェース
1090:ディスプレイ

Claims (24)

  1. 第1センサで撮影された複数のフレームから第1頂点を選択するステップと、
    第2センサで検出された動き情報に基づいて、前記フレーム間の回転情報を推定するステップと、
    前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて、前記推定された回転情報を補正するステップと、
    前記第3頂点及び前記補正された回転情報に基づいて、前記フレーム間の移動情報を取得するステップと、
    前記補正された回転情報及び前記移動情報を出力するステップと、
    を含む、ポーズ情報を取得する方法。
  2. 前記回転情報を推定するステップは、
    前記動き情報に基づいて、前記複数のフレームに対応する自体運動の状態を推定するステップと、
    前記推定された状態に基づいて、前記フレーム間の回転情報を推定するステップと、
    を含む、請求項1に記載のポーズ情報を取得する方法。
  3. 前記状態を推定するステップは、第1視点の状態と第2視点の動き情報に基づいて、第2視点の状態を推定するステップを含む、請求項2に記載のポーズ情報を取得する方法。
  4. 前記自体運動の状態は、前記回転情報を推定するための第1状態及び前記移動情報を推定するための第2状態を含む、請求項2に記載のポーズ情報を取得する方法。
  5. 前記フレーム間の回転情報を推定するステップは、カルマンフィルタ、拡張されたカルマンフィルタ、繰り返し拡張されたカルマンフィルタ、無香料カルマンフィルタ、及び粒子フィルタのいずれか1つを用いて前記フレーム間の回転情報を推定するステップを含む、請求項1ないし4のうちの何れか一項に記載のポーズ情報を取得する方法。
  6. 前記第2頂点は、前記回転情報に基づいて識別される、請求項1ないし5のうちの何れか一項に記載のポーズ情報を取得する方法。
  7. 前記推定された回転情報を補正するステップは、
    前記推定された回転情報に基づいて、前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去するステップと、
    前記第3頂点に基づいて、前記フレーム間の回転情報を推定するステップと、
    前記第3頂点に基づいて推定された回転情報を用いて、前記動き情報に基づいて推定された回転情報を補正するステップと、
    を含む、請求項1ないし6のうちの何れか一項に記載のポーズ情報を取得する方法。
  8. 前記フレームは、第1視点で撮影された第1フレーム及び第2視点で撮影された第2フレームを含み、
    前記第2頂点を除去するステップは、
    前記第1視点で推定された第1回転情報と、前記第2視点で推定された第2回転情報間の回転変化量を算出するステップと、
    前記回転変化量に基づいて前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去するステップと、
    を含む、請求項7に記載のポーズ情報を取得する方法。
  9. 前記第3頂点に基づいて前記回転情報を推定するステップは、前記第3頂点に対してPNP関数、ガウス・ニュートン最適化(Gauss Newton optimization)関数、及びレーベンバーグ・マーカート最適化(levenberg marquardt optimization)関数のいずれか1つを適用して前記回転情報を推定するステップを含む、請求項7に記載のポーズ情報を取得する方法。
  10. 前記推定された回転情報を補正するステップは、前記第3頂点に基づいて推定された回転情報と前記動き情報に基づいて推定された回転情報の間の差に基づいて、前記フレームのうち少なくとも1つに対応する自体運動の状態を更新するステップを含む、請求項7に記載のポーズ情報を取得する方法。
  11. 前記移動情報を出力するステップは、前記補正された回転情報に基づいて、前記第3頂点が属するフレーム間の強度差に関するエネルギー関数が決定された目標値よりも小さくなるように前記移動情報を決定するステップを含む、請求項1ないし10のうちの何れか一項に記載のポーズ情報を取得する方法。
  12. 電気エネルギー関数は、ガウス・ニュートン最適化関数、及びレーベンバーグ・マーカート最適化関数のいずれか1つを含む、請求項11に記載のポーズ情報を取得する方法。
  13. 前記第1頂点を選択するステップは、
    前記複数のフレームを分割するブロックごとに前記第1頂点を選択するステップと、
    前記複数のフレームに含まれたクラスごとに前記第1頂点を選択するステップと、
    のうち少なくとも1つを含む、請求項1ないし12のうちの何れか一項に記載のポーズ情報を取得する方法。
  14. 前記ブロックごとに前記第1頂点を選択するステップは、
    前記フレームそれぞれを一定の大きさのブロックに均等に分割するステップと、
    前記均等に分割されたブロックそれぞれから前記第1頂点を選択するステップと、
    を含む、請求項13に記載のポーズ情報を取得する方法。
  15. 前記クラスごとに前記第1頂点を選択するステップは、
    前記フレームそれぞれに含まれたピクセルの強度傾斜度の大きさ、方向、及び前記ピクセルと周辺ピクセルとの強度関係のうち少なくとも1つに基づいて複数のクラスに対応する候補頂点を決定するステップと、
    前記複数のクラスそれぞれに含まれた候補頂点から前記第1頂点を選択するステップと、
    を含む、請求項13に記載のポーズ情報を取得する方法。
  16. 前記第1頂点を選択するステップは、
    前記フレームそれぞれの中心にある頂点に第1加重値を与えるステップと、
    前記フレームそれぞれの中心から外郭に行くほど次第に前記頂点に前記第1加重値に比べて少ない第2加重値を与えるステップと、
    前記第1加重値及び前記第2加重値に基づいて、前記頂点のうち前記第1頂点を選択するステップと、
    を含む、請求項1ないし12のうちの何れか一項に記載のポーズ情報を取得する方法。
  17. 請求項1ないし請求項16のいずれか一項に記載の方法をコンピュータに実行させるコンピュータプログラム。
  18. ポーズ情報を出力装置であって、
    複数のフレームを撮影する第1センサと、
    動き情報を検出する第2センサと、
    少なくとも1つのプロセッサと、
    を含み、前記プロセッサは、
    前記複数のフレームから第1頂点を選択し、
    前記動き情報に基づいて前記フレーム間の回転情報を推定し、
    前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて前記推定された回転情報を補正し、
    前記第3頂点及び前記補正された回転情報に基づいて前記フレーム間の移動情報を算出する、ポーズ情報を出力する装置。
  19. 前記プロセッサは、
    前記動き情報に基づいて、前記複数のフレームに対応する自体運動の状態を推定し、
    前記推定された状態に基づいて、前記フレーム間の回転情報を推定する、請求項18に記載のポーズ情報を出力する装置。
  20. 前記プロセッサは、
    前記推定された回転情報に基づいて、前記第1頂点のうち動的オブジェクトに該当する第2頂点を除去し、
    前記第1頂点のうち前記第2頂点を除いた第3頂点に基づいて、前記フレーム間の回転情報を推定し、
    前記第3頂点に基づいて推定された回転情報を用いて、前記動き情報に基づいて推定された回転情報を補正する、請求項18に記載のポーズ情報を出力する装置。
  21. 前記プロセッサは、前記補正された回転情報に基づいて、前記第3頂点が属するフレーム間の強度差に関するエネルギー関数が決定された目標値よりも小さくなるように前記移動情報を決定する、請求項18に記載のポーズ情報を出力する装置。
  22. 前記フレームそれぞれは車両前方の走行映像を含む、請求項18に記載のポーズ情報を出力する装置。
  23. ポーズ検出装置であって、
    映像フレームをキャプチャーする第1センサと、
    動き情報を検出する第2センサと、
    ヘッドアップディスプレイ(HUD)と、
    プロセッサと、
    を含み、前記プロセッサは、
    前記映像フレームから第1頂点を選択し、前記動き情報に基づいて前記映像フレーム間の回転情報を推定し、
    前記第1頂点のうち、動的オブジェクトに該当する第2頂点を除いた残りの頂点である第3頂点に基づいて前記推定された回転情報を補正し、
    前記第3頂点と前記補正された回転情報に基づいて前記映像フレーム間の変換情報を取得し、
    前記補正された回転情報及び前記変換情報に基づいて、前記ヘッドアップディスプレイ上に仮想オブジェクトをレンダリングする、ポーズ検出装置。
  24. 前記映像フレーム、前記動き情報、前記回転情報、前記補正された回転情報、前記変換情報、並びに実行されるとき前記回転情報及び前記変換情報のうち任意の1つ又は任意の組合せを決定するようにプロセッサを指図する命令語を保存するメモリをさらに含む、請求項23に記載のポーズ検出装置。
JP2019114797A 2018-10-01 2019-06-20 ポーズ情報を取得する方法及び装置 Active JP7365148B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180116785A KR102559203B1 (ko) 2018-10-01 2018-10-01 포즈 정보를 출력하는 방법 및 장치
KR10-2018-0116785 2018-10-01

Publications (2)

Publication Number Publication Date
JP2020057358A true JP2020057358A (ja) 2020-04-09
JP7365148B2 JP7365148B2 (ja) 2023-10-19

Family

ID=66049108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019114797A Active JP7365148B2 (ja) 2018-10-01 2019-06-20 ポーズ情報を取得する方法及び装置

Country Status (5)

Country Link
US (1) US10866427B2 (ja)
EP (1) EP3633616A1 (ja)
JP (1) JP7365148B2 (ja)
KR (1) KR102559203B1 (ja)
CN (1) CN110992405A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210036574A (ko) * 2019-09-26 2021-04-05 삼성전자주식회사 자세 추정 방법 및 장치
US11215817B1 (en) * 2020-12-03 2022-01-04 Facebook Technologies, Llc. Systems and methods for generating spectator images of an artificial reality environment
DE102021117453B3 (de) 2021-07-06 2022-10-20 Holoride Gmbh Verfahren zum Betreiben einer Datenbrille in einem Kraftfahrzeug während einer Fahrt, entsprechend betreibbare Datenbrille, Prozessorschaltung sowie Kraftfahrzeug
EP4134625A1 (en) 2021-08-11 2023-02-15 Hitachi Astemo, Ltd. Drive device, vehicle, and method for automated driving and/or assisted driving

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005010817A1 (ja) * 2003-07-24 2005-02-03 Olympus Corporation 画像処理装置
WO2006035755A1 (ja) * 2004-09-28 2006-04-06 National University Corporation Kumamoto University 移動体ナビゲート情報表示方法および移動体ナビゲート情報表示装置
JP2011009893A (ja) * 2009-06-24 2011-01-13 Nec Corp フォロー対象検出装置、フォロー対象検出方法およびフォロー対象検出プログラム
WO2013111229A1 (ja) * 2012-01-23 2013-08-01 日本電気株式会社 カメラ校正装置、カメラ校正方法およびカメラ校正用プログラム
JP2013225245A (ja) * 2012-04-23 2013-10-31 Sony Corp 画像処理装置、画像処理方法及びプログラム
JP2014175996A (ja) * 2013-03-12 2014-09-22 Oki Electric Ind Co Ltd パラメータ推定装置、パラメータ推定プログラム、機器決定システム及び機器決定プログラム
WO2015029934A1 (ja) * 2013-08-30 2015-03-05 クラリオン株式会社 カメラ校正装置、カメラ校正システム、及びカメラ校正方法
US20150235378A1 (en) * 2014-02-17 2015-08-20 Samsung Electronics Co., Ltd. Apparatus and method for estimating camera pose
JP2017060091A (ja) * 2015-09-18 2017-03-23 カシオ計算機株式会社 姿勢推定装置、姿勢推定方法及びプログラム
JP2018004420A (ja) * 2016-06-30 2018-01-11 株式会社リコー 装置、移動体装置、位置ずれ検出方法及び測距方法
JP2018147095A (ja) * 2017-03-02 2018-09-20 富士通株式会社 カメラ位置姿勢推定装置、方法およびプログラム

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037988A (en) * 1996-03-22 2000-03-14 Microsoft Corp Method for generating sprites for object-based coding sytems using masks and rounding average
US6307959B1 (en) * 1999-07-14 2001-10-23 Sarnoff Corporation Method and apparatus for estimating scene structure and ego-motion from multiple images of a scene using correlation
KR100798283B1 (ko) * 1999-09-21 2008-01-28 코닌클리케 필립스 일렉트로닉스 엔.브이. 글로벌 모션 추정 방법 및 장치
US7515173B2 (en) 2002-05-23 2009-04-07 Microsoft Corporation Head pose tracking system
US7306337B2 (en) 2003-03-06 2007-12-11 Rensselaer Polytechnic Institute Calibration-free gaze tracking under natural head movement
US7831094B2 (en) 2004-04-27 2010-11-09 Honda Motor Co., Ltd. Simultaneous localization and mapping using multiple view feature descriptors
EP2179398B1 (en) * 2007-08-22 2011-03-02 Honda Research Institute Europe GmbH Estimating objects proper motion using optical flow, kinematics and depth information
US20110012896A1 (en) 2009-06-22 2011-01-20 Ji Maengsob Image display apparatus, 3d glasses, and method for operating the image display apparatus
US8508605B2 (en) * 2009-10-14 2013-08-13 Csr Technology Inc. Method and apparatus for image stabilization
KR20120006819A (ko) 2010-07-13 2012-01-19 한국기초과학지원연구원 시선 추적 방법 및 이를 적용하는 장치
KR101220527B1 (ko) 2011-03-02 2013-01-21 한국과학기술원 센서 시스템, 이를 이용하는 환경 지도 작성 시스템 및 방법
US8594374B1 (en) 2011-03-30 2013-11-26 Amazon Technologies, Inc. Secure device unlock with gaze calibration
US8744169B2 (en) * 2011-05-31 2014-06-03 Toyota Motor Europe Nv/Sa Voting strategy for visual ego-motion from stereo
US9286678B2 (en) * 2011-12-28 2016-03-15 Pelco, Inc. Camera calibration using feature identification
JP6031819B2 (ja) * 2012-05-17 2016-11-24 富士通株式会社 画像処理装置、画像処理方法
KR20140090552A (ko) 2013-01-09 2014-07-17 엘지전자 주식회사 시선 캘리브레이션을 제공하는 헤드 마운트 디스플레이 및 그 제어 방법
US10311595B2 (en) * 2013-11-19 2019-06-04 Canon Kabushiki Kaisha Image processing device and its control method, imaging apparatus, and storage medium
JP6429466B2 (ja) * 2013-11-19 2018-11-28 キヤノン株式会社 画像処理装置およびその制御方法、撮像装置、プログラム
EP2933707B1 (en) * 2014-04-14 2017-12-06 iOnRoad Technologies Ltd. Head mounted display presentation adjustment
US10012504B2 (en) * 2014-06-19 2018-07-03 Regents Of The University Of Minnesota Efficient vision-aided inertial navigation using a rolling-shutter camera with inaccurate timestamps
US9413951B2 (en) * 2014-07-31 2016-08-09 Apple Inc. Dynamic motion estimation and compensation for temporal filtering
US9969337B2 (en) * 2014-09-03 2018-05-15 Sharp Laboratories Of America, Inc. Methods and systems for mobile-agent navigation
US10719727B2 (en) * 2014-10-01 2020-07-21 Apple Inc. Method and system for determining at least one property related to at least part of a real environment
WO2016073642A1 (en) * 2014-11-04 2016-05-12 The Regents Of The University Of California Visual-inertial sensor fusion for navigation, localization, mapping, and 3d reconstruction
CN104501814B (zh) * 2014-12-12 2017-05-10 浙江大学 一种基于视觉和惯性信息的姿态与位置估计方法
EP3057061B1 (en) * 2015-02-16 2017-08-30 Application Solutions (Electronics and Vision) Limited Method and device for the estimation of car egomotion from surround view images
US10115024B2 (en) * 2015-02-26 2018-10-30 Mobileye Vision Technologies Ltd. Road vertical contour detection using a stabilized coordinate frame
JP6642972B2 (ja) * 2015-03-26 2020-02-12 修一 田山 車輌用画像表示システム及び方法
JP6464934B2 (ja) * 2015-06-11 2019-02-06 富士通株式会社 カメラ姿勢推定装置、カメラ姿勢推定方法およびカメラ姿勢推定プログラム
US9558424B2 (en) * 2015-06-30 2017-01-31 Mitsubishi Electric Research Laboratories, Inc. On-road stereo visual odometry without explicit pose determinations
CN108139757A (zh) * 2015-09-11 2018-06-08 深圳市大疆创新科技有限公司 用于检测和跟踪可移动物体的系统和方法
EP3193306B8 (en) * 2016-01-15 2019-01-23 Aptiv Technologies Limited A method and a device for estimating an orientation of a camera relative to a road surface
US9978180B2 (en) * 2016-01-25 2018-05-22 Microsoft Technology Licensing, Llc Frame projection for augmented reality environments
US9459692B1 (en) * 2016-03-29 2016-10-04 Ariadne's Thread (Usa), Inc. Virtual reality headset with relative motion head tracker
CN108605098B (zh) * 2016-05-20 2020-12-11 深圳市大疆创新科技有限公司 用于卷帘快门校正的系统和方法
US10295365B2 (en) * 2016-07-29 2019-05-21 Carnegie Mellon University State estimation for aerial vehicles using multi-sensor fusion
KR102439771B1 (ko) * 2016-08-22 2022-09-02 매직 립, 인코포레이티드 딥 러닝 센서들을 갖는 증강 현실 디스플레이 디바이스
CN109923499B (zh) 2016-09-27 2022-07-29 托比股份公司 便携式眼睛追踪装置
KR101851155B1 (ko) * 2016-10-12 2018-06-04 현대자동차주식회사 자율 주행 제어 장치, 그를 가지는 차량 및 그 제어 방법
US10705598B2 (en) * 2017-05-09 2020-07-07 Microsoft Technology Licensing, Llc Tracking wearable device and handheld object poses
US10612929B2 (en) * 2017-10-17 2020-04-07 AI Incorporated Discovering and plotting the boundary of an enclosure
US10514456B2 (en) * 2017-11-29 2019-12-24 Qualcomm Incorporated Radar aided visual inertial odometry outlier removal

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005010817A1 (ja) * 2003-07-24 2005-02-03 Olympus Corporation 画像処理装置
WO2006035755A1 (ja) * 2004-09-28 2006-04-06 National University Corporation Kumamoto University 移動体ナビゲート情報表示方法および移動体ナビゲート情報表示装置
JP2011009893A (ja) * 2009-06-24 2011-01-13 Nec Corp フォロー対象検出装置、フォロー対象検出方法およびフォロー対象検出プログラム
WO2013111229A1 (ja) * 2012-01-23 2013-08-01 日本電気株式会社 カメラ校正装置、カメラ校正方法およびカメラ校正用プログラム
JP2013225245A (ja) * 2012-04-23 2013-10-31 Sony Corp 画像処理装置、画像処理方法及びプログラム
JP2014175996A (ja) * 2013-03-12 2014-09-22 Oki Electric Ind Co Ltd パラメータ推定装置、パラメータ推定プログラム、機器決定システム及び機器決定プログラム
WO2015029934A1 (ja) * 2013-08-30 2015-03-05 クラリオン株式会社 カメラ校正装置、カメラ校正システム、及びカメラ校正方法
US20150235378A1 (en) * 2014-02-17 2015-08-20 Samsung Electronics Co., Ltd. Apparatus and method for estimating camera pose
JP2017060091A (ja) * 2015-09-18 2017-03-23 カシオ計算機株式会社 姿勢推定装置、姿勢推定方法及びプログラム
JP2018004420A (ja) * 2016-06-30 2018-01-11 株式会社リコー 装置、移動体装置、位置ずれ検出方法及び測距方法
JP2018147095A (ja) * 2017-03-02 2018-09-20 富士通株式会社 カメラ位置姿勢推定装置、方法およびプログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FERNANDO HERRANZ ET AL.: "Camera pose estimation using particle filters", [ONLINE], JPN7023001575, 10 November 2011 (2011-11-10), ISSN: 0005044362 *
J. S. GODDARD ET AL.: "Pose and motion estimation using dual quaternion-based extended Kalman filtering", [ONLINE], JPN7023001577, 6 March 1998 (1998-03-06), ISSN: 0005044361 *
荒木望 ET AL.: "Unscented Kalman Filterによるステレオカメラのパラメータ推定", [ONLINE], JPN7023001576, 2007, ISSN: 0005044360 *

Also Published As

Publication number Publication date
JP7365148B2 (ja) 2023-10-19
US10866427B2 (en) 2020-12-15
US20200103664A1 (en) 2020-04-02
KR20200037502A (ko) 2020-04-09
EP3633616A1 (en) 2020-04-08
CN110992405A (zh) 2020-04-10
KR102559203B1 (ko) 2023-07-25

Similar Documents

Publication Publication Date Title
US11804047B2 (en) Method and apparatus for recognizing object
JP7365148B2 (ja) ポーズ情報を取得する方法及び装置
US10732004B2 (en) Method and apparatus for displaying virtual route
US11175149B2 (en) Vehicle localization method and apparatus
US10921460B2 (en) Position estimating apparatus and method
US20200202498A1 (en) Computing system for rectifying ultra-wide fisheye lens images
JP6620153B2 (ja) サラウンドビュー画像から自動車のエゴモーションを推定するための方法および装置
CN107389088B (zh) 车载惯性导航的误差修正方法、装置、介质及设备
JP6107081B2 (ja) 画像処理装置、画像処理方法及びプログラム
US10885787B2 (en) Method and apparatus for recognizing object
WO2018159177A1 (en) Vehicle automated parking system and method
EP3400556A1 (en) Systems and methods for estimating future paths
EP2757527A1 (en) System and method for distorted camera image correction
CN108136867A (zh) 自动驾驶车辆的车辆位置点转发方法
US10936851B2 (en) Method and apparatus for recognizing object
KR102331000B1 (ko) 자율주행차량의 관심 대상 신호등을 특정하기 위한 방법 및 이를 이용한 컴퓨팅 장치
JP6826010B2 (ja) カメラ運動推定装置、カメラ運動推定方法及びプログラム
JP7337617B2 (ja) 推定装置、推定方法及びプログラム
JP2023506533A (ja) モバイルデバイス用のカメラシステム、1つのカメラを位置決めするための方法、および、複数のカメラを位置決めするための方法
JP2024074254A (ja) カメラ姿勢を推定する装置及び方法
CN109325962B (zh) 信息处理方法、装置、设备以及计算机可读存储介质
KR20220160850A (ko) 소실점을 추정하는 방법 및 장치
JP2016122381A (ja) オプティカルフロー算出装置、オプティカルフロー算出方法、及びプログラム
CN118057451A (zh) 电子装置和操作电子装置的方法
CN117261764A (zh) 用于车辆盲点可视化的装置和方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230720

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231006

R150 Certificate of patent or registration of utility model

Ref document number: 7365148

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150