ant colony optimization for image edge detection

65
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

Upload: vivek-sh

Post on 13-Apr-2015

94 views

Category:

Documents


14 download

DESCRIPTION

bbb

TRANSCRIPT

Page 1: Ant Colony Optimization for Image Edge Detection

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

Page 2: Ant Colony Optimization for Image Edge Detection

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

Page 3: Ant Colony Optimization for Image Edge Detection

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.

Page 4: Ant Colony Optimization for Image Edge Detection

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.

Page 5: Ant Colony Optimization for Image Edge Detection

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)

Page 6: Ant Colony Optimization for Image Edge Detection

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

Page 7: Ant Colony Optimization for Image Edge Detection

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

Page 8: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

8 | P a g e

IInnttrroodduuccttiioonn

Page 9: Ant Colony Optimization for Image Edge Detection

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.

Page 10: Ant Colony Optimization for Image Edge Detection

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

Page 11: Ant Colony Optimization for Image Edge Detection

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

Page 12: Ant Colony Optimization for Image Edge Detection

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.

Page 13: Ant Colony Optimization for Image Edge Detection

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

Page 14: Ant Colony Optimization for Image Edge Detection

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)).

Page 15: Ant Colony Optimization for Image Edge Detection

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.

Page 16: Ant Colony Optimization for Image Edge Detection

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.

Page 17: Ant Colony Optimization for Image Edge Detection

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

will be unmarked or only weakly marked.

z (pixel)=ω 1 chk grey(pixel)+ω 2 chk width(pixel)+ω 3 chk maxwidth(pixel)+ω 4

pheromone(pixel)

where pixel is the pixel that is currently being considered; the chkgrey,

chkwidth and chkmaxwidth functions evaluate the properties listed above; and

ω i the weight of each function. The outputs of these sub-functions depend

on the grey-value and width at the point where the agent is deployed. The

last term in the function, pheromone(pixel), provides communication between

the agents in terms of the “pheromone” trace each agent emits along its

trace.

Page 18: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

18 | P a g e

1.3 Scope

The Main Scope of Ant Colony Optimization for image edge detection what

am I thinking is that it has wide scope to work on any field such that it‟s

future scope to make any authenticated security major to avoid any

unauthenticated access for any highly Classified database or to access any

login privilege because while in face recognition the using Principle

Component Analysis (PCA) it can be reach to make it avoidable format but

using Ant Colony Optimization the main key feature is that make any

image quite visible to Computer or any accessing medium which

authenticate the user because without understandable format of any image

the System will not give privilege to access the functionality of the system.

Suppose a user want to get access the functionality of any system

then at that stage there is only one mode to get login that is the face

authentication so if user wants to get into and want to get access the

functionality of the system then at that Stage he/she show his/her face to

get login but due to some other factor like Light Intensity or illumination is

not quit good at which level it will authenticate to make it accessible so

make this phenomenon at low state or low level Ant Colony Optimization

for Image Edge Detection will extract and will be in form of working

mode as like each edge of face will get measure and make a matrix to

store all the data regarding to it, then it‟s main matrix which stores all the

data regarding to it will extract and if any updation is happen the it should

be in form to store it into Updated Matrix where it‟s all functional domain

will extract it‟s all domain functionality and it will get login or access the

data functionality which they wants to work on this working procedure is

under construction and I am also working under this to make it usable this

technique to get access all data module.

Page 19: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

19 | P a g e

1.4 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.

Page 20: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

20 | P a g e

1.5 TOOLS AND TECHNIQUES USED

To make this project in working mode I will choose MTLAB (Matrix Lab ) This

project ACO-based edge detection approach is implemented using the Matlab

programming language and run on a PC with a Intel CoreTM DUO 2.13

GHz CPU and a 1 GB RAM. The computational times of the project are

64.90 seconds, 64.15 seconds, 64.46 seconds and 64.57 seconds, for the test

image Camera.

Matlab Programming Language is the basic and main programming

language which incorporates with it‟s .p(DOT P) Extension. In Matlab it‟s all

Well known functions are used like I work this project and I used ASB(For

absolute value), Temp(To Store temporary Value) etc.

To Make this project in working mode I personally use lot‟s of

Method Combinations and it‟s Sub-Combinations and techniques which I am

going to show in this documentation format.

The proposed ACO-based image edge detection approach aims to utilize a

number of ants to move on a 2-D image for constructing a pheromone

matrix, each entry of which represents the edge information at each pixel

location of the image. Furthermore, the movements of the ants are steered by

the local variation of the image‟s intensity values. The proposed approach

starts from the initialization process, and then runs for N iterations to

construct the pheromone matrix by iteratively performing both the

construction process and the update process. Finally, the decision process is

performed to determine the edge. Each of these process is presented in

detail as follows, respectively.

A. Initialization Process

Totally K ants are randomly assigned on an image I with a size of M1 ×M2, each

pixel of which can be viewed as a node. The initial value of each component of the

pheromone matrix τ (0) is set to be a constant τinit.

B. Construction Process

At the n-th construction-step, one ant is randomly selected from the above-

mentioned total K ants, and this ant will consecutively move on the image for L

movement-steps. This ant moves from the node (l,m) to its neighboring node (i, j)

According to a transition probability that is defined as

Page 21: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

21 | P a g e

Where τ (n−1)

(i,j) is the pheromone value of the node (i, j), Ω(l,m) is the

neighborhood nodes of the node (l,m), ηi,j represents the heuristic

information at the node (i, j). The constants α and β represent the influence

of the pheromone Matrix and the heuristic matrix, respectively.

Fig. 5. A local configuration at the pixel position I(i,j) for computing the variation Vc(Ii,j ) defined in (6). The pixel Ii,j

is marked as gray square.

There are two crucial issues in the construction process. The first issue is

the determination of the heuristic information ηi,j in equation(4). In this

project, it is proposed to be determined by the local statistics at the pixel

position (i, j) as

Page 22: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

22 | P a g e

which is a normalization factor, Ii,j is the intensity value of the pixel at the

position (i, j) of the image I, the function Vc(Ii,j) is a function of a local group

of pixels c (called the clique), and its value depends on the variation of

image‟s intensity values on the clique c (as shown in Figure 1). More

specifically, for the pixel Ii,j under consideration, the function Vc(Ii,j) is

To determine the function f(·) in equation (6), the following four functions are

considered in this paper; they are mathematically expressed as follows and

illustrated in Figure 6, respectively.

The parameter λ in each of above functions (7)-(10) adjusts the functions‟

respective shapes. The second issue is to determine the permissible range of

the ant‟s movement (i.e., Ω(l,m) in (4)) at the position (l,m). In this project, it is

proposed to be either the 4-connectivity neighborhood or the 8-connectivity

neighborhood, both of which are demonstrated in Figure 7.

Page 23: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

23 | P a g e

Fig. 6. Various functions with the parameter λ = 10: (a) the function defined in (7); (b) the function defined in

(8); (c) the function defined in (9); and (d) the function defined in (10).

Fig. 7. Various neighborhoods (marked as gray regions) of the pixel Ii,j : (a) 4-connectivity neighborhood; and

(b) 8-connectivity neighborhood.

Page 24: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

24 | P a g e

C. Update Process

The proposed approach performs two updates operations for updating the

pheromone matrix.

The first update is performed after the movement of each ant within

each construction-step. Each component of the pheromone matrix is

updated according to

Where ρ is defined in equation (2), Δ

(k) i,j is determined by the heuristic

matrix; that is, Δ(k)

i,j = ηi,j .

The second update is carried out after the movement of all ants

within each construction-step according to

Where ψ is defined in equation(3).

D. Decision Process

In this step, a binary decision is made at each pixel location to determine

whether it is edge or not, by applying a threshold T on the final pheromone

matrix τ (N). In this project, the above-mentioned T is proposed to be

adaptively computed based on the method developed in equation [20]. The

initial threshold T(0) is selected as the mean value of the pheromone matrix.

Next, the entries of the pheromone matrix is classified into two categories

according to the criterion that its value is lower than T(0) or larger than

T(0). Then the new threshold is computed as the average of two mean

values of each of above two categories. The above process is repeated until

Page 25: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

25 | P a g e

the threshold value does not change any more (in terms of a user-defined

tolerance ). The above iterative procedure can be summarized as follows.

Step 1: Initialize T(0) as

and set the iteration index as l = 0.

Step 2: Separate the pheromone matrix τ (N)

into two class using T(l)

, where

the first class consists entries of τ that have smaller values than T(l)

, while

the second class consists the rest entries of τ . Next, calculate the mean of

each of the above two categories via

Where

Page 26: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

26 | P a g e

Step 3: Set the iteration index l = l + 1, and update the threshold as

Step 4: If |T(l)

−T(n−1)

| > , then go to Step 2; otherwise, the iteration process is

terminated and a binary decision is made on each pixel position (i, j) to

determine whether it is edge (i.e., Ei,j = 1) or not (i.e., Ei,j = 0), based on the

criterion.

Page 27: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

27 | P a g e

OOVVEERRAALLLL

DDEESSCCRRIIPPTTIIOONN

Page 28: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

28 | P a g e

CHAPTER 2

OVERALL DESCRIPTION

2.1Feasibility Analysis:

All projects are feasible-given unlimited resources and infinite time.

Unfortunately, the development of a computer-based system is more likely

plagued by a scarcity of resources and difficult delivery dates. It is both

necessary and prudent to evaluate the feasibility of the project at the earliest

possible time.

Feasibility and risk analysis are related in many ways. If the project

risk is great, the feasibility of producing quality software is reduced. During

product engineering however we concentrate our attention on four primary

areas of interest:

Economic feasibility: An evaluation of development cost weighed against the

ultimate income or benefit derived from the developed system or product.

Technical feasibility: A study of function, performance, and constraints that

may affect the ability to achieve an acceptable system.

Legal feasibility: A determination of any infringement, violation or the

liability that could result from the development of the system.

Alternatives: An evaluation of alternative approaches to the development of

the system or product.

Ant Colony optimization is Beneficial for the Real life problem

such as TSP(Travelling Salesman Problem) Which will have use to find the

closet path in transposition for Grid Computing ( The new way for

Computing and Compatible with Grid Phenomenon) and Colony Optimization

for Image edge detection is well used for authentication like while in

authentication or login or sign-in into any framework or any network fields

or any kind of environment and many other filed.

Page 29: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

29 | P a g e

Feasibility Check-point:

Here I would like to add some property into it feasibility checkpoint where

all the projects or all the key factor of any kind of working experience will

count and will work future more in the phenomenon value.

It is very important for the industry to reduce their cost of

product. So that make some check sum to all component to it‟s main

property.

2.2 Requirement Analysis:

Requirement Analysis is the process of determining user expectation

for a new or modifies product. These features, called requirements, must be

quantified, relevant and detailed in. Here such requirements are also called

Functional Specifications.

Requirement Analysis is Divided into two important and

specified manner those are as follows:

Hardware Requirement Analysis.

Software Requirement Analysis.

Hardware Requirement Analysis

The determination of above parameters are critical to the performance of the

project; this issue will be reported elsewhere. Experimental results are

provided to compare the proposed approach with Nezamabadi-Pour et al.‟s

edge detection method. To provide a fair comparison, the morphological

thinning operation of is neglected, since it is performed as a post-processing

to further refine the edge information that is extracted by ACO.

Furthermore, to present how the determination of the

heuristic matrix is crucial to the proposed method, various functions defined

are individually incorporated of the project approach, and their resulted

performances are presented. Figures will present the results of test images

Camera, House, Lena and Pepper.The project approach always outperforms

Nezamabadi-Pour et al.‟s method, in terms of visual quality of the extracted

edge information. The proposed ACO-based edge detection approach is

implemented using the Matlab programming language and run on a PC with

a Intel CoreTM DUO 2.20 GHz CPU and a 3 GB RAM. The computational times

of the project are 64.90 seconds, 64.15 seconds, 64.46 seconds and 64.57

seconds, for the test image Camera.

Page 30: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

30 | P a g e

Software Requirement Analysis

Software Requirement Analysis document enlists all necessary requirement

for project development. To derive the requirement we need to have clear

and thorough understanding of the product to be developed.

Here in this particular project Ant Colony Optimization for

Image edge detection our team member and our project guide suggest us to work

under following things those are as follows:

I. A Programming Platform where the program will work fluently so we

choose :-“MATLAB”

II. A kind of image in which we can perform our work or the entity where we

can work so we choose:-“ Image –CAMERA”

2.3 Constraint

The Challenge of This Project is to make it work and be Successful within

the triple Constraint. The triple Constraint being quality (Scope), Cost

(Resources) and Schedule( Time). The Three Elements of a Project are known

to work in tandem with one another. Where one of these elements is

restricted or extended.

I. Scope: The main Scope of This Project is that To Detect the edge

While using Ant Colony Optimization. Here the main Moto is to

achieve the best result in a very less time so here we all conclude

that all the relative field scope will achieve by following the right

path in a right manner.

II. Cost: The main Cost of all the functionality to make this project in

working mode are so cheap because we would purchase MATLAB for

Matrix Programming and it‟s all Constituent field will come

simultaneously so that the cost of product is much less and much

easy to achieve.

III. Schedule: The Scheduling that is including in this project is that it

will conclude all the measurable phenomenon which will help the

main project to run in real life factor. There is no such hard kind of

scheduling process into it because here all the modules are quite

easier and quite simpler into it. The main are whenever the project

Page 31: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

31 | P a g e

comes into a feasible manner then from starting to it‟s ending its all

around the main sensational things which are come into it.

2.4 Architecture Diagram

The words and therefore the term itself is fairly simple: a diagram is

a chart or visual depiction of a system, while “architecture” typically

refers to a structure.

Therefore, asking “An architecture diagram,” in its most basic

form, yields the answer: a visual depiction of a particular structure.

But often, this term refers to computer systems and networks. since the

word “architecture” is being used, a architecture diagram must be related to

the building of houses. The common assumption is that this type of

diagram is similar to a blueprint in that it shows a diagram of a

physical building. Technically, based on word definition alone, this is a

viable answer and is not untrue.

But in practical usage, the term is almost never used to describe a

physical building. It is, much more commonly, used to describe the

architecture of computer systems, software, networks, and other

technology-related structures. Below are just a few samples of how

this term can be used in the field of technology.

Software Architecture

„ A set of artifacts (that is: principles, guidelines, policies, models,

standards, and processes) and the relationships between these

artifacts, that guide the selection, creation, and implementation of

solutions aligned with business goals Software architecture is the

structure of structures of an information system consisting of entities

and their externally visible properties, and the relationships among

them A software architecture is a description of the subsystems and

components of a software system and the relationships between

them Sub-systems and components are typically specified in different

views to show the relevant functional and non-functional properties

of a software system. The software system is an artifact. It is the

result of the software design activity.

Page 32: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

32 | P a g e

Fig 8. Architecture Diagram For Whole System

In This Architecture Design We will Check all the phenomenon which is

going to work under this proposed structure where all the step is occur

after by after the main domino effect which will construct and represent it

is that it has all the varying feature in it.

Page 33: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

33 | P a g e

Fig 9. Pheromone Table Management for ant Colony Optimization For Image to detect the edge

Inaformation

Page 34: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

34 | P a g e

Fig 10. The Edge Detection Phenomenon will Extract into it.

2.5 USE CASE Diagram:

Use Case Diagram is a list of steps, typically defining interactions between

a role (known in UML as an "actor") and a system, to achieve a goal. The

actor can be a human or an external system.

Casual use case structure

Casual Use Case recognizes that projects may not always need detailed

"fully-dressed" use cases. He describes a Casual use case with the fields:

Page 35: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

35 | P a g e

1. Title (goal)

2. Primary Actor

3. Scope

4. Level

(Story): the body of the use case is simply a paragraph or two of text,

informally describing what happens.

Limitations

Limitations of Use cases include:

Use cases are not well suited to capturing non-interaction based

requirements of a system (such as algorithm or mathematical

requirements) or non-functional requirements (such as platform,

performance, timing, or safety-critical aspects). These are better specified

declaratively elsewhere.

Use case templates do not automatically ensure clarity. Clarity depends on

the skill of the writer(s).

Use cases are complex to write and to understand, for both end users

and developers.

As there are no fully standard definitions of use cases, each project must

form its own interpretation.

Some use case relationships, such as extends, are ambiguous in

interpretation and can be difficult for stakeholders to understand.

In Agile, simpler user stories are preferred to use cases.

Use case developers often find it difficult to determine the level of user

interface (UI) dependency to incorporate in a use case. While use case

theory suggests that UI not be reflected in use cases, it can be awkward

to abstract out this aspect of design, as it makes the use cases difficult

to visualize. In software engineering, this difficulty is resolved by applying

requirements traceability, for example with a traceability matrix.

Use cases can be over-emphasized. Bertrand Meyer discusses issues such

as driving system design too literally from use cases, and using use cases

to the exclusion of other potentially valuable requirements analysis

techniques.

Use cases are a starting point for test design, but since each test needs

its own success criteria, use cases may need to be modified to provide

separate post conditions for each path.

Page 36: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

36 | P a g e

2.7 Sequence Diagram

A sequence diagram in a Unified Modeling Language (UML) is a kind

of interaction diagram that shows how processes operate with one another and in

what order. It is a construct of a Message Sequence Chart. A sequence diagram

shows object interactions arranged in time sequence. It depicts the objects and

classes involved in the scenario and the sequence of messages exchanged between

the objects needed to carry out the functionality of the scenario. Sequence

diagrams typically are associated with use case realizations in the Logical View of

the system under development.

Fig:11. Sequence Diagram on Aco.

Page 37: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

37 | P a g e

2.8 ER Diagram:

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.

Page 38: Ant Colony Optimization for Image Edge Detection

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

Page 39: Ant Colony Optimization for Image Edge Detection

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

Page 40: Ant Colony Optimization for Image Edge Detection

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

Page 41: Ant Colony Optimization for Image Edge Detection

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.

Page 42: Ant Colony Optimization for Image Edge Detection

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.

Page 43: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

43 | P a g e

Testing and

Maintenance

Page 44: Ant Colony Optimization for Image Edge Detection

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

Page 45: Ant Colony Optimization for Image Edge Detection

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

Page 46: Ant Colony Optimization for Image Edge Detection

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.

Page 47: Ant Colony Optimization for Image Edge Detection

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

Page 48: Ant Colony Optimization for Image Edge Detection

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.

Page 49: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

49 | P a g e

RReessuullttss AAnndd SSccrreeeenn

SShhoottss

Page 50: Ant Colony Optimization for Image Edge Detection

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).

Page 51: Ant Colony Optimization for Image Edge Detection

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.

Page 52: Ant Colony Optimization for Image Edge Detection

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 .

Page 53: Ant Colony Optimization for Image Edge Detection

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 .

Page 54: Ant Colony Optimization for Image Edge Detection

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 .

Page 55: Ant Colony Optimization for Image Edge Detection

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.

Page 56: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

56 | P a g e

AAppppeennddiicceess

Page 57: Ant Colony Optimization for Image Edge Detection

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

Page 58: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

58 | P a g e

solutions. Real ants lay down pheromones directing each other to resources

while exploring their environment. The simulated 'ants' similarly record their

positions and the quality of their solutions, so that in later simulation

iterations more ants locate better solutions.[4]

One variation on this approach

is the bees algorithm, which is more analogous to the foraging patterns of

the honey bee, another social insect.

CO- COMBINATIONTORIAL OPTIMIZATION

Combinatorial optimization is a subset of mathematical optimization that is

related to operations research, algorithm theory, and computational complexity

theory. It has important applications in several fields, including artificial

intelligence, machine learning, mathematics, auction theory, and software

engineering.

combinatorial optimization is a topic that consists of finding an optimal object

from a finite set of objects.[1]

In many such problems, exhaustive search is not

feasible. It operates on the domain of those optimization problems, in which the

set of feasible solutions is discrete or can be reduced to discrete, and in which

the goal is to find the best solution. Some common problems involving

combinatorial optimization are the traveling salesman problem ("TSP") and the

minimum spanning tree problem.

ACS-ANT COLONY SYSTEM

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.

Thus, when one ant finds a good (i.e., short) path from the colony to a food source,

other ants are more likely to follow that path, and positive feedback eventually

leads all the ants following a single path. The idea of the ant colony algorithm is to

mimic this behavior with "simulated ants" walking around the graph representing

the problem to solve

Page 59: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

59 | P a g e

PCA (Principal Component Analysis)

Principal component analysis (PCA) is a mathematical procedure that uses an

orthogonal transformation to convert a set of observations of possibly correlated

variables into a set of values of linearly uncorrelated variables called principal

components. The number of principal components is less than or equal to the

number of original variables. This transformation is defined in such a way that the

first principal component has the largest possible variance (that is, accounts for as

much of the variability in the data as possible), and each succeeding component in

turn has the highest variance possible under the constraint that it be orthogonal to

(i.e., uncorrelated with) the preceding components.

PCA is closely related to factor analysis. Factor analysis typically incorporates

more domain specific assumptions about the underlying structure and solves

eigenvectors of a slightly different matrix.

Page 60: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

60 | P a g e

Software Development Life Cycle

1. System Study

The objective of this study is to identify what is needed from the system and not

how the system will achieve its goal. It consists of problem recognition and

requirement specification .the various input and output to and from the system and

standards have to be documented. The important data identities and the various

processes have to be identified. At the end of the study a document containing all

the functional specifications with version control has to be prepared.

2. System Design and Analysis

This involves modeling information flow (data and control floe both). The whole

system has to be divided into hierarchy involving modules and sub modules.

3. Coding

This involves designing of interface and coding of algorithm. The code designing

and layout has to be approved by the project leader by giving the walk through and

the changes incorporated

4. Testing

Testing is used to ensure the correctness of the software. A test plan is generated

with all possible test cases and used for testing

Page 61: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

61 | P a g e

Page 62: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

62 | P a g e

RReeffeerreenncceess

Page 63: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

63 | P a g e

REFERENCES

[1] M. Dorigo and S. Thomas, Ant Colony Optimization. Cambridge: MIT Press, 2004.

[2] H.-B. Duan, Ant Colony Algorithms: Theory and Applications. Beijing: Science Press, 2005.

[3] M. Dorigo, V. Maniezzo, and A. Colorni, “Ant system: Optimization by a colony of

cooperating agents,” IEEE Trans. on Systems, Man and Cybernetics, Part B, vol. 26, pp. 29–41,

Feb. 1996.

[4] M. Dorigo, M. Birattari, and T. Stutzle, “Ant colony optimization,” IEEE Computational

Intelligence Magazine, vol. 1, pp. 28–39, Nov. 2006.

[5] T. Stutzle and H. Holger H, “Max-Min ant system,” Future Generation Computer Systems,

vol. 16, pp. 889–914, Jun. 2000.

[6] M. Dorigo and L. M. Gambardella, “Ant colony system: A cooperative learning approach to

the traveling salesman problem,” IEEE Trans. on

Evolutionary Computation, vol. 1, pp. 53–66, Apr. 1997.

[7] M. Dorigo, G. D. Caro, and T. Stutzle, Special Issue on Ant Algorithms, Future Generation

Computer Systems, vol. 16, Jun. 2000.

[8] O. Cordon, F. Herrera, and T. Stutzle, Special Issue on Ant Colony Optimization: Models

and Applications, Mathware and Soft Computing, vol. 9, Dec. 2002.

[9] M. Dorigo, L. M. Gambardella, M. Middendorf, and T. Stutzle, Special Issue on Ant Colony

Optimization, IEEE Transactions on Evolutionary Computation, vol. 6, Jul. 2002.

[10] H. Zheng, A. Wong, and S. Nahavandi, “Hybrid ant colony algorithm for texture

classification,” in Proc. IEEE Congress on Evolutionary.

[11]Dorigo M, Blum C. Ant colony optimization theory: A survey. Theoret comput Sci

2005;344(2–3):243–78.

[12] Dorigo, Di Caro, Gambardella 1999.

[13] M. Dorigo, Ant colony optimization web

page,http://iridia.ulb.ac.be/mdorigo/ACO/ACO.html.

[14] M. Dorigo and G. Di Caro, “The Ant Colony Optimization meta-heuristic”, in New Ideas in

Optimization, D. Corne et al., Eds., McGraw Hill,London, UK, pp. 11-32, 1999.

[15] Maniezzo V, Colorni A. The Ant System applied to the quadratic assignment problem.

IEEE Trans Data Knowledge Engrg 1999;11(5):769–78.

Page 64: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

64 | P a g e

[16] Rudra Pratap” Matlab”

[17]Wikipedia.

[18]M.Dorigo et al.(Eds.): ANTS 2002, LNCS 2463, pp.53-64,2002 © Springer-Verlag

Berlin Heidelberg 2002

[19]. M.Solomon, Algorithms for the Vehicle Routing and Scheduling Problem with

Time Window Constraints, Operations Research 35,1987,254-265

[20] J.Y.Povin, S.Bengio, The Vehicle Routing Problem with Time Windows . Part II:

Genetic Search, INFORMS Journal of Computing 8, 1996,165-172

[21] Ant Colony for the traveling salesman problem TR/IRIDIA/1996-3 Universite libre

de Bruxelles, Belgium

[22] Dorigo, M., Maniezzo, V. and Colorni, A., 1996, The Ant System: Optimization

by a colony of cooperating agents. IEEE Transactions on Systems, Man, and

Cybernetics.Part B, 26, 29.41.

[23] MACS-VRPTW: A Multiple Ant Colony System for Vehicle Routing Problems

with Time Windows. Technical Report IDSIA -06-99, Lugano, Switzerland,

1999

[24] P. Kilby, P. Prosser, P. Shaw, Guided Local Search for the Vehicle Routing

Problems With Time Windows, in Meta-heuristics: Advances and Trends in Local

Search for Optimization, S.Voss, S. Martello, I.H. Osman and

C.Roucairol (eds.), Kluwer Academic Publishers, Boston, 1999, 473-486.

[25] B. Bullnheimer, R. F. Hartl, C. Strauss, An Improved Ant System Algorithm for

the Vehicle Routing Problem, Technical Report POM-10/97, Institute of

Management Science, University of Vienna, Austria, 1997. Accepted for

publication in Annals of Operations Research.

[26] R. Cordone, R. Wolfler-Calvo, A Heuristic for the Vehicle Routing Problem with

Time Windows. To appear in Journal of Heuristics.

[27] M. Dorigo, V. Maniezzo, A. Colorni, The Ant System: Optimization by a Colony

of Cooperating Agents, IEEE Transactions on Systems, Man, and

Cybernetics.Part B 26, 1996, 29-41.

[28] M. Dorigo, G. Di Caro, L. M. Gambardella, Ant Algorithms for Discrete

Optimization, Technical ReportIRIDIA/98-10, Université Libre de Bruxelles,

Belgium, 1998. Accepted for publication in Artificial Life.

Page 65: Ant Colony Optimization for Image Edge Detection

ACO EDGE DETECTION

65 | P a g e

[29] É. D. Taillard, FANT: Fast Ant System, Technical Report IDSIA-46-98, IDSIA,

Lugano, Switzerland, 1998.

[30] Bullnheimer, B.,Hartl,R.and Strauss, C: Applying the Ant System to the Vehicle

Routing Problem. Meta-Heuristics: Advances and Trends in Local Search

Paradigms for Optimization Kluwer:Boston(1997)

[31] An Experimental Study of a Simple Ant Colony System for the Vehicle Routing

Problem with Time Windows. Ismail Ellabib, Otman A.Basir, Paul Calamai.