Corpus revisited

Vanavond nog een keertje bij Corpus langsgegaan om wat foto’s te maken met de electrozwever. imgp6001

Het was al wat later dus de foto’s zijn wel wat donker. Hier is ook een versie die uit Hugin komt… (mmm plaatje komt er nog aan, file is 67 mb en de server stopt met vriendelijk lachen boven de 16mb…)

Hier nog wel een impressiefoto:

imgp5906

meer foto’s, ander vliegtuig

Na de eerste poging met de FunJet heb ik nog eens even gekeken naar de resultaten. De meeste foto’s zijn een beetje bewogen. Dit kan op twee manieren verbeterd worden: snellere foto’s maken of langzamer vliegen. De eerste foto’s zijn met ISO 50 gemaakt, dat is in ieder geval opgeschroefd naar ISO 200, dus dat moet vast verbetering gaan opleveren. Daarnaast ben ik eens met mijn electro zwevertje gaan vliegen.

_dsc8804Hier is weer op een creatieve manier de camera onder gemonteerd en zijn er een paar vluchten gemaakt.

_dsc8774

Bij de eerste serie bleek de camera nog op portret stand te staan, dus die zijn maar weggegooid. De tweede serie was een stuk beter en hierbij is een mooi stukje Katwijks duin te zien.

imgp5933

imgp5941

imgp5967

Na de foto’s, toch maar weer even spelen met de FunJet :)

_dsc8819

Voorlopige conclusie is dat de camera goed ingesteld kan worden voor dit soort foto’s (ISO niet te laag, verder automagisch). Daarnaast is een groter en beter zwevend vliegtuig een stuk beter als cameraplatform dan een FunJet. Op naar de volgende stap….

Net een beetje aan het spelen geweest met Hugin, dat is eigenlijk best leuk spul :) Hier het eerste testje met een stukje duin:

tile1

test1

OpenStreetMap van postgis naar shape met filters

Kort geleden kreeg ik van openstreetmap gebruiker Rejo het verzoek om data uit OpenStreetMap te extraheren om een speciale kaart te kunnen maken van parken/groen in onze vier grote steden.

Wat heb je nodig:

Toegang tot een database in postgis formaat, meestal het resultaat van de tool osm2pgsql.

Alle parken in de Benelux naar shape:

pgsql2shp -f parken -h <host> -u <username> <database> “select osm_id, leisure, “name”, transform(way,28992) as way from planet_osm_polygon where leisure=’park’”

Er zijn een aantal zaken in bovenstaand commando belangrijk:

1- Omdat de Benelux openstreetmap database in het google coordinaat-systeem is transformeer ik de parken naar het Nederlandse Rijksdriehoekstelsel. Uiteraard kan hier elke andere projectie worden gebruikt.

2- Ik heb niet alle database velden nodig. Met de subset osm_id, leisure en “name” beperk ik de resultaatset dus tot deze 3 velden.

3- -f parken zorgt ervoor dat de functie automatisch voor mij parken.shp, parken.shx, parken.dbf en parken.prj aanmaakt.

Al het water en de waterwegen in de Benelux naar shape:

Omdat alleen de parken de kaart zo onleesbaar maken, halen we op dezelfde manier het water en de waterwegen uit de openstreetmap database;

pgsql2shp -f water -h<host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where “natural”=’water’”
pgsql2shp -f waterwegen -h <host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where not waterway is null”

Ook bij deze commando’s perk ik de geretourneerde velden in. Let even op het veld natural; deze kolomnaam is eigenlijk een reserved word. Daarom moet die gequote worden.

De contouren ophalen van de vier grote steden:

pgsql2shp -f amsterdam -h <host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where name=’Amsterdam’”

pgsql2shp -f rotterdam -h <host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where name=’Rotterdam’”

pgsql2shp -f denhaag -h <host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where name=’Den Haag’”

pgsql2shp -f utrecht -h <host> -u <user> <database> “select name, transform(way,28992) as way_rd from planet_osm_polygon where name=’Amsterdam’”

Let’s do Magic!

Nadat ik alle gemaakte shapefiles heb gedownload ga ik met qGIS aan de slag. In mijn geval qGIS 1.1.0. Ik laad allereerst alle shapefiles in qGIS. Wat je dan krijgt is een door qGIS gekozen kleurenschema en de lagen in willekeurige volgorde [1]. Dat is meestal niet wat ik wil. Ik ga daarom schuiven met de lagen en kleuren tot de weergave naar mijn zin is. [2] toont het resultaat na het bewerken voor het gebied rond Rotterdam.

Clip

Vervolgens knip ik alle parken en het water op de gemeentegrens van Rotterdam met een tool in qGIS: Tools -> Geoprocessing tools -> clip. Ik had dit ook al in mijn extractie script kunnen doen maar dit is een actie die client-side veel sneller gaat. Het resultaat is [3]

Export als SVG!

Uiteindelijk eindig ik met een belangrijke “verborgen” feature van qGIS; exporteren als svg! Hiervoor open je een print composer (CTRL+P), stel je op het werkblad in de printcomposer een mapview in met de knop “Add New Map” (even slepen en goed zetten) en vervolgens druk je op de vierde knop in de print composer: Export as SVG.

Het resultaat vind je hier en kun je probleemloos in inkscape bewerken!

psql2shp1

1

[2]

2

3

3

Shapes omzetten naar gml en kml

Op dit moment wordt er door de OpenStreetMap gemeenschap in Nederland druk gewerkt aan het vergaren van woonplaatsbesluiten.  Tussen de afwijzingen zit gelukkig ook af en toe een gemeente die netjes wat geodata aanlevert! En dan?

Dan zijn feitelijk 2 stappen nodig:

1) De geodata moet worden getransformeerd naar het wgs84 coördinaten-systeem

2) De getransformeerde geodata dient te worden geconverteerd naar een bruikbaar formaat zodat de OpenStreetMap gemeenschap hier uiteindelijk OpenStreetMap data van kan maken.

Voor dergelijk werk is ogr2ogr uitermate geschikt. ogr2ogr is een commandline tool die onderdeel is van de  “Geospatial Data Abstraction Library” http://www.gdal.org/ in diverse linux distributies is deze toolset beschikbaar in de repositories, anders is deze prima van source te compileren.

Voor windows is het geheel verpakt in de fwtools:  http://home.gdal.org/fwtools/FWTools230.exe

Als je ogr2ogr dan eenmaal beschikbaar hebt open je een command line en voer je de volgende script regels uit:

ogr2ogr -overwrite -f “ESRI Shapefile” -s_srs “+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.999908 +x_0=155000 +y_0=463000 +ellps=bessel +towgs84=565.237,50.0087,465.658,-0.406857,0.350733,-1.87035,4.0812 +units=m +no_defs” -t_srs “EPSG:4326″ doelbestand.shp bronbestand.shp

Hiermee wordt de shapefile bronbestand getransformeerd van het rijksdriehoekstelsel naar wgs84 wat resulteert in doelbestand

ogr2ogr -overwrite -f “KML” -a_srs “EPSG:4326″ nieuw.kml doelbestand.shp

Maakt een kml van het doelbestand

ogr2ogr -overwrite -f “GML” -a_srs “EPSG:4326″ nieuw.gml doelbestand.shp

Maakt een gml van het doelbestand

En that’s it! Geen rocketscience. Enkel zorgen dat je de juiste tools tot je beschikking hebt ;-)

Batterijen leegvliegen

Omdat er morgen toch wat leuks is te beleven is, en omdat het vandaag goed weer was. Heb ik de GPS ook eens in de tuin geprobeerd. Het geeft rust, immers gas open en hoogte limiet aan is een zwevende Mikrokopter die in de buurt blijft. En je kunt een beetje rond gaan. Dat levert natuurlijk ook weer wat foto’s die we jullie weer niet gaan onthouden.

Morgen gaan we een mooi veldje in Limburg opzoeken.

Deze hebben we eerder gezien

Ja, we kunnen nu ook gecontroleerd draaien

Beetje spelen

...en de andere kant op

Zon -mooie vlieg- dag

Na toch wat weekjes spenderen aan debuggen…

saw-angle

Kon ik eindelijk weer eens lekker vliegen. Wat leek het proleem nu te zijn? Het lijkt vooral de ACC calibratie te zijn geweest. Wat is dat precies?

De quadcopter kan zich op basis van een aantal sensoren oplijnen. De acceleratie sensor kan de horizontale snelheid en vertikale snelheid meten, en daaruit kun je een hoek berekenen. Deze sensoren moeten weten wat hun nul-punt is. Het nulpunt moet waterpas zijn, immers daarmee wordt de balans van de quadcopter gezet.

Daarnaast hebben we voor de rotatie van de quadkopter twee gyroscopen. Die worden aan de hand van de acceleratie sensoren gekalibreerd, maar zoals we al in de afgelopen weken hebben laten zien, de kalibratie fluctueert nogal. Naar alle waarschijnlijkheid komt dit door de warmte.

De afgelopen dagen heb ik alle kalibratie met Acceleratie, Gyroscopen en Kompas sensoren opnieuw gedaan. Tevens zit er nu een zekering tussen ledbar en video transmitter. Met aanzekerheidgrenzende waarschijnlijkheid heeft de ledbar wat kortsluiting veroorzaakt. De ledbar aansluitingen heb ik daarom ook maar direct afgeplakt.

De 12V meuk is nu beveiligd met 160mA T

De 12V meuk is nu beveiligd met 160mA T

Vandaag ben ik weer eens gaan vliegen. En het vliegen ging prachtig :) eerst zonder camera waar je toch merkt dat je met een jong springend meisjes te maken hebt. Maar zodra er een camera onder gaat dat meisje veranderd in een vrouw van eind 30 ;)

…even wat tuin foto’s scoren.

Daarom moet je ook niet in de lente vliegen, alles is groen!

Daarom moet je ook niet in de lente vliegen, alles is groen!