Parece que isso deve ser direto, mas não consigo descobrir pela vida.
Dado um GeoTiff existente contendo uma banda única, como você pode adicionar outra banda ao GeoTiff? A única maneira de fazer isso é usar GDALCreate () para criar um novo arquivo de saída com uma banda adicional e copiar a banda existente do arquivo original para o novo arquivo? Essa é a única solução que eu encontrei até agora, mas parece que deve haver uma maneira simples de adicionar uma banda ao conjunto de dados existente.
Respostas:
A solução, se o driver a complementar, é chamar GDALOpen () com acesso ao GA_Update e usar GDALAddBand ou GDALDataset :: AddBand . No entanto, o driver geotiff não suporta AddBand.
fonte
Para expandir a resposta de Luke e fornecer um exemplo concreto em Python, aqui está um trecho que adiciona uma banda alfa a uma varredura de origem e a salva como PNG.
Eu usei o
MEM
driver em vez de,VRT
já que o último não suportaWriteRaster()
eWriteArray()
(erro "A gravação através do VRTSourcedRasterBand não é suportada."). O uso do driver vrt ainda pode ser possível por meio de outros métodos, suponho.fonte