ros-rolling-mp2p-icp (1.6.4-1noble) noble; urgency=high

  * merge two docs pages in one to shorten the docs TOC
  * Update README.md: Mark ROS2 Iron as EOL
  * Also use TBB for parallel solving point-to-plane pairings
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 17 Dec 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.6.3-1noble) noble; urgency=high

  * icp-log-viewer: also reduce GUI refresh rate
  * mm-viewer: avoid useless GUI refresh (CPU usage reduction)
  * txt2mm: Add input filter xyzrgb
  * mm-viewer: add a 'fit view to map' button
  * New cli app rawlog-filter
  * FilterCurvature: better handling scans with <=3 points in some rings
  * new subcommand 'sm-cli tf'
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sun, 10 Nov 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.6.2-1noble) noble; urgency=high

  * Expose << and >> operators for geo-reference data structures
  * Fix missing build_dep
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Fri, 13 Sep 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.6.1-1noble) noble; urgency=high

  * Fix missing catkin buildtoo_depend for ROS1 builds
  * Update RTTI macros for upcoming MRPT 2.14.0
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 10 Sep 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.6.0-1noble) noble; urgency=high

  * Port Point2Plane matcher to use the new NN-for-planes API
  * mp2p_icp_map library: add NearestPlaneCapable virtual API
  * cmake: move from glob expressions to explicit lists of source files
  * clarify eigenvalues order in headers
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sat, 07 Sep 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.6-1noble) noble; urgency=high

  * sm2mm cli: show map contents before writing to disk
  * add another demo sm2mm file for the mola tutorials
  * Add another sm2mm demo file w/o deskew for the mola mapping tutorial
  * Matcher_Point2Plane: fix build error in armhf
  * Fix build with embedded mola_common
  * README: Add ROS badges for all architectures
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Fri, 06 Sep 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.5-1noble) noble; urgency=high

  * Explicitly add tbb as dependency in package.xml
  * Depend on new mrpt_lib packages (deprecate mrpt2)
  * FIX: build errors in armhf arch
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 26 Aug 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.4-1noble) noble; urgency=high

  * Do not use Eigen::Vector for compatibility with Eigen3 <3.4 in ROS Noetic
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 19 Aug 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.3-1noble) noble; urgency=high

  * Re-add ROS1 Noetic as supported distribution
  * Generator sanity check asserts: more informative error messages
  * sm-cli: new command 'join' to merge simplemaps
  * icp-log-viewer UI: new keybind 'I' to switch initial/final pose
  * icp-log-viewer UI: add option to visualize voxelmaps empty space
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 19 Aug 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.2-1noble) noble; urgency=high

  * Add sm2mm yaml example for dynamic/static obstacles
  * Update sample sm2mm pipelines to use de-skew
  * docs: add mm-filter example
  * Fix pointcloud ptr typo
  * More safety sanity checks added in mm-viewer and sm2mm
  * BUGFIX: Generator should not create empty maps for GPS observations
  * Contributors: Jose Luis Blanco-Claraco, Raúl Aguilera López

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 23 Jul 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.1-1noble) noble; urgency=high

  * Update docs
  * ICP: Add optional functors for before-logging maps
  * icp-log-viewer UI: fix potential out-of-range exception when autoplay is on
  * FilterAdjustTimestamps: add new param 'time_offset' useful for multiple LiDARs setups
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 02 Jul 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.5.0-1noble) noble; urgency=high

  * ICP: Add optional user-provided per-iteration hooks
  * Add new filter: FilterByRing
  * Add new filter: FilterAdjustTimestamps
  * Add sanity checks for point cloud fields.
  * Fix typo in default class for FilterDeskew
  * generators API: add bool return type to detect if observation was actually processed
  * generic Generator: handle velodyne observations so timestamps are generated
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Thu, 20 Jun 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.4.3-1noble) noble; urgency=high

  * Add pointcloud_sanity_check() auxiliary function
  * Generator: more DEBUG level traces
  * BUGFIX: FilterDeskew generated buggy output points if the input does not contain timestamps
  * Add sanity checks for point cloud fields
  * ICP log records now also store the dynamic variables. icp-log-viewer displays them.
  * ICP log files: automatically create output directory if it does not exist
  * Update ros2 badges (added Jazzy)
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 10 Jun 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.4.2-1noble) noble; urgency=high

  * mm-viewer: add check-all, check-none to layer filters
  * Add new filter: FilterRemoveByVoxelOccupancy
  * mm-viewer: camera travelling keyframes-based animations
  * mm-viewer: navigate the map with keyboard arrows; add a load button
  * mm-viewer: can now also draws a TUM trajectory overlaid with the map
  * UI apps: smoother rendering
  * icp-log-viewer and mm-viewer: the UI now has a XYZ corner overlay
  * sm-cli: command "export-kfs" now has an optional flag '--output-twist'
  * FilterDeskew: ignore empty input maps
  * More debug-level traces
  * deskew filter: Fix case of variable names in docs
  * sm-cli app: Add new command 'trim' to cut simplemaps by bounding box
  * mm-viewer: show mouse pointing coordinates
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 27 May 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.4.1-1noble) noble; urgency=high

  * Fix build for older mrpt versions
  * ICP pipelines: Implement loading ``quality_checkpoints`` parameter from YAML config file
  * Quality evaluators: add the option for 'hard discard'
  * Update QualityEvaluator_Voxels to use prebuilt voxel layers from input maps. Add unit tests.
  * BUGFIX: Fix deserializing georeferenced .mm files stored in <1.4.0 format
  * ICP: quality evaluators can now have formulas in their parameters too
  * mm-viewer and icp-log-viewer: extend zoom range so maps of tens of kms can be viewed at once
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sat, 18 May 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.4.0-1noble) noble; urgency=high

  * Update commit for robin-map to latest version (patch contributed upstream)
  * icp-log-viewer: UI now has a slider for each map point size
  * ICP: Add a new quality_checkpoint parameter to early abort ICP attempts
  * georeferenced maps: T_enu_to_map now has a covariance field
  * mm-viewer: display ENU frame too
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sun, 05 May 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.3.3-1noble) noble; urgency=high

  * Add minimum_input_points_to_filter option to FilterDecimateVoxels
  * FIX: QualityEvaluator_PairedRatio throws when one of the reference maps is empty
  * FIX BUG: Won't try to match 2D pointclouds if their height is different
  * Clarify comments in metricmap.h about geodetic references
  * Fix printing metric_map_t contents when it only has a gridmap
  * Fix potential dangling references (g++ 13 warning)
  * Fix potential use of uninitialized point index
  * Bump cmake_minimum_required to 3.5
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 29 Apr 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.3.2-1noble) noble; urgency=high

  * tsl::robin_map library is no longer exposed neither in the public API nor as public headers (PIMPL pattern)
    This is to prevent Debian-level collisions with other packages also exposing it.
  * add first icp-log-viewer docs
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sun, 21 Apr 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.3.1-1noble) noble; urgency=high

  * mm-viewer and icp-log-viewer: saves UI state in persistent user config file
  * FIX: missing UI refresh when clicking showPairings checkbox
  * renamed apps for less verbose names: icp-run, icp-log-viewer
  * ICP core now defines a variable ICP_ITERATION for use in programmable formulas in pipelines
  * icp-log-viewer: much faster rendering of ICP iteration details
  * mm-viewer: fix bug in calculation of bounding box
  * Merge docs with main MOLA repo
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Mon, 15 Apr 2024 22:00:00 -0000

ros-rolling-mp2p-icp (1.3.0-1noble) noble; urgency=high

  * mm-viewer: new options to visualize georeferenced maps
  * New sm-cli commands: --cut, --export-keyframes, --export-rawlog
  * propagate cmake deps downstream
  * metric_map_t: add georeferencing optional field
  * mm-filter: add --rename operation
  * GetOrCreatePointLayer() moved to its own header and uses shared ptrs
  * FilterMerge: add param input_layer_in_local_coordinates
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Sat, 09 Mar 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.2.0-1noble) noble; urgency=high

  * Add new apps: sm-cli, mm-info, txt2mm, mm2txt, mm-filter
  * Improved documentation.
  * new filter FilterByIntensity
  * FilterNormalizeIntensity: add option for intensity range memory
  * FilterByRange: renamed params to simplify them (removed param 'keep_between')
  * FIX: missing intensity channel in decimate voxel when using some decimation methods
  * sm-cli: new subcommand 'level' to maximize the 'horizontality' of built maps
  * add optional profiler to filter pipelines
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Thu, 15 Feb 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.1.1-1noble) noble; urgency=high

  * MergeFilter: now also handles CVoxelMap as inputs
  * more memory efficient defaults
  * FilterCurvature: now based on ring_id channel
  * Use hash map min_factor to speed up clear()s
  * add missing hash reserve
  * PointCloudToVoxelGridSingle: Fix wrong initialization of point count
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 06 Feb 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.1.0-1noble) noble; urgency=high

  * FilterDecimateVoxels: Replace 3 bool parameters with an enum
  * Fix clang warnings
  * Save and visualize ICP step partial solutions
  * QualityEvaluator_PairedRatio: now does not require parameters
  * Add filter: Bonxai VoxelMap -> 2D gridmap. Bayesian filtering of voxel columns
  * Generator: allow defining custom metric maps directly in the YAML configuration
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Wed, 24 Jan 2024 23:00:00 -0000

ros-rolling-mp2p-icp (1.0.0-1noble) noble; urgency=high

  * Gauss-Newton solver: Add optional prior term
  * Added FilterMerge and modifications to allow sm2mm to build any type maps
  * sm2mm: add option for lazy-load external directory
  * Decimate filter: add flatten_to option to efficiently convert 3D->2D point clouds
  * FilterBoundingBox: parameter name changed for clearer split of inside / outside bbox
  * Deskew: add option to bypass de-skew operation
  * bump minimum required mrpt version
  * Better coloring; add option to export mm layers
  * Use new mrpt api to propagate point properties; add final_filter stage to sm2mm
  * sm2mm: add verbosity flag
  * bbox filter: allow processing variables too
  * Introduce robot_{x,y,z} variables
  * Better mm-viewer; update sm2mm demo file
  * Progress with RST docs
  * Add missing robotPose argument to generators; progress with mm-viewer
  * Add sm2mm app
  * Add FILE attribute to license tag
  * More dynamic parameters
  * fix print format
  * Add Deskew filter
  * update CI to u22.04
  * Introduce Parameterizable interface
  * New layers: create of the same input cloud type
  * Add FilterCurvature
  * filter: optional additional layer for deleted points
  * FIX: important error in robust gradient
  * expose GN params as public
  * new generators and filters
  * Filters: use tsl robin_map, faster than std::unordered_map
  * prefer nn_radius_search() to exploit nanoflann rknn
  * Minor UI updates
  * gui: autoplay
  * estimate_points_eigen.h moved to the mp2p_icp_map library
  * Solvers: add option to select by correction magnitude
  * add [[nodiscard]] to generator API
  * Add specialized implementation of voxelize for 1 pt/vx
  * add Cauchy robust kernel
  * Add support for TBB for parallelization
  * add angularThresholdFactor; add max plane-to-pt distance
  * viewer UI: show number of points per layer
  * Prefer Teschner's spatial hash
  * Use nn_single_search() when possible
  * viewer: add follow local checkbox
  * Add new filter: FilterDecimateVoxelsQuadratic
  * FilterDecimateVoxels: new option use_closest_to_voxel_average
  * FilterDecimateVoxels: new param use_random_point_within_voxel
  * less unnecesary mem allocs
  * generator: create map layers first, then filter by observation name/class filter
  * port to NN radius search
  * add "enabled" property to base Matcher class
  * Solvers: add property 'enabled'
  * Add robust kernels to GN solver
  * Add optional profiler to ICP
  * New parameter decimationDebugFiles
  * Add plugin option to viewer
  * VoxelFilter: is now ~7 times faster and does not need a bounding box parameter, thanks to using an associative container.
  * viewer: add new flag -f to load one single log file
  * viewer: increase slider range for max far plane
  * Options to recolorize maps in icp log viewer
  * Fix regression in rendering options for point clouds
  * Matcher: new parameter bounding_box_intersection_check_epsilon
  * New env var MP2P_ICP_GENERATE_DEBUG_FILES can be use to override generation of icp log files
  * BUGFIX: Ignored sensorPose for Generator::filterPointCloud()
  * Allow ICP matching against voxel metric map types
  * mp2p_icp_filters::Generator now can create a map from a generic INI file (e.g. voxelmaps)
  * fix references to old pointcloud_t -> metric_map_t
  * Remove support for MRPT<2.4.0
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Fri, 19 Jan 2024 23:00:00 -0000

ros-rolling-mp2p-icp (0.2.2-1noble) noble; urgency=high

  * Fix missing cmake dependencies between libraries
  * Update mola_common
  * Refactor into a new small library mp2p_icp_map with just the metric_map_t class
  * sync mola_common submodule
  * Update submodule mola_common
  * Remove redundant section
  * Update ROS badges
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Thu, 07 Sep 2023 22:00:00 -0000

ros-rolling-mp2p-icp (0.2.1-1noble) noble; urgency=high

  * Update copyright date
  * Update to new name of mola_common
  * update ros badges
  * Contributors: Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Fri, 01 Sep 2023 22:00:00 -0000

ros-rolling-mp2p-icp (0.2.0-1noble) noble; urgency=high

  * First release as MOLA submodule.

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Wed, 23 Aug 2023 22:00:00 -0000

ros-rolling-mp2p-icp (0.1.0-1noble) noble; urgency=high

  * First official release of the mp2p_icp libraries
  * Contributors: FranciscoJManasAlvarez, Jose Luis Blanco-Claraco

 -- Jose-Luis Blanco-Claraco <joseluisblancoc@gmail.com>  Tue, 13 Jun 2023 22:00:00 -0000


