I am trying to detect a TV channel logo inside a video file. So, simply, given an input .mp4 video, detect if it has that logo present in a specific frame, say the first frame, or not.

Here's the first example of a frame with a logo.

Here's the second example.

We have that logo in advance (although might not be %100 of the same size) and the location is always fixed.

I already have a pattern matching-based approach. But that requires the pattern to be %100 the same size.

I would like to use Deep Learning and Neural networks to achieve that. How can I do that? I believe CNNs can have a higher efficiency.


2 Answers 2


To perform image recognition you have to find a way to represent an image with certain features.

One of the defining characteristics of a good image recognition algorithm are it's ability to detect salient regions, that is, regions which contain the most information

There is a lot of attention on deep learning for content-based image classification at the moment. You can achieve decent results by implementing deep learning having three or more layers of CNN's where each layer is responsible for extracting one or more feature of the image.

  • $\begingroup$ Thanks. I'm not a CNN guy myself. But is there any pointer to a source code that given a logo image, it can detect if it exists or not? $\endgroup$
    – Mary
    Commented Dec 15, 2017 at 21:25
  • 3
    $\begingroup$ Hey, please check out DeepLogo on Github by Satoj Kovic. It is written on Python and uses CNN's to recognise brand logo's. I have posted the link below. Cheers. github.com/satojkovic/DeepLogo $\endgroup$
    – Seth Simba
    Commented Dec 16, 2017 at 6:42

Because it is video input and the logos are usually stationary because they are layered over the live or recorded frames by either hardware or software, the task is not difficult. Logos also usually have limited color palettes and crisp edges. The features of their fonts, when they spell words or acronyms are usually consistent too. These are generalities that can be exploited in deep learning.

As with the other similar question posted by this author, a combination of LSTM and CNN layers can be trained to find and isolate the logo. With some image tricks, the image behind the logo can also be reconstructed with a reasonable accuracy and reliability from the pixels around the logo through a similar set of learning techniques.

These are a few starting points for the development.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .