17.82M
Category: informaticsinformatics

VisionMaster Overview

1.

VisionMaster Overview

2.

Overview
Content
Introduction of the interface
Introduction of functions
Application cases

3.

Overview

4.

Overview
Vision Master is a general-purpose
vision algorithm platform software.
Graphical Interaction
Flow-based editing
Visual Configuration
Make Vision application easier!

5.

Overview
Goal: Dedicated to providing customers with an algorithmic tool to
quickly build vision applications and solve vision inspection challenges,
which can satisfy machine vision applications such as vision
positioning, dimensional measurement, defect detection and
information recognition.
Self-development
All algorithms developed by ourselves, we can give fast
response to demand and be flexible to customization
Powerful functions
VM has thousands of image processing algorithms with
excellent algorithmic performance and rich communication
interfaces.
High compatibility
Support GigE Vision, USB3 Vision protocol standards,
can access a variety of brands of cameras
User-friendly interface
Graphical Interaction, drag-and-drop operation, visual
configuration
Versatile and easy to develop
No programming is required to build the solution, frontend display interface is provided, and the SDK interface is
rich.
1

6.

Characteristics of VM
Modular
structure,
What You See
Is What You
Get
Low entry level
no
programming
required for
complex
functionality
Masking details
of operator calls
eliminates the
need to
understand the
algorithmic
calling process
Integration of
multiple
algorithmic
modules from
traditional 2D
vision to deep
learning
Highly efficient project
development
Visualized
debugging
interface for
algorithmic
modules
Rich
communication
components
support
multiple
communication
protocols
Richer functional
components

7.

VM positioning
Algorithmic tools for
vision applications
commo
n
platform
Provide a basic
platform for visual
development
Focus on performance
improvement of
underlying modules

8.

Flexible Development Mode
Quick Mode
MultiMode
Develop Mode
Design Mode
添加标题

9.

Rich vision algorithms
Rich vision algorithms

10.

Rich vision algorithms
Rich vision algorithms
130
+
Algorithm Toolkit
30+
10+
Software Feature Pack Communication tools
60+
Open operator tools

11.

Version evolution
Object-oriented
Further performance
secondary
improvements
development, VM Easier to use for
components can be secondary
split and reused
development
Support for code
and program
export
Released arithmetic
SDK to support
arithmetic layer calls
Optimize software
architecture to
support multiple
cameras and flows
New
interactions
are starting to
be available
Visual tools
increased to
80+
V3.1
V2.2
V2.1
Visual tools increased to
100+ with support for
multiple flows running
asynchronously
V3.1.1
V3.0
2018
Officially released to the public, enriching
features and improving interaction
Performance
continues to
improve, AI
algorithms go
further
2019
Supports multi-camera
and multi-flows
applications
V4.0
2021
V3.3
V3.2
V4.2
2020
2022
Further performance
enhancements
V3.4
Secondary development
is simpler and more open
Delivering more efficient VM and
deepening AI functionality
V4.3
2023

12.

Introduction of
the interface

13.

Introduction of the interface
3. Tool Bar
2. Flow Editing Area
4. Image Display
1. Toolbox
6.Status Bar
5. Result Display

14.

Mode Setup __ Build flows
2. Double click to configure the parameters
1. Drag the tool out

15.

Toolbox
The toolbox is a collection of vision toolkits containing units for: acquisition, positioning,
measurement, recognition, deep learning calibration, alignment, image processing, color
processing, defect detection, logic tools and communication. The vision toolbox is the
cornerstone to complete the vision solution building. Users select the appropriate vision
toolkit according to the project requirements to build and test the solution.
The Visual Toolbox can be dragged and dropped to pull
modules into the process editing area

16.

Flow Editing Area
Flow page for quick flow switching
The editing of the process is realized through
the linkage between the modules, which clearly
defines the logic of the process, and the rich
arrangement and alignment helps the user to
make quick layout.
Module Status Indicator, lights up the
current status of the module.
Eagle Eye tool for quick location navigation

17.

Tool Bar
•Save: Click to save the solution.
•Open: Click to open the solution saved in the local pc.
•Undo: Click to undo the current operation. Click on its lower right foot position to view its history.
•Redo: Click to cancel the undo operation. All operations supporting undo and redo functions increase
memory consumption during the natural operation
•Camera Set: Click to create global cameras. It can support to create multiple global cameras. The
names of the global cameras can also be changed.
•Controller Management: Click to add controllers.
•Global Variable: Click to add global variables. Global variables can be called or modified by all flows in
this solution, with customizable variable names, types, and current values.
•Communication Management: Click to add the device and set the communication protocol and
other parameters. Support TCP, UDP, serial communication and mainstream communication protocols.
•Global Trigger: Click to add event trigger or string trigger.
•Global Script: Used to control the runtime sequencing of multiple processes, dynamically configure
module parameters, communication triggers, etc.
•Once Click to execute the flow once. Work for all flows.
•Continuously: After clicking, the process is executed continuously, at which point it changes to a
stop-run button, and after clicking again you can interrupt or terminate the program operation early.
•Run-time interface: You can DIY the display according to your needs.

18.

Image Display
Zoom in, zoom out, etc.
display quick action area
Right-click shortcut to
save image
Show Layer Controls
Show rendering area
Currently captured
pixel information

19.

Result Display
Current Result: Displays the output of the module's current message
History: Displays the output of the historical execution of the module
Help: Functional description and operating instructions for the module

20.

Log Area
Before expansion:
Display current operation and VM version information
After expansion:
Displaying user operation logs

21.

Status Bar
Flow configuration
status display
Time cost display,
including flow, tools
and algorithm
Flow display
zooms in and out

22.

Introduction
of functions

23.

Acquisition Tool
Image Source: It can be loaded from the local image or acquired from the camera
image. When SDK is selected in the image source, the image source can only set the
image data by calling the SDK interface.
Multi-image Acquisition: It can obtain local images or multiple images with
different angles and brightness can be taken with the camera and light source.
Image Output: It can store global camera images, local images or images processed
by image processing tools.
Image Buffer: It can be used for functional debugging of the program, and the
cached image function can be used to cache the images when some sample images are
misjudged.
Light Source: It can configure light source enable, constant/strobe, and set the
brightness of each light source channel.

24.

Locating Tool
The features of match tool:
0.1 pixel precision, 0.05 degrees
Supports multiple degrees of freedom such as pan, rotate, zoom, etc.
Adaptable to occlusion, blurring, light and darkness, etc.
low contrast
overexposure
Multiple results
localized reflection
defocus blur
Masking Interference
6

25.

Feature Match
3
The application of pattern match
Count
Positioning
Defect detection
Classification

26.

Locating Tool
Geometry search tool:
Find geometric shapes in images
Realize based on calipers
Supports multiple degrees of freedom such as translation and rotation
Finding accuracy within 0.1 pixels
Line search
Vertex search
Intersection Search
Circle search
Spacing search
Rectangle search

27.

Measurement Tool
P2P Measurement
L2L Measurement
Linear fitting
Brightness Measurement

28.

Recognition Tool
2D BcR: It can support to read QR code and DM code.
BcR: It can support to read code 39, code 128, code 93, Codabar, EAN,
ITF25.
OCR: It can be used to read character text on labels, character training
required.
2D BcR
BcR
OCR

29.

Deep Learning Tool
Deep Learning is a machine learning algorithm, which is developed based on the traditional
neural network. With a deep learning module, the machine can absorb, learn, understand, and
handle the complex information in the real world like human beings. Specifically speaking,
machine ,with the deep leaning module, can execute and finish the high-difficulty recognition
task, such as locating characters, recognizing defects, detecting defects, classifying images,
and detecting targets, code reading, image retrieval, detecting exceptions, instance segment,
etc.
The deep learning should take the data as the basis. Therefore, the tool should collect a large
amount of data sets before starting the deep learning. The data sets participating in the
training need to be labeled to ensure the diversity of data as much as possible and have low
resolution requirements. Taking character positioning as an example, at least 150 picture
samples are required.
The function module has a high requirement for the PC configuration. The PC should have
above 2G video memory and GTX1660 display card for deep learning classification, object
detection, character location, defects detection, character recognition, code reading, image
retrieval module, etc. If you need to improve efficiency, you need a higher computer
configuration.
The training of deep learning tool need to be made in Vision Train deep learning training tool.
Some deep learning modules has 2 versions: G and C. The suffix of module name of GPU
version is G, the suffix of module name of CPU version is C, and the CPU version does not
depend on the graphics card.
This feature needs to be used in conjunction with a special dongle for deep learning

30.

N-point Calibration
Calibration Path
It supports zoom, rotation,
aspect ratio, skew, pan and
perspective.
coordinate
normalization
The calibration of the transformation relationship
between the camera coordinate system and the world
coordinate system of the robotic arm mainly adopts
the N-point calibration method, and 9 points are
usually selected, i.e., the 9-point calibration method.
The transformation relationship between the camera
coordinate system and the world coordinate system of
the robotic arm can be calibrated by N(9) to the pixel
coordinates (X,Y) and the robotic arm coordinates
(U,V).

31.

Distortion Calibration
Support to calibrate radial distortion and perspective distortion
The effect of
radial distortion
The effect of
perspective
distortion

32.

Translation CalibModu
Translation CalibModu is performed by constructing a series of image
points and physical points to be fitted, and calculating the relationship
between the image coordinate system to the world coordinate system of
the robotic arm.
Generally the camera is set up directly above the self-research calibration
board, a single fetch needs to capture enough corner points and selfresearch code, the number of input pan image inputs is a minimum of 3,
when >= 4, every 3 changes in the direction of movement, the current can
support pan calibration, rotary calibration and pan-rotary calibration, as
shown in the figure below.

33.

Calculation Tool
The Calibration Transformation module realizes the conversion between the camera
coordinate system and the world coordinate system of the robotic arm through the
calibration file.
The function of Single Point Alignment is to calculate the amount of movement required to
align the object point to the target point, including positional and angular movement,
based on the input of the target point position (X0, Y0) and direction and the object point
position (X1, Y1) and direction. The alignment module inputs physical coordinates, so it
needs to be used in conjunction with calibration conversion.
The function of the Point Set Alignment is to calculate the amount of movement required
from the point alignment to the target point, including positional and angular movement,
based on the x- and y-arrays of the input target point set and the x- and y-arrays of the
object point set. The alignment module inputs physical coordinates and therefore needs to
be used in conjunction with a calibration transformation.
The function of Line Alignment is from the input target line set as well as the object line set,
the target line set object line set are straight line arrays, calculated from the object point
alignment to the target point need to move the amount, including the position of the
amount of movement and the angle of the amount of movement.

34.

Image Processing Tool
Image Stitch
Due to hardware limitations, the field of view of a single camera cannot cover the
entire field of view. When the display of the entire object is required in the project,
multiple parts of the object need to be stitched into a whole picture.
Calibration
images
Result image
Model building
Model
Stitch

35.

Color Processing Tool
Color Recognition
Color recognition relies on color as a template for classification. When different
types of objects that have obvious color differences, this tool can achieve
accurate object classification and output related classification information. The
template needs to be established before color recognition.
4. Add to label
3. Create mask
1. Load images
2. Add labels

36.

Defect Detection Tool
Arc Edge Defect
Detection
OCV
Model Defect
Detection
Path Extraction

37.

Logic Tools
Shell
• The tool of script is used to process complex data. It saves and loads the
contents of the script that has been written, and the script file format is
suffixed with cs. There is no limitation for the length of script code, and script
code supports import and export. After the import is completed, the script
tool will execute a compilation. If the compilation fails, the system will show
exception. If the compilation is successful, the system will operate according
to the new code.
• It supports to use VisualStudio to debug the program

38.

Communication Tool
Camera IO Output
Camera IO communication includes common camera communication and smart
camera IO communication. Smart camera IO communication is generally used in
the case of smart camera's built-in algorithm platform. Generally, the camera IO
communication tool is used in combination with a certain result of the flow.

39.

Global Camera
Global camera: Time-sharing multiplexing
Separate acquisition from occupancy for a more flexible and efficient inspection program
Camera Set
Camera occupancy in flow
Device
Control
Multiple camera
switching pages
Unified
Management
Camera
configuration
Same management for different workstation cameras, easy
The camera is invoked within the process and can also be externally subscribed to control
to use
whether or not the process is enabled with exposure parameters

40.

Controller Management
Automatic control of light sources
Flexible control of light source on/off and brightness according to the material changing situation of the production
line, without manual intervention.
Light management
Light control
Enable flow1
Compatible with Hik
robot controller and
light source
Multiple device
switching page
Quick Switch
Communicatio
Enable flow2
n parameter
selection
Continuous connection in the background after the light
source is turned on, able to be subscribed by any process
After selecting the corresponding device, the brightness of the light
source can be set by subscription or direct setting. Different processes
can also occupy the same light source device at different times.

41.

Global Trigger and Communication Management
Global Trigger:
There are 2 methods, Event trigger and
Communication Management:
management, Response
String trigger
It can trigger to switch solution, execute
procedure, execute module, etc.
Device management, Receive and Send event, Heart
Including 14 kinds of protocols

42.

Global Variable
Data storage area independent of the process, able to synchronize with in-process data
After a global variable is bound to the module result data, the
value of the variable changes with the result data
After global variables are bound to module parameter data,
algorithm parameters are determined according to global variables
Match Score(0.989833)->Global Variable
Global Variable(2)->Max. match num
Match Score(0.991113)->Global Variable
Global Variable(3)->Max. match num
After the feature matching data is bound to the global variable, the feature matching operation generates different values, and
the global variable changes accordingly.
Global variables are not affected by the flow, and can be applied to communication output, Kanban, data secondary processing
by asynchronous means, etc.

43.

Front-end interface
Customized running interface
Switch ON/OFF
Detection
Running interface design
Solder joint size
measurement
The result data can be used as
The measurement tool results
an intuitive dynamic icon,
can be fully displayed on the
corresponding to the detection
running interface
object on the interface
Resistance
defect detection
Counterpoint
system
Simply drag the left control
Customize display images and
MARK points and other
statistics
algorithm results user-defined
display
onto the canvas with the mouse
Select the corresponding data on
the right and adjust the shape

44.

Front-end interface
In addition to displaying the interface in the VM algorithm platform, the running interface can also be
exported together with the detection algorithm and used as an independent detection program, which
supports the secondary development interface
Detection program export
Second development of test program interface

Configured detection flow

Finished running interface
×
VM client

Software dependency
library, can be installed
with one click

Software engineering
source code
The exported program is an independent detector that
contains only the algorithms required for the process. The
The runtime interface contains source code and supports
export program can be copied to other machines for use,
adding arbitrary WPF controls
simplifying the batch on-line process

45.

Application
cases

46.

Requirement description
Function requirement: A customer needs to carry out a number of tests on the produced mobile phone
backplane at the site, as shown in the figure below.
Requirement
Area1: Detect the existence of the Apple logo
Area1: Check the appearance integrity of the Apple logo
Area2: Identify the production date of the backplane
Area3: Measure the length of the terminal block d1 (the height
of the upper and lower ends in the image) and the distance d2
Area1
from the center of the Area4 circle to the upper end of the
Area3 terminal block.
Area2
Area3
Area4
d2
d1
After each photo is taken, the vision software sends the total
inspection status (OK is 1, NG is 0), production date, and two
measured values (physical values) to the upper computer.

47.

Procedure design
Procedure design idea
The production date of the backplane can be identified by character recognition.
The existence of Apple logo can be detected by Intensity measurement: the average brightness is high when there
is a logo, and the average brightness is low when there is no logo.
The appearance integrity of Apple logo can be detected by BLOB analysis tool: determine the pixel Area and
roundness of the area.
The length of the terminal block and the distance from the center of the circle to the terminal block can be
measured using the positioning tool and measurement tool, and converted to physical values through calculation.
Data transmission, the output data can be formatted to integrate, and then the processed data is sent to the
communication equipment through the sending data module.
Function 1: OCR
1
2
Function 2 Existence
detection
Function 3
Defect detection
3
4
Function 4 Spacing
measurement

48.

Procedure Building
According to the design idea, the solution is divided into four sub-functions: 1. Character
recognition; 2. Existence detection; 3. Defect detection; 4. Spacing measurement.
Positioning
OCR
Spacing Measurement
Defect
Existence
detection detection
Module status detection
Data format configuration

49.

Rough positioning High precision match
Drag the High Precision Match module from the toolbox into the process editing area, then Feature
Model Create Set Run Params
Step1 Create Feature Model
Step2 Set Run Params

50.

Rough positioning Position Fixture
Drag the Position Fixture module from the toolbox into the process editing area and subscribe to the
High Precision Match module Create Reference
Step1 subscribe to the High Precision Match module
Step2 Create Reference

51.

FAQ
What is the aim of position fixture?
Position correction is a
tool to correct the
movement deviation of
the target and assist
accurate positioning
What is the principle of rough positioning
The real-time pose of the target
is matched by the template, and
the coordinate rotation offset of
the ROI detection box is realized
by the position correction, so
that the ROI Area follows the
pose change of the image

52.

Character recognition(OCR)
Drag the OCR module from the toolbox to the process editing area, then click Run Params Character
Models Training Draw ROI Draw Char Train Char Add to char lib.
Step1 Set Run Params
Step2 Draw Character
Step3 Train Character

53.

Existence Detection
Drag the Intensity measurement module from the toolbox to the process editing area, then click to draw
ROI Enable the Mean Value Check Input the min and max limitation of mean value.
Step2
Enable the Mean
Value Check
Step1 Draw ROI

54.

Defect Detection
Drag the Blob Analysis module from the toolbox to the process editing area, then click to draw ROI Set
Run Params Enable Blob Area Check Input the limitation of the Blob Area
Step1 Draw ROI
Step2 Set Run Params
Step3 Enable Blob Area Check

55.

Spacing measurement Circle search
Drag the Circle Search module from the toolbox to the process editing area, then click draw ROI Set
Run Params.
Step1 Draw ROI
Step2 Set Run Params

56.

Spacing Measurement Line Search
Drag the Line Search module from the toolbox to the process editing area, then click draw ROI Set
Run Params.
Step2 Set Run Params
Step1 Draw ROI

57.

Spacing Measurement L2C Measurement
Drag the L2C Measurement module from the toolbox to the process editing area, subscribe to Line
and Circle Set Run Params.
Step1 subscribe to Line and Circle
Step2 Set Run Params
Running effect

58.

Spacing Measurement L2L Measurement
Drag the L2L Measurement module from the toolbox to the process editing area, subscribe to Lines Set
Run Params.
Step1 subscribe to Lines
Step2 Set Run Params
Running effect

59.

Spacing Measurement Variable Calculation
Drag the Variable Calculation module from the toolbox to the process editing area, subscribe to the results of
the L2C measurement and L2L measurement, and multiply by the single pixel accuracy (0.012mm/pixel) to
convert the pixel measurement to the physical measurement to obtain the physical dimensions of the terminal
block.
Step1 Variable Calculation Settings
Running effect

60.

Spacing Measurement Data integration&sending
Drag the Format and Send Data module from the toolbox to the process editing area, then configure the
Format parameters and Send Data parameters.
Step2 Configure the output device and data source
Step1 configure Format parameters

61.

Thank you
English     Русский Rules