ICL 5.12.0 released

ICL Version 5.12.0 comes up with a lot of new features and built-in support for Microsoft's Kinect-Camera
Added by Christof Elbrechter almost 14 years ago

Version 5.11.0 was a frequently changed developmental version. The new stable version is 5.12.0.

The new version of ICL comes up with the following new features:
  • Added a Function<..>-template that will be integrated as common callback type. The function template can wrap global functions as well as member functions.
  • Extended the ICLGeom:ViewRay class (which now provides methods to compute distances to 3D-points and other ViewRays).
  • added very basic support templates sqr -> power of two and power<exponent>
  • Fundamentally improved ICL's camera calibration tool icl-cam-calib
  • simplified GUI
  • cleaned up interface
  • modularized implementation (added extra classes CalibrationObject and CalibrationGrid)
  • added manual mode that can be used to define the reference points using mouse
  • added a quite useful utility class that implements the default mouse event handler. The DefineRectanglesMouseHandler can be used to define a set of rectangles (e.g. an image ROI) as an image overlay
  • Added an implementation of the ICP (Iterative Closest Point) Algorithm
  • Added an implementation of KD-Trees (used in ICP, but also available as utility class that is integrated with ICL's DynMatrix class)
  • Updated the way camera-instances are visualized in Scenes (we now use a more or less schematic view that visualizes a part of the cameras view frustum)
  • Added a new utility class called icl::Any. Instances of this class can be created from everything, and they can be casted to anything
  • added a very useful method to the Grabber::interface that provides a mechanism to automatically adapt result images
  • Added support for ICL's Kinect Device. The color camera can be accessed by using the GenericGrabber parameters 'kinectc DEVICE_ID' the depth cameras with 'kinectd DEVICE_ID'.
  • Replaced ICL's selfmade XML-parser by a pugi-XML-based version
  • Added PseudoColorConverter class to the ICLCC package
  • Added global utility-functions openFileDialog and closeFileDialog to the ICLQuick header (of course this is only available with Qt-Support)
  • Added an interface to set a cameras near-clipping plane to values even shorter than the Cameras focal length
  • Optimized ICL's ICLProject makefile system (note: you can create an ICL-Project makefile tree using icl-create-project ProjectName)
  • added install lists for targets that have to be installed to bin and etc
  • enabled local linking for the development tree and global linking for the installed version. By this means, you'll no longer have to call 'make installlink' before you can run your local applications'
  • Added a GUI compoment called "color()" color compoments can be used to define a color at runtime internally using a pop-uped QColorDialog instance
  • Added a new and very powerful interface called Configurable. Configurable instances have a string-based interface for internal properties that allows for automatic creation of corresponding GUI-components.
  • A Configurables GUI can be embedded using the new "prop(..)"-GUI-component
Bug-fixes
  • fixed icl-pipe that could not be build without Qt before
  • fixed some build-issues with OpenCV
  • added post-install build-target to adapt the installation trees write permissions to group-writable
  • OpenCVCamGrabber now uses desired parameters
  • Many minor fixes in the makefile system
  • A lot of further minor fixes

Comments