ACO EDGE DETECTION 1 | Page ANT COLONY OPTIMIZATION FOR IMAGE EDGE DETECTION A PROJECT REPORT Submitted by Himanshu Sriavstava Sulabh Pal Suresh Kumar in partial fulfillment for the award of the degree of BACHELOR OF TECHNOLOGY In COMPUTER SCIENCE AND ENGINEERING BBDIT, GHAZIABAD GAUTAM BUDDH TECHNICAL UNIVERSITY MAY 2012
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ACO EDGE DETECTION
1 | P a g e
ANT COLONY OPTIMIZATION FOR IMAGE EDGE
DETECTION
A PROJECT REPORT
Submitted by
Himanshu Sriavstava
Sulabh Pal
Suresh Kumar
in partial fulfillment for the award of the degree
of
BACHELOR OF TECHNOLOGY
In
COMPUTER SCIENCE AND ENGINEERING
BBDIT, GHAZIABAD
GAUTAM BUDDH TECHNICAL UNIVERSITY
MAY 2012
ACO EDGE DETECTION
2 | P a g e
BBDIT, GHAZIABAD
BONAFIDE CERTIFICATE
This is to certify that the dissertation / project report (CSE 752) entitled “Ant Colony
Optimization For Image Edge detection” done by Sulabh Pal(0803510093),Himanshu
Srivastava(0803510403) and Suresh Kumar(0803510097), is an authentic work carried out by
him at Babu Banarsi Das Institute Of Technology, Ghaziabad under my guidance. The matter
embodied in this project work has not been submitted earlier for award of any degree or diploma
to the best of my knowledge and belief.
Shwetav Sharad Vineet Garg
PROJECT COORDINATOR PROJECT GUIDE
Associate Professor Assistant Professor
Computer Department Computer Department
Amit Singhal
HEAD OF THE DEPARTMENT
Computer Science & Engineering
Department
ACO EDGE DETECTION
3 | P a g e
ACKNOWLEDMENT
I have taken efforts in this project. However, it would not have been
possible without the kind support and help of many individuals. I would like
to extend my sincere thanks to all of them.
I am highly indebted to (Prof. VINEET GARG, Prof. SHWETAV SHARAD)
for their guidance and constant supervision as well as for providing
necessary information regarding the project & also for their support in
completing the project.
I would like to express my gratitude towards my parents & member of
(B.B.D.I.T. Faculty Member) for their kind co-operation and encouragement
which help me in completion of this project.
I would like to express my thanks to SULABH PAL and SURESH KUMAR
for giving me such attention and co-operation.
My thanks and appreciations also go to my colleague in developing the
project and people who have willingly helped me out with their abilities.
ACO EDGE DETECTION
4 | P a g e
ABSTRACT
Ant colony optimization (ACO) is an optimization algorithm inspired by the
natural behavior of ant species that ants deposit pheromone on the ground
for foraging. In this project, ACO is introduced to tackle the image edge
detection problem. The proposed ACO-based edge detection approach is able
to establish a pheromone matrix that represents the edge information
presented at each pixel position of the image, according to the movements
of a number of ants which are dispatched to move on the image.
Furthermore, the movements of these ants are driven by the local
variation of the image‟s intensity values. Experimental results are provided
to demonstrate the superior performance of this project approach. Ant Colony
Optimization is used here as to detect edge in any image for authenticate
because here we will further use it to make it for authentication at the time
of login or any other case. Ant colony optimization (ACO) is a population-
based metaheuristic that mimics the foraging behavior of ants to find
approximate solutions to difficult optimization problems. It can be used to
find good solutions to combinatorial optimization problems that can be
transformed into the problem of finding good paths through a weighted
construction graph. In this project, an edge detection technique that is based
on ACO is presented. The proposed method establishes a pheromone matrix
that represents the edge information at each pixel based on the routes
formed by the ants dispatched on the image. The movement of the ants is
guided by the local variation in the image‟s intensity values. The Proposed
ACO based edge detection method takes advantage of the improvements
introduced in ant colony system, one of the main extensions to the original
ant system. Experimental results show the success of the technique in
extracting edges from a digital image.
ACO EDGE DETECTION
5 | P a g e
TABLE OF CONTENTS Page No.
Cover Page & Title Page 1
Bonafide Certificate 2
Acknowledgement 3
Abstract 4
List of Tables 5
List of Figures 6
List of Symbols, Abbreviations and Nomenclature 7
Chapters
Chapter 1: Introduction 9
1.1 Methodlogy 11
1.2 Purpose 16
1.3 Scope 18
1.4 Abstract 19
1.5 Tools and Technologies Used 20
Chapter 2: Overall Description 27
2.1 Feasibility Analysis 28
2.2 Requirement Analysis: Software & Hardware 29
2.3 Constraint 30
2.4 Architecture Design 31
2.5 Use Case Model 34
2.6 Activity Diagram 35
2.7 Sequence Diagram 36
2.8 ER Diagram 37
2.9 DFDs 38
2.10 Database Design 42
Chapter 3: Testing and Maintain 43
Chapter 4: Results and Screen Slots 50
Chapter 5: Conclusion and Future Aspects 55
Appendices 56
References 60
Contains of CD/DVD(Code Details)
ACO EDGE DETECTION
6 | P a g e
LIST OF FIGURES
Figure Name Page No.
Figure 1:- Ant Systems Algorithm 9
Figure 2.:Ants will start from A the nest and look for D the food 10
Figure 3: Pseudo Code 12
Figure 4.: An experimental setting that demonstrates the shortest path 14
Figure. 5. A local configuration at the pixel position I(i,j) for computing the variation 20
Figure. 6. Various functions with the parameter 22
Figure. 7. Various neighborhoods (marked as gray regions) of the pixel Ii,j 22
Figure 8. Architecture Diagram For Whole System 31
Figure 9. Pheromone Table Management 32
Figure 10. The Edge Detection Phenomenon will Extract into it. 33
Figure:11. Sequence Diagram on Aco. 35
Fig ure12. Figure on Data Flow Diagram. 40
Fig ure13 Data Flow Diagram on ACO. 41
Figure.14. Test images used in this paper 49
Figure 15. Various extracted edge information of the test image Camera: 50
Figure. 16. Various extracted edge information of the test image House 51
Figure. 17. Various extracted edge information of the test image Lena 52
Figure. 18. Various extracted edge information of the test image Pepper 53
Figure 19. Software Development Life Cycle 61
ACO EDGE DETECTION
7 | P a g e
List of Symbols, Abbreviations and Nomenclature
Name of Nomenclature Respective Name
1. ACO Ant Colony Optimization
2. AS Ant System
3. AGENTS Artificial Ants
4. CO Combinatorial Optimization
ACO EDGE DETECTION
8 | P a g e
IInnttrroodduuccttiioonn
ACO EDGE DETECTION
9 | P a g e
CHAPTER 1
INTRODUCTION
ANT colony optimization (ACO) is a nature-inspired optimization
algorithm motivated by the natural phenomenon that ants deposit pheromone
on the ground in order to mark some favorable path that should be followed
by other members of the colony. The ant colony optimization algorithm
(ACO) is a probabilistic technique for solving computational problems which
can be reduced to finding good paths through graphs. This algorithm is a
member of ant colony algorithms family, and it constitutes some
Metaheuristic optimizations. Ant Colony Optimization (ACO) is a population-
based, general search technique for the solution of difficult combinatorial
problems which is inspired by the pheromone trail laying behavior of real
ant colonies. The behavior of ant is exploited in artificial ant colonies for the
search of approximate solutions to discrete optimization problems, to
Continuous optimization problems, and to important problems in
telecommunications, such as routing and load balancing. Initially proposed by
Marco Dorigo in 1992 in his PhD thesis, the first algorithm was aiming to
search for an optimal path in a graph, based on the behavior of ants
seeking a path between their colony and a source of food.
The ant colony optimization (ACO) is a meta-heuristic Property a
colony of artificial ants cooperate in finding good solutions to difficult
discrete optimization problems. Cooperation is a key design component
of ACO algorithms: The choice is to allocate the computational
resources to a set of relatively simple agents (artificial ants) that
communicate indirectly by stigmergy. Good solutions are an emergent
property of the agents‟ cooperative interaction.
The original idea has since diversified to solve a wider class of
numerical problems, and as a result, several problems have emerged,
drawing on various aspects of the behavior of ants. The main
underlying idea, loosely inspired by the behavior of real ants, is that of
a parallel search over several constructive computational threads based
on local problem data and on a dynamic memory structure containing
information on the quality of previously obtained result. The collective
behavior emerging from the interaction of the different search threads
has proved effective in solving combinatorial optimization (CO)
problems.
ACO EDGE DETECTION
10 | P a g e
Ant System was the first (1991) ACO algorithm. Its importance resides
mainly in being the prototype of a number of ant algorithms which
have found many interesting and successful applications.
Three AS algorithms have been defined, which differ by the way
pheromone trails are updated. These algorithms are called ant-density,
ant-quantity, and ant-cycle. In ant-density and ant-quantity ants deposit
pheromone while building a solution, while in ant-cycle ants deposit
pheromone after they have built a complete tour.
Figure 1:- Ant Systems Algorithm
ACS (Ant Colony System): ACS was the first algorithm inspired by real ants
behaviour. The first ACO algorithm, called the ant system, was proposed by
Dorigo et al. Since then, a number of ACO algorithms have been developed ,
such as the Max-Min ant system and the Ant Colony System
ACO EDGE DETECTION
11 | P a g e
1.1 Methodology
Ant Colony Optimization is the best way to predict edge from any proposed
image because with the help of ant colony optimization we will get the
main edge information that how any image is directly or indirectly interact
with each other and how they are correlated to each other.
ACO algorithm for Edge detection
Edges are points where there is a boundary (or an edge) between two image
regions. In general, an edge can be of almost arbitrary shape, and may
include junctions. In practice, edges are usually defined as sets of points in
the image which have a strong gradient magnitude. Furthermore, some
common algorithms will then chain high gradient points together to form a
more complete description of an edge. These algorithms usually place some
constraints on the properties of an edge, such as shape, smoothness, and
gradient value. Edge detection is a technique for marking sharp intensity
changes, and is important in further analyzing image content. However,
traditional edge detection approaches always result in broken pieces, possibly
the loss of some important edges.
Figure 2.:Ants will start from A the nest and look for D the food. At every step, they will upgrade the routing tables
and as soon as the first one reaches the food, the best path will be known, thus allowing communication from D to A
ACO EDGE DETECTION
12 | P a g e
A method of extracting desired features from a cellular image including the
steps of:
(a) Selecting an initial cell within the image.
(b) Selecting an additional cell, near the initial cell, appearing to be
associated with a desired feature.
(c) Repeating step for further cells, near at least one of the previously
selected cells, appearing to be associated with said feature, until selection
termination criteria are satisfied.
(d) Repeating step through for other initial cells. The method is particularly
adept at extracting relatively weakly defined features in relatively noisy
images, such as extracting faults or geologic horizons from 2D or 3D seismic
data.
A method of editing/filtering the features utilizing a stereo net is
also disclosed. Related Computer system and computer program products for
implementing the method are also described. The method is particularly
adept at extracting relatively weakly defined features from relatively noisy
images, such as extracting faults or geologic horizons from 2D or 3D seismic
data. A related method of editing/filtering the features utilizing a stereo net
is also disclosed. The invention further includes a computer system and
computer program product for implementing the method. The invention and
its benefits will be better understood with reference to the detailed
description below and the accompanying drawings.
ACO aims to iteratively find the optimal solution of the target
problem through a guided search (i.e., the movements of a number of ants)
over the solution space, by constructing the pheromone information. To be
more specific, suppose totally K ants are applied to find the optimal solution
in a space χ that consists of M1 × M2 nodes, the procedure of ACO can be
summarized as follows.
ACO EDGE DETECTION
13 | P a g e
Figure 3: Pseudo Code 1
There are two fundamental issues in the above ACO process; that is,
The establishment of the probabilistic transition matrix p(n).
The updating of the pheromone matrix τ (n), each of which is presented in detail as follow, respectively.
First, at the n-th construction-step of ACO, the k-th ant moves from the
node i to the node j according to a probabilistic action rule, which is
determined by:-
I will take it as Equation 1.
where τ (n−1)
i,j is the pheromone information value of the arc linking the
node i to the node j; Ωi is the neighborhood nodes for the ant ak given
that it is on the node i; the constants α and β represent the influence of
pheromone information and heuristic information, respectively; ηi, j represents
ACO EDGE DETECTION
14 | P a g e
the heuristic information for going from node i to node j, which is fixed
to be same for each construction-step.
Second, the pheromone matrix needs to be updated twice during the ACO
procedure. The first update is performed after the movement of each ant
within each construction step. To be more specific, after the move of the k-
th ant within the n-th construction-step, the pheromone matrix is updated as
equation [4].
where ρ is the evaporation rate. Furthermore, the determination of best tour
is subject to the user-defined criterion, it could be either the best tour found
in the current construction-step, or the best solution found since the start of
the algorithm, or a combination of both of the above two equation [4]. The
second update is performed after the move of all K ants within each
construction-step; and the pheromone matrix is updated as in equation[4].
where ψ is the pheromone decay coefficient. Note that the ant colony
system equation [6] performs two update operations (i.e, euation (2) and
euqtion (3)) for updating the pheromone matrix, while the ant system quation
[3] only performs one operation (i.e., euqtion(3)).
ACO EDGE DETECTION
15 | P a g e
Pheromone:
In ACS once all ants have computed their tour (i.e. at the end of each
iteration) AS updates the pheromone trail using all the solutions produced by
the ant colony. Each edge belonging to one of the computed solutions is
modified by an amount of pheromone proportional to its solution value. At
the end of this phase the pheromone of the entire system evaporates and
the process of construction and update is iterated. On the contrary, in ACS
only the best solution computed since the beginning of the computation is
used to globally update the pheromone. As was the case in AS, global
updating is intended to increase the attractiveness of promising route but
ACS mechanism is more effective since it avoids long convergence time by
directly concentrate the search in a neighborhood of the best tour found up
to the current iteration of the algorithm.
Figure 4.: An experimental setting that demonstrates the shortest path finding capability of ant colonies. Between the
ants‟ nest and the only food source exist two paths of different lengths. In the four graphics, the pheromone trails are
shown as dashed lines whose thickness indicates the trails strength.
ACO EDGE DETECTION
16 | P a g e
1.2 Purpose
ACO has been widely applied in various problems. In this project, ACO is
introduced to tackle the image edge detection problem, where the aim is to
extract the edge information presented in the image, since it is crucial to
understand the image‟s content. A number of ants, which move on the image
driven by the local variation of the image‟s intensity values, to establish a
pheromone matrix, which represents the edge information at each pixel
location of the image. To the best of our knowledge, there has been very
little research work on the problem addressed in this project except .
However, there are fundamental differences between our proposed approach
and theirs. First, our proposed approach exploits the Ant Colony System; on
the contrary, Nezamabadi-Pour e t al.‟s method exploits the ant system. It has
been shown that the above fundamental difference is crucial to the
respective designed ACO-based algorithms. Second, ACO is exploited to
„directly‟ extract the edge information in our proposed method, in contrast to
that ACO serves as a „post-processing‟ in to enhance the edge information
that has already been extracted by conventional edge detection algorithms.
The project is organized as follows. In a brief introduction is provided to
present the fundamental concepts of ACO For Image Edge Detection.
The Main purpose to do this project is that it is mainly used
for to detect the edge from any image which is either 2D or 3D image is
illustrated any meaningful image pixels combinations then it‟s means that all
the tempered edge like nee edge, elbow edge at the side of neck all these
major part of any human being are not fully get covered or impose to
itself, then the ACO technique is used; or either if we will take any animal
or any fruit image to demonstrate then it would be demonstrate the sharpe
edge to it‟s peak or it‟s down side so here all the modules are being in
major form where it‟s phenomenal value is made governed to it‟s key
architectural feature.
ACO EDGE DETECTION
17 | P a g e
Relation to Extreme Line and Surface Extraction-
In this application, it will be cleared how these lines and surfaces can be
found by the behavior and interaction of intelligent agents. Earlier in this
application, it was concluded that in order to overcome the challenges the
relatively noisy data presents, prior knowledge of the desired feature needs
to be taken into consideration. This knowledge is coded as the behavior of
an intelligent agent. The agent will act very similar to an ant in the
foraging situation described above, by making decisions based on its pre-
coded behavior and emitting “ pheromone” along its trail. The idea is to
distribute a number of agents in the 2D or 3D image and let each agent
move along an extreme ridge while emitting pheromone as long as the
ridge fulfils the criteria encoded in the agent. Agents which are deployed at
a point where there is no extreme ridge, or where the ridge is poorly
defined, will be terminated shortly or immediately after their deployment,
whereas agents deployed at points on a well-defined ridge will be able to
follow this ridge for a while before being terminated. It is assumed that a
line or surface having the properties of the desired structures, which are
captured in the prior knowledge, will be clearly marked by pheromone
whereas non-extreme ridges, or extreme ridges not fulfilling the requirements
Data models are tools used in analysis to describe the data requirements
and assumptions in the system from a top-down perspective. It is a major
data modeling tool & will help organizing the data in our project into
entities & define the relationship between the entities. They also set the stage
for the design of databases later on in the SDLC.
The Entity-Relationship model is a data model for high-level
descriptions of conceptual data models, and it provides a graphical notation
for representing such data models in the form of entity-relationship
diagrams. Such data models are typically used in the first stage of
information-system design; they are used, for example, to describe information
needs and/or the type of information that is to be stored in the database
during the requirements analysis.
Basic elements in ER models:
Entities: A data entity is anything real or abstract about which we want to
store the data. Entity type falls into five classes: roles, events, location,
tangible things or concepts.
Attributes: A data attribute is a characteristic common to all or most
instances of a particular entity. An attribute or combination of attributes that
uniquely identifies one & only one instance of an entity is called primary
key or identifier.
Relationships: Relationship provides the structure needed to draw information
from multiple entities. It is a natural association that exists between one or
more entities.
Cardinality: Cardinality defines the number of occurrences of one entity for
a single occurrence of related entity.
ACO EDGE DETECTION
38 | P a g e
Symbols used for ER Diagram:
Rectangles are used for showing the Entities in
the database design.
Ovals are used to represent the Attributes of a
relation or entity.
Rhombus is used for representing the
Relationship between entities.
2.9 Data Flow Diagram
When solving a small problem , the entire problem can be tacked at
once for solving larger problem, the basic principles the time-tested principle
of “divide and conquer” dearly , dividing in such a manner that are the
division have to be conquered together is not the intent of this wisdom.
This principle if elaborator, would means divide into smaller pieces can be
conquered separately.
Problem partitioning , which is essential for solving a complex problem
leads to hierarchies in the design produces by using problem partitioning
can be represented as a hierarchy of components . The relationship between
the elements in this hierarchy can vatu depending.
On the method used for example, the most common is the “whole-part
of” relationship. In this the system consists of some parts, each part consists
of subparts, and so on. This relationship can be naturally.
Represented as a hierarchy structure between various system parts. In
general hierarchical structure makes it much easier to comprehend a
ACO EDGE DETECTION
39 | P a g e
complex system. Due to this all design, mythologies aim to produce a design
that has nice hierarchical structure.
The DFD was first designed by Larry Constantine was a way of
expressing system requirements in a graphical form. This led a modular
design.
A DFD, also known as “bubble chart” has the purpose of clarifying
system requirement and identifying major transformations that will become
program in the system design. So it is the starting point of the design phase
that functionally decomposes the requirement specification down to the
lowest level of detail. A DFD consists of series of bubble joined by lines
represent data.
Data flow Diagram Symbol:-
In the DFD, there are four symbols.
A circle or a “bubble” (some people use an oval bubble) defines a source
(originator) or designation of system data.
An arrow identifies data flow-data in monition. It is a pipeline through
which information flows.
A square represents a process that transforms incoming data flows into
outgoing data flow.
An open rectangle is a data store-data as rest, or a temporary repository of
data.
TERMINATION (START/STOP)
PROCESS
ACO EDGE DETECTION
40 | P a g e
The figure is shown how data is processing, how data will be store and
how data will be flow in the System:-
DATAFLOW DIAGRAMS
A Data Flow Diagram (DFD) is a graphical technique that depicts
information flow and the transforms that are applied as data move from
input to output.
Data flow diagram is a logical model of a system. The model does
not depend on hardware, software, and data structure or file organization. It
only shows the data flow between modules to module of the entire system.
Data flow diagrams can be completed using only four notations as follows:
Data Flow: Data move in a specific direction from an origin to destination.
The data flow is a “packet” of data.
Process: People, procedures or devices that produce data. The physical
component is not identified.
DATA FLOW
DATA STORE
ACO EDGE DETECTION
41 | P a g e
Source or Destination of Data: External sources or destinations of data, which
may be people or organizations or other entities.
Data Source: Here a process references the data in the system.
Fig 12. Figure on Data Flow Diagram.
ACO EDGE DETECTION
42 | P a g e
Fig 13 Data Flow Diagram on ACO.
2.10 Database Design
There is no need any such kind of Database to make it and more helpful
and make it into visible domain. Database design Comes when there is a
need to design a data where all the entry and explicating will work but
here not any kind of single collection to make it happen. Here we use
simple form just give the path of the image and the ANT will work upon
that and produce the edge and make it into detected form.
ACO EDGE DETECTION
43 | P a g e
Testing and
Maintenance
ACO EDGE DETECTION
44 | P a g e
CHAPTER 3
TESTING AND MAINTENANCE
All software intended for public consumption should receive some level of testing.
Without testing, you have no assurance that software will behave as expected. The
results in public environment can be truly embarrassing. Testing is a critical
element of software quality assurance and represents the ultimate review of
specification, designing, and coding. Testing is done throughout the system
development at various stages. If this is not done, then the poorly tested system can
fail after installation. Testing is a very important part of SDLC and takes
approximately 50%of the time.
The first step in testing is developing a test plan based on the product requirements.
The test plan is usually a formal document that ensures that the product meets the
following standards:
Is thoroughly Tested- Untested code adds an unknown element to the
product and increases the risk of product failure
ACO EDGE DETECTION
45 | P a g e
Meets product requirements- To meet customer needs, the product must
provide the features and behavior described in the product specification.
Does not contain defects- Features must work within established quality standards
Does not contain defects- Features must work within established quality
standards and those standards should be clearly stated within the test
plan.
Testing Done in our System
The best testing is to test each subsystem separately as we have done in our
project. It is best to test a system during the implementation stage in form of small
sub steps rather then large chunks. We have tested each module separately i.e. have
completed unit testing first and system testing was done after combining /linking
all different Modules with different menus and thorough testing was done. Once
each lowest level unit has been tested, units are combined with related units and
retested in combination. This proceeds hierarchically bottom-up until the entire
system is tested as a whole. Hence we have used the Top Up approach for testing
our system.
Typical levels of testing in our system:
Unit -procedure, function, methods.
Acceptance Testing - whole system with real data(involve user etc)
Testing are conducted to evaluate the performance of the project using four
test images
ACO EDGE DETECTION
46 | P a g e
Camera
House
Lena
Pepper
Furthermore, various parameters of the proposed approach are set as follows.
• K = √M1 ×M2 the total number of ants, where the function x represents the
highest integer value that is smaller than or equals to x.
• τinit = 0.0001: the initial value of each component of the pheromone matrix.
• α = 1: the weighting factor of the pheromone information .
• β = 0.1: the weighting factor of the heuristic information.
• Ω = 8-connectivity neighborhood: the permissible ant‟s movement range .
• λ = 1: the adjusting factor of the functions.
• ρ = 0.1: the evaporation rate.
• L = 40: total number of ant‟s movement-steps within each construction-step.
• ψ = 0.05: the pheromone decay coefficient.
• ∈= 0.1: the user-defined tolerance value used in the decision process of the
proposed method.
ACO EDGE DETECTION
47 | P a g e
• N = 4: total number of construction-steps.
The main Testing factor for this project is shown above but here some
more option thru user may test this project feasibility as follows:
1. Give the Path to that image which user wants to get detect the
edge information as follows.
2. The Image which has certain quality factor will work upon all the
measurable phenomenon.
3. By calculation time the Kernel function which we use to develop
this project function will get the main advantage that is it may use
all the kernel features of this factor.
Maintenance:
The maintenance starts after the final software product is delivered to the client.
The maintenance phase identifies and implements the change associated with
the correction of errors that may arise after the customer has started using the
ACO EDGE DETECTION
48 | P a g e
developed software. This also maintains the change associated with changes in
the software environment and customer requirements. Once the system is a live
one, Maintenance phase is important. Service after sale is a must and users/
clients must be helped after the system is implemented. If he/she faces any
problem in using the system, one or two trained persons from developer‟s side
can be deputed at the client‟s site, so as to avoid any problem and if any
problem occurs immediate solution may be provided.
The maintenance provided with our system after installation is as follows:
First of all there was a Classification of Maintenance Plan which meant that the
people involved in providing the after support were divided. The main
responsibility was on the shoulders of the Project Manager who would be
informed in case any bug appeared in the system or any other kind of problem
rose causing a disturbance in functioning. The Project leader in turn would
approach us to solve the various problems at technical level. (E.g. The form
isn‟t accepting data in a proper format or it is not saving data in the
database.)the Maintenance for this function is not so hard to do,but also it has
not any kind of maintenance feature to use into it.
ACO EDGE DETECTION
49 | P a g e
RReessuullttss AAnndd SSccrreeeenn
SShhoottss
ACO EDGE DETECTION
50 | P a g e
CHAPTER 4
RESULTS AND SCREEN SHOTS
While working upon all the domains and all the preliminaries the user will
observe that what kind of activity will going on and how much it is
accurate so here we will show the results and screen slots.
(a) (b) (c) (d)
Fig. 8. Test images used in this paper: (a) Camera (128 × 128); (b) House (128×128); (c) Lena (128×128); and (d)
Pepper (128×128).
ACO EDGE DETECTION
51 | P a g e
For Camera
(a) (b)
(c ) (d)
(e) (f)
Fig 9. Various extracted edge information of the test image Camera: (a) the original image; (b) Nezamabadi-Pour et
al.‟s method ; (c) the proposed ACO-based image edge detection algorithm with the incorporation of the function;
(d) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
(e) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
and (f) the proposed ACObased image edge detection algorithm with the incorporation of the function.
ACO EDGE DETECTION
52 | P a g e
For House
(a) (b)
(c ) (d)
(e) (f)
Fig. 10. Various extracted edge information of the test image House: (a) the original image;
(b) Nezamabadi-Pour et al.‟s method ;
(c) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
(d) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
(e) the proposed ACO-based image edge detection algorithm with the incorporation of the function;
and (f) the proposed ACO-based image edge detection algorithm with the incorporation of the function .
ACO EDGE DETECTION
53 | P a g e
For Lena
(a) (b)
(c ) (d)
(e) (f)
Fig. 11. Various extracted edge information of the test image Lena: (a) the original image;
(b) Nezamabadi-Pour et al.‟s method; (c) the proposed ACO-based image edge detection algorithm with the incorporation of the function;
(d) the proposed ACO-based image edge detection algorithm with the incorporation of the function;
(e) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
and (f) the proposed ACO-based image edge detection algorithm with the incorporation of the function .
ACO EDGE DETECTION
54 | P a g e
For Pepper
(a) (b)
(c ) (d)
(e) (f)
Fig. 12. Various extracted edge information of the test image Pepper: (a) the original image;
(b) Nezamabadi-Pour et al.‟s method ;
(c) the proposed ACO-based image edge detection algorithm with the incorporation of the function; (d) the proposed ACO-based image edge detection algorithm with the incorporation of the function ;
(e) the proposed ACO-based image edge detection algorithm with the incorporation of the function;
and (f) the proposed ACO-based image edge detection algorithm with the incorporation of the function .
ACO EDGE DETECTION
55 | P a g e
CHAPTER 5
CONCLUSION AND FUTURE ASPECT
An ACO-based image edge detection algorithm that takes advantage of the
improvements introduced in ACS has been successfully developed and
tested. Experimental results show the feasibility of the approach in
identifying edges in an image. With suitable parameter values, the algorithm
was able to successfully identify edges in the canonical test images. It must
be noted that the appropriate parameter values depend on the nature of the
image, and thus, may vary per application. As a continuation of this Project,
it is recommended to further examine how the quality of the extracted edges is
affected by the parameter values and the functions for obtaining the heuristic
information, for quantifying the quality of a solution, and for computing how
much pheromone to deposit. In a study on a simplified ACO algorithm, it was
shown that the basic properties of ACO are critical to the success of the algorithm,
specially when solving more complex problems. In recent studies, techniques that
could enhance the performance of ACS have been explored. In, ants are
assigned different pheromone sensitivity levels, which makes some ants more
sensitive to pheromone than the others. In, multiple ant colonies with new
communication strategies were employed. The proposed ACS method for edge
detection could be extended and possibly be improved by making use of such
techniques.
ACO EDGE DETECTION
56 | P a g e
AAppppeennddiicceess
ACO EDGE DETECTION
57 | P a g e
Ant Colony Optimization
The Ant Colony Optimization algorithm (ACO) is a probabilistic technique for
solving computational problems which can be reduced to finding good paths
through graphs.
In the natural world, ants (initially) wander randomly, and upon finding food return
to their colony while laying down pheromone trails. If other ants find such a path,
they are likely not to keep travelling at random, but to instead follow the trail,
returning and reinforcing it if they eventually find food (see Ant communication).
Over time, however, the pheromone trail starts to evaporate, thus reducing its
attractive strength. The more time it takes for an ant to travel down the path and
back again, the more time the pheromones have to evaporate. A short path, by
comparison, gets marched over more frequently, and thus the pheromone density
becomes higher on shorter paths than longer ones. Pheromone evaporation also has
the advantage of avoiding the convergence to a locally optimal solution. If there
were no evaporation at all, the paths chosen by the first ants would tend to be
excessively attractive to the following ones. In that case, the exploration of the
solution space would be constrained.
AGENTS (Artificial Ants)
Artificial Ants stand for multi-agent methods inspired by the behavior of
real ants. The pheromone-based communication of biological ants is often
the predominant paradigm used.[2]
Combinations of Artificial Ants and local
search algorithms have become a method of choice for numerous
optimization tasks involving some sort of graph, e. g., vehicle routing and
internet routing. The burgeoning activity in this field has led to conferences
dedicated solely to Artificial Ants, and to numerous commercial applications
by specialized companies such as AntOptima. As an example, Ant colony
optimization[3]
is a class of optimization algorithms modeled on the actions
of an ant colony. Artificial 'ants' (e.g. simulation agents) locate optimal
solutions by moving through a parameter space representing all possible