Skip to content

Running In Docker

This project publishes docker images to DockerHub to allow users to quickly run the software. Two variants of the images are published, for linux and for Jetson5 devices. For more details on the published images please see the Image Details page.

To get started with the latest images, please pull it onto your computer.

Pulling the Images

docker pull nbowness/uav-experiments:latest
docker pull nbowness/uav-experiments:latest-jetson-jetpack5

Tag Images

To simplify future command, you can tag the images to a shorter name. All commands shown below will use the short form tracking-image.

docker tag nbowness/uav-experiments:latest tracking-image
docker tag nbowness/uav-experiments:latest-jetson-jetpack5 tracking-image

Running the Container

To run the container interactively, you can run the following command to launch the container. To run, non-interactively remove the -it option.

docker run -it tracking-image
docker run --ipc=host --runtime=nvidia -it tracking-image

Running the Tracking Software

After launching the container on either platform, you can run the following command to start the program. Use this default configuration, the radar and video process will run on "live" data, until told to exit with q+ENTER (or CTRL+c).

python3 tracking.py 

Saving Data Output Locally

You can save all output of the container to a local folder, by mounting a local folder on disk to the /outputdirectory of the container. The below command will mount a local output folder to the container, feel free to modify it.

docker run -it tracking-image -v "$(pwd)"/output:/output
docker run --ipc=host --runtime=nvidia -it tracking-image -v "$(pwd)"/output:/output

Configuration

By default the above commands will run the program with default configuration. This will use the default configuration files, for more details please review the configuration page.

To change the configuration, there are 2 options 1. Change options with CLI arguments when running tracking.py. 1. Mount configuration files to the container with updated arguments.

CLI Arguments for Program

The are numerous CLI arguments for the tracking.py program. To see all options you can run the --help command.

python3 tracking.py --help 

An example of updating the Radar's IP address can be see below.

python3 tracking.py --radar-ip 10.0.1.60

Mounting Configuration Files

To mount configuration files that you can change locally, and will get used by the container you can mount a volume to the /configuration directory in the container.

docker run -it tracking-image -v "$(pwd)"/configuration:/configuration
docker run --ipc=host --runtime=nvidia -it tracking-image -v "$(pwd)"/configuration:/configuration

Running with Different Configurations - Samples

  • Running the container on previously collected data - details
  • Running the container with only radar processing - details
  • Running the container with only video processing - details
  • Running the container with displayed results - datails