Mapillary

Gisteren fietste ik met dat prachtige weer over de Planken Wambuis en was benieuwd wie hier al eerder voor Mapillary was langs geweest.
Nou, dat was dus deze meneer met prachtige 360º beelden.
Mooi hoor, zo’n camera! En ruim een week geleden was het dus bijna net zult mooi weer als gisteren!

De LG valt wel mee.

Dank Marc. Het was zeker mooi weer. Dat is wel iets waar ook de LG360 ook van houdt heb ik gemerkt. De kwaliteit is echt een stuk beter als er veel licht is. Niet onlogisch want alle cameras houden van licht maar ik vind het verschil in kwaliteit van de fotos tussen veel en wat minder licht wel groot. Hoe dan ook … de camera bevalt best goed. Ook omdat ie kan laden (battery pack) en fotograferen tegelijk. Dan heb ik er op mijn fietstocht nauwelijks omkijken naar. Enig nadeel nu is dat ik nogal lang bezig ben met uploaden van foto’s. Ik heb gemerkt dat Mapillary niet zo goed overweg kan met het python upload script en hele grote aantallen (bv 5000 foto’s tegelijk). Ik heb nog een heleboel foto’s die ik moet uploaden.

(NB… ik hou ook de ontwikkelingen van deze 360 graden camera in de gaten… Kon wel eens een opvolger worden)

Om de fietsknooppuntnummerbordjes te controleren is de LG niet de meest geschikte camera heb ik gemerkt. Maar ja, een gegeven paard… :wink: Bij mij werkt het uploaden via het script zonder haperingen, meer dan 5000 foto’s duren lang maar meestal gaat het goed. De maximale uploadsnelheid van mijn provider is 20 Mbps. Soms moet je op de website (http://legacy.mapillary.com/map/upload/im) nog checken/bevestigen dat er nog een reeks in de wachtrij staat.

Mijn Theta S heeft ook graag veel licht. Veel licht ?, de meeste smartphones zullen nu wel een luxmeter hebben.
Wat OpenSteetCam betreft, het lukt mij niet met de OBD2 dongle. De app Torque krijgt er wel kontact mee.
Ik zal nu de dongle van Mercedes zelf proberen, die is gratis.
mercedes.me

Ik had gevraagd naar een professioneler camera, in veel van de apparatuur wordt een Lady bug 5 gebruikt.
Camera is dan ook weer net wat anders dan de software die er achter zit.
De hele setup bepaald het resultaat.

Hier is zo’n camera gebruikt.
Sequence with Ladybug.
https://www.mapillary.com/app/user/wsp_sweden?pKey=IY2kbKgv-HH1XHVX2DrqBA&lat=57.71998640000004&lng=12.935609549999981&z=17&focus=photo

https://www.mapillary.com/partners/wspsweden

Het viel mij tegen.
Criteria lezen onderbordjes

Verwondert mij niet. Kleine sensor & lens, weinig licht opvang. Dus heb je veel zonlicht nodig, of langere sluitertijd (dan krijg je weer bewegingsonscherpte), of hoge iso waarden (krijg je weer ruis).

Bij mij werkte het tot voor een week of wat geleden ook nog goed maar de laatste tijd als ik duizenden tegelijk upload dan worden de foto’s wel geupload maar krijg ik die laatste vraag waar ik y(es) moet intikken niet meer. Wel een goeie tip om via legacy proberen te bevestigen dat het OK is maar ook die optie werkt bij mij al tijden niet meer. Hij blijft dan hangen (en draaien) en zegt alleen maar “We are checking your current uploads on the mapillary server” zonder dat ie ooit klaar is met checken. Het lijkt ook niet uit te maken met welke browser ik dan werk. Geen idee waar het aan ligt.

Overigens is het vandaag wel weer gelukt een groot aantal foto’s te uploaden maar heb het niet aangedurdt meer dan 2000 tegelijk te doen. Advies van Kartrin van Mapillary is om niet meer dan 1000 tegelijk te doen maar dat vind ik wel erg weinig.

Ze hebben rare prioriteiten bij mly. Eerst de smartphone UI om zeep helpen. Dan bolcamera’s en dan actioncamera’s. Ik probeer ook op verschillende systemen manueel up te loaden. Er is geen lijn in te trekken wat beter gaat. Dat het traag is, is geen probleem. Wel vervelend wordt het als het geheugen van Chrome vol geraakt. Gelukkig heb ik tijd. Maar grote sequenties met goede photo’s zullen dus niet voor deze zomer zijn. Zo krijg ik een slechte naam.

Ik gebruik altijd ‘upload.py’ en 1000den foto’s uploaden gaat altijd zonder problemen op de maximale snelheid van m’n verbinding. Meestal upload ik 3000 tot 6000 per keer.
Als je upload.py gebruikt moet je wel eerst zelf de mapillary exif tags toevoegen met ‘add_mapillary_tag_from_exif.py’

Hi PeeWee32, ik (micmin1972 op mapillary) heb een magere internetverbinding met een upload snelheid van 2 a 3 Mbps en eigenlijk gaat het uploaden met python best foutloos. Wel heb ik het aantal parallele upload-threads als environmental variable op 1 gezet omdat het anders vastliep bij mijn beperkte upload capaciteit. Standaard staat die op 4 threads dus probeer die eens te halveren.

Heren , dank voor het meedenken. Ik heb van Katrin (Mapillary) wat tips gekregen en dat lijkt goed te werken.

Advies was om met

python upload_with_preprocessing.py --remove_duplicates --cutoff_time 150 --duplicate_distance 5 --interpolate_directions --auto_done /path/to/files/right/

te werken.

Op deze site staat hier meer over vermeld.
Als ik het goed begrijp kun je dan al je foto’s met geo coordinaten uploaden en worden alle duplicaten verwijderd en de richting vastgesteld obv de volgorde van de foto’s. Duplicaten worden dan gezien als foto’s die (in dit geval) minder dan 5m uit elkaar liggen. De cutoff_time wordt gebruikt om losse sequences te maken als de tijd tussen fotos meer dan 150 seconden is (in dit geval). Omdat ik mijn fotos middels een gpx track en het programma fotogeotag van benodigde exif tags voorzie hoef ik de --interpolate direction niet te gebruiken. Die heb ik dan ook weggelaten. De auto_done zorgt er voor dat je op het eind geen vraag meer krijgt waar je y of n op moet antwoorden. Het wordt dan dus een automatisch y.

Ik werk met Windows10 en heb nu mijn batch file aangepast en dat ziet er als volgt uit:


@echo off
cd /d %~dp0

echo type de directory met de te uploaden bestanden, bijvoorbeeld: E:\DCIM\100_VIRB\ 
set /p input=

C:\Python27\Scripts\pip install exifread

set MAPILLARY_PERMISSION_HASH=xxxxxx
set MAPILLARY_SIGNATURE_HASH=xxxxxx
set MAPILLARY_USERNAME=peewee32
set MAPILLARY_PASSWORD=xxxxxxx
set MAPILLARY_EMAIL=xxxxxxxx

C:\Python27\python upload_with_preprocessing.py --remove_duplicates --cutoff_time 150 --duplicate_distance 5  --auto_done  %input%

pause

In de code van Katrin stond ook nog “/path/to/files/right/”. Dat levert in mijn batch file problemen op en heb ik nu weggelaten. Geen idee wat het doet en of het erg is. Ik vermoed dat het niet erg is want het script lijkt goed te werken ook met duizenden foto’s tegelijk.

Als ik met mijn roestige ict kennis kijk, gebruik je die “/path/to/files/right/” wel :slight_smile: Dat is volgens mij gewoon het pad naar de bestanden, wat bij jou %input% is.

Oh … heel goed. Bedankt. Weer wat geleerd. Dan hoef ik me in ieder geval geen zorgen te maken dat er daar wat fout gaat.

Ik zag op de mapilllary github dit script. Ik heb het idee dat ik dat kan gebruiken ipv de fotogeotag waarmee ik nu locatie en richting aan de EXIF van de foto’s toe voeg. Als dat zo is kan ik misschien wel met 1 opdracht alles uitvoeren. (geocoderen en uploaden) . Heeft iemand hier ervaring mee?

Bedankt voor je scripts Peewee, fotogeotaggen en uploaden gaat nu helemaal automatisch (mits je de camera gelijkzet met de GPS tijd). Fotogeotaggen is nu gedaan met de command-line versie van exiftool, de kijkrichting met het interpolate_direction python script van Mapillary.


exiftool -P -overwrite_original -geotag track.gpx -geosync=0 folder
python interpolate_direction.py folder 0

De omgevingsvariabelen als set MAPILLARY_PERMISSION_HASH etc hoef je maar eenmalig in te stellen (kan ook handmatig in je windows system instellingen) en kan je ook uit de batch file weglaten, het commando pip install exifread hoeft ook maar één keer. Bij je upload heb je --duplicate_distance 5 staan, ik vraag me af of dat niet teveel meters zijn. Ik fiets soms een weg heen en dan weer terug. De foto’s liggen dan minder dan 1 meter van elkaar, maar de kijkrichting is anders.

Graag gedaan. Jij ook bedankt voor je feedback. Ook ik heb de boel nu zo goed als volledig geautomatiseerd. Die script zorgen (afhankelijk van welke camera ik gebruik) voor aanmaken mappen en submapen op mijn PC, kopieën vanaf SD kaart (cardreader) naar PC , hernoemen foto’s , verplaatsen van submap naar hoofdmap, geolocatie toevoegen en kijkrichting toevoegen.

Omdat ik vaak fiets met 3 camera’s (1 kijkt vooruit, 1 achteruit en een 360 graden camera) heb ik nu per camera een apart script voor de prepocessing. Het script moet het volgende regelen:
1 aanmaken map en submap op mijn PC waar de foto’s komen vanaf SD kaart heen gekopieerd moeten worden
2 kopieren van SD naar deze submap
3 Namen van foto’s aanpassen:
Mijn Xioami Yi’s geeft alle foto’s een oplopend nummer met een max van 1000 nummers. Als ik daar overheen ga maakt ie weer een nieuw mapje aan en begint de naamgeving weer opnieuw. Als je 5 mapjes hebt (bv 5000 foto’s gemaakt) dan heb je 5 fotos met nummer 1 in de naam. Das niet handig want ik wilde eigenlijk alle foto’s van een dag in 1 map. Ik heb het opgelost door met de commandline versie van Bulk Rename Utility de namen te laten prefixen met de naam van de map waar ze in staan.
4 Verplaatsen fotos naar 1 map hoger zodat ze per dag /camera allemaal in 1 map komen
5 Geotaggen van de foto’s (Doe ik ook met exiftool commandline)
6 Toevoegen van de kijkrichting (Doe ik ook met dat python script)

Als ik het script start hoef ik alleen maar het aantal seconden verschil tussen GPX en de camera in te geven en dan gaat de rest van zelf. Nadat het script gedraaid heeft kijk ik met JOSM of alles er goed uitziet en verwijder ik evt. nog foto’s die niet bedoeld zijn om te uploaden. Daarna draai ik dat upload script. Dat gaat meestal in 1x goed maar soms blijft ie hangen (er gebeurt dan niets meer in mijn commandline venster). Dan sluit ik dat venster en start het upload script opnieuw. Die gaat dan verder waar ie gebleven is.

Ik weet niet precies hoe dat werkt maar ik ging er van uit dat er alleen foto’s verwijderd worden als er tussen 2 opeenvolgende foto’s minder dan 5 meter zit. Dus als je een half uur later weer op een plek komt waar je al geweest bent houd ie daar geen rekening. Of dat zo is zal ik wellicht snel weten want ik upload nu zo’n geval. Kijken wat ie doet :slight_smile:

Het gaat idd om opeenvolgende foto’s, default is 0m dus als je stilstaat gooit die de foto’s weg, althans, ze worden wel bewaard in een apart mapje zodat je ze later alsnog kan uploaden. Bv als het om een panorama foto gaat?
De optie --cutoff_distance (default=600,maximum gps distance in meters within a sequence) is misschien ook interessant ipv --cutoff_time (default=60, time interval in seconds within a sequence). Als je pauzeert en de foto’s na de pauze in dezelfde sequentie wilt houden.

Ik ben ook blij met deze methode van uploaden. Nu de foto’s van ongeveer de zelfde locatie worden verwijderd wordt het ook wat makkelijker een timelapse filmpje te maken.
Ik had de cutoff time op 650 seconden staan maar ik bleek toch iets langer dan 10 minuten te hebben gepauzeerd dus nu zijn het 2 sequences geworden. Ik ga nog eens verder experimenteren.

Voor de borden liefhebbers heeft mapillary (ik weet niet hoe lang dit al was, maar het viel me ineens op) een mogelijkheid om de verkeersborden te laten oplichten in JOSM

Je kunt deze layer ook uitzetten om de foto te controleren op juistheid.
Deze optie zit iets verborgen. In het menu “windows” zit de mapillary functie “image info”

Hier kwam ik nog een handigheidje tegen. De functie “Add Mapillary tag” om een tag toe te voegen aan het geselecteerde object.

Onderstaand een voorbeeld:
Een foto van een tankstation die goed in beeld komt koppelen aan de node.
De node krijg (als deze geselecteerd is) een extra tag “mapillary=hN9_Y7KGgY3asEn1WyxSVw”
Als je deze tag dan selecteerd, kun je middels de rechtermuis knop rechtstreeks naar je browser om de foto te zien.
(Natuurlijk kunnen kaartmakers ook van deze functie gebruik maken om een koppeling naar een foto te verkrijgen via Mapillary beelden.)

Ik stuit hier wel een een bugje van mapillary of JOSM (wie de oorzaak weet mag het zeggen)
Namelijk de toevoeging wordt niet gezien als wijziging en het upload venster geeft aan dat er geen wijzigingen te uploaden zijn.
Daarom heb ik voor het gemak een note toegevoegd om het toch te kunnen uploaden.

Ik heb een YouTube filmpje gemaakt om het nog visueler te maken.

Weet iemand een gebied met veel Mapillary foto’s maar nog veel te weinig osm data, met name wegen? Nederland is al zo goed gevuld, zoek een plek om lekker weggetjes te tekenen. Ik kwam laatst in Kenia uit, maar misschien weet iemand een specifiek gebied om aan te werken.