Image Collection Repository

Overview

Image collection is done on any computer running Linux on the drone. Image collection accesses the camera in the same manner as the airside system.

Repository:

https://github.com/UWARG/image-collection

Software

Setup - USB Camera

Follow the instructions to clone the repository and activate the environment: Autonomy Workflow Software

Install packages:

pip install -r requirements.txt

Usage - USB Camera

Prerequisites:

Update the repository by running:

git checkout main git pull git submodule update --remote --merge

Copy the contents of rc.local.copyme to /etc/rc.local .

  • Modifying /etc/rc.local requires superuser access (e.g. sudo )

Collecting images:

  1. Connect the camera to the computer

  2. Power on the computer:

    1. If camera is not connected, image collection fails to start. Power off the computer and go to step 1

    2. Image collection is automatically run on startup through the /etc/rc.local file

  3. Collect images by pointing the camera towards the object(s) of interest

  4. Power off the computer

Accessing images:

  1. Disconnect all sensors

  2. Power on the computer

  3. Move or copy the images to be saved

  4. Delete the images to free space for future collection

Setup - Raspberry Pi Camera Module 3

clone the repository or update it as normal (same as USB Camera)

DO NOT activate a virtual environment: you actually want to deactivate it before you run this script.

The picamera2 library is pre-installed on PiOS, and it is not encouraged to install it using pip: https://datasheets.raspberrypi.com/camera/picamera2-manual.pdf. Hence, we will use the pre-installed library instead.

Those libraries cannot be easily installed using pip and require additional steps, so we just use the provided library in global space. There are some missing dependencies when installing through pip, which causes build fail.

Usage - Raspberry Pi Camera Module 3

Option A: Run the script manually

python picam.py

Option B: Run the script from startup using /etc/rc.local.

Add the following line to /etc/rc.local (starts the image capturing in the background):

  • Make sure you don’t activate any virtual environments beforehand!