Camera Selector
{{ totalBookmarksCount }}
Bookmarks

Vimba SDK

Vimba is a comprehensive software suite:

  • Acquire images and explore camera features without programming.
  • Program your vision applications with C, C++, .NET or Python APIs.
  • Connect to third-party libraries and frameworks.
  • ... and more!
  • Download Vimba

 

Supported platforms and portability

Vimba is platform-independent

Vimba 5.0 runs on Windows, Linux, and Linux for ARM. You can port your source code from Windows to Linux or cross-compile from a Linux PC to an embedded system.

Vimba 5.0 was tested with:

  • Windows 10 (64-bit and 32-bit) Windows 7 (64-bit)
  • Ubuntu 20.04 LTS, Debian 10, CentOS 8.3 (all tested distributions: 64-bit)
  • NVIDIA Xavier NX with JetPack 4.5.1 (L4T 32.5.1), Raspberry Pi 4 with Raspberry 10 buster 5.10.17

In most cases, Vimba is also compatible to higher versions or other Linux distributions.

Supported camera interfaces

Support of various camera interfaces

Vimba's transport layers support Allied Vision cameras with the following interfaces:

  • NEW: 5 GigE Vision (Windows, Linux, Linux for ARM)
  • GigE Vision (Windows, Linux, Linux for ARM)
  • USB3 Vision (Windows, Linux, Linux for ARM)
  • IEEE 1394 (Windows only)
  • Camera Link (Windows only, configuration only)

In contast to proprietary solutions,  GenICam is THE standard for plug & play handling of cameras and devices. GenICam APIs are independent of the operating system, camera interface, and camera sensor, so that you can always reuse your source code. As a member of the EMVA (European Machine Vision Association), Allied Vision actively contributes to the further development of GenICam.

C, C++, .NET, and Python APIs

From quick prototyping to sophisticated development

Vimba provides APIs for C, C++, .NET, and Python. For each API, programming examples and an extensive user documentation are available. To get started, we recommend reading the Vimba Quickstart Guide, which is part of the Vimba installation.

 Vimba provides four APIs:

The Python API is perfect for a quick and easy start or for prototyping.
The C API is Vimba's basic and easy-to-use API. It can also be used as API for C++ applications.
The C++ API has an elaborate class architecture. It is designed as a highly efficient and sophisticated API for advanced object-oriented programming including the STL (standard template library), shared pointers, and interface classes. If you prefer an API with less design patterns, we recommend the Vimba C API.
The .NET API supports all .NET languages, for example, C#, C++/CLI, or Visual Basic .NET. Its general concept is similar to the C++ API.

All APIs cover the following functions:

  • Listing currently connected cameras
  • Controlling camera features
  • Receiving images from the camera
  • Notifications about camera connections or disconnections


The Image Transform Library converts camera images into other pixel formats and creates color images from raw images (debayering). While this is separated for the C and C++ API, the .NET API includes these functions. Therefore, a .NET application does not have to access the Image Transform Library.


The APIs use GenICam transport layer (GenTL) libraries to communicate with the cameras.
These libraries cannot be accessed directly through Vimba.

Vimba's architecture for Windows:

Vimba's architecture for Linux:

GenICam third-party software, Cognex VisionPro, OpenCV, GStreamer

Connect to third-party libraries

As of Vimba 5.0, we offer the gst-vimbasrc GStreamer source element - a plugin to access Vimba from GStreamer pipelines.
gst-vimbasrc uses recorded Vimba frames and pushes them out via src pad. We provide gst-vimbasrc on GitHub:

Visit GitHub.com/Alliedvision

Do you want to use your Allied Vision camera with a GenICam-compliant third-party software? Vimba's transport layers automatically connect  to third-party software, for example, MATLAB, OpenCV, Halcon, CVB, and many more. Moreover, the SDK contains the Vimba Cognex Adapter for VisionPro including a user manual.

Application notes:

If you want to use OpenCV, take a look at the AsynchronousGrab example, which is included in the Vimba installation.

More information about third-party libraries

Drivers, Viewer, Image Transform library

Vimba - a comprehensive suite

Vimba is a comprehensive software suite including drivers for best performance on Windows and the Vimba Driver Installer application.

With the Vimba Viewer application, you can instantly view images and explore camera features without programming. Additionally, you can save your camera settings and quickly use them with any Vimba API.

With Vimba's Image Transform library, you can output several pixel formats.

Vimba includes programming examples and an extensive user documentation.

Download Vimba for Windows, Linux, and Linux ARM

Download Vimba for free

Hint for Vimba 4.xx users:

Compared to Vimba 4.xx, Vimba 5.xx additionally offers 5 GigE Vision support and bugfixes. You can use the APIs as you are used to from Vimba 4. For details, please see the Release Notes for you operating system.

Windows:

Vimba_v5.0_Windows Release Notes

Linux:

Vimba_v5.0_Linux Release Notes

Vimba_v5.0_ARM64 Release Notes

Vimba_v5.0_ARM32 Release Notes