Incorporating Google Maps and Google Earth into your Remote Sensing Applications J. Freemantle OARS Technical Meeting, Dec 11, 2006.

Post on 26-Mar-2015

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

Incorporating Google Maps and Google Earth into your Remote Sensing Applications

J. FreemantleOARS Technical Meeting,Dec 11, 2006

Outline

Overview of Google EarthSimple examples using keyhole markup language (kml)Using the Google Maps/Earth APISome community examplesQuestions?

Google Earth

Client/Server ApplicationFree for basic versionWorks on Windows (2000/XP), Mac OS 10.3.9, Linux

Google Earth Overview

Satellite and Airborne Imagery 1-3 years oldSpatial resolution in countryside < 15 m. Major US cities less than 1-2 feet (20-40 cm).Parts of Manhattan (Fulton Co.) 10 cm!

York University

Newmarket

Low vs high res. data (Aurora)

Toronto

New York City (20 cm)

New York City (10 cm)

10 and 20 cm images compared

Primary Data (roads etc)

Boundary Errors

Why Google?

Its free!!!Generally up to dateLarge user communityDeveloper/programmer friendlyEasy to learnPlatform independentIts cool!

Assumptions/Caveats

Check the fine print of End User License (EUL) for your situation.Google Earth 4.0 (Beta), free version.Public/Private data? (choose wisely).

Simple Examples using KML

PointPicturesTracksOverlaysLinks to external data

Warning Code Examples!

Keyhole Markup Language (kml)

Xml grammar and file format for describing geographic features in google earth/maps

PointsLinesPolygonsModelslinks

Keyhole Markup Language (KML)

KML files can be shared.KMZ files are a compressed version of KML files.Google Earth processes kml files like web browsers process html files.

Kml example: Simple point

<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Placemark> <name>OARS Meeting</name> <description><![CDATA[Incorporating Google Maps and Google Earth into your Remote Sensing Applications <br>Presented by Jim Freemantle <br>Dec 11, 2006 7:00 pm <br>Room 129 Chemistry Building, York University, Toronto. <br>]]></description> <Point id="khPoint616"> <coordinates>-79.508,43.773225,0</coordinates> </Point></Placemark></kml>

Simple Point

Simple Point

Simple point, with link

<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Placemark> <name>OARS Meeting</name> <description><![CDATA[Incorporating Google Maps and Google Earth into your Remote Sensing Applications <br><a href=“http://www.oars.on.ca/meetings.php”> details </a><br>]]></description> <Point id="khPoint616"> <coordinates>-79.508,43.773225,0</coordinates> </Point></Placemark></kml>

Simple point with link

Simple point, with image

<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Placemark> <name>OARS Meeting</name> <description><![CDATA[Incorporating Google Maps and Google Earth into your Remote Sensing Applications <br><a href=“http://www.oars.on.ca/meetings.php”> details </a><br><img src="c:/documents and settings/user/my documents/my pictures/jim_pic.jpg"/>]]></description> <Point id="khPoint616"> <coordinates>-79.508,43.773225,0</coordinates> </Point></Placemark></kml>

Simple point with image

Track<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Document> <name>t0490f13</name> <Placemark>

<name>t0490f13</name><description><![CDATA[Flight Line 13 tape 490 CASI 2001 <br>]]></description> <LineString><coordinates>-68.8911,48.79734,2470.74 -68.8947,48.79449,2471.35 </coordinates><coordinates> -68.9127, 48.78028,2466.96,-68.9164,48.77747,2469.82 </coordinates> </LineString> </Placemark></Document></kml>

Track

Track

GeoTagging

GeoTagging

RequirementsGPS device Camera with EXIF format jpg files and internal clockSoftware to sync gps track with time of photoSoftware to create google earth file (.kml)

GeoTagging

GPS Devices Used

Sony GPS-SC1 ($129.00)

Garmin Forerunner 201Runners GPS ($159.00)

GeoTagging

Software UsedGPSBabel (NMEA to GPX)GPS Image Tracker (Sony) (Not required)iTag

GeoTagging

GeoTagging

GeoTagging

Overlays

Getting your georeferenced data into Google Earth

Need georeferenced dataManually imported, as a jpg image, and matched to Google Earth

Overlays

Overlays

Links

ImagesExternal websites via urlDatabases

Track with link<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Document> <name>t0489f06</name> <Placemark>

<name>t0489f06</name><description><![CDATA[Flight Line 06 tape 489 CASI 2001 <br><a href="http://www.aerocan.net/tapedb.xml#489"> Link to Flight Log </a> <br>]]></description> <LineString><coordinates>-68.8911,48.79734,2470.74 -68.8947,48.79449,2471.35 </coordinates><coordinates> -68.9127, 48.78028,2466.96,-68.9164,48.77747,2469.82 </coordinates> </LineString> </Placemark></Document></kml>

Track with link

Point with link<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.0"><Placemark> <name>Waskesiu</name> <description><![CDATA[Aeronet Sites Worldwide<br><a href="http://aeronet.gsfc.nasa.gov/cgi-bin/ type_one_station_opera_v2_new?site=Waskesiu&nachal=2&aero_water=0&level=1 &if_day=0&year_or_month=0">Link to Waskesiu data</a><br>]]></description> <Point id="khPoint616"> <coordinates>-106.083,53.916698,550</coordinates> </Point></Placemark></kml>

Point with Link

Google Earth/Map Application Programmer Interface (API)

Sign up for your keyCan be used only on requested web accessible directory eg. http://www.example.com/gmapsReceive example script and put it in that directoryBuild Google Map applications from there

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"/> <title>Jim's Google Maps JavaScript API Example from M. Brown</title> <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=xxx" type="text/javascript"></script> <script type="text/javascript">

//<![CDATA[ var largemapcontrol = new GLargeMapControl(); function load() { if (GBrowserIsCompatible()) { var map = new GMap(document.getElementById("map"));

GEvent.addListener(map,'click',function(overlay,point) { var latLngStr = '(' + point.x + ', '+ point.y + ')<br/>'; var message = document.getElementById("message");message.innerHTML = latLngStr;});

map.centerAndZoom(new GPoint(-79.505, 43.77382), 4); map.addControl(largemapcontrol); } } //]]>

</script> </head> <body onload="load()" onunload="GUnload()"> <div id="map" style="width: 500px; height: 300px"></div> <div id="message"></div> </body></html>

Google Map API

Google Earth API

Link to dynamically generated kmlNo API key required

See http://earth.google.com/kml/kml_tut.html#tracking_point

Google Earth Example<?php// get the time$timesnap = date("H:i:s");

$BOX=$_GET[BBOX];// split the client's BBOX return by commas and spaces to obtain an array of coordinates$coords = preg_split('/,|\s/', $BOX);

// for clarity, place each coordinate into a clearly marked bottom_left or top_right variable$bl_lon = $coords[0];$bl_lat = $coords[1];$tr_lon = $coords[2];$tr_lat = $coords[3];

// calculate the approx center of the view -- note that this is innaccurate if the user is not looking straight down$userlon = (($coords[2] - $coords[0])/2) + $coords[0];$userlat = (($coords[3] - $coords[1])/2) + $coords[1];

$response = '<?xml version="1.0" encoding="UTF-8"?>';$response .= '<kml xmlns="http://earth.google.com/kml/2.0">';$response .= '<Placemark>';$response .= '<name>'.$timesnap.'</name>';$response .= '<Point>';$response .= "<coordinates>$userlon,$userlat,0</coordinates>";$response .= '</Point>';$response .= '</Placemark>';$response .= '</kml>';echo $response;

?>

Examples from the Community

“Mashups”

Acknowledgements

Data providers J. Miller (York U), A. Smith (Agr. Canada)

Colleagues I. Lumb, L. Gray

Resources

http://earth.google.comhttp://maps.google.comhttp://www.oars.on.ca“Hacking Google Maps and Google Earth” by Martin C. BrownCheck back on the OARS website for a copy of these slides and list url of useful links

ResourcesInteresting linksGeoTagging "adding location information to pictures"

http://www.iceburnslair.com/mapper/http://wwmx.org/Download.aspxhttp://www.oziphototool.com//http://www.gpsbabel.org/http://itagsoftware.awswa.com/Interesting discussion at Canadian Canoe Routes on this topic:http://www.myccr.com/SectionForums/viewtopic.php?p=183038Mashups:http://www.beerhunter.ca/OttawaAreahttp://googlemapsmania.blogspot.com/

Questions?

top related