Pregunta

Tengo un centenar de 128 x 128 archivos .pgm con algunas formas en ellos y creo que su escala de colores es 255 (no estoy seguro en este caso, sin embargo, por lo que sería bueno si hay una solución que también podría tomar en consideración) y yo necesidad de extraer estos colores para procesar las imágenes. Así lo que me gustaría terminar con sería una matriz de 128 x 128 con cada elemento tiene un valor entre 0 -. 255, suponiendo que el ejemplo 256 colores

En cuanto a la lengua, nada en Python / Java / C # hará, preferentemente, en ese orden. Puedo usar las bibliotecas de modo exclusivo, ya sea Windows o Linux no son un problema.

¿Fue útil?

Solución

En cuanto a una solución pitón va, yo creo PIL archivos soportes .pgm. En ese caso (usando numpy como el recipiente de matriz, pero esta parte es opcional):

(Edición: Re-leer su pregunta y se dio cuenta de que quería específicamente en escala de grises, en lugar de RGB ... Lo que debería haber dado cuenta del formato .pgm, de todos modos ...)

import Image
import numpy as np

im = Image.open('test.pgm')

# Convert to grayscale (single 8-bit band), if it's not already...
im = im.convert('L')

# "data" is a uint8 (0-255) numpy array...
data = np.asarray(im)

Otros consejos

P ortable G ray < strong> M formato / ap es tan trivial que yo consideraría una cuestión de honor para escribir un analizador de archivos pgm del mismo en cualquier idioma que necesita. Cada valor leído de archivo PGM correspondería a RGB

255*Value/Max_Value
bytes.

buena suerte.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top