Artificial intelligence on urban tree species identification 人工智能在市区树种识别上的应用

It doesn’t matter which part of the world you are living now,  very diverse tree species are planted around the urban area we live.  Trees in the urban areas have many functions, for example, trees provide habitats for wildlife, clean air and water, provide significant health and social benefits, and also improve property value too.  Wake up in a beautiful morning that birds are singing outside your apartment because you have many beautiful trees grow outside of your space. How awesome is that!

However, tree planting, survey, and species identification require an enormous amount of work that literally took generations and years of inputs and care. What if we could identify tree species from satellite imagery, how much faster and how well we could get tree species identified and also tell their geolocations as well.

A city has its own tree selection and planting plan, but homeowners have their own tree preference, which the identification work a bit complicated, though.


(Photo from Google Earth Pro June 2010 in Chicago area)

It’s hard to tell now how many tree species are planted in above image. But we could (zoom in and) tell these trees actually have a slightly different shape of tree crown, color, and texture. From here I only need to have a valid dataset basically tell me what tree I am looking at now, which is a tree survey and trees geolocation records from the city. I will be able to teach a computer to select similar features for the species I’m interested in identifying.


These are Green Ash trees (I marked as green dots here).


These are Littleleaf Linden, they are marked as orange dots.

Let me run a Caffe deep learning model (it’s one of the neural networks and also known as artificial intelligence model) for an image classification on these two species, and see if the computer could separate these two species from my training and test datasets.

Great news that the model could actually tell the differences between these two species. I run the model for 300 epochs (runs) from learning rate 0.01 to 0.001 on about 200 images for two species. 75% went to train the model and 25% for testing. The result is not bad that we have around 90% of accuracy (orange line) and less than 0.1 loss on the training dataset.


I threw a random test image to the model (a green ash screenshot in this case) and it tells the result.


I will be working on identifying other 20 trees species and their geolocations next time.

Let’s get some answer what trees are planted in Chicago area and how it related to the property value (an interesting question to ask), and also what ecological benefits and functions these tree are providing (leave this to urban ecologist if my cloud computer could identify the species)? Check my future work ;-).


ArcGIS v.s. QGIS: which one works better

ESRI_ARCMAP_transparenteV.S. trademark

Recently, I’ve been asked which GIS software is the best between QGIS and ArcGIS. It’s quite obvious already that these two are the most popular, and better geospatial analysis tools out there and people who do spatial analysis have noticed. Both of them have huge user groups, and you could get lots of help online. Even though you might want to check out these other tools, including SAGA GIS, GRASS, some R geospatial analysis packages.
Let’s go back to ArcGIS and QGIS, GISGeography, have pull the reviews of these two software together that ArcGIS has been received 9.2 out of 10 score, and QGIS is 8.9. Each of them have the constrains, but also have something that stands out definitely.

ESRI ArcGIS 10.3
-Solid geoprocessing framework
-Boatloads of symbology choices
-Beautiful 3D software options
-ArcGIS Online data warehouse
-Extraordinary topology editing
-Some data types consumption
-Obtaining license for basic tools
-High cost

QGIS 2.1
-QGIS GPL license offers freedom
-Beautiful labeling options
-Wide range of GIS analysis tools
-Amazing data consumption
-Plugins help your customized tasks
-Lack of 3D integration
-Graphical modeller is buggy
-No automatic topology error fixing

At this point, I would say it really just depends on your preference, your needs and questions. I’ve used ArcGIS for very long time, and have just tried out QGIS recently. The summary of differences between these two are based on my personal experience, this cool blog and other resources.

Simply, if you are more analytical personality and are more into geo-informatics , ArcGIS will be a great investment. If you wanna just produce good looking map, QGIS is free and could be a good choice. If you do more 3D demonstration go for ESRI products. If you are in the united states and wanna get a job here, ArcGIS will be right direction to go since all the state department and even private companies require ArcGIS skills and knowledge. ArcGIS has more hand-on example, QGIS has a good tutorial as well, but since ArcGIS has bigger and better educational team, you would get more help and tutorial online for ArcGIS. However, if you are outside of the united states, and English is not your first language, I would recommend QGIS, since QGIS have more different language build-in. If you are going to use some simple geospatial function to fulfill your research/academic and simple mapping skill rather than more profound geospatial analysis, i would also say QGIS. If you are already doing a lot of MATLAB and R coding I would say, QGIS might be a better choice outside of the states even though ArcGIS have its technical support teams in other countries besides in the states.
Last tip that QGIS could run on Mac and windows, but ArcGIS only could run on windows so far if you are not using python scripting for ArcGIS.