ข้ามไปเนื้อหา

Augmented Reality Markup Language for wikitude

จาก วิกิตำรา

ARML (Augmented Reality Markup Language) คือภาษาที่ทำให้ผู้พัฒนา application จัดการเนื้อหาที่แสดงบนเว็บเบราว์เซอร์ของโทรศัพท์มือถือได้หลากหลาย โดยสร้างขึ้นมาเพื่อเพิ่มประสิทธิภาพของ KML เพราะ KML ไม่ให้ผู้ใช้งานเข้าถึงตัวโปรแกรมหลักได้ ไม่สามารถแก้ไขหรือเพิ่มข้อมูลเอง ขาดส่วนเสริมที่สำคัญไป และเว็บเบราว์เซอร์แรกที่รองรับ ARML คือ wikitude

ARML ประกอบไปด้วย 2 ส่วน คือส่วนผู้ให้บริการเนื้อหา(Content Provider Section) และส่วนกำหนดพิกัดที่สนใจ (POI section)

ตัวอย่าง tag

<?xml version="1.0" encoding="UTF-8"?>

<kml xmlns="http://www.opengis.net/kml/2.2"
         xmlns:ar="http://www.openarml.org/arml/ext/2.2"
         xmlns:wikitude="http://www.openarml.org/arml/ext/2.2">

<Document>
</Document>

</kml>

จะสังเกตได้ว่าได้มีการแบ่ง ARML ออกเป็น 3 ชั้น[1]ด้วยกัน

  1. ชั้น KML ก็คือชั้น KML ทั่วไป
  2. ชั้น AR นั้นคือชั้น tag ที่ทุก AR เว็บเบราว์เซอร์ มี
  3. ชั้น wikitude ก็มี tag ของตัวเองเช่นเดียวกับ เว็บเบราว์เซอร์อื่น


หากว่าพบ tag ในส่วนที่คล้ายกันในหลายๆ เว็บเบราว์เซอร์แล้ว ก็จะถูกนำมาเก็บไว้ในชั้น AR เป็นไปได้ว่าในอนาคต จะสามารถนำส่วนของชั้น AR มาเก็บไว้ในชั้น KML ได้บ้าง


คือส่วนที่ที่จัดการเนื้อหาของผู้ให้บริการ เช่น สัญลักษณ์ เว็บไซต์ ชื่อ คำอธิบาย เป็นต้น

<ar:provider id="myCpId">

    <ar:name>The name of the CP</ar:name>

    <ar:description>Any description of the CP</ar:description>

    <wikitude:providerUrl> http://myUrl.com/</wikitude:providerUrl>

    <wikitude:tags>any tags for the CP</wikitude:tags> 
 
    <wikitude:logo>http://logoUrl.com</wikitude:logo>

    <wikitude:icon>http://iconUrl.com</wikitude:icon>

</ar:provider>

Tag สำหรับ wikitude ส่วนเนื้อหาของผู้ให้บริการ[2]

TAG คำอธิบาย
ar:provider (required) ระบุตัวเนื้อหาของผู้ให้บริการหรือช่องทางของเนื้อหา เช่น Wikipedia Youtube Twitter สามารถใส่เพิ่มมากกว่า 1 ผู้ให้บริการ
ar:name (required) ชื่อของผู้ให้บริการเนื้อหา
ar:description (optional) อธิบายเนื้อหา ข้อมูลเพิ่มเติม
wikitude:providerUrl (optional) การเชื่อมโยงเนื้อหา ตามที่ผู้ให้บริการต้องการ
wikitude:tags (optional) พวกคำค้นต่างๆ จะช่วยให้เข้าถึงเร็วขึ้นเวลาค้นหา
wikitude:logo (optional) รูปสัญลักษณ์ที่ต้องการให้แสดงเมื่อถูกเลือก
wikitude:icon (required) icon คือรูปสัญลักษณ์ที่จะแสดงผลใน wikitude ซึ่งจะเชื่อมโยงกับส่วนจุดที่สนใจ(POI)


คือ จุดที่สนใจ (POI) คือพิกัดของผู้ให้บริการนั่นเอง จะเป็นในรูปของ พิกัด ลองจิจูด ละติจูด จะมีอัลติจูดจะเป็นอีกทางเลือกหนึ่ง จุดที่สนใจจะต้องเชื่อมต่อกับส่วนเนื้อหาของผู้ให้บริการ[3]

<Placemark id="123456">
    <ar:provider>myCpId</ar:provider>
    <name>Title of my POI</name>
    <description>My POI description</description>
    <wikitude:info>
    <wikitude:thumbnail>
         http://thumbnailUrl.com
    </wikitude:thumbnail>
    <wikitude:phone>123-456- 78</wikitude:phone>
    <wikitude:url>http://poiUrl.com</wikitude:url>
    <wikitude:email>in@Poi.com</wikitude:email>
    <wikitude:address>
        My POI Street 5, 5020 POI, Austria
    </wikitude:address>
    <wikitude:attachment>
        http://myAttachmentLink.com
    </wikitude:attachment>
</wikitude:info>

<Point>
    <coordinates>
        13.048056,47.797222,432.0
    </coordinates>
</Point>
</Placemark>

Tag สำหรับ wikitude ในส่วนจุดที่สนใจจะคล้ายกับส่วนของเนื้อหาผู้ให้บริการ แต่จะมีรายละเอียดเพิ่มขึ้น

TAG คำอธิบาย
name (required) ชื่อของจุดที่สนใจ(POI)
description (optional) คำอธิบาย รายละเอียดของพิกัดนั้น ไม่สามารถใช้ รูปแบบภาษา HTML
wikitude:info (optional) ข้อมูลเพิ่มเติมเกี่ยวกับจุดที่สนใจ
wikitude:thumbnail (optional) เป็นรูปภาพที่แสดง ขนาด 64x64 pixel
wikitude:phone (optional) หมายเลขโทรศัพท์ ถ้าใส่ wikitude จะแสดงปุ่ม call me ให้เอง ซึ่งเป็นประโยชน์อย่างมากต่อบริการทางโทรศัพท์มือถือ
wikitude:url (optional) การเชื่อมโยงไปเว็บเพจที่มีข้อมูลเกี่ยวกับจุดที่สนใจ
wikitude:email (optional) เขียน email ส่งไปหาบุคคลนั้นโดยตรง
wikitude:address (optional) ที่อยู่ของจุดที่สนใจ
wikitude:attachment (optional) สามารถแนบไฟล์ต่างๆ เช่น รูปภาพ PDF ฯลฯ


วิธีการสร้าง ARML สามารถทำได้โดย

  • แปลง KML ไฟล์เป็น ARML ไฟล์
  • เขียน ARML เอง ถ้ารู้ภาษา XML
  • ใช้ web-based GUI (อยู่ในช่วงพัฒนายังไม่สมบูรณ์)


แปลง KML ไฟล์เป็น ARML ไฟล์

[แก้ไข | แก้ไขต้นฉบับ]

การแปลง KML เป็น ARML เป็นขั้นตอนที่ง่าย โดยการเปิด ไฟล์ KML ที่ถูกสร้างไว้ในโปรแกรมแก้ไขข้อความและลบทุกส่วนออก เหลือไว้เพียงส่วนจุดที่สนใจ หรือ <Placemarks> มีขั้นตอนหลัก 3 ขั้นตอน[4]ดังนี้


ขั้นตอนที่ 1 ลบส่วนที่ Comment ออกจาก KML เดิม ส่วนของ Namespace gx หรือ atom เป็นสิ่งที่ไม่จำเป็น หรือลบทุกอย่างยกเว้นชื่อ คำอธิบาย และจุดพิกัด

<?xml version="1.0" encoding="UTF-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2" 
<!-- xmlns:gx="http://www.google.com/kml/ext/2.2" 
xmlns:kml="http://www.opengis.net/kml/2.2" 
xmlns:atom="http://www.w3.org/2005/Atom"> -->
<Document> 
      <!--<name>rent-a-buddy.kml</name> 
      <Style id="sn_ylw-pushpin"> 
<IconStyle>
 	     <scale>1.1</scale> 
     <Icon> <href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href> 
     </Icon> 
     <hotSpot x="20" y="2" xunits="pixels" yunits="pixels"/>
 	</IconStyle> 
</Style> 
<StyleMap id="msn_ylw-pushpin"> 
<Pair> 
<key>normal</key> 
<styleUrl>#sn_ylw-pushpin2</styleUrl> 
</Pair> 
<Pair> 
<key>highlight</key> 
<styleUrl>#sh_ylw-pushpin2</styleUrl> 
</Pair> 
</StyleMap> 
<Folder> 
<name>Meine Orte</name>   
<visibility>0</visibility> 
<open>1</open> -->
<Placemark> 
<name>Rent-a-buddy Office Vienna West</name> 
<description>The Rent-a-buddy Office in Vienna West, very close to the city’s main station. Phone: 0043 1 123456789 E-Mail: office_vienna_west@rentabuddy.com </description> 
<!--<visibility>0</visibility> 
<Camera>
     <longitude>16.35978423666323</longitude>
      <latitude>48.19898341784327</latitude> 
      <altitude>0</altitude> 
       <heading>-3.23062483148403</heading>  
        <tilt>0.04612397934334594</tilt> 
        <roll>-3.779048180367987</roll> <altitudeMode>relativeToGround</altitudeMode> 
</Camera> 
<styleUrl>#msn_ylw-pushpin</styleUrl> -->
<Point> 
<coordinates>16.33630854232613,48.19801167090942,0</coordinates> 
</Point> 
        </Placemark> 
      <!--</Folder> -->
</Document> 
</kml>

ขั้นตอนที่ 2 เพิ่มส่วนของ wikitude ลงไปดังสีเขียวใน tag หรือในส่วนของ <ar:provider> เพื่อโยงกันระหว่างส่วนเนื้อหาและส่วนพิกัดที่สนใจ

<?xml version="1.0" encoding="UTF-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2" 
xmlns:wikitude="http://www.openarml.org/arml/ext/2.2" 
xmlns:wikitudeInternal="http://www.openarml.org/arml/ext/2.2"
xmlns:ar="http://www.openarml.org/arml/ext/2.2"> <Document> 
<ar:provider id="rent-a-buddy"> 
       <ar:name> <![CDATA[Rent-a-buddy Car Rental Offices]]> </ar:name> 
<ar:description> <![CDATA[Rent-a-buddy is a car rental company focusing on the Austrian market. We have all types of cars available for short and long term rental.]]> </ar:description>   
<wikitudeInternal:author> <![CDATA[Rent-a-buddy Inc.]]> </wikitudeInternal:author>  
<wikitude:providerUrl> <![CDATA (ctrl-click)"> (ctrl-click)">[http://www.rent-a-buddy.at]]> </wikitude:providerUrl> 
<wikitude:tags> <![CDATA[car,rental,rent,buddy]]> </wikitude:tags> 
<wikitude:logo> <![CDATA (ctrl-click)"> (ctrl-click)">[http://a_url_to_the_logo.png]]> </wikitude:logo> 
<wikitude:icon> <![CDATA (ctrl-click)"> (ctrl-click)">[http://a_url_to_the_icon.png]]> </wikitude:icon> 
</ar:provider> 
<Placemark> 
<ar:provider>1</ar:provider> 
<name>Rent-a-buddy Office Vienna West</name> 
<description>The Rent-a-buddy Office in Vienna West, very close to the city’s main station. Phone: 0043 1 123456789 E-Mail: office_vienna_west@rentabuddy.com </description> 
<Point> <coordinates>16.33630854232613,48.19801167090942,0</coordinates> 
</Point> 
</Placemark> 
</Document> 
</kml>

ขั้นตอนที่ 3 เพิ่มรายละเอียดข้อมูลของ ARML หรือเพิ่ม thumbnail phone email address url attachment ดังเช่น

<wikitude:info> 
<wikitude:thumbnail> http://www.link_to_thumbnail.com <wikitude:thumbnail> 
<wikitude:phone> 00431123456789 </wikitude:phone> 
<wikitude:email> any@email.com </wikitude:email> 
<wikitude:address> Wien Westbahnhof, Gasse 5, Vienna, Austria </wikitude:address> <wikitude:url> http://www.myoffice.com </wikitude:url> 
<wikitude:attachment> http://www.myoffice.com/attachment.pdf </wikitude:attachment> 
</wikitude:info>


ทฤษฎีที่เกี่ยวข้อง

[แก้ไข | แก้ไขต้นฉบับ]

Augmented Reality (AR) หรือโลกเสมือนผสานโลกจริง เป็นการนำเทคโนโลยีความเป็นจริงเสมือน (Virtual Reality) ผสมรวมกับ เทคโนโลยีภาพ ตอบสนองกันแบบ real-time ทำให้เกิดภาพ 3D โดยการแสดงผลผ่านหน้าจอ ARMLก็เป็นภาษาหนึ่งที่รองรับโลกเสมือนผสานโลกจริง โดยเป็นตัวจัดการส่วนประกอบต่างๆ ของระบบ AR

KML หรือ Keyhole Markup Language คือไวยากรณ์และรูปแบบไฟล์ XML สำหรับการทำโมเดลและการจัดเก็บคุณลักษณะทางภูมิศาสตร์ เช่น จุด เส้น ภาพ รูปหลายเหลี่ยม และโมเดลสำหรับแสดงผลเช่น Google Earth และ Google Maps[5] ซึ่งส่วนหนึ่งของ KML ได้ถูกนำมาพัฒนาขึ้นเป็น ARML


Tim Berners-Leeได้สร้างมาตรฐาน HTML ขึ้นมาเป็นคนแรก หลังจากนั้น 20 ปี HTML ได้กลายมาเป็นภาษาหลักของการสร้าง เว็บเพจ หากมองในรูปแบบการพัฒนาที่เป็นในเชิง code โลกเสมือนผสานโลกจริงได้เดินมาในทางเดียวกัน ดังนั้นจึงต้องการที่จะทำให้ ARML เป็นมาตรฐานในการจัดการเนื้อหาของ AR และให้ ARML เป็นภาษาหลักซึ่งรองรับทุก AR เว็บเบราว์เซอร์ไม่ใช่เพียงแค่ wikitude เท่านั้น โดย ข้อมูลนี้จะมีส่วนร่วมในการผลักดัน ARMLแต่ต้องอาศัยทั้งสังคม และกลุ่มผู้พัฒนา เพื่อจะได้การยอมรับ จึงจะทำให้บรรลุเป้าหมาย[6]


  1. ARML - An Augmented Reality Standard. Markus Tripp Martin Lechner. Barcelona. 2010. Mobile Augmented. หน้า 1-3.
  2. Martin Lechner Markus Tripp. ARML Specification for Wikitude 4. openarml. [ออนไลน์] Mobilizy GmbH, 11 12 2010. [สืบค้นเมื่อ 27 12 2010.] [1].
  3. ARML - Augmented Reality Markup Language. Martin Lechner. 2010.
  4. Mobilizy. Wikitude 4. HOW TO ADD CONTENT. [ออนไลน์] 1 2010. [2].
  5. คู่มือผู้ใช้ Google Earth - เกี่ยวกับ KML. earth.google.com. [ออนไลน์] google, 25 March 2010. [สืบค้นเมื่อ 2010 12 1.] [3].
  6. Piyawat Innurak. Augment Reality Markup Language For WIKITUDE. 2011.