Interface high-quality cameras with OpenCV Python
Open Computer Vision (OpenCV) is an open-source BSD licensed image processing bundle. It was developed to offer a shared repository of computer vision applications while increasing machine perception in commercial products.
With over 18 million downloads, it contains functions for all types of image processing functionality from necessary image decoding, enhancement, color space conversion, object detection, object tracking, and so on.
Main features of OpenCV
- Equipped with C++, Python, Java, and MATLAB interfaces
- Supports Windows, Linux, Android, and Mac OS
- Enhances real-time vision applications
- Written natively in C+, with a templated interface
See3CAM series and OpenCV: The perfect match
Using OpenCV Python, e-con Systems™ has developed the sample command line-based application to interface our See3CAM series USB 3.0 cameras. All See3CAM series of cameras are UVC compatible, and they don’t require additional drivers to be installed.
OpenCV applications, by default, provide standard UVC controls like brightness, contrast, saturation, etc. However, they do not support access controls like auto exposure, autofocus, and auto white balance – commonly known as AAA functions.
To overcome this challenge, e-con Systems™ has developed the OpenCV Python application to support both standard UVC controls and AAA functions. The application also extends the support for seamless streaming and high-quality image capture in both Windows and Linux Operating Systems.
Why See3CAM series?
- See3CAM is the USB 3.0 camera series from e-con Systems™. These cameras are UVC-compliant that has Plug & Play support which does not require to install additional device drivers manually
- See3CAM series has a wide range of cameras from 2MP to 16MP with M12 based Fixed focus lens and Autofocus variants
- See3CAM cameras support Windows, Linux, Android, and Mac OS with sample applications
Let us dive into how to use the See3CAM camera with e-con Systems™’ OpenCV application in Python.
Host PC: Ubuntu-16.04 and 18.04 (Linux) and Windows 8
OpenCV Version: 3.3 and 3.4.1
Python Version: 3.6.8
Tested e-con Cameras:
- See3CAM_CU135 – 13MP 4K USB Camera
- See3CAM_CU30 – 3.4 MP Low Light USB Camera
- See3CAM_CU55 – 5MP Low Noise USB Camera
- See3CAM_20CUG – 2MP Global Shutter Monochrome Camera
- See3CAM_CU20 – Wide temperature range USB3 HDR Camera
- See3CAM_10CUG – 1.3 MP Global Shutter USB3 Camera
The application can support basic features such as:
- Enumerating and listing all the connected video devices ss
- Changing color space/compression, resolution, and frame rate for a video stream
- Capturing still images and setting the path to store them
- Configuring UVC controls supported by the camera
Application user manual and installation guide can
be found from the following link:
To build the OpenCV Python sample application from source, refer the “OpenCV Python Installation Manual”
To run the OpenCV Python Prebuild Binary in both Windows and Linux, you may refer to the “OpenCV Python Prebuild Usage Manual”
How to launch the application in Ubuntu:
- Open the terminal window and navigate to the directory “Source/PythonScript” folder path
- Run the python script with $ sudo python3 main.py
The devices connected to the PC will be displayed as below:
How to launch the application in Windows:
- Open the command prompt window with script path
- Run the python script with “Python main.py”
The devices connected to the PC will be displayed as shown below.
The modified OpenCV package also has the option to access See3CAM cameras in OpenCV C++ as well.
For more information, please contact firstname.lastname@example.org