Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
982ba35
added doc and tests for util2d.h
matlabbe Apr 25, 2025
f14dae2
updated cmake-ros ci
matlabbe Apr 25, 2025
bb36ce7
Added util3d.h doc and tests
matlabbe Apr 27, 2025
30b9f20
Merge branch 'master' of github.com:introlab/rtabmap into gtest
matlabbe May 3, 2025
61d9171
util3d_transforms.h: Added doc and tests
matlabbe May 3, 2025
79dec73
util3d_filtering.h: started doc and test
matlabbe May 4, 2025
8d3b78e
util3d_filtering.h: more tests and doc
matlabbe May 4, 2025
879da2a
Merge branch 'master' of github.com:introlab/rtabmap into gtest
matlabbe May 18, 2025
40f965d
Added more doc/tests
matlabbe May 19, 2025
c776b9f
finished util3d_filtering doc and tests
matlabbe May 21, 2025
7b1f37b
Merge branch 'master' of github.com:introlab/rtabmap into gtest
matlabbe Jun 21, 2025
9335b9d
added test for util2d::depthBleedingFiltering
matlabbe Jun 21, 2025
cb6cdca
Added util3d_registration tests
matlabbe Jun 22, 2025
3ca3c37
Added util3d_features.h doc/tests
matlabbe Jun 22, 2025
114f673
added doc/tests for util3d_correspondences.h
matlabbe Jun 22, 2025
442a868
added doc/gtest for util3d_mapping.h (missing hpp functions)
matlabbe Jun 23, 2025
45f342c
Merge branch 'master' of github.com:introlab/rtabmap into gtest
matlabbe Jul 5, 2025
7a7c33d
finished testing util3d_mapping.hpp
matlabbe Jul 5, 2025
3c5c004
Added util3d_motion_estimation.h tests (2D->3D done)
matlabbe Jul 6, 2025
d558c3a
finished util3d_motion_estimation.h tests
matlabbe Jul 6, 2025
b8d2531
minimal util3d_surface.h
matlabbe Jul 6, 2025
d30e76b
Added Transform and VisualWord tests
matlabbe Jul 6, 2025
f64c56a
Added doc for CameraModel and StereoCameraModel
matlabbe Jul 8, 2025
276974c
Merge branch 'master' of github.com:introlab/rtabmap into gtest
matlabbe Jul 8, 2025
8123a7f
Added more logs in ros ci
matlabbe Jul 8, 2025
1dda2c7
Passing tests on fical
matlabbe Jul 8, 2025
fcf7ca7
improved all devcontainer
matlabbe Jul 8, 2025
492c52b
added devcontainer kilted, fixed source setup.bash, removed ldconfig …
matlabbe Jul 8, 2025
301b6bf
cleanup
matlabbe Jul 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .devcontainer/focal/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
FROM introlab3it/rtabmap:focal-deps

RUN apt-get update && apt-get install -y sudo && \
apt-get clean && rm -rf /var/lib/apt/lists/

ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=1000

RUN set -ex && \
groupadd --gid ${USER_GID} ${USERNAME} && \
useradd --uid ${USER_UID} --gid ${USER_GID} -m ${USERNAME} && \
usermod -a -G sudo ${USERNAME} && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USERNAME} && \
chmod 0440 /etc/sudoers.d/${USERNAME}

RUN echo "source /usr/share/bash-completion/completions/git" >> /home/${USERNAME}/.bashrc
RUN echo 'source /opt/ros/$ROS_DISTRO/setup.bash' >> /home/${USERNAME}/.bashrc
13 changes: 11 additions & 2 deletions .devcontainer/focal/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
{
"image": "introlab3it/rtabmap:20.04",
"build": {
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": ["ms-vscode.cpptools-themes", "ms-vscode.cmake-tools"]
}
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/home/vscode/rtabmap,type=bind",
"workspaceFolder": "/home/vscode/rtabmap",
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
},
"remoteUser": "vscode",
"runArgs": ["--privileged"]
}
18 changes: 18 additions & 0 deletions .devcontainer/jammy/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
FROM introlab3it/rtabmap:jammy-deps

RUN apt-get update && apt-get install -y sudo && \
apt-get clean && rm -rf /var/lib/apt/lists/

ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=1000

RUN set -ex && \
groupadd --gid ${USER_GID} ${USERNAME} && \
useradd --uid ${USER_UID} --gid ${USER_GID} -m ${USERNAME} && \
usermod -a -G sudo ${USERNAME} && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USERNAME} && \
chmod 0440 /etc/sudoers.d/${USERNAME}

RUN echo "source /usr/share/bash-completion/completions/git" >> /home/${USERNAME}/.bashrc
RUN echo 'source /opt/ros/humble/setup.bash' >> /home/${USERNAME}/.bashrc
14 changes: 12 additions & 2 deletions .devcontainer/jammy/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,18 @@
{
"image": "introlab3it/rtabmap:22.04",
"build": {
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": ["ms-vscode.cpptools-themes", "ms-vscode.cmake-tools"]
}
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/home/vscode/rtabmap,type=bind",
"workspaceFolder": "/home/vscode/rtabmap",
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
},
"remoteUser": "vscode",
"runArgs": ["--privileged"]

}
20 changes: 20 additions & 0 deletions .devcontainer/noble-kilted/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FROM introlab3it/rtabmap:noble-kilted-deps
# remove ubuntu user
RUN touch /var/mail/ubuntu && chown ubuntu /var/mail/ubuntu && userdel -r ubuntu

RUN apt-get update && apt-get install -y sudo && \
apt-get clean && rm -rf /var/lib/apt/lists/

ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=1000

RUN set -ex && \
groupadd --gid ${USER_GID} ${USERNAME} && \
useradd --uid ${USER_UID} --gid ${USER_GID} -m ${USERNAME} && \
usermod -a -G sudo ${USERNAME} && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USERNAME} && \
chmod 0440 /etc/sudoers.d/${USERNAME}

RUN echo "source /usr/share/bash-completion/completions/git" >> /home/${USERNAME}/.bashrc
RUN echo 'source /opt/ros/kilted/setup.bash' >> /home/${USERNAME}/.bashrc
17 changes: 17 additions & 0 deletions .devcontainer/noble-kilted/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"build": {
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": ["ms-vscode.cpptools-themes", "ms-vscode.cmake-tools"]
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/home/vscode/rtabmap,type=bind",
"workspaceFolder": "/home/vscode/rtabmap",
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
},
"remoteUser": "vscode",
"runArgs": ["--privileged"]
}
20 changes: 20 additions & 0 deletions .devcontainer/noble/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
FROM introlab3it/rtabmap:noble-deps
# remove ubuntu user
RUN touch /var/mail/ubuntu && chown ubuntu /var/mail/ubuntu && userdel -r ubuntu

RUN apt-get update && apt-get install -y sudo && \
apt-get clean && rm -rf /var/lib/apt/lists/

ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=1000

RUN set -ex && \
groupadd --gid ${USER_GID} ${USERNAME} && \
useradd --uid ${USER_UID} --gid ${USER_GID} -m ${USERNAME} && \
usermod -a -G sudo ${USERNAME} && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USERNAME} && \
chmod 0440 /etc/sudoers.d/${USERNAME}

RUN echo "source /usr/share/bash-completion/completions/git" >> /home/${USERNAME}/.bashrc
RUN echo 'source /opt/ros/jazzy/setup.bash' >> /home/${USERNAME}/.bashrc
13 changes: 11 additions & 2 deletions .devcontainer/noble/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
{
"image": "introlab3it/rtabmap:24.04",
"build": {
"dockerfile": "Dockerfile"
},
"customizations": {
"vscode": {
"extensions": ["ms-vscode.cpptools-themes", "ms-vscode.cmake-tools"]
}
}
},
"workspaceMount": "source=${localWorkspaceFolder},target=/home/vscode/rtabmap,type=bind",
"workspaceFolder": "/home/vscode/rtabmap",
"settings": {
"terminal.integrated.defaultProfile.linux": "bash"
},
"remoteUser": "vscode",
"runArgs": ["--privileged"]
}
2 changes: 1 addition & 1 deletion .devcontainer/rolling/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -74,4 +74,4 @@ RUN set -ex && \
chmod 0440 /etc/sudoers.d/${USERNAME}

RUN echo "source /usr/share/bash-completion/completions/git" >> /home/${USERNAME}/.bashrc

RUN echo 'source /opt/ros/$ROS_DISTRO/setup.bash' >> /home/${USERNAME}/.bashrc
2 changes: 1 addition & 1 deletion .devcontainer/rolling/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@
"terminal.integrated.defaultProfile.linux": "bash"
},
"remoteUser": "vscode",
"runArgs": ["--privileged", "--network=host"]
"runArgs": ["--privileged"]
}
11 changes: 10 additions & 1 deletion .github/workflows/cmake-ros.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,20 @@ jobs:
cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}

- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
run: |
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}

- name: Info
working-directory: ${{github.workspace}}/build/bin
run: |
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
./rtabmap-console --version

- name: Test
working-directory: ${{github.workspace}}/build
run: |
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
ctest -C ${{env.BUILD_TYPE}} --output-on-failure
ctest -C ${{env.BUILD_TYPE}} --output-on-failure --rerun-failed

11 changes: 5 additions & 6 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,8 @@ jobs:
run: |
./rtabmap-console --version

# - name: Test
# working-directory: ${{github.workspace}}/build
# # Execute tests defined by the CMake configuration.
# # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
# run: ctest -C ${{env.BUILD_TYPE}}

- name: Test
working-directory: ${{github.workspace}}/build
run: |
ctest -C ${{env.BUILD_TYPE}} --output-on-failure
ctest -C ${{env.BUILD_TYPE}} --output-on-failure --rerun-failed
18 changes: 18 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,23 @@ OPTION(BUILD_APP "Build main application" ON)
OPTION(BUILD_TOOLS "Build tools" ON)
OPTION(BUILD_EXAMPLES "Build examples" ON)

include(CTest)
if(BUILD_TESTING)
# Add GTest using FetchContent
include(FetchContent)
FetchContent_Declare(
googletest
URL https://github.com/google/googletest/archive/refs/tags/v1.16.0.zip
)
FetchContent_GetProperties(googletest)
if(NOT googletest_POPULATED)
FetchContent_Populate(googletest)
add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR})
endif()
include(GoogleTest)
set(TEST_DATA_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/data")
endif()

####### DEPENDENCIES #######
IF(MOBILE_BUILD)
option(WITH_QT "Include Qt support" OFF)
Expand Down Expand Up @@ -1342,6 +1359,7 @@ MESSAGE(STATUS " CMAKE_INSTALL_LIBDIR = ${CMAKE_INSTALL_LIBDIR}")
MESSAGE(STATUS " BUILD_APP = ${BUILD_APP}")
MESSAGE(STATUS " BUILD_TOOLS = ${BUILD_TOOLS}")
MESSAGE(STATUS " BUILD_EXAMPLES = ${BUILD_EXAMPLES}")
MESSAGE(STATUS " BUILD_TESTING = ${BUILD_TESTING}")
IF(NOT WIN32)
# see comment above for the BUILD_SHARED_LIBS option on Windows
MESSAGE(STATUS " BUILD_SHARED_LIBS = ${BUILD_SHARED_LIBS}")
Expand Down
Loading
Loading