Handle scaling and truncation for 32-bit images #100
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Install ROMAN and Run Demo | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| jobs: | |
| build: | |
| runs-on: self-hosted | |
| steps: | |
| - name: Checkout this repo | |
| uses: actions/checkout@v3 | |
| # - name: Switch to feature/CI branch | |
| # run: | | |
| # cd roman | |
| # git checkout feature/CI | |
| # - name: Clone roman repo | |
| # run: | | |
| # git clone https://github.com/mit-acl/roman.git roman | |
| # cd roman | |
| # git checkout feature/CI | |
| # cd .. | |
| # - name: Install Boost and Eigen | |
| # run: sudo apt-get update && sudo apt-get install -y libboost-all-dev && sudo apt-get install -y libeigen3-dev | |
| # - name: Install GTSAM | |
| # run: | | |
| # git clone https://github.com/borglab/gtsam.git | |
| # cd gtsam | |
| # git checkout 686e16aaae26c9a4f23d4af7f2d4a504125ec9c3 | |
| # mkdir build | |
| # cd build | |
| # cmake .. -DGTSAM_POSE3_EXPMAP=ON -DGTSAM_ROT3_EXPMAP=ON | |
| # sudo make install | |
| # cd ../.. | |
| - name: Clean dependency build dirs | |
| run: | | |
| rm -rf dependencies/clipper/build | |
| rm -rf dependencies/Kimera-RPGO/build | |
| - name: Run install.sh | |
| run: | | |
| pwd | |
| pip install --upgrade pip | |
| echo "PATH=$HOME/.local/bin:$PATH" >> $GITHUB_ENV | |
| export PATH="$HOME/.local/bin:$PATH" | |
| export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib | |
| ./install.sh | |
| # - name: Download KMD sample data | |
| # run: | | |
| # mkdir -p roman/data | |
| # cd roman/data | |
| # gdown --id 1-ubVXZ1GP9WPmF5-mtRlbR_ZqECCg2fj -O sparkal2_vio.bag | |
| # gdown --id 1Zl4Yr53LiZrm6xQSdjvKaRpo8TxqlipA -O sparkal2_gt.csv | |
| # gdown --id 1eJ3ozQZCJEtd20y2cWQRJEnSObAVKOUX -O sparkal2_camera.bag | |
| # gdown --id 1SN0Y_jYYaTg9QYrfgQ1QhqWibfMSI9fv -O sparkal1_vio.bag | |
| # gdown --id 14uEvEXYRRrHPcQD38WQp2iYtHazahFHg -O sparkal1_gt.csv | |
| # gdown --id 1mVby2dkM9ZURGcAP7fcQ3nzBFOwJGVFU -O sparkal1_camera.bag | |
| # cd .. | |
| # echo "ROMAN_DEMO_DATA=$HOME/Data" >> $GITHUB_ENV | |
| # echo "ROMAN_WEIGHTS=$PWD/weights" >> $GITHUB_ENV | |
| - name: Patch yolov7_package to remove `.lower()` | |
| run: | | |
| python3 -c "import yolov7_package; print(yolov7_package.__file__)" | |
| FILE=$(python3 -c "import yolov7_package.utils.google_utils as m; print(m.__file__)") | |
| sed -i "s/Path(str(file).strip().replace(\"'\", '').lower())/Path(str(file).strip().replace(\"'\", ''))/" "$FILE" | |
| - name: Run demo | |
| run: | | |
| mkdir -p gtsam_lib_override | |
| ln -sf /usr/local/lib/libgtsam.so.4.2.0 gtsam_lib_override/libgtsam.so.4 | |
| export LD_LIBRARY_PATH=$PWD/gtsam_lib_override:$LD_LIBRARY_PATH | |
| export ROMAN_DEMO_DATA=$HOME/data/roman_kimera_multi_aligned | |
| export ROMAN_WEIGHTS=$PWD/weights | |
| source /opt/ros/humble/setup.bash | |
| mkdir demo_output | |
| python3 demo/demo.py \ | |
| -p params/demo_aligned_depth \ | |
| -o demo_output | |
| - name: Check Mapping Output | |
| run: | | |
| if [ -f demo_output/map/sparkal1.pkl ]; then | |
| echo "✅ sparkal1.pkl was successfully created." | |
| else | |
| echo "❌ sparkal1.pkl not found!" >&2 | |
| exit 1 | |
| fi | |
| - name: Check ATE | |
| run: | | |
| ATE_FILE="$GITHUB_WORKSPACE/demo_output/offline_rpgo/ate_rmse.txt" | |
| if [ ! -f "$ATE_FILE" ]; then | |
| echo "❌ ATE file not found at $ATE_FILE" >&2 | |
| exit 1 | |
| fi | |
| ATE_VALUE=$(cat "$ATE_FILE") | |
| echo "🔍 ATE RMSE value: $ATE_VALUE" | |
| if awk "BEGIN {exit !($ATE_VALUE < 1.5)}"; then | |
| echo "✅ ATE RMSE is below threshold (1.5)" | |
| else | |
| echo "❌ ATE RMSE is above threshold (1.5)" >&2 | |
| exit 1 | |
| fi |