reconstruction of 3d models from intensity images and partial depth l. abril torres-méndez and...

Post on 27-Dec-2015

217 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Reconstruction of 3D Models from Intensity Images and Partial Depth

L. Abril Torres-Méndez and Gregory Dudek

Centre for Intelligent Machines

School of Computer Science

McGill University

Our Application

• Automatic generation of 3D maps.• Robot navigation, localization

- Ex. For rescue and inspection tasks.

• Robots are commonly equipped with camera(s) and laser rangefinder.

Would like a full range map of the

the environment. Simple acquisition of data

Problem Context

• Pure vision-based methods – Shape-from-X remains challenging, especially in

unconstrained environments.

• Laser line scanners are commonplace, but– Volume scanners remain exotic, costly, slow.– Incomplete range maps are far easier to obtain that complete

ones.

Proposed solution: Combine visual and partial depth

Shape-from-(partial) Shape

Problem Statement

From incomplete range data combined with intensity, perform scene recovery.

From range scans like thisinfer the rest of the map

Overview of the Method

• Approximate the composite of intensity and range data at each point as a Markov process.

• Infer complete range maps by estimating joint statistics of observed range and intensity.

What knowledge does Intensity provide about Surfaces?

• Two examples of kind of inferences:

Intensity image Range image

surface smoothness

variations in depth

surface smoothness

far

close

What about outliers?

• Changes in intensity from texture-like regions

Intensity Range

Not critical for reconstruction since very close neighborhoods represent the same type of smooth surface.

What about Edges?

• Edges often detect depth discontinuities• Very useful in the reconstruction process!

Intensity Rangeedges edges

Range synthesis basis

Range and intensity images are correlated, in complicated ways, exhibiting useful structure.

- Basis of shape from shading & shape from darkness, but they are based on strong assumptions.

The variations of pixels in the intensity and range images are related to the values elsewhere in the image(s).

Markov Random Fields

Related Work

• Probabilistic updating has been used for – image restoration [e.g. Geman & Geman, TPAMI

1984] as well as

– texture synthesis [e.g. Efros & Leung, ICCV 1999].

• Problems: Pure extrapolation/interpolation:– is suitable only for textures with a stationary

distribution

– can converge to inappropriate dynamic equilibria

MRFs for Range Synthesis

States are described as augmented voxels V=(I,R,E).

ZZmm=(x,y):1≤x,y≤m=(x,y):1≤x,y≤m: mxm lattice over which the image are described.

I = {II = {Ix,yx,y}, (x,y)}, (x,y) Z Zmm: intensity (gray or color) of the input image

E is a binary matrix (1 if an edge exists and 0 otherwise).

R={RR={Rx,yx,y}, (x,y)}, (x,y) Z Zmm: incomplete depth values

We model V as an MRF. I and R are random variables.

RI vx,y

AugmentedRange Map

IR

Markov Random Field Model

Definition: A stochastic process for which a

voxel value is predicted by its neighborhood

in range and intensity.

P(Vx,y = vx,y |Vk,l = vk,l ,(k, l) ≠ (x,y)) =

P(Vx,y = vx,y |Vk,l = vk,l ,(k, l)∈ Nx,y )

Nx,y is a square neighborhood of size nxn centered at voxel Vx,y.

Computing the Markov Model

• From observed data, we can explicitly compute

P(Vx,y = vx,y |Vk,l = vk,l ,(k, l)∈ Nx,y )

intensity

intensity & range

Vx,y

Nx,y

• This can be represented parametrically or via a table.–To make it efficient, we use the sample data itself as a table.

Further, we can do this even with partial

neighborhood information.

Estimation using the Markov Model

• From

what should an unknown range value be?

For an unknown range value with a known

neighborhood, we can select the maximum

likelihood estimate for Vx,y.

P(Vx,y = vx,y |Vk,l = vk,l ,(k, l)∈ Nx,y )

Even further, if both intensity and range are

missing we can marginalize out the unknown

neighbors.

intensity

intensity & range

Interpolate PDF• In general, we cannot uniquely solve the desired neighborhood

configuration, instead assume

P(Rx,y = rx,y | Ix,y = ix,y , Vk,l = vk,l , (k, l)∈ N x,y ) ≈

P(Ru,v = ru,v | Iu,v = iu,v , Vp,q = v p,q , ( p, q)∈ N u,v )

The values in Nu,v are similar to the values in Nx,y, (x,y) ≠ (u,v).

Similarity measureSimilarity measure:: Gaussian-weighted SSD (sum of squared differences).

Update schedule is purely causal and deterministic.

Order of Reconstruction

• Dramatically reflects the quality of the result.• Our reconstruction sequence is based on the amount

of reliable information surrounding each of the voxels to be synthesized.

• Edge information used to defer reconstruction of voxels with edges as much as possible.

Info-edge-driven ordering Correct result With the spiral-ordering

Experimental Evaluation

• Obtain full range and intensity maps of the same environment.

• Remove most of the range data, then try and

estimate what it is.

• Use the original ground truth data to

estimate accuracy of the reconstruction.

Arbitrary shape of unknown range data

Input Intensity Synthesized result

Scharstein & Szeliski’s Data Set Middlebury College

Compact case

Ground truth rangeInput range imageSynthesized resultGround truth range

Input IntensityGround truth range Input range image

Arbitrary shape of unknown range data

Scharstein & Szeliski’s Data Set Middlebury College

Less compact case

Synthesized result

Arbitrary shape of unknown range data

Compact DistributedSynthesized results

Ground truth range

• Expected quality of reconstruction degrades with distance from known boundaries• Need broader distribution of range-intensity combinations in the sampling

Input IntensityEdge map

Stripes along the x- and y-axis

Data courtesy of Oak Ridge National Labs & Univ. of Florida

Ground truth rangeApproximated depth size: 650cms.

Input range 66% missing range

Synthesized ResultMean Absolute Residual (MAR) Error: 5.76 cms.

Input intensity and range data Synthesized results Ground truth range

Input range data. 66% of missing range

Achromatic vs. Color Results

Using achromatic image Using color image

Synthesized range images

Greyscale image Color imageGround truth range

More Experimental Results

Initial range scans

Results on Realistic Sampling

Not in the paper

Real intensity image

Ground truth range

Edge map

Synthesized range image

What happened?

• Problems with surfaces that slope Intensity-range combinations from the initial range do not capture the underlying structure.

• Solution: Surface normal-based MRF range synthesis

– Surface normals from initial range data is added

to our MRF model so that depth values are computed according to the surface being reconstructed.

Adding Surface NormalsNot in the paper

• We compute the normals by fitting a plane (smooth surface) in windows of nxn pixels.

• Normal vector: Eigenvector with the smallest eigenvalue of the covariance matrix.

• Similarity is now computed between surface normals instead of range values.

Initial range scans

Preliminary Results Not in the paper

Synthesized range image Ground truth range

Edge map Real intensity image Initial range dataReal intensity image Edge map

Conclusions

• Works very well -- is this consistent?• Can be more robust than standard methods (e.g.

shape from shading) due to limited dependence on a priori reflectance assumptions.

• Depends on adequate amount of reliable range as input.

• Depends on statistical consistency of region to be constructed and region that has been measured.

Discussion & Ongoing Work

• Surface normals are needed when the input range data do not capture the underlying structure

• Data from real robot – Issues: non-uniform scale, registration,

correlation on different type of data

Questions ?

Input intensity Ground truth range

Range synthesis using edge info

Initial range data (white regions are to be estimated)

Range synthesis (no edge info)

Animated example

Input intensity Ground truth range

Range synthesis using edge info

Initial range data (white regions are to be estimated)

Range synthesis (no edge info)

Animated example

I

V(x,y)

R

Algorithm Outline

• The depth value of the augmented voxel Vx,y is synthesized as follows:

d

Synthesis orderingSynthesis ordering: according to available information. (maximum number of “full” neighbors)

argmax(argmax(PP))

Compactness• Reconstruction facilitated by less compact

regions.

• Experimental illustration: keep area constant, vary the shape of area being recovered.

Not in the paper

Compactness

Average errors are 2.8% and 1.6%.

Expected quality of reconstruction degrades with distance from known boundaries.

Not in the paper

Res

idua

l Err

or in

of

Rec

onst

ruct

ed D

epth

(fro

m 0

to 2

0%)

Amount to data missing

Not in the paper

Depth histogram: ground truth & reconstructedNot in the paper

Technical Aside• Really should have independent relations for

R(x,y) and I(x,y).

P(Rx,y = rx,y | Ix,y = ix,y,Vk,l = vk,l ,(k, l)∈ N)

Augmented Range Map

• Incorporate appearance values, expressing both spatial occupancy as well as appearance under specific viewing conditions, into augmented range map.

Mode of Absolute Residual Error

The Neighborhood

• The neighborhood N{x,y} is a square mask of size nxn centered at the augmented voxel.

• Observations: The neighborhood is causal The size is important to capture relevant characteristics

v(x,y)

IR

Neighborhood of v(x,y)

N{x,y}

Initial range (none)

Novel View Synthesis (ongoing work)

Intensity image Range image

Known intensity image

• Infer range map from intensity of current view and from range and intensity of other views.

Other view

Current view to estimaterange map

Synthesized range Ground truth range

Previous results Results using EDGES Ground truth range MAR Errors (cms.)

10.40 8.58

16.58 13.48

12.16 11.39

19.17 7.12

Case 2 Result

Mean Absolute Residual (MAR) Error: 18.98 cms.

75% missing rangeInput intensity

Case 3 Result

Mean Absolute Residual (MAR) Error: 20.23 cms.

78% missing rangeInput intensity

More examplesSynthesized results Ground truth rangeThe input intensity and range data

Order of Reconstruction

• Dramatically influences the quality of final result.• Spiral scan-ordering (a.k.a.“onion peeling”) Disadvantage:

strong dependence from the previous assigned depth value.

With the spiral-ordering Correct result

Adding Surface NormalsNot in the paper

• We compute the normals by fitting a plane (smooth surface) in windows of nxn pixels.

• The eigenvector with the smallest eigenvalue of the covariance matrix is the normal vector.

– The smallest eigenvalue measures the quality of the fit.

• In the range synthesis, the similarity is now computed between surface normals instead of range values.

top related