Upload
chaipat-n
View
118
Download
5
Embed Size (px)
Citation preview
1
บทความเรื่อง “การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร” นาย ชัยภัทร เนื่องคํามา
[email protected]. บทนํา Google Earth จัดเปนระบบสารสนเทศภูมิศาสตรอีกรูปแบบหนึ่งที่กําลังไดรับความนยิมอยูในปจจุบัน โดย Google Earth สามารถทําใหผูคนทั่วไปหนัมาสนุกกับการใชแผนที่ และภาพถายดาวเทียมรายละเอียดสูง นอกจากนี้ยังสงผลใหเร่ืองของระบบสารสนเทศภูมิศาสตรเปนที่รูจักในวงกวางมากขึ้นอีกดวย บทความนี้ผมตั้งใจจะเขียนขึ้นเพื่อใหหนวยงานหรือองคกรที่ระบบสารสนเทศภูมิศาสตรอยูแลวไดนําเอา Google Earth (free version) ไปประยกุตใชรวมกับระบบเดิมที่มีอยู เพื่อใหเกิดประโยชนสูงสุด โดยจะเนนหนักไปทีก่ารนําขอมูลเชิงพื้นที่ไปแสดงผลบน Google Earth และการประยกุตใช Google Earth (free version) กับงานสารสนเทศภูมิศาสตร 2. เร่ิมตนใชงาน Google Earth การเริ่มใชงานโปรแกรม Google Earth กอนอื่นตองมาตรวจสอบสเปกของเครื่องคอมพิวเตอรกันเสียกอน โปรแกรม Google Earth ถูกออกแบบมาเพื่อรองรับการทํางานไดดีบนสภาวะแวดลอมของอุปกรณคอมพวิเตอรที่เทากบัหรือสูงกวาดังนี ้
• Windows 2000, or XP • Pentium III, 500 MHz • 128 MB RAM • 400 MB disk space • Network speed: 128 Kbits/sec • 3D-capable video card with 16 Mbytes of VRAM • 1024x768, "16-bit High Color" screen
สําหรับผูใช Mac OS X ปจจุบันนี้ (เม.ย 2549) ก็มี Google Earth for Mac OS X มาใหไดใชกันแลว สวนผู Linux OS คงตองอดใจรอกนัตอไปครับ
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
2
3. ระบบพิกัดภูมิศาสตรและรายละเอียดของขอมูลเชงิพื้นท่ี ระบบพิกัดภูมศิาสตรที่ใชในโปรแกรม Google Earth คือ Geographic coordinate (lat-long) พื้นหลักฐานคือ WGS84 และใช Earth Gravity Model คือ EGM96 ขอมูลภาพถายดาวเทยีมประกอบดวย ภาพถายดาวเทยีม Landsat 7 ขนาดความละเอยีดจุดภาพ 30 เมตร, ภาพถายดาวเทยีม IKONOS ขนาดความละเอยีดจุดภาพ 1 เมตร และภาพถายดาวเทียม QUICKBIRD ขนาดความละเอียดจดุภาพ 0.6 เมตร โดยขอมูลภาพดาวเทียมเปนภาพที่ถายในชวง 1-3 ป ขอมูลความสูงภูมิประเทศ(DEM) เปนขอมลู SRTM รายละเอียดของจดุภาพเทากับ 30 เมตร ความละเอียดถูกตองแนวดิ่งประมาณ 20-30 เมตร 4. การแสดงผลขอมูลเวกเตอรดวย KML KML (Keyhole Markup Language) เปนโครงสรางภาษา XML รูปแบบหนึ่งที่ใชสําหรับการแสดงขอมูลเชิงพื้นที่บนโปรแกรม Google Earth บนฝงไคลเอน ปจจุบนั KML เปนเวอรช่ัน 2.0 ซ่ึงใชงานกับ Google Earth client version 3 เนื่องจาก KML เปนโครงสรางภาษา XML ดังนั้นผูใชที่ตองการนํา KML ไปพัฒนาในขั้นสูงจึงจําเปนที่จะตองศึกษาภาษา XML แตในบทความนี้ผมขออธิบายเฉพาะโครงสราง KML เบื้องตน โดยจะเนนไปทีก่ารสรางรูปทรงเรขาคณิตพื้นฐาน เชน point, line และ polygon 4.1 Point Point คือชุดขอมูลประเภทจดุ (point feature) ใน Google Earth ผูใชสามารถสราง Placemarks ประเภทจุดจากเครื่องมือที่โปรแกรมเตรียมไวใหได โดยโปรแกรมจะสรางเอกสาร KML ใหโดยอัตโนมัติ
k
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาส
แถบเครื่องมือ Placemar
ตร Create by Chaipat Nengcomma
3
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://earth.google.com/kml/2.0"> <Placemark> <name>มหาวิทยาลัยธรรมศาสตร</name> <LookAt> <longitude>100.6197822282147</longitude> <latitude>14.07877884031919</latitude> <range>9010.664103826943</range> <tilt>-8.5382468569913e-005</tilt> <heading>-0.3205832284238629</heading> </LookAt> <visibility>0</visibility> <Style> <IconStyle> <Icon> <href>root://icons/palette-3.png</href> <x>96</x> <y>160</y> <w>32</w> <h>32</h> </Icon> </IconStyle> </Style> <Point> <extrude>1</extrude> <altitudeMode>relativeToGround</altitudeMode> <coordinates>100.607497578561,14.07073782130176,0</coordinates> </Point> </Placemark> </kml>
ขอมูลพิกัดภูมศิาสตรของจุด
การกําหนดชนิดของตําแหนงอางอิงทางแนวดิ่ง
การกําหนดลักษณะรูปแบบของ Point
การกําหนดสถานะการมองเห็นเริ่มตน
คามุมกลองสําหรับ Placemark ระบุคาตําแหนง x,y ,มุมกม-มุมเงย,คา azimuth
รายละเอียดทั่วไปของ Placemark
KML Namespace XML header
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
4
ทดลอง Save เอกสาร KML ขางตน และนาํไปเปดในโปรแกรม Google Earth จะไดผลดังตอไปนี้
PKGIS2006
ตําแหนงของมหาวิทยาลัยธรรมศาสตร และ Label
4.2 line Line เปนขอมลูประเภทเสน ที่ประกอบดวยชุดของจุดมากกวา 2 จุดขึ้นไป การสรางขอมูลประเภทเสนสามารถทําไดโดยใชแทก <LineString> ในโปรแกรม Google Earth ผูใชไมสามารถสรางขอมูลประเภทเสนไดจากแถบเครื่องมือในโปรแกรม ผูใชจะตองซื้อโปรแกรม Google Earth Plus เสียกอน หัวขอนีเ้ราจะทดลองสรางขอมูลเสนโดยการเขียน KML
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
5
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://earth.google.com/kml/2.0"> <Placemark> <description>Create Line by KML</description> <name>ถนน</name> <LookAt> <longitude>100.607497578561</longitude> <latitude>14.07073782130176</latitude> <range>876</range> <tilt>0</tilt> <heading>0</heading> </LookAt> <visibility>1</visibility> <Style> <LineStyle id="khLineStyle989"> <color>7f0000ff</color> <width>30</width> </LineStyle> </Style> <LineString> <tessellate>1</tessellate> <coordinates> 100.609875,14.074310,0 100.609744,14.067665,0 100.602121,14.067704,0 100.602080,14.074312,0 100.609875,14.074310,0 </coordinates> </LineString> </Placemark> </kml>
ขอมูลพิกัดภูมศิาสตรของเสน
การกําหนดลักษณะรูปแบบของ Line เชน สี, ความกวาง และรูปแบบ
การกําหนดสถานะการมองเห็นเริ่มตน
คามุมกลองสําหรับ Placemark ระบุคาตําแหนง x,y ,มุมกม-มุมเงย,คา azimuth
รายละเอียดทั่วไปของ Placemark
KML Namespace XML header
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
6
ทดลอง Save เอกสาร KML ขางตน และนาํไปเปดในโปรแกรม Google Earth จะไดผลดังตอไปนี้
PKGIS2006
ขอมูลถนน ที่สรางดวย KML
4.3 Polygon Polygon เปนฟเจอรที่ประกอบไปดวยชุดของเสนและชดุของจุดประกอบกัน โดย KML สามารถแสดงผลไดทั้งแบบโพลีกอนอยางงายและโพลีกอนแบบซบัซอน ในโปรแกรม Google Earth ผูใชไมสามารถสรางขอมูลประเภทโพลีกอนไดจากแถบเครื่องมือในโปรแกรม ผูใชจะตองซื้อโปรแกรม Google Earth Plus เสียกอน หัวขอนีเ้ราจะทําการสรางขอมูลโพลีกอนโดยการเขยีน KML
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
7
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://earth.google.com/kml/2.0"> <Placemark> <name>The TU Building</name> <LookAt> <longitude>100.608455</longitude> <latitude>14.072797</latitude> <range>742.0552506670548</range> <tilt>0</tilt> <heading>0</heading> </LookAt> <Polygon> <extrude>1</extrude> <altitudeMode>relativeToGround</altitudeMode> <outerBoundaryIs> <LinearRing> <coordinates> 100.608455,14.072797,10 100.608455,14.072425,10 100.608217,14.072425,10 100.608217,14.072797,10 100.608455,14.072797,10 </coordinates> </LinearRing> </outerBoundaryIs> <innerBoundaryIs> <LinearRing> <coordinates> 100.608367,14.072722,10 100.608367,14.072498,10 100.608299,14.072498,10 100.608299,14.072722,10 100.608367,14.072722,10 </coordinates> </LinearRing> </innerBoundaryIs> </Polygon> </Placemark> </kml>
ขอมูลพิกัดภูมศิาสตรของโพลีกอน
กําหนดการวาดโพลีกอนภายใน
กําหนดการวาดโพลีกอนภายนอก
ขอมูลพิกัดภูมศิาสตรของโพลีกอน
Geometry type เปน Polygon
คามุมกลองสําหรับ Placemark ระบุคาตําแหนง x,y ,มุมกม-มุมเงย,คา azimuth
รายละเอียดทั่วไปของ Placemark
KML Namespace XML header
8
ทดลอง Save เอกสาร KML ขางตน และนาํไปเปดในโปรแกรม Google Earth จะไดผลเปนภาพโพลีกอน 3 มิติดังตอไปนี ้
PKGIS2006
4.4 การสราง KML ดวยเคร่ืองมือ Shp2kml จากหวัทั้งสามหัวขอขางตนคงจะทําใหหลายๆทานไดคุนเคยกับ การแสดงผลขอมูลเวกเตอรดวย KML กันพอสมควร แตเนื่องจากความเปนจริงขอมูลเชิงพื้นที่ที่ไดจากการสํารวจนั้นมีรายละเอียดและจํานวนที่มาก ดังนั้นจึงมกีารพัฒนาเครื่องมือขึ้นมา เพื่อที่จะใชแปลงขอมูลในระบบสารสนเทศภูมิศาสตรไปอยูในรูปแบบ KML เพื่อที่จะนํามาแสดงผลบนโปรแกรม Google Earth Shp2kml เปน extension เสริมที่ใชแปลงขอมูล shapefile ใหเปน KML โดย Shp2kml จะทํางานอยูบนโปแกรม Arcview 3.xx โดยสามารถดาวโหลดไดจาก http://arcscripts.esri.com/details.asp?dbid=14254 ซ่ึงจะมีขั้นตอนการทํางานดังตอไปนี้ 1. ทําการติดตัง้ Shp2kml.avx ลงในเครื่องคอมพิวเตอร 2. เปดโปรแกรม Arcview และทําการโหลด extension เขามาในโปรแกรม
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
9
PKGIS2006
3. ทําการนําเขา Shape file ที่ตองการเขามาในโปรแกรม และตรวจสอบ Coordinate System =Geographic coordinate, Datum =WGS84, Sphereriod = WGS84
PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
10
4. กดปุม Shape to KML บนแถบเครื่องมือ เพื่อสราง KML
5. ทําการกําหนดคารายละเอยีดของ KML
กําหนดฟลดทีใ่ชแสดงชื่อ
กําหนดฟลดทีใ่ชแสดงคําอธบิาย
PKGIS2006
กดปุม OK เพื่อเร่ิมกระบวนการ 6. กําหนดไดเร็กทอรี่ปลายทางที่ตองการบันทึก KML ผลลัพธ
7. ทดลองเปด KML file ที่ไดดวยโปรแกรม Google Earth
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
11
PKGIS2006
8. ปรับแตสีและรูปแบบสัญลักษณ ตามชอบ
PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
12
9. ทําการบันทึกสีและสัญลักษณทีเ่ปล่ียนแปลงกับ KML
10. ช้ันขอมูลอ่ืนๆ ทั้ง point, line และpolygon ก็ทําแบบเดียวกันตามขัน้ตอนขางตนครับ
รูปผลลัพธทั้งหมดที่ไดครับ PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
13
4.5 การเพิ่มประสิทธิภาพการแสดงผล เนื่องจาก KML เปน file ในลักษณะที่เรียกวา ASCII Text การแสดงผลจึงคอนขางชา และในกรณีทีข่อมูลเวกเตอรมีจํานวนฟเจอรที่มากจะทําใหขนาดไฟลKMLใหญและแสดงผลชาลงไปอีก ดังนั้นในกรณีที่ตองการแสดงผลขอมูลเวกเตอรที่มีจํานวนรายละเอยีดของ ฟเจอรมาก เชน ขอมลูถนนมาตราสวนใหญ, ขอมูลตําบล, ขอมูลหมูบาน จึงอาจจะตองใชชองทางของ Network link ในการชวยแสดงผล KML โดยจะเปนการแสดงผลแบบ Dynamic KML ซ่ึงสามารถทําไดโดยการแมขาย (Server) สําหรับสรางเอกสาร KML สงให โปรแกรม Google Earth ทางฝงลูกขาย (Client) ตามที่จะใชแสดงผลเทานัน้ ซ่ึงจะชวยใหโปรแกรมทาํงานไมจําเปนตองอาน KML ทั้งหมดและลดการใช หนวยความจําของเครื่องลูกขายอีกดวย โดยแมขายตองทาํการกําหนด MIME types เปนapplication/vnd.google-earth.kml
KML Server
Google Earth MIME types = application/vnd.google-earth.kml
ช้ันขอมูลถนนและขอบเขตจงัหวัด ที่เปนแบบ Dynamic KML
Network Link ที่ใชรับ KML จาก Server
PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
14
5. การแสดงผลขอมูลราสเตอร เนื่องจากโปรแกรม Google Earth มีการแสดงขอมูลภาพถายดาวเทียมรายละเอียดสูงแคบางบริเวณเทานั้น จึงมีคําถามตามมาวาเราสามารถใสขอมูลภาพถายดาวเทียมหรือภาพถายทางอากาศลงไปในโปรแกรม Google Earth (free version) ไดหรือไม... คําตอบคือไดครับ ทําได 2 วิธีคือวิธีแรกคอืการใช แท็ก <Ground Overlays> ใน KML วิธีที่สองคือการใชแท็ก <NetworkLink> ใน KML เนื่องจากวิธีที่สองเปนวธีิที่ยุงยากและซับซอน ผมจึงขออธิบายถึงกระบวนการทําแควิธีแรกเทานั้น 5.1 การแสดงผลขอมูลภาพถายดาวเทียมดวยแท็ก <Ground Overlays> แท็ก <Ground Overlays> จะทําใหสามารถใสขอมูลภาพลงไปในโปรแกรม Google Earth ได แตขอมูลภาพจะตองมีฟอรแมทเปน jpeg เทานัน้ 1. ทําการวัดคาพิกัด north, east, south และwest ของภาพถายดาวเทยีม 2. แปลงขอมูลภาพถายดาวเทียมเปนภาพ jpeg โดยกําหนดคาความละเอียดมากกวา 200 dpi 3. ทําการเขียนโคด KML ดงันี้
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
15
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://earth.google.com/kml/2.0"> <GroundOverlay> <name>thammasat </name> <LookAt> <longitude>100.632</longitude> <latitude>14.084</latitude> <range>30350.36838438907</range> <tilt>0</tilt> <heading>0</heading> </LookAt> <Icon> <href>C:\google\ortho.jpg</href> </Icon> <LatLonBox id="testbox1"> <north>14.084</north> <south>14.057</south> <east>100.632</east> <west>100.583</west> </LatLonBox>
ขอบเขตของภาพที่กําหนดเปนพิกัด N, E, Sและ W
ตําแหนงไดเรก็ทอรี่ที่เก็บภาพ กรณีที่เก็บภาพไวบน Server สามารถกําหนด URLลงไปไดเชน http://162.200.10.54/RTGIS/rt.jpg
คามุมกลองสําหรับ ภาพ ระบุคาตําแหนง x,y ,มุมกม-มุมเงย,คา azimuth
KML Namespace
XML header
4. ทดลอง Save เอกสาร KML ขางตน และนําไปเปดในโปรแกรม Google Earth จะไดผลดังตอไปนี้
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
16
ภาพถายดาวเทียมที่นําเขาในโปรแกรม Google Earth
PKGIS2006
การนําเขาขอมลูภาพถายดาวเทียมดวย <Ground Overlays> นั้นเปนภาพ JPEG ดังนัน้การขยายภาพ (zoom-in) จึงทําไดจํากดัที่สเกลหนึ่งเทานัน้ เนื่องจากการขยายภาพลงไปมากจะทําใหจุดภาพแตกและไมสามารถมองเห็นรายละเอียดของภาพได
รายละเอียดของภาพลดลงเมือ่ Zoom เพิ่มมากขึ้น
PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
17
แตกตางจากการนําเขาขอมูลภาพถายดาวเทียมดวย <NetworkLink> ที่แมขายจะสงขอมูลภาพแบบไดนามิกมายงัโปรแกรมโดยขอมูลภาพนัน้จะมีรายละเอียดที่สัมพันธกับมาตราสวนที่กําลังแสดงผลซึ่งเหมือนกับการทํางานของโปรแกรม Google Earth
PKGIS2006
ช้ันขอมูลภาพถายดาวเทยีมแบบ NetworkLink
สามารถขยายภาพถายดาวเทียมไดเทากับรายละเอียด จุดภาพจริงที่ 60 cm โดยที่จดุภาพไมแตก
PKGIS2006
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma
18
มาถึงตรงนี้แลวคิดวาหลายๆทาน คงไดเหน็การนํา Google Earth (free version) ไปใชในดานระบบสารสนเทศภูมิศาสตร กันบางแลว ผมขอจบบทความ “การประยกุตใช Google earth กับงานสารสนเทศภูมิศาสตร” ในตอนที่หนึ่งแคนีก้อนนะครับ เพราะมีภาระกจิตองไปตางจงัหวัดสกัระยะหนึ่งติดตามบทความนี้ในชดุที่ 2 ไดตอไป โดยชุดที่สองจะเนนไปที่ การแสดงผลขอมูลสามมิติ ,การนําเขาขอมูลจาก GPS และเนื้อหาที่นาสนใจอื่นๆอีกครับ
การประยุกตใช Google earth กับงานสารสนเทศภูมิศาสตร Create by Chaipat Nengcomma