Чи є програмне забезпечення для аналізу фотографій, яке буде попередньо сортувати зображення, виявляючи потенційні технічні проблеми?


15

Нещодавно я пішов у відпустку і взяв близько 1000 фотографій. Як завжди, є якісь хороші, погані, розмиті тощо.

Щоб пришвидшити післяобробку, мені було цікаво, чи є там якесь програмне забезпечення, яке може «попередньо екранувати» групу фотографій та ідентифікувати фотографії, які є надмірно експонованими, недостатньо експонованими, розмитими та іншими характеристиками, які можуть ідентифікувати потенційно менш бажані фотографії. Ідея полягає в тому, що, попередньо провівши скринінг, він повинен швидко здійснити сортування цих груп, щоб знайти хороші, а решту видалити. Тоді я можу витратити більше часу на перегляд тих, що насправді мають значення.

Я розумію, що кожна фотографія унікальна, і є кілька чудових фотографій, які порушують кожне правило, але я подумав, що це може бути швидким способом прискорити мій робочий процес.


Подібне запитання про фокус photo.stackexchange.com/questions/7354/auto-detect-image-focus
dpollitt

Я відредагував це запитання, оскільки у нас є кілька інших програм щодо аналізу фотографій просто для звітування про метадані в сукупності. Це інше ....
Прочитайте профіль

2
Ніколи цього не бачив, але це чудова ідея. Можливо, він міг бути реалізований як плагін Lightroom або Bibble і завершити процес імпорту.
Ітаї

Дякуємо, що ви відредагували заголовок для наочності. Це правильно на те, що я думав.
RyanKDalton

Цікаве запитання. 1000 зображень цілком можна зробити вручну, і очне яблуко MK I зробить краще будь-якого програмного забезпечення 99% часу.
AJ Finch

Відповіді:


6

Я використовую Lightroom для сортування фотографій. У модулі "Бібліотека" я встановлюю фільтр на "Позначений" та "Не відмічений", а потім роблю фотографію, що заповнює екран. Тоді я просто починаю натискати на праву клавішу зі стрілкою або клавішу "x". "X" позначає фотографію як "відхилену" і робить її більше не видимою. Легко здійснити реалізацію 1000 фотографій за один раз. Після того, як я переглянув усі фотографії, я просто вибираю Видалити відхилені фотографії, і я закінчую.


1
Я згоден - швидкий перехід у Lightroom може поспішати звузити ваш список. Схоже, проблема з робочим процесом.
Д. Ламберт

1

Photoshop Elements має функцію автоаналізу, яка робить щось із цього - він намагається виявити, чи є фотографії розмитими, якщо в них є обличчя тощо. Я б не сказав, що це геніально. Наприклад, ви, можливо, хочете, щоб компоненти фотографії у фокусі не були, а автоматизований алгоритм все одно позначатиме його як розмитий.

Я не думаю, що 1000 фотографій насправді так багато, щоб вручну пройти процес роботи, використовуючи щось на зразок Lightroom. Почніть з початкового маркування сканування як відхилених, які, очевидно, непридатні для використання, а потім уточнити за допомогою рейтингів, кольорової картини та тегів, як вважаєте за потрібне.


1

Я насправді роздивлявся щось, що допомогло б мені принаймні почати процес витирання речей (тисячі зображень, укладених у рамки).

Я зробив простий інструмент для сканування каталогу зображень та переміщення / недоекспонованих зображень у іншу папку. Це не досконало і аж ніяк не дозволяє художнім свободам, які робить фотографія (але це допомагає заощадити мені час). Технічно це - отримати середнє значення пікселя кожного зображення (від 0 до 1,0), а потім ви можете зберігати або відхиляти на основі встановлених порогів. Перегляньте проект AutoExposureChecker та документи на github для отримання додаткової інформації.

За допомогою цього інструменту я можу лише двічі перевірити, чи всі зображення в порядку, щоб видалити (переміщуючи ті, які насправді потрібні), і стерти все інше за один перший прохід, заощадивши мені тонни часу.

У будь-якому випадку, думав, що поділюсь і з задоволенням знімаю!


1

Це досить легко зробити, якщо ви можете писати на Python. Ось хороша стаття про використання пакета комп'ютерного зору з відкритим кодом для виявлення загальної розмитості зображення:

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

Ось швидкий сценарій, який сортуватиме зображення в розмиті / нормальні каталоги:

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

Вашою найскладнішою проблемою буде встановлення python та opencv у вашу систему. Google python3 для вашої ОС, і як встановити pip за допомогою неї, ви можете використовувати pip3 для встановлення opencv. Або також є деякі встановлення попереднього збирання python + opencv. Для запуску цього сценарію вам не потрібна найновіша версія opencv.

Сценарій працює чудово, і він вимірює загальну розмитість картини. Це добре для більшості знімків. Однак загальне вимірювання зображень означає, що фотографії, заповнені обличчям та боке, будуть розміщені в розмитому каталозі, і вам доведеться їх сортувати. У будь-якому випадку, вам слід пройти крізь розмиті фотографії, щоб переконатися, що там немає недоречних охоронців.

Я сподіваюся, що цей сценарій прискорить ваш робочий процес.

Акуратне вдосконалення цього сценарію полягає у включенні розпізнавання обличчя та обчислення розмитості на найбільших обличчях фотографії та використання цих значень для порогу розмитості, дефолтуючи до загальної розмитості, якщо жодної грані не виявлено. Я залишу це покращення за вами!


Чудова відповідь! Це буде легко зробити масаж у моєму власному випадку використання. Всі мої фотографії зроблені за допомогою дешевих телефонів або цифрових камер. Іноді я не можу залишатися достатньою, щоб легко отримати чіткий знімок. Але я можу зробити десяток кадрів і використовувати версію цього коду, яку я можу змінити, щоб сортувати їх від найгостріших до найясніших.
hippietrail

1

Я не знаю додатків, які можуть автоматично відображати для вас потенційно недолікові зображення, але я б не використовував їх, принаймні не наосліп.

Технічна заслуга - це лише частина того, що фотографія. Деякі з найбільш значущих зображень мають технічну ваду. У багатьох випадках переважніше більш технічно досконале, яке, наприклад, має бідніший склад або менше того, що Картьє Брессон назвав "вирішальним моментом".

Також деякі вади можна виправити або покращити в редагуванні. Хоча фокусування та розмиття майже неможливо виправити (хоча це може змінитися в майбутньому ), це може додати цікавий або прийнятний ефект. Наприклад, експозиція є однією з таких. Злегка завищене або недоекспоноване зображення (особливо, якщо воно зроблене в RAW) не слід віддавати перевагу "ідеально" відкритому зображенню лише на цій властивості, оскільки його можна легко виправити.

Наприклад, ця картина була одноразовою зйомою, яка вийшла майже в 3ЕВ переекспонованою, оскільки камера мала неправильні налаштування. Однак завдяки широті, наданій файлами RAW, її можна було відновити, тоді як автоматичний процес відкинув би її.

Отже, я другий відповіді перед моїм, кажучи, що ефективно підтримуваний робочий процес є кращим, ніж автоматизований процес. Тисячі фотографій є досить керованими в Lightroom протягом години-двох.


2
Я також погоджуюся з вашими думками та думкою всіх, ось чому я заявив "Я розумію, що кожна фотографія унікальна, і є кілька чудових фотографій, які порушують кожне правило" . Не існує жодного "магічного інструменту", який би міг запустити, щоб знайти чудові фотографії, тому що людський мозок - це єдине, що може сказати нам, чи рухається фотографія до нас чи ні. Дійсно, це була просто концепція, яку я мав і цікавив, чи хтось уже спробував подібні методи. Сліпо слідувати за будь-яким програмним забезпеченням - це просто глум, але часто можна використовувати інструменти, які допомагають нам вести нас на нашому шляху.
RyanKDalton

Абсолютно такий тип екранування може бути корисним, щоб програма, яка пропонує вам зміни, замість того, щоб знімати фотографії. Ви, можливо, зможете нормалізувати експозицію на подібних зображеннях, наприклад, перед тим, як додати попередньо встановлену програму редагування.
guioconnor

0

Перевірте DXO Photo Laboratory. Він може автоматично виправляти фотографії на основі профілів камери та об'єктива. Ви можете швидко оцінити фотографії, переглянувши їх та експортуючи лише ті фото, які ви оцінили.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.