300 likes | 431 Views
A graph, non-tree representation of the topology of a gray scale image Peter Saveliev Marshall University , USA. Outline. A new (directed) graph representation of the topology of a gray scale image is presented.
E N D
A graph, non-tree representation of the topology of a gray scale image Peter SavelievMarshall University,USA
Outline • A new (directed) graph representation of the topology of a gray scale image is presented. • This graph combines the inclusion trees of the lower and upper level sets of the gray level function. • These sets are captures by cycles: simple closed curves. • Algorithm is based on cell decomposition: the image is represented as a combination of pixels as well as edges and vertices; • A graph representation of the topology of a colorimage is presented. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology of binary images via cycles Cycles capture components and holes. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology of gray scale images Cycles capture components and holes of the lower level sets A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology of gray scale images A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Gray scale function The connected components of upper and lower level sets are building blocks of segmentation. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Inclusion tree The connected components of the lower level sets form a tree structure based on inclusion. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Lower level set inclusion tree A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Lower and upper level inclusion trees . A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Inclusion trees To represent the topology of the image we need both inclusion trees, combined in some way. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Combined inclusion tree Based on inclusion of the contours. + = + = • The lower level sets are mixed with the upper level sets. • The gray levels are also mixed. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
The topology graph of the image + = + = A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology graph • The lower and upper inclusion trees remain intact within the graph. • The graph breaks into layers that coincide with the topology graphs of the corresponding binary images. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology graph The nodes of the topology graph are the objects and holes in the thresholded image and there is an arrow from node A to node B if: • object B has hole A, provided A and B correspond to consecutive gray levels. • object B has hole A, provided A and B correspond to the same gray level. • And vice versa. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Cell decomposition A binary image is a rectangle covered by black and white pixels arranged in a grid. A pixel is a square: [n, n + 1] × [m, m + 1]. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Cell decomposition • a vertex {n}×{m} is a 0-cell, • an edge {n}×(m, m + 1) is a 1-cell, and • a face (n, n + 1)×(m, m + 1) is a 2-cell. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Cell decomposition • Two adjacent edges are 1-cells and they share a vertex, a 0-cell; • Two adjacent faces are 2-cells and they share an edge, a 1-cell. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Cycles in image segmentation Both connected components and holes are captured by cycles: • a 0-cycle as a sequence of vertices that follows the outer boundary of an object; • a 1-cycle as a sequence of edges that follows the outer boundary of a hole. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Image segmentation via cycles A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Outline of the algorithm All pixels in the image are ordered according to the gray level. Following this order, each pixel is processed: • add its vertices, unless those are already present as parts of other pixels; • add its edges, unless those are already present as parts of other pixels; • add the face of the pixel. At every step, the graph is given a new node and arrows to represent the merging and the splitting of the cycles: • adding a new vertex creates a new component; • adding a new edge may connect two components, or create, or split a hole; • adding the face eliminates the hole. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Adding an edge A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Stages of analysis A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Performance N is the number of pixels in the image. • The memory is O(N). • The complexity is O(N2). A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Pixcavator See demo session A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Analysis of color images If only one of the three primary color is changing, the topology is the same as of a gray scale image A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Thresholding - RGB A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Color images • The RGB color space: • S={ (r, g, b) : 0 ≤ r, g, b ≤255} • Partial order on S: (r, g, b) ≤ (r’, g’, b’) if • r ≤ r’, g ≤ g’, b ≤ b’. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Outline of the algorithm • All pixels in the image are ordered according to partial order of the RGB space. • Following this order, each pixel is processed: • add its vertices, unless those are already present as parts of other pixels; • add its edges, unless those are already present as parts of other pixels; • add the face of the pixel. • At every step, the graph is given a new node and arrows that connect the nodes in order to represent the merging and the splitting of the cycles: • adding a new vertex creates a new component; • adding a new edge may connect two components, or create, or split a hole; • adding the face to the hole eliminates the hole. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Topology graph of a color image The nodes of the topology graph are the objects and holes in the thresholded image and there is an arrow from node A to node B if: • object B has hole A, provided A and B correspond to consecutive colors. • object B has hole A, provided A and B correspond to the same color. • And vice versa. A graph, non-tree representation of the topology of a gray scale image Peter Saveliev
Thank you A graph, non-tree representation of the topology of a gray scale image Peter Saveliev