Image Embedding

../_images/image-embedding.png

Image embedding through deep neural networks.

Signals

Inputs:

  • Images

    List of images.

Outputs:

  • Embeddings

    Images represented with a vector of numbers.

  • Skipped Images

    List of images where embeddings were not calculated.

Description

Image Embedding reads images and uploads them to a remote server or evaluate them locally. Deep learning models are used to calculate a feature vector for each image. It returns an enhanced data table with additional columns (image descriptors).

Images can be imported with Import Images widget or as paths to images in a spreadsheet. In this case the column with images paths needs a three-row header with type=image label in the third row.

../_images/header-example.png

Image Embedding offers several embedders, each trained for a specific task. Images are sent to a server or they are evaluated locally on the user’s computer, where vectors representations are computed. SqueezeNet embedder offers a fast evaluation on users computer which does not require an internet connection. If you decide to use other embedders than SqueezeNet, you will need an internet connection. Images sent to the server are not stored anywhere.

../_images/ImageEmbedding-stamped.png
  1. Information on the number of embedded images and images skipped.

  2. Settings:

  3. Tick the box on the left to start the embedding automatically. Alternatively, click Apply. To cancel the embedding, click Cancel.

  4. Access help.

Example

Let us first import images from a folder with Import Images. We have three images of an orange, a banana and a strawberry in a folder called Fruits. From Import Images we will send a data table containing a column with image paths to Image Embedding.

We will use the default embedder SqueezeNet. The widget will automatically start retrieving image vectors from the server.

../_images/ImageEmbedding-Example1.png

Once the computation is done, you can observe the enhanced data in a Data Table. With the retrived embeddings, you can continue with any machine learning method Orange offers. Below is an example for clustering.

../_images/ImageEmbedding-Example2.png