Detect
Jakob
Geo.Hackmin Week, 01.-06. March 2021
- BA & MA in Physics
- PhD in Computational Neuroscience
- now at Department of Physiology, Uni Bern; modeling of plasticity & learning in brains
- so far: consumer of geo data
- why this hackathon?
- learn something
- build something
- open data is awesome!
twitter: @_jakobj
github: https://github.com/jakobj/
About me
Locate crosswalks in Bern
The goal
https://www.swisstopo.admin.ch/en/geodata/images/ortho/swissimage10.html
with the help of aerial photographs
(SWISSIMAGE 10cm)
The method
Supervised machine learning
-> need (lots of) examples!
(46.94926, 7.45258, ...)
(46.94984, 7.45432, ...)
(46.94836, 7.45973, ...)
?
?
Gathering data
(Semi)manual annotation of full-scale images
-> extraction of ~1000 positive examples (50x50px)
(negative samples were generated automatically & reviewed)
Training the machine
Small convolutional neural network
(2x [Conv2d + ReLU + MaxPool2d] + 1x FC)
Output: probability that input image patch contains crosswalk
~20k parameters, ~40min training time, ~150 loc
Exporting the data (1/2)
positions of crosswalks within the photograph in pixels
+
coordinates of each photograph
=
(+ merging regions of interest)
Exporting the data (2/2)
~2500 ROIs imported into map.geo.admin.ch
Lessons learned
- time management
- pick a project that's realistic, a week is short!
- making some choice may be better than making the best
- applied machine learning
- consider the difficulty of the classification task; you may not always need a model trained on ImageNet
- poor performance is likely an issue of the data, rather than the model; check (and retrain) missclassifications!
- data augmentation FTW!
- geo data: coordinate transformations are a pain
Closing remarks
- simple supervised-ML methods are suitable for detecting regions of interest in aerial photographs
- (likely) every single design choice in this project can be improved
- give it a try! code & some doc (MIT license): https://github.com/jakobj/xdetect
Thanks to everyone involved for making this possible!
It was awesome!
Computer symbol: PanierAvide (Creative Commons)
Student photo: CollegeDegrees360 (Creative Commons)
Credits
XDetect
By jakobj
XDetect
Detect pedestrian crossings (or other persistent structures) in the SWISSIMAGE 10 cm dataset.
- 418