powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [Python] Определить, что изображение не в фокусе
9 сообщений из 9, страница 1 из 1
[Python] Определить, что изображение не в фокусе
    #39243591
Fktrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Есть семейная коллекция фото лет за 15. Фото как только не делались, и на утюг и на тапок. Куча фото достаточно велика, чтобы ковыряться вручную. Возникло желание автоматически отобрать и удалить к е.м. смазанные фото и те, что не в фокусе.
Собственно, вопрос - учитывая, что мне интересно сделать это на питоне, который я сейчас изучаю - как и чем? Не решал ли эту задачу еще кто-нить?
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39243595
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fktrcавтоматически отобрать и удалить к е.м. смазанные фото и те, что не в фокусе.Так то и смаз и избирательная резкость относятся к простейшие приёмам выделения главного объекта или сюжетного центра в кадре. Интересно, существует ли технически выполнимый алгоритм, позволяющий в этом контексте определить различие между техническим браком, который, как понимаю, хотите выкинуть и художественным приёмом?
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39243692
Fktrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Текущий случай хорош тем, что художественными приемами никто при съемке не заморачивался. Если есть смаз или нерезкость - здесь это будет однозначный брак. В конце концов отобранные фото можно и проверить вручную, если их будет обозримое количество.

А по вопросу - если получится на фото выделить резкие и нерезкие области, то на мой взгляд, фото с худ. приемом будут те, где в принципе есть резкие области. В противном случае только человек сможет отличить брак от приема, да и то не каждый.
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39243750
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fktrc,

Да в любом случае, придётся проверять вручную обе пачки. Среди резких снимков запросто будут и абсолютно бестолковые :)

По существу вопроса, смаз можно определить как вектор или траекторию. Потому, если построить линии контраста на изображении и установить факт их дублирования со сдвигом, то вполне можно говорить о смазе. Но это, если можно так выразиться, равномерный смаз. Вроде того, что получается при съёмке с проводкой. Ложное срабатывание возможно на структурированных объектах типа решеток, заборов. Другой вид смаза обусловлен мышечным тремором. При значительных перемещениях камеры получится аналогичный предыдущему набор линий контраста, а вот при небольших - тянучки или что-то похожее на не слишком точную фокусировку (по ситуации). Думается,
Расфокус вполне можно определить по минимальной длине перехода от светлого к тёмному на контрастных участках. Если минимальная длина перехода, скажем, более двухсот пикселов - можно предполагать расфокус.
Алгоритмы получения линий контраста вполне можно подсмотреть где-нить в gimp'е, например. Впрочем, возможно, проще будет не переписывать код на свой ЯП, а написать модуль для gimp, который вполне может использовать имеющийся функционал.


Fktrcе решал ли эту задачу еще кто-нить?Не вижу смысла. На ручное удаление грубого технического брака из кучки в сотню кадров уходят какие-то небольшие минуты. В общем то, и снимок в полном размере открывать не обязательно, достаточно большого размера превьюшек. Заодно и грубые промахи с экспозицией летят в корзину и явно неудачные дубли.
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39244371
Gwa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fktrc,
по мне это не способ..
например, есть прекрасные фото, у которых объект резкий (на нём сосредоточено внимание кадра), а фон намеренно размыт
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39244488
Fktrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gwaобъект резкий (на нём сосредоточено внимание кадра), а фон намеренно размытFktrcА по вопросу - если получится на фото выделить резкие и нерезкие области, то на мой взгляд, фото с худ. приемом будут те, где в принципе есть резкие области. В противном случае только человек сможет отличить брак от приема, да и то не каждый.
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39244515
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Практическое наблюдение - есть несколько снимков в .jpg сделанных примерно в одно время в одном месте на одну камеру. Тот, который не в фокусе, будет весить в байтах меньше, чем тот, который в фокусе. Почему так - jpeg использует преобразование Фурье. В смазанном снимке нет высоких частот, и он жмется лучше. Отсюда идея: пытаемся определить наличие высоких частот на снимке - гуглим какую-нибудь библиотеку на python для Fourier Transform и разбираемся, как это сделать...
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39244880
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BarloneПрактическое наблюдение - есть несколько снимков в .jpg сделанных примерно в одно время в одном месте на одну камеру. Тот, который не в фокусе, будет весить в байтах меньше, чем тот, который в фокусе.Да, при условии более-менее одинакового по другим параметрам изображения.
Так же, снимок с сильно заниженной экспозицией будет весить меньше, чем такой же снимок, сделанный с нормальной экспозицией. Причина такого явления - потеря деталей в тенях, которые никак не влияют на художественную или документальную ценность снимка.
...
Рейтинг: 0 / 0
[Python] Определить, что изображение не в фокусе
    #39245391
Fktrc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleFktrcе решал ли эту задачу еще кто-нить?Не вижу смысла. На ручное удаление грубого технического брака из кучки в сотню кадров уходят какие-то небольшие минуты. В общем то, и снимок в полном размере открывать не обязательно, достаточно большого размера превьюшек. Заодно и грубые промахи с экспозицией летят в корзину и явно неудачные дубли.
Задачу таки решали
http://libeldoc.bsuir.by/bitstream/123456789/1704/1/Мера оценки.PDF
Практически то, что надо, похоже, осталось только освоить NumPy и посидеть над отладкой.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [Python] Определить, что изображение не в фокусе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]