Amazing AI: Reverse Image Search

Apply your Deep Learning skills and create your own end-to-end Image Search engine!
Free tutorial
Rating: 4.9 out of 5 (174 ratings)
17,076 students
1hr 42min of on-demand video
English [Auto]

What are Reverse Image Search engines
How to build your AI based Reverse Image Search engine
How to create simple web based interface for your Deep learning models using the Python framework Flask
Coding a Convolutional Neural Network (CNN) from scratch in Tensorflow 1.10.0
Using the Python framework Flask to serve a Deep Learning model in production
How to create an End-to-End pipeline for any Deep Learning model using Tensorflow
How to create a Flask application from scratch


  • Python programming
  • Basic conceptual understanding of Convolutional Neural Networks (CNN)
  • Basic knowledge of Deep Learning ins mandatory
  • (optional) Previous coding experience with TensorFlow


Artificial intelligence is one of the fastest growing fields of computer science today and the demand for excellent AI Engineers is increasing day in and day out. This course will help you stay competitive in the AI job market by teaching you how to create a Deep Learning End-to-End product on your own.

Most courses focus on the basics of Deep Learning and teach you about the very basics of different models. In this course, however, you will learn how to write a whole End-to-End pipeline, from data preprocessing across choosing the right hyper-parameters, to showing your users results in a browser.

The case that we will tackle in this course is an engine for Image to Image Search.

Why should you take this course?

This course is not focused on teaching you Neural Networks (ANNs, CNNs, RNNs…), but teaching you how to apply them in real world cases.

If you haven’t worked on a product that uses Deep Learning before, this is the perfect course for you! Throughout the course we will work together on the Image to Image Search engine, starting from ground zero - image preprocessing, creating a model, training it, then testing. After that we will create a simple web application and use it to serve our model in production.

Another cool thing about this course is that we will use multiple programming languages to create the whole application around the model itself. This will make you not only a better AI Engineer but also get you on the path towards becoming a Full stack AI Engineer.

After taking this course you will guarantee yourself to be one step closer to landing your dream job as an AI/ML Engineer by having your own AI product/project in your portfolio.


Libraries/Tools used in the course:

The whole Deep learning back-end of our pipeline will be built using Tensorflow 1.10.0. For some image preprocessing task we will use some basic functionality from OpenCV, the most important Python library for image processing tasks!

For the app's back-end (model handling, image uploading, page navigation, etc.) we will use the Flask python framework.

And for our interactive, front-end we are going to use HTML, CSS, JavaScript and Jinja templating language. So at the end of the course you will have full stack working application.

Who is this course for?

As you can see the course is meant to teach you how to create your own Deep Learning product from scratch.

If you are just starting out with Deep Learning, this course might be too hard for you. But if you like challenges, I do recommend following it. Although I will not be explaining the meat of Neural Networks (ANNs, CNNs), I will explain most concepts in great detail, so even if you are a total beginner you should be able to follow with the help of your peers or my help through the comments section.

If you have Deep Learning experience and want to move it to the next level you will find this course very useful! You can consider it as a level up for your skills by putting your already great skills to new use. At the end of the course you will not only have learned how to create a working End-to-End pipeline, but also hold proof of your skills for potential employers!


The conclusion is this - this is very rare opportunity, not only to learn Deep Learning concepts, but also how to apply that knowledge and create your own web application (as a complete product) from scratch.

I hope to see you in class!


Who this course is for:

  • Everyone interested in Deep Learning
  • Students who already have basic/intermediate understanding of the backpropagation algorithm
  • Anyone interested in raising their Deep Learning knowledge to the next level
  • Any intermediate level students who have a basic understanding of Neural Networks (Artificial Neural Networks, Convolutional Neural Networks)
  • Anyone who likes coding and wants to create their own product from scratch
  • Any students who are interested in learning how to move Deep Learning models from testing to production environments
  • Any entrepreneur who wants to create their own Deep Learning based product


AI Engineer and Entrepreneur
Luka Anicin
  • 4.5 Instructor Rating
  • 46,779 Reviews
  • 387,093 Students
  • 16 Courses

Meet Luka Anicin, an internationally recognized expert in AI and Machine Learning. He kickstarted his career as a Computer Vision Researcher and quickly became a leading Machine Learning Engineer at BlueLife AI. His entrepreneurial spirit led him to launch Scooby AI in 2020, and later sell it. Luka had an amazing opportunity to work in Photomath creating OCR algorithm for scanning mathematical tasks, that currently benefits over 280 million students worldwide.

Luka founded Datablooz, a global technical project consultancy, helping businesses harness the power of AI. As a passionate educator, he's guided over 500,000 students across 197 countries in understanding complex technical topics. Recognized by Google among the top 150 machine learning experts, Luka is a powerhouse of AI, focused on leveraging technology to transform businesses.

Let him be a part of your journey into the realm of AI and Machine Learning.

Top companies trust Udemy

Get your team access to Udemy's top 26,000+ courses