Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid...

41
Algebraic mining of solid models from images Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzi Dep. of Mathematics and Physics, University Roma Tre, Italy March 13, 2014 A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 1 / 38

Transcript of Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid...

Page 1: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Algebraic mining of solid models from images

Alberto Paoluzziwith Francesco Furiani and Claudio Paoluzzi

Dep. of Mathematics and Physics, University Roma Tre, Italy

March 13, 2014

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 1 / 38

Page 2: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Outline

Outline

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 2 / 38

Page 3: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Outline

1 Standard unification of topological structures

2 LAR: the Linear Algebraic Representation

LAR representations: CSR matrices

3 Proof of concept: multidimensional morphological operators

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 3 / 38

Page 4: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Standard unification of topological structures

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 4 / 38

Page 5: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Representation schememapping s : M → R from a space of math models M to computer representations R

M

DRV

s

1 The set M contains the mathematical models of the class of solid objectsthat the scheme aims to represent.

2 The set R contains symbolic representations, i.e. suitable data structures,built according to some appropriate computer grammar.

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 5 / 38

Page 6: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Representation scheme: Quad-Edge data structure(Guibas & Stolfi, ACM Transactions on Graphics, 1985)

(a) Edge record showing Next links.(b) A subdivision of the sphere.

(c) Data structure for the subdivision

Primitives for the Manipulationof General Subdivisions andthe Computation of VoronoiDiagrams

largely used in computationalgeometry algorithms and ingeometric libraries

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 6 / 38

Page 7: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Representation scheme: Partial-Entity data structure(Sang Hun Lee & Kunwoo Lee, ACM Solid Modeling, 2001)

Compact Non-Manifold Boundary Representation Based on PartialTopological Entities

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 7 / 38

Page 8: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Representation scheme: Coupling Entities data structure(Yamaguchi & Kimura, IEEE Computer Graphics and Applications, 1995)

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 8 / 38

Page 9: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Rethinking some foundationsdealing with Big Data and scalable architectures Google’s map-reduce

Emerging applications (e.g. space, nano& bio technology, medical 3D) requirethe convergence of shape synthesis andanalysis from:

computer imaging

computer graphics

computer-aided geometric design

discrete meshing of domains

physical simulations

The goals of unification,scalability, and massivelyparallel distributedcomputing

call for rethinking thefoundations of geometricand topological computing

GOAL: 103 times fasterand 104 times bigger

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 9 / 38

Page 10: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

Rethinking some foundationsdealing with Big Data and scalable architectures Google’s map-reduce

Emerging applications (e.g. space, nano& bio technology, medical 3D) requirethe convergence of shape synthesis andanalysis from:

computer imaging

computer graphics

computer-aided geometric design

discrete meshing of domains

physical simulations

The goals of unification,scalability, and massivelyparallel distributedcomputing

call for rethinking thefoundations of geometricand topological computing

GOAL: 103 times fasterand 104 times bigger

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 9 / 38

Page 11: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Standard unification of topological structures

IEEE-SA P3332 WGSolid models from 3D medical images

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 10 / 38

Page 12: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

LAR: the Linear Algebraic Representation

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 11 / 38

Page 13: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

LAR: topology extraction from d-imagesFast algebraic extraction (GPGPU) of spongy bone’s exact topology

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 12 / 38

Page 14: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

LARA standard for model topology through a general and simple repr scheme

Models: (co)chain complexes → Reprs: sparse binary matrices

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 13 / 38

Page 15: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

Chain and cochain complexC 0,C 1,C 2,C 3 ≡ V, E ,F ,P ∆p ≡ Laplacian δ0, δ1, δ2 ≡ grad, curl, div

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 14 / 38

Page 16: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

Chain complex (of chain spaces)

Sequence of linear spaces (over Z2) of d-cell subsets

Unit d-chains (single d-cell subsets), give the standard bases (Md rows) of d-chainspaces

M3

M2M1 M0

!3 !2 !1

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 15 / 38

Page 17: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation

Characteristic matrices of d-chain spacesMatrix representation of the basis — d-cells as subsets of vertices

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 16 / 38

Page 18: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

LAR representations: CSR matrices

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 17 / 38

Page 19: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

Compressed Sparse Row (CSR) matrix storage

image from

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 18 / 38

Page 20: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

Storage of LAR(X ) ≡ CSR(Md) matrixAmazingly compact storage of a solid model

REDUCED LAR

simplicial d-complexes: k = d + 1cuboidal d-complexes: k = 2d

Remark (Input and long-term storage)

space(LAR)= |FV | = 2|E | !!!

Remark (Full topology representation)

|VE |+ |VF | = 4|E |

Remark (Any topological queries)

single SpMV multiplication

Remark (Sparse Matrix-Vector Multiplication)

is one of the most important computationalkernels, for very effective iterative solutionmethods

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 19 / 38

Page 21: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

Example: 3D simplicial gridBoundary computation via a single SpMV product: [c2] = [∂3] 1

matrix [∂3]

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 20 / 38

Page 22: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

Image complex = implicit LAR of voxelscell description is made by 4 or 8 indices

cell[i,j,k] = [ (i , j , k), (i + 1, j , k), (i , j + 1, k), (i , j , k + 1), (i + 1, j + 1, k), (i +1, j , k + 1), (i , j + 1, k + 1), (i + 1, j + 1, k + 1) ]

the boundary matrix may be computed only one time (depending on the image size),and stored on disk

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 21 / 38

Page 23: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

Paradigm: Divide et ImperaBottleneck of GPGPU: moving data from global to local memory

Solution: store the (sparse) [∂3] of n3 voxels in device Constant Memory, and move the(binary) coordinate vectors of chains in Private Memory

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 22 / 38

Page 24: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

LAR competitive advantagesSeveral, and very important including mimetic and isogeometric methods

Unification

computer imagingcomputer graphicsCAD and CAGDdiscrete meshing of domainsphysical simulations

Compactness

amazing long-term storage ofsolid models

Dimensional independence

same algorithms on 2D, 3D,4D representation

Native parallelism

based on linear algebra andGPGPU implementation ofSpMV

Support of simulations via

∂3, ∂2, ∂1, δ0, δ1, δ2,∆p

Integrated manufacturing

e.g.: of composite materials

Rapid prototyping

tight integration of geometry& CAD/CAE/CAM

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 23 / 38

Page 25: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

LAR: the Linear Algebraic Representation LAR representations: CSR matrices

LAR competitive advantagesSeveral, and very important including mimetic and isogeometric methods

Unification

computer imagingcomputer graphicsCAD and CAGDdiscrete meshing of domainsphysical simulations

Compactness

amazing long-term storage ofsolid models

Dimensional independence

same algorithms on 2D, 3D,4D representation

Native parallelism

based on linear algebra andGPGPU implementation ofSpMV

Support of simulations via

∂3, ∂2, ∂1, δ0, δ1, δ2,∆p

Integrated manufacturing

e.g.: of composite materials

Rapid prototyping

tight integration of geometry& CAD/CAE/CAM

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 23 / 38

Page 26: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Proof of concept: multidimensional morphologicaloperators

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 24 / 38

Page 27: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Mathematical morphology (MM)From Wikipedia

Mathematical morphology (MM) is atheory and technique for the analysisand processing of geometricalstructures, based on set theory,lattice theory, topology, and randomfunctions.

MM is also the foundation ofmorphological image processing,which consists of a set of operatorsthat transform images according tothe above characterizations.

Figure : http://en.wikipedia.org/wiki/File:DilationErosion.png

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 25 / 38

Page 28: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Generation of a random block imagewith random noise

Let us consider the chain γ ∈ C2 of white pixels

Figure : (a) PNG image; (b) exploded solid model of |γ| ⊂ E3

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 26 / 38

Page 29: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Extraction of boundary of the white chainβ = ∂2(γ) ∈ C1

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 27 / 38

Page 30: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Down(boundary)η = VE(∂2(γ)) ∈ C0

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 28 / 38

Page 31: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Up(up(down(boundary)))β2 = FV(VE(∂2(γ))) ∈ C2 ≡ (FV ◦ VE ◦ ∂2)(γ)

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 29 / 38

Page 32: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

Boolean combination of chainsβ2 = (FV ◦ VE ◦ ∂2)(γ) Dilation = β2 − γ (yellow); Erosion = β2 ∩ γ (cyan)

Figure : (a) PNG image; (b) exploded solid model of γ ∈ E3

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 30 / 38

Page 33: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

64× 64 examplechain γ ∈ C2; chain β = ∂2(γ) ∈ C1

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 31 / 38

Page 34: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

64× 64 example(VE ◦ ∂2)(γ) ∈ C0 (EV ◦ VE ◦ ∂2)(γ) ∈ C1

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 32 / 38

Page 35: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

64× 64 exampleβ2 = (FE ◦ EV ◦ VE ◦ ∂2)(γ) ∈ C2 DIL(β2)(γ) = β2 − γ ERO(β2)(γ) = β2 ∩ γ

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 33 / 38

Page 36: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Proof of concept

A last word

Our morphological operators are multidimensional

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 34 / 38

Page 37: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Conclusion

Conclusion

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 35 / 38

Page 38: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Conclusion

LAR state of the art

A. DiCarlo, V. Shapiro, and A. Paoluzzi, Linear AlgebraicRepresentation for Topological Structures, Computer-Aided Design,Volume 46, Issue 1 , January 2014, Pages 269–274

Ongoing development (MIT licence) on GitHub, using OpenCL, Theopen standard for parallel programming of heterogeneous systems

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 36 / 38

Page 39: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Conclusion

TODOLooking for collaborations

and a grant in Space Horizon2020! ... :o)

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 37 / 38

Page 40: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Conclusion

TODOLooking for collaborations

and a grant in Space Horizon2020! ... :o)

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 37 / 38

Page 41: Alberto Paoluzzi with Francesco Furiani and Claudio Paoluzzipaoluzzi/web/pao/doc/esa.pdf · Rapid prototyping tight integration of geometry & CAD/CAE/CAM A. Paoluzzi (Univ. Roma Tre)

Conclusion

Thank you for your interest!

QUESTIONS?

[email protected]

A. Paoluzzi (Univ. Roma Tre) Mining of models from images March 13, 2014 38 / 38