how to tell the differences between a cat and a dog masoud alipour ali farhadi ipm – scientific...

29
How to tell the How to tell the differences between a Cat differences between a Cat and a Dog and a Dog Masoud Alipour Masoud Alipour ([email protected]) ([email protected]) Ali Farhadi Ali Farhadi ([email protected]) ([email protected]) IPM – Scientific Computing Center IPM – Scientific Computing Center Vision Group Vision Group Institute for Studies in Theoretical Physics and Institute for Studies in Theoretical Physics and Mathematics Mathematics Tehran-Iran Tehran-Iran

Upload: bertram-barker

Post on 08-Jan-2018

215 views

Category:

Documents


0 download

DESCRIPTION

Making Surfaces – LPC Coefficients. zoom

TRANSCRIPT

Page 1: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

How to tell the differences How to tell the differences between a Cat and a Dogbetween a Cat and a Dog

Masoud Alipour Masoud Alipour ([email protected])([email protected])

Ali Farhadi Ali Farhadi ([email protected])([email protected])

IPM – Scientific Computing CenterIPM – Scientific Computing CenterVision GroupVision Group

Institute for Studies in Theoretical Physics and MathematicsInstitute for Studies in Theoretical Physics and MathematicsTehran-IranTehran-Iran

Page 2: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

OutlinesOutlines

- Linear Predictive Coding Coefficients- Linear Predictive Coding Coefficients - Surfaces Associated to the LPC Coefficients.- Surfaces Associated to the LPC Coefficients. - Application of Computational Geometry.- Application of Computational Geometry. - Detection via Geometric Characteristics of - Detection via Geometric Characteristics of LPC Surface.LPC Surface. - Results- Results

Page 3: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Making Surfaces – LPC Making Surfaces – LPC CoefficientsCoefficients..

zoom

Page 4: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision
Page 5: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

LPC Surfaces : LPC Surfaces :

1) By Computing the LPC coefficients for 1) By Computing the LPC coefficients for each window W of the image, we obtain a set each window W of the image, we obtain a set of data in Rof data in R2020 . .

2) Each window is identified by its upper left 2) Each window is identified by its upper left corner index (x,y). corner index (x,y).

3) Project the data for each window to R by 3) Project the data for each window to R by taking the average of the marked neighbors.taking the average of the marked neighbors.

Page 6: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Projection to R: Projection to R:

-Take average of -Take average of 6,10,11,15 6,10,11,15 coefficients. coefficients.

OriginOrigin1010

66

1111

1515

Page 7: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

LPC Surface (continued):LPC Surface (continued):

4) Denote this average by F(x,y).4) Denote this average by F(x,y).

5) Sliding window with overlaps defines a 5) Sliding window with overlaps defines a function on a grid.function on a grid.

LPC Surface = Graph of F(x,y)LPC Surface = Graph of F(x,y)

Page 8: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

(i(ipp , j , jp)p)

(i(ip’p’ , j , jp’)p’)

ZZpp

ZZp’p’

(i(ipp, j, jp, p, zzpp))(i(ip’ p’ ,j,jp’ p’ ,z,zp’p’))

Page 9: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

SurfacesSurfaces

Page 10: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision
Page 11: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision
Page 12: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision
Page 13: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Quantifying the OscillationsQuantifying the Oscillations

dSsES

22

21)(

where k1 and k2 are the minimum and maximum (principal) surface curvature, respectively.

Strain Energy (total curvature)Strain Energy (total curvature)

Bending energy function (roughness measure)Bending energy function (roughness measure)

2

)2()],([ 222 dxdyfffyxfI yyxyxx

Page 14: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Quantifying Oscillations Quantifying Oscillations (continued):(continued): Gaussian Curvature of a surface Gaussian Curvature of a surface z=F(x,y)z=F(x,y)

222

2

)1( yx

xyyyxx

FFFFF

K

Page 15: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

High curvature

Low curvatureImages from Caltech Multires Lab

Page 16: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Discrete CurvatureDiscrete Curvature

M a triangulated surface (not M a triangulated surface (not necessarily smooth)necessarily smooth)

0

0

0

0

0

-1

0

0

20

1

vertexon theincident edges ofnumber -6)K( Discrete Curvature at a vertex

Page 17: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Euler Number (characteristic)Euler Number (characteristic)

g22

22 0

FEV

Page 18: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Discrete CurvatureDiscrete Curvature

Discrete Curvature satisfies some Discrete Curvature satisfies some basic theorems of Differential basic theorems of Differential Geometry cast in the discrete Geometry cast in the discrete framework.framework.

1. Gauss Bonnet Theorem is valid1. Gauss Bonnet Theorem is valid

2. Every closed surface has 2. Every closed surface has triangulation of constant curvature.triangulation of constant curvature.

2KdNumberEuler

vK

6)( 26

Page 19: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

TriangulationsTriangulations

1)1) Uniform TriangulationUniform Triangulation2)2) Delaunay TriangulationDelaunay Triangulation

Page 20: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Delaunay TriangulationsDelaunay Triangulations

Empty circle property

Delaunay Triangulation and Delaunay Triangulation and Voronoi diagramdiagram

Page 21: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Triangulated SurfaceTriangulated Surface

Page 22: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Counting the Number of Incident Counting the Number of Incident Edges.Edges.

1. Mapping center of gravity of each 1. Mapping center of gravity of each Triangle on the plate z=0 .Triangle on the plate z=0 .

2.Generating a uniform grid on z=o;2.Generating a uniform grid on z=o;3. Centroid Matrix3. Centroid Matrix

Page 23: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Number of triangles per areaNumber of triangles per area

Thus a triangle is assigned to a square grid if theThus a triangle is assigned to a square grid if theorthogonal projection of the centroid oforthogonal projection of the centroid ofthe triangle is located in that windows.the triangle is located in that windows.Count the number of triangles which isCount the number of triangles which isassigned to the each window.assigned to the each window.Hence a matrix D is obtained.Hence a matrix D is obtained.

Page 24: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

44 66 33 22

44 55 11 33

33 33 33 66

Page 25: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

51715171 60996099 68866886 60946094 22802280

57355735 56635663 67536753 46124612 36383638

76927692 73177317 51185118 51655165 11021102

67956795 43514351 57395739 39923992 37873787

22302230 20572057 21352135 22532253 17551755

LPC coefficients.LPC coefficients.

Centroid MatrixCentroid Matrix

Page 26: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

Comparing for detectionComparing for detection

The differences between the centroid The differences between the centroid matrices for cats and dogs are obvious.matrices for cats and dogs are obvious.

Simply by using the means of matrices Simply by using the means of matrices we can differentiate between cat and we can differentiate between cat and dog matrices . dog matrices .

Better statistical invariants are also Better statistical invariants are also applicable to the matrix D. For applicable to the matrix D. For example, example, - - σσ 22, etc., etc.

Page 27: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

ResultsResults

93379337928692867692769287548754

2062520625192221922248713487132042620426

Page 28: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

ConclusionConclusion

- This is not a image matching algorithm - This is not a image matching algorithm - This is not a shape matching algorithm- This is not a shape matching algorithm- Objects are discriminated via texture - Objects are discriminated via texture

analysisanalysis

Page 29: How to tell the differences between a Cat and a Dog Masoud Alipour Ali Farhadi IPM – Scientific Computing Center Vision

?QuestionsQuestions