Страница 1 из 1

Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 10:16
HifiDed1
Пытаюсь перевести из векторного SXF в растровый формат TIFF (на самом деле, подойдёт любой растровый формат) с помощью библиотеки gdal python (пока что не нашёл альтернатив). Мой код разбивает слои SXF-файла в разные TIFF-изображения, но при этом растровое изображение получается чёрно-белым. Как сохранить цвет при растеризации SXF?

Код: Выделить всё

from osgeo import ogr, gdal

source_path = "/home/user/maps/N3710.SXF"
pixel_size = 50
NoData_value = 256
raster_fn = "/home/user/maps/"
source_ds = ogr.Open("/home/user/maps/N3710.SXF")

j=0
for i in range(source_ds.GetLayerCount()):
    source_layer = source_ds[i]
    source_layer.ResetReading()
    x_min, x_max, y_min, y_max = source_layer.GetExtent()
    x_res = int((x_max - x_min) / pixel_size)
    y_res = int((y_max - y_min) / pixel_size)
    target_ds = gdal.GetDriverByName('GTiff').Create(raster_fn + str(j) + ".tiff" , x_res, y_res, 1, gdal.GDT_Byte)
    target_ds.SetGeoTransform((x_min, pixel_size, 0, y_max, 0, -pixel_size))
    band = target_ds.GetRasterBand(1)
    band.SetNoDataValue(NoData_value)
    gdal.RasterizeLayer(target_ds, [1], source_layer, burn_values=[0])
    j += 1
Вот один из получающихся слоёв:
Изображение

Открыт для любого альтернативного решения проблемы. Заранее спасибо!

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 13:21
Petruxin
А в ГИС Панораме что Вам не подходит?

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 14:15
HifiDed1
Появилась необходимость написать скрипт для автоматизации перевода SXF-файла в растровое изображение, ручками тыкать в гис панораме не подходит :D

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 14:16
trir
там api есть

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 14:17
HifiDed1
Api для ГИС Панорамы? Где найти мануал?

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 13 апр 2021, 14:34
trir

Re: Перевести SXF в цветной растр GDAL Python

Добавлено: 14 апр 2021, 12:19
juffin_h
Я не спец. по GDAL, но по моему Вы выводите в одно-канальный растр. Не факт, что драйвер может растрировать в индексные цвета. Может надо создавать 3х-канальный растр(RGB)?