Hace poco me fui de vacaciones y tomé cerca de 1000 fotografías. Como siempre hay algunos buenos, malos, borrosos, etc.
Para acelerar el posprocesamiento, me preguntaba si existe algún software que pueda "preseleccionar" un lote de fotos e identificar fotos que están sobreexpuestas, subexpuestas, borrosas y otras características que pueden identificar fotografías potencialmente menos deseables. La idea es que mediante la preselección, debería hacer un trabajo rápido de clasificar esos grupos para encontrar los buenos y eliminar el resto. Entonces puedo pasar más tiempo mirando los que realmente importan.
Entiendo que cada fotografía es única y que hay algunas fotografías geniales que rompen todas las reglas generales, pero pensé que esta podría ser una forma rápida de acelerar mi flujo de trabajo.
Uso Lightroom para ordenar las fotos. En el módulo Biblioteca configuro el filtro en Marcado y Sin marcar, luego hago que una foto llene la pantalla. Luego empiezo a presionar la tecla de flecha derecha o la tecla "x". La "X" marca la foto como "rechazada" y la hace invisible. Es fácil pasar 1000 fotos en poco tiempo. Una vez que he revisado todas las fotos, simplemente elijo Eliminar fotos rechazadas y listo.
Esto es bastante fácil de hacer si puedes escribir en Python. Aquí hay un buen artículo sobre el uso de un paquete de visión por computadora de código abierto para detectar imágenes borrosas en general:
https://www.pyimagesearch.com/2015/09/07/blur-detection-with-opencv/
Aquí hay una secuencia de comandos rápida que clasificará las imágenes en directorios borrosos/ok:
#
# Sorts pictures in current directory into two subdirs, blurred and ok
#
import os
import shutil
import cv2
FOCUS_THRESHOLD = 80
BLURRED_DIR = 'blurred'
OK_DIR = 'ok'
blur_count = 0
files = [f for f in os.listdir('.') if f.endswith('.jpg')]
try:
os.makedirs(BLURRED_DIR)
os.makedirs(OK_DIR)
except:
pass
for infile in files:
print('Processing file %s ...' % (infile))
cv_image = cv2.imread(infile)
# Covert to grayscale
gray = cv2.cvtColor(cv_image, cv2.COLOR_BGR2GRAY)
# Compute the Laplacian of the image and then the focus
# measure is simply the variance of the Laplacian
variance_of_laplacian = cv2.Laplacian(gray, cv2.CV_64F).var()
# If below threshold, it's blurry
if variance_of_laplacian < FOCUS_THRESHOLD:
shutil.move(infile, BLURRED_DIR)
blur_count += 1
else:
shutil.move(infile, OK_DIR)
print('Done. Processed %d files into %d blurred, and %d ok.' % (len(files), blur_count, len(files)-blur_count))
Su problema más complicado será instalar python y opencv en su sistema. Google python3 para su sistema operativo y cómo instalar pip con él, puede usar pip3 para instalar opencv. O también hay algunas instalaciones preconstruidas de python+opencv. No necesita la versión más reciente de opencv para ejecutar este script.
El guión funciona muy bien y mide la borrosidad general de la imagen. Esto es bueno para la mayoría de las imágenes. Sin embargo, la medición general de la imagen significa que esas fotografías de fondo llenas de una cara y bokeh se colocarán en el directorio borroso y tendrá que volver a clasificarlas. De todos modos, debe revisar las imágenes borrosas para asegurarse de que no haya guardianes fuera de lugar allí.
Espero que este script acelere su flujo de trabajo.
Una buena mejora de este script es incluir la detección de rostros y calcular la borrosidad en las caras más grandes de la fotografía, y usar esos valores para el umbral de borrosidad, prefiriendo la borrosidad general si no se detectan rostros. ¡Te dejo esa mejora a ti!
Photoshop Elements tiene una función de autoanálisis que hace algo de esto: intenta detectar si las fotos están borrosas, si hay caras en ellas, etc. Yo no diría que es brillante. Por ejemplo, es posible que realmente desee componentes desenfocados en su fotografía y el algoritmo automatizado aún lo marcará como borroso.
No creo que 1000 fotos sean en realidad tantas para pasar manualmente en un proceso de flujo de trabajo usando algo como Lightroom. Comience con un escaneo inicial que marque como rechazados aquellos que son obviamente inutilizables y luego refine usando calificaciones, pintura de color y etiquetas como mejor le parezca.
De hecho, estaba buscando algo que me ayudara al menos a comenzar el proceso de eliminar las cosas (miles de imágenes entre paréntesis).
Hice una herramienta simple para escanear un directorio de imágenes y mover imágenes sobre/subexpuestas a una carpeta diferente. No es perfecto y de ninguna manera permite las libertades artísticas que permite la fotografía (pero me ayuda a ahorrar tiempo). Lo que técnicamente hace es obtener el valor de píxel promedio de cada imagen (de 0 a 1,0) y luego puede mantenerlo o rechazarlo según los umbrales que se pueden establecer. Consulte el proyecto AutoExposureChecker y los documentos en github para obtener más información.
Con esta herramienta, puedo verificar dos veces que todas las imágenes estén bien para eliminar (quitando las que realmente se necesitan) y borrar todo lo demás en una primera pasada, ahorrándome toneladas de tiempo.
De todos modos, ¡pensé en compartir y feliz disparo!
No conozco aplicaciones que puedan filtrar automáticamente imágenes potencialmente defectuosas, pero yo no las usaría, al menos no a ciegas.
El mérito técnico es solo una parte de lo que es una foto. Algunas de las imágenes más significativas resultan ser técnicamente defectuosas. En muchos casos, preferible a uno técnicamente más perfecto que, por ejemplo, tenga una composición más pobre o menos de lo que Cartier Bresson llamó "el momento decisivo".
Además, algunos defectos se pueden corregir o mejorar en la edición. Si bien el enfoque y el desenfoque son prácticamente imposibles de corregir (aunque esto puede cambiar en el futuro ), puede agregar un efecto interesante o aceptable. La exposición, por ejemplo, es una de ellas. No se debe preferir una imagen ligeramente sobreexpuesta o subexpuesta (especialmente si se toma en RAW) a una exposición "perfecta" solo en esta propiedad, ya que se puede arreglar fácilmente.
Por ejemplo, esta foto fue una toma única que salió casi 3EV sobreexpuesta porque la cámara tenía la configuración incorrecta. Sin embargo, gracias a la latitud proporcionada por los archivos RAW, podría recuperarse, mientras que un proceso automatizado lo habría descartado.
Entonces, secundo las respuestas antes que las mías, diciendo que un flujo de trabajo respaldado de manera eficiente es mejor que un proceso automatizado. Miles de imágenes son bastante manejables en Lightroom en una o dos horas.
Compruebe el laboratorio fotográfico de DXO. Puede corregir fotos automáticamente según los perfiles de la cámara y la lente. Puede calificar rápidamente las fotos navegando a través de ellas y exportar solo las fotos que ha calificado.
Agisoft Metashape puede estimar la calidad de la imagen. Esto se describe en el manual en la página 14 :
Una entrada deficiente, por ejemplo, fotos vagas, puede influir negativamente en los resultados de la alineación. Para ayudarlo a excluir imágenes mal enfocadas del procesamiento, Metashape sugiere una función de estimación automática de la calidad de la imagen. Se recomienda deshabilitar las imágenes con un valor de calidad inferior a 0,5 unidades y por tanto excluirlas del procesamiento fotogramétrico, siempre que el resto de las fotos abarquen toda la escena a reconstruir. Para deshabilitar una foto, use el botón Deshabilitar de la barra de herramientas del panel Fotos.
Metashape estima la calidad de la imagen para cada imagen de entrada. El valor del parámetro se calcula en función del nivel de nitidez de la parte más enfocada de la imagen.
La sobreexposición, la subexposición y la borrosidad dan como resultado la pérdida de información que permite que la compresión JPEG reduzca los archivos de manera más efectiva.
Entonces, como una medida muy aproximada, puede ordenar los archivos JPEG de acuerdo con el tamaño de archivo ascendente y comenzar su proceso de selección desde el tamaño más pequeño. Aquí, la proporción de archivos que no le interesa conservar debe ser significativamente mayor que con aquellos archivos que tienen un tamaño de archivo más alto, suponiendo condiciones de toma de imágenes similares.
Sin embargo, los archivos tomados con valores ISO más altos tenderán a ser más ruidosos y el ruido no se comprime bien. Sin embargo, es probable que los algoritmos de reducción de ruido de su cámara eliminen suficiente información para que esos archivos vuelvan a comprimirse mejor. Puede tener sentido mirar diferentes valores ISO por separado, pero depende de los algoritmos de su cámara si ese tipo de clasificación previa hará una gran diferencia.
dpollitt
mattdm
itai
RyanKDalton
pinzón aj
james joven
mattdm
hombre de alaska
RyanKDalton