Has anyone used AI to solve a GIS problem or as a GIS tool?

627
2
10-19-2023 06:43 AM
Amanda__Huber
MVP Regular Contributor

Hey all, 

With the exponential emergence of AI and seemingly it's in everything now, I'm curious if anyone has found a use for it in GIS? Are there any tools that you've used or can recommend?

Thanks!

 

Tags (3)
0 Kudos
2 Replies
jcarlson
MVP Esteemed Contributor

"AI" is certainly the buzz right now, but you have to be careful, because folks are applying the term to seemingly anything and everything that synthesizes content from something else.

The best GIS applications for machine intelligence are things that have already been around under other, more sensible names. Machine learning, model training, image detection. Essentially, teaching a computer model how to "see" particular objects, pixel values, and the like, usually working with remote sensing data.

One of my favorite recent examples is the "Text-on-Maps" feature added to the David Rumsey collection. https://www.davidrumsey.com/

It probably falls short of "AI", but a model was trained to read and catalog all instances of text on maps, and now you can search the entire collection for basically any word or phrase you'd like.

Screenshot 2023-10-19 at 9.37.08 AM.png

I'd love to see a more robust image-to-text model that could handle cursive legal descriptions from the 19th century, maybe even separate out the different segments of a traverse for me.

- Josh Carlson
Kendall County GIS
0 Kudos
JohnNerge
New Contributor III

I haven't used this in real life yet, but one of my interns showed me how to use ChatGPT to help document a Python script. I think the cool thing here is that you can either use it to write up a description of a script you wrote yourself OR to understand a script you found on Stack Overflow or elsewhere that you can't 100% read yourself.

Here's the sample Python script.

import arcpy

nbhds = "full path to neighborhoods feature calss"
parcels = "full path to parcels feature class"

arcpy.conversion.ExportFeatures(parcels,r"memory\Parcels")

arcpy.management.JoinField(r"memory\Parcels", "Neighborhood", nbhds, "Neighborhood", "Total_Population")
arcpy.management.JoinField(r"memory\Parcels", "Neighborhood", nbhds, "Neighborhood", "Total_Households")

And here's what ChatGPT answered.
Prompt: Tell me what this Python script is doing and then pasted the script.

The provided code snippet is written in Python using the arcpy module, which is a Python library for working with ArcGIS software.

The code performs the following tasks:

1. It imports the arcpy module.
2. It assigns the path of a feature class named "Neighborhoods" in a geodatabase to the variable "nbhds".
3. It assigns the path of a feature class named "Parcels" in a geodatabase to the variable "parcels".
4. It exports the features from the "Parcels" feature class to a temporary feature class named "memory\Parcels".
5. It joins the "Total_Population" field from the "Neighborhoods" feature class to the "memory\Parcels" feature class based on the "Neighborhood" field.
6. It joins the "Total_Households" field from the "Neighborhoods" feature class to the "memory\Parcels" feature class based on the "Neighborhood" field.

0 Kudos