From 7788d7dd3c07f989760eb75c37ef98b61b56fcb9 Mon Sep 17 00:00:00 2001 From: mwlasiuk Date: Fri, 7 Aug 2026 20:52:11 +0200 Subject: [PATCH 1/2] Init --- Dockerfile | 39 +++++++++++++++++++++++++++++++++++++++ entrypoint.sh | 27 +++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 Dockerfile create mode 100644 entrypoint.sh diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..ad1a983 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,39 @@ +# docker build -t translo . +# docker run --rm -it --gpus all translo + +# docker run --rm -it --gpus all -v ~/KITTY_FULL:/DATASET_DIR:ro -v ~/code/TransLO/:/CHECKPOINT_DIR:ro -v "$(pwd)":/OUTPUT_DIR translo + +# python3 infer_seq_abs.py --checkpoint /CHECKPOINT_DIR/translo_model_047_-20.478760.pth.tar --sequence /DATASET_DIR/data_odometry_velodyne/dataset/sequences/00/velodyne/ --output /OUTPUT_DIR/my_output.txt + +FROM nvidia/cuda:12.8.2-devel-ubuntu24.04 + +ENV DEBIAN_FRONTEND=noninteractive +ENV PYTHONUNBUFFERED=1 + +WORKDIR /translo_workspace + +RUN apt-get update +RUN apt-get -y upgrade + +RUN apt-get -y install g++ +RUN apt-get -y install ninja-build +RUN apt-get -y install build-essential +RUN apt-get -y install ca-certificates +RUN apt-get -y install git + +RUN apt-get -y install python3 +RUN apt-get -y install python3-dev +RUN apt-get -y install python3-pip +RUN apt-get -y install python3-venv + +RUN git clone --recursive https://github.com/mwlasiuk/TransLO.git --branch mw/infer + +RUN pip3 install --break-system-packages --no-cache-dir torch==2.11.0 torchvision==0.26.0 torchaudio==2.11.0 --index-url https://download.pytorch.org/whl/cu128 + +COPY entrypoint.sh /entrypoint.sh + +RUN chmod +x /entrypoint.sh + +ENTRYPOINT ["/entrypoint.sh"] + +CMD ["/bin/bash"] \ No newline at end of file diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100644 index 0000000..84ee992 --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e + +MARKER="/translo_workspace/.cuda_extensions_built" + +if [ ! -f "$MARKER" ]; then + echo "Building TransLO CUDA extensions..." + + export CUDA_HOME=/usr/local/cuda + + cd /translo_workspace/TransLO/pointnet2 + python3 setup.py install + + cd /translo_workspace/TransLO/ops_pytorch/fused_conv_random_k + python3 setup.py install + + cd /translo_workspace/TransLO/ops_pytorch/fused_conv_select_k + python3 setup.py install + + cd /translo_workspace/TransLO + + touch "$MARKER" + + echo "Done." +fi + +exec "$@" \ No newline at end of file From c22ad3982208d4821ff89131bfa48bbdeb3a5c83 Mon Sep 17 00:00:00 2001 From: mwlasiuk Date: Sat, 8 Aug 2026 16:12:23 +0200 Subject: [PATCH 2/2] Readme --- Dockerfile | 1 - README.md | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index ad1a983..5b5857c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,4 @@ # docker build -t translo . -# docker run --rm -it --gpus all translo # docker run --rm -it --gpus all -v ~/KITTY_FULL:/DATASET_DIR:ro -v ~/code/TransLO/:/CHECKPOINT_DIR:ro -v "$(pwd)":/OUTPUT_DIR translo diff --git a/README.md b/README.md index 169e836..476e23c 100644 --- a/README.md +++ b/README.md @@ -1 +1,33 @@ -# benchmark-HDMapping-AILoopClosure-TransLO \ No newline at end of file +# benchmark-HDMapping-AILoopClosure-TransLO + +Reproducible setup for [TransLO: A Window-Based Masked Point Transformer Framework for Large-Scale LiDAR Odometry](https://github.com/IRMVLab/TransLO). + +Only inference. + +# Requirements +- Ubuntu 24.04 +- NVIDIA GPU and CUDA Toolkit 12.x +- Kitti Velodyne dataset ([download](https://www.cvlibs.net/datasets/kitti/)) +- Docker ([follow install instructions](https://docs.docker.com/engine/install/ubuntu/)) +- Docker NVIDIA runtime ([follow install instructions](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html)) +- Pretrained model + +# Running + +``` bash +# clone repository +git clone https://github.com/MapsHD/benchmark-HDMapping-AILoopClosure-TransLO.git + +# enter repository +cd benchmark-HDMapping-AILoopClosure-TransLO + +# build docker image +docker build -t translo . + +# run docker image +docker run --rm -it --gpus all -v PATH_TO_KITTY_DATASET:/DATASET_DIR:ro -v PATH_TO_MODEL_DIRECTORY:/CHECKPOINT_DIR:ro -v "$(pwd)":/OUTPUT_DIR translo + +# inside docker container +python3 infer_seq_abs.py --checkpoint /CHECKPOINT_DIR/translo_model_047_-20.478760.pth.tar --sequence /DATASET_DIR/data_odometry_velodyne/dataset/sequences/00/velodyne/ --output /OUTPUT_DIR/output.txt --no-relative + +```