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

e0003414

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

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

  • Посещение

Репутация

0 Новичек

О e0003414

  • Звание
    Бывалый
  1. Разобрался, немного напутал с параметрами обработчика простоя приложения, но сейчас все нормально)
  2. Да как раз с cvRelease все нормально, несколько раз перепроверял) возможно ли это из-за использования потока простоя, примерах идет непрерывно подача кадров на форму, в моем случае необходимо подать кадры по запросу пользователя, целесообразно ли использовать вообще поток простоя для отображения кадров? пытался сделать через процедуру, но приложение "висит".
  3. Появился вот такой вопрос: разрабатываю приложение по обнаружению лиц и обьектов в кадре и управление ими, а также обработка кадров, считывание очередного кадра происходит в потоке обработки простоя, вся проблема в том, приложение подразумевает собой ожидание действий пользователя, при запуске пользователем камеры кадры отображаются на форме, но при этом приложение начинает "дико" кушать оперативную память, за минуту сьело 400 МБ, как я понимаю вся проблема в потоке обработки простоя, можно ли как-нибудь решить проблему или есть варианты другого считывания кадров?
  4. Спасибо за информацию, вот сейчас буду разбираться с кодом, добиваться level up-а в использовании openCV
  5. Вот тут кусок кода, который сделал для тестирования, компилируется, но выдает ошибку при запуске, меня интересует теперь уже параметр gray , как его проинициализировать? и такой вопрос, общепозновательный не могли бы мне рассказать, за счет чего повышается качество изображения при складывании кадров, это из-за глубины изображения? ////////////////////////////////////////////////////////////////////////////////////////////////// (double)width = cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH); (double)height = cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_HEIGHT); ... cvGrabFrame(capture); gray = cvCreateImage(cvSize(width,height), IPL_DEPTH_8U, 1); gray_f = cvCreateImage(cvSize(width,height), IPL_DEPTH_32F, 1); accum_f = cvCreateImage(cvSize(width,height), IPL_DEPTH_32F, 1); while(1) { inframe = cvRetrieveFrame(capture); cvCvtColor(inframe, gray_f, CV_BGR2GRAY); cvRunningAvg( gray_f,accum_f,0.3, NULL); cvConvertScale( accum_f, gray,1,0); c = cvWaitKey(33); if(c==27) break; cvGrabFrame(capture); } ... //////////////////////////////////////////////////////////////////////////////////////////////////
  6. Для моего случая медлительные методы не очень подходят Хотелось бы у вас узнать о параметре accum_f, это предыдущий кадр? я просто не совсем понимаю, с чем необходимо складывать текущий кадр.
  7. Спасибо большое за идею! И ещё такой вопрос: а можно как-нибудь обработать изображение, без потери его информативности и распозноваемости, чтобы хоть немного "улучшить" кадр от стандартной вэб-камеры, пробовал сглаживание, но оно не очень помогает именно для глаз, хотя при этом для поиска лица-помогает, или сможет помочь только более качественная вэб-камера)))
  8. Как я понял, нужно в программе ввести процедуру, которая будет отслеживать центры найденных объектов, и игнорировать при использовании сведений пропорций лица ненужные . Я все так понял? или существуют какие-то специальные функции для этого?
  9. А как можно увеличить точность распознавания? возможна ли обработка изображения для более точного нахождения? (ищу глаза на изображении, но довольно часто получается ложное срабатывание, правда изображение слабо освещено)
  10. Совсем недавно начал изучать openCV. При попытке получить кадр с камеры в окне постоянно показывается такая строка : "Error: SampleCB() - buffer sizes do not match", хотя при этом кадры нормально отображаются. Можно ли избавиться от этой ошибки? И ещё такой вопрос, хотелось бы узнать о затратах в ресурсах при использовании функций из openCV.
×