mod-Imaging
The mod-Imaging
captures an image from a specified V4l2 camera device and will preprocess it. Applying segmentation algorithms to it to create a path.
Functionalities
- Use a gstreamer pipeline to capture an image from an input device and apply segmentation and edge detection
- Add debug information using a lightweight Canvas object
Running this module
First compilation may be quite long because gstreamer libraries and bindings need to be built. Subsequent builds will be faster.
- Using the rover.yaml
- Precompiled
- From source
- Download the latest version of this module using the
rover
utility.
sudo rover update
- Enable this module in your /home/debix/rover.yaml file by (re)adding the following lines:
...
- name: mod-Imaging
cmd: mod-Imaging -service-yaml /home/debix/mods/mod-Imaging/service.yaml -debug
...
- Start with the
rover
utility
sudo rover start
- Download this module from the ASE Download Manager to your current working directory using
curl
curl https://downloads.ase.vu.nl/api/mod-Imaging/latest -JL -o mod-Imaging.zip
- Unzip the downloaded zip file. This will deflate the precompiled binary and its service yaml
unzip mod-Imaging.zip
- Execute the binary
./mod-Imaging
- Clone the source code using your private ASE token. Make sure to replace
<YOUR_TOKEN>
with the token you received by email.
git clone https://<YOUR-TOKEN>@github.com/VU-ASE/mod-Imaging.git
git pull
- Enter the source code directory
cd mod-Imaging
- Build and start from source
make start
Dependencies
If you are running from source, you might need to install the following dependencies:
- https://gstreamer.freedesktop.org/documentation/installing/on-linux.html?gi-language=c#install-gstreamer-on-ubuntu-or-debian
- from apt: libglib2.0-dev
- from apt: libgstreamer1.0-dev
- from apt: libgstreamer-plugins-base1.0-dev
Using this module
Dependencies
This module does not depend on any other module.
Outputs
This modules presents a process where a v4l2 device's images are parsed, segmented, and path-planned. It publishes this trajectory as a set of points on an IMAGE-HEIGHTxIMAGE-WIDTH 2d array and encodes it to a CameraSensorOutput protobuf message. This message can also contain JPEG bytes and a Canvas
object that will be automatically parsed in the util-WebController.