Страница 1 из 1
.gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 26 янв 2010, 12:11
Безликий
Есть растр формата .gif, к нему есть файл привязки .map (ози эксплоер).
Надо этот растр либо конвертировать в geotiff, либо в растровый формат с файлом привязки .tfw (Autocad Raster Design).
Растр представляет собой топографическую карту.
Установил oziexplorer, по крайней мере, с ходу, глянувши в хелп не нашел, как такое сделать.
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 26 янв 2010, 12:33
SS_Rebelious
Тема перевода .map в геотиф и т.п. регулярно всплывает на форуме - можно было воспользоваться поиском

Стандартный совет - воспользуйтесь GlobalMapper.
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 26 янв 2010, 15:41
manisha
По-моему, в GDAL добавили поддержку привязки из .map файлов, это теперь самый удобный путь конвертации получается .
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 27 янв 2010, 03:45
Максим Дубинин
manisha писал(а):По-моему, в GDAL добавили поддержку привязки из .map файлов, это теперь самый удобный путь конвертации получается .
Откуда информация? Лоскот писал, что они собираются только, неужели уже сделали?
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 28 сен 2010, 06:57
Trace
немного навоял.
Думаю пригодится...
Файл трансформирует *.gif+*.map в geotif, нужно указать, путь до папки с файлами gif и конечным результатом, путь до спроецированного шейп фала (шейп берется с данного сайта), название шейпфайла.
Должны быть на компьютере: OSGeo4W (msys, gdal,gdal-dev). пока работает только с картами 200 000 масштаба.
небольшое пояснение вниутри файла.
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 28 сен 2010, 07:22
Максим Дубинин
Trace, то ли скрипт забыл приложить, то ли описание не до конца. А зачем нужен шейп-файл для конвертации? И чем лучше чем просто gdal_translate/gdalwarp?
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 28 сен 2010, 08:07
Trace
Максим Дубинин писал(а):Trace, то ли скрипт забыл приложить, то ли описание не до конца. А зачем нужен шейп-файл для конвертации? И чем лучше чем просто gdal_translate/gdalwarp?
незаметил что файл не крепится...
Код: Выделить всё
#!/bin/bash
# Файл создан TraCE, с сайта gis-lab.info, особая благодарность потльзователям
# IRC-канала gis-lab за своевременную помощь.
# Предназначен для трансформации и обрезки файлов из одной проекции в другую.
# Для правильной работы скрипта необходим gdal-dev из пакета OSGeo4W и шейп
# сохраненый в нужной проекции. Шейп-файл взят с сайта gis-lab.info. Растры взяты
# с сайта poehali.org (для других растров нужна трансформация имен).
# Запрашиваемый в начале путь, указывается в конце без "/"
# Например /c/temp, а не /c/temp/. иначе выдаст ошибку.
# Запускается с помощью программы Msys и команды sh /путь/до/файла/map2tif.sh
echo Укажите входные параметры для начала работы скрипта
echo Например /c/temp
echo ВНИМАНИЕ!!! Если есть данные в папке с конечным результатом
echo и данные имеют одинаковые название, то все данные будут заменены
echo без подтверждения!
read -p "Введите путь до папки с файлами gif и map -> " DIR_GIF
read -p "Введите путь до папки в которую надо сохранить конечный результат ->" DIR_TIF
read -p "Введите путь до папки с шейп-файлом ->" DIR_SHP
read -p "Введите название шейп-файлас расширением shp (Имя_файла.shp) ->" NAME_SHP
echo Введиде код проекции. Например 28418 - 18 Зона, 28417 - 17 зона
read -p "EPSG: -->" EPSG_NUM
echo Трансформация файлов из gif в geotif
cd $DIR_GIF
for a in $( ls *.gif); do
/c/OSGeo4W/apps/gdal-dev/bin/gdal_translate -of GTiff $a ${a%%.gif}".tif" > null
/c/OSGeo4W/apps/gdal-dev/bin/gdalwarp -t_srs "EPSG:"$EPSG_NUM -of GTiff ${a%%.gif}".tif" $DIR_TIF"/"${a%%.gif}".tif" > null
echo $a, готов
done
echo Удаление файлов с расширением .tif из папки gif
cd $DIR_GIF
rm *.tif
echo Обрезка файлов по вектору и дополнительному полю
cd $DIR_TIF
for b in $( ls *.tif ); do
c="$(echo "${b%%.tif}" | sed 's/200k--//' | tr '[[:lower:]]' '[[:upper:]]' | sed 's/_/,/' | sed 's/-/-0/' | sed 's/,/,0/')"
gdal_rasterize -i -b 1 -burn 0 -l ${NAME_SHP%%.shp} $DIR_SHP"/"$NAME_SHP -where 'indexfull="'$c'"' $b > null
echo "$c", готов
done
echo Трансформация закончена.
exit 0
шейп нужен для обрезки рамки с координатами. да и здесь как то много файлов за раз можно обработать
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 23 окт 2010, 18:54
kryl
У меня так и не получилось заставить GDAL напрямую воспринимать OZI MAP (пробовал с помощью gdalinfo). Не работает не в gdaldev, ни в gdal17.
Работает только скрипт
ozi2gdal.py
Re: .gif+.map -> geotiff или растровое изображение +.tfw
Добавлено: 24 окт 2010, 13:11
Trace
интересно. а как с помощью гдалинфо вы пробовали?
попробуйте поставить гдал с помощью OSGeo4W. думаю должно заработать... После установки в командной строке OSGeo4W наберите gdaldev.bat, а потом "gdal_translate -of GTiff исходный_файл.gif конечный_файл.tif" - этой командой вы трансформируете в ГеоТИФ, а командой "gdalwarp -t_srs EPSG:4326 -of GTiff исходный_файл.tif конечный_файл.tif" этой командой вы трансформируете в wgs84 проекцию.
У меня приведенный вами скрипт незаработал на убунте, так и непонял тогда почему
