Estoy trabajando con un raster RGB en QGIS 2.6.1, en una máquina con Windows 7.
Necesito establecer la opción de Mejora de Contraste a Sin Mejora con la Consola de Python (no a través de la ventana de Propiedades de Capa). He desarrollado un sencillo script, inspirado en esta discusión: Problema con QGIS Scripting actualizando mejoras de contraste para capas raster usando bandStatistics
layer = iface.activeLayer()
renderer = layer.renderer()
ContrastEnhancement = QgsContrastEnhancement.NoEnhancement
for Band in range(3):
if Band == 0:
myBand = layer.renderer().redBand()
elif Band == 1:
myBand = layer.renderer().greenBand()
elif Band == 2:
myBand = layer.renderer().blueBand()
myType = layer.renderer().dataType(myBand)
myEnhancement = QgsContrastEnhancement(myType)
myEnhancement.setContrastEnhancementAlgorithm(ContrastEnhancement,True)
if Band == 0:
layer.renderer().setRedContrastEnhancement(myEnhancement)
elif Band == 1:
layer.renderer().setGreenContrastEnhancement(myEnhancement)
elif Band == 2:
layer.renderer().setBlueContrastEnhancement(myEnhancement)
layer.triggerRepaint()
Desgraciadamente, no funciona y la capa deja de ser visible. Parece que no está manejando correctamente los valores mín./máx. de las bandas. ¿Alguna sugerencia?