Skip to content

Releases: lessthanoptimal/BoofCV

v1.1.2

05 Nov 20:37
Compare
Choose a tag to compare
  • Android
    • Better handling when the camera becomes inaccessible while it was reading it
  • WorldToCameraToPixel
    • Supports homogenous coordinates
  • BundleAdjustmentMetricResidualFunction
    • Fixed bug with homogeneous coordinates and rigid objects

v1.0.0: Release 1.0.0

21 Aug 15:12
Compare
Choose a tag to compare
  • Version
    • Arbitrarily declared this as version 1.0.0
    • This was done to make version info more informative.
    • Originally it was decided that when face detection was added that would be 1.0 and that's still not on the menu
  • Bundle Adjustment
    • Added a way to specify the camera state when a frame was captured
    • Added a new camera model that adjusts the focal length based on zoom factor
  • Calibration
    • Tangental -> Tangential for consistency

v0.44

15 Jul 23:21
Compare
Choose a tag to compare
  • SimulatePlanarWorld
    • Handles edge of objects better making motion appear smoother
  • MicroQR
    • Rendering doesn't crash in special situations if you specify error level. Thanks for reporting Simon-Staal
    • You can ignore padding bytes now. Thanks for reporting Simon-Staal
  • Demos
    • Added a color segmentation demo. Thanks Maxim Dossioukov.
  • Android
    • Completely new build system that doesn't use any local files
    • New fragment camera code is available for use
    • Thanks Maxim Dossioukov for getting the first prototype of the build running
  • Security
    • When de-serializing YAML it now uses Yaml(new SafeConstructor()) to prevent arbitrary code execution
    • Thanks Letian Yuan for the disclosure
    • SerializeFieldsYamlBase now has a whitelist of what can be deserialized
  • Disparity
    • Fixed a catastrophic cancellation (CC) issue with floating point math with disparity score.
    • This CC issue effects SAD and NCC when dealing with distant objects.
    • Sub-pixel math is adjusted depending on type of error function. Improved SAD and CENSUS subpixel
    • Most application won't see a significant change in performance

v0.43.1: Release 0.43.1

01 Jun 18:15
Compare
Choose a tag to compare
- bug and "bug" fixes
- Updated dependencies

Release v0.43

16 May 04:30
Compare
Choose a tag to compare

Small release with a couple of minor breaking changes related to mesh

  • ImageLinePruneMerge
    • Fixed type-o in near intersection formula. Thanks Erhan Erdemir for finding the problem.
  • PointCloudIO
    • Added support for STL mesh files
  • Added a mesh viewer
    • Swing panel, multiple controls, and help
    • Generic rendering engine

v0.41

03 Sep 02:20
Compare
Choose a tag to compare

Date : 2022/Sep/02
Version : 0.41

  • Applications
    • Added Aztec Code generator
    • Removed unused flag to disable printing info in PDF documents
    • QR and other markers no longer require spacing between markers when there is only a single marker
    • Fixed units in manually specified document size
    • Create Calibration: Fixed units in manually specified paper size
    • Create Calibration: Fixed disable info flag
  • Android
    • Properly handles multi camera systems by finding physical cameras inside a logical camera
  • Demonstrations
    • Better Micro QR Code visualizations
  • Contour Tracing
    • Can specify max and minimum contours using fractional size, i.e. ConfigLength instead of int
    • Added ability to specify maximum contour in places it was missing
    • ConfigPolygonFromContour doesn't produce identical results, but very similar
  • ConvertBufferedImage
    • RGBA with pre-multiplied alpha will have channels swapped correctly
    • BufferedImage sub images work again, Thanks ConvertBufferedImage
  • Added Aztec Code encoder and decoder
  • QR Code
    • Fixed issue where it was rejecting version 1 QR codes at a highly skewed angle
    • Fixed issue where it failed to detect all QR when there was a cluster of several high version
    • If error correction passes it will stop processing the QR. Easier to diagnose issues.
  • Micro QR Code
    • Doesn't keep on trying to decode a marker if it fails after the ECC check
  • Various
    • Fixed crash in Niblack Family when output image was not resized to match input image
    • Image.setTo() now returns 'this' to enable chaining.
    • Can now colorize points based on camera reference frame, not just global
    • PlyCodec - writes correct header for little endian
  • Stereo Disparity: Fixed bug where invalid values got cast to a byte when image was float, causing artifacts.
  • RansacCalibrated now support concurrency
  • Stereo
    • There's now the option to save the fit score for each pixel
  • Photogrammetry
  • Three-View Reconstruction: Does self calibration entirely inside of RANSAC
  • Added ResolveThreeViewScaleAmbiguity
  • N-View reconstruction code now directly uses the 3-view class and skips a projective scene step
  • MultiBaselineDisparity now fuses into an inverse depth image
  • 3D Mesh
    • Added related example code
    • Added support for saving mesh + color points to PLY
    • Added algorithms for converting stereo disparity into a 3D mesh
  • Calibration
    • Mono and Stereo apps now generate calibration quality metrics for coverage and geometry
    • Mono and Stereo GUIs have option to show border and inner coverage
    • Added Division camera model
    • Added multi camera calibration
  • ImageMiscOps
    • Added maskFill()
    • Added a generic filter()

v0.40.1

26 Jan 15:53
Compare
Choose a tag to compare
  • Build
    • Compiles using Java 17. bytecode is still Java 11
    • Updated to Gradle 7
  • Applications
    • Batch scanning of Micro QR Codes
  • QR Code and Micro QR Code
    • Much stricter and more accurate test that looks for UTF-8 strings in BYTE data
    • Config has defaultEncoding which is the encoding it uses if it decides BYTE isn't UTF-8
    • Added an example demonstrating how raw data can be used ExampleQrCodeRawData
    • Added JMH Benchmarks for regression testing
  • Concurrency
    • Added threaded KLT tracker

v0.40

26 Jan 15:53
Compare
Choose a tag to compare
  • Build
    • Added sanity check that makes sure autogenerate has been run already first and prints out a helpful message
    • Fixed accidental Lombok dependency
    • Added NullAway again
  • Misc
    • Config classes now must implement setTo() which returns 'this' to allow chaining and easy copies
    • ImageBase.reshapeTo() replaces matchShape()
  • ImageProcessing
    • Added ImageMiscOps.transpose()
  • Background Model
    • Created threaded implementations of stationary and moving
    • Added internal benchmarks for moving
  • QR Code
    • Added ability to decode transposed markers. Can be turned off.
    • Records number of bit errors detected by error correction
  • Micro QR Code
    • Added support for reading and generating
  • DemoThreeViewStereoApp
    • Fixed handling of gray images. Thanks mb for reporting the issue!

v0.38

24 Sep 14:32
Compare
Choose a tag to compare
Example formatting and minor tweaks

v0.37

17 Feb 00:39
Compare
Choose a tag to compare
Removed Lombok @Getter(onMethod = @__(@Override))

- Was causing JavaDoc to silently fail