Robotica e Sensor Fusion per i Sistemi
Meccatronici
Object Detection with Superquadrics
Prof. Mariolino De Cecco, Dr. Ilya Afanasyev, Ing. Nicolo Biasi
Department of Structural Mechanical Engineering, University of Trento
Email: [email protected]
[email protected]
http://www.mariolinodececco.altervista.org/
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Object detection and localization
The block diagram of recognition task:
A-priori know:
- Dimensions;
- Features (shape,
curvature, etc.)
- Superquadrics,
etc.
- Optimization,
iterations, etc.;
- RANSAC;
Object
Measurement
system
Data
Math.
model
Preprocessing
- Camera, laser
- Kinect
- Multicamera system
- Point clouds
- Images, video
- Eliminating the
background;
- Changing the
contrast, size, etc.
Fitting Algorithm
- Criteria of quality.
Results
- Transformation matrix, angles,
distance, accuracy, etc.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
02/04/2
2/2
1
Examples of Superquadrics
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Examples of Superquadrics
[1]
Wireframes of Superquadrics
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Examples of Superquadrics
[1]
Examples of Superellipsoids
Superellipsoids can model spheres, cylinders, parallelepipeds
and shapes in between. Modeling capabilities can be
enhanced by tapering, bending and making cavities.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Examples of Superellipsoids
[4]
About Superquadrics
The term of Superquadrics was defined by Alan Barr in 1981
[2]. Superquadrics are a flexible family of 3D parametric
objects, useful for geometric modeling. By adjusting a
relatively few number of parameters, a large variety of
shapes may be obtained. A particularly attractive feature of
superquadrics is their simple mathematical representation.
Superquadrics are used as primitives for
shape representation and play the role
of prototypical parts and can be further
deformed and glued together into
realistic looking models.
[9]
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
About Superquadrics
Classification of Superquadrics
a)
[9]
d)
b)
a) Superellipsoids.
b) Superhyperboloids of one piece.
c) Superhyperboloids of two pieces.
d) Supertoroids.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Classification of Superquadrics [2,9]
c)
Definition of Spherical Products
For two 2x1 vectors [a b]’ and [c d]’ the spherical product is
3x1 vector for which:
Example. For two 2D curves: circle and parabola, the spherical product
is 3D paraboloid.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Definition of Spherical Products
Spherical Products
A 3D surface can be obtained by the spherical product of two 2D curves
[2]. The spherical product
is defined to operate on two 2D curves.
A unit sphere is produced by a spherical
product of a circle h(ω) horizontally and
a half circle m(η) vertically.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Spherical Products [9]
Spherical Products for Superellipsoids
The equation of Superellipse is
and in parametric form:
Superellipsoids can be obtained by a spherical products
of a pair of such superellipses:
The implicit equation is:
where
 1  2
- are parameters of shape squareness;
a 1 a 2 a 3
- parameters of Superellipsoid sizes.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Superellipsoids
Spherical Products for Superhyperboloids of one piece
Superhyperboloids of one piece can be obtained by a
spherical products of a hyperboloid and a superellipse:
The implicit equation is:
where
 1  2
- are parameters of shape squareness;
a 1 a 2 a 3
- parameters of Superellipsoid sizes.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Superhyperboloids of one piece
Spherical Products for Superhyperboloids of two pieces
Superhyperboloids of two pieces can be obtained by a
spherical products of a pair of such hyperboloids:
The implicit equation is:
where
 1  2
- are parameters of shape squareness;
a 1 a 2 a 3
- parameters of Superellipsoid sizes.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Superhyperboloids of two pieces
Spherical Products for Supertoroids
Supertoroids can be obtained by a spherical products of
the following surface vectors:
The implicit equation is:
where
 1  2
- are parameters of shape squareness;
- parameters of Superellipsoid sizes.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Supertoroids
Superquadrics in MATLAB
Modelling Superquadrics in MATLAB:
- Demo-function: xpquad - superquadrics plotting demonstration.
- ezmesh and ezsurf functions (see, Superquadrics_visualization.m).
%--------------------------------------------------------------% a1 = 4; a2 = 2; a3 = 1; eps1 = 1; eps2 = 1;
figure('Name','Superellipsoids')
ezmesh('4*sin(u)*cos(v)', '2*sin(u)*sin(v)', 'cos(u)', [0, 2*pi], [0, 2*pi], 20)
colormap([0 0 1])
hold on
rotate3d on
%---------------------------------------------------------------
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
02/04/2
15/
21
What a1, a2 and a3 mean?
a1, a2 and a3 – are parameters of
parallelepiped’s semi-sides.
If parallelepiped has dimensions:
20 x 30 x 10 cm, it means that
a1 = 10, a2 = 15 and a3 = 5.
The parameters of shape
squareness for parallelepiped are:
ε1 = ε1 = 0.1
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
16/20
What ε1 and ε2 mean?
ε1 and ε2 – are parameters of shape squareness.
ε2 = 0.1
ε2 = 1
ε2 = 2
ε1 = 0.1
[9]
ε1 = 1
ε1 = 2
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
17/20
Superellipsoids shapes varying from ε1, ε2
ε1 = 3
ε2 = 1
ε1 = 1
ε2 = 3
ε1 = 3
ε2 = 3
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
18/20
Plotting Superellipsoids in spherical coordinates
z
Vector r(η,ω) sweeps out
a closed surface in space
when η,ω change in the
given intervals:
a3
r(η,ω)
η
    
a2
y
a1
ω
x



 
2
2
 a cos( )  1 cos( )  2 
1


1
2
r (  )   a 2 cos( ) s in( ) 


1


a
s
in
(

)
3


η,ω – independent parameters (latitude and longitude angles)
of vector r(η,ω) expressed in spherical coordinates.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Superellipsoids
Plotting Superellipsoids in Cartesian coordinates
z
Use the implicit equation in
Cartesian coordinates, considering
-a1 ≤ x ≤ a1
f(x,y,z) = 1
-a2 ≤ y ≤ a2
z’
2
y=a2
x’
y’
x=a1
z=NaN
y


 x 
f ( x y z)   
 a 1 
2
2

2 1

2
y 

  
 a2  
z

 
 a3 
2
1
x,y – independent parameters (Cartesian
coordinates of SQ) are used to obtain z.
x
The implicit form is important for the recovery of Superquadrics and
testing for intersections, while the explicit form is more suitable for
scene reconstruction and rendering.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
20/20
Warning: complex numbers in SQ equation
1. If ε1 or ε2 < 1 and cos or sin of angles ω or η < 0, then vector r(η,ω) has
complex values. To escape them, it should be used signum-function of sin
or cos and absolute values of the vector components.



  
2
2
    
2. Analogically if x or y < 1 and ε1 > 1, the function f(x,y,z) willl have the
complex values of z. To overcome it, use the f(x,y,z) in power of
2
exponent ε1.


 x 
f ( x y z)   
 a 1 
2
2

2 1

2
 y 
  
 a2  
 z
 
 a3 
2
1
f(x,y,z)ε1 = 1
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
21/2
Rotation and translation of SQ
z
zW
xW
yW
Elevation
y
Azimuth
x
T – transformation matrix.
n – amounts of points in SQ surface.
SQ – coordinates of points of SQ surface.
Pw – coordinates of points of rotated SQ surface.
xW, yW, zW – world system of coordinates (with center in viewpoint).
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
22/20
Rotation and translation of SQ
z
zW
xW
px
yW
Elevation
y
Azimuth
T
SQ
x
az,el,px,py,pz,x,y,z – are given; xW,yW,zW – should be found.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
23/20
Pw
Applications with Superquadrics
Superquadrics have been employed in computer vision and robotics
problems related to object recognition. Superquadrics can be used for
1. Object recognition by fitting geometric shapes to 3D sensor data
obtained by a robot.
In order to fit a superquadric to a surface region, 11 parameters must
be determined: three extent parameters (a1, a2, a3), two shape
parameters (ε1 and ε2), three translation parameters, and three
rotation parameters.
2. Scene reconstruction and recognition. Rendering.
Shape reconstruction is a low level process where sensor data is
interpreted to regenerate objects in a scene making as few
assumptions as possible about the objects. Object recognition is a
higher level process whose goal is to abstract from the detailed data
in order to characterize objects in a scene.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Applications with Superquadrics
Figures from Superquadrics
[3]
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Definition of Superquadrics
Applications with SQ
Reconstruction of complex object [6]
Reconstruction of complex object [7]
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
Reconstruction of
complex
object [8]
26/2
Applications with SQ
Reconstruction of multiple objects [9]
Reconstruction of multiple objects [9]
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
05/04/2011
27/2
Task 1: To model Europallet in SQ
Dimensions of EuroPallet
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
02/04/2
28/
21
As an example of a Pallet model
 It
should
be
SQc
SQl
created
SQr
SQ model of pallet
z
z
z
d

y
Transformation: SQc – SQr
SQc
TSQr
1
0

0

0
0 0 d
1 0 0 
0 1 0

0 0 1
x

d
y
x

y
x
Transformation: SQc – SQl
SQc
TSQl
1
0

0

0
0 0  d
1 0 0 
0 1 0 

0 0 1 
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
02/04/2
29/
21
Task 2: To model objects by deformed SQ
Objects like an apple, a bottle, a chair, a tin of beer
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
02/04/2
30/
21
Links
1.
2.
3.
4.
5.
6.
7.
8.
9.
A. Skowronski, J. Feldman. Superquadrics. cs557 Project, McGill University.
http://www.skowronski.ca/andrew/school/557/start.html
Barr A.H. Superquadrics and Angle-Preserving Transformations. IEEE Computer Graphics
and Applications, 1, 11-22. 1981.
Chevalier L., etc. Segmentation and superquadric modeling of 3D objects. Journal of
WSCG, V.11 (1), 2003. ISSN 1213-6972.
Kindlmann G. Superquadric Tensor Glyphs. EUROGRAPHICS. IEEE TCVG Symposium on
Visualization (2004). Pages 8.
Solina F. and Bajcsy R. Recovery of parametric models from range images: The case for
superquadrics with global deformations. // IEEE Transactions on Pattern Analysis and
Machine Intelligence PAMI-12(2):131--147, 1990.
Chella A. and Pirrone R. A Neural Architecture for Segmentation and Modeling of Range
Data. // 10 pages.
Leonardis A., Jaklic A., and Solina F. Superquadrics for Segmenting and Modeling Range
Data. // IEEE Transactions On Pattern Analysis And Machine Intelligence, vol. 19, no. 11,
1997.
Bhabhrawala T., Krovi V., Mendel F. and Govindaraju V. Extended Superquadrics. //
Technical Report. New York, 2007. 93 pages.
Jaklic Ales, Leonardis Ales, Solina Franc. Segmentation and Recovery of Superquadrics. //
Computational imaging and vision 20, Kluwer, Dordrecht, 2000.
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion
Grazie per attenzione!!
Scarica

ε 1