Читать книгу Visión artificial - Tomás Domínguez Mínguez - Страница 11
3.2 OBTENCIÓN DE LAS CARACTERÍSTICAS DE UNA IMAGEN
ОглавлениеLas imágenes se almacenan como matrices de píxeles en objetos de la clase ndarray, de los que se pueden extraer características clave como sus dimensiones, el número de canales que las componen, el tipo de dato con el que se almacena la información o el tamaño que ocupa en disco.
Para conocer las dimensiones y el número de canales de una imagen, acceda a su atributo:
shape
El valor de dicho atributo es una tupla con tres valores:
(alto, ancho, n.° canales)
El tamaño que ocupa en disco una imagen vendrá dado por su ancho y alto, así como por el número de canales que contiene. Una imagen en blanco y negro tiene un canal, mientras que las de color se componen de tres (uno por cada color primario). Si cada color se almacenara en un byte, el tamaño en bytes de una imagen sería:
tamaño imagen = ancho x alto x n.° canales
Como se ha indicado, este cálculo es válido cuando los elementos de la matriz de la imagen ocupen un byte, por ejemplo, del tipo uint8. No todos los tipos de datos ocupan lo mismo en disco. Si quiere conocer cuál es el utilizado en una imagen, consulte el atributo:
dtype
Sin embargo, la forma más sencilla de conocer el tamaño en disco de una imagen es accediendo a su atributo:
size
Añada las siguientes sentencias al final del programa visto anteriormente (aquel con el que se cargaba y visualizaba la imagen en color de la niña):
Ahora, además de mostrarse la imagen en pantalla, en la shell obtendrá como resultado que tiene un tamaño de 921 600 píxeles, sus dimensiones son de 640 × 480 píxeles y se compone de tres canales, cuyos valores son del tipo uint8.
Compruebe que el tamaño de la imagen es el resultado de multiplicar el ancho por el alto y el número de canales (colores por píxel). En este caso, 640 × 480 × 3 = 921 600.