...
On this page you will see how to write your own image processing application for iam camera and stream the result over iAMGigEServer to a host system.
Info |
---|
The iam linux system contains build tools therefore it is possible to compile native on the camera. More Details can be found here Pre-Installed Open Source Libraries |
The application is skedded up shown in the driagram diagram below.
...
Video: Getting started with iam application development
Confluence youtube macro video | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
See all Video Tutorial Session .
Example Repositories
Small and simple example applications:
Example Name | Compiling | Discription | Repository |
---|
...
sw_remap_synview | nativ/cross | The example remap_synview uses the function cv::remap from OpenCV. After processing the image is sent out via GigE Server. | |
---|---|---|---|
sw_remap_boxfilter_synview | nativ/cross | The example sw_remap_boxfilter_synview uses the cv::remap and cv::boxfilter function from OpenCV. It demonstrates the execution of multiple sw- and hw-functions in different processing threads. The connection between the threads is established with two image-buffers. One is written, the other is read and vice versa. After processing the image is sent out via GigE Server. | |
sw_scaler_synview | nativ/cross | The main processing consists of a simple c-code scaler for horizontal and vertical rescaling. After processing the image is sent out via GigE Server. |
The Git repository for the presented example application: bitbucket.org/net-gmbh/opencv_dice/
...
How to build your own smart application
...
...
Edit Source Code
Adapt two functions of app.h class
...
GigeEventCallback
: Defines the behavior of iAMGigEServeriAMGigEServercomands.NewBufferCallback
: Defines the video processing
Note: Is renamed toprocessFrame
in newer versions of code
Note:
GigeEventCallback
is renamed tosmartFeatureCallback
in newer versions of code.Note:
NewBufferCallback
is renamed toprocessFrame
in newer versions of code.
Bitbucket readme macro | ||||||||
---|---|---|---|---|---|---|---|---|
|
...
Edit XML -
...
Define a new
...
GenICam Feature
Example An example XML can be found here: https://bitbucket.org/net-gmbh/opencv_dice/src/master/smartDices/smartDices.xml
Add new feature to CustomControl cathegory, e.g. WhiteBalanceAuto:
...
Define new feature values:
Define new register
...
address:
...
Implement processing inside
void appClass:: SmartFeatureCallback ( … )
...
(alias
GigeEventCallback
) callback. Code
...
snippet can be found
...
in the Info
...
toolbox at bottom left of
...
SynView Explorer.
...