Skip to content

Latest commit

 

History

History
122 lines (83 loc) · 3.01 KB

README.md

File metadata and controls

122 lines (83 loc) · 3.01 KB

Docker images

Base image

The alexmelekhin/open-place-recognition:base image contains following:

  • Ubuntu 22.04
  • Python 3.10
  • CUDA 12.1.1
  • cuDNN 8
  • PyTorch 2.1.2
  • torhvision 0.16.2
  • MinkowskiEngine
  • faiss

You can either pull it from dockerhub:

docker pull alexmelekhin/open-place-recognition:base

Or build it manually:

# from repo root dir
bash docker/build_base.sh

Devel image

The open-place-recognition:devel image are build upon base image described above and contain pip requirements pre-installed and non-root user created inside.

It should be build only manually (to correctly propagate your UID and GID):

# from repo root dir
bash docker/build_devel.sh

Starting container

The container should be started using the open-place-recognition:devel image by using the following script:

# from repo root dir
bash docker/start.sh [DATASETS_DIR]

The [DATASETS_DIR] will be mounted to the directory /home/docker_opr/Datasets with read and write access.

Entering container

You can enter the container by using the following script:

# from repo root dir
bash docker/into.sh

Jetson Xavier image

We provide an example of image to run on Jetson Xavier with arm64 architecture.

jetson-containers

At first, you should build a starting image with jetson-containers tool. We tested the code with the following environment configuration:

  • JetPack 5
  • L4T 35.4.1
  • Python 3.10
  • CUDA 11.4
  • PyTorch 2.1.0
  • Torchvision 0.16.2
  • Faiss

To build the image run the command:

CUDA_VERSION=11.4 PYTHON_VERSION=3.10 TENSORRT_VERSION=8.5 PYTORCH_VERSION=2.1 TORCHVISION_VERSION=0.16.2 jetson-containers build --name=open-place-recognition-jetson tensorrt pytorch torchvision faiss

If your configuration is the same as described above (jetpack 5 and l4t 35.4.1) the above command will build an image named open-place-recognition-jetson:r35.4.1-cu114-cp310.

Base image

Next, you should build a base image with main dependencies (MinkowskiEngine). Use the provided Dockerfile.jetson-base by running the build_jetson_base.sh script:

# from repo root dir
bash docker/build_jetson_base.sh

Devel image

To build a ready-to-use development image, use the provided Dockerfile.jetson-devel by running the build_jetson_devel.sh script:

# from repo root dir
bash docker/build_jetson_devel.sh

Starting container

The container should be started using the open-place-recognition-jetson:devel-r35.4.1-cu114-cp310 image by using the following script:

# from repo root dir
bash docker/start_jetson.sh [DATASETS_DIR]

The [DATASETS_DIR] will be mounted to the directory /home/docker_opr/Datasets with read and write access.

Entering container

You can enter the container by using the following script:

# from repo root dir
bash docker/into.sh