Fast VCR software for XIMEA cameras

XIMEA company is a well-known camera manufacturer with great achievements. The company offers super compact and high quality products with various resolutions, frame rates, bandwidths, USB3 and PCIe interfaces, spectral sensitivities, image sensors, and hardware platforms. XIMEA cameras could be supplied with high performance PCI-Express interface which significantly improves the bandwidth and enables reatime applications for high resolution and high fps cameras.

fast vcr software

You can test any XIMEA camera with their CamTool software, but it's intended just for camera testing or for low fps applications. To overcome that limitation we've developed a GPU-based software to work with XIMEA cameras to allow maximum performance and the highest image quality at realtime. You can download that software from that link and test it with available XIMEA cameras (8/10/12-bit monochrome or bayer).

Why do we need high performance software for XIMEA cameras?

If we have a look at the latest series of SONY Pregius image sensors of the 4th generation, most of them have "high speed" version which means that these image sensors have not only high resolution, but also high frame rate. XIMEA cameras with these image sensors are supplied with high speed USB3 or PCIe interfaces, so they have capabilities to send acquired frames at the maximum bandwidth.

That's true not only for SONY image sensors, the situation is the same with Gpixel and AMS (CMOSIS) as well. Modern machine vision cameras offer both high resolution and high fps, so it's a complicated task to perform relatime processing with high quality and without dropped frames. That is exactly what we can do with FastVCR software which is running on NVIDIA GPU. In our pipeline we've included high quality demosaicing with other image processing modules to take into account color science and high performance requirements.

Machine vision cameras could offer high quality images at realtime, so they are utilized in streaming and broadcasting applications, digital cinema, 3D, AR and VR.

XIMEA cameras

xiC and xiX camera series

The xiC is an extremely diversified and highly modular camera family designed for the Sony Pregius™ image sensor series. It offers multiple choices of combining sensors and interfaces. Even though it is a board stack, for system integrators it has all the benefits of a single board design and is incredibly small.

The xiX cameras are based on the same board-level concept and can stream images to the host computer via 2 lanes on a PCI Express Gen2 bus. Together with minimal latencies and CPU load, the cameras are a perfect fit for embedded vision and multi-camera applications. Thanks to flat flex cabling, the board-level and semi-housed variants allow integration in tight spaces and close proximity between cameras.

Fast VCR software for XIMEA camera control

  • Camera initialization (camera model, resolution, fps, etc.)
  • Input bit depth and pixel format
  • Image resolution and ROI (region of interest)
  • FPS and exposure time
  • Gain
  • Camera bandwidth control
  • Automatic exposure/gain control
  • Optional modes: binning, decimation, dual gain, dual adc, etc.

Fast VCR software: image processing pipeline for XIMEA cameras on GPU

  • Image acquisition
  • Data unpacking
  • Image linearization
  • Dark frame subtraction (FPN)
  • Flat-Field Correction (Shading Correction)
  • Bad pixel removal
  • White Balance / AWB
  • Adaptive Exposure and Gain control
  • High quality demosaicing with MG algorithm
  • Color correction with matrix profile or DCP profile
  • Highlignt recovery
  • Exposure correction (brightness control)
  • Curves and Levels
  • Wavelet-based denoising
  • Crop
  • Rotation (90/180/270 degrees) and flip/flop
  • Resize (downscale and upscale)
  • Sharpening (local contrast)
  • Gamma transform
  • JPEG compression and storage to SSD
  • Optional conversion to NV12 and h264/h265 encoding and streaming via RTSP
  • Realtime output to monitor

Fast VCR software outputs

  • Output to monitor via OpenGL in real time
  • Camera statistics
  • Encoding to JPEG and store images to SSD
  • Video encoding to MJPEG (AVI), H.264/H.265 (MP4) and storage to a container on SSD
  • Low-latency video streaming via RTSP
  • Real time RAW/PGM/DNG data storage to SSD (compressed or uncompressed)
  • Interoperability with third-party GPU-based SDKs
  • Interoperability with GPU-based neural network applications

Optional image processing modules on GPU

  • RAW frames capture, preview and storage to SSD
  • Histograms for raw and processed data
  • Curves and levels for RAW, RGB, HSV
  • DCP support
  • 3D LUT support
  • Geometric and affine transforms
  • Undistortion via fast remap
  • Chromatic aberration suppression at RAW domain
  • LCP support
  • HDR support
  • Local and global tonemapping
  • SDI output support
  • Multiple camera support
  • Fast replay (synchronized viewer) solution for multicamera systems
  • High performance JPEG2000 and Raw-JPEG codecs
  • Automatic realtime partitioning of AVI/MP4 video files to the specified file size
  • Interoperability with FFmpeg
  • Scripting via python
  • Camera and lens calibration (CPU/GPU)
  • GenICam (GenTL) support to work with Basler, EVT, Flir, Lucid, Daheng and other cameras
  • Much more...
fastvideo sdk

All the above features are designed on the basis of our CUDA image processing SDK. Now our customers have an opportunity to utilize GPU-accelerated software components in their applications as a part of video processing pipeline. Here you can find other benchmarks for our SDK.

Apart from FastVCR software, we are offering custom software design to build a solution according to customers' requirements. We can implement application-specific modes of operation to solve the task you need. Please fill the contact form below with your project info and send it to us.

Software downloads

Other blog posts on the subject

Contact Form

This form collects your name and email. Check out our Privacy Policy on how we protect and manage your personal data.