You are on page 1of 76

REFINING SEARCH ENGINE – IMAGE SEARCH

An Industrial practice school program report Submitted in partial fulfilment of


the requirements for the award of degree of
BACHELOR OF TECHNOLOGY
in

COMPUTER SCIENCE ENGINEERING


by

A.MAHA LAKSHMI
(160030058)
Under the esteemed guidance of

Mr.M.SATISH KUMAR Mr.B.HARSHA


Assistant Professor Founder/CEO/Chief
Department of CSE BIG BANG
KLEF

DEPARTMENT OF COMPUTER SCIENCE ENGINEERING

K L Deemed to be UNIVERSITY

Green Fields, Vaddeswaram, Tadepalli,


Guntur - 522 502, Andhra Pradesh.
2019-2020

i
DATE:16TH NOVEMBER,2019

Bonafide Certificate

This is to certify that Ms.Annavarapu Maha Lakshmi a student of B.tech (Computer Science
and Technology) of Koneru Lakshmaiah University, Guntur has carried out her training
program in our application development division of Big Bang Entertainment, pvt,Ltd,
Madhapur,Hyderabad . She has worked for a period from 10th july,2019 to 16th
November,2019.

During her stay at our company she exposed to various development techniques and
successfully completed her training .

Ms. A.Maha Lakshmi is sincere and hard working . We wish her success in her scientific
pursuit and all her endeavours .

The project we have done cannot be disclosed to outside public because of the confidentaility
issues.

BIG BANG ENTAINMENT, Pvt , Ltd

Mr.HARSHA BATHULA

Founder/CEO/Chief

ii
K L Deemed to be UNIVERSITY
DEPARTMENT OF COMPUTER SCIENCE ENGINEERING

CERTIFICATE
CERCERTIFIC
ATE

This is Certified that the project entitled “REFINING SEARCH ENGINE – IMAGE
SEARCH ” which is a experimental & theoretical & Simulation & hardware work carried
out by A.Maha Lakshmi(160030058) in partial fulfilment for the award of the degree of
Bachelor of Technology in Department Computer Science , during the year 2019-2020. The
project has been approved as it satisfies the academic requirements.

Mr.M.Satish Kumar Mr.B.Harsha


Assistant Professor And University Guide CEO/Founder/chief

Mr. Hari Kiran Vege


Head of the Department External Examiner

iii
K L Deemed to be UNIVERSITY
DEPARTMENT OF COMPUTER SCIENCE ENGINEERING

DECLARATION
DDEDECLARATI
ON
I, Annavarapu Maha lakshmi, here by declare that the report entitled “REFINING
SERACH ENGINE-IMAGE SEARCH” submitted to K L E F Vaddeswaram, Guntur
district , Andhra Pradesh for the partial fulfilment degree of “BACHELOR OF
TECHNOLOGY in COMPUTER SCIENCE AND ENGINEERING” is a result of
original research work done by me under supervision and guidance of Harsha Bathula,
Managing Director Big Bang Entertainment pvt. Ltd.

ANNAVARAPU MAHA LAKSHMI

160030058

iv
ACKNOWLEDGEMENT

It is great pleasure for me to express my gratitude to our honourable president Sri. Koneru
Satya Narayana, for giving the opportunity and platform with facilities in accomplishing
the project-based laboratory report.

I express the sincere gratitude to our principal Dr. K. SUBBA RAO for his administration
towards our academic growth.

I express sincere gratitude to our head of department Mr. HARI KIRAN VEGE for his
leadership and constant motivation provided in successful completion of our academic
semester.

I express my sincere thanks to our project supervisor Mr.B.Harsha for his novel association
of ideas, encouragement, appreciation and intellectual zeal which motivated us to venture this
project successfully.

I would like to express my sincere gratitude to Mr.M.Satish Kumar university guide


monitored my progress for this support and suggestions for completion of project. Thank you,
sir.

I would also thank Prof.Dr.P.V.Chalapathi Rao Director of practice school, Regional


Coordinator and zonal coordinator of practice school for completion of project. Thank you,
sir

I take pleasure to thank my team members for their cordial support and guidance which
helped me in completing this project through various stages.

Finally, it is pleased to acknowledge the independents to all those who devoted themselves
directly to make this project success.

ANNAVARAPU MAHA LAKSHMI

160030058

v
ABSTRACT

Image re-ranking, as an effective way to improve the results of web-based image search, has
been adopted by current commercial search engines such as Bing and Google. Given a query
keyword, a pool of images is first retrieved based on textual information. By asking the user
to select a query image from the pool, the remaining images are re-ranked based on their
visual similarities with the query image. A major challenge is that the similarities of visual
features do not well correlate with images’ semantic meanings which interpret users’ search
intention. Recently people proposed to match images in a semantic space which used
attributes or reference classes closely related to the semantic meanings of images as basis.
However, learning a universal visual semantic space to characterize highly diverse images
from the web is difficult and inefficient. In this paper, we propose a novel image re-ranking
framework, which automatically offline learns different semantic spaces for different query
keywords. The visual features of images are projected into their related semantic spaces to
get semantic signatures. At the online stage, images are re-ranked by comparing their
semantic signatures obtained from the semantic space specified by the query keyword. The
proposed query-specific semantic signatures significantly improve both the accuracy and
efficiency of image re-ranking. The original visual features of thousands of dimensions can
be projected to the semantic signatures as short as 25 dimensions. Experimental results show
that 25-40 percent relative improvement has been achieved on re-ranking precisions
compared with the state-of-the-art methods.

vi
INDEX

S.No. Contents page No


1 Company profile 1

2 Introduction 3

2.a Background and motivation 7

2.b problem statement 8

3 Requirements elication and analysis 9

3.a Existing system 10

3.b Proposed system 10

3.c Feasibility study 13

4 Implementation 14

4.a Modules 15

4.b Software requirements 16

5 Functional requirements 24

5.a Non functional requirements 26

6 System specification 27

6.a Software requirements 28

6.b Hardware requirements 28

7 System design 29

7.a Object oriented analysis and design 30

7.b Scenario 33

7.c UML diagrams 34

vii
7.d Usecase diagrams 35

7.e Class diagrams 36

7.f Sequence diagrams 37

7.g Activity diagrams 38

8 Testing 39

8.a Unit testing 40

8.b Integration testing 40

8.c Functional testing 40

8.d System testing 41

8.e White box testing 41

8.f Black box testing 41

8.g Acceptance testing 41

9 Sample code and Screenshots 42

10 Bibliography and References 64

11 Conclusion 66

viii
LIST OF FIGURES
S.No. Contents page No

1 2.1 Digital Processing Techniques 5

2 3.1 Future Enhancements 12

3 7.1 Object Oriented Analysis 29

4 7.2 Admin 31

5 7.3 Scenario 32

6 7.4 Usecase diagram 34

7 7.5 Class diagram 35

8 7.6 Sequence diagram 36

9 7.7 Activity diagram 37

ix
LIST OF TABLES
S.No. Contents page No

1 4.1 .Net framework 19

x
CHAPTER -1
COMPANY PROFILE

1
1.Overview of the Company

Key Person: Harsha Bathula- CEO

BIG BANG ENTERTAINMENT Pvt.Ltd., started off in late 2019 in the city of
Robin Hood , Nottingham, UK . Initially it was just the name of a small crew , part of a
business development organization in UK . But , eventually grew in size and strength
moved across the mid lands to Leicester , where it established as one of the best high
profile teams in the field of business development .
It was very well know name in the Leicester, through its events for international clients
like EDF and talk in the city centre and major shopping malls like High Cross.
And now its time for Big Bang to make noise in India : The Land of Cultural Diversity

Anyone looking at your business or company advert, website etc should understand
and be drawn to the information it’s offering and take action .The right Ad Film
makers them to you,look around,and listen to what you’re saying.

Creating a good looking-design that works takes than the ability to use computer
software or to make a small video. Professional Ad film and media design takes a
creative eye trained by years of experience to identify the best concepts ,color
theory,images and layout for each project.

2
CHAPTER-2
INTRODUCTION

3
REFINING SEARCH ENGINE-IMAGE SEARCH

2.INTRODUCTION

What Is Image Processing?

Image processing is a method to convert an image into digital form and perform some
operations on it, in order to get an enhanced image or to extract some useful information
from it. It is a type of signal dispensation in which input is image, like video frame or
photograph and output may be image or characteristics associated with that image.
Usually Image Processing system includes treating images as two dimensional signals
while applying already set signal processing methods to them.
It is among rapidly growing technologies today, with its applications in various aspects of
a business. Image Processing forms core research area within engineering and computer
science disciplines too.

Image processing basically includes the following three steps:

 Importing the image with optical scanner or by digital photography.


 Analyzing and manipulating the image which includes data compression and image
enhancement and spotting patterns that are not to human eyes like satellite
photographs.
 Output is the last stage in which result can be altered image or report that is based
on image analysis

Purpose of Image processing:

The purpose of image processing is divided into 5 groups. They are:


1. Visualization - Observe the objects that are not visible.
2. Image sharpening and restoration - To create a better image
3. Image retrieval - Seek for the image of interest.
4. Measurement of pattern – Measures various objects in an image.
5. Image Recognition – Distinguish the objects in an image.

4
Types of Image Processing:

The two types of methods used for Image Processing are Analog and Digital Image
Processing. Analog or visual techniques of image processing can be used for the hard
copies like printouts and photographs. Image analysts use various fundamentals of
interpretation while using these visual techniques. The image processing is not just
confined to area that has to be studied but on knowledge of analyst. Association is another
important tool in image processing through visual techniques. So analysts apply a
combination of personal knowledge and collateral data to image processing.

Digital Processing techniques help in manipulation of the digital images by using


computers. As raw data from imaging sensors from satellite platform contains deficiencies.
To get over such flaws and to get originality of information, it has to undergo various
phases of processing. The three general phases that all types of data have to undergo while
using digital technique are Pre- processing, enhancement and display, information
extraction.

Fig.2.1 Digital Processing Techniques

5
Characteristics of Image Processing:

Before going to processing an image, it is converted into a digital form. Digitization


includes sampling of image and quantization of sampled values. After converting the
image into bit information, processing is performed. This processing technique may be,
Image enhancement, Image restoration, and Image compression.

Image enhancement:

It refers to accentuation, or sharpening, of image features such as boundaries, or contrast to


make a graphic display more useful for display & analysis. This process does not increase
the inherent information content in data. It includes gray level & contrast manipulation,
noise reduction, edge crispening and sharpening, filtering, interpolation and magnification,
pseudo coloring, and so on.

Image restoration:

It is concerned with filtering the observed image to minimize the effect of


degradations. Effectiveness of image restoration depends on the extent and accuracy of the
knowledge of degradation process as well as on filter design. Image restoration differs
from image enhancement in that the latter is concerned with more extraction or
accentuation of image features.

Image compression:

It is concerned with minimizing the number of bits required to represent an image.


Application of compression are in broadcast TV, remote sensing via satellite, military
communication via aircraft, radar, teleconferencing, facsimile transmission, for
educational & business documents, medical images that arise in computer tomography,
magnetic resonance imaging and digital radiology, motion, pictures, satellite images,
weather maps, geological surveys and so on.

 Text compression – CCITT GROUP3 & GROUP4


 Still image compression – JPEG
 Video image compression – MPEG

6
Advantages of Image Processing:

 The processing of images is faster and more cost-effective. One needs less time for
processing, as well as less film and other photographing equipment.
 It is more ecological to process images. No processing or fixing chemicals are
needed to take and process digital images. However, printing inks are essential
when printing digital images.
 When shooting a digital image, one can immediately see if the image is good or
not.
 Copying a digital image is easy, and the quality of the image stays good unless it is
compressed. For instance, saving an image as jpg format compresses the image. By
resaving the image as jpg format, the compressed image will be recompressed, and
the quality of the image will get worse with every saving.
 Fixing and retouching of images has become easier. In new Photoshop 7, it is
possible to smoother face wrinkles with a new Healing Brush Tool in a couple of
seconds.
 The expensive reproduction (compared with rastering the image with a repro
camera) is faster and cheaper.
 By changing the image format and resolution, the image can be used in a number
of media.

2.a BACKGROUND AND MOTIVATION


We propose a novel image re-ranking framework, which learns query-specific semantic
spaces to significantly improve the effectiveness and efficiency of online image reranking.
The visual features of images are projected into their related visual semantic spaces
automatically learned through keyword expansions at the offline stage. The extracted
semantic signatures can be 70 times shorter than the original visual feature on average,
while achieve 20%−35% relative improvement on re-ranking precisions over state-of the-
art methods.

This image re-ranking system is proposed for generating relevant images over an internet
through single click only. This will reduce manual work by integrating visual and textual

7
similarities of images and provide more efficient image retrieval. The purpose of this paper
was to improve the accuracy(precision and recall)of CBIR application by retrieving more
images related to query image. Query-specific visual semantic space using single
signatures (QSVSS Single). For an image, a single semantic signature is computed from
one SVM classifier trained by combining all types of visual features. • Query-specific
visual semantic space using multiple signatures (QSVSS Multiple). For an image, multiple
semantic signatures are computed from multiple SVM classifiers, each of which is trained
on one type of visual features separately.

2.b PROBLEM STATEMENT


Using semantic signature we can improve the accuracy and efficiency of web search
image. The visual features of images are deliberate into their related semantic spaces
automatically and learned through keyword expansions offline. Our experiments show that
the semantic space of a query keyword can be described by reference classes. Therefore
the image re-ranking using semantic signature becomes extremely efficient. Web-scale
image search engines (e.g. Google Image Search, Bing Image Search) mostly rely on
surrounding text features. It is difficult for them to interpret users’ search intention only by
query keywords and this leads to ambiguous and noisy search results which are far from
satisfactory. It is important to use visual information in order to solve the ambiguity in
text-based image retrieval. In this paper, we propose a novel Internet image search
approach. It only requires the user to click on one query image with the minimum effort
and images from a pool retrieved by textbased search are re-ranked based on both visual
and textual content.

8
CHAPTER -3
3.REQUIREMENTS ELICATION AND ANALYSIS

9
3. REQUIREMENTS ELICITATION AND ANALYSIS
3.a Existing System:

WEB-SCALE image search engines mostly use keywords as queries and rely on
surrounding text to search images. They suffer from the ambiguity of query keywords,
because it is hard for users to accurately describe the visual content of target images only
using keywords. For example, using “apple” as a query keyword, the retrieved images
belong to different categories (also called concepts in this paper), such as “red apple,”
“apple logo,” and “apple laptop.”
This is the most common form of text search on the Web. Most search engines do their
text query and retrieval using keywords. The keywords based searches they usually
provide results from blogs or other discussion boards. The user cannot have a satisfaction
with these results due to lack of trusts on blogs etc. low precision and high recall rate. In
early search engine that offered disambiguation to search terms. User intention
identification plays an important role in the intelligent semantic search engine.
DISADVANTAGES OF EXISTING SYSTEM:
 Some popular visual features are in high dimensions and efficiency is not
satisfactory if they are directly matched.
 Another major challenge is that, without online training, the similarities of low-
level visual features may not well correlate with images’ high-level semantic
meanings which interpret users’ search intention.
 Some visual features are in high dimensions and efficiency is not satisfactory if
they are directly matched with query image.
 Without online training, the similarities of low-level visual features may not well
correlate with images.
 Re ranking methods usually fail to capture the user’s intention when the query term
is ambiguous.

3.b Proposed System:


In this paper, a novel framework is proposed for web image re-ranking. Instead of
manually defining a universal concept dictionary, it learns different semantic spaces for

10
different query keywords individually and automatically. The semantic space related to the
images to be re-ranked can be significantly narrowed down by the query keyword provided
by the user. For example, if the query keyword is “apple,” the concepts of “mountain” and
“Paris” are irrelevant and should be excluded. Instead, the concepts of “computer” and
“fruit” will be used as dimensions to learn the semantic space related to “apple.” The
query-specific semantic spaces can more accurately model the images to be re-ranked,
since they have excluded other potentially unlimited number of irrelevant concepts, which
serve only as noise and deteriorate the re-ranking performance on both accuracy and
computational cost. The visual and textual features of images are then projected into their
related semantic spaces to get semantic signatures. At the online stage, images are re-
ranked by comparing their semantic signatures obtained from the semantic space of the
query keyword. The semantic correlation between concepts is explored and incorporated
when computing the similarity of semantic signatures.
We propose the semantic web based search engine which is also called as
Intelligent Semantic Web Search Engines. We use the power of xml meta-tags deployed
on the web page to search the queried information. The xml page will be consisted of built-
in and user defined tags. Here propose the intelligent semantic web based search engine.
We use the power of xml meta-tags deployed on the web page to search the queried
information. The xml page will be consisted of built-in and user defined tags. The
metadata information of the pages is extracted from this xml into rdf. our practical results
showing that proposed approach taking very less time to answer the queries while
providing more accurate information.
ADVANTAGES OF PROPOSED SYSTEM:
 The visual features of images are projected into their related semantic spaces
automatically learned through keyword expansions offline.
 Our experiments show that the semantic space of a query keyword can be described
by just 20-30 concepts (also referred as “reference classes”). Therefore the
semantic signatures are very short and online image re-ranking becomes extremely
efficient. Because of the large number of keywords and the dynamic variations of
the web, the semantic spaces of query keywords are automatically learned through
keyword expansion.
 Our query-specific semantic signatures effectively reduce the gap between low-
level visual features and semantic.

11
 Query-specific semantic signatures are also effective on image re-ranking without
query images being selected.
 Collecting information from users to obtain the specified semantic space.
 Localizing the visual characteristics of the user’s intention in this specific semantic
space.

Future enhancements:
As a future enhancement we propose the problem of solving the ambiguity. This solution
is the future enhancement where the contribution of providing more accuracy to the
proposed system by enhancing using ambiguity resolving problem. Ambiguity is, Middle
vision is the stage in visual processing that combines all the basic features in the scene into
distinct, recognizable object groups.

TRAINING
Exploring Content Information
Content
Image Content data Results

Context

Ambiguity

Exploring Context Information

Context Results
Trained Data
Dataset

Fig.3.1.Future Enhancements

12
This study is carried out to check the economic impact that the system will have on the
organization. The amount of fund that the company can pour into the research and
development of the system is limited. The expenditures must be justified. Thus the
developed system as well within the budget and this was achieved because most of the
technologies used are freely available. Only the customized products had to be purchased.

TECHNICAL FEASIBILITY:
This study is carried out to check the technical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the
available technical resources. This will lead to high demands on the available technical
resources. This will lead to high demands being placed on the client. The developed
system must have a modest requirement, as only minimal or null changes are required for
implementing this system
SOCIAL FEASIBILITY:
The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not
feel threatened by the system, instead must accept it as a necessity. The level of acceptance
by the users solely depends on the methods that are employed to educate the user about the
system and to make him familiar with it. His level of confidence must be raised so that he
is also able to make some constructive criticism, which is welcomed, as he is the final user
of the system.

13
CHAPTER-4
IMPLEMENTATION

14
4.IMPLEMENTATION
4a.MODULES:
1. Re-Ranking accuracy

2. Re-Ranking Images outside Reference Class

3. Incorporating Semantic Correlations

4. Re-Ranking with Semantic Based

MODULE DESCRIPTION
Re-Ranking accuracy:
In this module, we invited five labelers to manually label testing images under each query
keyword into different categories according to semantic meanings. Image categories were
carefully defined by the five labelers through inspecting all the testing images under a
query keyword. Defining image categories was completely independent of discovering
reference classes. The labelers were unaware of what reference classes have been
discovered by our system. The number of image categories is also different than the
number of reference classes. Each image was labeled by at least three labellers and its
label was decided by voting. Some images irrelevant to query keywords were labeled as
outliers and not assigned to any category.
Re-Ranking Images outside Reference Class:
It is interesting to know whether the query-specific semantic spaces are effective for query
images outside reference classes. We design an experiment to answer this question. If the
category of a query image corresponds to a reference class, we deliberately delete this
reference class and use the remaining reference classes to train classifiers and to compute
semantic signatures when comparing this query image with other images.
Incorporating Semantic Correlations:
We can further incorporate semantic correlations between reference classes when
computing image similarities. For each type of semantic signatures obtained above, i.e.,
QSVSS Single, QSVSS Multiple, and QSTVSS Multiple, we compute the image
similarity, and name the correspond-ing results as QSVSS SingleCorr, QSVSS
MultipleCorr, and QSTVSS MultipleCorr respectively. The re-ranking precisions for all
types of semantic signatures on the three data sets. Notably, QSVSS SingleCorr achieves

15
around 10 percent relative improvement com-pared with QSVSS Single, reaching the
performance of QSVSS multiple despite its signature is six times shorter.
Re-Ranking with Semantic Based:
Query-specific semantic signature can also be applied to image re-ranking without
selecting query images. This application also requires the user to input a query keyword.
But it assumes that images returned by initial text-only search have a dominant topic and
images belonging to that topic should have higher ranks. Our query-specific semantic
signature is effective in this application since it can improve the similarity measurement of
images. In this experiment QSVSS Multiple is used to compute similarities.

4.b Software Environment :


Microsoft .NET is a set of Microsoft software technologies for rapidly building and
integrating XML Web services, Microsoft Windows-based applications, and Web
solutions. The .NET Framework is a language-neutral platform for writing programs that
can easily and securely interoperate. There’s no language barrier with .NET: there are
numerous languages available to the developer including Managed C++, C#, Visual Basic
and Java Script. The .NET framework provides the foundation for components to interact
seamlessly, whether locally or remotely on different platforms. It standardizes common
data types and communications protocols so that components created in different
languages can easily interoperate.
“.NET” is also the collective name given to various software components built upon the
.NET platform. These will be both products (Visual Studio.NET and Windows.NET
Server, for instance) and services (like Passport, .NET My Services, and so on).
The .NET Frameworking:

The .NET Framework has two main parts:


1. The Common Language Runtime (CLR).
2. A hierarchical set of class libraries.
The CLR is described as the “execution engine” of .NET. It provides the environment
within which programs run. The most important features are
 Conversion from a low-level assembler-style language, called Intermediate
Language (IL), into code native to the platform being executed on.
 Memory management, notably including garbage collection.
 Checking and enforcing security restrictions on the running code.

16
 Loading and executing programs, with version control and other such
features.
 The following features of the .NET framework are also worth description:

Managed Code:

The code that targets .NET, and which contains certain extra Information - “metadata” - to
describe itself. Whilst both managed and unmanaged code can run in the runtime, only
managed code contains the information that allows the CLR to guarantee, for instance, safe
execution and interoperability.
Managed Data

With Managed Code comes Managed Data. CLR provides memory allocation and Deal
location facilities, and garbage collection. Some .NET languages use Managed Data by
default, such as C#, Visual Basic.NET and JScript.NET, whereas others, namely C++, do
not. Targeting CLR can, depending on the language you’re using, impose certain
constraints on the features available. As with managed and unmanaged code, one can have
both managed and unmanaged data in .NET applications - data that doesn’t get garbage
collected but instead is looked after by unmanaged code.
Common Type System

The CLR uses something called the Common Type System (CTS) to strictly enforce type-
safety. This ensures that all classes are compatible with each other, by describing types in a
common way. CTS define how types work within the runtime, which enables types in one
language to interoperate with types in another language, including cross-language
exception handling. As well as ensuring that types are only used in appropriate ways, the
runtime also ensures that code doesn’t attempt to access memory that hasn’t been allocated
to it.
Common Language Specification

The CLR provides built-in support for language interoperability. To ensure that you can
develop managed code that can be fully used by developers using any programming
language, a set of language features and rules for using them called the Common Language

17
Specification (CLS) has been defined. Components that follow these rules and expose only
CLS features are considered CLS-compliant.
The Class Library

.NET provides a single-rooted hierarchy of classes, containing over 7000 types. The root
of the namespace is called System; this contains basic types like Byte, Double, Boolean,
and String, as well as Object. All objects derive from System. Object. As well as objects,
there are value types. Value types can be allocated on the stack, which can provide useful
flexibility. There are also efficient means of converting value types to object types if and
when necessary.
The set of classes is pretty comprehensive, providing collections, file, screen, and network
I/O, threading, and so on, as well as XML and database connectivity.
The class library is subdivided into a number of sets (or namespaces), each providing
distinct areas of functionality, with dependencies between the namespaces kept to a
minimum.

Languages Supported By .NET

The multi-language capability of the .NET Framework and Visual Studio .NET enables
developers to use their existing programming skills to build all types of applications and
XML Web services. The .NET framework supports new versions of Microsoft’s old
favorites Visual Basic and C++ (as VB.NET and Managed C++), but there are also a
number of new additions to the family.
Visual Basic .NET has been updated to include many new and improved language features
that make it a powerful object-oriented programming language. These features include
inheritance, interfaces, and overloading, among others. Visual Basic also now supports
structured exception handling, custom attributes and also supports multi-threading.
Visual Basic .NET is also CLS compliant, which means that any CLS-compliant language
can use the classes, objects, and components you create in Visual Basic .NET.
Managed Extensions for C++ and attributed programming are just some of the
enhancements made to the C++ language. Managed Extensions simplify the task of
migrating existing C++ applications to the new .NET Framework.
C# is Microsoft’s new language. It’s a C-style language that is essentially “C++ for Rapid
Application Development”. Unlike other languages, its specification is just the grammar of

18
the language. It has no standard library of its own, and instead has been designed with the
intention of using the .NET libraries as its own.
Microsoft Visual J# .NET provides the easiest transition for Java-language developers into
the world of XML Web Services and dramatically improves the interoperability of Java-
language programs with existing software written in a variety of other programming
languages.
Active State has created Visual Perl and Visual Python, which enable .NET-aware
applications to be built in either Perl or Python. Both products can be integrated into the
Visual Studio .NET environment. Visual Perl includes support for Active State’s Perl Dev
Kit.
Other languages for which .NET compilers are available include
 FORTRAN
 COBOL
 EIFFEL

Fig1 .Net Framework

ASP.NET Windows Forms

XML WEB SERVICES

Base Class Libraries

Common Language Runtime

Operating System

C#.NET is also compliant with CLS (Common Language Specification) and supports
structured exception handling. CLS is set of rules and constructs that are supported by
the CLR (Common Language Runtime). CLR is the runtime environment provided by
the .NET Framework; it manages the execution of the code and also makes the
development process easier by providing services.

C#.NET is a CLS-compliant language. Any objects, classes, or components that


created in C#.NET can be used in any other CLS-compliant language. In addition, we

19
can use objects, classes, and components created in other CLS-compliant languages in
C#.NET .The use of CLS ensures complete interoperability among applications,
regardless of the languages used to create the application.

CONSTRUCTORS AND DESTRUCTORS:

Constructors are used to initialize objects, whereas destructors are used to destroy
them. In other words, destructors are used to release the resources allocated to the
object. In C#.NET the sub finalize procedure is available. The sub finalize procedure is
used to complete the tasks that must be performed when an object is destroyed. The
sub finalize procedure is called automatically when an object is destroyed. In addition,
the sub finalize procedure can be called only from the class it belongs to or from
derived classes.

GARBAGE COLLECTION

Garbage Collection is another new feature in C#.NET. The .NET Framework monitors
allocated resources, such as objects and variables. In addition, the .NET Framework
automatically releases memory for reuse by destroying objects that are no longer in
use.

In C#.NET, the garbage collector checks for the objects that are not currently in use by
applications. When the garbage collector comes across an object that is marked for
garbage collection, it releases the memory occupied by the object.

OVERLOADING

Overloading is another feature in C#. Overloading enables us to define multiple


procedures with the same name, where each procedure has a different set of arguments.
Besides using overloading for procedures, we can use it for constructors and properties
in a class.

20
MULTITHREADING:

C#.NET also supports multithreading. An application that supports multithreading can


handle multiple tasks simultaneously, we can use multithreading to decrease the time
taken by an application to respond to user interaction.

STRUCTURED EXCEPTION HANDLING:

C#.NET supports structured handling, which enables us to detect and remove errors at
runtime. In C#.NET, we need to use Try…Catch…Finally statements to create
exception handlers. Using Try…Catch…Finally statements, we can create robust and
effective exception handlers to improve the performance of our application.

THE .NET FRAMEWORK:

The .NET Framework is a new computing platform that simplifies application


development in the highly distributed environment of the Internet .

OBJECTIVES OF. NET FRAMEWORK:

1. To provide a consistent object-oriented programming environment whether object


codes is stored and executed locally on Internet-distributed, or executed remotely.

2. To provide a code-execution environment to minimizes software deployment and


guarantees safe execution of code.

3. Eliminates the performance problems.

There are different types of application, such as Windows-based applications and Web-
based applications.

The OLAP Services feature available in SQL Server version 7.0 is now called SQL Server
2000 Analysis Services. The term OLAP Services has been replaced with the term
Analysis Services. Analysis Services also includes a new data mining component. The
Repository component available in SQL Server version 7.0 is now called Microsoft SQL
Server 2000 Meta Data Services. References to the component now use the term Meta

21
Data Services. The term repository is used only in reference to the repository engine within
Meta Data Services

SQL-SERVER database consist of six type of objects,


They are,
1. TABLE
2. QUERY
3. FORM
4. REPORT
5. MACRO

TABLE:
A database is a collection of data about a specific topic.
VIEWS OF TABLE:
We can work with a table in two types,
1. Design View
2. Datasheet View
Design View
To build or modify the structure of a table we work in the table design view. We can
specify what kind of data will be hold.
Datasheet View
To add, edit or analyses the data itself we work in tables datasheet view mode.
QUERY:
A query is a question that has to be asked the data. Access gathers data that answers the
question from one or more table. The data that make up the answer is either dynaset (if you
edit it) or a snapshot (it cannot be edited).Each time we run query, we get latest
information in the dynaset. Access either displays the dynaset or snapshot for us to view or
perform an action on it, such as deleting or updating.

22
CHAPTER – 5
FUNCTIONAL REQUIREMENTS

23
5.FUNCTIONAL REQUIREMENTS
Functional Requirement defines a function of a software system and how the system must
behave when presented with specific inputs or conditions. These may include calculations,
data manipulation and processing and other specific functionality. In this system following
are the functional requirements.
 data owner has to Register with cloud server and login(username must be unique)

 data owner Send request to Private key generator(PKG) to generate IBE Key on the
user name
 data owner Browse file and request Private key to encrypt the data
 data owner Upload data to cloud service provider
 data owner Verify the data from the cloud

 PKG Receive request from the users to generate the key

 PKG Store all keys based on the user names


 PKG Check the username and provide the private key
 KU-CSP Check the data integrity in the cloud and inform to end user about the data
integrity
 KU-CSP Send request to PKG to Update the private key of the user based on the
date parameter
 Receiver Request available files in the cloud
 Receiver Request and receive files

24
5.a Non-Functional Requirements
Non – Functional requirements, as the name suggests, are those requirements that are not
directly concerned with the specific functions delivered by the system. They may relate to
emergent system properties such as reliability response time and store occupancy.
Alternatively, they may define constraints on the system such as the capability of the Input
Output devices and the data representations used in system interfaces. Many non-
functional requirementsrelate to the system as whole rather than to individual system
features. This means they are often critical than the individual functional requirements.
The following non-functional requirements are worthy of attention.
The key non-functional requirements are:
Security: The system should allow a secured communication between Cs and
Data Owner, User and File Owner
Energy Efficiency: The Energy consumed by the Users to receive the File information
from the cloud server
Reliability: The system should be reliable and must not degrade the performance of the
existing system and should not lead to the hanging of the system.

25
CHAPTER -6
SYSTEM SPECIFICATION

26
6.SYSTEM SPECIFICATION

6.a Software Requirements:

• Operating system : Windows XP.


• Coding Language : C#.NET,AP.NET 2012
• Data Base : MS SQL SERVER 2008
• IDE : VISUAL STUDIO 2012

6.b Hardware Requirements:


• System : Pentium IV 2.4 GHz
• Hard disk : 40GB
• Floppy drive : 1.44 VGA Colour
• Mouse : Logitech
• Ram : 512Mb

27
CHAPTER-7
SYSTEM DESIGN

28
7. SYSTEM DESIGN

7.a Object Oriented Analysis & Design:

Fig.7.1.Object Oriented Analysis And Design

29
1. The DFD is also called as bubble chart. It is a simple graphical formalism that can
be used to represent a system in terms of input data to the system, various
processing carried out on this data, and the output data is generated by this system.

2. The data flow diagram (DFD) is one of the most important modeling tools. It is
used to model the system components. These components are the system process,
the data used by the process, an external entity that interacts with the system and
the information flows in the system.

3. DFD shows how the information moves through the system and how it is modified
by a series of transformations. It is a graphical technique that depicts information
flow and the transformations that are applied as data moves from input to output.

4. DFD is also known as bubble chart. A DFD may be used to represent a system at
any level of abstraction. DFD may be partitioned into levels that represent
increasing information flow and functional detail.

30
ADMIN:

ADMIN

Add Index

Visual Feature

Store Data on DB

End

Fig.7.2.Admin

31
7.b Scenario:

SEARCH ENGIN USER

Keyword Expansion Search Keyword

Image Retrieval via


Expanded Keyword

Remove Outlier Images

Remove Redundant
Reference classes

Query Specific
Reference classes

Classifiers of
Reference classes

Search Keyword associated


with Image

Semantic Signatures Over


Reference Classes

Final Result

End

Fig.7.3.Scenario

32
7.c UML Diagrams:

UML stands for Unified Modeling Language. UML is a standardized general-


purpose modeling language in the field of object-oriented software engineering. The
standard is managed, and was created by, the Object Management Group.
The goal is for UML to become a common language for creating models of object
oriented computer software. In its current form UML is comprised of two major
components: a Meta-model and a notation. In the future, some form of method or process
may also be added to; or associated with, UML.
The Unified Modeling Language is a standard language for specifying, Visualization,
Constructing and documenting the artifacts of software system, as well as for business
modeling and other non-software systems.
The UML represents a collection of best engineering practices that have proven
successful in the modeling of large and complex systems.
The UML is a very important part of developing objects oriented software and the
software development process. The UML uses mostly graphical notations to express the
design of software projects.

GOALS:
The Primary goals in the design of the UML are as follows:
1. Provide users a ready-to-use, expressive visual modeling Language so that they can
develop and exchange meaningful models.
2. Provide extendibility and specialization mechanisms to extend the core concepts.
3. Be independent of particular programming languages and development process.
4. Provide a formal basis for understanding the modeling language.
5. Encourage the growth of OO tools market.
6. Support higher level development concepts such as collaborations, frameworks,
patterns and components.
7. Integrate best practices.

33
7.d Use Case Diagram:

Use case diagrams specify the events of a system and their flows. But use case diagram
never describes how they are implemented. Use case diagram can be imagined as a black
box where only the input, output, and the function of the black box is known.

These diagrams are used at a very high level of design. This high level design is refined
again and again to get a complete and practical picture of the system. A well-structured
use case also describes the pre-condition, post condition, and exceptions. These extra
elements are used to make test cases when performing the testing.

Although use case is not a good candidate for forward and reverse engineering, still they
are used in a slightly different way to make forward and reverse engineering. The same is
true for reverse engineering. Use case diagram is used differently to make it suitable for
reverse engineering.

Keyword Expansion

Add Visual Features

Semantic Signature

ADMIN Visual Query Result

Store data on DB
SEARCH ENGIN

Re-ranking on
Visual Feature

USER
Texual Query Result

Image Classification

Search

Fig.7.4.Use Case

34
7.e Class Diagram:
Class diagram is a static diagram and it is used to model the static view of a system. The
static view describes the vocabulary of the system.

Class diagram is also considered as the foundation for component and deployment
diagrams. Class diagrams are not only used to visualize the static view of the system but
they are also used to construct the executable code for forward and reverse engineering of
any system.

Generally, UML diagrams are not directly mapped with any object-oriented programming
languages but the class diagram is an exception.

Class diagram clearly shows the mapping with object-oriented languages such as Java,
C++, etc. From practical experience, class diagram is generally used for construction
purpose.

In a nutshell it can be said, class diagrams are used for −

 Describing the static view of the system.

 Showing the collaboration among the elements of the static view.

 Describing the functionalities performed by the system.

 Construction of software applications using object oriented languages.

Fig.7.5.Class Diagram

35
7.f Sequence Diagram:
Sequence diagrams are used to capture the order of messages flowing from one object to
another. Collaboration diagrams are used to describe the structural organization of the
objects taking part in the interaction. A single diagram is not sufficient to describe the
dynamic aspect of an entire system, so a set of diagrams are used to capture it as a whole.
The sequence diagram captures the time sequence of the message flow from one object to
another .

ADMIN Search Engin USER

Add Index

Add Visual Feature

Store Data on Database

View Updated Images

Chart Analysis

Search Keyword

View TexualQuery Result

View VisualQuery Result

Fig.7.6.Sequence Diagram

36
7.g Activity Diagram:
Activity diagram it is suitable for modeling the activity flow of the system. An
application can have multiple systems. Activity diagram also captures these systems and
describes the flow from one system to another. This specific usage is not available in
other diagrams. These systems can be database, external queues, or any other system.

We will now look into the practical applications of the activity diagram. From the above
discussion, it is clear that an activity diagram is drawn from a very high level. So it gives
high level view of a system. This high level view is mainly for business users or any other
person who is not a technical person.This diagram is used to model the activities which
are nothing business requirements. The diagram more impact on business understanding
rather than on implementation details.

ADMIN USER

Add Index to Search Search Query

Query Expansion
Add visual Features

View Texual Query Result


Store Details

View Visual Query Result


View Updated Images

View Updated Images

Fig.7.7.Activity Diagram

37
CHAPTER-8
TESTING

38
8.TESTING

TYPES OF TESTS
8.a Unit testing:
Unit testing involves the design of test cases that validate that the internal program logic is
functioning properly, and that program inputs produce valid outputs. All decision branches
and internal code flow should be validated. It is the testing of individual software units of
the application .it is done after the completion of an individual unit before integration. This
is a structural testing, that relies on knowledge of its construction and is invasive. Unit
tests perform basic tests at component level and test a specific business process,
application, and/or system configuration. Unit tests ensure that each unique path of a
business process performs accurately to the documented specifications and contains clearly
defined inputs and expected results.
8.b Integration testing:
Integration tests are designed to test integrated software components to determine if they
actually run as one program. Testing is event driven and is more concerned with the basic
outcome of screens or fields. Integration tests demonstrate that although the components
were individually satisfaction, as shown by successfully unit testing, the combination of
components is correct and consistent. Integration testing is specifically aimed at exposing
the problems that arise from the combination of components.
8.c Functional testing:
Functional tests provide systematic demonstrations that functions tested are available as
specified by the business and technical requirements, system documentation, and user
manuals.
Functional testing is centered on the following items:
Valid Input : identified classes of valid input must be accepted.
Invalid Input : identified classes of invalid input must be rejected.
Functions : identified functions must be exercised.
Output : identified classes of application outputs must be exercised.

39
Systems/Procedures: interfacing systems or procedures must be invoked.
Organization and preparation of functional tests is focused on requirements, key functions,
or special test cases. In addition, systematic coverage pertaining to identify Business
process flows; data fields, predefined processes, and successive processes must be
considered for testing. Before functional testing is complete, additional tests are identified
and the effective value of current tests is determined.
8.d System Testing:
System testing ensures that the entire integrated software system meets requirements. It
tests a configuration to ensure known and predictable results. An example of system
testing is the configuration oriented system integration test. System testing is based on
process descriptions and flows, emphasizing pre-driven process links and integration
points.

8.e White Box Testing:


White Box Testing is a testing in which in which the software tester has knowledge of the
inner workings, structure and language of the software, or at least its purpose. It is purpose.
It is used to test areas that cannot be reached from a black box level.

8.f Black Box Testing:


Black Box Testing is testing the software without any knowledge of the inner workings,
structure or language of the module being tested. Black box tests, as most other kinds of
tests, must be written from a definitive source document, such as specification or
requirements document, such as specification or requirements document. It is a testing in
which the software under test is treated, as a black box .you cannot “see” into it. The test
provides inputs and responds to outputs without considering how the software works.

8.g Acceptance Testing:


Acceptance testing is usually conducted as part of a combined code and unit test phase of
the software lifecycle, although it is not uncommon for coding and unit testing to be
conducted as two distinct phases.

40
Test strategy and approach:
Field testing will be performed manually and functional tests will be written in detail.

Test objectives:
 All field entries must work properly.
 Pages must be activated from the identified link.
 The entry screen, messages and responses must not be delayed.

Features to be tested:
 Verify that the entries are of the correct format
 No duplicate entries should be allowed
 All links should take the user to the correct page.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.

41
CHAPTER-9
SAMPLE CODE AND SCREENSHOTS

42
9.SAMPLE CODE

ADLOGIN
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Admin Page</title>
<link href="App/styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="header-wrapper">
<div class="header pagewidth">
<br />
<!-- TITLE -->
<h1><a href="#"> REFINING SEARCH ENGINE-IMAGE SEARCH </a></h1>
<!-- END TITLE -->
</div>
</div>
<div class="nav-wrapper-outside">
<div class="nav-wrapper pagewidth">
<div class="nav">
<ul>
<!-- MENU -->
<li><a href="Default.aspx">Home</a></li>
<li><a href="adlogin.aspx">Admin Login</a></li>
<li><a href="#">Support</a></li>
<!-- END MENU -->
</ul>
</div>
</div>
</div>
<div class="pagewidth">
<div class="page-wrap">
<div class="content">
<form id="frm1" runat="server">
<!-- CONTENT -->
<h3>Admin Login</h3>
<table>
<tr>
<td>
<asp:Image ID="Image3" runat="server" ImageUrl="~/App/images/admin.png"
Width="258px" />
</td>
<td>
<asp:Panel ID="Panel1" runat="server" Height="298px"
Width="351px" HorizontalAlign="Center">
<br />

43
<br />
<p>
&nbsp;</p>
<table style="height: 121px; width: 384px">
<tr><td></td><td></td><td></td></tr>
<tr><td>
<asp:Label ID="Label1" runat="server" Text="Name" Font-Bold="True"
Font-Names="Lucida Handwriting" Font-Size="Large"></asp:Label></td>
<td><asp:TextBox ID="txtName" runat="server" Width="178px"
BackColor="#A4E1FF"></asp:TextBox>
</td>
<td>
<asp:RequiredFieldValidator ID="RV" runat="server" ControlToValidate="txtName"
SetFocusOnError="True" ErrorMessage="*" Font-Size="X-
Large"></asp:RequiredFieldValidator></td></tr>
<tr><td>
<asp:Label ID="Label2" runat="server" Text="Password" Font-Bold="True"
Font-Names="Lucida Handwriting" Font-Size="Large"></asp:Label></td>
<td><asp:TextBox ID="txtPass" runat="server" Width="181px" TextMode="Password"
BackColor="#A4E1FF"></asp:TextBox></td>
<td>
<asp:RequiredFieldValidator ID="RV1" runat="server" ControlToValidate="txtPass"
SetFocusOnError="True" ErrorMessage="*" Font-Size="X-
Large"></asp:RequiredFieldValidator></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<asp:Button ID="Button1" runat="server" Text="Submit" onclick="Button1_Click" />
</td><td> <asp:Button ID="Button2" runat="server" Text="Cancel"
onclick="Button2_Click" /></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
</table>
<br />
</asp:Panel></td>
</tr>
</table>
<br /><br />
<!-- END CONTENT -->
</form>
</div>
<div class="clear"></div>
</div>
<div class="footer-wrapper-outside">
<div class="footer-wrapper">
<div class="footer">
<p><a href="http://validator.w3.org/check/referer" title="valid XHTML">XHTML</a> |
<a href="http://jigsaw.w3.org/css-validator/check/referer" title="valid CSS">CSS</a>
&nbsp;&nbsp; &copy; YourWebsiteName. Design: <a
href="http://www.spyka.net">spyka webmaster</a> | <a
href="http://www.justfreetemplates.com">Free Web Templates</a></p>
</div>

44
</div>
</div>
</div></body></html>
ADMIN
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<h3>Add Image</h3>
<p style="float:right; color: #51D3FF;">
<asp:HyperLink ID="HyperLink1" runat="server"
NavigateUrl="~/Default.aspx">LogOut</asp:HyperLink>
</p>
<table>
<tr><td></td><td>
<asp:Label ID="Label1" runat="server" Text="Image ID :"></asp:Label></td><td>
<asp:Label ID="Label5" runat="server" BackColor="#A4E1FF"></asp:Label>
</td><td></td></tr>
<tr><td></td><td>
<asp:Label ID="Label2" runat="server" Text="Image Name :"></asp:Label></td><td>
<asp:TextBox ID="TextBox1" runat="server" Width="141px"
BackColor="#A4E1FF"></asp:TextBox>
</td><td></td></tr>
<tr><td></td><td>
<asp:Label ID="Label3" runat="server" Text="Image Color :"></asp:Label></td><td>
<asp:DropDownList ID="DropDownList1" runat="server" Height="35px"
Width="153px"
BackColor="#A4E1FF">
<asp:ListItem>---Select Color---</asp:ListItem>
<asp:ListItem>Red</asp:ListItem>
<asp:ListItem>Green</asp:ListItem>
<asp:ListItem>Yellow</asp:ListItem>
<asp:ListItem>Blue</asp:ListItem>
<asp:ListItem>Black</asp:ListItem>
<asp:ListItem>White</asp:ListItem>
<asp:ListItem>Pink</asp:ListItem>
<asp:ListItem>Sky Blue</asp:ListItem>
<asp:ListItem>Violet</asp:ListItem>
<asp:ListItem>Brown</asp:ListItem>
<asp:ListItem>Orange</asp:ListItem>
</asp:DropDownList>
</td><td></td></tr>
<tr><td></td><td>
<asp:Label ID="Label4" runat="server" Text="Image Behaviour
:"></asp:Label></td><td>
<asp:TextBox ID="TextBox2" runat="server" Width="142px"
BackColor="#A4E1FF"></asp:TextBox>
</td><td></td></tr>
<tr><td></td><td>
<asp:Label ID="Label6" runat="server" Text="Images :"></asp:Label></td><td>
<asp:FileUpload ID="FileUpload1" runat="server" BackColor="#A4E1FF" />
</td><td></td></tr>

45
<tr><td></td><td></td><td>
<asp:Button ID="Button1" runat="server" Text="Add" Width="68px"
onclick="Button1_Click" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<asp:Label ID="Label7" runat="server" ForeColor="#CC3300"></asp:Label>
</td><td></td></tr></table>
</asp:Content>

ADMIN VIEW
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<div><asp:DataList ID="DataList1" runat="server" RepeatColumns="5"
BackColor="White"
BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px" CellPadding="3"
ForeColor="Black"
Width="100%">
<FooterStyle BackColor="#CCCCCC" />
<SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<HeaderTemplate>
<span>Image Updated</span>
</HeaderTemplate>
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<table style="font-family:Courier New;border-style:dotted;border-width:thick" >
<tr> <td align="right">Image Id :-</td>
<td><asp:Label ID="Label1" runat="server" Text='<%# Eval("Imgid") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr> <td align="right">Image Name :-</td>
<td><asp:Label ID="Label7" runat="server" Text='<%# Eval("ImgName") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr> <td align="right">Image Color :-</td>
<td><asp:Label ID="Label8" runat="server" Text='<%# Eval("ImgClr") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr> <td align="right">Image Behaviour :-</td>
<td><asp:Label ID="Label2" runat="server" Text='<%# Eval("ImgBhr") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr> <td align="right">Binary :-</td>
<td><asp:Label ID="Label3" runat="server" Text='<%# Eval("ImgBry") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr> <td align="right">Image :-</td>
<td><asp:Label ID="Label4" runat="server" Text='<%# Eval("Image") %>' Font-
Bold="True"
Font-Size="10pt" ForeColor="#336699" Width="100%" /></td></tr>
<tr><td valign="top"></td><td>

46
<asp:ImageButton Width="105px" ID="Image1" runat="server" BorderStyle="Solid"
ImageUrl='<%# Bind("Image", "~/Images/{0}") %>'
Height="94px" /></td></tr></table>
<br />
</ItemTemplate>
<FooterStyle BackColor="White" ForeColor="#333333" />
<ItemStyle BorderColor="Silver" BorderStyle="Dotted" BorderWidth="1px"
HorizontalAlign="Center"
VerticalAlign="Bottom" BackColor="White" ForeColor="#333333" />
</asp:DataList></div>
</asp:Content>

CHART:
<%@ Register Assembly="System.Web.DataVisualization, Version=3.5.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35"
Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<div style="padding-left:200px">
<asp:Chart ID="Chart1" runat="server" Height="300px" Width="400px" >
<Titles>
<asp:Title ShadowOffset="3" Name="Items" />
</Titles>
<Legends>
<asp:Legend Alignment="Center" Docking="Bottom" IsTextAutoFit="False"
Name="Default"
LegendStyle="Row" />
</Legends>
<Series>
<asp:Series Name="Default" />
</Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1" BorderWidth="0" />
</ChartAreas>
</asp:Chart>
</div>
</asp:Content>

DEFAULT:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Home Page</title>
<link href="App/styles.css" rel="stylesheet" type="text/css" />
</head>
<body>

47
<div class="header-wrapper">
<div class="header pagewidth">
<!-- TITLE -->
<h1><a href="#">Web Image Re-Ranking Using
Query-Specific Semantic Signatures</a></h1>
<!-- END TITLE -->
</div>
</div>

<div class="nav-wrapper-outside">
<div class="nav-wrapper pagewidth">
<div class="nav">
<ul>
<!-- MENU -->
<li><a href="Default.aspx">Home</a></li>
<li><a href="adlogin.aspx">Admin</a></li>
<li><a href="search.aspx">User Search</a></li>
<li><a href="#">Support</a></li>
<!-- END MENU -->
</ul>
</div>
</div>
</div>
<div class="pagewidth">
<div class="page-wrap">
<div class="content">

<!-- CONTENT -->


<h3>Abstract</h3>
<p style="text-align:justify; width:
809px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb
sp;&nbsp;
</p>
</div>

<div class="clear"></div>
</div>
<div class="footer-wrapper-outside">
<div class="footer-wrapper">
<div class="footer">
<p><a href="http://validator.w3.org/check/referer" title="valid XHTML">XHTML</a> |
<a href="http://jigsaw.w3.org/css-validator/check/referer" title="valid CSS">CSS</a>
&nbsp;&nbsp; &copy; YourWebsiteName. Design: <a
href="http://www.spyka.net">spyka webmaster</a> | <a
href="http://www.justfreetemplates.com">Free Web Templates</a></p>
</div>
</div>
</div>

48
</div>
</body>
</html>

INTERN

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"


Runat="Server">
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="5" BackColor="White"
BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px"
CellPadding="3" ForeColor="Black"
Width="100%" onitemcommand="HyperLinkItemCommand_Click"
RepeatDirection="Horizontal">
<FooterStyle BackColor="#CCCCCC" />
<SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<HeaderTemplate>
<span> Users’ Search Intention</span>
</HeaderTemplate>
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<asp:ImageButton Width="105px" ID="Image1" runat="server" BorderStyle="Solid"
ImageUrl='<%# Bind("Image", "~/Images/{0}") %>'
Height="94px" />
<br />
<asp:HyperLink ID="HyperLink1" Text='<%# Bind("Image") %>' runat="server"/>

</ItemTemplate>
<FooterStyle BackColor="White" ForeColor="#333333" />
<ItemStyle BorderColor="Silver" BorderStyle="Dotted" BorderWidth="1px"
HorizontalAlign="Center"
VerticalAlign="Bottom" BackColor="White" ForeColor="#333333" />
</asp:DataList>
<asp:Label ID="Label1" runat="server" Visible="False"></asp:Label>
</div>
</asp:Content>

SEARCH:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<h3>&nbsp;</h3>
<h3>User Search:</h3>
<table><tr><td></td><td></td><td></td></tr>
<tr><td></td><td style="width: 20px; height: 10px">
<asp:TextBox ID="TextBox1" runat="server" BackColor="#6FDBFF" Height="29px"
Width="396px"></asp:TextBox>
&nbsp;</td><td>
<asp:ImageButton ID="ImageButton1" runat="server" Height="48px"
ImageUrl="~/App/images/seo-icon.png" onclick="ImageButton1_Click" />
</td></tr>

49
<tr><td></td><td></td><td>
<asp:Label ID="Label1" runat="server" Visible="False"></asp:Label>
</td></tr>
</table>
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="5" BackColor="White"
BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px"
CellPadding="3" ForeColor="Black"
Width="102%" onitemcommand="LinkButton1ItemCommand_Click"
Height="163px" RepeatDirection="Horizontal">
<FooterStyle BackColor="#CCCCCC" />
<SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<HeaderTemplate>
<span>Search Result</span>
</HeaderTemplate>
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<asp:ImageButton Width="105px" ID="Image1" runat="server" BorderStyle="Solid"
ImageUrl='<%# Bind("Image", "~/Images/{0}") %>' Height="94px" />
<br />
<asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Bind("Image") %>' >
</asp:LinkButton>

</ItemTemplate>
<FooterStyle BackColor="White" ForeColor="#333333" />
<ItemStyle BorderColor="Silver" BorderStyle="Dotted" BorderWidth="1px"
HorizontalAlign="Center"
VerticalAlign="Bottom" BackColor="White" ForeColor="#333333" />
</asp:DataList>
<asp:Label ID="Label2" runat="server" Visible="False"></asp:Label></div>
</asp:Content>

VIEWRESULT
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server">
<div>
<asp:DataList ID="DataList1" runat="server" RepeatColumns="5" BackColor="White"
BorderColor="#999999" BorderStyle="Solid" BorderWidth="1px"
CellPadding="3" ForeColor="Black"
Width="100%" onitemcommand="HyperLinkItemCommand_Click"
RepeatDirection="Horizontal">
<FooterStyle BackColor="#CCCCCC" />
<SelectedItemStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<HeaderTemplate>
<span>Visual Similarities</span>
</HeaderTemplate>
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<asp:ImageButton Width="105px" ID="Image1" runat="server" BorderStyle="Solid"
ImageUrl='<%# Bind("Image", "~/Images/{0}") %>'

50
Height="94px" />
<br />
<asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Bind("Image")
%>'></asp:LinkButton>

</ItemTemplate>
<FooterStyle BackColor="White" ForeColor="#333333" />
<ItemStyle BorderColor="Silver" BorderStyle="Dotted" BorderWidth="1px"
HorizontalAlign="Center"
VerticalAlign="Bottom" BackColor="White" ForeColor="#333333" />
</asp:DataList>
</div>
<asp:Label ID="Label1" runat="server" Visible="False" ></asp:Label>
<asp:Label ID="Label2" runat="server" Visible="False" ></asp:Label>
</asp:Content>

51
SCREEN SHOTS
Admin view:

52
Admin Login:

53
Add Image:

54
Image Upload:

55
User search:

56
Search Result:

57
Similarity View:

58
User Intention:

59
View Image:

60
Graph Analysis:

61
CHAPTER-10
BIBILOGRAPHY AND REFERENCES

62
10.BIBILOGRAPHY

This bibliography provides a list of publications that might be helpful to you in using the
image processing subset of Intel IPP. This list is not complete; it serves only as a starting
point. The books [Rog85], [Rog90], and [Foley90] are good resources of information on
image processing and computer graphics, with mathematical formulas and code examples.

[Aka96]
A.Akansu, M.Smith (editors). Subband and Wavelet transform. Design and
Applications, Kluwer Academic Publishers, 1996.

[AP922]
A Fast Precise Implementation of 8x8 Discrete Cosine Transform Using the Intel®
Streaming SIMD Extensions and MMX™ Instructions, Application Note AP922,
Intel Corp. Order number 742474, 1999.

[APMF]
Fast Algorithms for Median Filtering, Application Note, Intel Corp. Document
number 79835, 2001.

[AVS]
GB/T 200090.2-2006. China Standard. Information Technology. Coding of Audio-
Visual Objects - Part 2: Visual (02/2006).

[Bert01]
M.Bertalmio, A.L.Bertozzi, G.Sapiro. Navier-Stokes, Fluid Dynamics, and Image
and Video Inpainting.Proc. ICCV 2001, pp.1335-1362, 2001.

[Bor86]
G.Borgefors. Distance Transformations in Digital Images. Computer Vision,
Graphics, and Image Processing 34, 1986.

63
REFERENCES

[1] R. Datta, D. Joshi, and J.Z. Wang, “Image Retrieval: Ideas, Influences, and Trends of
the New Age,” ACM Computing Surveys, vol. 40, article 5, 2007.

[2] A.W.M. Smeulders, M. Worring, S. Santini, A. Gupta, and R. Jain, “Content-Based


Image Retrieval,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 22, no. 12,
pp. 1349-1380, Dec. 2000.

[3] Y. Rui, T.S. Huang, M. Ortega, and S. Mehrotra, “Relevance Feedback: A Power Tool
for Interactive Content-Based Image Retrieval,” IEEE Trans. Circuits and Systems for
Video Technology, vol. 8, no. 5, pp. 644-655, Sept. 1998.

[4] X.S. Zhou and T.S. Huang, “Relevance Feedback in Image Retrieval: A
Comprehensive Review,” Multimedia Systems, vol. 8, pp. 536-544, 2003.

[5] D. Tao, X. Tang, X. Li, and X. Wu, “Asymmetric Bagging and Random Subspace for
Support Vector Machines-Based Relevance Feedback in Image Retrieval,” IEEE Trans.
Pattern Analysis and Machine Intelligence, vol. 28, no. 7, pp. 1088-1099, July 2006.

[6] J. Cui, F. Wen, and X. Tang, “Real Time Google and Live Image Search Re-Ranking,”
Proc. 16th ACM Int’l Conf. Multimedia, 2008.

[7] J. Cui, F. Wen, and X. Tang, “Intent Search: Interactive on-Line Image Search Re-
Ranking,” Proc. 16th ACM Int’l Conf. Multimedia, 2008.

[8] X. Tang, K. Liu, J. Cui, F. Wen, and X. Wang, “Intent Search: Capturing User
Intention for One-Click Internet Image Search,” IEEE Trans. Pattern Analysis and
Machine Intelligence, vol. 34, no. 7, pp. 1342-1353, July 2012.

64
CHAPTER -11
CONCLUSION

65
11.CONCLUSION

We propose a novel framework, which learns query-specific semantic spaces to


significantly improve the effectiveness and efficiency of online image re-ranking. The
visual features of images are projected into their related semantic spaces automatically
learned through keyword expansions offline. The extracted semantic signatures can be 70
times shorter than the original visual features, while achieve 25-40 percent relative
improvement on re-ranking precisions over state-of-the-art methods. In the future work,
our framework can be improved along several directions. Finding the keyword expansions
used to define reference classes can incorporate other metadata and log data besides the
textual and visual features. For example, the co-occurrence information of keywords in
user queries is useful and can be obtained in log data. In order to update the reference
classes over time in an efficient way, how to adopt incremental learning under our
framework needs to be further investigated. Although the semantic signatures are already
small, it is possible to make them more compact and to further enhance their matching
efficiency using other technologies such as hashing.

66

You might also like