Experts van Naturalis kunnen heel veel soorten herkennen,
maar dat kost veel tijd.
Kunnen we robots leren hoe je dat (in simpele
gevallen) doet?
Wat hebben we nodig?
• Goede voorbeeldfoto’s van soorten • Automatische beeldbewerking • Onderscheidende kenmerken die uit foto’s gehaald kunnen worden
• Robothersenen (“kunstmatige intelligentie”) • Een handige “app” om mee te werken
Voorbeeldfoto’s
“Vrouwenschoentjes” zijn een groep orchideeën met mooie bloemen. Bovendien smaken de knollen lekker: in Turkije en Griekenland worden er drankjes en roomijs van gemaakt.
De Vrouwenschoentjes zijn daarom bedreigd in het wild, en de handel is aan banden gelegd. Het is dus belangrijk dat de douane ze goed kan herkennen.
photos [table]id INTEGER NOT NULLmd5sum VARCHAR(32) NOT NULLpath VARCHAR(255)title VARCHAR(100)description VARCHAR(255)
photos_tags [table]photo_id INTEGER NOT NULLtag_id INTEGER NOT NULL
tags [table]id INTEGER NOT NULLname VARCHAR(50) NOT NULL
photos_taxa [table]photo_id INTEGER NOT NULLtaxon_id INTEGER NOT NULL
taxa [table]id INTEGER NOT NULLrank_id INTEGER NOT NULLname VARCHAR(50) NOT NULLdescription VARCHAR(255)
ranks [table]id INTEGER NOT NULLname VARCHAR(50) NOT NULL
Onze database van voorbeeldfoto’s We gebruiken Flickr om samen onze database bij te kunnen houden. Met trefwoorden bij elke foto geven we aan tot welke soort (en geslacht, en familie, enz.) de bloem in de foto behoort.
Foto’s automatisch voorbewerken
b)a)
Wij kunnen zien waar de bloem zit in de foto en kunnen de rest negeren. Een computer
kan dat niet, dus je moet alles wat niet belangrijk is weghalen.
Wat is een “pixel”?
b)a)
Een pixel mengt drie kleuren, uitgedrukt in getallen: • Rood (114/255) • Groen (110/255) • Blauw (33/255) Een digitale foto
bestaat uit duizenden “pixels”
Kenmerken waar een robot iets mee kan
Horizontal bin
Mean C
olo
ur
Inte
nsity
050
100
150
200
250
Vertical bin
Mean C
olo
ur
Inte
nsity
050
100
150
200
250
Een robot ziet geen bloem. Een robot kan alleen iets met getallen. We moeten de bloem dus omzetten in getallen die kenmerkend zijn voor de soort. We doen dat door de foto in 50 horizontale en 50 verticale “plakjes” te snijden en voor elke plakje het gemiddelde van de pixelwaardes (R,G,B) te nemen.
Soortherkenning door neurale netwerken
Horiz
ontal bin
Mean Colour Intensity
050100150200250
Vertic
al bin
Mean Colour Intensity
050100150200250
Waarneming
Nadenken
Beslissing
Cypripedium wardii
Cypripedium tibeticum
De “app”
We hebben een website ontwikkeld waarmee je op een makkelijke manier gebruik kan maken van dit systeem, zowel op de computer als op je telefoon.
We noemen het OrchID
Zo ziet het er uit:
Hoe past het allemaal in elkaar? a) Reference image management
b) Image analysis and ANN training
c) Out-of-sample classification
Training photos
Cloud store Annotate
Local file
store
Local metadata
store
Extract features
Generate code-words
Training data
ANNs Evolutionary optimization
Pre-process
Classification
Query data
Query photo
OrchID web application
AI::FANN::Evolving
NBClassify
ImgPheno
Flickr API
Participating modules
Om flexibel te kunnen ontwikkelen is dit project opgebouwd uit onaf-hankelijke modules: • Bijhouden van
voorbeeldfoto’s • Foto’s automatisch
voorbewerken • Beheren van de robots • Evolueren van robots • Classificatie van
onbekende foto’s Dit project is “open source”, geschreven in Python, en beschikbaar op github.com/naturalis
Wat moet er nog gebeuren?
• We willen dit systeem testen op andere groepen. Als eerste gaan we dit doen voor Javaanse vlinders.
• Waarschijnlijk moeten we dan andere kenmerken ontwikkelen, bijvoorbeeld om stippen te herkennen.
• We willen een app maken die ook echt in de app store voor iPhones en Androids te vinden is.
Vlinders uit de collectie Van Groenendael. Verzameld in de jaren ‘30 in Java (toen dus in “Nederlands-Indië”). Hier hebben we er heel veel van.
Doe je mee? Je kan je stage doen bij
Naturalis: [email protected]
Ons team
Patrick Wijntjes maakte de app
Serrano Pereira deed het rekenwerk
Barbara Gravendeel weet alles van orchideeën
Meedenkers: • Thibaut De Meulemeester • Leni Duistermaat • Arjan Gittenberger • David Heijkamp • Youri Lammers • Peter van Welzen
Bedankt voor jullie aandacht! Contact: [email protected] @rvosa (twitter)
Top Related