[go: up one dir, main page]

JP2021111375A - 現実のシーンのビデオフラックスの拡張 - Google Patents

現実のシーンのビデオフラックスの拡張 Download PDF

Info

Publication number
JP2021111375A
JP2021111375A JP2020211233A JP2020211233A JP2021111375A JP 2021111375 A JP2021111375 A JP 2021111375A JP 2020211233 A JP2020211233 A JP 2020211233A JP 2020211233 A JP2020211233 A JP 2020211233A JP 2021111375 A JP2021111375 A JP 2021111375A
Authority
JP
Japan
Prior art keywords
image
pose
video
model
images
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
JP2020211233A
Other languages
English (en)
Other versions
JP7644595B2 (ja
Inventor
メア エロワ
Mehr Eloi
メア エロワ
ギッテニー ビンセント
Guitteny Vincent
ギッテニー ビンセント
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.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
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 Dassault Systemes SE filed Critical Dassault Systemes SE
Publication of JP2021111375A publication Critical patent/JP2021111375A/ja
Application granted granted Critical
Publication of JP7644595B2 publication Critical patent/JP7644595B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/122Improving the 3D impression of stereoscopic images by modifying image signal contents, e.g. by filtering or adding monoscopic depth cues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/261Image signal generators with monoscopic-to-stereoscopic image conversion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】実オブジェクトを含む現実のシーンのビデオフラックスを拡張するための拡張現実を改善する方法、システム及びコンピュータプログラムを提供する。【解決手段】方法は、ビデオカメラでビデオフラックスを撮影し、ビデオフラックスから、それぞれが実オブジェクトを表す1つ又は複数の2D画像を抽出し、実オブジェクトを表す3Dモデルを提供することと、候補ポーズの中で、ビデオフラックスに対する3Dモデルのポーズを決定することと、を含む。この決定は、仮想2Dレンダリングと少なくとも1つの2D画像との間の相互依存性を表す、少なくとも1つの2D画像及び各所与の候補ポーズについての相互情報に報酬を与える。この方法はまた、ポーズに基づいてビデオフラックスを拡張することを含む。【選択図】図1

Description

本発明はコンピュータプログラム及びシステムの分野に関し、より具体的には、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するための方法、システム、及びプログラムに関する。
オブジェクトの設計、エンジニアリング及び製造のために、多数のシステム及びプログラムが市場に提供されている。CADはコンピュータ支援設計の頭字語であり、例えば、オブジェクトを設計するためのソフトウェアソリューションに関する。CAEはコンピュータ支援エンジニアリングの頭字語であり、例えば、将来の製品の物理的挙動をシミュレートするためのソフトウェアソリューションに関連する。CAMはコンピュータ支援製造の頭字語であり、例えば、製造処理及び動作を定義するためのソフトウェアソリューションに関する。そのようなコンピュータ支援設計システムでは、グラフィカルユーザーインタフェースが技法の効率に関して重要な役割を果たす。これらの技術は、製品ライフサイクル管理(PLM)システム内に組み込まれてもよい。PLMとは、企業が製品データを共有し、共通の処理を適用し、企業知識を活用して、長期的な企業のコンセプトを越えて、コンセプトから生涯にわたる製品の開発に役立てることを支援するビジネス戦略のことをいう。(CATIA、ENOVIA及びDELMIAの商標で)ダッソーシステムズによって提供されるPLMソリューションは、製品工学知識を編成するエンジニアリングハブと、製造工学知識を管理する製造ハブと、企業統合、並びにエンジニアリングハブ及び製造ハブの両方への接続を可能にする企業ハブとを提供する。全体として、システムは最適化された製品定義、製造準備、生産、及びサービスを駆動する動的な知識ベースの製品作成及び意思決定サポートを可能にするために、製品、プロセス、リソースをリンクするオープンオブジェクトモデルを提供する。
この文脈及び他の文脈において、拡張現実は、広く重要性を増している。拡張現実は、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するためのソリューションを包含する。これらの解決策は例えば、ビデオフラックスによって実オブジェクトの表示に情報を追加することを可能にする。これらの解決策はビデオフラックスの異なる2Dフレームに対する実オブジェクトの3Dモデルのポーズを知ることを必要とし、その結果、3Dモデルに関連付けられた情報をビデオフラックスに追加して、それを拡張させることができる。実際、仮想モデルをオブジェクト上に重ね合わせるために、拡張現実システムの参照フレーム内のオブジェクトがどこに位置するかをできるだけ正確に知る必要がある。
3Dモデル(例えば、仮想3Dメッシュ)が、ビデオフラックスの画像フレーム内の実オブジェクトと同じテクスチャを有する場合、1つの既存の解決策はオブジェクトの仮想ビューを合成し、仮想画像と実画像との間のキーポイント(FERN又はSIFT記述子など)を一致させることである。仮想画像上のキー点は既知の3D点に対応するので、いくつかの既存の解決策はEPnPアルゴリズムを使用してポーズを計算することを含む。これは、特に、VLepetit, FMoreno-Noguer, and PFua, EPnP: An Accurate O(n)Solution to PnP Problem, International Journal of Computer Vision(IJCV),2008による論文において提案されているものである。しかしながら、3Dモデルがテクスチャ(又は画像上に表示された実オブジェクトとは異なるテクスチャ)を有していないことは非常に一般的であり、これは、正確なポーズをもたらすのに十分にロバストなキーポイントの計算を妨げる。さらに、実オブジェクトは、画像内でセグメント化することが困難であり得、これはまた、オブジェクトの輪郭にわたる任意の信頼できる記述子を妨げる。そのような場合、既存の学習ベースのアプローチは、権利を予測するためにニューラルネットワークを訓練することによって解決策を提供することができる。しかしながら、このような方法は、訓練中に見えなかった実オブジェクトに対してはうまく機能しない。
したがって、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するための拡張現実の改善された解決策が必要とされている。
したがって、本発明は、拡張現実のコンピュータ実施方法を提供する。この方法は、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するためのものである。この方法はビデオカメラでビデオフラックスを撮影することを含む。この方法はまた、ビデオフラックスから、それぞれが実オブジェクトを表す1つ又は複数の2D画像を抽出することを含む。本方法はまた、実オブジェクトを表す3Dモデルを提供することを含む。この方法はまた、候補ポーズの中で、ビデオフラックスに対する3Dモデルのポーズを決定することを含む。この決定は、少なくとも1つの2D画像及び各所与の候補ポーズに対して相互情報に報酬を与える。相互情報は、仮想2Dレンダリングと少なくとも1つの2D画像との間の相互依存性を表す。仮想2Dレンダリングは、少なくとも1つの2D画像に対する所与の候補ポーズの値を有する3Dモデルの仮想2Dレンダリングである。この方法はまた、ポーズに基づいてビデオフラックスを拡張することを含む。
この方法は、以下のうちの1つ又は複数を含むことができる:
前記1つ以上の2D画像は前記ビデオフラックスのそれぞれのフレームにそれぞれ対応するいくつかの2D画像を含み、前記決定するステップは、前記いくつかの2D画像のそれぞれの2D画像に対する相互情報に報酬を与える。
前記決定するステップは項を含む目的関数を最適化するステップを含み、各項は、いくつかの2D画像のそれぞれの2D画像について相互情報に報酬を与える。
前記目的関数は、前記項の和である。
各項が対応する2D画像についての相互情報に等しい。
最適化はN個(N>1)の開始ポーズを提供することと、それぞれの開始ポーズから開始し、それぞれの結果のポーズを出力するたびに、目的関数上でN時点、非微分反復最適化アルゴリズムを実行することとを含み、決定することは、N個の結果のポーズのうちの1つに基づいてポーズを計算することを含む;
前記最適化が、N>1であるN個の開始ポーズを提供するステップと、目的関数上でN回の非微分可能反復最適化アルゴリズムを実行し、各回ではそれぞれの開始ポーズから開始し、それぞれの結果として生じるポーズを出力し、前記結果におけるN個のポーズのいずれかに基づいて前記ポーズを計算する。
前記決定するステップは、前記3Dモデルの1つ又は複数の点の前記複数の2D画像上の投影間の写真整合性にさらに報酬を与える。
前記決定するステップが、計算において、写真整合性の前記報酬を実行し、N個の結果ポーズのうちの1つを出力する刈り取りステップと、最適化後に、写真整合性に前記報酬を与える精緻化を行う。
前記決定するステップは前記3Dモデルの3Dエッジの投影と、少なくとも1つの2D画像における2Dエッジとの間のマッチにさらに報酬を与え、前記精緻化は前記マッチの前記報酬を任意選択で実行する。
前記少なくとも1つの画像のそれぞれの画像について、前記3Dエッジは、前記それぞれの画像における前記3Dモデルのシルエットを形成する。
前記相互情報は、前記仮想2Dレンダリングから抽出された第1の変数、及び前記少なくとも1つの2D画像から抽出される第2の変数の間の相互情報である。
前記画素値領域上の前記分布は、所定のサブレンジのうちの1つに属する値を有する画素のカウントである。
本方法を実行するための命令を含むコンピュータプログラムがさらに提供される。
さらに、コンピュータプログラムが記録されたコンピュータ可読記憶媒体が提供される。
さらに、メモリに結合されたプロセッサ及びを含むシステムが提供され、メモリは、その上に記録されたコンピュータプログラムを有する。
方法の一例のフローチャートを示す。 システムの一例を示す図である。 この方法を示す。 この方法を示す。 この方法で得られた結果を示す。 この方法で得られた結果を示す。
拡張現実のコンピュータ実施方法を提案する。この方法は、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するためのものである。この方法はビデオカメラでビデオフラックスを撮影することを含む。この方法はまた、ビデオフラックスから、それぞれが実オブジェクトを表す1つ又は複数の2D画像を抽出することを含む。本方法はまた、実オブジェクトを表す3Dモデルを提供することを含む。この方法はまた、候補ポーズの中で、ビデオフラックスに対する3Dモデルのポーズを決定することを含む。(ポーズの)決定は、少なくとも1つの2D画像及び各所与の候補ポーズについて相互情報に報酬を与える。相互情報は、仮想2Dレンダリングと少なくとも1つの2D画像との間の相互依存性を表す。仮想2Dレンダリングは、少なくとも1つの2D画像に対する所与の候補ポーズの値を有する3Dモデルの仮想2Dレンダリングである。この方法はまた、(決定された)ポーズに基づいてビデオフラックスを拡張することを含む。
このような方法は、実オブジェクトを含む現実のシーンのビデオフラックスを拡張するための拡張現実の改善された解決策を形成する。
本方法は前記実オブジェクトを含む実シーンのビデオフラックスに対する実オブジェクトを表す3Dモデルのポーズを決定し、ビデオフラックスはビデオカメラで撮影される。したがって、本方法は例えば、任意の既知の方法に従って、決定されたポーズに基づいてビデオフラックスを拡張させることを可能にする。したがって、この方法は、ビデオフラックス撮影の特定の状況において、拡張現実ソリューションの能力を提供する。
次に、この方法は、特定の方法でビデオフラックスに対する3Dモデルのポーズを決定する。具体的には、本方法によるポーズの決定がビデオフラックスから抽出された少なくとも1つの2D画像に対する3Dモデルの仮想2Dレンダリングと、少なくとも1つの2D画像自体との間の相互依存性を表す相互情報に報酬を与える。このような報酬のおかげで、本方法は、ビデオフラックスと比較的一致するポーズを決定する。言い換えれば、この方法はカメラの真のポーズパラメータに比較的正確に対応するポーズ、又は拡張現実に関して、許容可能な方法でこれらの真のポーズパラメータをエミュレートするポーズパラメータを決定する。実際、相互情報は、ポーズに基づいて、1つ又は複数の抽出された画像と、その(それらの)対応するレンダリングとの間の相互依存性を捕獲する。このような相互情報に報酬を与えることによって、この方法はこのような依存性をある程度検証しなければならないと仮定し、これは、この方法によって得られた結果の正確さを評価するときに真であることを明らかにする。したがって、拡張は、決定されたポーズに依存するので、比較的正確でもある。
さらに、この方法は、3Dモデルのテクスチャと2D画像のセグメント化との間のいかなる決定論的相関にも依存する必要はない。実際、この方法は、類似性の統計的尺度、すなわち相互情報を使用する。これは、3Dモデルの2Dレンダリングを考慮して、2D画像に匹敵するフォーマットを得ることによって可能になる。このような統計的分析を用いて、本方法は、一方では候補ポーズに沿ってレンダリングされた3Dモデルを、他方では抽出された2D画像と相関させることができる十分な情報を有する。したがって、3Dモデルはテクスチャ化されていないか、又は代替的にテクスチャ化されているが、2D画像のセグメント化に相関しないテクスチャを有することができ、及び/又は2D画像はセグメント化不能(すなわち、セグメント化することが困難又は不可能)であることができる。また、相互情報(確率論的な理論的定義を有する)はテスト中に、例えば仮想2Dレンダリングとその(それらの)対応する抽出された2D画像との間のL2ノルムなどの非確率論的な理論的定義を有する基準のみに依存するソリューションよりも正確な結果を提供することを明らかにした。さらに、この方法は、機械学習データセットの事前提供に依存する必要はない。実際、本方法のポーズ決定は完全に決定論的であり得る(すなわち、決定論的アルゴリズムを実行する、すなわち、学習されず、したがって、訓練されたニューラルネットワークではない)。
1つ又は複数の(抽出された)2D画像はそれぞれがビデオフラックスのそれぞれのフレームに対応するいくつかの2D画像(すなわち、複数の2D画像)を含むことができる。そのような場合、決定はそのような各2D画像について(すなわち、いくつかの2D画像の各画像について/間で)相互情報に報酬を与えることができる。すなわち、抽出された複数のビデオフラックスのうち、実オブジェクトを表すフレーム毎に報酬が付与される。これは、(例えば、単一の抽出された画像フレームに依存する場合と比較して)ビデオフラックスによって提供される情報の豊富さを比較的完全に活用することを可能にする。これにより、この方法の精度とロバスト性が改善される。
特に、いくつかの2D画像は、異なる視点からの実オブジェクトの2D画像を含むことができる。異なる視点は例えば、実オブジェクトの異なる視角を含むことができる。そのために、撮影することは、異なる視点(例えば、異なる角度を含む)から実オブジェクトのビデオフレームを撮影するように、(例えば、実オブジェクトの周りを含む)シーン内でカメラを移動させること(例えば、回転させることを含む)を含むことができる。このような場合、この方法は、ビデオフラックス撮影によって許容される実オブジェクトの全空間カバレッジを利用する。これは、さらに、方法の正確さ及びロバスト性を改善する。抽出された2D画像は例えば、20又は10及未満び/又は2又は3より高い、及び/又は1又は5秒より長い、及び/又は1分又は30秒未満の期間に分配された複数の画像を含むことができる。
実オブジェクトは、現実世界の製造された製品及び/又は固定/不動であってもよい。実オブジェクトは、航空宇宙、建築、建設、消費財、ハイテク機器、産業機器、輸送、海洋、及び/又は海洋石油/ガス生産又は輸送を含む、種々無制限の産業分野の製品であってもよい。したがって、実オブジェクトは陸上車両の一部(例えば、自動車及び軽トラック機器、レーシングカー、オートバイ、トラック及びモーター機器、トラック及びバス、列車を含む)、航空車両の一部(例えば、機体機器、航空宇宙機器、推進機器、防衛機器、制御装置機器、宇宙機器を含む)、海上車両の一部(例えば、海上機器、商用船、オフショア機器、ヨット及び作業船を含む)、一般機械部品(例えば、工業製造機械、重移動機械又は機器、設置機器、産業機器、加工金属製品、タイヤ製造製品を含む)、電気機械又は電子部品(例えば、家庭用電化製品、セキュリティ及び/又は制御及び/又は計装製品、コンピュータ及び通信機器、半導体、医療デバイス及び機器を含む)、家庭用品(例えば、家具を含む)、などの任意の機械部品であってもよい工業製品であってもよい。家庭用品、庭用品、レジャー用品、ファッション用品、ハード用品小売業者の製品、ソフト用品小売業者の製品、包装(例えば、食品及び飲料及びタバコ、美容及びパーソナルケア、家庭用品包装を含む)であってもよい。実シーンは、実オブジェクトの物理的インスタンスが位置する任意の実世界環境であってもよい。
この方法は、コンピュータで実施される。これは、この方法のステップ(又は実質的に全てのステップ)が少なくとも1つのコンピュータ又は任意のシステムによって実行されることを意味する。したがって、本方法のステップはコンピュータによって、場合によっては完全に自動的に、又は半自動的に実行される。例では、方法のステップのうちの少なくともいくつかのトリガがユーザ/コンピュータ対話を介して実行され得る。必要とされるユーザ/コンピュータ対話のレベルは予測される自動化のレベルに依存し、ユーザの希望を実施する必要性とバランスをとることができる。例では、このレベルがユーザ定義及び/又は事前定義され得る。
方法のコンピュータ実装の典型的な例は、この目的のために適合されたシステムを用いて方法を実行することである。このシステムはメモリに結合されたプロセッサを含み、このメモリは、この方法を実行するための命令を含むコンピュータプログラムに記録されたものであってもよい。メモリはまた、データベースを記憶してもよい。メモリはそのような記憶装置に適合された任意のハードウェアであり、場合によっては、いくつかの物理的に別個の部分(例えば、プログラムのための部分、及び場合によってはデータベースのための部分)を備える。
コンピュータプログラムはコンピュータによって実行可能な命令を含むことができ、命令は、上記装置に該方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは例えば、デジタル電子回路において、又はコンピュータハードウェア、ファームウェア、ソフトウェアにおいて、又はそれらの組み合わせにおいて実装されてもよい。プログラムは装置、例えば、プログラマブルプロセッサによる実行のための機械可読記憶デバイスに有形に具現化された製品として実装されてもよい。方法のステップは入力データに対して動作し、出力を生成することによって、方法の機能を実行するための命令のプログラムを実行するプログラマブルプロセッサによって実行されてもよい。したがって、プロセッサはプログラム可能であり、データ記憶システム、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスからデータ及び命令を受信し、それらにデータ及び命令を送信するように結合され得る。アプリケーションプログラムは、高レベルの手続き型又はオブジェクト指向プログラミング言語で、あるいは必要に応じてアセンブリ言語又は機械語で実装することができる。いずれの場合も、言語は、コンパイルされた言語又は解釈された言語であってもよい。プログラムはフルインストールプログラムであってもよいし、更新プログラムであってもよい。システム上にプログラムを適用すると、いずれにしても、この方法を実行するための命令が得られる。
このシステムは、ディスプレイスクリーンを含むことができる。プロセッサはディスプレイスクリーンに結合され、ディスプレイスクリーン上に(例えば、拡張された)ビデオフラックスを表示するように構成されてもよい。本方法は例えば、(実質的に)ビデオフラックスの撮影中にリアルタイムで、拡張されたビデオフラックス(すなわち、本方法によって実行される拡張ステップから生じる拡張されたビデオフラックス)を表示スクリーン上に表示することを更に含むことができる。あるいは、表示が方法の後に別個に実行されてもよい。
このシステムは、ビデオカメラを備えることができる。カメラは、プロセッサに結合され、ビデオフラックスを撮影するように構成され得る。撮影は例えば、ユーザ対話を介して実行されてもよい。ユーザはカメラを持ち運び、実オブジェクトのビデオを撮影するためにシーン内でカメラを(例えば、周囲で)動かすことができる。ユーザは例えば、カメラを手に持ってもよく、あるいは、カメラが取り付けられるアクセサリ(例えば、眼鏡)を着用してもよい。本方法の他のステップは例えば、ビデオフラックスが撮影されている間にリアルタイムで完全に自動的に(実質的に)実行されてもよい。
システムは例えば、カメラに搭載されたセンサーを備えることによって、又はカメラに対して固定されたセンサーを備えることによって、その移動中にカメラの相対的な位置を決定するように構成されてもよい。センサーは、プロセッサに結合され、カメラの移動中に相対位置を決定するように構成されて、カメラの位置を追跡することができる。センサーは、運動センサー及び/又は慣性センサーを含むことができる。
システムは例えば、AR(Augmented Reality)及び/又はAR眼鏡用にプログラムされた携帯電話又はタブレットを含むことができる。このようなシステムはそれ自体が拡張現実の分野から知られているように、AR用に構成することができる。本方法は拡張現実の分野からそれ自体知られているように、システムのビデオカメラでビデオの撮影を実行するために、ユーザによって、シーン内でそのようなシステムを持ち運ぶことを含むことができる。
この方法は、ビデオフラックスを拡張させることによって、拡張された現実を提供する。「ビデオフラックスを拡張させる」とは、ビデオフラックス上に重ね合わされる(すなわちビデオフラックス上に置く)グラフィスムのフラックスを計算することを含むあらゆる動作を意味する。拡張ビデオフラックスはビデオフラックス自体を完全に含んでいてもよく、それには計算されたグラフィスムのフラックスが加算される(重ね合わされる)。これは、例えば、システムが携帯電話又はタブレットであり、ビデオフラックスを撮影するためにユーザによって運ばれている間に、携帯電話又はタブレットの画面上で表示が実行される場合である。あるいは、拡張されたビデオフラックスは、ビデオフラックスから切り離され、それによってグラフィズムの単なる計算されたフラックスで構成されることがある。これは例えば、システムが透明なARメガネを含む場合であり、ユーザはその透明性のおかげでARメガネを通して現実を既に見ているので、最初に撮影されたビデオフラックス自体を見る必要がなく、その結果、計算されたグラフィスムのフラックスのみが、見られている現実の上に重ね合わされてメガネ上に表示される必要がある。これは、すべて、拡張現実の分野からそれ自体知られており、本開示ではさらに詳述しない。
「フラックス」とは、画像の連続(すなわち、時系列)を意味する。したがって、ビデオフラックスは実シーンの一部を表す連続する2D画像のセットであり、各2D画像はビデオフラックスのそれぞれのフレームに対応する(すなわち、それぞれのフレームである)。撮影はビデオフラックスの2つの連続するフレームが互いに近接し得る(例えば、1秒又は0.1秒未満だけ分離される)ように、連続的に実行され得る。
「抽出する」とは、ここでは単に、本方法が実オブジェクトの(完全な又は部分的である)ビューを各々が含む1つ以上の撮影されたビデオフレームを選択し、ポーズ決定ステップに、そのフレームに対応する2D画像を提供することを意味する。各抽出された2D画像は、実オブジェクトのビューを含む選択されたフレーム又はそのサブパーツであってもよい。本方法は、任意の方法でそのような各サブパーツを識別することを含むことができる。例えば、識別することは、例えば、ユーザによって描かれた、実オブジェクトのビューの周りの(例えば、矩形の)境界ボックスを定義することを含むことができる。
3Dモデルは、3Dモデル化オブジェクトである。モデル化オブジェクトは、例えばデータベースに格納されたデータによって定義される任意のオブジェクトである。拡張により、「モデル化オブジェクト」という表現はデータ自体を指定し、「3Dモデル化オブジェクト」とは、その3D表現を可能にするデータによってモデル化される任意のオブジェクトを意味する。3D表現は、全ての角度から部品を見ることを可能にする。例えば、3Dモデル化オブジェクトは3D表現される場合、その軸のいずれかの周り、又は表現が表示される画面内のいずれかの軸の周りで取り扱われ、回転され得る。これは特に、3Dモデル化されていない2Dアイコンを除外する。3D表現の表示は設計を容易にする(すなわち、設計者が彼らのタスクを達成する速度を統計的に増加させる)。これは、製品の設計が製造工程の一部であるため、産業界における製造工程を高速化する。
したがって、3Dモデルは、実オブジェクトの3D形状の指定を含む。3D形状は、3D参照フレームにおいて定義又は定義可能であってもよい。仕様は、ポーズ決定の仮想2Dレンダリング(複数可)を可能にする任意のフォーマットの下にあってもよい。3Dモデルは例えば、3Dメッシュ又は3Dメッシュの計算を可能にする任意の他の3Dモデル化オブジェクト、例えば、境界表現又はB−Rep(ここで、B−RepはCADの分野からそれ自体知られているように、テッセレーションによって3Dメッシュに変換され得る)であり得る。
3DモデルはCADシステムで設計されている場合もあれば、CADシステムで作成された設計の結果として生じる場合もある。CADシステムとは、CATIAなどの、モデル化オブジェクトのグラフィック表現に基づいてモデル化オブジェクトを少なくとも設計するように適合された任意のシステムを意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能にするデータを含む。CADシステムは例えば、ある場合には、面又は表面を有するエッジ又は線を使用してCADモデル化オブジェクトの表現を提供することができる。線、エッジ、又は表面は様々な方法、例えば、不均一有理Bスプライン(NURBS)で表すことができる。具体的には、CADファイルは仕様を含み、そこから幾何学的形状を生成することができ、これにより表現を生成することができる。モデル化オブジェクトの仕様は、単一のCADファイル又は複数のCADファイルに格納することができる。CADシステム内のモデル化オブジェクトを表すファイルの典型的なサイズは、部品当たり1メガバイトの範囲内である。そして、モデル化オブジェクトは、典型的には何千もの部品のアセンブリであり得る。
3Dモデルの提供は、任意の方法で実行することができる。3Dモデルは例えば、ユーザによって検索されてもよく、又は例えば、3Dモデルのライブラリにおいて、システムによって自動的に認識されてもよい。
「ビデオフラックスに対する3Dモデルのポーズ」とは例えば3Dモデルの参照フレーム内で定義される、3Dモデルに対するビデオカメラのフレーム毎のポーズパラメータをいう。ポーズパラメータは「外因性パラメータ」としても知られており、したがって、抽出された2D画像に対する(すなわち、それに対する)ポーズの「値」は抽出された2D画像に対応するビデオフラックスのフレームに対するポーズパラメータの値である。
コンピュータビジョンの分野からそれ自体公知であるように、ビデオカメラの(フレーム毎の)固有パラメータと共に、ポーズパラメータはビデオフラックスの各フレームに3Dモデルを投影することを可能にし、方法は、そのような投影を含み得る。そのおかげで、このような投影の結果に基づいてビデオフラックスを拡張することができる。
3Dモデルは特に、実オブジェクトの3D形状の数学的表現を提供し、それによって、そのような数学的表現に基づいて実行される計算に由来する(テキスト、数字、及び/又はテクスチャなどの)ビデオフラックスグラフィックに追加することを可能にする。代替的に又は追加的に、3Dモデルは例えば、ビデオフラックスに追加されるべきグラフィスムを生成するために、拡張のために使用され得る任意のタイプのデータに関連付けられてもよい。関連データは例えば、3Dモデルにリンクされた、又は3Dモデルの異なる部分にリンクされた(例えば、データベース内の)メタデータを含むことができる。メタデータは例えば、3Dモデルが異なる部分を含む場合には、3Dモデルの各部分にリンクされたテキスト記述又はテキスト仕様を含むことができる。ポーズはビデオフラックスの正しい位置に、実オブジェクトの中のビューに対して、前記グラフィスムを位置決めすることを可能にする。これは、すべて、拡張現実の分野からそれ自体知られており、本開示ではさらに詳述しない。
この方法は、候補ポーズの中からこのようなポーズを正確に決定する。この手段はポーズが本方法の未知の変数であり、決定ステップは、そのための計算値を出力する。ここで、候補ポーズは単に、決定ステップに提供される探索可能なドメインを指す。方法によって決定されたポーズは正確であるため、投影された3Dモデルがフレーム内の実オブジェクトの2Dビューによく一致するという意味で、各フレーム内の3Dモデルの投影も比較的正確である。言い換えれば、ポーズは3Dモデルに対するビデオカメラの仮想位置を定義し、本方法により、仮想位置は、実オブジェクトに対するビデオカメラの実際の位置に正確に対応する。
固有パラメータは(少なくとも部分的に)同様に未知の変数とみなされ、例えばポーズ決定ステップ(そのような場合に、各所与の候補ポーズだけでなく、固有パラメータの各所与の候補フレームごとの値に対しても報酬を実行することを決定すること)内で、方法によって決定されてもよい。代替的に、固有パラメータは(少なくとも部分的に)予め決定され、従って、例えば、カメラ自体によって出力される(現代のカメラは、通常、それらの使用された固有パラメータを提供する)方法に提供されてもよい。さらに代替的に、本方法は、固有パラメータに対して定数及び任意の値を設定することができる。これはわずかに正確でないポーズにつながり得るが、これは依然として、比較的正確な投影結果を提供し、したがって、現実を拡張させる。
これらのすべての場合において、本方法はカメラパラメータの候補フラックスの中のビデオフラックスに関するカメラパラメータのフラックスを出力し、カメラパラメータの各セットは、ビデオフラックスのそれぞれのフレームに対応する(フラックスが一連のカメラパラメータセットからなる)。また、本方法は少なくとも1つの2D画像について、及びカメラパラメータの各所与の候補フラックスについて、少なくとも1つの2D画像(すなわち、画像に対応するフラックス内のカメラパラメータのセット)についての所与のカメラパラメータの候補フラックスの値を有する3Dモデルの仮想2Dレンダリングと、少なくとも1つの2D画像との間の相互依存性を表す相互情報を報酬付けすることによって、カメラパラメータの出力フラックスを決定することができる。
決定は、相互情報の低い値又はスコアにペナルティを課すことを可能にする任意の方法で、相互情報の報酬を実行することができる。言い換えれば、決定は所与の抽出された2D画像について、他のものが等しい(又はセテリスパリバス(ceteris paribus))、すべての候補ポーズの中で相互情報の最高値につながるポーズを出力するように構成される。この方法は抽出された各2D画像に対してこのような報酬を実行し、この方法は他のタイプ又は報酬を実行することができ、その結果、決定されたポーズは一般に、すべての2D画像に対して相互情報を最大化するものではなく、グローバルに良好なスコアを提供し、それによって、拡張の比較的高い精度を達成するものである。
そのような報酬を実施する特定のやり方はこの方法の後に続く可能性があるが、最適化プログラムを実行すること、すなわち、決定することが目的関数を最適化することを含むようにすることである。目的関数は、異なる尺度に報酬を与える項を含む。実際にはそのような最適化プログラムがコスト(又はペナルティ)項を含む最小化プログラムとして実行することができ、各項は報酬に対する尺度の逆数にペナルティを課す。
本方法は例えば、反復最適化アルゴリズムを少なくとも1回実行することによって、任意のタイプの最適化アルゴリズムを用いてプログラムを最適化することができる。反復最適化アルゴリズムは開始点(すなわち、開始ポーズ)から開始し、次いで最適化されてもよい。各反復は(開始ポーズで初期化された)現在の所与の候補ポーズを提供することと、(例えば、最小化プログラムの場合、それを低減する)目的関数の値を改善する(次の反復のための)新しい候補ポーズを出力することとを含むことができる。新しい候補ポーズの出力は、現在の候補ポーズ及び/又は別の候補ポーズについての相互情報を計算することと、現在の候補ポーズ及び別の候補ポーズについての計算された相互情報値を比較することとを含むことができる。相互情報の計算は、3Dモデルの仮想2Dレンダリングを計算することを含むことができる。
本方法がいくつかの画像を抽出する場合、本方法のポーズ決定は、項を含む目的関数を最適化することを含むことができる。次いで、各項は、いくつかの2D画像のそれぞれの2D画像について相互情報に報酬を与えることができる。換言すれば、各抽出された2D画像はそれ自体の報酬項(例えば、コスト項)を有する可能性がある。これは、報酬を実施するための効率的な方法を提供する。
具体的には、目的関数が項の合計であってもよい。代替的に又は追加的に、各項(抽出された2D画像のそれぞれ)は、対応する2D画像の相互情報に等しくてもよい。これにより、最適化のロバストで効率的な収束が可能になる。これは、抽出された2D画像の一部が品質不良である場合でも、正確な結果を提供することを顕著に証明した。
本方法は例えば、前述のセンサー(現代のARシステムは、通常、そのようなセンサーに基づいてそのような機能性を提供する)に基づいて、あらゆる公知の方法でビデオカメラの相対ポーズを追跡することを含み得る。このような場合、異なるフレーム間の3Dモデルの相対ポーズは既知である。したがって、ポーズ決定は抽出された1つ又は複数の2D画像に基づいて、ビデオフラックスに対する3Dモデルのポーズの値を初期化することに本質があり得、ポーズの残りの値は初期化された値及び相対ポーズ追跡に基づいて決定される。その結果、3Dモデルのフルポーズを知るために、方法を初期ポーズを決定するように制限することができ、従って、ビデオフラックス撮影全体を通して拡張を実行することができる。代替的に又は追加的に、本方法がいくつかの画像を抽出し、決定がそのような画像ごとに相互情報に報酬を与える場合、ポーズ決定は未知の変数として、1つの2D画像(例えば、時系列的に言えば、第1の画像)だけに対する各所与の候補ポーズの値を考慮することができ、他の画像のポーズの値は、未知の変数及び相対ポーズ追跡の関数として変数によって定義される。
ビデオカメラは、RGBビデオフラックス、あるいはグレースケールビデオフラックスを撮影することができる。最初に撮影されたビデオフラックスがRGBビデオフラックスである場合、本方法は任意に、抽出された2D画像がグレースケール画像であるように、ビデオフラックスをグレースケールビデオフラックスに変換することを含み得る。あるいは、この方法が選択されたビデオフレームのみ、又はそのサブパーツのみをグレースケール画像に変換することを含むことができ、その結果、ここでも、抽出された2D画像はグレースケール画像である。これは色情報が無視されるので、方法の効率を改善する(このような無視は3Dモデルが正しい色情報を伝えない場合、又は例えば、テクスチャがない場合、及び/又はシェーディングに基づく2Dレンダリングの場合であって、テクスチャがあってもテクスチャを考慮しない場合に特に関連する)。
ここで、この方法は、ポーズ値を有する3Dモデルの仮想2Dレンダリングと、対応する2D画像との間の相互依存性を表す相互情報を考慮する。「仮想」という用語は単に、2Dレンダリングが本方法によって出力される必要がないという事実を指す。3Dモデルの仮想2Dレンダリングは、ポーズ値によって定義される視点からの3Dモデルのフォトリアリスティックな2D画像の任意の生成からなることができる。仮想2Dレンダリングはカメラ固有パラメータ(上述のように、方法に予め定められるか、又は方法によって決定される)にさらに基づいてもよい。仮想2Dレンダリングの生成には、フォンシェーダや法線マップシェーダの適用など、任意のラスタライズやシェーディングを含めることができる。
確率理論及び情報理論の分野からそれ自体知られているように、2つの変数の相互情報は、2つの変数間の相互依存性の尺度である。このコンセプトは、T.M.; Thomas, J.A(1991), Elements of Information Theory(Wiley ed.), chapter 2、及び以下のURL: https://en.wikipedia.org/wiki/Mutual_Informationでアクセス可能なウェブサイトに詳述されている。この教科書の内容及びこのウェブサイトの内容(特許出願の優先日の時点で)は、参照により本願明細書に組み込まれ、方法のポーズ決定によって報酬を与えられる相互情報はその中で定義された通りであってもよく、すなわち、カルバック・ライブラー分岐に含まれてもよい。
特に、相互情報は仮想2Dレンダリングから抽出された第1の変数と、少なくとも1つの2D画像から抽出された第2の変数との間の相互情報であってもよく、第1の変数及び第2の変数は画素値範囲上の分布を表してもよい。相互情報は特に、このような画素値範囲における共同分布の相互情報(カルバック・ライブラー発散)であってもよい。具体例において、画素値ドメイン上の分布は、所定のサブ範囲の1つに属する値を有する画素のカウントであってもよい。サブ範囲(又は「ビン」)は、各画素がとる値の範囲の細分割を形成することができる。細分化は、規則的であってもよい。実際には、細分割が5又は10よりも多く、及び/又は100又は50よりも少なく、例えば20のオーダーのビンの数を含むことができる。
次に、この方法の任意選択の特徴を、図1に示す例を参照して説明する。
本例の方法は、ビデオカメラでビデオフラックスを撮影するステップS10を含む。この例の方法はビデオフラックスから、それぞれが実オブジェクトを表すいくつかの2D画像を抽出するステップS20を含む。並行して、本例の方法は、実オブジェクトを表す3Dモデルを提供するステップS30を含む。次いで、本例の方法は、ビデオフラックスに対して3Dモデルのポーズを決定するステップS40−S80を含む。決定するステップS40−S80は対応する2D画像(例えば、先に述べた和)に対して相互情報を報奨する項を各々含むS50における目的関数のおかげで、いくつかの2D画像の各2D画像に対して相互情報を報奨する。例の方法は最終的に、ポーズに基づいてビデオフラックスを拡張するステップS90を含む。
相互情報に加えて、ポーズ決定はさらに、3Dモデルの1つ又は複数の点のいくつかの2D画像上の投影間の写真整合性に報酬を与えることができる。さらに、相互情報に加えて、ポーズ決定は、3Dモデルの3Dエッジの投影と少なくとも1つの2D画像内の2Dエッジとの間の一致をさらに報奨することができる。これらのさらなる基準に報酬を与えることは、決定されたポーズの正確さを改善する。このような基準(写真整合性及びエッジマッチング)は、ポーズを決定するための唯一の主要な基準として、従来技術において使用されている。その代わりに、主要な統計的基準として相互情報を使用することによって、本方法のポーズ決定は、比較的正確な結果に向かってはるかに速く収束する。しかし、この例の方法は効率を改善するために、依然として他の基準を二次基準として使用するが、第2段階(相互情報に基づく最適化が実行された後)で使用する。これにより、精度、ロバスト性、高速性を全体的に実現している。
写真整合性基準は最終ポーズがいくつかの2D画像上の3Dモデルの特定の3D点の投影(最終ポーズによる)からポーズ2D点(すなわち、対応する3D点の画像毎の可視性に応じて、すべてのそのような既存の2D点)がグラフィカルに一貫していなければならず、これはそれらが、同じ局所グラフィック特徴を提示する2D画像の位置に対応しなければならないことを意味すると仮定することになる。グラフィカル一貫性は異なる画像のそのような2D点に、回転不変であり得る少なくとも1つのグラフィカル記述子を適用し、2D画像にわたってグラフィカル記述子の値を比較することによって測定され得る。グラフィカル記述子は、任意選択で、光度変化に対して不変であってもよく、及び/又は微分可能であってもよい。グラフィカル記述子は例えば、SIFT記述子、FERN記述子、及び/又は(単に)画素カラーを含む、1つ以上のグラフィカル記述子の所定のセットの中から選択されてもよい。3D点は、任意の方法、例えばランダムに実行される3Dモデルのサンプリングに由来してもよい。本方法は異なる段階で写真整合性に報酬を与えることができ、少なくともグラフィカル記述子は、そのような各段階で異なることができる。
エッジマッチング基準は、最終ポーズが3Dモデルの特定の3Dエッジが抽出された2D画像のうちの少なくとも1つ、例えば、各抽出された2D画像の特定の2Dエッジ上に(最終ポーズに従って)投影するようなものでなければならないと仮定することになる。3Dエッジは例えば、各画像における3Dモデルのシルエットを形成するものであってもよい(画像に対する最終ポーズの値に従って)。3Dモデルのシルエットは、ポーズによる3Dモデルの輪郭である。画像の2Dエッジは、「輪郭」とも呼ばれ、本方法は任意の既知の方法で、例えば、訓練されたニューラルネットワークを用いて、又はキャニーエッジ検出の結果の面取りマップの計算によって、輪郭マップを決定することができる。輪郭マップは輪郭確率マップであってもよい(すなわち、各画素には、輪郭である確率が割り当てられる)。
最適化は、(所定の)数Nの開始ポーズを提供するステップS40を含むことができ、ここで、N>1(換言すれば、後にS50で実行される最適化のための複数の開始点)である。提供するステップS40は任意の方法で実行することができ、特定の実装は後述する。次に、最適化は開始ポーズのそれぞれ1つから始まるたびに、目的関数(すなわち、目的関数を最適化するアルゴリズム)上でステップS50の処理をN回(例えば、同じものを)反復する最適化アルゴリズムを実行するステップと、それぞれの結果ポーズを出力するたびに、実行するステップとを含むことができる。実際には、Nは10又は20より高く、及び/又は100又は50より低くてもよい。
次に、本方法は、図示の例のS60〜S80を介して、N個の結果ポーズのうちの1つに基づいて(最終的である)ポーズを計算することができる。これは、局所極値におけるアルゴリズムの潜在的な低下によって提供される偶発的に不正確な結果に関連するリスクを低減することを可能にする。特に、手近な問題のために、最適化アルゴリズムは微分不可能であり得る(この方法が例えば、ネルダー・ミードアルゴリズムを実行し得る)。このような非差別化可能性は、上記の危険因子を生み出す。
計算するステップS60〜S80はN回の実行の中で最適化されたポーズの(所定の)数kを保持するステップS60を含むことができ、ここで、k<Nである。言い換えれば、本方法はS50によって出力されたN個の結果ポーズ(例えば、目的関数を最小化するk個のポーズ)の中からk個の最良の結果を識別することができる。実際にはkは2又は3より高くてもよく、及び/又は20又は10より低くてもよい。他の結果のポーズは、この段階で廃棄されてもよく、選択されたk個の結果のみが刈り取りステップS70に入力される。代替として、本方法はS60をスキップし、それによって、N個の結果のポーズのすべてを刈り取りステップS70に入力することができる。
S50によって出力された最良の結果ポーズだけ以上のものを入力することは、偶発的に不正確な結果に関連するリスクを低減することを可能にする。そのような不正確な結果は相互情報が統計的測定であり、それによって曖昧さ(例えば、対称性の場合)を伴うために、相互情報のみに依存する場合に生じる可能性がある。ステップS60は同様に、今回は、相互情報に関して十分に満足しないポーズの偶発的な選択に潜在的につながる刈り取りステップS70の写真整合性基準に起因して、偶発的に不正確な結果に関連するリスクを低減する(刈り取りステップS70にN個の結果ポーズ全てを入力することと比較して)。
計算するステップS60〜S80は単一のポーズを出力するために、N個の結果ポーズの刈り取りステップS70を備えることができる(次いで、ステップS70に入力される)。刈り取りステップS70はS60とは別個に示されているが、S60は枝刈りの一部と同等に考えることができる。図示の例では、刈り取りステップS70が前述の写真整合性に報酬を与えることによって、S60によって出力されたk個の最適化されたポーズの中から最良のポーズを選択することに帰着する。例えば、刈り取りステップS70はk個の最適化されたポーズの中から、写真整合性基準に対して最良に機能する1つのポーズを選択することができる。これは、3Dモデルをサンプリングし、次いで、k個のポーズの各々について写真整合性基準を評価することを含むことができる(例えば、SIFT記述子などのサンプリングされた3D点の投影から生じる各2D点についての任意の前述の記述子を計算することを含む)。
次に、計算ステップS60〜S80はS70によって出力されたポーズの精緻化ステップS80を実行することを含むことができ、精緻化されたポーズは、最終的に決定されたポーズと見なされ、ビデオフラックスを拡張させるためにS90に入力されることができる。
精緻化ステップS80は、先に説明した写真整合性(ここで再び使用される)及び/又は2Dエッジ3Dエッジマッチング、例えばこれらの基準の両方に報酬を与えることができる。精緻化ステップS80は例えば、グローバル誤差を最小化することができる。グローバル誤差は3Dモデルの投影された輪郭(例えば、2D画像の各々の仮想メッシュ(すなわち、2Dビュー))と、前記2D画像内の実オブジェクトの検出されたエッジとの間の誤差にペナルティを課す第1の項、及び/又は、例えば、サンプリングされた3D点に対応する2D点における異なる2D画像にわたる記述子(複数可)の値の間の誤差にペナルティを課す第2の項を含むことができる。上述のような輪郭確率マップに基づくエッジマッチング報酬の場合、第1の項は3Dエッジ(例えば、シルエットに対応する)が投影する2D画素の輪郭確率の低さにペナルティを課すことができる。上述のようなグラフィカル記述子に基づく写真整合性報酬の場合、第2の項は2D画像にわたる(例えば、サンプリングされた)3D点の投影上のグラフィカル記述子の値の間の差異にペナルティを課すことができる。最小化は、勾配ベースであってもよい。これにより、効率が向上する。そのような場合、グラフィカル記述子は画素色などのように、区別可能であってもよい。
図2は、システムの一例を示す。
この例のクライアントコンピュータは、内部通信バス1000に接続された中央処理装置(CPU)1010と、やはりバスに接続されたランダムアクセスメモリ(RAM)1070とを備える。クライアントコンピュータには、さらに、バスに接続されたビデオランダムアクセスメモリ1100に関連するグラフィカルプロセッシングユニット(GPU)1110が設けられている。ビデオRAM1100は、当技術分野ではフレームバッファとしても知られている。大容量記憶装置コントローラ1020は、ハードドライブ1030などの大容量記憶装置へのアクセスを管理する。コンピュータプログラム命令及びデータを有形に具現化するのに適した大容量メモリデバイスは、例として、EPROM、EEPROM、及びフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスク及びリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD−ROMディスク1040を含む、すべての形態の不揮発性メモリを含む。前述のいずれも、特別に設計されたASIC(特定用途向け集積回路)によって補足されるか、又はその中に組み込まれてもよい。ネットワークアダプタ1050は、ネットワーク1060へのアクセスを管理する。クライアントコンピュータは、ディスプレイスクリーン1080及びカメラ1090も含むことができる。
次に、図1の例に従った方法の実施について説明する。
本方法のこれらの実施は既知の3Dオブジェクトの異なるビューを撮影するカメラのポーズ(及び、場合によっては固有パラメータ)を計算することを目的とする。「既知」とは、システムがオブジェクトを表す(例えば、テクスチャなしの)3Dモデル(例えば、3Dメッシュ)を所有することを意味する。さらに、ここで、本方法の実施は拡張現実システムのコンテキストにあり、システムは、カメラによって撮られた異なるビュー間の相対的なポーズを知っていると仮定する。
本方法の実施は、実画像の仮想レンダリング間の相互情報に基づくポーズ依存エネルギーの定義に依存する。このエネルギーはいくつかのポーズの間で離散化される(例えば、トムソン球上で取得される)。本方法の実施は、このエネルギーを最適化して、最良の可能なポーズを見つける。次に、この方法の実装は写真整合性基準を利用することにより、誤ったポーズを整理する。最後に、本方法の実施は、画像のエッジにフィッティングすることによってポーズを微調整する。
この方法の実装は、セグメント化が不可能又は不正確な場合、及びオブジェクトのテクスチャが不明な場合であっても、ポーズを計算することができる。さらに、本方法の実施形態はマルチビューフレームワークにおいて、相互情報方法、写真整合性基準、及びシルエット/輪郭マッチングの両方を組み合わせるので、曖昧さを除去し、より正確なポーズを得ることができる。本方法の実施は相互情報最適化において、すべてのビューを一度に活用し、いかなるビューにも偏らない。さらに、本方法の実施は画像内の最も近い輪郭上への3Dモデルの投影シルエットのマッチングと同様に、写真整合性基準を用いてポーズを局所的に精緻化する。最後に、本方法の実施は、いかなるデータセット/機械学習アルゴリズムにも依存しない。
,…,Iをn個の実際の画像とし、RをI
Figure 2021111375
との間の既知の相対的な剛体変換(すなわち、フレームIからフレームIへの変換)とする。
Mを、すべてのビューI,…,Iに現れるオブジェクトのメッシュとする。目標はビューI内のメッシュMのポーズ
Figure 2021111375
を計算することであってもよく、ポーズは剛体変換(回転及び並進)を伴う投影の合成として定義される。
(P)をフレームIのポーズPによって与えられるビューIのポーズ行列とする。すなわち、もしP=KR(ここでKは投影行列であり、RはメッシュフレームからIフレームへの剛体変換である)である場合、
Figure 2021111375
である。
本方法の実施は、オブジェクトが位置する画像Iの部分を提供することを含むことができる。例えば、ユーザは、それを囲む境界ボックスを描くことができる。
<マルチビュー最適化>
前処理
まず第1に、本方法の実施は、画像I,…,Iをグレースケール輝度空間に変換するために前処理することができる。次いで、本方法の実施は、各画像のヒストグラムを等化することができる。各画素色は、[0,255]に属する1次元整数である。
すべての画像が変換されると、本方法の実施は、任意の方法でポーズP,…,Pをサンプリングすることができる。
例えば、探索されたポーズ
Figure 2021111375
の近似
Figure 2021111375
が知られている場合、これはユーザがMに関して近似的に知られている位置で写真Iを撮ることができる拡張現実の場合にしばしば当てはまるので、本方法の実施は
Figure 2021111375
の回りでP,…,Pをサンプリングすることができる。
例えば、そのような近似が知られていない場合、本方法の実装はメッシュの周りのトムソン球上の点をサンプリングし、P,…,Pに対して剛体変換を行ってもよい(カメラは球上の1つのサンプリングされた点に位置し、中心を見ている)。カメラの光学平面における平行移動と同様に、トムソン球の半径は、投影バウンディングボックスMが画像I内のオブジェクトの期待される位置と等しくなるように設定されてもよい。
実際のカメラの固有パラメータ(焦点及び主点)が既知である場合、本方法の実施は、これらを固有行列に使用することができる。それらが未知である場合、本方法の実施は画像の中心にあるように主点を初期化し、さらに焦点を(幅+高さ)/2に初期化する(ここで、「幅」及び「高さ」は画像Iの幅及び高さである)。これらの固有パラメータは、ポーズと共に最適化されてもよく、あるいは固定されてもよい。
相互情報の定義
fを、ポーズPで取られたメッシュMの仮想レンダリング(色又はグレースケール)にポーズPをマッピングする関数とする。例えば、本方法の実装はメッシュMをレンダリングするためにfにおいてフォンシェーダを使用してもよく、あるいは法線マップシェーダを使用してもよい。この場合、各画素の色は、[0,255]に属する。この方法の実装は、実画像の解像度と同じ解像度のビューを生成するため、fを適用してもよい。
一対の画像(J,J)が与えられ、c及びcをJ及びJのチャネルの数とすると、
Figure 2021111375
は、入力画像(J,J)のマルチチャネル色分布の結合ヒストグラムを表す。すなわち、本方法の実装は第2の画像を追加のチャネルとして第1の画像に連結し、ペアを第1及び第2の入力画像の両方のチャネルを有する新しい画像として見ることができる。ヒストグラムの各チャネルにおけるビンの数は、2と可能な色の数との間の任意のものであってもよい。実際には、本方法の実施がビンを使用して、正確なままである意味のあるヒストグラムを得ることができる。ここでは、本方法の実施態様が区間
Figure 2021111375

Figure 2021111375
個のサブ区間に一様に分割することができ、それぞれのサブ区間について、本方法の実装は、画素の数(例えば、画素の総数によって正規化された画素の数)をカウントしてもよい。これらの画素のマルチチャネル色は、このサブ区間に属する(結合画像(J,J)内の画素の色は、
Figure 2021111375
に属する)。
この方法の実装は、画像J内の色の分布
Figure 2021111375
のみを得るために、第2の画像上の分布Hを重要視しなくてもよい。同様に、この方法の実装は、画像J内の色の分布Hのみを考慮することができる。もしXが結合分布
Figure 2021111375
に追従するランダムな変数であった場合、
Figure 2021111375

Figure 2021111375
の分布であり、
Figure 2021111375

Figure 2021111375
の分布である。
最後に、Dを結合分布
Figure 2021111375
の相互情報とすると、
Figure 2021111375
である。
このような相互情報は、J及びJにおける色の結合分布と限界分布との間のカルバック・ライブラー発散である。J及びJにおける色分布が独立している場合、
Figure 2021111375
であり、J及びJにおいて色が多くリンクされているほど、相互情報は高くなる。それは常に非負で対称的である。Jにおける色がJにおける色の関数である場合、相互情報は最も高くなり、Jにおけるエントロピーに等しい。
相互情報は、(相関とは異なり)J及びJの色と色との間の線形関係を特徴付けないことに留意されたい。それは、Jの色を知りながらどの程度良好にJの色を推論することができるか、すなわち、J及びJにおいて確率的にどの程度色に依存するかを記述する値である。
相互情報の最適化
最良のポーズ
Figure 2021111375
を計算するために、本方法の実装は、仮想レンダリングと実画像との間の相互情報を最大化することができる。実際、メッシュが良好に位置合わせされている場合、仮想レンダリングの色は、仮想画像及び実画像の色空間に一致する単純なアフィン変換が存在しない場合であっても、本方法の実装がメッシュの実テクスチャを知らない可能性があるので、実画像の色に強く依存するはずである。
このため、本方法の実施は、以下のエネルギーを最小限に抑えることができる。
Figure 2021111375
E1(P)を最小にし、貧弱な局所的最小値を回避するために、本方法の実施は、P,…,Pから始めてN回の最適化を実行することができる。最適化は、任意のアルゴリズムで行うことができる。本方法の実装は、効率的な例では(後述するテストされた実装のように)ネルダー・ミードを使用することができる。
本方法の実施態様は、N回の実行の中で最適化されたk個のポーズ(試験された実施態様においてk=5である)を維持してもよい。これは
Figure 2021111375
と表される。
これを図3に示す。
ポーズ刈り取り
今後、この方法の実装は前処理なしに、オリジナルの画像I,…,Iで動作する可能性がある。
この方法の実装は、
Figure 2021111375
の中から最良のポーズを選択し、曖昧さを避けるために、写真整合性基準を使用してもよい。
,…,xがメッシュM上のm個の点のサンプリングであり、n,…,nがそれらに対応する法線であると仮定する。s(x,I)を、画像I上の2D座標xを、例えば、(理想的には)照明及び向きの変化に対して不変であるローカル記述子上にマッピングする関数とする。s(x,I)は、色I(x)自体と同じくらい単純であってもよいし、SIFT記述子を用いて行われるように局所的な近傍を考慮してもよいし、予め訓練されたニューラルネットワークを用いて抽出されてもよい。
最後に、
Figure 2021111375
とする。
Figure 2021111375
は各ポーズT(P)におけるMのZバッファを介して簡単に計算されることができる。ここで、
Figure 2021111375
とする。
この方法の実装は、次式
Figure 2021111375
を最小化するものとして、
Figure 2021111375
の中から最良のポーズを選択することができる。
ここで、σはL2ノルムのようなペナルティ関数であり、ρは点の法線nがカメラのアイベクトルに直交している場合に(ポーズPRによって与えられるように)、より多くのエネルギーを過小重みづけする重みづけ関数であり、
Figure 2021111375
はxが見えるすべての画像の記述子の平均値である。
Figure 2021111375
Figure 2021111375
Figure 2021111375
の中で最も一貫性のあるポーズを意味し、この基準で見つけられる。
これを図4に示す。
ポーズの精緻化
最後に、本方法の実施は、写真整合性を増加させ、投影されたメッシュの輪郭と画像内のエッジとの間のエッジを一致させるために、局所的な色ベース及びエッジベースのエネルギーを最小化することによって
Figure 2021111375
を精緻化することができる。
第1に、本方法の実施は各画像Iを正規化して、例えば、投影されたメッシュ
Figure 2021111375
の領域においてゼロ平均及び分散1を有するようにして、画素の色に対する照明に不変性をもたらすことができる。他の正規化も考えられる。
σを、例えば、L2ノルム又は
Figure 2021111375
のような、
Figure 2021111375
である2つの色の間の差を不利にする損失とする。ここで、Jを、(例えば、ニューラルネットワークの予測、又はカニーエッジ検出の面取りマップ、又は二乗距離を有する面取りマップの)平滑化されたエッジの画像I1であるとする。S(P)を、視点T(P)におけるMの視点のシルエット上に投影されるMの3Dポイントであるとする。
本方法の実施は、
Figure 2021111375
のエネルギーから開始して、以下のエネルギー
Figure 2021111375
を最小化することによってポーズ
Figure 2021111375
を改善することができる。
この最小化は、画像内のそれらの位置に関する画素の色のヤコビアンがソーベルフィルタによって与えられる、あらゆる微分可能な最適化によって扱われ得る。
図5〜図6は、図1に沿った方法の試験された実施態様と、この方法の検討された実施態様に提供された式とで得られた結果を示す。
図5は、テーブル及び椅子を含むシーンのビデオフラックスの2Dフレームがその3Dモデルの投影により、本方法により正確に拡張され得る方法を示している。図から分かるように、2Dフレーム上のテーブルのグラフィック表現64とテーブルの3Dモデル62との間の誤差は比較的小さい。
図6はデータベース内のコーヒーメーカーの3Dモデルに関連付けられたコーヒーメーカーの異なる部分のテキスト記述64を有するコーヒーメーカー62を含むシーンのビデオフラックスを正確に拡張するために、この方法をどのように使用することができるかを示す。図6上では、コーヒーメーカーの3Dモデルの突起66も、イメージ内のコーヒーメーカーの2Dビューに重ね合わせて半透明で表示される。

Claims (15)

  1. 実オブジェクトを含む現実のシーンのビデオフラックスを拡張するための拡張現実のコンピュータ実施方法であって、
    ビデオカメラによりビデオフラックスを撮影するステップと、
    前記ビデオフラックスから、それぞれが実オブジェクトを表す1つ又は複数の2D画像を抽出するステップと、
    前記実オブジェクトを表す3Dモデルを提供するステップと、
    前記ビデオフラックスに対し候補ポーズから3Dモデルのポーズを決定するステップと
    を有し、
    前記決定するステップにおいて、少なくとも1つの2D画像に対して、及びそれぞれの所与の候補ポーズに対して、
    ・前記少なくとも1つの2D画像に対する所与の候補ポーズの値を有する3Dモデルの仮想2Dレンダリング、及び
    ・前記少なくとも1つの2D画像
    の2つの依存性を表す相互情報に報酬が与えられる
    方法。
  2. 前記1つ以上の2D画像は前記ビデオフラックスのそれぞれのフレームにそれぞれ対応するいくつかの2D画像を含み、
    前記決定するステップは、前記いくつかの2D画像のそれぞれの2D画像に対する相互情報に報酬を与える
    請求項1に記載の方法。
  3. 前記決定するステップは項を含む目的関数を最適化するステップを含み、
    各項は、いくつかの2D画像のそれぞれの2D画像について相互情報に報酬を与える
    請求項2に記載の方法。
  4. 前記目的関数は、前記項の和である
    請求項3に記載の方法。
  5. 各項が対応する2D画像についての相互情報に等しい
    請求項4に記載の方法。
  6. 前記最適化が、
    N>1であるN個の開始ポーズを提供するステップと、
    目的関数上でN回の非微分可能反復最適化アルゴリズムを実行し、各回ではそれぞれの開始ポーズから開始し、それぞれの結果として生じるポーズを出力し、
    前記結果におけるN個のポーズのいずれかに基づいて前記ポーズを計算する
    請求項3、4、又は5に記載の方法。
  7. 前記決定するステップは、前記3Dモデルの1つ又は複数の点の前記複数の2D画像上の投影間の写真整合性にさらに報酬を与える
    請求項2から6のいずれか1項に記載の方法。
  8. 前記決定するステップが、
    計算において、写真整合性の前記報酬を実行し、N個の結果ポーズのうちの1つを出力する刈り取りステップと、
    最適化後に、写真整合性に前記報酬を与える精緻化を行う
    請求項7に記載の方法
  9. 前記決定するステップは前記3Dモデルの3Dエッジの投影と、少なくとも1つの2D画像における2Dエッジとの間のマッチにさらに報酬を与え、前記精緻化は前記マッチの前記報酬を任意選択で実行する
    請求項1乃至8のいずれか1項に記載の方法。
  10. 前記少なくとも1つの画像のそれぞれの画像について、前記3Dエッジは、前記それぞれの画像における前記3Dモデルのシルエットを形成する
    請求項9に記載の方法。
  11. 前記相互情報は、
    前記仮想2Dレンダリングから抽出された第1の変数、及び
    前記少なくとも1つの2D画像から抽出される第2の変数
    の間の相互情報である
    請求項1乃至10のいずれか一項に記載の方法。
  12. 前記画素値領域上の前記分布は、所定のサブレンジのうちの1つに属する値を有する画素のカウントである
    請求項11に記載の方法。
  13. 請求項1乃至12のいずれか一項に記載の方法を実行するための命令を含むコンピュータプログラム。
  14. 請求項13に記載のコンピュータプログラムを記録したコンピュータ可読記憶媒体。
  15. 請求項13に記載のコンピュータプログラムが記録されたメモリに結合されたプロセッサを含むシステム。
JP2020211233A 2019-12-31 2020-12-21 現実のシーンのビデオフラックスの拡張 Active JP7644595B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP19306795.6 2019-12-31
EP19306795.6A EP3846136A1 (en) 2019-12-31 2019-12-31 Augmenting a video flux of a real scene

Publications (2)

Publication Number Publication Date
JP2021111375A true JP2021111375A (ja) 2021-08-02
JP7644595B2 JP7644595B2 (ja) 2025-03-12

Family

ID=69185282

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020211233A Active JP7644595B2 (ja) 2019-12-31 2020-12-21 現実のシーンのビデオフラックスの拡張

Country Status (4)

Country Link
US (1) US11631221B2 (ja)
EP (1) EP3846136A1 (ja)
JP (1) JP7644595B2 (ja)
CN (1) CN113068017B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11288733B2 (en) * 2018-11-14 2022-03-29 Mastercard International Incorporated Interactive 3D image projection systems and methods
US12266055B2 (en) 2022-01-13 2025-04-01 Samsung Electronics Co., Ltd. Methods and systems for interacting with 3D AR objects from a scene
JP2024047799A (ja) * 2022-09-27 2024-04-08 キヤノン株式会社 画像処理装置、画像処理方法、プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090322860A1 (en) 2006-11-17 2009-12-31 Dong-Qing Zhang System and method for model fitting and registration of objects for 2d-to-3d conversion
US8306314B2 (en) * 2009-12-28 2012-11-06 Mitsubishi Electric Research Laboratories, Inc. Method and system for determining poses of objects
US8873798B2 (en) * 2010-02-05 2014-10-28 Rochester Institue Of Technology Methods for tracking objects using random projections, distance learning and a hybrid template library and apparatuses thereof
KR101274556B1 (ko) * 2011-08-17 2013-06-17 국방과학연구소 증강현실을 이용한 실물과 가상모델 사이의 거리측정 시스템 및 방법
EP2720171B1 (en) * 2012-10-12 2015-04-08 MVTec Software GmbH Recognition and pose determination of 3D objects in multimodal scenes
US9940726B2 (en) * 2014-12-19 2018-04-10 The Boeing Company System and method to improve object tracking using tracking fingerprints
US20160358382A1 (en) * 2015-06-04 2016-12-08 Vangogh Imaging, Inc. Augmented Reality Using 3D Depth Sensor and 3D Projection
US20180101984A1 (en) * 2016-10-06 2018-04-12 Google Inc. Headset removal in virtual, augmented, and mixed reality using an eye gaze database
US10380763B2 (en) * 2016-11-16 2019-08-13 Seiko Epson Corporation Hybrid corner and edge-based tracking
JP2018206103A (ja) 2017-06-06 2018-12-27 コニカミノルタ株式会社 ヘッドマウントディスプレイおよび作業支援システム
US10733755B2 (en) * 2017-07-18 2020-08-04 Qualcomm Incorporated Learning geometric differentials for matching 3D models to objects in a 2D image
CN107645651A (zh) * 2017-10-12 2018-01-30 北京临近空间飞艇技术开发有限公司 一种增强现实的远程指导方法和系统
JP6962242B2 (ja) 2018-03-07 2021-11-05 富士通株式会社 情報処理装置,重畳表示プログラム,重畳表示方法
US10846563B2 (en) * 2018-09-12 2020-11-24 Cognex Corporation Methods and apparatus for generating a dense field of three dimensional data for machine vision

Also Published As

Publication number Publication date
JP7644595B2 (ja) 2025-03-12
US20210201587A1 (en) 2021-07-01
CN113068017B (zh) 2025-03-28
CN113068017A (zh) 2021-07-02
EP3846136A1 (en) 2021-07-07
US11631221B2 (en) 2023-04-18

Similar Documents

Publication Publication Date Title
JP6878011B2 (ja) 3dモデル化オブジェクトの再構築
JP6659336B2 (ja) 3dモデル化オブジェクトのテクスチャリング
JP7674833B2 (ja) 平滑マップによる3d再構成
JP2017142780A (ja) 二次元画像からの三次元モデル化オブジェクトの認識
JP7644595B2 (ja) 現実のシーンのビデオフラックスの拡張
JP2023160791A (ja) 画像からの3d再構成
US20210166476A1 (en) Automatic 3D Image Reconstruction Process from Real-World 2D Images
US11657195B2 (en) Processing a 3D signal of a shape attribute over a real object
CN110060346B (zh) 确定代表真实对象皮肤的小面的集合
JP2017168081A (ja) 記述子を用いた3dオブジェクトの位置特定
JP2017162447A (ja) 量子化を用いた3dオブジェクトの位置特定
Nguyen et al. High-Definition Texture Reconstruction for 3D Image-based Modelling.
Lyra et al. Development of an efficient 3D reconstruction solution from permissive open-source code
US9734579B1 (en) Three-dimensional models visual differential
de Hoog et al. CAD2X-A Complete, End-to-End Solution for Training Deep Learning Networks for Industrial Applications
Petit et al. Deformed reality
Carrillo-Perez et al. Synthetic-to-real domain bridging for single-view 3D reconstruction of ships for maritime monitoring
WO2025242305A1 (en) Creating an interactive building interior model
WO2025035755A1 (zh) 网格模型生成的方法、装置和设备
Prakasha et al. Author’s Version to appear in Computers & Graphics
JP2019117580A (ja) 情報処理装置、プログラム、及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241008

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241226

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250228

R150 Certificate of patent or registration of utility model

Ref document number: 7644595

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150