This tutorial briefly explains how to use AVL with QtCreator IDE.
A brief demo of HMI controls using Adaptive Vision library for .NET (c#)
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.
Aurora Vision Library is designed to be used as a part of C++ projects developed with Microsoft Visual Studio in versions 2015-2019.
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.
There are two major goals of Image Processing techniques...
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.
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.
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.
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.
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.
Using Local Coordinate Systems
Local coordinate systems provide a convenient means for inspecting objects that may appear at different positions on the input image.
Optical Character Recognition
Optical Character Recognition (OCR) is a machine vision task consisting in extracting textual information from images.
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.
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.
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:
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.
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.
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.
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).
View all functions available
View all classes available
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.
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.
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).
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.
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.
This article describes the most common problems that might appear when building and executing programs that use Aurora Vision Library.
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.
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.