PPTX DOCX XLSX PDF ODP
Aspose.Imaging  para Python
DNG

Utilice Python para el ajuste de imágenes de DNG

Cree aplicaciones Python para ajustar imágenes y fotos DNG a través de las API del servidor

Cómo ajustar imágenes y fotos de DNG con Python

Al capturar imágenes, pueden ocurrir errores debido a configuraciones incorrectas de la cámara. La iluminación incontrolada también puede afectar los resultados e incluso las fotografías profesionales pueden presentar imperfecciones. Sin embargo, en tales escenarios, existe un método para mejorar la imagen utilizando herramientas de software proporcionadas por la biblioteca Python. Tiene la capacidad de ajustar el brillo, el contraste y el equilibrio de color de la imagen. Por ejemplo, si una foto parece demasiado oscura, aumentar el brillo iluminará las regiones más oscuras, revelando detalles que antes estaban oscurecidos por las sombras. Si su imagen presenta matices de color no deseados debido a la iluminación artificial, puede rectificar esto utilizando la función de ajuste de gamma de color. Para ejecutar estas modificaciones en archivos DNG, puede utilizar Aspose.Imaging for Python via .NET API que es una API de conversión y manipulación de imágenes rica en funciones, potente y fácil de usar para la plataforma Python. Puede instalarlo usando el siguiente comando desde el comando de su sistema.

La línea de comando del sistema

>> pip install aspose-imaging-python-net

Pasos para ajustar DNG a través de Python

Necesita aspose-imaging-python-net para probar el siguiente flujo de trabajo en su propio entorno.

  • Cargue archivos DNG con el método Image.Load
  • Ajustar imágenes;
  • Guarde la imagen comprimida en el disco en el formato compatible con Aspose.Imaging

Requisitos del sistema

Aspose.Imaging para Python es compatible con todos los principales sistemas operativos. Solo asegúrese de tener los siguientes requisitos previos.

  • Microsoft Windows/Linux con .NET Core Runtime.
  • Gestor de paquetes Python y PyPi.
 

Ajustar DNG imágenes - Python

from aspose.imaging import *
from aspose.imaging.fileformats.bmp import *
from aspose.imaging.fileformats.dicom import *
from aspose.imaging.fileformats.emf import *
from aspose.imaging.fileformats.jpeg import *
from aspose.imaging.fileformats.jpeg2000 import *
from aspose.imaging.fileformats.png import *
from aspose.imaging.fileformats.psd import *
from aspose.imaging.fileformats.tiff.enums import *
from aspose.imaging.imagefilters.filteroptions import *
from aspose.imaging.imageoptions import *
from aspose.imaging.masking import *
from aspose.imaging.masking.options import *
from aspose.imaging.masking.result import *
from aspose.imaging.sources import *
from aspose.pycore import as_of, is_assignable
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
def adjust_gamma_rgb():
# https://apireference.aspose.com/imaging/python-net/aspose.imaging.rasterimage/adjustgamma
filter_images(lambda image: image.adjust_gamma(5, 0.1, 0.1), "adjustgammargb")
def adjust_gamma():
filter_images(lambda image: image.adjust_gamma(3), "adjustgamma")
def adjust_contrast():
filter_images(lambda image: image.adjust_contrast(50), "adjustcontrast")
def adjust_brightness():
filter_images(lambda image: image.adjust_brightness(100), "adjustbrightness")
def filter_images(do_filter, filter_name):
obj_init = []
obj_init.append("jpg")
obj_init.append("png")
obj_init.append("bmp")
obj_init.append("apng")
obj_init.append("dicom")
obj_init.append("jp2")
obj_init.append("j2k")
obj_init.append("tga")
obj_init.append("webp")
obj_init.append("tif")
obj_init.append("gif")
obj_init.append("ico")
raster_formats = obj_init
obj_init2 = []
obj_init2.append("svg")
obj_init2.append("otg")
obj_init2.append("odg")
obj_init2.append("eps")
obj_init2.append("wmf")
obj_init2.append("emf")
obj_init2.append("wmz")
obj_init2.append("emz")
obj_init2.append("cmx")
obj_init2.append("cdr")
vector_formats = obj_init2
all_formats = []
all_formats.extend(raster_formats)
all_formats.extend(vector_formats)
for format_ext in all_formats:
input_file = os.path.join(templates_folder, f"template.{format_ext}")
if not os.path.exists(input_file):
continue
is_vector_format = format_ext in vector_formats
if is_vector_format:
input_file = rasterize_vector_image(format_ext, input_file)
output_file = os.path.join(templates_folder, f"{filter_name}_{format_ext}.png")
print(format_ext)
# explicit type casting from Image to RasterImage
with as_of(Image.load(input_file), RasterImage) as image:
do_filter(image)
multi_page = None
# if image implements an IMultipageImage interface
if is_assignable(image, IMultipageImage):
multi_page = as_of(image, IMultipageImage)
if multi_page is not None and multi_page.page_count > 1:
# for loop
page_index = 0
for page in multi_page.pages:
file_name = f"{filter_name}_page{page_index}_{format_ext}.png"
page.save(os.path.join(templates_folder + file_name), PngOptions())
# delete an output file
delete_file(os.path.join(templates_folder + file_name))
page_index += 1
else:
image.save(output_file, PngOptions())
# delete an output file
delete_file(output_file)
# delete a rasterized file
if is_vector_format:
delete_file(input_file)
def delete_file(file):
if delete_output:
os.remove(file)
def rasterize_vector_image(format_ext, input_file):
output_file = os.path.join(templates_folder, f"rasterized.{format_ext}.png")
with Image.load(input_file) as image:
image.save(output_file, PngOptions())
return output_file
# call one of the functions
adjust_brightness()
#adjust_contrast()
#adjust_gamma()
#adjust_gamma_rgb()
 
  • Acerca de Aspose.Imaging para Python API

    Aspose.Imaging API es una solución de procesamiento de imágenes para crear, modificar, dibujar o convertir imágenes (fotos) dentro de las aplicaciones. Ofrece: procesamiento de imágenes multiplataforma, que incluye, entre otros, conversiones entre varios formatos de imagen (incluido el procesamiento uniforme de imágenes de varias páginas o varios cuadros), modificaciones como dibujar, trabajar con primitivas gráficas, transformaciones (redimensionar, recortar, voltear y rotar , binarización, escala de grises, ajuste), funciones avanzadas de manipulación de imágenes (filtrado, difuminado, enmascaramiento, corrección del sesgo) y estrategias de optimización de la memoria. Es una biblioteca independiente y no depende de ningún software para las operaciones de imagen. Uno puede agregar fácilmente funciones de conversión de imágenes de alto rendimiento con API nativas dentro de los proyectos. Estas son API locales 100 % privadas y las imágenes se procesan en sus servidores.

    Ajuste DNG a través de la aplicación en línea

    Ajuste los documentos DNG visitando nuestro [sitio web de demostraciones en vivo] ( https://products.aspose.app/imaging/image-Adjust) . La demostración en vivo tiene los siguientes beneficios

      No es necesario descargar ni configurar nada
      No es necesario escribir ningún código.
      Simplemente cargue sus archivos DNG y presione el botón "Ajustar ahora"
      Obtenga instantáneamente el enlace de descarga para el archivo resultante

    DNG Qué es DNG Formato de archivo

    DNG es un formato de imagen de cámara digital utilizado para el almacenamiento de archivos sin formato. Ha sido desarrollado por Adobe en septiembre de 2004. Fue desarrollado básicamente para fotografía digital. DNG es una extensión del formato estándar TIFF/EP y utiliza metadatos de manera significativa. Para manipular los datos sin procesar de las cámaras digitales con facilidad de flexibilidad y control artístico, los fotógrafos optan por los archivos sin formato de cámara. Los formatos JPEG y TIFF almacenan imágenes que son procesadas por la cámara, por lo tanto, no hay mucho espacio para la alteración disponible en dichos formatos.

    Leer más

    Otros formatos de ajuste admitidos

    Usando Python, uno puede ajustar fácilmente diferentes formatos, incluidos.

    APNG (Gráficos de red portátiles animados)
    BMP (Imagen de mapa de bits)
    ICO (icono de ventanas)
    JPG (Joint Photographic Experts Group)
    JPEG (Joint Photographic Experts Group)
    DIB (Mapa de bits independiente del dispositivo)
    DICOM (Imágenes digitales y comunicaciones)
    DJVU (Formato de gráficos)
    EMF (Formato de metarchivo mejorado)
    EMZ (Metarchivo mejorado comprimido de Windows)
    GIF (Formato de intercambio gráfico)
    JP2 (JPEG2000)
    J2K (Imagen comprimida Wavelet)
    PNG (Gráficos de red portátiles)
    TIFF (Formato de imagen etiquetada)
    TIF (Formato de imagen etiquetada)
    WEBP (Imagen web ráster)
    WMF (Metarchivo de Microsoft Windows)
    WMZ (Máscara de Windows Media Player comprimida)
    TGA (Gráfico Targa)
    SVG (gráficas vectoriales escalables)
    EPS (Lenguaje PostScript Encapsulado)
    CDR (Imagen de dibujo vectorial)
    CMX (Imagen de intercambio de Corel)
    OTG (Estándar de documento abierto)
    ODG (Formato de dibujo de Apache OpenOffice)