สวัสดีครับ หลังจากห่างหายในการเขียนบทความลง Blog ไปพอสมควร
วันนี้ผมจะมาเล่าวิธีการสร้างภาพจำลอง 3 มิติ จาก UAV ด้วย Opensource WebGL แล้วนำมาเผยแพร่ทางอินเตอร์เน็ตกันนะครับ
เนื่องด้วยผมได้ไปออกภาคสนามโครงการนึงซึ่งต้องใช้ UAV บินสำรวจ
แล้วต้องนำข้อมูลที่ได้มาจัดเป็นผลิตภัณฑ์ ทั้งข้อมูลภาพ ข้อมูลความสูงภูมิประเทศ ข้อมูล 3 มิติ ข้อมูลอื่นๆ ที่สามารถนำมาใช้ได้
ก่อนหน้านี้ผมเคยพอจะรู้เกี่ยวกับการสร้างแบบจำลอง 3 มิติ จาก Photogrammetry ด้วยภาพจากการถ่ายหลายๆ มุมมาบ้าง
แต่ยังไม่มีโอกาสได้ลองทำ ครั้งนี้เมื่อข้อมูลพร้อม เลยได้โอกาสลงมือทำ
เล่าให้ฟังสำหรับคนที่รู้จัก UAV มาบ้างเล็กน้อย ส่วนผู้ชำนาญการก็ข้ามไป เวลาที่เราใช้ UAV ถ่ายภาพเพื่อนำมาทำเป็นแผนที่
เราต้องมีถ่ายให้ภาพมีบริเวณซ้อนทับซึ่งก็ขึ้นอยู่กับรายละเอียดงานต้องการซ้อนทับกันกี่ % ซึ่งถ้าซ้อนทับกันน้อยไปเวลานำมาภาพมาต่อกันเป็นผืนใหญ่ก็ยาก
เพราะ Software จะไม่สามารถ Matching จุดระหว่างภาพได้ แต่ถ้าซ้อนทับกันมาก อาจจะต้องเปลืองเวลาและงบประมาณในการบินถ่าย
เมื่อไปบินถ่ายและได้ภาพมาแล้ว ก็นำมาภาพมาเข้าสู่ Software เพื่อจะต่อภาพให้กลายเป็นผืนใหญ่ ซึ่ง Software ที่หน่วยงานใช้งานคือ PIX4D
ความสามารถของ PIX4D คือการสร้าง Point Cloud จากภาพหลายๆ มุมมองได้ ด้วยหลักการทาง Photogrammetry เราก็ได้ file ออกมา file นึง ที่เป็นนามสกุล .las
ที่นี้ผมก็มานั่งหาข้อมูลว่า ถ้าผมต้องการเอาข้อมูล Point Cloud นี้มาแสดงผลทางเว๊บไซต์ต้องทำอย่างไร
หาข้อมูลจนมาเจอ คนทำ Opensource เพื่อแปลงข้อมูล Point Cloud เพื่อให้แสดงผลทางเว๊บ ได้ ชื่อ Potree ลองเอาไป search ใน google ได้วิธีการไม่ยาก
ซึ่งผมทำออกมาแล้วก็ค่อนข้างน่าพอใจ สำหรับครั้งแรก ลองดูได้ที่ Web นี้ https://terminal.gistda.or.th/vap-3d/hubkapong.html
จากข้อมูลที่ทำจะเห็นว่ามีบริเวณที่ไม่มีข้อมูล นั้นคือมีสาเหตุมาจากภาพส่วนที่ซ้อนกันไม่สามารถ Matching จุดกันได้
ซึ่งอาจจะมาจากถ่ายคนคนละมุม โดนบังด้วยความสูงของวัตถุ หรือ ภาพมีความเหมือนกัน เช่นบริเวณพื้นน้ำ
วิธีการคืออาจจะต้องบินซ่อมในส่วนที่ไม่มีข้อมูลหรือใช้วิธีการอื่นในการได้มาซึ่งข้อมูล
ลองเอาไปทดลองทำดูครับ หากมีข้อมูลสงสัยตรงไหนก็สอบถามมาได้