-
Количество публикаций
3 873 -
Зарегистрирован
-
Посещение
-
Days Won
346
Все публикации пользователя Smorodov
-
widthStep - Параметр, определяющий расстояние между соседними по вертикали точками изображения. Нужен т.к. количество байтов по ширине картинке может быть не равно количеству точек по горизонтали (как пример можно привести бинарное изображение 1 байт - 8 точек, а если ширина изображения не кратна 8, то тут и нужен параметр widthStep).
-
Можно получить дерево контуров. См. пример: C:\Program Files\OpenCV\samples\c\contours.с
-
Можно попробовать применить блоб-анализ: http://www.compvision.ru/forum/index.php?showtopic=62 Там есть такое (файл blob.h): //! аrea de memтria on es desaran els punts de contorn del blob //! storage which contains the edges of the blob CvMemStorage *m_storage; //! Sequиncia de punts del contorn del blob //! Sequence with the edges of the blob CvSeq *edges; Насколько я понимаю, это границы блоба - то есть то что Вам нужно.
-
Можно разбить на несколько изображений, по количеству слоев (делается сравнением со значением цвета), затем, для каждого слоя выделить контуры (cvCanny) и потом cvFindContours. Получите cvSeq. cxCore содержит команды быстрого блочного сравнения, удобные для данной задачи.
-
Есть - моменты, например. Можете посмотреть моменты Ху (Hu invariant или Hu moment). Значение этого момента не чувствительно к изменению масштаба, повороту, смещению и отражению контура.
-
Кусочек кода есть сверху, порог похожести ставится на переменную likehood. Как показано в предыдущем посте порог устанавливался на значение -85, возможно это значение подходит не ко всем случаям, нужно провести эксперимент. По принципу можно посмотреть литературу по ключевым словам Скрытые Марковские Модели, по приложению их к распознаванию лиц толкового ничего на русском не нашел. Есть пара доков, но там совсем немного информации: лекции_по_hmm.pdf скрытые_марковские_модели__радужка_.pdf
-
Обнаружение (выделение из изображения) контура не зависит от алгоритмов сравнения. Я так понял, что Вы имеете ввиду изменение масштаба контура. Этот алгоритм выдает степень отличия всегда и для любых контуров, причем вне зависимости от масштаба и относительного поворота сравниваемых контуров, важна только геометрическая форма.
-
В этом проекте да, просто не хотелось вручную задавать искомый контур. Поэтому программа берет первый контур из найденных в кадре и сравнивает с ним все остальные. Это проделывается каждый кадр. Никто не мешает Вам задать искомый контур каким либо другим способом. Вплоть до того, что просто снять его камерой, нажав кнопку запомнить и дальше сравнивать с ним. PS: просто запустите пример, предварительно нарисовав на бумаге разные (и одинаковые) фигуры и многое должно проясниться ЗЫ: вообще то он выводит степень их непохожести (моя опечатка) контур, с которым идет сравнение имеет значение 0.
-
Можно, например как здесь: http://www.compvision.ru/forum/index.php?showtopic=6
-
Вот тут есть: Обучение каскадов Хаара
-
Так это просто GCC-шные библиотеки. Их не нужно конвертировать. И подключать к Builder или к VC не нужно. Для этих компиляторов нужны только lib.
-
Похоже что критические секции это единственный путь, но согласен что это уже не многопоточность.
-
C++ Builder приложение является многопоточным Писал еще приложение работающее с Ethernet отдельным потоком, работает вполне хорошо. Проблем быть не должно.
-
Есть такой документ: http://www.mathworks.com/matlabcentral/fx_...quick_guide.pdf Вроде по теме.
-
Русский перевод пока застрял есть только то что на этом сайте. В разделе википедии. И в разных постах по чуть-чуть. Основной кусок перевода здесь: http://www.compvision.ru/forum/index.php?showtopic=7
-
Есть такой вариант. 1. для начала укоротить хвосты 2. после получения картинки провести бинаризацию. (может быть этот шаг и не нужен) 3. Выделить контуры. 4. Каждый контур на отдельный слой. 5. Дальше стандартный подход.
-
OpenCV на целевой машине установлен стандартным образом? Я запускал проекты с этого форума на компах без билдера, правда это была версия 1.0. Для других не проверял. Билдеры на всех компах есть Может с CodeGuard проблемы, проверьте чтобы отключен был. И еще если возникает ошибка 0xc0150002, то для корректной работы OpenCV1.1pre1 надо установить MSVCRT 8.0 (visual c++ run time). MSVCRT8.0 Еще можно messagebox-ами отловить место ошибки.
-
Какие ошибки выдает ?
-
Протокол CAN примеры для микроконтроллера AVR (CodeVision)
Smorodov replied to Smorodov's topic in Другое
Для экспериментов на коленке можно просто проводками соединить, если что-то более серьезное, то лучше все по стандарту делать, кстати, там ничего о волновом сопротивлении пары вроде не говорится. вот схемка: Характеристики шины CAN Напр. высокого уровня (High): +4 v min, +5.5 v max Напри. низкого уровня (Low) : +0 v min, +1.5 v max Макс. напр. +16 volts (Absolute Max) Ток 100mA // Это сопротивление терминального резистора, а не пары (см. схему) Impedance 124 ohm termination between +/- terminals Тип цепи: Дифференциальная Время передачи 1 бита 1uS @ 1Mb/s; 2uS @ .5Mb/s 4uS @ .25Mb/s Формат кодирования Non-Return-to-Zero (NRZ) Частота примема.передачи 1Mb/s @ 40 meters Топология Точка-точка Провод: Экранированная витая пара @ 9 pin D-Sub -
Да, предсказание учитывается при поступлении данных, филитр просто следит, чтобы полученное значение не сильно отклонялась от ожидаемого. Но предсказание, в случае движения твердого тела, на требует наличия такого сложного фильтра, как фильтр кальмана, достаточно просто знать, что твердые тела обладают массой, которая не позволяет меняться координате скачкообразно, как, собственно и скорости. Отсюда формулы предсказания: x=x0+v*dt и v=v0+a*dt. Линейная интерполяция, в данном случае, вполне годится. Как видите, фильтра тут никакого не нужно
-
Бинарники OpenCV 2.0 (lib - файлы) построенные в VS2008: lib.rar
-
Протокол CAN примеры для микроконтроллера AVR (CodeVision)
Smorodov replied to Smorodov's topic in Другое
Неплохая книжка, с объяснением реализации CAN на конкретных контроллерах: 1. П.П. Редькин Микроконтроллеры ARM7 семейства LPC2000. 2. Есть аналогичная для контроллеров Atmel. Полезная книжка по другому распространенному семейству контроллеров. С описанием периферии. 3. А.В. Евстифеев Микроконтроллеры AVR семейства Mega. Руководство пользователя. -
Маленький (совсем) ликбез PDF: О_моментах_контура.pdf DOC (для жаждущих творчества ): MyDocs.rar Пример проекта здесь: http://www.compvision.ru/forum/index.php?showtopic=4 другой проект здесь: http://www.compvision.ru/forum/index.php?showtopic=6
-
Перспективные и интересные проекты в области машинного зрения
Smorodov replied to kvarg's topic in Обсуждение общих вопросов
Насчет проектирования CxCore в железе, лучше посмотреть в сторону CUDA и TESLA. 640х480 - это оптимум для настольной системы, бОльшие разрешения можно использовать, если применять дополнительные средства (видеокарта, специально спроектированный адаптер...). Вообще, лучше берите камеру с хорошей оптикой, разрешение не так важно, если будет больше чем надо - всегда можно уменьшить. Аналог OpenCV на GPU -
CMake делает Make файл, или, например проект для VisualStudio (не сами либы). Далее этот файл скармливается компилятору, борландовские компиляторы не переваривают то что получается и выдают ошибки. Нужно использовать или GNU или VC.