You are here: Start » Overview

Overview

Introduction

Aurora Vision Library Lite is a machine vision library for C++ programmers. It provides a comprehensive set of functions for creating industrial image analysis and image processing applications. The main strengths of the product include the highest performance, modern design and simple structure making it easy to integrate with the rest of your code.

Please note that Aurora Vision Library Lite is a free edition of Aurora Vision Library - much more powerful commercial product. Thanks to its performance and capabilities it is a good choice among other free computer vision libraries.

The library contains data types and functions for basic image processing and analysis. For more demanding computer vision projects we recommend the full edition of Aurora Vision Library.

Relation between Aurora Vision Library Lite and Aurora Vision Studio

Each function of the Aurora Vision Library Lite is the basis for the corresponding filter available in Aurora Vision Studio. Therefore, it is possible (and advisable) to use the Aurora Vision Studio as a convenient, drag & drop prototyping tool, even if one intends to develop the final solution in C++ using Aurora Vision Library Lite.

In the table below we compare the ThresholdImage function with the ThresholdImage filter:

Aurora Vision Library Lite: Aurora Vision Studio:
void ThresholdImage
(
	const Image&			inImage,
	Optional<const Region&>	inRoi,
	Optional<real>			inMinValue,
	Optional<real>			inMaxValue,
	real					inFuzziness,
	Image&					outMonoImage
);
ThresholdImage

Key Features

Performance

In Aurora Vision Library Lite careful design of algorithms goes hand in hand with extensive hardware optimizations, resulting in performance that puts the library among the fastest in the world. Our implementations make use of SSE instructions and parallel computations on multicore processors.

Modern Design

All types of data feature automatic memory management, errors are handled explicitly with exceptions and optional types are used for type-safe special values. All functions are thread-safe and use data parallelism internally, when possible.

Example Program

A simple program based on the Aurora Vision Library Lite may look as follows:

#include <AVL_Lite.h>

using namespace atl;
using namespace avl;

int main()
{
	try
	{
		Image input, output;
		LoadImage("input.bmp", false, input);
		ThresholdImage(input, NIL, 128, NIL, 0, output);
		SaveImage(output, NIL, "output.bmp");
		return 0;
	}
	catch (const atl::Error&)
	{
		return -1;
	}
}

Please note that Aurora Vision Library Lite is distributed with a set of example programs, which are available after installation.

Previous: Introduction Next: Programming Conventions