Image Restoration and Reconstruction (Image Reconstruction from Projections)
3D Shape Understanding and Reconstruction based on Line...
Transcript of 3D Shape Understanding and Reconstruction based on Line...
3D Shape Understanding andReconstruction based on LineElement Geometry
B. Odehnal
Vienna University of Technology
. – p.1/35
Contents.
. – p.2/35
Contents.
• Aims & Results
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements• Classification of Surfaces
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements• Classification of Surfaces• Recognition
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements• Classification of Surfaces• Recognition• Segmentation
. – p.3/35
Contents.
• Aims & Results• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements• Classification of Surfaces• Recognition• Segmentation• Reconstruction
. – p.3/35
Aims & Results.
. – p.4/35
Aims & Results.
• new theory dealing with line elements
. – p.5/35
Aims & Results.
• new theory dealing with line elements• much wider class of surfaces can be detected:
Euclidean kinematic surfaces (helical (rotational)surf., cylinders),equiform kinematic surfaces (spiral surf., general,cones, etc.)
. – p.5/35
Aims & Results.
• new theory dealing with line elements• much wider class of surfaces can be detected:
Euclidean kinematic surfaces (helical (rotational)surf., cylinders),equiform kinematic surfaces (spiral surf., general,cones, etc.)
• applicable to recognition/reconstruction ofsurfaces, segmentation
. – p.5/35
Related Work.
[1] B. ODEHNAL , H. POTTMANN , J. WALLNER : Equiform kinematics
and the geometry of line elements. Submitted to: Contributions to
Algebra and Geometry.
. – p.6/35
Related Work.
[1] B. ODEHNAL , H. POTTMANN , J. WALLNER : Equiform kinematics
and the geometry of line elements. Submitted to: Contributions to
Algebra and Geometry.
[2] M. H OFER, B. ODEHNAL , H. POTTMANN , T. STEINER, J.
WALLNER : 3D shape understanding and reconstruction based on line
element geometry. Proc. ICCV’05, to appear.
. – p.6/35
Related Work.
[1] B. ODEHNAL , H. POTTMANN , J. WALLNER : Equiform kinematics
and the geometry of line elements. Submitted to: Contributions to
Algebra and Geometry.
[2] M. H OFER, B. ODEHNAL , H. POTTMANN , T. STEINER, J.
WALLNER : 3D shape understanding and reconstruction based on line
element geometry. Proc. ICCV’05, to appear.
[3] H. POTTMANN , M. HOFER, B. ODEHNAL , J. WALLNER : Line
geometry for 3D shape understanding and reconstruction. Proc.
ECCV’04.
. – p.6/35
Equiform Kinematics.
. – p.7/35
Equiform Kinematics.
• equiform motion
x 7→ y = αAx+ a α > 0, A ∈ SO3, a ∈ R3
. – p.8/35
Equiform Kinematics.
• equiform motion
x 7→ y = αAx+ a α > 0, A ∈ SO3, a ∈ R3
• one-parameter equiform motion
αt : I ⊂ R → R, At : I → SO3, at : I → R3
. – p.8/35
Equiform Kinematics.
• equiform motion
x 7→ y = αAx+ a α > 0, A ∈ SO3, a ∈ R3
• one-parameter equiform motion
αt : I ⊂ R → R, At : I → SO3, at : I → R3
• field of velocity vectors at timet0
v(y) = y = αAx+ αAx+ a =
. – p.8/35
Equiform Kinematics.
• equiform motion
x 7→ y = αAx+ a α > 0, A ∈ SO3, a ∈ R3
• one-parameter equiform motion
αt : I ⊂ R → R, At : I → SO3, at : I → R3
• field of velocity vectors at timet0
v(y) = y = αAx+ αAx+ a =
αα−1y + AATy − αα−1a− AATa+ a =
. – p.8/35
Equiform Kinematics.
• equiform motion
x 7→ y = αAx+ a α > 0, A ∈ SO3, a ∈ R3
• one-parameter equiform motion
αt : I ⊂ R → R, At : I → SO3, at : I → R3
• field of velocity vectors at timet0
v(y) = y = αAx+ αAx+ a =
αα−1y + AATy − αα−1a− AATa+ a =
c× y + c+ γy . . . linear iny
AATy = c× y, γ = αα−1, c = a− γa− c× a
. – p.8/35
Line Elements.
. – p.9/35
Line Elements.
N
po ν
n
y
n line element(N, y) =lineN + pointy ∈ N
(n, n) Plücker coordina-tes ofN , n := y × n,‖n‖ = 1, 〈n, n〉 = 0
ν = 〈n, y〉signed distance ofp, y
. – p.10/35
Line Elements.
N
po ν
n
y
n line element(N, y) =lineN + pointy ∈ N
(n, n) Plücker coordina-tes ofN , n := y × n,‖n‖ = 1, 〈n, n〉 = 0
ν = 〈n, y〉signed distance ofp, y
• (n, n, ν) ∈ R7 coordinates of(N, y)
. – p.10/35
Line Elements.
N
po ν
n
y
n line element(N, y) =lineN + pointy ∈ N
(n, n) Plücker coordina-tes ofN , n := y × n,‖n‖ = 1, 〈n, n〉 = 0
ν = 〈n, y〉signed distance ofp, y
• (n, n, ν) ∈ R7 coordinates of(N, y)
• depend ony, homogeneous=⇒ point model inP6: quadratic cone (vertex, one generator
missing, see [1]). – p.10/35
Linear Complexes of Line Elements.
. – p.11/35
Linear Complexes of Line Elements.
Definition:The setC of line elements(N, y) = (n, n, ν) with
〈n, c〉+ 〈n, c〉 + νγ = 0
is called a linear complex of line elements.(c, c, γ) ∈ R
7 is the coordinate vector ofC.
. – p.12/35
Linear Complexes of Line Elements.
Definition:The setC of line elements(N, y) = (n, n, ν) with
〈n, c〉+ 〈n, c〉 + νγ = 0
is called a linear complex of line elements.(c, c, γ) ∈ R
7 is the coordinate vector ofC.
Lemma:For givenC = (c, c, γ) (γ 6= 0) and each lineL = (l, l), there is a uniquely defined pointx, s.t.(L, x) = (l, l, λ) ∈ C.
. – p.12/35
Linear Complexes of Line Elements.
Definition:The setC of line elements(N, y) = (n, n, ν) with
〈n, c〉+ 〈n, c〉 + νγ = 0
is called a linear complex of line elements.(c, c, γ) ∈ R
7 is the coordinate vector ofC.
Lemma:For givenC = (c, c, γ) (γ 6= 0) and each lineL = (l, l), there is a uniquely defined pointx, s.t.(L, x) = (l, l, λ) ∈ C.
Proof: λ = −(〈c, l〉 + 〈c, l〉)/γ. �
. – p.12/35
Linear Complexes & Equiform Kinematics.
n
v(y)
Theorem:At any regular instant ofa smooth 1-param. equi-form motion the pathnormal elements form alinear complex of lineelements.
. – p.13/35
Linear Complexes & Equiform Kinematics.
n
v(y)
Theorem:At any regular instant ofa smooth 1-param. equi-form motion the pathnormal elements form alinear complex of lineelements.
Proof:N(y) . . . (n, n = y × n) path normal aty,N(y)⊥v(y) ⇐⇒ 0 = 〈n, c× y + c+ γy〉 =〈n, c〉 + 〈n, c〉+ γν = 0. �
. – p.13/35
Properties of linear Complexes of Line Elements.
Given a linear complex of line elements(c, c, γ):• line elements on lines of a bundle:
points form a sphere
. – p.14/35
Properties of linear Complexes of Line Elements.
Given a linear complex of line elements(c, c, γ):• line elements on lines of a bundle:
points form a sphere• line elements on lines of a field:
path normals of a planar equiform motion
. – p.14/35
Properties of linear Complexes of Line Elements.
Given a linear complex of line elements(c, c, γ):• line elements on lines of a bundle:
points form a sphere• line elements on lines of a field:
path normals of a planar equiform motion
. – p.14/35
Types of Complexes & corresponding uniform equif. motions.
up to equiform equivalence• C = (0, 0, 1; 0, 0, p; 0) p ∈ R
helical motion (p 6= 0), rotation (p = 0)
. – p.15/35
Types of Complexes & corresponding uniform equif. motions.
up to equiform equivalence• C = (0, 0, 1; 0, 0, p; 0) p ∈ R
helical motion (p 6= 0), rotation (p = 0)• C = (0, 0, 0; 0, 0, 1; 0)
translation
. – p.15/35
Types of Complexes & corresponding uniform equif. motions.
up to equiform equivalence• C = (0, 0, 1; 0, 0, p; 0) p ∈ R
helical motion (p 6= 0), rotation (p = 0)• C = (0, 0, 0; 0, 0, 1; 0)
translation• C = (0, 0, 1; 0, 0, 0; p) p ∈ R
spiral motion (p 6= 0), rotation (p = 0)
. – p.15/35
Types of Complexes & corresponding uniform equif. motions.
up to equiform equivalence• C = (0, 0, 1; 0, 0, p; 0) p ∈ R
helical motion (p 6= 0), rotation (p = 0)• C = (0, 0, 0; 0, 0, 1; 0)
translation• C = (0, 0, 1; 0, 0, 0; p) p ∈ R
spiral motion (p 6= 0), rotation (p = 0)• C = (0, 0, 0; 0, 0, 0; 1)
similarity transformation
. – p.15/35
Spiral Motion .
A
s
s′o
π
A
o
c
s
s′
π
∆
• o = fixed point,A = axis,π = fixed plane
. – p.16/35
Spiral Motion .
A
s
s′o
π
A
o
c
s
s′
π
∆
• o = fixed point,A = axis,π = fixed plane• s = orbit of a point/∈ π, s′ = orbit of a point∈ π
. – p.16/35
Spiral Motion .
A
s
s′o
π
A
o
c
s
s′
π
∆
• o = fixed point,A = axis,π = fixed plane• s = orbit of a point/∈ π, s′ = orbit of a point∈ π
• Γ = s ∨ o = invariant cone of revolution
. – p.16/35
Spiral Motion .
A
s
s′o
π
A
o
c
s
s′
π
∆
• o = fixed point,A = axis,π = fixed plane• s = orbit of a point/∈ π, s′ = orbit of a point∈ π
• Γ = s ∨ o = invariant cone of revolution• ∆ = invariant spiral cylinder
. – p.16/35
Recognition of Surfaces.
. – p.17/35
Recognition of Surfaces
Theorem:The normal elements ofa regular C1 surfaceare contained in a line-ar complex of line ele-ments if and only if it ispart of an equiform ki-nematic surface.
. – p.18/35
Recognition / exact case.
• given:(ni, ni, νi) . . . normal elements of anequiform kinematic surfaceS
. – p.19/35
Recognition / exact case.
• given:(ni, ni, νi) . . . normal elements of anequiform kinematic surfaceS
• compute a basis in the spaceV of linear equations〈c, x〉+ 〈c, x〉+ ξγ = 0
. – p.19/35
Recognition / exact case.
• given:(ni, ni, νi) . . . normal elements of anequiform kinematic surfaceS
• compute a basis in the spaceV of linear equations〈c, x〉+ 〈c, x〉+ ξγ = 0
• C1, . . . , Ck = Basis ofV
. – p.19/35
Recognition / exact case.
• given:(ni, ni, νi) . . . normal elements of anequiform kinematic surfaceS
• compute a basis in the spaceV of linear equations〈c, x〉+ 〈c, x〉+ ξγ = 0
• C1, . . . , Ck = Basis ofV• independent basis vectors = independent unif.
equif. motionsS → S
. – p.19/35
Invariant Surfaces.
k = 4: plane,k = 3: sphere
. – p.20/35
Invariant Surfaces.
k = 4: plane,k = 3: sphere
k = 2: cylinder/cone of rev., spiral cylinder
. – p.20/35
Invariant Surfaces.
k = 1 : general cone/cylinder
. – p.21/35
Invariant Surfaces.
k = 1 : general cone/cylinder
k = 1 :
rotational/helical surface, spiral surface. – p.21/35
Invariant Surfaces.
c = 0, γ 6= 0 c = 0, γ = 0
. – p.22/35
Invariant Surfaces.
c = 0, γ 6= 0 c = 0, γ = 0
c 6= 0, 〈c, c〉 = γ = 0 c 6= 0, γ = 0, 〈c, c〉 6= 0 c 6= 0, γ 6= 0. – p.22/35
Recognition / non-exact case.
• given:(ni, ni, νi) normal elements of a surfaceSwanted: best approx. equiform kinematic surface
. – p.23/35
Recognition / non-exact case.
• given:(ni, ni, νi) normal elements of a surfaceSwanted: best approx. equiform kinematic surface
• scaling data such thatmax ‖xi‖ ≈ 1
. – p.23/35
Recognition / non-exact case.
• given:(ni, ni, νi) normal elements of a surfaceSwanted: best approx. equiform kinematic surface
• scaling data such thatmax ‖xi‖ ≈ 1
• minimizing the sum of squared momentsN∑
i=1
µ2
i :=N∑
i=1
(〈c, ni〉+ 〈c, ni〉+ νiγ)2
. – p.23/35
Recognition / non-exact case.
• given:(ni, ni, νi) normal elements of a surfaceSwanted: best approx. equiform kinematic surface
• scaling data such thatmax ‖xi‖ ≈ 1
• minimizing the sum of squared momentsN∑
i=1
µ2
i :=N∑
i=1
(〈c, ni〉+ 〈c, ni〉+ νiγ)2
• number/type of eigenvectors corresponding tosmall eigenvalues of
n∑
i=1
(ni, ni, νi)T (ni, ni, νi)
determine type of best approx. kinematic surface. – p.23/35
Recognition / non-exact case.
• using RANSAC
. – p.24/35
Recognition / non-exact case.
• using RANSAC• downweighting outliers with
wi =1
1 + Fµ2ki
, F > 0
. – p.24/35
Recognition / non-exact case
color of region = color of axis
centers and axis within the transparent fat line element
. – p.25/35
Segmentation.
. – p.26/35
Segmentation.
• removing sharp edges
. – p.27/35
Segmentation.
• removing sharp edges
• looking for plane/sphere/cylinder (cone) of rev.
. – p.27/35
Segmentation.
• removing sharp edges
• looking for plane/sphere/cylinder (cone) of rev.• looking for multiply invariant surfaces
. – p.27/35
Segmentation.
• removing sharp edges
• looking for plane/sphere/cylinder (cone) of rev.• looking for multiply invariant surfaces• looking for simply invariant surfaces
. – p.27/35
Extracting geometric Data.
• axisA and centero of spiral motion:
v(z) = 0 = c× z + c+ γz
z =1
γ(c2 + γ2)(γc× c− γ2c− (c · c)c)
A = (c,1
γ2 + c2(c2c− (c · c)c+ γc× c))
. – p.28/35
Extracting geometric Data.
• axisA and centero of spiral motion:
v(z) = 0 = c× z + c+ γz
z =1
γ(c2 + γ2)(γc× c− γ2c− (c · c)c)
A = (c,1
γ2 + c2(c2c− (c · c)c+ γc× c))
• equation of sphere/plane/cylinder (cone) of rev.already found
. – p.28/35
Extracting geometric Data.
• axisA and centero of spiral motion:
v(z) = 0 = c× z + c+ γz
z =1
γ(c2 + γ2)(γc× c− γ2c− (c · c)c)
A = (c,1
γ2 + c2(c2c− (c · c)c+ γc× c))
• equation of sphere/plane/cylinder (cone) of rev.already found
• axes of cones
. – p.28/35
Segmentation / Examples
detecting rotational surface, morphologhicaloperations
detecting a general cylinder, planar parts, and small
features . – p.29/35
Reconstruction.
. – p.30/35
Reconstruction (spiral surfaces).
• (c, c, γ) . . . best approx. line element complex
. – p.31/35
Reconstruction (spiral surfaces).
• (c, c, γ) . . . best approx. line element complex• computing axisA, centero, spiral parameter
. – p.31/35
Reconstruction (spiral surfaces).
• (c, c, γ) . . . best approx. line element complex• computing axisA, centero, spiral parameter• applying unif. equif. motion to data points:
‘spiral projection’ into a plane containing the axis
. – p.31/35
Reconstruction (spiral surfaces).
• (c, c, γ) . . . best approx. line element complex• computing axisA, centero, spiral parameter• applying unif. equif. motion to data points:
‘spiral projection’ into a plane containing the axis• fitting a generator curve
. – p.31/35
Reconstruction (spiral surfaces).
• (c, c, γ) . . . best approx. line element complex• computing axisA, centero, spiral parameter• applying unif. equif. motion to data points:
‘spiral projection’ into a plane containing the axis• fitting a generator curve• applying unif. equif. motion
. – p.31/35
Reconstruction.
. – p.32/35
Reconstruction.
. – p.33/35
Reconstruction
. – p.34/35
Overview.• Contents• Aims• Equiform Kinematics• Line Elements• Linear Complexes of Line Elements• Recognition of Surfaces• Segmentation• Reconstruction
. – p.35/35