Terminology
- Mech-Mind Vision System
-
Mech-Mind Vision System is the full 3D vision-based solution provided by Mech-Mind Robotics, including Mech-Eye Industrial 3D Cameras Mech-Eye, the industrial personal computer (IPC) and Mech-Mind Software Suite. By integrating Mech-Mind vision system into the robot system, a complete vision workstation can be built to achieve the purpose of 3D vision guiding the robot to perform intelligent tasks.
Vision Processing: Mech-Vision
Software Function Structure
- Solution
-
Solution is a collection of configurations and data of robot communication, vision processing, path planning and other functions, which are all integral components of a vision application.
- Mech-Vision Project
-
Projects refer to Mech-Vision projects. One or more projects make up a solution. Projects cannot be used independently and must belong to a solution.
- Step
-
Steps are the basics of a project. A step is a minimum algorithm unit for data processing. By connecting different steps in a project, you can achieve different data process tasks.
- Procedure
-
A procedure is a combination of multiple steps. There are often consistent or similar algorithm processing processes in different projects. By encapsulating and combining these fixed algorithm processing steps, they can be easily reused. .
- Parameter Recipe
-
Parameter recipes are sets of parameter settings that need to be adjusted according to different situations for the same project. With parameter recipes, you do not need to build multiple projects with the same logic and configure their parameters differently to meet different on-site requirements. Instead, you will only need to switch between parameter recipes in one project to make it applicable to various scenarios and therefore the productivity can be increased.
Before Processing
- Scene
-
Everything captured by the camera, including the background, bins, objects, etc.
- Target Object
-
The objects are things in the scene on which the poses need to be calculated and which need to be processed/picked by the robot. Objects can be workobjects, partitions, bins, etc. depending on requirements.
- Background
-
The scene without target objects.
- Region of Interest (ROI)
-
The region excluding surrounding parts unnecessary for vision data processing in the scene. Such parts may be background objects, pallets, bin edges, etc. An ROI can be either set by selecting a 3D box on the point cloud, or a 2D box on the depth map/image.
- Calibration Pose
-
The robot pose for calibration. It is in the form of TCP, flange pose or joint positions as required.
- Calibration Circle
-
The circles on the calibration board.
During Processing
- 3D Matching
-
The process of fitting an object point cloud model onto the point cloud of an object in the scene, to find the poses of the objects in the scene. An object point cloud model reflects object shape and features and carries the defined object pose.
- Model
-
The target object point cloud model used in 3D matching. The model can be made by the Matching Model and Pick Point Editor, either from the target object point cloud or an STL model.
- Surface Model
-
The model used to match target objects by their surface features. A surface model includes the object surface feature parts and excludes other unnecessary parts.
- Surface Matching
-
When the surface of the target object has obvious recognizable features (such as crankshafts, rotors, and steel bars), it is recommended to use surface matching.
- Edge Model
-
The model used to match target objects by their edge features. An edge model includes the object edge feature parts and excludes other unnecessary parts.
- Edge Matching
-
When the object is relatively flat but present clear and regular edge features under the camera, edge matching is recommended. Such objects include panels, track shoes, connecting rods, brake discs, etc. The Matching Model and Pick Point Editor can help generate an edge model.
- 2D Matching
-
The process of fitting a 2D template that reflects object shape and features and carries the defined object pose onto to the image of the object in the scene, in order to determine the object’s poses within the scene.
- 2D Template
-
The 2D shape that reflects object shape and features used in 2D matching.
- Deep Learning
-
In Mech-Vision, deep learning is a technique usually used to recognize and classify objects and find object poses. A trained deep learning model is exported from Mech-DLK and used by deep learning steps in Mech-Vision.
- Inference
-
Use a trained deep learning model to make predictions on the actual vision data to obtain information including poses, classification labels, etc.
After Processing
- Vision Result
-
A vision result is the output by the execution of a Mech-Vision project at a time. A vision result may contain multiple vision points and other data.
- Vision Point
-
A vision point refers to a calculated pose and its associated data, as follows.
- Object Pose (vision pose)
-
The pose of the object calculated by the Mech-Vision project. A pose contains the position information (X, Y, Z coordinates) and the orientation information (either in Euler angles or in quaternions).
- Label
-
The string label attached to each pose. Usually for indicating the object type.
- Object Dimensions
-
The dimensions of the corresponding object of the object pose. In the form of (length, width, height), or (radius, height), or others.
- Pick Point
-
The pose on the object on which the robot can pick the workobject. In some cases, the pick point is equivalent to workobject pose. The pick point and the robot’s picking pose (in the form of TCP) usually coincide but have opposite Z axes.
The information contained in a vision point may include other custom types of data associated to the object pose in the vision point, such as recommended robot velocity, pose offset, etc. You can customize the data types at step “Procedure Out” in Mech-Vision. |
- Highest Layer
-
The part in the scene defined by a specified range of height, usually on the top of the scene containing point clouds of the target objects most convenient for processing/picking. Highest layer point cloud extraction is frequently used in carton palletizing/depalletizing.
- Eye in Hand (EIH)
-
EIH is the setup where the camera is installed on the flange located on the end of the robot.
- Eye to Hand (ETH)
-
ETH is the setup where the camera is installed on a bracket independent from the robot.
- Intrinsic Parameter
-
Intrinsic parameters are measures of the properties of a camera itself, including the focal length, the lens distortion, etc. These parameters are usually calibrated and stored in the camera before the camera leaves the factory.
- Extrinsic Parameter
-
Extrinsic parameters define how poses are transformed between the camera reference frame and the world reference frame.
- Point Cloud
-
A point cloud is a set of data points on the appearance of a product obtained by measuring instruments.
- Mask
-
Specified images, shapes, or objects are usually selected to mask the image (partial or all) to control the area to process or the processing. The particular image or object used for masking is called a mask.
- Static Background
-
The background and information of the collected depth maps and color images.
- Visualized Output
-
Visual output refers to displaying the output results of steps that can be visualized in Mech-Vision.
- Procedure
-
A procedure is a customizable special step that combines multiple steps.
- Instance Segmentation
-
Instance segmentation is an image processing method that classifies images pixel by pixel, and objects are assigned different values to distinguish them regardless of whether they are of the same category.
- Image Classification
-
Image classification is an image processing method that classifies object images based on the object categories in them.
- Morphological Transformation
-
Morphological transformations refer to some simple operations on an image, such as erosion, dilation, etc.
- Erosion
-
Erosion is one of the fundamental operations in morphological image processing. It “erodes” spots with high brightness in the input image and outputs an image with reduced bright regions.
- Dilation
-
Dilation is one of the fundamental operations in morphological image processing. Contrary to erosion, it “expands” spots with high brightness in the input image and outputs an image with enhanced bright regions. Please note that erosion and dilation processes are not reversible.
- Confidence Interval
-
Confidence intervals are used to estimate the range of parameter values.
- Confidence
-
Confidence refers to the reliability of the confidence interval.
- Normal
-
The vector represented by a straight line perpendicular to a plane is the normal of the plane.
- Threshold
-
Threshold refers to the lowest or highest value that an effect can reach.
- Boolean
-
Boolean is a data type. A Boolean value is either “True” or “False”.
- Hash
-
The hash value refers to the smaller data formed by mapping a long piece of data through a hash algorithm. It can be simply understood as the ID of a piece of data.
Robot Path Planning: Mech-Viz
Software Function Structure
- Mech-Viz Project
-
Projects refer to the robot path planning projects created in Mech-Viz. Once you have completed the necessary setup of the project in Mech-Viz, you can use the project to plan a path and guide the robot to move. All the configurations of the project are stored in the folder with the same name as the project.
- Project Resources
-
Project resources refer to various basic resources used in the project, including the robot, tools, workobjects, and scene objects.
- Workflow
-
The workflow refers to the robot motion control program created in Mech-Viz in the form of a flowchart.
- Step
-
A Step refers to a function module of robot programming.
- Procedure
-
A procedure contains multiple connected steps.
Robot&Object Settings
- Simulation Space
-
The space containing all contents involved in the workflow, including the robot, workobjects, bins, and other objects.
- Scene Object
-
Scene objects refer to any solid bodies aside from the robot and the workobjects, including the bin, the pallet, elements of the working platform, etc.
- Visualization Model
-
The 3D solid body simulation for visualizing the corresponding thing in the space. It will not be used for collision detection.
- Collision Model
-
The 3D solid body simulation for detecting collisions of the corresponding thing in the space during path planning.
- Workobject
-
The object that the robot needs to process/pick.
- Workobject Symmetry
-
The property that, after a rotation around the rotational symmetry axis for a certain angle, the appearance of a workobject is considered to be coincident with that before the rotation.
- N-fold Symmetry
-
The property that after a rotation by an angle of 360°/N, the workobject shape is considered unchanged.
- Number of Symmetry Folds
-
The value of N in the definition of “N-fold symmetry”.
- Symmetry Angle
-
The value of 360°/N in the definition of “N-fold symmetry”.
number of symmetry folds * symmetry angle = 360°
- TCP
-
TCP refers to the tool center point. The TCP is on the tip of the tool. In order to complete tasks such as picking workobjects, we usually say that the robot should move to a specific point in space, which actually means its TCP should move to that point.
- Workobject Pick Point
-
The pose on the object on which the robot can pick the workobject. In some cases, the pick point is equivalent to the workobject reference frame. In other cases, the pick point is obtained by offsetting the workobject reference frame, especially when one workobject has multiple pick points. The pick point and the robot’s picking pose (in the form of TCP) usually coincide but have opposite Z axes.
- Picking Relaxation
-
The permission to rotate the tool around the workobject frame to make attempts at different angles to facilitate picking.
- Robot
-
A robot refers to a system composed of rigid bodies connected by joints.
- Tool
-
The device mounted on the robot end that performs processing/picking jobs.
- Depalletizing Vacuum Gripper
-
Rectangular suction cups used for depalletizing. Multi-block suction cups are supported.
- Array Gripper
-
An array of tools at the end of the robot that can be used to perform pick-or-place tasks concertedly.
- Edge-corner ID
-
The numbers used to identify the specific edges or corners of suction cups on a vacuum gripper.
Path Planning
- Path
-
A path is a sequence of waypoints that the robot needs to reach one by one.
- Waypoint
-
A point (presented as a robot pose in JPs or TCP) in the path that the robot needs to reach. A waypoint can contain additional information including label, motion type (linear/joint move), velocity, acceleration, etc.
- Home Position
-
A default robot pose that the robot should return to before the start of a job or after the completion of a job.
- Initial Pose
-
The robot pose before the beginning of a job. The path planning needs to accept the initial pose and take it into consideration.
- Trajectory
-
A trajectory is the record of a sequence of waypoints that robot has physically reached, carrying the timestamps.
- Robot Pose
-
The status of the robot in the 3D space, presented in the form of TCP, JPs, or flange pose.
- Workobject Waypoint
-
The waypoint at which the robot processes/picks the workobject.
- Picking Waypoint
-
The waypoint at which it is planned that the robot should pick a workobject.
- Picking Pose
-
The pose of the robot when it picks the workobject.
- Placing Waypoint
-
The waypoint at which it is planned that the robot should place a workobject.
- Placing Pose
-
The pose of the robot when it places the workobject.
- Robot Singularity
-
The robot singularity refers to a situation in which the robot joint speeds theoretically need to be infinite (although not achievable in practice) when the robot’s end effector reaches a specific position and angle. This results in a reduction in the robot’s degrees of freedom.
- Singularity Threshold
-
A singularity threshold is the maximum joint angular velocity that the robot is allowed to reach. It is used to check singularities in Mech-Viz.
- Singularity Vel Decelerate Ratio
-
Singularity velocity decelerate ratio refers to the lowest accepted velocity decelerate ratio that a robot should have when the robot encounters a singularity.
- Joint Motion
-
Joint motion refers to any movement of the tool between two target points without path control or posture control.
- Linear Motion
-
Linear motion refers to the motion type of the robot in which the tool moves in a straight line between two target points.
- Euler Angles
-
Euler angles are used to describe the orientation of an object in the 3D space. The object’s rotation in the 3D space can be denoted by 3 angles, i.e., pitch, yaw, and roll.
- Quaternions
-
Quaternions is a parameter group consisting of four quaternion values that define the 3D orientation of an object. Unlike Euler angles, it solves the problem of Euler angles in which the rotation system is limited to rotating only on the vertical axis.
- Point Cloud Cube
-
The cube simulated around each point in the point cloud to define point cloud volume for collision detection.
- Point Cloud Cube Size
-
The edge length of a point cloud cube.
- Collision Volume
-
During simulation, if one party involved in the collision detection is the point cloud, the collision volume is the number of point cloud points that overlap with the other party’s collision model times the volume of a point cloud cube.
Communication
- Endian
- Big-endian
-
Big-endian is an order that high-order bytes are arranged at the low-address end of memory, and low-order bytes are arranged at the high-address end of memory.
Low address High address 0x12 | 0x34 | 0x56 | 0x78
- Little-endian
-
Little-endian is an order that low-order bytes are arranged at the low-address end of memory, and high-order bytes are arranged at the high-address end of memory.
Low address High address 0x78 | 0x56 | 0x34 | 0x12
Others
- Flange
-
The flange is the part that connects two shafts and is mainly used for attachment.
- License Dongle
-
A license dongle is an encryption product used to authorize software.
- Industrial Personal Computer (IPC)
-
An industrial personal computer is a ruggedized computer intended for industrial purposes. It can be used as an industrial controller.
- Programmable Logic Controller (PLC)
-
A PLC is a logic controller that is used for automated controls.
- Takt Time
-
This is the overall processing time taken from capturing the image to the robot completing a certain task. Specifically, it includes the time required to capture the image on the camera, process in Mech-Vision, plan in Mech-Viz, and complete the motion on the robot.