Main Content

Trabajar con imágenes de alto rango dinámico

El rango dinámico se refiere al rango de niveles de brillo, de oscuro a claro. El rango dinámico de escenas del mundo real puede ser bastante alto. Las imágenes de alto rango dinámico (HDR) intentan capturar todo el rango tonal de escenas del mundo real (llamadas ), utilizando valores de punto flotante de 32 bits para almacenar cada canal de color.escena-referida Las imágenes HDR contienen un alto nivel de detalle, cerca del rango de visión humana. La caja de herramientas incluye funciones para leer, crear y escribir imágenes HDR, y un operador de mapa de tonos para mostrar imágenes HDR en un monitor de ordenador.

Leer imagen de alto rango dinámico

Para leer una imagen de alto rango dinámico en el espacio de trabajo, utilice la función.MATLAB®hdrread

hdr_image = hdrread('office.hdr');

La imagen de salida es una imagen de tipo -by- -by-3 de tipo .hdr_imagemnsingle

whos
  Name        Size            Bytes    Class     Attributes    hdr_image   665x1000x3      7980000  single

Tenga en cuenta, sin embargo, que antes de poder mostrar una imagen de alto rango dinámico, debe convertirla en un rango dinámico adecuado para una pantalla de equipo, un proceso llamado .mapeo de tonos Los algoritmos de asignación de tonos escalan el rango dinámico hacia abajo al intentar conservar la apariencia de la imagen original. Para obtener más información, consulte .Mostrar imagen de alto rango dinámico

Crear imagen de alto rango dinámico

Para crear una imagen de alto rango dinámico a partir de un grupo de imágenes de rango dinámico bajo, utilice la función.makehdr Tenga en cuenta que las imágenes de rango dinámico bajo deben registrarse espacialmente y los archivos de imagen deben contener metadatos EXIF. Especifique las imágenes de rango dinámico bajo en una matriz de celdas.

hdr_image = makehdr(files);

Escribir imagen de alto rango dinámico en el archivo

Para escribir una imagen de alto rango dinámico desde el espacio de trabajo en un archivo, utilice la función.MATLABhdrwrite

hdrwrite(hdr,'filename');

Consulte también

| |

Temas relacionados