Difference between revisions of "BoofCV Change Log"

From BoofCV
Jump to navigationJump to search
m
m
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
Change Log
Date    : 2016/12/07
Version : 0.26


---------------------------------------------
* Fixed a long standing unit test issue where convolve unit test would some times on some systems erratically fail
Date    : 2015/11/09
** Appears that sometimes the random numbers caused a buffer overflow for U8 images
Version : Alpha 0.20
** Now why it didn't have the exact same numbers every time when it has a fixed seed is disturbing...
 
* Renamed EquirectangularTo* to *ToEquirectangular
* Improved pose stability of calibration targets as fiducials
** Those classes convert pixels in * coordinates into their location in the equirectangular image
** Turns out they were using a linear estimate only
** They are used to generate a * image from equirectangular
** Now uses EPnP followed by a few steps of non-linear refinement
* Float 32bit auto coding switched over to using auto64fto32f library
* PerspectiveOps.createIntrinsic() which creates intrinsic parameters from a known FOV and image shape
* TypeInterpolate is now InterpolationType for consistency
* New WebcamInterface and some examples now can run on your webcam
* Examples
** Requires WebcamCapture
** InterpolatePixel added
* ExamplePointFeatureTracker has colorized points to make it easier to identify the same point
** Image blur added
* Polygon Detector
** Non-Maximum Suppression added
** Simplified code by removing requirement the CW/CCW must be known by helper classes
* Demonstrations
* BinaryPolygonConvexDetector
** Improved DemonstrationInterpolateScaleApp (renamed also)
** Much improved performance on non-square like shapes
** Added DetectBlackEllipseApp
** Stability is much better on very small shapes
* Gradle
* Merged data/applet and data/evaluation together
** Will fail on dependency version conflict now
** Renamed to data/examples
** Will fail when building release with SNAPSHOT dependencies
* Renamed package boofcv/evaluations to boofcv/demonstrations
** Resolved xstream version conflict
** It no longer served as a place for benchmarks
* Updated DeepBoof
* VisualizeBinaryData
** This is to get around an issue with a java wget library where it would hang instead of giving up
** Marked buffered image as dirty when rendering a labeled image
** New code is also much more informative and prints out size info and download status\
* Removed Processing from project
* Visualization
** Might spawn into its own project if there is more interest in the future
** Removed a bad +PI/2 from ellipse rendering.
* Binary Thresholding
* SnapToEllipseEdge * Fixed bug where it was only performing one iteration no matter what
** Created a generic config class which supports all current types
* Circle Asymmetric Grid Target
* Square Fiducial Generator App
** Fixed issue which was causing clusters not to form by not limiting number of neighbors within X distance
** no longer defaults to a page border of 1cm
** When clustering ellipses orientation and major/minor axis size is now taken in account.
** page border is actually user configurable
** Significant net improvement in regression tests, only drop in performance in blurred images
** border and white border are correctly handled
* Square Binary Fiducial
** Can now handle grids with arbtirary widths!
*** Thanks Nathan Pahucki npahucki@gmail.com for submitting this pull request
** The width of the border can now be adjusted too
* Moved PyBoof to it's own repository at https://github.com/lessthanoptimal/PyBoof
** It will be update on its own cycle
* Chessboard Detector
** Improved stability especially for slightly blurred images
* PointTrackerKltPyramid
** Fixed uninitialized variable in one of the constructors.  Thanks ericbhatti
** Change it from two constructors down to one constructor
* Created built in class for removing perspective distortion
** RemovePerspectiveDistortion
* Partially observable calibration targets are now supported
** Mathematically at least.  Targets which can be partially observed are not supported yet
* ConvertBufferedImage.stripAlphaChannel()
** Can be used to ensure that an alpha channel is not in the buffered image
** Inspired by an issue pete-experimenter had
* Renamed FiducialDetector to FiducialPoseDetector
** Done to accommodate fiducials in which you don't care about the pose
* Morphological Thinning has been fixed and tweaked
** Thanks Emil Hellman who first pointed out the issue and helped solve/improve the implementation
* Locally adaptive threshold techniques that had a bias term now have a scale term.
** Much more useful since bias was intensity and value range dependent

Latest revision as of 21:16, 7 December 2016

Date  : 2016/12/07 Version : 0.26

  • Fixed a long standing unit test issue where convolve unit test would some times on some systems erratically fail
    • Appears that sometimes the random numbers caused a buffer overflow for U8 images
    • Now why it didn't have the exact same numbers every time when it has a fixed seed is disturbing...
  • Renamed EquirectangularTo* to *ToEquirectangular
    • Those classes convert pixels in * coordinates into their location in the equirectangular image
    • They are used to generate a * image from equirectangular
  • Float 32bit auto coding switched over to using auto64fto32f library
  • TypeInterpolate is now InterpolationType for consistency
  • Examples
    • InterpolatePixel added
    • Image blur added
    • Non-Maximum Suppression added
  • Demonstrations
    • Improved DemonstrationInterpolateScaleApp (renamed also)
    • Added DetectBlackEllipseApp
  • Gradle
    • Will fail on dependency version conflict now
    • Will fail when building release with SNAPSHOT dependencies
    • Resolved xstream version conflict
  • Updated DeepBoof
    • This is to get around an issue with a java wget library where it would hang instead of giving up
    • New code is also much more informative and prints out size info and download status\
  • Visualization
    • Removed a bad +PI/2 from ellipse rendering.
  • SnapToEllipseEdge * Fixed bug where it was only performing one iteration no matter what
  • Circle Asymmetric Grid Target
    • Fixed issue which was causing clusters not to form by not limiting number of neighbors within X distance
    • When clustering ellipses orientation and major/minor axis size is now taken in account.
    • Significant net improvement in regression tests, only drop in performance in blurred images