Class Note for EECS 841 with Professor Potetz at KU 2
Class Note for EECS 841 with Professor Potetz at KU 2
Popular in Course
Popular in Department
This 7 page Class Notes was uploaded by an elite notetaker on Friday February 6, 2015. The Class Notes belongs to a course at Kansas taught by a professor in Fall. Since its upload, it has received 19 views.
Reviews for Class Note for EECS 841 with Professor Potetz at KU 2
Report this Material
What is Karma?
Karma is the currency of StudySoup.
You can buy or earn more Karma at anytime and redeem it for class notes, study guides, flashcards, and more!
Date Created: 02/06/15
for each table entry for 05 do for each 5 and G x rdgtScos x gt II yr y rdaSsin aw 9 Finnily step 22b is now A xr yr S 9 A 09 yr S 9 1 M EDGE FOLLOWING AS GRAPH SEARCHING A graph is a general object that consists ofa set of nodes ml and arcs between nodes ltn ngt in this section we consider graphs whose arcs may have numeri cal weights or costs associated with them The search for the boundary ofan object is cast as a search for the lowestcost path between two nodes ofa weighted graph Assume that a gradient operator is applied to the graylevel image creating Ihe magnitude image 5 x and direction image x Now interpret the elements of the direction image tbx as nodes in a graph each with a weighting factor 5 x Nodes x it have arcs between them ifthe contour directions 41 L d x are ap propriately aligned with the arc directed in the same sense as the contour direction Figure 410 shows the interpretation To generate Fig 41 impose the following restrictions For an arc to connect from x to x it must be one of the three possi blc eightneighbors in front ofthe contour direction d x and furthermore g x ii a l s l t i l ti o m uu Interpretinga gradient Image asn graph sec lcxll an 4 4 mut Fnllmung a Cuph SPallhm 131 132 gt T ghg gt T where Tis achosen constant andli lath 409 mod Zer lt nZ Any or all ofthese restrictions may be modi ed to suit the requirements ofa particular problem To generate a path in a graph from M to it one can apply the well known technique of heuristic senrch Nilssnn 1971 19M The speci c use of heuristic search to follow edges in images was rst proposed by Martelli 1972i Suppose That the pttth should follow contours that are directed from it4 to xquot 2 That we have a method for generating the successor nodes ol39a given node such as the heuristic described above 3 That we have an evaluation function xj which is an estimate ofthe optimal cost path from M to x constrained to go through x Nilsson expresses ftx as the sum of two components g x the estimated cost ot journeying from the sum node x to x and It x the estimated cost ofthe path from x to x the goal mule With the foregoing preliminaries the heuristic search algorithm called the A algorithm by Nilsson can be stated as Algorithm 44 Heuristic Search the A Algorithm 1 Expand the start node put the successors on a list called OPEN with pointers back to the start node 2 Remove the node XI of minimum ffrom OPEN If x1 x5 then stop Trace back through pointers to nd optimal path lfOPEN is empty foil 3 Else expand node x putting successors on OPEN with pointers back to x Go to step It The component h It plays an important role in the performance of the algorithm itquot h t x 0 for all i the algorithm is a minimumwost search as opposed to a Imttrislic search lfhtx gt li39x the actual optimal cost the algorithm may run faster but may miss the minimumcost path If hx lt li39x the search will always produce a minimumcost path provided that It also satis es the following con sistency condition ltfor any two nodes x and x k x1 x1 is the minimum cost ofgctting from x to x ilpossible then kx x1 I139x Ii x With our edge elements there is no guarantee that a path can be found since there may be insurmountable gaps between x and x5 If nding the edge is cru cial steps should be taken to interpolate edge elements prior to the search or gaps may be crossed by using the edge element de nition of Martelli l972 He de nes Ch 4 Boundary Dnteumn m 4 4 edges on the image grid structure so that an edge can have a direction even though there is no local grayvlevcl change This de nition is depicted in Fig 4 la 441 Good Evaluation Functions A good evaluation function has components speci c to the particular task as well as components that are relatively taskindependent The latter components are dis cussed here 1 Edge strength ll edge strength is a factor the cost of adding a particular edge element at x can be included as M 5x where M max six t 2 Curvature ll39 lowcurvature boundaries are desirable curvature can be meas ured as some monotonically increasing function of difjidzix aux where diff measures the angle between the edge elements at x and x1 3 Proximity In an approximation if an approximate boundary is known boun daries near this approximation can be favored by adding 1 dist xB to the cost measure The dist operator measures the minimum distance of the new point x to the approximate boundary 8 4 Eslinmlcs afthe dislant e tn the goal If the curve is reasonably lincztr points near the goal may be favored by estimating It as dx xx m where cl is a distance measure Speci c implementations of these measures appear tn Ashkar and Modestino 1978 Lester etztl9781 442 Fin ing All the Boundaries What if the objective is to nd all boundaries in the image using heuristic search in one system Ramer 1975 Hueckel39s operator Chapter 3 is used to obtain l l m bl c Figt J Successor contention in heuristic scald ism lcxll ldgr Fullmvmi n Cniva St39JIt39tttg 133 strokes another name for the magnitude and direction of the local graylevel changes Then these strokes are combined by heuristic search to form sequences of edge elements called streaks Streaks are an intermediate organization which are used to assure a slightly broader coherence than is provided by the individual Hueckel edges A bidirectional search is used with four eightneighbors de ned in front ofthe edge and four eightneighbors behind the edge as shown in Fig 4il lb The search algorithm is as follows 1 Scan the stroke edge array for the most prominent edge 2 Search in front ofthe edge until no more successors exist ie a gap is encoun tered 3 Search behind the edge until no more predecessors exist If the bidirectional search generates a path of or more strokes the path is a streak Store it in a streak list and go to step 1 Strokes that are part ofa streak cannot be reused they are marked when used and subsequently skipped There are other heuristic procedures for pruning the streaks to retain only prime streaks These are shown in Fig 412 They are essentially similar to the re 54 r I i i 2 4X a f w39Tquot l a i 4 i i v Fig 412 Operations in the creation ofprime streaks 134 Ch 4 Boundary Detection a b c d a f Fig 413 Ramer sresulls laxation operations described in Section 335 The resullunl streaks must still be analyzed to derermine the objects they represent Nevertheless this method represents a cogent attempt to organize bottomup edge l ollowrng in an image Fig 413 shows an example ufRamer s technique SN 4 4 Law Fullnumg 2 Graph Seamm 135 136 443 Alternatives to the A Algorithm The primary disadvantage with the heuristic search method is that the algorithm must keep track of a set of current best paths nodes and this set may become very large These nodes represent tip nodes for the portion of the tree of possible paths that has been already examined Also since all the costs are nonnegative a good path may eventually look expensive compared to tip nodes near the start node Thus paths from these newer nodes will be extended by the algorithm even though from a practical standpoint they are unlikely Because of these disadvan tages other less rigorous search procedures have proven to be more practical ve ofwhich are described below Pruning the Tray ofAIemalives At various points in the algorithm the tip nodes on the OPEN list can be pruned in some way For example paths that are short or have a high cost per unit length can be discriminated against This pruning operation can be carried out whenever the number ofalternative tip nodes exceeds some bound Modi ed DepIhFirsl Search Depth rst search is a meaningful concept ifthe search space is structured as a tree Depth rst search means always evaluating the most recent expanded sort This type ofsearch is performed if the OPEN list is structured as a stack in the A algorithm and the top node is always evaluated next Modi cations to this method use on evaluation function to rate the successor nodes and expand the best of these Practical examples can be seen in Ballard and Sklansky 1976 Wechsler and Sklansky 1977 Persoon 1976 Leas Maximum C as In this elegant idea Lester 19781 only the maximumcost arc ofeach path is kept as an estimate ofg This is like nding a mountain pass at minimum altitude The advantage is that gdoes not build up continuously with depth in the search tree so that good paths may be followed for a long time This technique has been applied to nding the boundaries of blood cells in optical microscope images Some results are shown in Fig 4 Branch and Bound The crux of this method is to have some upper bound on the cost ofthe path Chien and Fu I974 This maybe known beforehand or may be computed by actu ally generating a path between the desired end points Also the evaluation func tion must be monotonically increasing with the length ofthe path With these con ditions we start generating paths excluding partial paths when they exceed the current bound Modi ed Heuristic Search Sometimes an evaluation function that assigns negative costs leads to good results Thus good paths keep getting better with respect to the evaluation func tion avoiding the problem of having 390 look at all paths near the starting point Ch 4 Boundary Detection a b r39 4J4 um lent munlmum cost In heurlsttc arch in Ilnd tun humming m milW cnpcrmdgo 41A mgumrhc hearth process Immcmmplmu htlundar However the price paid is the sacri ce of the mathematical guarantee of nding the leastcost path This could be re ected in unsatmlactory bnunrluriest This method has been used in cineangiograms with satisfactory results Ashkar and Modestino I978 45 EDGE FOLLOWING AS DYNAMIC PROGRAMMING w 4 451 Dynamic Programming Dvnamic programming Bellman and Dreyfus 1962 is a technique For solving np tim39 atinn problems when not all variables in the evaluation function are interre lated simultaneously Consider the problem max lilxl x x qu 48 i If nothing is known about h the only technique that guarantees a global maximum is exhaustive enumeration of all cumbinalions of discrete AIIUCS ol r Suppose that h hrlxxt x1 13th x lxv t m 49 x only depends on x in In Maximize over x1 1 m and rabulate the heal value of II XL 3 for each X 139 X3 max In x1 391 410D 1 Since the values oflr and I do not depend on 3 they need not be Cnlhldeh d at Illut filermmL n xnamn I mtzummmg 137
Are you sure you want to buy this material for
You're already Subscribed!
Looks like you've already subscribed to StudySoup, you won't need to purchase another subscription to get this material. To access this material simply click 'View Full Document'