Cách thực hiện phép nội suy Spline trên GPS Track


8

Tôi đang tìm cách áp dụng phép nội suy spline vào rãnh gps (định dạng Gpx). Tôi là người dùng QGIS thường xuyên và cũng có thư viện GDAL được cài đặt trên máy mac nếu điều đó có ích.

Về cơ bản thông tin đường đi và đi xe trên Dự án MTB có một tập hợp nhỏ các điểm và đường dẫn thực tế được mở rộng thông qua phép nội suy spline để giảm kích thước tệp. Tôi có thể tải xuống các bản nhạc ở định dạng gpx, nhưng chúng chỉ chứa một tập hợp các điểm nhỏ, cung cấp cho tôi một bản nhạc giống với một đường răng cưa đại diện cho số lượng điểm nhỏ trước khi nội suy. Tôi muốn áp dụng một phép chuyển đổi tương tự để tạo lại các đường cong trên trang web, trong một quy trình có thể lặp lại một chút mà tôi không thể truy tìm lại từng điểm bằng công cụ vẽ spline trong QGIS.

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

Có ai biết một cách mà tôi có thể dễ dàng áp dụng phép nội suy spline vào dữ liệu theo dõi gps của mình để tái tạo tuyến đường được tách ra từ Dự án MTB bằng các công cụ miễn phí không? Tốt nhất trên OSX?


FWIW, topofusion có tính năng này mà tôi đang tìm kiếm, nhưng tôi là người dùng mac. Vì vậy, tôi đang tìm kiếm thứ gì đó sẽ hoạt động mà không có Windows. topofusion.com/spline.php
Benzo

Trên thực tế, tôi đã sử dụng một máy tính windows và thấy topofusion thực hiện công việc làm mịn các dòng, nhưng chúng không được nội suy giống như dự án MTB, vì vậy đôi khi các đường cong xảy ra theo cách không giống nhau và khiến các bản nhạc thậm chí còn ít hơn chính xác thay vì chính xác hơn, ngay cả sau khi điều chỉnh các tham số.
Benzo

Câu trả lời:


5

Hãy thử sử dụng công cụ "v.generalize" từ hộp công cụ xử lý. Có một số thuật toán trong đó có thể khái quát hóa một dòng độc đáo.

Một giải pháp khả thi khác có thể là plugin "Generalizer" đã được đề cập trong bài đăng này , thông tin plugin trong QGIS gợi ý rằng công cụ này dựa trên mô-đun v.generalizer Grass.

Chỉ để tham khảo dưới đây là một ví dụ về đầu ra từ công cụ v.generalize. Tôi đã sử dụng các đầu vào mặc định cho cả đầu ra Chaiken và Hermite, tôi không nghi ngờ gì bạn có thể nhận được kết quả tốt hơn với một chút nghiên cứu về công cụ và cụ thể là các giá trị đầu vào có ý nghĩa gì.

Cập nhật - Thuật toán Snakes (không hiển thị trong hình ảnh ban đầu bên dưới) với một số điều chỉnh các tham số alpha và beta mang lại sự xuất hiện mượt mà hơn trên tập dữ liệu thử nghiệm của tôi.

Ví dụ về đầu ra v.generalize


1

Tôi cảm thấy lúng túng, nhưng hãy để tôi giới thiệu Plugin QGIS + Spline là một trong những lựa chọn cho trường hợp của bạn.

  1. Có, số hóa tất cả các điểm là cồng kềnh. Nhưng việc thiết lập một tham số Snap Option thích hợp có thể giảm bớt gánh nặng của nhiệm vụ.
  2. Các phần mềm khác có khả năng tạo Splines sẽ là CAD (ví dụ AutoCAD) hoặc giải pháp toán học (ví dụ R). Nếu bạn chọn CAD, quy trình làm việc của nó gần như giống nhau, để lặp lại các điểm nhấp để thêm các phân đoạn spline.
  3. Nếu đường đua xe đạp là một đường cong spline "lý tưởng", được nội suy toán học, spline phù hợp nhất sẽ là giải pháp. Trong thực tế, spline như vậy hiếm khi đại diện cho toàn bộ theo dõi của bạn. Bạn có thể kết thúc việc ghép một số đường cong, bằng cách thử các tham số làm mịn khác nhau.
  4. Khi bạn sử dụng Plugin Spline, bạn có thể thay đổi các tham số khi tiến hành số hóa.

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

Nếu Độ chặt của bạn được đặt thành 0,5 (giá trị mặc định), nó có thể kết nối trơn tru các điểm đo dày đặc và Độ chặt cao hơn cố gắng không uốn cong đường cong xung quanh các điểm đó.

Bạn sẽ thấy đường cong màu xanh lam (0,9) phù hợp hơn với đường cong nhẹ nhàng và màu cam (0,5) phù hợp với các góc hẹp. Tính linh hoạt này là phần tốt nhất để số hóa thủ công bằng Spline Plugin. Nếu chúng ta cố gắng làm điều đó bằng phương trình toán học, nó có thể là cơn ác mộng.

  1. Tôi sợ kỹ thuật khái quát hóa không tôn trọng các điểm dữ liệu gốc. Nói cách khác, đường cong xuất phát từ tổng quát hóa không đi qua đường đua xe đạp của bạn.

Cảm ơn cho điểm về kỹ thuật khái quát hóa, tốt để biết. Có lẽ tôi sẽ không sử dụng tùy chọn plugin spline, vì tôi đang cố gắng đặt tham số và chạy quy trình này trên nhiều bản nhạc, vì vậy đây sẽ không phải là một hoạt động tắt. Tôi cần một quá trình lặp lại nhanh chóng.
Benzo

Không chấp nhận đây là câu trả lời, nhưng trao tiền thưởng cho giải pháp gần nhất. Có lẽ nếu tôi dành thời gian để tìm ra cách hack plugin spline vì tôi biết một số python, tôi có thể tự động lấy nó để lặp lại các điểm hiện có thay vì thực hiện số hóa thủ công. Không chắc chắn mức độ khó khăn như thế nào, nhưng nguồn này hiện có cho plugin.
Benzo
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.