Skip to content

Cloudy Vision is an open source tool to test the image labeling capabilities of different computer vision API vendors.

License

Notifications You must be signed in to change notification settings

brettb/cloudy_vision

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cloudy Vision: compare computer vision APIs

Run a corpus of images through multiple computer vision API vendors. View image labeing results side by side so that you can get a general feel for how well each vendor works for your use case. Supported vendors: Microsoft, IBM, Google, Cloudsight, and Clarifai.

View example output.

Read this blog post for details.

How it works

  1. For a given directory of images, and list of vendors:
  2. Call each vendor API for that image (or skip it if cached), e.g. call Google for dog_at_the_park.jpg.
  3. Store results in a JSON file with the name: filename.vendor.json, e.g. dog_at_the_park.jpg.google.json.
  4. Create a scaled copy of the original image with height 200px.
  5. Generate output.html to show all the images and labeling results in an easy to consume manner.

Usage

  1. Get keys for each vendor, and put them in a file called api_keys.json (copy example_api_keys.json to get started).
  2. Install dependencies (see below).
  3. Place all your images in ./input_images.
  4. Run the script: python cloudy_vision.py
  5. View ./output/output.html to see results.
  6. If you add more images, simply re-run the script. Prior results are cached.

Installation

Install these dependencies:

pip install cloudsight
pip install git+git://github.com/Clarifai/clarifai-python.git
pip install --upgrade watson-developer-cloud
pip install Jinja2

And OpenCV... which can be a pain. OpenCV is only used to resize the images for display. If you don't care about this, you can remove the dependencie, and remove the call to resize and copy images (or email me for help).

Contributing

If you make modifications that may help others, please fork and send me a pull request. Some ideas for contributions: (a) add new image recognition vendors, (b) expose more attributes per vendor, e.g. face detection, (c) bugs, requests, feedback.

Credits

Authored by @goberoi

License

MIT License - Copyright (c) 2016 Gaurav Oberoi.

About

Cloudy Vision is an open source tool to test the image labeling capabilities of different computer vision API vendors.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 57.5%
  • Python 26.6%
  • HTML 15.9%