Jump to content
Compvision.ru

Wildcat

Пользователи
  • Content count

    37
  • Joined

  • Last visited

  • Days Won

    1

Wildcat last won the day on December 11 2011

Wildcat had the most liked content!

Community Reputation

2 Новичек

About Wildcat

  • Rank
    Эксперт
  1. Компиляция 2.3.1 в VS2008 с Cuda

    Куда есть и большинство модулей *.cu компилируются корректно. Нашла даже эту функцию с нужными параметрами объявленную в файле safe_call.hpp и этот файл должен быть виден в модуле, в котором возникает ошибка линковки - stereobp.cu - Error 67 error LNK2001: unresolved external symbol "void __cdecl cv::gpu::error(char const *,char const *,int,char const *)" (?error@gpu@cv@@YAXPBD0H0@Z) cuda_compile_generated_stereobp.cu.obj opencv_gpu. Но почему-то не находит его.
  2. Пытаюсь откомпилировать в VS2008 OpenCV 2.3.1 c поддержкой графических карт. Компилируется все, кроме модуля opencv_gpu. Вылезают ошибки неразрешенных функций cv::gpu::error(...) Из сопутствующего: Компилирую с tbb (если это может на что-то повлиять) - версия tbb40_20120201oss Стоит Cuda - cudatoolkit_4.0.17_win_32.msi и соответствующий sdk Может я что-то не подключила? Подскажите?
  3. Каскады и wchar_t

    Попробовала с картинками - работает. Но тут есть 1 подвох - надо знать в какой кодировке представлен wchar_t.
  4. Каскады и wchar_t

    Встала передо мной такая задача. Надо грузить каскады (CascadeClassifier) из файлов имена которых не char*, а wchar_t*. Для OpenCv 1.0 переписывала функции загрузки (тогда это относилось к изображениям). Переписывать конечно пришлось много, но было достаточно прозрачно, что где искать и достаточно было дойти до fopen и заменить ее на _wfopen. Но в версии 2.3 что-то они сильно намудрили с FileStorage и никак не могу найти концы. Кто-нибудь уже решал эту проблему? Или может будет вообще проще написать функции загрузки и сохранения загруженных каскадов...
  5. CUDA для Хаара

    Не все каскады корректно запускаются на куде. Там есть параметр <tilted>0</tilted>. Если встречается место, где он равен 1, то на куде каскад не запустится. А вот точность действительно для cpu и gpu сильно отличается. Почему - понять не удалось. Да, кстати при запуске по дефолту у куда-каскада и обычного разные параметры масштабируемости и соседей.
  6. Нашла в чем проблема - изображения, по которым строится РСА должны быть приведены к типу CV_32FC1. Тогда все строится вполне корректно. Хотя в процессе поиска ошибки все переписала заново, код стал другим. Может еще есть какие-то неточности.
  7. Пытаюсь переписать распознавание по PCA на новый OpenCv 2.3. Там есть класс РСА, с помощью которого можно реализовать это. Вот что у меня получилось по коду: #include <opencv2/core/core.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/gpu/gpu.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/features2d/features2d.hpp> #include <vector> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { ArgParser parser(argc, argv); char filelist[200]; try { if (!parser.queryFilename("filelist", filelist)) { printf("Filelist not specified.\n"); _getch(); return -1; } } catch (char* str) { printf("%s\n", str); _getch(); return -1; } FilelistProcessor flP(filelist); const unsigned numpics = 100; vector <cv::Mat> img_tr; for (unsigned i = 0; i < numpics; i++) { cv::Mat itmp = cv::imread(flP.getfile(i), 0); img_tr.push_back(itmp); } unsigned imsize = img_tr[0].rows*img_tr[0].cols; cv::Mat mat_tr(numpics, imsize, img_tr[0].type()); for (unsigned i = 0; i < numpics; i++) { cv::Mat matRow = mat_tr.row(i); memcpy(matRow.data, img_tr[i].data, imsize*sizeof(unsigned char)); } const unsigned maxComponents = 60; cv::PCA eigenvectorsCompute(mat_tr, cv::Mat(), CV_PCA_DATA_AS_ROW, maxComponents); cv::Mat newImg = cv::imread(flP.getfile(numpics + 1), 0); cv::Mat newImgTr(1, imsize, img_tr[0].type()); { cv::Mat matRow = newImgTr.row(0); memcpy(matRow.data, newImg.data, imsize*sizeof(unsigned char)); } cv::Mat coeffs; coeffs.create(1, maxComponents, CV_32F); eigenvectorsCompute.project(newImgTr, coeffs); return 0; } FilelistProcessor - читает список файлов с изображениями лица. Файлов больше 100, поэтому ошибки в количестве векторов быть не может. Проблема в том, что полученные на выходе coeffs - нулевые. Что может быть не так?
  8. cvResize в версии 2.2

    Спасибо, Вы просто самый полезный человек, как не задам вопрос, Вы знаете на него ответ
  9. cvResize в версии 2.2

    Не подскажете куда переехала или во что преобразовалась функция cvResize в версии 2.2?
  10. HOG OpenCV 1.20

    Говорят (точнее пишут) на многих форумах, что формат svm классификатора получаемого при CvSVM::train оказывается несовместим с форматом, классификатора нужным при загрузке в HOG дескриптор. Ну на самом деле не попробуешь не узнаешь Буду делать, а там если что хорошее получится - напишу.
  11. HOG OpenCV 1.20

    А может кто знает, как можно обучить свой детектор и встроить его вместо cv::HOGDescriptor::getDefaultPeopleDetector()? Делать это хочу в openCv 2.2
  12. Я попробовала Хаара и HOG, и различные характеристики области (среднее, дисперсия, несколько первых собственных векторов, то же для градиентных изображений) с нейросетевым классификатором поверх этого. Пока все в начальной стадии, но моя статистика такая: Хаар: работает быстро, обучался на соответствующих примерах (часть ролика, а на другой части его же тестировался) находит очень много ложных примеров, иногда находит людей. HOG: стандартный из opencv2.2 пока переобучение классификатора не делала, если находит пешехода, то почти всегда прав, но пропускает достаточно много. Хочу попробовать переобучить svm на своих примерах, посмотреть как будет работать. Нейронные сети: обучались, как и хаар, находят больше пешеходов чем HOG, но и всякой лажи тоже больше находят. Тут наверно можно еще какие-то признаки добавить, гистограммы слышала, что используют еще... Приемлемого решения для себя пока не нашла.
  13. Спасибо за помощь :)

  14. opencv 2.2

    Спасибо, нашла, действительно все работает. Правда качество распознавания (я тестирую на своем ролике) не очень высокое.
  15. opencv 2.2

    Нашла пример из свн, правда не уверена, что тот, который нужно он в группе gpu проектов и у меня говорит. что opencv скомпилирован без поддержки gpu и поэтому не работает? Мне придется перекомпилировать OpenCv?
×