I’m pleased to announce the new ViSP-3.0.0 release.
This release is compatible with 2.10.0. This means that a project build with ViSP 2.10 could be build against ViSP 3.0.0 without changes, but there are some notable differences:
- Inspired from OpenCV we design a new modular software architecture where ViSP capabilities are grouped in several modules (core, io, gui, vision…). As a result, the user will find several shared or static libraries, one for each module (libvisp_core, libvisp_io, libvisp_gui, libvisp_vision…).
- In 2.10.0 all headers were located in visp subfolder (visp/vpMatrix.h). In 3.0.0 all the headers corresponding to a given module are located in visp3 folder (visp3/core/vpMatrix.h). For compatibility reasons, these headers are also available in visp folder (visp/vpMatrix.h) as for the previous release.
- Source code migrates from InriaForge http://gforge.inria.fr/projects/visp/ to GitHub https://github.com/lagadic/visp.
- We also initiate visp_contrib a GitHub repository intended for development of “extra” modules that are contribution from the community, or that do not have stable API, that are not well-tested or that cannot be added to ViSP due to licensing. The scheme adopted in visp_contrib could be replicated by users who want to develop additional modules based on ViSP. To use visp_contrib, clone the repository and use
cmake … -D VISP_CONTRIB_MODULES_PATH=/modulesto build ViSP and visp_contrib together.
More details concerning the changes introduced in 3.0.0, can be found at http://gforge.inria.fr/frs/?view=shownotes&group_id=397&release_id=9561. This is a short executive summary on what’s new in 3.0 vs 2.10:
- Compatibilty with Windows 10 and Visual C++ 14 2015 and with the last OpenCV 3.1.0 release
- 3D markerless model-based tracker improvements including the support of cylinders by the hybrid tracker
- Object detection and localization algorithm implemented in vpKeyPoint class improvement
- Introduction of vpArray2D template class that is inherited by all matrices and vectors in order to restrict the operations that could be achieved on them
- New tutorials and update existing ones
- Bug fixes and a lot of things that makes things easier