{"id":1187992,"date":"2021-04-07T20:46:38","date_gmt":"2021-04-08T03:46:38","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1187992"},"modified":"2022-08-25T09:28:57","modified_gmt":"2022-08-25T16:28:57","slug":"automating-coastline-extraction","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","title":{"rendered":"Dev Summit 2021: Automating coastline extraction"},"author":207622,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[22931],"tags":[387782,555752,759652,759812],"industry":[],"product":[36841],"class_list":["post-1187992","blog","type-blog","status-publish","format-standard","hentry","category-imagery","tag-arcgis-api-for-python","tag-arcgis-notebooks","tag-coastline-extraction","tag-dev-summit-2021-demo","product-api-python"],"acf":{"short_description":"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.","flexible_content":[{"acf_fc_layout":"content","content":"<p>As the pace of coastal change accelerates, there is naturally a greater need for efficient and timely acquisition of coastline information.<\/p>\n<p>At the Developer Summit 2021 plenary, Rhea Jackson demonstrated how you can use the <a href=\"https:\/\/developers.arcgis.com\/python\/\">ArcGIS API for Python<\/a> and the <a href=\"https:\/\/enterprise.arcgis.com\/en\/notebook\/\">ArcGIS Notebook Server<\/a> to automate coastline extraction, which can facilitate the analysis and protection of these dynamic and fragile landforms.<\/p>\n<p>Watch the plenary video below, and then read the rest of the blog for a summary of the processes that Rhea explored in her demo.<\/p>\n"},{"acf_fc_layout":"youtube","start_time":"0","end_time":"","youtube_video_url":"<iframe title=\"Workflow Automation Using the ArcGIS API for Python\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/0msJLRzl1ok?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>"},{"acf_fc_layout":"content","content":"<h2>Search and visualize satellite imagery<\/h2>\n<p>First, Rhea used <a href=\"https:\/\/github.com\/sentinelsat\/sentinelsat\">Sentinelsat<\/a>, a Python package, to search for <a href=\"https:\/\/sentinels.copernicus.eu\/web\/sentinel\/missions\/sentinel-2\">Sentinel-2<\/a> level-1C satellite images in the <a href=\"https:\/\/scihub.copernicus.eu\/\">Copernicus Open Access Hub (SciHub)<\/a>. Sentinelsat provides a Python API and a command-line interface that simplifies the searching and downloading of all Sentinel products from SciHub.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188002,"id":1188002,"title":"Extracting images from SciHub","filename":"fetch_images.png","filesize":50553,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/fetch_images","alt":"Rhea\u2019s code parsed a query to the Sentinelsat API to search for Sentinal-2 level-1C satellite images in SciHub.","author":"207622","description":"Extracting images from SciHub","caption":"Rhea\u2019s code parsed a query to the Sentinelsat API to search for Sentinal-2 level-1C satellite images in SciHub.","name":"fetch_images","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:04:13","modified":"2021-04-08 03:05:16","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":846,"height":368,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","medium-width":464,"medium-height":202,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","medium_large-width":768,"medium_large-height":334,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","large-width":846,"large-height":368,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","1536x1536-width":846,"1536x1536-height":368,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","2048x2048-width":846,"2048x2048-height":368,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images-826x359.png","card_image-width":826,"card_image-height":359,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/fetch_images.png","wide_image-width":846,"wide_image-height":368}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>She then transposed the index and columns of the resulting data frame using the <a href=\"https:\/\/pandas.pydata.org\/\">Pandas<\/a> Python package and visualized the <em>footprint<\/em>\u00a0on a map widget provided by the ArcGIS API for Python.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188012,"id":1188012,"title":"Using a map widget","filename":"visualize_footprint.png","filesize":78780,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/visualize_footprint","alt":"Visualization of the 'footprint' on a map widget.","author":"207622","description":"Using a map widget","caption":"Visualization of the 'footprint' on a map widget.","name":"visualize_footprint","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:11:45","modified":"2021-04-08 03:12:42","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1332,"height":602,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","medium-width":464,"medium-height":210,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","medium_large-width":768,"medium_large-height":347,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","large-width":1332,"large-height":602,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","1536x1536-width":1332,"1536x1536-height":602,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","2048x2048-width":1332,"2048x2048-height":602,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint-826x373.png","card_image-width":826,"card_image-height":373,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/visualize_footprint.png","wide_image-width":1332,"wide_image-height":602}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2><strong>Download and process the data<\/strong><\/h2>\n<p>Next, Rhea used Sentinelsat to download the satellite images and retrieve their metadata.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188022,"id":1188022,"title":"Using Sentinelsat to download satellite images","filename":"downloading_images.png","filesize":28651,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/downloading_images","alt":"Rhea's code leveraged Sentinelsat to download the satellite images.","author":"207622","description":"Using Sentinelsat to download satellite images","caption":"Rhea's code leveraged Sentinelsat to download the satellite images.","name":"downloading_images","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:23:54","modified":"2021-04-08 03:24:29","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1053,"height":118,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images-213x118.png","thumbnail-width":213,"thumbnail-height":118,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","medium-width":464,"medium-height":52,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","medium_large-width":768,"medium_large-height":86,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","large-width":1053,"large-height":118,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","1536x1536-width":1053,"1536x1536-height":118,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","2048x2048-width":1053,"2048x2048-height":118,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images-826x93.png","card_image-width":826,"card_image-height":93,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/downloading_images.png","wide_image-width":1053,"wide_image-height":118}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>She then used the <a href=\"https:\/\/developers.arcgis.com\/python\/api-reference\/arcgis.raster.analytics.html#create-image-collection\">create_image_collection<\/a> method to create an image layer from the downloaded images. Note that she specified <em>\u2018Sentinel-2<\/em>\u2019 as the raster type.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188032,"id":1188032,"title":"Creating an image layer","filename":"image_collection.png","filesize":83126,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/image_collection","alt":"Rhea used the create_image_collection method to create an image layer","author":"207622","description":"Creating an image layer","caption":"'Sentinel-2' was specified as the raster type during the creation of an image layer.","name":"image_collection","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:26:59","modified":"2021-04-08 03:35:15","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1363,"height":232,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","medium-width":464,"medium-height":79,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","medium_large-width":768,"medium_large-height":131,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","large-width":1363,"large-height":232,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","1536x1536-width":1363,"1536x1536-height":232,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","2048x2048-width":1363,"2048x2048-height":232,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection-826x141.png","card_image-width":826,"card_image-height":141,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/image_collection.png","wide_image-width":1363,"wide_image-height":232}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Immediately after, she performed three pre-processing steps\u2014extracting the near-infrared (NIR) band, the blue band, and the red band to delineate certain surfaces\u2014before running the raster calculation function to apply the band ratio technique, which is a <a href=\"https:\/\/www.esri.com\/en-us\/arcgis\/products\/imagery-remote-sensing\/overview\">remote sensing technique<\/a> for coastline extraction. She later converted the binary raster to a polyline feature during the post-processing of the data.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188042,"id":1188042,"title":"Generating a binary raster","filename":"band_ratio_combined.png","filesize":39786,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/band_ratio_combined","alt":"The application of the band ratio technique (left) generated a binary raster.","author":"207622","description":"Generating a binary raster","caption":"The application of the band ratio technique (left) generated a binary raster.","name":"band_ratio_combined","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:28:30","modified":"2021-04-08 03:29:16","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1124,"height":266,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","medium-width":464,"medium-height":110,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","medium_large-width":768,"medium_large-height":182,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","large-width":1124,"large-height":266,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","1536x1536-width":1124,"1536x1536-height":266,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","2048x2048-width":1124,"2048x2048-height":266,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined-826x195.png","card_image-width":826,"card_image-height":195,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/band_ratio_combined.png","wide_image-width":1124,"wide_image-height":266}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"image","image":{"ID":1188052,"id":1188052,"title":"Coastline extraction","filename":"coastline_red.png","filesize":258693,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/coastline_red","alt":"The binary raster was later converted to a polyline feature for coastline extraction.","author":"207622","description":"Coastline extraction","caption":"The binary raster was later converted to a polyline feature for coastline extraction.","name":"coastline_red","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:29:43","modified":"2021-04-08 03:30:16","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1222,"height":382,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","medium-width":464,"medium-height":145,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","medium_large-width":768,"medium_large-height":240,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","large-width":1222,"large-height":382,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","1536x1536-width":1222,"1536x1536-height":382,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","2048x2048-width":1222,"2048x2048-height":382,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red-826x258.png","card_image-width":826,"card_image-height":258,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/coastline_red.png","wide_image-width":1222,"wide_image-height":382}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2>Automate the process<\/h2>\n<p>After successfully extracting the coastlines, Rhea used the ArcGIS Notebook Server\u2019s task scheduling feature to configure a task that automatically executes the ArcGIS Notebook every Monday at noon.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188062,"id":1188062,"title":"Task scheduling","filename":"create_task.png","filesize":151060,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/create_task","alt":"ArcGIS Notebook Server\u2019s task scheduling feature was used to configure a task that automatically executes the Notebook.","author":"207622","description":"Task scheduling","caption":"ArcGIS Notebook Server\u2019s task scheduling feature was used to configure a task that automatically executes the Notebook.","name":"create_task","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:33:08","modified":"2021-04-08 03:37:39","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1903,"height":780,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","medium-width":464,"medium-height":190,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","medium_large-width":768,"medium_large-height":315,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","large-width":1903,"large-height":780,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task-1536x630.png","1536x1536-width":1536,"1536x1536-height":630,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","2048x2048-width":1903,"2048x2048-height":780,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task-826x339.png","card_image-width":826,"card_image-height":339,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/create_task.png","wide_image-width":1903,"wide_image-height":780}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>Finally, she showed the results obtained after three weeks of automated execution of the notebook.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1188082,"id":1188082,"title":"Visualizing the results side-by-side","filename":"side_by_side.png","filesize":786481,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\/side_by_side","alt":"Visualizing the results side-by-side","author":"207622","description":"Visualizing the results side-by-side","caption":"The results accurately showed the changes in tidal height.","name":"side_by_side","status":"inherit","uploaded_to":1187992,"date":"2021-04-08 03:36:09","modified":"2021-04-08 03:36:44","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1238,"height":477,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","medium-width":464,"medium-height":179,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","medium_large-width":768,"medium_large-height":296,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","large-width":1238,"large-height":477,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","1536x1536-width":1238,"1536x1536-height":477,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","2048x2048-width":1238,"2048x2048-height":477,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side-826x318.png","card_image-width":826,"card_image-height":318,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/side_by_side.png","wide_image-width":1238,"wide_image-height":477}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2>Try it for yourself<\/h2>\n<p>Rhea\u2019s demo showed how a time-consuming and labor-intensive task such as coastline extraction can be automated with the powerful remote sensing capabilities of the ArcGIS API for Python and the ArcGIS Notebook Server\u2019s task scheduling feature. Visit the <a href=\"https:\/\/developers.arcgis.com\/python\/\">ArcGIS API for Python<\/a> and the <a href=\"https:\/\/enterprise.arcgis.com\/en\/notebook\/\">ArcGIS Notebook Server<\/a> pages to learn more about how you can automate the execution of your notebooks to facilitate your GIS work.<\/p>\n"}],"authors":[{"ID":207622,"user_firstname":"Aawaj","user_lastname":"Joshi","nickname":"Aawaj Joshi","user_nicename":"ajoshi","display_name":"Aawaj Joshi","user_email":"ajoshi@esri.com","user_url":"","user_registered":"2021-03-25 20:59:02","user_description":"Aawaj is a Product Engineer on the ArcGIS Enterprise team.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":216812,"user_firstname":"Rhea","user_lastname":"Jackson","nickname":"RJackson","user_nicename":"rjackson","display_name":"Rhea Jackson","user_email":"RJackson@esri.com","user_url":"","user_registered":"2021-04-08 16:35:25","user_description":"Software Development Engineer on Esri's raster team.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/IMG_1570-Copy-465x465.jpg' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"related_articles":"","card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/Coastline-Extraction-Card.jpg","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/Coastline-Extraction-Banner.jpg"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Dev Summit 2021: Automating coastline extraction<\/title>\n<meta name=\"description\" content=\"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dev Summit 2021: Automating coastline extraction\" \/>\n<meta property=\"og:description\" content=\"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-25T16:28:57+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\"},\"author\":{\"name\":\"Aawaj Joshi\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821\"},\"headline\":\"Dev Summit 2021: Automating coastline extraction\",\"datePublished\":\"2021-04-08T03:46:38+00:00\",\"dateModified\":\"2022-08-25T16:28:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\"},\"wordCount\":5,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"ArcGIS API for Python\",\"ArcGIS Notebooks\",\"Coastline Extraction\",\"Dev Summit 2021 demo\"],\"articleSection\":[\"Imagery &amp; Remote Sensing\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\",\"name\":\"Dev Summit 2021: Automating coastline extraction\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2021-04-08T03:46:38+00:00\",\"dateModified\":\"2022-08-25T16:28:57+00:00\",\"description\":\"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dev Summit 2021: Automating coastline extraction\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821\",\"name\":\"Aawaj Joshi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png\",\"caption\":\"Aawaj Joshi\"},\"description\":\"Aawaj is a Product Engineer on the ArcGIS Enterprise team.\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/ajoshi\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dev Summit 2021: Automating coastline extraction","description":"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","og_locale":"en_US","og_type":"article","og_title":"Dev Summit 2021: Automating coastline extraction","og_description":"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2022-08-25T16:28:57+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction"},"author":{"name":"Aawaj Joshi","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821"},"headline":"Dev Summit 2021: Automating coastline extraction","datePublished":"2021-04-08T03:46:38+00:00","dateModified":"2022-08-25T16:28:57+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction"},"wordCount":5,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["ArcGIS API for Python","ArcGIS Notebooks","Coastline Extraction","Dev Summit 2021 demo"],"articleSection":["Imagery &amp; Remote Sensing"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","name":"Dev Summit 2021: Automating coastline extraction","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2021-04-08T03:46:38+00:00","dateModified":"2022-08-25T16:28:57+00:00","description":"Learn how you can use the ArcGIS API for Python and the ArcGIS Notebook Server to automate coastline extraction.","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Dev Summit 2021: Automating coastline extraction"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/1a05fe13e7f3a2c7350529406f1ad821","name":"Aawaj Joshi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2026\/03\/IMG_6218-1-1-465x465.png","caption":"Aawaj Joshi"},"description":"Aawaj is a Product Engineer on the ArcGIS Enterprise team.","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/ajoshi"}]}},"text_date":"April 7, 2021","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/api-python\/imagery\/automating-coastline-extraction","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/04\/Coastline-Extraction-Banner.jpg","primary_product":"ArcGIS API for Python","tag_data":[{"term_id":387782,"name":"ArcGIS API for Python","slug":"arcgis-api-for-python","term_group":0,"term_taxonomy_id":387782,"taxonomy":"post_tag","description":"","parent":0,"count":44,"filter":"raw"},{"term_id":555752,"name":"ArcGIS Notebooks","slug":"arcgis-notebooks","term_group":0,"term_taxonomy_id":555752,"taxonomy":"post_tag","description":"","parent":0,"count":38,"filter":"raw"},{"term_id":759652,"name":"Coastline Extraction","slug":"coastline-extraction","term_group":0,"term_taxonomy_id":759652,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":759812,"name":"Dev Summit 2021 demo","slug":"dev-summit-2021-demo","term_group":0,"term_taxonomy_id":759812,"taxonomy":"post_tag","description":"","parent":0,"count":17,"filter":"raw"}],"category_data":[{"term_id":22931,"name":"Imagery &amp; Remote Sensing","slug":"imagery","term_group":0,"term_taxonomy_id":22931,"taxonomy":"category","description":"","parent":0,"count":768,"filter":"raw"}],"product_data":[{"term_id":36841,"name":"ArcGIS API for Python","slug":"api-python","term_group":0,"term_taxonomy_id":36841,"taxonomy":"product","description":"","parent":36601,"count":151,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=api-python","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1187992","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/207622"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=1187992"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1187992\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=1187992"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=1187992"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=1187992"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=1187992"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=1187992"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}