Chuyển đổi Proj.4 / GDAL / QGIS giữa các CRS được xác định giống nhau


8

Tôi đang giúp đảm bảo rằng phần mềm nguồn mở có thể xử lý dữ liệu mới của Úc một cách phù hợp, xem trang web của ICSM để biết chi tiết về dự án GDA2020.

Bây giờ, QGIS đã có các định nghĩa về GDA2020, thông qua GDAL, tôi hiểu.

Một ví dụ hệ thống tham chiếu tọa độ GDA2020 là:

+proj=utm +zone=55 +south +ellps=GRS80 +units=m +no_defs

Và nếu bạn nhìn vào CRS GDA94, nó được định nghĩa như sau:

+proj=utm +zone=55 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs

Như bạn có thể thấy, những điều này rất giống nhau.

Bây giờ, hai CRS được xác định giống hệt nhau, nhưng, có sự thay đổi tọa độ trong GDA94 sang GDA2020 khoảng 1,5 m về phía đông bắc. (Có tệp dịch chuyển lưới ở định dạng NTv2 sẽ sớm sẵn sàng cho phép chuyển đổi chính xác, nhưng đó không phải là câu hỏi này.)

Nhưng, nếu bạn chuyển đổi giữa GDA94 và GDA2020 ngay bây giờ , bằng cách sử dụng QGIS, sẽ không có thay đổi về tọa độ. Nó về cơ bản chỉ là nhãn nó khác nhau.

Có nên thực hiện chuyển đổi 7 tham số đơn giản trong Proj.4 hoặc các công cụ nguồn mở khác là chuyển đổi mặc định (mặc dù, không hoàn hảo) giữa GDA94 và GDA2020?

Hay chỉ đơn giản là trường hợp các công cụ sẽ luôn không thay đổi?

Làm thế nào điều này nên được xử lý?

(Và tôi chỉ muốn lưu ý một lần nữa rằng việc chuyển đổi bằng cách sử dụng lưới là lý tưởng và điều đó được xử lý theo một số cách bao gồm plugin QGIS này .)


1
Bạn có nghĩ nên giữ lại cho đến khi chuyển đổi NTv2 có sẵn, như chuyển đổi từ AGD66 sang GDA94 (nhưng nhỏ hơn), nếu bạn sẽ làm điều gì đó đúng hoặc không ... nếu không bạn sẽ kết thúc lên với tọa độ được xác định lại ở vị trí sai, không nhiều nhưng vẫn sai. Xem xét GDA2020 không phải là dữ liệu tĩnh chắc chắn sẽ có một ngày được xác định trong CRS khi áp dụng chuyển đổi tọa độ.
Michael Promotionson

Chính quyền Úc đã cung cấp những thông số đó chưa? Nếu họ có dự án Proj4 có thể bao gồm chúng dưới dạng + tham số84 nhưng tham số phải có trạng thái chính thức. Người dùng có thể tự nhiên sử dụng + Towks84 như họ muốn.
dùng49584

Theo tôi, trước tiên, các tham số + Towks84 nên là 0,0,0,0,0,0,0, theo sự hiểu biết của tôi, bởi vì sự khác biệt giữa hai datum thực tế không có gì. Và các biến đổi NTv2 gần như có sẵn, và không phải là những gì tôi đang hỏi về. Có lẽ bạn đã đúng, @MichaelStimson, trong đó thực hiện chuyển đổi KHÔNG tốt hơn là thực hiện một phép không hoàn hảo.
Alex Leith

Câu trả lời:


4

Nếu bạn tìm kiếm cơ sở dữ liệu EPSG cho GDA94Tọa độ Thông tin, bạn sẽ nhận được:

  • Mã chuyển đổi EPSG:1150GDA94 thành WGS84 (1) có giá trị bằng không
  • Mã chuyển đổi EPSG:8048GDA94 thành GDA2020 (1) với 7 giá trị được cung cấp bởi @ user30184

Vì vậy, sẽ rất tiết kiệm khi đưa những thứ đó cho GDA2020 đến WGS84 (chăm sóc các dấu hiệu và đơn vị!) Cho đến khi thay đổi lưới mới được công bố. Điều đó sẽ nhận được một số mã chuyển đổi mới.

Hiện tại có mã Chuyển đổi EPSG:8049ITRF2014 sang GDA2020 (1) cho biết cả hai đều bằng nhau, với các giá trị tăng hàng năm. Vì vậy, bạn cũng có thể mất các khung thời gian ITRF.


Aha, cảm ơn @AndreJ, đó là phần đầu tiên trong câu hỏi của tôi. Và bây giờ, điều gì sẽ làm cho sự chuyển đổi này được sử dụng làm mặc định trong, giả sử, QGIS?
Alex Leith

Bạn cần đưa ra một CRS tùy chỉnh cho mỗi CRS cơ sở GDA2020. Lưu ý rằng các giá trị thay đổi được tính bằng mm, trong khi PROJ.4 dự kiến ​​là mét. Bạn cũng có thể chỉnh sửa srs.db của QGIS mà không cần bảo hành.
AndreJ

ITRF2014 và GDA2020 sẽ chỉ bằng nhau trong giây lát vào ngày 1 tháng 1 năm 2020. Giống như GDA94 đã được liên kết ngắn gọn với ITRF92 vào năm 1994. Nếu bạn muốn chuyển đổi chính xác cho bất kỳ thời điểm nào ngoài epoch 2020.0 thì bạn cần phải thực hiện chuyển đổi 4D. các tham số trôi phụ thuộc thời gian. Biến đổi được xác định trong EPSG: 8049 phụ thuộc vào thời gian và các phiên bản pro.4 gần đây có thể tính đến sự khác biệt giữa thời gian căn chỉnh dữ liệu và khi dữ liệu của bạn được ghi lại.
Cướp

2

Bạn đã hỏi:

Có nên thực hiện chuyển đổi 7 tham số đơn giản trong Proj.4 hoặc các công cụ nguồn mở khác là chuyển đổi mặc định (mặc dù, không hoàn hảo) giữa GDA94 và GDA2020? Hay chỉ đơn giản là trường hợp các công cụ sẽ luôn không thay đổi? Làm thế nào điều này nên được xử lý?

Câu hỏi thường gặp tại http://www.icsm.gov.au/gda2020/faq.html thông báo:

Các sản phẩm sau đây sẽ có sẵn:

  • Các tệp lưới biến đổi và biến dạng 2D ở định dạng Phiên bản 2 (NTv2) được sử dụng rộng rãi của Canada
  • Chuyển đổi 7 thông số tương tự (Mũ bảo hiểm)
  • Một tệp lưới chuyển đổi 3D - định dạng chưa được xác định.

Các giá trị hỗ trợ chuyển đổi bộ dữ liệu giữa GDA2020 và ITRF2014 sử dụng mô hình chuyển động dạng tấm hoặc chuyển đổi tương tự 14 tham số cũng sẽ được công bố.

Thông tin này sẽ được cung cấp trực tiếp cho Cơ quan đăng ký tham số trắc địa EPSG được các nhà cung cấp phần mềm và phần cứng không gian trên toàn thế giới nhắc đến trước khi kết hợp các tham số chuyển đổi vào phần mềm và phần sụn.

Khi ICSM đã xuất hiện 7 tham số chuyển đổi tương tự tham số, bạn có thể bắt đầu sử dụng chúng như

+ proj = utm + area = 55 + south + ellps = GRS80 + Towgie84 = [tham số mới] + đơn vị = m + no_defs

Tôi dường như đã được xuất bản trong http://www.icsm.gov.au/gda2020/InterimReleaseNoteV1.0.pdf .

61,55, -10,87, -40,19, -9,994, -39,4924, -32,721, -32,8979

Bạn có thể dùng thử với các tham số + Towss84 này nhưng tôi nhớ rằng Proj.4 có thể muốn một số tham số có dấu đảo ngược.

Tạo vé Proj.4 khi các thông số có sẵn chính thức có thể tăng tốc quá trình với Proj.4 nhưng khi cơ sở dữ liệu EPSG được cập nhật và Proj.4 bắt đầu sử dụng cơ sở dữ liệu mới đó, thay đổi có thể tự động xảy ra. Nó phụ thuộc một chút vào cách GDA2020 sẽ được triển khai trong cơ sở dữ liệu EPSG và nếu cần một thuật toán mới hoặc nếu đó chỉ là câu hỏi về việc thêm các tham số Towks84.


Bạn có thể phải đợi một lúc cho đến khi thay đổi cơ sở dữ liệu EPSG tìm được đường vào GDAL và PROJ.4. GDAL hiện tại (2.2.2) dựa trên cơ sở dữ liệu EPSG v9.0 từ tháng 12 năm 2016 trac.osgeo.org/gdal/ticket/6772 và sẽ không được cập nhật cho đến v2.3.0. PROJ.4 vẫn cũ hơn: github.com/OSGeo/proj.4/issues/477 sẽ có trong phiên bản tiếp theo.
AndreJ

Xin chào @ user30184, tôi không nghĩ rằng tham số toWGS84 được sử dụng cho mục đích này. Trang web Proj.4 nói rằng đây là các tham số để chuyển đổi các tọa độ trên một mốc thời gian thành mốc dữ liệu WGS84 và với trường hợp GDA94 và GDA2020, các mốc này giống như với WGS84 (cho tất cả các mục đích và mục đích), xem: proj.maptools .org / gen_parms.html . Những gì cần thiết là một cách để chuyển đổi giữa hai CRS trắc địa được xác định với cùng một ellipsoid tham chiếu, tôi nghĩ vậy. Và tôi lưu ý rằng các định nghĩa GDA2020 đã có trong sổ đăng ký EPSG và trong các công cụ như QGIS, vì vậy không cần phải chờ đợi.
Alex Leith

Proj.4 đang sử dụng WGS84 làm mốc thời gian tạm thời. Nếu bạn có các tham số + wgS84 ở một bên nhưng không phải ở bên kia, bạn sẽ nhận được dịch chuyển dữ liệu. Hãy thử với + Towks84 và báo cáo kết quả của bạn.
dùng49584

Này, tôi đoán những gì tôi hy vọng đạt được từ điều này là đảm bảo rằng các tham số biến đổi này (như @AndreJ đã chỉ ra là một phần của cơ sở dữ liệu EPSG) được sử dụng theo mặc định trong các công cụ nguồn mở. Tôi sẽ đọc một số ...
Alex Leith

1

TLDR: Chúng không giống nhau. Bình đẳng được báo cáo là kết quả của xấp xỉ và chỉ đúng trong các trường hợp hạn chế. Các tọa độ GDA94 / 2020 được xác định trên các mốc tham chiếu và khung tham chiếu khác nhau. Sự chuyển đổi thích hợp giữa chúng phụ thuộc vào mức độ chính xác mong muốn.

Vấn đề ở đây là giả định trong câu hỏi proj.4 báo cáo chính xác hai CRS (hệ thống tham chiếu phối hợp) là giống nhau. Họ không phải. Các chuỗi proj.4 được trích dẫn không phải là định nghĩa CRS. Chúng được tạo từ định nghĩa CRS và chuỗi proj.4 không phải là hình ảnh đầy đủ. Các định nghĩa đăng ký EPSG cung cấp cho chúng tôi thông tin bổ sung mà chúng tôi cần để hiểu những gì đang thực sự xảy ra.

Điều này xuất phát từ một thế giới quan rằng WGS-84 là 'cơ sở dữ liệu toàn cầu và proj.4 trong lịch sử đã sử dụng nó như là một trung gian khi chuyển đổi giữa các mốc. Điều đáng nói là, WGS-84 được xác định lại sau mỗi vài năm ( hiện tại chúng tôi đang ở G1762, được căn chỉnh theo ITRF-08 ) khi nó được liên kết lại với các thay đổi trong khung tham chiếu ITRF, từ đó GDA cũng được bắt nguồn.

Điều này đã dẫn đến các phím tắt và giả định này bị cuốn vào hành vi của proj, mặc dù trong các phiên bản gần đây, điều này đang bắt đầu thay đổi.

Theo dõi tác động của các thay đổi đối với các khung tham chiếu và khi chúng thay đổi không phải là vấn đề lớn trong khi GPS của người tiêu dùng có độ chính xác> 5m nhưng thời gian đang thay đổi và độ chính xác của máy đo phụ đòi hỏi phải có công cụ phù hợp với chúng.

Vì vậy, để trả lời câu hỏi, chúng ta cần theo dõi các mốc tham chiếu và khung tham chiếu GDA94 và GDA2020 CRS dựa trên và sau đó xem các biến đổi có sẵn là gì.

  • EPSG:7844 CRS Địa lý 2D GDA2020 (Lat / Lon), từ
  • EPSG:7843 CRS Địa lý 3D GDA2020 (L / L / H), từ
  • EPSG:7842 GDA2020 3D Gerialric (ECEF X / Y / Z), tất cả đều sử dụng
  • EPSG: 1168 (mốc) - mốc đo lường địa tâm của Úc, 2020

EPSG: 1168 định nghĩa khung tham chiếu neo của nó:

  • Định nghĩa neo: ITRF2014 tại epoch 2020.0
  • Kỷ nguyên hiện thực: 2020-01-01

Nếu bạn làm tương tự cho GDA94, bạn sẽ thấy khung tham chiếu là ITRF92, được căn chỉnh vào ngày 01/01/1994.

Nếu chuyển đổi giữa dữ liệu ITRF02 / 14 và GDA94 / GDA2020, thì các mốc được căn chỉnh và việc chuyển đổi giữa chúng null chỉ vào ngày căn chỉnh kỷ nguyên. Đó chính là những gì các chuỗi proj đang nói. Để thuận tiện, chúng ta thường không muốn phải liên tục thay đổi tọa độ mà chúng ta lưu trữ, do đó, việc thay đổi độ trôi giữa chúng cứ sau vài năm sẽ đơn giản hơn và chấp nhận mức độ lỗi.

Đối với hầu hết các ứng dụng yêu cầu độ chính xác> 1m, điều đó đủ tốt.

Nhưng thực tế không thay đổi từng bước một vài năm và nếu chúng ta muốn chuyển đổi chính xác hơn, chúng ta cần xem xét độ trôi khoảng cách phụ thuộc thời gian của các mốc trước / sau khi căn chỉnh của chúng. Đó là một chuyển đổi 4D chứ không phải 3D.

Các biến đổi giữa GDA2020 và WGS-84 hoặc ITRF2014 được mô tả trong:

  1. GDA2020 đến WGS 84 (G1762) (1) - EPSG: 8448
  2. ITRF2014 đến GDA2020 (1) - EPSG: 8049

Nếu chuyển đổi giữa GDA94 và GDA2020, mọi thứ đơn giản hơn vì chúng ta chỉ cần biết sự khác biệt giữa các khung tham chiếu. Sắp xếp Có nhiều hơn một và việc sử dụng đúng phụ thuộc vào thời điểm, cách thức và nơi dữ liệu được tham chiếu đến GDA94. Đó là một nỗ lực để loại bỏ lỗi do các phương pháp ít tinh chỉnh hơn được sử dụng trong những năm 90.

Đó là:

  • Phù hợp - Xoay khung tọa độ (1) - EPSG: 8048
  • Biến dạng cục bộ (2) - EPSG: 8447
  • Phù hợp - Biến đổi lưới NTv2 (3) - EPSG: 8446

Để hiểu những trường hợp này nên được sử dụng, hãy đọc hướng dẫn kỹ thuật GDA2020


0

Dựa trên các câu trả lời trước, định nghĩa proj4 trông như thế này:

+proj=longlat +ellps=GRS80 +towgs84=-0.06155,0.01087,0.04019,-0.0394924,-0.0327221,-0.03289790,0.009994 +no_defs

Sau đó, bạn có thể sử dụng điều này trên bất kỳ vùng lưới dự kiến ​​tiêu chuẩn nào bằng cách thêm vào tham số Towks84. ví dụ

+proj=utm +zone=55 +south +ellps=GRS80 +towgs84=-0.06155,0.01087,0.04019,-0.0394924,-0.0327221,-0.03289790,0.009994 +units=m +no_defs

Để lấy đúng số từ phần 3.1 của đặc tả, trước tiên bạn đảo ngược dấu của các tham số xoay (như đã thảo luận trong phần 2.2.1), nhưng sau đó đảo ngược mọi thứ vì các tham số trong đặc tả là biến đổi từ WGS / GDA94 và chúng tôi muốn biến đổi thành WGS cho định nghĩa proj4. Vì vậy, về cơ bản mọi thứ ngoại trừ các phép quay trong đặc tả đều có dấu hiệu đảo ngược.

Điều khác duy nhất cần chú ý là đối với proj4, thang đo là tham số cuối cùng.

Những người theo chủ nghĩa thuần túy sẽ đề xuất sử dụng phương pháp dịch chuyển lưới NtV2 nhưng những tệp này rất lớn và tôi đã thấy rằng những điều trên cho độ chính xác cao hơn 5cm khi sử dụng dữ liệu mẫu cho Victoria. Tôi cũng muốn một giải pháp sẽ hoạt động với proj4js.

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.