O-3000 Camera in Action
New Demo App Shortens the Way to Own Vision Solution
With the demo app the potential of the O-3000 cameras can be easily and playfully explored. Also, the program helps the user find their own solution quickly. The disclosed source code can be easily adapted and expanded to own needs. The demo application is available for Linux and Windows.
For many years, the Swiss Technology Company Stettbacher Signal Processing AG (SSP) has developed its own O-3000 industrial cameras. The cameras are small and lightweight but offer an interesting range of functions. The main characteristic of the cameras is the driver’s and communication log’s total disclosure. So, the cameras aren’t bound to any software or computer architectures but among other things are useful for special vision applications, where classic standard solutions aren’t an option, due to price, size, power consumption, interfaces, access to information, etc.
Picture 1: Demo Application, Settings of the Camera.
To discover the O-3000 camera’s various abilities, SSP now offers a completely new and attractive demo application that was developed in C++ and QML/Qt and is easily handled, on its website. Two goals are pursued: Firstly, the user should be able to explore the camera’s functions and abilities quickly and easily. Secondly, the demo application is importantly helpful if the user wishes to realize his own vision solution. In this case, the disclosed source code of the demo software can serve as a manual or even as a starting point by modifying or expanding the disclosed code according to own needs. After the installation and start of the demo app on a Linux or Windows PC the main screen opens. If an O-3000 camera is already connected to the computer via USB, then the real-time image of the camera immediately appears. Otherwise, the software waits for the camera. The app supports all O-3000 camera models. The main screen has three buttons that open sub screens. Those are for the settings of the camera, the configuration of the color pipeline and for a selection of filters that can be applied onto the picture optionally. Every modification in these settings immediately affect the real-time picture. Besides, two buttons are available, one for the recording and the other for the storing of a picture or a video.
Image 1 shows the sub screen in several tabs for the camera settings. Here, the frame rate and the exposure can be set. For example, if the manual exposure I set, the exposure time and sensitivity, meaning the sensor amplification, can be modified individually. This makes good recordings possible, even with unfavorable exposure conditions. Via the further tabs the options for picture sections (Region of Interest, ROI) are accessible, as well as the mirroring of the picture, the binning, the color gains and the external sync-signals of the camera. There is also the possibility to return to the default values with only one click at any time. A help button shows short explanations of the possible settings.
Picture 2: Original Picture of the Camera (On the Left) and the Same Picture After the Color Pipeline (On the Right).
Industrial color cameras don’t automatically deliver colorfast recordings. This has to do with the three color channels (red, green, blue) which must be weighted correctly depending on the exposure and scenery. For this purpose, the demo app contains a color pipeline which was implemented in the driver specially for the O-3000 camera series. The color pipeline has an automatic white balance and a color calibration which usually provide outstanding pictures immediately. Picture 2 shows a recording before and after the application of color correction. Also, visible on the picture is the application of another important function to the captured image, namely the lens correction. Above all, objectives with short focal length massively distort the picture. On the upper left side of picture 2 this is particularly shown in the distorted dark rectangle. On the right side of the picture the distortion is corrected. In the same section as the color pipeline, there is also a picture sharpening function. Here, blurred edges in the picture are sharpened. Lastly, there is a gamma correction which adapts the differences in brightness in the picture to the non-linear perception of the human eye. All these functions are efficiently implemented to the driver in the camera, are calculated for every frame in real-time and eventually result in outstanding pictures.
Picture 3: Zoom of a Picture Section.
The demo app has another inventive function, which must be mentioned in this context: The applicator can zoom into the real-time picture with the computer mouse as deeply until the individual pixel become visible. If the pixels of the picture are displayed big enough, the RGB value of every single pixel is shown automatically in real-time. This is shown in picture 3.
OpenCV and OpenCV2 libraries are included in the demo application as well. These are among the largest and most widely used graphics libraries. They are also open-source. As an example for the integration, some well-known image processing algorithms from it were integrated into the demo software, such as smoothing, edge detection, morphological transformations, histograms and threshold functions. Picture 4 shows a captured picture before and after edge detection.
In conclusion, the free demo app is a very universal and helpful tool, which supports applicators of the O-3000 cameras with the evaluation of the camera, but also with the development of algorithms for the picture processing and eventually with the writing of own software in a unique way.
Picture 4: Edge Detection with a Gradient Method.