 |
|
|
Open eVision Libraries
|
|
|
|
General-Purpose Libraries
|
|
Mark Inspection Libraries
|
|
|
Open eVision includes a set of six general-purpose libraries:
|
|
These robust and automatic libraries support a large range of fonts, standards or symbol types.
|
|
|
EasyImage
|
Image processing
|
|
EasyOCV
|
Optical Character Verification
|
|
EasyColor
|
Color calibration and transformation
|
|
EasyOCR
|
Optical Character Recognition
|
|
EasyObject
|
Blob analysis
|
|
EasyBarCode
|
Bar Code reading
|
|
EasyMatch
|
Standard pattern matching
|
|
EasyMatrixCode
|
Data Matrix 2D code reading
|
|
EasyFind
|
Geometric pattern matching
|
|
|
EasyGauge
|
Sub-pixel measurement and dimension control
|
|
|
|
|
Open to All Image Sources
|
|
|
|
The images to be processed may come from a frame grabber,
a scanner, a file, or IEEE1394 (Firewire), GigE Vision or USB cameras.
Color and monochrome images are supported.
|
|
|
|
|
|
|
Sub-pixel Accuracy and Calibration
|
|
Accuracy is of prime importance to most machine vision applications. To meet this requirement, Open eVision’s
metrology (EasyGauge), blob analysis (EasyObject), standard pattern matching (EasyMatch) and geometric pattern matching
(EasyFind) functions all return results with sub-pixel accuracy.
|
|
To further increase the precision of the measurements, Open eVision includes an extensive set of calibration
functions. These functions, after a calibration phase that can be performed from the image of a precise dot grid
or from a list of point coordinates, compensate all measurements for lens distortion (correction of pin cushioning,
barreling), non-square pixels (correction of the pixel aspect ratio) and rotation and perspective distortions.
|
|
They also provide the capability of working in real-world measurement units (such as mils, microns or millimeters),
and support the conversion of coordinates from pixel coordinates to real-world coordinates and vice-versa.
|
|
|
Saving and Loading Images
NEW
|
New image formats supported: JPEG-2000 & PNG
|
|
|
Open eVision supports loading and saving images from/to the disk. In addition to the existing image formats
-BMP, JPEG, TIFF- Open eVision now supports JPEG-2000, PNG (a supports lossless compression) and Serialized
(proprietary image file format obtained from the serialization of the Open eVision image objects) formats.
|
|
On top of this, Open eVision includes an automatic conversion of the file format regardless of the pixel format
from an image on the disc into the best matching Open eVision image object type.
|
|
|
|
Regions of Interest and Flexible Masks
NEW
|
|
The processing speed of an image can be accelerated by focusing on a specific
region of the image (Region of Interest) avoiding interferences from the
remainder of the image. The number of pixels to consider is then reduced.
|
|
The processing of all Open eVision functions can be
restricted to a Region of Interest (ROI). Open eVision
supports nested rectangular ROIs, which are organized
in a hierarchical way in each image.
|
|
|
To add flexibility to the shape of the ROI, Open eVision
supports Flexible Masks for selected functions of the
EasyObject and EasyImage libraries. A mask represents
a two-class segmentation of pixels which separates
the associated image in do-care areas (that must
be considered) and don’t-care areas (that should not be
considered). Flexible masks support complex and disconnected
shapes.
|
|
|
|
|
|
|
Image and Graphic Display
|
|
Open eVision also includes functions to help display the result of the image analysis, and provide interactivity
with the user. For example, Regions Of Interest, EasyGauge measurement gauges, blobs computed with
EasyObject, patterns located with EasyMatch and EasyFind, characters and codes read with EasyOCR, Easy-
MatrixCode and EasyBarCode can easily be displayed on top of the image.
|
|
|
|
NEW
Improved Execution Time Thanks to SSE2 Technology
|
|
|
|
Debugging and Profiling Functions
|
|
Open eVision supports modern error tracing functions, and provides precise execution time measurement functions for application profiling.
|
|
|
|
NEW
Thread-Safety
|
|
Open eVision is multi-thread safe. This means that it is designed to support simultaneous
execution by multiple threads on the same CPU. This is particularly suitable if your application includes
independent tasks and allows them to be executed simultaneously. But this also requires that your application
accepts sharing piece of data to be accessed by only one thread at any given time. Then, you can design such
applications so that each part is controlled by a separate thread. As many threads as required can be created.
|
|
|
|
Supported Environments
|
|
|
|
IDEs versus Programming Languages
|
|
IDE
|
|
Language
|
|
API Module
|
|
|
|
|
|
Microsoft Visual Studio 6.0 ® SP6
|
C++ Basic
|
C++ dll ActiveX Library
|
|
|
|
|
|
Microsoft Visual Studio .NET 2003® SP1
|
C++
|
C++ dll
|
|
|
|
|
|
Microsoft Visual Studio .NET 2005® SP1
|
C++ C#, VB .NET, C++/CLI
|
C++ dll .NET Assembly
|
|
|
|
|
|
Microsoft Visual Studio .NET 2008® SP1
|
C++ C#, VB .NET, C++/CLI
|
C++ dll .NET Assembly
|
|
|
|
|
|
Borland C++ Builder 6.0® Update 4
|
C++
|
C++ dll
|
|
|
|
|
|
|
CodeGear C++ Builder 2009
|
C++
|
C++ dll
|
|
|
|
|
|
|
CodeGear Delphi 2009
|
Pascal
|
.NET Assembly
|
|
|
|
|
Operating Systems
|
|
Open eVision is a 32-bit library that requires a processor compatible with the x86 instruction set, with MMX extensions.
If the SSE or SSE2 extensions are present, they are used, but they are not required. Open eVision 1.1.5 can be used on the
following operating systems:
|
|
Microsoft Windows® OS
|
|
OS version
|
|
Service Pack
|
|
|
|
|
|
New
|
7®
|
64-bit
|
-
|
|
|
|
|
|
New
|
7®
|
32-bit
|
-
|
|
|
|
|
|
Vista®
|
32-bit
|
SP1
|
|
|
|
|
|
XP®
|
32-bit
|
SP3
|
|
|
|
|
|
Server 2008®
|
32-bit
|
-
|
|
|
|
|
|
Server 2003®
|
32-bit
|
SP1
|
|
|
|
|
|
Windows Embedded Standard 2009
|
32-bit
|
-
|
|
|
|
|
|