520:
508:
636:
The algorithm works just like
Dijkstra's algorithm but differs in how the nodes' values are calculated. In Dijkstra's algorithm, a node's value is calculated using a single one of the neighboring nodes. However, in solving the
130:
183:
631:
834:
440:
1294:
1003:
1336:
1045:
668:
318:
794:
1249:
1220:
1157:
1108:
961:
519:
867:
491:
1363:
1191:
1072:
928:
894:
758:
560:
295:
1128:
708:
688:
465:
338:
266:
246:
226:
206:
1493:
1452:
1475:
J.A. Sethian. A Fast
Marching Level Set Method for Monotonically Advancing Fronts, Proc. Natl. Acad. Sci., 93, 4, pp.1591--1595, 1996.
344:
interpretation of the problem in order to build a solution outwards starting from the "known information", i.e. the boundary values.
56:
1422:
507:
136:
638:
1400:
565:
535:
First, assume that the domain has been discretized into a mesh. We will refer to meshpoints as nodes. Each node
803:
370:
351:
and uses the fact that information only flows outward from the seeding area. This problem is a special case of
248:
on the propagating surface. The speed function is specified, and the time at which the contour crosses a point
348:
1257:
966:
1476:
1432:
43:
1299:
1008:
644:
300:
1395:
763:
1449:
1225:
1196:
1133:
1084:
937:
839:
1450:
Design and
Optimization of Nano-Optical Elements by Coupling Fabrication to Optical Behavior
1437:
1427:
1390:
931:
711:
470:
356:
352:
188:
Typically, such a problem describes the evolution of a closed surface as a function of time
47:
35:
1341:
1169:
1050:
906:
872:
736:
538:
1456:
341:
271:
1113:
693:
673:
450:
323:
251:
231:
211:
191:
1487:
498:
39:
494:
17:
1443:
1412:
297:
can be thought of as the minimum amount of time it would take to reach
1417:
27:
Algorithm for solving boundary value problems of the
Eikonal equation
1413:
Dijkstra-like
Methods for the Eikonal Equation J.N. Tsitsiklis, 1995
1418:
The Fast
Marching Method and its Applications by James A. Sethian
125:{\displaystyle |\nabla u(x)|=1/f(x){\text{ for }}x\in \Omega }
1440:
by
Forcadel et al. for applications in image segmentation.
178:{\displaystyle u(x)=0{\text{ for }}x\in \partial \Omega }
362:
Extensions to non-flat (triangulated) domains solving
1344:
1302:
1260:
1228:
1199:
1172:
1136:
1116:
1087:
1053:
1011:
969:
940:
909:
875:
842:
806:
766:
739:
696:
676:
647:
568:
541:
525:
Distance map multi-stencils with random source points
473:
453:
373:
326:
303:
274:
254:
234:
214:
194:
139:
59:
268:
is obtained by solving the equation. Alternatively,
1433:
Implementation
Details of the Fast Marching Methods
340:. The fast marching method takes advantage of this
1428:Multi-Stencils Fast Marching Matlab Implementation
1357:
1330:
1288:
1243:
1222:that is not-accepted, calculate a tentative value
1214:
1185:
1151:
1122:
1102:
1066:
1039:
997:
955:
922:
888:
861:
828:
788:
752:
702:
682:
662:
625:
554:
485:
459:
434:
332:
312:
289:
260:
240:
220:
200:
177:
124:
1444:Python Implementation of the Fast Marching Method
1110:be the considered node with the smallest value
725:(visited and value tentatively assigned), and
626:{\displaystyle U_{i}=U(x_{i})\approx u(x_{i})}
1380:node, return to step 3. Otherwise, terminate.
8:
729:(visited and value permanently assigned).
1349:
1343:
1317:
1316:
1307:
1301:
1280:
1262:
1261:
1259:
1230:
1229:
1227:
1201:
1200:
1198:
1177:
1171:
1138:
1137:
1135:
1115:
1089:
1088:
1086:
1058:
1052:
1026:
1025:
1016:
1010:
989:
971:
970:
968:
942:
941:
939:
914:
908:
880:
874:
847:
841:
829:{\displaystyle x_{i}\in \partial \Omega }
811:
805:
771:
765:
744:
738:
695:
675:
654:
650:
649:
646:
614:
592:
573:
567:
546:
540:
472:
452:
435:{\displaystyle |\nabla _{S}u(x)|=1/f(x),}
412:
401:
383:
374:
372:
325:
302:
273:
253:
233:
213:
193:
158:
138:
108:
91:
80:
60:
58:
1468:
503:
1289:{\displaystyle {\tilde {U}}<U_{i}}
998:{\displaystyle {\tilde {U}}<U_{i}}
7:
1423:Multi-Stencils Fast Marching Methods
513:Maze as speed function shortest path
228:in the normal direction at a point
1331:{\displaystyle U_{i}={\tilde {U}}}
1040:{\displaystyle U_{i}={\tilde {U}}}
823:
820:
783:
380:
307:
304:
172:
169:
119:
65:
25:
1494:Numerical differential equations
1438:Generalized Fast Marching method
663:{\displaystyle \mathbb {R} ^{n}}
518:
506:
313:{\displaystyle \partial \Omega }
1322:
1267:
1235:
1206:
1143:
1094:
1031:
976:
947:
789:{\displaystyle U_{i}=+\infty }
620:
607:
598:
585:
426:
420:
402:
398:
392:
375:
284:
278:
149:
143:
105:
99:
81:
77:
71:
61:
1:
934:to calculate a new value for
357:More general algorithms exist
1244:{\displaystyle {\tilde {U}}}
1215:{\displaystyle {\tilde {x}}}
1152:{\displaystyle {\tilde {x}}}
1103:{\displaystyle {\tilde {x}}}
956:{\displaystyle {\tilde {U}}}
347:The algorithm is similar to
1510:
562:has a corresponding value
710:of the neighboring nodes
359:but are normally slower.
320:starting from the point
862:{\displaystyle U_{i}=0}
44:boundary value problems
1401:Bellman–Ford algorithm
1369:, update the label to
1359:
1332:
1290:
1245:
1216:
1187:
1153:
1124:
1104:
1068:
1041:
999:
957:
932:Eikonal update formula
924:
890:
863:
830:
790:
754:
704:
684:
664:
627:
556:
487:
486:{\displaystyle x\in S}
461:
436:
334:
314:
291:
262:
242:
222:
202:
179:
126:
1360:
1358:{\displaystyle x_{i}}
1333:
1291:
1246:
1217:
1188:
1186:{\displaystyle x_{i}}
1154:
1125:
1105:
1069:
1067:{\displaystyle x_{i}}
1042:
1000:
958:
925:
923:{\displaystyle x_{i}}
891:
889:{\displaystyle x_{i}}
864:
831:
791:
755:
753:{\displaystyle x_{i}}
717:Nodes are labeled as
705:
685:
665:
628:
557:
555:{\displaystyle x_{i}}
493:, were introduced by
488:
462:
437:
335:
315:
292:
263:
243:
223:
203:
180:
127:
1396:Fast sweeping method
1342:
1300:
1258:
1226:
1197:
1170:
1134:
1114:
1085:
1051:
1009:
967:
938:
907:
873:
840:
804:
764:
737:
694:
674:
645:
566:
539:
471:
451:
371:
349:Dijkstra's algorithm
324:
301:
290:{\displaystyle u(x)}
272:
252:
232:
212:
192:
137:
57:
32:fast marching method
1166:For every neighbor
903:For every far node
721:(not yet visited),
1455:2013-08-20 at the
1376:If there exists a
1355:
1328:
1286:
1241:
1212:
1183:
1149:
1120:
1100:
1064:
1037:
995:
953:
920:
886:
859:
826:
796:and label them as
786:
750:
733:Assign every node
700:
680:
660:
623:
552:
483:
457:
432:
330:
310:
287:
258:
238:
218:
198:
175:
122:
1448:See Chapter 8 in
1325:
1270:
1238:
1209:
1146:
1123:{\displaystyle U}
1097:
1034:
979:
950:
703:{\displaystyle n}
683:{\displaystyle 1}
460:{\displaystyle S}
353:level-set methods
333:{\displaystyle x}
261:{\displaystyle x}
241:{\displaystyle x}
221:{\displaystyle f}
201:{\displaystyle u}
161:
111:
16:(Redirected from
1501:
1478:
1473:
1391:Level-set method
1364:
1362:
1361:
1356:
1354:
1353:
1337:
1335:
1334:
1329:
1327:
1326:
1318:
1312:
1311:
1295:
1293:
1292:
1287:
1285:
1284:
1272:
1271:
1263:
1250:
1248:
1247:
1242:
1240:
1239:
1231:
1221:
1219:
1218:
1213:
1211:
1210:
1202:
1192:
1190:
1189:
1184:
1182:
1181:
1158:
1156:
1155:
1150:
1148:
1147:
1139:
1129:
1127:
1126:
1121:
1109:
1107:
1106:
1101:
1099:
1098:
1090:
1073:
1071:
1070:
1065:
1063:
1062:
1046:
1044:
1043:
1038:
1036:
1035:
1027:
1021:
1020:
1004:
1002:
1001:
996:
994:
993:
981:
980:
972:
962:
960:
959:
954:
952:
951:
943:
929:
927:
926:
921:
919:
918:
895:
893:
892:
887:
885:
884:
868:
866:
865:
860:
852:
851:
835:
833:
832:
827:
816:
815:
800:; for all nodes
795:
793:
792:
787:
776:
775:
759:
757:
756:
751:
749:
748:
709:
707:
706:
701:
689:
687:
686:
681:
669:
667:
666:
661:
659:
658:
653:
632:
630:
629:
624:
619:
618:
597:
596:
578:
577:
561:
559:
558:
553:
551:
550:
522:
510:
492:
490:
489:
484:
466:
464:
463:
458:
447:for the surface
441:
439:
438:
433:
416:
405:
388:
387:
378:
339:
337:
336:
331:
319:
317:
316:
311:
296:
294:
293:
288:
267:
265:
264:
259:
247:
245:
244:
239:
227:
225:
224:
219:
207:
205:
204:
199:
184:
182:
181:
176:
162:
159:
131:
129:
128:
123:
112:
109:
95:
84:
64:
48:Eikonal equation
36:numerical method
21:
1509:
1508:
1504:
1503:
1502:
1500:
1499:
1498:
1484:
1483:
1482:
1481:
1474:
1470:
1465:
1457:Wayback Machine
1409:
1387:
1365:was labeled as
1345:
1340:
1339:
1303:
1298:
1297:
1276:
1256:
1255:
1224:
1223:
1195:
1194:
1173:
1168:
1167:
1132:
1131:
1112:
1111:
1083:
1082:
1054:
1049:
1048:
1012:
1007:
1006:
985:
965:
964:
936:
935:
910:
905:
904:
876:
871:
870:
843:
838:
837:
807:
802:
801:
767:
762:
761:
740:
735:
734:
692:
691:
672:
671:
648:
643:
642:
610:
588:
569:
564:
563:
542:
537:
536:
533:
526:
523:
514:
511:
469:
468:
449:
448:
379:
369:
368:
342:optimal control
322:
321:
299:
298:
270:
269:
250:
249:
230:
229:
210:
209:
190:
189:
160: for
135:
134:
110: for
55:
54:
28:
23:
22:
15:
12:
11:
5:
1507:
1505:
1497:
1496:
1486:
1485:
1480:
1479:
1467:
1466:
1464:
1461:
1460:
1459:
1446:
1441:
1435:
1430:
1425:
1420:
1415:
1408:
1407:External links
1405:
1404:
1403:
1398:
1393:
1386:
1383:
1382:
1381:
1374:
1352:
1348:
1324:
1321:
1315:
1310:
1306:
1283:
1279:
1275:
1269:
1266:
1252:
1237:
1234:
1208:
1205:
1180:
1176:
1164:
1145:
1142:
1119:
1096:
1093:
1079:
1061:
1057:
1033:
1030:
1024:
1019:
1015:
992:
988:
984:
978:
975:
949:
946:
917:
913:
901:
883:
879:
858:
855:
850:
846:
825:
822:
819:
814:
810:
785:
782:
779:
774:
770:
747:
743:
699:
679:
657:
652:
622:
617:
613:
609:
606:
603:
600:
595:
591:
587:
584:
581:
576:
572:
549:
545:
532:
529:
528:
527:
524:
517:
515:
512:
505:
482:
479:
476:
456:
445:
444:
443:
442:
431:
428:
425:
422:
419:
415:
411:
408:
404:
400:
397:
394:
391:
386:
382:
377:
329:
309:
306:
286:
283:
280:
277:
257:
237:
217:
197:
186:
185:
174:
171:
168:
165:
157:
154:
151:
148:
145:
142:
132:
121:
118:
115:
107:
104:
101:
98:
94:
90:
87:
83:
79:
76:
73:
70:
67:
63:
26:
24:
14:
13:
10:
9:
6:
4:
3:
2:
1506:
1495:
1492:
1491:
1489:
1477:
1472:
1469:
1462:
1458:
1454:
1451:
1447:
1445:
1442:
1439:
1436:
1434:
1431:
1429:
1426:
1424:
1421:
1419:
1416:
1414:
1411:
1410:
1406:
1402:
1399:
1397:
1394:
1392:
1389:
1388:
1384:
1379:
1375:
1372:
1368:
1350:
1346:
1319:
1313:
1308:
1304:
1281:
1277:
1273:
1264:
1253:
1232:
1203:
1178:
1174:
1165:
1162:
1140:
1117:
1091:
1080:
1077:
1059:
1055:
1028:
1022:
1017:
1013:
990:
986:
982:
973:
944:
933:
915:
911:
902:
899:
881:
877:
856:
853:
848:
844:
817:
812:
808:
799:
780:
777:
772:
768:
760:the value of
745:
741:
732:
731:
730:
728:
724:
720:
715:
713:
697:
677:
655:
640:
634:
615:
611:
604:
601:
593:
589:
582:
579:
574:
570:
547:
543:
530:
521:
516:
509:
504:
502:
500:
499:James Sethian
496:
480:
477:
474:
454:
429:
423:
417:
413:
409:
406:
395:
389:
384:
367:
366:
365:
364:
363:
360:
358:
354:
350:
345:
343:
327:
281:
275:
255:
235:
215:
195:
166:
163:
155:
152:
146:
140:
133:
116:
113:
102:
96:
92:
88:
85:
74:
68:
53:
52:
51:
49:
45:
41:
40:James Sethian
37:
33:
19:
18:Fast marching
1471:
1377:
1370:
1366:
1160:
1075:
897:
797:
726:
722:
718:
716:
635:
534:
446:
361:
346:
187:
42:for solving
31:
29:
208:with speed
38:created by
1378:considered
1371:considered
1076:considered
1047:and label
930:, use the
869:and label
723:considered
670:, between
495:Ron Kimmel
1323:~
1296:then set
1268:~
1236:~
1207:~
1144:~
1095:~
1032:~
1005:then set
977:~
948:~
824:Ω
821:∂
818:∈
784:∞
602:≈
531:Algorithm
478:∈
381:∇
308:Ω
305:∂
173:Ω
170:∂
167:∈
120:Ω
117:∈
66:∇
1488:Category
1453:Archived
1385:See also
1161:accepted
1130:. Label
898:accepted
727:accepted
712:are used
46:of the
1463:Notes
1338:. If
963:. If
34:is a
1274:<
1081:Let
983:<
836:set
690:and
497:and
467:and
30:The
1367:far
1254:If
1193:of
1159:as
1074:as
896:as
798:far
719:far
641:in
639:PDE
1490::
714:.
633:.
501:.
355:.
50::
1373:.
1351:i
1347:x
1320:U
1314:=
1309:i
1305:U
1282:i
1278:U
1265:U
1251:.
1233:U
1204:x
1179:i
1175:x
1163:.
1141:x
1118:U
1092:x
1078:.
1060:i
1056:x
1029:U
1023:=
1018:i
1014:U
991:i
987:U
974:U
945:U
916:i
912:x
900:.
882:i
878:x
857:0
854:=
849:i
845:U
813:i
809:x
781:+
778:=
773:i
769:U
746:i
742:x
698:n
678:1
656:n
651:R
621:)
616:i
612:x
608:(
605:u
599:)
594:i
590:x
586:(
583:U
580:=
575:i
571:U
548:i
544:x
481:S
475:x
455:S
430:,
427:)
424:x
421:(
418:f
414:/
410:1
407:=
403:|
399:)
396:x
393:(
390:u
385:S
376:|
328:x
285:)
282:x
279:(
276:u
256:x
236:x
216:f
196:u
164:x
156:0
153:=
150:)
147:x
144:(
141:u
114:x
106:)
103:x
100:(
97:f
93:/
89:1
86:=
82:|
78:)
75:x
72:(
69:u
62:|
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.