<commit_before>Change Log

Date Format: year/month/day

---------------------------------------------
Date    : 2012/
Version : Alpha 0.10

- Association Score
  * Pushed implementations of ScoreAssociation into abst package
  * Put most association distance algorithms into DescriptorDistance
  * Added hamming lookup table
  * Brief now uses a look up table.  About a 7x speed improvement.
  * FactoryAssociate now can create instances of ScoreAssociate.
  * Fixed incorrect NCC equation.  Thanks <NAME>.
- DescribeRegionPoint has been redesigned
  * Now more generic and can work with any feature descriptor
  * Separate function for checking to see if feature is inside bounds
- TupleDesc
  * changed to an interface
  * functions added to provide some generic support
- Brief descriptor renamed to TupleDesc_B
  * Acts as a generic binary feature descriptor
- Descriptors
  * BRIEF and BRIEF-SO now can process features along the image border.  Bit set to false in that case.
- Visualization Apps
  * VisualizeAssociationScoreApp has score type in a separate panel and can support binary descriptors
- InterestPointDetector 
  * WrapFHtoInterestPoint now returns the correct detection radius
  * Fixed non-compliant implementations with incorrectly handled unsupported features.  Thanks jasonnn for submitting this bug
- GeneralFeatureDetector moved from extract to interest package
- Fundamental/Essential Matrix
  * 7-point algorithm now returns all solutions and the algorithm was tweaked
  * Nister 5-pt Essential Matrix
  * Abstractions which can handle multiple solutions
  * Stability evaluator for epipolar matrices
  * Improved unit tests
- Polynomials
  * Various ways to find and polish polynomial roots (EVD and Sturm)
  * New data type and basic operations
- Added ExampleStereoTwoViewsOneCamera
  * Demonstrates how to perform stereo image processing using a single camera and two views
- LensDistortionOps
  * Added normalized to distorted pixel transform
  * Tweaked some of the function names
- SparseIntegralSample_I32.isInBounds() did not return that correct value along the right and bottom image border 
- Functions inside of GThresholdImageOps did not return the number of blobs found like it should
  * Thanks jasonnn
- NonMaxBlockStrict
  * Figued bug where it assumed intensity values were all positive
- TemplateMatching
  * Added code for template matching
  * Added example code to demonstrate its use
- Added support for alpha channel in ConvertBufferedImage 

---------------------------------------------
Date    : 2012/7/22
Version : Alpha 0.9

- Renamed factories
  * FactoryBlobDetector -> FactoryDetectPoint
  * FactoryCornerDetector -> FactoryDetectPoint
- Renamed KLT corner to Shi Tomasi corner, which is more standard
- Fixed bug various point detectors where if the input image was resized the edge intensity might not be zero when it should be
- Changed some corner detection algorithms to take the intensity image in as an input.
- Added new Pixel to Normalized transform
- Created interface for Stereo visual odometry
- Fixed bug in unsafe_set inside of ImageInt8
- Added unsafe_set() and unsafe_get() to ImageFloat32, ImageFloat64, ImageSInt64
- Fixed bug in ImageSInt64.set() where the value was cast into a short  
- Changed transform* functions inside of DistortImageOps so that you can specify how outside image pixels are handled.
- Fixed bug in ImageHistogramPanel - reported by Ray
  * Added support for integer images
- Integration
  * Created ant build scripts
  * Updated Xuggler integration code
  * Added Android
- Generalized SimpleImageSequence so that it does not reference BufferedImage and will play nicer with Android
- Fixed bug in ImplImageDistort* where for 16bit and 32 bit images values were being type casted into bytes
- Changed UnconstrainedMinimization so that the minimum function value is specified in setFunction()
- Added ExampleContours
  * Thanks cspnanda for pointing out the lack of documentation
- New non-maximum suppression algorithm
  * About the same for 3x3 regions, much faster for larger regions
  * Tweaked related API and improved unit tests
- Fixed bug in WrapDescrivePixelRegion where the descriptor is not properly configured for integer images

---------------------------------------------
Date    : 2012/05/13
Version : Alpha 0.8

*IMPORTANT* Discard old calibration files and calibrate again with latest code!

- Added processing monitor to CalibrateStereoPlanarGuiApp
- Fixed bug in Zhang99 calibration where Rodrigues coordinates were being parameterized incorrectly
  * Calibration results would be less accurate, but have a lower residual due to the increased degree of freedom
- Added analytic Jacobian to Zhang99
  * Decided not to use it since it produces same estimation parameters as numerical.
- Added functions for creating detectors in FactoryPlanarCalibrationTarget
  * changed code to reference those functions
- Stereo Disparity Image
  * Dense and Sparse algorithms
  * Rectangular region winner take all (WTA)
    - Validation: right to left, max error, texture
    - Precision: Pixel and Subpixel
  * Algorithms:
    - Basic rectangular region
    - Five region adaptive: Hirschmuller, et. al. "Real-Time Correlation-Based Stereo Vision with Reduced Border Errors," 2002
- IntrinsicParameters
  * Added flipY to parameter list since it is vital information for many
    calculations.
- RectifyImageOps
  * Fixed bug in functions that adjusted the rectification for viewing.
    If left handed the coordinate systems got messed up
- Changed allInside() so that the annoying single pixel black region is gone
  * RectifyImageOps and LensDistortOps
- FactoryCornerDetector
  * Added flag for weighted KLT and Harris
- Added weighted corners to list of features in some evaluation apps
- Examples:
  * ExampleCalibrateMonocularPoints
  * ExampleDetectCalibrationPoints
  * ExampleStereoDisparity
- ImageTestingOps
  * Flip image vertical 
- Fast point cloud viewer

---------------------------------------------
Date    : 2012/04/22
Version : Alpha 0.7

- Redesigned how evaluation apps/applets handle data input and configuration
- Removed the epipolar directory
  * More than just stereo algorithms in there
- Camera calibration outputs XML file containing intrinsic parameters
  * Java XML serialization
- For square calibration grids, added sub-pixel refinement using canny edge
- Fixed a bug in camera calibration where it transposed the grid instead of rotating it
  if the number of rows/columns needed to be swapped.
- 3D Vision Algorithms
  * Estimate translation given rotation and two observations
  * Refine pose estimate given set of 3D points and observations
  * Interface for n-view triangulation
  * Bundle adjustment for calibrated cameras
    - Analytic Jacobian
    - A bit slow right now
- Changed behavior of GeneralFeatureDetector
  * Supports sub-region extraction.  Forces features to be more spread out
  * Max N now is the total number of features, including excludes
- Improved speed of Levenberg algorithm by taking advantage of symmetry
- UtilEpipolar
  * Added canonicalCamera() and decomposeCameraMatrix()
- Created the following Util and Ops classes
  * UtilIntrinsic
  * LensDistortionOps
  * RectifyImageOps
- Stereo Rectification
  * Calibrated with known baseline
  * Uncalibrated, from using a fundamental matrix.
  * Adjust rectification to maximize usefull viewing area
- New Examples
  * Estimate fundamental matrix
  * Rectify calibrated
  * Rectify fundamental matrix
  * Remove lens distortion
- The feature score was not being set in WrapAssociateGreedy
  * Thanks <NAME>
  * Also changed AssociateSurfBasic for a similar reason
- Fixed problem in FundamentalResidualSampson where the denominator was being squared
- Fixed problem in Se3 Essential generator
- Changed positive depth constraint class

---------------------------------------------
Date    : 2012/03/01
Version : Alpha 0.6

- Added convolution related code for ImageSInt32
- Added weighted KLT and Harris corner detectors
- Refactored factory names and other classes to make them easier to find
  and more consistent
- Planar calibration grid detectors
  * Chess board pattern
  * Square grid pattern
- Generic code for detecting squares in binary images
  * Inside of calibration module
- Application for calibration from planar calibration targets
  * GUI and commandline 
- ImageDistort
  * Fixed bug where border.setImage() was not being called
- ImageBorder
  * Added generalized get(x,y) 
- Refactored FactoryImageBorder into two factories
- Fixed bug in several derivative operators where the passed in border was being
  ignored and an extended border being used instead
- Change ImplImageDistort* to use interpolate.get_unsafe() to speed it up by a large margin
- Moved ImageDistort from boofcv.alg.distort to boofcv.struct.distort
- Added PointTransform_F32
- Added both forward and reverse radial distortion PixelTransform_F32 implementations
- ModelMatcher classes can now create multiple model hypotheses from a single set of points.
- Changed ImagePointTracker to use PointTrack instead of AssociatedPair
  * Created KeyFramePointTracker to track features and create AssociatedPairs
- Added FactoryEpipolar
- Added FactoryTriangulate
- Added non-linear refinement for:
  * Fundamental/Essential matrix
  * Homography matrix
  * Triangulation
- Added 2-view and N-View triangulation algorithms
  * DLT
  * Closest point from two lines
- Added EPnP from Lepetit 2009 paper
  * Validation against author's code is pending
- Added color processing to several Apps
  * EvaluateInterpolateEnlargeApp
  * ShowImageBlurApp
- Added SimpleNumberSequenceReader for reading small sequences of numbers
- Added lens distortion app
- Found subtle bug in Harris corner detector.
  * Surprisingly doesn't seem to change output that much.

---------------------------------------------
Date    : 2012/02/01
Version : Alpha 0.5

- Improved SURF performance
  * Fixed various bugs and changed algorithm to improve performance
    - Both speed and stibility have been improved
  * Now is the best performing SURF implementation in the benchmark
- ImplOrientationSlidingWindowIntegral has been replaced with a faster and more accurate algorithm
- Improved integral image support
- Improved sparse gradient support
- Refactored sparse image operator code
  * Added SparseImageSample interface
- Added/Improved unconstrained non-linear optimization code
  * Quasi-Newton line search
  * Levenberg-Marquardt
- Geometric vision and calibration code which uses non-linear optimization now works correectly
- Started converting internal micro benchmarks to use Caliper

---------------------------------------------
Date    : 2012/01/06
Version : Alpha 0.4

- Changed behavior of ConvertBufferedImage so that it won't automatically swap
  bands in MultiSpecitral image
  * orderBandsIntoRGB() has been provided to do that manually if needed
- All automatic convert to/from BGR and been removed from ConvertRaster
- Fixed SURF related issue
  * Image bounds check was being incorrectly performed for integral image
    orientation estimation algorithms (Thanks <NAME> for pointing this out)
  * FactoryOrientationAlgs.sliding_ii() was creating an average orienation alg for I32 images
  * Some coordinates were integer instead of double
- Added comments to several factories and other classes
- Added ant script for examples and readme.txt explaining how to use it

---------------------------------------------
Date    : 2012/01/02
Version : Alpha 0.3

- Camera Calibration
  * Planar grid (Zhang 98)
  * Camera calibration matrix from homographies
  * Linear radial distortion
  * Decomposition of homography for calibration
  * Nonlinear optimization of all parameters
- Calibration Grid Detection
  * Detects corners up to "pixel accuracy", in reality its probably worse than that
  * Sub-pixel accuracy code exists but needs more work
- Added min and max values to ImageTestingOps.addGaussian()
- Tweaked factories related to wavelet denoising so that they take in
  an image type.
- Removed cyclical dependency between modules by creating a visualize modules
- Added to BinaryImageOps
  * label to clusters
  * clusters to binary
- Renamed ImageBase to ImageSingleBand
- Created a new ImageBase
- Flushed out MultSpectral image type more and extended ImageBase
  * Created functions to convert to and from BufferedImage
- Changed behavior of several functions in GeneralizedImageOps to include
  MultiSpectral images
  * refactor createImage -> createSingleBand 
- Updated ant scripts
  * Common template is now used for the different modules
  * Fixed unit test and make it work across the whole project
- Added crop to ImageDistort
  * If cropping is used the only part of the destimation image is processed
- Created calibration package to hold calibration related code
- Moved jars not part of the primary build into boofcv/lib/testing
- Started converting runtime benchmark code over to Caliper
  * http://code.google.com/p/caliper/

---------------------------------------------
Date    : 2011/12/01 
Version : Alpha 0.2

- Added integer polynomial interpolation
  * Cleaned up polynomial interpolation code
- Fixed bug in PixelMath.bound() dealing with unsigned images
- Converting to a BufferedImage now marks it as modified
- Added min and max pixel values to ImageTypeInfo
- Added ComplexMath
- Added PolynomialSolver
- Added process(image) to PointSequentialTracker and renamed it to ImagePointTracker
- Added the following 3D vision code:
  * Linear 8-point essential/fundamental matrix
  * Linear 7-point essential/fundamental matrix
  * Linear 4-point homography
  * Extract camera motion from essential
  * Extract camera and plane normal from homography
  * Triangulate: Linear pixel depth
  * Projective N Point (PNP): Linear N >= 6
- Added non-linear optimizer based upon Levenberg-Marquardt
- Added pixel region based descriptors
  * Raw pixel values
  * Normalized Cross Correlation (NCC)
- Added pixel region based trackers
- Added Sum of Absolute Difference (SAD) feature association score for several different descriptor types.

---------------------------------------------
Date    : 2011/11/01 
Version : Alpha 0.1 

- Initial public release
<commit_msg>Updating change log<commit_after>Change Log

Date Format: year/month/day

---------------------------------------------
Date    : 2012/
Version : Alpha 0.10

- Association Score
  * Pushed implementations of ScoreAssociation into abst package
  * Put most association distance algorithms into DescriptorDistance
  * Added hamming lookup table
  * Brief now uses a look up table.  About a 7x speed improvement.
  * FactoryAssociate now can create instances of ScoreAssociate.
  * Fixed incorrect NCC equation.  Thanks Christian Kramer.
- DescribeRegionPoint has been redesigned
  * Now more generic and can work with any feature descriptor
  * Separate function for checking to see if feature is inside bounds
- TupleDesc
  * changed to an interface
  * functions added to provide some generic support
- Brief descriptor renamed to TupleDesc_B
  * Acts as a generic binary feature descriptor
- Descriptors
  * BRIEF and BRIEF-SO now can process features along the image border.  Bit set to false in that case.
- Visualization Apps
  * VisualizeAssociationScoreApp has score type in a separate panel and can support binary descriptors
- InterestPointDetector 
  * WrapFHtoInterestPoint now returns the correct detection radius
  * Fixed non-compliant implementations with incorrectly handled unsupported features.  Thanks jasonnn for submitting this bug
- FAST Feature Detector
  * Original implementation was buggy and did not produce same results as original author's code
  * Rewrote from scratch and replicates original author results
- GeneralFeatureDetector moved from extract to interest package
- Fundamental/Essential Matrix
  * 7-point algorithm now returns all solutions and the algorithm was tweaked
  * Nister 5-pt Essential Matrix
  * Abstractions which can handle multiple solutions
  * Stability evaluator for epipolar matrices
  * Improved unit tests
- Polynomials
  * Various ways to find and polish polynomial roots (EVD and Sturm)
  * New data type and basic operations
- Added ExampleStereoTwoViewsOneCamera
  * Demonstrates how to perform stereo image processing using a single camera and two views
- LensDistortionOps
  * Added normalized to distorted pixel transform
  * Tweaked some of the function names
- SparseIntegralSample_I32.isInBounds() did not return that correct value along the right and bottom image border 
- Functions inside of GThresholdImageOps did not return the number of blobs found like it should
  * Thanks jasonnn
- NonMaxBlockStrict
  * Figued bug where it assumed intensity values were all positive
- TemplateMatching
  * Added code for template matching
  * Added example code to demonstrate its use
- Added support for alpha channel in ConvertBufferedImage 
- FactoryPointSequentialTracker doesn't create trackers with FAST detector instead uses ShiTomasi to improve stability

---------------------------------------------
Date    : 2012/7/22
Version : Alpha 0.9

- Renamed factories
  * FactoryBlobDetector -> FactoryDetectPoint
  * FactoryCornerDetector -> FactoryDetectPoint
- Renamed KLT corner to Shi Tomasi corner, which is more standard
- Fixed bug various point detectors where if the input image was resized the edge intensity might not be zero when it should be
- Changed some corner detection algorithms to take the intensity image in as an input.
- Added new Pixel to Normalized transform
- Created interface for Stereo visual odometry
- Fixed bug in unsafe_set inside of ImageInt8
- Added unsafe_set() and unsafe_get() to ImageFloat32, ImageFloat64, ImageSInt64
- Fixed bug in ImageSInt64.set() where the value was cast into a short  
- Changed transform* functions inside of DistortImageOps so that you can specify how outside image pixels are handled.
- Fixed bug in ImageHistogramPanel - reported by Ray
  * Added support for integer images
- Integration
  * Created ant build scripts
  * Updated Xuggler integration code
  * Added Android
- Generalized SimpleImageSequence so that it does not reference BufferedImage and will play nicer with Android
- Fixed bug in ImplImageDistort* where for 16bit and 32 bit images values were being type casted into bytes
- Changed UnconstrainedMinimization so that the minimum function value is specified in setFunction()
- Added ExampleContours
  * Thanks cspnanda for pointing out the lack of documentation
- New non-maximum suppression algorithm
  * About the same for 3x3 regions, much faster for larger regions
  * Tweaked related API and improved unit tests
- Fixed bug in WrapDescrivePixelRegion where the descriptor is not properly configured for integer images

---------------------------------------------
Date    : 2012/05/13
Version : Alpha 0.8

*IMPORTANT* Discard old calibration files and calibrate again with latest code!

- Added processing monitor to CalibrateStereoPlanarGuiApp
- Fixed bug in Zhang99 calibration where Rodrigues coordinates were being parameterized incorrectly
  * Calibration results would be less accurate, but have a lower residual due to the increased degree of freedom
- Added analytic Jacobian to Zhang99
  * Decided not to use it since it produces same estimation parameters as numerical.
- Added functions for creating detectors in FactoryPlanarCalibrationTarget
  * changed code to reference those functions
- Stereo Disparity Image
  * Dense and Sparse algorithms
  * Rectangular region winner take all (WTA)
    - Validation: right to left, max error, texture
    - Precision: Pixel and Subpixel
  * Algorithms:
    - Basic rectangular region
    - Five region adaptive: Hirschmuller, et. al. "Real-Time Correlation-Based Stereo Vision with Reduced Border Errors," 2002
- IntrinsicParameters
  * Added flipY to parameter list since it is vital information for many
    calculations.
- RectifyImageOps
  * Fixed bug in functions that adjusted the rectification for viewing.
    If left handed the coordinate systems got messed up
- Changed allInside() so that the annoying single pixel black region is gone
  * RectifyImageOps and LensDistortOps
- FactoryCornerDetector
  * Added flag for weighted KLT and Harris
- Added weighted corners to list of features in some evaluation apps
- Examples:
  * ExampleCalibrateMonocularPoints
  * ExampleDetectCalibrationPoints
  * ExampleStereoDisparity
- ImageTestingOps
  * Flip image vertical 
- Fast point cloud viewer

---------------------------------------------
Date    : 2012/04/22
Version : Alpha 0.7

- Redesigned how evaluation apps/applets handle data input and configuration
- Removed the epipolar directory
  * More than just stereo algorithms in there
- Camera calibration outputs XML file containing intrinsic parameters
  * Java XML serialization
- For square calibration grids, added sub-pixel refinement using canny edge
- Fixed a bug in camera calibration where it transposed the grid instead of rotating it
  if the number of rows/columns needed to be swapped.
- 3D Vision Algorithms
  * Estimate translation given rotation and two observations
  * Refine pose estimate given set of 3D points and observations
  * Interface for n-view triangulation
  * Bundle adjustment for calibrated cameras
    - Analytic Jacobian
    - A bit slow right now
- Changed behavior of GeneralFeatureDetector
  * Supports sub-region extraction.  Forces features to be more spread out
  * Max N now is the total number of features, including excludes
- Improved speed of Levenberg algorithm by taking advantage of symmetry
- UtilEpipolar
  * Added canonicalCamera() and decomposeCameraMatrix()
- Created the following Util and Ops classes
  * UtilIntrinsic
  * LensDistortionOps
  * RectifyImageOps
- Stereo Rectification
  * Calibrated with known baseline
  * Uncalibrated, from using a fundamental matrix.
  * Adjust rectification to maximize usefull viewing area
- New Examples
  * Estimate fundamental matrix
  * Rectify calibrated
  * Rectify fundamental matrix
  * Remove lens distortion
- The feature score was not being set in WrapAssociateGreedy
  * Thanks <NAME>
  * Also changed AssociateSurfBasic for a similar reason
- Fixed problem in FundamentalResidualSampson where the denominator was being squared
- Fixed problem in Se3 Essential generator
- Changed positive depth constraint class

---------------------------------------------
Date    : 2012/03/01
Version : Alpha 0.6

- Added convolution related code for ImageSInt32
- Added weighted KLT and Harris corner detectors
- Refactored factory names and other classes to make them easier to find
  and more consistent
- Planar calibration grid detectors
  * Chess board pattern
  * Square grid pattern
- Generic code for detecting squares in binary images
  * Inside of calibration module
- Application for calibration from planar calibration targets
  * GUI and commandline 
- ImageDistort
  * Fixed bug where border.setImage() was not being called
- ImageBorder
  * Added generalized get(x,y) 
- Refactored FactoryImageBorder into two factories
- Fixed bug in several derivative operators where the passed in border was being
  ignored and an extended border being used instead
- Change ImplImageDistort* to use interpolate.get_unsafe() to speed it up by a large margin
- Moved ImageDistort from boofcv.alg.distort to boofcv.struct.distort
- Added PointTransform_F32
- Added both forward and reverse radial distortion PixelTransform_F32 implementations
- ModelMatcher classes can now create multiple model hypotheses from a single set of points.
- Changed ImagePointTracker to use PointTrack instead of AssociatedPair
  * Created KeyFramePointTracker to track features and create AssociatedPairs
- Added FactoryEpipolar
- Added FactoryTriangulate
- Added non-linear refinement for:
  * Fundamental/Essential matrix
  * Homography matrix
  * Triangulation
- Added 2-view and N-View triangulation algorithms
  * DLT
  * Closest point from two lines
- Added EPnP from Lepetit 2009 paper
  * Validation against author's code is pending
- Added color processing to several Apps
  * EvaluateInterpolateEnlargeApp
  * ShowImageBlurApp
- Added SimpleNumberSequenceReader for reading small sequences of numbers
- Added lens distortion app
- Found subtle bug in Harris corner detector.
  * Surprisingly doesn't seem to change output that much.

---------------------------------------------
Date    : 2012/02/01
Version : Alpha 0.5

- Improved SURF performance
  * Fixed various bugs and changed algorithm to improve performance
    - Both speed and stibility have been improved
  * Now is the best performing SURF implementation in the benchmark
- ImplOrientationSlidingWindowIntegral has been replaced with a faster and more accurate algorithm
- Improved integral image support
- Improved sparse gradient support
- Refactored sparse image operator code
  * Added SparseImageSample interface
- Added/Improved unconstrained non-linear optimization code
  * Quasi-Newton line search
  * Levenberg-Marquardt
- Geometric vision and calibration code which uses non-linear optimization now works correectly
- Started converting internal micro benchmarks to use Caliper

---------------------------------------------
Date    : 2012/01/06
Version : Alpha 0.4

- Changed behavior of ConvertBufferedImage so that it won't automatically swap
  bands in MultiSpecitral image
  * orderBandsIntoRGB() has been provided to do that manually if needed
- All automatic convert to/from BGR and been removed from ConvertRaster
- Fixed SURF related issue
  * Image bounds check was being incorrectly performed for integral image
    orientation estimation algorithms (Thanks <NAME> for pointing this out)
  * FactoryOrientationAlgs.sliding_ii() was creating an average orienation alg for I32 images
  * Some coordinates were integer instead of double
- Added comments to several factories and other classes
- Added ant script for examples and readme.txt explaining how to use it

---------------------------------------------
Date    : 2012/01/02
Version : Alpha 0.3

- Camera Calibration
  * Planar grid (Zhang 98)
  * Camera calibration matrix from homographies
  * Linear radial distortion
  * Decomposition of homography for calibration
  * Nonlinear optimization of all parameters
- Calibration Grid Detection
  * Detects corners up to "pixel accuracy", in reality its probably worse than that
  * Sub-pixel accuracy code exists but needs more work
- Added min and max values to ImageTestingOps.addGaussian()
- Tweaked factories related to wavelet denoising so that they take in
  an image type.
- Removed cyclical dependency between modules by creating a visualize modules
- Added to BinaryImageOps
  * label to clusters
  * clusters to binary
- Renamed ImageBase to ImageSingleBand
- Created a new ImageBase
- Flushed out MultSpectral image type more and extended ImageBase
  * Created functions to convert to and from BufferedImage
- Changed behavior of several functions in GeneralizedImageOps to include
  MultiSpectral images
  * refactor createImage -> createSingleBand 
- Updated ant scripts
  * Common template is now used for the different modules
  * Fixed unit test and make it work across the whole project
- Added crop to ImageDistort
  * If cropping is used the only part of the destimation image is processed
- Created calibration package to hold calibration related code
- Moved jars not part of the primary build into boofcv/lib/testing
- Started converting runtime benchmark code over to Caliper
  * http://code.google.com/p/caliper/

---------------------------------------------
Date    : 2011/12/01 
Version : Alpha 0.2

- Added integer polynomial interpolation
  * Cleaned up polynomial interpolation code
- Fixed bug in PixelMath.bound() dealing with unsigned images
- Converting to a BufferedImage now marks it as modified
- Added min and max pixel values to ImageTypeInfo
- Added ComplexMath
- Added PolynomialSolver
- Added process(image) to PointSequentialTracker and renamed it to ImagePointTracker
- Added the following 3D vision code:
  * Linear 8-point essential/fundamental matrix
  * Linear 7-point essential/fundamental matrix
  * Linear 4-point homography
  * Extract camera motion from essential
  * Extract camera and plane normal from homography
  * Triangulate: Linear pixel depth
  * Projective N Point (PNP): Linear N >= 6
- Added non-linear optimizer based upon Levenberg-Marquardt
- Added pixel region based descriptors
  * Raw pixel values
  * Normalized Cross Correlation (NCC)
- Added pixel region based trackers
- Added Sum of Absolute Difference (SAD) feature association score for several different descriptor types.

---------------------------------------------
Date    : 2011/11/01 
Version : Alpha 0.1 

- Initial public release

{'fraction_non_alphanumeric': 0.06502490315439956, 'fraction_numerical': 0.010168788046485888, 'mean_word_length': 3.6409309791332265, 'pattern_counts': {'":': 0, '<': 8, '<?xml version=': 0, '>': 16, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1583965', 'n_tokens_mistral': 7476, 'n_tokens_neox': 6746, 'n_words': 3501}