Smorodov 579 Жалоба Опубликовано May 3, 2009 Пример показывает как можно находить и измерять окружности в кадре. В программе введен фильтр по скользящему среднему, чтобы показания не так скакали. Получился достаточно точный измеритель. Измеряет одну окружность. Чтобы искать все окружности, нужно убрать усреднитель. Пример, на эту тему еще будет. Архив с программой:CirclesDetection.rar Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Spok 0 Жалоба Опубликовано January 5, 2010 Пример, на эту тему еще будет. Весь форум прочитал - примера не нашёл. 1) Нельзя ли как-нибудь посмотреть на этот мифический пример? Гонял на своей супер-камере (352x288-->640x480) - находит тысячи окружностей, если не миллионы. 2) Поэтому вопрос: что можно подкрутить, чтобы повысить вероятность, так сказать, успешного нахождения чего искал, а не всего подряд вокруг шума? Пока возился, придумал и реализовал алгоритм поиска окружностей сложности порядка const*(Rmax-Rmin)*width*height, относительно медленный. 3) Поэтому - где и что можно почитать на предмет поиска окружностей... на изображении низкого качества? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано January 5, 2010 Весь форум прочитал - примера не нашёл. 1) Нельзя ли как-нибудь посмотреть на этот мифический пример? Гонял на своей супер-камере (352x288-->640x480) - находит тысячи окружностей, если не миллионы. 2) Поэтому вопрос: что можно подкрутить, чтобы повысить вероятность, так сказать, успешного нахождения чего искал, а не всего подряд вокруг шума? Пока возился, придумал и реализовал алгоритм поиска окружностей сложности порядка const*(Rmax-Rmin)*width*height, относительно медленный. 3) Поэтому - где и что можно почитать на предмет поиска окружностей... на изображении низкого качества? Ну, пример и правда мифический (не знаю дойдут ли руки). Окружности с одинаковыми центрами (+- x пикселей ) надо отсекать, то же касается радиусов. Кое что можно почитать по ссылкам ниже, еще больше можно найти по словам "hough Circles". http://www.cis.rit.edu/class/simg782/lectu...ec782_05_10.pdf http://planetmath.org/encyclopedia/HoughTransform.html http://www.icgst.com/gvip/Volume7/issue1/P1150717011.pdf Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Spok 0 Жалоба Опубликовано January 7, 2010 Про преобразование Хафа, в принципе, и так знаю, но третья ссылочка реально понравилась, а на концентрических окружностях я уже обломался Хочу спросить у вас, как у сведущего человека: я правильно уловил, что преобразование Хафа работает с чёрно-белым (бинарным изображением)? И, грубо говоря, меряет расстояние от каждой точки до каждой точки? Если "да", то получается, что в худшем случае сложность будет width*height * width*height (всё белое)... Лично у меня при средне-сильно помеховом изображении (только так, блин, всегда и бывает...) количество помех, оставшихся после подавления в бинарном изображении, приближается к количеству значимых точек. Причём сверху приближается. Кажется, понял свою ошибку. В преобразовании Хафа четвертый порядок - худший случай, а у меня - третий, но всегда. А ваши мысли? Может, нормальную камеру купить? У вас какая? Где-то встречал, что маленькая вебка 352x288... Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано January 7, 2010 Про преобразование Хафа, в принципе, и так знаю, но третья ссылочка реально понравилась, а на концентрических окружностях я уже обломался Хочу спросить у вас, как у сведущего человека: я правильно уловил, что преобразование Хафа работает с чёрно-белым (бинарным изображением)? И, грубо говоря, меряет расстояние от каждой точки до каждой точки? Если "да", то получается, что в худшем случае сложность будет width*height * width*height (всё белое)... Лично у меня при средне-сильно помеховом изображении (только так, блин, всегда и бывает...) количество помех, оставшихся после подавления в бинарном изображении, приближается к количеству значимых точек. Причём сверху приближается. Кажется, понял свою ошибку. В преобразовании Хафа четвертый порядок - худший случай, а у меня - третий, но всегда. А ваши мысли? Может, нормальную камеру купить? У вас какая? Где-то встречал, что маленькая вебка 352x288... Что касается преобразований, то они работают с бинарными изображениями, можно попробовать ввести вес точки (яркость), но это уже 4-е измерение. Вообще, задачка 3-х мерная x,y,r. Может пример изображения покажете, тогда подумаем, что делать. Можно попробовать использовать видео-аккумулятор, есть пример. Камера у меня оставляет желать лучшего , но это даже хорошо, т.к. разработки надежнее получаются (если уж тут заведется, то везде заведется) . Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
KuduK 0 Жалоба Опубликовано September 29, 2010 Здравствуйте! Меня данная тема очень заинтересовала, так как передо мной поставлена очень похожая задача. Не найдется ли у вас исходников проекта для Visual Studio с тем о чем говорилось в этой теме? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Vl_Nic 0 Жалоба Опубликовано March 28, 2011 Пример показывает как можно находить и измерять окружности в кадре. В программе введен фильтр по скользящему среднему, чтобы показания не так скакали. Получился достаточно точный измеритель. Измеряет одну окружность. Чтобы искать все окружности, нужно убрать усреднитель. Пример, на эту тему еще будет. Архив с программой:CirclesDetection.rar Здравствуйте!! Можно узнать с какой версией Open CV вы тестировали данный проект CirclessDirection.rar? ?у меня версия Open CV 2.1 и в файле cv.h вышло порядка 30 ошибок? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано March 28, 2011 Здравствуйте!! Можно узнать с какой версией Open CV вы тестировали данный проект CirclessDirection.rar? ?у меня версия Open CV 2.1 и в файле cv.h вышло порядка 30 ошибок? Версия 1.1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах