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. Remote server uses a deep learning model 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, where vectors representations are computed. Sent images are not stored anywhere. To use the widget, you will need internet connection.

../_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 Inception v3. 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