SlideShare a Scribd company logo
Hands On Logo Search

Figurative Mark Retrieval Prototype



                   By Francisco José Alvarez Sánchez
                   Analyst Developer (ext) at OHIM IPR-Laboratory
Developing a Figurative Mark Retrieval
Prototype (Figumare)

Objective:

• Create a Proof of Concept of how a Figurative Mark Retrieval
  System could work
• Document some “Lessons Learnt” about this experience.
The Problem


A user only has:
 • a printed logo on paper or
 • a logo image file or
 • a URL of a logo file


and wants to know:
          the CTM Profile of the logo
Solution
A “Figurative Mark Retrieval Tool”

  Retrieving:
• CTM-profiles with scores

  When just a reference logo is submited from :
      Scanner
      Camara
      Internet
      Local file

   In a reasonable time
How?


• Obtain a CBIR Engine
   o (Content Based Image Retrieval)
   o There are many, in different architectures and
     licences.
   o See Wikipedia CBIR Engine List
• Create an interface to interact with the engine
• Tuning the CBIR with the particularities of the logos
   o by using a sample of logos
• Index the whole collection of CTM logos
Obtaining a CBIR


The CBIR engine LIRE has been selected because:

• The licence is open source (GPL)
• Is completely written in Java (no dependencies)
• Uses only Lucene for storing the descriptors of the images
   o   DB is not needed
• Very well structured
   o Prepared for adding more features.
   o The internal behaviour is easy to modify
   o The source code is clear and well documented
   o Includes unit tests.
• The project is active
How LIRE works - 1

Definition of a "descriptor"

• A sequence of numbers that extracts as much
  information as possible on each one of the
  following image features:
   o Color Histogram
   o Color Layout
   o Texture (Edge Histogram)
   o Etc
LIRE Descriptors in LUCENE
How LIRE works - 2

The Standard algorithm
 • Sequential
    o Compares a given descriptor with each descriptor in the
      collection
 • Robust and well tested

The Space Metric Algorithm
 • Not sequential
    o Much faster
    o It describes an image as an ordered list of similar images
    o It's new, not completely tested
    o Need some tuning when indexing
The Standard Algorithm - 1

• Indexing the collection of images
   o For each image of the collection
       Extracts the list of descriptors from the image
       Creates a Lucene document with the following attributes:
          An id of the logos
          The related descriptor for each feature
The Stantard Algorithm - 2

• Searching an image
   o Extracts the list of descriptors from the reference image
   o For each Lucene document in the collection
       For each feature
           Calculate distance between both descriptors
       Calculate average distance applying weightings
   o Order the distances and calculate score
   o Returns the id of the logos with the highest scores



The drawback of this method is that the descriptor of the image has to
be compared sequentially for the whole collection of images
The Metric Spaces Algorithm


The general idea of this method is to describe every
image by an ordered list of most similar images from
a “vocabulary of images"
The Metric Spaces - Example

From a collection of 300,000 images

• Index the collection of images
   o Select a random subset of 1,000 images called s1
   o Index s1 in a new lucene index l1 by using the classic
     method
   o For each image in the collection of 300,000 images
       Search the 50 most similar from the 1,000 images in s1
       Add the ordered list of 50 identificators as new
        descriptors
The Metric Spaces - Example Cont


• Searching an image
   o Search the 50 most similar from the 1,000 images in s1
   o Query in Lucene by comparing the sequence of 50 ordered ids
   o The footrule distance for comparing ranked vectors is used
Create an interface to interact with the
LIRE engine
• The interface is a Spring Web Application written in Grails

• The services of the system allows the following:

   o   Index a collection from a directory
   o   Index a collection from a list of URL's
   o   Search by an uploaded logo
   o   Search by an URL of a logo

• An Android application has being created so it is possible to take a
  picture of a logo with a mobile phone and search it directly.
Figumare Web Interface
Tuning Figumare - 1


•   Collection size 678 logos
•   Vienna Code: “Geometrical Figures"
•   A great percentage of the CTMs have noise
•   Using ImageMagick before indexing would
    o Reduce the noise and
    o Sharpen the edges of the figure
• Not incorporated in the prototype
Tuning Figumare - 2 - Collection
Tuning Figumare -3

The figumare application has been tested with some
degradation of logos as well as direct pictures taken
from a mobile phone camera, also it has been
compared with some logo URL’s from the internet.

Since most of the logos of the collection are black
and white, the only necessary feature is “texture”
Tuning Figumare - 4

Some photos of logos to search:
Figumare Search Example
Conclusion

- Adopting a CBIR tool for logo search is possible


- The Tuning Phase is decisive in order to have a successful
project

  - Clear noise from the logo collection and the logo reference
  - Correct weighting of features
  - New logo features OCR text descriptor

More Related Content

Similar to Hands on Logo Search

Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
Microsoft Mobile Developer
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
riarana10
 
AISF19 - Unleash Computer Vision at the Edge
AISF19 - Unleash Computer Vision at the EdgeAISF19 - Unleash Computer Vision at the Edge
AISF19 - Unleash Computer Vision at the Edge
Bill Liu
 
Robust face name graph matching for movie character identification - Final PPT
 Robust face name graph matching for movie character identification - Final PPT Robust face name graph matching for movie character identification - Final PPT
Robust face name graph matching for movie character identification - Final PPT
Priyadarshini Dasarathan
 
Cutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for EveryoneCutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for Everyone
Ivo Andreev
 
Feature Based Opinion Mining from Amazon Reviews
Feature Based Opinion Mining from Amazon ReviewsFeature Based Opinion Mining from Amazon Reviews
Feature Based Opinion Mining from Amazon Reviews
Ravi Kiran Holur Vijay
 
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
Lucidworks
 
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
SWAMI06
 
UNIT-4.pdf
UNIT-4.pdfUNIT-4.pdf
UNIT-4.pdf
NiharikaThakur32
 
UNIT-4.pdf
UNIT-4.pdfUNIT-4.pdf
UNIT-4.pdf
NiharikaThakur32
 
UNIT-4.pptx
UNIT-4.pptxUNIT-4.pptx
UNIT-4.pptx
NiharikaThakur32
 
AN INTEGRATED APPROACH TO CONTENT BASED IMAGE RETRIEVAL by Madhu
AN INTEGRATED APPROACH TO CONTENT BASED IMAGERETRIEVAL by MadhuAN INTEGRATED APPROACH TO CONTENT BASED IMAGERETRIEVAL by Madhu
AN INTEGRATED APPROACH TO CONTENT BASED IMAGE RETRIEVAL by Madhu
Madhu Rock
 
46.-Applications-of-AI-Image-Processing.pdf
46.-Applications-of-AI-Image-Processing.pdf46.-Applications-of-AI-Image-Processing.pdf
46.-Applications-of-AI-Image-Processing.pdf
monikag2613
 
Image Classification and Retrieval on Spark
Image Classification and Retrieval on SparkImage Classification and Retrieval on Spark
Image Classification and Retrieval on Spark
Gianvito Siciliano
 
Face recognition system
Face recognition systemFace recognition system
Face recognition system
ShitanshuRanjanSriva2
 
Opticalcharacter recognition
Opticalcharacter recognition Opticalcharacter recognition
Opticalcharacter recognition
Shobhit Saxena
 
COMMitMDE'18: Eclipse Hawk: model repository querying as a service
COMMitMDE'18: Eclipse Hawk: model repository querying as a serviceCOMMitMDE'18: Eclipse Hawk: model repository querying as a service
COMMitMDE'18: Eclipse Hawk: model repository querying as a service
Antonio García-Domínguez
 
Evolving a Medical Image Similarity Search
Evolving a Medical Image Similarity SearchEvolving a Medical Image Similarity Search
Evolving a Medical Image Similarity Search
Sujit Pal
 
Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2
Sam_Francis
 
Image processing.pdf
Image processing.pdfImage processing.pdf
Image processing.pdf
JasaRChoudhary
 

Similar to Hands on Logo Search (20)

Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
 
AISF19 - Unleash Computer Vision at the Edge
AISF19 - Unleash Computer Vision at the EdgeAISF19 - Unleash Computer Vision at the Edge
AISF19 - Unleash Computer Vision at the Edge
 
Robust face name graph matching for movie character identification - Final PPT
 Robust face name graph matching for movie character identification - Final PPT Robust face name graph matching for movie character identification - Final PPT
Robust face name graph matching for movie character identification - Final PPT
 
Cutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for EveryoneCutting Edge Computer Vision for Everyone
Cutting Edge Computer Vision for Everyone
 
Feature Based Opinion Mining from Amazon Reviews
Feature Based Opinion Mining from Amazon ReviewsFeature Based Opinion Mining from Amazon Reviews
Feature Based Opinion Mining from Amazon Reviews
 
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
Galene - LinkedIn's Search Architecture: Presented by Diego Buthay & Sriram S...
 
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
A Segmentation based Sequential Pattern Matching for Efficient Video Copy De...
 
UNIT-4.pdf
UNIT-4.pdfUNIT-4.pdf
UNIT-4.pdf
 
UNIT-4.pdf
UNIT-4.pdfUNIT-4.pdf
UNIT-4.pdf
 
UNIT-4.pptx
UNIT-4.pptxUNIT-4.pptx
UNIT-4.pptx
 
AN INTEGRATED APPROACH TO CONTENT BASED IMAGE RETRIEVAL by Madhu
AN INTEGRATED APPROACH TO CONTENT BASED IMAGERETRIEVAL by MadhuAN INTEGRATED APPROACH TO CONTENT BASED IMAGERETRIEVAL by Madhu
AN INTEGRATED APPROACH TO CONTENT BASED IMAGE RETRIEVAL by Madhu
 
46.-Applications-of-AI-Image-Processing.pdf
46.-Applications-of-AI-Image-Processing.pdf46.-Applications-of-AI-Image-Processing.pdf
46.-Applications-of-AI-Image-Processing.pdf
 
Image Classification and Retrieval on Spark
Image Classification and Retrieval on SparkImage Classification and Retrieval on Spark
Image Classification and Retrieval on Spark
 
Face recognition system
Face recognition systemFace recognition system
Face recognition system
 
Opticalcharacter recognition
Opticalcharacter recognition Opticalcharacter recognition
Opticalcharacter recognition
 
COMMitMDE'18: Eclipse Hawk: model repository querying as a service
COMMitMDE'18: Eclipse Hawk: model repository querying as a serviceCOMMitMDE'18: Eclipse Hawk: model repository querying as a service
COMMitMDE'18: Eclipse Hawk: model repository querying as a service
 
Evolving a Medical Image Similarity Search
Evolving a Medical Image Similarity SearchEvolving a Medical Image Similarity Search
Evolving a Medical Image Similarity Search
 
Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2
 
Image processing.pdf
Image processing.pdfImage processing.pdf
Image processing.pdf
 

Hands on Logo Search

  • 1. Hands On Logo Search Figurative Mark Retrieval Prototype By Francisco José Alvarez Sánchez Analyst Developer (ext) at OHIM IPR-Laboratory
  • 2. Developing a Figurative Mark Retrieval Prototype (Figumare) Objective: • Create a Proof of Concept of how a Figurative Mark Retrieval System could work • Document some “Lessons Learnt” about this experience.
  • 3. The Problem A user only has: • a printed logo on paper or • a logo image file or • a URL of a logo file and wants to know:  the CTM Profile of the logo
  • 4. Solution A “Figurative Mark Retrieval Tool” Retrieving: • CTM-profiles with scores When just a reference logo is submited from :  Scanner  Camara  Internet  Local file In a reasonable time
  • 5. How? • Obtain a CBIR Engine o (Content Based Image Retrieval) o There are many, in different architectures and licences. o See Wikipedia CBIR Engine List • Create an interface to interact with the engine • Tuning the CBIR with the particularities of the logos o by using a sample of logos • Index the whole collection of CTM logos
  • 6. Obtaining a CBIR The CBIR engine LIRE has been selected because: • The licence is open source (GPL) • Is completely written in Java (no dependencies) • Uses only Lucene for storing the descriptors of the images o DB is not needed • Very well structured o Prepared for adding more features. o The internal behaviour is easy to modify o The source code is clear and well documented o Includes unit tests. • The project is active
  • 7. How LIRE works - 1 Definition of a "descriptor" • A sequence of numbers that extracts as much information as possible on each one of the following image features: o Color Histogram o Color Layout o Texture (Edge Histogram) o Etc
  • 9. How LIRE works - 2 The Standard algorithm • Sequential o Compares a given descriptor with each descriptor in the collection • Robust and well tested The Space Metric Algorithm • Not sequential o Much faster o It describes an image as an ordered list of similar images o It's new, not completely tested o Need some tuning when indexing
  • 10. The Standard Algorithm - 1 • Indexing the collection of images o For each image of the collection  Extracts the list of descriptors from the image  Creates a Lucene document with the following attributes:  An id of the logos  The related descriptor for each feature
  • 11. The Stantard Algorithm - 2 • Searching an image o Extracts the list of descriptors from the reference image o For each Lucene document in the collection  For each feature  Calculate distance between both descriptors  Calculate average distance applying weightings o Order the distances and calculate score o Returns the id of the logos with the highest scores The drawback of this method is that the descriptor of the image has to be compared sequentially for the whole collection of images
  • 12. The Metric Spaces Algorithm The general idea of this method is to describe every image by an ordered list of most similar images from a “vocabulary of images"
  • 13. The Metric Spaces - Example From a collection of 300,000 images • Index the collection of images o Select a random subset of 1,000 images called s1 o Index s1 in a new lucene index l1 by using the classic method o For each image in the collection of 300,000 images  Search the 50 most similar from the 1,000 images in s1  Add the ordered list of 50 identificators as new descriptors
  • 14. The Metric Spaces - Example Cont • Searching an image o Search the 50 most similar from the 1,000 images in s1 o Query in Lucene by comparing the sequence of 50 ordered ids o The footrule distance for comparing ranked vectors is used
  • 15. Create an interface to interact with the LIRE engine • The interface is a Spring Web Application written in Grails • The services of the system allows the following: o Index a collection from a directory o Index a collection from a list of URL's o Search by an uploaded logo o Search by an URL of a logo • An Android application has being created so it is possible to take a picture of a logo with a mobile phone and search it directly.
  • 17. Tuning Figumare - 1 • Collection size 678 logos • Vienna Code: “Geometrical Figures" • A great percentage of the CTMs have noise • Using ImageMagick before indexing would o Reduce the noise and o Sharpen the edges of the figure • Not incorporated in the prototype
  • 18. Tuning Figumare - 2 - Collection
  • 19. Tuning Figumare -3 The figumare application has been tested with some degradation of logos as well as direct pictures taken from a mobile phone camera, also it has been compared with some logo URL’s from the internet. Since most of the logos of the collection are black and white, the only necessary feature is “texture”
  • 20. Tuning Figumare - 4 Some photos of logos to search:
  • 22. Conclusion - Adopting a CBIR tool for logo search is possible - The Tuning Phase is decisive in order to have a successful project - Clear noise from the logo collection and the logo reference - Correct weighting of features - New logo features OCR text descriptor