Suojateiden tunnistaminen ilmakuvista koneoppimisen avulla – Helsingin kaupungin tekoälykokeilu

Helsingin kaupunki järjesti työntekijöilleen Kokeilukiihdyttämö-nimisen kokeilukampanjan syksyllä 2019. Kiihdyttämön puitteissa rahoitettiin seitsemää erilaista tekoälykokeilua, joiden tematiikka vaihteli kaupunkistrategian viestinnän tulkinnasta kulttuuripalvelujen suosittelijaan sekä suojateiden tunnistamiseen ilmakuvista.

Tässä artikkelissa tutustutaan hieman tarkemmin tähän viimeksi mainittuun kokeiluun, sillä siinä käytettiin lähtötietoina avointa dataa, ja sen tuottama aineistokin on tarkoitus saattaa jakoon avoimesti. Se myös osoittaa, kuinka valmiista tietoaineistoista hieman jatkojalostamalla voidaan irrottaa uusia aineistoja, suoraan käyttötarpeeseen vastaten.

Helsingin ilmakuvaan eri väreillä merkittyjä suojateitä.
Tekoälyn tunnistamia suojateitä Helsingistä.

Kokeilun lähtötilanne

Helsingin kaupungin kaupunkiympäristön toimialalla on käynnissä liikenteenohjauslaitteiden (esim. tiemerkinnät, liikennemerkit, opasteet) tiedonhallintaan liittyvän alustan kehitystyö. Alusta olisi tulevaisuudessa myös suojateihin liittyvien tietojen tietovarasto. Nykyinen suojatieaineisto perustuu kaupunkimittauspalvelun keskilinja-aineistoon. Aineiston ylläpito on lopetettu vuonna 2014, joten esimerkiksi sitä uudempien kaupunginosien suojateistä ei ole kattavaa aineistoa. Onkin siis ilmeinen tarve ajantasaiselle suojatieaineistolle.

Nykyään konenäköä hyödynnetään yleisesti liikennemerkkien tunnistamisessa katunäkymistä, joten tuli idea, että kenties tiemerkintöjä, kuten suojateitä, pystyisi tunnistamaan ilmakuvista. Suojatiethän ovat ilmakuvissa varsin selkeästi tiestä erottuvia kohteita. Näin saataisiin suojatieaineisto ajan tasalle – sekä samalla dataa tiemerkinnöistä tekeillä olevan alustan testaamiseksi. Katunäkymiin verrattuna ilmakuvia oli saatavilla laajemmalta alueelta, ja vieläpä avoimena datana.

Tekoäly apuna

Kokeilussa siis varsin nopeasti metodiksi haarukoitui kohteiden tunnistaminen kuvista. Helsinki kuvataan ilmasta kerran vuodessa, ja ortoilmakuvat ovat tarjolla avoimena datana, joten pohja-aineiston saaminen ei ollut ongelma.
Kokeilukiihdyttämön tukemat kokeilut toteutettiin mallilla, jossa kaupungin työntekijöiden lisäksi oli mukana asiantuntijayrityksiä opastamassa tekoälyn saloihin. Tähän kokeiluun yrityskumppaniksi valikoitu Integrify, joka kouluttaa maahanmuuttajista koodareita sekä tekoälyasiantuntijoita. Integrify oli siis vastuussa kokeilun teknisestä toteutuksesta, ja kaupungin asiantuntijat taas vastasivat aineistoon liittyvistä kysymyksistä sekä tutkimuskysymyksen asettamisesta.

Integrifyn opiskelijoiden avulla ensimmäinen toteutus saatiinkin aikaiseksi hyvin pikaisesti, kiitos helposti saatavilla olleen datan sekä selkeästi rajatun tutkimuskysymyksen.

Integrifyn tekoälyasiantuntijoita.

Mallin kehittäminen on kovaa työtä

Suojateitä voidaan pyrkiä tunnistamaan erilaisilla kuvantunnistusalgoritmeillä ja -kirjastoilla, joten kokeilussa testattiin muutamaa eri vaihtoehtoa ja tutkittiin niiden soveltuvuutta.

Ensin kuitenkin piti saada nimettyä opetusdataa, eli malleille piti opettaa, että mikä se suojatie onkaan. Tähän käytettiin labelImg-nimistä työkalua. Opetusvaiheeseen meni runsaasti aikaa, sillä jokainen kuva piti käydä käsin läpi ja rajata siitä suojatie. Yhteensä käytettiin 2 400 nimettyä kuvaa. Niitä käsitteli noin 20 henkeä ja yhteensä työhön kului viisi päivää, joten datankäsittelyyn kannattaa varata aikaa!

Opetusdatana käytettiin Helsingin ilmakuvien lisäksi Espoon ja Vantaan avoimista ilmakuvista löytyneitä suojateitä, sillä suojatiethän näyttävät samanlaisilta kaupungista riippumatta ja siten opetusdataa saatiin enemmän.

Kun opetusdata oli käsitelty, alkoi varsinainen tekoälyn opettaminen sen avulla. Tässä hyödynnettiin pilvipalvelun tuomaa laskentatehoa, sillä tavallisella kannettavalla operaatioon kuluu helposti päiviä.

Opetuslaskentojen jälkeen alkoi mallin testaaminen syöttämällä sille leikkeitä ilmakuvista. Testausvaiheessa täytyy muistaa huomioida se, ettei testaa mallia opetusdatalla, vaan uudella testidatalla. Mikäli testaukseen käytetään opetuksessa käytettyä aineistoa, vaarana on se, että tulokset näyttävät liian hyviltä ollakseen totta sitten tosikäytössä. Mitä monipuolisempaa opetus- ja testidataa voidaan käyttää, niin sitä käytettävämpi lopullinen työkalu on.

Kun mallia oli testattu tarpeeksi ja todettu, että se voi tunnistaa suojateitä riittävällä tarkkuudella, niin siltä osin työ todettiin valmiiksi. Suuremmalla määrällä monipuolisempaa testidataa olisi voitu kenties saada parempia tuloksia, mutta kyse oli vain kokeilusta, joten ajan ja vaivan säästämiseksi päädyttiin 2 400 nimetyn kuvan opetusdatasettiin. Kun mallia ruvetaan käyttämään uusien ilmakuvien analysoinnissa, niin samalla sitä voidaan myös opettaa, mikäli todetaan että se ei tunnista suojateitä, tai jos tulee liikaa huteja, eli se luulee jossain olevan suojatien, vaikka siellä ei suojatietä todellisuudessa ole.

Datan korjausta ja käsittelyä joudutaan väkisinkin tekemään käsin, sillä malli ei ole aukoton. Varsinkin nyt alkuvaiheessa täytyy dataa tarkastaa, jotta nähdään, millaisia tuloksia onkaan saatu. Ilmakuvissa voi myös olla virhelähteitä, esimerkiksi mikäli suojatiellä on kuvaushetkellä sattunut olemaan auto, tai mikäli kuvassa on hyvin epämääräinen varjo tai vastaava näköhaitta.

Yhteistyömalli kokeilussa

Kokeilun aikainen yhteistyö kaupungin ja Integrifyn kesken sujui todella hyvin. Kokeilun aikana järjestettiin pari työpajaa, joissa yhdessä käytiin läpi käytettyä metodiikkaa sekä siihen mennessä saatuja tuloksia. Tämä syvensi myös kaupungin työntekijöiden ymmärrystä tekoälystä. Työpajat olivat siis todella hedelmällisiä, sillä työn tilaajana pääsimme myös keskustelemaan kehittäjien kanssa ja kysymään kysymyksiä.

Tämäntapainen työskentelymalli on hyvin opettavainen, mutta vaatii melko paljon aktiivisuutta ja innostuneisuutta sekä kaupungin että yrityskumppanin puolelta.

Helsingin kaupungin työntekijät workshopissa oppimassa tekoälystä.

Kokeilusta tuotantoon

Tekoälyn tekemiä suojatietunnistuksia. Ilmakuvassa olevan risteysalueen suojatiet on merkitty eri värein.
Tekoälyn tekemiä suojatietunnistuksia.

Kokeilu on nyt siis päättynyt. Tulokseksi kokeilusta saatiin suojateitä tunnistava kuvantunnistusmalli, joka toteutettiin RetinaNetin avulla. Tällä hetkellä kaupunki on pystyttämässä palvelinympäristöä, jossa tätä tekoälyä voidaan hyödyntää. Tavoitteena on, että jatkossa uusien ilmakuvien tullessa käyttöön voidaan datasettiä päivittää niiden avulla. Tällä hetkellä malli ei kuitenkaan ole 100 % tarkka, joten ihmistyötä joudutaan vielä käyttämään datan tarkastamiseen.

Tulevaisuudessa suojateihin liittyvä tieto syntyy toivottavasti prosesseissa, joten sitä ei tarvitse enää tällaisen välivaiheen kautta hankkia. Mutta sitä ennen täytyy kuroa umpeen datakuilu nykytilanteen ja nykyisen datasetin välillä, ja siihen tämä tekoälyapuri on todella käytännöllinen.

Avoin dokumentaatio & kokeilun tulevaisuus

Kokeilu päätettiin toteuttaa avoimuuden periaatteiden mukaisesti, joten sen dokumentaatio on myös vapaassa jaossa. Ainoastaan RetinaNetin ohjaustiedosto, joka sisältää suojateiden tunnistamiseen tarvittavat tiedot, oli liian suuri GitHubiin, joten sen saa toistaiseksi vain pyyntöä vastaan. Mahdollista kätevämpää säilytyspaikkaa tutkitaan.

Kokeilu on myös poikinut jatkotutkimusta. Sen pohjalta on Aalto-yliopistossa valmisteilla pro gradu -työ, joka pyrkii suojateiden tunnistamisen lisäksi tekemään niille automaattisen kuntoluokituksen. Tämän avulla voitaisiin ennakoida tulevia maalauskustannuksia ym. aina joka syksy uuden ilmakuvan tullessa käyttöön.

Teksti: Saska Lohi

Kokeilun työryhmä Helsingissä: Fanny Taxell, Saska Lohi, Virpi Vertainen, Esko Laiho ja Minna Leinonen