TechTips

Parameterizing instead of Programming: The faster way to camera setup

Each camera application starts with the camera setup. The IDS Software Suite programming interface (API) gives you full control over the camera image and acquisition in your own application. Each new software update offers more setting possibilities.

But extensive settings has one drawback: You have to program each setting you want to use with static parameters or provide a graphical user interface for parameterizing. The more you diverge from the standard settings or the more setting possibilities you offer in your application, the greater will be the effort for programming.

About 2/3 of all functions of the IDS Software Suite API addresses the settings of the camera image and the image acquisition. Only 1/3 of all functions are necessary in the cameras operating state.

The optimum setting is an important requirement for each application running effectively. Spending time and effort establishing these settings is quite justified.

But is this a recurring effort for each application or could this initial setting be separated for reusing respectively?

Background

Generally a camera is running with its current settings until you close it in your application. All your adjustments will be lost. After restarting the camera will work with its default settings.

One particular case is an undesired connection termination of a running camera. In this special situation, the camera driver remains working. So after the reconnection, the previous state of the camera setting will be restored. This special "Reconnect" functionality of the IDS Software Suite runs automatically without you having to do something for it.

Wouldn’t it be ingenious to reuse the camera settings also in regular operating mode? That works! The IDS software suite programming API provides the capability to save the actual settings of a running camera and recover it on a later point of time.

Saving camera settings

You can save the camera setting in an *.ini file or in the non-volatile user memory of the camera.

As ini file

Save settings as ini file
  • Save different settings in multiple ini files.
  • ini files have to be loaded explicitly after opening a camera.
  • You can read and edit ini files in a text editor. So you have the possibility to copy and change the settings.

In the camera

Save settings in the camera’s
non-volatile memory
  • The camera’s non-volatile memory can only store one parameter set.
  • Auto-load: Unlike a parameter file, the camera’s internal parameter set could be loaded automatically when opening the camera. The behavior when opening a camera could be controlled by the IDS Camera Manager. Read chapter “Camera configuration – IDS Camera Manager”.

Load camera settings

Load saved settings

Once stored, a parameter set could be loaded into the camera by each application. Only camera-specific ini files can be loaded.

So your application must not necessarily include the setting options for the camera. You can do the initial launch and pre-configuration comfortably via the uEye Cockpit and save the camera settings in one or multiple parameter sets.

Restrictions

  • Lookup-table values (LUT) will not be stored in general parameter set. Use the separate function “is_Lut()” instead. So you can load predefined LUT values into the camera or you can store your own LUT as a file or load from a file.
  • Saving multiple AOI parameters is only supported by some special sensor models.

For further information about saving parameter sets, refer to the uEye manual.

Camera configuration

uEye Cockpit

Load/save camera settings with
uEye Cockpit

With the uEye Cockpit, you can control all important camera functionalities, which are provided by the programming API. Without programming effort you can try everything and simply adjust the camera for your application. With many dialogs and automatics, it is the perfect configuration tool for IDS cameras. In addition to the camera configuration possibilities, also saving and loading of settings is implemented.

So open your camera in the uEye Cockpit and adjust the desired options. To save a suitable camera setting, open the menu “File > Save parameters” and choose a file or the camera’s internal memory as the setting’s location.

Attention: When saving a setting in the camera’s internal memory, an already present setting will be overwritten without notification.

If you want to apply a previously stored parameter set into the camera, choose the location of the parameter set you want to use via the menu “File > Load parameter”.

IDS Camera Manager

IDS Camera Manager – additional function
"Load parameter set"

The IDS Software Suite provides another simplification applying a previously saved parameter set in the camera‘s memory. With the IDS Camera Manager you can choose whether to apply the parameters stored on the camera automatically when opening the camera instead of the default values.

This is a global setting which is applied to all connected cameras. If no parameters are stored on the camera, the standard parameters for this camera model are applied.

Customer application

  • If you want to load stored camera settings explicitly, use the uEye API function “is_ParameterSet()”. It uses different commands loading or storing parameters of an ini file or the camera’s internal parameter set.
  • If you want to use the auto configuration when opening a camera, you have to change the standard behavior. Use the function parameter IS_CONFIG_INITIAL_PARAMETERSET_CMD_SET in conjunction with the API function “is_Configuration()” to apply the internal parameter set when opening the camera.

More information and code samples using the API functions "is_ParameterSet()" and "is_Configuration()", you can find in the uEye manual.

Summary

Saving current camera settings for later reuse is no new functionality of the IDS Software Suite. With many new camera features as the IDS line scan mode or multi AOI there are several useful configuration possibilities. In conjunction with the uEye Cockpit, you have a powerful tool which helps you, to save a lot of time.

The high effort, programming the camera configuration on your own, is eliminated. All possible settings are implemented in the uEye Cockpit already. You only have to choose, activate, adjust, parameterize and save. Configuration takes only a few clicks.

If you use different running modes in your application, you can profit from previously saved camera settings which helps to switch modes very fast. Reusing saved camera settings results in identical operation conditions of your camera and reproducible results of your application. In addition you can use them in any application.

These benefits may help you developing an image processing application. Configure your camera with the uEye Cockpit suitable for your application and save the settings. Reopen the camera with one of our 3rd party interfaces and reload the camera settings. Don’t worry about programming the camera, concentrate on your image processing application.

The effort of programming for embedded applications is much higher, because of the need for cross compilation. And missing display or keyboard connectors often prevent setting up a camera directly on the embedded system. Especially in a situation like this, the pre-configuration of the camera settings with the uEye Cockpit is invaluable.

For further information on uEye camera configuration, refer to the uEye manual at http://en.ids-imaging.com/manuals-ueye.html.


© 2016 IDS Imaging Development Systems GmbH