Vous êtes sur la page 1sur 62

Atelier APMEP

Octobre 2008

Pr. Eric Andres


Université de Poitiers
Quelles sont les différences ?

Visualisation Surfacique Visualisation Volumique


Quelles sont les différences ?

Visualisation Surfacique Visualisation Volumique


Droite et Hyperplans discrets
Discrete Analytical Geometry
Discrete Analytical Line definition

J.-P. Reveillès
(1991)

Representation in comprehension
Analytical equation :
Exercice 1 (**)

quelle est la « meilleure » des deux discrétisations ?

Introduction
Corrigé Exercice 1

quelle est la « meilleure » des deux discrétisations ?

Introduction
Discrete analytical hyperplane definition

J.-P. Reveillès (1991)

002x+5y+9z
2x+5y+9z<<16
9
Representation in comprehension
Analytical equation :

Arithmetical thickness : w = B - A
Application en Géologie

ARGILE
GRANIT

PETROLE

X ARGILE

SABLE

EAU
Hyperplans
Application en Géologie

ARGILE
GRANIT

PETROLE

X ARGILE

SABLE

EAU
Hyperplans
Application en Géologie

ARGILE
GRANIT

PETROLE

X ARGILE

SABLE

EAU
Hyperplans
Application en Géologie

ARGILE
GRANIT

PETROLE

X ARGILE

SABLE

EAU
Hyperplans
Application en géologie
• Hyperplan discret de localisation :
Épaisseur arithmétique : w = a1
x1

Soit l'hyperplan euclidien

Alors si :

Hyperplans
Coupe Oblique
[Andres 1996]
Coupe Oblique
Plan de Coupe P : ax+by+cz+d = 0

Examinons le problème en 2D: ax+by+c=0


ax+by+c = -(a+b)/2

ax+by+c = -(a+b)/2

ax+by+c  0
ax+by+c = 0

ax+by+c = +(a+b)/2
Coupe Oblique

Plan de Coupe P : ax+by+cz+d = 0

Voxels coupés : St(P) : - a  b  c  ax+by+cz+d < a  b  c


2 2
Plan 3D supercouverture
standard

La valeure R(x,y,z) = ax+by+cz+d+ a  b  c


2
détermine la coupe.
Coupe Oblique

C
A B

D E
Coupe Oblique
abc
Coupe Oblique Discrète P : 0  ax+by+cz+d+ < a+b+c
2
avec 0  a  b  c, m = min(c,a+b), M = max(c,a+b)
A(x,y,z) un point de P et pol(A) = vox(A)  P, alors :
• si 0< r(A) <a alors pol(A) est de type A(0)
• si a < r(A) < b alors pol(A) est de type B(0,3)
• si b < r(A) < m alors pol(A) est de type C(0,1,3)
• si m < r(A) < M et M=c alors pol(A) est de type D(0,1,2,3)
• si m < r(A) < M et m=c alors pol(A) est de type E(0,1,3,4)
• si M < r(A) < a+c alors pol(A) est de type C(4,6,7)

• si a+c < r(A) < b+c alors pol(A) est de type B(4,7)

• si b+c < r(A) < a+b+c alors pol(A) est de type A(6)
Coupe Oblique

Avec cette approche arithmétique, nous pouvons :


• déterminer comment un voxel est coupé
• déterminer comment les arêtes sont coupées
• montrer qu’il y a |a|+|b|+|c| polygones de coupes différents
• montrer que les coupes parallèles sont similaires
Différents types d'hyperplans
• Droite pythagoricienne
avec
Épaisseur arithmétique : w = |b| + 1
Permet de définir une rotation discrète bijective
[Andres 1992]

• Hyperplan pythagoricien

Épaisseur arithmétique :

Hyperplans
Différents types d'hyperplans
• Hyperplan supercouverture [Andres 1996]

Épaisseur arithmétique : ou

Soit l'hyperplan euclidien

Alors :

Hyperplans
Application example:
Discrete Analytical Ridgelet Transform

Idea : points and lines are linked via the Radon transform

border Point

Ridgelet
domain
Radon Domaine
Radon de
domain Wavelet
Image Radon
Transform transform

The ridgelet transform has been specifically invented to efficiently


represent edges (borders of regions) in an image [Candès98]

[Carré & Andres 2000-2006]


Definition of the 2D ridgelet transform
The Radon transform

Definition of
2D Fourier Inverse 1D
Pixels are summed along radial lines
transform of Fourier
a direction passing thru
the image transform of the
the origin
1D lines

Classic strategy Fourier strategy


Discrete geometry approach
Computing strategy for the 2D DART

FFT 2D Discrete
Analytical
lines

Fourier coefficients
Extraction of the
Fourier coefficients
iFFT

Image projection

1D wavelet transform of the


1D vectors
Ridgelet
Extraction of the [Carré&Andres2002]
Fourier coefficients
Discrete Analytical Radon Transform

The discrete analytical lines we used for the transform are defined by:

with [p,q] the direction of the Radon projection


and w, function of (p,q), the arithmetical thickness

Closed naïve lines (8-connected)

Supercover lines (4-connected)

Closed pythagorean lines (8-connected)


3D discrete analytical Radon transform
Definition of 3D discrete analytical lines

Naïve line Pythagorean line Supercover line


Other 3D line definition
Discrete Analytical planes

z, t
y

Discrete planes

naïve pythagorean supercover


Other 3D line definition
The 3D planes are seen as a 2D space

The projection of the plane


is mapped by 2D lines

x
z

Final definition of the 3D lines:


3D Denoising of a MRI

Original image Noisy image

Denoising with a wavelet


DART denoising
transform
Color video denoising

Original video
Color Video denoising

Noisy video 3D DART video denoising


Color Video denoising

Noisy video 3D DART video denoising


Discrete Analytical Model:
the Supercover model
Offset zone

Supercover with arbitrary thickness

[Andres 2000]
Example : 3D Supercover line

Line (0,0,0)-(7,6,-3)

S(e1(F)) : 1.5  y + 2z  1.5


S(e2(F)) : -5  3x + 7z  5

S(e3(F)) : -6.5  6x – 7y  6.5


Properties
Example : Supercover 3D line
Representation in
comprehension
12 inequations

1.5  x2 + 2 x3  1.5
-5  3 x1 + 7 x3  5

-6.5  6 x1 – 7 x2  6.5

-0.5  x1  7.5

-0.5  x2  6.5

-3.5  x3  0.5
Example : supercover 3D triangle
Representation in
comprehension
17 inequations
-1/2  x  19/2
-1/2  y  17/2
-1/2  z  9/2
7x + 6y  151/2
x - 9y  5
-8x + 3y  11/2
x - 9z  5
-4x + 3z  7/2
x + 2z  25/2
y - 2z  3/2
-3y + 7z  9
-y + z  1
-53  4x + 33y - 69z  53
Example : triangle 3D
- 0.5  x  0.5
A -0.5  y  0.5
B(3,8,4) Y - 0.5  z  0.5
2.5  x  3.5
B 7.5  y  8.5
Z
3.5  z  4.5
8.5  x  9.5
C 0.5  y  1.5
0.5  z  1.5
-5.5  - 8x + 3y  5.5
AB - 6  - 4y + 8z  6
- 3.5  - 3z + 4x  3.5
62.5  7x + 6y  75.5
BC - 9  3y – 7z  1
C(9,1,1)
28.5  6z + 3x  37.5
X
- 5  - x + 9y  5
AC -1-y+z1
A(0,0,0) - 5  - 9z + x  5
ABC
(Slide made by M. Dexet) - 53  4x + 33y – 69z  53
Example in R5
Analytical description
Discrete modeling

Euclidean view Analytical view Voxel view


Discrete modeling in grey levels
Discrete Analytical Hough Transform

“Dual” of a pixel and a voxel

Work done by Martine Dexet


Discrete Analytical Hough Transform

Recognition of a small line segment


Work done by Martine Dexet
Analytical continuation :
2D contour reconstruction

Work done by Rodolphe Breton


Discrete Modeling Software
MODELER ARCHITECTURE

Pixel levelContinuous
Continuous
Analytical
with
Region
a segmented
level
level
Level
level image
After a reconstruction
with
Finalpixels
view phase
SPAMOD :Spatial Modeler
Work done by Martine Dexet
Illustrations

Level 0:
Original image before
segmentation
Illustrations

Level 1:
Region level
Illustrations

Level 2:
Analytical level
Illustrations

Level 3:
Continuous level
Illustrations in 3D
Illustrations in 3D
Discrete-Continuous Transforms
Discrete Smooth Scaling

Zn Zn

Rn

Work done by Gaëlle Largeteau-Skapin


Implementation

Discrete Smooth Scaling

reconstruction

Scaling discretisation
Example
Continuous-Discrete Simplification

Rn Rn

Zn

Work done by Gaëlle Largeteau-Skapin


Level of details
Implementation

Discrete Simplifcation

Scaling

Scaling

discretisation reconstruction
Example
Classical approach
Discrete analytical geometry
approach
Long term project

« Unifying » the
geometries