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

egens

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

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

  • Посещение

Репутация

0 Новичек

О egens

  • Звание
    Новичок
  1. Системные требования

    а не проще ли, если необходимо определять лишь координаты пятна, всего лишь найти его центр тяжести по маске? обратите внимание на функцию cvMoments
  2. почитайте тут в самом начале про частотно контрастный метод фокусировки. там картинка все объясняет. возможно удастся применить к вашей задаче
  3. разбирался с компиляцией.. использую CMake по мануалу, затем sln в VS открываю и rebuild делаю. при компилировании появляются новые либы, которых нету в стандартной установке OpenCV_VS_2008 и dll тоже, при этом они появляются в подкаталоге Debug каталогов bin и lib, релизные версии не компилятся что ли? нужно ли из этого подгаталога переносить dll и lib с перезаписью в каталоги bin и lib? во время плясок с бубном вспомнил, что в свойствах проекта в линкере добавил все libы и в Debug и в Release. попробовал оставить в Debug только либы с 'd' на конце имени файла, а в Release остальные. все заработало - и мавродиевские МMMM исчезли, и с векторами вроде проблемы кончились..
  4. то есть, в устанавливаемой изначально библиотеке существуют какие то конфликты? я думал она одновременно поддерживает оба API.. можно на пальцах, как избежать ошибок? или где почитать про это? а про контуры в моем предыдущем сообщении можешь подсказать?
  5. еще есть такие вопросы функция cv::findContours возвращает контуры как vector<vector<Points>> contours контуры ищутся для каждого кадра видео. если переменная contours объявлена до цикла получения видео, после первой записи в нее, вторую сделать не удается. если ее задавать внутри цикла, после исполнения программы получаю stack around variable corrupted. и известны ли вам штатные средства преобразования vector<vector<Points>> в Mat CV_C32SC2 - столбец также не пойму почему функция namedWindow("Trulala"); создает окошко с названием "MMMMTrulala"
  6. Nuzhny спасибо! да, после того, как я реализовал систему на C API, этот вопрос для меня более понятен. в доках очень мало инфы про библиотечные типы матриц и их преобразование.. возможно буду переделывать все обратно.. кстати, как узнать тип существующей переменной Mat? Можно ли его получить в виде 'CV_32S'?
  7. отладчик не хочет входить в функцию fitEllipse() - эксепшен вылетает на step into. да вроде как там нет того что мне надо, там все на C API написано. используются функции 'cv...' я правда смотрел везде где только можно.. реализовал на C API все что хотел.. с C++ API так и не смог разобраться в этом моменте. так что вопрос открытый..
  8. хм, видимо никто не использует C++ Api.. я правильно понимаю, что лучше пользоваться C API?
  9. В переменной frame - IplImage - капча с камеры. Преобразую тип и объявляю 2 переменные. Mat framemat(frame), gray, bw; Обесцвечиваю исходник. cvtColor(framemat, gray, CV_BGR2GRAY); Нахожу маску по уровню threshold(gray,bw,10,255,THRESH_BINARY_INV); Убираю шум morphologyEx(bw, bw, MORPH_OPEN, getStructuringElement(MORPH_ELLIPSE,Size(5,5),Point(-1,-1)), Point(-1,-1),3,BORDER_CONSTANT,morphologyDefaultBorderValue()); И тут натыкаюсь на эксепшен: fitEllipse(bw); На самом деле нужно выполнить функцию minEnclosingCircle, но даже fitEllipse не хочет выполняться. Никак не могу разобраться с этой проблемой.. В мануале написано, что аргумент fitEllipse - объект класса Mat и типа CV_32SC2 или CV_32FC2, может быть ошибка в этом, не могу понять как сменить тип..
×