JP2022519194A - Depth estimation - Google Patents

Depth estimation Download PDF

Info

Publication number
JP2022519194A
JP2022519194A JP2021542489A JP2021542489A JP2022519194A JP 2022519194 A JP2022519194 A JP 2022519194A JP 2021542489 A JP2021542489 A JP 2021542489A JP 2021542489 A JP2021542489 A JP 2021542489A JP 2022519194 A JP2022519194 A JP 2022519194A
Authority
JP
Japan
Prior art keywords
depth
estimation
scene
fusion
estimate
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.)
Withdrawn
Application number
JP2021542489A
Other languages
Japanese (ja)
Inventor
トリスタン・ウィリアム・レイドロー
ヤン・チャルノフスキ
ステファン・ロイテンエッガー
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.)
Ip2ipo Innovations Ltd
Original Assignee
Imperial College Innovations 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 Imperial College Innovations Ltd filed Critical Imperial College Innovations Ltd
Publication of JP2022519194A publication Critical patent/JP2022519194A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • 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
    • G05D1/0251Control 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 extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • G05D1/2435
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration by the use of more than one image, e.g. averaging, subtraction
    • 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
    • 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/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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/20076Probabilistic 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/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • 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

Abstract

シーンの奥行きを推定する画像処理システムが提供される。画像処理システムは、融合エンジンを備え、融合エンジンは、幾何学的再構成エンジンからの第1の奥行き推定と、ニューラルネットワークアーキテクチャからの第2の奥行き推定と、を受信する。融合エンジンは、第1の奥行き推定と第2の奥行き推定とを確率的に融合させて、シーンの融合奥行き推定を出力するように構成される。融合エンジンは、幾何学的再構成エンジンからの第1の奥行き推定の不確実性測定と、ニューラルネットワークアーキテクチャからの第2の奥行き推定の不確実性測定と、を受信し、不確実性測定を使用して、第1の奥行き推定と第2の奥行き推定とを確率的に融合させるように構成される。An image processing system that estimates the depth of the scene is provided. The image processing system comprises a fusion engine, which receives a first depth estimate from the geometric reconstruction engine and a second depth estimate from the neural network architecture. The fusion engine is configured to stochastically fuse the first depth estimation and the second depth estimation to output the fusion depth estimation of the scene. The fusion engine receives the uncertainty measurement of the first depth estimation from the geometric reconstruction engine and the uncertainty measurement of the second depth estimation from the neural network architecture, and makes the uncertainty measurement. It is configured to be used to stochastically fuse a first depth estimate with a second depth estimate.

Description

本発明は、シーンの奥行きを推定することに関する。本発明は、ロボットデバイスがその環境内をナビゲートし及び/またはインタラクトするのに使用する奥行き推定に、排他的ではないが特に関する。 The present invention relates to estimating the depth of a scene. The present invention relates, but not exclusively, to the depth estimation used by a robotic device to navigate and / or interact within its environment.

コンピュータビジョン及びロボット工学の分野では、頻繁に3次元(3D)空間の表現を構築する必要がある。3D空間の表現を構築することにより、現実世界の環境を仮想領域またはデジタル領域にマッピングすることが可能となり、電子デバイスにより使用及び操作され得る。例えば、拡張現実アプリケーションでは、ユーザは、ハンドヘルドデバイスを使用して、周囲環境内のエンティティに対応する仮想オブジェクトとインタラクトし得る、または移動可能なロボットデバイスは、位置特定及びマッピング同時実行、従ってその環境のナビゲーションを可能にするために、3D空間の表現が必要であり得る。多くのアプリケーションでは、インテリジェントシステムが、デジタル情報ソースを物理オブジェクトに結び付けることができるように、環境の表現を有する必要があり得る。これにより、人を取り巻く物理環境がインターフェースとなる高度なヒューマン‐マシンインターフェースが可能となる。同様に、このような表現により、高度なマシン‐世界インターフェースも可能となり得、例えば、ロボットデバイスが現実世界の環境で物理オブジェクトとインタラクトして操作することが可能となる。 In the fields of computer vision and robotics, it is often necessary to construct representations of three-dimensional (3D) space. By constructing a representation of 3D space, it is possible to map a real world environment to a virtual or digital domain, which can be used and manipulated by electronic devices. For example, in an augmented reality application, a user can use a handheld device to interact with a virtual object that corresponds to an entity in the surrounding environment, or a mobile robot device can locate and map simultaneously, and thus that environment. A representation of the 3D space may be needed to enable navigation. In many applications, intelligent systems may need to have a representation of the environment so that digital information sources can be tied to physical objects. This enables an advanced human-machine interface in which the physical environment surrounding people is the interface. Similarly, such representations can also enable advanced machine-world interfaces, for example, allowing robotic devices to interact with and manipulate physical objects in a real-world environment.

3D空間の表現を構築するのに利用可能な技法がいくつか存在する。例えば、運動からの構造復元、並びに位置特定及びマッピング同時実行(SLAM)が、そのような技法の2つである。SLAM技法は、通常、マッピングする3Dシーンの奥行きの推定を伴う。奥行き推定は、深度カメラを使用して行われ得る。しかし、深度カメラは通常、範囲が制限され、消費電力が比較的高く、明るい日光などの屋外環境では正しく機能しない場合がある。他の事例では、奥行き推定は、例えば空間の画像に基づいて、深度カメラを使用せずに、行われ得る。 There are several techniques available for constructing representations of 3D space. For example, structural restoration from motion, as well as location and mapping concurrency (SLAM) are two such techniques. SLAM techniques usually involve estimating the depth of the 3D scene to be mapped. Depth estimation can be done using a depth camera. However, depth cameras are usually limited in range, consume relatively high power, and may not function properly in outdoor environments such as bright sunlight. In other cases, depth estimation can be done, for example, based on spatial images, without the use of depth cameras.

2017年のComputer Vision and Pattern Recognition(CVPR)に関するIEEE会議の議事録に記載されるK. Tateno et al.による論文「CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction」は、畳み込みニューラルネットワーク(CNN)により取得された奥行きマップと、直接単眼SLAMから取得された奥行き測定との融合を説明する。不鮮明な奥行き境界を回復させるために、CNN予測奥行きマップが再構成の初期推定として使用され、ピクセルごとの小ベースラインステレオマッチングに依存する直接SLAMスキームにより、連続的に精緻化される。しかし、この手法では、全体的な一貫性は保持されない。 K.K. described in the minutes of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) in 2017. Tateno et al. The paper "CNN-SLAM: Real-time sense monocular SLAM with learned depth prediction" describes the fusion of depth maps obtained by a convolutional neural network (CNN) with depth measurements taken directly from a monocular SLAM. To restore blurry depth boundaries, a CNN predicted depth map is used as an initial estimate of the reconstruction and is continuously refined by a direct SLAM scheme that relies on small pixel-by-pixel baseline stereo matching. However, this approach does not maintain overall consistency.

既存の技法を考えると、例えば3D空間のマッピングを改善するために、奥行き推定の有効で効率的な方法が望まれる。 Given existing techniques, effective and efficient methods of depth estimation are desired, for example to improve mapping in 3D space.

本発明の第1の態様による、シーンの奥行きを推定する画像処理システムが提供される。画像処理システムは、融合エンジンを備え、融合エンジンは、幾何学的再構成エンジンからの第1の奥行き推定と、ニューラルネットワークアーキテクチャからの第2の奥行き推定とを受信し、第1の奥行き推定と第2の奥行き推定とを確率的に融合させて、シーンの融合奥行き推定を出力し、融合エンジンは、幾何学的再構成エンジンからの第1の奥行き推定の不確実性測定と、ニューラルネットワークアーキテクチャからの第2の奥行き推定の不確実性測定と、を受信するように構成され、融合エンジンは、不確実性測定を使用して、第1の奥行き推定と第2の奥行き推定とを確率的に融合させるように構成される。 An image processing system for estimating the depth of a scene according to the first aspect of the present invention is provided. The image processing system comprises a fusion engine, which receives a first depth estimate from the geometric reconstruction engine and a second depth estimate from the neural network architecture, with the first depth estimate. Probabilistically fusing with the second depth estimation to output the fusion depth estimation of the scene, the fusion engine has the uncertainty measurement of the first depth estimation from the geometric reconstruction engine and the neural network architecture. The uncertainty measurement of the second depth estimation from is configured to receive, and the fusion engine uses the uncertainty measurement to probabilistically perform the first depth estimation and the second depth estimation. It is configured to be fused with.

いくつかの実施例では、融合エンジンは、ニューラルネットワークアーキテクチャから表面配向推定及び表面配向推定の不確実性測定を受信し、表面配向推定及び表面配向推定の不確実性測定を使用して、第1の奥行き推定と第2の推定とを確率的に融合させるように構成される。 In some embodiments, the fusion engine receives surface orientation estimation and surface orientation estimation uncertainty measurements from the neural network architecture, and uses surface orientation estimation and surface orientation estimation uncertainty measurements to first. It is configured to stochastically fuse the depth estimation and the second estimation of.

いくつかの実施例では、表面配向推定には、第1の方向の奥行き勾配推定、第1の方向に直交する方向の奥行き勾配推定、及び表面法線推定のうちの1つ以上が含まれる。 In some embodiments, the surface orientation estimation includes one or more of a depth gradient estimation in a first direction, a depth gradient estimation in a direction orthogonal to the first direction, and a surface normal estimation.

いくつかの実施例では、融合エンジンは、第1の奥行き推定と第2の推定とを確率的に融合させる時に、スケール推定を特定するように構成される。 In some embodiments, the fusion engine is configured to specify the scale estimation when the first depth estimation and the second estimation are stochastically fused.

いくつかの実施例では、シーンは、ビデオデータの第1のフレームでキャプチャされ、ビデオデータの第1のフレームについての第2の奥行き推定が受信され、第1の奥行き推定には、ビデオデータの第1のフレームについての複数の第1の奥行き推定が含まれ、複数の第1の奥行き推定のうちの少なくとも1つは、ビデオデータの第1のフレームとは異なるビデオデータの第2のフレームを使用して生成され、融合エンジンは、反復ごとに第2の奥行き推定と複数の奥行き推定のうちの1つとを処理して、シーンの融合奥行き推定を反復的に出力するように構成される。 In some embodiments, the scene is captured in the first frame of the video data, a second depth estimate for the first frame of the video data is received, and the first depth estimate is for the video data. A plurality of first depth estimates for the first frame are included, and at least one of the plurality of first depth estimates includes a second frame of video data that is different from the first frame of the video data. Generated using, the fusion engine is configured to process a second depth estimate and one of a plurality of depth estimates for each iteration to iteratively output the fusion depth estimate for the scene.

いくつかの実施例では、第1の奥行き推定、第2の奥行き推定、及び融合奥行き推定はそれぞれ、複数のピクセルについての奥行きマップを含む。 In some embodiments, the first depth estimation, the second depth estimation, and the fusion depth estimation each include a depth map for a plurality of pixels.

いくつかの実施例では、第1の奥行き推定は、中密度奥行き推定であり、第2の奥行き推定及び融合奥行き推定はそれぞれ、高密度奥行き推定を含む。 In some embodiments, the first depth estimation is a medium density depth estimation, and the second depth estimation and the fusion depth estimation each include a high density depth estimation.

いくつかの実施例では、システムは、ビデオデータのフレームをキャプチャする単眼カメラと、シーンを観察している間の単眼カメラの姿勢を特定する追跡システムと、幾何学的再構成エンジンと、を備える。このような実施例では、幾何学的再構成エンジンは、追跡システムからの姿勢と、ビデオデータのフレームとを使用して、ビデオデータのフレームからピクセルの少なくとも部分集合についての奥行き推定を生成するように構成され、幾何学的再構成エンジンは、測光誤差を最小化して、奥行き推定を生成するように構成される。 In some embodiments, the system comprises a monocular camera that captures frames of video data, a tracking system that identifies the orientation of the monocular camera while observing the scene, and a geometric reconstruction engine. .. In such an embodiment, the geometric reconstruction engine uses the orientation from the tracking system and the frame of the video data to generate a depth estimate for at least a subset of the pixels from the frame of the video data. The geometric reconstruction engine is configured to minimize metering errors and generate depth estimates.

いくつかの実施例では、システムは、ニューラルネットワークアーキテクチャを備え、ニューラルネットワークアーキテクチャは、1つ以上のニューラルネットワークを含み、ビデオデータのフレームのピクセル値を受信し、予測を行うように構成され、当該予測では、第2の奥行き推定を生成するために、画像部分の第1の集合のそれぞれについての奥行き推定と、画像部分の第2の集合のそれぞれについての少なくとも1つの表面配向推定と、各奥行き推定に関連付けられた1つ以上の不確実性測定と、各表面配向推定に関連付けられた1つ以上の不確実性測定と、が予測される。 In some embodiments, the system comprises a neural network architecture, the neural network architecture comprising one or more neural networks, configured to receive and make predictions of the pixel values of a frame of video data. In the prediction, to generate a second depth estimate, a depth estimate for each of the first sets of image parts, at least one surface orientation estimate for each of the second sets of image parts, and each depth. One or more uncertainty measurements associated with the estimation and one or more uncertainty measurements associated with each surface orientation estimation are predicted.

本発明の第2の態様による、シーンの奥行きを推定する方法が提供される。方法は、シーンの幾何学的再構成を使用して、シーンの第1の奥行き推定を生成することであって、幾何学的再構成は、第1の奥行き推定の不確実性測定を出力するように構成される、当該生成することと、ニューラルネットワークアーキテクチャを使用して、シーンの第2の奥行き推定を生成することであって、ニューラルネットワークアーキテクチャは、第2の奥行き推定の不確実性測定を出力するように構成される、当該生成することと、不確実性測定を使用して、第1の奥行き推定と第2の奥行き推定とを確率的に融合させて、シーンの融合奥行き推定を生成することと、を含む。 A method of estimating the depth of a scene according to a second aspect of the present invention is provided. The method is to use the geometric reconstruction of the scene to generate a first depth estimate of the scene, which outputs an uncertainty measurement of the first depth estimation. The generation is configured to generate a second depth estimate of the scene using the neural network architecture, which is an uncertainty measurement of the second depth estimate. The fusion depth estimation of the scene is made by probabilistically fusing the first depth estimation and the second depth estimation using the generation and the uncertainty measurement, which is configured to output. Including to generate.

いくつかの実施例では、方法は、第1の奥行き推定を生成する前に、シーンの2つ以上のビューを表す画像データをカメラから取得することを含む。このような実施例では、第1の奥行き推定を生成することは、カメラの姿勢推定を取得することと、少なくとも姿勢推定と画像データとの関数である測光誤差を最小化することにより、第1の奥行き推定を生成することと、を含む。 In some embodiments, the method comprises acquiring image data representing two or more views of the scene from a camera prior to generating a first depth estimate. In such an embodiment, generating the first depth estimation is by obtaining the attitude estimation of the camera and at least minimizing the photometric error, which is a function of the attitude estimation and the image data. Includes generating depth estimates for.

いくつかの実施例では、方法は、第1の奥行き推定を生成する前に、シーンの1つ以上のビューを表す画像データをカメラから取得することを含む。このような実施例では、第2の奥行き推定を生成することは、ニューラルネットワークアーキテクチャで、画像データを受信することと、第2の奥行き推定を生成するために、ニューラルネットワークアーキテクチャを使用して、画像部分の集合のそれぞれについて奥行き推定を予測することと、ニューラルネットワークアーキテクチャを使用して、画像部分の集合のそれぞれについて少なくとも1つの表面配向推定を予測することと、ニューラルネットワークアーキテクチャを使用して、各奥行き推定及び各表面配向推定の不確実性測定の集合を予測することと、を含む。表面配向推定には、第1の方向の奥行き勾配推定、第1の方向に直交する方向の奥行き勾配推定、及び表面法線推定のうちの1つ以上が含まれ得る。 In some embodiments, the method comprises acquiring image data representing one or more views of the scene from the camera prior to generating the first depth estimation. In such an embodiment, generating a second depth estimate is a neural network architecture that receives image data and uses a neural network architecture to generate a second depth estimate. Predicting depth estimates for each set of image parts, predicting at least one surface orientation estimate for each set of image parts using a neural network architecture, and using a neural network architecture, Includes predicting a set of uncertainty measurements for each depth estimation and each surface orientation estimation. The surface orientation estimation may include one or more of a depth gradient estimation in a first direction, a depth gradient estimation in a direction orthogonal to the first direction, and a surface normal estimation.

いくつかの実施例では、方法は、第1の奥行き推定を生成する前に、シーンの2つ以上のビューを表す画像データをカメラから取得することを含み、画像データは複数のピクセルを含む。このような実施例では、第1の奥行き推定を生成することは、カメラの姿勢推定を取得することと、画像データ内のピクセルの一部についての奥行き推定を含む中密度奥行き推定を生成することと、を含む。これらの実施例では、第2の奥行き推定を生成することは、画像データ内のピクセルについて高密度奥行き推定を生成することを含み、第1の奥行き推定と第2の奥行き推定とを確率的に融合させることは、画像データ内のピクセルについて高密度奥行き推定を出力することを含む。 In some embodiments, the method comprises acquiring image data representing two or more views of the scene from a camera prior to generating a first depth estimate, the image data comprising a plurality of pixels. In such an embodiment, generating a first depth estimate is to obtain a camera attitude estimate and generate a medium density depth estimate that includes a depth estimate for some of the pixels in the image data. And, including. In these embodiments, generating a second depth estimate involves generating a high density depth estimate for the pixels in the image data, probabilistically performing a first depth estimate and a second depth estimate. Fusing involves outputting a high density depth estimate for the pixels in the image data.

いくつかの実施例では、方法は、反復的に繰り返され、後続の反復に関して、方法は、第2の奥行き推定を生成するか否かを判定することを含み、第1の奥行き推定と第2の奥行き推定とを確率的に融合させることは、第2の奥行き推定を生成しないという判定に応じて、第2の奥行き推定の前の値の集合を使用することを含む。 In some embodiments, the method is iteratively repeated, and for subsequent iterations, the method comprises determining whether to generate a second depth estimate, a first depth estimate and a second. Probabilistic fusion with the depth estimation of

いくつかの実施例では、方法は、ビデオデータのフレームに適用され、第1の奥行き推定と第2の奥行き推定とを確率的に融合させることは、ビデオデータの所与のフレームについて、第1の奥行き推定に関連付けられた第1のコスト項と、第2の奥行き推定に関連付けられた第2のコスト項とを含むコスト関数を最適化することを含む。このような実施例では、第1のコスト項は、融合奥行き推定値と、第1の奥行き推定値と、第1の奥行き推定の不確実性値との関数を含み、第2のコスト項は、融合奥行き推定値と、第2の奥行き推定値と、第2の奥行き推定の不確実性値との関数を含み、コスト関数を最適化して、融合奥行き推定値が特定される。コスト関数を最適化することは、融合奥行き推定のスケールファクタを特定することを含み得、スケールファクタは、シーンに関する融合奥行き推定のスケールを示す。いくつかの実施例では、方法は、ニューラルネットワークアーキテクチャを使用して、シーンの少なくとも1つの表面配向推定を生成することを含み、ニューラルネットワークアーキテクチャは、少なくとも1つの表面配向推定のそれぞれについて不確実性測定を出力するように構成され、コスト関数は、少なくとも1つの表面配向推定に関連付けられた第3のコスト項を含み、第3のコスト項は、融合奥行き推定値と、表面配向推定値と、少なくとも1つの表面配向推定のそれぞれについての不確実性値との関数を含む。 In some embodiments, the method is applied to a frame of video data, and probabilistic fusion of a first depth estimate and a second depth estimate is the first for a given frame of video data. It involves optimizing a cost function that includes a first cost term associated with the depth estimation of and a second cost term associated with the second depth estimation. In such an embodiment, the first cost term includes a function of the fusion depth estimate, the first depth estimate, and the uncertainty value of the first depth estimate, and the second cost term is. , A function of a fusion depth estimate, a second depth estimate, and a second depth estimation uncertainty value is included, and the cost function is optimized to identify the fusion depth estimate. Optimizing the cost function can include identifying the scale factor for the fusion depth estimation, which indicates the scale of the fusion depth estimation for the scene. In some embodiments, the method involves using a neural network architecture to generate at least one surface orientation estimate for the scene, where the neural network architecture is uncertain about each of the at least one surface orientation estimates. Configured to output measurements, the cost function includes a third cost term associated with at least one surface orientation estimate, the third cost term being a fusion depth estimate and a surface orientation estimate. Includes a function with an uncertainty value for each of the at least one surface orientation estimates.

第2の態様による特定の実施例集合では、シーンの幾何学的再構成は、シーンの第1の奥行き確率体積を生成するように構成され、第1の奥行き確率体積は、第1の奥行き推定を含む第1の複数の奥行き推定と、第1の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第1の複数の不確実性測定と、を含み、第1の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、シーンの所与の領域が、第1の複数の奥行き推定のうちの所与の奥行き推定により表される奥行きに存在する確率を表し、ニューラルネットワークアーキテクチャは、シーンの第2の奥行き確率体積を出力するように構成され、第2の奥行き確率体積は、第2の奥行き推定を含む第2の複数の奥行き推定と、第2の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第2の複数の不確実性測定と、を含み、第2の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、シーンの所与の領域が、第2の複数の奥行き推定のうちの所与の奥行き推定により表される奥行きに存在する確率を表す。 In the particular set of examples according to the second aspect, the geometric reconstruction of the scene is configured to generate a first depth probability volume of the scene, where the first depth probability volume is the first depth estimation. Of the first plurality of depth estimates, including a first plurality of depth estimates including, and a first plurality of uncertainty measurements associated with each depth estimate of the first plurality of depth estimates. The uncertainty measurement associated with a given depth estimation of is the probability that a given area of the scene will be at the depth represented by the given depth estimation of the first plurality of depth estimations. The neural network architecture is configured to output a second depth probability volume of the scene, where the second depth probability volume is a second plurality of depth estimates, including a second depth estimate, and a second plurality. A second plurality of uncertainty measurements associated with each depth estimation of the depth estimation, and an uncertainty measurement associated with a given depth estimation of the second plurality of depth estimations. , Represents the probability that a given area of the scene is at the depth represented by the given depth estimation of the second plurality of depth estimations.

特定の実施例集合のうちのいくつかの実施例では、シーンの第2の奥行き推定を生成することは、ニューラルネットワークアーキテクチャを使用してシーンの画像を表す画像データを処理して、第2の奥行き確率体積を生成することを含み、第2の複数の奥行き推定は、複数の奥行き推定集合を含み、それぞれがシーンの画像の異なる各部分に関連付けられる。 In some embodiments of a particular set of examples, generating a second depth estimate of the scene uses a neural network architecture to process the image data that represents the image of the scene, and the second. A second plurality of depth estimates, including generating a depth probability volume, comprises a plurality of depth estimation sets, each associated with a different portion of the image of the scene.

特定の実施例集合のうちのいくつかの実施例では、第2の複数の奥行き推定は、事前に定義された値を有する奥行き推定を含む。事前に定義された値の間には、不均一な間隔があり得る。事前に定義された値は、事前に定義された奥行き範囲内の複数の対数奥行き値を含み得る。 In some embodiments of a particular set of examples, the second plurality of depth estimates include depth estimates with predefined values. There can be non-uniform spacing between the predefined values. A predefined value may include multiple logarithmic depth values within a predefined depth range.

特定の実施例集合のうちのいくつかの実施例では、シーンの第1の奥行き確率体積を生成することは、シーンの第1の観察を表すビデオデータの第1のフレームと、シーンの第2の観察を表すビデオデータの第2のフレームとを処理して、第1のフレームの複数の部分のそれぞれについて測光誤差の集合を生成することであって、測光誤差はそれぞれ、第1の複数の奥行き推定の異なる各奥行き推定に関連付けられる、当該生成することと、測光誤差をスケーリングして、測光誤差をそれぞれの確率値に変換することと、を含む。 In some embodiments of the particular set of examples, generating the first depth probability volume of the scene is the first frame of video data representing the first observation of the scene and the second of the scene. It is to process with the second frame of the video data representing the observation of to generate a set of photometric errors for each of the plurality of parts of the first frame, each of which has a plurality of first photometric errors. Includes that generation associated with each depth estimation with different depth estimation and scaling the photometric error to convert the photometric error to their respective probability values.

特定の実施例集合のうちのいくつかの実施例では、不確実性測定を使用して第1の奥行き推定と第2の奥行き推定とを確率的に融合させることは、第1の複数の不確実性測定と第2の複数の不確実性測定とを組み合わせて、融合確率体積を生成することを含む。これらの実施例では、シーンの融合奥行き推定を生成することは、融合確率体積からシーンの融合奥行き推定を取得することを含み得る。これらの実施例は、融合確率体積を使用して奥行き確率関数を取得することと、奥行き確率関数を使用して、融合奥行き推定を取得することと、を含み得る。これらの実施例では、融合奥行き推定を取得することは、コスト関数を最適化することを含み得、当該コスト関数は、融合確率体積を使用して取得された第1のコスト項と、奥行き値に対する局所的な幾何学的制約を含む第2のコスト項と、を含む。このような事例では、方法は、さらなるニューラルネットワークアーキテクチャから、表面配向推定及びオクルージョン境界推定を受信することと、表面配向推定及びオクルージョン境界推定を使用して、第2のコスト項を生成することと、をさらに含み得る。これらの実施例では、融合奥行き確率体積は、シーンの第1の観察を表すビデオデータの第1のフレームに関連付けられた第1の融合奥行き確率体積であり得、方法は、第1の融合奥行き確率体積を、第1の占有確率体積に変換することと、シーンを観察している間のカメラの姿勢を表す姿勢データに基づいて、第1の占有確率体積をワープさせて、シーンの第2の観察を表すビデオデータの第2のフレームに関連付けられた第2の占有確率体積を取得することと、第2の占有確率体積を、第2のフレームに関連付けられた第2の融合奥行き確率体積に変換することと、を含み得る。 In some embodiments of a particular set of examples, the probabilistic fusion of a first depth estimate and a second depth estimate using uncertainty measurements is a first plurality of failures. It involves combining a certainty measurement with a second plurality of uncertainty measurements to generate a fusion probability volume. In these embodiments, generating the fusion depth estimation of the scene may include obtaining the fusion depth estimation of the scene from the fusion probability volume. These examples may include using a fusion probability volume to obtain a depth probability function and using a depth probability function to obtain a fusion depth estimation. In these embodiments, obtaining a fusion depth estimate may include optimizing a cost function, which is the first cost term obtained using the fusion probability volume and the depth value. Includes a second cost term, including a local geometric constraint on. In such cases, the method is to receive surface orientation estimates and occlusion boundary estimates from further neural network architectures, and to use surface orientation estimates and occlusion boundary estimates to generate a second cost term. , Can be further included. In these embodiments, the fusion depth probability volume can be the first fusion depth probability volume associated with the first frame of video data representing the first observation of the scene, and the method is a first fusion depth. The second occupancy volume of the scene is warped based on the conversion of the stochastic volume to the first occupancy probability volume and the attitude data representing the posture of the camera while observing the scene. Obtaining the second occupancy probability volume associated with the second frame of the video data representing the observation of, and the second occupancy probability volume, the second fusion depth probability volume associated with the second frame. Can include converting to.

本発明の第3の態様による、シーンの奥行きを推定する画像処理システムが提供され、画像処理システムは、幾何学的再構成エンジンからの第1の奥行き確率体積と、ニューラルネットワークアーキテクチャからの第2の奥行き確率体積とを受信し、第1の奥行き確率体積と第2の奥行き確率体積とを融合させて、シーンの融合奥行き確率体積を出力する、融合エンジンと、融合奥行き確率体積を使用して、シーンの奥行きを推定する奥行き推定エンジンと、を備える。 An image processing system for estimating the depth of a scene is provided according to a third aspect of the present invention, wherein the image processing system has a first depth probability volume from a geometric reconstruction engine and a second from a neural network architecture. Using a fusion engine and a fusion depth probability volume that receives the depth probability volume of and outputs the fusion depth probability volume of the scene by fusing the first depth probability volume and the second depth probability volume. It is equipped with a depth estimation engine that estimates the depth of the scene.

本発明の第4の態様による、シーンの奥行きを推定する方法が提供され、方法は、シーンの幾何学的再構成を使用して、シーンの第1の奥行き確率体積を生成することと、ニューラルネットワークアーキテクチャを使用して、シーンの第2の奥行き確率体積を生成することと、第1の奥行き確率体積と第2の奥行き確率体積とを融合させて、シーンの融合奥行き確率体積を生成することと、融合奥行き確率体積を使用して、シーンの融合奥行き推定を生成することと、を含む。 A method of estimating the depth of a scene is provided according to a fourth aspect of the invention, in which the geometric reconstruction of the scene is used to generate a first depth probability volume of the scene and a neural. Using a network architecture to generate a second depth-probability volume for a scene and a fusion of a first depth-probability volume and a second depth-probability volume to generate a fusion depth-probability volume for a scene. And to generate a fusion depth estimate for the scene using the fusion depth probability volume.

本発明の第5の態様によるコンピューティングシステムが提供され、コンピューティングシステムは、ビデオのフレームを提供する単眼キャプチャデバイスと、単眼キャプチャデバイスの姿勢データを提供する位置特定及びマッピング同時実行システムと、第1または第3の態様のシステムと、姿勢データ及びビデオのフレームを受信して、幾何学的再構成エンジンを実施する中密度マルチビューステレオコンポーネントと、ニューラルネットワークアーキテクチャを実施する電子回路と、を備える。 A computing system according to a fifth aspect of the present invention is provided, in which the computing system includes a monocular capture device that provides a frame of video, a position determination and mapping simultaneous execution system that provides orientation data of the monocular capture device, and a fifth. It comprises a system of the first or third aspect, a medium density multi-view stereo component that receives frames of orientation data and video and implements a geometric reconstruction engine, and an electronic circuit that implements a neural network architecture. ..

本発明の第6の態様によるロボットデバイスが提供され、ロボットデバイスは、第5の態様のコンピューティングシステムと、ロボットデバイスが周囲の3次元環境とインタラクトすることを可能にする1つ以上のアクチュエータであって、周囲の3次元環境の少なくとも一部がシーンに示される、当該1つ以上のアクチュエータと、1つ以上のアクチュエータを制御する少なくとも1つのプロセッサを有するインタラクションエンジンであって、融合奥行き推定を使用して周囲の3次元環境とインタラクトする当該インタラクションエンジンと、を備える。 A robotic device according to a sixth aspect of the present invention is provided, wherein the robotic device is a computing system according to the fifth aspect and one or more actuators that allow the robotic device to interact with the surrounding three-dimensional environment. An interaction engine having at least a portion of the surrounding 3D environment shown in the scene, the one or more actuators and at least one processor controlling the one or more actuators, for fusion depth estimation. It comprises the interaction engine, which is used to interact with the surrounding 3D environment.

本発明の第7の態様による、コンピュータ実行可能命令を含む非一時的コンピュータ可読記憶媒体が提供され、コンピュータ実行可能命令は、プロセッサにより実行されると、コンピューティングデバイスに、前述の方法のうちのいずれかを実行させる。 A non-temporary computer-readable storage medium comprising computer-executable instructions according to a seventh aspect of the present invention is provided, and when the computer-executable instructions are executed by the processor, the computing device is subjected to the method described above. Have one run.

添付の図面を参照する単なる例として与えられた本発明の実施形態の下記の説明から、さらなる機能が明らかになるであろう。 Further functionality will be apparent from the following description of embodiments of the invention given as merely examples with reference to the accompanying drawings.

3次元(3D)空間の実施例を示す概略図である。It is a schematic diagram which shows the Example of the 3D (3D) space. 3D空間における例示的なオブジェクトの利用可能な自由度を示す概略図である。FIG. 6 is a schematic diagram showing the available degrees of freedom of an exemplary object in 3D space. 例示的なキャプチャデバイスにより生成されるビデオデータを示す概略図である。FIG. 6 is a schematic diagram showing video data generated by an exemplary capture device. 実施例による画像処理システムの概略図である。It is the schematic of the image processing system by an Example. さらなる実施例による、画像処理システムの概略図である。It is a schematic diagram of an image processing system according to a further embodiment. さらなる別の実施例による、画像処理システムの概略図である。It is a schematic diagram of an image processing system according to still another embodiment. 実施例による、表面配向推定及び表面配向推定の不確実性測定を示す概略図である。It is a schematic diagram which shows the uncertainty measurement of the surface orientation estimation and the surface orientation estimation by an Example. さらなる別の実施例による、画像処理システムの概略図である。It is a schematic diagram of an image processing system according to still another embodiment. 実施例による、コンピューティングシステムのコンポーネントを示す概略図である。It is a schematic diagram which shows the component of the computing system by an embodiment. 実施例による、ロボットデバイスのコンポーネントを示す概略図である。It is a schematic diagram which shows the component of the robot device by an Example. 図1~7を参照して説明された様々な機能の実施例を示す概略図である。It is a schematic diagram which shows the Example of the various functions described with reference to FIGS. 1-7. シーンの奥行きを推定する例示的な方法を示すフロー図である。It is a flow diagram which shows the exemplary method of estimating the depth of a scene. シーンの奥行きを推定するさらなる例示的な方法を示すフロー図である。It is a flow diagram which shows the further exemplary method of estimating the depth of a scene. プロセッサと、コンピュータ実行可能命令を含む非一時的コンピュータ可読記憶媒体との実施例を示す概略図である。FIG. 5 is a schematic diagram illustrating an embodiment of a processor and a non-temporary computer-readable storage medium including computer-executable instructions. さらなる実施例による、シーンの第1の奥行き推定と第2の奥行き推定との融合を示す概略図である。It is a schematic diagram which shows the fusion of the 1st depth estimation and the 2nd depth estimation of a scene by a further embodiment. 実施例による、第2の奥行き確率体積を取得するためのシステムの概略図である。FIG. 3 is a schematic diagram of a system for acquiring a second depth probability volume according to an embodiment. 図13のシステムを使用して取得されたそれぞれの奥行き推定に関連付けられた不確実性測定の実施例を示す概略図である。FIG. 3 is a schematic diagram illustrating an example of uncertainty measurement associated with each depth estimate obtained using the system of FIG. 実施例による、第1の奥行き確率体積を取得するためのシステムの概略図である。FIG. 3 is a schematic diagram of a system for acquiring a first depth probability volume according to an embodiment. シーンの融合奥行き推定を取得する例示的な方法を示すフロー図である。It is a flow diagram which shows the exemplary method of getting the fusion depth estimation of a scene. 図16の方法を使用することにより、融合奥行き推定を取得するためのシステムの概略図である。FIG. 6 is a schematic diagram of a system for obtaining fusion depth estimates by using the method of FIG. 第2の融合奥行き確率体積を取得する例示的な方法を示すフロー図である。It is a flow diagram which shows the exemplary method of acquiring the 2nd fusion depth probability volume. さらなる実施例による、シーンの奥行きを推定する例示的な方法を示すフロー図である。It is a flow diagram which shows the exemplary method of estimating the depth of a scene by a further embodiment. さらなる実施例による、シーンの奥行きを推定する画像処理システムの概略図である。FIG. 3 is a schematic diagram of an image processing system for estimating the depth of a scene according to a further embodiment.

本明細書で説明されるいくつかの実施例は、シーンの奥行きを推定することを可能にする。このような実施例は、シーンの幾何学的再構成を使用したシーンの第1の奥行き推定の生成を含む。第1の奥行き推定は、例えばシーンの画像を処理することにより、生成され得る。画像は、例えば、2次元(2D)カラー画像であり得、例えばRGB(赤、緑、青)画像であり得る。第1の奥行き推定は、幾何学的制約に基づいて生成され得る。例えば、シーンの所与の部分を表す画像内のピクセルの色は、画像をキャプチャするのに使用されるカメラの位置とは無関係であると想定され得る。これは、図を参照してさらに説明されるように、第1の奥行き推定の生成に利用され得る。幾何学的再構成はまた、例えば第1の奥行き推定の正確度を示す第1の奥行き推定の不確実性測定を出力するように構成される。例えば、第1の奥行き推定が多く制約を受け、正確に推定され得る場合、不確実性測定は、第1の奥行き推定が少なく制約を受けた他の事例より、低くなり得る。 Some embodiments described herein make it possible to estimate the depth of the scene. Such embodiments include the generation of a first depth estimate of the scene using the geometric reconstruction of the scene. The first depth estimation can be generated, for example, by processing an image of the scene. The image can be, for example, a two-dimensional (2D) color image, eg, an RGB (red, green, blue) image. The first depth estimation can be generated based on geometric constraints. For example, the color of a pixel in an image that represents a given part of the scene can be assumed to be independent of the position of the camera used to capture the image. This can be used to generate a first depth estimate, as further described with reference to the figure. The geometric reconstruction is also configured to output a first depth estimation uncertainty measurement that indicates, for example, the accuracy of the first depth estimation. For example, if the first depth estimation is more constrained and can be estimated accurately, the uncertainty measurement can be lower than in other cases where the first depth estimation is less constrained.

ニューラルネットワークアーキテクチャを使用して、シーンの第2の奥行き推定が生成される。ニューラルネットワークアーキテクチャはまた、第2の奥行き推定の不確実性測定を出力するように構成される。例えば、入力画像から奥行き推定及び関連する不確実性の両方を予測するようにトレーニングされた畳み込みニューラルネットワーク(CNN)などのニューラルネットワークアーキテクチャを使用して、シーンの画像は処理され得る。不確実性測定は、関連する第2の奥行き推定の信頼性を示し得る。例えば、ニューラルネットワークアーキテクチャのトレーニングに使用されたトレーニングデータに存在しなかったオブジェクトを含む画像領域の第2の奥行き推定は、比較的不確実であり得、よって、ニューラルネットワークアーキテクチャから取得された比較的高い不確実性測定に関連付けられ得る。反対に、トレーニングデータに存在したオブジェクトを含む画像領域の第2の奥行き推定は、より低い不確実性測定に関連付けられ得る。 A second depth estimate of the scene is generated using the neural network architecture. The neural network architecture is also configured to output a second depth estimation uncertainty measurement. For example, a scene image can be processed using a neural network architecture such as a convolutional neural network (CNN) trained to predict both depth estimation and associated uncertainties from the input image. Uncertainty measurements may indicate the reliability of the associated second depth estimation. For example, a second depth estimate of an image region containing objects that were not present in the training data used to train the neural network architecture can be relatively uncertain, and thus relatively obtained from the neural network architecture. Can be associated with high uncertainty measurements. Conversely, a second depth estimate of the image area containing the objects present in the training data may be associated with a lower uncertainty measurement.

第1の奥行き推定と第2の奥行き推定は、不確実性測定を使用して確率的に融合され、シーンの融合奥行き推定が生成される。このように第1の奥行き推定と第2の奥行き推定とを組み合わせることにより、融合奥行き推定の精度は向上し得る。例えば第1の奥行き推定(幾何学的制約に基づく)は、シーンの一部分をシーンの別の部分と比較して、シーンの当該部分の信頼できる相対的な奥行き推定を提供し得る。このようにして、第1の奥行き推定は、例えばシーンの他の部分と比較して、実世界環境内の好適な位置にシーンの当該部分を配置あるいは位置特定することが可能であり得る。しかし、第1の奥行き推定は、例えばシーンのその部分内の表面の不均一なテクスチャが原因で、シーンのその部分内の奥行きの変化など、シーンのその部分内の奥行き勾配をキャプチャする精度が低くあり得る。対照的に、第2の奥行き推定(ニューラルネットワークアーキテクチャから取得される)は、シーン内の奥行き勾配を正確にキャプチャし得るが、シーンの所与の部分をシーンの他の部分と比較して位置特定する精度は、低くあり得る。しかし、不確実性測定を使用して第1の奥行き推定と第2の奥行き推定とを確率的に融合させることにより、第1の奥行き推定及び第2の奥行き推定それぞれの個々の効果が相乗的に増強され得、よって、融合奥行き推定の精度が向上する。例えば、融合奥行き推定の全体的一貫性を確保するために、不確実性測定は、第1の奥行き推定と第2の奥行き推定との融合を制約し得る。さらに、シーンの推定奥行きにおける不鮮明なアーチファクトは、他の方法と比較して減少し得る。 The first depth estimate and the second depth estimate are stochastically fused using uncertainty measurements to generate a fused depth estimate for the scene. By combining the first depth estimation and the second depth estimation in this way, the accuracy of the fusion depth estimation can be improved. For example, the first depth estimation (based on geometric constraints) may compare one part of the scene to another part of the scene to provide a reliable relative depth estimation for that part of the scene. In this way, the first depth estimation may be able to place or locate that part of the scene at a suitable position in the real world environment, as compared to, for example, other parts of the scene. However, the first depth estimation has the accuracy of capturing the depth gradient within that portion of the scene, for example due to the uneven texture of the surface within that portion of the scene, such as changes in depth within that portion of the scene. Can be low. In contrast, a second depth estimate (obtained from a neural network architecture) can accurately capture the depth gradient in the scene, but position a given part of the scene compared to the rest of the scene. The accuracy to identify can be low. However, by stochastically fusing the first depth estimation and the second depth estimation using uncertainty measurement, the individual effects of the first depth estimation and the second depth estimation are synergistic. Therefore, the accuracy of fusion depth estimation is improved. For example, to ensure the overall consistency of the fusion depth estimation, the uncertainty measurement may constrain the fusion of the first depth estimation and the second depth estimation. In addition, blurry artifacts in the estimated depth of the scene can be reduced compared to other methods.

図1A及び図1Bは、3D空間の実施例と、その空間に関連付けられた画像データのキャプチャとを、概略的に示す。次に、図1Cは、空間を表示する時に画像データを生成するように構成されたキャプチャデバイスを示す。これらの実施例は、本明細書で説明されるいくつかの機能をよりよく説明するために提示されており、限定するものとしてみなされるべきではなく、説明をしやすくするために、いくつかの機能は省略及び簡略化されている。 1A and 1B schematically show an embodiment of a 3D space and a capture of image data associated with that space. Next, FIG. 1C shows a capture device configured to generate image data when displaying space. These examples are presented to better illustrate some of the features described herein and should not be considered limiting, but some for ease of explanation. Functions have been omitted and simplified.

図1Aは、3D空間110の実施例100を示す。3D空間110は、内部物理空間及び/または外部物理空間、例えば部屋または地理的場所の少なくとも一部であり得る。本実施例100の3D空間110は、3D空間内に配置された、いくつかの物理オブジェクト115を含む。これらのオブジェクト115には、とりわけ、人、電子デバイス、家具、動物、建物部分、及び設備のうちの1つ以上が含まれ得る。図1Aの3D空間110は、下面が示されているが、これが全ての実施態様においてそうである必要はなく、例えば環境は、空中または地球外空間内であってもよい。 FIG. 1A shows Example 100 of the 3D space 110. The 3D space 110 can be at least part of an internal physical space and / or an external physical space, such as a room or geographical location. The 3D space 110 of the present embodiment 100 includes several physical objects 115 arranged in the 3D space. These objects 115 may include, among other things, one or more of people, electronic devices, furniture, animals, building parts, and equipment. The 3D space 110 of FIG. 1A is shown with a bottom surface, but this does not have to be the case in all embodiments, for example the environment may be in the air or in extraterrestrial space.

実施例100はまた、3D空間110に関連付けられたビデオデータをキャプチャするのに使用され得る様々な例示的なキャプチャデバイス120-A、120-B、120-C(参照番号120と総称される)を示す。図1Aのキャプチャデバイス120-Aなどのキャプチャデバイスは、3D空間110を観察することにより生じるデータを、デジタル形式またはアナログ形式で記録するように構成されたカメラを備え得る。例えば、キャプチャデバイス120-Aは、単眼カメラなどの単眼キャプチャデバイスであり得る。単眼カメラは通常、1度に1つの位置からシーンの画像をキャプチャし、単一のレンズまたはレンズシステムを有し得る。対照的に、ステレオカメラは一般に、少なくとも2つのレンズを含み、レンズごとに個別の画像センサを有する。キャプチャデバイス120-Aとして使用可能な単眼キャプチャデバイスは、複数の角度位置から3D空間110の画像をキャプチャするように配置された単眼多方向カメラデバイスであり得る。使用時、複数の画像が次々にキャプチャされ得る。いくつかの事例では、複数の角度位置は、広い視野を占める。特定の事例では、キャプチャデバイス120-Aは、全方向カメラ、例えば実質的に360度の視野をキャプチャするように構成されたデバイスを備え得る。この事例では、全方向カメラは、パノラマ環状レンズを有するデバイスを備え得、例えばレンズは、電荷結合アレイに関連して取り付けられ得る。 Example 100 also includes various exemplary capture devices 120-A, 120-B, 120-C (collectively referred to as reference number 120) that can be used to capture video data associated with 3D space 110. Is shown. A capture device such as the capture device 120-A of FIG. 1A may include a camera configured to record the data generated by observing the 3D space 110 in digital or analog format. For example, the capture device 120-A can be a monocular capture device such as a monocular camera. Monocular cameras usually capture images of the scene from one position at a time and may have a single lens or lens system. In contrast, a stereo camera generally includes at least two lenses, each with a separate image sensor. The monocular capture device that can be used as the capture device 120-A can be a monocular multidirectional camera device arranged to capture an image of 3D space 110 from a plurality of angular positions. When in use, multiple images can be captured one after another. In some cases, multiple angular positions occupy a large field of view. In certain cases, the capture device 120-A may include an omnidirectional camera, eg, a device configured to capture a substantially 360 degree field of view. In this example, the omnidirectional camera may include a device with a panoramic annular lens, for example the lens may be attached in connection with a charge-coupled array.

複数の異なる位置から3D空間の複数の画像をキャプチャするために、キャプチャデバイス120-Aは、移動可能であり得る。例えば、キャプチャデバイス120-Aは、3D空間110の異なる観察部分に対応する異なるフレームをキャプチャするように構成され得る。キャプチャデバイス120-Aは、静止台を基準にして移動可能であり得、例えば3D空間110に関してカメラの位置及び/または配向を変更させるアクチュエータを備え得る。別の事例では、キャプチャデバイス120-Aは、人間のユーザにより操作及び移動されるハンドヘルドデバイスであり得る。一事例では、キャプチャデバイス120-Aは、一連の画像をキャプチャするように構成されたカメラなどの静止画像デバイスを備え得、別の事例では、キャプチャデバイス120-Aは、一連の画像をビデオフレームの形式で含むビデオデータをキャプチャするビデオデバイスを備え得る。例えば、キャプチャデバイス120-Aは、ビデオデータのフレームをキャプチャする、あるいは取得する単眼カメラまたは単眼キャプチャデバイスであり得る。 The capture device 120-A may be mobile to capture multiple images in 3D space from multiple different locations. For example, the capture device 120-A may be configured to capture different frames corresponding to different observation portions of the 3D space 110. The capture device 120-A may be movable relative to a stationary platform and may include an actuator that changes the position and / or orientation of the camera with respect to, for example, the 3D space 110. In another example, the capture device 120-A can be a handheld device operated and moved by a human user. In one case, the capture device 120-A may include a still image device such as a camera configured to capture a series of images, in another case the capture device 120-A may videoframe the series of images. It may be equipped with a video device that captures video data, including in the format of. For example, the capture device 120-A may be a monocular camera or monocular capture device that captures or captures frames of video data.

図1Aでは、3D空間110内を移動するように構成されたロボットデバイス130に接続された複数のキャプチャデバイス120-B、120-Cも示される。ロボットデバイス135には、自律空中可動デバイス及び/または自律地上可動デバイスが含まれ得る。本実施例100では、ロボットデバイス130は、アクチュエータ135を備え、アクチュエータ135は、デバイスが3D空間110をナビゲートすることを可能にする。これらのアクチュエータ135には、例示のホイールが含まれ、他の事例では、これらのアクチュエータ135には、線路、穿孔機構、ローターなどが含まれ得る。このようなデバイス上に、1つ以上のキャプチャデバイス120-B、120-Cは、静的にまたは移動可能に取り付けられ得る。いくつかの事例では、ロボットデバイスは、3D空間110内に静的に取り付けられ得るが、アームまたは他のアクチュエータなどのデバイスの一部は、空間内を移動して、空間内のオブジェクトとインタラクトするように構成され得る。各キャプチャデバイス120-B、120-Cは、異なる種類の画像データ、ビデオデータをキャプチャし得、及び/またはステレオ画像ソースを含み得る。一事例では、キャプチャデバイス120-B、120-Cのうちの少なくとも1つは、測光データ、例えばカラー画像またはグレースケール画像をキャプチャするように構成される。一事例では、キャプチャデバイス120-B、120-Cのうちの1つ以上は、ロボットデバイス130とは無関係に移動可能であり得る。一事例では、キャプチャデバイス120-B、120-Cのうちの1つ以上は、例えば角度のある円弧で回転する、及び/または360度で回転する回転機構上に取り付けられ得、並びに/あるいはシーンのパノラマ(例えば最大360度の完全パノラマ)をキャプチャするように適合された光学素子で構成される。いくつかの事例では、キャプチャデバイス120-Aと同様または同一のキャプチャデバイスが、図1Aのキャプチャデバイス120-B、120-Cのうちの一方または両方として、使用され得ることが、理解されよう。 FIG. 1A also shows a plurality of capture devices 120-B, 120-C connected to a robot device 130 configured to move within the 3D space 110. The robot device 135 may include an autonomous aerial movable device and / or an autonomous ground movable device. In the 100th embodiment, the robot device 130 comprises an actuator 135, which allows the device to navigate the 3D space 110. These actuators 135 include exemplary wheels, and in other cases, these actuators 135 may include railroad tracks, drilling mechanisms, rotors, and the like. On such a device, one or more capture devices 120-B, 120-C may be mounted statically or movably. In some cases, the robot device can be statically mounted within the 3D space 110, but some of the devices, such as arms or other actuators, move in space and interact with objects in space. Can be configured as Each capture device 120-B, 120-C may capture different types of image data, video data, and / or may include a stereo image source. In one example, at least one of the capture devices 120-B, 120-C is configured to capture photometric data, such as a color or grayscale image. In one example, one or more of the capture devices 120-B, 120-C may be mobile independently of the robot device 130. In one example, one or more of the capture devices 120-B, 120-C may be mounted on a rotating mechanism that rotates, for example, in an angular arc and / or rotates at 360 degrees, and / or a scene. Consists of optics adapted to capture a panorama (eg, a complete panorama of up to 360 degrees). It will be appreciated that in some cases a capture device similar to or identical to the capture device 120-A can be used as one or both of the capture devices 120-B, 120-C of FIG. 1A.

図1Bは、キャプチャデバイス120及び/またはロボットデバイス130が利用可能な自由度の実施例140を示す。120-Aなどのキャプチャデバイスの事例では、デバイスの方向150は、レンズまたは他の撮像装置の軸と同一線上であり得る。3軸のうちの1軸の周りを回転する例として、法線軸155が図に示される。同様に、ロボットデバイス130の事例では、ロボットデバイス130のアライメント方向145が定義され得る。これは、ロボットデバイスの向き及び/または進行方向を示し得る。法線軸155も示される。キャプチャデバイス120またはロボットデバイス130に関して単一の法線軸のみが示されるが、これらのデバイスは、後述されるように、140として概略的に示される軸のうちのいずれか1つ以上の軸の周りを回転し得る。 FIG. 1B shows Example 140 of the degrees of freedom available to the capture device 120 and / or the robot device 130. In the case of a capture device such as 120-A, the device orientation 150 may be in line with the axis of the lens or other imaging device. As an example of rotating around one of the three axes, the normal axis 155 is shown in the figure. Similarly, in the case of the robot device 130, the alignment direction 145 of the robot device 130 may be defined. It may indicate the orientation and / or direction of travel of the robot device. The bobbin axis 155 is also shown. Only a single normal axis is shown for the capture device 120 or robot device 130, but these devices are around one or more of the axes schematically shown as 140, as described below. Can be rotated.

より一般的には、キャプチャデバイスの配向及び位置は、6自由度(6DOF)を基準にして3次元において定義され得、位置は、3次元の各次元内に、例えば[x、y、z]座標により定義され得、配向は、3軸の各軸の周りの回転を表す角度ベクトル、例えば[θ、θ、θ]により定義され得る。位置及び配向は、例えば3D座標系内で定義された原点を基準とした、3次元内の変換とみなされ得る。例えば、[x、y、z]座標は、原点から3D座標系内の特定の位置への変換を表し得、角度ベクトル[θ、θ、θ]は、3D座標系内の回転を定義し得る。6DOFを有する変換は、行列として定義され得、よって行列による乗算により、変換が適用される。いくつかの実施態様では、キャプチャデバイスは、制限された6自由度の集合を基準にして定義され得、例えば地上車両上のキャプチャデバイスの場合、y次元は一定であり得る。ロボットデバイス130などのいくつかの実施態様では、別のデバイスに接続されたキャプチャデバイスの配向及び位置は、その別のデバイスの配向及び位置を基準にして定義され得、例えばロボットデバイス130の配向及び位置を基準にして定義され得る。 More generally, the orientation and position of the capture device can be defined in three dimensions with respect to six degrees of freedom (6DOF), and the position is within each dimension of the three dimensions, eg [x, y, z]. It can be defined by coordinates and the orientation can be defined by an angle vector representing rotation around each of the three axes, eg [θ x , θ y , θ z ]. Positions and orientations can be considered, for example, in three dimensions with respect to the origin defined in the 3D coordinate system. For example, the [x, y, z] coordinates may represent a transformation from the origin to a particular position in the 3D coordinate system, and the angle vector [θ x , θ y , θ z ] may represent a rotation in the 3D coordinate system. Can be defined. A transformation with 6DOF can be defined as a matrix, so the transformation is applied by multiplication by the matrix. In some embodiments, the capture device can be defined with respect to a limited set of 6 degrees of freedom, for example in the case of a capture device on a ground vehicle, the y-dimension can be constant. In some embodiments, such as the robot device 130, the orientation and position of the capture device connected to another device can be defined relative to the orientation and position of that other device, eg, the orientation and position of the robot device 130. Can be defined relative to position.

本明細書で説明される実施例では、例えば6DOF変換行列で記述されたように、キャプチャデバイスの配向及び位置は、キャプチャデバイスの姿勢として定義され得る。同様に、例えば6DOF変換行列で記述されたように、オブジェクト表現の配向及び位置は、オブジェクト表現の姿勢として定義され得る。例えばビデオデータまたは一連の静止画像が記録される時、キャプチャデバイスが時間t+1に時間tとは異なる姿勢を取り得るように、キャプチャデバイスの姿勢は経時的に変化し得る。キャプチャデバイスを備えたハンドヘルドモバイルコンピューティングデバイスの事例では、ハンドヘルドデバイスはユーザにより3D空間110内を移動させられるため、その姿勢は変化し得る。 In the embodiments described herein, the orientation and position of the capture device can be defined as the orientation of the capture device, as described, for example, in the 6DOF transformation matrix. Similarly, the orientation and position of an object representation can be defined as the orientation of the object representation, as described, for example, in the 6DOF transformation matrix. For example, when video data or a series of still images are recorded, the attitude of the capture device may change over time so that the capture device may take a different attitude at time t + 1 than time t. In the case of a handheld mobile computing device with a capture device, the attitude of the handheld device can change as it is moved within the 3D space 110 by the user.

図1Cは、キャプチャデバイス構成の実施例を概略的に示す。図1Cの実施例160では、キャプチャデバイス165は、画像データ170を生成するように構成される。図1Cでは、画像データ170は、複数のフレーム175を含む。各プレーム175は、図1の110などの3D空間の画像がキャプチャされる期間内の特定の時間tに関連し得る(すなわちF)。フレーム175は通常、測定データの2D表現から成る。例えば、フレーム175は、時間tに記録されたピクセル値の2D配列または行列を含み得る。図1Cの実施例では、画像データ内の全てのフレーム175は同じサイズであるが、これは全ての実施例においてそうである必要はない。フレーム175内のピクセル値は、3D空間の特定の部分の測定を表す。図1Cでは、画像データは、単眼キャプチャデバイスからのシーンの複数のビューを表し、複数のビューのそれぞれは、異なる各時間tにキャプチャされたものである。しかし、他の事例では、キャプチャデバイス(すなわち画像キャプチャシステムまたはビデオキャプチャシステム)によりキャプチャされた画像データは、互いに同じ時間、または少なくとも部分的に重複する時間にキャプチャされたシーンの複数のビューを表し得る。これは、キャプチャデバイスがステレオキャプチャシステムである事例であり得る。 FIG. 1C schematically shows an example of a capture device configuration. In Example 160 of FIG. 1C, the capture device 165 is configured to generate image data 170. In FIG. 1C, the image data 170 includes a plurality of frames 175. Each plume 175 may be associated with a particular time t (ie, F t ) within the period in which an image in 3D space, such as 110 in FIG. 1, is captured. Frame 175 usually consists of a 2D representation of the measurement data. For example, frame 175 may include a 2D array or matrix of pixel values recorded at time t. In the embodiment of FIG. 1C, all frames 175 in the image data are the same size, but this does not have to be the case in all the embodiments. Pixel values in frame 175 represent measurements of specific parts of 3D space. In FIG. 1C, the image data represents a plurality of views of the scene from the monocular capture device, each of which is captured at different times t. However, in other cases, the image data captured by the capture device (ie, an image capture system or video capture system) represents multiple views of the scene captured at the same time, or at least partially overlapping, with each other. obtain. This can be the case where the capture device is a stereo capture system.

図1Cの実施例では、各フレーム175は、測光データを含む。測光データは通常、輝度、強度、色など、画像の測光特性を表す。図1Cでは、各フレーム175は、フレーム175の各ピクセルの強度値を含み、これは、例えばカラーバンドまたはカラーチャネルごとに0~255のグレースケールレベルまたは輝度レベルで記憶され得る。例えばグレースケールレベル0は最も暗い強度(例えば黒)に該当し、例えばグレースケールレベル255は最も明るい強度(例えば白)に該当し、グレースケールレベル0~255は、黒と白との間の中間強度に該当する。図1Cでは、測光データは、所与の解像度の赤、緑、青のピクセル強度値を表す。ゆえに、各フレーム175は、カラー画像を表し、フレーム内の各[x、y]ピクセル値は、RGBベクトル[R、G、B]を含む。一実施例として、カラーデータの解像度は、640×480ピクセルであり得る。他の実施例では、他のカラー空間が使用され得、及び/または測光データは、他の測光特性を表し得る。 In the embodiment of FIG. 1C, each frame 175 contains photometric data. Photometric data usually represents the photometric characteristics of an image, such as luminance, intensity, and color. In FIG. 1C, each frame 175 contains an intensity value for each pixel of frame 175, which may be stored, for example, at a grayscale level or luminance level of 0-255 per color band or color channel. For example, grayscale level 0 corresponds to the darkest intensity (eg black), for example grayscale level 255 corresponds to the brightest intensity (eg white), and grayscale levels 0-255 are between black and white. Corresponds to strength. In FIG. 1C, the photometric data represents red, green, and blue pixel intensity values at a given resolution. Therefore, each frame 175 represents a color image, and each [x, y] pixel value in the frame contains an RGB vector [R, G, B]. As an embodiment, the resolution of the color data can be 640 x 480 pixels. In other embodiments, other color spaces may be used and / or the photometric data may represent other photometric properties.

キャプチャデバイス165は、接続されたデータストレージデバイスに画像データ170を記憶するように構成され得る。別の事例では、キャプチャデバイス165は、画像データ170を、例えばデータストリームとして、またはフレームごとに、接続されたコンピューティングデバイスに送信し得る。接続されたコンピューティングデバイスは、例えばユニバーサルシリアルバス(USB)接続を介して直接接続され得る、または間接的に接続され得、例えば画像データ170は、1つ以上のコンピュータネットワークを介して送信され得る。さらに別の事例では、キャプチャデバイス165は、画像データ170を1つ以上のコンピュータネットワークを介して送信し、ネットワーク接続ストレージデバイスに記憶するように構成され得る。画像データ170は、フレームごとに、または例えば複数のフレームがまとめられ得るバッチベースで、記憶及び/または送信され得る。 The capture device 165 may be configured to store image data 170 in a connected data storage device. In another example, the capture device 165 may transmit the image data 170 to the connected computing device, for example as a data stream or frame by frame. Connected computing devices may be directly connected or indirectly connected, for example via a universal serial bus (USB) connection, eg image data 170 may be transmitted over one or more computer networks. .. In yet another example, the capture device 165 may be configured to transmit image data 170 over one or more computer networks and store it in a networked storage device. The image data 170 may be stored and / or transmitted frame by frame or, for example, on a batch basis where multiple frames can be combined.

画像データ170はまた、後述の実施例で使用される前に、1つ以上の前処理動作が実行され得る。一事例では、2つのフレーム集合が共通のサイズ及び解像度を有するように、前処理が適用され得る。 The image data 170 may also perform one or more preprocessing operations before being used in the embodiments described below. In one case, pretreatment may be applied so that the two sets of frames have a common size and resolution.

いくつかの事例では、キャプチャデバイス165は、画像データ形式でビデオデータを生成するように構成され得る。しかし、ビデオデータは、異なる各時間にキャプチャされた複数のフレームを同様に表し得る。一事例では、キャプチャデバイス165によりキャプチャされたビデオデータは、圧縮されたビデオストリームまたはファイルを含み得る。この事例では、例えばビデオデコーダの出力として、ストリームまたはファイルからビデオデータのフレームが再構成され得る。ビデオストリームまたはファイルの前処理に続いて、メモリ位置からビデオデータが取得され得る。 In some cases, the capture device 165 may be configured to generate video data in image data format. However, the video data may similarly represent multiple frames captured at different times. In one case, the video data captured by the capture device 165 may include a compressed video stream or file. In this case, a frame of video data may be reconstructed from a stream or file, for example as the output of a video decoder. Following video stream or file preprocessing, video data may be retrieved from memory location.

図1Cは実施例として提供され、後述の方法及びシステムで使用する画像データ170を生成するために、図に示される構成とは異なる構成を使用してもよいことが、理解されよう。画像データ170にはさらに、3D空間のキャプチャされたまたは記録されたビューを表す2次元形式で構成された任意の測定感覚入力が含まれ得る。例えば、これは、数ある中でも、測光データ、奥行きデータ電磁撮像、超音波撮像及びレーダ出力が挙げられ得る。これらの事例では、特定のデータ形式に関連付けられた撮像デバイス、例えば奥行きデータのないRGBデバイスのみが必要になり得る。 It will be appreciated that FIG. 1C is provided as an embodiment and may use a configuration different from that shown in the figure to generate the image data 170 for use in the methods and systems described below. The image data 170 may further include any measurement sensory input configured in two-dimensional format representing a captured or recorded view in 3D space. For example, this may include photometric data, depth data electromagnetic imaging, ultrasonic imaging and radar output, among others. In these cases, only imaging devices associated with a particular data format, such as RGB devices without depth data, may be required.

図2は、シーンの奥行きを推定するための例示的な画像処理システム200を示す。図2の画像処理システム200では、幾何学的再構成エンジンにより、第1の奥行き推定230、及び第1の奥行き推定230の不確実性測定235が生成される。第1の奥行き推定230、及び第1の奥行き推定230の不確実性測定235は、まとめて第1の奥行きデータ250と称され得る。幾何学的再構成エンジンは、例えばシーンの少なくとも2つの画像を処理することにより、第1の奥行き推定230を取得するように構成される。図1A~図1Cを参照して説明されたように、少なくとも2つの画像は、任意の好適なキャプチャデバイスを使用してキャプチャされ得、RGBデータなどの画像データとして表され得る。幾何学的再構成エンジンは、測光技法を利用して、第1の奥行き推定230を生成し得る。例えば、シーンの所与の部分の画像を取得するのに使用されたキャプチャデバイスの位置に関係なく、シーンの所与の部分は、同じ測光特性(輝度、強度、及び/または色など)を有するはずである。幾何学的再構成エンジンは、これを利用して、第1の奥行き推定230を生成し得る。一実施例として、幾何学的再構成エンジンは、異なるそれぞれの位置からキャプチャされた同一シーンの少なくとも2つの画像を処理して、測光誤差を最小化するシーンの所与の部分の奥行きを特定し得る。例えば、第1の奥行き推定230がシーンの所与の部分の実際の奥行きに最も近い時、測光誤差を最小化することができる。しかし、これは単なる例であり、他の実施例では、他の幾何学的技法を使用して第1の奥行き推定230が生成され得る。特に、例えば図2を参照して本明細書で説明される幾何学的再構成技法は、例えば単眼システムを使用して取得され得る2つの画像を使用するが、他の実施例、例えば単一ステレオ画像の事例では、1つ以上の画像が使用され得る。 FIG. 2 shows an exemplary image processing system 200 for estimating the depth of a scene. In the image processing system 200 of FIG. 2, the geometric reconstruction engine produces an uncertainty measurement 235 for the first depth estimation 230 and the first depth estimation 230. The first depth estimation 230 and the uncertainty measurement 235 of the first depth estimation 230 may be collectively referred to as the first depth data 250. The geometric reconstruction engine is configured to obtain a first depth estimate 230, for example by processing at least two images of the scene. As described with reference to FIGS. 1A-1C, at least two images can be captured using any suitable capture device and can be represented as image data such as RGB data. The geometric reconstruction engine may utilize a photometric technique to generate a first depth estimate 230. For example, regardless of the location of the capture device used to capture an image of a given part of the scene, the given part of the scene has the same photometric properties (such as brightness, intensity, and / or color). Should be. The geometric reconstruction engine can utilize this to generate a first depth estimate 230. As an embodiment, the geometric reconstruction engine processes at least two images of the same scene captured from different positions to determine the depth of a given portion of the scene that minimizes photometric error. obtain. For example, when the first depth estimation 230 is closest to the actual depth of a given portion of the scene, the photometric error can be minimized. However, this is merely an example, and in other embodiments, other geometric techniques may be used to generate the first depth estimate 230. In particular, the geometric reconstruction technique described herein with reference to, eg, FIG. 2, uses two images that can be obtained, eg, using a monocular system, but other embodiments, eg, single. In the case of stereo images, one or more images may be used.

いくつかの事例では、第1の奥行き推定230を生成する前に、シーンの2つ以上のビューを表す画像データが、カメラなどのキャプチャデバイスから取得される。このような事例では、第1の奥行き推定230を生成することは、カメラの姿勢推定を取得することと、少なくとも姿勢推定と画像データとの関数である測定誤差を最小化することにより、第1の奥行き推定230を生成することと、を含む。 In some cases, image data representing two or more views of the scene is obtained from a capture device such as a camera before generating the first depth estimation 230. In such cases, generating the first depth estimation 230 is first by acquiring the attitude estimation of the camera and at least minimizing the measurement error which is a function of the attitude estimation and the image data. To generate a depth estimate of 230, including.

カメラの姿勢推定は通常、画像データにより表される画像をキャプチャしている間のカメラの位置及び配向を示す。画像データが、例えばビデオのフレームに対応する一連のビューを表す場合、姿勢推定は、ビデオのフレームを通した経時的なカメラの位置及び配置を示し得る。例えば、画像データは、環境(部屋の内部など)の方々にカメラ(RGBカメラなど)を移動させることにより、取得され得る。従って、ビデオのフレームの少なくとも部分集合(ゆえに画像データにより表される画像の部分集合)は、フレームが記録された時間のカメラの位置及び配向を表す対応姿勢推定を有し得る。姿勢推定は、ビデオの全てのフレーム(または一連の画像の全ての画像)に存在するわけではないが、カメラが取得したビデオまたは複数の画像のうちの画像の部分集合の記録された時間範囲内の時間の部分集合に関して、特定され得る。 Camera pose estimation usually indicates the position and orientation of the camera while capturing the image represented by the image data. If the image data represents, for example, a series of views corresponding to a video frame, the pose estimation may indicate the position and placement of the camera over time through the video frame. For example, image data can be acquired by moving a camera (RGB camera, etc.) to people in the environment (inside the room, etc.). Thus, at least a subset of video frames (hence the subset of images represented by image data) may have a corresponding pose estimate that represents the position and orientation of the camera at the time the frame was recorded. Attitude estimation is not present in every frame of the video (or every image in a series of images), but within the recorded time range of a subset of the video or images acquired by the camera. Can be specified with respect to a subset of the time of.

カメラの姿勢推定を取得するために、様々な異なる方法が使用され得る。例えば、カメラの姿勢は、画像データを受信し姿勢を出力する既知のSLAMシステムを使用して推定され得、位置及び配向を示すカメラのセンサを使用して、及び/またはカスタム姿勢追跡方法を使用して、推定され得る。SLAMシステムでは、例えば、カメラの姿勢は、経時的にカメラがキャプチャした画像の処理に基づいて、推定され得る。 A variety of different methods can be used to obtain camera attitude estimates. For example, camera orientation can be estimated using a known SLAM system that receives image data and outputs attitude, using camera sensors that indicate position and orientation, and / or using custom attitude tracking methods. And can be estimated. In SLAM systems, for example, camera orientation can be estimated based on the processing of images captured by the camera over time.

少なくともポーズ推定と画像データとの関数である測光誤差を最小化することにより、第1の奥行き推定230を取得することができる。いくつかの事例では、マッピング関数を適用して、第1の画像(シーンの第1のビューに対応)のピクセルを、第2の画像(シーンの第2のビューに対応)の対応位置にマッピングして、第1の画像の再マッピングバージョンが取得され得る。このようなマッピング関数は、例えば、第1の画像をキャプチャしている間のカメラの推定姿勢と、第1の画像のピクセルの奥行きに依存する。次に、第1の画像の再マッピングバージョンのピクセルごとに、測光特性が特定され得る(例えば所与のピクセルの強度値を返す強度関数を使用して)。次に、同じ強度関数を使用して、(カメラにより取得された)第1の画像のピクセルごとに、対応する測光特性が特定され得る。所与の奥行きのピクセルに関連付けられた測光特性(ピクセル強度値など)は、カメラの姿勢とは無関係であるはずのため、第1の画像の再マッピングバージョン及び第1の画像自体の測光特性は、奥行きが正しく推定されると、同一になるはずである。このようにして、第1の画像のピクセルの奥行きは、反復的に変更され得、測光誤差(例えば第1の画像の測光特性と、第1の画像の再マッピングバージョンの測光特性との差に基づく)は、反復ごとに計算され得る。所与のピクセルについての第1の奥行き推定230は、このような測光誤差を最小化する奥行き値であると考えられ得る。実施例では、測光誤差最小化プロセス中に反復的に使用される奥行き推定は、画像のエピポーラ線に沿い得る。所与のピクセルについて奥行き推定が既に存在する場合(例えば所与のピクセルに対応するピクセルを有する前のフレームまたは画像から取得済みである場合)、測光誤差計算に反復的に入力される奥行き推定は、前の奥行き推定の所与の範囲内であり得、例えば前の奥行き推定に関連付けられた不確実性測定を2回プラスマイナスした範囲内であり得る。これは、奥行き値のより可能性のある範囲内で好適な奥行き値の検索に集中することにより、第1の奥行き推定230の生成の効率性を向上させ得る。いくつかの事例では、最小測光誤差に関連付けられた奥行き値に近い、または当該奥行き値を含む2つの隣接する奥行き値の間で、補間が実行され得る。第1の奥行き推定230を取得するための好適な方法が、2013年のInternational Conference on Computer Vision(ICCV)の議事録に掲載されたJ. Engel et al,による論文「Semi-Dense Visual Odometry for a Monocular Camera」に説明される。しかし、他の方法が代わりに使用されてもよい。 The first depth estimation 230 can be obtained by at least minimizing the photometric error, which is a function of the pose estimation and the image data. In some cases, a mapping function is applied to map the pixels of the first image (corresponding to the first view of the scene) to the corresponding positions of the second image (corresponding to the second view of the scene). Then, a remapping version of the first image can be obtained. Such a mapping function depends, for example, on the estimated attitude of the camera while capturing the first image and the pixel depth of the first image. Then, for each pixel of the remapped version of the first image, the photometric properties can be identified (eg, using an intensity function that returns the intensity value of a given pixel). The same intensity function can then be used to identify the corresponding photometric characteristics for each pixel of the first image (acquired by the camera). The photometric characteristics associated with pixels of a given depth (such as pixel intensity values) should be independent of the camera's orientation, so the remapping version of the first image and the photometric characteristics of the first image itself , If the depth is estimated correctly, it should be the same. In this way, the pixel depth of the first image can be iteratively changed to the difference between the photometric error (eg, the photometric characteristics of the first image and the photometric characteristics of the remapped version of the first image). Based on) can be calculated for each iteration. The first depth estimation 230 for a given pixel can be thought of as a depth value that minimizes such photometric errors. In the embodiment, the depth estimation used iteratively during the photometric error minimization process can be along the epipolar lines of the image. If a depth estimate already exists for a given pixel (eg, taken from a previous frame or image that has a pixel corresponding to a given pixel), the depth estimate that is iteratively entered into the metering error calculation , Can be within a given range of the previous depth estimation, eg, within the range of two plus or minus the uncertainty measurements associated with the previous depth estimation. This can improve the efficiency of the generation of the first depth estimation 230 by concentrating on the search for suitable depth values within a more likely range of depth values. In some cases, interpolation may be performed between two adjacent depth values that are close to or contain the depth value associated with the minimum metering error. A preferred method for obtaining the first depth estimate 230 was published in the minutes of the 2013 International Conference on Computer Vision (ICCV). Explained in the paper "Semi-Dense Visual Odometry for a Monocular Camera" by Angel et al. However, other methods may be used instead.

通常、第1の奥行き推定230に関連付けられた不確実性が存在する。不確実性は、例えば、第1の奥行き推定230が実際の奥行きに正しく対応する信頼度を表す。例えば、不確実性は、測光不確実性(キャプチャデバイスの測光解像度に制限され得るまたは依存し得る)に依存し得、測光不確実性は、第1の奥行き推定230が特定され得る精度を制限し得る。不確実性は、さらに、または代わりに、第1の奥行き推定230を生成するのに使用される方法と、第1の奥行き推定230の生成が補間プロセスを含む場合は隣接する補間点の間のステップサイズなど、この方法に関連付けられた任意の固有の不確実性とに依存し得る。不確実性は、第1の奥行き推定230に関連付けられた誤差に対応するとみなされ得る。図2の実施例では、幾何学的再構成エンジンは、第1の奥行き推定230、及び第1の奥行き推定230の不確実性測定235の両方を出力するように構成される。幾何学的再構成エンジンは、第1の奥行き推定230に対応する平均μと、不確実性測定235に対応する分散θとを含む配列または行列を生成するように構成され得るが、これは単なる例に過ぎない。平均及び分散は、画像全体、1つ以上の画像部分、画像のピクセルのうちの1つ以上に関して提供され得る。 Usually, there is uncertainty associated with the first depth estimation 230. Uncertainty represents, for example, the confidence that the first depth estimate 230 correctly corresponds to the actual depth. For example, uncertainty can depend on metering uncertainty (which can be limited or dependent on the metering resolution of the capture device), and metering uncertainty limits the accuracy with which the first depth estimate 230 can be identified. Can be. Uncertainty is further or instead between the method used to generate the first depth estimation 230 and the adjacent interpolation points if the generation of the first depth estimation 230 involves an interpolation process. It may depend on any inherent uncertainty associated with this method, such as step size. Uncertainty can be considered to correspond to the error associated with the first depth estimation 230. In the embodiment of FIG. 2, the geometric reconstruction engine is configured to output both the first depth estimation 230 and the uncertainty measurement 235 of the first depth estimation 230. The geometric reconstruction engine can be configured to generate an array or matrix containing the mean μ corresponding to the first depth estimate 230 and the variance θ corresponding to the uncertainty measurement 235, which is merely It's just an example. Mean and variance may be provided for the entire image, one or more image portions, one or more of the pixels of the image.

第1の奥行き推定230の生成が測光誤差の最小化(または他の最適化)を含む実施例では、第1の奥行き推定230に関連付けられた不確実性測定235は、第1の奥行き推定230を取得するための補間に使用された2つの奥行き値間の測光誤差の差に基づき、及びこれらの2つの奥行き値間の差に基づいて、ヤコビアン項Jを計算することにより取得され得る。このような事例では、第1の奥行き推定230の不確実性θgeoは、次のように考えられ得る。
θgeo=(JJ)-1
しかし、これは単なる例に過ぎず、他の実施例では、他の不確実性測定が使用され得る。
In an embodiment in which the generation of the first depth estimation 230 involves minimizing (or other optimization) the photometric error, the uncertainty measurement 235 associated with the first depth estimation 230 is the first depth estimation 230. Can be obtained by calculating the Jacobian term J based on the difference in photometric error between the two depth values used in the interpolation to obtain and based on the difference between these two depth values. In such a case, the uncertainty θ geo of the first depth estimation 230 can be considered as follows.
θ geo = (J T J) -1
However, this is just an example, and other uncertainty measurements may be used in other embodiments.

いくつかの事例では、第1の奥行き推定230は、複数のピクセルについての第1の奥行きマップであり得る。例えば、第1の奥行き推定230には、シーンの入力画像のピクセルごとの毎ピクセル奥行き推定が含まれ得る。ゆえに、入力画像の解像度と、第1の奥行き推定230に対応する第1の奥行きマップとは、同一であり得る。第1の奥行き推定230を生成する前に、入力画像に対し前処理が実行され得、これには、入力画像の解像度を変更することが含まれ得ることを、理解されたい。例えば、入力画像の解像度は、例えば画像をダウンサンプリングして、入力画像を処理するための計算要件を削減することにより、低下し得る。他の事例では、第1の奥行き推定230には、複数のピクセルに対する単一の奥行き値が含まれ得、入力画像の奥行き値とピクセルとは、一対多対応である。例えば、複数のピクセル、例えば同様の色または強度など同様の測光特性を有する画像が組み合わせられ得、奥行き値は、このピクセルの組み合わせに関して取得され得る。 In some cases, the first depth estimation 230 may be a first depth map for a plurality of pixels. For example, the first depth estimation 230 may include a pixel-by-pixel depth estimation for each pixel of the input image of the scene. Therefore, the resolution of the input image and the first depth map corresponding to the first depth estimation 230 can be the same. It should be appreciated that preprocessing may be performed on the input image prior to generating the first depth estimation 230, which may include changing the resolution of the input image. For example, the resolution of the input image can be reduced, for example by downsampling the image to reduce the computational requirements for processing the input image. In another example, the first depth estimation 230 may include a single depth value for a plurality of pixels, and the depth value of the input image and the pixel have a one-to-many correspondence. For example, multiple pixels, eg images with similar photometric properties such as similar color or intensity, may be combined and the depth value may be obtained for this pixel combination.

いくつかの事例では、第1の奥行き推定230は、いわゆる「中密度」奥行き推定であり得る。このような事例では、第1の奥行き推定230には、例えば入力画像(または複数の画像)でキャプチャされたような、シーンの部分の部分集合の奥行き推定が含まれ得る。例えば、中密度奥行き推定には、例えばシーンの2つ以上のビューの一部に対応する、シーンの2つ以上のビューを表す画像データ内のピクセルの一部の奥行き推定が含まれ得る。第1の奥行き推定230が取得されたシーンの部分は、いくつかの測光基準などのいくつかの画像基準を満たすピクセルの部分に対応し得る。例えば、第1の奥行き推定230は、十分な量の詳細または情報を含むと特定された画像の部分について、取得され得る。これは、例えば所与の領域にわたる測光特性(輝度または色など)の変化を示す画像勾配を計算することにより、特定され得る。画像勾配は、シーンの所与の領域にわたる奥行きの変化を示す奥行き勾配に対応し得る、または奥行き勾配の代用として使用され得る。例えばシーンの比較的小さい領域で奥行きの変化が比較的大きく、シーンの特徴豊富な部分に対応するなど、大量に詳細を有する画像領域では、画像勾配は通常、比較的大きい。他の事例では、第1の奥行き推定230は、いわゆる「低密度」奥行き推定であり得る。これらの事例では、第1の奥行き推定230は、特定の画像特徴に対応すると特定された画像の部分について、取得され得る。例えば、画像のキーポイントが特定され得、画像のキーポイントは通常、様々な視点、回転、スケール、及び照度から確実に位置特定可能であり得る画像内の特徴的位置に対応する。このような事例では、他の画像部分の奥行き推定を取得することなく、キーポイントを含む画像パッチについて、第1の奥行き推定230は取得され得る。さらなる別の事例では、第1の奥行き推定230は、画像または画像部分のコンテンツに関係なく、画像全体(または画像部分)について奥行き推定が取得される、いわゆる「高密度」奥行き推定であり得る。 In some cases, the first depth estimation 230 may be a so-called "medium density" depth estimation. In such cases, the first depth estimation 230 may include a depth estimation of a subset of parts of the scene, for example captured by an input image (or a plurality of images). For example, medium density depth estimation may include depth estimation of a portion of a pixel in image data representing two or more views of a scene, for example corresponding to a portion of two or more views of the scene. The portion of the scene from which the first depth estimation 230 has been obtained may correspond to a portion of pixels that meets some image criteria, such as some photometric criteria. For example, the first depth estimation 230 may be obtained for a portion of the image that has been identified as containing a sufficient amount of detail or information. This can be specified, for example, by calculating an image gradient that indicates a change in photometric characteristics (such as brightness or color) over a given area. The image gradient can correspond to a depth gradient that indicates a change in depth over a given area of the scene, or can be used as a substitute for a depth gradient. The image gradient is usually relatively large in an image region that has a large amount of detail, for example, in a relatively small region of the scene where the change in depth is relatively large and corresponds to a feature-rich portion of the scene. In other cases, the first depth estimation 230 may be a so-called "low density" depth estimation. In these cases, the first depth estimation 230 may be obtained for a portion of the image identified as corresponding to a particular image feature. For example, image keypoints can be identified, and image keypoints usually correspond to characteristic positions in the image that can be reliably repositioned from various viewpoints, rotations, scales, and illuminances. In such a case, the first depth estimation 230 can be obtained for the image patch containing the key points without obtaining the depth estimation of other image portions. In yet another example, the first depth estimation 230 may be a so-called "high density" depth estimation in which a depth estimation is obtained for the entire image (or image portion) regardless of the content of the image or image portion.

いくつかの事例では、第1の奥行き推定230の不確実性測定235は、第1の奥行き推定230と、同じ種類であり得る、または同じ解像度を含み得る。例えば、第1の奥行き推定230に入力画像のピクセルごとの奥行き推定が含まれる場合、ピクセルごとの対応する不確実性測定も存在し得る。反対に、第1の奥行き推定230に入力画像の複数のピクセルについての奥行き推定が含まれる場合、その複数のピクセルについての対応する不確実性測定も存在し得る。同様に、第1の奥行き推定230が低密度、中密度、または高密度である場合、不確実性測定235もそれぞれ、低密度、中密度、または高密度であり得る。しかし他の事例では、不確実性測定235の種類または解像度は、第1の奥行き推定230の種類または解像度とは異なり得る。 In some cases, the uncertainty measurement 235 of the first depth estimate 230 may be of the same type or contain the same resolution as the first depth estimate 230. For example, if the first depth estimation 230 includes a pixel-by-pixel depth estimation of the input image, there may also be a corresponding pixel-by-pixel uncertainty measurement. Conversely, if the first depth estimation 230 includes depth estimation for a plurality of pixels in the input image, there may also be a corresponding uncertainty measurement for the plurality of pixels. Similarly, if the first depth estimate 230 is low density, medium density, or high density, then the uncertainty measurement 235 can also be low density, medium density, or high density, respectively. However, in other cases, the type or resolution of the uncertainty measurement 235 may differ from the type or resolution of the first depth estimate 230.

図2の画像処理システム200はまた、第2の奥行き推定240、及び第2の奥行き推定240の不確実性測定245を生成するように構成され、第2の奥行き推定240、及び第2の奥行き推定240の不確実性測定245は、まとめて第2の奥行きデータ260と称され得る。第2の奥行きデータ260は、ニューラルネットワークアーキテクチャを使用して生成され得、ニューラルネットワークアーキテクチャは、奥行き推定及び関連する不確実性測定を予測するように、教師なし画像データまたは教師あり(すなわちラベル付けされた)画像データでトレーニングされ得る。様々な異なるニューラルネットワークアーキテクチャが使用され得る。例えば、ニューラルネットワークアーキテクチャには、複数の層を有するいわゆる「ディープ」ニューラルネットワークであり得る少なくとも1つの畳み込みニューラルネットワーク(CNN)が含まれ得る。 The image processing system 200 of FIG. 2 is also configured to generate a second depth estimation 240 and an uncertainty measurement 245 of the second depth estimation 240, the second depth estimation 240, and the second depth. The uncertainty measurement 245 of the estimation 240 may be collectively referred to as the second depth data 260. The second depth data 260 can be generated using a neural network architecture, which is unsupervised image data or supervised (ie labeled) to predict depth estimation and associated uncertainty measurements. Can be trained with image data. A variety of different neural network architectures can be used. For example, a neural network architecture may include at least one convolutional neural network (CNN), which can be a so-called "deep" neural network with multiple layers.

いくつかの実施例では、第1の奥行き推定230を生成する前に、シーンの1つ以上のビューを表す画像データが、カメラなどのキャプチャデバイスから取得され得る。このような事例では、第2の奥行き推定240を生成することは、ニューラルネットワークアーキテクチャで画像データを受信することを含み得る。画像データは、任意の好適な形式であり得、例えば、複数の異なる位置からキャプチャされたシーンの複数の2D画像を表し得る。次に、ニューラルネットワークアーキテクチャを使用して、画像部分の集合のそれぞれについて、奥行き推定が予測され、第2の奥行き推定240が生成され得る。画像部分の集合は、画像(もしくは複数の画像)の全体に、または画像もしくは複数の画像の部分集合に、対応し得る。 In some embodiments, image data representing one or more views of the scene may be obtained from a capture device, such as a camera, prior to generating the first depth estimation 230. In such cases, generating a second depth estimate 240 may include receiving image data in a neural network architecture. The image data can be in any suitable format and may represent, for example, multiple 2D images of the scene captured from a plurality of different locations. Next, using a neural network architecture, a depth estimate can be predicted for each set of image portions and a second depth estimate 240 can be generated. The set of image portions may correspond to the entire image (or a plurality of images), or to a subset of an image or a plurality of images.

第1の奥行き推定230と同様に、第2の奥行き推定240は、複数のピクセルについての第2の奥行きマップであり得、例えばシーンの入力画像の奥行き値とピクセルとは、一対一マッピングである。しかし、他の事例では、第2の奥行き推定240には、複数のピクセルについての単一の奥行き値が含まれ得、入力画像の奥行き値とピクセルとは、一対多対応である。さらに、第2の奥行き推定240は、低密度、中密度、または高密度の奥行き推定であり得る。一事例では、2つの奥行き推定は異なる密度を有し、例えば第1の奥行き推定230は中密度奥行き推定であり得、第2の奥行き推定240は、高密度奥行き推定であり得る。さらに、第1の奥行き推定230を参照して説明されたように、第2の奥行き推定240の不確実性測定245の種類または解像度は、第2の奥行き推定240の種類または解像度と、同一であり得る、または異なり得る。 Similar to the first depth estimation 230, the second depth estimation 240 can be a second depth map for a plurality of pixels, for example, the depth values and pixels of the input image of the scene are one-to-one mappings. .. However, in other cases, the second depth estimation 240 may include a single depth value for a plurality of pixels, and the depth value of the input image and the pixel have a one-to-many correspondence. Further, the second depth estimation 240 may be a low density, medium density, or high density depth estimation. In one example, the two depth estimates have different densities, for example the first depth estimate 230 may be a medium density depth estimate and the second depth estimate 240 may be a high density depth estimate. Further, as described with reference to the first depth estimation 230, the type or resolution of the uncertainty measurement 245 of the second depth estimation 240 is the same as the type or resolution of the second depth estimation 240. It can or can be different.

図2の画像処理システム200は、融合エンジン270を含み、融合エンジン270は、幾何学的再構成エンジンからの第1の奥行き推定230と、第1の奥行き推定230の不確実性測定235と、ニューラルネットワークアーキテクチャからの第2の奥行き推定240と、第2の奥行き推定240の不確実性測定245と、を受信するように構成される。融合エンジン270は、第1の奥行き推定230の不確実性測定235と、第2の奥行き推定240の不確実性測定245とを使用して、第1の奥行き推定230と第2の奥行き推定240とを確率的に融合させて、シーンの融合奥行き推定280を出力するように構成される。このようにして、第1の奥行き推定230及び第2の奥行き推定240の両方が融合奥行き推定280に寄与し、これにより、第1の奥行き推定230または第2の奥行き推定240を単独で使用した場合と比べて、融合奥行き推定280の精度が向上し得る。 The image processing system 200 of FIG. 2 includes a fusion engine 270, which includes a first depth estimation 230 from a geometric reconstruction engine and an uncertainty measurement 235 of the first depth estimation 230. It is configured to receive a second depth estimate 240 from the neural network architecture and an uncertainty measurement 245 of the second depth estimate 240. The fusion engine 270 uses the uncertainty measurement 235 of the first depth estimation 230 and the uncertainty measurement 245 of the second depth estimation 240 to use the first depth estimation 230 and the second depth estimation 240. And are stochastically fused to output the fusion depth estimation 280 of the scene. In this way, both the first depth estimation 230 and the second depth estimation 240 contributed to the fusion depth estimation 280, whereby the first depth estimation 230 or the second depth estimation 240 was used alone. Compared with the case, the accuracy of the fusion depth estimation 280 can be improved.

例えば、第1の奥行き推定230の不確実性(幾何学的制約に基づく)は、低テクスチャのシーンの領域で、例えば壁などの奥行きが比較的変化しない、または奥行きが少しずつ変化するシーンの領域で、より高くなり得る。さらに、付加的または代替的に、第1の奥行き推定230は、シーンの一部が部分的に遮られている領域では、比較的不確実であり得る。対照的に、第2の奥行き推定240(ニューラルネットワークアーキテクチャにより取得される)は、曖昧な領域(例えば低テクスチャの領域)では、第1の奥行き推定230より不確実性が低くあり得るが、高テクスチャ領域では、高テクスチャ領域が第1の奥行き推定230により正確にキャプチャされたにもかかわらず、第2の奥行き推定240は精度が低くなり得る。不確実性測定235及び不確実性測定245の使用は、例えば第1の奥行き推定230及び第2の奥行き推定240のそれぞれを、それらの相対的な不確実性に基づいて、好適にバランスをとって融合奥行き推定280に寄与させることにより、第1の奥行き推定230と第2の奥行き推定240との確率的融合を補助する。例えば、第1の奥行き推定230に関連付けられた不確実性測定235が、第2の奥行き推定240に関連付けられた不確実性測定245よりも高いシーンの領域では、第2の奥行き推定240が、第1の奥行き推定230よりも大きく融合奥行き推定280に寄与し得る。さらに、全体的な一貫性を維持することができるため、融合奥行き推定280は、選ばれた局所的なシーン領域だけでなく、全体的なレベルでシーンの奥行きを正確にキャプチャする。 For example, the uncertainty of the first depth estimate 230 (based on geometric constraints) is in areas of low textured scenes, such as walls where the depth is relatively unchanged or the depth changes little by little. In the area, it can be higher. In addition, additional or alternative, the first depth estimation 230 can be relatively uncertain in areas where part of the scene is partially obstructed. In contrast, the second depth estimate 240 (obtained by the neural network architecture) may be less uncertain than the first depth estimate 230 in ambiguous regions (eg, low textured regions), but is higher. In the textured area, the second depth estimation 240 may be less accurate, even though the high texture area was accurately captured by the first depth estimation 230. The use of uncertainty measurement 235 and uncertainty measurement 245 favorably balances, for example, the first depth estimation 230 and the second depth estimation 240, respectively, based on their relative uncertainties. By contributing to the fusion depth estimation 280, the stochastic fusion of the first depth estimation 230 and the second depth estimation 240 is assisted. For example, in areas of the scene where the uncertainty measurement 235 associated with the first depth estimation 230 is higher than the uncertainty measurement 245 associated with the second depth estimation 240, the second depth estimation 240 may be: It can contribute to the fusion depth estimation 280 larger than the first depth estimation 230. In addition, because overall consistency can be maintained, the Fusion Depth Estimate 280 accurately captures the depth of the scene at the overall level, not just the selected local scene area.

いくつかの事例では、第1の奥行き推定230は、中密度奥行き推定であり、第2の奥行き推定240及び融合奥行き推定280はそれぞれ、高密度奥行き推定を含む。例えば、第1の奥行き推定230が適切に正確となり得る十分なテクスチャを有するシーンの部分について、第1の奥行き推定230は取得され得る。このような事例では、第1の奥行き推定230は、テクスチャが足りないシーンの他の部分については、取得され得ない。しかし、第2の奥行き推定240は、画像(または画像部分)でキャプチャされたシーン全体について取得され得る。ゆえに、このような事例では、第1の奥行き推定230と第2の奥行き推定240とを融合させることにより、融合奥行き推定280も、画像でキャプチャされたシーン全体について取得され得る。このような事例では、融合奥行き推定280の一部分は、第1の奥行き推定230及び第2の奥行き推定240の両方を融合させることにより、取得され得る(例えば融合奥行き推定280の一部分は、シーンのテクスチャの多い部分に対応する)。しかし、融合奥行き推定280の異なる部分は、第2の奥行き推定240からのみ取得され得る(例えば融合奥行き推定280の一部分はシーンの滑らかな部分に対応するため、第1の奥行き推定230は信頼性が低くなり得る)。 In some cases, the first depth estimation 230 is a medium density depth estimation, and the second depth estimation 240 and the fusion depth estimation 280 each include a high density depth estimation. For example, the first depth estimation 230 may be obtained for a portion of the scene that has sufficient texture for which the first depth estimation 230 can be reasonably accurate. In such cases, the first depth estimation 230 cannot be obtained for other parts of the scene where the texture is lacking. However, the second depth estimation 240 may be obtained for the entire scene captured in the image (or image portion). Therefore, in such cases, by fusing the first depth estimation 230 and the second depth estimation 240, the fusion depth estimation 280 can also be obtained for the entire scene captured in the image. In such cases, a portion of the fusion depth estimation 280 can be obtained by fusing both the first depth estimation 230 and the second depth estimation 240 (eg, a portion of the fusion depth estimation 280 is of the scene. Corresponds to areas with many textures). However, different parts of the fusion depth estimation 280 can only be obtained from the second depth estimation 240 (eg, because a portion of the fusion depth estimation 280 corresponds to a smooth portion of the scene, the first depth estimation 230 is reliable. Can be low).

第1の奥行き推定230と第2の奥行き推定240とを確率的に融合させるために、様々な異なる方法が使用され得る。例えば、第1の奥行き推定230及び第2の奥行き推定240、並びに不確実性測定235及び不確実性測定245に基づくコスト関数は、第1の奥行き推定230と第2の奥行き推定240を確率的に融合させて、融合奥行き推定280を取得するために、最適化され得る。コスト関数の最小値が取得される融合奥行き推定280を取得するように、コスト関数の最適化は、異なる入力奥行き推定でコスト関数の値を反復的に計算することを含み得る。コスト関数は、代替的に、損失関数または誤差関数と称され得る。 A variety of different methods can be used to stochastically fuse the first depth estimation 230 and the second depth estimation 240. For example, a cost function based on a first depth estimate 230 and a second depth estimate 240, as well as an uncertainty measurement 235 and an uncertainty measurement 245 probabilistically makes a first depth estimate 230 and a second depth estimate 240. Can be optimized to obtain a fusion depth estimate of 280. Cost function optimization may include iteratively calculating the value of the cost function with different input depth estimates, such as obtaining a fusion depth estimate 280 from which the minimum value of the cost function is obtained. The cost function can be referred to as a loss function or an error function instead.

図2の実施例では、コスト関数は、第1の奥行き推定230に関連付けられた第1のコスト項と、第2の奥行き推定240に関連付けられた第2のコスト項とを含む。第1のコスト項は、融合奥行き推定値と、第1の奥行き推定値(例えば幾何学的再構成エンジンから取得された第1の奥行き推定230から得られる)と、第1の奥行き推定230の不確実性値(例えば第1の奥行き推定230の不確実性測定235から得られる)との関数を含む。同様に、第2のコスト項は、融合奥行き推定値と、第2の奥行き推定値(例えばニューラルネットワークアーキテクチャから取得された第2の奥行き推定240から得られる)と、第2の奥行き推定240の不確実性値(例えば第2の奥行き推定240の不確実性測定245から得られる)との関数を含む。コスト関数を最適化して、融合エンジン270により出力される融合奥行き推定280を形成する融合奥行き推定値が特定される。これは、例えば、融合奥行き推定値を反復的に変更して、コスト関数を最適化する融合奥行き推定値を特定することを含む。例えば、コスト関数は、その値が事前に定義された基準を満たす場合、例えばその値が事前に定義された最小値以下である場合、最適化されたとみなすことができる。他の事例では、コスト関数の最適化は、コスト関数の最小化を含み得る。このようにして、第1の奥行き推定230及び第2の奥行き推定240、並びに不確実性測定235及び不確実性測定245の両方が、取得される融合奥行き推定280に対する制約として機能して、融合奥行き推定280の精度が向上する。 In the embodiment of FIG. 2, the cost function includes a first cost term associated with the first depth estimation 230 and a second cost term associated with the second depth estimation 240. The first cost term is a fusion depth estimate, a first depth estimate (eg, obtained from a first depth estimate 230 obtained from a geometric reconstruction engine), and a first depth estimate 230. It includes a function with an uncertainty value (eg, obtained from the uncertainty measurement 235 of the first depth estimate 230). Similarly, the second cost term is a fusion depth estimate, a second depth estimate (eg, obtained from a second depth estimate 240 obtained from a neural network architecture), and a second depth estimate 240. It includes a function with an uncertainty value (eg, obtained from the uncertainty measurement 245 of the second depth estimate 240). The cost function is optimized to identify the fusion depth estimates that form the fusion depth estimation 280 output by the fusion engine 270. This involves, for example, iteratively modifying the fusion depth estimate to identify the fusion depth estimate that optimizes the cost function. For example, a cost function can be considered optimized if its value meets a predefined criterion, for example if its value is less than or equal to a predefined minimum. In other cases, cost function optimization may include cost function minimization. In this way, both the first depth estimation 230 and the second depth estimation 240, as well as the uncertainty measurement 235 and the uncertainty measurement 245, serve as constraints on the fusion depth estimation 280 to be acquired and fused. The accuracy of the depth estimation 280 is improved.

しかし、コスト関数の使用は単なる例に過ぎないことが、理解されよう。他の実施例では、第1の奥行き推定と第2の奥行き推定とは、異なる方法で、不確実性測定を使用して、確率的に融合され得る。 However, it will be understood that the use of cost functions is just an example. In other embodiments, the first depth estimation and the second depth estimation can be stochastically fused using uncertainty measurements in different ways.

従って、本明細書のいくつかの実施例は、シーンの奥行き推定の正確な再構成を提供し、よって、ロボットデバイスと実世界環境とのインタラクションを促進する。具体的には、本明細書のいくつかの実施例は、リアルタイムまたはほぼリアルタイムの動作を可能にし(他の奥行き推定手法とは対照的に)、屋外及び屋内の場所を含む様々な異なる環境におけるシーンの奥行き推定を提供するように、設計される。 Accordingly, some embodiments herein provide an accurate reconstruction of the depth estimation of the scene, thereby facilitating the interaction between the robotic device and the real-world environment. Specifically, some embodiments herein enable real-time or near-real-time operation (as opposed to other depth estimation techniques) and in a variety of different environments, including outdoor and indoor locations. Designed to provide depth estimation for the scene.

図3は、さらなる実施例による、画像処理システム300の概略図である。図3の画像処理システム300は、様々な点で図2の画像処理システム200と類似する。図2の機能と同じ図3の対応する機能には、同じ参照番号がつけられるが、100だけ増分される。 FIG. 3 is a schematic diagram of the image processing system 300 according to a further embodiment. The image processing system 300 of FIG. 3 is similar to the image processing system 200 of FIG. 2 in various respects. The corresponding function of FIG. 3, which is the same as the function of FIG. 2, is given the same reference number, but is incremented by 100.

図3では、融合エンジン370は、第1の奥行き推定、第2の奥行き推定、及び不確実性測定に加えて、表面配向推定320、及び表面配向推定320の不確実性測定325を受信するように構成される。融合エンジン370は、表面配向推定320、及び表面配向推定320の不確実性測定325を使用して、第1の奥行き推定と第2の奥行き推定とを確率的に融合させるように構成される。 In FIG. 3, the fusion engine 370 is configured to receive a surface orientation estimation 320 and an uncertainty measurement 325 of the surface orientation estimation 320 in addition to the first depth estimation, the second depth estimation, and the uncertainty measurement. It is composed of. The fusion engine 370 is configured to stochastically fuse the first depth estimation and the second depth estimation using the surface orientation estimation 320 and the uncertainty measurement 325 of the surface orientation estimation 320.

例えば、表面配向推定320は、キャプチャデバイスによりキャプチャされたシーンの画像のピクセルまたは他の画像領域に対応する表面の方向または傾斜を示す。例えば、表面の配向は、キャプチャデバイスによりキャプチャされたシーンの画像のピクセルまたは他の画像領域の表面の配向角度をキャプチャするとみなされ得る。例えば、表面配向は、所与の表面に垂直な軸である表面法線に対応する。他の事例では、表面配向推定320は、表面勾配、例えば表面の変化度の測定に対応し得る。複数のピクセルの表面配向を使用して、複数のピクセルに対応する表面の特質の指標が取得され得る。例えば、比較的滑らかで変化のない表面は、比較的一定の表面配向を有し得る。反対に、高テクスチャの表面は、様々な異なる表面配向に関連付けられ得る。 For example, the surface orientation estimation 320 indicates the orientation or tilt of the surface corresponding to the pixels or other image areas of the image of the scene captured by the capture device. For example, surface orientation can be considered to capture the surface orientation angle of pixels or other image areas of the image of the scene captured by the capture device. For example, surface orientation corresponds to a surface normal, which is the axis perpendicular to a given surface. In other cases, the surface orientation estimation 320 may accommodate measurements of surface gradients, such as surface changes. Using the surface orientation of multiple pixels, an index of surface properties corresponding to multiple pixels can be obtained. For example, a relatively smooth and unchanged surface can have a relatively constant surface orientation. Conversely, highly textured surfaces can be associated with a variety of different surface orientations.

表面配向推定320、及び表面配向推定320の不確実性測定325は、様々な異なる方法で取得され得る。例えば、シーンの画像は、例えば画像のピクセルのピクセル強度値などの測光特性の変化に基づいて、表面配向推定320及び表面配向推定320の不確実性測定325を特定するように処理され得る。 The surface orientation estimation 320 and the uncertainty measurement 325 of the surface orientation estimation 320 can be obtained by various different methods. For example, the image of the scene may be processed to identify the uncertainty measurement 325 of the surface orientation estimation 320 and the surface orientation estimation 320 based on changes in photometric properties, such as pixel intensity values of the pixels of the image.

図4は、さらなる別の実施例による、画像処理システム400の概略図である。図4の画像処理システム400は、様々な点で図3の画像処理システム300と類似するが、幾何学的再構成エンジン430及びニューラルネットワークアーキテクチャ420を明確に例示する。 FIG. 4 is a schematic diagram of the image processing system 400 according to still another embodiment. The image processing system 400 of FIG. 4 is similar to the image processing system 300 of FIG. 3 in many respects, but clearly illustrates the geometric reconstruction engine 430 and the neural network architecture 420.

図4では、ビデオデータのフレーム410が受信される。フレーム410は、例えばカメラなどのキャプチャデバイスによりキャプチャされ、シーンのビューを含む。他の事例では、図4の画像処理システム400を使用して、ビデオを表すビデオデータではなく、静止画像を表す画像データが処理され得ることを、理解されたい。 In FIG. 4, the frame 410 of the video data is received. Frame 410 is captured by a capture device such as a camera and includes a view of the scene. It should be appreciated that in other cases, the image processing system 400 of FIG. 4 can be used to process image data representing still images rather than video data representing video.

フレーム410は、幾何学的再構成エンジン430及びニューラルネットワークアーキテクチャ420により処理される。幾何学的再構成エンジン430及びニューラルネットワークアーキテクチャ420は、図2を参照して説明されたように、第1の奥行きデータ450及び第2の奥行きデータ460を生成するように構成され得る。 The frame 410 is processed by the geometric reconstruction engine 430 and the neural network architecture 420. The geometric reconstruction engine 430 and the neural network architecture 420 may be configured to generate a first depth data 450 and a second depth data 460, as described with reference to FIG.

図4の実施例では、第2の奥行きデータ460は、表面配向推定、及び表面配向推定の不確実性測定を含む。この実施例では、表面配向推定、及び表面配向推定の不確実性測定は、第2の奥行き推定、及び第2の奥行き推定の不確実性測定に加えて、ニューラルネットワークアーキテクチャ420により生成される。 In the embodiment of FIG. 4, the second depth data 460 includes surface orientation estimation and uncertainty measurement of surface orientation estimation. In this embodiment, the surface orientation estimation and the uncertainty measurement of the surface orientation estimation are generated by the neural network architecture 420 in addition to the second depth estimation and the second depth estimation uncertainty measurement.

図4のニューラルネットワークアーキテクチャ420は、1つ以上のニューラルネットワークを含み得、図4に示されるフレーム410などのビデオデータのフレームのピクセル値を受信するように構成される。ニューラルネットワークアーキテクチャ420は、第2の奥行き推定を生成するために、画像部分の第1の集合のそれぞれについて奥行き推定を予測し、並びに画像部分の第2の集合のそれぞれについて少なくとも1つの表面配向推定を予測するように構成される。画像部分の第1の集合は、画像部分の第2の集合と同じであってもよく、異なっていてもよい。例えば、画像部分の第1の集合と第2の集合は、完全に重複している、部分的に重複している、または全く重複していない場合がある。奥行き推定及び少なくとも1つの表面配向は、異なるそれぞれの解像度で取得され得る。このような事例では、奥行き推定及び少なくとも1つの表面配向のうちの一方または両方の解像度は、その後、所望の解像度を得るために、例えば補間により、変更され得る。例えば、少なくとも1つの表面配向は、奥行き推定よりも低い解像度で取得され得るが、その後、奥行き推定と同じ解像度にアップスケーリングされ得る。ニューラルネットワークアーキテクチャ420はまた、各奥行き推定に関連付けられた1つ以上の不確実性測定と、各表面配向推定に関連付けられた1つ以上の不確実性測定とを予測するように構成される。 The neural network architecture 420 of FIG. 4 may include one or more neural networks and is configured to receive frame pixel values of video data such as frame 410 shown in FIG. The neural network architecture 420 predicts a depth estimate for each of the first sets of image parts and at least one surface orientation estimate for each of the second sets of image parts to generate a second depth estimate. Is configured to predict. The first set of image portions may be the same as or different from the second set of image portions. For example, the first set and the second set of image parts may be completely overlapped, partially overlapped, or not overlapped at all. Depth estimation and at least one surface orientation can be obtained at different resolutions. In such cases, the resolution of one or both of the depth estimation and at least one surface orientation can then be modified, for example by interpolation, to obtain the desired resolution. For example, at least one surface orientation can be obtained at a lower resolution than the depth estimate, but can then be upscaled to the same resolution as the depth estimate. The neural network architecture 420 is also configured to predict one or more uncertainty measurements associated with each depth estimation and one or more uncertainty measurements associated with each surface orientation estimation.

第1の奥行きデータ450と第2の奥行きデータ460とは、融合エンジン470を使用して確率的に融合され、融合奥行き推定480が取得される。図では、融合エンジン470は、少なくとも1つの表面配向も使用して、融合奥行き推定480を取得する。融合奥行き推定480を取得するためにコスト関数が最適化される実施例では、コスト関数は、少なくとも1つの表面配向推定に関連付けられた第3のコスト項を含み得る。このような事例では、第3のコスト項は、融合奥行き推定値、表面配向推定値(例えばニューラルネットワークアーキテクチャ420から取得される)、及び少なくとも1つの表面配向推定ごとの不確実性値(例えば表面配向推定ごとの不確実性測定から得られる)の関数を含み得る。例えば、第3のコスト項は、表面配向推定ごとのコスト項の合計を含み得る。コスト関数の最適化は、図2に関して説明されたとおりであり得るが、表面配向情報が追加されている。 The first depth data 450 and the second depth data 460 are stochastically fused using the fusion engine 470 to obtain a fusion depth estimation 480. In the figure, the fusion engine 470 also uses at least one surface orientation to obtain a fusion depth estimate of 480. In an embodiment where the cost function is optimized to obtain a fusion depth estimate 480, the cost function may include a third cost term associated with at least one surface orientation estimate. In such cases, the third cost term is a fusion depth estimate, a surface orientation estimate (eg, obtained from the neural network architecture 420), and an uncertainty value per at least one surface orientation estimate (eg, surface). It may include a function) (obtained from uncertainty measurements for each orientation estimation). For example, the third cost term may include the sum of the cost terms for each surface orientation estimation. The cost function optimization may be as described for FIG. 2, but with the addition of surface orientation information.

表面配向情報を使用して融合奥行き推定480を取得することにより、融合奥行き推定480の精度は、さらに向上し得る。例えば、表面配向推定(及びその関連する不確実性測定)は、所与のピクセルとその隣接ピクセルとの間の制約を課し得る。このようにして、融合奥行き推定480の全体的な一貫性は向上し得る。 By acquiring the fusion depth estimation 480 using the surface orientation information, the accuracy of the fusion depth estimation 480 can be further improved. For example, surface orientation estimation (and its associated uncertainty measurements) can impose constraints between a given pixel and its adjacent pixels. In this way, the overall consistency of the fusion depth estimate 480 can be improved.

図5は、実施例500による、表面配向推定320及び表面配向推定320の不確実性測定325を示す概略図である。図5では、表面配向推定320は、第1の方向(この事例ではx軸に沿った方向)の奥行き勾配推定510と、第1の方向に直交する方向(デカルト座標系が存在するこの事例ではy軸に沿った方向)の奥行き勾配推定520とを含む。 FIG. 5 is a schematic view showing the uncertainty measurement 325 of the surface orientation estimation 320 and the surface orientation estimation 320 according to the example 500. In FIG. 5, the surface orientation estimation 320 has a depth gradient estimation 510 in the first direction (direction along the x-axis in this case) and a direction orthogonal to the first direction (in this case where a Cartesian coordinate system exists). Includes a depth gradient estimate of 520 (in the direction along the y-axis).

例えば、所与の方向の奥行き勾配推定は、その所与の方向におけるシーン(例えば画像でキャプチャされたシーン)の奥行きの変化の推定を表す。奥行き勾配推定を使用して、シーンの画像における奥行きの急速なまたは特有の変化が特定され得る。例えば、シーンの一部分にわたり奥行きが異なるシーンの当該一部分に対応する画像の領域では、奥行き勾配は比較的高くなり得る。反対に、カメラに対して比較的一定の奥行きに存在するシーンの別の一部分に対応する画像の他の領域では、奥行き勾配は比較的低くなり得る。2つの異なる方向(互いに直交する、すなわち垂直である2つの方向など)の奥行き勾配を推定することにより、画像でキャプチャされたシーンの奥行き特性は、より正確及び/またはより効率的に特定され得る。 For example, a depth gradient estimate in a given direction represents an estimate of the change in depth of a scene (eg, a scene captured in an image) in that given direction. Depth gradient estimation can be used to identify rapid or distinctive changes in depth in an image of a scene. For example, the depth gradient can be relatively high in the region of the image corresponding to that portion of the scene that has different depths across a portion of the scene. Conversely, depth gradients can be relatively low in other areas of the image that correspond to another portion of the scene that resides at a relatively constant depth with respect to the camera. By estimating depth gradients in two different directions (such as two directions that are orthogonal to each other, that is, perpendicular to each other), the depth characteristics of the scene captured in the image can be identified more accurately and / or more efficiently. ..

他の実施例では、表面配向推定320は、奥行き配向推定510、520に加えて、またはこれらの代わりに、他の配向推定を含み得る。例えば、表面配向推定320は、表面法線推定を含み得る。 In other embodiments, the surface orientation estimation 320 may include other orientation estimates in addition to or in place of the depth orientation estimates 510 and 520. For example, the surface orientation estimation 320 may include a surface normal estimation.

図5のように、いくつかの事例では、表面配向推定ごとに対応する不確実性測定が存在する。ゆえに、図5では、第1の方向の奥行き勾配推定510に関連付けられた第1の不確実性測定530と、第1の方向に直交する方向の奥行き勾配推定520に関連付けられた第2の不確実性測定540とが存在する。 As shown in FIG. 5, in some cases, there is a corresponding uncertainty measurement for each surface orientation estimation. Therefore, in FIG. 5, the first uncertainty measurement 530 associated with the depth gradient estimation 510 in the first direction and the second uncertainty associated with the depth gradient estimation 520 in the direction orthogonal to the first direction. There is a certainty measurement 540.

各表面配向推定の不確実性測定は、様々な異なる方法で生成され得る。例えば、ニューラルネットワークアーキテクチャ(融合エンジンにより第1の奥行き推定と確率的に融合される第2の奥行き推定を生成するのに使用され得る)は、表面配向推定、及び各表面配向推定に関連付けられた対応する不確実性測定を生成するようにトレーニングされ得る。 Uncertainty measurements for each surface orientation estimate can be generated in a variety of different ways. For example, a neural network architecture (which can be used to generate a second depth estimate that is stochastically fused with a first depth estimate by a fusion engine) has been associated with surface orientation estimates, and each surface orientation estimation. It can be trained to produce the corresponding uncertainty measurement.

いくつかの事例では、第2の奥行き推定及び/または表面配向推定(複数可)は、対数推定であり得る。これは、負の値に数値的意味があるため、ニューラルネットワークアーキテクチャによるこれらの推定の生成が促進され得る。さらに、2つの対数奥行きの差(例えば対数奥行きの勾配に対応する)は、スケールが不変である2つの奥行きの比率に対応する。さらに、対数奥行き勾配が2つの直交方向で予測される場合(図5の実施例のように)、第1の奥行き推定と第2の奥行き推定との確率的融合(例えば対数奥行き勾配を使用する)は、線形であり、ドット積及び正規化動作なしで実行され得る。ゆえに、他の場合よりも効率的に融合プロセスを実行することができる。 In some cases, the second depth estimation and / or surface orientation estimation (s) can be logarithmic estimation. This can facilitate the generation of these estimates by the neural network architecture, as negative values have numerical implications. Moreover, the difference between the two log depths (eg, corresponding to the gradient of the log depth) corresponds to the ratio of the two depths whose scale is invariant. Further, if the log depth gradient is predicted in two orthogonal directions (as in the embodiment of FIG. 5), a probabilistic fusion of the first depth estimation and the second depth estimation (eg, using the log depth gradient). ) Is linear and can be performed without dot product and normalization actions. Therefore, the fusion process can be executed more efficiently than in other cases.

図6は、さらなる別の実施例による、画像処理システム600の概略図である。画像処理システム600は、単眼キャプチャデバイス605を含み、これは、シーンの画像をキャプチャするキャプチャデバイスまたはカメラの実施例である。単眼キャプチャデバイス605は、シーンのビデオを表すビデオデータをキャプチャするように構成される。シーンは、ビデオの第1のフレームでキャプチャされ、これは、図6の実施例では、キーフレーム610と称され得る。キーフレーム610は、例えば、より完全な奥行き推定が取得されるビデオのフレームに対応し、例えば、以前に奥行きが推定されていないシーンの新たな部分、または他の部分よりも特徴が豊富であると識別されたシーンの部分に対応する、またはそのような部分を含む。例えば、以前に奥行き推定が取得されていないビデオの第1のフレームは、キーフレームとみなされ得る。キーフレームは、例えば外部SLAMシステムなどの外部システムにより指定されたキーフレームであり得る。他の事例では、単眼キャプチャデバイス605が閾値距離を超える距離を移動した後に得られるフレームが、キーフレームであり得る。単眼キャプチャデバイス605によりキャプチャされた他のフレームは、参照フレーム615とみなされ得る。 FIG. 6 is a schematic diagram of the image processing system 600 according to still another embodiment. The image processing system 600 includes a monocular capture device 605, which is an embodiment of a capture device or camera that captures an image of a scene. The monocular capture device 605 is configured to capture video data representing a video of the scene. The scene is captured in the first frame of the video, which may be referred to as key frame 610 in the embodiment of FIG. The keyframe 610 corresponds, for example, to a frame of video for which a more complete depth estimate is obtained, and is more feature-rich than, for example, a new part or other part of the scene where the depth was not previously estimated. Corresponds to, or includes, the portion of the scene identified as. For example, the first frame of a video for which depth estimation has not been previously obtained can be considered a key frame. The keyframe can be a keyframe designated by an external system, for example an external SLAM system. In another case, the frame obtained after the monocular capture device 605 travels a distance that exceeds the threshold distance may be a key frame. Other frames captured by the monocular capture device 605 can be considered as reference frame 615.

図6の実施例において単眼キャプチャデバイス605によりキャプチャされたフレームは(キーフレーム610であるか、参照フレーム615であるかに関係なく)、追跡システム625を使用して処理される。追跡システム625は、シーンを観察している間(例えばフレームをキャプチャしている間)の単眼キャプチャデバイス605の姿勢を特定するために使用される。図2を参照して説明されたように、追跡システム625は、動作センサを含み得、これは、単眼キャプチャデバイス605に接続された、または単眼キャプチャデバイス605を支持するロボットデバイスを動かすように構成されたアクチュエータに接続され得る、またはアクチュエータの一部を形成し得る。このように、追跡システム625は、オドメトリデータをキャプチャし、オドメトリデータを処理して、単眼キャプチャデバイス605の姿勢推定を生成し得る。 The frames captured by the monocular capture device 605 in the embodiment of FIG. 6 (whether keyframes 610 or reference frames 615) are processed using the tracking system 625. The tracking system 625 is used to identify the posture of the monocular capture device 605 while observing the scene (eg while capturing a frame). As described with reference to FIG. 2, the tracking system 625 may include a motion sensor, which is configured to move a robotic device connected to or supporting the monocular capture device 605. It can be connected to the actuator or can form part of the actuator. Thus, the tracking system 625 may capture the odometry data and process the odometry data to generate a pose estimation for the monocular capture device 605.

図6では、追跡システム625は、参照フレーム615をキャプチャしている間の単眼キャプチャデバイス605の姿勢の推定640と、キーフレームをキャプチャしている間の単眼キャプチャデバイス605の姿勢の推定635とを生成する。単眼キャプチャデバイス605の推定された姿勢640、635、及び単眼キャプチャデバイス605によりキャプチャされたビデオデータは、幾何学的再構成エンジン630により使用され、ビデオデータのフレームからピクセルの少なくとも部分集合についての奥行き推定が生成される。いくつかの事例において幾何学的再構成エンジン630は、測光誤差を最小化して奥行き推定を生成するように構成される。これは、図2を参照してさらに説明される。図6の幾何学的再構成エンジン630は、奥行き推定と、奥行き推定の不確実性測定とを含む第1の奥行きデータ650を出力する。 In FIG. 6, the tracking system 625 captures the pose estimation 640 of the monocular capture device 605 while capturing the reference frame 615 and the pose estimation 635 of the monocular capture device 605 while capturing the key frame. Generate. The estimated orientations of the monocular capture device 605 640, 635, and the video data captured by the monocular capture device 605 are used by the geometric reconstruction engine 630 to be used by the geometric reconstruction engine 630 to provide depth from the frame of the video data to at least a subset of the pixels. An estimate is generated. In some cases, the geometric reconstruction engine 630 is configured to minimize metering errors and generate depth estimates. This will be further explained with reference to FIG. The geometric reconstruction engine 630 of FIG. 6 outputs a first depth data 650 including depth estimation and depth estimation uncertainty measurement.

いくつかの事例では、第1の奥行きデータ650は、単眼キャプチャデバイス605により取得されるフレームごとに再度生成され、例えば第1の奥行きデータ650は、キーフレームに関連し得、さらに、取得され処理される追加参照フレームごとに反復的に更新され得る。第1の奥行きデータ650は、リアルタイムまたはほぼリアルタイムで生成され得、従って、例えば単眼キャプチャデバイス605のフレームレートに対応したレートで、頻繁に実行され得る。 In some cases, the first depth data 650 may be regenerated for each frame captured by the monocular capture device 605, for example the first depth data 650 may be associated with a key frame and further captured and processed. It can be updated iteratively for each additional reference frame that is made. The first depth data 650 can be generated in real time or near real time and can therefore be performed frequently, for example at a rate corresponding to the frame rate of the monocular capture device 605.

キーフレーム610に対応すると特定されたフレームに関して、図6の画像処理システム600はさらに、ニューラルネットワークアーキテクチャ620を使用して第2の奥行きデータ660を生成するキーフレーム610の処理を含む。しかし、ニューラルネットワークアーキテクチャ620を使用する参照フレーム615の処理は、いくつかの事例では省略され得る。これは、図6では、破線を使用して概略的に示される。破線は、画像処理システム600により選択的に実行され得る画像処理パイプラインの部分に対応する。例えば、第1の奥行きデータ650の生成は、フレームが参照フレーム615であるかキーフレーム610であるかに関係なく、フレームについて実行され得るが、第2の奥行きデータの生成は、キーフレーム610に対して選択的に実行され得る。図6の実施例では、第2の奥行きデータ660は、第2の奥行き推定、第2の奥行き推定の不確実性測定、少なくとも1つの表面配向推定、及び表面配向推定の不確実性測定を含むが、これは単なる例に過ぎない。ニューラルネットワークアーキテクチャ620は、本明細書で説明される他の実施例のニューラルネットワークアーキテクチャと同様または同一であり得る。 For frames identified as corresponding to keyframes 610, the image processing system 600 of FIG. 6 further includes processing of keyframes 610 to generate second depth data 660 using the neural network architecture 620. However, the processing of the reference frame 615 using the neural network architecture 620 may be omitted in some cases. This is schematically shown in FIG. 6 using a dashed line. The dashed line corresponds to a portion of the image processing pipeline that can be selectively executed by the image processing system 600. For example, the generation of the first depth data 650 may be performed on the frame regardless of whether the frame is the reference frame 615 or the key frame 610, while the generation of the second depth data may be performed on the key frame 610. On the other hand, it can be executed selectively. In the embodiment of FIG. 6, the second depth data 660 includes a second depth estimation, a second depth estimation uncertainty measurement, at least one surface orientation estimation, and a surface orientation estimation uncertainty measurement. But this is just an example. The neural network architecture 620 may be similar or identical to the neural network architectures of the other embodiments described herein.

図6の画像処理システム600はまた、融合エンジン670を含み、これは、第1の奥行き推定及び第2の奥行き推定(幾何学的再構成エンジン630及びニューラルネットワークアーキテクチャ620によりそれぞれ取得された)を、関連する不確実性測定を使用して、統計的に融合させるように構成される。図6では、融合エンジン670はまた、少なくとも1つの表面配向推定、及び少なくとも1つの表面配向推定に関連付けられたそれぞれの不確実性測定を使用して、第1の奥行き推定と第2の奥行き推定とを統計的に融合させる。しかし、少なくとも1つの表面配向推定、及び少なくとも1つの表面配向推定に関連付けられたそれぞれの不確実性測定の使用は、他の事例では省略され得る。 The image processing system 600 of FIG. 6 also includes a fusion engine 670, which has a first depth estimation and a second depth estimation (acquired by the geometric reconstruction engine 630 and the neural network architecture 620, respectively). , Constructed to be statistically fused using the associated uncertainty measurement. In FIG. 6, the fusion engine 670 also uses at least one surface orientation estimation and the respective uncertainty measurements associated with at least one surface orientation estimation to make a first depth estimation and a second depth estimation. And statistically fuse. However, the use of at least one surface orientation estimation and each uncertainty measurement associated with at least one surface orientation estimation may be omitted in other cases.

融合エンジン670は、第1の奥行き推定と第2の奥行き推定とを統計的に融合させることにより、融合奥行き推定680を生成するように構成される。図6の融合エンジン670はまた、第1の奥行き推定と第2の奥行き推定とを確率的に融合させる時に、スケール推定を特定するように構成される。例えば、融合エンジン670が、コスト関数を最適化して融合奥行き推定680特定するように構成される場合、コスト関数を最適化することは、融合奥行き推定680のスケールファクタ685を特定することを含み得る。このような事例では、スケールファクタ685は、シーンに関する融合奥行き推定680のスケールを示す。従って、スケールファクタは、第1の奥行き推定及び第2の奥行き推定により提供されるシーンのスケールの不正確さを補い得る。スケールファクタは、スカラであり得る。例えば、第1の奥行き推定は、図6の単眼キャプチャデバイス605がもたらす姿勢に基づいて生成されるため、第1の奥行き推定は任意のスケールを有する。しかし、スケールファクタの生成により、特定のスケールでの奥行き推定を取得することが可能となる。 The fusion engine 670 is configured to generate a fusion depth estimation 680 by statistically fusing the first depth estimation and the second depth estimation. The fusion engine 670 of FIG. 6 is also configured to specify the scale estimation when the first depth estimation and the second depth estimation are stochastically fused. For example, if the fusion engine 670 is configured to optimize the cost function to specify the fusion depth estimate 680, optimizing the cost function may include specifying the scale factor 685 of the fusion depth estimate 680. .. In such cases, the scale factor 685 indicates the scale of the fusion depth estimate 680 for the scene. Therefore, the scale factor can compensate for the scale inaccuracy of the scene provided by the first depth estimation and the second depth estimation. The scale factor can be scalar. For example, the first depth estimation has an arbitrary scale because the first depth estimation is generated based on the attitude provided by the monocular capture device 605 of FIG. However, the generation of scale factors makes it possible to obtain depth estimates at a particular scale.

コスト関数を最適化して融合奥行き推定680が特定される事例では、コスト関数の第1のコスト項は、融合奥行き推定値、第1の奥行き推定値、第1の奥行き推定の不確実性値、及びスケールファクタの関数を含み得る。コスト関数の最適化は、スケールファクタ並びに融合奥行き推定680を反復的に変更して、コスト関数を最適化する(例えば最小化する)スケールファクタ及び融合奥行き推定680を特定することを含み得る。このような事例では、コスト関数はまた、図2及び図4を参照して説明されたように、第2のコスト項及び/または第3のコスト項を含み得る。このような事例では、第2のコスト項及び/または第3のコスト項は、スケールファクタとは無関係であり得る。 In the case where the fusion depth estimation 680 is specified by optimizing the cost function, the first cost term of the cost function is the fusion depth estimation value, the first depth estimation value, the uncertainty value of the first depth estimation, And may include a function of scale factor. Optimizing the cost function may include iteratively modifying the scale factor as well as the fusion depth estimation 680 to identify the scale factor and fusion depth estimation 680 that optimize (eg, minimize) the cost function. In such cases, the cost function may also include a second cost term and / or a third cost term, as described with reference to FIGS. 2 and 4. In such cases, the second and / or third cost term may be independent of the scale factor.

説明されるように、第1の奥行きデータ650が幾何学的再構成エンジン630により生成される頻度より少ない頻度で、第2の奥行きデータ660はニューラルネットワークアーキテクチャ620により生成され得る。例えば、キーフレーム610については、第1の奥行きデータ650と第2の奥行きデータ660の両方が生成され得る。第2の奥行きデータの生成が省略され得るキーフレーム610は、第2の奥行きデータの生成が省略され得る参照フレーム615よりも、少なくあり得る。 As described, the second depth data 660 may be generated by the neural network architecture 620 less frequently than the first depth data 650 is generated by the geometric reconstruction engine 630. For example, for the key frame 610, both the first depth data 650 and the second depth data 660 can be generated. The key frame 610 in which the generation of the second depth data may be omitted may be less than the reference frame 615 in which the generation of the second depth data may be omitted.

実施例として、ビデオデータの第1のフレームでシーンがキャプチャされ得、ビデオデータの第1のフレームについての第2の奥行き推定が受信され得る。第2の奥行き推定は、ニューラルネットワークアーキテクチャ620より生成され得る。ゆえに、ビデオデータの第1のフレームは、キーフレーム615であるとみなされ得る。この実施例では、複数の第1の奥行き推定が取得される。複数の第1の奥行き推定のうちの少なくとも1つは、ビデオデータの第1のフレームとは異なるビデオデータの第2のフレームを使用して生成される。例えば、複数の第1の奥行き推定(幾何学的再構成エンジン630により生成された)には、第1のフレーム(キーフレーム610である)の第1の奥行き推定と、第2のフレーム(参照フレーム615である)の第1の奥行き推定とが含まれ得る。この事例では、融合エンジン670は、反復ごとに第2の奥行き推定と複数の奥行き推定のうちの1つとを処理して、シーンの融合奥行き推定680を反復的に出力するように構成される。例えば、第1のフレームを受信すると、融合エンジン670は、第1のフレームを使用して生成された第1の奥行き推定と、第1のフレームを使用して生成された第2の奥行き推定とを融合させ得る。しかし、第2のフレームを受信すると、融合エンジン670は代わりに、第2のフレームを使用して生成された第1の奥行き推定と、第1のフレームを使用して前に生成された第2の奥行き推定とを融合させ得る。言い換えると、第2の奥行き推定は、フレームごとに再生成され得ず、代わりに、前のフレーム(前のキーフレーム615など)から再利用され得る。言い換えると、融合奥行き推定680の生成は、反復的に繰り返され得る。方法は、後続の反復に関して、第2の奥行き推定を生成するか否かを判定することを含み得る。上記で説明されたように、このような判定は、画像でキャプチャされたシーンのコンテンツに基づいて、例えば、シーンの前の画像と比較してコンテンツは著しく変化したか否か(例えば単眼キャプチャデバイス605の移動により)、またはコンテンツは特徴豊富であるか否かなどに基づいて、行われ得る。第2の奥行き推定を生成しない(例えば参照フレーム615について)という判定に応じて、これらの実施例は、前の第2の奥行き推定の値の集合を使用して、第1の奥行き推定と第2の奥行き推定とを確率的に融合させることを含む。これにより、ニューラルネットワークアーキテクチャ620を使用して画像を処理する必要がなくなる。 As an embodiment, the scene may be captured in the first frame of the video data and a second depth estimate for the first frame of the video data may be received. The second depth estimation can be generated from the neural network architecture 620. Therefore, the first frame of the video data can be considered to be the key frame 615. In this embodiment, a plurality of first depth estimates are obtained. At least one of the plurality of first depth estimates is generated using a second frame of video data that is different from the first frame of video data. For example, a plurality of first depth estimates (generated by the geometric reconstruction engine 630) include a first depth estimate of the first frame (keyframe 610) and a second frame (reference). It may include a first depth estimation (which is frame 615). In this example, the fusion engine 670 is configured to process one of a second depth estimation and a plurality of depth estimates for each iteration and iteratively output the fusion depth estimation 680 of the scene. For example, upon receiving the first frame, the fusion engine 670 has a first depth estimate generated using the first frame and a second depth estimate generated using the first frame. Can be fused. However, upon receiving the second frame, the fusion engine 670 instead uses the first depth estimation generated using the second frame and the previously generated second using the first frame. Can be fused with the depth estimation of. In other words, the second depth estimate cannot be regenerated frame by frame and can instead be reused from the previous frame (such as the previous keyframe 615). In other words, the generation of the fusion depth estimate 680 can be iteratively repeated. The method may include determining whether to generate a second depth estimate for subsequent iterations. As described above, such a determination is based on the content of the scene captured in the image, for example, whether the content has changed significantly compared to the image before the scene (eg, a monocular capture device). (By moving 605), or based on whether the content is feature-rich or not, etc. In response to the determination that no second depth estimation is generated (eg for reference frame 615), these examples use the set of values of the previous second depth estimation to make the first depth estimation and the second. It includes stochastically fusing with the depth estimation of 2. This eliminates the need to process the image using the neural network architecture 620.

このような実施例では、第1の奥行き推定は、第2の奥行き推定よりも頻繁に生成され得る(第2の奥行き推定はニューラルネットワークアーキテクチャ620を使用するため生成がより遅くなり得る)。いくつかの事例では、融合奥行き推定680は、更新された第1の奥行き推定と既存の第2の奥行き推定とに基づいて、精緻化され得る。ゆえに、シーンの奥行きは、第1の奥行き推定及び第2の奥行き推定の両方が更新された後にシーンの奥行きが更新される他の事例よりも、高いレートで更新され得る。実際に、第1の奥行き推定と第2の奥行き推定とを別々に生成して、その後に第1の奥行き推定と第2の奥行き推定とを融合させることにより、本明細書の方法は、他の方法と比べて、より柔軟であり、より効率的に実行され得る。 In such an embodiment, the first depth estimation may be generated more frequently than the second depth estimation (the second depth estimation may be slower because it uses the neural network architecture 620). In some cases, the fusion depth estimate 680 may be refined based on the updated first depth estimate and the existing second depth estimate. Therefore, the depth of the scene can be updated at a higher rate than in other cases where the depth of the scene is updated after both the first depth estimation and the second depth estimation have been updated. In fact, by generating the first depth estimation and the second depth estimation separately and then fusing the first depth estimation and the second depth estimation, the methods herein are described as other. It is more flexible and can be performed more efficiently than the method of.

図7Aは、本明細書に説明される方法のうちのいずれかを実施するために使用され得るコンピューティングシステム700のコンポーネントを示す概略図である。コンピューティングシステム700は、単一のコンピューティングデバイス(例えばデスクトップ、ラップトップ、モバイル及び/または組み込みコンピューティングデバイス)であり得る、または複数の別個のコンピューティングデバイスにわたり分散された分散コンピューティングシステムであり得る(例えばいくつかのコンポーネントは、1つ以上のクライアントコンピューティングデバイスからネットワークを介して発せられた要求に基づいて、1つ以上のサーバコンピューティングデバイスにより実施され得る)。 FIG. 7A is a schematic diagram showing components of a computing system 700 that may be used to implement any of the methods described herein. The computing system 700 can be a single computing device (eg, desktop, laptop, mobile and / or embedded computing device), or is a distributed computing system distributed across multiple separate computing devices. Obtain (eg, some components may be performed by one or more server computing devices based on requests made over the network from one or more client computing devices).

コンピューティングシステム700は、例えばシーンの観察を含むビデオのフレームを提供するビデオキャプチャデバイス710を含む。コンピューティングシステム700はまた、位置特定及びマッピング同時実行(SLAM)システム720を含む。ロボットマッピング及びナビゲーションの分野におけるSLAMシステムは、未知の環境のマップを構築及び更新し、同時に環境内のマップに関連付けられたロボットデバイスの位置を特定するように機能する。例えば、ロボットデバイスは、マップを構築、更新、及び/または使用するデバイスであり得る。SLAMシステム720は、ビデオキャプチャデバイス710の姿勢データを提供するように構成される。コンピューティングシステム700の中密度マルチビューステレオコンポーネント730は、姿勢データ及びビデオのフレームを受信して、上記の他の実施例で説明された幾何学的再構成エンジンを実施するように構成される。中密度マルチビューステレオコンポーネント730は、前述の「中密度」であると言うことができ、用語「マルチビューステレオ」は、コンポーネント730が、単眼(例えば非ステレオ)カメラからのデータの連続フレームを使用する代わりに、ステレオ画像ペアをシミュレートして奥行きデータを特定するように機能することを示す。この事例では、移動するカメラからのフレームは、共通の環境の異なるビューを提供し得、これにより、前述のように奥行きデータを生成することが可能となる。コンピューティングシステム700はまた、ニューラルネットワーク回路740を含み、これは、例えば、上記の実施例を参照して説明されたニューラルネットワークアーキテクチャを実施する電子回路である。コンピューティングシステム700はまた、本明細書の実施例の融合エンジンを実施するように構成された画像処理システム750を含む。画像処理システム750は、例えば、中密度マルチビューステレオコンポーネント730からの第1の奥行きデータと、ニューラルネットワーク回路740からの第2の奥行きデータとを確率的に融合させて、融合奥行きデータを取得する。 The computing system 700 includes, for example, a video capture device 710 that provides frames of video including scene observation. The computing system 700 also includes a location and mapping concurrency (SLAM) system 720. SLAM systems in the field of robot mapping and navigation serve to build and update maps of unknown environments while at the same time locating robot devices associated with maps in the environment. For example, a robot device can be a device that builds, updates, and / or uses a map. The SLAM system 720 is configured to provide attitude data for the video capture device 710. The medium density multi-view stereo component 730 of the computing system 700 is configured to receive frames of attitude data and video to implement the geometric reconstruction engine described in the other embodiments above. The medium density multiview stereo component 730 can be said to be the aforementioned "medium density", the term "multiview stereo" in which the component 730 uses a continuous frame of data from a monocular (eg non-stereo) camera. Instead, we show that it works to simulate a stereo image pair to identify depth data. In this case, the frame from the moving camera can provide different views of the common environment, which makes it possible to generate depth data as described above. The computing system 700 also includes a neural network circuit 740, which is, for example, an electronic circuit that implements the neural network architecture described with reference to the above embodiments. The computing system 700 also includes an image processing system 750 configured to implement the fusion engine of the embodiments of the present specification. The image processing system 750 probabilistically fuses the first depth data from the medium density multi-view stereo component 730 and the second depth data from the neural network circuit 740 to acquire the fused depth data. ..

図7Bは、実施例による、ロボットデバイス760のコンポーネントを示す概略図である。ロボットデバイス760は、図7Aのコンピューティングシステム700を含む。ロボットデバイス760はまた、ロボットデバイス760が周囲の3次元環境とインタラクトすることを可能にする1つ以上のアクチュエータ770を含む。周囲の3次元環境の少なくとも一部は、コンピューティングシステム700のビデオキャプチャデバイス710によりキャプチャされたシーンに示され得る。図7Bの事例では、ロボットデバイス760は、ロボットデバイスが特定の環境をナビゲートする時に(例えば図1Aのデバイス130により)、ビデオデータをキャプチャするように構成され得る。しかし、別の事例では、ロボットデバイス760は、環境をスキャンし得る、またはモバイルデバイスもしくは別のロボットデバイスを有するユーザなどの第三者から受信したビデオデータを操作し得る。ロボットデバイス760がビデオデータを処理する時、ロボットデバイス760は、例えば融合奥行き推定であるシーンの奥行き推定を生成するように構成され得る。 FIG. 7B is a schematic diagram showing the components of the robot device 760 according to the embodiment. The robot device 760 includes the computing system 700 of FIG. 7A. The robot device 760 also includes one or more actuators 770 that allow the robot device 760 to interact with the surrounding three-dimensional environment. At least a portion of the surrounding 3D environment may be shown in the scene captured by the video capture device 710 of the computing system 700. In the case of FIG. 7B, the robot device 760 may be configured to capture video data as the robot device navigates a particular environment (eg, by device 130 of FIG. 1A). However, in another case, the robot device 760 may scan the environment or manipulate video data received from a third party such as a mobile device or a user with another robot device. When the robot device 760 processes video data, the robot device 760 may be configured to generate a depth estimate of the scene, for example a fusion depth estimate.

ロボットデバイス760はまた、1つ以上のアクチュエータ770を制御する少なくとも1つのプロセッサを含むインタラクションエンジン780を含む。図7Bのインタラクションエンジン780は、融合奥行き推定を使用して、周囲の3次元環境とインタラクトするように構成される。インタラクションエンジン780は、融合奥行き推定を使用して、1つ以上のアクチュエータを制御して環境とインタラクトし得る。例えば、融合奥行き推定を使用して、環境内のオブジェクトをつかむこと、及び/または壁などの障壁との衝突を回避することができる。 The robot device 760 also includes an interaction engine 780 that includes at least one processor that controls one or more actuators 770. The interaction engine 780 of FIG. 7B is configured to interact with the surrounding 3D environment using fusion depth estimation. The interaction engine 780 can use fusion depth estimation to control one or more actuators to interact with the environment. For example, fusion depth estimation can be used to grab objects in the environment and / or avoid collisions with barriers such as walls.

図7A及び図7Bを参照して本明細書に説明される機能コンポーネントの実施例は、専用処理電子機器を含み得、及び/または少なくとも1つのコンピューティングデバイスのプロセッサにより実行されるコンピュータプログラムコードにより実施され得る。いくつかの事例では、1つ以上の組み込みコンピューティングデバイスが使用され得る。本明細書に説明されるコンポーネントは、コンピュータ可読媒体にロードされたコンピュータプログラムコードを実行するためにメモリと関連して作動する少なくとも1つのプロセッサを含み得る。この媒体は、消去可能プログラム可能読み出し専用メモリなどのソリッドステートストレージを含み得、コンピュータプログラムコードは、ファームウェアを含み得る。他の事例では、コンポーネントは、適切に構成されたシステムオンチップ、特定用途向け集積回路、及び/または1つ以上の適切にプログラムされたフィールドプログラマブルゲートアレイを含み得る。一事例では、コンポーネントは、モバイルコンピューティングデバイス及び/またはデスクトップコンピューティングデバイス内のコンピュータプログラムコード及び/または専用処理電子機器により、実施され得る。一事例では、前の事例と同様に、または前の事例の代わりに、コンポーネントは、コンピュータプログラムコードを実行する1つ以上のグラフィカル処理ユニットにより、実施され得る。いくつかの事例では、コンポーネントは、例えばグラフィックス処理ユニットの複数のプロセッサ及び/またはコア上で、並行して実施される1つ以上の機能により、実施され得る。 Examples of functional components described herein with reference to FIGS. 7A and 7B may include dedicated processing electronic devices and / or by computer program code executed by the processor of at least one computing device. Can be carried out. In some cases, one or more embedded computing devices may be used. The components described herein may include at least one processor that operates in association with memory to execute computer program code loaded on a computer readable medium. The medium may include solid state storage such as erasable programmable read-only memory and the computer program code may include firmware. In other cases, the component may include a well-configured system-on-chip, application-specific integrated circuit, and / or one or more well-programmed field programmable gate arrays. In one case, the component may be implemented by a computer program code and / or dedicated processing electronic device within a mobile computing device and / or a desktop computing device. In one case, as in the previous case, or in place of the previous case, the component may be implemented by one or more graphical processing units that execute computer program code. In some cases, the component may be implemented by one or more functions implemented in parallel, eg, on multiple processors and / or cores of a graphics processing unit.

図8は、図1~7を参照して説明された様々な機能の実施例800を示す概略図である。図8は、シーンと称され得る3次元(3D)環境805の実施例を示す。3D環境805は、図1のキャプチャデバイス120などのキャプチャデバイス810、並びに2つのオブジェクト815、820を含む。キャプチャデバイス810は、3D環境805の観察をキャプチャするように構成される(例えば静止画像またはビデオの形式で)。これらの観察は、例えば、オブジェクト815、820の観察を含み、オブジェクト815、820の互いに対する位置、及び他のオブジェクトまたは3D環境の地物(オブジェクト815、820を支持する表面、またはオブジェクト815、820の後ろの壁など)に対するオブジェクト815、820の位置を示し得る。キャプチャデバイス810によりキャプチャされた3D環境805の観察を示すビデオのフレーム825の実施例も、図8に示される。図示されるように、ビデオのフレーム825内に、2つのオブジェクト815、820が表示される。 FIG. 8 is a schematic diagram showing Example 800 of various functions described with reference to FIGS. 1-7. FIG. 8 shows an example of a three-dimensional (3D) environment 805 that can be referred to as a scene. The 3D environment 805 includes a capture device 810 such as the capture device 120 of FIG. 1, and two objects 815 and 820. The capture device 810 is configured to capture the observations of the 3D environment 805 (eg, in the form of a still image or video). These observations include, for example, observations of objects 815, 820, positions of objects 815, 820 relative to each other, and other objects or features in a 3D environment (surfaces supporting objects 815, 820, or objects 815, 820). It may indicate the position of objects 815, 820 with respect to (such as the wall behind). An example of a video frame 825 showing an observation of the 3D environment 805 captured by the capture device 810 is also shown in FIG. As shown, two objects 815 and 820 are displayed within frame 825 of the video.

図8はまた、幾何学的再構成エンジンにより取得された第1の奥行き推定830の実施例を概略的に示す。図示されるように、シーン内のオブジェクト815、820の存在は、第1の奥行き推定830において、輪郭832、834により示される。ゆえに、第1の奥行き推定830により、例えば、画像内の境界線または他の縁(例えばシーン内のオブジェクトの縁で起こり得る奥行きの突然の変化に対応する)を特定することが可能となる。 FIG. 8 also schematically shows an example of a first depth estimation 830 obtained by a geometric reconstruction engine. As shown, the presence of objects 815,820 in the scene is indicated by contours 832, 834 in the first depth estimation 830. Therefore, the first depth estimation 830 makes it possible to identify, for example, boundaries or other edges in an image (eg, corresponding to possible sudden changes in depth at the edges of objects in the scene).

ニューラルネットワークアーキテクチャにより取得された第2の奥行き推定835も、図8に概略的に示される。図示されるように、シーン内のオブジェクト815、820の存在は、第2の奥行き推定835において、陰影836、838により示される。例えば、陰影のグレースケール値は、オブジェクトの一部の相対的な奥行きを示す。 A second depth estimate 835 obtained by the neural network architecture is also schematically shown in FIG. As illustrated, the presence of objects 815,820 in the scene is indicated by shading 836, 838 in the second depth estimation 835. For example, a shaded grayscale value indicates the relative depth of a portion of an object.

図8の実施例では、2つのオブジェクト815、820は、キャプチャデバイス810に向かって突出している。例えば、図8において、第1のオブジェクト815は、垂直に延びる長手方向軸を有する円筒である。ゆえに、第1のオブジェクト815は、その中心がキャプチャデバイス810に向かって膨らみ、その側面がキャプチャデバイス810から後退する(キャプチャデバイス810から見た場合)。第1のオブジェクト815の形状は、第2の奥行き推定835でキャプチャされ、第1のオブジェクト815の中心に向いたキャプチャデバイス810に対して、第1のオブジェクト815の奥行きが減少することが示される(第2の奥行き推定835において第1のオブジェクトの中心に向かってより濃くなる陰影領域836により示される)。しかし、第1のオブジェクトの縁は、第2の奥行き推定835より第1の奥行き推定830において、より鋭くまたはより鮮明である。これは、第1の奥行き推定830は、シーンの高テクスチャ領域の奥行きをより正確にキャプチャし得、一方第2の奥行き推定835は、シーンの低テクスチャ(すなわち滑らかな)領域の奥行きをより正確にキャプチャし得ることを示す。これは、第2の奥行き推定835において、左上隅及び左下隅に陰影があり、これらの領域がシーンの他の領域と比べて奥行きの差を有することが示されていることから、さらにわかる。この差は、比較的微細なまたは小さな奥行きの変化であるため、第1の奥行き推定830では識別されていない。 In the embodiment of FIG. 8, the two objects 815 and 820 project toward the capture device 810. For example, in FIG. 8, the first object 815 is a cylinder with a vertically extending longitudinal axis. Therefore, the center of the first object 815 bulges toward the capture device 810, and its side surface retracts from the capture device 810 (when viewed from the capture device 810). The shape of the first object 815 is captured by the second depth estimation 835, indicating that the depth of the first object 815 is reduced relative to the capture device 810 towards the center of the first object 815. (Indicated by the shaded area 836 that becomes darker towards the center of the first object in the second depth estimation 835). However, the edges of the first object are sharper or sharper in the first depth estimation 830 than in the second depth estimation 835. This is because the first depth estimation 830 can more accurately capture the depth of the high textured area of the scene, while the second depth estimation 835 more accurately captures the depth of the low textured (ie smooth) area of the scene. Indicates that it can be captured. This is further apparent from the second depth estimation 835, which shows that there are shadows in the upper left and lower left corners, and that these areas have a depth difference compared to the other areas of the scene. This difference is not identified in the first depth estimation 830 because it is a relatively subtle or small depth change.

図8はまた、第1の方向(この実施例では水平方向)の第1の奥行き勾配推定840と、第1の方向に直交する方向(この実施例では垂直方向)の第2の奥行き勾配推定845との実施例を概略的に示す。オブジェクト815、820の存在は、第1の奥行き勾配推定840において、矢印842、844によりそれぞれ示される。オブジェクト815、820の存在は、第2の奥行き勾配推定845において、矢印846、848によりそれぞれ示される。第1の奥行き推定830及び第2の奥行き推定835を参照して説明されたように、オブジェクト815は、その長手方向軸に沿ってキャプチャデバイス810に対して膨らむ。これは、第1の奥行き勾配推定840において、オブジェクト815がその円筒形状によりキャプチャデバイス810から後退方向へより急速に湾曲するオブジェクト815の側面方向よりも、中央領域で、矢印842が互いにより近接している(奥行き勾配の変化が急速でないことを示す)ことから、わかる。 FIG. 8 also shows a first depth gradient estimation 840 in the first direction (horizontal in this embodiment) and a second depth gradient estimation in the direction orthogonal to the first direction (vertical in this embodiment). An embodiment with 845 is shown schematically. The presence of objects 815 and 820 is indicated by arrows 842 and 844 in the first depth gradient estimation 840, respectively. The presence of objects 815 and 820 is indicated by arrows 846 and 848 in the second depth gradient estimation 845, respectively. As described with reference to the first depth estimation 830 and the second depth estimation 835, the object 815 inflates with respect to the capture device 810 along its longitudinal axis. This is because in the first depth gradient estimation 840, the arrows 842 are closer to each other in the central region than in the lateral direction of the object 815, where the object 815 curves more rapidly in the receding direction from the capture device 810 due to its cylindrical shape. (Indicates that the change in depth gradient is not rapid).

図9は、シーンの奥行きを推定する例示的な方法900を示すフロー図である。方法900は、第1の奥行き推定を生成する第1の動作910を含む。シーンの幾何学的再構成を使用して、第1の奥行き推定が生成され得、シーンの幾何学的再構成は、第1の奥行き推定の不確実性測定を出力するように構成される。第2の動作920にて、ニューラルネットワークアーキテクチャを使用して、第2の奥行き推定が生成される。ニューラルネットワークアーキテクチャは、第2の奥行き推定の不確実性測定を出力するように構成される。第3の動作930にて、第1の奥行き推定と第2の奥行き推定は、不確実性測定を使用して確率的に融合され、シーンの融合奥行き推定が生成される。本明細書に説明されるシステムのうちのいずれかを使用して、図9の方法900は実施され得る。 FIG. 9 is a flow diagram illustrating an exemplary method 900 for estimating the depth of a scene. Method 900 includes a first action 910 that produces a first depth estimate. A first depth estimate can be generated using the geometric reconstruction of the scene, and the geometric reconstruction of the scene is configured to output an uncertainty measurement of the first depth estimation. In the second operation 920, the neural network architecture is used to generate the second depth estimation. The neural network architecture is configured to output a second depth estimation uncertainty measurement. In the third operation 930, the first depth estimation and the second depth estimation are stochastically fused using uncertainty measurement to generate a fused depth estimation of the scene. The method 900 of FIG. 9 can be implemented using any of the systems described herein.

図10は、シーンの奥行きを推定するさらなる例示的な方法1000を示すフロー図である。第1の動作1010にて、画像データが取得される。画像データは、シーンの画像をキャプチャするように構成されたキャプチャデバイスから取得され得る。第2の動作1020にて、第1の動作1010の画像データを取得する間のキャプチャデバイスの姿勢推定が生成される。第3の動作1030にて、例えば本明細書の他の実施例を参照して説明されるように、幾何学的再構成エンジンを使用して、シーンの奥行きの中密度推定が取得される。第4の動作1040にて、図6を参照して説明されたように、キャプチャデバイスによりキャプチャされた画像がキーフレームであるか否かが判定される。キーフレームである場合、第2の奥行き推定を生成するために、第5の動作1050にて、ニューラルネットワーク出力が生成される。しかし、画像がキーフレームに該当しない場合、動作1060にて、既存のニューラルネットワーク出力(例えば前の画像で取得された)が代わりに使用される。ニューラルネットワーク出力には、例えば、第2の奥行き推定と、少なくとも1つの表面配向推定と、第2の奥行き推定及び少なくとも1つの表面配向推定のそれぞれに関連付けられた不確実性測定とが含まれる。最後に、第7の動作1070にて、第3の動作1030の第1の奥行き推定と、第5の動作1050または第6の動作1060の第2の奥行き推定とが、例えば第1の奥行き推定及び第2の奥行き推定にそれぞれ関連付けられた不確実性測定を使用する確率的な方法で融合される。この実施例では、融合奥行きマップ及びスケールファクタを取得するために、融合動作中に、少なくとも1つの表面配向推定及び対応する不確実性測定も使用される。図10の方法100は、例えば、図6のシステム600を使用して実施され得る。 FIG. 10 is a flow diagram illustrating a further exemplary method 1000 for estimating the depth of a scene. Image data is acquired in the first operation 1010. Image data can be obtained from a capture device configured to capture an image of the scene. In the second operation 1020, the attitude estimation of the capture device while acquiring the image data of the first operation 1010 is generated. In the third operation 1030, a geometric reconstruction engine is used to obtain a medium density estimate of the depth of the scene, as described, for example, with reference to other embodiments herein. In the fourth operation 1040, as described with reference to FIG. 6, it is determined whether or not the image captured by the capture device is a key frame. If it is a key frame, a neural network output is generated in the fifth action 1050 to generate a second depth estimate. However, if the image does not correspond to a key frame, then in operation 1060, the existing neural network output (eg, obtained in the previous image) is used instead. The neural network output includes, for example, a second depth estimation and at least one surface orientation estimation, and an uncertainty measurement associated with each of the second depth estimation and at least one surface orientation estimation. Finally, in the seventh operation 1070, the first depth estimation of the third operation 1030 and the second depth estimation of the fifth operation 1050 or the sixth operation 1060 are, for example, the first depth estimation. And the second depth estimation are fused in a probabilistic way using the uncertainty measurements associated with each. In this embodiment, at least one surface orientation estimation and corresponding uncertainty measurement are also used during the fusion operation to obtain the fusion depth map and scale factor. The method 100 of FIG. 10 can be implemented using, for example, the system 600 of FIG.

図11は、プロセッサ1110と、コンピュータ実行可能命令1130を含む非一時的コンピュータ可読記憶媒体1120との実施例1100を示す概略図である。コンピュータ実行可能命令1130は、プロセッサ1110により実行されると、プロセッサ1110を備えるコンピューティングデバイスなどのコンピュータデバイスに、シーンの奥行きを推定させる。命令により、結果的に、前述の例示的な方法と同様の方法が実行され得る。例えば、コンピュータ可読記憶媒体1120は、図6を参照して説明されたように、複数の参照フレームについて取得され得る複数の第1の奥行きデータ1140を記憶するように構成され得る。コンピュータ可読記憶媒体1120はまた、キーフレームの第2の奥行き推定1150を記憶するように構成され得る。第1の奥行きデータと第2の奥行きデータとは、確率的に融合され、融合奥行き推定が取得され得る。図11では、第1の奥行きデータ1140及び第2の奥行きデータ1150がコンピュータ可読記憶媒体1120に記憶されているように示されるが、他の実施例では、第1の奥行きデータ1140及び第2の奥行きデータ1150のうちの少なくとも1つは、コンピュータ可読記憶媒体1120の外部の(しかしコンピュータ可読記憶媒体1120によりアクセス可能な)ストレージに記憶され得る。 FIG. 11 is a schematic diagram showing an embodiment 1100 of a processor 1110 and a non-temporary computer-readable storage medium 1120 including a computer executable instruction 1130. When executed by the processor 1110, the computer executable instruction 1130 causes a computer device such as a computing device equipped with the processor 1110 to estimate the depth of the scene. The command may result in a method similar to the exemplary method described above. For example, the computer-readable storage medium 1120 may be configured to store a plurality of first depth data 1140s that may be acquired for the plurality of reference frames, as described with reference to FIG. The computer-readable storage medium 1120 may also be configured to store a second depth estimate of keyframes 1150. The first depth data and the second depth data are stochastically fused, and a fusion depth estimation can be obtained. In FIG. 11, the first depth data 1140 and the second depth data 1150 are shown to be stored in the computer-readable storage medium 1120, but in other embodiments, the first depth data 1140 and the second depth data 1140. At least one of the depth data 1150 may be stored in storage external to the computer readable storage medium 1120 (but accessible by the computer readable storage medium 1120).

図12は、さらなる実施例による、シーンの第1の奥行き推定と第2の奥行き推定との融合を示す概略図である。図12では、幾何学的再構成を使用して、シーンについての第1の奥行き確率体積1200が生成される。第1の奥行き確率体積1200は、第1の複数の奥行き推定(この事例では本明細書の他の実施例で論じられる第1の奥行き推定を含む)、及び第1の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第1の複数の不確実性測定を含む。従って、第1の複数の不確実性測定には、第1の奥行き推定の不確実性測定が含まれる。 FIG. 12 is a schematic diagram showing the fusion of the first depth estimation and the second depth estimation of the scene according to a further embodiment. In FIG. 12, the geometric reconstruction is used to generate a first depth probability volume 1200 for the scene. The first depth probability volume 1200 is each of the first plurality of depth estimates (in this case including the first depth estimates discussed in other embodiments herein) and the first plurality of depth estimates. Includes a first plurality of uncertainty measurements, each associated with a depth estimate. Therefore, the first plurality of uncertainty measurements include a first depth estimation uncertainty measurement.

第1の奥行き確率体積1200が図12に概略的に示されるが、これは、例示しやすくするために簡略化された実施例である。図12では、シーンの観察を表すフレームは、図12ではP~Pとラベル付けされた9つのピクセルを含む。ピクセルのそれぞれは、シーンの異なる各部分の観察に対応する。図12のピクセルのそれぞれについて、D、D、及びDとラベル付けされた3つの奥行き推定が存在する(しかし他の実施例ではピクセルごとにさらに多いまたは少ない奥行き推定が存在する場合がある)。図12の各奥行き推定は、それぞれの不確実性測定に関連付けられる。図12では、n番目のピクセルPについてのm番目の奥行き推定Dに関連付けられた不確実性測定は、unmとラベル付けされる。図12では、上部の行のピクセル(P、P、及びP)の不確実性測定が示される。しかし、フレームの他のピクセル(P~P)についての奥行き推定も、対応する不確実性測定(図12に図示せず)を有することを、理解されたい。この実施例では、2次元ピクセル配列についてのそれぞれの奥行き推定に関連付けられた不確実性測定の3次元構成が、3次元確率体積を形成する。 A first depth probability volume 1200 is schematically shown in FIG. 12, which is a simplified example for ease of illustration. In FIG. 12, the frame representing the observation of the scene contains nine pixels labeled P1 to P9 in FIG. Each of the pixels corresponds to an observation of different parts of the scene. For each of the pixels in FIG. 12, there are three depth estimates labeled D 1 , D 2 , and D 3 (but in other embodiments there may be more or less depth estimates per pixel. be). Each depth estimate in FIG. 12 is associated with each uncertainty measurement. In FIG. 12, the uncertainty measurement associated with the mth depth estimation Dm for the nth pixel P n is labeled unm . FIG. 12 shows an uncertainty measurement of the pixels in the top row (P 1 , P 2 , and P 3 ). However, it should be understood that depth estimates for other pixels of the frame ( P4-9 ) also have a corresponding uncertainty measurement (not shown in FIG. 12 ). In this embodiment, the 3D configuration of the uncertainty measurement associated with each depth estimation for the 2D pixel array forms a 3D stochastic volume.

図12では、第1の奥行き確率体積1200の第1の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、シーンの所与の領域(その観察が所与のピクセルでキャプチャされる)が、第1の複数の奥行き推定のうちの所与の奥行き推定により表される奥行きに存在する確率を表す。ゆえに、図12では、u11は、第1のピクセルPでキャプチャされたシーンの領域が、第1の奥行き推定Dの奥行きに対応する奥行きに存在する確率を表す。 In FIG. 12, the uncertainty measurement associated with a given depth estimate of the first plurality of depth estimates of the first depth probability volume 1200 is given in a given area of the scene (its observation is given). Represents the probability that (captured in pixels) is present at the depth represented by a given depth estimate of the first plurality of depth estimates. Therefore, in FIG. 12, u 11 represents the probability that the region of the scene captured by the first pixel P 1 exists at a depth corresponding to the depth of the first depth estimation D 1 .

図12はまた、第2の奥行き確率体積1202を含み、第2の奥行き確率体積1202は、ニューラルネットワークアーキテクチャを使用してシーンについて生成される。この事例の第2の奥行き確率体積1202は、その他の点では第1の奥行き確率体積1200に類似し、第2の奥行き推定を含む第2の複数の奥行き推定と、第2の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第2の複数の不確実性測定とを含む。従って、第2の複数の不確実性測定には、第2の奥行き推定の不確実性測定が含まれる。第1の奥行き確率体積1200に関して、第2の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、シーンの所与の領域が、第2の複数の奥行き推定のうちの所与の奥行き推定により表される奥行きに存在する確率を表す。 FIG. 12 also includes a second depth probability volume 1202, which is generated for the scene using a neural network architecture. The second depth probability volume 1202 in this case is otherwise similar to the first depth probability volume 1200, with a second plurality of depth estimates including a second depth estimate and a second plurality of depth estimates. Includes a second plurality of uncertainty measurements associated with each depth estimation of. Therefore, the second plurality of uncertainty measurements include a second depth estimation uncertainty measurement. With respect to the first depth probability volume 1200, the uncertainty measurement associated with a given depth estimate of the second plurality of depth estimates is that a given area of the scene is the second plurality of depth estimates. Represents the probability of being at the depth represented by our given depth estimation.

図12の実施例では、第1の奥行き確率体積1200及び第2の奥行き確率体積1202は、所与のピクセルについての同一のそれぞれの奥行き推定(D、D、及びD)に関連付けられた不確実性測定を含む。しかし、他の実施例では、第1の奥行き確率体積1200及び第2の奥行き確率体積1202の奥行き推定は、互いに異なり得ることを、理解されたい。例えば、第1の奥行き確率体積1200及び第2の奥行き確率体積1202のうちの一方は、他方より多くの個数の奥行き推定を有し得、及び/または互いに異なる値の奥行き推定を有し得る。 In the embodiment of FIG. 12, the first depth probability volume 1200 and the second depth probability volume 1202 are associated with the same respective depth estimates (D 1 , D 2 , and D 3 ) for a given pixel. Includes uncertainty measurements. However, it should be understood that in other embodiments, the depth estimates of the first depth probability volume 1200 and the second depth probability volume 1202 may differ from each other. For example, one of the first depth probability volume 1200 and the second depth probability volume 1202 may have a larger number of depth estimates and / or different depth estimates.

シーンの所与の部分についての幾何学的再構成の精度とニューラルネットワークアーキテクチャの精度は通常異なるため、第1の奥行き確率体積1200と第2の奥行き確率体積1202とでは、所与の奥行き推定に関連付けられた不確実性測定は通常異なることを、理解されたい。これにより、幾何学的再構成またはニューラルネットワークアーキテクチャのどちらが使用されているかに応じて、シーンの所与の部分について、異なる確率分布が生じ得る。例えば、所与の技法(幾何学的再構成、またはニューラルネットワークアーキテクチャの使用を伴う)がシーンの所与の部分の奥行きを正確に特徴付けることができない場合、シーンの所与の部分を表すピクセルに関連付けられた奥行き確率分布は、比較的均一となり得、シーンのその部分の最も可能性の高い奥行きを突き止めることが困難となる。反対に、所与の技法がシーンの所与の部分の奥行きを正確に特定することができる場合、奥行き確率分布は、シーンの所与の部分の奥行きに対応する奥行き推定で、より鋭いピークを有し得る。 Since the accuracy of the geometric reconstruction for a given part of the scene and the accuracy of the neural network architecture are usually different, the first depth probability volume 1200 and the second depth probability volume 1202 give a given depth estimate. It should be understood that the associated uncertainty measurements are usually different. This can result in different probability distributions for a given part of the scene, depending on whether geometric reconstruction or neural network architecture is used. For example, if a given technique (with geometric reconstruction, or the use of a neural network architecture) cannot accurately characterize the depth of a given part of the scene, then a pixel representing a given part of the scene The associated depth probability distribution can be relatively uniform, making it difficult to determine the most likely depth of that part of the scene. Conversely, if a given technique can accurately determine the depth of a given part of the scene, then the depth probability distribution is a depth estimate that corresponds to the depth of a given part of the scene, with sharper peaks. May have.

第1の奥行き確率体積1200及び第2の奥行き確率体積1202に関連付けられた不確実性測定を融合させることにより、第1の奥行き確率体積1200及び第2の奥行き確率体積1202に関連付けられた奥行き推定自体が確率的に融合され得、これにより、融合奥行き確率体積1204が生成される。これは、図12に概略的に示され、融合奥行き確率体積1204は、第1の奥行き確率体積1200及び第2の奥行き確率体積1202に類似するが、第1の奥行き確率体積1200の奥行き推定と第2の奥行き確率体積1202の奥行き推定との確率的融合により、第1の奥行き確率体積1200及び第2の奥行き確率体積1202の不確実性測定unmの値とは異なる不確実性測定unmの値を通常含む。このように第1の奥行き確率体積1200と第2の奥行き確率体積1202とを確率的に融合させることにより、2つの異なるソース(幾何学的再構成及びニューラルネットワークアーキテクチャ)からのシーンの奥行きに関する情報を組み合わせることが可能となり、通常、各ソースを個別に使用する場合と比較して、奥行き推定の精度が向上する。 Depth estimation associated with the first depth probability volume 1200 and the second depth probability volume 1202 by fusing the uncertainty measurements associated with the first depth probability volume 1200 and the second depth probability volume 1202. It can be fused probabilistically, which produces a fusion depth probability volume 1204. This is schematically shown in FIG. 12, where the fusion depth probability volume 1204 is similar to the first depth probability volume 1200 and the second depth probability volume 1202, but with the depth estimation of the first depth probability volume 1200. Uncertainty measurement u nm different from the value of uncertainty measurement u nm of the first depth probability volume 1200 and the second depth probability volume 1202 by the probabilistic fusion with the depth estimation of the second depth probability volume 1202. Usually contains the value of. By probabilistically fusing the first depth probability volume 1200 and the second depth probability volume 1202 in this way, information about the depth of the scene from two different sources (geometric reconstruction and neural network architecture). Can be combined, and the accuracy of depth estimation is usually improved compared to the case where each source is used individually.

図13は、図12の第2の奥行き確率体積1202と同様または同一であり得る第2の奥行き確率体積1302を取得するための例示的なシステム1300の概略図である。システム1300は、シーンの観察を表すフレーム1304を受信するように構成される。この事例のフレーム1304は、シーンの画像を表す画像データにより表される。システム1300のニューラルネットワークアーキテクチャ1306は、フレーム1304を処理して第2の奥行き確率体積1302を生成するように構成され、第2の奥行き確率体積1302は、この事例では、第2の複数の奥行き推定1308、及び第2の複数の不確実性測定1310(この事例では、シーンの所与の領域が、第2の複数の奥行き推定1308のうちの奥行き推定により表される奥行きに存在するそれぞれの確率を表す)を含む。 FIG. 13 is a schematic diagram of an exemplary system 1300 for acquiring a second depth probability volume 1302 that may be similar to or identical to the second depth probability volume 1202 of FIG. The system 1300 is configured to receive frames 1304 representing observations of the scene. The frame 1304 of this example is represented by image data representing an image of the scene. The neural network architecture 1306 of the system 1300 is configured to process frames 1304 to generate a second depth probability volume 1302, which in this case is a second plurality of depth estimates. 1308, and a second plurality of uncertainty measurements 1310 (in this case, the probabilities that a given area of the scene is at the depth represented by the depth estimation of the second plurality of depth estimates 1308, respectively. Represents).

図13のシステム1300は、シーンの画像の異なる各部分にそれぞれ関連付けられた複数の奥行き推定集合を含む第2の複数の奥行き推定1308を出力するように構成される。ゆえに、システム1300を使用して図12の第2の奥行き確率体積1202を出力する場合、所与のピクセルについての奥行き推定D、D、及びDは、奥行き推定集合に対応するとみなされ得る。従って、図13のシステム1300を使用して複数のピクセルを含む画像が処理され、複数のピクセルの異なる各ピクセルにそれぞれ関連付けられた複数の奥行き推定集合が生成され得る。 The system 1300 of FIG. 13 is configured to output a second plurality of depth estimation 1308s, including a plurality of depth estimation sets associated with different parts of the image of the scene. Therefore, when using the system 1300 to output the second depth probability volume 1202 of FIG. 12, the depth estimates D 1 , D 2 , and D 3 for a given pixel are considered to correspond to the depth estimation set. obtain. Thus, the system 1300 of FIG. 13 can be used to process an image containing a plurality of pixels to generate a plurality of depth estimation sets associated with each of the different pixels of the plurality of pixels.

図13の実施例のニューラルネットワークアーキテクチャ1306は、事前に定義された値を有するそれぞれの奥行き推定1308に関連付けられた不確実性測定1310を出力するように構成される。言い換えると、各ピクセルについて単一の奥行き値を出力するのではなく、図13のニューラルネットワークアーキテクチャ1306は、各ピクセルについての複数の事前に定義された離散的な奥行き推定1308のそれぞれに関して、不確実性測定1310を出力するように構成される。このようにして、ニューラルネットワークアーキテクチャ1306は、所与のピクセルについて、所与の範囲にわたる離散奥行き確率分布を出力し、これは、この事例ではノンパラメトリックである。これにより、ニューラルネットワークアーキテクチャ1306は、予測される奥行きについての不確実性を表すことが可能となる(所与の奥行き推定に関連付けられた不確実性測定により表され、この事例では確率値により表される)。これにより、さらに、ニューラルネットワークアーキテクチャ1306は、多重仮説奥行き予測を行うことが可能となり、これは、幾何学的再構成により取得された奥行き推定と融合されると、シーンの奥行きをより正確に推定することが可能となる。 The neural network architecture 1306 of the embodiment of FIG. 13 is configured to output an uncertainty measurement 1310 associated with each depth estimate 1308 having a predefined value. In other words, rather than outputting a single depth value for each pixel, the neural network architecture 1306 of FIG. 13 is uncertain for each of the multiple predefined discrete depth estimates 1308 for each pixel. It is configured to output the sex measurement 1310. In this way, the neural network architecture 1306 outputs a discrete depth probability distribution over a given range for a given pixel, which is nonparametric in this case. This allows the neural network architecture 1306 to represent uncertainty about the expected depth (represented by the uncertainty measurement associated with a given depth estimate, in this case by the probability value). Will be). This also allows the neural network architecture 1306 to make multiple hypothetical depth predictions, which, when fused with the depth estimates obtained by geometric reconstruction, estimate the depth of the scene more accurately. It becomes possible to do.

ニューラルネットワークアーキテクチャ1306により出力される事前に定義された値の間には、不均一な間隔があり得る。このような手法では、ニューラルネットワークアーキテクチャ1306は、所与のピクセルについて、奥行き推定により占められる奥行き範囲にわたる可変解像度を有する奥行き確率分布を出力するように構成される。例えば、事前に定義された値は、事前に定義された奥行き範囲(奥行き推定により占められる奥行き範囲の全てまたは一部であり得る範囲)内の複数の対数奥行き値を含み得る。対数奥行きパラメータ化を使用することにより、奥行き範囲は対数空間で均一に分割することが可能となる。これにより、シーンの観察をキャプチャするのに使用されるキャプチャデバイスにより近い領域では、より高い奥行き解像度が提供され、より遠い領域では、より低い解像度が提供される。 There can be non-uniform spacing between the predefined values output by the neural network architecture 1306. In such a technique, the neural network architecture 1306 is configured to output a depth probability distribution with variable resolution over the depth range occupied by the depth estimation for a given pixel. For example, a predefined value may include multiple logarithmic depth values within a predefined depth range (a range that can be all or part of the depth range occupied by depth estimation). By using log-depth parameterization, the depth range can be evenly divided in logarithmic space. This provides higher depth resolution in areas closer to the capture device used to capture the observation of the scene and lower resolution in areas farther away.

図13のシステム1300を使用して処理された画像の所与のピクセルについて、第2の複数の奥行き推定1308のそれぞれの奥行き推定に関連付けられた不確実性測定1310が、図14に概略的に示される。図14では、不確実性測定は、y軸1400上に示される確率密度値であり、奥行き推定は、x軸1402上に示されるメートル単位の対数奥行き値である。図14の奥行き推定は、離散値を有する。よって、図14は、棒グラフ1406形式の離散確率分布1400を示す。 For a given pixel in an image processed using the system 1300 of FIG. 13, the uncertainty measurement 1310 associated with each depth estimation of the second plurality of depth estimates 1308 is schematically shown in FIG. Shown. In FIG. 14, the uncertainty measurement is a probability density value shown on the y-axis 1400, and the depth estimation is a metric log depth value shown on the x-axis 1402. The depth estimation in FIG. 14 has discrete values. Therefore, FIG. 14 shows a discrete probability distribution 1400 in the form of a bar graph 1406.

いくつかの事例では、離散化誤差を減らすため、及びシーンの奥行き推定の取得を促進するために、離散確率分布1400から連続確率関数が取得され得る。離散確率分布1400から取得された連続確率関数1408が、図14に概略的に示される。連続確率関数1408は、滑らかな関数であり得、図16を参照して下記でさらに論述される。 In some cases, a continuous probability function can be obtained from the discrete probability distribution 1400 in order to reduce the discretization error and facilitate the acquisition of the depth estimation of the scene. The continuous probability function 1408 obtained from the discrete probability distribution 1400 is schematically shown in FIG. The continuous probability function 1408 can be a smooth function and is further discussed below with reference to FIG.

図13を参照し直すと、ニューラルネットワークアーキテクチャ1306として、様々な異なるニューラルネットワークアーキテクチャが使用され得る。一例では、ニューラルネットワークアーキテクチャ1306は、残差ニューラルネットワーク(ResNet)エンコーダと、その後に続く3つのアップサンプルブロックとを含み、各アップサンプルブロックは、双線形アップサンプリング層、入力画像との結合、その後に2つの畳み込み層を含み、これにより、出力は、シーンの観察を表す入力画像の解像度と同じ解像度を有する。 Revisiting FIG. 13, a variety of different neural network architectures can be used as the neural network architecture 1306. In one example, the neural network architecture 1306 includes a residual neural network (ResNet) encoder followed by three upsample blocks, where each upsample block is a bilinear upsampling layer, coupled with an input image, and then. Contains two convolutional layers, whereby the output has the same resolution as the input image representing the observation of the scene.

離散奥行き推定に関連付けられた確率値を予測するように図13のニューラルネットワークアーキテクチャ1306をトレーニングするのに、順序損失関数が使用され得る。好適な順序損失関数L(θ)の例は、次のとおりである。

Figure 2022519194000002
θは、ニューラルネットワークアーキテクチャ1306の重みの集合であり、Kは、奥行き範囲が離散化されるビンの数であり、k は、ピクセルiについてのグラウンドトゥルース奥行きを含むビンのインデックスであり、pθ,i(k =j)は、グラウンドトゥルース奥行きがビンj内である確率に関するニューラルネットワークアーキテクチャ1306の予測である。しかし、これは単なる例に過ぎず、他の実施例では、他の損失関数が使用され得る。 A sequence loss function can be used to train the neural network architecture 1306 of FIG. 13 to predict the probability values associated with the discrete depth estimation. An example of a suitable sequence loss function L (θ) is as follows.
Figure 2022519194000002
θ is the set of weights in the neural network architecture 1306, K is the number of bins whose depth range is discretized, and ki * is the index of bins containing the ground truth depth for pixel i . p θ, i ( ki * = j) is a prediction of the neural network architecture 1306 regarding the probability that the ground truth depth is within bin j. However, this is just an example, and other loss functions may be used in other embodiments.

図15を見ると、図15は、図12の第1の奥行き確率体積1200と同様または同一であり得る第1の奥行き確率体積1502を取得するための例示的なシステム1500の概略図である。図15のシステム1500は、シーンの第1の観察を表す第1のフレーム1504、及び例えばシーンの第1の観察の前または後のシーンの第2の観察を表す第2のフレーム1506を処理するように構成される。実施例の第1の観察及び第2の観察は、最後に部分的に重複する(例えば両方がシーンの同一部分の観察を含むように)。 Looking at FIG. 15, FIG. 15 is a schematic diagram of an exemplary system 1500 for acquiring a first depth probability volume 1502 that may be similar to or identical to the first depth probability volume 1200 of FIG. System 1500 of FIG. 15 processes a first frame 1504 representing a first observation of a scene, and a second frame 1506 representing, for example, a second observation of the scene before or after the first observation of the scene. It is configured as follows. The first and second observations of the embodiment are finally partially overlapped (eg, both include observations of the same part of the scene).

第1のフレーム1504及び第2のフレーム1506は、測光誤差計算エンジン1508により処理され、第1のフレーム1504の複数の部分のそれぞれについて、測光誤差1510の集合が生成され、測光誤差1510はそれぞれ、第1の複数の奥行き推定1512のうちの異なる各奥行き推定に関連付けられる。測光誤差は、第1の複数の奥行き推定1512のそれぞれについて、第1のフレーム1504を第2のフレーム1506にワープさせ、ワープされた第1のフレーム1504と第2のフレーム1506との差を特定することにより、取得され得る。いくつかの事例では、差は、例えば3×3ピクセルサイズのピクセルのパッチについてのワープされた第1のフレーム1504のピクセル値と第2のフレーム1506のピクセル値との二乗差の合計であるが、これは単なる実例に過ぎない。このように第1のフレーム1504をワープさせることは、例えば図2を参照して説明されたように、第1のフレーム1504のピクセルを第2のフレーム1506内の対応する位置にマッピングすることに対応するとみなされ得る。例えば、図2を参照して説明された実施例における測光誤差を最小化する奥行き値を特定するためにそれぞれの奥行き値について反復的に計算された測光誤差は、図15の実施例における測光誤差計算エンジン1508による測光誤差1510の集合として、出力され得る。図2の実施例は、測光誤差を最小化することにより取得された奥行き推定に関連付けられた不確実性測定を計算することを含み、例えば、ヤコビアン項を使用して計算される。対照的に、図15の実施例では、測光誤差1510の集合は、それら自体が、各奥行き推定にそれぞれ関連付けられたそれぞれの不確実性測定として扱われる。 The first frame 1504 and the second frame 1506 are processed by the photometric error calculation engine 1508 to generate a set of photometric errors 1510 for each of the plurality of parts of the first frame 1504, each of which has a photometric error 1510. Associated with each different depth estimate of the first plurality of depth estimates 1512. The photometric error warps the first frame 1504 to the second frame 1506 for each of the first plurality of depth estimates 1512 and identifies the difference between the warped first frame 1504 and the second frame 1506. Can be obtained by doing so. In some cases, the difference is, for example, the sum of the squared differences between the pixel values of the warped first frame 1504 and the pixel values of the second frame 1506 for a patch of pixels of 3x3 pixel size. , This is just an example. Warping the first frame 1504 in this way is to map the pixels of the first frame 1504 to the corresponding positions in the second frame 1506, as described, for example, with reference to FIG. Can be considered corresponding. For example, the photometric error calculated iteratively for each depth value to identify the depth values that minimize the photometric error in the embodiment described with reference to FIG. 2 is the photometric error in the embodiment of FIG. It can be output as a set of metering errors 1510 by the calculation engine 1508. The embodiment of FIG. 2 involves calculating the uncertainty measurement associated with the depth estimation obtained by minimizing the photometric error, eg, using the Jacobian term. In contrast, in the embodiment of FIG. 15, the set of photometric errors 1510 themselves are treated as their respective uncertainty measurements associated with each depth estimate.

第1のフレーム1504のワープは、第2のフレーム1506でキャプチャされたシーンの第2の観察を複製することを目的とする(例えば第2のフレーム1506をキャプチャしている間のカメラの第2の姿勢と同じ姿勢を有するカメラで観察されたように)。第1のフレーム1504はこのように、第1の複数の奥行き推定1512のそれぞれについて、変換される(奥行き推定のそれぞれは、第1のフレーム1504をキャプチャしている間のカメラの第1の姿勢を基準としたシーンの仮説奥行きである)。通常、第1の姿勢を基準としたシーンの奥行きは不均一であるが、シーン全体が同じ奥行きにあると仮定して、その奥行き推定の測光誤差をピクセルごとに(または画像パッチごとに)計算することにより、より効率的にワープが実行され得る。この手法は、第1のフレーム1504の複数のピクセルのそれぞれについての第1の複数の奥行き推定1512に対して繰り返し実行されて、コスト体積が生成され得、コスト体積から第1の奥行き確率体積1502が取得され得る。図2を参照して説明されたように、カメラの第1の姿勢及び第2の姿勢は、任意の好適な方法を使用して取得され得ることを、理解されたい。 The warp of the first frame 1504 is intended to duplicate the second observation of the scene captured in the second frame 1506 (eg, the second of the cameras while capturing the second frame 1506). As observed with a camera that has the same posture as the posture of). The first frame 1504 is thus transformed for each of the first plurality of depth estimates 1512 (each of the depth estimates is the first orientation of the camera while capturing the first frame 1504). Is the hypothetical depth of the scene based on). Normally, the depth of the scene relative to the first pose is non-uniform, but assuming the entire scene is at the same depth, the measurement error of the depth estimation is calculated pixel by pixel (or image patch by image). By doing so, the warp can be executed more efficiently. This technique can be iterated over for the first plurality of depth estimates 1512 for each of the plurality of pixels in the first frame 1504 to generate a cost volume, from the cost volume to the first depth probability volume 1502. Can be obtained. It should be understood that the first and second poses of the camera can be obtained using any suitable method, as described with reference to FIG.

第1の奥行き確率体積1502と、図13のシステム1300を使用して取得される第2の奥行き確率体積との融合を簡潔にするために、確率値がニューラルネットワークアーキテクチャ1306により出力されるそれぞれの奥行きビンの中点が、第1の奥行き確率体積1502のそれぞれの奥行き推定として使用され得る。しかし、他の実施例において、そうである必要はない。 Each probability value is output by the neural network architecture 1306 to simplify the fusion of the first depth probability volume 1502 and the second depth probability volume obtained using the system 1300 of FIG. The midpoint of the depth bin can be used as the respective depth estimate for the first depth probability volume 1502. However, in other embodiments it does not have to be.

いくつかの実施例では、第1のフレーム1504がワープされる前、及び/または測光誤差1510の集合が計算される前に、第1のフレーム1504及び第2のフレーム1506は正規化される。正規化は、第1のフレーム1504及び第2のフレーム1506のそれぞれについて、ピクセル値のそれぞれから平均ピクセル値を減算して、出力された値のそれぞれを、第1のフレーム1504及び第2のフレーム1506の標準偏差で割ることにより、実行され得る。これにより、シーンの第1の観察と第2の観察との照明の変化に過度に影響されることなく、所与の奥行き推定に関して、ワープされた第1のフレーム1504と第2のフレーム1506との根本的な測光差を、より正確に特定することが可能となる。 In some embodiments, the first frame 1504 and the second frame 1506 are normalized before the first frame 1504 is warped and / or before the set of photometric errors 1510 is calculated. For normalization, for each of the first frame 1504 and the second frame 1506, the average pixel value is subtracted from each of the pixel values, and the output values are each of the first frame 1504 and the second frame. It can be done by dividing by the standard deviation of 1506. This allows the warped first frame 1504 and second frame 1506 with respect to a given depth estimation without being overly affected by changes in illumination between the first and second observations of the scene. It is possible to more accurately identify the fundamental photometric difference of.

前述のように、図15の測光誤差計算エンジン1508により取得された測光誤差1510の集合は、コスト体積を形成するとみなされ得る。測光誤差1510の集合から第1の奥行き確率体積1502を取得するために、図15のシステム1500は、スケーリングエンジン1512を含み、これは、測光誤差1510をそれぞれの確率値1514(第1の複数の奥行き推定1512のうちの奥行き推定に関連付けられた不確実性測定に対応するとみなされ得る)にスケーリングするように構成される。一事例では、スケーリングは、スケーリング後に所与のピクセルについての第1の複数の奥行き推定1512のそれぞれに関する二乗測光誤差の負の値の合計が1となるように、各ピクセルの二乗測光誤差の負の値を個別にスケーリングすることを含む。次に、スケーリングされた値は、第1の複数の奥行き推定1512のうちの所与の奥行き推定に関連付けられたそれぞれの確率値1514として用いられ、これにより、第1の確率体積1502が生成され得る。 As mentioned above, the set of photometric errors 1510 acquired by the photometric error calculation engine 1508 in FIG. 15 can be considered to form a cost volume. To obtain the first depth probability volume 1502 from the set of metering errors 1510, the system 1500 of FIG. 15 includes a scaling engine 1512, which sets the metering error 1510 to each probability value 1514 (first plurality). It is configured to scale to (which can be considered to correspond to the uncertainty measurement associated with the depth estimation) of the depth estimation 1512. In one example, scaling is the negative squared metering error of each pixel such that after scaling the sum of the negative squared metering errors for each of the first plurality of depth estimates 1512 for a given pixel is 1. Includes scaling the values of individually. The scaled values are then used as the respective probability values 1514 associated with a given depth estimate of the first plurality of depth estimates 1512, thereby producing a first probability volume 1502. obtain.

図16は、シーンの融合奥行き推定を取得する例示的な方法1600を示すフロー図であり、シーンの観察は、ピクセルの配列をそれぞれ含む複数のフレームでキャプチャされる。融合奥行き推定は、図12~図15を参照して説明されたような第1の奥行き確率体積及び第2の奥行き確率体積を使用して取得される。 FIG. 16 is a flow diagram illustrating an exemplary method 1600 for obtaining a fusion depth estimate of a scene, where the observation of the scene is captured in multiple frames, each containing an array of pixels. The fusion depth estimation is obtained using a first depth probability volume and a second depth probability volume as described with reference to FIGS. 12-15.

図16の項目1602は、融合確率体積を取得することを含む。項目1602にて、第1の奥行き推定と第2の奥行き推定(第1の奥行き確率体積と第2の奥行き確率体積の一部をそれぞれ形成する)は、第1の複数の不確実性測定と第2の複数の不確実性測定とを組み合わせることにより、確率的に融合され、融合確率体積が生成される。第1の複数の不確実性測定と第2の複数の不確実性測定は、様々な異なる方法で組み合され得る。第1の複数の不確実性測定及び第2の複数の不確実性測定が第1の奥行き確率体積及び第2の奥行き確率体積に関連付けられた確率値である一事例では、第1の複数の奥行き推定のうちの奥行き推定に関連付けられた確率値と、第2の複数の奥行き推定のうちの対応する奥行き推定に関連付けられた確率値と組み合わせることで(例えば乗算することで)、奥行き推定のそれぞれについて融合値を取得することにより、融合確率体積が取得される。いくつかの事例では、次に、所与のピクセルについての奥行き推定のそれぞれに関する融合値が、合計1となるようにスケーリングされ、奥行き推定のそれぞれに関する融合確率値が生成される。しかし、これは、他の事例では、例えば第1の複数の奥行き推定及び第2の複数の奥行き推定に関連付けられた確率値が、所与のピクセルについて合計1となるように既に前にスケーリングされている場合は、省略され得る。 Item 1602 in FIG. 16 includes acquiring the fusion probability volume. In item 1602, the first depth estimation and the second depth estimation (forming a part of the first depth probability volume and the second depth probability volume, respectively) are the first plurality of uncertainty measurements. By combining with a second plurality of uncertainty measurements, they are stochastically fused to produce a fusion probability volume. The first plurality of uncertainty measurements and the second plurality of uncertainty measurements can be combined in a variety of different ways. In one case, where the first plurality of uncertainty measurements and the second plurality of uncertainty measurements are the probability values associated with the first depth probability volume and the second depth probability volume, the first plurality. By combining (eg, multiplying) the probability value associated with the depth estimation of the depth estimation with the probability value associated with the corresponding depth estimation of the second plurality of depth estimations, the depth estimation By acquiring the fusion value for each, the fusion probability volume is acquired. In some cases, the fusion values for each of the depth estimates for a given pixel are then scaled to a total of 1 to generate fusion probability values for each of the depth estimates. However, in other cases, the probability values associated with, for example, the first plurality of depth estimates and the second plurality of depth estimates have already been previously scaled to a total of 1 for a given pixel. If so, it can be omitted.

図16の実施例では、融合確率体積を使用して取得されるシーンの奥行き推定の定量化を回避するため、及び後続の最適化ステップで使用する好適な関数(図16の項目1604及び1606を参照してさらに論述される)を取得するために、融合確率体積を使用して、奥行き確率関数が取得される。奥行き確率関数は、融合確率体積のパラメータ化を表し、連続的な奥行き値を取得することを可能にする(単に融合確率体積の離散的な奥行き推定だけでなく)。奥行き確率関数は、例えばガウス基底関数を使用する、カーネル密度推定(KDE)技法など、離散分布をパラメータ化する任意の好適な技法を使用して、取得され得る。 In the embodiment of FIG. 16, suitable functions (items 1604 and 1606 of FIG. 16) are used to avoid quantification of the depth estimation of the scene obtained using the fusion probability volume and in subsequent optimization steps. The depth probability function is obtained using the fusion probability volume to obtain (referred to and further discussed). The depth probability function represents the parameterization of the fusion probability volume and makes it possible to obtain continuous depth values (not just a discrete depth estimation of the fusion probability volume). Depth probability functions can be obtained using any suitable technique for parameterizing discrete distributions, such as the kernel density estimation (KDE) technique, which uses Gaussian basis functions.

図16の項目1604及び1606にて、融合確率体積からシーンの融合奥行き推定が取得される(この事例では融合確率体積から取得された奥行き確率関数から取得されるが、これは単なる例に過ぎない)。図16の実施例では、シーンの融合奥行き推定を取得することは、項目1604にてコスト関数を最適化することを含む。この事例のコスト関数は、融合確率体積を使用して取得された第1のコスト項と、奥行き値に対する局所的な幾何学的制約を含む第2のコスト項とを含む。コスト関数c(d)は、次のように表され得る。
c(d)=c(d)+λc(d)
dは、推定される奥行き値であり、c(d)は、第1のコスト項であり、c(d)は第2のコスト項であり、λは、コスト関数に対する第2のコスト項の寄与を調整するために使用されるパラメータである。パラメータλは、実験的に調整され、奥行き値の好適な推定が取得され得る。一事例のパラメータλの好適な値は、1×10であるが、これは単なる例に過ぎない。
In items 1604 and 1606 of FIG. 16, the fusion depth estimation of the scene is obtained from the fusion probability volume (in this case, it is obtained from the depth probability function obtained from the fusion probability volume, but this is only an example. ). In the embodiment of FIG. 16, acquiring the fusion depth estimation of the scene comprises optimizing the cost function in item 1604. The cost function in this case includes a first cost term obtained using the fusion probability volume and a second cost term that includes a local geometric constraint on the depth value. The cost function c (d) can be expressed as follows.
c (d) = c 1 (d) + λc 2 (d)
d is the estimated depth value, c 1 (d) is the first cost term, c 2 (d) is the second cost term, and λ is the second cost for the cost function. A parameter used to adjust the contribution of a term. The parameter λ can be adjusted experimentally to obtain a good estimate of the depth value. A suitable value for the parameter λ in one case is 1 × 107 , but this is just an example.

第1のコスト項は、融合確率体積に依存し、図16の実施例では、融合確率体積から取得された奥行き確率関数に依存する。この事例では、第1のコスト項は、次のように表され得る。

Figure 2022519194000003
(d)は、奥行きdで評価された、所与の入力フレーム(シーンの観察を表す)のピクセルiについての奥行き確率関数の出力である。 The first cost term depends on the fusion probability volume and, in the embodiment of FIG. 16, depends on the depth probability function obtained from the fusion probability volume. In this case, the first cost term can be expressed as:
Figure 2022519194000003
f i ( di ) is the output of the depth probability function for pixel i of a given input frame (representing the observation of the scene), evaluated at depth di.

第1の奥行き確率体積と第2の奥行き確率体積とを融合させることにより、融合確率体積は通常、幾何学的再構成またはニューラルネットワークアーキテクチャを単独で使用する場合よりも、局所的一貫性が高くなる。図16の実施例では、正規化項とみなされ得る第2のコスト項を含むことにより、局所的一貫性は向上する。この事例の第2のコスト項は、コスト関数の最適化中に局所的な幾何学的制約を課し、これにより、局所的幾何学がより良く維持される。 By fusing the first depth-probability volume with the second depth-probability volume, the fusion-probability volume is usually more locally consistent than when geometric reconstruction or neural network architecture is used alone. Become. In the embodiment of FIG. 16, local consistency is improved by including a second cost term that can be considered a normalization term. The second cost term in this case imposes local geometric constraints during the optimization of the cost function, which better maintains the local geometry.

図16の方法1600を使用して融合奥行き推定1702を取得するためのシステム1700が、図17に概略的に示される。融合奥行き確率体積1704が、システム1700の奥行き推定エンジン1706に入力される。奥行き推定エンジン1706は、図16の項目1604のコスト関数最適化を実行する。コスト関数の第1のコスト項は、奥行き推定エンジン1706に入力される融合奥行き確率体積1704に依存し、この事例では、上記の式c(d)を使用して表され得る。ゆえに、図17では、奥行き推定エンジン1706は、第1のコスト項を計算するために、融合奥行き確率体積1704から奥行き確率関数を取得するように構成される。しかし、他の事例では、第1のコスト項は、融合奥行き確率体積1704自体から取得され得る、または奥行き推定エンジン1706は、融合奥行き確率体積1704ではなく、奥行き確率関数を受信するように構成され得る。 A system 1700 for obtaining fusion depth estimates 1702 using method 1600 of FIG. 16 is schematically shown in FIG. The fusion depth probability volume 1704 is input to the depth estimation engine 1706 of the system 1700. The depth estimation engine 1706 performs the cost function optimization of item 1604 of FIG. The first cost term of the cost function depends on the fusion depth probability volume 1704 input to the depth estimation engine 1706 and can be expressed in this case using equation c 1 (d) above. Therefore, in FIG. 17, the depth estimation engine 1706 is configured to obtain a depth probability function from the fusion depth probability volume 1704 in order to calculate the first cost term. However, in other cases, the first cost term can be obtained from the fusion depth probability volume 1704 itself, or the depth estimation engine 1706 is configured to receive a depth probability function rather than a fusion depth probability volume 1704. obtain.

図17のシステム1700はまた、さらなるニューラルネットワークアーキテクチャ1708を含み、これは、融合奥行き推定が生成されるシーンの観察を表す入力フレーム1710を受信するように、及びコスト関数の第2のコスト項を生成する際に使用する幾何学的制約データ1712を生成するように、構成される。この事例の入力フレーム1710は、第2の奥行き確率体積を生成するためにニューラルネットワークアーキテクチャにより処理される入力フレームであり、第1の奥行き確率体積を生成するために幾何学的再構成エンジンにより処理されるフレームのうちの1つであるが、これは単なる例に過ぎない。 The system 1700 of FIG. 17 also includes an additional neural network architecture 1708, which is to receive an input frame 1710 representing an observation of the scene in which the fusion depth estimation is generated, and a second cost term of the cost function. It is configured to generate the geometric constraint data 1712 used in the generation. The input frame 1710 in this example is an input frame processed by the neural network architecture to generate a second depth probability volume and is processed by a geometric reconstruction engine to generate a first depth probability volume. It is one of the frames that are made, but this is just an example.

図17の実施例の幾何学的制約データ1712は、表面配向推定及びオクルージョン境界推定を表す。表面配向推定及びオクルージョン境界推定を使用して、第2のコスト項が生成される。例えば、表面配向推定は、入力フレーム1710の所与のピクセルについての表面法線を表し、さらなるニューラルネットワークアーキテクチャ1708により予測される。当業者には理解されるように、任意の好適にトレーニングされたニューラルネットワークアーキテクチャが、さらなるニューラルネットワークアーキテクチャ1708として使用され得る。第2のコスト項で表面配向推定を使用すると、コスト関数を最適化することにより取得される融合奥行き推定において、局所的幾何学の維持が向上する。例えば、隣接するピクセルについて表面配向推定が類似する(例えばこれらのピクセルは同様の配向であり、連続した平面の表面が見込まれることを示す)場合、第2のコスト項は通常、小さくなる。 The geometric constraint data 1712 of the embodiment of FIG. 17 represents surface orientation estimation and occlusion boundary estimation. A second cost term is generated using surface orientation estimation and occlusion boundary estimation. For example, the surface orientation estimation represents a surface normal for a given pixel in input frame 1710 and is predicted by the further neural network architecture 1708. Any well-trained neural network architecture can be used as a further neural network architecture 1708, as will be appreciated by those of skill in the art. Using surface orientation estimation in the second cost term improves the maintenance of local geometry in the fusion depth estimation obtained by optimizing the cost function. For example, if the surface orientation estimates are similar for adjacent pixels (eg, these pixels have similar orientations, indicating that a surface of a continuous plane is expected), the second cost term is usually smaller.

しかし、シーンは通常、オブジェクトの境界(オクルージョン境界と称され得る)に奥行きの不連続性を含む。このような境界では、シーンの観察を表す入力フレームの隣接するピクセルの表面配向推定は、通常、互いに異なる。これらの領域のオブジェクトの一部は、オブジェクト境界におけるオブジェクトの奥行きの急激な変化により遮蔽され得るため、このような領域では、表面配向推定は信頼性に欠き得る。従って、オブジェクトのこれらの部分の観察は、入力フレームに存在し得ず、これは、表面配向推定の信頼性、及びシーンの観察を表す画像の隣接するピクセルの表面配向推定間の差に基づくコスト項の信頼性に、影響を与え得る。 However, scenes usually contain depth discontinuities at the boundaries of objects (which can be referred to as occlusion boundaries). At such boundaries, the surface orientation estimates of adjacent pixels in the input frame that represent the observation of the scene are usually different from each other. Surface orientation estimates can be unreliable in such areas, as some of the objects in these areas can be occluded by sudden changes in the depth of the objects at the object boundaries. Therefore, observations of these parts of the object cannot be present in the input frame, which is the reliability of the surface orientation estimation and the cost based on the difference between the surface orientation estimates of adjacent pixels of the image representing the observation of the scene. It can affect the reliability of a term.

これを補うために、図17の実施例の第2のコスト項が、オクルージョン境界での正規化項をマスクする。言い換えると、例えば、オクルージョン境界に対応するピクセルなど、入力フレーム1710の信頼性のない領域に対応するピクセルについては、第2のコスト項の寄与が低くなり、より信頼性のある領域に対応するピクセルについては、第2のコスト項の寄与が高くなるように、入力フレーム1710のそれぞれのピクセルについて第2のコスト項の寄与を調整するために、第2のコスト項は0~1の値などの値で重みづけされる。例えば、オクルージョン境界上にあるピクセルについて、第2のコスト項は、ゼロの値の重みで重みづけされ得、よって、これらのピクセルについては、第2のコスト項は、コスト関数の最適化に寄与しない。 To compensate for this, the second cost term in the embodiment of FIG. 17 masks the normalization term at the occlusion boundary. In other words, for pixels that correspond to unreliable regions of input frame 1710, such as pixels that correspond to occlusion boundaries, the second cost term contributes less and corresponds to more reliable regions. In order to adjust the contribution of the second cost term for each pixel of the input frame 1710 so that the contribution of the second cost term is higher, the second cost term may be a value of 0 to 1, or the like. Weighted by value. For example, for pixels on the occlusion boundary, the second cost term can be weighted with a zero value weight, so for these pixels the second cost term contributes to the optimization of the cost function. do not do.

いくつかの事例では、さらなるニューラルネットワークアーキテクチャ1708は、所与のピクセルがオクルージョン境界に属する確率を、オクルージョン境界推定として出力する。このような事例では、この確率が、例えば0.4などの所定閾値以上である値である場合、ピクセルはオクルージョン境界上にあるとみなされ得る。 In some cases, the additional neural network architecture 1708 outputs the probability that a given pixel belongs to the occlusion boundary as an occlusion boundary estimate. In such cases, pixels can be considered to be on occlusion boundaries if this probability is greater than or equal to a predetermined threshold, such as 0.4.

図17の実施例では、奥行き推定エンジン1706により生成され、コスト関数を最適化するのに使用される第2のコスト項c(d)は、次のように表され得る。

Figure 2022519194000004
∈{0、1}は、入力フレーム1710のピクセルiのオクルージョン境界推定に基づいたマスクの値であり、<.,.>は、ドット積演算子を表し、
Figure 2022519194000005
は、さらなるニューラルネットワークアーキテクチャ1708により出力された表面配向推定であり、Kは、入力フレーム1710をキャプチャするのに使用されたカメラに関連付けられた固有パラメータを表す行列であり(時にカメラ固有行列と称される)、
Figure 2022519194000006
は、ピクセルiの均一ピクセル座標を表し、Wはピクセル単位の画像の幅である。 In the embodiment of FIG. 17, the second cost term c 2 (d) generated by the depth estimation engine 1706 and used to optimize the cost function can be expressed as:
Figure 2022519194000004
b i ∈ {0, 1} is the mask value based on the occlusion boundary estimation of the pixel i of the input frame 1710, and <. ,. > Represents the dot product operator
Figure 2022519194000005
Is a surface orientation estimation output by the further neural network architecture 1708, where K is a matrix representing the camera-specific parameters used to capture the input frame 1710 (sometimes referred to as the camera-specific matrix). Will be),
Figure 2022519194000006
Represents the uniform pixel coordinates of pixel i, and W is the width of the image in pixel units.

図17では、勾配降下を使用して奥行き推定エンジン1706によりコスト関数が最適化され、コスト関数の値を最小化する奥行き値dに対応する融合奥行き推定1702が取得される(図16の項目1606)。しかし、これは単なる例に過ぎず、他の事例では、異なる最適化技法を使用して融合奥行き推定は取得され得る。 In FIG. 17, the depth estimation engine 1706 uses gradient descent to optimize the cost function and obtain a fusion depth estimate 1702 corresponding to the depth value d that minimizes the value of the cost function (item 1606 in FIG. 16). ). However, this is just an example, and in other cases fusion depth estimates can be obtained using different optimization techniques.

図18は、第2の融合奥行き確率体積を取得する例示的な方法1800を示すフロー図である。図18の方法1800を使用して、シーンの第1の観察を表すビデオの第1のフレームに関連付けられた第1の融合奥行き確率体積から、シーンの第2の観察を表すビデオデータの第2のフレームに関連付けられた第2の融合奥行き確率体積が取得され得、第1のフレームは、例えば第2のフレームの前または後である。第1の融合奥行き確率体積を使用して第2の融合奥行き確率体積を取得することにより、シーンの奥行きに関する情報が、複数のフレームにわたり保持され得る。これにより、第2のフレームの奥行き推定は、第1のフレームからの情報を使用せずに第2のフレームの奥行き推定を再計算する場合と比較して、向上し得る。 FIG. 18 is a flow diagram illustrating an exemplary method 1800 for obtaining a second fusion depth probability volume. Using method 1800 of FIG. 18, from the first fusion depth probability volume associated with the first frame of the video representing the first observation of the scene, the second of the video data representing the second observation of the scene. A second fusion depth probability volume associated with a frame can be obtained, the first frame being, for example, before or after the second frame. By using the first fusion depth probability volume to obtain the second fusion depth probability volume, information about the depth of the scene can be retained across multiple frames. Thereby, the depth estimation of the second frame can be improved as compared with the case of recalculating the depth estimation of the second frame without using the information from the first frame.

第1の融合奥行き確率体積は第1のフレームのそれぞれのピクセルの奥行き確率分布を表すため、第1の融合奥行き確率体積により表される情報を第2のフレームに組み込むことは、自明ではない。これに対処するために、図18の項目1802は、第1の融合奥行き確率体積を、第1の占有確率体積に変換することを含む。第1のフレームの第1の融合奥行き確率体積は、図12~図17を参照して説明された方法のうちのいずれかを使用して取得され得る。第1の占有確率体積は、占有ベースの確率体積としてみなされ得、よって、シーンを向く第1のフレームのキャプチャに関連付けられた第1の姿勢のカメラから伝搬される光線に沿った奥行きごとに、空間内の関連ポイントが占有されている確率が存在する。 Since the first fusion depth probability volume represents the depth probability distribution of each pixel of the first frame, it is not obvious to incorporate the information represented by the first fusion depth probability volume into the second frame. To address this, item 1802 in FIG. 18 includes converting a first fusion depth probability volume into a first occupancy probability volume. The first fusion depth probability volume of the first frame can be obtained using any of the methods described with reference to FIGS. 12-17. The first occupancy stochastic volume can be considered as a occupancy-based stochastic volume, and thus for each depth along the light beam propagated from the camera in the first orientation associated with the capture of the first frame facing the scene. , There is a probability that the related points in space are occupied.

一事例では、第1の占有確率体積は、奥行きが第1の奥行き確率体積のビンjに属することを条件として、ボクセルSk,i(例えば第1のフレームのピクセルiに関連付けられた光線に沿った第1の奥行き確率体積のビンkに関連付けられた奥行き推定に対応する3次元体積要素である)が占有されている確率を最初に特定することにより、取得される。

Figure 2022519194000007
In one example, the first occupancy probability volume is on a voxel Sk, i (eg, a ray associated with pixel i in the first frame, provided that the depth belongs to the bin j of the first depth probability volume. The first depth probability along is obtained by first identifying the probability that the (three-dimensional volume element corresponding to the depth estimation associated with the bin k of the volume) is occupied.
Figure 2022519194000007

これから、第1の占有確率体積p(Sk,i=1)が、以下の式を使用して取得され得る。

Figure 2022519194000008
(k =k)は、第1のフレームのピクセルiについての第1の奥行き確率体積のビンkの確率値であり、Kは、ピクセル単位の第1のフレームの幅である。 From this, the first occupancy probability volume p ( Sk, i = 1) can be obtained using the following equation.
Figure 2022519194000008
p i ( ki * = k) is the probability value of the bin k of the first depth probability volume for the pixel i of the first frame, and K is the width of the first frame in pixel units.

図18の項目1804は、シーンを観察している間のカメラの姿勢を表す姿勢データに基づいて、第1の占有確率体積をワープさせて、第2のフレームに関連付けられた第2の占有確率体積を取得することを含む。第1の占有確率体積をワープさせることは、図15を参照して説明された測光誤差1510を取得するために第1のフレームをワープさせることと、その他の点では類似し得、通常、第1のフレームをキャプチャしている間のカメラの第1の姿勢を表す第1の姿勢データと、第2のフレームをキャプチャしている間のカメラの第2の姿勢を表す第2の姿勢データとを、姿勢データとして使用する。このようにして、第1の占有確率体積は、第2のフレームにワープされ得る。いくつかの事例では、第2のフレームは、対応するワープされた第1の占有確率体積が存在しないいくつかのピクセルを含み得る。これらのピクセルには、例えば(単なる例に過ぎないが)0.01の値などの所定値(例えばデフォルト値)が占有確率に使用され得る。 Item 1804 in FIG. 18 warps the first occupancy probability volume based on the stance data representing the posture of the camera while observing the scene, and the second occupancy probability associated with the second frame. Includes obtaining volume. Warping the first occupied probability volume can be otherwise similar to warping the first frame to obtain the photometric error 1510 described with reference to FIG. 15, and is usually the first. The first posture data representing the first posture of the camera while capturing one frame, and the second posture data representing the second posture of the camera while capturing the second frame. Is used as posture data. In this way, the first occupancy probability volume can be warped to the second frame. In some cases, the second frame may contain some pixels in which the corresponding warped first occupancy volume does not exist. For these pixels, a predetermined value (eg, the default value), such as a value of 0.01 (just an example), may be used for the occupancy probability.

図18の項目1806にて、第2の占有確率体積は、第2のフレームに関連付けられた第2の融合奥行き確率体積に変換される。この変換は、次の式を使用して実行され、第2のフレームのピクセルiについての第2の奥行き確率分布のビンkの確率値 p(k =k)が取得され得る。

Figure 2022519194000009
この式を使用して、第2のフレームの複数のピクセルのそれぞれについて、第2の融合奥行き確率分布のそれぞれのビンの確率値が生成され得る。次に、第2の融合奥行き確率分布は、1つの光線に沿って分布の合計が1となるようにスケーリングされ、第2の融合奥行き確率体積が取得され得る。次に、第2のフレームの融合奥行き推定が、例えば図16及び図17を参照して説明されるように、第2の融合奥行き確率体積から取得され得る。 In item 1806 of FIG. 18, the second occupancy probability volume is converted to the second fusion depth probability volume associated with the second frame. This transformation is performed using the following equation, and the probability value pi (ki * = k ) of the bin k of the second depth probability distribution for the pixel i of the second frame can be obtained.
Figure 2022519194000009
Using this equation, the probability values for each bin of the second fusion depth probability distribution can be generated for each of the plurality of pixels in the second frame. Next, the second fusion depth probability distribution can be scaled so that the sum of the distributions is 1 along one ray, and the second fusion depth probability volume can be obtained. The fusion depth estimation of the second frame can then be obtained from the second fusion depth probability volume, as described, for example, with reference to FIGS. 16 and 17.

図19は、さらなる実施例による、シーンの奥行きを推定する例示的な方法1900を示すフロー図である。 FIG. 19 is a flow diagram illustrating an exemplary method 1900 for estimating the depth of a scene according to a further embodiment.

項目1902にて、シーンの幾何学的再構成を使用して、シーンの第1の奥行き確率体積が生成される。第1の奥行き確率体積は、例えば、図12を参照して説明された第1の奥行き確率体積と同一または同様であり、例えば図15を参照して説明されたように、生成され得る。 At item 1902, the geometric reconstruction of the scene is used to generate a first depth probability volume for the scene. The first depth probability volume is, for example, the same as or similar to the first depth probability volume described with reference to FIG. 12, and can be generated, for example, as described with reference to FIG.

項目1904にて、ニューラルネットワークアーキテクチャを使用して、シーンの第2の奥行き確率体積が生成される。第2の奥行き確率体積は、例えば、図12を参照して説明された第2の奥行き確率体積と同一または同様であり、例えば図13及び図14を参照して説明されたように、生成され得る。 At item 1904, a neural network architecture is used to generate a second depth probability volume for the scene. The second depth probability volume is, for example, the same as or similar to the second depth probability volume described with reference to FIG. 12, eg, generated as described with reference to FIGS. 13 and 14. obtain.

項目1906にて、第1の奥行き確率体積及び第2の奥行き確率体積を使用して、シーンの融合奥行き確率体積が生成され、項目1908にて、融合奥行き確率体積を使用して、シーンの融合奥行き推定が生成される。図19の項目1906及び1908の融合奥行き確率体積及び融合奥行き推定の生成は、図16及び/または図17の方法と同様または同一の方法を使用し得る。 In item 1906, the fusion depth probability volume of the scene is generated using the first depth probability volume and the second depth probability volume, and in item 1908, the fusion depth probability volume of the scene is used. Depth estimation is generated. The generation of the fusion depth probability volume and fusion depth estimation of items 1906 and 1908 of FIG. 19 may be similar to or the same as the method of FIGS. 16 and / or FIG.

図20は、さらなる実施例による、シーンの奥行きを推定する画像処理システム2000の概略図である。画像処理システム2000は、融合エンジン2002を含み、融合エンジン2002は、幾何学的再構成エンジン2006からの第1の奥行き確率体積2004と、ニューラルネットワークアーキテクチャ2010からの第2の奥行き確率体積2008とを受信し、第1の奥行き確率体積2004と第2の奥行き確率体積2008とを融合させて、シーンの融合奥行き確率体積2012を出力する。画像処理システム2000はまた、奥行き推定エンジン2014を含み、奥行き推定エンジン2014は、融合奥行き確率体積2012を使用して、シーンの奥行きを推定する(融合奥行き推定2016と称され得る)。 FIG. 20 is a schematic diagram of an image processing system 2000 for estimating the depth of a scene according to a further embodiment. The image processing system 2000 includes a fusion engine 2002, which comprises a first depth probability volume 2004 from the geometric reconstruction engine 2006 and a second depth probability volume 2008 from the neural network architecture 2010. Upon receiving, the first depth probability volume 2004 and the second depth probability volume 2008 are fused, and the fusion depth probability volume 2012 of the scene is output. The image processing system 2000 also includes a depth estimation engine 2014, which estimates the depth of the scene using the fusion depth probability volume 2012 (which can be referred to as fusion depth estimation 2016).

図20の実施例では、画像処理システム2000は、シーンのそれぞれの観察を表す入力フレーム2018を処理して、融合奥行き推定2016を生成するように構成される。入力フレーム2018は、例えば、第1のフレームを含み、これは、例えば図12~図14を参照して説明されたように、第2の奥行き確率体積2008を生成するためにニューラルネットワークアーキテクチャ2010により処理される。入力フレーム2018はまた、第2のフレームを含み得る。このような実施例では、例えば図12及び図15を参照して説明されたように、第1のフレーム及び第2のフレームの両方が、幾何学的再構成エンジン2006により処理され、第1の奥行き確率体積2004が生成され得る。融合エンジン2002による融合奥行き確率体積2012の生成、及び奥行き推定エンジン2014による融合奥行き推定2016の生成は、例えば図16及び図17を参照して説明されたようなものであり得る。 In the embodiment of FIG. 20, the image processing system 2000 is configured to process input frames 2018 representing each observation of the scene to generate a fusion depth estimate 2016. The input frame 2018 includes, for example, a first frame, which is by the neural network architecture 2010 to generate a second depth probability volume 2008, as described, for example, with reference to FIGS. 12-14. It is processed. The input frame 2018 may also include a second frame. In such an embodiment, both the first frame and the second frame are processed by the geometric reconstruction engine 2006, as described, for example, with reference to FIGS. 12 and 15. Depth probability volume 2004 can be generated. The generation of the fusion depth probability volume 2012 by the fusion engine 2002 and the generation of the fusion depth estimation 2016 by the depth estimation engine 2014 may be as described, for example, with reference to FIGS. 16 and 17.

上記の実施例は、例示として理解されるべきである。さらなる実施例が想定される。 The above embodiment should be understood as an example. Further examples are envisioned.

図16の実施例では、コスト関数は、第1のコスト項及び第2のコスト項を含む。その他の点では図16の実施例と同一または同様である他の実施例では、コスト関数は、第2のコスト項を含み得ず、例えば第1のコスト項のみを含み得る。 In the embodiment of FIG. 16, the cost function includes a first cost term and a second cost term. In other embodiments that are otherwise identical or similar to the embodiment of FIG. 16, the cost function may not include a second cost term, eg only a first cost term.

図19の方法1900または図20のシステム2000により第1のフレームについて取得された融合奥行き確率体積は、図18を参照して説明されたようにワープされ、第2のフレームの奥行き確率体積が取得され得る。 The fusion depth probability volume acquired for the first frame by the method 1900 of FIG. 19 or the system 2000 of FIG. 20 is warped as described with reference to FIG. 18 and the depth probability volume of the second frame is acquired. Can be done.

図12~図17及び図19及び図20を参照して説明されたようなシーンの奥行きの推定は、シーンの観察ごとに実行される必要はないことを、理解されたい。代わりに、キーフレームと称され得る観察の部分集合(例えばフレームの部分集合)について、奥行きは推定され得る。これにより、処理要件を軽減することができる。同様に、奥行きが推定されたキーフレームに続くフレームごとに、図19の方法は実行される必要はない。例えば、第1のフレームと第2のフレームとの間でカメラの姿勢が大幅に変更した場合は、図19の方法は省略されてもよい。 It should be understood that the estimation of the depth of the scene as described with reference to FIGS. 12-17 and 19 and 20 need not be performed for each observation of the scene. Alternatively, the depth can be estimated for a subset of observations (eg, a subset of frames) that can be referred to as keyframes. This can reduce the processing requirements. Similarly, the method of FIG. 19 does not need to be performed for each frame following a key frame whose depth has been estimated. For example, if the posture of the camera changes significantly between the first frame and the second frame, the method of FIG. 19 may be omitted.

奥行きを推定するビデオの第1のフレームについて、前述のようなニューラルネットワークアーキテクチャを使用して、奥行きが推定されてもよい(例えば第2の奥行き確率体積を第1の奥行き確率体積と融合させることなく、第2の奥行き確率体積から奥行き推定を計算することにより)。ビデオの少なくとも1つのさらなるフレームを取得した後、第1の奥行き確率体積が計算され、第2の奥行き確率体積と融合され、シーンの融合奥行き推定を生成するために、融合奥行き確率体積が取得され得る。 For the first frame of the video that estimates the depth, the depth may be estimated using the neural network architecture as described above (eg, fusing the second depth probability volume with the first depth probability volume). Not by calculating the depth estimation from the second depth probability volume). After acquiring at least one additional frame of video, a first depth probability volume is calculated and fused with a second depth probability volume to obtain a fusion depth probability volume to generate a fusion depth estimate for the scene. obtain.

図16及び図17の実施例では、融合奥行き確率体積から導出された奥行き確率関数に基づいたコスト関数を使用して、融合奥行き推定が生成される。この手法は、ニューラルネットワークアーキテクチャからの予測が比較的不確実であり、ゆえに誤った最小値の影響を受けやすい特徴のない領域において、より正確に機能する傾向がある。しかし、他の実施例では、所与のピクセルの融合奥行き推定が、融合奥行き確率体積からの最大の確率を有するピクセルの奥行き推定とみなされ得る。 In the embodiments of FIGS. 16 and 17, a fusion depth estimate is generated using a cost function based on a depth probability function derived from the fusion depth probability volume. This technique tends to work more accurately in featureless regions that are susceptible to false minimums because the predictions from the neural network architecture are relatively uncertain. However, in other embodiments, the fusion depth estimation of a given pixel can be considered as the depth estimation of the pixel with the highest probability from the fusion depth probability volume.

図12~図20の実施例では、融合奥行き推定は、高密度奥行き推定である。しかし、他の事例では、同様の方法またはシステムを使用して、例えば本明細書の方法を使用して入力フレームのピクセルの部分集合を処理することにより、中密度または低密度の奥行き推定が取得され得る。付加的または代替的に、図12~図20のうちのいずれか1つの図の実施例に従って取得された融合奥行き推定のそれぞれの奥行き推定と、融合奥行き推定が取得された入力フレームのピクセルとの間には、一対一、一対多、または多対一のマッピングが存在し得る。 In the embodiments of FIGS. 12-20, the fusion depth estimation is a high density depth estimation. However, in other cases, medium or low density depth estimates can be obtained by using similar methods or systems, eg, by processing a subset of the pixels of the input frame using the methods herein. Can be done. Additional or alternative, the depth estimation of each of the fusion depth estimates obtained according to the embodiment of any one of FIGS. 12 to 20 and the pixels of the input frame from which the fusion depth estimation was obtained. There can be one-to-one, one-to-many, or many-to-one mappings in between.

図12~図20の実施例は、シーンの観察を表すフレームを処理することを参照して説明されている。しかし、これらの方法及び/またはシステムは、代替的に、ビデオのフレームではなく静止画像を処理するために使用されてもよいことを、理解されたい。 The embodiments of FIGS. 12-20 are described with reference to processing frames representing observations of the scene. However, it should be understood that these methods and / or systems may instead be used to process still images rather than frames of video.

図19の方法1900及び/または図20のシステム2000は、図1A~図1Cのキャプチャデバイス、図7Aのコンピューティングシステム700、及び/または図7Bのロボットデバイス760など、本明細書に説明されるシステムまたは装置のいずれかを使用し得る。図19の方法1900を実行するための命令、または図20のシステム2000を実施するための命令は、図11を参照して説明されたような非一時的コンピュータ可読記憶媒体に記憶され得る。 The system 2000 of FIG. 19 and / or system 2000 of FIG. 20 is described herein, such as the capture device of FIGS. 1A-1C, the computing system 700 of FIG. 7A, and / or the robot device 760 of FIG. 7B. Either the system or the device can be used. Instructions for performing the method 1900 of FIG. 19 or performing the system 2000 of FIG. 20 may be stored in a non-temporary computer-readable storage medium as described with reference to FIG.

任意の1つの実施例に関連して説明される任意の機能は、単独で使用されてもよく、または説明される他の機能と組み合わせて使用されてもよく、また、実施例のうちの任意の他の実施例の1つ以上の機能と組み合わせて使用されてもよく、または実施例のうちの任意の他の実施例の任意の組み合わせの1つ以上の機能と組み合わせて使用されてもよいことを、理解されたい。さらに、添付の特許請求の範囲で定義される本発明の範囲から逸脱することなく、上記で説明されていない均等物及び変更物も使用されてもよい。 Any function described in connection with any one embodiment may be used alone or in combination with other functions described, and may be any of the embodiments. It may be used in combination with one or more functions of other embodiments, or it may be used in combination of one or more functions of any combination of any other embodiment of the embodiments. Please understand that. Further, equivalents and modifications not described above may be used without departing from the scope of the invention as defined in the appended claims.

Claims (35)

シーンの奥行きを推定する画像処理システムであって、
幾何学的再構成エンジンから第1の奥行き推定と、ニューラルネットワークアーキテクチャから第2の奥行き推定とを受信し、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させて、前記シーンの融合奥行き推定を出力する融合エンジンを備え、
前記融合エンジンは、前記幾何学的再構成エンジンからの前記第1の奥行き推定の不確実性測定と、前記ニューラルネットワークアーキテクチャから前記第2の奥行き推定の不確実性測定と、を受信するように構成され、
前記融合エンジンは、前記不確実性測定を使用して、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させるように構成される、
前記システム。
An image processing system that estimates the depth of a scene.
The first depth estimation and the second depth estimation from the neural network architecture are received from the geometric reconstruction engine, and the first depth estimation and the second depth estimation are stochastically fused. Equipped with a fusion engine that outputs the fusion depth estimation of the scene
The fusion engine is to receive the uncertainty measurement of the first depth estimation from the geometric reconstruction engine and the uncertainty measurement of the second depth estimation from the neural network architecture. Configured,
The fusion engine is configured to stochastically fuse the first depth estimate with the second depth estimate using the uncertainty measurement.
The system.
前記融合エンジンは、前記ニューラルネットワークアーキテクチャから表面配向推定及び前記表面配向推定の不確実性測定を受信し、前記表面配向推定及び前記表面配向推定の前記不確実性測定を使用して、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させるように構成される、請求項1に記載のシステム。 The fusion engine receives surface orientation estimation and uncertainty measurement of the surface orientation estimation from the neural network architecture, and uses the uncertainty measurement of the surface orientation estimation and the surface orientation estimation to use the first. The system according to claim 1, wherein the depth estimation of the above and the second depth estimation are stochastically fused. 前記表面配向推定には、
第1の方向の奥行き勾配推定と、
前記第1の方向に直交する方向の奥行き勾配推定と、
表面法線推定と、
のうちの1つ以上が含まれる、請求項2に記載のシステム。
For the surface orientation estimation,
Depth gradient estimation in the first direction and
Depth gradient estimation in the direction orthogonal to the first direction and
Surface normal estimation and
The system according to claim 2, wherein one or more of them are included.
前記融合エンジンは、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させる時に、スケール推定を特定するように構成される、請求項1~3のいずれか1項に記載のシステム。 The one according to any one of claims 1 to 3, wherein the fusion engine is configured to specify a scale estimation when the first depth estimation and the second depth estimation are stochastically fused. System. 前記シーンは、ビデオデータの第1のフレームでキャプチャされ、
前記ビデオデータの第1のフレームについての前記第2の奥行き推定が受信され、
前記第1の奥行き推定には、前記ビデオデータの第1のフレームについての複数の第1の奥行き推定が含まれ、前記複数の第1の奥行き推定のうちの少なくとも1つは、前記ビデオデータの第1のフレームとは異なるビデオデータの第2のフレームを使用して生成され、
前記融合エンジンは、反復ごとに前記第2の奥行き推定と前記複数の奥行き推定のうちの1つとを処理して、前記シーンの前記融合奥行き推定を反復的に出力するように構成される、
請求項1~4のいずれか1項に記載のシステム。
The scene is captured in the first frame of the video data and
The second depth estimation for the first frame of the video data is received and
The first depth estimation includes a plurality of first depth estimations for the first frame of the video data, and at least one of the plurality of first depth estimations is the video data. Generated using a second frame of video data that is different from the first frame
The fusion engine is configured to process the second depth estimation and one of the plurality of depth estimates for each iteration and iteratively output the fusion depth estimation of the scene.
The system according to any one of claims 1 to 4.
前記第1の奥行き推定、前記第2の奥行き推定、及び前記融合奥行き推定はそれぞれ、複数のピクセルについての奥行きマップを含む、請求項1~5のいずれか1項に記載のシステム。 The system according to any one of claims 1 to 5, wherein the first depth estimation, the second depth estimation, and the fusion depth estimation each include a depth map for a plurality of pixels. 前記第1の奥行き推定は、中密度奥行き推定であり、前記第2の奥行き推定及び前記融合奥行き推定はそれぞれ、高密度奥行き推定を含む、請求項1~6のいずれか1項に記載のシステム。 The system according to any one of claims 1 to 6, wherein the first depth estimation is a medium density depth estimation, and the second depth estimation and the fusion depth estimation each include a high density depth estimation. .. ビデオデータのフレームをキャプチャする単眼カメラと、
前記シーンを観察している間の前記単眼カメラの姿勢を特定する追跡システムと、
前記幾何学的再構成エンジンと、を備え、
前記幾何学的再構成エンジンは、前記追跡システムからの前記姿勢と、前記ビデオデータのフレームとを使用して、前記ビデオデータのフレームからピクセルの少なくとも部分集合についての奥行き推定を生成するように構成され、前記幾何学的再構成エンジンは、測光誤差を最小化して、前記奥行き推定を生成するように構成される、
請求項1~7のいずれか1項に記載のシステム。
With a monocular camera that captures frames of video data,
A tracking system that identifies the posture of the monocular camera while observing the scene,
With the geometric reconstruction engine,
The geometric reconstruction engine is configured to use the orientation from the tracking system and the frame of the video data to generate a depth estimate for at least a subset of the pixels from the frame of the video data. The geometric reconstruction engine is configured to minimize the photometric error and generate the depth estimation.
The system according to any one of claims 1 to 7.
前記ニューラルネットワークアーキテクチャを備え、
前記ニューラルネットワークアーキテクチャは、1つ以上のニューラルネットワークを含み、ビデオデータのフレームのピクセル値を受信し、予測を行うように構成され、前記予測では、
前記第2の奥行き推定を生成するために、画像部分の第1の集合のそれぞれについての奥行き推定と、
画像部分の第2の集合のそれぞれについての少なくとも1つの表面配向推定と、
各奥行き推定に関連付けられた1つ以上の不確実性測定と、
各表面配向推定に関連付けられた1つ以上の不確実性測定と、
が予測される、
請求項1~8のいずれか1項に記載のシステム。
With the above neural network architecture
The neural network architecture comprises one or more neural networks and is configured to receive pixel values of frames of video data and make predictions.
To generate the second depth estimate, a depth estimate for each of the first sets of image portions,
With at least one surface orientation estimation for each of the second sets of image parts,
With one or more uncertainty measurements associated with each depth estimate,
With one or more uncertainty measurements associated with each surface orientation estimation,
Is expected,
The system according to any one of claims 1 to 8.
シーンの奥行きを推定する方法であって、
前記シーンの幾何学的再構成を使用して、前記シーンの第1の奥行き推定を生成することであって、前記幾何学的再構成は、前記第1の奥行き推定の不確実性測定を出力するように構成される、前記生成することと、
ニューラルネットワークアーキテクチャを使用して、前記シーンの第2の奥行き推定を生成することであって、前記ニューラルネットワークアーキテクチャは、前記第2の奥行き推定の不確実性測定を出力するように構成される、前記生成することと、
前記不確実性測定を使用して、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させて、前記シーンの融合奥行き推定を生成することと、
を含む、前記方法。
It ’s a way to estimate the depth of the scene.
The geometric reconstruction of the scene is used to generate a first depth estimate of the scene, which outputs an uncertainty measurement of the first depth estimation. The above-mentioned generation, which is configured to be
Using a neural network architecture is to generate a second depth estimate of the scene, the neural network architecture being configured to output an uncertainty measurement of the second depth estimate. The above-mentioned generation and
Using the uncertainty measurement, the first depth estimation and the second depth estimation are stochastically fused to generate the fusion depth estimation of the scene.
The method described above.
前記第1の奥行き推定を生成する前に、
前記シーンの2つ以上のビューを表す画像データをカメラから取得すること、
を含み、
前記第1の奥行き推定を生成することは、
前記カメラの姿勢推定を取得することと、
少なくとも前記姿勢推定と前記画像データとの関数である測光誤差を最小化することにより、前記第1の奥行き推定を生成することと、
を含む、
請求項10に記載の方法。
Before generating the first depth estimate,
Acquiring image data representing two or more views of the scene from the camera,
Including
Generating the first depth estimation is
Obtaining the attitude estimation of the camera and
To generate the first depth estimation by minimizing at least the photometric error which is a function of the attitude estimation and the image data.
including,
The method according to claim 10.
前記第1の奥行き推定を生成する前に、
前記シーンの1つ以上のビューを表す画像データをカメラから取得すること、
を含み、
前記第2の奥行き推定を生成することは、
前記ニューラルネットワークアーキテクチャで、前記画像データを受信することと、
前記第2の奥行き推定を生成するために、前記ニューラルネットワークアーキテクチャを使用して、画像部分の集合のそれぞれについて奥行き推定を予測することと、
前記ニューラルネットワークアーキテクチャを使用して、前記画像部分の集合のそれぞれについて少なくとも1つの表面配向推定を予測することと、
前記ニューラルネットワークアーキテクチャを使用して、各奥行き推定及び各表面配向推定の不確実性測定の集合を予測することと、
を含む、
請求項10に記載の方法。
Before generating the first depth estimate,
Acquiring image data representing one or more views of the scene from the camera,
Including
Generating the second depth estimation is
Receiving the image data with the neural network architecture
To generate the second depth estimate, the neural network architecture is used to predict the depth estimate for each set of image parts.
Using the neural network architecture to predict at least one surface orientation estimate for each set of image portions.
Using the neural network architecture to predict a set of uncertainty measurements for each depth estimate and each surface orientation estimate,
including,
The method according to claim 10.
前記表面配向推定には、
第1の方向の奥行き勾配推定と、
前記第1の方向に直交する方向の奥行き勾配推定と、
表面法線推定と、
のうちの1つ以上が含まれる、請求項12に記載の方法。
For the surface orientation estimation,
Depth gradient estimation in the first direction and
Depth gradient estimation in the direction orthogonal to the first direction and
Surface normal estimation and
12. The method of claim 12, comprising one or more of the above.
前記第1の奥行き推定を生成する前に、
前記シーンの2つ以上のビューを表す、複数のピクセルを含む画像データをカメラから取得すること、
を含み、
前記第1の奥行き推定を生成することは、
前記カメラの姿勢推定を取得することと、
前記画像データ内の前記ピクセルの一部についての奥行き推定を含む中密度奥行き推定を生成することと、
を含み、
前記第2の奥行き推定を生成することは、前記画像データ内の前記ピクセルについて高密度奥行き推定を生成することを含み、
前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させることは、前記画像データ内の前記ピクセルについて高密度奥行き推定を出力することを含む、
請求項10に記載の方法。
Before generating the first depth estimate,
Acquiring image data from a camera that contains multiple pixels representing two or more views of the scene.
Including
Generating the first depth estimation is
Obtaining the attitude estimation of the camera and
To generate a medium density depth estimate that includes a depth estimate for a portion of the pixel in the image data.
Including
Generating the second depth estimation includes generating a high density depth estimation for the pixel in the image data.
Probabilistic fusion of the first depth estimation and the second depth estimation includes outputting a high density depth estimation for the pixel in the image data.
The method according to claim 10.
前記方法は、反復的に繰り返され、後続の反復に関して、
前記方法は、前記第2の奥行き推定を生成するか否かを判定することを含み、
前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させることは、前記第2の奥行き推定を生成しないという判定に応じて、前記第2の奥行き推定の前の値の集合を使用することを含む、
請求項10~14のいずれか1項に記載の方法。
The method is iteratively repeated and with respect to subsequent iterations.
The method comprises determining whether to generate the second depth estimation.
Probabilistic fusion of the first depth estimation and the second depth estimation is a set of values prior to the second depth estimation, depending on the determination that the second depth estimation is not generated. Including using
The method according to any one of claims 10 to 14.
前記方法は、ビデオデータのフレームに適用され、前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させることは、ビデオデータの所与のフレームについて、
前記第1の奥行き推定に関連付けられた第1のコスト項と、前記第2の奥行き推定に関連付けられた第2のコスト項とを含むコスト関数を最適化することを含み、
前記第1のコスト項は、融合奥行き推定値と、第1の奥行き推定値と、前記第1の奥行き推定の不確実性値との関数を含み、
前記第2のコスト項は、融合奥行き推定値と、第2の奥行き推定値と、前記第2の奥行き推定の不確実性値との関数を含み、
前記コスト関数を最適化して、前記融合奥行き推定値が特定される、
請求項10~15のいずれか1項に記載の方法。
The method is applied to a frame of video data, and the probabilistic fusion of the first depth estimation and the second depth estimation is for a given frame of video data.
It comprises optimizing a cost function that includes a first cost term associated with the first depth estimation and a second cost term associated with the second depth estimation.
The first cost term includes a function of the fusion depth estimate, the first depth estimate, and the uncertainty value of the first depth estimate.
The second cost term includes a function of the fusion depth estimate, the second depth estimate, and the uncertainty value of the second depth estimate.
The cost function is optimized to identify the fusion depth estimate.
The method according to any one of claims 10 to 15.
前記コスト関数を最適化することは、前記融合奥行き推定のスケールファクタを特定することを含み、前記スケールファクタは、前記シーンに関する前記融合奥行き推定のスケールを示す、請求項16に記載の方法。 16. The method of claim 16, wherein optimizing the cost function comprises identifying the scale factor of the fusion depth estimation, wherein the scale factor indicates the scale of the fusion depth estimation for the scene. 前記ニューラルネットワークアーキテクチャを使用して、前記シーンの少なくとも1つの表面配向推定を生成することを含み、
前記ニューラルネットワークアーキテクチャは、前記少なくとも1つの表面配向推定のそれぞれについて不確実性測定を出力するように構成され、
前記コスト関数は、前記少なくとも1つの表面配向推定に関連付けられた第3のコスト項を含み、
前記第3のコスト項は、融合奥行き推定値と、表面配向推定値と、前記少なくとも1つの表面配向推定のそれぞれについての不確実性値との関数を含む、
請求項16または17に記載の方法。
Including using the neural network architecture to generate at least one surface orientation estimate for the scene.
The neural network architecture is configured to output an uncertainty measurement for each of the at least one surface orientation estimates.
The cost function includes a third cost term associated with the at least one surface orientation estimation.
The third cost term comprises a function of a fusion depth estimate, a surface orientation estimate, and an uncertainty value for each of the at least one surface orientation estimation.
The method of claim 16 or 17.
前記シーンの前記幾何学的再構成は、前記シーンの第1の奥行き確率体積を生成するように構成され、前記第1の奥行き確率体積は、
前記第1の奥行き推定を含む第1の複数の奥行き推定と、
前記第1の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第1の複数の不確実性測定と、
を含み、
前記第1の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、前記シーンの所与の領域が、前記第1の複数の奥行き推定のうちの前記所与の奥行き推定により表される奥行きに存在する確率を表し、
前記ニューラルネットワークアーキテクチャは、前記シーンの第2の奥行き確率体積を出力するように構成され、前記第2の奥行き確率体積は、
前記第2の奥行き推定を含む第2の複数の奥行き推定と、
前記第2の複数の奥行き推定の各奥行き推定にそれぞれ関連付けられた第2の複数の不確実性測定と、
を含み、
前記第2の複数の奥行き推定のうちの所与の奥行き推定に関連付けられた不確実性測定は、前記シーンの所与の領域が、前記第2の複数の奥行き推定のうちの前記所与の奥行き推定により表される奥行きに存在する確率を表す、
請求項10に記載の方法。
The geometric reconstruction of the scene is configured to generate a first depth probability volume of the scene, where the first depth probability volume is.
A first plurality of depth estimates, including the first depth estimate,
The first plurality of uncertainty measurements associated with each of the first plurality of depth estimates, respectively.
Including
The uncertainty measurement associated with a given depth estimate of the first plurality of depth estimates is that a given area of the scene is the given given of the first plurality of depth estimates. Represents the probability of being in the depth represented by depth estimation
The neural network architecture is configured to output a second depth probability volume of the scene, where the second depth probability volume is.
A second plurality of depth estimates, including the second depth estimate,
A second plurality of uncertainty measurements associated with each of the second plurality of depth estimates, respectively.
Including
The uncertainty measurement associated with a given depth estimate of the second plurality of depth estimates is that a given area of the scene is the given given of the second plurality of depth estimates. Represents the probability of being in the depth represented by depth estimation,
The method according to claim 10.
前記シーンの前記第2の奥行き推定を生成することは、前記ニューラルネットワークアーキテクチャを使用して、前記シーンの画像を表す画像データを処理して、前記第2の奥行き確率体積を生成することを含み、
前記第2の複数の奥行き推定は、複数の奥行き推定集合を含み、それぞれが前記シーンの前記画像の異なる各部分に関連付けられる、
請求項19に記載の方法。
Generating the second depth estimation of the scene comprises using the neural network architecture to process image data representing the image of the scene to generate the second depth probability volume. ,
The second plurality of depth estimates include a plurality of depth estimation sets, each associated with a different portion of the image of the scene.
19. The method of claim 19.
前記第2の複数の奥行き推定は、事前に定義された値を有する奥行き推定を含む、請求項19または20に記載の方法。 19. The method of claim 19 or 20, wherein the second plurality of depth estimates include depth estimates having predefined values. 前記事前に定義された値の間には、不均一な間隔がある、請求項21に記載の方法。 21. The method of claim 21, wherein there is a non-uniform spacing between the predefined values. 前記事前に定義された値は、事前に定義された奥行き範囲内の複数の対数奥行き値を含む、請求項21または22に記載の方法。 22. The method of claim 21 or 22, wherein the predefined values include a plurality of logarithmic depth values within a predefined depth range. 前記シーンの前記第1の奥行き確率体積を生成することは、
前記シーンの第1の観察を表すビデオデータの第1のフレームと、前記シーンの第2の観察を表すビデオデータの第2のフレームとを処理して、前記第1のフレームの複数の部分のそれぞれについて測光誤差の集合を生成することであって、測光誤差はそれぞれ、前記第1の複数の奥行き推定の異なる各奥行き推定に関連付けられる、前記生成することと、
前記測光誤差をスケーリングして、前記測光誤差をそれぞれの確率値に変換することと、
を含む、請求項19~23のいずれか1項に記載の方法。
Generating the first depth probability volume of the scene is
The first frame of the video data representing the first observation of the scene and the second frame of the video data representing the second observation of the scene are processed to form a plurality of parts of the first frame. To generate a set of metering errors for each, said generating and each metering error is associated with each different depth estimation of the first plurality of depth estimates.
Scaling the metering error and converting the metering error into their respective probability values,
The method according to any one of claims 19 to 23.
前記不確実性測定を使用して前記第1の奥行き推定と前記第2の奥行き推定とを確率的に融合させることは、前記第1の複数の不確実性測定と前記第2の複数の不確実性測定とを組み合わせて、融合確率体積を生成することを含む、請求項19~24のいずれか1項に記載の方法。 Probabilistic fusion of the first depth estimation and the second depth estimation using the uncertainty measurement is to generate the first plurality of uncertainty measurements and the second plurality of uncertainties. The method of any one of claims 19-24, comprising generating a fusion probability volume in combination with certainty measurements. 前記シーンの前記融合奥行き推定を生成することは、前記融合確率体積から前記シーンの融合奥行き推定を取得することを含む、請求項25に記載の方法。 25. The method of claim 25, wherein generating the fusion depth estimation of the scene comprises obtaining the fusion depth estimation of the scene from the fusion probability volume. 前記融合確率体積を使用して奥行き確率関数を取得することと、
前記奥行き確率関数を使用して、前記融合奥行き推定を取得することと、
を含む、請求項25または26に記載の方法。
To obtain the depth probability function using the fusion probability volume,
Using the depth probability function to obtain the fusion depth estimation,
25 or 26, the method of claim 25 or 26.
前記融合奥行き推定を取得することは、コスト関数を最適化することを含み、前記コスト関数は、
前記融合確率体積を使用して取得された第1のコスト項と、
奥行き値に対する局所的な幾何学的制約を含む第2のコスト項と、
を含む、請求項25~27のいずれか1項に記載の方法。
Obtaining the fusion depth estimation involves optimizing the cost function, which is a cost function.
The first cost term obtained using the fusion probability volume and
A second cost term, including local geometric constraints on the depth value,
25. The method according to any one of claims 25 to 27.
さらなるニューラルネットワークアーキテクチャから、表面配向推定及びオクルージョン境界推定を受信することと、
前記表面配向推定及び前記オクルージョン境界推定を使用して、前記第2のコスト項を生成することと、
を含む、請求項28に記載の方法。
Receiving surface orientation estimates and occlusion boundary estimates from further neural network architectures,
Using the surface orientation estimation and the occlusion boundary estimation to generate the second cost term,
28. The method of claim 28.
前記融合奥行き確率体積は、前記シーンの第1の観察を表すビデオデータの第1のフレームに関連付けられた第1の融合奥行き確率体積であり、
前記方法は、
前記第1の融合奥行き確率体積を、第1の占有確率体積に変換することと、
前記シーンを観察している間のカメラの姿勢を表す姿勢データに基づいて、前記第1の占有確率体積をワープさせて、前記シーンの第2の観察を表すビデオデータの第2のフレームに関連付けられた第2の占有確率体積を取得することと、
前記第2の占有確率体積を、前記第2のフレームに関連付けられた第2の融合奥行き確率体積に変換することと、
を含む、請求項25~29のいずれか1項に記載の方法。
The fusion depth probability volume is a first fusion depth probability volume associated with a first frame of video data representing the first observation of the scene.
The method is
Converting the first fusion depth probability volume into the first occupancy probability volume,
Based on the posture data representing the posture of the camera while observing the scene, the first occupancy probability volume is warped and associated with the second frame of the video data representing the second observation of the scene. To obtain the second occupancy probability volume obtained,
Converting the second occupied probability volume into a second fusion depth probability volume associated with the second frame,
25. The method according to any one of claims 25 to 29.
シーンの奥行きを推定する画像処理システムであって、
幾何学的再構成エンジンから第1の奥行き確率体積と、ニューラルネットワークアーキテクチャから第2の奥行き確率体積とを受信し、前記第1の奥行き確率体積と前記第2の奥行き確率体積とを融合させて、前記シーンの融合奥行き確率体積を出力する、融合エンジンと、
前記融合奥行き確率体積を使用して、前記シーンの前記奥行きを推定する奥行き推定エンジンと、
を備える、前記システム。
An image processing system that estimates the depth of a scene.
The first depth probability volume is received from the geometric reconstruction engine and the second depth probability volume is received from the neural network architecture, and the first depth probability volume and the second depth probability volume are fused. , A fusion engine that outputs the fusion depth probability volume of the scene,
With a depth estimation engine that estimates the depth of the scene using the fusion depth probability volume,
The system comprising.
シーンの奥行きを推定する方法であって、
前記シーンの幾何学的再構成を使用して、前記シーンの第1の奥行き確率体積を生成することと、
ニューラルネットワークアーキテクチャを使用して、前記シーンの第2の奥行き確率体積を生成することと、
前記第1の奥行き確率体積と前記第2の奥行き確率体積とを融合させて、前記シーンの融合奥行き確率体積を生成することと、
前記融合奥行き確率体積を使用して、前記シーンの融合奥行き推定を生成することと、
を含む、前記方法。
It ’s a way to estimate the depth of the scene.
Using the geometric reconstruction of the scene to generate the first depth probability volume of the scene,
Using a neural network architecture to generate a second depth probability volume for the scene,
By fusing the first depth probability volume and the second depth probability volume to generate the fusion depth probability volume of the scene,
Using the fusion depth probability volume to generate a fusion depth estimate for the scene,
The method described above.
ビデオのフレームを提供する単眼キャプチャデバイスと、
前記単眼キャプチャデバイスの姿勢データを提供する位置特定及びマッピング同時実行システムと、
請求項1または31に記載のシステムと、
前記姿勢データ及びビデオのフレームを受信して、前記幾何学的再構成エンジンを実施する中密度マルチビューステレオコンポーネントと、
前記ニューラルネットワークアーキテクチャを実施する電子回路と、
を備える、コンピューティングシステム。
With a monocular capture device that provides video frames,
The position identification and mapping simultaneous execution system that provides the attitude data of the monocular capture device,
The system according to claim 1 or 31 and
A medium-density multi-view stereo component that receives the attitude data and video frames and implements the geometric reconstruction engine.
An electronic circuit that implements the neural network architecture and
A computing system.
ロボットデバイスであって、
請求項33に記載のコンピューティングシステムと、
前記ロボットデバイスが周囲の3次元環境とインタラクトすることを可能にする1つ以上のアクチュエータであって、前記周囲の3次元環境の少なくとも一部が前記シーンに示される、前記1つ以上のアクチュエータと、
前記1つ以上のアクチュエータを制御する少なくとも1つのプロセッサを含むインタラクションエンジンと、
を含み、
前記インタラクションエンジンは、前記融合奥行き推定を使用して、前記周囲の3次元環境とインタラクトする、
前記ロボットデバイス。
It ’s a robot device,
The computing system according to claim 33 and
With the one or more actuators that allow the robot device to interact with the surrounding three-dimensional environment, wherein at least a portion of the surrounding three-dimensional environment is shown in the scene. ,
An interaction engine comprising at least one processor controlling the one or more actuators.
Including
The interaction engine uses the fusion depth estimation to interact with the surrounding three-dimensional environment.
The robot device.
コンピュータ実行可能命令を含む非一時的コンピュータ可読記憶媒体であって、前記コンピュータ実行可能命令は、プロセッサにより実行されると、コンピューティングデバイスに、請求項10~30のいずれか1項の方法を実行させる、前記非一時的コンピュータ可読記憶媒体。 A non-temporary computer-readable storage medium containing computer-executable instructions that, when executed by a processor, causes the computing device to perform the method of any one of claims 10-30. The non-temporary computer-readable storage medium.
JP2021542489A 2019-01-24 2020-01-15 Depth estimation Withdrawn JP2022519194A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1901007.3 2019-01-24
GB1901007.3A GB2580691B (en) 2019-01-24 2019-01-24 Depth estimation
PCT/GB2020/050084 WO2020152437A1 (en) 2019-01-24 2020-01-15 Depth estimation

Publications (1)

Publication Number Publication Date
JP2022519194A true JP2022519194A (en) 2022-03-22

Family

ID=65656005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021542489A Withdrawn JP2022519194A (en) 2019-01-24 2020-01-15 Depth estimation

Country Status (6)

Country Link
US (1) US11941831B2 (en)
JP (1) JP2022519194A (en)
KR (1) KR20210119417A (en)
CN (1) CN113330486A (en)
GB (1) GB2580691B (en)
WO (1) WO2020152437A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190368879A1 (en) * 2018-05-29 2019-12-05 Regents Of The University Of Minnesota Vision-aided inertial navigation system for ground vehicle localization

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210366139A1 (en) * 2020-05-21 2021-11-25 Samsung Electronics Co., Ltd. Method and apparatus for generating depth image
JP7379299B2 (en) * 2020-08-28 2023-11-14 株式会社東芝 Position and orientation estimation device, position and orientation estimation method, and program
WO2022071730A1 (en) * 2020-09-29 2022-04-07 Samsung Electronics Co., Ltd. Method and device for performing plane detection
WO2022099522A1 (en) 2020-11-11 2022-05-19 Huawei Technologies Co., Ltd. Device and method for verifying estimated depth information
US11688090B2 (en) 2021-03-16 2023-06-27 Toyota Research Institute, Inc. Shared median-scaling metric for multi-camera self-supervised depth evaluation
CN113870334B (en) * 2021-09-29 2022-09-02 北京百度网讯科技有限公司 Depth detection method, device, equipment and storage medium
CN114820755B (en) * 2022-06-24 2022-10-04 武汉图科智能科技有限公司 Depth map estimation method and system
CN115082540B (en) * 2022-07-25 2022-11-15 武汉图科智能科技有限公司 Multi-view depth estimation method and device suitable for unmanned aerial vehicle platform
CO2022011603A1 (en) * 2022-08-17 2024-02-26 Univ Simon Bolivar Artificial intelligence process to predict the size of objects

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101590767B1 (en) * 2009-06-09 2016-02-03 삼성전자주식회사 Image processing apparatus and method
US9111350B1 (en) * 2012-02-10 2015-08-18 Google Inc. Conversion of monoscopic visual content to stereoscopic 3D
EP2674913B1 (en) * 2012-06-14 2014-07-23 Softkinetic Software Three-dimensional object modelling fitting & tracking.
CN103413347B (en) * 2013-07-05 2016-07-06 南京邮电大学 Based on the extraction method of monocular image depth map that prospect background merges
US10455212B1 (en) * 2014-08-25 2019-10-22 X Development Llc Projected pattern motion/vibration for depth sensing
CN108416840B (en) * 2018-03-14 2020-02-18 大连理工大学 Three-dimensional scene dense reconstruction method based on monocular camera
GB2577915B (en) * 2018-10-10 2021-06-16 Dyson Technology Ltd Path planning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190368879A1 (en) * 2018-05-29 2019-12-05 Regents Of The University Of Minnesota Vision-aided inertial navigation system for ground vehicle localization
US11940277B2 (en) * 2018-05-29 2024-03-26 Regents Of The University Of Minnesota Vision-aided inertial navigation system for ground vehicle localization

Also Published As

Publication number Publication date
KR20210119417A (en) 2021-10-05
GB201901007D0 (en) 2019-03-13
GB2580691A (en) 2020-07-29
US11941831B2 (en) 2024-03-26
CN113330486A (en) 2021-08-31
GB2580691B (en) 2022-07-20
US20210350560A1 (en) 2021-11-11
WO2020152437A1 (en) 2020-07-30

Similar Documents

Publication Publication Date Title
JP2022519194A (en) Depth estimation
AU2020200811B2 (en) Direct meshing from multiview input using deep learning
CN107980150B (en) Modeling three-dimensional space
US10553026B2 (en) Dense visual SLAM with probabilistic surfel map
US10636151B2 (en) Method for estimating the speed of movement of a camera
CN112258618A (en) Semantic mapping and positioning method based on fusion of prior laser point cloud and depth map
KR20190065287A (en) Prediction of depth from image data using statistical model
JP2019520654A (en) Object detection in video data
CN112991413A (en) Self-supervision depth estimation method and system
US11082633B2 (en) Method of estimating the speed of displacement of a camera
JP2022547288A (en) Scene display using image processing
WO2021164887A1 (en) 6d pose and shape estimation method
CN114782628A (en) Indoor real-time three-dimensional reconstruction method based on depth camera
KR20230150867A (en) Multi-view neural person prediction using implicit discriminative renderer to capture facial expressions, body posture geometry, and clothing performance
JP2022518783A (en) Mapping the environment using the state of the robot device
CN116018599A (en) Apparatus and method for training a machine learning model to identify an object topology of an object from an image of the object
JP6806160B2 (en) 3D motion evaluation device, 3D motion evaluation method, and program
Fan et al. Large-scale dense mapping system based on visual-inertial odometry and densely connected U-Net
Lovi et al. Predictive display for mobile manipulators in unknown environments using online vision-based monocular modeling and localization
US20240104774A1 (en) Multi-dimensional Object Pose Estimation and Refinement
CN117136382A (en) Modeling an environment using image data
WO2022139784A1 (en) Learning articulated shape reconstruction from imagery
Bateux Going further with direct visual servoing
KR101964829B1 (en) Method and apparatus for providing around view with auto calibration fuction
US20240066710A1 (en) Techniques for controlling robots within environments modeled based on images

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221209

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20230512