Difference between revisions of "Validation:Algorithms"

From BoofCV
Jump to navigationJump to search
(Created page)
 
(Updated formatting and added info on EPnP)
Line 1: Line 1:
= Algorithm Validation =
= External Validation =


Correctly implementing algorithms and producing the expected performance can be non-trivial. Academic papers more of then than not leave out important implementation details which are needed for reproducing their results.  BoofCV contains over a thousand internal tests to help ensure correctness of its algorithms, but testing against external sources is often required to catch more subtle bugs.  This page contains a list of important algorithms inside of BoofCV and if they have been validated against external libraries or not.  Just because some code has not been validated does not mean it is incorrect.
Correctly implementing algorithms and producing the expected performance can be non-trivial. Academic papers more of then than not leave out important implementation details which are needed for reproducing their results.  BoofCV contains over a thousand internal tests to help ensure correctness of its algorithms, but testing against external sources is often required to catch more subtle bugs.  This page contains a list of important algorithms inside of BoofCV and if they have been validated against external libraries or not.  Just because some code has not been validated does not mean it is incorrect.
{| class="wikitable" border="1"
! Status !! Meaning
|-
| Validated || As good or better than original code or test data
|-
| Needs Work || Producing results which are not as good as expected
|-
| NA || Significantly different from original.  See comments in code
|-
|    || Blank means that it has not been externally validated
|}


= Region Descriptors =
= Region Descriptors =


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75" | Algorithm  
! scope="col" width="75" | Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
|-
| SURF || Validated || Original authors reference binary and others.  http://boofcv.org/index.php?title=Performance:SURF
| SURF || Validated || Original authors reference binary and others.  http://boofcv.org/index.php?title=Performance:SURF
Line 15: Line 28:
| BRIEF || ||
| BRIEF || ||
|-
|-
| Oriented Gaussian Descriptor || || Not validated and known to not replicate the original paper
| Oriented Gaussian Descriptor || NA || Not validated and known to not replicate the original paper
|}
|}


Line 21: Line 34:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75" | Algorithm  
! scope="col" width="75" | Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
|-
| Fast Hessian || Validated || Original authors reference binary and others.  http://boofcv.org/index.php?title=Performance:SURF
| Fast Hessian || Validated || Original authors reference binary and others.  http://boofcv.org/index.php?title=Performance:SURF
Line 29: Line 43:
|-
|-
| KLT Corner || ||
| KLT Corner || ||
|-
| Hough Line || ||
|}
|}


Line 34: Line 50:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75" | Algorithm  
! scope="col" width="75" | Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
| Zhang98 || Needs Work || Compared against calibration numbers listed at author's website
|-
|-
| Zhang98 || || Compared against calibration numbers listed at author's website
| EPnP || || Pending verification against author's code
|-
|-
| Linear F || ||
| Linear F || ||
Line 47: Line 66:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75" | Algorithm  
! scope="col" width="75" | Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
|-
| Convolution || ||
| Convolution || ||
Line 56: Line 76:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75" | Algorithm  
! scope="col" width="75" | Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
|-
| Nearest Neighbour || ||
| Nearest Neighbour || ||
Line 67: Line 88:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
! scope="col" width="75 | Algorithm  
! scope="col" width="75| Algorithm  
! scope="col" width="50" | Status !! Comments
! scope="col" width="50" | Status  
! scope="col" width="600" | Comments
|-
|-
| Wavelet || ||
| Wavelet || ||
|}
|}

Revision as of 04:34, 28 February 2012

External Validation

Correctly implementing algorithms and producing the expected performance can be non-trivial. Academic papers more of then than not leave out important implementation details which are needed for reproducing their results. BoofCV contains over a thousand internal tests to help ensure correctness of its algorithms, but testing against external sources is often required to catch more subtle bugs. This page contains a list of important algorithms inside of BoofCV and if they have been validated against external libraries or not. Just because some code has not been validated does not mean it is incorrect.

Status Meaning
Validated As good or better than original code or test data
Needs Work Producing results which are not as good as expected
NA Significantly different from original. See comments in code
Blank means that it has not been externally validated

Region Descriptors

Algorithm Status Comments
SURF Validated Original authors reference binary and others. http://boofcv.org/index.php?title=Performance:SURF
KLT
BRIEF
Oriented Gaussian Descriptor NA Not validated and known to not replicate the original paper

Feature Detectors

Algorithm Status Comments
Fast Hessian Validated Original authors reference binary and others. http://boofcv.org/index.php?title=Performance:SURF
Harris Corner
KLT Corner
Hough Line

3D Vision

Algorithm Status Comments
Zhang98 Needs Work Compared against calibration numbers listed at author's website
EPnP Pending verification against author's code
Linear F
Linear H

Image Processing

Algorithm Status Comments
Convolution

Interpolation

Algorithm Status Comments
Nearest Neighbour
Bilinear

Image Transformation

Algorithm Status Comments
Wavelet