Existe um software de análise de fotos que pré-classifique as imagens identificando possíveis problemas técnicos?


15

Recentemente, saí de férias e tirei cerca de 1.000 fotografias. Como sempre, existem alguns bons, maus, embaçados, etc.

Para agilizar o pós-processamento, fiquei imaginando se existe algum software que possa "pré-selecionar" um lote de fotos e identificar fotos superexpostas, subexpostas, desfocadas e outras características que possam identificar fotografias potencialmente menos desejáveis. A ideia é que, antes da triagem, ele faça um trabalho rápido de classificação entre esses grupos para encontrar os bons e excluir o restante. Depois, posso passar mais tempo olhando para os que realmente importam.

Entendo que todas as fotografias são únicas e existem ótimas fotografias que quebram todas as regras, mas achei que essa seria uma maneira rápida de acelerar meu fluxo de trabalho.



Editei a pergunta porque temos várias outras sobre o software de análise de fotos simplesmente para gerar relatórios sobre metadados agregados. Isso é diferente ....
mattdm

2
Nunca vi isso, mas é uma ótima idéia. Talvez ele possa ser implementado como um plug-in do Lightroom ou do Bibble e ter a seleção realizada na importação.
Itai

Obrigado por editar o título para maior clareza. Está certo no que eu estava pensando.
RyanKDalton-OffTheGridMaps

Pergunta interessante. 1.000 imagens podem ser executadas manualmente, e o globo ocular MK I se sai melhor do que qualquer software 99% do tempo.
21412 AJ Finch

Respostas:


6

Eu uso o Lightroom para classificar as fotos. No módulo Biblioteca, defino o filtro como Sinalizado e Não sinalizado e, em seguida, faço uma foto preencher a tela. Então começo a pressionar a tecla de seta para a direita ou a tecla "x". "X" marca a foto como "rejeitada" e a deixa mais visível. É fácil fotografar 1000 fotos rapidamente. Depois de examinar todas as fotos, optei por Excluir fotos rejeitadas e pronto.


11
Eu concordo - um passe rápido no Lightroom pode restringir sua lista rapidamente. Parece um desafio para o fluxo de trabalho.
D. Lambert

1

O Photoshop Elements possui uma função de autoanálise que faz parte disso - tenta detectar se as fotos estão desfocadas, se há rostos nelas etc. Não diria que é brilhante. Por exemplo, você pode realmente querer componentes fora de foco em sua fotografia e o algoritmo automatizado ainda a marcará como desfocada.

Eu não acho que 1000 fotos sejam realmente muitas para passar manualmente em um processo de fluxo de trabalho usando algo como o Lightroom. Comece com uma marcação de digitalização inicial como rejeitada e obviamente inutilizável e depois refine usando classificações, pintura em cores e tags conforme desejar.


1

Na verdade, eu estava procurando algo que me ajudasse a pelo menos iniciar o processo de eliminar as coisas (milhares de imagens entre colchetes).

Criei uma ferramenta simples para digitalizar um diretório de imagens e mover imagens sobre / subexpostas para uma pasta diferente. Não é perfeito e de forma alguma permite as liberdades artísticas que a fotografia faz (mas ajuda a economizar tempo). O que tecnicamente faz é obter o valor médio de pixel de cada imagem (de 0 a 1,0) e, em seguida, você pode manter ou rejeitar com base nos limites que podem ser definidos. Confira o projeto do AutoExposureChecker e os documentos no github para obter mais informações.

Com essa ferramenta, posso verificar se todas as imagens estão prontas para excluir (mover as que realmente são desejadas) e limpar tudo o mais em uma primeira passagem, economizando muito tempo.

De qualquer forma, pensei que eu iria compartilhar e tiro feliz!


1

Isso é muito fácil de fazer se você pode escrever em Python. Aqui está um bom artigo sobre o uso de um pacote de visão computacional de código aberto para detectar o embaçamento geral da imagem:

https://www.pyimagesearch.com/2015/09/07/blur-detection-with-opencv/

Aqui está um script rápido que classifica as imagens em diretórios desfocados / 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))

Seu problema mais complicado será instalar o python e o opencv no seu sistema. Google python3 para o seu sistema operacional e como instalar o pip com ele, você pode usar o pip3 para instalar o opencv. Ou também existem algumas instalações de pré-compilação python + opencv. Você não precisa da versão mais recente do opencv para executar este script.

O script funciona muito bem e mede a desfocagem geral da imagem. Isso é bom para a maioria das fotos. No entanto, a medição geral da imagem significa que as fotografias de fundo preenchidas com um rosto e bokeh serão colocadas no diretório fora de foco e você precisará resolvê-las novamente. De qualquer forma, você deve examinar as imagens desfocadas para garantir que não haja detentores fora do lugar.

Espero que esse script acelere seu fluxo de trabalho.

Um aprimoramento puro desse script é incluir a detecção de rosto e calcular a desfocagem nos rostos maiores da fotografia e usar esses valores para o limite de desfocagem, padronizando o desfoque geral se nenhum rosto for detectado. Vou deixar essa melhoria com você!


Ótima resposta! Será fácil fazer massagens no meu próprio caso de uso. Todas as minhas fotos são tiradas com telefones baratos ou câmeras digitais. Às vezes, não consigo ficar quieto o suficiente para tirar uma foto clara com facilidade. Mas posso tirar uma dúzia de fotos e usar uma versão desse código que possa ser modificada para classificá-las da mais nítida para a mais desfocada.
Hippietrail 23/07/19

1

Não conheço aplicativos que possam exibir automaticamente imagens potencialmente defeituosas para você, mas não as usaria, pelo menos não cegamente.

O mérito técnico é apenas parte do que é uma foto. Algumas das imagens mais significativas são tecnicamente defeituosas. Em muitos casos, preferível a um tecnicamente mais perfeito que, por exemplo, tenha uma composição mais pobre ou menos do que Cartier Bresson chamou de "o momento decisivo".

Além disso, algumas falhas podem ser corrigidas ou aprimoradas na edição. Embora o foco e a desfocagem sejam praticamente impossíveis de corrigir (embora isso possa mudar no futuro ), ele pode adicionar um efeito interessante ou aceitável. Exposição, por exemplo, é uma delas. Uma imagem ligeiramente superexposta ou subexposta (especialmente se tirada em RAW) não deve ser preferida a uma imagem "perfeitamente" exposta somente nesta propriedade, porque pode ser facilmente corrigida.

Por exemplo, essa foto foi uma foto única que saiu quase superexposta em 3EV porque a câmera tinha as configurações incorretas. No entanto, graças à latitude fornecida pelos arquivos RAW, ele poderia ser recuperado, enquanto um processo automatizado o descartaria.

Então, eu respondo antes da minha, dizendo que um fluxo de trabalho com suporte eficiente é melhor que um processo automatizado. Milhares de fotos são gerenciáveis ​​no Lightroom dentro de uma ou duas horas.


2
Também concordo com os pensamentos de vocês e de todos aqui, e foi por isso que afirmei "Entendo que toda fotografia é única e existem ótimas fotos que quebram todas as regras" . Não existe uma "ferramenta mágica" que se possa executar para encontrar ótimas fotos, porque o cérebro humano é a única coisa que pode nos dizer se uma fotografia está se movendo para nós ou não. Realmente era apenas um conceito que eu tinha e me perguntava se alguém já havia tentado técnicas semelhantes. Seguir qualquer software às cegas é simplesmente burro, mas muitas vezes as ferramentas podem ser usadas para ajudar a nos guiar no caminho.
RyanKDalton-OffTheGridMaps

Absolutamente, esse tipo de triagem pode ser útil para o aplicativo sugerir alterações em vez de selecionar as fotos. Você pode normalizar a exposição em imagens semelhantes, por exemplo, antes de adicionar uma predefinição de edição.
guioconnor

0

Verifique o laboratório DXO Photo. Ele pode corrigir fotos automaticamente com base nos perfis de câmera e lente. Você pode classificar as fotos rapidamente navegando por elas e exportar apenas as fotos que você classificou.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.