Hack de Overheid!

Categorieloos

Ingezonden: Waar blijft het zonnetje?

Bij Hack de Overheid krijgen we nogal wat post. In plaats van het op te slaan kan het natuurlijk ook gedeeld worden. >Daarom, heb je een idee voor een gave app, of wil je dat bepaalde data vrij komt, mail het ons. We zitten het dan hier neer en brengen je in contact met mensen die hier ook wat mee kunnen. Dus: waar blijft dat zonnetje?

door: Joost Overdijkink (contactgegevens zijn bij ons op te vragen)

AppsforAmsterdam
In maart was ik bij de opening van het Apps voor Amsterdam evenement. Bij het navolgende event kon ik niet aanwezig zijn, helaas. Ik loop namelijk al sinds vorig jaar met een idee rond voor een applicatie waar ikzelf ‘ontzettende behoefte’ aan heb (dat is natuurlijk relatief, want het gaat om een luxe gadget, maar goed). Zelf ben ik geen computerexpert, dus ik zoek een voor meer enthousiaste bouwers die ook wat in mijn idee zien en er een App voor willen bouwen. Ik wil jou vragen of jij mijn idee wilt voorleggen aan de deelnemers aan de wedstrijd voor Apps voor Amsterdam om er een App voor te bouwen. Ik zal mijn idee hieronder uiteenzetten.

Terras
Iedere zomer is het weer zoeken naar terrassen in de stad die op het tijdstip dat ik er wil zijn ook nog zon hebben. Dat is in Amsterdam geen sinecure, aangezien veel cafe’s geen terras hebben en als ze het hebben vaak in 1 van de vele straten liggen die door de bebouwing en de richting van de straat geen zon hebben in de namiddag en/of avond. Zo overkomt het mij met regelmaat dat ik met iemand afspreek om gezellig te borrel of eten op een terras en dat we dan een specifiek cafe bepalen ‘waar we de vorige keer ook zo lekker in de zon zaten’. En dan kom je daar en wat blijkt: GEEN ZON! Want, de vorige keer was je aan t lunchen en stond de zon ergens anders. Niet aan gedacht, natuurlijk. Maar dan ben je eenmaal in die buurt en waar vindt je dan een terras dat zo ligt dat er wel zon op schijnt?

Wiskunde
Om die vraag te beantwoorden en de volgende keer meteen het goede terras te kiezen zou ik graag op mijn iphone een app hebben waarop ik direct kan zien waar op het afgesproken tijdstip een terras zon heeft. Of, andersom: op welk tijdstip ‘dat leuke terras waar ik zo graag zit’ in de zon ligt. Of, welke terrassen binnen een straal van 1 kilometer om mijn huis, van 17:00 tot 19:00 uur zon hebben. Daar had ik zelf de volgende ideeën bij, maar er zijn verschillende interfaces te bedenken.

 
Uitwerking 1:
De eerste mogelijkheid die ik bedacht is dat je de giskaarten van de gemeente Amsterdam (DRO) gebruikt, zodat je precies weet waar horeca zit. Alleen moet je dan nog de terrasvergunningdata daarbij combineren. Als je dat vervolgens combineert met de stand van de zon en de hoogte van gebouwen, dan kun je in principe van iedere plek in Amsterdam een kaart zon/schaduwkaart maken op ieder tijdstip van de dag, op iedere dag van het jaar.

Om de zonnestand te berekenen zijn meerdere implementaties van algoritmes te vinden op internet, maar dit is er een in C: http://rredc.nrel.gov/solar/codesandalgorithms/solpos/. En via deze link kan je bovenstaand algoritme uitproberen via een webpagina: http://www.nrel.gov/midc/solpos/solpos.html.

De hoogte van gebouwen en het Nederlandse landschap in het algemeen kan je vinden op de site van het actueel hoogte bestand: www.ahn.nl. Enige probleem is dat deze organisatie geld vraagt voor gebruik van deze data. Dat maakt mijn idee van een kaart lastig. Tenzij de hoogte van gebouwen tot in detail ook bij de gemeente bekend is (kadaster) EN gecombineerd kan worden met de al bestaande gisdata. Mijn contactpersoon bij DRO wist daar echter niet van.

Dus, een tweede inrichting van de app kan zijn: Mensen vullen de data zelf in.
Uitwerking 2:
Simpel gezegd: Je hebt de app op je iphone. Op het moment dat je een terras vindt waar zon is, hoef je alleen maar op het icoon van de app te drukken en de app registreert exacte locatie, tijd en datum. De app vraagt dan automatisch aan jou bij welke horea gelegendheid je dan bent. Dat hoef je niet zelf in te voeren, maar hij geeft direct een keuze uit de mogelijkheden die hij in de database vindt. Die database bestaat voor een deel al in googelmaps en is verder te combineren met data van de gemeente of bijvoorbeeld de database van IENS. Als de databae compeet is, dan is de kans dat de goede gelegenheid tevoorschijn komt zeer groot en hoef je alleen maar op een bevestiging te drukken. Hoe meer mensen dit doen, hoe completer de database. Als de app er net is, moet je m natuurlijk zelf al gaan vullen door als een gek een paar weken lang veel terrassen te bezoeken.

De zoekfunctie zou op verschillende manieren moeten werken: Bijvoorbeeld: je opent de app, typt een tijdstip is en je krijgt de kaart va Amsterdam voor je. Daarop staan alle meldingen van zon op die tijd aangegeven, vanaf een bepaalde schaalgrote dan ook  met de bandbreedte in de tijd. Op zekere schaal verschijnen  de horecanamen met links naar websites.  Tegelijk kan je dat koppelen aan de weersvoorspelling, met name wolkenvelden. Helaas bestaat er nog geen betrouwbare wolkenradar. Je zou natuurlijk ook op adres en buurt moeten kunnen zoeken.

Ik heb me wel afgevraagd of genoeg mensen de database vrijwillig gaan vullen. Ik weet het niet, maar ik denk eigenlijk dat t een leuke gadget is die mensen –zeker in het begin- graag gebruiken. Ze strijken met vrienden op een terras neer en zegen: ho, even de zon doorgeven en: hop iemand toetst op het icoon en de deed is done! Goeie gelegenheid om je iphone of smartphone weer te showen (dat doen mensen nog steeds graag) en je kunt tegelijkertijd op de kaart zien welk spoor jij al hebt getrokken door de stad met de vorige locaties die je hebt aangegeven. Bovendien wordt t ding aantrekkelijk als je hem koppelt aan websites van horeca en bijvoorbeeld IENS.

Weet jij het beter?
Enfin, dit is mijn idee. Ik hoop werkelijk dat er mensen zijn die het een interessante en leuke uitdaging vinden om hiermee te gaan stoeien en er iets bruikbaars van te maken. De zomer staat voor de deur, dus nu is het moment!

The following two tabs change content below.

Lex Slaghuis

Lex Slaghuis is een van de oprichters van Hack de Overheid en was CTO bij Open State. Hij houdt zich bezig data, API's, community en Apps. Speciale aandacht gaat uit naar Open Cultuur Data, Open Spending en politieke transparantie.

Laatste berichten van Lex Slaghuis (toon alles)


6 comments on “Ingezonden: Waar blijft het zonnetje?
  1. Beste Joost Overdijkink,

    Iets op de AppsForAmsterdam kickoff moet het zelfde zaadje in ons hoofd geplant hebben, want ik heb de afgelopen weken met precies het zelfde idee rondgelopen… Ondanks gebrek aan tijd, toch met jeukende vingers een weekendje op stuk gegooid.

    Geheel toevallig kwam ik hier net jouw idee tegen. Hoewel ik eigenlijk vind dat mijn ‘nightly build’ nog niet ver genoeg gevorderd is om wereldkundig te maken, kan ik nu niet anders dan hem in reactie op jouw post hierbij wereld kundig maken!

    http://3r13.nl/zonterras/

    Het is nu slechts nog een proof of concept.
    Jij draagt een aantal (gesloten) databronnen aan, waarmee het vraagstuk opgelost kan worden. Omdat deze databronnen nog niet (gratis) beschikbaar zijn, heb ik een andere oplossingsrichting gekozen.
    Ik maak voor mijn oplossing gebruik van google streetview. Voor de opgevraagde locatie vraag ik de dichtstbijzijnde streetviewfoto op, en wel zo dat die precies richting de zon georiënteerd is. Daar laat ik een (verschikkelijk quick ’n dirty) image analyse op los, om de skyline te bepalen. Als de zon ‘achter’ de skyline staat, zit je in de schaduw, als die ‘boven’ de skyline staat, zit je in de zon.

    Het nadeel van deze oplossing is dat de dichtsbijzijnde streetview foto natuurlijk niet ‘precies’ vanaf het terras genomen is. Het voordeel van deze oplossing is dat deze overal ter wereld (mits streetview) werkt!!

    Wat moet er nog gebeuren:
    – bij google alle “cafe’s” in de omgeving opvragen (meeste cafe’s hebben een terras, close enough).
    – Voor deze cafe’s de zonpositie (over bijv. 15 minuten) bepalen via streetviewmethode
    – Zon/schaduw icoontjes op de kaart zetten voor de cafe’s
    – Verbetering van de image analyse kan ook echt geen kwaad

    Ik hoor graag ieders commentaar!

  2. Wat nou zo grappig is, is dat Joost mij mailde. Ik enkel de subject line had gezien. En vervolgens tijdens een etentje een vriend over dit idee hoorde. Die kon zijn ogen al niet geloven toen ik de mail van Joost liet zien… Dit was namelijk precies wat hij ook in gedachten had!

    Belangrijke App dus.

  3. Zoals met alle goede ideeen: die zijn natuurlijk al 100x bedacht maar simpelweg nooit (goed) uitgevoerd! Ik (als non-techneut) loop ook al lange tijd rond met dit idee, in variant 2: mensen geven zelf de data in. Heb vorig jaar wat lopen klooien en een leuke domeinnaam aangevraagd (www.terrasmetzon.nl, hij is te koop) maar verder geen tijd/zin gehad om door te gaan met de uitvoering. Echt leuk om hier over te lezen, nu ben ik helemaal overtuigd dat deze applicatie er gaat komen. Lijkt me leuk om verder mee te denken/werken aan het concept samen met mensen die het daadwerkelijk kunnen bouwen.

  4. Joost Overdijkink op zei:

    Wat mooi om jullie reacties te lezen! En natuurlijk, dit moest gewoon al bij meer mensen door het hoofd spoken.

    Variant 2 is op dit moment duidelijk de grootste kanshebber, gezien het nog niet (gratis) beschikbaar zijn van GIS en hoogte data. Ik ben benieuwd of Arjen al verder is met zijn app. Het is wel een goed begin om het zo te doen. Om betrouwbaar te worden zal het wel handig zijn om nauwkeurige info over de skyline te hebben.

    Arjen, ik ben benieuwd: bereken je nu de hoogte van de gebouwen op de betreffende locatie en die leg je vervolgens over de actuele stand van de zon? En heb je daar ook dat algoritme dat ik boven heb gegeven gebruikt, of heb je een andere manier gevonden?

    En is het nu jouw bedoeling dat gebruikers de database zelf met foto’s gaan vullen, of wil je zelf de cafe’s langs gaan?

    Op dit moment lijkt het een beetje stil te staan rond dit onderwerp, of vergis ik mij? Ik ga in ieder geval zelf weer oppakken om meer data van de gemeente beschikbaar te krijgen.

    Succes allemaal!

  5. Arjen Breur op zei:

    @Joost:
    Om zon/schaduw te bepalen bereken ik niet de hoogte van de gebouwen. Dat zou wel mooi zijn, maar die data is er (nog) niet. En als die er wel is betwijfel ik of je een betrouwbaarder resultaat krijgt dan met mijn lelijke hack manier. Bovendien heeft het hoogtebestand geen informatie over bomen, en die zijn wel een heel belangrijke factor voor zon/schaduw op terrassen…

    Ik bepaal de skyline nu via een grafische truc:
    In het midden van de streetviewfoto (i.e. in de richting van de zon) kijk ik pixel voor pixel van boven naar beneden tot ik een duidelijke overgang (sterk contrast) tegenkom. Dat doe ik voor de breedte van de zon die ik op de foto wil tekenen (is nu overdreven groot, niet realistisch). Ik ga er vervolgens simelweg vanuit dat de eerste rand die ik tegenkom de skyline is. Alle pixels boven die overgang kleur ik transparant, allen pixels onder die overgang laat ik ongemoeid.

    Om het eindplaatje te maken teken ik een zon op de juiste plek op de originele foto (zonder te weten of daar een gebouw staat of niet), De foto waar ik ‘lucht’ pixels transparant heb gekleurd plak ik daar als voorgrondlaag overheen, zodat de getekende zon op de achtergrondlaag alleen zichtbaar blijft daar waar op de voorgrond pixels transparant gekleurd zijn.

    Het algoritme om die overgang te vinden is nu nog heel simpel, ik denk dat daar nog veel in te verbeteren is. Vaak werkt het goed, maar soms niet. Bijvoorbeeld bij een bewolkte (witte) lucht en gebouwen met een lichte gevelkleur. Of gebouwen van glas waar de blauwelucht in weerspiegeld.

    De meest dirty stap is vervolgens om in het eindplaatje de pixels waar de zon zou moeten staan te bekijken, en te bepalen of die pixels de kleur van de (getekende) zon hebben, of niet. Zo ja, dan kun je de zon zien vanuit het punt waar de foto is gemaakt, zo nee, dan is de zon achter de ‘skyline’. Deze methode slaat natuurlijk nergens op, maar werkt verbluffend goed!

    Om de positie van de zon te berekenen gebruik ik inderdaad het algoritme dat ook op de in de post vermelde website gebruikt wordt. Ik heb het zelfde algoritme van een andere bron geplukt, en van C naar php vertaald.

    Wat ik voor me zie is dat de applicatie op deze manier ‘redelijk’ werkt voor alle default streetviewlocaties (over heel de wereld). Voor terrassen die een naukeuriger resultaat willen moet dan een panoramafoto op de exacte locatie van het terras gemaakt worden. Omdat je dan toch handmatig een foto moet bewerken/toevoegen aan het systeem, is het heel weinig extra moeite om in die foto handmatig de skyline over te trekken (en de lucht transparant en gebouwen zwart te maken), zodat het grafische algoritme moeiteloos de skyline kan vinden.

    Omdat de panoramafotos wel uniform moeten zijn in formaat (en brandpuntafstand) denk ik niet dat je gebruikers zelf foto’s/skylines kunt laten invoeren. Ik kan me voorstellen dat de cafes die naukeurige info/vermelding in de app willen, hiervoor betalen (zodat de servers ook kunnen blijven draaien). Maar dat vergt wel een marketingaanpak, en die ligt achter mijn interessehorizon…

    Een mogelijke toevoeging, of andere benadering, is om gebruikers via de app al zittende op het terras te kunnen laten doorgeven of ze *op dat moment* in de [ZON] of in de [SCHADUW] zitten. Deze informatie kun je dan gebruiken om het systeem te tweaken…

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.