我大约有600个GeoTIFF地图文件,每个文件的大小约为140 mb,我希望将其转换为KMZ文件,以便人们可以下载它们并将其与Garmin GPS装置,Google Earth等配合使用。
有谁知道批处理这些内容的简便方法,最好将tiff图像转换为更小的jpeg图像,作为处理的一部分?
我偶然发现了gdal_translate,我想使用“ -co COMPRESS = JPEG”选项将图像优化成更小的图像可能有用。
我大约有600个GeoTIFF地图文件,每个文件的大小约为140 mb,我希望将其转换为KMZ文件,以便人们可以下载它们并将其与Garmin GPS装置,Google Earth等配合使用。
有谁知道批处理这些内容的简便方法,最好将tiff图像转换为更小的jpeg图像,作为处理的一部分?
我偶然发现了gdal_translate,我想使用“ -co COMPRESS = JPEG”选项将图像优化成更小的图像可能有用。
Answers:
最新版本的gdal_translate支持KML Superoverlay。尽管尚未在GDAL网站上进行记录,但可以使用以下内容:
gdal_translate.exe -of KMLSUPEROVERLAY c:\ in.tif c:\ out.kmz -co FORMAT = JPEG
这将使用jpeg压缩将切片版本保存在kmz文件中。
在Windows上,您可以自动使用
forfiles / m * .tif / c“ cmd / c gdal_translate.exe -of KMLSUPEROVERLAY @FILE @ FNAME.kmz -co FORMAT = JPEG”
假定输入文件在WGS84中。
如果Geotiff文件的大小均为140 mb,则生成的jpg文件可能仍然很大。将文件拆分为较小的文件可能会很有趣,以便可以更轻松地显示它们。您可以使用http://www.maptiler.org/尝试使用一个文件,该文件具有生成KML Superoverlay的选项。MapTiler可能不适用于批处理所有文件,但是它易于使用,因此可以进行一些初步测试。
如果您希望使用它,则可以尝试使用GDAL2Tiles批处理所有文件。我还没有尝试过,但是我认为它应该可行,因为MapTiler基于GDAL2Tiles。
尽管看起来gdal2tiles.py可能有所帮助,但我从未在KML中使用过图像。根据操作系统的不同,可以采用多种方式进行批量转换。在具有CMD的Windows中,使用命令:DIR path > yourfile .txt(生成文件列表),将.txt导入Excel / OpenOffice,对其进行清理并添加GDAL的语法。另存为filename.bat并从命令行运行它。
还有一个QGIS插件,可从您的QGIS画布为Garmin设备制作.kmz文件。它称为GarminCustomMap
我在这里发布了一个Python脚本供ArcGIS使用:
将3GB ArcGIS Raster导出到KML而不丢失分辨率?
不同的模型支持不同数量的图块。您必须查看此限制,要使用的图像范围以及要使用的最低分辨率。然后,您可能需要从原始图像创建多个文件,使用脚本工具处理图像的每个部分,然后根据需要将文件从便携式计算机传输到GPS(Garmin一次仅支持1个“自定义地图”) 。许多* map模型仅支持100个1024x1024瓦片。科罗拉多州和蒙大拿州支持更多。我尝试将图块大小更改为2048 x 2048,这似乎仍然有效,并且一次可以容纳更多数据。
在您的情况下,我将镶嵌到一些多Gig图像上并处理这些大区域的图像,并让用户将它们在Google Earth中子集化,然后从那里保存自己的kmz。“自定义地图”的内容故意受到很大限制,因为Garmin宁愿支持其jnx格式并向您出售Birdseye订阅。...或强迫您入侵其设备。
OkMap Desktop(完整版,付费版本)现在包括一个批处理功能,用于生成Garmin Custom Map兼容的KMZ文件,因此我现在使用它。