Clustering images using an image region graph
First Claim
1. A computer-implemented method for grouping images from a collection of digital images, comprising:
- (a) representing, using a processor, regions of images as vertices in a graph, wherein the images are from the collection of digital images;
(b) connecting, using the processor, each pair of matching-vertices with a matching-edge in the graph, wherein two vertices are matching-vertices if they represent corresponding regions in two images;
(c) connecting, using the processor, each pair of overlap-vertices with an overlap-edge in the graph, wherein two vertices are overlap-vertices if they represent regions of the same image;
(d) assigning, using the processor, weights to each said matching-edge and to each said overlap-edge;
(e) organizing, using the processor, the graph into visual-clusters; and
(f) outputting, using the processor, one or more signals corresponding to the visual-clusters.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods for grouping images from image corpora using graph clustering are presented. In one embodiment, a method is presented where grouping of images from a collection of digital images is done by: representing regions of images as vertices in a graph; connecting each pair of matching-vertices with a matching-edge; connecting each pair of overlap-vertices with an overlap-edge; assigning weights to each said matching-edge and to each said overlap-edge; clustering the graph, wherein clustering generates one or more vertex-clusters; and grouping the digital images into visual-clusters based on the vertex-clusters. Corresponding systems and computer program products are also presented.
-
Citations
23 Claims
-
1. A computer-implemented method for grouping images from a collection of digital images, comprising:
-
(a) representing, using a processor, regions of images as vertices in a graph, wherein the images are from the collection of digital images; (b) connecting, using the processor, each pair of matching-vertices with a matching-edge in the graph, wherein two vertices are matching-vertices if they represent corresponding regions in two images; (c) connecting, using the processor, each pair of overlap-vertices with an overlap-edge in the graph, wherein two vertices are overlap-vertices if they represent regions of the same image; (d) assigning, using the processor, weights to each said matching-edge and to each said overlap-edge; (e) organizing, using the processor, the graph into visual-clusters; and (f) outputting, using the processor, one or more signals corresponding to the visual-clusters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 23)
-
-
17. A system for grouping images, comprising:
-
a processor; an interface, wherein the interface connects to a collection of digital images; and a visual clustering module that groups images from the collection of digital images, the visual clustering module comprising; a graph generator module configured to generate a graph, wherein vertices of the graph represent regions in an image, wherein matching-edges connect regions to corresponding regions in different images, wherein overlap-edges connect regions in the same image, wherein matching-edges are assigned weights based on the probability that the match between the corresponding regions is a false positive, and wherein overlap-edges are assigned weights based on the center-of-gravity and size of corresponding regions; and a graph organizer module, configured to organize the graph into visual-clusters;
wherein the visual clustering module embodied as computer program code is executed by the processor, and the visual clustering module is configured to access the collection of digital images through said interface. - View Dependent Claims (18, 19)
-
-
20. A computer program product comprising a computer usable medium having computer program logic recorded thereon for causing a processor to group images from a collection of digital images, said computer program logic comprising:
-
a first computer program that causes the processor to represent regions of images as vertices in a graph, wherein the images are from the collection of digital images; a second computer program that causes the processor to connect each pair of matching-vertices with a matching-edge in the graph, wherein two vertices are matching-vertices if they represent corresponding regions in two images; a third computer program that causes the processor to connect each pair of overlap-vertices with an overlap-edge in the graph, wherein two vertices are overlap-vertices if they represent regions of the same image; a fourth computer program that causes the processor to assign weights to each said matching-edge and to each said overlap-edge; a fifth computer program that causes the processor to organize the graph into visual-clusters; and a sixth computer program that causes the processor to output one or more signals corresponding to the visual-clusters. - View Dependent Claims (21, 22)
-
Specification