kilop 7 Жалоба Опубликовано February 27, 2013 http://habrahabr.ru/post/170909/ delphi и opencv, может пригодиться) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vetatto 0 Жалоба Опубликовано February 28, 2013 http://habrahabr.ru/post/170909/ delphi и opencv, может пригодиться) Спасибо) Но видел это уже. Вот помучился тут с контурами и получил почти то, что мне нужно. Вот пару фотографий В принципе такой точности мне достаточно. Только вот теперь нужно Убрать все мелкие области. Но функция подсчета площади и вырисовывания только контуров с определенной площадью занимает очень уж много времени. Еще у меня возник такой вопрос. По какому алгоритму ищутся контуры? Это для теории нужно. Буду пытаться дальше, вдруг кому потом пригодиться что-то подобное. Кстати пока все на delphi делаю Делаю так while(current<>nil) do begin perim:=cvcontourArea(current,CV_WHOLE_SEQ); if perim<2 then begin cvDrawContours(contourImage,current,CV_RGB(255,216,0),CV_RGB(0,0,0),StrToInt(Edit7.Text),StrToInt(Edit5.Text),StrToInt(Edit6.Text),CvGetPoint(0, 0)); end; current := current.h_next; end; Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано February 28, 2013 Алгоритм используется отсюда : Suzuki, S. and Abe, K., Topological Structural Analysis of Digitized Binary Images by Border Following. CVGIP 30 1, pp 32-46 (1985) (в документации на многие функции есть ссылки на теорию, используемую для реализации функции ) По поводу убрать мелкие артефакты, это обычно морфологией делают (см. cvDilate и cvErode), сначала erode, затем dilate. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vetatto 0 Жалоба Опубликовано March 25, 2013 Привет всем) Вот и снова я вернулся. Смог я выделить слой стеблей процентов на 90 (мне этой точности за глаза). Только вот теперь встала новая задача, определить угол наклона стеблей. Преобразование Хафа находит линии, но это очень долго, разрешение 4912 на 3264. Есть конечно вариант взять несколько точек (штук 10) построить вокруг них окружность, взять все точки не черного цвета на окружности, построить прямые до этих точек от центра с условием, что на этой прямой только желтые точки, но не могу сообразить как это сделать. Т.е. как сделать - это алгоритм Брезенхема (только его нужно доработать, когда рисовать линию и круг проверять на цвет пикселя). Но ка быстро обработать такое изображение в голове не укладывается). Кто-нибудь может подсказать как быстро пробежать по такому изображению? И еще, такой вопрос. Ну нарисую я эти линии, а как определить угол относительно оси Х или У? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано March 25, 2013 В сторону Фурье не смотрели? Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vetatto 0 Жалоба Опубликовано March 25, 2013 В сторону Фурье не смотрели? Нет, но сейчас почитал. Можно попробовать. Думаю вполне реально использовать. Только вот я все еще это на delphi пишу)) Так, что камушков подводных тьма тут)) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Smorodov 579 Жалоба Опубликовано March 25, 2013 Есть fftw она dll-ковая, и, насколько я помню, не так заплюсована. Вот еще про дельфи: http://www.fftw.org/install/fftw_usage_from_delphi.txt http://forum.algolist.ru/source-implementation-programm/234-bystroe-umnojenie-na-delfi.html http://www.delphikingdom.com/asp/answer.asp?IDAnswer=68987 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vetatto 0 Жалоба Опубликовано March 25, 2013 Спасибо. Попробую всеж сначала cvDFT функцию в OpenCv. Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
vetatto 0 Жалоба Опубликовано May 22, 2013 Привет всем. Извиняюсь, что исчез на пару месяцев мучился с дипломом. В итоге у меня все получилось. Сделал почти все, что планировалось. Вот результаты. исходное результат Еще при помощи преобразования Хафа была найдена угловая дезориентация между стеблями. Только вот осталось определить диаметры этих стеблей, но это наверное уже позже если буду дальше учиться или не я вообще буду делать)) Спасибо большое форуму, а особенно Smorodov Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах