Learning Goals
Non-georeferenced maps may still be be items you want to use in a project. Maybe you are using a map in a history project and want to understand how parcels of land have changed over time, and tell you something about your subjects' lives. Maybe you are interested in environmental studies and you want to layer satellite images that show deforestation to track how those changes have influenced the demographics of a region. Even if you have found a map that doesn't have GIS information, you can take an additional step to add those values to the map by georeferencing it.
Georeferencing is the process of taking what is called a raster (as opposed to vector) image and positioning it into geographic space. A raster image can be many different kinds of drawings or photography including satellite imagery, architectural drawings, or in the case we'll be exploring here, a scan of an old map. When this is georeferenced, geographic information such as coordinates is added, so that by adding features to the map, for example, if you wanted to mark where certain buildings that were meaningful to your project were, you are placing them as a specific point on the globe that you can relate to other map points or layers.
With this tutorial you'll take a historical map showing how Marble Hill used to be connected to Manhattan before the Spuyten Duyvil creek was extended to allow for easier shipping. I've placed the map below but it's also available in the New York Public Library's Digital Collections.
Data
Getting Started
- Download OldMarbleHIll.jpg and save it to either a folder that you have already connected to ArcGIS via the Catalog pane or one you can easily navigate to do so.
- Take a look at the image and take note the street names to see where in New York is covered by the map, so you know where to navigate to when you open the map. You can compare it to the current Marble Hill area in Open Street Map or Google Maps to get an idea of what the area looks like today.
- When ArcGIS Pro opens, in the New section of the window that opens choose Map under Blank Templates.
- A Create a New Project window will open, let's name this project OldMarbleHill You can also choose where it will save this project to. By default, mine goes to a Projects folder where I have ArcGIS saved on my computer, but you may decide to save it somewhere different. Wherever you save it to, take note of where it is on your computer. You will need to navigate back to it at the end of this tutorial so that you can zip the project folder along with all the other files that you have used.
- Since for this map we'll only care about where streets intersect (i.e., not topography or elevation) let's use the Basemap dropdown to change the map type to Streets.
- In the Catalog, right-click on Folders and choose 'Add Folder Connection'. Maneuver to the folder that you have put the OldMarbleHill file in and click OK.
- Right-click on OldMarbleHill in that folder and choose Copy.
- Scroll back up to the folder created for this project in the Catalog pane, which will have a little home icon atop it, OldMarbleHill. Right-click and choose Paste. Make sure that this is the layer that you add to the map, not the one in your original folder. In fact, right-click on the folder you added and choose Remove so the only folder that's in your catalog is OldMarbleHill.
ArcGIS Pro is very picky about file structure and if you do not keep a consistent file structure, then any layers, files, shapefiles, selections, or any other modifications that rely on being able to access those files, layers, shapefiles, tables, etc, change then your project file will be defunct and all those layers will need to be added again, and any joins or other modifications will need to be redone.
- Use the Navigate and Map tools to get to the area of the map that you'll eventually be mapping, the neighborhoods of Inwood and Kings Bridge (228th street down to about 207th). Put in a bookmark here so you can get back to it easily. Go to Bookmarks under Map in the toolbar and choose New Bookmark.
- Name the bookmark Marble Hill Full and save it.
- Go to the Catalog window. Click on OldMarbleHill.jpg. It should have an icon that looks like a grid next to it. Drag it onto your canvas.
- You'll get a request to Calculate statistics for OldMarbleHill.jpg, choose Yes.
- It will calculate, and then there will be a warning, saying that the data source is missing spatial reference information so it cannot be projected. We already know that it is lacking this information, and that's what we will handle when we georeference it, so ignore this warning.
- Your Contents pane will display OldMarbleHill.jpg as a layer, but the display on your canvas won't change. To see where ArcGIS decided to place the image, right-click on OldMarbleHill.jpg in the Contents pane and choose Zoom to Layer. You'll see that it's placed it way out over the equator.
- Access the Marble Hill Full bookmark that you've created by clicking on the Bookmarks dropdown and selecting it. It'll take you back to the section of the map that you intend to place this new map on.
Preparing to Georeference
You add georeferencing by adding control points to a layer and to the map beneath it at the points where the two share a common street intersection, building, mountain peak, whatever is easy to identify on the map layer you want to georeference and on the base map below it. When you add enough of these, ArcGIS will be able to rectify the two items, and accurately stretch and place your map layer over the locations on the basemap that it covers.
- Click on Imagery in the menu bar and choose Georeference. This opens a new set of tools.
- To get started, choose Fit to Display and the map you're attempting to georeference will fit itself across the center of the frame.
There are two methods for being able to see beneath the OldMarbleHill layer onto the basemap. One is to just use the checkbox next to it in the contents pane to turn it visible and not visible. The other is to go the Appearances tab under Raster Layer and using the bar next to Transparency to set the layer to be more transparent.
I prefer to check and uncheck visibility for OldMarbleHill.jpg in the Contents pane, since to place the other half of an anchor point I'll have to be moving between the OldMarbleHill.jpg layer and the basemap anyway, so that's how I'll be explaining it.
- You'll next be choosing control points that exist on both maps. Think of it as you are telling ArcGIS Pro which points have to be on top of each other so it can pull the rest of the map in place around it, like you are sewing two pieces of cloth together.
- Let's switch back and forth between the two and identify 4 intersections or features that exist on both. This is a little challenging since obviously, the reason for creating this map is so because we want to see how the coastline changed, but fortunately there seem to be some consistencies.
- Starting from the bottom left, it seems that the intersection between Isham and 10th is on both maps. When we've located it, create a bookmark over it, by making sure you have World Street Map highlighted in the Contents Pane, going to Map, choosing Bookmarks, New Bookmarks and naming it Isham and 10th.
- Farther down and towards the center, we can also see that the intersection between Vermilye Ave and Dyckman Street is on both maps, even though the spelling of Vermilyea seems to have changed to include an 'a'. Put a bookmark over it on the base map called Vermilye Ave and Dyckman Street
- In the top left, we have 218th Street intersecting with Seaman Avenue on both the OldMarbleHill.jpg map layer, and on the basemap layer. Put in a bookmark for this spot on the basemap called Seaman Ave and 218th Street.
- Lastly, before we start actually putting in these control points, let's find a fourth point. In the top right 220th Street and 9th Avenue intersect on both maps. Let's put a bookmark there called 220th Street and 9th Avenue
Now that you have the first four points picked out and bookmarked you are ready to start adding them as Anchor Points. The reason for the bookmarking is because every time you add an anchor point, your map will shift, and this will just make it easier for you to get back to each of those points as the map shifts.
Adding Anchor Points
- Let's start with the first point we picked, Isham Avenue and 10th Avenue. Turn the visibility on for OldMarbleHill.jpg on, and select that layer. Use the Explore tools on the Map tab to zoom and pan over to that location.
- Click back into the Georeference tab and choose Add Control Points. Your cursor will change to be a little cross, and when you hover there will be a little bit of text that says From point (source). Click on the northwest corner of the intersection between Isham Avenue and Tenth Avenue on the map.
- The cursor will change to say Endpoint and put a little red square at that intersection. Uncheck the visibility on OldMarbleHill and if you need to find the intersection on the World Street Map, use the bookmark for Isham and 10th. It looks like when I used Fit to Layer it placed these close enough together, so I won't need it. The cursor will now say To Point (target). So I'll click on the northwest corner of the intersection between Isham (now street) and 10th Avenue on this map, and it'll change to be a little red circle with a cross through it.
- Use the Explore tools under Map to get out of the mode where you are adding a control point, and find your way back over to where Dyckman Street and Vermilye Avenue intersect on the OldMarbleHill.jpg map layer. Click back to the Georeference tab and choose Add Control Points. Click on the top right corner of that intersection first on the Old MarbleHilll.jpg layer, and then on the basemap, and the map will shift again.
- Next, it'll probably be easier for us to get to our third point, by using the bookmark for Seaman and 218th Street, and then using the Explore tools under Map to get to the place on the OldMarbleHill.jpg layer where 218th and Seaman intersect. I'll put the anchor point on the bottom right of the intersection, which is admittedly a little tricky since on this 1879 map the 218th street was still theoretical, but I'll approximate it the best I can. Next, I'll place the other half of the anchor point where the bottom right of the intersection is on the two streets on the modern base map, using the bookmark to get back to it if I have any trouble finding it.
- Let's add the last of the control points we had planned, 220th Street and 9th Avenue. Use the bookmark to get back to it if you need to. Put a control point on the top left corner of the intersection on OldMarbleHill.jpg and on the base map underneath it.
- If you make any mistakes or want to delete a control point, you just need to choose the Control Point Table option on the Georeference tab. You can delete a point using the icon with the little red x next to it, and if you want to check and see how the map changes if you get rid of a particular control point you can just unclick the box next to it.
Zoom out and either adjust the transparency or turn the OldMarbleHill.jpg layer off and on to see how the maps are lining up. It looks like we might need to make some adjustments on the left-hand side of the map, which we can do in the next step by adding additional control points, and by configuring the Transformation of the map.
Fine-tuning with Transformations and Added Control Points
The Transformation tool controls the method that ArcGIS is using as it figures out how to fit the map layer you're georeferencing around the Control Points that you've added to it. The more points you have, the closer it can get to fitting the two maps together. Let's see what happens when we change what transformation we are using.
- Click on Transformation to see the options available. By default, my map is transformed using 1st Order Polynomial. There seem to be a lot of other options. Some are greyed out, and the additional information below them gives a clue why. Each of them needs a certain number of control points to work. Currently we have four, so some just aren't available to us.
- Let's switch to some of the others that we have enough control points for, by clicking on them.
- Projective clearly doesn't work with the control points that we currently have as it extends the map out widely, so we'll want to add more control points towards the top of the map if we want to use that one.
- Adjust looks pretty promising actually, as we click OldMarbleHall.jpg in and out of visibility, or use the transparency option if that is preferred.
- Similarity Polynomial also looks promising, and for now, let's stick with that one as we see if there is anywhere else that we can add control points.
- Scroll down to the bottom left of the OldMarbleHill.jpg map, and turn its visibility off and on to confirm a hunch. It appears that what was Inwood St on the 1879 map, is now a continuation of Dyckman St. In this case, I've done some further research in the NYPL's online map archives and confirmed that is the case. So let's add another control point where what's Inwood St on the OldMarbleHill.jpg map and Dyckman St on our modern map intersect with the railroad track.
- Choose Add Control Point and add a point where Inwood St ends before the railroad track on OldMarbleHill.jpg and create the second half of it where Dyckman St ends right before the railroad track
- Zoom out and try the map trick again to see if it can tell us anything about if that control point helped anchor the map better or not. In this case, it looks like yes. Let's add one more control point on the far left of the map, and choose the only other point I can see that exists on both maps, where the railroad track reaches the very edge of the peninsula.
- Zoom out to see if you think that the map is laid out well. Go through the different Transformation options again to see if they match up the way that you'd like. Actually, now that the control points to the west side of the map have been added, Projective seems to provide the best match, so I'm switching it to that.
- Let's Save this map by clicking on the Save icon up at the top right of the Georeference tool bar. This needs to be done otherwise the jpeg that you've just spent all this time georeferencing will just remain a jpeg.
- To see what this change has done, open the file that you've created for this project in Windows Explorer. In addition to the jpeg file that you've added, there are now all these other XML files or other kinds of files that have the same name. If you plan on taking this jpeg that you've georeferenced and add it to a different maps, you'll have to ensure that you bring all those other files with it too.
Adding Metadata
Whenever you add a layer with information to your map, you'll want to also add additional data about where you got that information so that your viewers will know where it came from. This data about data is called 'metadata'.
- Right-click on OldMarbleHill.jpg in the Contents pane and choose Properties. Click on Metadata.
- Change the dropdown that says Show metadata from data source (read-only) to Layer has its own metadata.
- Return to the location where this map came from on the NYPL's website
- Click on the tab marked Cite this Item on that site, and copy the citation style you desire into the Credits field and choose OK. This way when it comes time to add this information to your paper, you aren't scrambling for what and where it is.
Saving Your Map