{"id":1446,"date":"2007-07-12T10:00:00","date_gmt":"2007-07-12T09:00:00","guid":{"rendered":"http:\/\/johnjohnston.info\/blog\/?e=1446"},"modified":"2024-03-24T17:31:48","modified_gmt":"2024-03-24T17:31:48","slug":"flickr-maps-mashing-and-some-gps-questions","status":"publish","type":"post","link":"https:\/\/johnjohnston.info\/blog\/flickr-maps-mashing-and-some-gps-questions\/","title":{"rendered":"Flickr maps mashing and some GPS questions"},"content":{"rendered":"<p>The questions are at the end feel free to skip down there if you know anything about gps.<\/p>\n<p>I spent quite a while over a year ago messing with the <a href=\"http:\/\/johnjohnston.homedns.org\/maps1\/showmap.php?data=sandaig\" title=\"Sandaig Google Maps Experiment\">google maps api<\/a>. eventually I made <a href=\"http:\/\/johnjohnston.homedns.org\/maps1\/\" title=\"Sandaig Google Maps Experiment\">an interface for creating maps, uploading photos and placing them on the map<\/a>. This gave me a lot of fun, but I found it too time consuming for children to use. <br  \/>The earlier this year  <a href=\"http:\/\/www.sandaigprimary.co.uk\/pivot\/pivot\/entry.php?id=1412&#038;w=john_johnston\">Google My Maps came out<\/a> which was a lot neater than my effort, and I&#8217;ve used it a few times, mostly pasting in the links flickr provides to add photos.<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/troutcolor\/769220813\/\" title=\"Photo Sharing\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/farm2.static.flickr.com\/1431\/769220813_1b8a3e61a7_t.jpg\" width=\"100\" height=\"75\" alt=\"Cort-ma-Law from Lecket hill\" style=\"float:right;margin:4px\"\/><\/a>    This week I stared <a href=\"http:\/\/maps.google.co.uk\/maps\/ms?ie=UTF8&#038;hl=en&#038;om=1&#038;msa=0&#038;msid=101224933800706193147.000434eb4b561208b4917&#038;ll=55.997402,-4.190071&#038;spn=0.048095,0.107803&#038;z=13\" title=\"google map example\">another one<\/a> with a few photos from a walk.<br  \/>I was a bit frustrated about placing the photos on the map as I found it hard to figure out where place where in the rather featureless Campsies.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.sandaigprimary.co.uk\/pivot\/images\/2007-07-12_flickr_map_sorry.gif\" alt=\"Flickr map Sorry\" height=\"97\" width=\"174\" style=\"float:left;margin:4px\"><\/p>\n<p>I switched to using <a href=\"http:\/\/www.flickr.com\/photos\/troutcolor\/map\/\" title=\"Flickr: Explore troutcolor's geotagged photos on a Map\">flickr own maps<\/a> but found them it a bit slow (that might be my <a href=\"http:\/\/www.flickr.com\/photos\/troutcolor\/483098150\/\" title=\"I need a new mac on Flickr - Photo Sharing!\">aging mac<\/a>).<br  \/>I found it even more difficult to get the photos placed with any accuracy on flickr maps, although the interface for adding and looking at the photos is very slick, especially when you grab a bunch of pictures and throw them on a single spot.<br  \/>Perhaps I just do not go far enough so need to much detail on a map to make my walk look like a walk rather than a spot.<\/p>\n<p>All this made me think about my <a href=\"http:\/\/johnjohnston.homedns.org\/maps1\" title=\"Sandaig Google Maps Experiment\">previous experiments<\/a>, especially as there was an article in macuser about using the flickr and google maps apis combined. I had just finished using <a href=\"http:\/\/phpflickr.com\/\" title=\"phpFlickr\">phpflickr<\/a> to make a <a href=\"http:\/\/www.taichicaledonia.com\/images\/gallery\/calyflickr07\/\" title=\"Tai Chi Caledonia 2007\">community gallery<\/a> so though this might be quite quick.<\/p>\n<p>Unfortunately the macuser article relies on a flickr api <a href=\"http:\/\/www.flickr.com\/services\/api\/flickr.photos.geo.getLocation.html\">flickr.photos.geo.getLocation<\/a> which depends on you having placed the photo on the flickr map (I was beginning to go round in circles).<\/p>\n<p>Then I remembered <a href=\"http:\/\/blogs.rave.ac.uk\/blojsom\/blog\/aburt\/\" title=\"Adam's blog\">Adam Burt<\/a>&#8216;s Applescript for getting geo tags from Google Earth ready for pasting into flickr. Adam does <a href=\"http:\/\/confluence.rave.ac.uk\/confluence\/display\/SCIRC\/Geo-Blogging\" title=\"Geo-Blogging - Special Circumstances - Confluence - The Ravensbourne Wiki\">amazing things with blogs, google Earth\/maps and geoblogging<\/a>.<br  \/>The appleScript copies to the clipboard geo tags of the location showing on google earth at that time.<br  \/>It is much easier to figure out where you are on google earth, it has a smoother gui than google maps and a better resolution (of where I was at least). so I <a href=\"http:\/\/www.flickr.com\/photos\/troutcolor\/tags\/geotagged\/\">geotagged  a bunch of photos<\/a>, grabbed a new google maps API key and got busy.<\/p>\n<p><a href=\"http:\/\/www.johnjohnston.name\/where\/\" title=\"John's Flickr Map Mashup'\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.sandaigprimary.co.uk\/pivot\/images\/2007-07-12_flickr_googlemap_mashup.jpg\" alt=\"Flickr googlemap mashup\" height=\"180\" width=\"240\"  style=\"float:right;margin:4px\" ><\/a><\/p>\n<p>Of course at that time I didn&#8217;t know about <a href=\"http:\/\/www.flickr.com\/services\/api\/flickr.photos.geo.getLocation.html\">flickr.photos.geo.getLocation<\/a> depending on flickr maps.And I didn&#8217;t know a  tag <a href=\"http:\/\/www.flickr.com\/photos\/troutcolor\/tags\/geo%3Alon%3D4704382114809\/\">geo:lon=-4.704382114809<\/a> would be returned from the API as  machine_tags=&#8221;geo:lon=4704382114809 geo:lat=56258859999999&#8243; ie <em>without<\/em> the  <em><strong>minus sign<\/strong><\/em> or <em><strong>point<\/strong><\/em> so I spent a fair bit of time staring at a blank map, as the google maps API didn&#8217;t understand what I was sending to it. Anyway to cut a very long afternoon short, I delved deeper than I had been before into the data returned from <a href=\"http:\/\/www.flickr.com\/services\/api\/flickr.photos.getInfo.html\">flickr.photos.getInfo<\/a> and finally clunked together a couple of files, the first uses phpflickr to grab the info from flickr and store it in a file, the second pulls that info using the google maps api and create a map.<br  \/>I did try pulling the information and creating the map all at once, but that took too long. The data from flickr obviously does not need to be updated very often so that job was hived off, speeding up the maps creation. The unfinished product is here: <a href=\"http:\/\/www.johnjohnston.name\/where\/\">John&#8217;s Flickr Map Mashup<\/a>.<\/p>\n<p>This is just scratching the surface of what could be done, it would be better maybe to create different maps for different days or for particular tags. if all of my tagged photos go on the same map it might eventually be too crowded and need some pagination.<\/p>\n<p><strong>Help wanted<\/strong>: I&#8217;d like to know a bit more about geo tagging and perhaps GPS:<\/p>\n<ol>\n<li>Would it be possible to get data from a GPS device and add it to the EXIF data of a photo before uploading it?<\/li>\n<li>Does Flickr undersatand embeded gps data?<\/li>\n<li>Is there a cheap enough GPS device that would work with a mac?<\/li>\n<\/ol>\n<p>I am thinking of a work flow that includes the tagging of photos before uploading, maybe in iphoto with AppleScript or a <a href=\"http:\/\/www.supercard.us\">SuperCard<\/a> project, I think I&#8217;ve done some EXIF data extracting so imagine that adding can&#8217;t be that much harder.<\/p>\n<p>Any ideas that do not involve a lot of expense gratefully received.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The questions are at the end feel free to skip down there if you know anything about gps. I spent quite a while over a year ago messing with the google maps api. eventually I made an interface for creating maps, uploading photos and placing them on the map. This gave me a lot of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"mf2_syndication":[],"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"webmentions_disabled_pings":false,"webmentions_disabled":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[6],"tags":[91,88,382,62,19,200,197,154,85],"post_format":[],"class_list":{"0":"post-1446","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-wwwd","7":"tag-api","8":"tag-flickr","9":"tag-geoblogging","10":"tag-google","11":"tag-googlemaps","12":"tag-gps","13":"tag-maps","14":"tag-mashup","15":"tag-php","16":"kind-article","18":"h-entry","19":"hentry"},"better_featured_image":null,"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p57zFQ-nk","jetpack_likes_enabled":false,"jetpack_sharing_enabled":true,"kind":false,"_links":{"self":[{"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/posts\/1446","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/comments?post=1446"}],"version-history":[{"count":2,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/posts\/1446\/revisions"}],"predecessor-version":[{"id":19035,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/posts\/1446\/revisions\/19035"}],"wp:attachment":[{"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/media?parent=1446"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/categories?post=1446"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/tags?post=1446"},{"taxonomy":"post_format","embeddable":true,"href":"https:\/\/johnjohnston.info\/blog\/wp-json\/wp\/v2\/post_format?post=1446"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}