navidgator - --- similarity based browsing for image ...borth/docs/talk-navidgator.pdfmotivation how...

25
Navidgator — Similarity Based Browsing for Image & Video Databases — Damian Borth, Christian Schulze, Adrian Ulges, Thomas M. Breuel Image Understanding and Pattern Recognition DFKI & TU Kaiserslautern 25.Sep.2008 Borth: KI2008 1 25.Sep.2008

Upload: vonguyet

Post on 22-Jun-2019

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Navidgator— Similarity Based Browsing for Image & Video Databases —

Damian Borth, Christian Schulze,Adrian Ulges, Thomas M. Breuel

Image Understanding and Pattern RecognitionDFKI & TU Kaiserslautern

25.Sep.2008

Borth: KI2008 1 25.Sep.2008

Page 2: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Outline

Borth: KI2008 2 25.Sep.2008

Page 3: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

MotivationHow to retrieve & browse in large databases of images or videos?

I provide global view→ browse through allimages of last year

I find visual similar images→ find all pictures with abeach

I Movie scene finder→ find scenes of Batcave form“The Dark Knight”

I TV network archives→ need a desert video clip fornews report

Borth: KI2008 3 25.Sep.2008

Page 4: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Browsing Metaphor: Stack of images

Start Browsing

I no query is selected

I a random set of image is displayed

I user selects image which roughly represents this query

Borth: KI2008 4 25.Sep.2008

Page 5: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Browsing Metaphor: Stack of images

Zooming & Panning

I zooms into the database i.r.t. selected query

I displays a more detailed cluster of images

I panning = refinement of query

I further zooms will lead to different results

Borth: KI2008 5 25.Sep.2008

Page 6: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Related Work

Query-by-Example [Flickner95]

I database is searchedaccording to given image

I tend to provide a localizedview of the database

I How to get an overview?

ViBE System [Chen04]

I browsing based onSimilarity Pyramids

I browsing performed onlyat shoot level→ shot = one keyframe→ loosing visual details

Borth: KI2008 6 25.Sep.2008

Page 7: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Our Approach

System Pipeline

I Keyframe Extraction→ only for video databases

I Feature Extraction

I Balanced Hierarchical Clustering

I User Interface

Borth: KI2008 7 25.Sep.2008

Page 8: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Keyframe Extraction

Notation

I video databaseDBvideo = X1, ...,Xn

I every video Xi ∈ DBvideo

is represented by a set of{xi1, ..., xim} keyframes

I → resulting in a total setof {x1, ..., xk} keyframesfor the entire DBvideo

Borth: KI2008 8 25.Sep.2008

Page 9: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Keyframe Extraction

Two Step Method

I Shot Boundary DetectionI Color Layout Desc.

(CLD) differencesI Adaptive Thresholding

[Lienhart01]

I Intra-Shot Clustering[Hammoud00]

I CLD feature spaceI K-MeansI Number of clusters:

Bayesian InformationCriterion (BIC)

Borth: KI2008 9 25.Sep.2008

Page 10: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Feature Extraction & Hierarchical ClusteringFeature Extraction

I a feature vector zj ∈ RD is extracted for everykeyframe xj ∈ {x1, ..., xk}

I zj ∈ RD consists of equally weighted color & texture featuresI Color Histograms - 8× 8× 8 binning of RGB CubeI Tamura Texture Histograms [Tamura78]

Clustering Overview

(a) Feature Space of zj ∈ RD

(b) Clustering Result

(c) Dendrogram

(d) Generated Binary Tree

Borth: KI2008 10 25.Sep.2008

Page 11: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Feature Extraction & Hierarchical ClusteringFeature Extraction

I a feature vector zj ∈ RD is extracted for everykeyframe xj ∈ {x1, ..., xk}

I zj ∈ RD consists of equally weighted color & texture featuresI Color Histograms - 8× 8× 8 binning of RGB CubeI Tamura Texture Histograms [Tamura78]

Clustering Overview

(a) Feature Space of zj ∈ RD

(b) Clustering Result

(c) Dendrogram

(d) Generated Binary Tree

Borth: KI2008 10 25.Sep.2008

Page 12: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)

Agglomerative Hierarchical Clustering

1. initialization: - each feature vector zj ∈ {z1...zk} representsa singelton cluster cj ∈ {c1...ck}

- compute Euclidean distance for singeltons

2. merge two nearest clusters: {ci} ∧ {cj} → {ci , cj}3. update distances i.r.t. merged clusters

4. go to step 2 until |c | = 1

Nearest = Used Linkage Method

I Singelton Linkage

I Complete Linkage

I Average Linkage

Borth: KI2008 11 25.Sep.2008

Page 13: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)

Agglomerative Hierarchical Clustering

1. initialization: - each feature vector zj ∈ {z1...zk} representsa singelton cluster cj ∈ {c1...ck}

- compute Euclidean distance for singeltons

2. merge two nearest clusters: {ci} ∧ {cj} → {ci , cj}3. update distances i.r.t. merged clusters

4. go to step 2 until |c | = 1

Nearest = Used Linkage Method

I Singelton Linkage

I Complete Linkage

I Average Linkage

Borth: KI2008 11 25.Sep.2008

Page 14: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)

Average Linkage

d(ci , cj) =1

|ci | ∗ |cj |∗

∑zi∈ci

∑zj∈cj

d(zi , zj)

I distance between “means” of cluster pairs

Clustering Result

I binary tree is linearized → not usable for browsing

Borth: KI2008 12 25.Sep.2008

Page 15: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)

Average Linkage

d(ci , cj) =1

|ci | ∗ |cj |∗

∑zi∈ci

∑zj∈cj

d(zi , zj)

I distance between “means” of cluster pairs

Clustering Result

I binary tree is linearized → not usable for browsing

Borth: KI2008 12 25.Sep.2008

Page 16: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)Modified Average Linkage

d(ci , cj) =1

|ci | ∗ |cj |∗

∑zi∈ci

∑zj∈cj

d(zi , zj) + α ∗ (|ci |+ |cj |)

I Balancing Term: α ∗ (|ci |+ |cj |), where 0 ≤ α ≤ ∞I empirically gave best results with α = 0.01

Clustering with Balancing Term

I balancing term forces clustering to prefer small clustersI binary tree is more balanced → preferred browsing structure

Borth: KI2008 13 25.Sep.2008

Page 17: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (cont)Modified Average Linkage

d(ci , cj) =1

|ci | ∗ |cj |∗

∑zi∈ci

∑zj∈cj

d(zi , zj) + α ∗ (|ci |+ |cj |)

I Balancing Term: α ∗ (|ci |+ |cj |), where 0 ≤ α ≤ ∞I empirically gave best results with α = 0.01

Clustering with Balancing Term

I balancing term forces clustering to prefer small clustersI binary tree is more balanced → preferred browsing structure

Borth: KI2008 13 25.Sep.2008

Page 18: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (tree building)

Binary Tree Generation

I postprocessing of dendrogram structure into a binary tree

I neglecting similarity measurement given by dendrogram

I singelton clusters ci define leafs of binary tree

I merging points {ci , cj} define inner nodes of binary tree

Borth: KI2008 14 25.Sep.2008

Page 19: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Balanced Hierarchical Clustering (tree building)

Question: How to arrange keyframes within a cluster?

I Elements within a cluster do not have a spatial arrangement

I Additional processing to provide spatial organization→ Quad-Tree to Pyramid Mapping [Chen98]

I Our Approach: Use the already available cluster hierarchy→ Inorder Traversal of tree structure

Borth: KI2008 15 25.Sep.2008

Page 20: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Navidgator User Interface

Borth: KI2008 16 25.Sep.2008

Page 21: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Navidgator User Interface

User Interface

1. Selected Query

2. Similarity Cluster (if query refinement is needed)

3. Navigation Menu

4. Browser History

5. Restart BrowsingBorth: KI2008 17 25.Sep.2008

Page 22: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Live Demo

...do we have Internet access here?...

(demo also available at the DFKI-IUPR booth)

Borth: KI2008 18 25.Sep.2008

Page 23: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Summary

Typical Browsing Scenario

I annotation (tags) are not always available

I user has a rough visual concept of the query in mind

Navidgator Prototype

I browsing with “query by example” paradigm

I use of dynamic query refinement

I allows to zoom into different levels of detail

Further Work

I dealing with growing databasesI online clusteringI tree merging

Borth: KI2008 19 25.Sep.2008

Page 24: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

References

I [Flickner95]: M. Flickner et al. Query by image and video content:the QBIC system. IEEE Computer Journal, 1995.

I [Lienhart01]: R. Lienhart. Reliable Transition Detection in Videos:A Survey and Practitioner’s Guide. IJIG, 2001.

I [Hammoud00]: R. Hammoud, R. Mohr. A Probabilistic Frameworkof Selecting Effective Key-Frames for Video Browsing and Indexing2000.

I [Tamura78]: H. Tamura, S. Mori, T. Yamawaki. Textural featurescorresponding to visual perception. IEEE-SMC, 2000.

I [Chen04]: J.Y. Chen, C. Taskiran, A. Albiol, E.J.Delp, C.A.Bouman. Vibe: A compressed video database structured for activebrowsing and search, IEEE Transactions on Multimedia 2004.

I [Chen98]: J. Chen, C.A. Bouman, J.C. Dalton. Similarity pyramidsfor browsing and organization of large image databases, SPIE 1998.

Borth: KI2008 20 25.Sep.2008

Page 25: Navidgator - --- Similarity Based Browsing for Image ...borth/docs/talk-navidgator.pdfMotivation How to retrieve & browse in large databases of images or videos? I provide global view!browse

Questions?

Borth: KI2008 21 25.Sep.2008