logo
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Readme
Files and versions

2.4 KiB

Image Embdding with DOLG

author: David Wang

Desription

This operator extracts features for image with DOLG which has special design for image retrieval task. It integrates local and global information inside images into compact image representations. This operator is an adaptation from dongkyuk/DOLG-pytorch.

Code Example

Load an image from path './towhee.jpg' to generate an image embedding.

Write the pipeline in simplified style:

import towhee

towhee.glob('./towhee.jpg') \
      .image_decode.cv2() \
      .image_embedding.dolg(img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048) \
      .show()

result1

Write a same pipeline with explicit inputs/outputs name specifications:

import towhee

towhee.glob['path']('./towhee.jpg') \
      .image_decode.cv2['path', 'img']() \
      .image_embedding.dolg['img', 'vec'](img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048) \
      .select('img', 'vec') \
      .show()
result2

Factory Constructor

Create the operator via the following factory method

image_embedding.dolg(img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048)

Parameters:

img_size: int

​ Scaled input image size to extract embedding. The higher resolution would generate the more discriminateive feature but cost more time to calculate.

input_dim: int

​ The input dimension of DOLG module (equals pretrained cnn output dimension).

hidden_dim: int

​ The hidden dimension size, local feature branch output dimension.

output_dim: int

​ The output dimsion size, same as embedding size.

Interface

An image embedding operator takes a towhee image as input. It uses the pre-trained model specified by model name to generate an image embedding in ndarray.

Parameters:

img: towhee.types.Image (a sub-class of numpy.ndarray)

​ The decoded image data in towhee.types.Image (numpy.ndarray).

Returns: numpy.ndarray

​ The image embedding extracted by model.

2.4 KiB

Image Embdding with DOLG

author: David Wang

Desription

This operator extracts features for image with DOLG which has special design for image retrieval task. It integrates local and global information inside images into compact image representations. This operator is an adaptation from dongkyuk/DOLG-pytorch.

Code Example

Load an image from path './towhee.jpg' to generate an image embedding.

Write the pipeline in simplified style:

import towhee

towhee.glob('./towhee.jpg') \
      .image_decode.cv2() \
      .image_embedding.dolg(img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048) \
      .show()

result1

Write a same pipeline with explicit inputs/outputs name specifications:

import towhee

towhee.glob['path']('./towhee.jpg') \
      .image_decode.cv2['path', 'img']() \
      .image_embedding.dolg['img', 'vec'](img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048) \
      .select('img', 'vec') \
      .show()
result2

Factory Constructor

Create the operator via the following factory method

image_embedding.dolg(img_size=512, input_dim=3, hidden_dim=1024, output_dim=2048)

Parameters:

img_size: int

​ Scaled input image size to extract embedding. The higher resolution would generate the more discriminateive feature but cost more time to calculate.

input_dim: int

​ The input dimension of DOLG module (equals pretrained cnn output dimension).

hidden_dim: int

​ The hidden dimension size, local feature branch output dimension.

output_dim: int

​ The output dimsion size, same as embedding size.

Interface

An image embedding operator takes a towhee image as input. It uses the pre-trained model specified by model name to generate an image embedding in ndarray.

Parameters:

img: towhee.types.Image (a sub-class of numpy.ndarray)

​ The decoded image data in towhee.types.Image (numpy.ndarray).

Returns: numpy.ndarray

​ The image embedding extracted by model.