Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Content

Excerpt
Table of Contents

Introduction

On this page you will see how to write your own image processing application for iam 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 shown in the diagram below.

Image Modified

Video: Geting started with iam application development

Confluence youtube macro video
privacyEnhancedtrue
fullscreenConfluenceButton
start855
videoIdhttps://youtu.be/U2WP8hcGfN8
alignCenter

See all Video Tutorial Session .

Example Repository

There is a Git repository for this example application: bitbucket.org/net-gmbh/opencv_dice/

Image Modified

How to build your own smart application

Image Modified

Edit Source Code

Adapt two functions of app.h class

  1. GigeEventCallback: defines the behavior of iAMGigEServer comands.

  2. NewBufferCallback: defines the video processing
    note: is renamed to processFrame in newer versions of code

  1. note: GigeEventCallback is renamed to smartFeatureCallback in newer versions of code.

  2. note: NewBufferCallback is renamed to processFrame in newer versions of code.

Bitbucket

Bitbucket readme macro
path/smartDices/src/app.h
repoopencv_dice
usernet-gmbh
commit_hashmaster

Edit XML - define a new GenICam Feature

An example XML can be found here: /opencv_dice/src/master/smartDices/smartDices.xml

  1. Add new feature to CustomControl cathegory, e.g. WhiteBalanceAuto:

    Image Modified

  2. Define new feature values:

    Image Modified

  3. Define new register address:

    Image Modified

  4. Implement processing inside void appClass:: SmartFeatureCallback ( … ) (alias GigeEventCallback) callback. Code snippet can be found in the Info toolbox at bottom left of SynView Explorer.

Image Added

...

Image Added