Skip to content

Calcam 2.11

Compare
Choose a tag to compare
@ssilburn ssilburn released this 02 Aug 00:12
· 69 commits to release since this release
a55d272

Calcam 2.11 point release which was long overdue!

New & Enhancements:

  • Added ability to turn off automatic trimming of geometry matrix rows and columns when creating GeometryMatrix objects.
  • Add input fields for both vertical and horizontal FOV in virtual calibration editor so the user can specify either instead of only vertical.
  • Added function intersect_with_line() to CADModel class and include in pbulic API.
  • Improved performance of generating field of view representations and mapping camera images to CAD surface.
  • Improved behaviour of "Set CAD view to match fit" button when using images with multiple sub-views in the fitting calibration tool.
  • Added basic documentation of file formats. (#102)
  • Improved image enhancement for some images where it previously had little effect

Compatibility:

  • Move to new style packaging with pyproject.toml for compatibility with pip > 23. This means less flexible dependency management, but the dependencies are readily available enough now that this should be OK. (#83, #100)
  • Fixed various additional compatibility issues under Python 3.9+ which raised exceptions due to floats being passed to PyQt calls which now require ints.
  • Fixed ray casting compatibility with VTK7 which was inadvertently broken by 2.10.0
  • Fixed compatibility of movement correction with newer versions of OpenCV.
  • Fixed compatibility with NumPy >=1.24 which previously caused exceptions when using chessboard images (#99)

Fixes:

  • When trying to save images, if an image file cannot be written (e.g. no disk space, permissions wrong etc) the user now gets an error message instead of silent failure.
  • Fixed a bug which caused erratic behaviour in image analyser when using a calibration with multiple sub-views and movement correction.
  • Fixed an exception which could be raised by certain combinations of clicks & key presses on VTK GUI elements.
  • Fixed an issue which could raise exceptions if trying to perform a calibration fit with < 6 points (fit button is now disabled in this case).
  • Field of view now updates correctly when changing pixel size or number of pixels in virtual calibration editor.
  • Fixed issue with "lefover image" staying visible when changing sensor aspect ratio in the virtual calibration editor.
  • Fixed a bug in the 3D viewer which caused a calibration legend with multiple entries to appear when rendering images with only 1 calibration visible.
  • Fixed a bug which raised exceptions when using the "Set CAD view to match fit" button in the fitting calibration editor, for images with multiple sub-views if not all sub-views were fitted.
  • Improved reliability of fitting calibration for high resolution images.
  • Fixed PyQt error message to correctly reflect supported PyQt versions.
  • Fixed bug in render.get_wall_coverage_actor() which caused status not to be reported properly when verbose=True
  • Fixed bug in render.get_wall_coverage_actor() where providing a binned image caused the calculation to happen at higher instead of lower resolution.
  • Fixed bug with 60s / 1min roll-over in duration estimate for long calculations which caused estimated times such as "0 min 60 sec"
  • Fixed some typos / wording issues in GUI
  • Switch from using 32bit int to 32bit float for saving pixel coordinates and binning values in Raycast NetCDF files, to allow correct saving & loading of raycasting witj sub-pixel sampling.
  • Fixed bug in detection of monochrome images in enhance_image.scale_to_8bit()
  • Fixed a bug in Calibration.set_detector_window() when using a detector window not completely overlapping the originally calibrated one.
  • Fixed a bug which could raise exceptions in the image analyser if using a detector sub-window and movement correction.
  • Removed some RuntimeWarnings raised by enhance_image() for some images.