Ford vs Ferrari: AI in Manufacturing Quality
Unlike the Matt Damon movie Ford vs Ferrari, this post will not focus on racing cars for 24 hours straight through the north of France. Instead, we will focus on comparing automobiles, or more specifically comparing their logos using Artificial Intelligence.
Many years ago, I was walking with my niece, who was three at the time. As a car drove past, she pointed at it and exclaimed in her toddler voice, “BMW.” Sure enough, she was correct. The car was in fact a BMW that she recognized based on their iconic brand and logo.
Today, the question is, can you teach a computer to be as smart as a three-year-old and learn how to identify a vehicle based on logo alone using computer vision and machine learning?
The short answer to that question is yes, as we will demonstrate. The long answer is that it is fairly involved. The process utilizes the AI sub-discipline of computer vision and specifically object detection. With object detection, you can “teach” the system to find specific objects within an image. In our case, we seek to teach it to detect and identify various manufacturer logos.
For our analysis, we used the following dataset. The data includes over 20k images of vehicle logos from various manufacturers. Initially, we will start our analysis on five: Alfa Romeo, Ferrari, Honda, Land Rover, and Tesla (sorry BMW).
The analysis employs a multi-step technical process involving annotating objects within images, splitting the data into test and validation, running these files through a neural network utilizing a GPU, etc. The technical process is beyond the scope of this post, but the goal is to build a successful image detection system to detect five distinct brands using just 100 images of each logo.
To accelerate our analysis, we utilized the no-code Elipsa Analytics Platform to automate the data science and speed up time to insight.
By “showing” the computer 100 images of each logo, was it able to learn as well as a three-year-old? It was, and perhaps better. I say that because my niece was able to pick out a BMW but I never tested her to see if she could distinguish between five different brands.
After building the model, we tested a series of new images. From the sample below, you can see that with just 100 images, the computer was quite accurate at not only detecting the logo, but at associating it with the correct manufacturer. In each prediction, you see the original image with a red box around what the computer thinks is a logo, as well as the label of the class that it is predicting the logo to be part of.
· Alfa Romeo: the model successfully found the logo and classified it as Alfa Romeo with 99.02% confidence
· Ferrari: the model successfully found the logo and classified it as Ferrari with 99.64% accuracy
· Honda: looking at the Honda logo, the model actually detects multiple potential logos. In other words, it appears a little uncertain. However, digging deeper, it is 99.7% confident that it found the Honda logo in the image and less than 8% confident in its other predictions.
· Land Rover: the model successfully found the logo and classified it as Land Rover with 99.79% confidence
· Tesla: like Honda, the model thinks that it may have found multiple logos within the Tesla image. Unlike Honda, it was only 43% confident that it is Tesla and 34% confident that it is Honda. So, perhaps the model is not as smart as a three-year-old in this case, but perhaps it could be with more training images.
Ford vs Ferrari
So, why is the post named Ford vs. Ferrari?
As you can see, the models performed quite well on a very small data set. However, one could argue that the logos are so different that the AI should easily pick up the differences. What about something a little tougher? Ford vs. Ferrari, or more specifically the Mustang vs. Ferrari. I would be hard-pressed to find a three-year-old that can distinguish between the Mustang horse logo and the Ferrari horse logo, but what about a computer?
As you can see, we gave the computer images of varying size, design, color, and angle and it was 100% accurate in predicting the difference between the Mustang vs. the Ferrari (with 87–99% confidence on the Ferrari predictions and 97–99% confidence on the Mustang predictions).
AI in Manufacturing: Quality Assurance
So how does all of this relate to manufacturing and what is the benefit of being able to detect automobile brands? Generally speaking, a model with the ability to detect automobile brands does not relate to most manufacturing processes, but it does relate to quality control. In fact, this post was inspired by work being done on the assembly line at BMW using object detection to monitor the model labels being placed on vehicles to ensure that they match the actual vehicle going out the door.
As you have seen, we were able to build our own custom detection model based on images and objects that were relevant to our process. This same technique can be generalized to fit the specific needs of any organization. Furthermore, with no-code solutions like Elipsa, this can be done by existing line workers without the need for a dedicated data science team such as the one employed by BMW.
By applying custom object detection to the quality control process, a manufacturer can utilize IoT sensor images to build models and monitor for smudges, cracks, dents, or whatever defect is relevant to their product. By using AI to teach the system what looks wrong, you can ensure that you only send out products that look right.
AI has the power to transform your processes. Furthermore, this transformative power is not just accessible to enterprises with large data science teams. Through Approachable AI, organizations of all sizes can build custom solutions to start improving their quality helping to lower costs, increase customer satisfaction, and facilitate growth.
To get started, set up a Demo today to see how Elipsa is building Approachable AI in order to help unlock what’s possible.