The Operator Console: Open Source GUI for Imatest IT

September 14, 2016
April 24, 2020

Update: Starting in Imatest 4.5, a pre-built, ready-to-run version of the Operator Console now ships with all Imatest IT Windows installations, allowing users to take advantage of the simplicity of the Operator Console without writing a single line of code. It can be found in the /samples/OperatorConsole directory.

Here at Imatest we recognize that not every company has an in-house team of software engineers to create a user interface for Imatest IT to suit the needs of a production environment. To address this need, we have created the Operator Console, which we are releasing as an open-source Microsoft Visual Studio 2012 project written in C++ on github: QT Operator Console or MFC legacy Operator-Console.

The Operator Console is meant to provide a basic, yet extensible, user interface that provides some of the functionality needed for a production environment. This interface allows the user to perform Blemish or SFRplus tests while capturing from any of the devices supported by the Imatest 4.1 library. (Please note that for Omnivision support there is a special activation process; see Imatest Image Sensor with Omnivision OVTAPantherM for details). Shown below is a picture of the main window where the camera being tested has passed the selection criteria.


Pass/Fail results and display

The Operator Console interfaces with the output from Imatest IT to display to the user whether or not a device has passed and for what reasons it has failed. Show below is a screen capture of the Operator Console which has failed a camera that was misaligned with the chart.

The Operator Console indicates the overall Pass/Fail status near the upper right corner of the window where, in the above screen capture, the Operator Console reports ‘FAILED’. Immediately below that display is the list of criteria that device has failed including, unsurprisingly, ‘Horizontal convergence angle’ and ‘Vertical convergence angle’. The values that the Imatest IT library returned are displayed in the next field below. Lastly, any console output from Imatest IT is displayed in the bottom field. For more information about pass/fail criteria implemented in Imatest IT, please see Imatest IT Pass/Fail operation.

An additional feature that is present for SFRplus tests only are the Quadrant-status overlays (QSOs), which are the green ‘O”s and red ‘X”s shown in the displayed image. The QSOs indicate whether an individual quadrant has passed (in the case of the green ‘O’) or failed (red ‘X’). Note that the QSOs do not track the locations of edges where the SFRplus tests are being performed. For more information about quadrants please see SFRplus special topics: quadrants and saturation.


Other features

  • A password-protected GUI for modifying the pass/fail criteria that are accessible via the ‘Set Pass/Fail’ button
  • A GUI for quickly changing the device from which to acquire accessible via the ‘Setup’ button
  • A secondary window to display the full JSON output accessible via the ‘Show JSON’ button
  • Image acquisition and image tests (e.g. SFRplus,Blemish) are run in their own thread with data transfer through buffers controlled by critical sections

Download and documentation

The source code for this project is found here:

The documentation is at