OpenCV for Raspberry Pi
OpenCV for Raspberry Pi
The OpenCV library for Raspberry Pi allows for the use of numerous algorithms of computer vision and image
processing in an IEC implementation language.
Product description
The library allows for the use of OpenCV (see http://opencv.org/) with an IEC implementation language. Images
taken by a camera, such as the RaspiCam or a USB webcam, can be analyzed and further processed on the
PLC.
In addition to algorithms for object detection including various filters (for example, Canny, Gauss) and functions
for camera calibration, the library contains functions for reading and saving images and other media files.
Scope
The library contains only functions and structures of the C API from OpenCV in Version 2.4.9. Altogether there
are about 480 functions from OpenCV that can be used.
Range of functions
Installing the CODESYS package
Install the package “OpenCV_for_Rasperberry_Pi.package” from the CODESYS Package Manager.
Installing OpenCV on Raspberry Pi
In order to use the library on the Raspberry Pi, OpenCV must already be installed on the Raspberry Pi. The
specific version can be installed using the following command:
sudo apt-get install libopencv-dev=2.4.9.1+dfsg-1+deb8u1.
Setting up the temporary file system
For temporary buffering of images, a temporary file system is required in the /tmp folder.
Commands for setting up the temporary file system:
sudo -s
Add the following lines in the file /etc/fstab (if not already available):
tmp /tmp tmpfs defaults 0 0
Restart the system:
reboot
Installing the OpenCV component for the runtime system
Then the OpenCV component for the runtime system has to be installed.
The Debian package “codesys_raspi_opencv_V3.5.11.0.deb” is located in the installation directory. CODESYS
can be used in order to copy the file (Device => Files) to the root directory of the Raspberry Pi.
Then execute the following commands on the Raspberry Pi:
sudo -s
cd /var/opt/codesys
dpkg -i codesys_raspi_opencv_V3.5.11.0.deb
exit
Now the functions of OpenCV can be used in CODESYS via the library “CmpOpenCV”. The description of the
individual functions is located in the OpenCV documentation (see http://docs.opencv.org/2.4.9/).
Sample project
The package includes the sample project CameraStreamOpenCVExample.project which demonstrates how to
use a camera with a simple linear (Sobel) filter. In addition, the example demonstrates how to display an image
1/3
OpenCV for Raspberry Pi
in the web visualization.
Note: The image is displayed in the web visualization only. The image is not displayed in the integrated
visualization.
Features
Some OpenCV structures have the extension _CDSType in the OpenCV CODESYS library. This is used
for reducing name conflicts between structures and their initialization functions, which are differentiated
in the C-API only by uppercase/lowercase.
For example: cvScalar becomes cvScalar_CDSType
Some OpenCV functions expect the value of an enum as the argument. As these are not available in the
library, the corresponding numeric value has to be specified instead.
For example: cvCvtColor ( img, destination, CV_RGB2GRAY ) becomes cvCvtColor( img, destination, 7)
The values of the enums are described in the online help of OpenCV or in the header files.
2/3
OpenCV for Raspberry Pi
General information
Manufacturer: 3S-Smart Software Solutions GmbH
Memminger Strasse 151
87439 Kempten
Germany
Support: https://support.codesys.com
Item: OpenCV for Raspberry Pi
Item number: 000088
Sales: CODESYS Store
https://store.codesys.com
Included in delivery:
CODESYS package with the following components:
Runtime system extension (Debian package)
Library CmpOpenCV
Sample project
System requirements and restrictions
Programming System CODESYS Development System V3.5.11.0 or higher
Runtime System CODESYS Control for Raspberry Pi V3.5.11.0 or higher
Supported Platforms/ Devices CODESYS Control for Raspberry Pi
Additional Requirements OpenCV 2.4.9.1
Restrictions The library contains only functions and structures of the C API from
OpenCV in Version 2.4.9.
Licensing -
Required Accessories -
Note: Not all CODESYS features are available in all territories. For more information on geographic restrictions,
please contact [email protected].
Note: Technical specifications are subject to change. Errors and omissions excepted. The content of the
current online version of this document applies.
3/3