Chuyển đổi các geotiff khổng lồ thành tilepyramid


9

Tôi đang cố gắng chuyển đổi một geotiff nén 20 GB LZW thành một tilepyramid bằng gdal2tiles. Thật không may, gdal2tiles dường như không thể xử lý việc này, sau khi chạy nó trong 10 giờ, nó vẫn chưa đạt đến "dấu chấm" đầu tiên. Tôi đã thử điều này với một tệp nhỏ hơn (1GB) và nó hoạt động tốt. Câu hỏi của tôi bây giờ là, có phần mềm nào khác cho phép tôi làm điều này (thương mại hay nguồn mở) không? Người ta có thể tạo các ô từ GlobalMapper, nhưng tôi không thể tải tệp 20GB vào bộ nhớ.

Câu trả lời:


4

Nếu bạn đang sử dụng máy tính có bộ xử lý đa lõi, bạn có thể thấy Parallel GDAL2Tiles (ppgdal2tiles) hữu ích. Trong loại máy tính này, ppgdal2tiles nên chạy nhanh hơn phiên bản "lõi đơn". Trích dẫn trang web ppgdal2tiles:

"Phiên bản tiêu chuẩn của GDAL2Tiles chỉ sử dụng một lõi xử lý tại một thời điểm.

Trong trường hợp bạn có một máy tính có nhiều bộ xử lý (hoặc một trong các bộ xử lý Mutli-Core của Intel hoặc AMD) thì một số quy trình có thể được bắt đầu để sử dụng toàn bộ sức mạnh tính toán của máy tính của bạn để hoàn thành kết xuất đồ họa nhanh nhất có thể. "


Và bạn chắc chắn có thể yêu cầu Petr giúp đỡ về vấn đề này và hỗ trợ dự án nếu nó là một. -> maptiler.com
đăng lại

Cung cấp liên kết là chết.
mrgloom

4

Tôi đã có cùng một vấn đề chỉ một vài tuần trước. Đối với một lần, bạn sử dụng tùy chọn

--config GDAL_CACHEMAX 2047

(phải ở dưới mức 2048 trong thời gian này!) Và thứ hai, bạn có thể sao chép tập lệnh gdal2tiles.py sang một vị trí khác và thay đổi vòng lặp for lặp lại trên các ô để đếm ngược. trong phiên bản gdal2tiles của tôi ở dòng 1174:

for ty in range(tmaxy, tminy-1, -1):

thay đổi thành:

for ty in range(tminy, tmaxy+1):

sau đó sử dụng cả hai tập lệnh với cùng một đối số cùng một lúc và thêm -e (tức là tiếp tục, không xóa các tệp đã có) Lưu ý rằng bạn phải thoát một trong các tập lệnh khi chúng hoàn thành 50% (của cơ sở gạch), hoặc bạn sẽ nhận được gạch vỡ. Nếu bạn quên, chỉ cần tìm kiếm tất cả các tệp có kích thước 0, xóa chúng và bắt đầu lại - với công tắc -e;)

hy vọng điều đó đã giúp


Một câu hỏi: tại sao GDAL_CACHEMAX phải ở dưới 2047? Tôi sử dụng nó một cách hạnh phúc với 8GB trở lên cho gdalwarp và tương tự ...
markusN


1

Tôi hy vọng rằng FME sẽ có thể làm điều đó. Nó chắc chắn có thể thực hiện ốp lát - và tôi tự tin rằng nó có thể xử lý các kích thước tệp lớn. Phần kim tự tháp raster khá đơn giản, xem ví dụ Raster Pyramiding trong các trang mẫu và bản demo.

Bạn có thể lấy một bản đánh giá để thử nó trước

Mark Ireland, Nhà truyền giáo sản phẩm, Phần mềm an toàn


1
đây là một quảng cáo biên giới. Để đẩy nó ra khỏi hàng rào thành một câu trả lời chắc chắn, hãy tóm tắt cách người ta sẽ sử dụng FME để sản xuất gạch và liên kết đến tài liệu bao gồm vấn đề OP trực tiếp thay vì chỉ trang đầu. Cảm ơn.
matt wilkie

Lấy làm tiếc. Không có nghĩa là được. Phần hình chóp raster khá đơn giản ( fmepedia.safe.com/articles/Samples_and_Demos/ ám ). Tôi chỉ hơi mơ hồ vì câu hỏi liên quan nhiều hơn đến hiệu suất và tôi không muốn cam kết khi tôi đã không thử nó một cách cá nhân. Đó là lý do tại sao tôi mời OP dùng thử trực tiếp.
Đánh dấu Ireland
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.