Czy istnieje oprogramowanie do analizy zdjęć, które wstępnie sortuje obrazy, identyfikując potencjalne problemy techniczne?

15

Niedawno pojechałem na wakacje i zrobiłem blisko 1000 zdjęć. Jak zwykle są dobre, złe, rozmyte itp.

W celu przyspieszenia przetwarzania końcowego zastanawiałem się, czy istnieje oprogramowanie, które może „wstępnie przeskanować” partię zdjęć i zidentyfikować zdjęcia, które są prześwietlone, niedoświetlone, rozmyte i inne cechy, które mogą zidentyfikować potencjalnie mniej pożądane zdjęcia. Pomysł polega na tym, że po wstępnej kontroli powinien szybko posortować te grupy, aby znaleźć dobre i usunąć resztę. Potem mogę spędzić więcej czasu, patrząc na te, które naprawdę mają znaczenie.

Rozumiem, że każde zdjęcie jest wyjątkowe i jest kilka świetnych zdjęć, które łamią wszelkie zasady, ale pomyślałem, że może to być szybki sposób na przyspieszenie mojego przepływu pracy.

RyanKDalton
źródło
Zredagowałem to pytanie, ponieważ mamy kilka innych programów do analizy zdjęć, służących do zbiorczego raportowania metadanych. To jest inne ....
Przeczytaj Profil
2
Nigdy tego nie widziałem, ale to świetny pomysł. Być może można go zaimplementować jako wtyczkę Lightroom lub Bibble i wykonać culling przy imporcie.
Itai
Dziękujemy za edycję tytułu dla jasności. Jest to zgodne z tym, o czym myślałem.
RyanKDalton,
Interesujące pytanie. 1000 obrazów jest całkiem wykonalnych ręcznie, a gałka oczna MK I poradzi sobie lepiej niż jakikolwiek program w 99% przypadków.
AJ Finch,

Odpowiedzi:

6

Używam Lightroom do sortowania zdjęć. W module Biblioteka ustawiam filtr na Oznaczone i Nieflagowane, a następnie robię zdjęcie wypełniające ekran. Potem zaczynam uderzać w klawisz strzałki w prawo lub klawisz „x”. „X” oznacza zdjęcie jako „odrzucone” i sprawia, że ​​nie jest już widoczne. Łatwo jest wykonać 1000 zdjęć w mgnieniu oka. Po przejrzeniu wszystkich zdjęć, po prostu wybieram Usuń odrzucone zdjęcia i gotowe.

Dan Wolfgang
źródło
1
Zgadzam się - szybkie przejście w Lightroomie może szybko zawęzić twoją listę. Wygląda na wyzwanie w przepływie pracy.
D. Lambert
1

Program Photoshop Elements ma funkcję automatycznej analizy, która wykonuje niektóre z tych czynności - próbuje wykryć, czy zdjęcia są rozmazane, czy są na nich twarze itp. Nie powiedziałbym, że jest genialny. Na przykład możesz chcieć zrezygnować z elementów ostrości na zdjęciu, a automatyczny algorytm nadal oznaczy go jako zamazany.

Nie sądzę, że 1000 zdjęć to tak wiele, aby ręcznie przejść przez proces przepływu pracy za pomocą czegoś takiego jak Lightroom. Zacznij od wstępnego oznaczenia skanu jako odrzucone, które są oczywiście bezużyteczne, a następnie zawęź kryteria wyszukiwania, malowania kolorami i znaczników według własnego uznania.

Jan
źródło
1

Tak naprawdę szukałem czegoś, co pomogłoby mi przynajmniej rozpocząć proces wycinania rzeczy (tysiące nawiasów kwadratowych).

Zrobiłem proste narzędzie do skanowania katalogu obrazów i przenoszenia / niedoświetlania obrazów do innego folderu. Nie jest doskonały i w żadnym wypadku nie pozwala na swobodę artystyczną, jaką zapewnia fotografia (ale pomaga mi zaoszczędzić czas). Technicznie robi średnią wartość piksela dla każdego obrazu (od 0 do 1,0), a następnie można zachować lub odrzucić na podstawie ustawianych progów. Sprawdź projekt AutoExposureChecker i dokumenty na github, aby uzyskać więcej informacji.

Za pomocą tego narzędzia mogę następnie dokładnie sprawdzić, czy wszystkie obrazy są w porządku, aby je usunąć (przenosząc te, które są naprawdę potrzebne) i wyczyścić wszystko inne w jednym pierwszym przejściu, oszczędzając mi mnóstwo czasu.

Tak czy inaczej, pomyślałem, że podzielę się i chętnie strzelę!

Andrew McOlash
źródło
1

Jest to dość łatwe, jeśli możesz pisać w języku Python. Oto dobry artykuł na temat korzystania z pakietu wizji komputerowej typu open source do wykrywania ogólnego rozmazania obrazu:

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

Oto krótki skrypt, który posortuje zdjęcia w niewyraźne / ok katalogi:

#
# 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))

Twoim najtrudniejszym problemem będzie instalacja Pythona i OpenCV w systemie. Google python3 dla twojego systemu operacyjnego i jak zainstalować pip z nim, możesz użyć pip3, aby zainstalować opencv. Lub są też pewne instalacje przedkompilacyjne Pythona i OpenCV. Nie potrzebujesz najnowszej wersji opencv, aby uruchomić ten skrypt.

Skrypt działa świetnie i mierzy ogólne rozmycie obrazu. Jest to dobre dla większości zdjęć. Jednak ogólny pomiar obrazu oznacza, że ​​zdjęcia wypełnione jedną twarzą i bokeh będą umieszczone w rozmytym katalogu i będziesz musiał je uporządkować z powrotem. W każdym razie powinieneś przejrzeć zamazane zdjęcia, aby upewnić się, że nie ma tam źle umieszczonych opiekunów.

Mam nadzieję, że ten skrypt przyspieszy przepływ pracy.

Doskonałym ulepszeniem tego skryptu jest włączenie wykrywania twarzy i obliczenie rozmycia na największych twarzach na zdjęciu oraz użycie tych wartości dla progu rozmycia, domyślnie przyjmując ogólne rozmycie, jeśli nie zostaną wykryte twarze. To ulepszenie pozostawię tobie!

RubinMac
źródło
Świetna odpowiedź! Łatwo będzie to wbić we własne etui. Wszystkie moje zdjęcia są wykonywane za pomocą tanich telefonów lub aparatów cyfrowych. Czasami nie mogę się zatrzymać w miejscu, aby łatwo uzyskać wyraźny strzał. Ale mogę zrobić kilkanaście zdjęć i użyć wersji tego kodu, którą mogę zmodyfikować, aby sortować je od najostrzejszych do najbardziej rozmytych.
hippietrail
1

Nie znam aplikacji, które mogą automatycznie wyświetlać potencjalnie wadliwe zdjęcia, ale nie używałbym ich, przynajmniej nie na ślepo.

Zalety techniczne to tylko część tego, czym jest zdjęcie. Niektóre z najbardziej znaczących obrazów są technicznie wadliwe. W wielu przypadkach lepiej niż doskonalsza technicznie, która, na przykład, ma gorszy skład lub mniej tego, co Cartier Bresson nazwał „momentem decydującym”.

Ponadto niektóre błędy można naprawić lub poprawić w edycji. Podczas gdy ostrość i rozmycie są prawie niemożliwe do skorygowania (chociaż może się to zmienić w przyszłości ), może dodać interesujący lub akceptowalny efekt. Na przykład narażenie jest jednym z nich. Lekko prześwietlone lub niedoświetlone zdjęcie (szczególnie jeśli zostało wykonane w formacie RAW) nie powinno być preferowane w stosunku do „idealnie” naświetlonego samego obiektu, ponieważ można go łatwo naprawić.

Na przykład to zdjęcie było jednorazowym ujęciem, które wyszło prawie 3 EV prześwietlone, ponieważ aparat miał nieprawidłowe ustawienia. Jednak dzięki szerokości geograficznej zapewnianej przez pliki RAW można go odzyskać, a zautomatyzowany proces odrzuciłby go.

Odpowiadam więc drugi raz przed moim, mówiąc, że efektywnie obsługiwany przepływ pracy jest lepszy niż zautomatyzowany proces. Tysiące zdjęć można zrobić w Lightroom w ciągu godziny lub dwóch.

guioconnor
źródło
2
Zgadzam się również z twoimi i wszystkimi przemyśleniami tutaj, dlatego powiedziałem: „Rozumiem, że każde zdjęcie jest wyjątkowe, a są też świetne zdjęcia, które łamią każdą zasadę” . Nie ma „magicznego narzędzia”, które można by uruchomić, aby znaleźć wspaniałe zdjęcia, ponieważ ludzki mózg jest jedyną rzeczą, która może nam powiedzieć, czy fotografia się do nas przenosi, czy nie. Naprawdę była to tylko koncepcja, którą miałem i zastanawiałem się, czy ktoś już próbował podobnych technik. Ślepe podążanie za jakimkolwiek oprogramowaniem jest po prostu głupie, ale często można użyć narzędzi, które pomogą nam poprowadzić nas na naszej drodze.
RyanKDalton,
Oczywiście, ten rodzaj screeningu może być przydatny, gdy aplikacja sugeruje zmiany zamiast wybierania zdjęć. Możesz na przykład znormalizować ekspozycję na podobnych zdjęciach przed dodaniem ustawienia edycji.
guioconnor
0

Sprawdź DXO Photo lab. Może automatycznie poprawiać zdjęcia na podstawie profili aparatu i obiektywu. Możesz szybko oceniać zdjęcia, przeglądając je i eksportować tylko te, które zostały ocenione.

Thiagu
źródło