Zebra Aurora Vision Library
Designed for experienced programmers proficient in vision applications, Aurora Vision Library provides the same sophisticated functionality as our Aurora Studio software but presented in programming language.
Zebra Aurora Vision Library™ is a machine vision library for C++ and .NET programmers. It giving instant access to code that you need for your machine vision projects.
Zebra Aurora Vision Library™ provides a comprehensive set of functions for creating industrial image analysis applications – everything from standard-based image acquisition interfaces and low-level image processing routines to ready-made tools, such as template matching, measurements, or barcode readers
Popular Tutorials
Documentation

Beginner

Installation

Aurora Vision Library is designed to be a part of applications working under control of the Microsoft Windows operating system. Supported versions are: 7, 8 and 10, as well as the corresponding embedded editions.

Beginner

Project Configuration

Aurora Vision Library is designed to be used as a part of C++ projects developed with Microsoft Visual Studio in versions 2015-2019.

Intermediate

Using Library on Linux

Aurora Vision Library is designed to be used with GCC compiler on Linux x86_64, embedded ARMv7-A and ARMv8-A systems.

Beginner

Image Processing

There are two major goals of Image Processing techniques...

Beginner

Blob Analysis

Blob Analysis is a fundamental technique of machine vision based on analysis of consistent image regions. As such it is a tool of choice for applications in which the objects being inspected are clearly discernible from the background.

Beginner

1D Edge Detection

1D Edge Detection (also called 1D Measurement) is a classic technique of machine vision where the information about image is extracted from one-dimensional profiles of image brightness.

Intermediate

1D Edge Detection – Subpixel Precision

One of the key strengths of the 1D Edge Detection tools is their ability do detect edges with precision higher than the pixel grid.

Intermediate

Shape Fitting

Shape Fitting is a machine vision technique that allows for precise detection of objects whose shapes and rough positions are known in advance. It is most often used in measurement applications for establishing line segments, circles, arcs and paths defining the shape that is to be measured.

Beginner

Template Matching

Template Matching is a high-level machine vision technique that identifies the parts on an image that match a predefined template. Advanced template matching algorithms allow to find occurrences of the template regardless of their orientation and local brightness.

Intermediate

Using Local Coordinate Systems

Local coordinate systems provide a convenient means for inspecting objects that may appear at different positions on the input image.

Beginner

Optical Character Recognition

Optical Character Recognition (OCR) is a machine vision task consisting in extracting textual information from images.

Beginner

Getting Started with Aurora Vision Library .NET

Aurora Vision Library is designed to be a part of applications working under control of the Microsoft Windows operating system.

Intermediate

AVL.NET - AVL Relation

AVL.NET is an AVL wrapper which means that when we call AVL.NET functions, we actually call native AVL functions. That requires the AVL.dll library to be present in the same location as the AvlNet.dll assembly when running the application that references AvlNet.dll assembly.

Beginner

AVL.NET Designers

It is possible in AVL.NET to edit geometrical primitives the same way as in Aurora Vision Studio. All that need to be done is to reference the following assemblies:

Intermediate

HMI Controls for AVL.NET

It is possible to use a subset of HMI Controls, available in Aurora Vision Studio HMI Designer, in an AVL.NET based Windows Forms .NET application.

Intermediate

Performance Tips

Developing applications, that target runtimes with automatic memory management (e.g. .NET Framework), in many scenarios takes off the responsibility of freeing memory thanks to the Garbage Collector concept.

Intermediate

Code Migration Guide to version 4.11

Aurora Vision Library 4.11 brings many optimizations and API changes that may make user code invalid after upgrade from older Aurora Vision Library versions. The same applies to the Macrofilter .Net Interface assemblies generated in the Aurora Vision Studio.

Intermediate

Aurora Vision Library .NET Usage

Aurora Vision Library functions are static methods of the AVL class, which as well as all other assembly types, are collected in the AvlNet namespace (see the Class Reference to browse the assembly content).

Advanced

Function Reference

View all functions available

Advanced

Classes

View all classes available

Beginner

Interfacing with Other Libraries

Aurora Vision Library contains the avl::Image class which represents an image. This article describes how to create an avl::Image object with raw data acquired from cameras, and how to convert it to image structures specific to other libraries.

Beginner

Loading Aurora Vision Studio Files (AVDATA)

Aurora Vision Studio has its own format for storing arbitrary objects - the AVDATA format. It is used for storing elements of the program (paths, regions etc.) automatically, or manually when using "Export to AVDATA file" option or the SaveObject and LoadObject generic filters.

Intermediate

Working with GigE Vision® Devices

Aurora Vision Library contains a GigE Vision subsystem with a set of functions for interfacing with GigE® Vision devices (GigE Vision category), and to access device configuration using GenApi interface (GenApi category).

Beginner

Working with GenICam GenTL Devices

GenICam GenTL is a standard that defines a software interface encapsulating a transport technology and that allows applications to communicate with general vision devices without prior knowledge of its communication protocol.

Intermediate

Processing Images in Worker Thread

Aurora Vision Library is a C++ library, that is designed for efficient image processing in C++ applications. A typical application uses a single primary thread for the user interface and can optionally use additional worker threads for data processing without freezing the main window of the application.

Beginner

Troubleshooting

This article describes the most common problems that might appear when building and executing programs that use Aurora Vision Library.

Intermediate

Memory Leak Detection in Microsoft Visual Studio

When creating applications using Aurora Vision Library in Microsoft Visual Studio, it may be desirable to enable automated memory leak detection possible in Debug builds. The details of using this feature is described here: Finding Memory Leaks Using the CRT Library.

Intermediate

ATL Data Types Visualizers

Data visualizers present data during the debugging session in a human-friendly form. Microsoft Visual Studio allows users to write custom visualizers for C++ data. Aurora Vision Library is shipped with a set of visualizers for the most frequently used ATL data types: atl::String, atl::Array, atl::Conditional and atl::Optional.

Related News