Procesamiento de imágenes en MATLAB | Operaciones Fundamentales

1. Lectura de imágenes 

Las imágenes se leen en el entorno MATLAB mediante la función imread(), que toma como argumento el nombre del archivo con la extensión correspondiente. 

Por ejemplo: 

>> I=imread('nature.jpg');

Esto leerá la imagen JPEG ‘naturaleza’ en la array de imágenes. 

Nota: El punto y coma (;) al final de la línea de comando se usa para suprimir la salida en MATLAB. If ‘;’ no se usa al final, mostrará el resultado de la operación especificada. 

2. Visualización de imágenes 

La función imshow() se utiliza para mostrar imágenes en MATLAB. La sintaxis básica de imshow() es 

immostrar(f, G); 

Aquí f es la array de la imagen y G es el número de niveles de intensidad utilizados para mostrar la imagen. El segundo Argumento en la sintaxis anterior es opcional. Si se omite G, su valor predeterminado es de 256 niveles. 

Cuando usamos la sintaxis 

imshow(f, [Bajo, Alto]); 

Muestra todos los valores menores o iguales a ‘Bajo’ en negro y todos los valores mayores o iguales a ‘Alto’ en blanco. Los valores entre ‘Bajo’ y ‘Alto’ se muestran como el valor de intensidad intermedia utilizando el número predeterminado de niveles. 

Ejemplos: 

Mostrar imágenes en escala de grises 

>> imshow(f);

Esto mostrará la imagen en escala de grises f

Además, podemos escribir  

>> imshow(f, [90, 180]);

Mostrará todos los valores menores o iguales a 90 en negro y todos los valores mayores o iguales a 180 en blanco. Los valores entre 90 y 180 se muestran como el valor de intensidad intermedia utilizando el número de niveles predeterminado. 

Mostrando imágenes binarias  

>> imshow(BW);

Muestra la imagen binaria BW . Muestra los píxeles con el valor 0 (cero) en negro y los píxeles con el valor 1 en blanco. 

Mostrando imágenes RGB  

>> imshow(f);

Muestra la imagen RGB f

3. Escribir imágenes en el disco 

Las imágenes se escriben en el disco usando la función imwrite() . La sintaxis básica de imwrite() es 

imwrite(f, ‘nombre de archivo’); 

Aquí f es nuestra imagen y el nombre de archivo es el nombre del archivo que incluye una extensión de formato de archivo reconocida. Alternativamente, también podemos especificar el formato deseado explícitamente con un tercer argumento. 

Por ejemplo 

>> imwrite(f, 'nature.jpg');

Alternativamente, podemos escribirlo como, 

>> imwrite(f, 'nature', 'jpg');

Los comandos anteriores escriben la imagen f en un nombre de archivo con extensión jpg. 

Nota: La función imwrite() también tiene algunos parámetros opcionales, según el formato del archivo. 

Por ejemplo:  

>> imwrite(f, 'filename', 'quality', q); 

La sintaxis anterior es aplicable solo para imágenes JPEG. Aquí q es un número entero y puede tomar un valor entre 0 y 100. Baje el valor de q más alta es la degradación debido a la compresión JPEG. 

Algunas otras funciones importantes 

i.) imfinfo 

Muestra los detalles de un archivo de imagen. 

Ejemplo: 

>> imfinfo nature.jpg;

Producción:  

          Filename: 'nature.jpg'
        FileModDate: '23-Jun-2016 09:57:04'
           FileSize: 238290
             Format: 'jpg'
      FormatVersion: ''
              Width: 1920
             Height: 1200
           BitDepth: 24
          ColorType: 'truecolor'
    FormatSignature: ''
    NumberOfSamples: 3
       CodingMethod: 'Huffman'
      CodingProcess: 'Sequential'
            Comment: {'CREATOR: gd-jpeg v1.0 (using IJG JPEG v80), quality = 92?'} 

ii.) La función size()  
size() toma la array de imagen como argumento y proporciona la dimensión de fila y columna de una imagen f. Esta función se utiliza para determinar el tamaño de una imagen automáticamente. 

Ejemplo :  

>> size(f)

Producción :  

ans =
  1920 1200

Aquí 1920 es el número de filas y 1200 es el número de columnas en la imagen f. 

Nota: Como sabemos, las imágenes RGB se representan mediante una array 3D en MATLAB. Entonces, si f es una imagen RGB, la función anterior producirá una salida como 

ans =
  1920 1200 3

iii.) quién es f 

Esta función mostrará detalles adicionales sobre la array de imagen f. 

Ejemplo :  

whos f

Producción :  

 Name        Size                Bytes    Class    Attributes
  f         300x400x3            360000   uint8   

Publicación traducida automáticamente

Artículo escrito por ihritik y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *