mViz, comprehensive machine vision library

info@visionforvision.eu
Image Processing
The processing functions are used to prepare the image by reducing unwanted nuisances such as noise or blur, or enhance some properties such as connexity of characters, contrast… They usually turn images into other images.
This function set comprises point-to-point operations such as pixel arithmetic, lookup table transforms or shading correction. It also handles geometric transforms like rotation and scaling that allow f.i. deskewing or size normalization.
Point-to-point arithmetic & logic, grayscale & color transforms, shading correction, convolutions, morphology, geometric transforms


Image Analysis
The analysis functions are meant to extract condensed information from images or regions in order to characterize and classify 1D or 2D features.
They encompass histogram analysis, straight or curved profile extraction, and blob analysis. When numerical values are obtained, they can be used to compare objects to known references and discriminate between them.
Profile processing, histogram statistics, blob analysis, region masking, contouring
Image Calibration
An image is said to be calibrated when a mapping correspondance has been established between the pixel coordinates and some real-world coordinates system established on the observe surface.
The image calibration set provides support to compute the direct and inverse matching from a number of anchor points, and to deal with perspective distorition as well as optical deformations.
Scaling, isometry, Affinity, Perspective & Distortion Transforms


Edge Gauging
The edges of objects usually correspond to sharp transitions in the intensities in the image. Gauging enables very accurate measurements between edges in order to determine positions, distances, sizes, angles… with a subpixel precision.
This image set is specialized in profile analysis (peaks in a 1D signal) and fitting of straight or circular lines.
Automatic edge detection, outlier rejection, point model fitting, sub-pixel measurement
Pattern Matching
Pattern matching, also called template matching, is an excellent approach to locate objects in an image. It works by providing a sample image of the feature to be located and then searching for similar shapes in the target image.
The pattern matching tool of mViz supports translation, rotation and scaling and tolerates linear changes in light intensity. It is based on the well-known normalized correlation score.
Model training, sub-pixel location, rotation & scaling


Geometric Matching
By contrast to standard pattern matching, the geometric finder uses edge information rather than area information. This provides better robustness to occlusion, clutter, blur, non-linear intensity changes.
The geometric and standard pattern matching tools share a common API and can easily be traded for one another.
Model training, sub-pixel location, rotation & scaling
Character Reading
Many industrial applications require part identification. One of the ways to distinguish object is by printing a human-readable serial number on the surface or on a stickled label.
The character reading set serves two purposes: either to be able to read the content of the marking (OCR), or to verify that a given content has been properly printed (OCV).
Font training, deskewing, auto-segmentation, printed character recognition & verification


Bar Code Reading
A well-know alternative to printed characters are the barcodes. They come in numerous flavors and allow storing a number of digits and/or alphabetic characters. Depending on the type, the payload ranges from a few digits to a few tens of characters.
Automatic code location, recognition and decoding
Dot Code Reading
Another alternative to printed characters appeared more recently and is known as dot codes or 2D codes. They encode more information in the same space by allowing variations in two dimensions rather than one. To ensure data integrity, they also embed error detection and correction mean.
Automatic code location, recognition and decoding

Customization
When you can’t find the desired features in the standard package, we are eager to extend them to suit your needs. Based on your description, we quickly issue a pricing estimate. If the requested changes are of general interest, the charge can be very low.
We usually deliver precompiled objects. If you prefer, the source code is available too. Contact us.
We're Here To Help!