Object detection and object recognition are both computer vision techniques but are not to be mixed up as they are pretty different in terms of complexity. While basic solution like template matching can be used for object detection, object recognition often requires a more complex process and the use of machine and deep learning. Object recognition is, in comparison, far more challenging for computer vision developers.

In other words, object detection will allow you to simply count specific “objects” in images (like cars), while object recognition is used for more complex tasks such as recognizing categories (like specific models of cars).

Computer vision developers have an important choice to make depending on the nature of each project: using either machine learning or deep learning for object recognition. Note that deep learning is a part of machine learning but is more complex. Here are some particularities to take into account when starting a new object recognition project.

Machine learning

The process of object recognition begins with manual feature extraction, which is the analysis of images and videos to discover characteristic features of objects you want to recognize. Machine learning algorithms requires more time, but also human involvement, to achieve high accuracy of object recognition. The positive point is that demands put on dataset size and computational power are relatively low, which makes the approach more cost-effective.

Deep learning

An artificial neural network process is trained on raw data to automatically spot differences and similarities between objects. A model can be built by developers from scratch and be trained. Results often show a high accuracy with deep learning techniques. However, the process can be expensive as training images for deep learning models come in millions and requires a lot of power to be treated.

Use case: logo detection in press articles

Lately, our help has been asked for a challenging object recognition project in a complex environment. Auxipress is a major media monitoring company working mainly for big brands and businesses. The company was looking for an effective and powerful recognition service to identify brand logos faster into press articles and TV shows.

Our computer vision developers took this project step by step, digging always deeper in computer vision techniques until obtaining a satisfying accuracy in logo recognition.

They started with computer vision simple solutions like template matching to assess results. As foreseen, the accuracy rate was too low. Those techniques like template matching work well in highly constrained environments, for instance a production chain where the environment remain unchanged (same light, cameras at the same place, …). Template matching was not a solution for this project. Logos must be detected on complex environments, such as on real objects or persons (logos on t-shirt for example) and thus, come with a ‘deformation’.

Our computer vision developers then tried other methods like features matching. As for template matching, the results weren’t good enough.

The project required us to use deep learning techniques, as the recognition of logos in the requested environment is quite complex. Our team annotated a huge amount of press articles to highlight the presence or not of logos and their association with brands to create a substantial dataset. According to this dataset, algorithms were constantly trained until obtaining an accuracy in logo recognition that is satisfying for business needs.

At the moment, our algorithms are still trained to perform well as Auxipress wishes to duplicate this project from static images (press articles) to videos (tv shows, advertising, …).

Feel free to contact us, if you have an object recognition in complex environment project or if you’d like to know more about our expertise.