CoolFace
Apppublic

Pavan2k4/Building_area

sourceHugging Faceapache-2.0updated 2y agoView on Hugging Face
0likes
convert_raster.py30 linesDownload Raw Back to Utils
1from osgeo import gdal2import numpy as np3import os4import tempfile5from PIL import Image6 7def convert_gtiff_to_8bit(src):8    dst = src9    img = gdal.Open(src)10    driver = gdal.GetDriverByName('GTiff')11 12    output_image = driver.Create(dst, img.RasterXSize, img.RasterYSize, img.RasterCount, gdal.GDT_Byte, ['PHOTOMETRIC = RGB'])13    output_image.SetGeoTransform(img.GetGeoTransform())14    output_image.SetProjection(img.GetProjection())15 16    max_bands = img.RasterCount17    for i in range(max_bands):18        i = i+119        band = img.GetRasterBand(i)20        band_array = band.ReadAsArray()21 22        min, max = band.ComputeRasterMinMax(1)23        band_array = np.interp(band_array, (min,max), (0,255)).astype(np.uint8)24 25        out = output_image.GetRasterBand(i)26        out.WriteArray(band_array)27        out.FlushCache()28    return output_image29    del output_image30