Перейти к содержимому
Compvision.ru

skullhead

Пользователи
  • Количество публикаций

    3
  • Зарегистрирован

  • Посещение

Репутация

0 Новичек

О skullhead

  • Звание
    Новичок
  1. Работа с контурами

    весьма благодарен)буду разбираться. так контур нельзя перенести как "контур"?только заново собирать из точек?
  2. Работа с контурами

    перерыл все примеры,но не нашел моего случая,а именно заполнения новой пустой последовательности элементами из другой последовательности(не пойму почему не работает функция cvseqPush.полагаю дело в неверных аргументах при создании пустой последовательности cvCreateSeq. то есть находить контуры функцией cvFindContours и потом в цикле вытаскивать нужные и помещать их в массив?
  3. Работа с контурами

    Добрый день.Подскажите пожалуйста,как из последовательности контуров сформировать новую последовательность контуров,удовлетворяющих определенным критериям? Можно ли просто обходя исходную последовательность (найденную функцией CvFindContours),добавлять соответствующие условию контуры в новую? //создаем новую последовательность и выделяем под нее память CvMemStorage* storage_1 = cvCreateMemStorage(0); CvSeq* contours_1=cvCreateSeq( CV_SEQ_KIND_CURVE,sizeof(CvSeq),sizeof(CvContour),storage_1); if(contours!=0){ // поиск совпадения контуров по их моментам и отсеивание по периметру for(CvSeq* seq0 = contours;seq0!=0;seq0 = seq0->h_next){ double match0 = cvMatchShapes(seq0, seqT, CV_CONTOURS_MATCH_I3); if(match0<0.5&&seq0->total>=200) {cvSeqPush( contours_1,seq0);} printf(" %d match: %.2f\n", ++counter, match0); } }
×