In this project, the target is to get a reliable model to check print quality in industrial tiles printing machines.
I've used a well known model for finding objects in pictures, and I've tried to train it, using AMD technology, to find defects in printed tiles.
INTRODUCTIONQuality inspection for printers is been used for several years, but they have some weaknesses that can be improved using AI.
The main weakness is that Quality Inspection Machines need to know which image is being printed in order to compare and determine if the printing is correct. That, is not always easy to get, for several reasons. Sometimes the printer and the Inspector are machines from diferent manufacturers, and sometimes, the image is simply generated randomly.
The second important weakness is that inspection duration is very important, because production lines are fast, and 1 second is usually too much.
With AMD technology and AI models, we can get faster inspections with no need to have the printed image file, as we are not comparing but looking for defects using a model.
First step of this project was to find the model that I think fits better for this application. From the first moment, it was clear for me that an object detection model was the choice, and after reading about them, I decided to use YOLOv8.
Second step was to create a dataset to train, validate and test the model, but I was lucky, and I could find that the people form Roboflow had a perfect dataset for my application, and I could use it.
Then I needed to install Python and all the necessary libraries in the magnific computer that AMD sent to my home. Not so easy as it seams, but after reading a bit, and help from Google and ChatGPT, everything was installed.
Fourth step, finding time to "play" with all this things. Being father of two little children, sometimes you need help from Bluey :)
Then, I could train the model (10 epochs, 70 epochs, and 150 epochs).
And after training the model, I could test it with some prepared tiles.
Here I present the plots from the trained model
It's interesting also to look at the processing times (using the Minis PC) for an image: les than 150 ms
I think the results could be better, but probably the model selection was not the best.
I'm very happy with the tools used in the project, and with the training times, but the mAP50 and mAP50-95 are lower than I expected. Again, probably I need to change the model.
Regarding processing time, we can say it is much better (with the Ryzen 9, of course) than needed and expected.
FUTURE WORKIt could be interesting trying a diferent model, and, of course, I need to attach it to our printer, and test in production.
Comments