Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2012, 13:27   #1
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,692
По умолчанию Поиск фигуры на изображении

Попросили сделать программу, которая находит центр и радиус круга, который является центром(или почти) стрелки измерительного прибора.
Вот что имеется и что примерно получилось:

https://dl.dropbox.com/u/105218944/g...%D0%B5%202.jpg
https://dl.dropbox.com/u/105218944/%...0%BB%D0%B8.jpg
https://dl.dropbox.com/u/105218944/%...%3A06%3A12.png

Сейчас поиск осуществляется так:

Исходное изображение масштабируется до 160x120 пикселов, соотношение сторон естественно соблюдены. Выполняется предобработка как на третьей картинке. Затем я подобрал размер скользящего по изображению окна(13x13) исходя из размеров круга и прогонял его по всей картинке и запоминал наилучшую позицию. Имеется 2 критерия, это отклонение среднего радиуса черных точек от центра квадрата и среднее положение черных точек внутри окна.
Если средний радиус получался больше 6.1, расстояние от средней точки до центра меньше 2.0 и кол-во черных точек > 20, то я запоминал положение окна и шел дальше.(все правда чуть сложнее, но все строится относительно того, что размер круга один и тотже) Это решение отрабатывало на тех образцах что у меня были на ура, всегда бил точно в центр.

Теперь есть такая загвоздка, фотографии эти могут быть сделаны на разном расстоянии от стрелки, соответственно и размер круга будет переменным и тут у меня ступор, ни как не могу придумать решение которое было бы инвариантно относительно сдвига и масштаба.

Так выглядят образцы которые я получил от препода уже после реализации вышеописанного алгоритма:

https://dl.dropbox.com/u/105218944/frame640.bmp
https://dl.dropbox.com/u/105218944/%...%B4%D1%802.bmp
Kostia вне форума Ответить с цитированием
Старый 24.09.2012, 13:54   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Как вариант - фиксировать стрелку на определенном расстоянии как положение 0 по глубине (или Z-буферу, ка угодно, не в названии суть) и сравнивая с текщей фотографией, определять масштабирование и сдвиг.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 24.09.2012, 14:23   #3
Kostia
Участник клуба
 
Аватар для Kostia
 
Регистрация: 21.11.2007
Сообщений: 1,692
По умолчанию

Цитата:
Сообщение от Sciv
Как вариант - фиксировать стрелку на определенном расстоянии как положение 0 по глубине (или Z-буферу, ка угодно, не в названии суть) и сравнивая с текщей фотографией, определять масштабирование и сдвиг.
Ммм, что-то не понял. Вы предлагаете взять цент стрелки с одной из фотографий и бежать по изображению применяя различный масштаб и сравнивая степень схожести а затем запоминать наиболее подходящие места и предположительный радиус?

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

Просто одной из стадий фильтра, который представлен выше, является представление изображения в черно-белом цвете

Последний раз редактировалось Kostia; 24.09.2012 в 14:29.
Kostia вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск площади фигуры методом Монте - Карло ChertYaGa Паскаль, Turbo Pascal, PascalABC.NET 12 10.02.2017 20:10
сравнение изображений, поиск символа на изображении (распознавание) steklishko Помощь студентам 0 11.09.2012 09:47
Работа с изображением.Поворот.Поиск фигуры. Sheril Общие вопросы по Java, Java SE, Kotlin 0 30.04.2011 12:02
Алгоритм поиска углов фигуры на изображении Kalrh Помощь студентам 1 19.01.2011 20:02
ПОиск объекта на изображении TacoBell Qt и кроссплатформенное программирование С/С++ 7 26.10.2010 13:47