The implementation of image compression directly in the camera offers many advantages for system design and flexible, cost-effective use.
Low bandwidth: A high compression rate with good image quality enables the use of high resolution and frame rate and low bandwidth at the same time. For example, for the transmission of full HD color images at 300 fps GigE with approx. 100 MB/s is sufficient.
Flexible system design: Compared to USB, a much higher frame rate is available allowing more flexibility with regard to cable lengths up to 100 metres. This also enables the use of GigE switches, the implementation of multi-camera synchronization via PTP or the use of a 10 GigE uplink via fibre optic cable for very long transmission distances of up to 10 kilometres.
Reduction of the CPU load: In the PC there is no CPU load for color calculation, conversion to YCbCr and image compression. The requirements for main memory size and bandwidth of the storage medium are thus significantly reduced. The reduced storage space requirement also allows for much longer recording times.
Function principle of JPEG image compression
In 1992 the standard ISO/IEC 10918 was published by the Joint Photographic Experts Group (JPEG) and comprises several parts, in particular the actual compression of individual photos as well as the format for saving JFIF (JPEG File Interchange Format). It is one of the most widely used image formats.
The compression is done in several substeps. Color images are converted from the RGB color space to the YCbCr color model. The model consists of the luminance Y (brightness) and the two color components Cb (blue-yellow chrominance) and Cr (red-green chrominance). The color information is reduced by low-pass filtering and undersampling. In doing so, advantage is taken of the fact that the human eye resolves colors significantly lower than differences in brightness.
After conversion, each component (Y, Cb and Cr) is divided into 8×8 blocks and its discrete cosine transformation (DCT). The actual data reduction is achieved by a subsequent quantisation. The final step of the image compression is a frequency-correlated re-sorting of the coefficients and an entropy coding. For high performance, these processes can be executed in parallel.
JPEG compression is generally lossy, as the image quality is reduced. For monochrome images, a compression ratio in the range of 5:1 is visually lossless. At a rate of 10:1, the quality is sufficient for many applications. However, higher compression rates lead to strong artefacts in the image such as blocking and steps at edges. When using RGB color images, compression ratios of 12:1 for visual lossless or 35:1 for good quality can be used.
Realization in the LXT cameras
LXT cameras are based on modern CMOS sensors with high resolution and speed. Uncompressed images are transferred directly to the PC via the fast 10 GigE interface. JPEG compression can be optionally activated as a feature in Camera Explorer or SDK. For this purpose, a pixel format suitable for the application must first be selected (Mono8 or YCbCr422_8). Afterwards, the integrated JPEG image compression can be activated by the parameter “Image Compression Mode” = JPEG simply by pressing a button.
The JPEG compression rate can be flexibly configured in the range 30–100% via the “Image Compression Quality” parameter and thus enables an individual adjustment of the image quality to the respective application.
Monochrome or color 8-bit images are supported. A high-quality color calculation (partly in a 5×5 environment) as well as conversion to YCbCr422_8 is carried out for color cameras. JPEG image compression is sequential with full sensor performance. The additional latency due to compression can be neglected. The implementation is based on the GigE Vision 2.0 standard per JPEG payload type. The generated JPEG stream contains all headers and can be saved directly into a JPEG file. A timestamp and the ROI position in the JPEG stream are also transmitted in the metadata. A preview image or parallel transmission of original and JPEG image is not provided.
Application examples
JPEG image compression can be used wherever image sequences are needed over a longer period of time. Especially if the bandwidth of the transmission or the storage medium is limited or the PC cannot perform the additional processing, e.g. for several cameras. Since the image quality is somewhat reduced compared to the original, use for metrological applications is not recommended.
Various software options are available for easy integration and use of the VLXT.JP cameras.
OEM customers: If the cameras are to be integrated into own applications, the Baumer GAPI SDK is available. There, examples demonstrate the configuration, image acquisition and saving as a .jpg file. With libraries such as FFmpeg, videos can also be created directly from the individual images.
End user: If the cameras are used directly by end users, Baumer Camera Explorer can be used. In the easy-to-use graphical application, the cameras can be parameterized and images can be captured and displayed. Additional functions such as high-speed recording in the main memory or directly on the hard disk, ring memory management with trigger via I/O event and video generation are also available. By supporting the LXT.JP cameras, for example, the transmitted compressed data stream can also be decoded directly for visualisation or saved as a .jpg file. The Camera Explorer thus enables long-time recordings for the capture of high-speed sequences directly onto a USB hard disk.
Third party software for video recordings: NorPix offers software and solutions for digital video recording. With the StreamPix or TroublePix packages, one or more cameras can be used for high-speed sequences. Typical areas of application are fault analysis of machines and systems in an industrial environment. Baumer VLXT-06M.I.JP cameras are used, for example, to monitor production facilities. With up to 1500 fps at 800×600, they enable very high spatial and temporal resolution. Thanks to JPEG compression, a very long recording time of 189 hours can be achieved as well.
Third party software or motion analysis: The motion analysis software TEMPLO by CONTEMPLAS GmbH enables motion and posture analyses in the health and sports sector. The system solution consisting of hardware and software is aimed at professional end users and is distributed and used worldwide. The 3 MP color camera VLXT-31C.I.JP from Baumer, for example, with frame rates of up to 300 fps at full HD for analyses in high-performance sports such as swimming and handball.
Third party software for video analysis in the sports sector: Kinovea enables, for example, the tracking of objects or the measurement of speed and angle with a variety of tools. As a free open-source solution, it is used, for example, in the university environment and amateur sports. VLXT.JP cameras from Baumer are directly integrated and enable very high performance, easy synchronization and excellent robustness.