Aplicar mapa de color

Es posible usar la función LUT de python-opencv para aplicar un mapa de color a una imagen a través de una Lookup table. Supongamos una imagen en escala de grises de nombre imagengs de MxNx1 (un canal), entonces podemos generar una tabla de 256x1 para mapear cada color a una componente específica:


lut_inverse = np.zeros((256, 1), dtype=np.uint8)
for i in range(0,256):
    lut_inverse[i] = 255 - i


dstImage = cv2.LUT(dstImage , lut_inverse )

Es posible también generar un mapa de color. En este caso es necesario generar una lookup table de 256x1x3 para mapear cada pixel a un color específico de la siguiente manera:

lut_color = np.zeros((256, 1, 3), dtype=np.uint8)
for i in range(256):
    lut_color[i, 0, 0] = i  
    lut_color[i, 0, 1] = 0   
    lut_color[i, 0, 2] = 0   

dstImage = cv2.LUT(cv2.merge([dstImage , dstImage , dstImage ]), lut_color)

Last updated