JeVois
1.22
JeVois Smart Embedded Machine Vision Toolkit
|
|
JeVoisBase vision software is in a repository called jevoisbase
and located at https://github.com/jevois
It provides a base collection of 25+ machine vision modules. Those are the modules that are bundled with the JeVois smart camera by default. They provide a wide range of machine vision algorithms, including visual attention and gist of a scene, object recognition, QRcode decoding, object tracking, road following, etc.
Compiling JeVoisBase software from source is only supported on Ubuntu Linux 20.04 amd64.
Before you attempt to compile JeVoisBase, you should compile jevois for both host and platform as explained in Compiling JeVois core software from source
The JeVoisBase core software is written in C++-17. It uses the facilities provided by the JeVois core software, and implements machine vision modules that can run on the JeVois smart camera.
The JeVoisBase software is configured and compiled using CMake, like the JeVois software.
Like the core JeVois software, it can be compiled natively on your Linux computer (host mode), in which case video will be captured from any connected camera, and video output will be to your computer's display. It can also be cross-compiled for the CPU inside the JeVois smart camera (platform mode), in which case video will be captured from the video sensor inside the JeVois camera, and video output will be streamed over the USB link.
Because several machine vision modules in JeVoisBase use the same components, such as for example a visual attention component, JeVoisBase is architectured as:
libjevoisbase.so
on JeVois-A33 or libjevoisprobase.so
on JeVois-Pro contains all the components, i.e., elementary machine vision algorithms.cd git clone https://github.com/jevois/jevoisbase.git
The directory jevoisbase/Contrib is for a collection of contributed source code packages.
Before you attempt to compile jevoisbase the first time, you should download and patch those contributed packages, as follows:
cd jevoisbase/Contrib ./reinstall.sh
Scripts are provided to recompile everything:
rebuild-host.sh
willhbuild/
which the script creates/jevois
(to match their location on the platform hardware)rebuild-platform.sh
willpbuild/
which the script createsOnce jevoisbase is compiled and installed for host, you can try it out using The jevois-daemon executable.
Scripts are provided to recompile everything:
rebuild-pro-host.sh
willphbuild/
which the script creates/jevoispro
(to match their location on the platform hardware)rebuild-pro-platform.sh
willjevois-daemon
will be staged into /var/lib/jevoispro-build/usr/bin/rebuild-pro-platform-pdeb.sh
willOnce jevoisbase is compiled and installed for host, you can try it out using The jevois-daemon executable.
Here is a walkthrough of what you should see when compiling jevois and jevoisbase from source for JeVois-Pro:
The scripts rebuild-host.sh
and rebuild-platform.sh
clear and recompile everything.
You should run them at least once.
Then, if you are just changing a few files, you can only recompile what is needed, as follows:
cd hbuild make -j sudo make install make doc # optional; if desired
cd pbuild make -j sudo make install make jvpkg # if desired
cd phbuild make -j sudo make install make doc # optional; if desired
cd ppbuild make -j sudo make install
cd ppdbuild make -j sudo make install sudo cpack # will re-generate the deb package into ppdbuild/jevoisprobase-platform_XXX_arm64.deb # You can then copy this file to microSD, switch JeVois-Pro to console boot, then # `apt remove jevoisprobase-platform` to nuke the existing version and then `dpkg -i <your_new_deb>`.