用于 WINDOWS 架构版 VIMBA

用于 LINUX 架构版 VIMBA

APIs

Vimba 提供了四种 APIs:

Python API 非常适合快速、简单的入门操作应用或者原型构建。

C API 简单易用,是 Vimba 基础 API。同时它也可以用作 C++ 应用的 API。

Vimba C++ API 集成了精心设计的类架构。此 API 的设计具备高效性和精密性,适用于面向对象的高级编程,其中包含了 STL(标准模板库)、共享指针和接口类。如果您倾向使用具有较少设计模式的 API,我们推荐使用 Vimba C API。

.NET API 支持所有 .NET 语言,例如 C#,C ++/CLI 或 Visual Basic .NET。它的总体概念类似于 C ++ API。

所有 API 都具有以下功能:

  • 列出当前连接的相机
  • 控制相机功能
  • 接收来自相机的图像
  • 有关相机连接或断开连接的通知

 

图像转换库将相机图像转换为其它图像格式,并基于原始图像创建彩色图像(去马赛克)。尽管 C 和 C++ API 是分开独立的,但 .NET API 也具有这些功能。因此 .NET 应用程序不必访问图像转换库。

 

这些 API 采用 GenICam 传输层(GenTL)库与相机进行通信。

这些库(Vimba GigE TL,Vimba USB TL 和 Vimba 1394 TL)不能直接通过 Vimba 访问。

实体概述

Vimba 实体的概述粗略解释了它们的基本原理。确切的功能取决于所使用的编程语言。


所有 Vimba API 都使用相同的基础模型来提供实体访问权限。对于面向对象的编程语言,该模型反映在类设计中,但是即使 C API 也通过使用句柄作为不同实体的表示来支持此模型。


系统实体表示 API 本身。因此,只有一个实例可用。在使用其它任何功能之前,应用程序必须初始化系统实体。当应用程序使用完 API 后,它将通过系统实体将其关闭。系统实体内部保存有接口和相机列表,可充当这些实体的主要访问点。

 

相机实体控制物理相机并从相机接收图像。其功能独立于底层接口技术。

 

接口实体表示 PC 物理接口卡上的端口。配置接口卡是接口实体的主要目的。相机可通过系统实体直接访问。

 

包含图像元数据以及相机发送的数据引用(图像和辅助数据)。为了在 Vimba 中使用,它们必须由应用程序创建,然后在相应的相机中排序。接收到图像后,将填充下一个可用帧,并通过专用通知传递给应用程序。在处理完图像数据后,应用程序应该将帧在相应相机中重新排序,并将帧返回至 API。

 

这些 Vimba 实体可以通过以下功能进行控制和设定:

系统功能包含有关 API 全部设定的信息,例如已加载传输层。

 

相机功能可配置相机设定,例如曝光时间或像素格式。

 

 

传输层

传输层(TL)是将数据从相机传输到 PC 上的应用程序。Vimba 内置了用于 Allied Vision GigE、USB 和 1394 相机的 GenICam 传输层(GenTL)。

 

Vimba GigE TL 可选择使用 Vimba 过滤驱动程序,该驱动程序性能高,CPU 负载低。Vimba 过滤驱动程序有 32 位和 64 位两种版本。它与所有 Allied Vision GigE 相机兼容。

 

Vimba USB TL 采用(强制性)Vimba USB 设备驱动程序,该驱动程序有 32 位和 64 位两种版本。它与所有 Allied Vision USB 相机兼容。

 

Vimba 1394 TL 使用(强制性)高性能 intek 驱动程序(提供 32 位版本和 64 位版本),取代了性能低下的 Microsoft 驱动程序。

 

Vimba Camera Link Config TL 提供一个 Clallserial.dll 文件,该文件与 GenICam 兼容图像采集卡的 Clserxxx.dll 文件连接。

 

由于 Vimba 传输层支持 GenICam,因此可通过兼容 GenICam 的第三方软件轻松使用 Allied Vision GigE、USB、1394 和 Camera Link 相机。

功能访问

Vimba 提供了 API 函数(具有 GenICam 功能)未直接涵盖的其他功能。这些功能只能通过 Vimba 中的某些实体进行访问。根据 API 实体概述章节中描述的 API 实体模型,提供功能访问权限的实体为:

  • Vimba 系统,包括用于管理接口和相机的功能。
  • 接口,允许配置硬件接口(例如 GigE 端口)。
  • 相机,允许访问相机设备提供的所有功能以及数据传输功能。
  • 功能以及一些驱动程序功能。
  • 每个帧的辅助数据。

 

Vimba SDK 包含功能参考文档。

入门操作

如果您已安装 Vimba,则随附的 Vimba 快速入门指南将帮助您获取第一批图像,并为您的编程语言和相机接口找到相应的文档和编程示例。