Engine blocks make a good subject for machine vision as they are so feature rich with plenty of geometric patterns. When a freshly casted and machined engine block is born, it has to be inspected by eye to ensure both that it is complete and that the dimensions of the visible features meet the specification requirements. Traditionally, a time consuming and labour intensive task that has required manual measurements using calipers and micrometers.
An additional problem is presented by the volume of engine blocks that are produced in some factories - a recent statistic in 2018 showed that 60% of the worlds engine blocks are produced in China and many of these from just a handful of factories. So the volume of production also dictates that not every engine block can be manually inspected, therefore the inspection is limited to a certain percentage of the production.
Automation of feature measurements using robotics is of course the way forward and there are a number of systems that inspect and measure using two dimensional vision systems.
Scorpion Vision has supplied a number of engine block inspection systems that use a combination of 2D and 3D stereo vision cameras to measure engine block features. The 3D functionality enables non contact measurement of the engine blocks as image distortion caused by perspective are corrected using 3D calibration - 2D images are re-sampled using data derived from the 3D algorithms, removing perspective and therefore correcting the 2D measurements.
The Scorpion Vision engine block inspection systems have multiple roles to play; Non contact measurement (as this article describes), 3D Robot guidance for picking engine blocks (see here), Assembly verification and Product Identification, which in itself can be challenging if the blocks only have small differentiating features.
In the example given here, this application can identify 5 different engine blocks, measure features, ensure the product in view is what is expected before finally passing the 3D picking coordinates to the robot.
The machine vision techniques used are typically stereo vision, augmented with random pattern projections with both infrared and white light.
Unprocessed Images with Random Pattern Projection
|The 3D Point Cloud is Generated from the raw images|
|The plane of the top of the engine is found to get the spatial orientation|
|New filter images are created to highlight the contour of the cylinders and to improve the opportunity to get the best possible measurements.|
The same point is found in both images and with a series of stereoscopy tools and reference changes the 3D pose is calculated.
|A height-map is created and mixed with the intensity image to create a top view image with perspective correction. This image is then used to measure some features of the product - such as the cylinder diameters, number of gaps, distances, etc.|
At this stage the engine is identified. The vision system now has to accurately locate the picking point in space and send it to the robot. The robot uses the first and last cylinder of the engine to lift it up.
For the robot task, the vision system only needs to send spatial coordinates of the centre of one cylinder.