Robustness of Different Feature Extraction Methods

Embed Size (px)

Citation preview

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    1/31

    Autonomous Systems LabProf. Roland Siegwart

    Semester-Thesis

    Supervised by: Author:

    Markus Achtelik Martin L. WyssLaurent Kneip

    Robustness of different

    feature extraction methods

    against image compression

    Spring Term 2011

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    2/31

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    3/31

    Contents

    Abstract iii

    Symbols v

    1 Introduction 1

    2 JPEG-Compression 3

    2.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    3 Feature detectors and descriptors 5

    3.1 FAST corner detection . . . . . . . . . . . . . . . . . . . . . . . . . . 53.2 SURF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63.3 BRIEF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    4 Method 7

    4.1 Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    4.2 Evaluation criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74.2.1 Repeatability . . . . . . . . . . . . . . . . . . . . . . . . . . . 74.2.2 Recall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    5 Framework 9

    5.1 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105.1.1 Generating raw data . . . . . . . . . . . . . . . . . . . . . . . 105.1.2 Evaluations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115.1.3 Single evaluation . . . . . . . . . . . . . . . . . . . . . . . . . 12

    6 Results 13

    6.1 Detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136.1.1 Number of features . . . . . . . . . . . . . . . . . . . . . . . . 13

    6.1.2 Region match over quality . . . . . . . . . . . . . . . . . . . . 136.1.3 Region match over translation . . . . . . . . . . . . . . . . . 14

    6.2 Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156.2.1 Number of matches over quality . . . . . . . . . . . . . . . . 156.2.2 Number of matches over translation . . . . . . . . . . . . . . 156.2.3 Recall over quality . . . . . . . . . . . . . . . . . . . . . . . . 156.2.4 Recall over translation . . . . . . . . . . . . . . . . . . . . . . 16

    7 Conclusion 17

    7.1 Program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177.2 Evaluations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    7.2.1 Detectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    7.2.2 Descriptors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177.3 Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    i

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    4/31

    A Feature properties 19

    B Framework 21

    B.1 Variable list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    Bibliography 23

    ii

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    5/31

    Abstract

    This Semester-Thesis evaluates the robustness of different feature extraction meth-ods against image compression. The robustness was tested for JPG compression, aloss afflicted compression method. The selected feature detectors were FAST andSURF. As descriptors SURF, BRIEF and an image patch were chosen.

    A Matlab framework was developed to do the evaluations. Results show why SURFis not an appropriate feature for JPG images in motion. FAST and BRIEF turnedout to be robust against compression and motion.

    iii

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    6/31

    iv

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    7/31

    Symbols

    Acronyms and Abbreviations

    ACU Accuracy of corner detection

    ALU Arithmetic Logic Unit

    CCN Consistency of Corner Numbers

    DCT Discrete Cosine Transformation

    ETH Eidgenossische Technische Hochschule

    FAST Feature from Accelerated Segment Test

    GTI Ground Truth Image

    IDCT Inverse Discrete Cosine Transformation

    JPEG Joint Photographic Experts Group

    JPG Short for JPEG

    NCC Normalized Cross Correlation

    SIFT Scale-invariant feature transform

    SSD Sum of Squared DifferencesSURF Speed Up Robust Features

    v

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    8/31

    vi

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    9/31

    Chapter 1

    Introduction

    As part of the sFly project, the robustness of different feature detectors and descrip-tors against image compression with the common JPG format had to be examined.sFly aims for micro aerial vehicles exploring urban environments. In order to pro-cess the captured information, a data stream is sent to a ground station. Imagecompression is required in order to deal with the limited transmission bandwidth.JPG has been chosen because it is one of the most common compression methodsfor todays photo cameras.

    Figure 1.1: sFly, micro aerial vehicles exploring cities.

    1

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    10/31

    Chapter 1. Introduction 2

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    11/31

    Chapter 2

    JPEG-Compression

    Since the JPEG format is the basis for this thesis, it is essential to understand theJEPG compression algorithm.

    2.1 Description

    JPEG is a loss afflicted compression method for saving pictures. The quality can beexpressed in percent. 100% means no compression and 0% is the maximum whichcan be reached. With increasing compression the Quality gets worse and the filesize smaller.Important is the fact that 100% quality is already loss affected. To show the effectthe difference between a BMP and a 100% quality JPG version of the same RGB

    image has been taken pixelwise. In the resulting image the pixels greater equal toone are set to 255. The result can be seen in figure 2.1. The result shows that thereis a structure related error even if the human eye is not able to see it.

    Figure 2.1: Visualisation of losses between BMP and JPG.

    Technically spoken the picture gets processed by the following steps:

    1. RGB colours get mapped onto the YCbCr-space1

    2. Divided in 8x8 pixel matrices.

    3. Every matrix get DCT transformed into a matrix G. The elements in the Gmatrix depend on the frequencies.

    4. Quantisation of the matrices. The matrices get divided elementwise by thematrix Q and rounded, which is loss affected. The values in the Q matrix

    1Usually used with the standard CCIR 601

    3

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    12/31

    Chapter 2. JPEG-Compression 4

    take into account that the human eye is not very good in distinguishing theexact strength of a high frequency brightness variation. This means that forhigh frequencies the divisor in the Q matrix gets bigger.

    Bj,k = round(Gj,k

    Qj,k); for j = 0, 1, 2, . . . , 7; k= 0, 1, 2, . . . , 7 (2.1)

    5. Using Huffman coding, the B matrices finally get compressed. Huffman cod-ing is a kind of entropy coding which is a lossless data compression. Beforeapplying Huffman the data gets rearranged in a zigzag pattern. As mentioned

    Figure 2.2: zigzag pattern, picture from Wikipedia by Alex Khristov

    the divisor gets bigger with increasing frequency so the further the rearrange-ment gets carried out the smaller the number in the B matrix become. If therearranged B matrix shows a zero sequence at the end the zeros can be cut offand the end of the matrix must be marked with the special code word EOB.

    Huffman coding can be applied on the rest.

    This algorithm can be inverted in order to restore the picture.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    13/31

    Chapter 3

    Feature detectors and

    descriptors

    3.1 FAST corner detection

    The FAST corner detector finds local invariant points. It finds corners in the pic-tures by comparing pixel-gradients in a neighbourhood of pixels. Matlab implemen-tations are available online[3]. The detector is presented in the paper of E. Rostenand T. Drummond [4].

    Figure 3.1: Visualisation of the FAST corner detection feature[3]

    In the picture3.1 a discrete circle with radius 3 and a reference point p is shown.

    To extract corners a grey scaled picture is sufficient and allows much faster extrac-tion than a coloured one. In order to detect an existing corner, the grey scale ofthe pixels lying on the discrete circle are compared with the centre pixel p. If acertain consecutive number of differences lies above or below a certain threshold t,the considered pixel is marked as corner. t serves as parameter for controlling thetotal numbers of extracted corners.

    FAST detects sometimes more than one corner in a certain neighbourhood. In orderto reduce the number of found corners only the corner with the highest cornernessis kept. This is as well called non maximal suppression which is described in [5].Optimizing the calculation cost can be done by examining the pixels 1,9,5 and 13because a feature can only exist when three of them are beyond the threshold. With

    this algorithm only 2.8 pixels have to be examined in average. To achieve even alower examination rate a machine learning approach was done in [5]which reached

    5

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    14/31

    Chapter 3. Feature detectors and descriptors 6

    an average of 2.26 difference checks per pixel.Due to low cost of comparing a small amount of pixels, the FAST feature is muchfaster than the SUSAN or the Harris feature. The amount of potential frames persecond depends on the threshold. The higher the threshold, the less feature getdetected and the higher the speed of detection.

    3.2 SURF

    SURF comes as a combined detector and descriptor. The SURF detector is amodified version of the SIFT algorithm developed by Herbert Bay and his colleagues[9]. SURF is known to be faster and more robust against different transformationthan SIFT. A list of properties can be found in appendix A. This is achieved by:

    Using integral images for image convolution

    Using a Hessian matrix-based measure for the detection

    The algorithm for SURF is much more computationally demanding than the FASTalgorithm. The description can be found in[8].The SURF detector can be extended towards affine invariant regions using affinenormalisation of the ellipse. This increases the computation time.

    3.3 BRIEF

    BRIEF is just a descriptor. It can be combined with any feature detector i.e.FAST. BRIEF compares the brightness of pixels in the neighbourhood of the feature.

    Which pixels have to be compared is predefined and such lists can be found online[10]. It is very fast because the descriptor stores bitwise information. For 512 pairsjust 64 bytes are used and bitwise operations are very fast on the ALU. Becausethere was no Matlab code online available, an own implementation of the BRIEFfeature had to be done.The input arguments are a blurred image and a list of the feature coordinates.brief.m gives back the descriptor of the format 512xn. The image can be blurredby the code in listing3.1.

    Listing 3.1: Smoothing function from Matlab

    1 imfilter(self.im_array{i,i2}.grey,kernel,conv);

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    15/31

    Chapter 4

    Method

    The aim of the project was to test feature detectors and descriptors separately forrobustness against compression and translation.

    4.1 Datasets

    The source for the evaluations were three GTI of which six quality steps were taken(100, 90, 70, 50, 20, 0%) for seven translation steps (0 ,1 ,2, 3, 4, 6, 8 pixels inx-direction). So 42 images had to be analysed.

    Boat Theme Castle Theme Graffiti Theme

    Figure 4.1: The chosen GTI from[7]

    4.2 Evaluation criteria

    The experiments were inspired and derived from Krystian Mikolajczyks research[2].

    4.2.1 Repeatability

    The formula below stands for the repeatability. A correspondence is a feature atthe same spot in both images, which overlaps by 50% in the area, of course witheventual translation taken into account. Features do have a pattern, a radius ora scale, which allows to calculate the overlap geometrically. The found amountof correspondences is then divided by the minimum of the features found in both

    images (GTI and compressed image). This shows how well the geometry of thefeature can be found back. A score for the detector results between 0 and 1 (where

    7

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    16/31

    Chapter 4. Method 8

    one is the best grade).

    repeatability =

    # correspondences

    min(#gt features, #img f eature) (4.1)

    4.2.2 Recall

    The recall gives a possibility to evaluate the descriptor. Again a score between 0and 1 results where 1 is the best grade.A match is found by comparing all descriptors from the GTI to the ones of thecompressed image by taking the difference between the descriptor vectors. For eachcandidate match, the absolute values of the difference vector can then be summedup and the smallest resulting number is considered to be the best match. However,the smallest difference still needs to lie below a certain threshold value in order tobe considered as a match. A correct match is defined as a match which also is ageometrical correspondence (as explained in subsection 4.2.1).

    recall=#correct matches

    #matches (4.2)

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    17/31

    Chapter 5

    Framework

    Figure 5.1: Framework datastructure and dataflow.

    A high number of tests for a lot of images had to be done, therefore a frameworkwas developed to generate the evaluation automatically. The program structure

    and data flow can be seen in the figure 5.1. The program consists of four Matlabfiles:

    1. A super class im data.m,

    2. a child class eval data.m,

    3. an evaluation script generic script.m,

    4. and a test mask multiplot.m.

    generic script.mruns all evaluations for the themes and for the features separately.For example for three themes and three features the script runs nine evaluationsand stores nine datasets. An evaluation is independent of other features or themes,

    at this point the multiplot.mgets important. In order to plot different evaluationresults into one Matlab figure, a test mask is needed which holds the access to all

    9

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    18/31

    Chapter 5. Framework 10

    evaluations. The separate evaluations carried out by the class eval data.mare basedon the raw image and feature data, which are generated from the class im data.m.Therefore, the class eval data.minherits the class im eval.m.While the three first items in the list are generic the last one is not. The test maskhas to be adjusted for every change in the input arguments. To emphasize on thispoint the structure can be kept, but the indices have to be changed in for-loops.In this chapter, the program is not explained in every detail. In case some adjust-ments will be necessary in the future, the list of all variables can be found in theappendixB.1.

    5.1 Usage

    5.1.1 Generating raw data

    The framework for the whole evaluation is implemented in the filegeneric script.m.For the reason of future changes, the input arguments are explained here.Because im data is inherited by eval data the constructor of eval data automaticallyexecutes the constructor of im data. Therefore the input arguments for both classeshave to be handed over for creating an instance. Moreover, the raw data is generatedinstantly by the constructor of the super class.

    Listing 5.1: Creating an instance with the shown arguments.

    1 c o m p _ me t h o d = jp g ;2 q u a l i ty _ l i s t = [1 0 0 , 9 0 , 70 , 5 0 , 2 0 , 0 ] ;3 trans_list = [0 1 2 3 4 6 8 ; 0 0 0 0 0 0 0] ;4 r ot _l is t = 0 ; % n o t in u s e

    5 path_origin{1}=C:\boatSc100.jpg;6 %path_origin{2}=C:\grafiti100.jpg;

    7 p a t h _s a v e = P : \ s e m A r be i t S a ve \ ;8 f e at u re { 1 } = b ri ef ; % f as t , b ri ef , s ur f9 % f e at u re { 2 } = fa st ;10 im_obj = eval_data(comp_method ,quality_list ,trans_list ,rot_list ,

    path_origin{index},path_save ,feature{index});

    The brackets used in the Matlab code in listing5.2, can be set for path originandfeaturein order to run the evaluation automatically for multiple images and featuretypes. Below is a short explanation of the listed code:

    1. The compression method is set to be JPEG. No other compression method issupported in this framework version.

    2. The quality list stands for the quality steps in percent.

    3. The translation list states how much the compressed image is shifted to theground truth image. It can be shifted in x and y direction. The example abovejust addresses a translation in x direction from 0 to 8 pixels (the translationshould not be bigger than 8 pixels). In order to simulate the translation, awindow in the GTI is selected that gets shifted over the image.

    4. The rotation list is not in use. It was implemented for future tests.

    5. The program needs one ground truth image for every theme. Note that theimage has to be named with 6 letters for the theme, three letters for thequality, and with the ending jpg (not jpeg). For example castle100.jpg.

    6. In the script generic script.m, multiple themes can be evaluated by settingmultiplepath originn.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    19/31

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    20/31

    Chapter 5. Framework 12

    numbers (in the red circle) are indices of the image list. Because Matlab does notknow the index zero, the expression gt(0 0) actually means that there is no groundtruth image.

    Below is a list of the evaluations in use:

    feature nr: Refers to number of found features.

    location match: Refers to region match or repeatability.

    pair match: Refers to pair match or recall.

    All of these analyses have an optional parameter. 1 stands for evaluation over qualityand 2 for evaluation over translation. This parameter has to be set for getting theappropriate x-axis and scaling in the figures. A list of GTIs1 gt trans or gt comp,and a list of compressed images over trans or over comp are needed. Those listsare generated automatically ingeneric scirpt.mwhen the input parameters are set

    properly. All lists are of the form nx2, where for every entry in the gt list a newcell array entry has to be created (see listing5.2).

    Listing 5.2: Creating an instance with the shown arguments.1 g t _ t ra n s = [ 2 , 2 ;3 , 2 ] ; % t w o e nt r i e s2 o ve r_ tr an s { 1} = [ 2 2 2 2 ; 2 3 4 5 ] ; % gt e nt ry o ne3 o ve r_ tr an s { 2} = [ 3 3 3 3 ; 2 3 4 5 ] ; % gt e nt ry t wo

    Those numbers for the lists can be picked from the raw image data array. In figure5.4, the red ovals mark the indices over translation, and the green ones those overquality. These ovals could be obviously drawn for every row and column.

    Figure 5.4: Red: Over translation, Green: Over quality.

    5.1.3 Single evaluation

    Due to the fact that it can be very time intensive to run always a whole set ofevaluations, a stored dataset can be restored and single evaluations can be carriedout on it. Therefore the variable s in generic script.mhas to be set to the desiredcase of the switch case structure. In order to have the program evaluate a wholeset of data shas to be set back to 0 (zero).In the single case mode, a few new cases can be used which are not meant to beused by generating a whole dataset:

    -2: Delete evaluations: A dialoguebox appears where the evaluation id can behanded over or multiple evaluation ids with the colon operator, e.g. 3:10.

    -3: Show evaluation: After an evaluation is made, it can be displayed withthis case. Again the colon works for showing multiple evaluations.

    1except feature nr

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    21/31

    Chapter 6

    Results

    For the evaluation, an evaluation mask was programmed to give access to differentfeatures. This allowed to plot different feature evaluations into the same figure.The evaluation can be split up into descriptor and detector evaluation.

    6.1 Detector

    In this part of the evaluation the two features FAST and SURF are examined.

    6.1.1 Number of features

    According figure6.1for every image theme the amount of found features is about800 for the GTI. This is the case because the detector threshold was set accordinglyin order to have a fair evaluation.FAST seems to be more unstable than SURF, but there is no rule of thumb. Thenumbers of found features does not change strongly over translation. The scenetexture, however, seems to have a significant influence.

    Boat Theme Castle Theme Graffiti Theme

    Figure 6.1: The chosen GTI from[7]

    6.1.2 Region match over quality

    As can be observed in figure 6.2 the SURF feature shows slightly better resultsabove a quality of 20%. Below 20%, both features drop quickly.

    13

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    22/31

    Chapter 6. Results 14

    Boat Theme Castle Theme Graffiti Theme

    Figure 6.2: Repeatability over quality

    6.1.3 Region match over translation

    For this tests the figures look pretty similar for all three themes, therefore only thecastle theme is shown.The results for SURF happen to be pretty chaotic for a quality of 100%. This hap-pens because the quantisation takes already place at 100% quality, even when thehuman eye is not able to notice the JPG compression pattern. The image transla-tion leads to the fact that the JPG compression pattern group different pixels, andhence different blob features are being cut depending on the translation. It can bestated that the SURF detector is very sensitive to the pixel regrouping, while the

    FAST feature is much more stable. A proof for the relation between repeatabilityand the JPG compression pattern is the fact that after 8 pixel of translation thescore goes back to 1 again. The reason that it does not reach one, is due to the factthat a few features are moving out of the image and a few new ones are movinginto the image. Those features can not be found (anymore) in the GTI.It can be observed that the FAST feature detector gets worse with decreasing qual-ity. SURF does not decline as fast and so for a high compression FAST has a worseresult for repeatability than SURF.

    Castle Theme 100% Castle Theme 70% Castle Theme 0%

    Figure 6.3: Repeatability over translation.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    23/31

    15 6.2. Descriptor

    6.2 Descriptor

    6.2.1 Number of matches over quality

    In this evaluation pairs stand for matches. This evaluation analyses the imageinformation consistency by matching the 800 GTI features. All three curves behavesimilar and return reasonable results above 20%. This originates from the fact thatthe second threshold is being applied. In the graffiti theme about 70% of quality,all three curves had to pass through 90% of inliers after the threshold was applied(explained in section4.2.2). Of course this threshold can be tuned and optimized,but for this evaluations it was fixed.

    Boat Theme Castle Theme Graffiti Theme

    Figure 6.4: Number of matches over quality.

    6.2.2 Number of matches over translation

    Over translation it can be seen again that the SURF curve looks chaotic for aquality of 100%. SURF is loosing about 50% of the image information contentfor a translation of 3 pixels. BRIEF and the image patch are doing quite wellfor 100% quality and they get successively worse over compression. By comparingthe figures to the repeatability of the region match, it can be seen that the curveslook very similar. This comes from the fact that the descriptors are not completelyindependent from the detectors, but SURF still looses more features during thematching.

    Castle Theme 100% Castle Theme 70% Castle Theme 0%

    Figure 6.5: Numbers of matches over translation.

    6.2.3 Recall over quality

    Figure 6.6 focuses on the recall to grade the descriptors over quality. The figurelooks similar for every theme, so only the castle Theme is shown.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    24/31

    Chapter 6. Results 16

    SURF reaches a very stable recall around 1. Brief is doing nearly as well and patchis decreasing quicker. After 20% the recall is getting rapidly worse for BRIEF andthe image patch.

    Figure 6.6: Recall over quality for the castle theme.

    6.2.4 Recall over translation

    Recall over translation has again been analysed using the castle theme. SURF andBRIEF turn out to have the best results for the three quality steps. The pixel patchis getting considerably poor results. This is due to the fact that the patch descriptoris not very distinctive and suffers strongly from little changes in the image, espe-cially from the JPG compression pattern as observable in the figure for 0% quality.But nevertheless, up to a quality of 70% the patch reaches not too bad results witha recall of 88%. How important the threshold is can be observed in the figures forSURF and BRIEF. Even for a quality of 0% the recall is between 0.9 and 1, whichgives reason to state that a threshold is a appropriate way to distinguish correctand incorrect matches. The BRIEF and the SURF descriptor are very distinctive.Again the pattern effect can be observed by the curves returning to 1 after a trans-lation of 8 pixels.

    Castle Theme 100% Castle Theme 70% Castle Theme 0%

    Figure 6.7: Recall over translation for the castle theme.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    25/31

    Chapter 7

    Conclusion

    The conclusion can be split up into a program and an evaluation part.

    7.1 Program

    A considerable amount of time was invested into the evaluation program to makeit generic. The program works flawless and the code-structure supports furtherimplementations:

    The program can be extended by new feature extractors or descriptors.

    A different compression method can be implemented.

    More image themes can be included.

    Further evaluations can be implemented into the existing structure.

    Since the program is split up into two classes, the data generation can be usedwithout the evaluation.Since the BRIEF implementation could not be found online, it was self implementedand it is now free to be used for any further projects.

    7.2 Evaluations

    7.2.1 Detectors

    SURF has a bad repeatability against translation. It suffers more from translation

    than from compression. Therefore the image information content is getting reallypoor for realistic scenes with images or with the camera in motion.FAST gets good results over translation and compression. It can be stated thatFAST is robust against translation and compression above a certain compressionratio (20% in terms of quality).

    7.2.2 Descriptors

    Even if the SURF detector did not have a good repeatability over translation, itsdescriptor worked well for the recall. The loss of features over translation is stillbad. With the loss in features the information content of the image gets low andtherefore SURF is not an appropriate feature for JPG compression. This is in agree-

    ment with the experience from working with SURF in former projects.BRIEF showed good results through repeatability and recall. It is quite robust

    17

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    26/31

    Chapter 7. Conclusion 18

    against the JPG compression pattern in translation as long as the quality staysabove 20%.The pixel patch is not a highly sophisticated feature, its descriptor is not distinctiveenough to catch up with BRIEF and SURF, which was the expected result.

    7.3 Outlook

    The framework is ready to be used and it can be extended by new feature detectorsand descriptors. It can also be used as a base for another thesis which goes forexample deeper into image compression.

    The observed behaviour of SURF against image compression and translation canbe taken into account in future projects.

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    27/31

    Appendix A

    Feature properties

    Table of feature detectors properties from[1].

    19

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    28/31

    7.2 Summary on the Detectors 257

    Table7.1

    Overviewo

    ffeaturedetectors.

    Rotation

    Scale

    Affine

    Lo

    calization

    FeatureDetector

    Corner

    Blob

    Region

    invariant

    invariant

    invariant

    Repeatability

    accuracy

    Robustness

    Efficiency

    Harris

    +++

    +++

    +++

    ++

    Hessian

    ++

    ++

    ++

    +

    SUSAN

    ++

    ++

    ++

    +++

    Harris-Laplace

    ()

    +++

    +++

    ++

    +

    Hessian-Laplace

    ()

    +++

    +++

    +++

    +

    DoG

    ()

    ++

    ++

    ++

    ++

    SURF

    ()

    ++

    ++

    ++

    +++

    Harris-Affine

    ()

    +++

    +++

    ++

    ++

    Hessian-Affine

    ()

    +++

    +++

    +++

    ++

    SalientRegions

    ()

    ()

    +

    +

    ++

    +

    Edge-based

    +++

    +++

    +

    +

    MSER

    +++

    +++

    ++

    +++

    Intensity-based

    ++

    ++

    ++

    ++

    Superpixels

    ()

    ()

    +

    +

    +

    +

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    29/31

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    30/31

  • 8/12/2019 Robustness of Different Feature Extraction Methods

    31/31

    Bibliography

    [1] Tinne Tuylelaars, Krystian Mikolajczyk: Local Invariant Feature De-tectors: A Survey. Foundations and Trends in Computer Graphics and Vision,Vol. 3, No. 3 (2007) 177-280

    [2] Krystian Mikolajczyk: A Comparison of Affine Region Detectors. Univer-sity of Oxford, OX1 3PJ, Oxford, United Kingdom, 2006.

    [3] Edward Rosten: FAST Corner Detection Homepage: http://svr-www.eng.cam.ac.uk/ er258/work/fast.html, Version of 23.02.2011

    [4] E. Rosten and T. Drummond: Fusing points and lines for high performancetracking. In Proceedings of the International Conference on Computer Vision,pp. 1508-1511, 2005.

    [5] E. Rosten and T. Drummond: Machine learning for high-speed corner de-tection. In Proceedings of the European Conference on Computer Vision, pp.430-443, 2006.

    [6] Coots, T.F., Taylor, C., eds: Performenace Evaluation of Corner De-tection Algorithms under Affine and Similarity Transforms. In Cootes, T.F.,Taylor, C., eds.: 12th British Machine Vision Conference, Manchester, BritishMachine Vision Assosciation (2001).

    [7] Visual Geometry Group, Research Affine Covariant Features.Homepage: http://www.robots.ox.ac.uk/vgg/research/affine/, Version of13.03.2011

    [8] Dirk-Jan KroonOpenSURF(including Image Wrap). SURF algorithm fromhomepage: http://www.mathworks.com/matlabcentral/fileexchange/28300,Version of 18.03.2011

    [9] Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van GoolSURF:Speeded Up Robust Features. Computer Vision and Image Understanding(CVIU), Vol. 110, No. 3, pp. 346359, 2008

    [10] OpenCV: test pairs.txt revision 3931. Homepage:https://code.ros.org/trac/opencv/browser/trunk/opencv/modules/features2d/src/test pairs.txt?rev=3931