games 3d reconstruction & understanding lecture i

76
GAMES 3D Reconstruction & Understanding Lecture I Qixing Huang July 9 th 2021

Upload: others

Post on 10-Nov-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GAMES 3D Reconstruction & Understanding Lecture I

GAMES3D Reconstruction & Understanding

Lecture I

Qixing Huang

July 9th 2021

Page 2: GAMES 3D Reconstruction & Understanding Lecture I

MISC

• Instructor: Qixing Huang (UT Austin)

• Time: Beijing Time 10:00 am

• Send me emails for questions ([email protected])

• Webpage: https://www.cs.utexas.edu/~huangqx/

Page 3: GAMES 3D Reconstruction & Understanding Lecture I

Introduction

Page 4: GAMES 3D Reconstruction & Understanding Lecture I

Geometry Processing Pipeline

Reconstruction Processing & Analysis Printing

Page 5: GAMES 3D Reconstruction & Understanding Lecture I

3D Vision

Recovering the Underlying 3D structures from Images

RGB images

RGB-D images

Pose Estimation

Structure-from-motion

Multi-view Stereo

Page 6: GAMES 3D Reconstruction & Understanding Lecture I

Large-scale online repositories

3D Warehouse Yobi3D

3M models in more than 4K categories

3DFront

50k Indoor Scenes

Page 7: GAMES 3D Reconstruction & Understanding Lecture I

3D Vision (2015-)

RGB (RGBD) Images

3D StructuresUnderstanding(Synthesis)

Pose Estimation

Structure-from-motion

Multi-view Stereo

Classification

Segmentation

Detection

Page 8: GAMES 3D Reconstruction & Understanding Lecture I

2D Vision versus 3D Vision

Classification Segmentation Detection

2D Vision 3D Vision

Page 9: GAMES 3D Reconstruction & Understanding Lecture I

DataVectorized

Form

Representation

ML/OptimizationAlgorithms

Page 10: GAMES 3D Reconstruction & Understanding Lecture I

3D Representations

Multi-view

Triangular meshVolumetric Point cloud

Semantic segmentsScene-graph

Page 11: GAMES 3D Reconstruction & Understanding Lecture I

Applications

Page 12: GAMES 3D Reconstruction & Understanding Lecture I

3D mapping

https://prs.igp.ethz.ch/research/current_projects/large-scale_reconstruction.html

Page 13: GAMES 3D Reconstruction & Understanding Lecture I

Performance capture

https://www.engadget.com/2015/03/08/using-the-kinect-for-motion-capture/

Page 14: GAMES 3D Reconstruction & Understanding Lecture I

Robotics

[Lenz et al. 15]

Page 15: GAMES 3D Reconstruction & Understanding Lecture I

Autonomous driving

https://arxiv.org/pdf/1906.05113.pdf

[Yurtsever et al. 19]

Page 16: GAMES 3D Reconstruction & Understanding Lecture I

Reverse engineering

Page 17: GAMES 3D Reconstruction & Understanding Lecture I

Interdisciplinary field

Geometry Processing & 3D Vision

Robotics

Medicine

ArchitectureBiology

ComputerVision

Graphics

Page 18: GAMES 3D Reconstruction & Understanding Lecture I

Topics to be covered

Page 19: GAMES 3D Reconstruction & Understanding Lecture I

Topic I: 3D Reconstruction

• Scanning

• Scan registration

• Surface reconstruction

• Structure-from-motion

• Multi-view stereo

• Map synchronization

Page 20: GAMES 3D Reconstruction & Understanding Lecture I

Topic I: 3D Reconstruction

• Scanning

• Scan registration

• Surface reconstruction

• Structure-from-motion

• Multi-view stereo

• Map synchronization

Page 21: GAMES 3D Reconstruction & Understanding Lecture I
Page 22: GAMES 3D Reconstruction & Understanding Lecture I
Page 23: GAMES 3D Reconstruction & Understanding Lecture I
Page 24: GAMES 3D Reconstruction & Understanding Lecture I
Page 25: GAMES 3D Reconstruction & Understanding Lecture I
Page 26: GAMES 3D Reconstruction & Understanding Lecture I
Page 27: GAMES 3D Reconstruction & Understanding Lecture I

We focus on the basics

Page 28: GAMES 3D Reconstruction & Understanding Lecture I

Recent trends in AI

• Deep reinforcement learning

• Robot learning– Manipulation

• Autonomous driving

• Visual navigation

• Fairness in machine learning

Page 29: GAMES 3D Reconstruction & Understanding Lecture I

Building blocks

• Localization

– Registration

• Recognition under different representations

• Matching

– Linking objects from different domains

Page 30: GAMES 3D Reconstruction & Understanding Lecture I

Mathematics is important

Page 31: GAMES 3D Reconstruction & Understanding Lecture I

Geometry

• Linear algebra

• Perspective geometry

• Differential geometry/topology

Page 32: GAMES 3D Reconstruction & Understanding Lecture I

Numerical Optimization is Important

Page 33: GAMES 3D Reconstruction & Understanding Lecture I

Optimization problems

• We will see time and time again:

Page 34: GAMES 3D Reconstruction & Understanding Lecture I

Why bother how to solve P and what are the guarantees

• There are plenty of optimization softwares

• Almost all algorithms are data-dependent and can perform better or worse on different problems and data sets

• In many cases, studying P leads to new algorithms and… research papers

Page 35: GAMES 3D Reconstruction & Understanding Lecture I

Categories of optimization models

• Linear vs. Nonlinear

• Convex vs. Nonconvex

• Continuous vs. Discrete

• Deterministic vs. Stochastic

We see all of them in various 3D Vision tasks

Page 36: GAMES 3D Reconstruction & Understanding Lecture I

Example 1: Bundle adjustment

3D locations Camera parameters

Page 37: GAMES 3D Reconstruction & Understanding Lecture I

Example 2: Surface fitting

• Important in reverse engineering[Flory and Hofer’ 10]

A surface fitting example. (Left) The initial setup. (Right) The unsigned distance between point cloud (grey) and surface (blue) is iteratively minimized. The approximating surface is deformed until it fits the point cloud.

Page 38: GAMES 3D Reconstruction & Understanding Lecture I

Example 3: MRF Inference

Page 39: GAMES 3D Reconstruction & Understanding Lecture I

Trends in optimization

Page 40: GAMES 3D Reconstruction & Understanding Lecture I

Trends in optimization

Page 41: GAMES 3D Reconstruction & Understanding Lecture I

Homework

Page 42: GAMES 3D Reconstruction & Understanding Lecture I

Assignment 1: dense reconstruction

Multi-view stereo[Furukawa and Ponce]

Geometry reconstruction

Page 43: GAMES 3D Reconstruction & Understanding Lecture I

Assignment 2: primitive extraction

Slippage analysis[Gelfand and Guibas’ 04]

Deep Primitive [Li et al. 04]

Page 44: GAMES 3D Reconstruction & Understanding Lecture I

Optional final project

Page 45: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 1

• Image-based modeling from internet images

– A few images

– Non-identical objects

– Symmetries

– Relative pose

– Machine learning

Page 46: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 2

• Single-view reconstruction from real images

– 3D Representation?• Volumetric/point cloud/part-based

– Network architecture

– Domain adaptation

– Depth/semantic labels

– Human

– Hand

Page 47: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 3

• Neural networks for 3D representations

– Implicit surface

– Multi-view

– Point cloud

– Mesh?

– Scene graph?

– Physics?

– Hybrid?

Page 48: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 4

• Geometry understanding– Task

• Normal/Curvature

• Feature extraction

• Segmentation

• Part/object decomposition

• Correspondence

• Affordance

– Data

– Thousands of categories

Page 49: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 5

• Reconstruction from hybrid sensors

– Low-res depth scan+ High-res stereo

– Depth + shading

– Web cameras + internet images

– 360 images + internet images

– Street views + images from drones

Page 50: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 6

• Robot 3D Vision

– Salient views

– Next-best-view

– Robot grasping

– Human-object interaction

– Model-based View planning

– Active vision

– Policies for exploration

Page 51: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 7

• Structure recovery via optimization

– 2D human pose -> 3D human pose

– Structure from symmetry

– Structure from template

– Shape from shading

– Local/global convergence

– Exact recovery condition

Page 52: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 8

• Map synchronization– Multiview structure from motion

• Pose

• Pose + Point cloud

– Geometric alignment of point clouds

• Pose

• Pose + shape

– Global/Local convergence

– Exact recovery condition

Page 53: GAMES 3D Reconstruction & Understanding Lecture I

Potential project topic 9

• Uncertainties

– Human pose estimation

– Depth prediction

– Camera poses in MVSFM

– Geometry reconstruction

– Geometry understanding

– Quantification/Visualization

Page 54: GAMES 3D Reconstruction & Understanding Lecture I

Scanning

Slide credit: Szymon Rusinkiewicz

Page 55: GAMES 3D Reconstruction & Understanding Lecture I

Geometry Reconstruction Pipeline

Page 56: GAMES 3D Reconstruction & Understanding Lecture I

Depth Sensing

Page 57: GAMES 3D Reconstruction & Understanding Lecture I

Touch Probes

Page 58: GAMES 3D Reconstruction & Understanding Lecture I

Depth Sensing

Page 59: GAMES 3D Reconstruction & Understanding Lecture I

Pulsed Time of Flight

Page 60: GAMES 3D Reconstruction & Understanding Lecture I

Triangulation

Page 61: GAMES 3D Reconstruction & Understanding Lecture I
Page 62: GAMES 3D Reconstruction & Understanding Lecture I

Triangulation: Moving the Camera and Illumination

• Moving independently leads to problems with focus, resolution

• Most scanners mount camera and light source rigidly, move them as a unit

Page 63: GAMES 3D Reconstruction & Understanding Lecture I

Triangulation: Moving the Camera and Illumination

Page 64: GAMES 3D Reconstruction & Understanding Lecture I

Triangulation: Extending to 3D

Page 65: GAMES 3D Reconstruction & Understanding Lecture I

Pattern Design

Page 66: GAMES 3D Reconstruction & Understanding Lecture I

Structured Light General Principle

Page 67: GAMES 3D Reconstruction & Understanding Lecture I

Time-Coded Light Patterns

• Assign each stripe a unique illumination code over time [Posdamer82]

Page 68: GAMES 3D Reconstruction & Understanding Lecture I

Time-Coded Light Patterns

• Assign each stripe a unique illumination code over time [Posdamer82]

Page 69: GAMES 3D Reconstruction & Understanding Lecture I

Binary Coding Example

Page 70: GAMES 3D Reconstruction & Understanding Lecture I

Temporal vs. Spatial Continuity

• Structured-light systems make certain assumptions about the scene

• Temporal continuity assumption– Assume scene is static

– Assign stripes a code over time

• Spatial continuity assumption– Assume scene is one object

– Project a grid, pattern of dots, etc.

Page 71: GAMES 3D Reconstruction & Understanding Lecture I

Grid Methods

• Assume exactly one continuous surface

• Count dots or grid lines

• Occlusions cause problems

• Some methods use dynamic programming

Page 72: GAMES 3D Reconstruction & Understanding Lecture I

Codes Assuming Local Spatial Continuity

Page 73: GAMES 3D Reconstruction & Understanding Lecture I

Codes Assuming Local Spatial Continuity

Page 74: GAMES 3D Reconstruction & Understanding Lecture I
Page 75: GAMES 3D Reconstruction & Understanding Lecture I
Page 76: GAMES 3D Reconstruction & Understanding Lecture I

Next lecture

• Registration