Professional Documents
Culture Documents
A.MAHA LAKSHMI
(160030058)
Under the esteemed guidance of
K L Deemed to be UNIVERSITY
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.
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.
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.
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 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.
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
2 Introduction 3
4 Implementation 14
4.a Modules 15
5 Functional requirements 24
6 System specification 27
7 System design 29
7.b Scenario 33
vii
7.d Usecase diagrams 35
8 Testing 39
11 Conclusion 66
viii
LIST OF FIGURES
S.No. Contents page No
4 7.2 Admin 31
5 7.3 Scenario 32
ix
LIST OF TABLES
S.No. Contents page No
x
CHAPTER -1
COMPANY PROFILE
1
1.Overview of the Company
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
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.
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.
5
Characteristics of Image Processing:
Image enhancement:
Image restoration:
Image compression:
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.
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.
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.
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
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
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.
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.
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
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.
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 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
20
MULTITHREADING:
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.
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
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
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
27
CHAPTER-7
SYSTEM DESIGN
28
7. SYSTEM 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:
Remove Redundant
Reference classes
Query Specific
Reference classes
Classifiers of
Reference classes
Final Result
End
Fig.7.3.Scenario
32
7.c UML Diagrams:
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
Semantic Signature
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.
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 .
Add Index
Chart Analysis
Search Keyword
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
Query Expansion
Add visual Features
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.
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>
</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>
<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>
© 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" />
<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:
<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">
<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>
© 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
</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> </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>
</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.
[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
66