Documentation – Current v2020.2

The Imatest Image Acquisition Device Manager

The Device Manager allows the user to select and initialize supported image sensors and frame grabbers for direct data acquisition. 

Related pages

Realtime focusing with direct data acquisition – Using direct image acquisition

Supported image acquisition hardware – How to get support for your image acquisition hardware

Introduction

The Device Manager is opened by pressing Device Manager in the Settings dropdown menu or the Device Manager button in the Data tab on the Imatest Master main window. Shown below is an example of the Device Manager in Windows with a small sampling of devices in the Device List. 

The Device List contains the list of supported capture interfaces (‘Image from file’, ‘Epiphan’, ‘Omnivision OVTA’, ‘STM Conduit’, ‘Graphin Easylab’, ‘ON Semi Devware’, ‘IP Camera’ on Windows) followed by the detected devices from other interfaces (‘Microsoft LifeCam VX-7000’, in this example). Many devices will support a number of image capture formats (e.g. different resolutions, color spaces, bit depths, etc.), such as the MJPG_1024x768 format of the VX-7000. After selecting a device, the supported image capture formats will be displayed in the Format List

Selecting a format will cause any available controls to be displayed in the Settings panel and enable the Start preview button.  The controls in the Settings panel allow the user to modify the capture characteristics of the device. Pressing the Save button will save the settings of the current device and select it for acquisition by Imatest Master

device_manager2Device Manager window

System memory

Device Manager will not function correctly if there is insufficient system memory. You’ll get a misleading “Out of memory” error message that makes it appear that Matlab/Imatest is using too much memory.

In Windows, you can see System memory in the Performance tab of the Task manager.

Windows Task Manager Memory display

The critical number is the Available memory, shown in the red circle. If it’s below about 1.8 GB the Device manager may not work properly, at least with the Matlab Image Acquisition toolbox that uses a constantly-refilling circular buffer that requires a lot of memory.

There are several ways to reduce memory use. The Device Manager Process tab displays the memory usage for each program. You can close programs that use excessive memory by right-clicking on the program and selecting End task. A particularly easy way to recover memory is to close web browsers (Firefox, Google Chrome, etc.), then repoen them. When they are reopened, they’ll use a lot less memory, until tabs are opened. (Some websites are real memory hogs.)

Google Chrome has a particularly nice extension called The Great Suspender. Highly recommended. I set my installation to suspend tabs (so they don’t use memory) after 12 hours. They reload very quickly when needed.

Saved settings

After pressing the Save button the settings for the current device are saved to a JSON-formatted file for later use by Imatest Master. For example, after pressing Save in the example above, the following data is written to ‘ImageAcqToolboxSource.json’:

{
   “ImageSource”: {
      “name”: “ImageAcqToolboxSource”,
      “data”: {
         “videoFormat”: “MJPG_1024x768”,
         “adaptorName”: “winvideo”,
         “deviceID”: [1],
         “deviceName”: “Microsoft LifeCam VX-7000”,
         “videoSource”: {
            “BacklightCompensation”: “on”,
            “Brightness”: [128],
            “Contrast”: [43],
            “FrameRate”: “7.5000”,
            “Gamma”: [3],
            “Hue”: [0],
            “Pan”: [0],
            “Saturation”: [48],
            “Sharpness”: [13],
            “Tilt”: [0],
            “WhiteBalance”: [4600],
            “WhiteBalanceMode”: “auto”,
            “Zoom”: [0]
         }
      }
   }
}

In this example, the control values are stored in the ‘videoSource’ sub-object and can be altered, within the bounds allowed by the controls.

By default, the JSON device settings files are saved to, and read from,  the same default directory as the Imatest INI file. You can easily open this directory from the Imatest main window by clicking File, Open INI file folder. The save location can be changed either from the ‘Change folder for device settings files … ‘ item in the Tools menu (see below), or by manually changing the [imatest] ImageSource_JSON_folder key in the Imatest INI file.

Note: As with the Imatest INI file, the device file names must not be changed, otherwise Imatest Master will not recognize them.

Tools menu

In the Tools menu are various items that allow the user to manipulate and view the JSON device file location, as well as refresh the Device List.

device_manager_tools_menu

 

  • ‘Open save location …’: Opens a folder browser to the location in which the device files are currently being saved and read.
  • ‘Load device settings file …’: Opens a file browser that allows the user to select a device settings file to load. Note: Pressing Save after loading a device will overwrite the settings stored in the current save directory.
  • ‘Change folder for device settings files …’: Opens a folder browser that allows the user to change the directory for saving and loading device files
  • ‘Refresh device list’: Refreshes the device list by polling for attached devices on any non-standard interface. Note: Refreshing takes several seconds and is not necessary for the standard supported devices (i.e. ‘Image from file’, ‘Epiphan’, ‘Omnivision OVTA’, ‘STM Conduit’, ‘Graphin Easylab’, ‘ON Semi Devware’, or ‘IP Camera’)

 

Note: Starting in Imatest 5.0, Imatest Master contains all image acquisition features and Imatest IS has been discontinued.