Merge branch 'master' into reduce_graph_orphan_nodes

This commit is contained in:
matlabbe
2026-07-17 15:05:47 -07:00
committed by GitHub
3 changed files with 15 additions and 18 deletions
+1 -1
View File
@@ -38,7 +38,7 @@ jobs:
- name: Install Brew Dependencies - name: Install Brew Dependencies
run: | run: |
# Update brew and install from Brewfile if present, or specific packages # Update brew and install from Brewfile if present, or specific packages
brew install pcl opencv octomap pdal yaml-cpp librealsense libfreenect libusb zlib libomp suite-sparse ceres-solver brew install pcl opencv@4 octomap pdal yaml-cpp librealsense libfreenect libusb zlib libomp suite-sparse ceres-solver
- name: Install Source Dependencies - name: Install Source Dependencies
# Build (and per-dependency cache) the source-only deps not available from # Build (and per-dependency cache) the source-only deps not available from
+5 -1
View File
@@ -58,7 +58,7 @@ This project is supported by [IntRoLab - Intelligent / Interactive / Integrated
<td><a href="http://build.ros.org/job/Nbin_ufv8_uFv8__rtabmap__ubuntu_focal_arm64__binary/"><img src="http://build.ros.org/buildStatus/icon?job=Nbin_ufv8_uFv8__rtabmap__ubuntu_focal_arm64__binary" alt="Build Status"/></td> <td><a href="http://build.ros.org/job/Nbin_ufv8_uFv8__rtabmap__ubuntu_focal_arm64__binary/"><img src="http://build.ros.org/buildStatus/icon?job=Nbin_ufv8_uFv8__rtabmap__ubuntu_focal_arm64__binary" alt="Build Status"/></td>
</tr> </tr>
<tr> <tr>
<td rowspan="4">ROS 2</td> <td rowspan="5">ROS 2</td>
<td>Humble</td> <td>Humble</td>
<td><a href="http://build.ros2.org/job/Hbin_uJ64__rtabmap__ubuntu_jammy_amd64__binary/"><img src="http://build.ros2.org/buildStatus/icon?job=Hbin_uJ64__rtabmap__ubuntu_jammy_amd64__binary" alt="Build Status"/></td> <td><a href="http://build.ros2.org/job/Hbin_uJ64__rtabmap__ubuntu_jammy_amd64__binary/"><img src="http://build.ros2.org/buildStatus/icon?job=Hbin_uJ64__rtabmap__ubuntu_jammy_amd64__binary" alt="Build Status"/></td>
</tr> </tr>
@@ -68,6 +68,10 @@ This project is supported by [IntRoLab - Intelligent / Interactive / Integrated
</tr> </tr>
<tr> <tr>
<td>Kilted</td> <td>Kilted</td>
<td><a href="http://build.ros2.org/job/Lbin_uR64__rtabmap__ubuntu_resolute_amd64__binary/"><img src="http://build.ros2.org/buildStatus/icon?job=Lbin_uR64__rtabmap__ubuntu_resolute_amd64__binary" alt="Build Status"/></td>
</tr>
<tr>
<td>Lyrical</td>
<td><a href="http://build.ros2.org/job/Kbin_uN64__rtabmap__ubuntu_noble_amd64__binary/"><img src="http://build.ros2.org/buildStatus/icon?job=Kbin_uN64__rtabmap__ubuntu_noble_amd64__binary" alt="Build Status"/></td> <td><a href="http://build.ros2.org/job/Kbin_uN64__rtabmap__ubuntu_noble_amd64__binary/"><img src="http://build.ros2.org/buildStatus/icon?job=Kbin_uN64__rtabmap__ubuntu_noble_amd64__binary" alt="Build Status"/></td>
</tr> </tr>
<tr> <tr>
+9 -16
View File
@@ -31,9 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <rtabmap/utilite/UConversion.h> #include <rtabmap/utilite/UConversion.h>
#include <rtabmap/core/Compression.h> #include <rtabmap/core/Compression.h>
#include <rtabmap/core/Version.h> #include <rtabmap/core/Version.h>
#ifdef WIN32
#include <rtabmap/core/Parameters.h> #include <rtabmap/core/Parameters.h>
#endif
#include "rtflann/flann.hpp" #include "rtflann/flann.hpp"
#include <boost/crc.hpp> #include <boost/crc.hpp>
@@ -179,8 +177,8 @@ std::vector<unsigned char> FlannIndex::serializeIndex(bool computeChecksum) cons
indexData.resize(bytes_written+headerSizeBytes); indexData.resize(bytes_written+headerSizeBytes);
indexData.shrink_to_fit(); indexData.shrink_to_fit();
int rebalancingFactorAsInt; int rebalancingFactorAsInt; // Deprecated
memcpy(&rebalancingFactorAsInt, &rebalancingFactor_, sizeof(rebalancingFactor_)); memcpy(&rebalancingFactorAsInt, &rebalancingFactor_, sizeof(rebalancingFactor_)); // Deprecated
int crcValueAsInt; int crcValueAsInt;
memcpy(&crcValueAsInt, &crcValue, sizeof(crcValue)); memcpy(&crcValueAsInt, &crcValue, sizeof(crcValue));
int header[FLANN_INDEX_HEADER_SIZE] = { int header[FLANN_INDEX_HEADER_SIZE] = {
@@ -188,7 +186,7 @@ std::vector<unsigned char> FlannIndex::serializeIndex(bool computeChecksum) cons
algorithm_, // 3, algorithm_, // 3,
featuresDim_, // 4, featuresDim_, // 4,
useDistanceL1_?1:0, // 5, useDistanceL1_?1:0, // 5,
rebalancingFactorAsInt, // 6, rebalancingFactorAsInt, // 6, Deprecated
dataRows, // 7, dataRows, // 7,
dataCols, // 8, dataCols, // 8,
dataType, // 9, dataType, // 9,
@@ -199,7 +197,7 @@ std::vector<unsigned char> FlannIndex::serializeIndex(bool computeChecksum) cons
header[3], header[3],
header[4], header[4],
header[5], header[5],
rebalancingFactor_, rebalancingFactor_, // Deprecated
header[7], header[8], header[9], crcValueAsInt, header[7], header[8], header[9], crcValueAsInt,
header[11]); header[11]);
memcpy(indexData.data(), header, headerSizeBytes); memcpy(indexData.data(), header, headerSizeBytes);
@@ -405,8 +403,8 @@ bool FlannIndex::loadIndex(
int savedAlgorithm = header[3]; int savedAlgorithm = header[3];
int savedDim = header[4]; int savedDim = header[4];
bool savedDistanceL1 = header[5]==1; bool savedDistanceL1 = header[5]==1;
float savedRebalancingFactor; float savedRebalancingFactor; // Deprecated
memcpy(&savedRebalancingFactor, &header[6], sizeof(header[6])); memcpy(&savedRebalancingFactor, &header[6], sizeof(header[6])); // Deprecated
int savedRows = header[7]; int savedRows = header[7];
int savedCols = header[8]; int savedCols = header[8];
int savedType = header[9]; int savedType = header[9];
@@ -414,12 +412,13 @@ bool FlannIndex::loadIndex(
memcpy(&savedCrc, &header[10], sizeof(header[10])); memcpy(&savedCrc, &header[10], sizeof(header[10]));
int savedIndexSize = header[11]; int savedIndexSize = header[11];
UDEBUG("Header: \"%d.%d.%d\" alg=%d dim=%d L1=%d factor=%f data(%dx%d type=%d, crc=%X) %d", UDEBUG("Header: \"%d.%d.%d\" alg=%d dim=%d L1=%d factor=%f (deprecated, using %f instead) data(%dx%d type=%d, crc=%X) index size = %d bytes",
header[0],header[1],header[2], header[0],header[1],header[2],
header[3], header[3],
header[4], header[4],
header[5], header[5],
savedRebalancingFactor, savedRebalancingFactor, // Deprecated
rebalancingFactor,
header[7], header[8], header[9], savedCrc, header[7], header[8], header[9], savedCrc,
header[11]); header[11]);
@@ -441,12 +440,6 @@ bool FlannIndex::loadIndex(
} }
return false; return false;
} }
if(savedRebalancingFactor != rebalancingFactor) {
if(error) {
*error = uFormat("Serialized \"rebalancing factor\" (%f) doesn't match the expected one (%f).", savedRebalancingFactor, rebalancingFactor);
}
return false;
}
if(savedRows != features.rows) { if(savedRows != features.rows) {
if(error) { if(error) {
*error = uFormat("Serialized feature count (%d) doesn't match the expected one (%d).", savedRows, features.rows); *error = uFormat("Serialized feature count (%d) doesn't match the expected one (%d).", savedRows, features.rows);