Есть код, который конвертирует jpg в tiff, который работает как вызов консольной команды gdal_translate.
И всё работает хорошо. Т.е. я через форму на сайте гружу растр, после загрузки он конвертируется в тифф,
и создаётся слой в геосервер, который отображается в OL. Это если я сижу буквально в метре от сервера =)
Если другой человек, через интернет заходит на сайт, то у него тоже всё пашет.
А вот если вместо gdal_translate, использую рукописный код, типа такого:
Код: Выделить всё
out_driver = gdal.GetDriverByName('GTiff')
outdataset = out_driver.Create(target_file, ds.RasterXSize, ds.RasterYSize, 1, gdal.GDT_Byte,
options=[
'COMPRESS=LZW',
'TFW=YES',
'INTERLEAVE=BAND',
'NUM_THREADS=4',
'PROFILE=GeoTIFF',
'BIGTIFF=IF_NEEDED',
'TILED=YES',
'BLOCKXSIZE=256',
'BLOCKYSIZE=256'])
ct = gdal.ColorTable()
err = gdal.ComputeMedianCutPCT(ds.GetRasterBand(1),
ds.GetRasterBand(2),
ds.GetRasterBand(3),
256, ct,
None,
None)
outdataset.GetRasterBand(1).SetRasterColorTable(ct)
outdataset.SetProjection(srs_wkt)
outdataset.SetGeoTransform(dt_new)
err = gdal.DitherRGB2PCT(ds.GetRasterBand(1),
ds.GetRasterBand(2),
ds.GetRasterBand(3),
outdataset.GetRasterBand(1),
ct,
None,
None)
outdataset.GetRasterBand(1).SetNoDataValue(255)
outdataset.FlushCache()
outdataset = None
ds = None
То растр получается в негативе.
ПРичём я делаю, то всё хорошо. Локально запускаю этот скрипт на компе, всё хорошо.
Такое ощущение, что из кеша не успевают данные скидываться в файл растра.
Сталкивался кто с таким?