Log in | Create profile | Language

Sapera Processing

Sapera Processing is at the heart of Sapera Vision Software delivering a suite of image processing and artificial intelligence functions which include the following:

  • Basic image processing primitives such as filtering, morphology, geometry and point-to-point operations.
  • Image analysis tools such as barcode reading/grading, pattern matching (search), OCR, color analysis, camera calibration for lens distortion correction, 2D/3D measurement and blob analysis functions.
  • Artificial intelligence (AI) inference based on models imported from AstrocyteTM training tool.
  • 3D processing, analysis and measurement functions to operate on data from Z-Trak 3D sensor or any third-party 3D device.

Sapera Processing also offers a suite of demo programs showing how to integrate acquisition from Teledyne devices via Sapera LT.

Key Features

  • Hardware independent, image acquisition, image processing/analysis and artificial intelligence library
  • Supports Area-scan and Line-scan, monochrome and color, 2D and 3D cameras
  • Power tools for tasks like image recognition, object identification, 2D/3D measurement, machine guidance, surface inspection, object segmentation, object tracking and others
  • Designed for machine vision OEMs, System Integrators and End users
  • Modular components supporting C++ and .NET languages
  • Multi-Core optimization supported on single or multiple CPU configurations
  • User-friendly non-programming graphical environment to quickly prototype and test drive application specific imaging tools

Key Benefits

  • Extensive camera and frame-grabber support
  • Industrial strength algorithms ensure accuracy and reliability
  • Cost effective solution for inspection, identification, guidance and measurement applications
  • Solution to very complex vision tasks involving highly varying environment
  • Upgrade with no code change given code and binary backward compatibility

AI Tool

Sapera Processing includes a series of classes to perform AI inference on models generated by Astrocyte (available only with Sapera AI license).

  • Performs inference on video input based on the loaded model. Inference consists in executing an AI model (i.e. a trained neural network) to a stream of input images in order to produce results such class names, bounding boxes, labeled images, etc.
  • Allows loading a model file exported from the Astrocyte™ AI training tool.
  • Supports the following AI architectures
Classification

Classification involves predicting which class an item belongs to. Some classifiers are binary resulting in a yes/no decision. Others are multi-class and can categorize an item into one of several categories. Classification is used to solve problems like detect identification, character recognition, presence detection, food sorting, etc. Astrocyte supports the following classification neural networks: Resnet-18, Resnet-50, Resnet-101.

Object Detection

Object Detection involves localizing one or more objects of interest in an image. It combines the two tasks of localizing and classifying objects into one single execution. The output of Object Detection includes bounding box and a class label for each of the objects of interest. Object Detection is used to solve problems like presence detection, object tracking, defect localization and sorting, etc. Astrocyte supports the following object detection neural networks: SSD300, SSD512 and SSDLite.

Segmentation

Image segmentation involves dividing input image into segments to simplify image analysis. Segments represent objects or parts of objects and are composed of groups of pixels. Image segmentation sorts pixels into larger components eliminating the need to consider individual pixels as units of observation. Image segmentation is a critical process in computer vision and is used for defect sorting/qualification, food sorting, shape analysis, etc. Astrocyte supports the following segmentation neural networks: DeepLabV3-Resnet-50, DeepLabV3-Resnet-101, Unet.

Noise Reduction

Image denoising aims to reconstruct a high-quality image from its degraded observation. It represents an important building block in real applications such as digital photography, medical image analysis, remote sensing, surveillance and digital entertainment. Astrocyte supports the following noise reduction neural networks: Residual Channel Attention Network (RCAN).

  • One class per architecture with functions to access specific types of results
  • Access to detailed model properties
  • Automatic internal pre-processing and post-processing for adapting to input images of various size and format
  • Selection of execution on GPU or CPU
  • Integrates well with other tools such as blob analysis for combining AI with traditional image processing for a complete solution

Application Examples

Surface inspection on metal plates

Classification of good and bad metal sheets. Tiny scratches on metal are detected and classified as bad samples. Sapera AI detects small defects on high resolution images of rough texture. Just a few tens of samples are required to train a good accuracy model.



Location/identification of hardware parts

Localization and classification of various hardware parts such as nuts, bolts, washers, nails and crimp terminals. Sapera AI can robustly find and identify parts in an environment with varying conditions such as occlusion, shadow, lighting change, scaling, rotation, etc.

Detection/segmentation of vehicles

Detection and segmentation of various types of vehicles in outdoor scenes. Sapera AI provides output shapes where each pixel is assigned a class. Usage of blob tool on the segmentation output allows performing shape analysis on the vehicles.



Noise reduction on x-ray medical images

Denoising of high-noise x-ray medical images such as dental and mammography. Sapera AI provides good output signal-to-noise ratio while preserving image sharpness.

Barcode Tool

Sapera Processing offers two different barcode reading algorithms:

  • Quick Barcode is the preferred tool as it allows very high speed reading while being tolerant to noise, occlusion and geometrical distortions. 
  • However in cases of very highly degraded conditions Standard Barcode might be a good alternative to Quick Barcode. Standard Barcode provides more flexibility in adjusting parameters as well as providing the ability to create golden models for an increased robustness.

As part of the barcode tool Sapera Processing also offers Print Quality Grading. Grading is used to verify the quality of 1D and 2D marks.

Quick Barcode

  • Fast and robust decoding of most 1D barcode and 2D matrix code symbologies
    • 1d symbologies: Code 11, 32, 39, 93, 128, I25, UPC-A/E, EAN-8/13, Databar, BC412, Pharmacode and more
    • 2D symbologies: Data matrix (ECC200), QR Code, PDF417, MicroPDF and more
  • Quickly and accurately reads printed, stamped or etched 1D/2D codes
  • Reliably reads Data Matrix and QR codes with damaged or missing finder patterns
  • Reads poorly printed, low contrast, noisy, warped, and damaged barcodes
  • Decodes multiple barcodes in the same image ROI
  • Two licensing options:
    • Quick Barcode decodes the majority of codes.
    • Quick Barcode DPM offers greater robustness for decoding marks etched or dot peened on plastic or metallic surfaces

Standard Barcode

  • Supports 1-D and 2-D industry standards (includes the majority of standards supported by Quick Barcode).
  • High tolerance for noisy and poorly illuminated images
  • Asian native language and Unicode output
  • Includes Barcode Studio to set up barcode reading via Learning Assistant to help adjust optimal parameters
  • Supports model training on Data Matrix for increased robustness highly damaged images
  • Two licensing options:
    • Standard Barcode supports a wide variety of codes and options, and does not require training
    • Advanced Barcode offers the ability to train a Data Matrix model for increasing robustness while supporting the same codes and options as Standard Barcode.

Print Quality Grading

  • Use in combination with Quick Barcode or Standard Barcode
  • Includes the following standards:
    • ISO/IEC 15416 (Barcode print quality test specification - linear symbols)
    • ISO/IEC 15415 (Barcode symbol print quality test specification - Two-dimensional symbols)
    • ISO/IEC 16022 (Data matrix barcode symbology specification)
    • AIM PDM (Direct Part Mark Quality)
    • AS9132 (Aerospace Standards - Data Matrix Coding Quality Requirements for Parts Marking)

Search Tool

Area-based

  • Algorithm based on normalized cross-correlation (NCC)
  • Extremely fast when no scaling is involved
  • Tolerant to extreme noise
  • Position accuracy to 1/25 pixel

Edge-based

  • Algorithm based on object contours
  • Rotation and contrast independent
  • Position accuracy to 1/50th pixel
  • Angle accuracy to 1/80th degree
  • Locates up to 5 instances of target in image

Image Processing

Sapera Processing includes a powerful frame grabber configuration and camera set-up utility plus a suite of image processing tools including a series of highly optimized basic image processing functions, Blob Analysis and Calibration tools.

Image Processing Primitives

  • Filters: including convolution, low/high pass, 1D, 2D, Laplacian, Gaussian, edge and line detection, and more
  • Geometry: flipping, transposition, translation, rotation, zooming, shearing, warping, and more
  • Measurement: statistics, histograms, projections, differencing, regressions, cross-correlations, variance and more
  • Morphology: dilation, erosion, opening and closing, filters, gradients, and more
  • Point-to-point: arithmetic and logical operations, thresholding, segmentation, edge detection, contrast equaliztion, and more
  • Transforms: Fourier, DCT, DHT, Hough
  • Miscellaneous: sub-pixel edge crossing, contour following, frame averaging
  • See brochure for complete list

Blob Analysis

  • Blob Analysis segments objects in a scene from the background and computes geometric and grayscale features. Ideal for defect detection in electronic and semiconductor industries
  • Supports 1-bit, 8-bit, 16-bit, binary or grayscale input
  • Supports infinite frame size when using line scan cameras
  • Supports hardware accelerated blob analysis operations
  • Spatial and grayscale blob features
  • Blob centroid, area, and perimeter length
  • Bounding box location and size, number of holes
  • Best-fitting oriented ellipse with axes lengths
  • Blob roundness and elongation
  • Convex area and solidity (ratio of net area to convex area)
  • Feret diameters, bounding box location, size and orientation
  • External and internal perimeter points, filled area
  • Minimum, maximum, standard deviation of all pixels
  • Gray scale centroid
  • Sorting and blob selection based on calculated feature
  • Robust automatic threshold algorithms
  • Optional output of RLE (Run-Length-Encoding) for user-defined feature calculations
  • See brochure for complete list

Calibration

Measurement Tool (2D)

Key Features

  • Highly optimized execution
  • Automatic simultaneous multiple measurements
  • Sub-pixel Accuracy
  • Measurement statistics for distances and angles.
  • Built-in calibration tools ensure accurate real-world measurements
  • Extensive set of markers include single or multiple points, lines, arcs and
    circles

Sapera Processing's Measurement Tool is a video metrology tool for machine vision inspection applications involving measurement for positioning, identification and guidance. The measurement tool includes an extensive suite of highly optimized functions to facilitate real-world measurements. In addition, the measurement tool features a wide selection of Image Markers using which measurements can be performed. The marker type includes point, line, polyline, arc, circle, spoke, and many more to facilitate multiple simultaneous measurements from one or more selected paths. The highly accurate results are computed to with sub-pixel accuracy. The measurement tool can be combined with Sapera Processing's calibration tool to obtain consistent and accurate real-world measurements.


OCR Tool

A highly integrated optical character recognition tool that is scale and contrast invariant, the OCR tool supports both solid and dot matrix fonts and can be trained on user fonts. Its robust recognition technique is optimized for speed and accuracy. The ability of the OCR tool to operate on significantly degraded images makes it ideal for repetitive inspection tasks performed in the pharmaceutical, electronics and semiconductor industries.

  • User trainable font set
  • Supports solid and dot-matrix fonts including italic fonts
  • Tolerates non-linear background variations
  • Supports training of touching characters
  • Two algorithms: binary-based (speed), greyscale-based (tolerant to extreme noise).
  • Resolution level adjustment (robustness versus speed)
  • Rotation, scale and aspect ratio invariance.
  • Multi-string support (reads more than one string of characters in single execution).
  • Support of Asian characters (output in Unicode mode).
  • Adjustable effort level
  • Alphabetical font sorting
  • Automatic string detection

Color Tool

Sapera Processing features an advanced color tool for machine vision that delivers speed, accuracy and flexibility to imaging applications that require color inspection. Ideal for sorting, verification and inspection in food, packaging, print, textile and electronics inspection, this powerful tool supports multiple color spaces such as HSI, CIELAB, RGB, and YUV and can perform color classification in native color space. With it's built in support for color calibration, user trainable color classifier, Delat-E measurement and lookup table operations, the Sapera Processing Color tool augments the performance of Sapera Processing image processing and analysis libraries

  • Classes for color processing and analysis
  • RGB, YUV, HSV, LAB
  • Calibration, correction, identification, classification
  • Pattern matching
  • Color space conversions

3D Tool

  • Supports Z-Trak 3D Laser Profiler 
  • Device-independent 3D classes and functions (adapted to Z-Trak 3D output data)
  • Can support third-party Linescan/Areascan 3D devices via 16-bit data input
  • World-unit measurements in 3D tool and other tools such as Blob and EdgeX.
  • 3D data storage in TIFF and CRC (proprietary) file formats
  • 3D Processing
    • Special data classes for 3D profiles and 3D range maps
    • Adapted processing for invalid points
    • Pixel-to-world and world-to-pixel conversions
    • Region-based thresholding on profile data and feature computation
    • Profile and range statistics and roughness measurement
    • Profile un-tilting (correction of camera/floor orthogonality)
    • Profile slicing and resampling
    • Filtering: gap filling, spike cutting, smoothing, averaging
    • Primitive fitting: line, circle, rotated ellipse and arbitrary quadratic
    • Projection of profile data on curved model
  • Non-Rectangular Regions-Of-Interest
    • Circle, Rotated Ellipse, Polygon and Annulus
    • Operations between ROIs (union, intersection, etc.) for complex shape creation
    • Geometric and Run-Length representation for ease-of-use and efficiency
  • Demo Programs
    • Acquisition module for direct Z-Trak interface
    • Acquisition emulator using file-based data with profile rate simulation
    • Large number of small examples showing function-level processing
    • Application specific demos illustrating real industrial cases such as v-groove angle measurement, protruded part inspection, height measurement on mechanical part, lead flatness inspection on chip, etc.
    • New UI demo framework based on Qt
    • New rendering capabilities based on VTK (Visual Toolkit) which uses latest GPU graphics

Application Examples

  1. Chip Lead Flatness Inspection
  2. Dimensional Measurements on Connectors
  3. V-Groove Angle Measurement

Learn more

Questions? Need more information? Contact our sales team to learn more today.

Contact us