A core part of developing any computer vision model is error analysis. Error analysis is the process of reviewing and addressing issues with your model. This iterative process helps you build a more accurate model.
This blog poses a few questions that you can ask during error analysis to help guide you through improving your model results.
Are the Ground Truth Labels Accurate?
This is a common problem. Before you train a model, you label the areas that you want the model to detect. These labeled areas are the “ground truth”.
If you notice that the model is predicting the wrong areas after you train it, check all the labels you added to your images, and update them if needed.
Make sure that the label only covers the area you want the model to detect. If the label contains too much background, the model could get confused.
For example, in the image below, the bounding box (green label) for the bowling ball is too large. To fix this, make the bounding box smaller so its edges are against the bowling ball.
If you have multiple Classes, make sure that you applied the correct label. For example, did you accidentally use Class A when you meant to use Class B?
For example, in the image below, the helmet on the right is mislabeled as “Goggles” (blue label). To fix this, remove the label, and label it as “Helmet” (yellow label)
Are Classes Too Similar?
If the model identifies an object but thinks it’s the wrong class, your Classes might be too visually similar. Common causes of this issue include:
-
-
- Low-resolution images
- Poor viewpoint
- Part of the image is blocked
-
For example, in the image below, cows (pink labels) and horses (yellow labels) are labeled in images taken by a drone. Because the drone is so high up, both the cows and horses look too similar for the model to tell apart. In this situation, see if you can get the drone closer to the animals.
Are Objects Well-Represented?
If you notice that the model has trouble identifying a specific object, consider adding more images of that object. Include the object in different conditions and manifestations.
For example, let’s say you want to identify scratches on a PCB board. The image below shows scratches (orange label) on the right side of the board. To make sure the model has a good representation of scratches, include images that have scratches on the left side of the board.
Conclusion
Performing error analysis can help you develop a highly accurate computer vision model. LandingLens, the cloud-based computer vision application from LandingAI, can help you quickly label and train your model, which speeds up the error analysis process. Sign up for a free trial of LandingLens today!