Skip to content
  • English

PROJECT LIST

  • AGROFORESTRY IN BARENTS REGION
    • BLOGI
    • MEDIA
  • TREASURES FROM THE NATURE
    • BLOGI
    • MEDIA
  • BERRY MACHINE
    • BLOGI
    • MEDIA

Marjamasiinan kesä 2022

Kategoria: JULKAISUT BERRY MACHINE

Marjamasiinan kesä 2022

Marjamasiina- hankeen tekniset työt polkaistiin käyntiin edellisenä vuonna meidän harjoittelijoiden loikkiessa pitkin metsiä kuvaillen ja laskien koealoja. Säät olivat suotuisia ja ilmapiiri positiivinen, ja saimmekin syksyyn mennessä paljon materiaalia, noin 10000 kuvaa ja satoja laskettuja koealoja  käsiteltäväksi Marjamasiinaa varten.

Vuoden 2021 kesällä marjojen kuvaukseen käytettiin useita kameroita; järjestelmäkameraa sekä high- ja low-end kamerapuhelimia. Kuvia otettiin koealojen päältä ja lähikuvia marjamättäistä annotointia varten. Hankitun kuvamateriaalin avulla tekoäly opetettiin tunnistamaan kuvasta eri lajin marjoja, kypsinä, raakoina ja kukintoina.

Lumien sulaessa ja kevään ollessa jo ovella, vuosi kehitystyötä alkoi olla jo täynnä. Projektin edetessä sen tavoitteet ja tarpeet koneoppimisen kannalta alkoivat selkeytyä, ja tärkeimmät kehityskohteet otettiin suurennuslasin alle.

Tiheyslaskennan tarkennus

Tekoäly määrittelee marjojen tiheyden kuvissa näkyvien marjojen avulla. Tässä hyödynnetään lineaarista regressiokäyrää, joka on muodostettu kerätyn kuva- ja marjalaskentamateriaalin pohjalta. Käytännössä tämä tarkoittaa sitä, että kuvassa näkyvät marjat kerrotaan keskihajonnasta saatavalla käyrän kertoimella, joka vaihtelee kuvattavan marjatyypin mukaan.

Lineaarinen regressiokäyrä. Mitä lähempänä lukema on 1, sen parempi korrelaatio.

Marjamasiina osoittautui eteväksi marjojen tunnistajaksi puolukan ja kypsän mustikan osalta, mutta haasteeksi osoittautuivat mustikan kukka ja raa’at mustikat. Tekoälyllä on havaintojemme mukaan vaikeuksia erottaa niitä taustasta etenkin kuvien heilahtaessa tai ylivalottuessa, jolloin niitä on vaikea etsiä kuvista edes ihmissilmällä. Lisäksi heittoa aiheuttaa kasvupaikka; rehevimmillä paikoilla lehtien peitteisyys ja varjoisuus vaikeuttavat erityisesti raakojen mustikoiden havainnointia. Yllämainitut seikat vaikeuttavat mahdollisimman korreloiva kertoimen luomista tiheyslaskentaan.

Apuna heikommin tunnistettavien marjatyyppien tiheyslaskennan tutkimiseen on kuten voisi olettaa, on suurempi ja tehostetumpi aineisto, jota keräämme kuluvana kesänä. Muutoksena edelliseltä kesältä, kuvaamme lisäksi pienempiä alueita koeruutujen sisältä, joka toivon mukaan parantaa algoritmiä tiheyslaskennan osalta. Lähempää otetuista kuvista marjojen havaitseminen on mahdollisesti helpompaa.
Kuvausta varten valmistimme 50cm*50cm kehikot, joita käytämme koeruutujen laskennan ja kuvaamisen yhteydessä.

 ¼ Kehikot asetetaan 100cm*100cm koealojen sisäkulmaan ja niiden marjamäärät lasketaan erikseen ja kummatkin kuvataan ylhäältä ja joka kulmasta. Pienten kehikoiden data yhdistetään isojen kehikoiden dataan, jonka avulla voidaan verrata kuinka lähempää kuvaus vaikuttaa marjatiheyteen.

Isomman ja pienemmän kehikon marjamäärät merkitään kuvausta varten lapuille.

Kuvien pinta-ala

Kuvien pinta-ala on määritetty tähän asti marjojen koon perusteella. Ohjelma laskee täten kuvan pinta-alan suhteessa kuvan marjojen pikselimääräiseen kokoon. Tällä menetelmällä kuvien mittasuhteissa voi olla huomattavaakin heittoa, sillä marjojen koko vaihtelee kasvupaikan mukaan.

Marjamasiinalla otettujen kuvien pinta-alan määrittämisen siirryttiin käyttämään AR- pohjaista ohjelmistoa, joka perustuu tasotunnistukseen. Tasotunnistuksessa tekoäly päättelee kuvan kulmissa esiintyvän neljän pisteen etäisyyden, ja kykenee niiden avulla laskemaan kuvan pinta-alan. Tarkemmalla pinta-alan laskennalla pyritään edistämään tiheyslaskennan tarkuutta. Sovellus toimii kohtuullisesti toimistoympäristössä, mutta pääsemme toivon mukaan testaamaan sitä maasto-olosuhteissa kesän edetessä.

Annotointi

Lisäsimme annotointeja 200 kuvan setillä, joka pitää sisällään pääasiassa mustikan kukkia sekä raakoja mustikoita, niiden tunnistamisen tarkentamiseksi. Poikkeuksena viime vuodesta, puolukan annotoinnissa on siirrytty ainoastaan ryppäiden merkintään, sillä yksittäisten marjojen erottaminen kuvista oli haastavaa.

Marjamasiinan väki toivoo, että teilhyvää marjakesää, joka metsässä saatujen havaintojen perusteella vaikutti olevan vallan mainio!

Posted on 24.11.202224.11.2022Posted in JULKAISUT BERRY MACHINE

Kesän satoa – Marjakuva-aineiston tuottamisesta ja tunnistamisesta

Tuomas Valtanen & Mikko Pajula

Marjamasiina –hankkeen tavoitteena on tuottaa tekninen prototyyppi, jonka avulla valokuvasta voidaan tunnistaa marjasadon tilanne tutkimalla marjojen lukumäärää. Tätä ongelmaa on lähdetty ratkaisemaan kone- ja syväoppimisen avulla, mikä tyypillisesti tarvitsee suuren kuva-aineiston, jotta tekoäly voidaan opettaa tunnistamaan erilaisia objekteja valokuvasta tehokkaasti.

Hankkeen tekninen toteutus sai kunnollisen startin kesän 2021 myötä, jolloin tuotettiin hankkeen alustava marjakuva-aineisto. Kuva-aineiston sisältö koostuu pääosin mustikan kuvista, tosin puolukkaakin on saatu jonkin verran kuvattua mukaan. Kuvia on kirjoitushetkellä kaiken kaikkiaan lähes 10000, ja joukossa on runsaasti kuvia marjojen kukista sekä myös raaoista ja kypsistä marjoista.

Kuvien valotus ja zoomaustaso vaihtelee kuvien välillä, sillä koneoppimisen näkökulmasta on hyvä, että aineisto on mahdollisimman monipuolinen. Valotuksen vaihtelu on tullut luonnostaan aina päivän sään mukaan, mutta zoomaustasoja on tasaisesti otettu kolmelta eri tasolta, joita ovat lähikuva, keskitaso sekä koko laskentamittauskehikon näyttävä kuvaustaso.  Monipuolisuuden lisäämiseksi kuvia otti myös usea valokuvaaja usealla eri kuvauslaitteella (erilaiset puhelimet ja järjestelmäkamerat).

Koneoppimismalli, joka opetetaan tunnistamaan valokuvista marjoja, tullaan rakentamaan neuroverkkojen avulla. Neuroverkko on ikään kuin laskennallinen malli siitä, miten ihmisaivoa muistuttava rakenne toimii keinotekoisesti. Toisin sanoen, neuroverkkoja hyödyntämällä voimme löyhästi matkia tietokoneella sitä prosessia, miten ihmisaivot oppivat. Tätä oppimista voidaan mm. soveltaa kuvien tunnistamiseen siihen erikoistuneella neuroverkkorakenteella.

Kuvien tunnistamisessa neuroverkko tyypillisesti koulutetaan aineistolla, jossa tunnistetut kohteet ovat valmiiksi merkattu.  Koulutusaineiston valmistaminen sisältää kuvien ottamisen lisäksi myös kuvien merkkaustyön ihmisen toimesta. Toisin sanoen, aineistoa käsittelevät henkilöt käyvät kuva-aineiston erillisen ohjelman avulla läpi, sekä merkkaavat kuvissa näkyvät mielenkiintoiset tunnistettavat asiat, joita tässä tapauksessa ovat marjojen kukat sekä raa’at ja kypsät marjat. Tätä prosessia kutsutaan yleisesti termillä annotointi, jota varten on olemassa erilaisia annotointiohjelmia.

Marjamasiina -hankkeessa annotointiohjelmaksi valittiin Label Studio -sovellus, jossa yhdistyi selkeys, tuotetun annotaatiodatan turvallinen säilytys sekä verkkopohjaisuus. Verkkosivuilta käytettävän ohjelman hyötynä on se, että kaikki henkilöt annotoivat yhtä aikaa samaa aineistoa, jolloin vältetään päällekkäistä työtä ja vältytään kuvatiedostojen sekä annotaatioiden siirtelyltä.

Kuva Label Studio -annotointiohjelmasta

Yksittäisen kuvan annotointi tapahtuu Label Studiossa piirtämällä neliö tunnistetun kohteen päälle. Annotointiprosessi itsessään on yksinkertainen, mutta tästä seuraa useita käytännön haasteita:

  • Kuinka laaja alue piirretään mukaan?
  • Merkataanko epäselvät tapaukset?
  • Kuinka pienet tai kaukaiset kohteet merkataan?
  • Mitä tehdä, jos ei erota esim. kukkia toisistaan?

Tunnistamisvaiheessa erityisesti puolukka tuotti hankaluuksia, koska puolukka kasvattaa marjat ryppäässä. Puolukan kukkavaiheessa on lähes mahdotonta ihmissilmällä erottaa ylivalottuneita kukkia toisistaan nipussa. Tämä puolukan ”erikoistilanne” ratkaistiin kehittämällä oma erillinen luokittelu ryppäälle. Sama toistettiin puolukan eri kasvuvaiheille.

Ryppäinä laskeminen voi olla haastavaa, sillä ryppäissä esiintyvät määrät voivat olla tulkinnanvaraisia. Toisaalta koneoppiminen voi oppia tunnistamaan ryppäät paremmin kuin yksittäiset marjat, jolloin tarkkuutta saadaan sillä, että useampi rypäs tunnistetaan. Tämä kuitenkin todennäköisesti johtaa sellaiseen kompromissiin, jossa joudumme arvaamaan ryppäiden koon perusteella niiden keskimääräisen marjamäärän.

Esimerkki tapauksesta, jossa rypäs tuottaa suuria tunnistamishaasteita

Marjamasiina –hankkeessa annotointia suorittaville henkilöille ohjeistettiin rajaamaan kohde mahdollisimman tarkasti, mutta kuitenkin niin, että liikaa aikaa ei kulu ja kaikki tarvittava tulee kuvaan mukaan. Epäselvät tapaukset merkitään ainoastaan silloin, jos on varmaa tietoa kohteen aidosta sisällöstä.  Pienet ja kaukaiset kohteet merkataan vain, jos niistä kertyy riittävästi pikseleitä.

Erityisen kiinnostavaa on etsiä marjoja keskivartalon tasolta otetuista valokuvista. Näissä kuvissa marjat ovat pieniä, mutta ainakin ihmisen silmällä helposti tunnistettavissa. Nykyaikaisten matkapuhelinten kameroiden kuvien laatu ja erityisesti pikselitiheys mahdollistaa pienten yksityiskohtien erottamisen.

Esimerkki kuvasta, joka on otettu noin keskivartalon korkeudelta

Kuvassa näkyvä kehys on marjojen laskentaruutu, jonka avulla lasketaan alueen marjat neliömetrin alueelta.

Mustikkakuvien annotoinnin aikana ilmeni myös, että kuvissa näkyy variksenmarjoja tai muita marjoja, jotka eivät ole tunnistuksen havaitsemisessa mukana. Variksenmarjat ovat vielä kohtuullisesti tunnistettavissa, mutta juolukka tuottaa jo haasteita, jos annoitoinnin suorittava henkilö ei ole koulutukseltaan agrologi. Ensimmäisten koneoppimisversioiden kohdalla näitä hankkeen ulkopuolisia marjoja ei oteta lainkaan huomioon, mutta jos niistä huomataan aiheutuvan haittaa tuloksiin, on olemassa keinoja estää koneoppimismallia tunnistamasta niitä väärin. Kun annotointiprosessi on saatettu loppuun, saadaan annotointidata koneelliseen muotoon, jolloin sitä voidaan hyödyntää neuroverkon kouluttamisprosessissa.

Yllä esimerkki koneellisessa muodossa olevasta annotointidatasta

Annotointiohjelman tuottama lopputulos on koneluettava tiedosto, joka voidaan syöttää neuroverkon oppimisprosessiin. Koneluettavassa tiedossa näkyy mm. annotoija, kuvan tietoja sekä kuvaan merkattu mustikan kukan koordinaatit kuvassa.

Tuotetun annotointitiedon pohjalta neuroverkko opetetaan aluksi tunnistamaan marjat, minkä jälkeen tutkitaan mahdollisuutta laskea marjojen määrä kuvatulta alueella.

Nyt syksyn edetessä FrostBit Software Labin väellä onkin työnsarkaa käydä koko aineisto läpi, varsinkin kun aineistoa voi vielä ilmaantua lisääkin käsiteltäväksi. Mutta mikäpäs siinä, mieluummin liikaa kuin liian vähän aineistoa!

Odotamme mielenkiinnolla millaisiin tuloksiin tuleva tekoälymme pääsee tuotetulla kuva-aineistolla!

Posted on 31.8.20211.9.2021Posted in JULKAISUT BERRY MACHINE

Tietosuojaseloste