How to Setup a Visual Recognition Service if you never used an image processing service

Hello everybody! What can I say, this is not the first time I’m writing a blog, but as a tech savvy I decided that it should be mandatory.

So before I dive in and give you a new perspective on data through visual content, I would like to introduce myself — so you actually get to know the person behind the words :)

I’m Guy, 26 years old from Israel. I must say this picture well describes me. An awesome geek, gamer and a tech savvy.

Working in IBM as an AI specialist and a developer advocate. As part of my job I’m working closely with startups and other big companies to engage IBM’s AI solutions into their products. I decided to share with you over this blog technical issues, business issues and other fun stuff about what is the startup nation is all about.

So after this introduction, let’s dive in.

One of the most important those days is to create value from the data you have. As you might know, IBM the last few years is a pioneer in the field of AI and machine learning. As part of IBM cloud, a whole set of Watson capabilities is available for anyone to use and it’s called Watson APIs. As part of those API you can find Watson Assistant (A chatbot building platform), NLP engines and more. Today although, we are going to talk about Visual Recognition API.

This API allows you to use visual data to gain information about the data in the image. Few capabilities you can find are:

  1. Using the general model — the general model, a trained model by IBM, allows you to use an active and large data set to gain insights from you own pictures.
  2. Food model — Same as the general model, but a specific data set for the thing that matters the most, FOOD! You can use it to find any type of food, and one of the main applications of that model is in the catering and restaurant industry, mainly if you want to create a specif menu or so
  3. Face model — an extremely cool feature that allows you to analyze the face in the model, get the gender and the age of the person in the picture, and if it’s someone famous — also gives you the name of the person. That allows you to analyze your data and create special features to your product (mainly if you are in the advertising and ad-tec business)
  4. Explicit model — A very important feature that allows you to analyze if an image contains inappropriate content or nudity.
  5. Text model — Allows you to extract text from a picture, and have a textual metadata. This options is now in private beta — but you can totally sign up for it!
  6. Custom model — Enables you to create a custom model, with your own pictures and train it to get better results!

So, those are the options. But how could you actually use it?

Each instance of the service comes with an API key, you can call the API by creating a connection to the API and use it. The API support a lot of different coding languages such as Java, NodeJS, Python etc.

The tool would something like that:

You can see all the optional models that I mentions, and there are also the custom models further down in the page

In the credentials section, you can see the credentials of the service such as the API key.

When clicking “Test” on one of the model, you go to the front page of each model, where there you can find all the information about the model, such as how many data sets of pictures you have, how many pictures you uploaded and more. It should look something like that:

Clicking on “Test” you can try your model and see the results.

Clicking on “Implementation” you can actually get a code to help you first implement this API in your code. All of the languages spoken of above are there. Here is what I talk about:

Well, after setting up, what’s next? Basically — start training your custom model or use the general one! The minimum amount of pictures to train a custom model is 2 data sets of 10 pictures, but I recommend you upload more pictures to get a better result (;

Few things you should know before starting:

  1. it’s really cheap, like seriously cheap. You get more for your money, and you get really nice results.
  2. In order to make your data make more sense, don’t be tight on the pictures, upload few data sets of picture with more then 50 pictures each. It would make your results more refined and would give you more that you think…
  3. Don’t be afraid to try new stuff with this service. For example: this service also gives you the opportunity of identifying colors, which can help you use it for even more implementations then you think.

I want to sum up this post with a reference to our website, to see and check demos and business case, and to get access to service. Click Here.

Think you already know how to use the service and build an awesome application? Check out our city page (click here) at IBM Code to get access for more tutorials, news, blog posts and other resources and to be a part of our growing community.

Until next time,

Guy