Skip to content

Releases: MRPT/mrpt

Release of v2.11.9

11 Feb 18:07
2.11.9
5c35862
Compare
Choose a tag to compare

Version 2.11.9: Released Feb 11th, 2024

  • Changes in libraries:
    • \ref mrpt_vision_grp:
      • mrpt::vision::TStereoCalibParams::use_robust_kernel now defaults to true.
    • \ref mrpt_img_grp:
      • Fix const-correctness of arguments in mrpt::img::CImage::drawChessboardCorners()
    • \ref mrpt_obs_grp:
      • Added support for mrpt::typemeta::TEnumType to mrpt::obs::CActionRobotMovement3D::TDrawSampleMotionModel and mrpt::obs::CActionRobotMovement2D::TDrawSampleMotionModel.
  • BUG FIXES:
    • Fix missing build dep on tf2_geometry_msgs for ROS 1 only.
    • Application kinect-stereo-calib: fix exceptions when selecting images without a good chessboard detection on the left list box.

Release of v2.11.8

06 Feb 23:23
2.11.8
8af862c
Compare
Choose a tag to compare

Version 2.11.8: Released Feb 7th, 2024

  • Changes in apps:
    • RawLogViewer: Show pointcloud ring, intensity, and time min/max ranges.
    • rawlog-edit: Show dataset duration as formatted time interval.
    • rosbag2rawlog (ROS 1):
      • Added support for XYZIRT point clouds.
      • Finally, implemented automatic detection of sensor poses wrt base_link from tf messages, with an option to manually override sensor poses from YAML config.
  • Changes in libraries:
    • \ref mrpt_maps_grp:
      • Implement missing probabilistic observation models in mrpt::maps::CVoxelMap and mrpt::maps::CVoxelMapRGB
      • Add debug env variable MRPT_DEBUG_OBSPTS_LAZY_LOAD to debug lazy-load point cloud observations.
    • \ref mrpt_ros1bridge_grp:
      • Add missing mrpt::ros1bridge::fromROS() for PointCloud2 => mrpt::maps::CPointsMapXYZIRT conversions.
    • \ref mrpt_ros2bridge_grp:
      • Fix wrong macros leading to including obsolete header <cv_bridge/cv_bridge.h>.
    • \ref mrpt_system_grp:
      • New function mrpt::system::hyperlink() to generate clickable links in terminal messages.

Release of v2.11.7

25 Jan 22:25
2.11.7
bef960e
Compare
Choose a tag to compare

Version 2.11.7: Released Jan 25th, 2024

  • Changes in apps:
    • carmen2rawlog: Generate valid timestamps.
  • Changes in libraries:
    • rosbag2rawlog: Add support for sensor_msgs/CompressedImage topics.
  • BUG FIXES:
    • mrpt::hwdrivers::CImageGrabber_dc1394 did not mark the right image as present in stereo cameras.
    • kinect-stereo-calib: Fix exception un-distorting images.

Release of v2.11.6

13 Jan 23:05
2.11.6
7405a88
Compare
Choose a tag to compare

Version 2.11.6: Released Jan 13th, 2024

  • Changes in libraries:
    • \ref mrpt_obs_grp
      • mrpt::obs::CObservation::load() is now protected with a std::mutex for safe multi-threading usage.
    • \ref mrpt_nav_grp
      • mrpt::nav::CPTG_DiffDrive_alpha now has a "K" parameter for generating backwards trajectories too.
  • BUG FIXES:
    • Fix wrong filenames in rawlog-edit --externalize when sensor labels contain the / character (e.g. mimicking ROS topic names).
    • Fix crash in mrpt::ros2bridge::toROS() for XYZIRT point clouds.
    • Fix exception while rendering paths in the ptg-configurator application.
    • Fix potential race condition in mrpt::obs::CObservation3DRangeScan.

Release of v2.11.5

21 Dec 18:10
2.11.5
83cb50c
Compare
Choose a tag to compare

Version 2.11.5: Released Dec 21st, 2023

  • Changes in libraries:
    • \ref mrpt_maps_grp
      • New method mrpt::maps::CPointsMap::insertPointFrom() (and associated auxiliary methods) to easily copy points between different point clouds with different fields (timestamp, ring, RGB, etc.).
    • \ref mrpt_obs_grp
      • mrpt::maps::CSimpleMap changes:
        • Added an optional twist field.
        • Simplified API for preferred usage with structured binding tuples.
    • \ref mrpt_system_grp
      • More readable results in mrpt::system::unitsFormat() for the special case of exactly 0.
  • BUG FIXES:
    • Fix filtering of NANs input point clouds in mrpt::maps::CPointsMap::insertAnotherMap().

Release of v2.11.4

15 Dec 09:15
2.11.4
aa7b1df
Compare
Choose a tag to compare

Version 2.11.4: Released Dec 15th, 2023

  • Changes in apps:
    • RawLogViewer: visualize mrpt::obs::CObservationRotatingScan as point cloud + range image + intensity image.
    • rawlog-edit: --info command now also shows the type of each sensor label.
  • Changes in libraries:
    • \ref mrpt_maps_grp
      • Use nanoflann RKNN search in mrpt::maps::CPointsMap::nn_radius_search()
      • Added a new point cloud class mrpt::maps::CPointsMapXYZIRT, including its Python and ROS wrappers.
    • \ref mrpt_math_grp
      • mrpt::math::KDTreeCapable: Add optional argument maximumSearchDistanceSqr in many API methods to exploit the new nanoflann RKNN search method.
    • \ref mrpt_opengl_grp
      • mrpt::opengl::PLY_Importer: Add support for importing point clouds with the timestamp property per point.
    • \ref mrpt_obs_grp
      • mrpt::obs::CObservationRotatingScan:
        • Moved from the library mrpt-maps to mrpt-obs, since it no longer requires any mrpt::maps class.
        • Complete its implementation: insertion into point cloud, observation likelihood, visualization in RawLogViewer, etc.
  • BUG FIXES:
    • Fix missing Threads::Threads downstream due to missing find_dependency(Threads) in MRPT cmake config files.
    • Fix broken import of PLY files in SceneViewer3D (empty scene even if correctly imported).
    • mrpt::math::CMatrixDynamic constructor from (row,col) was not marked explicit, leading to potential problems.
    • mrpt::opengl::Viewport::setViewportPosition() did not handle negative width values as expected (i.e. pixel distances from the opposite corner).

Release of v2.11.3

22 Nov 21:19
2.11.3
3901411
Compare
Choose a tag to compare

Version 2.11.3: Released Nov 21st, 2023

  • Changes in libraries:
    • \ref mrpt_core_grp
      • Add the [[nodiscard]] attribute to all functions returning a value in <mrpt/core/bits_math.h>
    • \ref mrpt_maps_grp
      • mrpt::maps::COccupancyGridMap3D::insertObservation() now also handles mrpt::obs::CObservationPointCloud
      • New virtual interface mrpt::maps::NearestNeighborsCapable, implemented in:
        • All mrpt::maps::CPointsMap classes
        • All classes derived from mrpt::maps::CVoxelMapOccupancyBase
        • mrpt::maps::COccupancyGridMap2D
        • mrpt::maps::COccupancyGridMap2D
      • New virtual method mrpt::maps::CMetricMap::boundingBox()
      • mrpt::maps::TMetricMapInitializer now returns shared_ptrs instead of plain pointers.
      • mrpt::maps::TSetOfMetricMapInitializers::loadFromConfigFile() now throws if it finds a *_count entry with an unknown map class name.
    • \ref mrpt_math_grp
      • New template mrpt::math::confidenceIntervalsFromHistogram()
    • \ref mrpt_obs_grp
      • mrpt::maps::CMetricMap::loadFromSimpleMap() now automatically calls mrpt::obs::CObservation::load() and mrpt::obs::CObservation::unload() for all observations, so it works with lazy-load datasets.
  • BUG FIXES:
    • Fix compilation errors if using the MCP_SAVE() macro with class enum types.
    • Fix wrong cloud pose in CPointsMap::insertObservation() when inserting an mrpt::obs::CObservationPointCloud.
    • Fix potential data race in mrpt::WorkerThreadsPool::pendingTasks()

Release of v2.11.2

25 Oct 15:14
2.11.2
cbe133f
Compare
Choose a tag to compare

Version 2.11.2: Released Oct 25th, 2023

  • Changes in libraries:
    • \ref mrpt_gui_grp
      • New function mrpt::gui::GetScaledClientSize().
    • \ref mrpt_obs_grp
      • Fix typo in data field: mrpt::obs::CObservationRange: sensorConeApperture -> sensorConeAperture
    • \ref mrpt_ros2bridge_grp
      • Address the new field variance in sensor_msgs/Range (Closes issue #1270).
  • BUG FIXES:
    • Fix wrong rendering of all wxWidgets-based OpenGL windows when using Ubuntu's display settings to change UI to a size different than 100% (Fixes issue #1114).
    • Fix ignored sensorPose of mrpt::obs::CObservationPointCloud while inserting them into voxel maps.

Release of v2.11.1

23 Oct 14:11
2.11.1
0219e77
Compare
Choose a tag to compare

Version 2.11.1: Released Oct 23rd, 2023

  • Changes in libraries:
    • \ref mrpt_math_grp
      • Fix several build warnings introduced in the last version.
    • \ref mrpt_maps_grp
      • Voxel maps: A voxel is considered occupied if its occupancy is larger than likelihoodOptions.occupiedThreshold instead of a fixed 0.5.

Release of v2.11.0

18 Oct 23:06
2.11.0
932019c
Compare
Choose a tag to compare

Version 2.11.0: Released Oct 19th, 2023

  • Changes in libraries:
    • \ref mrpt_maps_grp
      • New voxel map containers, based on Faconti's Bonxai header-only libray (MPL-2.0 license):
        • mrpt::maps::CVoxelMap
        • mrpt::maps::CVoxelMapRGB
        • Example: \ref maps_voxelmap_from_tum_dataset
        • Example: \ref maps_voxelmap_simple
  • BUG FIXES:
    • Fix python wrapper FTBFS in armhf and other architectures.
    • Fix matrices removeColumns() and removeRows() won't throw if user specified a non-existing index.