Skip to content

Cross-platform GUI Client for Computer Vision APIs (Google Vision, Microsoft Cognitive Services, Clarifai and Keras' open source models)

License

Notifications You must be signed in to change notification settings

jason-chao/memespector-gui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Memespector-GUI DOI

Memespector-GUI is a cross-platform client for computer vision APIs with a graphical user interface. Memespector-GUI supports Google Cloud Vision API, Microsoft Azure Cognitive Services, Clarifai Computer Vision and an API for Keras' built-in open source models.

Memespector-GUI runs on Windows, Mac OS and Linux.

Screenshot

If you use this tool in your research, please cite it.

APA

Chao, J. (2023). Memespector-GUI: Graphical User Interface Client for Computer Vision APIs (Version 0.2.5) [Computer software]. https://doi.org/10.5281/zenodo.7704877

BibTeX

@software{Chao_Memespector-GUI_Graphical_User_2023,
author = {Chao, Jason},
doi = {10.5281/zenodo.7704877},
month = {3},
title = {{Memespector-GUI: Graphical User Interface Client for Computer Vision APIs}},
url = {https://github.com/jason-chao/memespector-gui},
version = {0.2.5},
year = {2023}
}

Contents

Download

Downlaod the latest version of Memespector-GUI for Windows, Mac OS or Linux.

When you open Memespector-GUI for the first time on Windows or Mac, the operating system may decline to run Memespector-GUI because of tightened security measures. If this happens, please follow the instructions on how to allow Memespector-GUI to run at first launch on Windows and Mac.

Gaining access to APIs

You have to get authentication keys from Google Cloud, Microsoft Azure and Clarifai in order to use their APIs.

  1. If you wish to use Google Vision API, you must obtain a credential key file from Google Cloud. See the instructions on how to activate Google Cloud Service and obtain an authentication file.
  2. If you wish to use Microsoft Azure Cognitive Services Computer Vision, you must obtain a service endpoint and subscription key from Microsoft Azure. See the instructions on how to activate Microsoft Azure and obtain authentication keys.
  3. If you wish to use Clarifai, you must obtain an API key from Clarifai. See the instructions on how to obtain an API key from Clarifai.

Usage

Note: The graphical user interfaces of Memespsector-GUI are nearly identical across the Windows, Mac and Linux versions. For illustrative purpose, the screenshots of the Windows version are used in this document. The following steps also apply to the Mac and Linux versions of Memespector-GUI.

Change API settings

Screenshot

Google Vision

Select the credential key file

Check the box for Google Vision. Click Browse to the right of the Credential file box.

Screenshot

Select the .json file you downloaded from Google Cloud. See the detailed instructions on how to obtain a credential file from Google Cloud.

Screenshot

Select the features to be detected

Check the features that you want Google Vision API to detect in the images.

Screenshot

  • Safety - adult, violent and racist elements
  • Face - emotional expressions of faces
  • Label - generalised labels defined by Google
  • Web - web entities (inferred descriptions from similar images on the web), similar images, full/partial matching images, visually similar images and web pages with matching images
  • Text - the text recognised
  • Landmark - well-known or prominent sites
  • Logo - logos of popular products

Microsoft Azure Cognitive Services

Paste the Endpoint and Subscription key

Check the box for Microsoft Azure. Paste the Endpoint and Subscription key you obtained from Microsoft Azure into the Endpoint and Subscription key boxes. See the detailed instructions on how to obtain an endpoint and a key from Microsoft Azure.

screenshot

Select the features to be detected

Check the features that you want Microsoft Azure Cognitive Services to detect in the images.

screenshot

  • Adult - explicitly sexual, sexually suggestive and blood/gore
  • Brands - logos of brands in consumer electronics, clothing and more
  • Categories - 86-category taxonomy
  • Description - a human-readable sentence that describes the image's contents
  • Face - human faces with age and gender
  • Objects - objects or living things with bounding box coordinates
  • Tags - recognisable objects, living beings, scenery and actions

Clarifai

Check the box for Clarifai. Paste the API key you obtained from Clarifai into the API key box. See the detailed instructions on how to obtain an API key from Clarifai.

screenshot

Select the computer vision model

Pick the model that you want Clarifai to use to analyse the images.

screenshot

  • General - concepts including objects, themes, moods and more
  • Apparel - fashion-related concepts
  • Celebrity - recognised celebrities
  • Color - dominant colours present
  • Food - food items
  • Moderation - gore, drugs, explicit nudity or suggestive nudity
  • NSFW - nudity
  • Textures and Patterns - common textures (feathers, woodgrain), unique/fresh concepts (petrified wood, glacial ice) and overarching descriptive concepts (veined, metallic)
  • Travel - specific features of residential, hotel and travel-related properties

Open source models

Caution: The API that serves open source pre-trained computer vision models is experimental. It does not offer the same level of performance as the commercial APIs. The default endpoint in Memespector-GUI is for evaluation purpose only.

Check the box for Open Source.

screenshot

Select the convolutional neural network (only if necessary)

The open source models are made available by machine learning library Keras. These models were trained on the ImageNet database. Just leave the default option unchanged unless you want to study these models. The differences between them are in the construction of convolutional neural networks. If interested in the details, see here.

screenshot

Add images to Memespector-GUI

Images on a computer

Click image files on this computer. Select the image files. Click Open. The locations of the image files will be added to the Image Sources box.

Screenshot

Screenshot

If you want to add all images inside a folder with many sub-folders which also contain images, click a folder containing images on this computer. Select the folder. The location of the folder will be added to the Image Sources box.

Screenshot

Screenshot

(Change of display behaviour from Version 0.2.3 beta: Only the location of the selected (outermost) folder will be displayed in the Image Sources box. The locations of image files inside the folder (and its subfolders) do not have to be displayed in the box in order to be processed. This change does not affect the total number of image files to be processed.)

Images on the web

If you are going to process hundreds or thousands of URLs, paste the URLs into a text (.txt) file. Put one URL per line.

Screenshot

Screenshot

Click a text file containing image locations. Select the text file. Click Open. The location of the text file containing the URLs will be added to the Image Sources box.

Screenshot

If you are going to just a few or tens of URLs, copy and paste the URLs of the images into the Image Sources box. Put one URL per line.

Screenshot

Edit the names for output files

Memespector-GUI generates two output files. The JSON file stores the structured data values in full generated by the computer vision APIs. The CSV file contains a version of the data transformed into a tabular format which may be easily opened using general software tools like spreadsheet editors.

Click Browser to the right of each field to change the name and location of an output file.

Screenshot

Invoke the APIs

Click Invoke APIs after you have changed the APIs' settings, added image files or URLs to the Image locations box and/or edited the output filenames.

Screenshot

Memespector-GUI will show the progress of sending the images to the APIs.

Screenshot

Once all images are processed, a message about the completion will be shown. Open the output files to see the results.

Screenshot

Credits

Developed by Jason Chao.

Special thanks to Janna Joceli Omena for her efforts in idea generation and software testing.

Inspired by the original memespector projects of bernorieder and amintz.

About

Cross-platform GUI Client for Computer Vision APIs (Google Vision, Microsoft Cognitive Services, Clarifai and Keras' open source models)

Resources

License

Stars

Watchers

Forks

Languages