vIv Опубликовано 15 февраля, 2012 · Жалоба К сожалению, не знаю, к кому обратиться. Прошу помощь зала =) Есть кадр в любом мыслимом формате. Вообще-то он в RAW/color. ПРЕДПОЛАГАЕТСЯ, что он снят в фокусе, но источник этой информации часто врёт и мы ему не верим. Есть ли быстрый, желательно реализуемый аппаратно, способ выяснить, был ли ДАННЫЙ КОНКРЕТНЫЙ КАДР снят в фокусе? Мы можем рассчитывать, что где-то в кадре есть какое-то количество контрастных границ. Проблема осложняется тем, что задачку надо решать примерно 120 раз в секунду при размере кадра VGA (640*480). В идеале устройство должно на входе получать эти кадры, анализировать, и отбрасывать те, которые "недостаточно в фокусе", а те, которые "в фокусе", выдавать на выход в первоначальном виде. То есть этакий фильтр для отбраковки того, что не получилось. Вопрос чисто теоретический. То есть допустимо использовать не только FPGA, но и, если необходимо, любые программно-аппаратные решения вплоть до заказных DSP. Ценой пока можно пренебречь, - вопрос именно теоретический: это вообще возможно или вообще нереализуемо? Предположение: если в пределах 2-3 пикселей на протяжении одной произвольной линии по кадру один монотонный (5+ пикселей) цвет поменялся на другой монотонный (5+ пикселей) цвет, - и так более трёх раз по разным линиям по кадру, - то картинка в фокусе. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlexBT Опубликовано 16 февраля, 2012 · Жалоба Ищи литературу по автофокусу у производителей фотоаппаратов и видеокамер. Они решают эту задачу как в статике, так и в динамике, причем на очень больших скоростях съемки движущихся объектов при слежении за объектами и автонаводке. Методов два - контрастный и фазовый. Осуществляется по записанной программе, так как прошивки меняются регулярно. Посему - ничего невозможного нет. Какая разница в источнике изображения - матрица или готовая картинка... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Прохожий Опубликовано 16 февраля, 2012 · Жалоба Стандартная обработка по "контрастному" методу, как Алекс выше написал может помочь, но есть один нюанс: все алгоритмы автофокуса - это алгоритмы оптимизации, т.е. "максимальная четкость в зоне датчика", с их помощью можно из 100 кадров выделить "самый резкий", но нельзя сделать вывод о том, был ли фокус при съемке оптимален для данной конкретной сцены. Вообще-то не может быть универсального алгоритма для неограниченного набора сцен. "Ежик в тумане" всегда будет нерезким ;) Хотя это хороший, годный кадр. Поэтому либо выборка лучших по этому критерию из ряда либо заданный принудительно пороги контрастности, которые не всегда будут работать так, как надо. Чего ты там такое изобретаешь? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vIv Опубликовано 16 февраля, 2012 · Жалоба Попытка решить задачку в лоб показала, что фото-видео-камеры при автофокусе возят объективом, то есть они решают совсем другую задачу: настроить объектив. В нашем случае возить нечем, - объектив нам неподвластен, более того, он жёстко зафиксирован по фокусному расстоянию. Поток кадров представляет из себя снятую по разным внешним критериям одну и ту же сцену, в которой может появиться табличка с текстом или символами. Появиться она может в любой части кадра и иметь любые цвета, - но мы можем рассчитывать, что она достаточного размера, чтобы, если её удалось сфотографировать, - то потом умный алгоритм распознавания её как-то распознал. Но кроме таблички там могут появляться всякие другие бесполезные объекты, поэтому нужны только кадры, на которых есть что-то похожее на табличку. "Эталонного образца" таблички, к сожалению, нет, - таблички могут быть разными. В чём проблема: алгоритму распознавания лучше получить RAW картинку, но поток этих кадров, блин, жирный. В похожей задачке у коллег одна камера выдаёт поток в полтора гигабита/сек, из которых около 95-98% кадров просто не нужны, но которые именно не нужны? И куда этот поток вливать? Пока его жмут видеосжатием, в итоге потом распознавалка тратит силы на разбор артефактов сжатия. В итоге либо ставить распознавалку (а она дорогая и нежная) около камеры (так делают на стационарных сортировочных центрах), либо около камеры этот поток сортировать, выбрасывая ненужный мусор до начала передачи в ЦОД. К тому же банально жаба душит в распознавалку вливать столько постороннего шума. Вот если бы получилось скармливать ей только те кадры, на которых хотя бы предположительно есть что-то полезное... А в идеале - вообще ненужное от камеры не получать, сеть не загружать, - тогда распознавалки можно собрать в ЦОДе в идеальных для них условиях, - если поток полезных кадров будет иметь разумные размеры, а не сотни терабит/сек ;-( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Saab95 Опубликовано 16 февраля, 2012 · Жалоба А есть возможность освещать объект съемки попеременно прожекторами с цветными стеклами? Потом получать серию одноцветных изображений, так их будет проще сравнивать между собой для задачи определения резкости. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
zurz Опубликовано 16 февраля, 2012 · Жалоба Есть ли быстрый, желательно реализуемый аппаратно, способ выяснить, был ли ДАННЫЙ КОНКРЕТНЫЙ КАДР снят в фокусе? если в кадре один объект - то да. Если несколько, то алгоритму необходим hint в какой области кадра искать объект. т.е. если сделать структуру типа матрица -> L1-обработка(FPGA) -> L2-обработка(проц) -> hinting feedback to L1 то вполне можно получить то что надо. городите конкурента Стрелке-СТ? тогда 120 кадров в секунду - это мало ;-) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vIv Опубликовано 16 февраля, 2012 · Жалоба Зачем? Ты и так из цветного изображения можешь выделить составляющие любой цветности. Ответ: нет. В створе (фокусе) камеры объекты могут появляться и двигаться, последовательные снимки дадут разные картинки. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Gull Опубликовано 16 февраля, 2012 (изменено) · Жалоба "Эталонного образца" таблички, к сожалению, нет, - таблички могут быть разными. Насколько разными? если есть заметные ограничения по размеру текста, шрифту, ракурсу - это одна задача, если вообще что угодно - совсем другая. В чём проблема: алгоритму распознавания лучше получить RAW картинку, но поток этих кадров, блин, жирный. В похожей задачке у коллег одна камера выдаёт поток в полтора гигабита/сек, из которых около 95-98% кадров просто не нужны, но которые именно не нужны? Возможно, получится сделать какую-то быструю предварительную оценку, например: количество интересных точек (keypoints) больше некоторого порога, но это уже надо в данные смотреть. В общем случае придется обрабатывать всё. Изменено 16 февраля, 2012 пользователем Gull Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
st_re Опубликовано 16 февраля, 2012 · Жалоба Ну хинты нужны полюбому.. Камера смотрящая в окно снимает 2 дерева рядом с окном, десяток деревьев в 100 метрах и дом напротив метрах в 300.. Наведение на что будет называться "оптимальая резкость" особенно при низкой глубине?. Только если гиперфокус, но там другие тараканы. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Прохожий Опубликовано 17 февраля, 2012 · Жалоба Номера считываешь? Таблички с текстом? Контрастные? Если так, то по критерию максимальной контрастности - максимальная дельта яркости между пикселами. Считается на потоке просто. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
AlexBT Опубликовано 18 февраля, 2012 · Жалоба Попытка решить задачку в лоб показала, что фото-видео-камеры при автофокусе возят объективом, то есть они решают совсем другую задачу: настроить объектив. В нашем случае возить нечем, - объектив нам неподвластен, более того, он жёстко зафиксирован по фокусному расстоянию. Поток кадров представляет из себя снятую по разным внешним критериям одну и ту же сцену, в которой может появиться табличка с текстом или символами. Появиться она может в любой части кадра и иметь любые цвета, - но мы можем рассчитывать, что она достаточного размера, чтобы, если её удалось сфотографировать, - то потом умный алгоритм распознавания её как-то распознал. Но кроме таблички там могут появляться всякие другие бесполезные объекты, поэтому нужны только кадры, на которых есть что-то похожее на табличку. "Эталонного образца" таблички, к сожалению, нет, - таблички могут быть разными. Задачу то на уровне ТЗ сформулировать можно? Если объектив жестко зафиксирован и обладает глубиной резкости - то все, что попало в расстояние от - до резкое по законам оптики. Объъект движется в плоскости объектива или навстречу объективу? Тебе что распознавать то нужно? Буквы и цифры? Или нечто другое? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...