นักวิจัย : อ.วิชาญ ทุมทอง (หัวหน้าโครงการวิจัย : พัฒนาฮาร์ดแวร์), อ.คัมภีร์ ธีระเวช (พัฒนาซอฟต์แวร์)
งบประมาณ : สภาวิจัยแห่งชาติ (ว.ช.)
Abstract:
งานวิจัยนี้ศึกษาและพัฒนาโปรแกรมประยุกต์สำหรับสร้างภาพต่อและภาพออร์โทด้วยเทคนิคเอสเอฟเอ็ม (structure from motion : SfM) โดยงานวิจัยนี้จะนำภาพถ่ายจากยูเอวี (unmanned aerial vechcle : UAV) ไปปรับแก้ความผิดเพี้ยนแนวรัศมี แล้วจึงสกัดฟีเจอร์ในภาพด้วยตัวสกัดฟีเจอร์ซิฟท์ (SIFT) และจับคู่หาจุดสมนัยระหว่างคู่ภาพด้วยอัลกอริทึมที่รันบนจีพียู หลังจากนั้นจึงวิเคราะห์คู่ภาพเพื่อคำนวณฟันดาเมนทัลเมทริกซ์ โดยใช้อัลกอริทึมแปดจุดร่วมกับการทำงานแบบแรนเซก (RANSAC-styled, normalized 8-point algorithm) ขั้นต่อไปคือการคำนวณข้อมูลโครงสร้าง (structure) ซึ่งประกอบด้วยจุดสามมิติและข้อมูลกล้อง ด้วยการใช้เทคนิคเอสเอฟเอ็มส่วนเพิ่มเพื่อให้ได้โครงสร้างแบบห่าง (sparse) เสร็จแล้วจึงยกระดับเป็นโครงสร้างแบบแน่น (dense) จากแนวทางนี้เราสามารถสร้างภาพต่อได้สามระดับ นั่นคือภาพต่อโดยใช้ข้อมูลจากไอเอ็นเอส เทคนิคเชิงฟีเจอร์ และเทคนิคเอสเอฟเอ็ม
นอกจากนั้นแล้วเรายังสามารถนำจุดสามมิติแบบห่างและแบบแน่นมาคำนวณพื้นผิวสามมิติด้วยเทคนิคการสามเหลี่ยมเดอโลเนย์แบบ 2.5D เพื่อนำไปใช้ในการสร้างภาพออร์โทและดีเอสเอ็ม (digital surface model : DSM) กระบวนการคำนวณการสุ่มชักตัวอย่างความเข้มพิกเซลและการคำนวณความลึกของพิกเซลทำโดยใช้เทคนิคการเรนเดอร์ทูเทกเจอร์ (render to texture)
การเทียบมาตรฐานกล้อง (cameral calibration) และการดัดการความผิดเพี้ยนแนวรัศมีทำโดยใช้คลังคำสั่งโอเพ่นซีวี (OpenCV) การคำนวณโครงสร้างแบบห่างทำด้วยโปรแกรมวิชวลเอสเอฟเอ็ม (VisualSFM) (Wu, 2012) ซึ่งเป็นโปรแกรมสำหรับการคำนวณโครงสร้างแบบห่างด้วยเทคนิคเอสเอฟเอ็มส่วนเพิ่ม (incremental structure from motion) ร่วมกับพีบีเอ (PBA) (parallel bundale adjustment) (Wu, 2012), ใช้โปรแกรมพีเอ็มวีเอส (PMVS) และซีเอ็มวีเอส (CMVS) (Furukawa an Ponce, 2010) สำหรับการคำนวณโครงสร้างแบบแน่น
การคำนวณเมซแบบสามเหลี่ยม (triangular mesh) ทำด้วยการเรียกใช้ฟังก์ชั่นการสามเหลี่ยมเดอโลเนย์จากคลังคำสั่งซีเกล (CGAL) และสร้างภาพผลลัพธ์ด้วยการเรนเดอร์ทูเทกเจอร์โดยใช้คลังคำสั่งโอเพ่นจีเอล (OpenGL)
Download:
- VisualSFM : สำหรับการคำนวณโครงสร้างแบบห่าง
- PMVS/CMVS : สำหรับการคำนวณโครงสร้างแบบแน่น
- RBRUCamCal 1.0 : สำหรับคำนวณพารามิเตอร์ภายในกล้อง ด้วยเทคนิคของ ZHANG00
- RBRUImgUndistortor 1.0: สำหรับการดัดแก้ความผิดเพี้ยนแนวรัศมี
- RBRUOrthoMaker 1.0: สำหรับการสร้างภาพต่อและภาพออร์โท
- คู่มือการใช้งาน RBRUOrthoMaker 1.0
References:
- Fischler, M.A. and Bolles, R.C. (1981). Random Sample Consensus : A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Communications of the ACM. 24 (6). Pp.381-395.
- Furukawa, Y. Clustering Views for Multi-view Stereo (CMVS). [Online].
Available : http://www.di.ens.fr/cmvs/. 2012. - Furukawa, Y. and Ponce, J. (2010). Accurate, Dense, and Robust Multiview Stereopsis. IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI’10). 32 (8): 1362-1376.
- Lowe, D.G. (2004). Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision. 60 (2): 91-110.
- Wu, C. SiftGPU: A GPU Implementation of Scale Invariant Feature Transform (SIFT). [Online]. Available: http://www.cs.unc.edu/~ccwu/siftgpu/. 2012.
- Wu, C. VisualSFM : A Visual Structure from Motion System. [Online].
Available: http://homes.cs.washington.edu/~ccwu/vsfm/. 2012. - Wu, C., Agarwal, S., Curless, B. and Seitz, S.M. (2011). Multicore bundle adjustment. IEEE Conference on Computer Vision and Pattern Recognition (CVPR’11). Pp.3057-3064.
- Zhang, Z. (2000). A Flexible New Technique for Camera Calibration. IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI’00). 22 (11): 1330-1334.