|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Контраст (фокус) изображения фото
Доброго дня.
Задача - есть камера снимающая медленный объект - приближается. Надо изменять увеличение и соответственно контраст(фокус), объектив имеет 2 двигателя... но это всё высший уровень... Для начала - есть фото с камеры - надо понять контрастно изображение(в фокусе) или нет, типо в условных единицах или в %, возможно строить график общий по фото - если острый то контраст, если размыт горб то плохо-нет фокуса. ScanLine_ом по пикселям идти и ловить разницу в яркости пикселей??? Чем больше разность у соседних точек тем контрастнее(ближе фокусу)?? Как быть если разные цвета рядом попадут...???? |
#2
|
||||
|
||||
См. в сторону OpenCV, там есть готовые методы для анализа изображения.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
Спасибо, но так-то мы на Delphi.... да ещё и на 6 версии.
Может есть скомпиленные СИшные DLL_ки к которым можно обращаться с "такими" вопросами??? работающие быстрее делфийной ScanLine??? Понимаю что есть под разные ОСи но под делфи? Есть, вроде, нашёл, но к ней куча всего ещё должно быть скачано, Си библиотеки, кодеки... и всё в разных местах... нет одного 100% рабочего архива для установки за 1 раз.... Последний раз редактировалось -=#PupaJr#=-, 11.04.2017 в 14:09. |
#4
|
||||
|
||||
Возможно нужно от модели камеры плясать, есть опыт работы с авторегистраторами, а с ними в комплекте обычно идёт вендорское ПО, обладающее собственным API, умеющим и позволяющим многое, посмотрите у производителя, мож есть к изделию SDK и вдруг там управление программно фокусировкой ужо есть
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#5
|
||||
|
||||
Это смотрел?
https://github.com/Laex/Delphi-OpenCV З.Ы. Потому я и не программирую больше на дельфи. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#6
|
|||
|
|||
Alegun, Спасибо, но для начала взята простая камера и установлен моторизированный объектив... SDK нет - я думал над этим, на Ali есть такие камеры с SDK - много написано и стоит 5тр...
Но пока над теорией, думаю можно сделать.. OpenCV плохо работает - ка демка для делфи Х.... жаль.. Может ещё что? |
#7
|
||||
|
||||
Могу еще посоветовать для определения контрастности попробовать алгоритм быстрого преобразования Фурье, на выходе получишь спектр картинки (можно еще попробовать вейвлет-преобразование, но я им не пользовался, так что не знаю, что на выходе должно получиться и поможет ли оно), по нему уже составить качественную характеристику об изображении.
Реализаций БПФ на дельфи в интернете достаточно много. Каждый пиксел картинки рассматривается как значение дискретной функции. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#8
|
|||
|
|||
Спасибо за ответ, скорость всегда важна, но если будет 2-3 кадра в секунду при разрешении видео с веб камеры 3М пиксела то вполне пойдёт.
Боюсь БПФ здесь всю скорость завалит. Если изображение в ФОКУСЕ объектива то оно будет КОНТРАСТНО - не размыто(не замылено и т.д.). Исключение сплошной фон - тут никакой фокус не поможет. . Эффект BLUR какраз размывает изображение по типу ухода от фокуса камеры. Во вложении проект что сделал сейчас. Вот на картинке результат работы с нормальной контрастностью и 3 плохих. В правом углу внизу результат подсчёта - как критерий легко пойдёт. Но как бы это сделать поизящнее и побыстрее - а не 640х480.... иначе явно притормаживает. Видимо из-за ScanLine. Перевожу в оттенки серого и сравниваю соседние точки. Delphi6. |
#9
|
|||
|
|||
Проект немного допилил, упростил вычисления и переброс картинок. Работает с 8Мпикс камерой 2 кадра в секунду - достаточно.
Добавил детектор движения подключив камеру в проект... есть фризы но они явно из-за драйвера или винды... В принципе считаю что можно завершить. Приведённый код выше 100% рабочий(без exe). Пользуйтесь , допиливайте под себя. |