Recent Releases of calcam

calcam - Calcam 2.15.3

This is a patch release which addresses two issues: * Fixed compatibility with NumPy versions 2.3 and newer (#149) * Improved behaviour of RayData.getraystart(), getrayend() and their dependent functions if the "coords" argument is invalid (now raises ValueError instead of returning None with no error) (#148)

- Python
Published by ssilburn 12 months ago

calcam - Calcam 2.15.2

This is a patch release to fix a single bug which was introduced in 2.15.0, which caused exceptions to be raised by RayData.getraylengths() due to an array size mismatch.

- Python
Published by ssilburn about 1 year ago

calcam - Calcam 2.15.1

This is a patch / bug fix release:

  • Most critically: fixed an issue in 2.15.0 which caused incorrect responses to dialog boxes with PyQt6. This caused the CAD model prompt on first run / configuration to "go nowhere" making it impossible to get started with a new installation as per the documentation!

  • Fixed various bugs with ray casting and the RayData class including errors / wrong behaviour for RayData objects created with coords='Original'

  • Fixed confusing GUI behaviour in the 3D viewer where saved cursor coordinates (3D data tab) were editable in the displayed table but editing had no actual effect (now table is not editable)

- Python
Published by ssilburn about 1 year ago

calcam - Calcam 2.15

Minor release v2.15

New & Enhancements: * In the fitting calibration tool, previous calibrations and/or chessboard images with detector windows different to the current calibration can now be used as intrinsics constraints (Also fixes #137) * Added new optional argument "verbose" to CADModel constructor which can be used to suppress status messages (and fix inaccurate docstring related to this) * Added display of detector window offset in calibration information (i.e. output of Calibration.str()) * Removed display of QtOpenGL status from Settings GUI since this appears to be redundant following #125

Compatibility / Dependencies: * Re-enable PyQt6 support and change install requirement to PyQt6 (but keeping PyQt5 and 4 support) (fixes #141)

Fixes: * Fixed a bug where the number of pixels was not always loaded properly in the virtual calibration editor (#140) * Fix bugs in Calibration.normalise() and update inaccurate docstring (#139) * Fix bug which prevented calibration being saved if image offset coordinates returned by image source code were NumPy int32 or int64 types. * Fixed bugs in Calibration & RayData classes which could cause unexpected exceptions in Calibration.project_points() when passing a RayData object to check occlusion (#142 and others) * Fixed mis-recognition of previous calibration images as chessboard images in point fitting GUI when loading existing calibrations (#138)

- Python
Published by ssilburn about 1 year ago

calcam - Calcam 2.14.1

This is a patch / bugfix release to fix some annoying bugs discovered in 2.14.0:

  • Fixed a bug which caused the point fitting calibration tool to raise an exception on launch at first run (#135)
  • Fixed a bug which caused exceptions from Calibration.subview_lookup() due to the subview mask sometimes being a dtype other than signed int (#134)
  • Fixed various bugs caused if elements of CoordTransformer.offset were not integers, by explicitly casting them to ints when set in CoordTransformer() (#133)
  • Removed use of deprecated SciPy namespaces and improve matplotlib cmap import logic (#132)

- Python
Published by ssilburn over 1 year ago

calcam - Calcam 2.14

Minor version release 2.14.

New & Enhancements: * Added feature to build and export a list of 3D coordinates based on cursor clicks in 3D Viewer tool. * Added option in fitting calibration GUI to fix the optical centre at the image centre (contribution from Koyo Munechika) * Improved behaviour when reading high bit depth greyscale image files (both for camera and chessboard images) * Add ability to apply chessboard points across all sub-views for multiple sub-view images * Add ability to view existing chessboard images in the GUIs which can use chessboard images * Number of chessboard points as displayed in calibration info is now counted by chessboard corner rather than image point * Improve handing of errors which prevent GUI from opening (ensure diaglog boxes with specific messages are displayed instead of silent failure or non-specific messages) * Improve precision of adding new preset views to CAD model definitions (contribution from Matt Kriete) * Change pixel size input to 2 decimal places (contribution from Matt Kriete) * Minor GUI text improvements (contribution from Matt Kriete + Scott Silburn)

Compatibility: * Fix compatibility with Matplotlib 3.9.0 * Restore compatibility with Python 3.5 * Fix compatibility with NumPy =>1.25 when performing calibrations with multiple sub-views * Fix compatibility of RayData.save() with SciPy => 1.12 (#127) (contribution from Rhys Doyle) * Switch from using local copy of QVTKInteractorStyle to using the upstream version (contribution from Evie Litherland-Smith)

Fixes: * Geometry matrix generation now works correctly with RayData objects where RayData.setdetectorwindow() has been used (previously the detector window setting was ignored by the geometry matrix building) * Improved handling of "missed" ray-cell intersections in geometry matrix generation caused by numerical accuracy near grid cell intersections (now less likely to raise exceptions) * Fixed issue with numerical precision causing errors in geometry matrix building * Fixed incorrect logic related to use of additional intrinsics constrains in fitting calibration tool with transformed images (sometimes caused exceptions; may also have affected calibration accuracy) * Fixed exception raised when pressing Ctrl+F in fitting calibration window if there is no image loaded yet * Fixed non-working "Add current view as preset" button in point-fitting GUI (contribution from Matt Kriete) * Use consistent number of digits for camera orientation input across all GUIs (contribution from Matt Matt Kriete) * Fix various small bugs in intrinsics setting behaviour of virtual calibration editor * Improve behaviour of "Set CAD view to match fit" button in fitting calibration tool for calibrations with multiple sub-views * Update incorrect / outdated documentation (#121) * Attempt to fix auto Anaconda build & deploy (#114) * Improve reliability of Fisheye calibration * Fix bug where using fisheye calibration with chessboard images in the fitting tool raised exceptions

Deprecated / Removed: * Calcam 1 file converter scripts removed

- Python
Published by ssilburn over 1 year ago

calcam - Calcam 2.13

Calcam minor release 2.13. Note that this release introduces two new dependencies: h5py and triangle.

New & Enhancements: * Support MATLAB 7.3 HDF5 files when loading geometry matrices from MATLAB format (#118, contributiobn from Artur Perek). * GUI visual accessibility improvements: change marker colours to more colorblind-friendly palette and increase size of 3D cursors.

Compatibility: * Changed from MeshPy for triangular grid generation in calcam.gm to using "triangle" module directly (#115) * Fix compatibility of calcam.movement.detectmovement(),phasecalibrationmovement() and filterpoints() with openCV 4.6 and newer (#117)

Fixes: * Fixed a bug where loading a fitted calibration with tangential distortion disabled in the calibration GUI would not disable the tangential distortion checkbox on the fitting tab. * Fixed exceptions raised by setdetectorwindow() and raycast_sightlines() for multi-subview calibrations with some sub-views not fit. (#119) * Attempt to fix broken Anaconda build & publish action (#114)

- Python
Published by ssilburn over 2 years ago

calcam - Calcam 2.12

Point release to Calcam v2.12.

New & Enhancements: * Add ability to create tomographic reconstruction grids based on SOLPS-ITER DivGeo-Carre files (#109; contribution from Rhys Doyle). * Added option in fitting calibration tool to display CAD model as either wireframe or solid model. * Change name of calcam.gui.executablepath to calcam.gui.exepath to make it easier to type. * Added more options for working with different mesh file coordinate system conventions in model definition editor (#108) * Improved behaviour of the CAD model definition editor if importing the same mesh file multiple times. * Calcam is now available as a conda package on Anaconda.org/calcam (#106)

Fixes: * Fix issue where calcam.gui.icons_path could be inaccurate on Windows if Python was installed from the Microsoft Store. * Improve handling of insufficient disk space errors so now the error message makes the cause of the problem much clearer. (#110) * Fixed image export from Image Analyser tool which was broken (raised an exception) (#111) * Fixed a bug which caused new version notifications not to work since v2.8.3, or if using a pre-release of the current version.

- Python
Published by ssilburn over 2 years ago

calcam - Calcam 2.11

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 intersectwithline() 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.getwallcoverageactor() which caused status not to be reported properly when verbose=True * Fixed bug in render.getwallcoverageactor() 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 enhanceimage.scaleto8bit() * Fixed a bug in Calibration.setdetectorwindow() 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 enhanceimage() for some images.

- Python
Published by ssilburn almost 3 years ago

calcam - Calcam 2.10

Calcam 2.10 point release.

New & Enhancements: * Improved handling of errors which prevent the GUI from starting, so the user should always at least get an error message instead of silent failure. * Added missing documentation for calcam.movement.phasecorrelationmovement() so this is now part of the public API. * Added WSAD & Up/Down/Left/Right keyboard controls for "walking" in the 3D views (#93) * Switched to using vtkStaticCellLocator() for ray-casting because it's much faster but also for some reason much more accurate with newer versions of VTK. * Minor documentation improvements

Compatibility: * Removed support for PyQt6, because it causes more problems than it's worth on most platforms so sticking with PyQt5 for now gives an easier / more reliable user experience. * Fixed various problems with the GUI under Python 3.10: * Fixed an issue which prevented the main GUI tools from opening at alll (silent failure) (#94) * Fixed non-working colour chooser (#95) * Fix exceptions related to sliders (part of #78) * Fixed exception raised when rendering unfolded wall in Viewer tool * Added workaround / mitigation for silent Python crashes with VTK => 9.1 when setting some CAD models to wireframe (#78) * Removed restriction of VTK version < 9.1 in setup.py and updated docs accordingly.

Fixes: * Fixed an exception raised when adding CAD viewports from a calibration file in the Viewer GUI if the user had not manually resized the window since it was opened. (#96) * Fixed an exception raised by Calibration.projectpoints() for fisheye lens calibrations if it was called with only a single 3D point to project. * Fixed a bug where calling getmodel_normals() on a raycast result with no model normals would return an exception class, instead of raising an exception. * Fixed a couple of left-over legacy variable names in the CADModel class

- Python
Published by ssilburn over 3 years ago

calcam - Calcam 2.9.1

Patch release to fix some issues quickly discovered in 2.9.0.

Fixes:

  • Fixed bug which caused the Settings GUI to fail to open under PyQt6 in some circumstances.
  • Fixed bug in RayData class where getting a data array from a Raydata object loaded from disk could produce garbled results.
  • Fixed exception raised by QVTKRenderWindowInteractor in PyQt6 if QGLWidget is not available.
  • Fixed (hopefully) invalid .zenodo.json so future releases get successfully auto-published on Zenodo.
  • Try to save a little memory by adding de-registration of ZipSaveFile.close() method from atexit when the file is closed.

- Python
Published by ssilburn almost 4 years ago

calcam - Calcam 2.9

Calcam 2.9 point release.

New & Enhancements: * Calcam now available on PyPi (but could use improvements to make distribution more PEP compliant in future) (#83) * Support masking of images (i.e marking parts of the image which do not contain any actual image) in fitting and manual alignment calibration tools (#46). * Add vertical field of view input in virtual calibration editor as an alternative to focal length (#85). * Remove error message if fitting determines the camera is upside-down; camera roll not settable in range -180,180 instead of -90,90 degrees. * In the virtual calibration editor, hide pinhole model parameters if another intrinsics type is selected (otherwise could be misleading). * In the virtual calibration editor, when using intrinsics from an existing calibration, display the filename of that calibration. * Add button to save image to use as a template for creating image masks. * Add ability to place a default configuration file in the calcam directory which will be checked for new users on multi-user systems. * Version number is now stored in 1 place (calcam/__version__) instead of 3 different places. * Re-work setup.py for compatibility with PyPi and pip. * Make handling of missing dependencies smoother & error messages more helpful (hopefully), including raising ImportWarnings at import instead of print statements. * Try to improve documentation for installation & setup. * Change new version update prompt link from linking to code archive to linking to the relevant doc page. * Improve image quality and status printing in renderunfoldedwall() * Added function GeometryMatrix.unformatimage() to do the inverse of formatimage(). This is convenient to have when using the new masking functions.

Fixes: * Fix issue where setting the 3D CAD view to match a calibration result set the camera roll inaccurately. * Fix a bug which caused invisible wall coverage shading on some platforms (#86). * Fix an exception raised in the CAD definition editor when deteling model variants in a new CAD model definition (#87). * Fix exception raised when opening calibration info box with PyQt6 (#88) * Fix a bug where the filename of a calibration is not updated in the calibration info after "Save As" * Fix a bug in the virtual calibration editor where changing intrinsics type did not enable the correct set of options. * Fix a bug where the virtual calibration editor would prompt to save changes even with no CAD model loaded. * Fixed a bug where the "new version available" prompt could be shown incorrectly. * Fixed a bug in 3D viewer where loading a calibration while "CAD model shading" view type was selected raised an exception. * Fixed an issue which sometimes caused exceptions from MatPlotLib if plotting a tomography grid without data. * Fitting options no longer reset for no reason when changing image masking in fitting calibration tool. * Fix an exception raised when pressing Alt+Shift keys together over VTK views. * Replace exception raised in image analyser if the image window metadata does not match calibration with a more helpful error message. * Fixed an issue where the CAD model definition editor would not recognise a path was in the Calcam config even when it was.

- Python
Published by ssilburn almost 4 years ago

calcam - Calcam 2.8.3

Fixes (with respect to 2.8.0):

  • Fixed a bug when using the image movement tool to adjust points within the fitting calibration tool, when loading a new image. Points which moved outside the image area were not being updated, when in fact they should be removed.
  • Fixed a bug in the image analysis tool which caused exceptions to be raised when toggling image save options in the "Position Analysis" tab.
  • Fixed a bug in the 3D viewer tool which raised exceptions when enabling/disabling CAD model features with 1 or more calibrations loaded but un-checked.

- Python
Published by ssilburn about 4 years ago

calcam - Calcam 2.8

New & Enhancements: * Added ability to render un-folded image of tokamak interior on to a rectangular image (render.renderunfoldedwall() and available through 3D Viewer GUI) * Added ability for ray-casting to calculate the CAD model surface normal vectors where sight-lines intersect the CAD model, these are now stored in RayData objects. * Added option to show camera fields of view as shading of the CAD model in the 3D Viewer GUI * When loading calibrations with multiple sub-views in to the 3D Viewer GUI, the appearance of the field of view for each sub-view can now be changed independently. * Display of 3D coordinate data loaded in to the 3D viewer GUI can now be much more customised (showing as lines / points, line width & marker size adjustment, legend support) * Layout of the movement correction GUI has been re-organised. * Image analyser GUI can now show an image mapped on to the CAD model surface in its 3D view. * Image analyser GUI can now apply colour-maps to loaded gresycale images. * Image analyser GUI now supports applying movement correction to a loaded image for more accurate results. * Layout of displayed position information in the image analyser GUI has been improved * Image analyser GUI now supports saving images. * When loading a new image in the fitting calibration tool, there is now a prompt to use the movement correction tool to quickly adjust all calibration points at once. * In the fitting calibration tool, image enhancement options in the main window are now also applied in the sub-view definition editing dialog. * CAD overlays in the fitting calibration tool are now always rendered at 1 megapixel or greater resolution, even for low resolution images being calibrated. (#74) * Added additional options to customise display of the CAD overlay image in the fitting calibration tool (can be wireframe or solid CAD; adjustable opacity). * Added "undo" function to fitting calibration tool which can undo up to the last 20 changes to the calibration point coordinates. (#75) * When saving the current view in the 3D viewier tool, any legend displayed in the window is now included in the output image.

Compatibility Updates: * Now compatible with PyQt6 * Changed dependency in setup.py from opencv-python to opencv-python-headless to reduce likelihood of problems with OpenCV vs PyQt version conflicts. (#72) * Restricted versions of VTK installed by setup.py to avoid issues with newer versions of VTK (see #78)

Fixes: * On Windows, stopped separate VTK error output window opening to show VTK warnings. * Fixed bug in Image analyser which could cause exceptions when loading images in display orientation. * Fixed bug where image enhancement was unexpectedly turned off (but the checkbox stayed checked) when editing sub-view definitions in the fitting calibration tool * Fixed issue where the colour used for the CAD overlay did not correctly follow the colour picked by the user.

- Python
Published by ssilburn over 4 years ago

calcam - Calcam 2.7

Compatibility Updates: * Now compatible with VTK versions newer than 8.1 (tested up to 9.0.1) * Should now be ready to work with Python 3.10 (removed dependency on deprecated standard library module "imp") * Due to the above changes, from this version on, Calcam will not work with versions of Python older than 3.5

New & Enhancements: * Improved wording of buttons on GUI exception dialog box * Improved rendering quality when using anti-aliasing * Improved display of exceptions in user plugin code * Uses an improved method for opening files outside Calcam wherever this is used * Add photoshop files for logo graphics to repo.

Fixes: * Fix bug in Calibration.setdetectorwindow() which raised exceptions for calibrations with multiple sub-views * Fix a bug in Calibration.getfov() which could raise exceptions when calling with fullchip=True, sometimes caused errors in fitting tool * Fix a bug in the MovementCorrection class which caused inaccurate results when calculating coordinate transformations between moved images * Fix exception raised when deleting the default view in CAD model editor * Fix various other bugs in CAD model editor, including one which could break some old CAD model definition files! * Removed non-functional close button on GUI exception dialog box * Fix various bugs which related to image metadata and detector windowing in analyser tool * Fix a bug which caused minor inaccuracy in results of rendercam_view()

- Python
Published by ssilburn about 5 years ago

calcam - Calcam v2.6

New & Enhancements: * Allow setting of detector window using Calibration.setdetectorwindow() for multi sub-view calibrations if the requested window is not entirely overlapping with the original. * Enable direct opening of .ccc files by passing the filename to the Calcam GUI executable. * Change references to "perspective" lens model to "rectilinear"

Fixes: * Roll back changes to rendercamview() made in v2.5.0 because they break rendering for images with multiple sub-views. * Fixed bug in version checking logic so the upgrade message is not shown when using the master branch version. * Fix bug in coordtransformer() in image size checking logic which would cause erroneous errors about expected image size (possibly related to #56). * Properly format docstrings in coordtransformer.py * Enable rendering with oversampling and original coords (previously raised an exception saying not supported) * Fix bug in CoordTransformer.originaltodisplayshape() and displaytooriginalshape() where the pixel aspect ratio was ignored. * Fix a bug which raised an exception and prevented loading saved geometry matrices with newer versions of NumPy. * Replace exception raised when saving an empty alignment calibration with a friendlier dialog box. * Fix pop-up of VTK error window when closing Calcam GUI on Windows. * Fix Calibration.subviewmask not being restored properly when resetting detector windowing using Calibration.setdetectorwindow(None) (Issue #60) * Fix image cropping not working properly in Calibration.setdetector_window() if the requested window is bigger than the original calibration. * Fix un-paired 3D cursors being added when importing point pairs from a calibration with a bigger readout window. * Fix exception raised when loading a new image in to a calibration with multuple sub-views (by keeping subview mask when loading new image)

- Python
Published by ssilburn over 5 years ago

calcam - Calcam v2.5

New & Enhancements: * Improved brightness scaling of images with >8 bits per pixel to give better image display for high bit-depth images. * Added new keyword arguments "exclusionradius" and "intersectingonly" to raycastsightlines() (#49) (see documentation for details) * Add options for specifying original or display coordinates and ROI offset when loading image files. * Improve setup script messages for more user-friendliness * Improve introductory documentation, mainly installation guide / dependencies. * Possibly slightly increased the speed of rendercam_view()

Fixes: * Fix a bug which raised exceptions when loading calibration sight-lines in to the 3D viewer * Fix exception raised by raycast_sightlines() if no CAD model features are loaded * Fix bug where split field calibrations did not always load properly in the fitting tool * Fix exceptions raised in the point fitting tool if changing split-field definition with point pairs already defined. * Fix exceptions raised in image analyser when loading an image before a calibration * Fix several bugs in the CAD model editor which raised exceptions and/or resulted in broken .ccm files. * Image analyser now correctly updates wireframe overlays when selecting or deselecting CAD features or loading images with different detector windows * Fix issue where cursor position information was not updated when creating a new point in the fitting calibration tool. * Remove now unnecessary (I think) setting of matplotlib backend which could cause crashes on import if using matplotlib > 3.2. * Change setup.py to avoid installing VTK 8.2 or newer (workaround for issue #58)

- Python
Published by ssilburn almost 6 years ago

calcam - Calcam v2.4

New & Enhancements: * Support for using calibrations and raydata for images with different detector readout window settings for CMOS type cameras: added Calibration.setdetectorwindow() and RayData.setdetectorwindow() methods * Support for detector sub-windowing in image analyser * Adjustment for different detector windowing when loading point pairs from existing calibrations in fitting tool * Improved visual quality of image enhancement for low resolution images * Image Analysis GUI now shows images in display coordinates immediately even if a calibration is not loaded.

Fixes: * Fixed a bug in fitting calibration GUI where an exception could be raised when points were cleared. * Fixed a bug in 3D viewer GUI which would raise an exception after editing the name of a 3D line not currently selected. * Fix image transforms in CoordTransformer to work with arrays with non integer dtypes, provided the camera pixels are square. * Fixed a bug when loading calibrations with no detector window offset stored (i.e. from older Calcam versions) which caused exceptions in setdetectorwindow().

- Python
Published by ssilburn over 6 years ago

calcam - Calcam v2.3

New & Enhancements: * Added calcam.movement module for camera movement correction * New GUI tool for manual camera movement correction * Add prompt to automatically detect image movement when loading a new image in the fitting calibration tool * Added image_enhancement module for movement detection pre-processing and Improved image enhancement in GUI tools * Added support for detector sub-windowing via "offset" parameter

Fixes since 2.2.3: * Fixed bug where clicking "Browse" when using an image source which had a filename as not the final input raised an exception. * Fixed bug where Loading chessboard images for intrinsics calibration in the alignment calibration tool reset the image orientation after clicking "apply". * Fixed exception when loading a multi sub-view image and then running a fit in the fitting calibration tool. * Fixed bug when loading R,Z,phi data from a file to plot in the 3D viewer which caused the data to be displayed incorrectly * Fixed issue where config.get_cadmodels() raised an exception if one (or more) CAD model file(s) is not readable. * Fixed a bug in the CAD model editor where browsing for a mesh file to add, then clicking cancel on the browse window, raised an exception. * Fixed a bug where an image could be loaded in the wrong orientation when loading a new image in to the fitting calibration tool.

- Python
Published by ssilburn almost 7 years ago

calcam - Calcam v2.2

New & Enhancements: * Replaced undocumented geometry matrix functionality in calcam.geometry_matrix with new calcam.gm module and added corresponding documentation. * Re-written setup script with better dependency handling (checks presence and tries to use PIP to get them) and better messages. Updated docs accordingly. * Added provenance tracking capabilities to RayData class.

Fixes: * Fixed bug where loading chessboard images in the fitting calibration tool would cause an exception. * Fixed bug where calcam.gui and matplotlib could try to use different PyQt versions leading to exceptions. * Fixed bugs in VirtualCalib.__init__ and AlignmentCalib.__init__ which caused segfaults when launching virtual and alignment calibration GUIs on some platforms. * Fixed broken Fitter.setfitflagsstrings() method. * Fixed loading of calibrations with intrinsics constraints in fitting calib tool (previously intrinsics constraints disappeared) * Fixed incorrect number of point pairs reported when using another calibration for intrinsics constraints. * Various typo fixes and minor tweaks in docs * Fixed a bug in CoordTransformer which resulted in strange image point types in transformed pointpairs objects, leading to exceptions

- Python
Published by ssilburn over 7 years ago

calcam - Calcam v2.1.1

Bug fix release for a single important bug.

Fixed:

  • Fix exception raised when performing a calibration fit in any new point fitting calibration, in the point fitting calibration GUI.

- Python
Published by ssilburn over 7 years ago

calcam - Calcam v2.1

New & Enhancements: * Add Calibration.getundistortcoeffs() method * Add ability to customise the colour of the wireframe overlay including transparency in fitting tool * Add fallback method for histogram equilisation if OpenCV hist eq unavailable, and adjust OpenCV Hist Eq parameters * In fitting tool, the current points, fit and display are preserved when loading another image of compatible dimensions * Add ability to load another calibration for overlay comparison in fitting tool * Add ability to specify camera extrinsics by roll instead of upvec in Calibration.setextrinsics() and also add check that upvec and viewdir are orthogonal. Add Calibration.setextrinsics() to public documentation. * Add ability to manually specify source directory in Calcam 1.x file converter * Various GUI appearance enhancements for non-Windows OSs. * Added friendlier error message if permission denied trying to save a file.

Fixes: * Fix bug in Calcam 1.x file converter which caused fit results not to be converted properly. * Fixed incomplete reset of GUI state when resetting the fit * Fix mesh files not being loadable in the CAD model editor under python 2.x * Fix incorrect classification of "user code" in exception handling * Add QVTKRenderWindowInteractor.py to Calcam distribution to work around compatibility issue with VTK + PyQt5 as distributed with Enthought Canopy. * Fix exceptions when opening calibrations not containing images.

- Python
Published by ssilburn over 7 years ago

calcam - Calcam v2.0.1

Bug fix release; fixes bugs mainly related to CAD models and the CAD model editor. See CHANGELOG.txt for more details.

- Python
Published by ssilburn over 7 years ago

calcam - Calcam 2

New major version.

Highlights: * New file formats and file storage approach forimproved organisation, traceability and easier management of Calcam data * GUI enhancements * Enhanced 3D visualisation and figure making capabilities * API re-organisation to make things cleaner and more pythonic * Massive internal re-factoring to make the codebase more maintanable * Improved documentation

For details on upgrtading from v1.x, pleas see the documentation here

- Python
Published by ssilburn over 7 years ago

calcam - Calcam v1.9.4

Bug fix release: * Fixed bug causing unhandled exceptions when opening GUI with no CAD models set up (e.g. on first run).

This should be the final release of Calcam 1; the next release will be a major version increment to Calcam 2.

- Python
Published by ssilburn over 7 years ago

calcam - Calcam v1.9.3

Bug fix release: * Fixed bug in loading legacy CSV format fit files under Python 3.6 * Fixed string formatting in exception handling under Python 3.6 * Fixed bug when checking if "Do Fit" button should be enabled which caused exceptions when loading some previously used images. * Fixed image points disappearing when loading a different image of the same shape when they should be persistent.

- Python
Published by ssilburn about 8 years ago

calcam - Calcam v1.9.2

Fixes bugs in v1.9.1:

  • Only enable "Do Fit" button in calibration tool when there are enough points that OpenCV won't raise an exception.
  • Fix inaccurate rendering in rendercamview() for images with the centre of perspective not at the image centre (as far as I know this bug has existed since the very earliest versions of Calcam, but only now been noticed).

- Python
Published by ssilburn over 8 years ago

calcam - Calcam v1.9.1

First actual release tag. Much improved documentation compared to before; many compatibility improvements and bug fixes and some small enhancements - see CHANGELOG.txt.

- Python
Published by ssilburn over 8 years ago