I have started discusion with the same topic here: https://www.linkedin.com/groups/Flaw-detection-in-flat-metal-2642596.S.5854952408957882368?trk=groups_search_item_list-0-b-ttl&goback=%2Egna_2642596 but it seems to be more suitable for this group.
I am dealing with a diagnostic system for elements processed by a stamping press. The elements are sheet metal. Due to erroneous action of press, the items have dents which have to be detected. The general requirements for a system are given below:
Maximum size of the element is : 600 mm (L), 130 mm (W). Height is to be specified. I am assuming 10 mm for the worst case. Elements are placed on a conveyor belt. There is no restriction about working distance and size of the system.
Features to be detected are dents (imprints) caused by a fault of the press. The smallest possible defect have a diameter of 1 mm. The element may be flipped so system should detect imprints or bulge. The bulge seen from the other side may have a minimum depth of 0.05 mm. No metrics is needed.
The element is bare sheet metal, fined finished, glossy and may have thin layer of oil. There are holes and other patterns within.
The part is moving. The maximum speed of the conveyor belt is 1400 mm/s. The maximum number of elements per minute is 100, so I have about 0.5 s for the whole inspection including acquisition, processing and decision.
I am looking for a 3D scanning system which meets requirements of the application or others techniques which are able to solve the problem.
Hi Dawid, thank you for sharing the boundary conditions of your application with the group!
In principle, there are two 3D technologies which are suited for such an application: (i) laser triangulation and (ii) photometric stereo (shape-from-shading) in line scan mode. Laser triangulation has the advantage of very fast image acquisition but can have difficulties with very shiny surfaces. Photometric stereo with a dome-like illumination (trevista?) on the other hand is ideal for surfaces with strong reflections; although it can, in principle, operate in line scan mode, your speed requirements are probably a bit too high for this approach (necessity to acquire four lines per profile).
As to laser triangulation, you should choose a camera system with a lateral (x,y-plane) resolution of 200 ?m/pixel or less, so that you cover your smallest fault with at least 5 pixels. However, don't choose the resolution too small since then the scanning speed will be too low and the image data to process too high. As to the suggested cycle time of 0.5 s/part, I would suggest to parallelize the image evaluation of part N with the image acquisition of part N+1. The rejection gate needs to be at least two parts further from the point of image acquisition. There should be no vibrations due to the movement of the conveyor belt under the camera system, especially not in the z axis.
With a state-of-the-art triangulation camera (1280 pixel, link see below), I have estimated the following scanning geometry and resolutions:
? Scan width (x): 192 mm (total); 135 mm (used)
? Scan height (z): 15 mm (max)
? Triangulation angle: 27° (camera tilted)
Resolutions and speed:
? lateral resolution: 150 ?m/pixel (dx) and ?m/profile (dy)
? height resolution (dz): 20 ?m per gray value (1/16 subpixeling for laser line detection)
? scan speed: 13.000 profiles/s
? maximum conveyor speed (@ dx=dy): 2000 mm/s
? image size: 900 x 4000 x 16 bit = 7.2 MB
At this scanning speed, you need so set an exposure time of < 100 ?s; thus, you will need a lot of laser intensity. Either you take a strong laser with 80 to 120 mW or you tilt both the camera and the laser in opposite directions in order to acquire the direct reflex on the surface.
Whether the estimated resolution and speed can be reached with your objects should be tested practically. But it seems indeed technically feasible.
It is more than I have epected. It helped me to start my own calculation. I have some questions:
As far I understand, it is assumed that camera works in "13200 Hz" mode in which profile have 1280 px and 32 sensor rows are used. Where does height resolution come from? Assuming that height of 15 mm is equally projected (actually resolution is smaller in the bottom than on the top of the image) onto 32 px, it gives resolution 0.04687 mm/px and when subpixel resolution is considered it gives me 0.00292 mm/px. It still meets requirements but I am curious what your approach was. I think I missed something. On the other hand I don't know if I can assume subpixel accuracy. It is very likely, that laser line will not be projected onto more than one pixel (totaly I have only 32 px). If my information is contained in one pixel, there is no gauss function of pixels values. In the consequence any type of algorithm will give me only one pixel accuracy. Nonthenless, it should be tested practically.
It turned out that there are additional problems regarding rejection gate, space and vibration. I do not know whether I will have a chance to make 3D tests in this project. For sure information about Z resolution calculation will be helpful for future ones.
the height resolution comes from (i) the angle between laser and camera, (ii) the lateral resolution and (iii) the subpixel accuracy with which the center of the laser line is detected in the 2D image (actively used 900 x 45 pixel). In terms of formula, the height resolution dz = dx/sin(angle) in case the camera is tilted. With 1/16 subpixeling you reach a dz of 20,7 ?m/gray value.
But you are right, a subpixel accuracy on the laser line image can only be reached if the laser line width covers at least 5 pixels in a row of the image. In your case, this would correspond to a line width of 750 ?m. To get a 750 ?m "thick" laser line is easier than a much thinner one; for instance, you can mount the laser 1 m far from the surface or defocus the laser line a little.
The time for image processing (i.e. minimum time to rejection gate) depends on what kind of algorithms you use and features you want to detect and, of course, the power of the PC; it is therefore difficult for me to give a good estimate; the estimate for the image acquisition is much more straightforward.
If you have too strong vibrations, then, evidently, a height-contrasted images will be very noisy; then, 3D imaging is maybe not the ideal option.
As a person who has a great deal of practical experience in traditional NDT methodologies, I think this is a great idea!
Would it be possible to tilt the sensor or item to improve contrast? Even the human eye has a problem with discovering indications and their depth when looked at straight on.
Thank you in advance for your response(s)
In a laser triangulation system, the contrast in the final 3D image comes from the height difference in the object.
In the 2D images the trianglation camera initially takes from the projected laser line, a sufficient contract is necessary to detect the center of the line. The contrast with cooperative (non-glossy) surfaces is achieved by choosing a sufficiently high power of the laser beam together with an appropriate bandpass filter.
In case of high reflectivity of the objects (non-cooperative surface) and if the objects are not too curved, one can also mount the camera in the opposite but same angle as the laser beam; thus, the direct reflection of the laser line is acquired by the camera, and not the scattered light. This is helpflu to increase the intensity of the laser line in the camera and the contrast in the 2D image. However, if there are too steep slopes in some regions of the object's surface, the direct reflext can go in a completely other direction as the optiocal axis of the camera, and no data ata all can be generated from these regions.
As you see, it is - as always - a compromise, and needs to be tested practically.
Thank you Tobias, I appreciate the education!
Due to several reasons ie. vibration, timing and accuracy I decided not to work on this project. However, I have learnt a lot from the posts of Tobias and for sure I will use this knowledge in the next projects. Thank you.