Cloud Compare โปรแกรมจัดการ Point Cloud ฟรี!!

Cloud Compare โปรแกรมจัดการ Point Cloud ฟรี!!

Lidar Scanner หรือเครื่อสแกนพื้นที่ไม่ว่าจะเป็น Galois M2, Eagle Max LiDAR, Slam 100 และ Slam 200E ล้วนเครื่องสแกนพื้นที่ ที่มีประสิทธิภาพสูงในงานของตัวเอง สามารถเก็บข้อมูล 3 มิติ ของวัตถุ
สิ่งของ พื้นที่ ที่ต้องการได้อย่างรวดเร็วแม่นยำ สำหรับผู้ที่ใช้งานเครื่องมือสแกนพื้นที่เหล่านี้ ก็น่าจะรู้เกี่ยวกับกระบวนการทำงานอยู่แล้วใช่มั้ยครับ แต่สำหรับมือใหม่ที่กำลังสนใจ หรือเริ่มศึกษาเกี่ยวกับ
การการสแกนพื้นที่ ที่อาจจะเข้าใจว่าสแกนข้อมูลมาแล้วจบเลยสามารถดึงไปใช้งานต่างๆได้เลย วันนี้เราอยากจะชวนไปทำความเข้าใจในส่วนของ Post-processing หรือการทำงานกับข้อมูลที่เก็บมาได้
ที่เรียกว่า “Point Cloud” นั่นเอง

Point Cloud คืออะไร และมาจากไหนได้บ้าง
Point Cloud นั้นคือชุดข้อมูล 3 มิติของวัตถุ สิ่งของ คน หรือพื้นที่ ในรูปแบบดิจิทัลแสดงผลในคอมพิวเตอร์ มีลักษณะเป็นจุดเล็กๆที่มีข้อมูลตำแหน่งในตัว แต่ละจุดลอยอยู่ในพื้นที่ 3มิติ (3D Space)
ในตำแหน่งที่ต่างกันคล้ายกลุ่มเมฆ (จึงถูกเรียกว่า Point Cloud ) เมื่อดูรวมๆ เราก็จะเห็นเป็นรูปทรง 3 มิติแต่จะเป็นอะไรนั้นขึ้นอยู่กับว่าเราเก็บข้อมูล Point Cloud ของอะไรมา วิธีการเก็บข้อมูล
Point Cloud มานั้นมีหลายวิธี เช่น การสแกนด้วย LiDAR Scanner การแปลงภาพถ่ายเป็น 3D (Photogrammetry) หรือแม้แต่กล้องมือถือที่วัดความลึกได้ในรุ่นใหม่ๆ ก็ล้วนเก็บ Point Cloud
ได้เหมือนครับ แต่หลักๆเลยถ้าพูดถึง Point Cloud ก็มักจะเป็นการสแกนวัตถุหรือพื้นที่ขนาดใหญ่เป็นหลักมากกว่า

เอา Point Cloud ไปทำอะไรได้บ้าง
ซึ่งเป้าหมายในการเก็บข้อมูลหรือการสแกน Point Cloud นั้นก็มีวัตถุประสงค์ที่ต่างกันในแต่ละสายงาน เช่น การสแกนอาคารเพื่อ Revere Engineering การสแกนห้องเพื่อทำ built in furniture
การสแกนคนเพื่อพิมพ์โมเดลสเหมือนจริง เป็นต้น แต่การจะนำ Point Cloud ไปใช้ในแต่ละงานได้นั้น จะต้องผ่านโปรแกรมสำหรับจัดการ Point Cloud ซะก่อนเพราะว่า Point Cloud ที่ได้จาก
เครื่องสแกนต่างๆจะยังเป็นข้อมูลดิบ จะมีขนาดใหญ่มาก บางไฟล์มี Point Cloud หลายล้านจุด (อาจมีขนาดตั้งแต่ 10 – 50GB ต่ไฟล์เลย) ยากต่อการนำไปทำงานต่อ จะต้องผ่านการจัดการ
ให้เหมาะสำหรับการไปทำงานต่อในแต่ละงานก่อน เช่น ตัดแบ่งให้ไฟล์เบาลงเพื่อนำไป Reverse Engineering หรือการแปลง Point Cloud เป็น Mesh เพื่อนำไปพิมพ์โมเดล เป็นต้น

ข้อจำกัดของโปรแกรมจัดการ Point Cloud
แน่นอนว่าแต่ละค่ายของเครื่องสแกนพื้นที่ก็มักมีโปรแกรมจัดการ Point Cloud ของตัวเอง (แต่บางเจ้าก็มีเฉพาะโปรแกรมสำหรับ Process & Export ) แต่ปัญหาก็คือโปรแกรมสำหรับจัดการ Point Cloud
ส่วนใหญ่มักมีขนาดใหญ่ และความต้องการของระบบสูง ( System Requirement ) บางโปรแกรมล็อคสเปกมาด้วยว่าหากระดับ Hardware ไม่สูงเท่าที่โปรแกรมต้องการ ก็ไม่สามารถติดตั้งได้ หรือต้องใช้
คอมพิวเตอร์ระดับโปรในการทำงานนั่นเอง ทำให้การนำไฟล์ Point Cloud ไปนำเสนอเวลาประชุม หรือพรีเซนต์ลูกค้า นอกสถานที่ไม่ใช่เรื่องง่าย นอกจากนั้นโปรแกรมจัดการ Point Cloud หลายตัวก็มีราคา
ค่าตัวสูงเอาเรื่อง เพราะต้องออกแบบมาให้สามารถทำงานกับข้อมูลขนาดใหญ่แต่ต้องยังคงทำงานได้ลื่นไหล

Cloud Compare ซอฟแวร์ฟรี!! ที่ประสิทธิภาพไม่ธรรมดา
หลายคนที่ใช้เครื่องสแกนที่แน่นอนว่ามีราคาสูงอยู่แล้ว ก็ไม่อยากจะเสียเงินเพิ่มในส่วนของการซื้อซอฟแวร์ ซึ่งบางคนต้องการทำงานแค่พื้นฐานก็คิดว่าไม่คุ้มที่จะซื้อซอฟแวร์ราคาแพง วันนี้ 3DD เรามี
อีกหนึ่งซอฟแวร์ทางเลือกที่จะมานำสเนอนั่นก็คือ ” Cloud Compare “ โปรแกรมสำหรับจัดการ Point Cloud ประสิทธิภาพที่ไม่ธรรมดา ที่สามารถใช้งานได้ฟรี!! ซึ่งมีฟังก์ชันพื้นฐานที่จำเป็นต่อการจัดการ
Point Cloud หลายอย่าง เช่น การตัดแบ่ง-ลบ ส่วนที่ไม่ต้องการเพื่อทำให้ไฟล์สแกนดูเรียบร้อยและเบาขึ้น การหมุนปรับจัดตำแหน่งให้ตรง การวัดขนาดและปริมาตร การเซ็ทค่าสีการแสดงผล Point Cloud
แบบต่างๆ

ข้อดีอีกอย่าที่นอกจากจะฟรีแล้ว Cloud Compare ยังมี Data Size โปรแกรมที่ค่อนข้างเบา สามารถใช้งานอย่างยืดหยุ่นและใช้ได้ในหลายสถานการณ์ เช่น ผู้ที่ทำ Space Scan Services สำหรับตัดแต่งไฟล์
ให้เรียบร้อยหรือลบส่วนที่ไม่ต้องการออก ก่อนส่งให้ลูกค้ า หรือฝั่งลูกค้าเองที่ต้องการเปิดไฟล์สแกนพื้นที่สำหรับนำเสนอต่อในที่ประชุม นักเรียนนักศึกษาที่ดาวน์โหลดไฟล์สแกนพื้นที่มาสำหรับศึกษา
ไม่รอช้าไปดูกันเลยครับว่า Cloud Compare โปรแกรมฟรีตัวนี้จะนำไปช่วยงานคุณยังไงได้บ้าง

หน้าต่างโปรแกรมและการควมคุมพื้นฐาน
ก่อนอื่นเรามาทำความรู้จักหน้าตาโปรแกรมและ Panel ต่างๆกันก่อน

  • 1. Viewport : แสดงผลไฟล์ Point Cloud ที่นำเข้ามาทำงาน
  • 2.Toolbar : เครื่องมือหลักที่ใช้จัดการ Point Cloud
  • 3. Menubar : เมนูต่างๆของโปรแกรม
  • 4.Viewing Tools : เมนูสำหรับควบคุมมุมมอง
  • 5.DB Tree&Properties : เมนูสำหรับจัดการไฟล์ Point Cloud ที่นำเข้ามา

การควบคุม Viewport พื้นฐาน
LMB+Drag : Rotate                       RMB+Drag : Pan                       Scroll : Zoom+-

แสดงผลตามความสูง (Elevation Coloring)
สำหรับใครที่ใช้เครื่อง Lidar Scanner อยู่แล้วอาจคิดว่าในซอฟแวร์ประมวลผลของแต่ละเองก็มีฟังก์ชันนี้อยู่แล้วอาจคิดว่าไม่จำเป็น แต่เดี๋ยวก่อนครับสีที่แสดงผลตามความสูงสำหรับ Point Cloud พื้นที่
เราสแกนมานั้น ที่จริงแล้วจะแสดงให้เห็นเฉพาะในโปรแกรมที่ใช้ประมวลผลสำหรับเครื่องสแกนแบรนด์นั้นๆเท่านั้น แต่เมื่อเรา Export ออกไปการแสดงผลสีตามความสูงที่เราต้องการนั้นไม่ได้ติดไปด้วย
ลองคิดดูหากต้องนำไฟล์สแกนไปนำเสนออย่างเช่น งานสแกนภูมิประเทศต่างๆที่ต้องใช้การแสดงผลสีตามความสูงเป็นหลัก เราอาจต้องเปิดในโปรปรแกรมหลักที่ใช้ประมวลผลมา ซึ่งใช้คอมพิวเตอร์
พกพาที่สเปคสูงถึงจะนำเสนอได้

แต่กับ Cloud Compare เราจะทำงานง่ายขึ้นมากๆ เพราะนอกจาก เราจะสามารถฝังสีที่แสดงผลตามความสูงไปกับไฟล์ Point Cloud ได้แล้ว ในการนำเสนอด้วยโปรแกรม Cloud Compare ยังมีขนาด
เบาด้วย ( 430 MB) อีกทั้งยังมีโปรแกรมสำหรับดูโดยเฉพาะอย่าง ccViewer ที่มีขนาดเพียง 50 MB อีกด้วยและแน่นนอนว่าก็ฟรี! เหมือนกัน ส่วนตัวผมรู้สึกว่าโปรแกรม Cloud Compare กลับทำงาน
ได้เร็วกว่าโปรแกรมจัดการ Point Cloud บางโปรแกรมที่เสียเงินอีก

วิธีการทำก็ไม่ยาก เมื่อเปิดไฟล์ Point Cloud เข้ามาแล้ว (File>Open) เลือกไฟล์ที่เราต้องการจากนั้นไปที่ Edit >Colors>Clear เพื่อลบสีเดิมที่ติดมากับ Point Cloud ออกก่อน แล้วเราจะเซ็ทสีตามความสูง
โดยไปที่ Edit >Colors>Hight Ramp เลือกเป็น Default และ Direction เป็น Z (ทิศทางบน-ล่าง) ก็จะได้ผลลัพธ์แบบนี้ ซึ่งถ้าใครอยากลองปรับพารามิเตอร์อื่นใน Hight Ramp ก็ลองปรับเล่นได้เลยนะครับ
และสีที่เราสร้างนี้สามารถ Export ฝังไปกับ Point Cloud ได้เลยด้วย

ปรับสี Point Cloud
ฟังก์ชันนี้ดูเผินๆเหมือนไม่มีอะไร แต่จริงๆแล้วเป็นฟังก์ชันที่โปรแกรม Process Point Cloud ส่วนใหญ่ไม่มี ฟังก์ชันนี้โดยปกติแล้วเราอาจไม่ต้องใช้ แต่หากเกิดความผิดพลาดในการเก็บข้อมูล
การสแกนพื้นที่เช่นการปรับแสงของกล้องผิด ทำให้สีของ Point Cloud สว่างหรือมืดเกินไป ก็สามารถใช้ฟังก์ชันนี้ช่วยได้ (ไม่มากก็น้อย)

โดยไปที่ Edit>Colors>Levels จะมีพารามิเตอร์คล้ายกับเวลาเราปรับแสงใน Photoshop หรือโปรแกรมแต่งภาพอื่นๆ โดยจะแบ่งเป็น Input Levels และ Output levels ช่องฝั่งซ้ายหรือ 0
คือความมืด(Shadow) ฝั่งขวา 255 คือความสว่าง (Highlight)

Input Levels : ปรับค่าความสว่างหลักสว่างขึ้น – มืดลง
0 : ถ้าปรับเพิ่มค่านี้เพิ่มจะเพิ่ม Shadow→มืดลง
255 : ถ้าลดค่านี้จะเพิ่ม Hightlight→สว่างขึ้น

Output Levels : การจำกัดระดับความสว่างไม่ให้สว่างหรือมืดเกินกว่าระดับที่ตั้งไว้
0 : ถ้าเพิ่มค่านี้ ระดับความมืดทั้งหมดในภาพจะสว่างขึ้นและไม่สามารถดำสุดได้ แม้ลดแสงใน Input Levels
255 : ถ้าลดค่านี้ระดับความสว่างทั้งหมดในภาพจะลดลงและไม่สามารถสว่างสุดได้แม้เพิ่มแสงใน Input Levels


**Tip โปรแกรมนี้ไม่มี Undo ได้แนะนำว่าให้ Clone ไฟล์ขึ้นมาใหม่อีกอันเพื่อจะได้รักษาไฟล์ต้นฉบับหลักไว้ (เครื่องมือ Clone The Selection รูปแกะ 2 ตัวบนสายรุ้ง) แนะนำให้ทำแบบนี้ก่อนการใช้เครื่องมือ
อื่นๆด้วย

ตัดแต่ง Point Cloud ส่วนเกิน
ฟังก์ชันน่าจะเป็นส่วนที่จำเป็นที่หลายคนต้องการใช้มากที่สุด โดยเฉพาะคนที่ทำ Scan Service ที่ส่งไฟล์ Point Cloud ให้ลูกค้าโดยตรงแต่จำเป็นต้องตัดแต่งส่วนเกินของ Point Cloud ออกก่อน
และไม่ต้องการซื้อโปรแกรมจัดการ Point Cloud เพิ่มขึ้น ผมว่าโปรแกรม Cloud Compare และฟังก์ชั่นสำหรับตัดแต่ง Point Cloud นี้น่าจะตอบโจทย์ได้ดีเลย

จะเห็นว่าการสแกนติดสิ่งแวดล้อมที่ไม่ต้องการ บริเวณนอกอาคารมาหลายจุด

วิธีการใช้งานก็ง่ายมาก เลือก Point Cloud ที่เราต้องการตัดแต่งที่ DB Tree ด้านซ้าย จะโชว์กรอบสีเหลืองที่ Point Cloud ที่เลือก จากนั้นเลือกเครื่องมือ Segment รูปกรรไกร ด้านบน Toolbarพารามิเตอร์
ควบคุมเครื่องมือจะอยู่มุมขวาบน จากนั้นเลือกรูปแบบการเลือกพื้นที่ตัด มี 2 แบบคือสี่เหลี่ยม(Rectangle Selection) โดยเลือกโดยคลิกซ้ายลากครอบและปล่อย

ส่วนแบบคลิกเลือก และคลิกทีละจุดเพื่อเลือกพื้นที่(Polygonal Selection) โดยคลิกซ้ายทีละจุด→คลิกขวาเมื่อต้องการสิ้นสุด เลือกใช้ตามความเหมาะสม

 

เลือกพื้นที่ ที่ต้องการได้เลย การลบสามารถทำได้ 2 แบบคือ เก็บส่วนที่เลือกไว้ (Segment In) และลบส่วนที่เลือกออก (Segment Out) ซึ่งทั้งหมดเป็นการซ่อนไว้ชั่วคราวเท่านั้นยังไม่ถูก Confirm

เมื่อลบครบทุกส่วนที่ต้องการแล้ว การ Confirm ทำได้ 2 แบบ คือ ลบทิ้งเลยโดยกดไอคอนถังขยะ หรือ แยกส่วนที่ลบไปเป็น Point Cloud อีกกลุ่มแทน(Split) โดยกดไอคอนติ้กถูก ซึ่งสามารถ ลบ, ซ่อน,
หรือนำกลับมารวม ทีหลังได้

ผลลัพธ์หลังลบส่วนที่ไม่ต้องการ

**Tip ทุกครั้งที่เลือกลบหากคลิกลากต่อไปจะเป็นการหมุนมุมกล้องแทน หากไม่ต้องการหมุนกด Pause เพื่อเลือกส่วนถัดไปได้เลย

การวัดระยะ
แม้จะไม่ใช่โปรแกรมสำหรับ Revers Engineer โดยตรงแต่ก็มีฟังก์ชันวัดระยะด้วย ซึ่งมีประโยช์อย่างยิ่งในการเก็บข้อมูลหรือศึกษาเชิงวิศวกรรม สถาบันต่างๆที่ใช้ Lidar Scanner เก็บข้อมูล Point Cloud
หรือนักศึกษาสาขาที่เกี่ยวข้องก็สามารถใช้งานการวัดไฟล์สแกนพื้นที่ได้โดยไม่ต้องซื้อโปรแกรมแพงๆ โดยใช้เครื่องมือ Point Picking รูปเป้าเล็งบนแถบ Toolbar วิธีการใช้งานง่ายมากเพียงเลือกโหมด
Select 2 Points คลิกจุดเริ่ม และจุดสิ้นสุดของบริเวณที่ต้องการวัดระยะ ก็จะมีหน้าต่างข้อมูลขึ้นโชว์ให้ดูแล้ว


นอกจากนั้นยังใช้โหมด Select 3 Points เพื่อเลือก 3 จุดสำหรับวัดพื้นที่ 3 เหลี่ยมและมุมได้อีกด้วย

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

เห็นมั้ยครับว่ามีประโยชน์มากมายสำหรับเจ้า Cloud Compare โปรแกรมสำหรับจัดการ Point Cloud ตัวนี้ สามารถจัดการ Point Cloud เบื้องต้น อย่างการตัดแต่ง การวัดระยะ วัดปริมาตรได้ไม่ยากเลย
ใช่มั้ยครับ ครั้งหน้าผมจะมาแสดงเคสงานตัวอย่างการใช้ Cloud Compare ในด้านการแก้ไขไฟล์สแกนจริงสถาณการณ์จริงให้ดูกันนะครับ