You are on page 1of 4

Effective ways for querying images by content

over the Internet


M. Vlachos1, G. Vardangalos2, C. Tatsiopoulos3

Abstract Content-based image retrieval, image database, keywords,


Increasing amounts of images have made explicit the need visual features, algorithms, cross-platform, Java, Internet,
for more effective and efficient image indexing and search of feature extaction, query, HCI, ISC, FEC
not only the metadata associated with an image but also
retrieval directly on the content of the image. The scope of the
COBWEB project (Context-Based Image Retrieval on the I. INTRODUCTION
WEB - EP28773) is to create a pioneer system that will provide
a solution to the problem of automatically storing and Increasing amounts of images have made explicit the
retrieving images from large image databases dispersed over need for more effective and efficient image indexing and
the Internet. The project focuses on the following issues: search of not only the metadata associated with an image
• Development of effective algorithms for the automatic (e.g. annotations, captions, keywords) but also retrieval
storing of the visual features of the images that can be directly on the content of the image (visual features).
used as a means for retrieving similar images. The scope of the COBWEB project (Context-Based
• Creation of a simple, cross-platform user interface that Image Retrieval on the WEB - EP28773) is to create a
helps the user to query the database in the most natural pioneer system that will provide a solution to the problem
way.
of automatically storing and retrieving images from large
• Development of a robust communication subsystem that
image databases dispersed over the Internet. The project
guarantees satisfying retrieval times.
In this paper, we will describe the architecture and focuses on the following issues:
implementation details of the Human Computer Interface • Development of effective algorithms for the automatic
(HCI) and the Intelligent Search Component (ISC), which are storing of the visual features of the images that can be
two of the main components of the COBWEB system. used as a means for retrieving similar images.
The HCI consists of a graphical interface, which enables the • Creation of a simple, cross-platform user interface that
user to interact with the system. It provides the user with helps the user perform queries and retrieve images in
various approaches in querying the database including
the most natural way.
keywords specification and sample image submission. The ISC
main tasks are to handle and translate the query criteria • Development of a robust communication subsystem
submitted by the user through the HCI, navigate the database that guarantees satisfying retrieval times.
and find images that satisfy those criteria and return the
results to the HCI. In this paper, we will describe the architecture and
implementation details of the Human Computer Interface
(HCI) and the Intelligent Search Component (ISC), which
are two of the main components of the COBWEB system.
Index Terms

II. OVERALL SYSTEM ARCHITECTURE


1
Epsilon Software SA, Figure 1 shows a simplified diagram of the overall
377 Syngrou Ave. COBWEB system structure. It presents in a simplified
175 64 Palaio Faliro Athens, Greece manner the physical architecture of the approach and
Tel: +30-1-9408370, Fax: +30-1-9427719 clarifies how functionality is distributed across the different
mike13@otenet.gr elements of the system. Furthermore, it shows how those
2
National Technical University of Athens, elements communicate with each other.
Dept. of Electrical and Computer Engineering,
Division of Computer Science,
Zografou Campus, GR-15773,
Tel: +30- 1- 7722425, Fax:+30 - 1 - 7722534
gvard@telecom.ntua.gr

3
Senior Software Engineer, IT Consultant,
11B Kodrigktonos Str. Athens, Greece,
Tel: +30 - 1 - 8230165
ctatsio@hol.gr
Output Human
Environment
Computer
Interface
COBWEB user COBWEB user
results
thumbnails (image IDs)
return 1
(through Web Feature
Server)
4
query Extraction
criteria
Internet Component
6
uses
algorithms
COBWEB Intelligent
Administrator
Search 2

Component uses
Intelligent Search algorithms
mechanism
COBWEB 5
Web Server
thumbnail
3 Feature
request queries Comparison
images
image
database
Component
image preview visual
thumbnails images features

COBWEB
Image Database

COBWEB images
internal keywords

system Database Component

Figure 1

COBWEB is implemented as an Internet / Intranet- Figure 2


based application consisting of three logical tiers. The user
does not interact directly with the image database but At the following paragraphs we will present the architecture
through a user-friendly, graphical interface that and implementation details of two of the main components
communicates with a search engine. The search engine’s of the COBWEB system, the Human Computer Interface
intelligence lies in its ability to navigate the image database (HCI) and the Intelligent Search Component (ISC).
and find images that can possibly correspond to the user’s
demands. The thumbnails of those images (and full-sized
previews) are available to the user interface for III. HUMAN COMPUTER INTERFACE
downloading through the COBWEB’s web server. Thus, the
search engine functions as an intermediate tier between the
A. Overview
user interface and the image database.
Figure 2 explains the purpose of each functional The HCI consists of a graphical interface, which enables
component of COBWEB in the context of the system’s the user to interact with the database. It is targeted to
general architecture. Interactions between the components inexperienced people who do not have extensive knowledge
of the system are also shown. about matters such as computers or image processing. Thus,
The Human Computer Interface (HCI) is the user’s it provides an intermediate solution between effectiveness
view of the COBWEB system. The user submits keywords, and simplicity. At later phases of the software
sample images or sketches as criteria for his queries. The implementation the HCI will enable experienced users to
above criteria are sent directly to the Intelligent Search choose to follow more sophisticated and accurate query
Component (ISC) i.e. the search engine. The ISC uses the procedures.
algorithms provided by the Feature Extraction
Component (FEC) to “translate” those sketches or images B. Function / Processing
into meaningful (for the ISC) feature vectors. Then, the ISC The HCI provides the user with various approaches in
searches into the database (Database Component -DC) for querying the database including: specification of keywords,
images that satisfy the criteria using the algorithms submission of sample images (possibly loaded from the
provided by the Feature Comparison Component (FCC). local file system), rough sketching of the image’s general
Specifically, the ISC compares the keywords and the visual view (with the use a simple, embedded drawing utility) and
feature vector of the sample image with the respective a query refinement mechanism, based on the results of the
keywords and feature vectors of the database’s images. previous retrieval step.
After the interaction with the DC has finished, the ISC The query procedure consists of the following steps:
returns to the HCI a ranked list of image IDs. Finally, the
HCI fetches those images’ thumbnails (or larger, full-size 1) Submission of query criteria to the ISC – The HCI
preview images) from the web server and presents them to transmits through the network to the ISC the keywords
the user. and the sample image the user has submitted.
2) Retrieval of images and presentation of results to the • Coarse level color distribution of homogeneous
user - The HCI receives the IDs of the matching regions
images from the ISC. Then, it requests the resulting • Large scale color texture
image thumbnails from the web server and presents
them to the user. Obviously, the best matches are Detailed description of the algorithms mentioned above is
presented first. beyond the scope of this paper. For more information see
references 3,4,5 and 6.
After that first retrieval step, the user can do one of the
following: B. Function / Processing
The ISC receives the user’s query criteria from the HCI
• Query refinement and navigates the database to retrieve the images that satisfy
The user navigates the results from the previous retrieval the user’s needs. A detailed description of the query
step, chooses the images that match best to the image he is procedure follows:
searching for and asks for a query refinement.
• Alteration of a previously retrieved image • Query reception from the HCI
The user selects an image from the results, uses the The ISC receives query criteria from the HCI. As
embedded drawing utility to alter it and make it resemble to mentioned before the query criteria consist of a sample
the image he is looking for and re-queries using it as a new image and a set of keywords.
sample image.
• Extraction of visual features of sample image
C. Implementation The ISC uses the algorithms provided by the Feature
A basic requirement for the HCI was to be developped as Extraction Component (FEC) to create a feature vector
a cross-platform application. Therefore, it has been containing visual information about the sample image.
implemented as an independent Java application
conforming to Sun’s Java 2 standards. • Database navigation
Initially, the ISC searches the database to find a subset of
D. Future work images whose keywords match the ones selected by the
One of COBWEB’s main targets is to implement the HCI user. After the selection has been done, the ISC retrieves
as a downloadable Java applet. For the time being, the from the database the feature vectors of the images of that
above solution is not feasible because of the following subset. Then, the feature vector of the sample image is
reasons: compared with the respective one of each image of that
• Currently, browsers do not support the Java 2 subset. The above goal is accomplished with the help of the
platform. similarity algorithms contained in the Feature Comparison
• The embedded drawing application makes the Component (FCC).
code quite lengthy for downloading.
• Java 2 execution times are long, especially when • Score sorting
dealing with complicated user intefaces. The ISC sorts the similarity scores the FCC created for each
target image of the subset.

IV. INTELLIGENT SEARCH COMPONENT • Results aggregation


The ISC selects the images with the best scores and returns
the results to the HCI, in the form of image IDs. The
A. Overview
maximum number of returned images is subject to the end –
The Intelligent Search Component (ISC) is the search user’s preferences.
engine of the COBWEB system and is responsible for the
execution of the queries to the image database. The retrieval Figure 3 is a visual representation of the procedure
process is triggered by the query request, submitted through described before:
the HCI. Functionally, the ISC serves as an intermediate tier
between the HCI client and the database.
ISCs power lies on the use of effective and efficient
mahematical algorithms, capable of extracting a number of
well-defined features (visual features) from images of
arbitrary size. A brief description of the nature of the
algorithms integrated in the first prototype of the COBWEB
system follows:

• Global color histogram


• Local color layout
Feature [4] Kovalev, V., and Volmer, S., Color Co-occurance Descriptors
Extraction for Querying-by-Example, IEEE Conf. Multimedia Modelling,
Component pp. 32-38, October 1998.
[5] Volmer, S., Tracing Images in Large Databases by Comparison
4
of Wavelet Fingerprints, Proc. of the 2nd Int'l Conf. on Visual
feature
sample Information Systems, pp. 163-172, December, 1997.
vector
image [6] Pass, G., and Zabih, R., Histogram Refinement for Content-
5 based Image Retrieval, IEEE Workshop Applications of
keywords,
sample image 1 Computer Vision, December 1996
Human Intelligent [7] Vardangalos, G., and Vlachos, M. COBWEB Deliverable D1.2:
Feature
Search “Revised Requirements Report”, February 1999
Computer 5 Comparison
Component [8] Vardangalos, G., and Vlachos, M. COBWEB Deliverable D1.3:
Interface matching Component
6
image IDs
“Early Prototype Specification”, April 1999
similarity comparisons [9] COBWEB Web site http://cobweb.eunet.no/
between sample image &
3 target images

target
images
subset SQL query
through
process keywords
data 2

Database
Component

Figure 3

C. Implementation
The ISC is implemented with the help of the Microsoft’s
Visual J++ environment. Microsoft’s solution has been
adopted instead of Sun’s pure Java solution (Java 2) in
order to ensure the communication with the FEC and FCC
components, which follow the standards of Microsoft’s
Component Object Model (COM).

D. Future work
Obviously, feature extraction and feature comparison
procedures are time-consuming procedures and the ISC is
considered a time-critical application. Moreover, Java is not
considered the best platform for the execution of
computational tasks. Therefore, it has been decided that the
next version of the ISC engine will be implemented with
the help of a more powerful environment / language such as
Microsoft’s Visual C++.

V. REFERENCES
[1] Bach, J.R. and Fuller, C. and Gupta, A. and Hampapur, A. and
Horowitz, B. and Humphrey, R. and Jian, R. and Shu, C.F., The
Virage Image Search Engine: an Open Framework for Image
Management, Storage and Retrieval for Image and Video
Databases IV, SPIE, pp. 76-87, 1996.
[2] Flickner, M. and Sawhney, H.S. and Niblack, W. and Ashley, J.
and Huang, Q. and Dom, B. and Gorkani, M. and Hafner, J. and
Lee, D. and Petkovic, D. and Steele, D. and Yanker, P., Query
by Image Content: the QBIC System, IEEE Computer, vol.28,
no. 9, pp. 23-32, September, 1995.
[3] Strickner, M, and Orengo, M., Similarity of Color Images,
SPIE Proc. Storage and Retrieval for Image and Video
Databases III, February 1995, pp. 381-392

You might also like