mrpt

The Mobile Robot Programming Toolkit (MRPT)

BSD-3-CLAUSE License

Stars
1.9K
Committers
92

Bot releases are visible (Hide)

mrpt - Release of v2.1.6

Published by jlblancoc almost 4 years ago

Version 2.1.6: Released Dec 14th, 2020

  • Changes in libraries:
    • \ref mrpt_core_grp
      • Disable the use of BFD for symbols in stack traces by default in Debian builds. It is still used if found in the system and in Ubuntu PPAs.
  • BUG FIXES:
mrpt - Release of v2.1.5

Published by jlblancoc almost 4 years ago

Version 2.1.5: Released Dec 6th, 2020

  • Changes in libraries:
    • \ref mrpt_containers_grp
      • Both mrpt::containers::CDynamicGrid and mrpt::containers::CDynamicGrid3D are now compatible with range-based for loops, and also have a data() method.
    • \ref mrpt_core_grp
      • Added mrpt::LockHelper::unlock()
      • Added mrpt::Clock::nowDouble()
      • New method mrpt::WorkerThreadsPool::name()
      • Function mrpt::system::callStackBackTrace() moved to mrpt::callStackBackTrace()
      • mrpt::callStackBackTrace() now uses BFD to find out line numbers if debug info (at least -g1) is available.
      • Stacked exceptions changes:
        • Line numbers will be now shown if built with debug info (>= -g1).
        • Exceptions in STL or any other 3rd-party library will be also reported with exact call point line number, as long as MRPT_START/MRPT_END is used in the user function.
        • No further need to call mrpt::exception_to_str(), just calling what() will return a detailed stack backtrace.
        • New function mrpt::winerror2str()
    • \ref mrpt_gui_grp
      • New method mrpt::gui::CGlCanvasBase::CamaraParams::FromCamera()
    • \ref mrpt_math_grp
      • Added missing method for consistent API across pose classes: mrpt::math::TPose3D::operator+()
    • \ref mrpt_system_grp
      • mrpt::system::COutputLogger::writeLogToFile() will now save all messages despite the runtime log verbosity level.
  • BUG FIXES:
    • Fix error rendering an opengl scene with mrpt::opengl::CCamera objects in it.
    • rawlog-edit silently ignored when more than one operation was requested.
    • Fix FTBFS against libjsoncpp 1.9.4 (Closes #1118)
    • Fix AppStream errors and warnings in Debian Tracker.
mrpt - Release of v2.1.4

Published by jlblancoc almost 4 years ago

Version 2.1.4: Released Nov 8th, 2020

  • Changes in libraries:
    • \ref mrpt_core_grp
      • mrpt::format() is no longer a template but a function, to use GCC automated printf-format warnings.
    • \ref mrpt_containers_grp
      • mrpt::containers::yaml avoids throwing internal exceptions as part of regular valid conversions, and better support and report of out-of-range integers.
    • \ref mrpt_math_grp
      • mrpt::math::linspace() added overload returning by value.
    • \ref mrpt_random_grp
      • mrpt::random::CRandomGenerator::permuteVector() added overload returning by value.
    • \ref mrpt_tfest_grp
      • mrpt::tfest::TMatchingPairListTempl::saveAsMATLABScript() now draws 3D correspondences too.
      • RANSAC method mrpt::tfest::se3_l2_ransac() now uses more correct SO(3) metric for angular distance threshold instead of independent yaw/pitch/roll angles.
    • BUG FIXES:
      • Fix wrong Debian dependencies of libmrpt-dev
mrpt - Release of v2.1.3

Published by jlblancoc almost 4 years ago

Version 2.1.3: Released Oct 21st, 2020

  • Changes in libraries:
    • \ref mrpt_config_grp
      • Refactor parsing functionality as new exposed method mrpt::config::config_parser()
    • \ref mrpt_gui_grp
      • mrpt::gui::CDisplayWindowGUI subwindows control UI automatically keep tracks of focused subwindows.
  • Build system:
    • Support for ccache, enabled by default if found.
    • Fix build with system libsimpleini-dev.
  • BUG FIXES:
    • Fix mrpt::opengl::CFBORender requiring images with origin at the bottom-left corner.
mrpt - Release of v2.1.2

Published by jlblancoc about 4 years ago

Version 2.1.2: Released Oct 20th, 2020

  • BUG FIXES:
    • Fix wrong coloring of graph edges in mrpt::opengl::graph_visualize() (Closes #1111).
    • Fix Debian Lintian error: exporting copyrighted sources as part of simpleini submodule.
mrpt - Release of v2.1.1

Published by jlblancoc about 4 years ago

Version 2.1.1: Released Oct 19th, 2020

  • Changes in applications:
    • SceneViewer3D:
      • Command-line argument is now interpreted as ASSIMP model to open if it is not a 3Dscene.
      • New menu: "File -> Import -> Show image" useful to test image-mode viewport rendering.
  • Changes in libraries:
    • \ref mrpt_core_grp
      • mrpt::Clock now has a simulated time mode. See mrpt::Clock::setSimulatedTime()
    • \ref mrpt_gui_grp
      • Useless nanogui_win() converted into mrpt::gui::CDisplayWindowGUI::nanogui_screen()
      • nanogui: New methods: nanogui::Screen::mouseState(), nanogui::Screen::mouseModifiers()
      • Managed subwindows with minimize/restore capability. See mrpt::gui::CDisplayWindowGUI::createManagedSubWindow()
    • \ref mrpt_img_grp
      • New method mrpt::img::CImage::channelCount()
    • \ref mrpt_opengl_grp
      • New load flags in mrpt::opengl::CAssimpModel::loadScene()
  • BUG FIXES:
    • navlog-viewer: Crash when clicking "play" (Closes #1103).
    • RawLogViewer: Fix wrong indices in tree view. Fix freezed progress bar loading a second rawlog.
    • RawLogViewer: Fix wrong rendering if font is missing in the system (Ubuntu 20.04)
    • rawlog-edit: Fix --cut operation leaving empty sensory frames/action collections.
    • mrpt::opengl::CCylinder::setHasBases() was ignored since last OpenGL3 refactor.
    • Fix building against OpenCV 4.4
    • Correct texture loading in mrpt::opengl::CAssimpModel.
    • Fix wrong aspect ratio of image-mode opengl viewports (Closes #1101).
mrpt - Release of v2.1.0

Published by jlblancoc about 4 years ago

Version 2.1.0: Released Aug 31st, 2020

  • Incompatible API changes:
    • mrpt::system::TParameters has been removed, superseded by mrpt::containers::yaml.
    • Remove mrpt::hwdrivers::CRovio
    • Removed old mrpt 1.5.x backwards-compatible <mrpt/utils/...> headers (Closes #1083).
  • Changes in libraries:
    • \ref mrpt_containers_grp
      • New class mrpt::containers::yaml for nested, YAML-like data structures.
    • \ref mrpt_core_grp
      • New mrpt::for_<> constexpr for loop helper function.
      • New function mrpt::demangle()
      • New class mrpt::WorkerThreadsPool
      • New macro ASSERT_NEAR_(). Defined new macros with correct English names ASSERT_LT_(), etc. deprecating the former ones.
      • mrpt::get_env() gets specialization for bool.
    • \ref mrpt_math_grp
      • New static methods with semantic-rich names: mrpt::math::TPlane::From3Points(), mrpt::math::TPlane::FromPointAndLine(), ...
      • New asString() methods in mrpt::math::TPlane, mrpt::math::TLine2D, mrpt::math::TLine3D
    • \ref mrpt_tfest_grp
      • New templatized mrpt::tfest::TMatchingPairTempl<> and mrpt::tfest::TMatchingPairListTempl<>
      • New mrpt::tfest::se3_l2() for double precision.
  • Build:
    • yamlcpp is no longer a build dependency.
    • Less RAM and time required to build debug builds or to load in the debugger.
  • BUG FIXES:
    • Avoid crash in camera-calib app when clicking "Close" while capturing a live video.
    • Fix potential Eigen crash in matrixes inverse() and inverse_LLt() if building mrpt and user code with different optimization flags.
    • Wrong parsing of env variables in mrpt::get_env() when called more than once.
    • mrpt::system::CTimeLogger: Fix wrong formatting (parent entry prefix collapse) in summary stats table.
    • mrpt::opengl::CEllipsoid2D was not RTTI registered.
    • Fix wrong copy of internal parameters while copying mrpt::maps::CMultiMetricMap objects.
mrpt - Release of v2.0.4

Published by jlblancoc over 4 years ago

Version 2.0.4: Released Jun 20, 2020

  • Changes in applications:
    • rawlog-edit, rawlog-grabber: Now allows loading external "plugin" modules (.so) with user-defined types.
    • RawLogViewer, navlog-viewer, ptg-configurator allows more than one "plugin" modules to be loaded.
  • Changes in libraries:
    • \ref mrpt_math_grp
      • New semantically-rich named static methods:
        • mrpt::math::TLine3D::FromPointAndDirector()
        • mrpt::math::TLine3D::FromTwoPoints()
        • mrpt::math::TLine2D::FromCoefficientsABC()
        • mrpt::math::TLine2D::FromTwoPoints()
    • \ref mrpt_obs_grp
      • CObservation3DRangeScan::points3D_convertToExternalStorage() stores point clouds with points as rows (vs as columns as it did before).
    • \ref mrpt_opengl_grp
      • Emit warnings to std::cerr whenever opengl memory is leaked due to OpenGL buffers being created and destroyed in different threads.
      • Overlaid text messages are now also (de)serialized in mrpt::opengl::COpenGLViewport, and hence in 3D scenes in general.
      • All opengl shader base classes now expose their internal buffers as const ref. See children of mrpt::opengl::CRenderizable
    • \ref mrpt_system_grp
      • New class: mrpt::system::CControlledRateTimer (+ associated example)
      • New functions: mrpt::system::loadPluginModule(), mrpt::system::loadPluginModules()
      • mrpt::system::CRateTimer: enforce use of high-resolution monothonic clock.
      • mrpt::system::CTicTac: enforce use of nanosecond monothonic clock.
      • Misplaced functions moved to their proper namespace: mrpt::io::vectorToTextFile()
      • New functions: mrpt::system::thread_name() to get and set thread names for debuggers.
      • mrpt::system::setConsoleColor(): Do not change color if stdout/stderr are not real terminals.
    • \ref mrpt_nav_grp
      • mrpt::nav::PlannerSimple2D does not throw an exception if goal/source is out of map bounds.
  • BUG FIXES:
    • mrpt::obs::CObservation3DRangeScan would try to (incorrectly) "autofix" camera resolution if loading an externally-stored observation.
    • mrpt::maps::CPointsMap::determineMatching2D(): avoid potential multi-thread problems with a vector::swap()
    • Fix build against opencv <3.4.4
    • Fix potential pointer to local returned in CParticleFilterData
    • Fix: mrpt::maps::CPointsMapXYZI::setFromPCLPointCloudXYZI() was using a non-existing method.
    • Fix: mrpt::nav::PlannerSimple2D did not honored maximum path length correctly.
    • Fix race condition in CGenericCamera_AVI unit test.
mrpt - Release of v2.0.3

Published by jlblancoc over 4 years ago

Version 2.0.3: Released May 13, 2020

  • Changes in applications:
    • navlog-viewer: Can now navigate with keyboard arrows too.
    • RawLogViewer: better 3D pointcloud coloring in observation view and in "scan animation" view.
  • Changes in libraries:
    • \ref mrpt_maps_grp
      • Point cloud classes mrpt::maps::CPointsMap: New methods:
        • load2D_from_text_stream()
        • load3D_from_text_stream()
        • save2D_to_text_stream()
        • save3D_to_text_stream()
    • \ref mrpt_poses_grp
      • More accurate analytical Jacobians for CPose3DQuatPDFGaussian::inverse() (Closes #1053)
    • BUG FIXES:
      • Incorrect number of points loaded when trying to load point clouds from incorrectly-formatted text files.
      • Fix build error in riscv64 (gcc doesn't know mtune=native for that arch)
      • Fix spurious unit test failures in mrpt::apps::RawlogGrabberApp due to system load.
mrpt - Release of v2.0.2

Published by jlblancoc over 4 years ago

(Changes since 2.0.1)

Version 2.0.2: Released May 4th, 2020

  • Changes in applications:
    • navlog-viewer: Ported to the new nanogui UI system (fixes random OpenGL context errors in former version).
  • Changes in libraries:
    • mrpt_containers_grp
      • mrpt::containers::vector_with_small_size_optimization: Get rid of potential uninitialized usage GCC warnings.
    • mrtp_hwdrivers_grp
      • Remove support for obsolete XSens MTi 3rd generation devices. Removed class mrpt::hwdrivers::CIMUXSens. 4th+ generation still supported.
    • mrpt_gui_grp
      • Fix mouse-motion rotation glitches if clicking inside a nanogui control.
      • Fix cmake errors building user programs in Windows (missing glfw dependency).
    • mrpt_math_grp
      • mrpt::math::RANSAC_Template made more generic to support custom dataset and model types.
    • mrpt_opengl_grp
      • Fix displaying of uninitialized textured in mrpt::opengl::CTexturedPlane. It now uses the default solid color of the object.
    • mrpt_ros1bridge_grp
      • Narrower build and run time dependencies: rosbag -> rosbag_storage
mrpt - Release of v2.0.1

Published by jlblancoc over 4 years ago

Minor fixes since 2.0.0:

  • Changes in applications:
    • RawLogViewer: new "-l xxx.so" flag to load datasets with types defined in external projects.
  • Changes in libraries:
    • mrpt_obs_grp
      • mrpt::obs::CObservationRobotPose: Fixed missing serialization of sensorPose
mrpt - Release of v2.0.0

Published by jlblancoc over 4 years ago

Major stable release, deprecating v1.5.x branch.
See also: browsable doxygen-generated changelog

Windows precompiled binaries: https://bintray.com/mrpt/mrpt-win-binaries/MRPT-nightly-builds/win64-develop

(Changes since 1.5.8)

Version 2.0.0: Released March 29th, 2020

  • Most important changes:

    • MRPT now requires C++17 to build and use. See this page for a guide to port existing code to MRPT 2.0: \ref porting_mrpt2
    • Support for old namespaces mrpt-scanmatching, mrpt-reactivenav is over.
    • Backwards compatible headers for "maps" and "observations" in mrpt::slam are removed. They moved to their own namespaces in MRPT v1.3.0 (Jan 2015).
    • All pointer typedefs are now in their respective classes: FooPtr -> Foo::Ptr
    • Add support for serialization with std::variant
    • PbMap has been factored out into its own repository
    • XML-based database C++ classes have been removed from MRPT.
  • Changes in applications:

    • RawLogViewer:
      • The ICP module now supports Velodyne 3D scans.
    • rawlog-edit:
      • New operation: --de-externalize
    • pf-localization:
      • Odometry is now used also for observation-only rawlogs.
  • Changes in libraries:

    • All otherlibs subdirectories have been renamed to 3rdparty since it is a widespread name used in most projects.
    • \ref mrpt_base_grp => Refactored into several smaller libraries, one per namespace.
      • Removed class std::vectorstd::string. Replace by STL containers of std::string and functions mrpt::system::stringListAsString() in \ref string_manage.
    • \ref mrpt_core_grp [NEW IN MRPT 2.0.0]
      • Memory alignment of aligned_allocator_cpp11<> is set to 16,32 or 64 depending on whether AVX optimizations are enabled, to be compatible with Eigen.
      • mrpt::cpu::supports(): a new cross-OS CPU feature detection function.
      • mrpt::Clock allows users to select between Realtime or Monotonic sources.
      • Removed custom macro MRPT_UNUSED_PARAM (replaced by c++17 attribute).
      • Add syntactic suggar mrpt::lockHelper()
    • \ref mrpt_math_grp [NEW IN MRPT 2.0.0]
      • Removed functions (replaced by C++11/14 standard library):
        • mrpt::math::erf, mrpt::math::erfc, std::isfinite, mrpt::math::std::isnan
        • mrpt::math::make_vector<> => std::vector<>{...} braced initializator
      • Removed the include file: <mrpt/math/jacobians.h>. Replace by <mrpt/math/num_jacobian.h> or individual methods in \ref mrpt_poses_grp classes.
    • \ref mrpt_config_grp [NEW IN MRPT 2.0.0]
      • mrpt::config::CConfigFileBase::write() now supports enum types.
    • \ref mrpt_gui_grp
      • New class mrpt::gui::CDisplayWindowGUI exposing powerful GUI possibilities via the nanogui project.
    • \ref mrpt_img_grp [NEW IN MRPT 2.0.0]
      • mrpt::img::TCamera distortion parameters now also supports the extra K4,K5,K6 distortion parameters.
    • \ref mrpt_serialization_grp [NEW IN MRPT 2.0.0]
      • New method mrpt::serialization::CArchive::ReadPOD() and macro MRPT_READ_POD() for reading unaligned POD variables.-
      • Add support for $env{} syntax to evaluate environment variables.
    • \ref mrpt_slam_grp
      • rbpf-slam: Add support for simplemap continuation.
      • CICP: parameter onlyClosestCorrespondences deleted (always true now).
      • mrpt::slam::CICP API: Simplified and modernized to use only one output parameter, using std::optional.
    • \ref mrpt_system_grp
      • functions to get timestamp as local time were removed, since they don't make sense. All timestamps in MRPT are UTC, and they can be formated as dates in either UTC or local time frames.
      • Added: mrpt::system::WorkerThreadsPool
    • \ref mrpt_rtti_grp [NEW IN MRPT 2.0.0]
      • All classes are now registered (and de/serialized) with their full name including namespaces. A backwards-compatible flag has been added to mrpt::rtti::findRegisteredClass().
      • CLASS_INIT() macro for automatic registration of classes has been removed, since it is not well-defined in which order global objects will be initialized.
        Therefore, manual registration (as already done in registerAllClasses.cpp files) is left as the unique registration system.
        This fixes warning messages "[mrpt::rtti::registerClass] Warning: Invoked with a nullptr".
    • \ref mrpt_nav_grp
      • Removed deprecated mrpt::nav::THolonomicMethod.
      • mrpt::nav::CAbstractNavigator: callbacks in mrpt::nav::CRobot2NavInterface are now invoked after navigationStep() to avoid problems if user code invokes the navigator API to change its state.
      • Added methods to load/save mrpt::nav::TWaypointSequence to configuration files.
      • Waypoints now have a field speed_ratio which is directly forwarded to the low-level reactive navigator.
    • \ref mrpt_comms_grp [NEW IN MRPT 2.0.0]
      • This new module has been created to hold all serial devices & networking classes, with minimal dependencies.
    • \ref mrpt_maps_grp
      • mrpt::maps::CMultiMetricMap has been greatly simplified and now it is actually defined in the mrpt-maps library.
      • New map type: mrpt::maps::CPointsMapXYZI for pointclouds with an intensity channel.
      • New observation class: mrpt::obs::CObservationPointCloud
      • Added optional "channel" attribute to CReflectivityGridMap2D and CObservationReflectivity to support different colors of light.
    • \ref mrpt_hwdrivers_grp
      • COpenNI2Generic: is safer in multithreading apps.
      • CHokuyoURG:
        • Rewrite driver to be safer and reduce mem allocs.
        • New parameter scan_interval to decimate scans.
      • VelodyneCalibration: Can now load YAML files, in addition to XML.
      • New sensor state enum value: mrpt::hwdrivers::CGenericSensor::ssUninitialized
      • NMEA GPS parser: now also recognizes all existing talker IDs (GP, GN, GA, etc.)
    • \ref mrpt_opengl_grp
      • Update Assimp lib version 4.0.1 -> 4.1.0 (when built as ExternalProject)
      • Rendering engine rewritten to work using OpenGL Core (GLSL 3.3) instead of Legacy fixed functions.
    • \ref mrpt_obs_grp
      • mrpt::obs::CObservation2DRangeScan: Deprecated access to scan data via proxy objects obs->scan[i], obs->validRange[i], obs->intensity[i] has been deleted. Please use the alternative getters/setters: obs->getScanRange(i), etc.
      • mrpt::obs::T3DPointsProjectionParams and mrpt::obs::CObservation3DRangeScan::unprojectInto now together support organized PCL point clouds.
      • New method: mrpt::obs::CObservation3DRangeScan::rangeImage_getAsImage()
      • Support for multiple-return sensors in mrpt::obs::CObservation3DRangeScan.
      • New NMEA frame class: Message_NMEA_GSA
    • \ref mrpt_poses_grp [NEW IN MRPT 2.0.0]
      • Reorganized all Lie Algebra methods into \ref mrpt_poses_lie_grp
      • Removed CPose3DRotVec, since its conceptual design is identical to Lie tangent space vectors.
    • \ref mrpt_vision_grp
      • Removed FASTER methods, and the libCVD 3rd party dependency.
  • BUG FIXES:

    • Fix reactive navigator inconsistent state if navigation API is called from within rnav callbacks.
    • Fix incorrect evaluation of "ASSERT" formulas in mrpt::nav::CMultiObjectiveMotionOptimizerBase
    • Fix aborting reading from LMS111 scanner on first error.
    • Fix == operator on CPose3D: it now uses an epsilon for comparing the rotation matrices.
    • Fix accessing unaligned POD variables deserializing CObservationGPS (via the new MRPT_READ_POD() macro).
    • Fix segfault in CMetricMap::loadFromSimpleMap() if the provided CMetricMap has empty smart pointers.
    • Fix crash in CGPSInterface when not setting an external mutex.
    • Fix potential crashes in RawLogViewer while editing list of observations.
    • Fix incorrect conversion from quaternion to CPose3D.
mrpt - Release of v2.0.0-beta

Published by jlblancoc over 4 years ago

Check out the complete changelog here.

mrpt - Release of MRPT 1.5.8

Published by jlblancoc about 5 years ago

This is a maintenance release for the MRPT 1.5.x series.

BUG FIXES:

  • made sin-cos table cache thread safe
  • FIX BUG: in x/y indices of unprojected 3D range images
  • FIX BUG: max/min filter=0 should mean ignore filter
  • reactive navigation:
    • fix wrong classification as is_slowdown motion
    • safer nav score evaluation
    • add optional detailed time logger to rnav
    • OBSTACLE_SLOW_DOWN_DISTANCE is in normalized distance
mrpt - Release of v2.0.0-alpha

Published by jlblancoc over 5 years ago

Most important changes:

  • MRPT now requires C++17 to build and use. See this page for a guide to port existing code to MRPT 2.0
  • Support for old namespaces mrpt-scanmatching, mrpt-reactivenav is over.
  • Backwards compatible headers for "maps" and "observations" in mrpt::slam are removed. They moved to their own namespaces in MRPT v1.3.0 (Jan 2015).
  • All pointer typedefs are now in their respective classes: FooPtr -> Foo::Ptr
  • Add support for serialization with std::variant

Detailed list of changes:

  • Too many to list here. See a partial list here and checkout the updated API doxygen docs.

BUG FIXES:

  • Fix reactive navigator inconsistent state if navigation API is called from within rnav callbacks.
  • Fix incorrect evaluation of "ASSERT" formulas in mrpt::nav::CMultiObjectiveMotionOptimizerBase
  • Fix aborting reading from LMS111 scanner on first error.
  • Fix == operator on CPose3D: it now uses an epsilon for comparing the rotation matrices.
  • Fix accessing unaligned POD variables deserializing CObservationGPS (via the new MRPT_READ_POD() macro).
  • Fix segfault in CMetricMap::loadFromSimpleMap() if the provided CMetricMap has empty smart pointers.
  • Fix crash in CGPSInterface when not setting an external mutex.
mrpt - Release of MRPT 1.5.7

Published by jlblancoc over 5 years ago

Release of MRPT 1.5.7

(Update 19-May-2019: Binary package for Windows has been updated to solve #917 ).

This is probably (hopefully) the last release of the mrpt-1.5 series.

  • Detailed list of changes:
    • mrpt_base_grp
      • The following features have been finally ported to C++11. User code now requires, at least, C++11 enabled:
        • stlplus-based smart pointers replaced by std::shared_ptr. Backwards compatibility API is maintained.
        • mrpt::system::TThreadHandle now is a wrapper around std::thread.
        • Atomic counters now based on std::atomic. Custom implementation has been removed.
        • stlplus source code has been removed.
      • mrpt::utils::COutputLogger: change log str format from "[name|type|time]" to "[time|type|name]".
    • mrpt_graphslam_grp
      • levenberg-Marquardt graphslam modified to use more stable SE(2) Jacobians.
      • CNetworkOfPoses: read/write format made compatible with G2O EDGE_SE2 types.
    • mrpt_nav_grp
      • Add virtual method CAbstractPTGBasedReactive::getHoloMethod()
      • New method CAbstractPTGBasedReactive::enableRethrowNavExceptions() to rethrow exceptions during navigation.
      • Waypoints now have a field speed_ratio which is directly forwarded to the low-level reactive navigator.
    • BUG FIXES:
      • Fix missing "-ldl" linker flag.
      • Fix building against wxWidgets 3.1.1 in Windows (zlib link error).
      • Fix potential segfault in 3D reactive navigator.
mrpt - Release of MRPT 1.5.6

Published by jlblancoc over 6 years ago

Version 1.5.6: Released 24/APR/2018

  • Applications:
    • pf-localization:
      • Odometry is now used also for observation-only rawlogs.
  • mrpt_hwdrivers_grp
    • mrpt::hwdrivers::COpenNI2Generic: added mutexes for safer multi-threading
      operation.
    • mrpt::hwdrivers::CHokuyoURG: Added a new parameter to skip scans. Driver
      clean up to be safer and perform less memory allocs.
  • mrpt_maps_grp
    • COccupancyGridMap2D: New LIDAR insertion parameters: maxFreenessUpdateCertainty, maxFreenessInvalidRanges.
  • mrpt_reactivenav_grp
    • CAbstractPTGBasedReactive: Added new score holo_stage_eval.
  • BUG FIXES:
    • circular_buffer: exception made state preserving
mrpt - Release of MRPT 1.5.5

Published by jlblancoc almost 7 years ago

Version 1.5.5: Released 2/DEC/2017

  • Detailed list of changes:
    • mrpt_base_grp
      • Added methods mrpt::utils::CFileStream::clearError() and mrpt::utils::CFileInputStream::clearError()
    • mrpt_nav_grp
      • mrpt::nav::CHolonomicFullEval now uses an internal sin/cos LUT cache for improved performance.
    • Build system:
      • octomap is no longer exposed in public headers, avoiding the dependency propagation.
    • BUG FIXES:
      • Fix likelihood computation in mrpt::maps::CReflectivityGridMap2D (which led to crash)
      • Fixed regression in particle resampling affecting RBPF-SLAM methods. Introduced in Dec. 2016 with this commit.
      • Wrong argument type: CStream::Seek() must allow signed offsets.
mrpt - Release of MRPT 1.5.4

Published by jlblancoc almost 7 years ago

Version 1.5.4: Released 31/OCT/2017

Detailed list of changes:

  • [mrpt-base]
    • Fix potential uninitialized value in CRobot2DPoseEstimator::getLatestRobotPose()
      MRPT_getCompilationDate() returns time as well
  • [mrpt-gui]
    • mrpt::gui::mrptEventMouseMove: Added new mrpt::gui windows event type.
  • Smart pointers:
    • All mrpt::utils::CObject derived classes:
      • In MRPT <=1.5.3, there was a typedef Foo::SmartPtr => FooPtr.
      • In MRPT >=1.5.4 is has been replaced by Foo::Ptr => FooPtr for compatibility with MRPT >=2.0.
        stlplus smart pointers in MRPT 1.5.4 now have C++11 shared_ptr-compatible methods, to ease the transition towards MRPT 2.0 in user code (in particular, for MRPT ROS packages). Also, a new template mrpt::prt_cast<TARGET_PTR>::from(ptr) is provided to write user code compatible with both MRPT >=1.5.4 & >=2.0.0.
  • Build system:
    • Fix MRPTConfig.cmake for system octomap libraries.
    • Fix package-contains-vcs-control-file (.gitingore) Lintian error.
    • Fix compiling without liboctomap-dev in Ubuntu PPA.
  • BUG FIXES:
    • Fix waypoint reactive navigator edge case in which "end event" won't be issued.
    • Fix waypoint reactive navigator error while doing final aligning (missing and dupplicated nav-end events).
    • Fix aborting reading from LMS111 scanner on first error.
    • Fix corrupted pointers in CNetworkOfPoses after copy or move operations.
    • Fix invalid TP-targets generated during reactive navigation.
    • Fix memory leak in reactivenav engine.
    • Fix potential out-of-range access in CObservation3DRangeScan::convertTo2DScan()
    • Fix potential SIGBUS in armhf (patch by Steve Langasek) inside mrpt::utils::CTicTac
mrpt - Release of MRPT 1.5.3

Published by jlblancoc about 7 years ago

Version 1.5.3: Released 14/AUG/2017

  • Detailed list of changes:
    • CMake >=3.1 is now required for use of ExternalProjects.
    • Scripts scripts/prepare_{debian,release}.sh have been refactored and simplified.
    • Removed embedded source code versions of Eigen, assimp and octomap. Downloaded and built as ExternalProjects if not present in the system.
    • Releases will be signed with PGP from now on and posted as binary attachments to GitHub releases.