Skip to main content

Converts images into corresponding Region Adjacency Graphs

Project description

img2rag

Convert any image into its Region Adjacency Graph which can be used for either image segmentation or to create a graph embedding of the image. scheme


Installation

Simply run pip install img2rag

What is does

Given an image, we segement it into morphological regions using first Felzenszwalb segmentation followed by a threshold-cut. We then use the segmeneted regions to construct the following graph:

  1. Each node corresponds to a segmented region.
  2. We connect two regions if they are adjacent.

This is the so-called region adjacency graph. Furthermore, we add the following node-attributes to each region:

  1. Location of the region centeriod
  2. Orientation of the region
  3. Mean and total color of the region
  4. Size in px

The edges contain the mean-color difference between the two regions

How to use

Simply import the RAGimage class and initiate with any image. Then use the build in methods to access various properties.

from img2rag import RAGimage

# We assume the image is given as a numpy array or tf.Tensor with either 2 or 3 dimensions
# where the third dimension is the optional channel dimension.
img_tensor = [...]

# initiate RAGiamge instance
image_rag = RAGimage(img_tensor)

# RAG as a networkx attributed DiGraph
image_rag.rag

# Scikit style labels of the image segementation
image_rag.labels

# Adjacency matric of the RAG
image_rag.adjacency

# Graph feature matrix of the RAG
# (Nodes x Node-Features)
image_rag.signal

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

img2rag-1.0.0.tar.gz (250.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page