Han-Wei Kung (hk643)

 

Feature descriptors:

            I have implemented three descriptors in this project:

1.                  Simple descriptor: Take a 5x5 square window without orientation

2.                  MOPS descriptor: Take a 41x41 square window centered at the detected feature. Scale to 1/5 size and rotate to the horizontal line. Sample a 8x8 matrix around the feature.

3.                  Self-designed descriptor: Similar to SIFT, divide the 16x16 square window around the detected feature into 4x4 grid of cells. Compute edge orientation for each pixel. Weight edges and throw out weak ones. Create histogram of surviving edge orientations. Normalize the intensity by subtracting the mean and dividing by the standard deviation in the window.

 

Major design choices:

            Using Harris operator can achieve translation invariant but not scale or rotation invariant. However, with MOPS descriptor, the detection can be rotation invariant.

 

The performance:

1.                  graf

                     ROC curve

                     Harris operator

2.                  yosemite

                     ROC Curve

                     Harris operator

3.                  Bikes

 

Simple

MOPS

Self-design

SSD

0.26

0.51

0.85

Ratio

0.33

0.59

0.83

 

4.                  Graf

 

Simple

MOPS

Self-design

SSD

0.07

0.16

0.5

Ratio

0.25

0.25

0.21

 

5.                  Leuven

 

Simple

MOPS

Self-design

SSD

0.09

0.43

0.88

Ratio

0.29

0.49

0.68

 

6.                  Wall

 

Simple

MOPS

Self-design

SSD

0.24

0.43

0.82

Ratio

0.32

0.25

0.5

 

 

Strengths and weaknesses:

            The program performs well when using my custom descriptors. However, when we use MOPS descriptors, the result is not quite satisfied.

 

Other Image Test:

 

Extra credit:

Normalizing the intensity allows the detection to achieve luminance invariant. Meanwhile, rotating to horizontal in the MOPS descriptor lets the detection become rotation invariant.