การจัดการกับข้อมูลรูปแปลงที่ดินที่ซ้อนทับกันด้วยโปรแกรม QGIS

Chingchai Hoomhong
MAPEDIA BLOG
Published in
3 min readMay 11, 2024

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

ข้อมูลตัวอย่างเท่านั้น

ซึ่งจากภาพด้านบนนี้ จะเห็นว่าผมได้ลองทำข้อมูลตัวอย่างมีทั้ง 3 รูปแบบ โดยที่มีข้อมูลรูปแปลงซ้อนทับกันแบบสนิท กับมีการซ้อนทับแบบเหลื่อมๆ กัน และก็มีแบบที่ไม่มีการซ้อนทับกันของข้อมูลเลย โดยวิธีการง่ายๆ โดยการตรวจสอบคร่าวๆ แบบเร็วๆ เลยเราอาจจะใช้วิธีที่ปรับให้ข้อมูลแผนที่หรือข้อมูลรูปแปลงเรานั้นมีความโปร่งแสงสักหน่อย (ตัวอย่างผมประมาณ 35 %) เราก็จะเห็นข้อมูลรูปแปลงที่ซ้อนทับกันละครับ ทีนี้แหละเราจะมาทำการลบข้อมูลที่ซ้อนทับกัน

Layer Opacity ปรับความโปร่งแสงให้กับข้อมูล

1.การใช้เครื่องมือ Topology Checker

1.1 เริ่มต้นเลยเราจะต้องตรวจสอบเครื่องนี้ก่อนว่าในเครื่องเรามีแล้วหรือยัง โดยไปที่เมนู Plugin > Manage and Install Plugins… หลังจากนั้นให้ค้นหาคำว่า Topology Checker ดู ถ้าติดตั้งแล้วจะเป็นเหมือนดังภาพด้านล่าง

Plugin Topology Checker

1.2 จากนั้นเราจะเริ่มทำการตรวจสอบข้อมูลรูปแปลงที่มันซ้อนทับกัน โดยไปที่เมนู Vector > Topology Checker แล้วทำการตั้งค่า Topology Rules โดยคลิกที่ปุ่ม Setting ดังภาพด้านล่างนี้

1.3 จากนั้นเราจะทำการตั้งค่า Rules ดังน้ี

เลือกอยู่ 2 Rules ได้แก่ must not have duplicates และ must not overlap ความหมายคือ ข้อมูลจะต้องไม่มีการซ้ำกัน และข้อมูลจะต้องไม่มีการซ้อนทับกัน ครับ

1.4 คลิกที่ปุ่ม Validate All จะเห็นว่ามีรายการ Error ที่เกิดจากข้อมูลซ้อนทับกันอยู่

1.5 ให้เราคลิกที่แถว Error แต่ละอันเพื่อซูมเข้าไปแก้ไข โดยสามารถติกถูกออกที่ Show errors on the canvas

1.6 ทำการคลิก Toggle Editing ที่ชั้นข้อมูลเรา เพื่อลบข้อมูลที่ซ้อนทับกัน โดยการคลิกเลือกข้อมูลที่ซ้อนทับกันและคลิก Delete Selected

1.7 เมื่อเราคลิก Validate All อีกครั้ง ข้อมูลตรงบริเวณที่เราลบทิ้งไป ก็จะไม่พบปัญหาที่เป้นการซ้อนทับข้อมูลแล้ว ดังภาพด้านล่าง

2.การใช้เครื่องมือ Delete duplicate geometry

2.1 ไปที่เมนู Processing > Toolbox จากนั้นให้ค้นหาคำว่า delete duplicate geometries ให้คลิกขึ้นมาได้เลย

2.2 ในช่อง Input ให้เราเลือกข้อมูล parcel_error และในช่อง Cleaned ให้ทำการเลือก Save to file เพื่อเลือกโฟเดอร์และตั้งชื่อไฟล์ใหม่ จากนั้นคลิก Run

2.3 จะเห็นว่าข้อมูลที่ซ้อนทับกันจะถูกลบให้ทั้งหมดเลย ดังนั้นข้อมูลจะเหลือแค่ feature เดียวหรือ record เดียวเท่านั้น ดังภาพ

3.การใช้เครื่องมือ Check Geometries

เป็นอีกเครื่องมือนึงที่สามารถตรวจสอบและจัดการ Clean ข้อมูลที่ Error ได้พร้อมเลย โดยเราไปที่เมนู Vector > Check Geometries (แต่ถ้าใครที่ยังไม่มีจะต้องไปตรวจสอบที่เมนู Plugins > Manage and Install Plugins… นะครับ)

3.1 ในแถบ Setup ให้เราเลือกชั้นข้อมูลที่ต้องการตรวจสอบ และในส่วนเมนูย่อยที่ชื่อว่า Topology check ให้เราติกเลือก Check for duplicates

3.2 เลื่อนเมาส์ลงมานิดนึง ให้เราทำการเลือกไฟล์ที่เก็บข้อมูลสำหรับการตรวจสอบ Error โดยผมเลือกเก็บเป็นแบบ Geopackage และจากนั้นให้เราคลิกปุ่ม Run

3.3 ทีนี้เราจะเห็นว่ามีแถบ Result แสดงขึ้นมาพร้อมกับมีการไฮไลท์ข้อมูลที่ Error อยู่ทำให้เราสามารถไล่ดูได้เลยว่าตรงบริเวณไหนบ้าง หรือจะคลิกที่ตารางทุก Record เลยก็ได้ครับ

3.4 จากนั้นเราจะมรทำการตั้งค่าเพื่อลบข้อมูลที่ Error ออกไป โดยให้คลิกที่ Error resolution settings จะมีหน้าต่างแสดงขึ้นมา ให้ทำการเลือก Remove duplicates และ Delete feature จากนั้นคลิก OK

3.5 ให้เราเลือกทุกแถว(Record) และคลิกเลือกที่ Fix selected error using default resolution จากนั้นคลิกที่ปุ่ม Yes

3.6 จะเห็นว่าเราได้ทำการ Cleaned ข้อมูลเรียบร้อยแล้ว และแต่ละแถวก็จะเป็นสีเขียว ดังภาพ

3.7 ถ้าต้องการที่จะส่งออกเป็นข้อมูลใหม่ ก็สามารถคลิกขวาที่ชั้นข้อมูล แล้วเลือก Export > Save Features As… ได้เลยครับ

เป็นไงมั่งครับ 3 วิธีที่จะช่วยให้ท่าน Clean ข้อมูลที่ซ้อนทับกันได้ ซึ่งจริงๆ แล้วก็ยังมีอีกหลายๆ วิธีการครับ ที่สามารถนำมาประยุกต์ใช้ได้ เดี๋ยวผมไว้เขียนต่อ Part ที่ 2 อีกทีนะครับ ขอบคุณทุกๆ ท่านที่ติดตามครับผม

--

--