Batch mengonversi GeoTIFF ke file KMZ

11

Saya memiliki sekitar 600 file peta GeoTIFF, masing-masing berukuran sekitar 140 mb yang ingin saya konversi menjadi file KMZ sehingga orang dapat mengunduhnya dan menggunakannya dengan unit GPS Garmin, Google Earth, dll.

Adakah yang tahu cara mudah untuk memproses batch ini, sebaiknya mengubah gambar tiff ke gambar jpeg yang jauh lebih kecil sebagai bagian dari proses?

Saya telah menemukan gdal_translate yang saya kira mungkin berguna mengoptimalkan gambar menjadi sesuatu yang lebih kecil menggunakan opsi "-co COMPRESS = JPEG".

Gavin
sumber
Sepertinya G-Raster mungkin membiarkan saya melakukan proses file-by-file.
Gavin
Global Mapper juga terlihat cakap, tapi agak mahal karena saya tidak akan mendapat untung dari orang yang mengunduh file KMZ.
Gavin
OkMap menghasilkan output yang baik, tetapi sekali lagi tidak memiliki opsi pemrosesan batch yang berguna.
Gavin
1
jika gambar sebesar itu Anda tidak hanya harus memasang mereka dalam maksimal 1 megapiksel, Anda juga tidak boleh melebihi 100 ubin dalam KMZ yang sama agar handheld Garmin menerimanya sebagai peta khusus. Itu juga harus di WGS84 lat panjang. Lihat forum garmin untuk detail lebih lanjut tentang dukungan Garmin KMZ.
Stefan
Pada akhirnya saya menyelesaikan proses secara manual menggunakan OkMap. Terima kasih atas masukan semua orang.
Gavin

Jawaban:

15

Versi terbaru dari gdal_translate memiliki dukungan untuk KML Superoverlay. Meskipun belum didokumentasikan di situs web GDAL, hal berikut dapat digunakan:

gdal_translate.exe -dari KMLSUPEROVERLAY c: \ in.tif c: \ out.kmz -co FORMAT = JPEG

Ini akan menyimpan versi ubin dalam file kmz menggunakan kompresi jpeg.

Pada windows Anda dapat mengotomatisasi menggunakan

forfiles / m * .tif / c "cmd / c gdal_translate.exe -dari KMLSUPEROVERLAY @FILE @ FNAME.kmz -co FORMAT = JPEG"

Ini mengasumsikan bahwa file input dalam WGS84.

Matthew Snape
sumber
1
Sayangnya saya baru saja menemukan bahwa KMZ yang dihasilkan bukan file KMZ yang kompatibel dengan Garmin Custom Map.
Gavin
Tahukah Anda mengapa tidak kompatibel?
Adam Mills
Struktur SuperOverlay berbeda. Ini memiliki kmz dengan sejumlah kmz di dalamnya. Format Garmin adalah kmz dengan folder jpg dan file doc.kml yang menjelaskan luasan jpg. Tidak tahu mengapa ada struktur alternatif, tetapi secara pribadi saya menemukan pembersih format Garmin ... Yang aneh karena saya benci sebagian besar struktur data Garmin.
Mike
@ Gavin Apakah Anda pernah menemukan solusi? Saya mengalami apa yang saya yakini sebagai masalah yang sama, lihat pertanyaan ini .
gerrit
@ kritikus Maaf, tidak. Ada dalam daftar hal-hal saya untuk segera dilihat kembali.
Gavin
0

Jika file Geotiff masing-masing berukuran 140 mb, file jpg yang dihasilkan mungkin masih cukup besar. Mungkin menarik untuk membagi file menjadi file yang lebih kecil, sehingga mereka dapat lebih mudah ditampilkan. Anda dapat mencoba dengan satu file menggunakan http://www.maptiler.org/ yang memiliki opsi untuk menghasilkan Koveroverlay KML. MapTiler mungkin tidak cocok untuk memproses semua file, tetapi mudah digunakan sehingga baik untuk membuat beberapa tes pendahuluan.

Jika berfungsi seperti yang Anda inginkan, Anda kemudian dapat mencoba untuk memproses semua file menggunakan GDAL2Tiles . Saya belum mencobanya, tapi saya pikir itu harus dimungkinkan karena MapTiler didasarkan pada GDAL2Tiles.

Nama
sumber
OkMap melakukan ini - mengambil GeoTIFF dan kemudian membaginya menjadi beberapa gambar yang lebih kecil untuk digunakan dalam file KMZ. gdal2tiles adalah alat yang berguna - hanya belum menemukan cara untuk menghasilkan kmz dari itu. Akan bermain lagi.
Gavin
OkMap baru bagi saya. Ini akan melihatnya, sepertinya program yang menarik.
Nama
gdal2tiles hampir ada tetapi OkMap menghasilkan hasil yang jauh lebih elegan. Ukuran ubin dihitung oleh OkMap untuk membagi gambar asli secara efisien, memungkinkan ubin persegi panjang daripada ubin persegi sehingga menghindari area ekstra transparan. Saya ingin tahu apakah saya dapat mengotomatisasi / perintah baris OkMap untuk memproses file saya.
Gavin
0

Saya tidak pernah menggunakan gambar di KML, meskipun sepertinya gdal2tiles.py dapat membantu. Tergantung pada OS Anda dapat melakukan konversi batch dalam berbagai cara. Di Windows dengan CMD gunakan perintah: DIR path > yourfile .txt (buat daftar file Anda), impor .txt ke Excel / OpenOffice, bersihkan dan tambahkan sintaks Anda untuk GDAL. Simpan sebagai nama file.bat dan jalankan dari baris perintah.

Tomek
sumber
Saya kenal dan secara teratur menggunakan gdal2tiles tetapi saya sedikit tidak yakin pengaturan apa yang harus saya gunakan untuk meludahkan kmz. Ada ide?
Gavin
1
Saya kira itu hanya kasus zip keluaran kml dan gambar kemudian mengganti nama file zip ke ekstensi kmz.
Gavin
Itu dia. Jika Anda ingin mengompres gambar Anda, Anda harus melihat jenis data apa itu dan mungkin mengubahnya menjadi sesuatu yang lebih efisien memori.
Tomek
gdal2tiles hampir ada tetapi OkMap menghasilkan hasil yang jauh lebih elegan. Ukuran ubin dihitung oleh OkMap untuk membagi gambar asli secara efisien, memungkinkan ubin persegi panjang daripada ubin persegi sehingga menghindari area ekstra transparan. Saya ingin tahu apakah saya dapat mengotomatisasi / perintah baris OkMap untuk memproses file saya.
Gavin
0

Juga ada plugin QGIS untuk membuat file .kmz dari kanvas QGIS Anda untuk perangkat Garmin. Ini disebut GarminCustomMap

Chris Karounos
sumber
0

Saya memposting skrip python untuk digunakan dari ArcGIS di sini:

Mengekspor 3GB ArcGIS Raster ke KML tanpa kehilangan resolusi?

Model yang berbeda mendukung jumlah ubin yang berbeda. Anda harus melihat batasan ini, tingkat pencitraan yang ingin Anda gunakan, dan resolusi minimum yang ingin Anda gunakan. Maka Anda mungkin perlu membuat banyak file dari citra asli Anda, memproses setiap bagian citra dengan alat skrip, dan mentransfer file dari laptop ke GPS sesuai kebutuhan Anda (Garmin hanya mendukung 1 "Peta Kustom" pada suatu waktu) . Banyak model peta * hanya mendukung 100 1024x1024 ubin. Colorado dan Montana mendukung lebih banyak. Saya bereksperimen dengan mengubah ukuran ubin menjadi 2048 x 2048 dan itu tampaknya masih berfungsi dan memungkinkan lebih banyak data sekaligus.

Dalam kasus Anda, saya akan mem-mosaik beberapa gambar multi-Gig dan memproses citra area besar ini dan membiarkan pengguna mengelompokkannya di google earth dan menyimpan kmz mereka sendiri dari sana. Masalah Peta Kustom sengaja sangat terbatas karena Garmin lebih suka mendukung format jnx mereka dan menjual langganan Birdseye .... Atau memaksa Anda untuk meretas perangkat mereka.

Mike
sumber
0

OkMap Desktop (penuh, berbayar untuk versi) sekarang mencakup fungsi batch untuk menghasilkan file KMZ yang kompatibel dengan Garmin Custom Map, jadi saya sekarang menggunakan ini.

Gavin
sumber