Độ chính xác phối hợp của QGIS


11

Tại vị trí thập phân (xth) của các giá trị tọa độ QGIS xác định bất kỳ tập hợp điểm nào là trùng lặp?

Tôi đã suy nghĩ xử lý QGIS ~ vị trí thập phân thứ 15; nhưng đó chỉ là giới hạn bởi vì tôi chủ yếu làm việc trên Shapefiles.

nhập mô tả hình ảnh ở đây

Tuy nhiên, giới hạn không áp dụng khi tôi chọn một nguồn dữ liệu khác, như lớp cào tạm thời.

nhập mô tả hình ảnh ở đây

Sử dụng dữ liệu giả như bên dưới, tôi đã thực hiện một thử nghiệm nhanh bằng hai công cụ, để tìm giá trị nhỏ nhất mà chúng có thể xác định sự khác biệt của tọa độ:

  • Xử lý địa lý của QGIS: Delete duplicate geometries
  • Plugin MMQGIS: Delete Duplicate Geometries

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Đầu ra của QGIS Delete duplicate geometriesgiống như dữ liệu đầu vào ở trên (tất cả 20 bản ghi đã được lưu giữ), vì vậy điều đó có thể có nghĩa là QGIS nghĩ rằng chúng đều khác biệt. Có giới hạn này vượt quá 1e-29 (hoặc 1e-30) được thấy trong thử nghiệm nhỏ này không?

Cũng như so sánh, MMQGIS Delete Duplicate Geometriessản xuất dưới đây. Có vẻ như MMQGIS đặt vị trí thập phân thứ 16 hoặc 17 làm giới hạn.

nhập mô tả hình ảnh ở đây


[Biên tập]

Tôi sợ rằng tôi đã không rõ ràng phần trung tâm của câu hỏi của tôi là gì. Mục đích của tôi là tìm hiểu mối quan hệ giữa các giá trị tọa độ và trùng lặp / chồng chéo, đó là như đã nêu trong đoạn đầu tiên của câu hỏi của tôi. Hy vọng loại kiến ​​thức này có thể giúp chúng ta dễ dàng kiểm soát các tính năng chồng chéo bằng cách điều chỉnh các biểu thức máy tính trường.

Tuy nhiên, vấn đề cơ bản mà tôi đã cố gắng tập trung là các vị trí thập phân mà QGIS nhận ra các điểm (nút) vì sự chồng chéo dường như thay đổi, tùy thuộc vào nguồn dữ liệu.

Nếu chúng tôi sử dụng Shapefiles cho lớp của mình, QGIS xử lý ~ số thập phân thứ 15 và chênh lệch nhỏ hơn (ở vị trí 16 hoặc 17) không được nhận ra ... MMQGIS cũng bị ảnh hưởng bởi giới hạn này (đối với mắt tôi). Nếu chúng ta tạo một lớp cào theo thời gian hoặc các lớp DB thì giới hạn này vượt quá 30-ish? Sự thay đổi trong hành vi này khiến tôi tự hỏi.


2
Với ArcGis khi tạo một lớp đối tượng trong cơ sở dữ liệu, bạn có thể chỉ định chênh lệch tối thiểu giữa hai tọa độ được coi là khác nhau (giá trị mặc định dường như là 0,001 m đối với tọa độ được chiếu theo mét và 0,000000008983153 độ đối với WGS84). Tôi cũng muốn biết những giá trị này trong qgis là gì và liệu bạn có thể sửa đổi chúng không.
JR

Câu trả lời:


2

Công cụ xóa hình học trùng lặp của QGIS (trong Thuật toán địa lý của VectorIS 2.18, Công cụ chung về vectơ) là một tập lệnh Python hoạt động trên các đối tượng hình học được xuất / hiển thị bởi lớp Python của QGIS. Và bên dưới lớp này là lớp GEOS.

Toán tử đẳng thức hình học của lớp GEO chấp nhận tham số dung sai (theo đơn vị khoảng cách bản đồ) khi so sánh hai hình học. Thật không may, tham số dung sai này không được hiển thị bởi lớp Python của QGIS - do đó đối với Xóa Hình học trùng lặp , hai hình học được coi là bằng nhau khi và chỉ khi tất cả các giá trị XY của chúng hoàn toàn bằng nhau. Ví dụ: POINT (1.000000 1.000000) không bằng POINT (1.00000001 1.00000001).


Cảm ơn bạn đã xem xét thuật toán địa lý của QGIS! Từ những phát hiện của bạn, nếu các công cụ trình bao bọc (như tập lệnh Python) không có quyền truy cập vào tham số dung sai, điều đó có nghĩa là dung sai chỉ phụ thuộc vào loại dữ liệu? (Nói cách khác, đó có phải là lý do tại sao dường như dung sai được kiểm soát bởi nguồn dữ liệu chúng ta chọn không?)
Kazuhito

Đúng. Tại thời điểm này, bạn phải tự cắt hoặc làm tròn các giá trị X và Y trước khi thực hiện phát hiện trùng lặp. Điều này rất đơn giản đối với POINT (mặc dù nó vẫn bao gồm một số bước chuyển đổi qua lại) nhưng các hình học khác sẽ yêu cầu lập trình (đáng kể).
Ralph Tee

Tôi hiểu rồi. Cảm ơn rất nhiều để làm rõ hơn. Bây giờ có một chút đáng tiếc, nhưng hy vọng các phiên bản QGIS trong tương lai sẽ cho chúng tôi (ý tôi là, những người không lập trình) có thêm chỗ để kiểm soát.
Kazuhito

1

Một bài đọc thú vị về chủ đề này là câu hỏi thường gặp này: Đo độ chính xác của vĩ độ và kinh độ?

Tôi không biết các công cụ được thiết kế để xác định các bản sao, nhưng từ quan điểm tính toán, vấn đề chỉ là cách các con số được xử lý bởi kiến ​​trúc lưu trữ của các thực thể và phần mềm xử lý chúng. Hai số khác nhau sẽ xuất ra FLASEmiễn là ngôn ngữ đại diện cho các số theo cách tạo ra một chút khác biệt nếu kiểm tra là nếu chúng không bằng nhau. Trong nhiều trường hợp, mối quan tâm của trùng lặp là tìm ra các giá trị giống nhau, để tìm ra một loại lỗi chính tả trong quá trình số hóa, chứ không phải gần như thế nào.

Trong các bối cảnh khác, mối quan tâm của các bản sao là xác định các đối tượng đủ gần và về mặt thực tế chúng khớp với nhau.

Giả sử QGIS sử dụng Python làm ngôn ngữ chính, câu hỏi của bạn có thể được gửi đến các tài liệu Python và bạn sẽ có một cách đọc thú vị về cách số học cơ sở 2 khác với các sách toán học cơ bản của chúng tôi: Python: Số học dấu phẩy động: Các vấn đề và giới hạn


Cảm ơn @Marco, nhưng điểm tôi muốn tập trung vào câu hỏi của mình là độ chính xác (do đó liên quan trực tiếp đến các vấn đề trùng lặp / chồng chéo) dường như được kiểm soát bởi nguồn dữ liệu của nó (shapefile hoặc db như spatialite, ...) Xin lỗi nó có thể không đủ rõ ràng Tôi sẽ chỉnh sửa câu hỏi để làm rõ.
Kazuhito

0

Tôi là một nhà khảo sát đất đai đã đăng ký ở một số tiểu bang. Những gì bạn thấy với các hình chiếu khác nhau là các đường thẳng / khoảng cách đến từ các lưới Lambert hoặc Mercator. Nó giống như đặt một hình nón trên trái đất, sau đó phép đo bạn đang thực hiện được đặt lên các đường bán kính phía trên độ cong của trái đất. Transverse Mercator là một hình chiếu hình trụ cho các quốc gia Đông Tây dài hơn như Tennessee. Sử dụng các hệ thống GPS cấp khảo sát, chúng tôi thường so sánh thông tin với các dự báo thế giới và thậm chí cả các dự báo trạng thái khi chúng nằm trên không. tất cả các phép đo được dựa trên các tham số được xây dựng trong các tính toán tại mỗi điểm được đo. Sử dụng thiết bị Lớp GIS có tham số mét phụ rất phù hợp trong một hoặc hai dặm. Sau khoảng 6 chữ số thập phân trong các phép đo góc là mức tối đa bạn có thể mong đợi độ chính xác. Cho dù bạn GPS bao nhiêu lần một điểm với độ chính xác một mét, bạn sẽ không bao giờ có được "Trung bình" hay thậm chí là "Chế độ" phù hợp với các phép đo độ chính xác cao. Tóm lại, khi tôi làm việc với thông tin trên không hoặc Vệ tinh, tôi không để máy đo làm phiền tôi. Ồ, có những tính toán hình cầu cho giấc ngủ ngắn của các phép đo trái đất bằng cách sử dụng các góc theta tính toán góc nghiêng trong trường so với góc tính toán tại điểm đó đến tâm trái đất. Không có gì là một phép đo thực sự. Để chứng minh điều đó cho chúng tôi khi tôi bắt đầu khảo sát vào năm 1975, ông chủ của chúng tôi đã đặt hai chiếc đinh trên con đường đồi cách nhau một phần tư dặm và chúng tôi phải xâu chuỗi nó và bắn khoảng cách mỗi ngày trong một tháng. Với hiệu chỉnh khí quyển trên dây chuyền và máy đo khoảng cách HP, chúng tôi chỉ khớp khoảng cách ban đầu 3 lần với máy đo khoảng cách và 1 lần với dây chuyền. Một ví dụ rất khiêm tốn và ở bên tôi suốt cả năm nay. Tôi đã bị la ó tại một hội nghị về GIS một lần khi họ tuyên bố tôi là một nhà khảo sát đất đai (anh ấy) và tôi đã không nói một lời nào nhưng tôi biết khi nào nên đội chiếc mũ của mình và khi nào đội chiếc mũ GIS của tôi.


Tôi thấy điểm của bạn. Trong thực tế, tôi chưa bao giờ thấy mình sải bước với độ chính xác trong thế giới thực. QGIS đang nói với tôi ngay cả ở quy mô nano hay quy mô pico tôi đang đứng ở các vị trí khác nhau, điều đó cũng tốt. Chỉ có tôi không thể tìm ra số thập phân mà nó yêu cầu tôi đặt vào để nói hai điểm đã cho là trùng lặp. Nhân tiện, cảm ơn rất nhiều vì đã chia sẻ câu chuyện của những năm 1970, tôi chưa bao giờ nghe về giai đoạn tiên phong như vậy về lập bản đồ và GIS, đặc biệt là những ngày trước GPS. Ồ
Kazuhito
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.