JeVois Tutorials
1.22
JeVois Smart Embedded Machine Vision Tutorials
|
|
This tutorial will help you get setup for programming JeVois.
If all you want to do is use existing bundled machine vision algorithms, and possibly develop new modules in Python only, then simply get and flash a microSD image from http://jevois.org/start and check out:
The programming environment is Ubuntu 64-bit, version 20.04 (focal) or 18.04 (bionic). Support for 16.04 LTS (xenial) has ended as of JeVois v1.12.0 as it is becoming increasingly difficult to compile recent code (e.g., OpenCV 4.0.1) on this older Ubuntu release.
As of JeVois v1.15.0 the official JeVois development platform is Ubuntu 20.04 (focal).
As of JeVois v1.21.0 the official JeVois development platform is Ubuntu 24.04 (noble).
It is generally ok to setup the programming environment in a virtual machine (e.g., VirtualBox). Just beware that you may have to resolve issues having to do with granting proper access to either the video camera or the microSD card to the virtual machine. See Using Virtualbox to setup jevois-sdk in a virtual machine and Using the pre-installed jevois-sdk VirtualBox for development for more info.
The video above gets you through the steps of:
Not all the steps shown in the video above may be required, depending on your goals.
A quick overview of the JeVois software development packages (see JeVois Ubuntu packages and source code repositories for more details):
Keeping that in mind:
jevois-create-module
provided by jevois-sdk-dev to create a new module from scratch.rebuild-host.sh
and rebuild-platform.sh
scripts that are in your module's directory.rebuild-os.sh
in the jevois-sdk repo, which can run in a docker container.Skip to the next section if installing the JeVois Debian packages for the first time.
When upgrading to a new version of JeVois, we recommend deleting all previous generated files and rebuilding both /jevois for host and the staging area for platform in /var/lib/jevois-build and /var/lib/jevois-microsd as follows:
sudo apt purge jevois-sdk-dev jevois-sdk jevoisbase-platform jevoisbase-host jevois-platform jevois-host jevois-opencv sudo rm -rf /jevois /var/lib/jevois-build /var/lib/jevois-microsd
To get out of Debian dependency hell:
If something went wrong during a previous installation of VeVois packages (e.g., interrupted by user, power failure, etc), you may have entered Debian dependency hell, where you cannot install packages anymore because of broken dependencies or pending installs. Try this:
sudo apt -f install sudo apt purge jevois-sdk-dev jevois-sdk jevoisbase-platform jevoisbase-host jevois-platform jevois-host jevois-opencv dpkg --remove jevois-sdk-dev jevois-sdk jevoisbase-platform jevoisbase-host jevois-platform jevois-host jevois-opencv
You should end up in a state where dpkg --list | grep jevois
returns no hits and sudo apt -f update
has nothing to update. Then try again from the beginning.
You only need to do this if you want to update to the latest version of JeVois from github. If you just want to create your own machine vision module, all you need is to install jevois-sdk-dev as explained above. The use script jevois-create-module
to create a new module. See how we do it in the Hello JeVois tutorial.
cd git clone https://github.com/jevois/jevois.git git clone https://github.com/jevois/jevoisbase.git git clone https://github.com/jevois/jevois-sdk.git git clone https://github.com/jevois/samplemodule.git git clone https://github.com/jevois/samplepythonmodule.git git clone https://github.com/jevois/jevois-tutorials.git git clone https://github.com/jevois/jevoisextra.git
git pull
command to bring your copy up to date with the master repository.This step is automatic as of JeVois v1.5 and can be skipped for that version and later.
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