Skip to content

Update dockerfile.robot for rayfronts+airstack integration #258

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 9 commits into
base: develop
Choose a base branch
from
Open
8 changes: 7 additions & 1 deletion .env
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,13 @@ PROJECT_NAME="airstack"
PROJECT_VERSION="0.13.1"
# can replace with your docker hub username
PROJECT_DOCKER_REGISTRY="airlab-storage.andrew.cmu.edu:5001/shared"
DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/AFCA/fire_academy_faro_with_sky.scene.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/AFCA/fire_academy_faro_with_sky.scene.usd"
DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/neighborhood.scene.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/fire_academy.scene.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/AbandonedFactory.scene.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Library/Assets/FireAcademyFaro/fire_academy_faro.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/ConstructionSite.scene.usd"
#DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/infinity_blade_grasslands.scene.usd"
PLAY_SIM_ON_START="true"
# the file under robot/docker/ that contains the robot's environment variables
ROBOT_ENV_FILE_NAME="robot.env"
60 changes: 52 additions & 8 deletions robot/docker/Dockerfile.robot
Original file line number Diff line number Diff line change
Expand Up @@ -119,13 +119,48 @@ RUN pip3 install \
yacs \
wandb

# Override install newer openvdb 9.1.0 for compatibility with Ubuntu 22.04 https://bugs.launchpad.net/bugs/1970108
RUN apt remove -y libopenvdb*; \
git clone --recurse --branch v9.1.0 https://github.com/wyca-robotics/openvdb.git /opt/openvdb && \
mkdir /opt/openvdb/build && cd /opt/openvdb/build && \
cmake .. && \
make -j8 && make install && \
cd ..; rm -rf /opt/openvdb/build
# # Override install newer openvdb 9.1.0 for compatibility with Ubuntu 22.04 https://bugs.launchpad.net/bugs/1970108
# RUN apt remove -y libopenvdb*; \
# git clone --recurse --branch v9.1.0 https://github.com/wyca-robotics/openvdb.git /opt/openvdb && \
# mkdir /opt/openvdb/build && cd /opt/openvdb/build && \
# cmake .. && \
# make -j8 && make install && \
# cd ..; rm -rf /opt/openvdb/build

#for Rayfronts Integration#
RUN pip install \
torch-scatter==2.1.2 \
ftfy \
regex \
nanobind \
hydra-core \
open_clip_torch \
transformers \
idna==3.10 \
requests==2.32.3 \
scipy==1.15.2

WORKDIR /usr/local/src
RUN wget https://archives.boost.io/release/1.80.0/source/boost_1_80_0.tar.gz && \
tar -xvzf boost_1_80_0.tar.gz && \
cd boost_1_80_0 && \
./bootstrap.sh && \
./b2 install --prefix=/usr/local && \
rm -rf /usr/local/src/boost_1_80_0.tar.gz

WORKDIR /root/ros_ws/src/autonomy/2_perception/rayfronts
RUN git clone https://github.com/OasisArtisan/openvdb.git && \
mkdir -p openvdb/build && \
ls -l /root/ros_ws/src/autonomy/2_perception/rayfronts/openvdb && \
cd openvdb/build && \
cmake -DOPENVDB_BUILD_PYTHON_MODULE=ON \
-DOPENVDB_BUILD_PYTHON_UNITTESTS=ON \
-DOPENVDB_PYTHON_WRAP_ALL_GRID_TYPES=ON -DUSE_NUMPY=ON \
-Dnanobind_DIR=/usr/local/lib/python3.10/dist-packages/nanobind/cmake .. && \
make -j$(nproc) && \
make install && \
ls -l /root/ros_ws/src/autonomy/2_perception/rayfronts/openvdb


# Add ability to SSH
RUN apt-get update && apt-get install -y openssh-server
Expand Down Expand Up @@ -169,4 +204,13 @@ RUN pip install -U colcon-common-extensions

# Fixes for MACVO Integration
RUN pip install huggingface_hub
RUN pip uninstall matplotlib -y
RUN pip uninstall matplotlib -y

RUN pip install certifi
RUN pip install rerun-sdk==0.17

RUN python3 -c "import torch; \
torch.hub.load('NVlabs/RADIO', 'radio_model', \
version='radio_v2.5-b', progress=True, \
skip_validation=True, adaptor_names=['siglip'], \
trust_repo=True)"
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,9 @@
to="/$(env ROBOT_NAME)/sensors/front_stereo/right/camera_info" />
</node>

<!--RayFronts-->
<node pkg="rayfronts" exec="rayfronts_node" name="rayfronts" output="screen"/>

<!-- Visualizer -->
<node pkg="image_view" exec="disparity_view"
namespace="disparity_view">
Expand Down